@powerhousedao/codegen 6.0.0-dev.11 → 6.0.0-dev.111

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 (470) hide show
  1. package/dist/src/codegen/__tests__/config.d.ts +0 -1
  2. package/dist/src/codegen/__tests__/config.d.ts.map +1 -1
  3. package/dist/src/codegen/__tests__/config.js +0 -1
  4. package/dist/src/codegen/__tests__/config.js.map +1 -1
  5. package/dist/src/codegen/__tests__/fixtures/typecheck.js +1 -1
  6. package/dist/src/codegen/__tests__/fixtures/typecheck.js.map +1 -1
  7. package/dist/src/codegen/__tests__/generate-doc-model.test.js +162 -212
  8. package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
  9. package/dist/src/codegen/__tests__/generate-drive-editor.test.js +70 -49
  10. package/dist/src/codegen/__tests__/generate-drive-editor.test.js.map +1 -1
  11. package/dist/src/codegen/__tests__/generate-editor.test.js +27 -27
  12. package/dist/src/codegen/__tests__/generate-editor.test.js.map +1 -1
  13. package/dist/src/codegen/__tests__/generate-manifest.test.js +17 -16
  14. package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
  15. package/dist/src/codegen/__tests__/generate-processor.test.d.ts +2 -0
  16. package/dist/src/codegen/__tests__/generate-processor.test.d.ts.map +1 -0
  17. package/dist/src/codegen/__tests__/generate-processor.test.js +295 -0
  18. package/dist/src/codegen/__tests__/generate-processor.test.js.map +1 -0
  19. package/dist/src/codegen/__tests__/generate-subgraph.test.d.ts +2 -0
  20. package/dist/src/codegen/__tests__/generate-subgraph.test.d.ts.map +1 -0
  21. package/dist/src/codegen/__tests__/generate-subgraph.test.js +197 -0
  22. package/dist/src/codegen/__tests__/generate-subgraph.test.js.map +1 -0
  23. package/dist/src/codegen/__tests__/global-setup.d.ts +1 -1
  24. package/dist/src/codegen/__tests__/global-setup.d.ts.map +1 -1
  25. package/dist/src/codegen/__tests__/global-setup.js +3 -15
  26. package/dist/src/codegen/__tests__/global-setup.js.map +1 -1
  27. package/dist/src/codegen/__tests__/ts-morph-generator.test.js +4 -4
  28. package/dist/src/codegen/__tests__/ts-morph-generator.test.js.map +1 -1
  29. package/dist/src/codegen/__tests__/utils.d.ts +2 -2
  30. package/dist/src/codegen/__tests__/utils.d.ts.map +1 -1
  31. package/dist/src/codegen/__tests__/utils.js +11 -12
  32. package/dist/src/codegen/__tests__/utils.js.map +1 -1
  33. package/dist/src/codegen/generate.d.ts +25 -19
  34. package/dist/src/codegen/generate.d.ts.map +1 -1
  35. package/dist/src/codegen/generate.js +68 -113
  36. package/dist/src/codegen/generate.js.map +1 -1
  37. package/dist/src/codegen/graphql.d.ts +1 -1
  38. package/dist/src/codegen/graphql.d.ts.map +1 -1
  39. package/dist/src/codegen/graphql.js +15 -9
  40. package/dist/src/codegen/graphql.js.map +1 -1
  41. package/dist/src/codegen/index.d.ts +0 -1
  42. package/dist/src/codegen/index.d.ts.map +1 -1
  43. package/dist/src/codegen/index.js +0 -1
  44. package/dist/src/codegen/index.js.map +1 -1
  45. package/dist/src/codegen/utils.d.ts +2 -2
  46. package/dist/src/codegen/utils.d.ts.map +1 -1
  47. package/dist/src/codegen/utils.js +3 -2
  48. package/dist/src/codegen/utils.js.map +1 -1
  49. package/dist/src/create-lib/create-project.d.ts.map +1 -1
  50. package/dist/src/create-lib/create-project.js +15 -2
  51. package/dist/src/create-lib/create-project.js.map +1 -1
  52. package/dist/src/file-builders/boilerplate/build-package-json.test.js +4 -1
  53. package/dist/src/file-builders/boilerplate/build-package-json.test.js.map +1 -1
  54. package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts +2 -0
  55. package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts.map +1 -0
  56. package/dist/src/file-builders/boilerplate/ci-templates.test.js +114 -0
  57. package/dist/src/file-builders/boilerplate/ci-templates.test.js.map +1 -0
  58. package/dist/src/file-builders/boilerplate/package.json.js +1 -1
  59. package/dist/src/file-builders/boilerplate/package.json.js.map +1 -1
  60. package/dist/src/file-builders/clis/generate-cli-docs.d.ts +17 -0
  61. package/dist/src/file-builders/clis/generate-cli-docs.d.ts.map +1 -0
  62. package/dist/src/file-builders/clis/generate-cli-docs.js +36 -0
  63. package/dist/src/file-builders/clis/generate-cli-docs.js.map +1 -0
  64. package/dist/src/file-builders/document-editor.d.ts +1 -1
  65. package/dist/src/file-builders/document-editor.d.ts.map +1 -1
  66. package/dist/src/file-builders/document-editor.js +9 -7
  67. package/dist/src/file-builders/document-editor.js.map +1 -1
  68. package/dist/src/file-builders/document-model/document-model.d.ts +1 -1
  69. package/dist/src/file-builders/document-model/document-model.d.ts.map +1 -1
  70. package/dist/src/file-builders/document-model/document-model.js +67 -65
  71. package/dist/src/file-builders/document-model/document-model.js.map +1 -1
  72. package/dist/src/file-builders/document-model/gen-dir.d.ts +1 -1
  73. package/dist/src/file-builders/document-model/gen-dir.d.ts.map +1 -1
  74. package/dist/src/file-builders/document-model/gen-dir.js +67 -58
  75. package/dist/src/file-builders/document-model/gen-dir.js.map +1 -1
  76. package/dist/src/file-builders/document-model/migrate-legacy.d.ts +19 -0
  77. package/dist/src/file-builders/document-model/migrate-legacy.d.ts.map +1 -0
  78. package/dist/src/file-builders/document-model/migrate-legacy.js +104 -0
  79. package/dist/src/file-builders/document-model/migrate-legacy.js.map +1 -0
  80. package/dist/src/file-builders/document-model/root-dir.d.ts +1 -1
  81. package/dist/src/file-builders/document-model/root-dir.d.ts.map +1 -1
  82. package/dist/src/file-builders/document-model/root-dir.js +17 -17
  83. package/dist/src/file-builders/document-model/root-dir.js.map +1 -1
  84. package/dist/src/file-builders/document-model/src-dir.d.ts +1 -1
  85. package/dist/src/file-builders/document-model/src-dir.d.ts.map +1 -1
  86. package/dist/src/file-builders/document-model/src-dir.js +78 -19
  87. package/dist/src/file-builders/document-model/src-dir.js.map +1 -1
  88. package/dist/src/file-builders/document-model/tests-dir.d.ts +1 -1
  89. package/dist/src/file-builders/document-model/tests-dir.d.ts.map +1 -1
  90. package/dist/src/file-builders/document-model/tests-dir.js +11 -11
  91. package/dist/src/file-builders/document-model/tests-dir.js.map +1 -1
  92. package/dist/src/file-builders/document-model/upgrades-dir.d.ts +6 -4
  93. package/dist/src/file-builders/document-model/upgrades-dir.d.ts.map +1 -1
  94. package/dist/src/file-builders/document-model/upgrades-dir.js +19 -27
  95. package/dist/src/file-builders/document-model/upgrades-dir.js.map +1 -1
  96. package/dist/src/file-builders/drive-editor.d.ts +1 -1
  97. package/dist/src/file-builders/drive-editor.d.ts.map +1 -1
  98. package/dist/src/file-builders/drive-editor.js +37 -35
  99. package/dist/src/file-builders/drive-editor.js.map +1 -1
  100. package/dist/src/file-builders/editor-common.d.ts.map +1 -1
  101. package/dist/src/file-builders/editor-common.js +0 -1
  102. package/dist/src/file-builders/editor-common.js.map +1 -1
  103. package/dist/src/file-builders/index.d.ts +2 -0
  104. package/dist/src/file-builders/index.d.ts.map +1 -1
  105. package/dist/src/file-builders/index.js +2 -0
  106. package/dist/src/file-builders/index.js.map +1 -1
  107. package/dist/src/file-builders/module-files.d.ts +11 -5
  108. package/dist/src/file-builders/module-files.d.ts.map +1 -1
  109. package/dist/src/file-builders/module-files.js +37 -28
  110. package/dist/src/file-builders/module-files.js.map +1 -1
  111. package/dist/src/file-builders/processors/analytics.d.ts +3 -0
  112. package/dist/src/file-builders/processors/analytics.d.ts.map +1 -0
  113. package/dist/src/file-builders/processors/analytics.js +35 -0
  114. package/dist/src/file-builders/processors/analytics.js.map +1 -0
  115. package/dist/src/file-builders/processors/processor.d.ts +9 -0
  116. package/dist/src/file-builders/processors/processor.d.ts.map +1 -0
  117. package/dist/src/file-builders/processors/processor.js +142 -0
  118. package/dist/src/file-builders/processors/processor.js.map +1 -0
  119. package/dist/src/file-builders/processors/relational-db.d.ts +3 -0
  120. package/dist/src/file-builders/processors/relational-db.d.ts.map +1 -0
  121. package/dist/src/file-builders/processors/relational-db.js +53 -0
  122. package/dist/src/file-builders/processors/relational-db.js.map +1 -0
  123. package/dist/src/file-builders/processors/types.d.ts +13 -0
  124. package/dist/src/file-builders/processors/types.d.ts.map +1 -0
  125. package/dist/src/file-builders/processors/types.js +2 -0
  126. package/dist/src/file-builders/processors/types.js.map +1 -0
  127. package/dist/src/file-builders/subgraph.d.ts +10 -0
  128. package/dist/src/file-builders/subgraph.d.ts.map +1 -0
  129. package/dist/src/file-builders/subgraph.js +121 -0
  130. package/dist/src/file-builders/subgraph.js.map +1 -0
  131. package/dist/src/file-builders/subgraphs.d.ts +1 -1
  132. package/dist/src/file-builders/subgraphs.d.ts.map +1 -1
  133. package/dist/src/file-builders/subgraphs.js +2 -2
  134. package/dist/src/file-builders/subgraphs.js.map +1 -1
  135. package/dist/src/file-builders/types.d.ts +20 -1
  136. package/dist/src/file-builders/types.d.ts.map +1 -1
  137. package/dist/src/name-builders/get-variable-names.d.ts +5 -4
  138. package/dist/src/name-builders/get-variable-names.d.ts.map +1 -1
  139. package/dist/src/name-builders/get-variable-names.js +6 -4
  140. package/dist/src/name-builders/get-variable-names.js.map +1 -1
  141. package/dist/src/templates/boilerplate/AGENTS.md.d.ts.map +1 -1
  142. package/dist/src/templates/boilerplate/AGENTS.md.js +138 -9
  143. package/dist/src/templates/boilerplate/AGENTS.md.js.map +1 -1
  144. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts +1 -1
  145. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts.map +1 -1
  146. package/dist/src/templates/boilerplate/CLAUDE.md.js +1 -407
  147. package/dist/src/templates/boilerplate/CLAUDE.md.js.map +1 -1
  148. package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts +2 -0
  149. package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts.map +1 -0
  150. package/dist/src/templates/boilerplate/docker/Dockerfile.js +144 -0
  151. package/dist/src/templates/boilerplate/docker/Dockerfile.js.map +1 -0
  152. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts +2 -0
  153. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts.map +1 -0
  154. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js +18 -0
  155. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js.map +1 -0
  156. package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts +2 -0
  157. package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts.map +1 -0
  158. package/dist/src/templates/boilerplate/docker/nginx.conf.js +79 -0
  159. package/dist/src/templates/boilerplate/docker/nginx.conf.js.map +1 -0
  160. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts +2 -0
  161. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts.map +1 -0
  162. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js +19 -0
  163. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js.map +1 -0
  164. package/dist/src/templates/boilerplate/document-models/document-models.js +1 -1
  165. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts +2 -0
  166. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts.map +1 -0
  167. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js +7 -0
  168. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js.map +1 -0
  169. package/dist/src/templates/boilerplate/editors/editors.js +1 -1
  170. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts +2 -0
  171. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts.map +1 -0
  172. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js +376 -0
  173. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js.map +1 -0
  174. package/dist/src/templates/boilerplate/index.d.ts.map +1 -1
  175. package/dist/src/templates/boilerplate/index.html.d.ts.map +1 -1
  176. package/dist/src/templates/boilerplate/index.html.js +2 -7
  177. package/dist/src/templates/boilerplate/index.html.js.map +1 -1
  178. package/dist/src/templates/boilerplate/index.js +4 -1
  179. package/dist/src/templates/boilerplate/index.js.map +1 -1
  180. package/dist/src/templates/boilerplate/main.tsx.d.ts +2 -0
  181. package/dist/src/templates/boilerplate/main.tsx.d.ts.map +1 -0
  182. package/dist/src/templates/boilerplate/main.tsx.js +8 -0
  183. package/dist/src/templates/boilerplate/main.tsx.js.map +1 -0
  184. package/dist/src/templates/boilerplate/package.json.d.ts.map +1 -1
  185. package/dist/src/templates/boilerplate/package.json.js +14 -5
  186. package/dist/src/templates/boilerplate/package.json.js.map +1 -1
  187. package/dist/src/templates/boilerplate/powerhouse.config.json.js +2 -2
  188. package/dist/src/templates/boilerplate/powerhouse.config.json.js.map +1 -1
  189. package/dist/src/templates/boilerplate/style.css.d.ts.map +1 -1
  190. package/dist/src/templates/boilerplate/style.css.js +1 -0
  191. package/dist/src/templates/boilerplate/style.css.js.map +1 -1
  192. package/dist/src/templates/boilerplate/tsconfig.json.d.ts.map +1 -1
  193. package/dist/src/templates/boilerplate/tsconfig.json.js +0 -1
  194. package/dist/src/templates/boilerplate/tsconfig.json.js.map +1 -1
  195. package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts +8 -0
  196. package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts.map +1 -0
  197. package/dist/src/templates/cli-docs/docs-from-cli-help.js +86 -0
  198. package/dist/src/templates/cli-docs/docs-from-cli-help.js.map +1 -0
  199. package/dist/src/templates/document-editor/editor.js +1 -1
  200. package/dist/src/templates/document-editor/module.js +1 -1
  201. package/dist/src/templates/document-model/actions.d.ts.map +1 -1
  202. package/dist/src/templates/document-model/actions.js +11 -11
  203. package/dist/src/templates/document-model/actions.js.map +1 -1
  204. package/dist/src/templates/document-model/gen/actions.js +5 -5
  205. package/dist/src/templates/document-model/gen/controller.d.ts +3 -0
  206. package/dist/src/templates/document-model/gen/controller.d.ts.map +1 -0
  207. package/dist/src/templates/document-model/gen/controller.js +12 -0
  208. package/dist/src/templates/document-model/gen/controller.js.map +1 -0
  209. package/dist/src/templates/document-model/gen/creators.d.ts.map +1 -1
  210. package/dist/src/templates/document-model/gen/creators.js +11 -8
  211. package/dist/src/templates/document-model/gen/creators.js.map +1 -1
  212. package/dist/src/templates/document-model/gen/document-schema.js +1 -1
  213. package/dist/src/templates/document-model/gen/index.d.ts.map +1 -1
  214. package/dist/src/templates/document-model/gen/index.js +3 -2
  215. package/dist/src/templates/document-model/gen/index.js.map +1 -1
  216. package/dist/src/templates/document-model/gen/modules/creators.js +1 -1
  217. package/dist/src/templates/document-model/gen/modules/error.d.ts.map +1 -1
  218. package/dist/src/templates/document-model/gen/modules/error.js +8 -2
  219. package/dist/src/templates/document-model/gen/modules/error.js.map +1 -1
  220. package/dist/src/templates/document-model/gen/ph-factories.js +5 -5
  221. package/dist/src/templates/document-model/gen/ph-factories.js.map +1 -1
  222. package/dist/src/templates/document-model/gen/reducer.d.ts.map +1 -1
  223. package/dist/src/templates/document-model/gen/reducer.js +6 -7
  224. package/dist/src/templates/document-model/gen/reducer.js.map +1 -1
  225. package/dist/src/templates/document-model/gen/utils.d.ts.map +1 -1
  226. package/dist/src/templates/document-model/gen/utils.js +4 -17
  227. package/dist/src/templates/document-model/gen/utils.js.map +1 -1
  228. package/dist/src/templates/document-model/module.d.ts +1 -2
  229. package/dist/src/templates/document-model/module.d.ts.map +1 -1
  230. package/dist/src/templates/document-model/module.js +9 -12
  231. package/dist/src/templates/document-model/module.js.map +1 -1
  232. package/dist/src/templates/document-model/tests/document-model.test.d.ts.map +1 -0
  233. package/dist/src/templates/document-model/tests/document-model.test.js.map +1 -0
  234. package/dist/src/templates/document-model/tests/module.test.d.ts.map +1 -0
  235. package/dist/src/templates/document-model/{src/tests → tests}/module.test.js +1 -1
  236. package/dist/src/templates/document-model/tests/module.test.js.map +1 -0
  237. package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts +5 -0
  238. package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts.map +1 -0
  239. package/dist/src/templates/document-model/upgrades/upgrade-manifest.js +13 -0
  240. package/dist/src/templates/document-model/upgrades/upgrade-manifest.js.map +1 -0
  241. package/dist/src/templates/document-model/upgrades/upgrade-transition.js +1 -1
  242. package/dist/src/templates/document-model/utils.js +2 -2
  243. package/dist/src/templates/document-model/utils.js.map +1 -1
  244. package/dist/src/templates/drive-editor/components/DriveExplorer.js +1 -1
  245. package/dist/src/templates/drive-editor/components/FolderTree.js +1 -1
  246. package/dist/src/templates/drive-editor/editor.d.ts.map +1 -1
  247. package/dist/src/templates/drive-editor/editor.js +4 -2
  248. package/dist/src/templates/drive-editor/editor.js.map +1 -1
  249. package/dist/src/templates/index.d.ts +20 -3
  250. package/dist/src/templates/index.d.ts.map +1 -1
  251. package/dist/src/templates/index.js +20 -3
  252. package/dist/src/templates/index.js.map +1 -1
  253. package/dist/src/templates/processors/analytics/factory.d.ts +6 -0
  254. package/dist/src/templates/processors/analytics/factory.d.ts.map +1 -0
  255. package/dist/src/templates/processors/analytics/factory.js +26 -0
  256. package/dist/src/templates/processors/analytics/factory.js.map +1 -0
  257. package/dist/src/templates/processors/analytics/index.d.ts +4 -0
  258. package/dist/src/templates/processors/analytics/index.d.ts.map +1 -0
  259. package/dist/src/templates/processors/analytics/index.js +34 -0
  260. package/dist/src/templates/processors/analytics/index.js.map +1 -0
  261. package/dist/src/templates/processors/factory.d.ts +2 -0
  262. package/dist/src/templates/processors/factory.d.ts.map +1 -0
  263. package/dist/src/templates/processors/factory.js +60 -0
  264. package/dist/src/templates/processors/factory.js.map +1 -0
  265. package/dist/src/templates/processors/index.d.ts +2 -0
  266. package/dist/src/templates/processors/index.d.ts.map +1 -0
  267. package/dist/src/templates/processors/index.js +10 -0
  268. package/dist/src/templates/processors/index.js.map +1 -0
  269. package/dist/src/templates/processors/relational-db/factory.d.ts +6 -0
  270. package/dist/src/templates/processors/relational-db/factory.d.ts.map +1 -0
  271. package/dist/src/templates/processors/relational-db/factory.js +40 -0
  272. package/dist/src/templates/processors/relational-db/factory.js.map +1 -0
  273. package/dist/src/templates/processors/relational-db/index.d.ts +4 -0
  274. package/dist/src/templates/processors/relational-db/index.d.ts.map +1 -0
  275. package/dist/src/templates/processors/relational-db/index.js +28 -0
  276. package/dist/src/templates/processors/relational-db/index.js.map +1 -0
  277. package/dist/src/templates/processors/relational-db/migrations.d.ts +2 -0
  278. package/dist/src/templates/processors/relational-db/migrations.d.ts.map +1 -0
  279. package/dist/src/{codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/migrations.esm.t → templates/processors/relational-db/migrations.js} +5 -5
  280. package/dist/src/templates/processors/relational-db/migrations.js.map +1 -0
  281. package/dist/src/templates/processors/relational-db/schema.d.ts +2 -0
  282. package/dist/src/templates/processors/relational-db/schema.d.ts.map +1 -0
  283. package/dist/src/templates/processors/relational-db/schema.js +12 -0
  284. package/dist/src/templates/processors/relational-db/schema.js.map +1 -0
  285. package/dist/src/templates/processors/utils.d.ts +2 -0
  286. package/dist/src/templates/processors/utils.d.ts.map +1 -0
  287. package/dist/src/templates/processors/utils.js +6 -0
  288. package/dist/src/templates/processors/utils.js.map +1 -0
  289. package/dist/src/templates/subgraphs/custom-resolvers.d.ts +5 -0
  290. package/dist/src/templates/subgraphs/custom-resolvers.d.ts.map +1 -0
  291. package/dist/src/templates/subgraphs/custom-resolvers.js +20 -0
  292. package/dist/src/templates/subgraphs/custom-resolvers.js.map +1 -0
  293. package/dist/src/templates/subgraphs/custom-schema.d.ts +5 -0
  294. package/dist/src/templates/subgraphs/custom-schema.d.ts.map +1 -0
  295. package/dist/src/templates/subgraphs/custom-schema.js +20 -0
  296. package/dist/src/templates/subgraphs/custom-schema.js.map +1 -0
  297. package/dist/src/templates/subgraphs/document-model-resolvers.d.ts +15 -0
  298. package/dist/src/templates/subgraphs/document-model-resolvers.d.ts.map +1 -0
  299. package/dist/src/{codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/resolvers.esm.t → templates/subgraphs/document-model-resolvers.js} +55 -47
  300. package/dist/src/templates/subgraphs/document-model-resolvers.js.map +1 -0
  301. package/dist/src/templates/subgraphs/document-model-schema.d.ts +12 -0
  302. package/dist/src/templates/subgraphs/document-model-schema.d.ts.map +1 -0
  303. package/dist/src/templates/subgraphs/document-model-schema.js +54 -0
  304. package/dist/src/templates/subgraphs/document-model-schema.js.map +1 -0
  305. package/dist/src/templates/subgraphs/index-file.d.ts +5 -0
  306. package/dist/src/templates/subgraphs/index-file.d.ts.map +1 -0
  307. package/dist/src/{codegen/.hygen/templates/powerhouse/generate-subgraph/index.esm.t → templates/subgraphs/index-file.js} +7 -7
  308. package/dist/src/templates/subgraphs/index-file.js.map +1 -0
  309. package/dist/src/templates/subgraphs/index.d.ts +7 -0
  310. package/dist/src/templates/subgraphs/index.d.ts.map +1 -0
  311. package/dist/src/templates/subgraphs/index.js +7 -0
  312. package/dist/src/templates/subgraphs/index.js.map +1 -0
  313. package/dist/src/templates/subgraphs/lib-file.d.ts +2 -0
  314. package/dist/src/templates/subgraphs/lib-file.d.ts.map +1 -0
  315. package/dist/src/templates/subgraphs/lib-file.js +8 -0
  316. package/dist/src/templates/subgraphs/lib-file.js.map +1 -0
  317. package/dist/src/ts-morph-generator/__tests__/ReducerGenerator.test.js +4 -4
  318. package/dist/src/ts-morph-generator/core/GenerationContext.d.ts +1 -1
  319. package/dist/src/ts-morph-generator/core/GenerationContext.d.ts.map +1 -1
  320. package/dist/src/ts-morph-generator/core/ReducerGenerator.js +3 -3
  321. package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts +1 -1
  322. package/dist/src/ts-morph-generator/core/TSMorphCodeGenerator.d.ts.map +1 -1
  323. package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts +1 -1
  324. package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts.map +1 -1
  325. package/dist/src/ts-morph-generator/utilities/DirectoryManager.js +5 -5
  326. package/dist/src/ts-morph-generator/utilities/DirectoryManager.js.map +1 -1
  327. package/dist/src/utils/cli.d.ts +0 -6
  328. package/dist/src/utils/cli.d.ts.map +1 -1
  329. package/dist/src/utils/cli.js +0 -18
  330. package/dist/src/utils/cli.js.map +1 -1
  331. package/dist/src/utils/constants.d.ts +0 -2
  332. package/dist/src/utils/constants.d.ts.map +1 -1
  333. package/dist/src/utils/constants.js +0 -18
  334. package/dist/src/utils/constants.js.map +1 -1
  335. package/dist/src/utils/document-type-metadata.d.ts.map +1 -1
  336. package/dist/src/utils/document-type-metadata.js +5 -2
  337. package/dist/src/utils/document-type-metadata.js.map +1 -1
  338. package/dist/src/utils/format-with-prettier.d.ts +1 -1
  339. package/dist/src/utils/format-with-prettier.d.ts.map +1 -1
  340. package/dist/src/utils/format-with-prettier.js +5 -11
  341. package/dist/src/utils/format-with-prettier.js.map +1 -1
  342. package/dist/src/utils/graphql-type-prefixes.d.ts +10 -0
  343. package/dist/src/utils/graphql-type-prefixes.d.ts.map +1 -0
  344. package/dist/src/utils/graphql-type-prefixes.js +51 -0
  345. package/dist/src/utils/graphql-type-prefixes.js.map +1 -0
  346. package/dist/src/utils/index.d.ts +2 -3
  347. package/dist/src/utils/index.d.ts.map +1 -1
  348. package/dist/src/utils/index.js +2 -3
  349. package/dist/src/utils/index.js.map +1 -1
  350. package/dist/src/utils/source-files.d.ts +8 -1
  351. package/dist/src/utils/source-files.d.ts.map +1 -1
  352. package/dist/src/utils/source-files.js +19 -2
  353. package/dist/src/utils/source-files.js.map +1 -1
  354. package/dist/src/utils/syntax-getters.d.ts +2 -1
  355. package/dist/src/utils/syntax-getters.d.ts.map +1 -1
  356. package/dist/src/utils/syntax-getters.js +12 -0
  357. package/dist/src/utils/syntax-getters.js.map +1 -1
  358. package/dist/src/utils/ts-morph-project.d.ts +14 -5
  359. package/dist/src/utils/ts-morph-project.d.ts.map +1 -1
  360. package/dist/src/utils/ts-morph-project.js +12 -12
  361. package/dist/src/utils/ts-morph-project.js.map +1 -1
  362. package/dist/src/utils/validation.d.ts +1 -1
  363. package/dist/src/utils/validation.d.ts.map +1 -1
  364. package/dist/tsconfig.tsbuildinfo +1 -1
  365. package/dist/vitest.config.d.ts.map +1 -1
  366. package/dist/vitest.config.js +4 -0
  367. package/dist/vitest.config.js.map +1 -1
  368. package/package.json +32 -43
  369. package/dist/src/codegen/.hygen/package.json +0 -6
  370. package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/index.js +0 -10
  371. package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/resolvers.esm.t +0 -17
  372. package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/schema.esm.t +0 -16
  373. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/actions.esm.t +0 -16
  374. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/creators.esm.t +0 -9
  375. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/customUtils.esm.t +0 -5
  376. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/document-schema.esm.t +0 -56
  377. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/document-type.esm.t +0 -6
  378. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/documentModel.esm.t +0 -7
  379. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/documentModelTest.esm.t +0 -121
  380. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/hooks.esm.t +0 -49
  381. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.esm.t +0 -23
  382. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.js +0 -127
  383. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/module.esm.t +0 -22
  384. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/ph-factories.esm.t +0 -93
  385. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/reducer.esm.t +0 -46
  386. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/root-utils.esm.t +0 -11
  387. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/rootActions.esm.t +0 -13
  388. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/rootIndex.esm.t +0 -14
  389. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/schema.esm.t +0 -6
  390. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/src-index.esm.t +0 -5
  391. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/types.esm.t +0 -31
  392. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/utils.esm.t +0 -77
  393. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/actions.esm.t +0 -22
  394. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/creators.esm.t +0 -37
  395. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/customTest.esm.t +0 -44
  396. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/error.esm.t +0 -36
  397. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +0 -71
  398. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/operations.esm.t +0 -17
  399. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.js +0 -118
  400. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/schema.esm.t +0 -44
  401. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/CreateDocument.esm.t +0 -58
  402. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/DriveContents.esm.t +0 -23
  403. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/DriveExplorer.esm.t +0 -32
  404. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/EmptyState.esm.t +0 -19
  405. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/Files.esm.t +0 -29
  406. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/FolderTree.esm.t +0 -108
  407. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/Folders.esm.t +0 -28
  408. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/components/NavigationBreadcrumbs.esm.t +0 -14
  409. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/config.esm.t +0 -11
  410. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/editor.esm.t +0 -18
  411. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js +0 -25
  412. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/module.esm.t +0 -15
  413. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +0 -80
  414. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +0 -90
  415. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/module.esm.t +0 -16
  416. package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.esm.t +0 -59
  417. package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/index.js +0 -9
  418. package/dist/src/codegen/.hygen/templates/powerhouse/generate-import-script/utils.esm.t +0 -100
  419. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/factory.esm.t +0 -22
  420. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.esm.t +0 -62
  421. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.js +0 -12
  422. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.root.esm.t +0 -10
  423. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/index.root.inject.esm.t +0 -12
  424. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.esm.t +0 -34
  425. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_call.esm.t +0 -7
  426. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_export.esm.t +0 -7
  427. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-analytics/lib.inject_import.esm.t +0 -7
  428. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/factory.esm.t +0 -40
  429. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.esm.t +0 -47
  430. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.js +0 -12
  431. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.root.esm.t +0 -10
  432. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/index.root.inject.esm.t +0 -12
  433. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.esm.t +0 -34
  434. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_call.esm.t +0 -7
  435. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_export.esm.t +0 -9
  436. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/lib.inject_import.esm.t +0 -7
  437. package/dist/src/codegen/.hygen/templates/powerhouse/generate-processor-relationalDb/schema.esm.t +0 -13
  438. package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/index.js +0 -10
  439. package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/lib.esm.t +0 -9
  440. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +0 -2
  441. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +0 -1
  442. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +0 -159
  443. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +0 -1
  444. package/dist/src/codegen/hygen.d.ts +0 -47
  445. package/dist/src/codegen/hygen.d.ts.map +0 -1
  446. package/dist/src/codegen/hygen.js +0 -230
  447. package/dist/src/codegen/hygen.js.map +0 -1
  448. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts +0 -2
  449. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts.map +0 -1
  450. package/dist/src/file-builders/boilerplate/package-json-versions.test.js +0 -34
  451. package/dist/src/file-builders/boilerplate/package-json-versions.test.js.map +0 -1
  452. package/dist/src/templates/boilerplate/processors/index.d.ts +0 -2
  453. package/dist/src/templates/boilerplate/processors/index.d.ts.map +0 -1
  454. package/dist/src/templates/boilerplate/processors/index.js +0 -2
  455. package/dist/src/templates/boilerplate/processors/index.js.map +0 -1
  456. package/dist/src/templates/document-model/src/tests/document-model.test.d.ts.map +0 -1
  457. package/dist/src/templates/document-model/src/tests/document-model.test.js.map +0 -1
  458. package/dist/src/templates/document-model/src/tests/module.test.d.ts.map +0 -1
  459. package/dist/src/templates/document-model/src/tests/module.test.js.map +0 -1
  460. package/dist/src/utils/dependencies.d.ts +0 -12
  461. package/dist/src/utils/dependencies.d.ts.map +0 -1
  462. package/dist/src/utils/dependencies.js +0 -34
  463. package/dist/src/utils/dependencies.js.map +0 -1
  464. package/dist/src/utils/spawn-async.d.ts +0 -5
  465. package/dist/src/utils/spawn-async.d.ts.map +0 -1
  466. package/dist/src/utils/spawn-async.js +0 -29
  467. package/dist/src/utils/spawn-async.js.map +0 -1
  468. /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.d.ts +0 -0
  469. /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.js +0 -0
  470. /package/dist/src/templates/document-model/{src/tests → tests}/module.test.d.ts +0 -0
