@gqlkit-ts/cli 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/dist/auto-type-generator/auto-type-generator.d.ts +19 -3
  2. package/dist/auto-type-generator/auto-type-generator.d.ts.map +1 -1
  3. package/dist/auto-type-generator/auto-type-generator.js +236 -49
  4. package/dist/auto-type-generator/auto-type-generator.js.map +1 -1
  5. package/dist/auto-type-generator/index.d.ts +1 -1
  6. package/dist/auto-type-generator/index.d.ts.map +1 -1
  7. package/dist/auto-type-generator/index.js.map +1 -1
  8. package/dist/auto-type-generator/inline-enum-collector.d.ts +31 -0
  9. package/dist/auto-type-generator/inline-enum-collector.d.ts.map +1 -0
  10. package/dist/auto-type-generator/inline-enum-collector.js +157 -0
  11. package/dist/auto-type-generator/inline-enum-collector.js.map +1 -0
  12. package/dist/auto-type-generator/naming-convention.d.ts +4 -0
  13. package/dist/auto-type-generator/naming-convention.d.ts.map +1 -1
  14. package/dist/auto-type-generator/naming-convention.js +8 -0
  15. package/dist/auto-type-generator/naming-convention.js.map +1 -1
  16. package/dist/gen-orchestrator/orchestrator.d.ts.map +1 -1
  17. package/dist/gen-orchestrator/orchestrator.js +106 -8
  18. package/dist/gen-orchestrator/orchestrator.js.map +1 -1
  19. package/dist/resolver-extractor/extract-resolvers.d.ts +10 -1
  20. package/dist/resolver-extractor/extract-resolvers.d.ts.map +1 -1
  21. package/dist/resolver-extractor/extractor/define-api-extractor.d.ts +11 -1
  22. package/dist/resolver-extractor/extractor/define-api-extractor.d.ts.map +1 -1
  23. package/dist/resolver-extractor/extractor/define-api-extractor.js +88 -264
  24. package/dist/resolver-extractor/extractor/define-api-extractor.js.map +1 -1
  25. package/dist/schema-generator/emitter/code-emitter.d.ts +10 -2
  26. package/dist/schema-generator/emitter/code-emitter.d.ts.map +1 -1
  27. package/dist/schema-generator/emitter/code-emitter.js +19 -4
  28. package/dist/schema-generator/emitter/code-emitter.js.map +1 -1
  29. package/dist/schema-generator/generate-schema.d.ts.map +1 -1
  30. package/dist/schema-generator/generate-schema.js +18 -1
  31. package/dist/schema-generator/generate-schema.js.map +1 -1
  32. package/dist/schema-generator/integrator/result-integrator.d.ts +20 -0
  33. package/dist/schema-generator/integrator/result-integrator.d.ts.map +1 -1
  34. package/dist/schema-generator/integrator/result-integrator.js +42 -0
  35. package/dist/schema-generator/integrator/result-integrator.js.map +1 -1
  36. package/dist/shared/constants.d.ts +0 -16
  37. package/dist/shared/constants.d.ts.map +1 -1
  38. package/dist/shared/constants.js +0 -19
  39. package/dist/shared/constants.js.map +1 -1
  40. package/dist/shared/directive-detector.d.ts.map +1 -1
  41. package/dist/shared/directive-detector.js +8 -15
  42. package/dist/shared/directive-detector.js.map +1 -1
  43. package/dist/shared/file-scanner.d.ts.map +1 -1
  44. package/dist/shared/file-scanner.js +5 -3
  45. package/dist/shared/file-scanner.js.map +1 -1
  46. package/dist/shared/index.d.ts +1 -1
  47. package/dist/shared/index.d.ts.map +1 -1
  48. package/dist/shared/index.js +1 -3
  49. package/dist/shared/index.js.map +1 -1
  50. package/dist/shared/interface-detector.d.ts +3 -2
  51. package/dist/shared/interface-detector.d.ts.map +1 -1
  52. package/dist/shared/interface-detector.js +54 -11
  53. package/dist/shared/interface-detector.js.map +1 -1
  54. package/dist/shared/path-utils.d.ts +2 -0
  55. package/dist/shared/path-utils.d.ts.map +1 -0
  56. package/dist/shared/path-utils.js +4 -0
  57. package/dist/shared/path-utils.js.map +1 -0
  58. package/dist/shared/type-converter.d.ts.map +1 -1
  59. package/dist/shared/type-converter.js +11 -0
  60. package/dist/shared/type-converter.js.map +1 -1
  61. package/dist/shared/typescript-utils.d.ts +34 -7
  62. package/dist/shared/typescript-utils.d.ts.map +1 -1
  63. package/dist/shared/typescript-utils.js +72 -24
  64. package/dist/shared/typescript-utils.js.map +1 -1
  65. package/dist/type-extractor/collector/scalar-collector.d.ts.map +1 -1
  66. package/dist/type-extractor/collector/scalar-collector.js +4 -14
  67. package/dist/type-extractor/collector/scalar-collector.js.map +1 -1
  68. package/dist/type-extractor/converter/graphql-converter.d.ts.map +1 -1
  69. package/dist/type-extractor/converter/graphql-converter.js +42 -3
  70. package/dist/type-extractor/converter/graphql-converter.js.map +1 -1
  71. package/dist/type-extractor/extractor/field-type-resolver.d.ts +28 -0
  72. package/dist/type-extractor/extractor/field-type-resolver.d.ts.map +1 -0
  73. package/dist/type-extractor/extractor/field-type-resolver.js +394 -0
  74. package/dist/type-extractor/extractor/field-type-resolver.js.map +1 -0
  75. package/dist/type-extractor/extractor/type-extractor.d.ts +12 -3
  76. package/dist/type-extractor/extractor/type-extractor.d.ts.map +1 -1
  77. package/dist/type-extractor/extractor/type-extractor.js +176 -210
  78. package/dist/type-extractor/extractor/type-extractor.js.map +1 -1
  79. package/dist/type-extractor/extractor/type-name-collector.d.ts +24 -0
  80. package/dist/type-extractor/extractor/type-name-collector.d.ts.map +1 -0
  81. package/dist/type-extractor/extractor/type-name-collector.js +102 -0
  82. package/dist/type-extractor/extractor/type-name-collector.js.map +1 -0
  83. package/dist/type-extractor/mapper/scalar-base-type-mapper.d.ts +89 -0
  84. package/dist/type-extractor/mapper/scalar-base-type-mapper.d.ts.map +1 -0
  85. package/dist/type-extractor/mapper/scalar-base-type-mapper.js +158 -0
  86. package/dist/type-extractor/mapper/scalar-base-type-mapper.js.map +1 -0
  87. package/dist/type-extractor/types/diagnostics.d.ts +1 -1
  88. package/dist/type-extractor/types/diagnostics.d.ts.map +1 -1
  89. package/dist/type-extractor/types/graphql.d.ts +2 -0
  90. package/dist/type-extractor/types/graphql.d.ts.map +1 -1
  91. package/dist/type-extractor/types/index.d.ts +2 -1
  92. package/dist/type-extractor/types/index.d.ts.map +1 -1
  93. package/dist/type-extractor/types/index.js +1 -1
  94. package/dist/type-extractor/types/index.js.map +1 -1
  95. package/dist/type-extractor/types/ts-type-reference-factory.d.ts +39 -0
  96. package/dist/type-extractor/types/ts-type-reference-factory.d.ts.map +1 -0
  97. package/dist/type-extractor/types/ts-type-reference-factory.js +69 -0
  98. package/dist/type-extractor/types/ts-type-reference-factory.js.map +1 -0
  99. package/dist/type-extractor/types/typescript.d.ts +21 -1
  100. package/dist/type-extractor/types/typescript.d.ts.map +1 -1
  101. package/dist/type-extractor/validator/type-validator.js +1 -1
  102. package/dist/type-extractor/validator/type-validator.js.map +1 -1
  103. package/docs/index.md +1 -0
  104. package/docs/integration/drizzle.md +191 -0
  105. package/docs/schema/enums.md +208 -0
  106. package/docs/schema/fields.md +2 -0
  107. package/docs/schema/inputs.md +2 -0
  108. package/docs/schema/objects.md +2 -0
  109. package/docs/schema/queries-mutations.md +2 -0
  110. package/package.json +10 -3
  111. package/src/auto-type-generator/auto-type-generator.ts +925 -0
  112. package/src/auto-type-generator/index.ts +21 -0
  113. package/src/auto-type-generator/inline-enum-collector.ts +290 -0
  114. package/src/auto-type-generator/name-collision-validator.ts +119 -0
  115. package/src/auto-type-generator/naming-convention.ts +126 -0
  116. package/src/cli.ts +11 -0
  117. package/src/commands/gen.ts +141 -0
  118. package/src/commands/main.ts +5 -0
  119. package/src/config/define-config.ts +28 -0
  120. package/src/config/index.ts +7 -0
  121. package/src/config/types.ts +144 -0
  122. package/src/config-loader/index.ts +14 -0
  123. package/src/config-loader/loader.ts +143 -0
  124. package/src/config-loader/validator.ts +672 -0
  125. package/src/gen-orchestrator/hook-executor/hook-executor.ts +117 -0
  126. package/src/gen-orchestrator/orchestrator.ts +784 -0
  127. package/src/gen-orchestrator/reporter/diagnostic-reporter.ts +44 -0
  128. package/src/gen-orchestrator/reporter/progress-reporter.ts +61 -0
  129. package/src/gen-orchestrator/writer/file-writer.ts +38 -0
  130. package/src/index.ts +2 -0
  131. package/src/resolver-extractor/extract-resolvers.ts +63 -0
  132. package/src/resolver-extractor/extractor/define-api-extractor.ts +806 -0
  133. package/src/resolver-extractor/index.ts +19 -0
  134. package/src/resolver-extractor/validator/abstract-resolver-validator.ts +251 -0
  135. package/src/resolver-extractor/validator/only-validator.ts +158 -0
  136. package/src/schema-generator/builder/ast-builder.ts +706 -0
  137. package/src/schema-generator/emitter/code-emitter.ts +351 -0
  138. package/src/schema-generator/emitter/sdl-emitter.ts +13 -0
  139. package/src/schema-generator/generate-schema.ts +170 -0
  140. package/src/schema-generator/index.ts +19 -0
  141. package/src/schema-generator/integrator/result-integrator.ts +690 -0
  142. package/src/schema-generator/pruner/schema-pruner.ts +112 -0
  143. package/src/schema-generator/resolver-collector/resolver-collector.ts +123 -0
  144. package/src/shared/constants.ts +122 -0
  145. package/src/shared/default-value-detector.ts +172 -0
  146. package/src/shared/diagnostics.ts +35 -0
  147. package/src/shared/directive-definition-extractor.ts +564 -0
  148. package/src/shared/directive-detector.ts +556 -0
  149. package/src/shared/file-scanner.ts +170 -0
  150. package/src/shared/index.ts +32 -0
  151. package/src/shared/inline-object-extractor.ts +102 -0
  152. package/src/shared/inline-object-utils.ts +23 -0
  153. package/src/shared/interface-detector.ts +176 -0
  154. package/src/shared/interface-validator.ts +211 -0
  155. package/src/shared/metadata-detector.ts +443 -0
  156. package/src/shared/path-utils.ts +3 -0
  157. package/src/shared/program-factory.ts +51 -0
  158. package/src/shared/source-location.ts +27 -0
  159. package/src/shared/tsconfig-loader.ts +126 -0
  160. package/src/shared/tsdoc-parser.ts +155 -0
  161. package/src/shared/type-converter.ts +99 -0
  162. package/src/shared/typescript-utils.ts +246 -0
  163. package/src/type-extractor/collector/result-collector.ts +57 -0
  164. package/src/type-extractor/collector/scalar-collector.ts +254 -0
  165. package/src/type-extractor/converter/field-eligibility.ts +112 -0
  166. package/src/type-extractor/converter/graphql-converter.ts +459 -0
  167. package/src/type-extractor/extract-types.ts +1 -0
  168. package/src/type-extractor/extractor/field-type-resolver.ts +569 -0
  169. package/src/type-extractor/extractor/type-extractor.ts +1567 -0
  170. package/src/type-extractor/extractor/type-name-collector.ts +130 -0
  171. package/src/type-extractor/index.ts +20 -0
  172. package/src/type-extractor/mapper/scalar-base-type-mapper.ts +265 -0
  173. package/src/type-extractor/types/diagnostics.ts +99 -0
  174. package/src/type-extractor/types/graphql.ts +55 -0
  175. package/src/type-extractor/types/index.ts +37 -0
  176. package/src/type-extractor/types/ts-type-reference-factory.ts +137 -0
  177. package/src/type-extractor/types/typescript.ts +133 -0
  178. package/src/type-extractor/validator/type-validator.ts +77 -0
  179. package/dist/auto-type-generator/auto-type-generator.test.d.ts +0 -2
  180. package/dist/auto-type-generator/auto-type-generator.test.d.ts.map +0 -1
  181. package/dist/auto-type-generator/auto-type-generator.test.js +0 -613
  182. package/dist/auto-type-generator/auto-type-generator.test.js.map +0 -1
  183. package/dist/auto-type-generator/name-collision-validator.test.d.ts +0 -2
  184. package/dist/auto-type-generator/name-collision-validator.test.d.ts.map +0 -1
  185. package/dist/auto-type-generator/name-collision-validator.test.js +0 -358
  186. package/dist/auto-type-generator/name-collision-validator.test.js.map +0 -1
  187. package/dist/auto-type-generator/naming-convention.test.d.ts +0 -2
  188. package/dist/auto-type-generator/naming-convention.test.d.ts.map +0 -1
  189. package/dist/auto-type-generator/naming-convention.test.js +0 -132
  190. package/dist/auto-type-generator/naming-convention.test.js.map +0 -1
  191. package/dist/commands/gen.test.d.ts +0 -2
  192. package/dist/commands/gen.test.d.ts.map +0 -1
  193. package/dist/commands/gen.test.js +0 -226
  194. package/dist/commands/gen.test.js.map +0 -1
  195. package/dist/config-loader/loader.test.d.ts +0 -2
  196. package/dist/config-loader/loader.test.d.ts.map +0 -1
  197. package/dist/config-loader/loader.test.js +0 -123
  198. package/dist/config-loader/loader.test.js.map +0 -1
  199. package/dist/config-loader/validator.test.d.ts +0 -2
  200. package/dist/config-loader/validator.test.d.ts.map +0 -1
  201. package/dist/config-loader/validator.test.js +0 -846
  202. package/dist/config-loader/validator.test.js.map +0 -1
  203. package/dist/gen-orchestrator/golden.test.d.ts +0 -2
  204. package/dist/gen-orchestrator/golden.test.d.ts.map +0 -1
  205. package/dist/gen-orchestrator/golden.test.js +0 -102
  206. package/dist/gen-orchestrator/golden.test.js.map +0 -1
  207. package/dist/gen-orchestrator/hook-executor/hook-executor.test.d.ts +0 -2
  208. package/dist/gen-orchestrator/hook-executor/hook-executor.test.d.ts.map +0 -1
  209. package/dist/gen-orchestrator/hook-executor/hook-executor.test.js +0 -167
  210. package/dist/gen-orchestrator/hook-executor/hook-executor.test.js.map +0 -1
  211. package/dist/gen-orchestrator/reporter/progress-reporter.test.d.ts +0 -2
  212. package/dist/gen-orchestrator/reporter/progress-reporter.test.d.ts.map +0 -1
  213. package/dist/gen-orchestrator/reporter/progress-reporter.test.js +0 -74
  214. package/dist/gen-orchestrator/reporter/progress-reporter.test.js.map +0 -1
  215. package/dist/resolver-extractor/validator/only-validator.test.d.ts +0 -8
  216. package/dist/resolver-extractor/validator/only-validator.test.d.ts.map +0 -1
  217. package/dist/resolver-extractor/validator/only-validator.test.js +0 -352
  218. package/dist/resolver-extractor/validator/only-validator.test.js.map +0 -1
  219. package/dist/schema-generator/builder/ast-builder.test.d.ts +0 -2
  220. package/dist/schema-generator/builder/ast-builder.test.d.ts.map +0 -1
  221. package/dist/schema-generator/builder/ast-builder.test.js +0 -469
  222. package/dist/schema-generator/builder/ast-builder.test.js.map +0 -1
  223. package/dist/shared/file-scanner.test.d.ts +0 -2
  224. package/dist/shared/file-scanner.test.d.ts.map +0 -1
  225. package/dist/shared/file-scanner.test.js +0 -138
  226. package/dist/shared/file-scanner.test.js.map +0 -1
  227. package/dist/shared/interface-validator.test.d.ts +0 -2
  228. package/dist/shared/interface-validator.test.d.ts.map +0 -1
  229. package/dist/shared/interface-validator.test.js +0 -145
  230. package/dist/shared/interface-validator.test.js.map +0 -1
  231. package/dist/type-extractor/types/typescript.test.d.ts +0 -2
  232. package/dist/type-extractor/types/typescript.test.d.ts.map +0 -1
  233. package/dist/type-extractor/types/typescript.test.js +0 -287
  234. package/dist/type-extractor/types/typescript.test.js.map +0 -1
