@@ -35,10 +35,11 @@ export function transformScalarType(
3535 objectProps
3636 ) ;
3737 } else {
38- return ts . createUnionTypeNode ( [
38+ return ts . factory . createUnionTypeNode ( [
3939 transformNonNullableScalarType ( schema , type , state , objectProps ) ,
40- // @ts -ignore
41- ts . createKeywordTypeNode ( ts . SyntaxKind . NullKeyword ) ,
40+ ts . factory . createLiteralTypeNode (
41+ ts . factory . createToken ( ts . SyntaxKind . NullKeyword )
42+ ) ,
4243 ] ) ;
4344 }
4445}
@@ -50,14 +51,17 @@ function transformNonNullableScalarType(
5051 objectProps ?: ts . TypeNode
5152) : ts . TypeNode {
5253 if ( schema . isList ( type ) ) {
53- return ts . createTypeReferenceNode ( ts . createIdentifier ( "ReadonlyArray" ) , [
54- transformScalarType (
55- schema ,
56- schema . getListItemType ( type ) ,
57- state ,
58- objectProps
59- ) ,
60- ] ) ;
54+ return ts . factory . createTypeReferenceNode (
55+ ts . factory . createIdentifier ( "ReadonlyArray" ) ,
56+ [
57+ transformScalarType (
58+ schema ,
59+ schema . getListItemType ( type ) ,
60+ state ,
61+ objectProps
62+ ) ,
63+ ]
64+ ) ;
6165 } else if (
6266 schema . isObject ( type ) ||
6367 schema . isUnion ( type ) ||
@@ -82,17 +86,17 @@ function transformGraphQLScalarType(
8286 case "ID" :
8387 case "String" :
8488 case "Url" :
85- return ts . createKeywordTypeNode ( ts . SyntaxKind . StringKeyword ) ;
89+ return ts . factory . createKeywordTypeNode ( ts . SyntaxKind . StringKeyword ) ;
8690 case "Float" :
8791 case "Int" :
88- return ts . createKeywordTypeNode ( ts . SyntaxKind . NumberKeyword ) ;
92+ return ts . factory . createKeywordTypeNode ( ts . SyntaxKind . NumberKeyword ) ;
8993 case "Boolean" :
90- return ts . createKeywordTypeNode ( ts . SyntaxKind . BooleanKeyword ) ;
94+ return ts . factory . createKeywordTypeNode ( ts . SyntaxKind . BooleanKeyword ) ;
9195
9296 default :
9397 return customType
94- ? ts . createTypeReferenceNode ( customType , undefined )
95- : ts . createKeywordTypeNode ( ts . SyntaxKind . UnknownKeyword ) ;
98+ ? ts . factory . createTypeReferenceNode ( customType , undefined )
99+ : ts . factory . createKeywordTypeNode ( ts . SyntaxKind . UnknownKeyword ) ;
96100 }
97101}
98102
@@ -102,8 +106,8 @@ function transformGraphQLEnumType(
102106 state : State
103107) : ts . TypeNode {
104108 state . usedEnums [ schema . getTypeString ( type ) ] = type ;
105- return ts . createTypeReferenceNode (
106- ts . createIdentifier ( schema . getTypeString ( type ) ) ,
109+ return ts . factory . createTypeReferenceNode (
110+ ts . factory . createIdentifier ( schema . getTypeString ( type ) ) ,
107111 [ ]
108112 ) ;
109113}
@@ -120,10 +124,11 @@ export function transformInputType(
120124 state
121125 ) ;
122126 } else {
123- return ts . createUnionTypeNode ( [
127+ return ts . factory . createUnionTypeNode ( [
124128 transformNonNullableInputType ( schema , type , state ) ,
125- // @ts -ignore
126- ts . createKeywordTypeNode ( ts . SyntaxKind . NullKeyword ) ,
129+ ts . factory . createLiteralTypeNode (
130+ ts . factory . createToken ( ts . SyntaxKind . NullKeyword )
131+ ) ,
127132 ] ) ;
128133 }
129134}
@@ -134,18 +139,19 @@ function transformNonNullableInputType(
134139 state : State
135140) {
136141 if ( schema . isList ( type ) ) {
137- return ts . createTypeReferenceNode ( ts . createIdentifier ( "Array" ) , [
138- transformInputType ( schema , schema . getListItemType ( type ) , state ) ,
139- ] ) ;
142+ return ts . factory . createTypeReferenceNode (
143+ ts . factory . createIdentifier ( "Array" ) ,
144+ [ transformInputType ( schema , schema . getListItemType ( type ) , state ) ]
145+ ) ;
140146 } else if ( schema . isScalar ( type ) ) {
141147 return transformGraphQLScalarType ( schema . getTypeString ( type ) , state ) ;
142148 } else if ( schema . isEnum ( type ) ) {
143149 return transformGraphQLEnumType ( schema , schema . assertEnumType ( type ) , state ) ;
144150 } else if ( schema . isInputObject ( type ) ) {
145151 const typeIdentifier = getInputObjectTypeIdentifier ( schema , type ) ;
146152 if ( state . generatedInputObjectTypes [ typeIdentifier ] ) {
147- return ts . createTypeReferenceNode (
148- ts . createIdentifier ( typeIdentifier ) ,
153+ return ts . factory . createTypeReferenceNode (
154+ ts . factory . createIdentifier ( typeIdentifier ) ,
149155 [ ]
150156 ) ;
151157 }
@@ -156,23 +162,25 @@ function transformNonNullableInputType(
156162 const props = fields . map ( ( fieldID : FieldID ) => {
157163 const fieldType = schema . getFieldType ( fieldID ) ;
158164 const fieldName = schema . getFieldName ( fieldID ) ;
159- const property = ts . createPropertySignature (
165+ const property = ts . factory . createPropertySignature (
160166 undefined ,
161- ts . createIdentifier ( fieldName ) ,
167+ ts . factory . createIdentifier ( fieldName ) ,
162168 state . optionalInputFields . indexOf ( fieldName ) >= 0 ||
163169 ! schema . isNonNull ( fieldType )
164- ? ts . createToken ( ts . SyntaxKind . QuestionToken )
170+ ? ts . factory . createToken ( ts . SyntaxKind . QuestionToken )
165171 : undefined ,
166- transformInputType ( schema , fieldType , state ) ,
167- undefined
172+ transformInputType ( schema , fieldType , state )
168173 ) ;
169174
170175 return property ;
171176 } ) ;
172- state . generatedInputObjectTypes [ typeIdentifier ] = ts . createTypeLiteralNode (
173- props
177+ state . generatedInputObjectTypes [
178+ typeIdentifier
179+ ] = ts . factory . createTypeLiteralNode ( props ) ;
180+ return ts . factory . createTypeReferenceNode (
181+ ts . factory . createIdentifier ( typeIdentifier ) ,
182+ [ ]
174183 ) ;
175- return ts . createTypeReferenceNode ( ts . createIdentifier ( typeIdentifier ) , [ ] ) ;
176184 } else {
177185 throw new Error ( `Could not convert from GraphQL type ${ type . toString ( ) } ` ) ;
178186 }
0 commit comments