@gqlkit-ts/cli 0.0.1 → 0.1.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 (325) hide show
  1. package/LICENSE +21 -0
  2. package/dist/auto-type-generator/auto-type-generator.d.ts +46 -0
  3. package/dist/auto-type-generator/auto-type-generator.d.ts.map +1 -0
  4. package/dist/auto-type-generator/auto-type-generator.js +353 -0
  5. package/dist/auto-type-generator/auto-type-generator.js.map +1 -0
  6. package/dist/auto-type-generator/auto-type-generator.test.d.ts +2 -0
  7. package/dist/auto-type-generator/auto-type-generator.test.d.ts.map +1 -0
  8. package/dist/auto-type-generator/auto-type-generator.test.js +613 -0
  9. package/dist/auto-type-generator/auto-type-generator.test.js.map +1 -0
  10. package/dist/auto-type-generator/index.d.ts +4 -0
  11. package/dist/auto-type-generator/index.d.ts.map +1 -0
  12. package/dist/auto-type-generator/index.js +3 -0
  13. package/dist/auto-type-generator/index.js.map +1 -0
  14. package/dist/auto-type-generator/name-collision-validator.d.ts +17 -0
  15. package/dist/auto-type-generator/name-collision-validator.d.ts.map +1 -0
  16. package/dist/auto-type-generator/name-collision-validator.js +68 -0
  17. package/dist/auto-type-generator/name-collision-validator.js.map +1 -0
  18. package/dist/auto-type-generator/name-collision-validator.test.d.ts +2 -0
  19. package/dist/auto-type-generator/name-collision-validator.test.d.ts.map +1 -0
  20. package/dist/auto-type-generator/name-collision-validator.test.js +358 -0
  21. package/dist/auto-type-generator/name-collision-validator.test.js.map +1 -0
  22. package/dist/auto-type-generator/naming-convention.d.ts +40 -0
  23. package/dist/auto-type-generator/naming-convention.d.ts.map +1 -0
  24. package/dist/auto-type-generator/naming-convention.js +59 -0
  25. package/dist/auto-type-generator/naming-convention.js.map +1 -0
  26. package/dist/auto-type-generator/naming-convention.test.d.ts +2 -0
  27. package/dist/auto-type-generator/naming-convention.test.d.ts.map +1 -0
  28. package/dist/auto-type-generator/naming-convention.test.js +132 -0
  29. package/dist/auto-type-generator/naming-convention.test.js.map +1 -0
  30. package/dist/cli.d.ts +2 -0
  31. package/dist/cli.d.ts.map +1 -0
  32. package/dist/cli.js +11 -0
  33. package/dist/cli.js.map +1 -0
  34. package/dist/commands/gen.d.ts +32 -0
  35. package/dist/commands/gen.d.ts.map +1 -0
  36. package/dist/commands/gen.js +101 -0
  37. package/dist/commands/gen.js.map +1 -0
  38. package/dist/commands/gen.test.d.ts +2 -0
  39. package/dist/commands/gen.test.d.ts.map +1 -0
  40. package/dist/commands/gen.test.js +226 -0
  41. package/dist/commands/gen.test.js.map +1 -0
  42. package/dist/commands/main.d.ts +12 -0
  43. package/dist/commands/main.d.ts.map +1 -0
  44. package/dist/commands/main.js +5 -0
  45. package/dist/commands/main.js.map +1 -0
  46. package/dist/config/define-config.d.ts +26 -0
  47. package/dist/config/define-config.d.ts.map +1 -0
  48. package/dist/config/define-config.js +27 -0
  49. package/dist/config/define-config.js.map +1 -0
  50. package/dist/config/index.d.ts +3 -0
  51. package/dist/config/index.d.ts.map +1 -0
  52. package/dist/config/index.js +2 -0
  53. package/dist/config/index.js.map +1 -0
  54. package/dist/config/types.d.ts +131 -0
  55. package/dist/config/types.d.ts.map +1 -0
  56. package/dist/config/types.js +2 -0
  57. package/dist/config/types.js.map +1 -0
  58. package/dist/config-loader/index.d.ts +3 -0
  59. package/dist/config-loader/index.d.ts.map +1 -0
  60. package/dist/config-loader/index.js +2 -0
  61. package/dist/config-loader/index.js.map +1 -0
  62. package/dist/config-loader/loader.d.ts +50 -0
  63. package/dist/config-loader/loader.d.ts.map +1 -0
  64. package/dist/config-loader/loader.js +78 -0
  65. package/dist/config-loader/loader.js.map +1 -0
  66. package/dist/config-loader/loader.test.d.ts +2 -0
  67. package/dist/config-loader/loader.test.d.ts.map +1 -0
  68. package/dist/config-loader/loader.test.js +123 -0
  69. package/dist/config-loader/loader.test.js.map +1 -0
  70. package/dist/config-loader/validator.d.ts +13 -0
  71. package/dist/config-loader/validator.d.ts.map +1 -0
  72. package/dist/config-loader/validator.js +497 -0
  73. package/dist/config-loader/validator.js.map +1 -0
  74. package/dist/config-loader/validator.test.d.ts +2 -0
  75. package/dist/config-loader/validator.test.d.ts.map +1 -0
  76. package/dist/config-loader/validator.test.js +846 -0
  77. package/dist/config-loader/validator.test.js.map +1 -0
  78. package/dist/gen-orchestrator/golden.test.d.ts +2 -0
  79. package/dist/gen-orchestrator/golden.test.d.ts.map +1 -0
  80. package/dist/gen-orchestrator/golden.test.js +102 -0
  81. package/dist/gen-orchestrator/golden.test.js.map +1 -0
  82. package/dist/gen-orchestrator/hook-executor/hook-executor.d.ts +25 -0
  83. package/dist/gen-orchestrator/hook-executor/hook-executor.d.ts.map +1 -0
  84. package/dist/gen-orchestrator/hook-executor/hook-executor.js +68 -0
  85. package/dist/gen-orchestrator/hook-executor/hook-executor.js.map +1 -0
  86. package/dist/gen-orchestrator/hook-executor/hook-executor.test.d.ts +2 -0
  87. package/dist/gen-orchestrator/hook-executor/hook-executor.test.d.ts.map +1 -0
  88. package/dist/gen-orchestrator/hook-executor/hook-executor.test.js +167 -0
  89. package/dist/gen-orchestrator/hook-executor/hook-executor.test.js.map +1 -0
  90. package/dist/gen-orchestrator/orchestrator.d.ts +30 -0
  91. package/dist/gen-orchestrator/orchestrator.d.ts.map +1 -0
  92. package/dist/gen-orchestrator/orchestrator.js +407 -0
  93. package/dist/gen-orchestrator/orchestrator.js.map +1 -0
  94. package/dist/gen-orchestrator/reporter/diagnostic-reporter.d.ts +9 -0
  95. package/dist/gen-orchestrator/reporter/diagnostic-reporter.d.ts.map +1 -0
  96. package/dist/gen-orchestrator/reporter/diagnostic-reporter.js +32 -0
  97. package/dist/gen-orchestrator/reporter/diagnostic-reporter.js.map +1 -0
  98. package/dist/gen-orchestrator/reporter/progress-reporter.d.ts +19 -0
  99. package/dist/gen-orchestrator/reporter/progress-reporter.d.ts.map +1 -0
  100. package/dist/gen-orchestrator/reporter/progress-reporter.js +38 -0
  101. package/dist/gen-orchestrator/reporter/progress-reporter.js.map +1 -0
  102. package/dist/gen-orchestrator/reporter/progress-reporter.test.d.ts +2 -0
  103. package/dist/gen-orchestrator/reporter/progress-reporter.test.d.ts.map +1 -0
  104. package/dist/gen-orchestrator/reporter/progress-reporter.test.js +74 -0
  105. package/dist/gen-orchestrator/reporter/progress-reporter.test.js.map +1 -0
  106. package/dist/gen-orchestrator/writer/file-writer.d.ts +13 -0
  107. package/dist/gen-orchestrator/writer/file-writer.d.ts.map +1 -0
  108. package/dist/gen-orchestrator/writer/file-writer.js +22 -0
  109. package/dist/gen-orchestrator/writer/file-writer.js.map +1 -0
  110. package/dist/index.d.ts +3 -0
  111. package/dist/index.d.ts.map +1 -0
  112. package/dist/index.js +2 -0
  113. package/dist/index.js.map +1 -0
  114. package/dist/resolver-extractor/extract-resolvers.d.ts +40 -0
  115. package/dist/resolver-extractor/extract-resolvers.d.ts.map +1 -0
  116. package/dist/resolver-extractor/extract-resolvers.js +2 -0
  117. package/dist/resolver-extractor/extract-resolvers.js.map +1 -0
  118. package/dist/resolver-extractor/extractor/define-api-extractor.d.ts +50 -0
  119. package/dist/resolver-extractor/extractor/define-api-extractor.d.ts.map +1 -0
  120. package/dist/resolver-extractor/extractor/define-api-extractor.js +685 -0
  121. package/dist/resolver-extractor/extractor/define-api-extractor.js.map +1 -0
  122. package/dist/resolver-extractor/index.d.ts +5 -0
  123. package/dist/resolver-extractor/index.d.ts.map +1 -0
  124. package/dist/resolver-extractor/index.js +2 -0
  125. package/dist/resolver-extractor/index.js.map +1 -0
  126. package/dist/resolver-extractor/validator/abstract-resolver-validator.d.ts +25 -0
  127. package/dist/resolver-extractor/validator/abstract-resolver-validator.d.ts.map +1 -0
  128. package/dist/resolver-extractor/validator/abstract-resolver-validator.js +172 -0
  129. package/dist/resolver-extractor/validator/abstract-resolver-validator.js.map +1 -0
  130. package/dist/resolver-extractor/validator/only-validator.d.ts +61 -0
  131. package/dist/resolver-extractor/validator/only-validator.d.ts.map +1 -0
  132. package/dist/resolver-extractor/validator/only-validator.js +76 -0
  133. package/dist/resolver-extractor/validator/only-validator.js.map +1 -0
  134. package/dist/resolver-extractor/validator/only-validator.test.d.ts +8 -0
  135. package/dist/resolver-extractor/validator/only-validator.test.d.ts.map +1 -0
  136. package/dist/resolver-extractor/validator/only-validator.test.js +352 -0
  137. package/dist/resolver-extractor/validator/only-validator.test.js.map +1 -0
  138. package/dist/schema-generator/builder/ast-builder.d.ts +7 -0
  139. package/dist/schema-generator/builder/ast-builder.d.ts.map +1 -0
  140. package/dist/schema-generator/builder/ast-builder.js +417 -0
  141. package/dist/schema-generator/builder/ast-builder.js.map +1 -0
  142. package/dist/schema-generator/builder/ast-builder.test.d.ts +2 -0
  143. package/dist/schema-generator/builder/ast-builder.test.d.ts.map +1 -0
  144. package/dist/schema-generator/builder/ast-builder.test.js +469 -0
  145. package/dist/schema-generator/builder/ast-builder.test.js.map +1 -0
  146. package/dist/schema-generator/emitter/code-emitter.d.ts +7 -0
  147. package/dist/schema-generator/emitter/code-emitter.d.ts.map +1 -0
  148. package/dist/schema-generator/emitter/code-emitter.js +201 -0
  149. package/dist/schema-generator/emitter/code-emitter.js.map +1 -0
  150. package/dist/schema-generator/emitter/sdl-emitter.d.ts +7 -0
  151. package/dist/schema-generator/emitter/sdl-emitter.d.ts.map +1 -0
  152. package/dist/schema-generator/emitter/sdl-emitter.js +11 -0
  153. package/dist/schema-generator/emitter/sdl-emitter.js.map +1 -0
  154. package/dist/schema-generator/generate-schema.d.ts +26 -0
  155. package/dist/schema-generator/generate-schema.d.ts.map +1 -0
  156. package/dist/schema-generator/generate-schema.js +76 -0
  157. package/dist/schema-generator/generate-schema.js.map +1 -0
  158. package/dist/schema-generator/index.d.ts +4 -0
  159. package/dist/schema-generator/index.d.ts.map +1 -0
  160. package/dist/schema-generator/index.js +2 -0
  161. package/dist/schema-generator/index.js.map +1 -0
  162. package/dist/schema-generator/integrator/result-integrator.d.ts +93 -0
  163. package/dist/schema-generator/integrator/result-integrator.d.ts.map +1 -0
  164. package/dist/schema-generator/integrator/result-integrator.js +396 -0
  165. package/dist/schema-generator/integrator/result-integrator.js.map +1 -0
  166. package/dist/schema-generator/pruner/schema-pruner.d.ts +16 -0
  167. package/dist/schema-generator/pruner/schema-pruner.d.ts.map +1 -0
  168. package/dist/schema-generator/pruner/schema-pruner.js +66 -0
  169. package/dist/schema-generator/pruner/schema-pruner.js.map +1 -0
  170. package/dist/schema-generator/resolver-collector/resolver-collector.d.ts +24 -0
  171. package/dist/schema-generator/resolver-collector/resolver-collector.d.ts.map +1 -0
  172. package/dist/schema-generator/resolver-collector/resolver-collector.js +61 -0
  173. package/dist/schema-generator/resolver-collector/resolver-collector.js.map +1 -0
  174. package/dist/shared/constants.d.ts +70 -0
  175. package/dist/shared/constants.d.ts.map +1 -0
  176. package/dist/shared/constants.js +128 -0
  177. package/dist/shared/constants.js.map +1 -0
  178. package/dist/shared/default-value-detector.d.ts +40 -0
  179. package/dist/shared/default-value-detector.d.ts.map +1 -0
  180. package/dist/shared/default-value-detector.js +124 -0
  181. package/dist/shared/default-value-detector.js.map +1 -0
  182. package/dist/shared/diagnostics.d.ts +4 -0
  183. package/dist/shared/diagnostics.d.ts.map +1 -0
  184. package/dist/shared/diagnostics.js +25 -0
  185. package/dist/shared/diagnostics.js.map +1 -0
  186. package/dist/shared/directive-definition-extractor.d.ts +64 -0
  187. package/dist/shared/directive-definition-extractor.d.ts.map +1 -0
  188. package/dist/shared/directive-definition-extractor.js +399 -0
  189. package/dist/shared/directive-definition-extractor.js.map +1 -0
  190. package/dist/shared/directive-detector.d.ts +102 -0
  191. package/dist/shared/directive-detector.d.ts.map +1 -0
  192. package/dist/shared/directive-detector.js +422 -0
  193. package/dist/shared/directive-detector.js.map +1 -0
  194. package/dist/shared/file-scanner.d.ts +25 -0
  195. package/dist/shared/file-scanner.d.ts.map +1 -0
  196. package/dist/shared/file-scanner.js +99 -0
  197. package/dist/shared/file-scanner.js.map +1 -0
  198. package/dist/shared/file-scanner.test.d.ts +2 -0
  199. package/dist/shared/file-scanner.test.d.ts.map +1 -0
  200. package/dist/shared/file-scanner.test.js +138 -0
  201. package/dist/shared/file-scanner.test.js.map +1 -0
  202. package/dist/shared/index.d.ts +10 -0
  203. package/dist/shared/index.d.ts.map +1 -0
  204. package/dist/shared/index.js +8 -0
  205. package/dist/shared/index.js.map +1 -0
  206. package/dist/shared/inline-object-extractor.d.ts +13 -0
  207. package/dist/shared/inline-object-extractor.d.ts.map +1 -0
  208. package/dist/shared/inline-object-extractor.js +65 -0
  209. package/dist/shared/inline-object-extractor.js.map +1 -0
  210. package/dist/shared/inline-object-utils.d.ts +7 -0
  211. package/dist/shared/inline-object-utils.d.ts.map +1 -0
  212. package/dist/shared/inline-object-utils.js +23 -0
  213. package/dist/shared/inline-object-utils.js.map +1 -0
  214. package/dist/shared/interface-detector.d.ts +22 -0
  215. package/dist/shared/interface-detector.d.ts.map +1 -0
  216. package/dist/shared/interface-detector.js +90 -0
  217. package/dist/shared/interface-detector.js.map +1 -0
  218. package/dist/shared/interface-validator.d.ts +9 -0
  219. package/dist/shared/interface-validator.d.ts.map +1 -0
  220. package/dist/shared/interface-validator.js +152 -0
  221. package/dist/shared/interface-validator.js.map +1 -0
  222. package/dist/shared/interface-validator.test.d.ts +2 -0
  223. package/dist/shared/interface-validator.test.d.ts.map +1 -0
  224. package/dist/shared/interface-validator.test.js +145 -0
  225. package/dist/shared/interface-validator.test.js.map +1 -0
  226. package/dist/shared/metadata-detector.d.ts +65 -0
  227. package/dist/shared/metadata-detector.d.ts.map +1 -0
  228. package/dist/shared/metadata-detector.js +333 -0
  229. package/dist/shared/metadata-detector.js.map +1 -0
  230. package/dist/shared/program-factory.d.ts +14 -0
  231. package/dist/shared/program-factory.d.ts.map +1 -0
  232. package/dist/shared/program-factory.js +29 -0
  233. package/dist/shared/program-factory.js.map +1 -0
  234. package/dist/shared/source-location.d.ts +11 -0
  235. package/dist/shared/source-location.d.ts.map +1 -0
  236. package/dist/shared/source-location.js +15 -0
  237. package/dist/shared/source-location.js.map +1 -0
  238. package/dist/shared/tsconfig-loader.d.ts +13 -0
  239. package/dist/shared/tsconfig-loader.d.ts.map +1 -0
  240. package/dist/shared/tsconfig-loader.js +90 -0
  241. package/dist/shared/tsconfig-loader.js.map +1 -0
  242. package/dist/shared/tsdoc-parser.d.ts +12 -0
  243. package/dist/shared/tsdoc-parser.d.ts.map +1 -0
  244. package/dist/shared/tsdoc-parser.js +101 -0
  245. package/dist/shared/tsdoc-parser.js.map +1 -0
  246. package/dist/shared/type-converter.d.ts +3 -0
  247. package/dist/shared/type-converter.d.ts.map +1 -0
  248. package/dist/shared/type-converter.js +72 -0
  249. package/dist/shared/type-converter.js.map +1 -0
  250. package/dist/shared/typescript-utils.d.ts +55 -0
  251. package/dist/shared/typescript-utils.d.ts.map +1 -0
  252. package/dist/shared/typescript-utils.js +149 -0
  253. package/dist/shared/typescript-utils.js.map +1 -0
  254. package/dist/type-extractor/collector/result-collector.d.ts +7 -0
  255. package/dist/type-extractor/collector/result-collector.d.ts.map +1 -0
  256. package/dist/type-extractor/collector/result-collector.js +35 -0
  257. package/dist/type-extractor/collector/result-collector.js.map +1 -0
  258. package/dist/type-extractor/collector/scalar-collector.d.ts +108 -0
  259. package/dist/type-extractor/collector/scalar-collector.d.ts.map +1 -0
  260. package/dist/type-extractor/collector/scalar-collector.js +133 -0
  261. package/dist/type-extractor/collector/scalar-collector.js.map +1 -0
  262. package/dist/type-extractor/converter/field-eligibility.d.ts +34 -0
  263. package/dist/type-extractor/converter/field-eligibility.d.ts.map +1 -0
  264. package/dist/type-extractor/converter/field-eligibility.js +89 -0
  265. package/dist/type-extractor/converter/field-eligibility.js.map +1 -0
  266. package/dist/type-extractor/converter/graphql-converter.d.ts +7 -0
  267. package/dist/type-extractor/converter/graphql-converter.d.ts.map +1 -0
  268. package/dist/type-extractor/converter/graphql-converter.js +299 -0
  269. package/dist/type-extractor/converter/graphql-converter.js.map +1 -0
  270. package/dist/type-extractor/extract-types.d.ts +2 -0
  271. package/dist/type-extractor/extract-types.d.ts.map +1 -0
  272. package/dist/type-extractor/extract-types.js +2 -0
  273. package/dist/type-extractor/extract-types.js.map +1 -0
  274. package/dist/type-extractor/extractor/type-extractor.d.ts +27 -0
  275. package/dist/type-extractor/extractor/type-extractor.d.ts.map +1 -0
  276. package/dist/type-extractor/extractor/type-extractor.js +1116 -0
  277. package/dist/type-extractor/extractor/type-extractor.js.map +1 -0
  278. package/dist/type-extractor/index.d.ts +4 -0
  279. package/dist/type-extractor/index.d.ts.map +1 -0
  280. package/dist/type-extractor/index.js +2 -0
  281. package/dist/type-extractor/index.js.map +1 -0
  282. package/dist/type-extractor/types/diagnostics.d.ts +17 -0
  283. package/dist/type-extractor/types/diagnostics.d.ts.map +1 -0
  284. package/dist/type-extractor/types/diagnostics.js +2 -0
  285. package/dist/type-extractor/types/diagnostics.js.map +1 -0
  286. package/dist/type-extractor/types/graphql.d.ts +40 -0
  287. package/dist/type-extractor/types/graphql.d.ts.map +1 -0
  288. package/dist/type-extractor/types/graphql.js +2 -0
  289. package/dist/type-extractor/types/graphql.js.map +1 -0
  290. package/dist/type-extractor/types/index.d.ts +5 -0
  291. package/dist/type-extractor/types/index.d.ts.map +1 -0
  292. package/dist/type-extractor/types/index.js +2 -0
  293. package/dist/type-extractor/types/index.js.map +1 -0
  294. package/dist/type-extractor/types/typescript.d.ts +86 -0
  295. package/dist/type-extractor/types/typescript.d.ts.map +1 -0
  296. package/dist/type-extractor/types/typescript.js +2 -0
  297. package/dist/type-extractor/types/typescript.js.map +1 -0
  298. package/dist/type-extractor/types/typescript.test.d.ts +2 -0
  299. package/dist/type-extractor/types/typescript.test.d.ts.map +1 -0
  300. package/dist/type-extractor/types/typescript.test.js +287 -0
  301. package/dist/type-extractor/types/typescript.test.js.map +1 -0
  302. package/dist/type-extractor/validator/type-validator.d.ts +11 -0
  303. package/dist/type-extractor/validator/type-validator.d.ts.map +1 -0
  304. package/dist/type-extractor/validator/type-validator.js +53 -0
  305. package/dist/type-extractor/validator/type-validator.js.map +1 -0
  306. package/docs/configuration.md +163 -0
  307. package/docs/getting-started.md +117 -0
  308. package/docs/index.md +32 -0
  309. package/docs/integration/apollo.md +109 -0
  310. package/docs/integration/yoga.md +108 -0
  311. package/docs/schema/abstract-resolvers.md +146 -0
  312. package/docs/schema/directives.md +196 -0
  313. package/docs/schema/documentation.md +176 -0
  314. package/docs/schema/enums.md +162 -0
  315. package/docs/schema/fields.md +184 -0
  316. package/docs/schema/index.md +38 -0
  317. package/docs/schema/inputs.md +277 -0
  318. package/docs/schema/interfaces.md +178 -0
  319. package/docs/schema/objects.md +186 -0
  320. package/docs/schema/queries-mutations.md +205 -0
  321. package/docs/schema/scalars.md +194 -0
  322. package/docs/schema/unions.md +90 -0
  323. package/docs/what-is-gqlkit.md +22 -0
  324. package/package.json +59 -7
  325. package/README.md +0 -45
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Masayuki Izumi
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,46 @@
1
+ import type { ExtractResolversResult } from "../resolver-extractor/index.js";
2
+ import type { DirectiveArgumentValue, DirectiveInfo } from "../shared/directive-detector.js";
3
+ import type { DeprecationInfo } from "../shared/tsdoc-parser.js";
4
+ import type { Diagnostic, ExtractedTypeInfo, GraphQLFieldType, SourceLocation } from "../type-extractor/types/index.js";
5
+ /**
6
+ * Information about where an auto-generated type was generated from.
7
+ */
8
+ export interface GeneratedFromInfo {
9
+ readonly parentTypeName: string | null;
10
+ readonly fieldPath: ReadonlyArray<string>;
11
+ readonly context: "typeField" | "inputField" | "resolverArg";
12
+ }
13
+ /**
14
+ * Field information for auto-generated types.
15
+ */
16
+ export interface AutoGeneratedField {
17
+ readonly name: string;
18
+ readonly type: GraphQLFieldType;
19
+ readonly description: string | null;
20
+ readonly deprecated: DeprecationInfo | null;
21
+ readonly directives: ReadonlyArray<DirectiveInfo> | null;
22
+ readonly defaultValue: DirectiveArgumentValue | null;
23
+ }
24
+ /**
25
+ * Auto-generated type information.
26
+ */
27
+ export interface AutoGeneratedType {
28
+ readonly name: string;
29
+ readonly kind: "Object" | "InputObject";
30
+ readonly fields: ReadonlyArray<AutoGeneratedField>;
31
+ readonly sourceLocation: SourceLocation;
32
+ readonly generatedFrom: GeneratedFromInfo;
33
+ readonly description: string | null;
34
+ }
35
+ export interface AutoTypeGeneratorInput {
36
+ readonly extractedTypes: ReadonlyArray<ExtractedTypeInfo>;
37
+ readonly resolversResult: ExtractResolversResult;
38
+ }
39
+ export interface AutoTypeGeneratorResult {
40
+ readonly autoGeneratedTypes: ReadonlyArray<AutoGeneratedType>;
41
+ readonly updatedExtractedTypes: ReadonlyArray<ExtractedTypeInfo>;
42
+ readonly updatedResolversResult: ExtractResolversResult;
43
+ readonly diagnostics: ReadonlyArray<Diagnostic>;
44
+ }
45
+ export declare function generateAutoTypes(input: AutoTypeGeneratorInput): AutoTypeGeneratorResult;
46
+ //# sourceMappingURL=auto-type-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-type-generator.d.ts","sourceRoot":"","sources":["../../src/auto-type-generator/auto-type-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAEvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EACV,sBAAsB,EACtB,aAAa,EACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAMjE,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EAEjB,gBAAgB,EAEhB,cAAc,EACf,MAAM,kCAAkC,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC;CAC9D;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,YAAY,EAAE,sBAAsB,GAAG,IAAI,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,kBAAkB,CAAC,CAAC;IACnD,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC1D,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;CAClD;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,kBAAkB,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC9D,QAAQ,CAAC,qBAAqB,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IACjE,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxD,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AAqgBD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,sBAAsB,GAC5B,uBAAuB,CA0CzB"}
@@ -0,0 +1,353 @@
1
+ import { convertTsTypeToGraphQLType } from "../shared/type-converter.js";
2
+ import { isEligibleAsInputObjectField, isEligibleAsObjectField, } from "../type-extractor/converter/field-eligibility.js";
3
+ import { generateAutoTypeName, } from "./naming-convention.js";
4
+ function isInputTypeName(name) {
5
+ return name.endsWith("Input");
6
+ }
7
+ function getContextKey(context) {
8
+ switch (context.kind) {
9
+ case "objectField":
10
+ return `objectField:${context.parentTypeName}:${context.fieldPath.join(".")}`;
11
+ case "inputField":
12
+ return `inputField:${context.parentTypeName}:${context.fieldPath.join(".")}`;
13
+ case "resolverArg":
14
+ return `resolverArg:${context.resolverType}:${context.parentTypeName ?? ""}:${context.fieldName}:${context.argName}:${context.fieldPath.join(".")}`;
15
+ }
16
+ }
17
+ function collectInlineObjectsFromType(typeInfo) {
18
+ const results = [];
19
+ const isInput = isInputTypeName(typeInfo.metadata.name);
20
+ for (const field of typeInfo.fields) {
21
+ collectInlineObjectsFromField(field, typeInfo.metadata.name, [], isInput, typeInfo.metadata.sourceFile, results);
22
+ }
23
+ return results;
24
+ }
25
+ function collectInlineObjectsFromField(field, parentTypeName, parentPath, isInput, sourceFile, results) {
26
+ const tsType = field.tsType;
27
+ if (tsType.kind !== "inlineObject" || !tsType.inlineObjectProperties) {
28
+ return;
29
+ }
30
+ const fieldPath = [...parentPath, field.name];
31
+ const context = isInput
32
+ ? {
33
+ kind: "inputField",
34
+ parentTypeName,
35
+ fieldPath,
36
+ }
37
+ : {
38
+ kind: "objectField",
39
+ parentTypeName,
40
+ fieldPath,
41
+ };
42
+ results.push({
43
+ properties: tsType.inlineObjectProperties,
44
+ context,
45
+ sourceLocation: field.sourceLocation ?? {
46
+ file: sourceFile,
47
+ line: 1,
48
+ column: 1,
49
+ },
50
+ nullable: tsType.nullable,
51
+ });
52
+ for (const prop of tsType.inlineObjectProperties) {
53
+ if (prop.tsType.kind === "inlineObject" &&
54
+ prop.tsType.inlineObjectProperties) {
55
+ const nestedPath = [...fieldPath, prop.name];
56
+ const nestedContext = isInput
57
+ ? {
58
+ kind: "inputField",
59
+ parentTypeName,
60
+ fieldPath: nestedPath,
61
+ }
62
+ : {
63
+ kind: "objectField",
64
+ parentTypeName,
65
+ fieldPath: nestedPath,
66
+ };
67
+ extractNestedInlineObjects(prop.tsType.inlineObjectProperties, nestedContext, nestedPath, parentTypeName, isInput, sourceFile, prop.sourceLocation, results);
68
+ }
69
+ }
70
+ }
71
+ function extractNestedInlineObjects(properties, context, currentPath, parentTypeName, isInput, sourceFile, parentSourceLocation, results) {
72
+ results.push({
73
+ properties,
74
+ context,
75
+ sourceLocation: parentSourceLocation ?? {
76
+ file: sourceFile,
77
+ line: 1,
78
+ column: 1,
79
+ },
80
+ nullable: false,
81
+ });
82
+ for (const prop of properties) {
83
+ if (prop.tsType.kind === "inlineObject" &&
84
+ prop.tsType.inlineObjectProperties) {
85
+ const nestedPath = [...currentPath, prop.name];
86
+ const nestedContext = isInput
87
+ ? {
88
+ kind: "inputField",
89
+ parentTypeName,
90
+ fieldPath: nestedPath,
91
+ }
92
+ : {
93
+ kind: "objectField",
94
+ parentTypeName,
95
+ fieldPath: nestedPath,
96
+ };
97
+ extractNestedInlineObjects(prop.tsType.inlineObjectProperties, nestedContext, nestedPath, parentTypeName, isInput, sourceFile, prop.sourceLocation, results);
98
+ }
99
+ }
100
+ }
101
+ function collectInlineObjectsFromResolvers(resolversResult) {
102
+ const results = [];
103
+ for (const field of resolversResult.queryFields.fields) {
104
+ collectInlineObjectsFromResolverArgs(field, "query", null, results);
105
+ }
106
+ for (const field of resolversResult.mutationFields.fields) {
107
+ collectInlineObjectsFromResolverArgs(field, "mutation", null, results);
108
+ }
109
+ for (const ext of resolversResult.typeExtensions) {
110
+ for (const field of ext.fields) {
111
+ collectInlineObjectsFromResolverArgs(field, "field", ext.targetTypeName, results);
112
+ }
113
+ }
114
+ return results;
115
+ }
116
+ function collectInlineObjectsFromResolverArgs(field, resolverType, parentTypeName, results) {
117
+ if (!field.args)
118
+ return;
119
+ for (const arg of field.args) {
120
+ if (!arg.inlineObjectProperties)
121
+ continue;
122
+ const context = {
123
+ kind: "resolverArg",
124
+ resolverType,
125
+ fieldName: field.name,
126
+ argName: arg.name,
127
+ parentTypeName,
128
+ fieldPath: [],
129
+ };
130
+ results.push({
131
+ properties: arg.inlineObjectProperties,
132
+ context,
133
+ sourceLocation: field.sourceLocation,
134
+ nullable: arg.type.nullable,
135
+ });
136
+ extractNestedInlineObjectsFromArg(arg.inlineObjectProperties, resolverType, field.name, arg.name, parentTypeName, [], field.sourceLocation, results);
137
+ }
138
+ }
139
+ function extractNestedInlineObjectsFromArg(properties, resolverType, fieldName, argName, parentTypeName, currentPath, sourceLocation, results) {
140
+ for (const prop of properties) {
141
+ if (prop.tsType.kind === "inlineObject" &&
142
+ prop.tsType.inlineObjectProperties) {
143
+ const nestedPath = [...currentPath, prop.name];
144
+ const nestedContext = {
145
+ kind: "resolverArg",
146
+ resolverType,
147
+ fieldName,
148
+ argName,
149
+ parentTypeName,
150
+ fieldPath: nestedPath,
151
+ };
152
+ results.push({
153
+ properties: prop.tsType.inlineObjectProperties,
154
+ context: nestedContext,
155
+ sourceLocation,
156
+ nullable: prop.tsType.nullable,
157
+ });
158
+ extractNestedInlineObjectsFromArg(prop.tsType.inlineObjectProperties, resolverType, fieldName, argName, parentTypeName, nestedPath, sourceLocation, results);
159
+ }
160
+ }
161
+ }
162
+ function generateAutoType(inlineObj, generatedTypeNames) {
163
+ const name = generateAutoTypeName(inlineObj.context);
164
+ const isInput = inlineObj.context.kind === "inputField" ||
165
+ inlineObj.context.kind === "resolverArg";
166
+ const fields = [];
167
+ const diagnostics = [];
168
+ for (const prop of inlineObj.properties) {
169
+ const eligibility = isInput
170
+ ? isEligibleAsInputObjectField(prop.name)
171
+ : isEligibleAsObjectField(prop.name);
172
+ if (!eligibility.eligible) {
173
+ diagnostics.push({
174
+ code: "SKIPPED_FIELD",
175
+ message: eligibility.skipReason.message,
176
+ severity: "warning",
177
+ location: prop.sourceLocation ?? inlineObj.sourceLocation,
178
+ });
179
+ continue;
180
+ }
181
+ const fieldType = resolveFieldType(prop, generatedTypeNames, inlineObj.context);
182
+ fields.push({
183
+ name: prop.name,
184
+ type: fieldType,
185
+ description: prop.description,
186
+ deprecated: prop.deprecated,
187
+ directives: prop.directives,
188
+ defaultValue: prop.defaultValue,
189
+ });
190
+ }
191
+ const generatedFrom = {
192
+ parentTypeName: inlineObj.context.parentTypeName,
193
+ fieldPath: inlineObj.context.kind === "resolverArg" &&
194
+ inlineObj.context.fieldPath.length === 0
195
+ ? [inlineObj.context.argName]
196
+ : inlineObj.context.fieldPath,
197
+ context: inlineObj.context.kind === "objectField"
198
+ ? "typeField"
199
+ : inlineObj.context.kind === "inputField"
200
+ ? "inputField"
201
+ : "resolverArg",
202
+ };
203
+ return {
204
+ type: {
205
+ name,
206
+ kind: isInput ? "InputObject" : "Object",
207
+ fields,
208
+ sourceLocation: inlineObj.sourceLocation,
209
+ generatedFrom,
210
+ description: null,
211
+ },
212
+ diagnostics,
213
+ };
214
+ }
215
+ function resolveFieldType(prop, generatedTypeNames, parentContext) {
216
+ if (prop.tsType.kind === "inlineObject" &&
217
+ prop.tsType.inlineObjectProperties) {
218
+ const nestedPath = [...parentContext.fieldPath, prop.name];
219
+ const nestedContext = {
220
+ ...parentContext,
221
+ fieldPath: nestedPath,
222
+ };
223
+ const contextKey = getContextKey(nestedContext);
224
+ const resolvedTypeName = generatedTypeNames.get(contextKey);
225
+ if (resolvedTypeName) {
226
+ return {
227
+ typeName: resolvedTypeName,
228
+ nullable: prop.tsType.nullable || prop.optional,
229
+ list: false,
230
+ listItemNullable: null,
231
+ };
232
+ }
233
+ }
234
+ return convertTsTypeToGraphQLType(prop.tsType, prop.optional);
235
+ }
236
+ function updateExtractedTypes(extractedTypes, generatedTypeNames) {
237
+ return extractedTypes.map((typeInfo) => {
238
+ const isInput = isInputTypeName(typeInfo.metadata.name);
239
+ return {
240
+ ...typeInfo,
241
+ fields: typeInfo.fields.map((field) => updateField(field, generatedTypeNames, typeInfo.metadata.name, isInput)),
242
+ };
243
+ });
244
+ }
245
+ function updateField(field, generatedTypeNames, parentTypeName, isInput) {
246
+ if (field.tsType.kind === "inlineObject" &&
247
+ field.tsType.inlineObjectProperties) {
248
+ const context = isInput
249
+ ? { kind: "inputField", parentTypeName, fieldPath: [field.name] }
250
+ : { kind: "objectField", parentTypeName, fieldPath: [field.name] };
251
+ const contextKey = getContextKey(context);
252
+ const resolvedTypeName = generatedTypeNames.get(contextKey);
253
+ if (resolvedTypeName) {
254
+ return {
255
+ ...field,
256
+ tsType: {
257
+ kind: "reference",
258
+ name: resolvedTypeName,
259
+ elementType: null,
260
+ members: null,
261
+ nullable: field.tsType.nullable,
262
+ scalarInfo: null,
263
+ inlineObjectProperties: null,
264
+ },
265
+ };
266
+ }
267
+ }
268
+ return field;
269
+ }
270
+ function updateResolversResult(resolversResult, generatedTypeNames) {
271
+ return {
272
+ ...resolversResult,
273
+ queryFields: {
274
+ fields: resolversResult.queryFields.fields.map((field) => updateResolverField(field, generatedTypeNames, "query", null)),
275
+ },
276
+ mutationFields: {
277
+ fields: resolversResult.mutationFields.fields.map((field) => updateResolverField(field, generatedTypeNames, "mutation", null)),
278
+ },
279
+ typeExtensions: resolversResult.typeExtensions.map((ext) => ({
280
+ ...ext,
281
+ fields: ext.fields.map((field) => updateResolverField(field, generatedTypeNames, "field", ext.targetTypeName)),
282
+ })),
283
+ };
284
+ }
285
+ function updateResolverField(field, generatedTypeNames, resolverType, parentTypeName) {
286
+ if (!field.args)
287
+ return field;
288
+ const updatedArgs = field.args.map((arg) => {
289
+ if (!arg.inlineObjectProperties)
290
+ return arg;
291
+ const context = {
292
+ kind: "resolverArg",
293
+ resolverType,
294
+ fieldName: field.name,
295
+ argName: arg.name,
296
+ parentTypeName,
297
+ fieldPath: [],
298
+ };
299
+ const contextKey = getContextKey(context);
300
+ const resolvedTypeName = generatedTypeNames.get(contextKey);
301
+ if (resolvedTypeName) {
302
+ return {
303
+ ...arg,
304
+ type: {
305
+ ...arg.type,
306
+ typeName: resolvedTypeName,
307
+ },
308
+ };
309
+ }
310
+ return arg;
311
+ });
312
+ return {
313
+ ...field,
314
+ args: updatedArgs,
315
+ };
316
+ }
317
+ function buildGeneratedTypeNamesMap(inlineObjects) {
318
+ const map = new Map();
319
+ for (const inlineObj of inlineObjects) {
320
+ const typeName = generateAutoTypeName(inlineObj.context);
321
+ const contextKey = getContextKey(inlineObj.context);
322
+ map.set(contextKey, typeName);
323
+ }
324
+ return map;
325
+ }
326
+ export function generateAutoTypes(input) {
327
+ const inlineObjectsFromTypes = [];
328
+ for (const typeInfo of input.extractedTypes) {
329
+ inlineObjectsFromTypes.push(...collectInlineObjectsFromType(typeInfo));
330
+ }
331
+ const inlineObjectsFromResolvers = collectInlineObjectsFromResolvers(input.resolversResult);
332
+ const allInlineObjects = [
333
+ ...inlineObjectsFromTypes,
334
+ ...inlineObjectsFromResolvers,
335
+ ];
336
+ const generatedTypeNames = buildGeneratedTypeNamesMap(allInlineObjects);
337
+ const autoGeneratedTypes = [];
338
+ const diagnostics = [];
339
+ for (const inlineObj of allInlineObjects) {
340
+ const result = generateAutoType(inlineObj, generatedTypeNames);
341
+ autoGeneratedTypes.push(result.type);
342
+ diagnostics.push(...result.diagnostics);
343
+ }
344
+ const updatedExtractedTypes = updateExtractedTypes(input.extractedTypes, generatedTypeNames);
345
+ const updatedResolversResult = updateResolversResult(input.resolversResult, generatedTypeNames);
346
+ return {
347
+ autoGeneratedTypes,
348
+ updatedExtractedTypes,
349
+ updatedResolversResult,
350
+ diagnostics,
351
+ };
352
+ }
353
+ //# sourceMappingURL=auto-type-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-type-generator.js","sourceRoot":"","sources":["../../src/auto-type-generator/auto-type-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=auto-type-generator.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-type-generator.test.d.ts","sourceRoot":"","sources":["../../src/auto-type-generator/auto-type-generator.test.ts"],"names":[],"mappings":""}