@@ -8,15 +8,16 @@
8
8
  import ts from "typescript";
9
9
  /**
10
10
  * Checks if a type alias declaration uses GqlInterface.
11
- * Inspects the typeNode directly since TypeScript resolves the alias.
11
+ * Detects by checking for the $gqlkitInterfaceMeta property in the resolved type.
12
12
  */
13
- export declare function isDefineInterfaceTypeAlias(node: ts.TypeAliasDeclaration, sourceFile: ts.SourceFile): boolean;
13
+ export declare function isDefineInterfaceTypeAlias(node: ts.TypeAliasDeclaration, checker: ts.TypeChecker): boolean;
14
14
  /**
15
15
  * Extracts implements from GqlInterface type alias.
16
16
  */
17
17
  export declare function extractImplementsFromDefineInterface(node: ts.TypeAliasDeclaration, sourceFile: ts.SourceFile, checker: ts.TypeChecker): ReadonlyArray<string>;
18
18
  /**
19
19
  * Extracts implements from GqlObject type alias.
20
+ * Detects GqlObject by checking for the $gqlkitTypeMeta property in the resolved type.
20
21
  */
21
22
  export declare function extractImplementsFromGqlTypeDef(node: ts.TypeAliasDeclaration, sourceFile: ts.SourceFile, checker: ts.TypeChecker): ReadonlyArray<string>;