@@ -1,3 +1,2 @@
1
1
  export declare const PURGE_AFTER_TEST: boolean;
2
- export declare const USE_TS_MORPH: boolean;
3
2
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/codegen/__tests__/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,SAA0C,CAAC;AACxE,eAAO,MAAM,YAAY,SAAuC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/codegen/__tests__/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,SAA0C,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export const PURGE_AFTER_TEST = process.env.KEEP_TEST_OUTPUT !== "true";
2
- export const USE_TS_MORPH = process.env.USE_TS_MORPH !== "false";
3
2
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,CAAC;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,OAAO,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,CAAC"}
@@ -4,7 +4,7 @@ export const compile = (testDir) => new Promise((resolve, reject) => {
4
4
  stdout: [],
5
5
  stderr: [],
6
6
  };
7
- const child = exec(`npm install && npx tsc`, { cwd: testDir });
7
+ const child = exec(`npm i && npx tsc`, { cwd: testDir });
8
8
  child.stdout?.on("data", (data) => {
9
9
  output.stdout.push(data);
10
10
  });
@@ -1 +1 @@
1
- {"version":3,"file":"typecheck.js","sourceRoot":"","sources":["../../../../../src/codegen/__tests__/fixtures/typecheck.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAe,EAAE,EAAE,CACzC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,MAAM,GAA2C;QACrD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,EAAE;KACX,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/D,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,MAAM,CACJ,IAAI,KAAK,CACP,wBAAwB,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CACtF,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"typecheck.js","sourceRoot":"","sources":["../../../../../src/codegen/__tests__/fixtures/typecheck.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,OAAe,EAAE,EAAE,CACzC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,MAAM,GAA2C;QACrD,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,EAAE;KACX,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IACzD,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,MAAM,CACJ,IAAI,KAAK,CACP,wBAAwB,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CACtF,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,233 +1,183 @@
1
- import { readFileSync, rmSync } from "node:fs";
2
- import path from "node:path";
3
- import { afterAll, beforeAll, beforeEach, describe, expect, it, } from "vitest";
1
+ import { $ } from "bun";
2
+ import { describe, expect, test } from "bun:test";
3
+ import { cp, readdir } from "node:fs/promises";
4
+ import path from "path";
5
+ import { Project, ts } from "ts-morph";
4
6
  import { generateDocumentModel } from "../generate.js";
5
- import { hygenGenerateProcessor } from "../hygen.js";
6
7
  import { loadDocumentModel } from "../utils.js";
7
- import { USE_TS_MORPH } from "./config.js";
8
- import { DOCUMENT_MODELS_TEST_PROJECT, GENERATE_DOC_MODEL_TEST_OUTPUT_DIR, TEST_PACKAGE_NAME, } from "./constants.js";
9
- import { runGeneratedTests } from "./fixtures/run-generated-tests.js";
10
- import { compile } from "./fixtures/typecheck.js";
11
- import { copyAllFiles, getTestDataDir, getTestOutDirPath, getTestOutputDir, purgeDirAfterTest, resetDirForTest, } from "./utils.js";
12
- describe("document model", () => {
13
- const testDir = import.meta.dirname;
14
- const outDirName = getTestOutputDir(testDir, GENERATE_DOC_MODEL_TEST_OUTPUT_DIR);
15
- const testDataDir = getTestDataDir(testDir, DOCUMENT_MODELS_TEST_PROJECT);
16
- let testOutDirPath = getTestOutDirPath("initial", outDirName);
17
- const documentModelsSrcPath = path.join(testDir, "data", "document-models");
18
- let documentModelsDirName = path.join(testOutDirPath, "document-models");
19
- let processorsDirName = path.join(testOutDirPath, "processors");
20
- async function setupTest(context, dataDir = testDataDir) {
21
- testOutDirPath = getTestOutDirPath(context.task.name, outDirName);
22
- await copyAllFiles(dataDir, testOutDirPath);
23
- documentModelsDirName = path.join(testOutDirPath, "document-models");
24
- processorsDirName = path.join(testOutDirPath, "processors");
25
- }
26
- beforeEach(async (context) => {
27
- await setupTest(context);
28
- });
29
- beforeAll(() => {
30
- resetDirForTest(outDirName);
31
- });
32
- afterAll(() => {
33
- purgeDirAfterTest(outDirName);
34
- });
35
- const generate = async () => {
36
- const billingStatementDocumentModel = await loadDocumentModel(path.join(documentModelsSrcPath, "billing-statement", "billing-statement.json"));
8
+ const testsDir = import.meta.dirname;
9
+ const testOutputDir = path.join(testsDir, ".test-output");
10
+ function getDocumentModelJsonFilePath(basePath, dirName) {
11
+ return path.join(basePath, dirName, `${dirName}.json`);
12
+ }
13
+ async function loadDocumentModelsInDir(documentModelsInDir, testOutDir, useVersioning = true) {
14
+ const documentModelsOutDir = path.join(testOutDir, "document-models");
15
+ const documentModelDirs = (await readdir(documentModelsInDir, {
16
+ withFileTypes: true,
17
+ }))
18
+ .filter((value) => value.isDirectory())
19
+ .map((value) => value.name);
20
+ const documentModelStates = await Promise.all(documentModelDirs.map(async (dirName) => await loadDocumentModel(getDocumentModelJsonFilePath(documentModelsInDir, dirName))));
21
+ for (const documentModelState of documentModelStates) {
37
22
  await generateDocumentModel({
38
- dir: documentModelsDirName,
39
- specifiedPackageName: TEST_PACKAGE_NAME,
40
- documentModelState: billingStatementDocumentModel,
41
- useTsMorph: USE_TS_MORPH,
42
- useVersioning: false,
43
- skipFormat: true,
23
+ documentModelState,
24
+ dir: documentModelsOutDir,
25
+ useVersioning,
26
+ specifiedPackageName: "test",
44
27
  });
45
- const testDocDocumentModel = await loadDocumentModel(path.join(documentModelsSrcPath, "test-doc", "test-doc.json"));
46
- await generateDocumentModel({
47
- useTsMorph: USE_TS_MORPH,
48
- useVersioning: false,
49
- dir: documentModelsDirName,
50
- specifiedPackageName: TEST_PACKAGE_NAME,
51
- documentModelState: testDocDocumentModel,
52
- skipFormat: true,
53
- });
54
- };
55
- it("should generate a document model", {
56
- timeout: 100000,
57
- }, async (context) => {
58
- await setupTest(context);
59
- await generate();
60
- await compile(testOutDirPath);
61
- await runGeneratedTests(testOutDirPath);
62
- });
63
- it("should generate a document model when previous document models exist", {
64
- timeout: 100000,
65
- }, async (context) => {
66
- const dataDirOverride = getTestDataDir(testDir, "document-models-test-project-with-existing-document-models");
67
- await setupTest(context, dataDirOverride);
68
- await generate();
69
- await compile(testOutDirPath);
70
- await runGeneratedTests(testOutDirPath);
71
- });
72
- it("should create the document-models.ts file if it does not exist", {
73
- timeout: 100000,
74
- }, async (context) => {
75
- await setupTest(context);
76
- const documentModelsFilePath = path.join(documentModelsDirName, "document-models.ts");
77
- rmSync(documentModelsFilePath, { force: true });
78
- await generate();
79
- await compile(testOutDirPath);
80
- const documentModelsContent = readFileSync(documentModelsFilePath, "utf-8");
81
- // Check that both models are exported
82
- expect(documentModelsContent).toContain(`import { BillingStatement } from "./billing-statement/module.js";`);
83
- expect(documentModelsContent).toContain(`import { TestDoc } from "./test-doc/module.js";`);
84
- expect(documentModelsContent).toContain("export const documentModels: DocumentModelModule<any>[] = [");
85
- expect(documentModelsContent).toContain("BillingStatement");
86
- expect(documentModelsContent).toContain("TestDoc");
87
- expect(documentModelsContent).toContain("]");
28
+ }
29
+ }
30
+ async function runDocumentModelTests(args) {
31
+ const { inDirName, specDirName, testsDataDir, testOutputParentDir, useVersioning = true, } = args;
32
+ const dataDir = path.join(testsDataDir, inDirName);
33
+ const documentModelsInDir = path.join(testsDataDir, specDirName);
34
+ const outDir = path.join(testOutputParentDir, `${inDirName}-${specDirName}`);
35
+ await cp(dataDir, outDir, {
36
+ recursive: true,
37
+ force: true,
88
38
  });
89
- it("should generate multiple document models and export both in document-models.ts", {
90
- timeout: 100000,
91
- }, async (context) => {
92
- await setupTest(context);
93
- await generate();
94
- await compile(testOutDirPath);
95
- const documentModelsFilePath = path.join(documentModelsDirName, "document-models.ts");
96
- const documentModelsContent = readFileSync(documentModelsFilePath, "utf-8");
97
- // Check that both models are exported
98
- expect(documentModelsContent).toContain(`import { BillingStatement } from "./billing-statement/module.js";`);
99
- expect(documentModelsContent).toContain(`import { TestDoc } from "./test-doc/module.js";`);
100
- expect(documentModelsContent).toContain("export const documentModels: DocumentModelModule<any>[] = [");
101
- expect(documentModelsContent).toContain("BillingStatement");
102
- expect(documentModelsContent).toContain("TestDoc");
103
- expect(documentModelsContent).toContain("]");
39
+ await loadDocumentModelsInDir(documentModelsInDir, outDir, useVersioning);
40
+ await $ `bun run --cwd ${outDir} tsc --noEmit`;
41
+ return outDir;
42
+ }
43
+ async function checkFileContents(outDir) {
44
+ const project = new Project({
45
+ tsConfigFilePath: path.join(outDir, "tsconfig.json"),
46
+ skipAddingFilesFromTsConfig: true,
47
+ skipFileDependencyResolution: true,
48
+ skipLoadingLibFiles: true,
104
49
  });
105
- it("should generate an updated version of test-doc", { timeout: 100000 }, async (context) => {
106
- await setupTest(context);
107
- await generate();
108
- await compile(testOutDirPath);
109
- const testDocDocumentModelV2 = await loadDocumentModel(path.join(documentModelsSrcPath, "..", "test-doc-versions", "test-doc-v2", "test-doc.json"));
110
- // TODO: this is a hack to get the test to pass, we should be able to update the reducer file once is generated
111
- // remove .out/document-model/test-doc/src/reducers/base-operations.ts file
112
- rmSync(path.join(documentModelsDirName, "test-doc", "src", "reducers", "base-operations.ts"), { force: true });
113
- await generateDocumentModel({
114
- useTsMorph: USE_TS_MORPH,
115
- useVersioning: false,
116
- dir: documentModelsDirName,
117
- specifiedPackageName: TEST_PACKAGE_NAME,
118
- documentModelState: testDocDocumentModelV2,
119
- skipFormat: true,
50
+ project.addSourceFilesAtPaths(path.join(outDir, "document-models/**/*"));
51
+ const documentModelsFile = project.getSourceFileOrThrow("document-models.ts");
52
+ const documentModelsArray = documentModelsFile
53
+ .getVariableStatementOrThrow("documentModels")
54
+ .getDescendantsOfKind(ts.SyntaxKind.ArrayLiteralExpression)
55
+ .at(0);
56
+ const elements = documentModelsArray
57
+ .getElements()
58
+ .map((e) => e.getText())
59
+ .join(" ");
60
+ expect(elements).toContain("BillingStatement");
61
+ expect(elements).toContain("TestDoc");
62
+ const billingStatementErrorFile = await Bun.file(path.join(outDir, "document-models", "billing-statement", "gen", "general", "error.ts")).text();
63
+ expect(billingStatementErrorFile).toContain("export type ErrorCode");
64
+ expect(billingStatementErrorFile).toContain(`"InvalidStatusTransition"`);
65
+ expect(billingStatementErrorFile).toContain("export class InvalidStatusTransition extends Error implements ReducerError");
66
+ expect(billingStatementErrorFile).toContain(`errorCode = "InvalidStatusTransition" as ErrorCode`);
67
+ const lineItemsErrorFile = await Bun.file(path.join(outDir, "document-models", "billing-statement", "gen", "line-items", "error.ts")).text();
68
+ expect(lineItemsErrorFile).toContain("export type ErrorCode =");
69
+ expect(lineItemsErrorFile).toContain(`"DuplicateLineItem"`);
70
+ expect(lineItemsErrorFile).toContain(`"InvalidStatusTransition"`);
71
+ expect(lineItemsErrorFile).toContain("export class DuplicateLineItem extends Error implements ReducerError");
72
+ expect(lineItemsErrorFile).toContain("export class InvalidStatusTransition extends Error implements ReducerError");
73
+ const errorCodeMatches = lineItemsErrorFile.match(/"InvalidStatusTransition"/g);
74
+ expect(errorCodeMatches?.length).toBe(3);
75
+ }
76
+ describe("generate doc model", () => {
77
+ const parentOutDirName = "generate-doc-model";
78
+ const testOutputParentDir = path.join(testOutputDir, parentOutDirName);
79
+ const testsDataDir = path.join(testsDir, "data");
80
+ const useVersioning = false;
81
+ test("generate document models", async () => {
82
+ const outDir = await runDocumentModelTests({
83
+ inDirName: "document-models-test-project",
84
+ specDirName: "document-models",
85
+ testOutputParentDir,
86
+ testsDataDir,
87
+ useVersioning,
120
88
  });
121
- // expect .out/document-model/test-doc/src/reducers/base-operations.ts to contain setTestIdOperation, setTestNameOperation, setTestDescriptionOperation and setTestValueOperation
122
- const baseOperationsPath = path.join(documentModelsDirName, "test-doc", "src", "reducers", "base-operations.ts");
123
- const baseOperationsContent = readFileSync(baseOperationsPath, "utf-8");
124
- expect(baseOperationsContent).toContain("setTestIdOperation");
125
- expect(baseOperationsContent).toContain("setTestNameOperation");
126
- expect(baseOperationsContent).toContain("setTestDescriptionOperation");
127
- expect(baseOperationsContent).toContain("setTestValueOperation");
89
+ await checkFileContents(outDir);
128
90
  });
129
- it("should generate an analytics processor and factory", {
130
- timeout: 100000,
131
- }, async (context) => {
132
- await setupTest(context);
133
- await generate();
134
- await hygenGenerateProcessor("test-analytics-processor", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "analytics", {
135
- skipFormat: true,
91
+ test("generate document models in existing project", async () => {
92
+ const outDir = await runDocumentModelTests({
93
+ inDirName: "document-models-test-project-with-existing-document-models",
94
+ specDirName: "document-models",
95
+ testOutputParentDir,
96
+ testsDataDir,
97
+ useVersioning,
136
98
  });
137
- await compile(testOutDirPath);
99
+ await checkFileContents(outDir);
138
100
  });
139
- it("should generate multiple analytics processors with composable factories", {
140
- timeout: 100000,
141
- }, async (context) => {
142
- await setupTest(context);
143
- await generate();
144
- await hygenGenerateProcessor("test1", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "analytics", {
145
- skipFormat: true,
146
- });
147
- await hygenGenerateProcessor("test2", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "analytics", {
148
- skipFormat: true,
149
- });
150
- await hygenGenerateProcessor("test3", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "analytics", {
151
- skipFormat: true,
101
+ });
102
+ describe("versioned document models", () => {
103
+ const parentOutDirName = "versioned-document-models";
104
+ const testOutputParentDir = path.join(testOutputDir, parentOutDirName);
105
+ const testsDataDir = path.join(testsDir, "data", "versioned-document-models");
106
+ describe("v1", () => {
107
+ test("should generate new document models as v1", async () => {
108
+ await runDocumentModelTests({
109
+ inDirName: "empty-project",
110
+ specDirName: "spec-version-1",
111
+ testOutputParentDir,
112
+ testsDataDir,
113
+ });
152
114
  });
153
- await compile(testOutDirPath);
154
- });
155
- it("should generate a relational db processor and factory", {
156
- timeout: 100000,
157
- }, async (context) => {
158
- await setupTest(context);
159
- await generate();
160
- await hygenGenerateProcessor("test-relational-processor", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "relationalDb", {
161
- skipFormat: true,
115
+ test("should persist existing reducers, tests, utils, and custom files when generating for the same spec version", async () => {
116
+ await runDocumentModelTests({
117
+ inDirName: "project-with-existing-document-models-at-spec-1",
118
+ specDirName: "spec-version-1-with-more-operations",
119
+ testOutputParentDir,
120
+ testsDataDir,
121
+ });
162
122
  });
163
- await compile(testOutDirPath);
164
123
  });
165
- it("should generate multiple relational db processors with composable factories", {
166
- timeout: 100000,
167
- }, async (context) => {
168
- await setupTest(context);
169
- await generate();
170
- await hygenGenerateProcessor("test1", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "relationalDb", {
171
- skipFormat: true,
124
+ describe("v2", () => {
125
+ test("should handle generating document models as v2", async () => {
126
+ const testOutDir = await runDocumentModelTests({
127
+ inDirName: "empty-project",
128
+ specDirName: "spec-version-2",
129
+ testOutputParentDir,
130
+ testsDataDir,
131
+ });
132
+ const v1ModulePath = path.join(testOutDir, "document-models", "test-doc", "v1", "module.ts");
133
+ const v2ModulePath = path.join(testOutDir, "document-models", "test-doc", "v2", "module.ts");
134
+ const v1ModuleContent = await Bun.file(v1ModulePath).text();
135
+ const v2ModuleContent = await Bun.file(v2ModulePath).text();
136
+ expect(v1ModuleContent).toContain("version: 1,");
137
+ expect(v2ModuleContent).toContain("version: 2,");
172
138
  });
173
- await hygenGenerateProcessor("test2", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "relationalDb", {
174
- skipFormat: true,
139
+ test("should persist existing reducers, tests, utils, and custom files when generating a new spec version", async () => {
140
+ await runDocumentModelTests({
141
+ inDirName: "project-with-existing-document-models-at-spec-1",
142
+ specDirName: "spec-version-2",
143
+ testOutputParentDir,
144
+ testsDataDir,
145
+ });
175
146
  });
176
- await hygenGenerateProcessor("test3", ["billing-statement"], path.join(testOutDirPath, processorsDirName), "relationalDb", {
177
- skipFormat: true,
147
+ test("should throw a typescript error in upgrades when new state does not match old state", () => {
148
+ expect(async () => await runDocumentModelTests({
149
+ inDirName: "project-with-existing-document-models-at-spec-1",
150
+ specDirName: "spec-version-2-with-state-changes",
151
+ testOutputParentDir,
152
+ testsDataDir,
153
+ })).toThrow();
178
154
  });
179
- await compile(testOutDirPath);
180
155
  });
181
- it("should generate error classes and types from billing statement errors", { timeout: 100000 }, async (context) => {
182
- await setupTest(context);
183
- await generate();
184
- await compile(testOutDirPath);
185
- // Check general module errors
186
- const generalErrorPath = path.join(documentModelsDirName, "billing-statement", "gen", "general", "error.ts");
187
- const generalErrorContent = readFileSync(generalErrorPath, "utf-8");
188
- // Check that InvalidStatusTransition error is generated
189
- expect(generalErrorContent).toContain("export type ErrorCode =");
190
- expect(generalErrorContent).toContain(`"InvalidStatusTransition"`);
191
- expect(generalErrorContent).toContain("export class InvalidStatusTransition extends Error implements ReducerError");
192
- expect(generalErrorContent).toContain(`errorCode = "InvalidStatusTransition" as ErrorCode`);
193
- // Check line_items module errors
194
- const lineItemsErrorPath = path.join(documentModelsDirName, "billing-statement", "gen", "line-items", "error.ts");
195
- const lineItemsErrorContent = readFileSync(lineItemsErrorPath, "utf-8");
196
- // Check that both DuplicateLineItem and InvalidStatusTransition errors are generated (but deduplicated)
197
- expect(lineItemsErrorContent).toContain("export type ErrorCode =");
198
- expect(lineItemsErrorContent).toContain(`"DuplicateLineItem"`);
199
- expect(lineItemsErrorContent).toContain(`"InvalidStatusTransition"`);
200
- expect(lineItemsErrorContent).toContain("export class DuplicateLineItem extends Error implements ReducerError");
201
- expect(lineItemsErrorContent).toContain("export class InvalidStatusTransition extends Error implements ReducerError");
202
- // Verify that InvalidStatusTransition only appears once in the ErrorCode type (deduplication test)
203
- const errorCodeMatches = lineItemsErrorContent.match(/"InvalidStatusTransition"/g);
204
- expect(errorCodeMatches?.length).toBe(3); // Once in type definition, once in each class
205
- });
206
- it("should generate error codes for legacy documents with empty error codes", { timeout: 100000 }, async (context) => {
207
- await setupTest(context);
208
- await generate();
209
- const testEmptyCodesDocumentModel = await loadDocumentModel(path.join(documentModelsSrcPath, "test-empty-error-codes", "test-empty-error-codes.json"));
210
- await generateDocumentModel({
211
- useTsMorph: USE_TS_MORPH,
212
- useVersioning: false,
213
- dir: documentModelsDirName,
214
- specifiedPackageName: TEST_PACKAGE_NAME,
215
- documentModelState: testEmptyCodesDocumentModel,
216
- skipFormat: true,
156
+ describe("v3", () => {
157
+ test("should handle generating document models as v3", async () => {
158
+ await runDocumentModelTests({
159
+ inDirName: "empty-project",
160
+ specDirName: "spec-version-3",
161
+ testOutputParentDir,
162
+ testsDataDir,
163
+ });
164
+ });
165
+ test("should persist existing reducers, tests, utils, and custom files when generating a new spec version", async () => {
166
+ await runDocumentModelTests({
167
+ inDirName: "project-with-existing-document-models-at-spec-2",
168
+ specDirName: "spec-version-3",
169
+ testOutputParentDir,
170
+ testsDataDir,
171
+ });
172
+ });
173
+ test("should throw a typescript error in upgrades when new state does not match old state", () => {
174
+ expect(async () => await runDocumentModelTests({
175
+ inDirName: "project-with-existing-document-models-at-spec-2",
176
+ specDirName: "spec-version-3-with-state-changes",
177
+ testOutputParentDir,
178
+ testsDataDir,
179
+ })).toThrow();
217
180
  });
218
- // Check that error codes are generated from error names
219
- const testOperationsErrorPath = path.join(documentModelsDirName, "test-empty-codes", "gen", "test-operations", "error.ts");
220
- const testOperationsErrorContent = readFileSync(testOperationsErrorPath, "utf-8");
221
- // Check that error codes are generated from names in PascalCase when empty
222
- expect(testOperationsErrorContent).toContain("export type ErrorCode =");
223
- expect(testOperationsErrorContent).toContain(`"InvalidValue"`);
224
- expect(testOperationsErrorContent).toContain(`"EmptyValue"`);
225
- // Check that error classes are generated
226
- expect(testOperationsErrorContent).toContain("export class InvalidValue extends Error implements ReducerError");
227
- expect(testOperationsErrorContent).toContain("export class EmptyValue extends Error implements ReducerError");
228
- // Verify error code constants are set properly in PascalCase
229
- expect(testOperationsErrorContent).toContain(`errorCode = "InvalidValue" as ErrorCode`);
230
- expect(testOperationsErrorContent).toContain(`errorCode = "EmptyValue" as ErrorCode`);
231
181
  });
232
182
  });
233
183
  //# sourceMappingURL=generate-doc-model.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-doc-model.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-doc-model.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-doc-model.test.js","sourceRoot":"","sources":["../../../../src/codegen/__tests__/generate-doc-model.test.ts"],"names":[],"mappings":"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"}