diff --git a/graphql-server/index.js b/graphql-server/index.js index 769bd55..182c909 100644 --- a/graphql-server/index.js +++ b/graphql-server/index.js @@ -19,6 +19,8 @@ module.exports = (options, cb = null) => { // Express app const app = express() + if (options.typescript) require('ts-node/register/transpile-only') + // Customize those files let typeDefs = load(options.paths.typeDefs) const resolvers = load(options.paths.resolvers) diff --git a/index.js b/index.js index 063b1c4..f38c114 100644 --- a/index.js +++ b/index.js @@ -93,7 +93,7 @@ module.exports = (api, options) => { ignore: [ api.resolve(path.join(baseFolder, 'live')), ], - ext: 'js mjs json graphql gql', + ext: 'js mjs json graphql gql ts', }) sendIpcMessage({ @@ -159,6 +159,7 @@ module.exports = (api, options) => { graphqlPath, subscriptionsPath, engineKey, + typescript: api.hasPlugin('typescript') || defaultValue(apolloOptions.typescript, false), enableMocks: defaultValue(args.mock, apolloOptions.enableMocks), enableEngine: defaultValue(args['enable-engine'], apolloOptions.enableEngine), cors: defaultValue(apolloOptions.cors, '*'), @@ -166,15 +167,15 @@ module.exports = (api, options) => { integratedEngine: defaultValue(apolloOptions.integratedEngine, true), serverOptions: apolloOptions.apolloServer, paths: { - typeDefs: api.resolve(`${baseFolder}/type-defs.js`), - resolvers: api.resolve(`${baseFolder}/resolvers.js`), - context: api.resolve(`${baseFolder}/context.js`), - mocks: api.resolve(`${baseFolder}/mocks.js`), - pubsub: api.resolve(`${baseFolder}/pubsub.js`), - server: api.resolve(`${baseFolder}/server.js`), - apollo: api.resolve(`${baseFolder}/apollo.js`), - engine: api.resolve(`${baseFolder}/engine.js`), - directives: api.resolve(`${baseFolder}/directives.js`), + typeDefs: api.resolve(`${baseFolder}/type-defs`), + resolvers: api.resolve(`${baseFolder}/resolvers`), + context: api.resolve(`${baseFolder}/context`), + mocks: api.resolve(`${baseFolder}/mocks`), + pubsub: api.resolve(`${baseFolder}/pubsub`), + server: api.resolve(`${baseFolder}/server`), + apollo: api.resolve(`${baseFolder}/apollo`), + engine: api.resolve(`${baseFolder}/engine`), + directives: api.resolve(`${baseFolder}/directives`), }, } diff --git a/package.json b/package.json index d698088..f8f8fdf 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,8 @@ "graphql": "^0.13.2", "graphql-subscriptions": "^0.5.8", "nodemon": "^1.18.3", - "subscriptions-transport-ws": "^0.9.13" + "subscriptions-transport-ws": "^0.9.13", + "ts-node": "^7.0.0" }, "devDependencies": { "@babel/cli": "^7.0.0-beta.47",