Skip to content

Commit f9e4129

Browse files
FRSgitJakub Freisler
and
Jakub Freisler
authored
fix(generate-schema): load typescript files properly (Akryum#322)
start using same load module everywhere Co-authored-by: Jakub Freisler <[email protected]>
1 parent 5bbcb23 commit f9e4129

File tree

3 files changed

+12
-14
lines changed

3 files changed

+12
-14
lines changed

graphql-server/index.js

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ const { defaultValue, autoCall } = require('../utils')
1111
require = require('esm')(module)
1212

1313
module.exports = (options, cb = null) => {
14+
const { load } = require('../utils/load')(options)
15+
1416
// Default options
1517
options = merge({
1618
integratedEngine: false,
@@ -19,8 +21,6 @@ module.exports = (options, cb = null) => {
1921
// Express app
2022
const app = express()
2123

22-
if (options.typescript) require('ts-node/register/transpile-only')
23-
2424
// Customize those files
2525
let typeDefs = load(options.paths.typeDefs)
2626
const resolvers = load(options.paths.resolvers)
@@ -174,14 +174,6 @@ module.exports = (options, cb = null) => {
174174
})
175175
}
176176

177-
function load (file) {
178-
const module = require(file)
179-
if (module.default) {
180-
return module.default
181-
}
182-
return module
183-
}
184-
185177
function processSchema (typeDefs) {
186178
if (Array.isArray(typeDefs)) {
187179
return typeDefs.map(processSchema)

utils/generate-schema.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@ module.exports = async (options) => {
44
const { logWithSpinner, stopSpinner, done } = require('@vue/cli-shared-utils')
55
const { graphql, getIntrospectionQuery, printSchema } = require('graphql')
66
const { makeExecutableSchema } = require('graphql-tools')
7-
const { load } = require('./load')
8-
9-
if (options.typescript) require('ts-node/register/transpile-only')
7+
const { load } = require('./load')(options)
108

119
// JS Schema
1210
const typeDefs = load(options.paths.typeDefs)

utils/load.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
// eslint-disable-next-line no-global-assign
22
require = require('esm')(module)
33

4-
exports.load = function (file) {
4+
module.exports = function (options) {
5+
if (options.typescript) require('ts-node/register/transpile-only')
6+
7+
return {
8+
load: load,
9+
}
10+
}
11+
12+
function load (file) {
513
const module = require(file)
614
if (module.default) {
715
return module.default

0 commit comments

Comments
 (0)