22
23
  //# sourceMappingURL=interface-detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interface-detector.d.ts","sourceRoot":"","sources":["../../src/shared/interface-detector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,UAAU,EAAE,EAAE,CAAC,UAAU,GACxB,OAAO,CAOT;AAED;;GAEG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,aAAa,CAAC,MAAM,CAAC,CAiBvB;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,aAAa,CAAC,MAAM,CAAC,CAsBvB"}
1
+ {"version":3,"file":"interface-detector.d.ts","sourceRoot":"","sources":["../../src/shared/interface-detector.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAM5B;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,OAAO,CAQT;AA4CD;;GAEG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,aAAa,CAAC,MAAM,CAAC,CAiBvB;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,aAAa,CAAC,MAAM,CAAC,CA2BvB"}
@@ -6,16 +6,54 @@
6
6
  * and to extract implements declarations from types using $gqlkitTypeMeta.
7
7
  */
8
8
  import ts from "typescript";
9
- import { RUNTIME_TYPE_NAMES } from "./constants.js";
9
+ import { METADATA_PROPERTIES } from "./constants.js";
10
+ const INTERFACE_META_PROPERTY = METADATA_PROPERTIES.INTERFACE_META;
11
+ const TYPE_META_PROPERTY = METADATA_PROPERTIES.TYPE_META;
10
12
  /**
11
13
  * Checks if a type alias declaration uses GqlInterface.
12
- * Inspects the typeNode directly since TypeScript resolves the alias.
14
+ * Detects by checking for the $gqlkitInterfaceMeta property in the resolved type.
13
15
  */
14
- export function isDefineInterfaceTypeAlias(node, sourceFile) {
15
- const typeNode = node.type;
16
- if (ts.isTypeReferenceNode(typeNode)) {
17
- const typeName = typeNode.typeName.getText(sourceFile);
18
- return typeName === RUNTIME_TYPE_NAMES.GQL_INTERFACE;
16
+ export function isDefineInterfaceTypeAlias(node, checker) {
17
+ const symbol = checker.getSymbolAtLocation(node.name);
18
+ if (!symbol) {
19
+ return false;
20
+ }
21
+ const type = checker.getDeclaredTypeOfSymbol(symbol);
22
+ return hasInterfaceMetadata(type);
23
+ }
24
+ /**
25
+ * Checks if a type has the $gqlkitInterfaceMeta property.
26
+ */
27
+ function hasInterfaceMetadata(type) {
28
+ const metaProp = type.getProperty(INTERFACE_META_PROPERTY);
29
+ if (metaProp) {
30
+ return true;
31
+ }
32
+ if (type.isIntersection()) {
33
+ for (const member of type.types) {
34
+ const prop = member.getProperty(INTERFACE_META_PROPERTY);
35
+ if (prop) {
36
+ return true;
37
+ }
38
+ }
39
+ }
40
+ return false;
41
+ }
42
+ /**
43
+ * Checks if a type has the $gqlkitTypeMeta property (GqlObject).
44
+ */
45
+ function hasTypeMetadata(type) {
46
+ const metaProp = type.getProperty(TYPE_META_PROPERTY);
47
+ if (metaProp) {
48
+ return true;
49
+ }
50
+ if (type.isIntersection()) {
51
+ for (const member of type.types) {
52
+ const prop = member.getProperty(TYPE_META_PROPERTY);
53
+ if (prop) {
54
+ return true;
55
+ }
56
+ }
19
57
  }
20
58
  return false;
21
59
  }
@@ -39,14 +77,19 @@ export function extractImplementsFromDefineInterface(node, sourceFile, checker)
39
77
  }
40
78
  /**
41
79
  * Extracts implements from GqlObject type alias.
80
+ * Detects GqlObject by checking for the $gqlkitTypeMeta property in the resolved type.
42
81
  */
43
82
  export function extractImplementsFromGqlTypeDef(node, sourceFile, checker) {
44
- const typeNode = node.type;
45
- if (!ts.isTypeReferenceNode(typeNode)) {
83
+ const symbol = checker.getSymbolAtLocation(node.name);
84
+ if (!symbol) {
85
+ return [];
86
+ }
87
+ const type = checker.getDeclaredTypeOfSymbol(symbol);
88
+ if (!hasTypeMetadata(type)) {
46
89
  return [];
47
90
  }
48
- const typeName = typeNode.typeName.getText(sourceFile);
49
- if (typeName !== RUNTIME_TYPE_NAMES.GQL_OBJECT) {
91
+ const typeNode = node.type;
92
+ if (!ts.isTypeReferenceNode(typeNode)) {
50
93
  return [];
51
94
  }
52
95
  const typeArgs = typeNode.typeArguments;
@@ -1 +1 @@
1
- {"version":3,"file":"interface-detector.js","sourceRoot":"","sources":["../../src/shared/interface-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface-detector.js","sourceRoot":"","sources":["../../src/shared/interface-detector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function toPosixPath(filePath: string): string;
2
+ //# sourceMappingURL=path-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-utils.d.ts","sourceRoot":"","sources":["../../src/shared/path-utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEpD"}
@@ -0,0 +1,4 @@
1
+ export function toPosixPath(filePath) {
2
+ return filePath.replace(/\\/g, "/");
3
+ }
4
+ //# sourceMappingURL=path-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../../src/shared/path-utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CAAC,QAAgB;IAC1C,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACtC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"type-converter.d.ts","sourceRoot":"","sources":["../../src/shared/type-converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAmB1C,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,eAAe,EACvB,QAAQ,UAAQ,GACf,gBAAgB,CA6DlB"}
1
+ {"version":3,"file":"type-converter.d.ts","sourceRoot":"","sources":["../../src/shared/type-converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAsB1C,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,eAAe,EACvB,QAAQ,UAAQ,GACf,gBAAgB,CAsElB"}
@@ -12,6 +12,9 @@ function convertElementTypeName(elementType) {
12
12
  if (elementType.kind === "inlineObject") {
13
13
  return "__INLINE_OBJECT__";
14
14
  }
15
+ if (elementType.kind === "inlineEnum") {
16
+ return "__INLINE_ENUM__";
17
+ }
15
18
  return elementType.name ?? "String";
16
19
  }
17
20
  export function convertTsTypeToGraphQLType(tsType, optional = false) {
@@ -62,6 +65,14 @@ export function convertTsTypeToGraphQLType(tsType, optional = false) {
62
65
  listItemNullable: null,
63
66
  };
64
67
  }
68
+ if (tsType.kind === "inlineEnum") {
69
+ return {
70
+ typeName: "__INLINE_ENUM__",
71
+ nullable,
72
+ list: false,
73
+ listItemNullable: null,
74
+ };
75
+ }
65
76
  return {
66
77
  typeName: tsType.name ?? "String",
67
78
  nullable,
@@ -1 +1 @@
1
- {"version":3,"file":"type-converter.js","sourceRoot":"","sources":["../../src/shared/type-converter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,SAAS,sBAAsB,CAAC,WAA4B;IAC1D,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC,UAAU,EAAE,UAAU,IAAI,WAAW,CAAC,IAAI,IAAI,QAAQ,CAAC;IAC5E,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACrC,OAAO,kBAAkB,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,QAAQ,CAAC;IAChE,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACrC,OAAO,WAAW,CAAC,IAAI,IAAI,SAAS,CAAC;IACvC,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACxC,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,OAAO,WAAW,CAAC,IAAI,IAAI,QAAQ,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAAuB,EACvB,QAAQ,GAAG,KAAK;IAEhB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;IAE7C,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,MAAM,eAAe,GAAG,WAAW;YACjC,CAAC,CAAC,sBAAsB,CAAC,WAAW,CAAC;YACrC,CAAC,CAAC,QAAQ,CAAC;QACb,MAAM,gBAAgB,GAAG,WAAW,EAAE,QAAQ,IAAI,KAAK,CAAC;QAExD,OAAO;YACL,QAAQ,EAAE,eAAe;YACzB,QAAQ;YACR,IAAI,EAAE,IAAI;YACV,gBAAgB;SACjB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ;YAClE,QAAQ;YACR,IAAI,EAAE,KAAK;YACX,gBAAgB,EAAE,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,QAAQ,CAAC;QACtE,OAAO;YACL,QAAQ,EAAE,WAAW;YACrB,QAAQ;YACR,IAAI,EAAE,KAAK;YACX,gBAAgB,EAAE,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAChC,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,IAAI,IAAI,SAAS;YAClC,QAAQ;YACR,IAAI,EAAE,KAAK;YACX,gBAAgB,EAAE,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QACnC,OAAO;YACL,QAAQ,EAAE,mBAAmB;YAC7B,QAAQ;YACR,IAAI,EAAE,KAAK;YACX,gBAAgB,EAAE,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,IAAI,IAAI,QAAQ;QACjC,QAAQ;QACR,IAAI,EAAE,KAAK;QACX,gBAAgB,EAAE,IAAI;KACvB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"type-converter.js","sourceRoot":"","sources":["../../src/shared/type-converter.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,21 @@
1
1
  import ts from "typescript";
2
2
  /**
3
- * Checks if a type is a built-in utility type like Omit, Pick, etc.
3
+ * Extracts type name from a TypeNode.
4
+ * Handles both simple identifiers and qualified names.
4
5
  */
5
- export declare function isBuiltinUtilityType(type: ts.Type): boolean;
6
+ export declare function getTypeNameFromNode(typeNode: ts.TypeNode): string | null;
6
7
  /**
7
8
  * Checks if a type represents null or undefined.
8
9
  */
9
10
  export declare function isNullOrUndefined(type: ts.Type): boolean;
11
+ /**
12
+ * Filters non-null type nodes from a union type node.
13
+ */
14
+ export declare function filterNonNullTypeNodes(typeNode: ts.UnionTypeNode): ts.TypeNode[];
15
+ /**
16
+ * Finds the first non-null type node from a union type node.
17
+ */
18
+ export declare function findNonNullTypeNode(typeNode: ts.UnionTypeNode): ts.TypeNode | undefined;
10
19
  /**
11
20
  * Checks if a union type contains null or undefined.
12
21
  */
@@ -42,14 +51,32 @@ export declare function isAnonymousObjectType(type: ts.Type): boolean;
42
51
  * and falling back to getApparentType when getProperties() returns empty.
43
52
  */
44
53
  export declare function extractPropertySymbols(type: ts.Type, checker: ts.TypeChecker): ts.Symbol[];
45
- export interface ShouldTreatIntersectionAsInlineOptions {
46
- readonly checkBuiltinUtilityTypes?: boolean;
47
- }
48
54
  /**
49
55
  * Determines if an intersection type should be treated as an inline object.
50
56
  * Returns true when:
51
- * - Case 1: Has at least one anonymous/inline member (and optionally utility type member)
57
+ * - Case 1: Has at least one anonymous/inline member
52
58
  * - Case 2: All members are object-like types that should be merged
53
59
  */
54
- export declare function shouldTreatIntersectionAsInline(type: ts.IntersectionType, options?: ShouldTreatIntersectionAsInlineOptions): boolean;
60
+ export declare function shouldTreatIntersectionAsInline(type: ts.IntersectionType): boolean;
61
+ /**
62
+ * Internal TypeScript symbol with parent reference.
63
+ * Used to access the parent enum symbol from enum member types.
64
+ */
65
+ export type SymbolWithParent = ts.Symbol & {
66
+ parent?: ts.Symbol;
67
+ };
68
+ /**
69
+ * Finds the parent enum symbol if all types belong to the same enum.
70
+ * Returns null if types are empty, don't have a common parent enum, or belong to different enums.
71
+ */
72
+ export declare function findEnumParentSymbol(types: readonly ts.Type[]): ts.Symbol | null;
73
+ /**
74
+ * Checks if a union type is a boolean union (true | false with optional null/undefined).
75
+ */
76
+ export declare function isBooleanUnion(type: ts.Type): boolean;
77
+ /**
78
+ * Resolves a symbol to its original symbol by following alias chains.
79
+ * This is necessary for re-exports where the symbol is an alias.
80
+ */
81
+ export declare function resolveOriginalSymbol(symbol: ts.Symbol, checker: ts.TypeChecker): ts.Symbol;
55
82
  //# sourceMappingURL=typescript-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-utils.d.ts","sourceRoot":"","sources":["../../src/shared/typescript-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAgB5B;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAK3D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAKxD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,CAG5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAMzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAGjD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAS5D;AAkBD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,EAAE,CAAC,MAAM,EAAE,CA0Bb;AAED,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;CAC7C;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,EAAE,CAAC,gBAAgB,EACzB,OAAO,GAAE,sCAA2C,GACnD,OAAO,CAmBT"}
1
+ {"version":3,"file":"typescript-utils.d.ts","sourceRoot":"","sources":["../../src/shared/typescript-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAG5B;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,CAUxE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAKxD;AAYD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,EAAE,CAAC,aAAa,GACzB,EAAE,CAAC,QAAQ,EAAE,CAEf;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,EAAE,CAAC,aAAa,GACzB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAEzB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,CAG5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAMzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAGjD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAS5D;AAkBD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,EAAE,CAAC,IAAI,EACb,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,EAAE,CAAC,MAAM,EAAE,CA0Bb;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,EAAE,CAAC,gBAAgB,GACxB,OAAO,CAcT;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,GAAG;IAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAA;CAAE,CAAC;AAElE;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,GACxB,EAAE,CAAC,MAAM,GAAG,IAAI,CAgBlB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,OAAO,CAOrD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,EAAE,CAAC,MAAM,EACjB,OAAO,EAAE,EAAE,CAAC,WAAW,GACtB,EAAE,CAAC,MAAM,CAKX"}
@@ -1,25 +1,19 @@
1
1
  import ts from "typescript";
2
2
  import { isInlineObjectType } from "./inline-object-utils.js";
3
3
  /**
4
- * List of TypeScript built-in utility types that should be resolved
5
- * to their actual properties when used in args.
6
- */
7
- const BUILTIN_UTILITY_TYPES = [
8
- "Omit",
9
- "Pick",
10
- "Partial",
11
- "Required",
12
- "Readonly",
13
- "Record",
14
- ];
15
- /**
16
- * Checks if a type is a built-in utility type like Omit, Pick, etc.
17
- */
18
- export function isBuiltinUtilityType(type) {
19
- if (!type.aliasSymbol) {
20
- return false;
4
+ * Extracts type name from a TypeNode.
5
+ * Handles both simple identifiers and qualified names.
6
+ */
7
+ export function getTypeNameFromNode(typeNode) {
8
+ if (ts.isTypeReferenceNode(typeNode)) {
9
+ if (ts.isIdentifier(typeNode.typeName)) {
10
+ return typeNode.typeName.text;
11
+ }
12
+ if (ts.isQualifiedName(typeNode.typeName)) {
13
+ return typeNode.typeName.right.text;
14
+ }
21
15
  }
22
- return BUILTIN_UTILITY_TYPES.includes(type.aliasSymbol.getName());
16
+ return null;
23
17
  }
24
18
  /**
25
19
  * Checks if a type represents null or undefined.
@@ -28,6 +22,25 @@ export function isNullOrUndefined(type) {
28
22
  return ((type.flags & ts.TypeFlags.Null) !== 0 ||
29
23
  (type.flags & ts.TypeFlags.Undefined) !== 0);
30
24
  }
25
+ /**
26
+ * Checks if a TypeNode represents null (literal null type).
27
+ */
28
+ function isNullTypeNode(typeNode) {
29
+ return (ts.isLiteralTypeNode(typeNode) &&
30
+ typeNode.literal.kind === ts.SyntaxKind.NullKeyword);
31
+ }
32
+ /**
33
+ * Filters non-null type nodes from a union type node.
34
+ */
35
+ export function filterNonNullTypeNodes(typeNode) {
36
+ return typeNode.types.filter((t) => !isNullTypeNode(t));
37
+ }
38
+ /**
39
+ * Finds the first non-null type node from a union type node.
40
+ */
41
+ export function findNonNullTypeNode(typeNode) {
42
+ return filterNonNullTypeNodes(typeNode)[0];
43
+ }
31
44
  /**
32
45
  * Checks if a union type contains null or undefined.
33
46
  */
@@ -129,14 +142,11 @@ export function extractPropertySymbols(type, checker) {
129
142
  /**
130
143
  * Determines if an intersection type should be treated as an inline object.
131
144
  * Returns true when:
132
- * - Case 1: Has at least one anonymous/inline member (and optionally utility type member)
145
+ * - Case 1: Has at least one anonymous/inline member
133
146
  * - Case 2: All members are object-like types that should be merged
134
147
  */
135
- export function shouldTreatIntersectionAsInline(type, options = {}) {
136
- const { checkBuiltinUtilityTypes = false } = options;
137
- const hasResolvableMember = type.types.some((t) => isInlineObjectType(t) ||
138
- isAnonymousObjectType(t) ||
139
- (checkBuiltinUtilityTypes && isBuiltinUtilityType(t)));
148
+ export function shouldTreatIntersectionAsInline(type) {
149
+ const hasResolvableMember = type.types.some((t) => isInlineObjectType(t) || isAnonymousObjectType(t));
140
150
  if (hasResolvableMember) {
141
151
  return true;
142
152
  }
@@ -146,4 +156,42 @@ export function shouldTreatIntersectionAsInline(type, options = {}) {
146
156
  }
147
157
  return false;
148
158
  }
159
+ /**
160
+ * Finds the parent enum symbol if all types belong to the same enum.
161
+ * Returns null if types are empty, don't have a common parent enum, or belong to different enums.
162
+ */
163
+ export function findEnumParentSymbol(types) {
164
+ if (types.length === 0)
165
+ return null;
166
+ const firstSymbol = types[0].symbol;
167
+ const parentSymbol = firstSymbol?.parent;
168
+ if (!parentSymbol || !(parentSymbol.flags & ts.SymbolFlags.Enum)) {
169
+ return null;
170
+ }
171
+ const allBelongToSameEnum = types.every((t) => {
172
+ const sym = t.symbol;
173
+ return sym?.parent === parentSymbol;
174
+ });
175
+ return allBelongToSameEnum ? parentSymbol : null;
176
+ }
177
+ /**
178
+ * Checks if a union type is a boolean union (true | false with optional null/undefined).
179
+ */
180
+ export function isBooleanUnion(type) {
181
+ if (!type.isUnion())
182
+ return false;
183
+ const nonNullTypes = getNonNullableTypes(type);
184
+ return (nonNullTypes.length === 2 &&
185
+ nonNullTypes.every((t) => t.flags & ts.TypeFlags.BooleanLiteral));
186
+ }
187
+ /**
188
+ * Resolves a symbol to its original symbol by following alias chains.
189
+ * This is necessary for re-exports where the symbol is an alias.
190
+ */
191
+ export function resolveOriginalSymbol(symbol, checker) {
192
+ if (symbol.flags & ts.SymbolFlags.Alias) {
193
+ return checker.getAliasedSymbol(symbol);
194
+ }
195
+ return symbol;
196
+ }
149
197
  //# sourceMappingURL=typescript-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-utils.js","sourceRoot":"","sources":["../../src/shared/typescript-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript-utils.js","sourceRoot":"","sources":["../../src/shared/typescript-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scalar-collector.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/collector/scalar-collector.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,+BAA+B;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;IACzC,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,kDAAkD;IAClD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IACzC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACnD,0BAA0B;IAC1B,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACxD,qDAAqD;IACrD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EACT,sBAAsB,GACtB,oBAAoB,GACpB,qBAAqB,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;CAAE,GAC3D;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAA;CAAE,CAAC;AAuCzE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAC7C,MAAM,GAAG,IAAI,CAKf;AAaD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,oEAAoE;IACpE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC9C,aAAa,EAAE,aAAa,CAAC,mBAAmB,CAAC,EACjD,OAAO,GAAE,qBAA0B,GAClC,oBAAoB,CAqFtB"}
1
+ {"version":3,"file":"scalar-collector.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/collector/scalar-collector.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,+BAA+B;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;IACzC,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,kDAAkD;IAClD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2BAA2B;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC;IACzC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACnD,0BAA0B;IAC1B,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACxD,qDAAqD;IACrD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EACT,sBAAsB,GACtB,oBAAoB,GACpB,qBAAqB,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;CAAE,GAC3D;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,aAAa,CAAC,yBAAyB,CAAC,CAAA;CAAE,CAAC;AAuCzE;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAC7C,MAAM,GAAG,IAAI,CAKf;AAaD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,oEAAoE;IACpE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC9C,aAAa,EAAE,aAAa,CAAC,mBAAmB,CAAC,EACjD,OAAO,GAAE,qBAA0B,GAClC,oBAAoB,CA0EtB"}
@@ -101,20 +101,10 @@ export function collectScalars(scalarInfos, configScalars, options = {}) {
101
101
  });
102
102
  continue;
103
103
  }
104
- if (group.inputTypes.length === 0) {
105
- diagnostics.push({
106
- code: "MISSING_INPUT_TYPE",
107
- message: `Custom scalar '${scalarName}' has no input type. Add a type without 'only' constraint or with 'only: "input"'.`,
108
- severity: "error",
109
- });
110
- continue;
111
- }
112
- if (group.outputTypes.length === 0) {
113
- diagnostics.push({
114
- code: "MISSING_OUTPUT_TYPE",
115
- message: `Custom scalar '${scalarName}' has no output type. Add a type without 'only' constraint or with 'only: "output"'.`,
116
- severity: "error",
117
- });
104
+ // Allow input-only scalars (no output type required) and output-only scalars (no input type required)
105
+ // These are valid for context-specific scalar usage patterns (Requirements 3.1, 3.2, 3.3)
106
+ if (group.inputTypes.length === 0 && group.outputTypes.length === 0) {
107
+ // Both missing - this shouldn't happen but guard against it
118
108
  continue;
119
109
  }
120
110
  collectedScalars.push({
@@ -1 +1 @@
1
- {"version":3,"file":"scalar-collector.js","sourceRoot":"","sources":["../../../src/type-extractor/collector/scalar-collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scalar-collector.js","sourceRoot":"","sources":["../../../src/type-extractor/collector/scalar-collector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-converter.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/converter/graphql-converter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,UAAU,EAGV,iBAAiB,EAEjB,eAAe,EAIhB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AAgOD,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAC/C,gBAAgB,CAsJlB"}
1
+ {"version":3,"file":"graphql-converter.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/converter/graphql-converter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,UAAU,EAGV,iBAAiB,EAEjB,eAAe,EAIhB,MAAM,mBAAmB,CAAC;AAO3B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AAmQD,wBAAgB,gBAAgB,CAC9B,cAAc,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAC/C,gBAAgB,CA2KlB"}
@@ -17,10 +17,13 @@ function toScreamingSnakeCase(value) {
17
17
  .replace(/([A-Z]+)([A-Z][a-z])/g, "$1_$2")
18
18
  .toUpperCase();
19
19
  }
20
- function convertEnumMembers(members, sourceFile) {
20
+ function convertEnumMembers(params) {
21
+ const { members, enumName, sourceFile, enumLocation } = params;
21
22
  const values = [];
22
23
  const diagnostics = [];
23
24
  let isNumeric = false;
25
+ let needsMapping = false;
26
+ const convertedNameToOriginals = new Map();
24
27
  for (const member of members) {
25
28
  const convertedName = toScreamingSnakeCase(member.name);
26
29
  const eligibility = isEligibleAsEnumValue(convertedName, member.name);
@@ -40,6 +43,12 @@ function convertEnumMembers(members, sourceFile) {
40
43
  if (member.numericValue !== null) {
41
44
  isNumeric = true;
42
45
  }
46
+ if (convertedName !== member.value) {
47
+ needsMapping = true;
48
+ }
49
+ const existingOriginals = convertedNameToOriginals.get(convertedName) ?? [];
50
+ existingOriginals.push(member.value);
51
+ convertedNameToOriginals.set(convertedName, existingOriginals);
43
52
  values.push({
44
53
  name: convertedName,
45
54
  originalValue: member.value,
@@ -48,7 +57,19 @@ function convertEnumMembers(members, sourceFile) {
48
57
  deprecated: member.deprecated,
49
58
  });
50
59
  }
51
- return { values, diagnostics, isNumeric };
60
+ let hasError = false;
61
+ for (const [convertedName, originals] of convertedNameToOriginals) {
62
+ if (originals.length > 1) {
63
+ diagnostics.push({
64
+ code: "DUPLICATE_ENUM_VALUE_AFTER_CONVERSION",
65
+ message: `Enum '${enumName}' has duplicate value '${convertedName}' after conversion (from '${originals.join("' and '")}')`,
66
+ severity: "error",
67
+ location: enumLocation,
68
+ });
69
+ hasError = true;
70
+ }
71
+ }
72
+ return { values, diagnostics, isNumeric, needsMapping, hasError };
52
73
  }
53
74
  function convertFields(extracted, isInput) {
54
75
  const fields = [];
@@ -195,8 +216,21 @@ export function convertToGraphQL(extractedTypes) {
195
216
  location: { file: metadata.sourceFile, line: 1, column: 1 },
196
217
  });
197
218
  }
198
- const { values: enumValues, diagnostics: enumDiagnostics, isNumeric, } = convertEnumMembers(extracted.enumMembers ?? [], metadata.sourceFile);
219
+ const enumLocation = metadata.sourceLocation ?? {
220
+ file: metadata.sourceFile,
221
+ line: 1,
222
+ column: 1,
223
+ };
224
+ const { values: enumValues, diagnostics: enumDiagnostics, isNumeric, needsMapping, hasError, } = convertEnumMembers({
225
+ members: extracted.enumMembers ?? [],
226
+ enumName: metadata.name,
227
+ sourceFile: metadata.sourceFile,
228
+ enumLocation,
229
+ });
199
230
  diagnostics.push(...enumDiagnostics);
231
+ if (hasError) {
232
+ continue;
233
+ }
200
234
  types.push({
201
235
  name: metadata.name,
202
236
  kind: "Enum",
@@ -204,6 +238,7 @@ export function convertToGraphQL(extractedTypes) {
204
238
  unionMembers: null,
205
239
  enumValues,
206
240
  isNumericEnum: isNumeric,
241
+ needsStringEnumMapping: !isNumeric && needsMapping,
207
242
  implementedInterfaces: null,
208
243
  sourceFile: metadata.sourceFile,
209
244
  description: metadata.description,
@@ -221,6 +256,7 @@ export function convertToGraphQL(extractedTypes) {
221
256
  unionMembers: null,
222
257
  enumValues: null,
223
258
  isNumericEnum: false,
259
+ needsStringEnumMapping: false,
224
260
  implementedInterfaces: extracted.implementedInterfaces
225
261
  ? [...extracted.implementedInterfaces]
226
262
  : null,
@@ -245,6 +281,7 @@ export function convertToGraphQL(extractedTypes) {
245
281
  unionMembers: null,
246
282
  enumValues: null,
247
283
  isNumericEnum: false,
284
+ needsStringEnumMapping: false,
248
285
  implementedInterfaces: null,
249
286
  sourceFile: metadata.sourceFile,
250
287
  description: metadata.description,
@@ -265,6 +302,7 @@ export function convertToGraphQL(extractedTypes) {
265
302
  unionMembers,
266
303
  enumValues: null,
267
304
  isNumericEnum: false,
305
+ needsStringEnumMapping: false,
268
306
  implementedInterfaces: null,
269
307
  sourceFile: metadata.sourceFile,
270
308
  description: metadata.description,
@@ -284,6 +322,7 @@ export function convertToGraphQL(extractedTypes) {
284
322
  unionMembers: null,
285
323
  enumValues: null,
286
324
  isNumericEnum: false,
325
+ needsStringEnumMapping: false,
287
326
  implementedInterfaces: extracted.implementedInterfaces
288
327
  ? [...extracted.implementedInterfaces]
289
328
  : null,