@@ -21,7 +21,7 @@ import { validateConfig } from './validation'
2121import { handleGlobPattern } from './glob'
2222import * as Project from './project-output'
2323
24- export type GenerateCodeArgs = {
24+ export type CodeGenArgs = {
2525 schema : GraphQLTypes
2626 config : GraphQLGenDefinition
2727 modelMap : ModelMap
@@ -50,7 +50,7 @@ function getResolversGenerator(language: Language): IGenerator {
5050
5151function generateTypes (
5252 generateArgs : GenerateArgs ,
53- generateCodeArgs : GenerateCodeArgs ,
53+ generateCodeArgs : CodeGenArgs ,
5454) : string {
5555 const generatorFn : IGenerator = getTypesGenerator ( generateCodeArgs . language ! )
5656 const generatedTypes = generatorFn . generate ( generateArgs )
@@ -65,7 +65,7 @@ function generateTypes(
6565
6666function generateResolvers (
6767 generateArgs : GenerateArgs ,
68- generateCodeArgs : GenerateCodeArgs ,
68+ generateCodeArgs : CodeGenArgs ,
6969) : CodeFileLike [ ] {
7070 const generatorFn : IGenerator = getResolversGenerator (
7171 generateCodeArgs . language ! ,
@@ -85,20 +85,29 @@ function generateResolvers(
8585 } )
8686}
8787
88- export function generateCode (
89- generateCodeArgs : GenerateCodeArgs ,
90- ) : { generatedTypes: string ; generatedResolvers: CodeFileLike [ ] } {
91- const { schema } = generateCodeArgs
88+ type CodeGenResult = {
89+ generatedTypes : string
90+ generatedResolvers ?: CodeFileLike [ ]
91+ }
92+
93+ export function generateCode ( codeGenArgs : CodeGenArgs ) : CodeGenResult {
94+ const { schema } = codeGenArgs
95+
9296 const generateArgs : GenerateArgs = {
9397 ...schema ,
9498 context : parseContext (
95- generateCodeArgs . config . context ,
96- generateCodeArgs . config . output ,
99+ codeGenArgs . config . context ,
100+ codeGenArgs . config . output ,
97101 ) ,
98- modelMap : generateCodeArgs . modelMap ! ,
102+ modelMap : codeGenArgs . modelMap ! ,
99103 }
100- const generatedTypes = generateTypes ( generateArgs , generateCodeArgs )
101- const generatedResolvers = generateResolvers ( generateArgs , generateCodeArgs )
104+
105+ const generatedTypes = generateTypes ( generateArgs , codeGenArgs )
106+
107+ const generatedResolvers = codeGenArgs . config [ 'resolver-scaffolding' ]
108+ ? generateResolvers ( generateArgs , codeGenArgs )
109+ : undefined
110+
102111 // const generatedModels = generateModels(generateArgs, {schema, prettify, prettifyOptions, language})
103112
104113 return { generatedTypes, generatedResolvers }
@@ -160,7 +169,10 @@ async function run() {
160169 } )
161170
162171 Project . writeTypes ( generatedTypes , config )
163- Project . writeResolversScaffolding ( generatedResolvers , config )
172+
173+ if ( config [ 'resolver - scaffolding '] ) {
174+ Project . writeResolversScaffolding ( generatedResolvers ! , config )
175+ }
164176}
165177
166178// Only call run when running from CLI, not when included for tests
0 commit comments