@powerhousedao/codegen 6.0.0-dev.6 → 6.0.0-dev.60

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 (296) hide show
  1. package/dist/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/resolvers.esm.t +2 -2
  2. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.js +5 -5
  3. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/module.esm.t +1 -1
  4. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +5 -5
  5. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.js +4 -4
  6. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/editor.esm.t +3 -1
  7. package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js +4 -4
  8. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +1 -1
  9. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +7 -7
  10. package/dist/src/codegen/__tests__/fixtures/typecheck.js +1 -1
  11. package/dist/src/codegen/__tests__/fixtures/typecheck.js.map +1 -1
  12. package/dist/src/codegen/__tests__/generate-doc-model.test.js +163 -212
  13. package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
  14. package/dist/src/codegen/__tests__/generate-drive-editor.test.js +72 -46
  15. package/dist/src/codegen/__tests__/generate-drive-editor.test.js.map +1 -1
  16. package/dist/src/codegen/__tests__/generate-editor.test.js +28 -24
  17. package/dist/src/codegen/__tests__/generate-editor.test.js.map +1 -1
  18. package/dist/src/codegen/__tests__/generate-manifest.test.js +17 -16
  19. package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
  20. package/dist/src/codegen/__tests__/generate-processor.test.d.ts +2 -0
  21. package/dist/src/codegen/__tests__/generate-processor.test.d.ts.map +1 -0
  22. package/dist/src/codegen/__tests__/generate-processor.test.js +296 -0
  23. package/dist/src/codegen/__tests__/generate-processor.test.js.map +1 -0
  24. package/dist/src/codegen/__tests__/global-setup.d.ts +1 -1
  25. package/dist/src/codegen/__tests__/global-setup.d.ts.map +1 -1
  26. package/dist/src/codegen/__tests__/global-setup.js +3 -15
  27. package/dist/src/codegen/__tests__/global-setup.js.map +1 -1
  28. package/dist/src/codegen/__tests__/ts-morph-generator.test.js +4 -4
  29. package/dist/src/codegen/__tests__/ts-morph-generator.test.js.map +1 -1
  30. package/dist/src/codegen/__tests__/utils.d.ts +2 -2
  31. package/dist/src/codegen/__tests__/utils.d.ts.map +1 -1
  32. package/dist/src/codegen/__tests__/utils.js +11 -12
  33. package/dist/src/codegen/__tests__/utils.js.map +1 -1
  34. package/dist/src/codegen/generate.d.ts +19 -10
  35. package/dist/src/codegen/generate.d.ts.map +1 -1
  36. package/dist/src/codegen/generate.js +48 -35
  37. package/dist/src/codegen/generate.js.map +1 -1
  38. package/dist/src/codegen/graphql.d.ts.map +1 -1
  39. package/dist/src/codegen/graphql.js +10 -9
  40. package/dist/src/codegen/graphql.js.map +1 -1
  41. package/dist/src/codegen/hygen.js +4 -4
  42. package/dist/src/codegen/hygen.js.map +1 -1
  43. package/dist/src/codegen/utils.d.ts +1 -1
  44. package/dist/src/codegen/utils.d.ts.map +1 -1
  45. package/dist/src/codegen/utils.js +2 -1
  46. package/dist/src/codegen/utils.js.map +1 -1
  47. package/dist/src/create-lib/create-project.d.ts.map +1 -1
  48. package/dist/src/create-lib/create-project.js +14 -2
  49. package/dist/src/create-lib/create-project.js.map +1 -1
  50. package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts +2 -0
  51. package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts.map +1 -0
  52. package/dist/src/file-builders/boilerplate/ci-templates.test.js +114 -0
  53. package/dist/src/file-builders/boilerplate/ci-templates.test.js.map +1 -0
  54. package/dist/src/file-builders/boilerplate/package.json.js +1 -1
  55. package/dist/src/file-builders/boilerplate/package.json.js.map +1 -1
  56. package/dist/src/file-builders/clis/generate-cli-docs.d.ts +17 -0
  57. package/dist/src/file-builders/clis/generate-cli-docs.d.ts.map +1 -0
  58. package/dist/src/file-builders/clis/generate-cli-docs.js +36 -0
  59. package/dist/src/file-builders/clis/generate-cli-docs.js.map +1 -0
  60. package/dist/src/file-builders/document-editor.d.ts +1 -1
  61. package/dist/src/file-builders/document-editor.d.ts.map +1 -1
  62. package/dist/src/file-builders/document-editor.js +9 -7
  63. package/dist/src/file-builders/document-editor.js.map +1 -1
  64. package/dist/src/file-builders/document-model/document-model.d.ts.map +1 -1
  65. package/dist/src/file-builders/document-model/document-model.js +61 -64
  66. package/dist/src/file-builders/document-model/document-model.js.map +1 -1
  67. package/dist/src/file-builders/document-model/gen-dir.d.ts +1 -1
  68. package/dist/src/file-builders/document-model/gen-dir.d.ts.map +1 -1
  69. package/dist/src/file-builders/document-model/gen-dir.js +57 -57
  70. package/dist/src/file-builders/document-model/gen-dir.js.map +1 -1
  71. package/dist/src/file-builders/document-model/root-dir.d.ts +1 -1
  72. package/dist/src/file-builders/document-model/root-dir.d.ts.map +1 -1
  73. package/dist/src/file-builders/document-model/root-dir.js +17 -17
  74. package/dist/src/file-builders/document-model/root-dir.js.map +1 -1
  75. package/dist/src/file-builders/document-model/src-dir.d.ts +1 -1
  76. package/dist/src/file-builders/document-model/src-dir.d.ts.map +1 -1
  77. package/dist/src/file-builders/document-model/src-dir.js +15 -15
  78. package/dist/src/file-builders/document-model/src-dir.js.map +1 -1
  79. package/dist/src/file-builders/document-model/tests-dir.d.ts +1 -1
  80. package/dist/src/file-builders/document-model/tests-dir.d.ts.map +1 -1
  81. package/dist/src/file-builders/document-model/tests-dir.js +11 -11
  82. package/dist/src/file-builders/document-model/tests-dir.js.map +1 -1
  83. package/dist/src/file-builders/document-model/upgrades-dir.d.ts +6 -4
  84. package/dist/src/file-builders/document-model/upgrades-dir.d.ts.map +1 -1
  85. package/dist/src/file-builders/document-model/upgrades-dir.js +17 -25
  86. package/dist/src/file-builders/document-model/upgrades-dir.js.map +1 -1
  87. package/dist/src/file-builders/drive-editor.d.ts +1 -1
  88. package/dist/src/file-builders/drive-editor.d.ts.map +1 -1
  89. package/dist/src/file-builders/drive-editor.js +37 -35
  90. package/dist/src/file-builders/drive-editor.js.map +1 -1
  91. package/dist/src/file-builders/editor-common.d.ts.map +1 -1
  92. package/dist/src/file-builders/editor-common.js +0 -1
  93. package/dist/src/file-builders/editor-common.js.map +1 -1
  94. package/dist/src/file-builders/index.d.ts +1 -0
  95. package/dist/src/file-builders/index.d.ts.map +1 -1
  96. package/dist/src/file-builders/index.js +1 -0
  97. package/dist/src/file-builders/index.js.map +1 -1
  98. package/dist/src/file-builders/module-files.d.ts +11 -5
  99. package/dist/src/file-builders/module-files.d.ts.map +1 -1
  100. package/dist/src/file-builders/module-files.js +36 -28
  101. package/dist/src/file-builders/module-files.js.map +1 -1
  102. package/dist/src/file-builders/processors/analytics.d.ts +3 -0
  103. package/dist/src/file-builders/processors/analytics.d.ts.map +1 -0
  104. package/dist/src/file-builders/processors/analytics.js +35 -0
  105. package/dist/src/file-builders/processors/analytics.js.map +1 -0
  106. package/dist/src/file-builders/processors/processor.d.ts +9 -0
  107. package/dist/src/file-builders/processors/processor.d.ts.map +1 -0
  108. package/dist/src/file-builders/processors/processor.js +142 -0
  109. package/dist/src/file-builders/processors/processor.js.map +1 -0
  110. package/dist/src/file-builders/processors/relational-db.d.ts +3 -0
  111. package/dist/src/file-builders/processors/relational-db.d.ts.map +1 -0
  112. package/dist/src/file-builders/processors/relational-db.js +53 -0
  113. package/dist/src/file-builders/processors/relational-db.js.map +1 -0
  114. package/dist/src/file-builders/processors/types.d.ts +13 -0
  115. package/dist/src/file-builders/processors/types.d.ts.map +1 -0
  116. package/dist/src/file-builders/processors/types.js +2 -0
  117. package/dist/src/file-builders/processors/types.js.map +1 -0
  118. package/dist/src/file-builders/subgraphs.d.ts +1 -1
  119. package/dist/src/file-builders/subgraphs.d.ts.map +1 -1
  120. package/dist/src/file-builders/subgraphs.js +2 -2
  121. package/dist/src/file-builders/subgraphs.js.map +1 -1
  122. package/dist/src/file-builders/types.d.ts +18 -0
  123. package/dist/src/file-builders/types.d.ts.map +1 -1
  124. package/dist/src/name-builders/get-variable-names.d.ts +2 -1
  125. package/dist/src/name-builders/get-variable-names.d.ts.map +1 -1
  126. package/dist/src/name-builders/get-variable-names.js +6 -4
  127. package/dist/src/name-builders/get-variable-names.js.map +1 -1
  128. package/dist/src/templates/boilerplate/AGENTS.md.d.ts.map +1 -1
  129. package/dist/src/templates/boilerplate/AGENTS.md.js +41 -0
  130. package/dist/src/templates/boilerplate/AGENTS.md.js.map +1 -1
  131. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts +1 -1
  132. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts.map +1 -1
  133. package/dist/src/templates/boilerplate/CLAUDE.md.js +1 -407
  134. package/dist/src/templates/boilerplate/CLAUDE.md.js.map +1 -1
  135. package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts +2 -0
  136. package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts.map +1 -0
  137. package/dist/src/templates/boilerplate/docker/Dockerfile.js +144 -0
  138. package/dist/src/templates/boilerplate/docker/Dockerfile.js.map +1 -0
  139. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts +2 -0
  140. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts.map +1 -0
  141. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js +18 -0
  142. package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js.map +1 -0
  143. package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts +2 -0
  144. package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts.map +1 -0
  145. package/dist/src/templates/boilerplate/docker/nginx.conf.js +79 -0
  146. package/dist/src/templates/boilerplate/docker/nginx.conf.js.map +1 -0
  147. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts +2 -0
  148. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts.map +1 -0
  149. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js +19 -0
  150. package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js.map +1 -0
  151. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts +2 -0
  152. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts.map +1 -0
  153. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js +7 -0
  154. package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js.map +1 -0
  155. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts +2 -0
  156. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts.map +1 -0
  157. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js +376 -0
  158. package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js.map +1 -0
  159. package/dist/src/templates/boilerplate/index.d.ts.map +1 -1
  160. package/dist/src/templates/boilerplate/index.js +4 -1
  161. package/dist/src/templates/boilerplate/index.js.map +1 -1
  162. package/dist/src/templates/boilerplate/package.json.d.ts.map +1 -1
  163. package/dist/src/templates/boilerplate/package.json.js +9 -2
  164. package/dist/src/templates/boilerplate/package.json.js.map +1 -1
  165. package/dist/src/templates/boilerplate/powerhouse.config.json.js +2 -2
  166. package/dist/src/templates/boilerplate/powerhouse.config.json.js.map +1 -1
  167. package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts +8 -0
  168. package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts.map +1 -0
  169. package/dist/src/templates/cli-docs/docs-from-cli-help.js +86 -0
  170. package/dist/src/templates/cli-docs/docs-from-cli-help.js.map +1 -0
  171. package/dist/src/templates/document-editor/editor.d.ts.map +1 -1
  172. package/dist/src/templates/document-editor/editor.js +66 -59
  173. package/dist/src/templates/document-editor/editor.js.map +1 -1
  174. package/dist/src/templates/document-model/gen/actions.js +5 -5
  175. package/dist/src/templates/document-model/gen/creators.js +4 -4
  176. package/dist/src/templates/document-model/gen/index.js +2 -2
  177. package/dist/src/templates/document-model/gen/modules/error.d.ts.map +1 -1
  178. package/dist/src/templates/document-model/gen/modules/error.js +8 -2
  179. package/dist/src/templates/document-model/gen/modules/error.js.map +1 -1
  180. package/dist/src/templates/document-model/gen/reducer.js +3 -3
  181. package/dist/src/templates/document-model/module.js +1 -1
  182. package/dist/src/templates/document-model/module.js.map +1 -1
  183. package/dist/src/templates/document-model/tests/document-model.test.d.ts.map +1 -0
  184. package/dist/src/templates/document-model/tests/document-model.test.js.map +1 -0
  185. package/dist/src/templates/document-model/tests/module.test.d.ts.map +1 -0
  186. package/dist/src/templates/document-model/{src/tests → tests}/module.test.js +1 -1
  187. package/dist/src/templates/document-model/tests/module.test.js.map +1 -0
  188. package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts +5 -0
  189. package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts.map +1 -0
  190. package/dist/src/templates/document-model/upgrades/upgrade-manifest.js +13 -0
  191. package/dist/src/templates/document-model/upgrades/upgrade-manifest.js.map +1 -0
  192. package/dist/src/templates/drive-editor/editor.d.ts.map +1 -1
  193. package/dist/src/templates/drive-editor/editor.js +3 -1
  194. package/dist/src/templates/drive-editor/editor.js.map +1 -1
  195. package/dist/src/templates/index.d.ts +17 -3
  196. package/dist/src/templates/index.d.ts.map +1 -1
  197. package/dist/src/templates/index.js +17 -3
  198. package/dist/src/templates/index.js.map +1 -1
  199. package/dist/src/templates/processors/analytics/factory.d.ts +6 -0
  200. package/dist/src/templates/processors/analytics/factory.d.ts.map +1 -0
  201. package/dist/src/templates/processors/analytics/factory.js +26 -0
  202. package/dist/src/templates/processors/analytics/factory.js.map +1 -0
  203. package/dist/src/templates/processors/analytics/index.d.ts +4 -0
  204. package/dist/src/templates/processors/analytics/index.d.ts.map +1 -0
  205. package/dist/src/templates/processors/analytics/index.js +34 -0
  206. package/dist/src/templates/processors/analytics/index.js.map +1 -0
  207. package/dist/src/templates/processors/factory.d.ts +2 -0
  208. package/dist/src/templates/processors/factory.d.ts.map +1 -0
  209. package/dist/src/templates/processors/factory.js +60 -0
  210. package/dist/src/templates/processors/factory.js.map +1 -0
  211. package/dist/src/templates/processors/index.d.ts +2 -0
  212. package/dist/src/templates/processors/index.d.ts.map +1 -0
  213. package/dist/src/templates/processors/index.js +10 -0
  214. package/dist/src/templates/processors/index.js.map +1 -0
  215. package/dist/src/templates/processors/relational-db/factory.d.ts +6 -0
  216. package/dist/src/templates/processors/relational-db/factory.d.ts.map +1 -0
  217. package/dist/src/templates/processors/relational-db/factory.js +40 -0
  218. package/dist/src/templates/processors/relational-db/factory.js.map +1 -0
  219. package/dist/src/templates/processors/relational-db/index.d.ts +4 -0
  220. package/dist/src/templates/processors/relational-db/index.d.ts.map +1 -0
  221. package/dist/src/templates/processors/relational-db/index.js +28 -0
  222. package/dist/src/templates/processors/relational-db/index.js.map +1 -0
  223. package/dist/src/templates/processors/relational-db/migrations.d.ts +2 -0
  224. package/dist/src/templates/processors/relational-db/migrations.d.ts.map +1 -0
  225. package/dist/src/templates/processors/relational-db/migrations.js +23 -0
  226. package/dist/src/templates/processors/relational-db/migrations.js.map +1 -0
  227. package/dist/src/templates/processors/relational-db/schema.d.ts +2 -0
  228. package/dist/src/templates/processors/relational-db/schema.d.ts.map +1 -0
  229. package/dist/src/templates/processors/relational-db/schema.js +12 -0
  230. package/dist/src/templates/processors/relational-db/schema.js.map +1 -0
  231. package/dist/src/templates/processors/utils.d.ts +2 -0
  232. package/dist/src/templates/processors/utils.d.ts.map +1 -0
  233. package/dist/src/templates/processors/utils.js +6 -0
  234. package/dist/src/templates/processors/utils.js.map +1 -0
  235. package/dist/src/ts-morph-generator/__tests__/ReducerGenerator.test.js +4 -4
  236. package/dist/src/ts-morph-generator/core/ReducerGenerator.js +3 -3
  237. package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts +1 -1
  238. package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts.map +1 -1
  239. package/dist/src/ts-morph-generator/utilities/DirectoryManager.js +5 -5
  240. package/dist/src/ts-morph-generator/utilities/DirectoryManager.js.map +1 -1
  241. package/dist/src/utils/constants.d.ts +0 -2
  242. package/dist/src/utils/constants.d.ts.map +1 -1
  243. package/dist/src/utils/constants.js +0 -18
  244. package/dist/src/utils/constants.js.map +1 -1
  245. package/dist/src/utils/format-with-prettier.d.ts +1 -1
  246. package/dist/src/utils/format-with-prettier.d.ts.map +1 -1
  247. package/dist/src/utils/format-with-prettier.js +5 -11
  248. package/dist/src/utils/format-with-prettier.js.map +1 -1
  249. package/dist/src/utils/index.d.ts +1 -3
  250. package/dist/src/utils/index.d.ts.map +1 -1
  251. package/dist/src/utils/index.js +1 -3
  252. package/dist/src/utils/index.js.map +1 -1
  253. package/dist/src/utils/source-files.d.ts +8 -1
  254. package/dist/src/utils/source-files.d.ts.map +1 -1
  255. package/dist/src/utils/source-files.js +19 -2
  256. package/dist/src/utils/source-files.js.map +1 -1
  257. package/dist/src/utils/syntax-getters.d.ts +2 -1
  258. package/dist/src/utils/syntax-getters.d.ts.map +1 -1
  259. package/dist/src/utils/syntax-getters.js +4 -0
  260. package/dist/src/utils/syntax-getters.js.map +1 -1
  261. package/dist/src/utils/ts-morph-project.d.ts +14 -5
  262. package/dist/src/utils/ts-morph-project.d.ts.map +1 -1
  263. package/dist/src/utils/ts-morph-project.js +12 -12
  264. package/dist/src/utils/ts-morph-project.js.map +1 -1
  265. package/dist/tsconfig.tsbuildinfo +1 -1
  266. package/dist/vitest.config.d.ts.map +1 -1
  267. package/dist/vitest.config.js +2 -0
  268. package/dist/vitest.config.js.map +1 -1
  269. package/package.json +38 -41
  270. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +0 -2
  271. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +0 -1
  272. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +0 -159
  273. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +0 -1
  274. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts +0 -2
  275. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts.map +0 -1
  276. package/dist/src/file-builders/boilerplate/package-json-versions.test.js +0 -34
  277. package/dist/src/file-builders/boilerplate/package-json-versions.test.js.map +0 -1
  278. package/dist/src/templates/boilerplate/processors/index.d.ts +0 -2
  279. package/dist/src/templates/boilerplate/processors/index.d.ts.map +0 -1
  280. package/dist/src/templates/boilerplate/processors/index.js +0 -2
  281. package/dist/src/templates/boilerplate/processors/index.js.map +0 -1
  282. package/dist/src/templates/document-model/src/tests/document-model.test.d.ts.map +0 -1
  283. package/dist/src/templates/document-model/src/tests/document-model.test.js.map +0 -1
  284. package/dist/src/templates/document-model/src/tests/module.test.d.ts.map +0 -1
  285. package/dist/src/templates/document-model/src/tests/module.test.js.map +0 -1
  286. package/dist/src/utils/dependencies.d.ts +0 -12
  287. package/dist/src/utils/dependencies.d.ts.map +0 -1
  288. package/dist/src/utils/dependencies.js +0 -34
  289. package/dist/src/utils/dependencies.js.map +0 -1
  290. package/dist/src/utils/spawn-async.d.ts +0 -5
  291. package/dist/src/utils/spawn-async.d.ts.map +0 -1
  292. package/dist/src/utils/spawn-async.js +0 -29
  293. package/dist/src/utils/spawn-async.js.map +0 -1
  294. /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.d.ts +0 -0
  295. /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.js +0 -0
  296. /package/dist/src/templates/document-model/{src/tests → tests}/module.test.d.ts +0 -0
@@ -0,0 +1,114 @@
1
+ import { describe, expect, test } from "vitest";
2
+ import { connectEntrypointTemplate } from "../../templates/boilerplate/docker/connect-entrypoint.sh.js";
3
+ import { dockerfileTemplate } from "../../templates/boilerplate/docker/Dockerfile.js";
4
+ import { nginxConfTemplate } from "../../templates/boilerplate/docker/nginx.conf.js";
5
+ import { switchboardEntrypointTemplate } from "../../templates/boilerplate/docker/switchboard-entrypoint.sh.js";
6
+ import { syncAndPublishWorkflowTemplate } from "../../templates/boilerplate/github/sync-and-publish.yml.js";
7
+ describe("CI/CD Templates", () => {
8
+ describe("sync-and-publish.yml", () => {
9
+ test("should be a non-empty string", () => {
10
+ expect(typeof syncAndPublishWorkflowTemplate).toBe("string");
11
+ expect(syncAndPublishWorkflowTemplate.length).toBeGreaterThan(0);
12
+ });
13
+ test("should have correct workflow name", () => {
14
+ expect(syncAndPublishWorkflowTemplate).toContain("name: Sync and Publish");
15
+ });
16
+ test("should contain required jobs", () => {
17
+ expect(syncAndPublishWorkflowTemplate).toContain("prepare:");
18
+ expect(syncAndPublishWorkflowTemplate).toContain("update-and-publish:");
19
+ expect(syncAndPublishWorkflowTemplate).toContain("build-docker:");
20
+ expect(syncAndPublishWorkflowTemplate).toContain("summary:");
21
+ });
22
+ test("should have workflow_dispatch trigger with channel options", () => {
23
+ expect(syncAndPublishWorkflowTemplate).toContain("workflow_dispatch:");
24
+ expect(syncAndPublishWorkflowTemplate).toContain("- dev");
25
+ expect(syncAndPublishWorkflowTemplate).toContain("- staging");
26
+ expect(syncAndPublishWorkflowTemplate).toContain("- latest");
27
+ });
28
+ test("should have repository_dispatch trigger", () => {
29
+ expect(syncAndPublishWorkflowTemplate).toContain("repository_dispatch:");
30
+ expect(syncAndPublishWorkflowTemplate).toContain("powerhouse-release");
31
+ });
32
+ test("should configure Docker and GHCR registries", () => {
33
+ expect(syncAndPublishWorkflowTemplate).toContain("DOCKER_REGISTRY:");
34
+ expect(syncAndPublishWorkflowTemplate).toContain("GHCR_REGISTRY:");
35
+ expect(syncAndPublishWorkflowTemplate).toContain("cr.vetra.io");
36
+ expect(syncAndPublishWorkflowTemplate).toContain("ghcr.io");
37
+ });
38
+ });
39
+ describe("Dockerfile", () => {
40
+ test("should be a non-empty string", () => {
41
+ expect(typeof dockerfileTemplate).toBe("string");
42
+ expect(dockerfileTemplate.length).toBeGreaterThan(0);
43
+ });
44
+ test("should contain base stage", () => {
45
+ expect(dockerfileTemplate).toContain("FROM node:24-alpine AS base");
46
+ });
47
+ test("should contain connect-builder stage", () => {
48
+ expect(dockerfileTemplate).toContain("FROM base AS connect-builder");
49
+ });
50
+ test("should contain connect final stage", () => {
51
+ expect(dockerfileTemplate).toContain("FROM nginx:alpine AS connect");
52
+ });
53
+ test("should contain switchboard final stage", () => {
54
+ expect(dockerfileTemplate).toContain("FROM node:24-alpine AS switchboard");
55
+ });
56
+ test("should configure pnpm", () => {
57
+ expect(dockerfileTemplate).toContain("corepack enable");
58
+ expect(dockerfileTemplate).toContain("PNPM_HOME");
59
+ });
60
+ test("should install ph-cmd", () => {
61
+ expect(dockerfileTemplate).toContain("ph-cmd@$TAG");
62
+ });
63
+ test("should have health checks", () => {
64
+ expect(dockerfileTemplate).toContain("HEALTHCHECK");
65
+ });
66
+ });
67
+ describe("nginx.conf", () => {
68
+ test("should be a non-empty string", () => {
69
+ expect(typeof nginxConfTemplate).toBe("string");
70
+ expect(nginxConfTemplate.length).toBeGreaterThan(0);
71
+ });
72
+ test("should contain health check endpoint", () => {
73
+ expect(nginxConfTemplate).toContain("location /health");
74
+ });
75
+ test("should configure gzip compression", () => {
76
+ expect(nginxConfTemplate).toContain("gzip on");
77
+ });
78
+ test("should use PORT environment variable", () => {
79
+ expect(nginxConfTemplate).toContain("${PORT}");
80
+ });
81
+ test("should configure caching for assets", () => {
82
+ expect(nginxConfTemplate).toContain("Cache-Control");
83
+ expect(nginxConfTemplate).toContain("/assets/");
84
+ });
85
+ });
86
+ describe("connect-entrypoint.sh", () => {
87
+ test("should be a non-empty string", () => {
88
+ expect(typeof connectEntrypointTemplate).toBe("string");
89
+ expect(connectEntrypointTemplate.length).toBeGreaterThan(0);
90
+ });
91
+ test("should start with shebang", () => {
92
+ expect(connectEntrypointTemplate).toMatch(/^#!/);
93
+ });
94
+ test("should use envsubst for nginx config", () => {
95
+ expect(connectEntrypointTemplate).toContain("envsubst");
96
+ });
97
+ test("should start nginx", () => {
98
+ expect(connectEntrypointTemplate).toContain("nginx");
99
+ });
100
+ });
101
+ describe("switchboard-entrypoint.sh", () => {
102
+ test("should be a non-empty string", () => {
103
+ expect(typeof switchboardEntrypointTemplate).toBe("string");
104
+ expect(switchboardEntrypointTemplate.length).toBeGreaterThan(0);
105
+ });
106
+ test("should start with shebang", () => {
107
+ expect(switchboardEntrypointTemplate).toMatch(/^#!/);
108
+ });
109
+ test("should start switchboard", () => {
110
+ expect(switchboardEntrypointTemplate).toContain("ph switchboard");
111
+ });
112
+ });
113
+ });
114
+ //# sourceMappingURL=ci-templates.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci-templates.test.js","sourceRoot":"","sources":["../../../../src/file-builders/boilerplate/ci-templates.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { packageJsonTemplate } from "@powerhousedao/codegen/templates";
2
- import { makeVersionedDependencies, VERSIONED_DEPENDENCIES, VERSIONED_DEV_DEPENDENCIES, } from "@powerhousedao/codegen/utils";
2
+ import { makeVersionedDependencies, VERSIONED_DEPENDENCIES, VERSIONED_DEV_DEPENDENCIES, } from "@powerhousedao/common/clis";
3
3
  export async function buildBoilerplatePackageJson(args) {
4
4
  const { name, tag, version } = args;
5
5
  const versionedDependencies = await makeVersionedDependencies({
@@ -1 +1 @@
1
- {"version":3,"file":"package.json.js","sourceRoot":"","sources":["../../../../src/file-builders/boilerplate/package.json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAIjD;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACpC,MAAM,qBAAqB,GAAG,MAAM,yBAAyB,CAAC;QAC5D,KAAK,EAAE,sBAAsB;QAC7B,GAAG;QACH,OAAO;KACR,CAAC,CAAC;IACH,MAAM,wBAAwB,GAAG,MAAM,yBAAyB,CAAC;QAC/D,KAAK,EAAE,0BAA0B;QACjC,GAAG;QACH,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,mBAAmB,CAClC,IAAI,EACJ,qBAAqB,EACrB,wBAAwB,CACzB,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"package.json.js","sourceRoot":"","sources":["../../../../src/file-builders/boilerplate/package.json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,IAIjD;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACpC,MAAM,qBAAqB,GAAG,MAAM,yBAAyB,CAAC;QAC5D,KAAK,EAAE,sBAAsB;QAC7B,GAAG;QACH,OAAO;KACR,CAAC,CAAC;IACH,MAAM,wBAAwB,GAAG,MAAM,yBAAyB,CAAC;QAC/D,KAAK,EAAE,0BAA0B;QACjC,GAAG;QACH,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,mBAAmB,CAClC,IAAI,EACJ,qBAAqB,EACrB,wBAAwB,CACzB,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { CommandEntry, CommandHelpInfo } from "@powerhousedao/codegen";
2
+ export declare function getCommandHelpInfo<TEntry extends CommandEntry>(entry: TEntry): CommandHelpInfo;
3
+ export declare function getCommandsHelpInfo<TEntry extends CommandEntry>(entries: TEntry[]): CommandHelpInfo[];
4
+ export declare function makeCliDocsFromHelp<TEntry extends CommandEntry>(args: {
5
+ cliDescription: string;
6
+ docsTitle: string;
7
+ docsIntroduction: string;
8
+ entries: TEntry[];
9
+ }): string;
10
+ export declare function writeCliDocsMarkdownFile<TEntry extends CommandEntry>(args: {
11
+ filePath: string;
12
+ cliDescription: string;
13
+ docsTitle: string;
14
+ docsIntroduction: string;
15
+ entries: TEntry[];
16
+ }): Promise<void>;
17
+ //# sourceMappingURL=generate-cli-docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-cli-docs.d.ts","sourceRoot":"","sources":["../../../../src/file-builders/clis/generate-cli-docs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI5E,wBAAgB,kBAAkB,CAAC,MAAM,SAAS,YAAY,EAC5D,KAAK,EAAE,MAAM,GACZ,eAAe,CASjB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,SAAS,YAAY,EAC7D,OAAO,EAAE,MAAM,EAAE,qBAGlB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,SAAS,YAAY,EAAE,IAAI,EAAE;IACrE,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,UAcA;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,SAAS,YAAY,EAC3B,IAAI,EAAE;IACN,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,iBAOA"}
@@ -0,0 +1,36 @@
1
+ import { docsFromCliHelpTemplate } from "@powerhousedao/codegen/templates";
2
+ import { writeFile } from "node:fs/promises";
3
+ import { stripVTControlCharacters } from "node:util";
4
+ export function getCommandHelpInfo(entry) {
5
+ const name = entry.name;
6
+ const description = entry.command.description ?? "";
7
+ const helpTopics = entry.command.helpTopics?.() ?? [];
8
+ return {
9
+ name,
10
+ description,
11
+ helpTopics,
12
+ };
13
+ }
14
+ export function getCommandsHelpInfo(entries) {
15
+ return entries.map(getCommandHelpInfo);
16
+ }
17
+ export function makeCliDocsFromHelp(args) {
18
+ const { cliDescription, docsIntroduction, docsTitle, entries } = args;
19
+ const commandsHelpInfo = getCommandsHelpInfo(entries);
20
+ const template = docsFromCliHelpTemplate({
21
+ cliDescription,
22
+ docsIntroduction,
23
+ docsTitle,
24
+ commandsHelpInfo,
25
+ });
26
+ const templateWithAnsiEscapesRemoved = stripVTControlCharacters(template);
27
+ return templateWithAnsiEscapesRemoved;
28
+ }
29
+ export async function writeCliDocsMarkdownFile(args) {
30
+ const { filePath, ...restArgs } = args;
31
+ const markdownFileContent = makeCliDocsFromHelp(restArgs);
32
+ await writeFile(filePath, markdownFileContent, {
33
+ encoding: "utf-8",
34
+ });
35
+ }
36
+ //# sourceMappingURL=generate-cli-docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-cli-docs.js","sourceRoot":"","sources":["../../../../src/file-builders/clis/generate-cli-docs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,MAAM,UAAU,kBAAkB,CAChC,KAAa;IAEb,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC;IACtD,OAAO;QACL,IAAI;QACJ,WAAW;QACX,UAAU;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAAiB;IAEjB,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAA8B,IAKhE;IACC,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACtE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,QAAQ,GAAG,uBAAuB,CAAC;QACvC,cAAc;QACd,gBAAgB;QAChB,SAAS;QACT,gBAAgB;KACjB,CAAC,CAAC;IAEH,MAAM,8BAA8B,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAE1E,OAAO,8BAA8B,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAE5C,IAMD;IACC,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC;IACvC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAE1D,MAAM,SAAS,CAAC,QAAQ,EAAE,mBAAmB,EAAE;QAC7C,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC"}
@@ -3,6 +3,6 @@ type GenerateEditorArgs = CommonGenerateEditorArgs & {
3
3
  documentModelId: string;
4
4
  };
5
5
  /** Generates a document editor for the given `documentModelId` (also called `documentType`) */
6
- export declare function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorDir, editorName, editorId, documentModelId, }: GenerateEditorArgs): void;
6
+ export declare function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorDir, editorName, editorId, documentModelId, }: GenerateEditorArgs): Promise<void>;
7
7
  export {};
8
8
  //# sourceMappingURL=document-editor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-editor.d.ts","sourceRoot":"","sources":["../../../src/file-builders/document-editor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,wBAAwB,CAAC;AAchC,KAAK,kBAAkB,GAAG,wBAAwB,GAAG;IACnD,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,+FAA+F;AAC/F,wBAAgB,6BAA6B,CAAC,EAC5C,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACR,eAAe,GAChB,EAAE,kBAAkB,QAyCpB"}
1
+ {"version":3,"file":"document-editor.d.ts","sourceRoot":"","sources":["../../../src/file-builders/document-editor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAEzB,MAAM,wBAAwB,CAAC;AAehC,KAAK,kBAAkB,GAAG,wBAAwB,GAAG;IACnD,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,+FAA+F;AAC/F,wBAAsB,6BAA6B,CAAC,EAClD,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACR,eAAe,GAChB,EAAE,kBAAkB,iBAiDpB"}
@@ -1,17 +1,19 @@
1
- import { buildTsMorphProject, formatSourceFileWithPrettier, getDocumentTypeMetadata, getOrCreateSourceFile, } from "@powerhousedao/codegen/utils";
2
1
  import { getEditorVariableNames } from "@powerhousedao/codegen/name-builders";
3
2
  import { documentEditorEditorFileTemplate } from "@powerhousedao/codegen/templates";
3
+ import { buildTsMorphProject, ensureDirectoriesExist, formatSourceFileWithPrettier, getDocumentTypeMetadata, getOrCreateSourceFile, } from "@powerhousedao/codegen/utils";
4
4
  import path from "path";
5
5
  import { makeEditorModuleFile } from "./editor-common.js";
6
6
  import { makeEditorsModulesFile } from "./module-files.js";
7
7
  /** Generates a document editor for the given `documentModelId` (also called `documentType`) */
8
- export function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorDir, editorName, editorId, documentModelId, }) {
8
+ export async function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorDir, editorName, editorId, documentModelId, }) {
9
9
  const documentModelsDirPath = path.join(projectDir, "document-models");
10
10
  const editorsDirPath = path.join(projectDir, "editors");
11
11
  const editorDirPath = path.join(editorsDirPath, editorDir);
12
+ const componentsDirPath = path.join(editorDirPath, "components");
12
13
  const editorSourceFilesPath = path.join(editorsDirPath, "/**/*");
13
14
  const documentModelsSourceFilesPath = path.join(documentModelsDirPath, "/**/*");
14
15
  const project = buildTsMorphProject(projectDir);
16
+ await ensureDirectoriesExist(project, documentModelsDirPath, editorsDirPath, editorDirPath, componentsDirPath);
15
17
  project.addSourceFilesAtPaths(documentModelsSourceFilesPath);
16
18
  project.addSourceFilesAtPaths(editorSourceFilesPath);
17
19
  const documentTypeMetadata = getDocumentTypeMetadata({
@@ -21,7 +23,7 @@ export function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorD
21
23
  documentModelsDirPath,
22
24
  });
23
25
  const editorVariableNames = getEditorVariableNames(documentTypeMetadata);
24
- makeEditorComponent({
26
+ await makeEditorComponent({
25
27
  project,
26
28
  editorDirPath,
27
29
  ...documentTypeMetadata,
@@ -34,10 +36,10 @@ export function tsMorphGenerateDocumentEditor({ packageName, projectDir, editorD
34
36
  documentModelId,
35
37
  editorDirPath,
36
38
  });
37
- makeEditorsModulesFile(project, projectDir);
38
- project.saveSync();
39
+ await makeEditorsModulesFile(project, projectDir);
40
+ await project.save();
39
41
  }
40
- function makeEditorComponent(args) {
42
+ async function makeEditorComponent(args) {
41
43
  const { project, editorDirPath } = args;
42
44
  const filePath = path.join(editorDirPath, "editor.tsx");
43
45
  const { alreadyExists, sourceFile } = getOrCreateSourceFile(project, filePath);
@@ -52,6 +54,6 @@ function makeEditorComponent(args) {
52
54
  }
53
55
  const template = documentEditorEditorFileTemplate(args);
54
56
  sourceFile.replaceWithText(template);
55
- formatSourceFileWithPrettier(sourceFile);
57
+ await formatSourceFileWithPrettier(sourceFile);
56
58
  }
57
59
  //# sourceMappingURL=document-editor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-editor.js","sourceRoot":"","sources":["../../../src/file-builders/document-editor.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAK3D,+FAA+F;AAC/F,MAAM,UAAU,6BAA6B,CAAC,EAC5C,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACR,eAAe,GACI;IACnB,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAC3D,MAAM,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACjE,MAAM,6BAA6B,GAAG,IAAI,CAAC,IAAI,CAC7C,qBAAqB,EACrB,OAAO,CACR,CAAC;IAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,CAAC,qBAAqB,CAAC,6BAA6B,CAAC,CAAC;IAC7D,OAAO,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAErD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;QACnD,OAAO;QACP,WAAW;QACX,eAAe;QACf,qBAAqB;KACtB,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;IAEzE,mBAAmB,CAAC;QAClB,OAAO;QACP,aAAa;QACb,GAAG,oBAAoB;QACvB,GAAG,mBAAmB;KACvB,CAAC,CAAC;IAEH,oBAAoB,CAAC;QACnB,OAAO;QACP,UAAU;QACV,QAAQ;QACR,eAAe;QACf,aAAa;KACd,CAAC,CAAC;IAEH,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAE5C,OAAO,CAAC,QAAQ,EAAE,CAAC;AACrB,CAAC;AAQD,SAAS,mBAAmB,CAAC,IAA6B;IACxD,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,qBAAqB,CACzD,OAAO,EACP,QAAQ,CACT,CAAC;IAEF,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,mBAAmB,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,mBAAmB,EAAE,CAAC;YACxB,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC3C,mBAAmB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IACxD,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACrC,4BAA4B,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"document-editor.js","sourceRoot":"","sources":["../../../src/file-builders/document-editor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"document-model.d.ts","sourceRoot":"","sources":["../../../../src/file-builders/document-model/document-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AA+BhC;;;;GAIG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,aAAa,GACd,EAAE,yBAAyB,iBAgJ3B"}
1
+ {"version":3,"file":"document-model.d.ts","sourceRoot":"","sources":["../../../../src/file-builders/document-model/document-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AAkChC;;;;GAIG;AACH,wBAAsB,4BAA4B,CAAC,EACjD,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,aAAa,GACd,EAAE,yBAAyB,iBAwI3B"}
@@ -1,17 +1,17 @@
1
1
  import { getDocumentModelDirName, getDocumentModelVariableNames, } from "@powerhousedao/codegen/name-builders";
2
2
  import { buildTsMorphProject, ensureDirectoriesExist, formatSourceFileWithPrettier, getInitialStates, getOrCreateSourceFile, } from "@powerhousedao/codegen/utils";
3
- import { paramCase } from "change-case";
4
- import { writeFileSync } from "fs";
3
+ import { directoryExists, fileExists } from "@powerhousedao/common/clis";
4
+ import { kebabCase } from "change-case";
5
+ import { copyFile, mkdir, readdir, writeFile } from "node:fs/promises";
5
6
  import path from "path";
6
7
  import {} from "ts-morph";
7
8
  import { generateDocumentModelZodSchemas } from "../../codegen/graphql.js";
8
- import { makeDocumentModelModulesFile } from "../module-files.js";
9
+ import { makeDocumentModelModulesFile, makeUpgradeManifestsFile, } from "../module-files.js";
9
10
  import { makeGenDirFiles } from "./gen-dir.js";
10
11
  import { makeRootDirFiles } from "./root-dir.js";
11
12
  import { makeSrcDirFiles } from "./src-dir.js";
12
13
  import { makeTestsDirFiles } from "./tests-dir.js";
13
14
  import { createOrUpdateUpgradeManifestFile, createOrUpdateVersionConstantsFile, makeUpgradeFile, makeUpgradesIndexFile, } from "./upgrades-dir.js";
14
- import { makeUpgradeManifestsExport } from "../module-files.js";
15
15
  /** Generates a document model from the given `documentModelState`
16
16
  *
17
17
  * If `useVersioning` is set to true, it will generate versioned document model code
@@ -20,16 +20,16 @@ import { makeUpgradeManifestsExport } from "../module-files.js";
20
20
  export async function tsMorphGenerateDocumentModel({ projectDir, packageName, documentModelState, useVersioning, }) {
21
21
  const project = buildTsMorphProject(projectDir);
22
22
  const documentModelsSourceFilesPath = path.join(projectDir, "document-models/**/*");
23
- project.addSourceFilesAtPaths(documentModelsSourceFilesPath);
24
23
  const documentModelsDirPath = path.join(projectDir, "document-models");
25
24
  const documentModelDirName = getDocumentModelDirName(documentModelState);
26
25
  const documentModelDirPath = path.join(documentModelsDirPath, documentModelDirName);
27
- const documentModelVariableNames = getDocumentModelVariableNames(documentModelState.name);
28
- ensureDirectoriesExist(project, documentModelsDirPath, documentModelDirPath);
29
26
  const upgradesDirPath = path.join(documentModelDirPath, "upgrades");
27
+ const documentModelVariableNames = getDocumentModelVariableNames(documentModelState.name);
28
+ await ensureDirectoriesExist(project, documentModelsDirPath, documentModelDirPath);
30
29
  if (useVersioning) {
31
- ensureDirectoriesExist(project, upgradesDirPath);
30
+ await ensureDirectoriesExist(project, upgradesDirPath);
32
31
  }
32
+ project.addSourceFilesAtPaths(documentModelsSourceFilesPath);
33
33
  const documentModelPackageImportPath = path.join(packageName, "document-models", documentModelDirName);
34
34
  const specVersions = [
35
35
  ...new Set([
@@ -43,7 +43,7 @@ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, do
43
43
  if (documentModelState.specifications[documentModelState.specifications.length - 1].version !== latestVersion) {
44
44
  throw new Error("Document model has incorrect version at the latest version index");
45
45
  }
46
- writeDocumentModelStateJsonFile({
46
+ await writeDocumentModelStateJsonFile({
47
47
  documentModelState,
48
48
  documentModelDirName,
49
49
  documentModelDirPath,
@@ -63,7 +63,7 @@ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, do
63
63
  ...documentModelVariableNames,
64
64
  })));
65
65
  for (const version of specVersions) {
66
- makeUpgradeFile({
66
+ await makeUpgradeFile({
67
67
  version,
68
68
  upgradesDirPath,
69
69
  project,
@@ -71,18 +71,18 @@ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, do
71
71
  ...documentModelVariableNames,
72
72
  });
73
73
  }
74
- makeDocumentModelIndexFile({
74
+ await makeDocumentModelIndexFile({
75
75
  project,
76
76
  documentModelDirPath,
77
77
  latestVersion,
78
78
  });
79
- createOrUpdateVersionConstantsFile({
79
+ await createOrUpdateVersionConstantsFile({
80
80
  project,
81
81
  specVersions,
82
82
  latestVersion,
83
83
  upgradesDirPath,
84
84
  });
85
- createOrUpdateUpgradeManifestFile({
85
+ await createOrUpdateUpgradeManifestFile({
86
86
  project,
87
87
  specVersions,
88
88
  latestVersion,
@@ -90,17 +90,11 @@ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, do
90
90
  documentModelId: documentModelState.id,
91
91
  ...documentModelVariableNames,
92
92
  });
93
- makeUpgradesIndexFile({ project, upgradesDirPath, specVersions });
94
- // Generate upgradeManifests export in document-models.ts
95
- // This needs to run after upgrade-manifest.ts files are created
96
- const documentModelsOutputFilePath = path.join(documentModelsDirPath, "document-models.ts");
97
- makeUpgradeManifestsExport({
93
+ await makeUpgradesIndexFile({
98
94
  project,
99
- modulesDirPath: documentModelsDirPath,
100
- outputFilePath: documentModelsOutputFilePath,
101
- variableName: "upgradeManifests",
102
- variableType: "UpgradeManifest<readonly number[]>[]",
103
- typeName: "UpgradeManifest",
95
+ upgradesDirPath,
96
+ specVersions,
97
+ ...documentModelVariableNames,
104
98
  });
105
99
  }
106
100
  else {
@@ -118,7 +112,7 @@ export async function tsMorphGenerateDocumentModel({ projectDir, packageName, do
118
112
  ...documentModelVariableNames,
119
113
  });
120
114
  }
121
- project.saveSync();
115
+ await project.save();
122
116
  }
123
117
  /** Generates document model code for a given `specification` from a `documentModelState` object */
124
118
  async function generateDocumentModelForSpec({ project, projectDir, packageName, documentModelState, documentModelPackageImportPath, documentModelsDirPath, documentModelDirName, documentModelDirPath, useVersioning, version, ...documentModelVariableNames }) {
@@ -140,8 +134,8 @@ async function generateDocumentModelForSpec({ project, projectDir, packageName,
140
134
  const { initialGlobalState, initialLocalState } = getInitialStates(specification.state);
141
135
  const hasLocalSchema = specification.state.local.schema !== "";
142
136
  const modules = specification.modules;
143
- const moduleDirPaths = modules.map((module) => path.join(genDirPath, paramCase(module.name)));
144
- ensureDirectoriesExist(project, documentModelVersionDirPath, reducersDirPath, testsDirPath, schemaDirPath, ...moduleDirPaths);
137
+ const moduleDirPaths = modules.map((module) => path.join(genDirPath, kebabCase(module.name)));
138
+ await ensureDirectoriesExist(project, documentModelVersionDirPath, reducersDirPath, testsDirPath, schemaDirPath, ...moduleDirPaths);
145
139
  const fileMakerArgs = {
146
140
  project,
147
141
  projectDir,
@@ -173,27 +167,30 @@ async function generateDocumentModelForSpec({ project, projectDir, packageName,
173
167
  documentModelDirPath: documentModelVersionDirPath,
174
168
  specification,
175
169
  });
176
- makeRootDirFiles(fileMakerArgs);
177
- makeGenDirFiles(fileMakerArgs);
178
- makeSrcDirFiles(fileMakerArgs);
179
- makeTestsDirFiles(fileMakerArgs);
180
- makeDocumentModelModulesFile(fileMakerArgs);
170
+ await makeRootDirFiles(fileMakerArgs);
171
+ await makeGenDirFiles(fileMakerArgs);
172
+ await makeSrcDirFiles(fileMakerArgs);
173
+ await makeTestsDirFiles(fileMakerArgs);
174
+ await makeDocumentModelModulesFile(fileMakerArgs);
181
175
  if (!useVersioning)
182
176
  return;
177
+ await makeUpgradeManifestsFile({
178
+ project,
179
+ projectDir,
180
+ });
183
181
  const previousVersionDirPath = getPreviousVersionDirPath(documentModelDirPath, version);
184
182
  if (!previousVersionDirPath)
185
183
  return;
186
- persistCustomFilesFromPreviousVersion({
187
- project,
184
+ await persistCustomFilesFromPreviousVersion({
188
185
  currentVersionDirPath: documentModelVersionDirPath,
189
186
  previousVersionDirPath,
190
187
  });
191
188
  }
192
189
  /** Writes a json file derived from a `documentModelState` */
193
- function writeDocumentModelStateJsonFile({ documentModelState, documentModelDirName, documentModelDirPath, }) {
190
+ async function writeDocumentModelStateJsonFile({ documentModelState, documentModelDirName, documentModelDirPath, }) {
194
191
  const filePath = path.join(documentModelDirPath, `${documentModelDirName}.json`);
195
192
  const documentModelStateJson = JSON.stringify(documentModelState, null, 2);
196
- writeFileSync(filePath, documentModelStateJson);
193
+ await writeFile(filePath, documentModelStateJson);
197
194
  }
198
195
  function getPreviousVersionDirPath(documentModelDirPath, version) {
199
196
  const previousVersion = version - 1;
@@ -202,7 +199,7 @@ function getPreviousVersionDirPath(documentModelDirPath, version) {
202
199
  const previousVersionDirName = `v${previousVersion}`;
203
200
  return path.join(documentModelDirPath, previousVersionDirName);
204
201
  }
205
- function makeDocumentModelIndexFile(args) {
202
+ async function makeDocumentModelIndexFile(args) {
206
203
  const { project, documentModelDirPath, latestVersion } = args;
207
204
  const filePath = path.join(documentModelDirPath, "index.ts");
208
205
  const { sourceFile } = getOrCreateSourceFile(project, filePath);
@@ -211,36 +208,36 @@ function makeDocumentModelIndexFile(args) {
211
208
  { moduleSpecifier: `./v${latestVersion}/index.js` },
212
209
  { moduleSpecifier: `./upgrades/index.js` },
213
210
  ]);
214
- formatSourceFileWithPrettier(sourceFile);
211
+ await formatSourceFileWithPrettier(sourceFile);
215
212
  }
216
- function persistCustomFilesFromPreviousVersion(args) {
217
- const { project, currentVersionDirPath, previousVersionDirPath } = args;
218
- const currentVersionDir = project.getDirectoryOrThrow(currentVersionDirPath);
219
- const previousVersionDir = project.getDirectory(previousVersionDirPath);
220
- if (!previousVersionDir)
213
+ async function persistCustomFilesFromPreviousVersion(args) {
214
+ const { currentVersionDirPath, previousVersionDirPath } = args;
215
+ const previousVersionDirExists = await directoryExists(previousVersionDirPath);
216
+ if (!previousVersionDirExists)
221
217
  return;
222
- const currentVersionSourceFiles = currentVersionDir.getDescendantSourceFiles();
223
- const previousVersionSourceFiles = previousVersionDir.getDescendantSourceFiles();
224
- const currentVersionDirs = currentVersionDir.getDescendantDirectories();
225
- const previousVersionDirs = previousVersionDir.getDescendantDirectories();
226
- const previousVersionRelativeDirPaths = previousVersionDirs.map((d) => previousVersionDir.getRelativePathTo(d));
227
- const currentVersionRelativeDirPaths = currentVersionDirs.map((d) => currentVersionDir.getRelativePathTo(d));
228
- const missingDirPaths = previousVersionRelativeDirPaths.filter((p) => !currentVersionRelativeDirPaths.includes(p));
229
- const missingDirs = previousVersionDirs.filter((f) => missingDirPaths.includes(previousVersionDir.getRelativePathTo(f)));
230
- for (const dir of missingDirs) {
231
- const relativePath = previousVersionDir.getRelativePathTo(dir);
232
- const newDir = currentVersionDir.createDirectory(relativePath);
233
- newDir.saveSync();
234
- }
235
- const previousVersionRelativeFilePaths = previousVersionSourceFiles.map((f) => previousVersionDir.getRelativePathTo(f));
236
- const currentVersionRelativeFilePaths = currentVersionSourceFiles.map((f) => currentVersionDir.getRelativePathTo(f));
237
- const missingFilePaths = previousVersionRelativeFilePaths.filter((p) => !currentVersionRelativeFilePaths.includes(p));
238
- const missingFiles = previousVersionSourceFiles.filter((f) => missingFilePaths.includes(previousVersionDir.getRelativePathTo(f)));
239
- for (const file of missingFiles) {
240
- const relativePath = previousVersionDir.getRelativePathTo(file);
241
- const fileText = file.getText();
242
- const newFile = currentVersionDir.createSourceFile(relativePath, fileText);
243
- newFile.saveSync();
218
+ const previousVersionDirContents = await readdir(previousVersionDirPath, {
219
+ withFileTypes: true,
220
+ recursive: true,
221
+ });
222
+ const previousVersionFiles = previousVersionDirContents
223
+ .filter((dirEnt) => dirEnt.isFile())
224
+ .map(({ name, parentPath }) => ({
225
+ name,
226
+ parentPath,
227
+ relativePath: path.relative(previousVersionDirPath, parentPath),
228
+ }));
229
+ for (const { name, relativePath } of previousVersionFiles) {
230
+ const filePathInCurrentVersionDir = path.join(currentVersionDirPath, relativePath, name);
231
+ const filePathInPreviousVersionDir = path.join(previousVersionDirPath, relativePath, name);
232
+ const existsInPreviousVersionDir = await fileExists(filePathInPreviousVersionDir);
233
+ const existsInCurrentVersionDir = await fileExists(filePathInCurrentVersionDir);
234
+ if (existsInPreviousVersionDir && !existsInCurrentVersionDir) {
235
+ console.log(`Persisting file "${path.join(relativePath, name)}" from previous version directory.`);
236
+ await mkdir(path.join(currentVersionDirPath, relativePath), {
237
+ recursive: true,
238
+ });
239
+ await copyFile(filePathInPreviousVersionDir, filePathInCurrentVersionDir);
240
+ }
244
241
  }
245
242
  }
246
243
  //# sourceMappingURL=document-model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-model.js","sourceRoot":"","sources":["../../../../src/file-builders/document-model/document-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-model.js","sourceRoot":"","sources":["../../../../src/file-builders/document-model/document-model.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import type { DocumentModelFileMakerArgs } from "@powerhousedao/codegen/file-builders";
2
- export declare function makeGenDirFiles(fileMakerArgs: DocumentModelFileMakerArgs): void;
2
+ export declare function makeGenDirFiles(fileMakerArgs: DocumentModelFileMakerArgs): Promise<void>;
3
3
  //# sourceMappingURL=gen-dir.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gen-dir.d.ts","sourceRoot":"","sources":["../../../../src/file-builders/document-model/gen-dir.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,sCAAsC,CAAC;AA2B9C,wBAAgB,eAAe,CAAC,aAAa,EAAE,0BAA0B,QAwBxE"}
1
+ {"version":3,"file":"gen-dir.d.ts","sourceRoot":"","sources":["../../../../src/file-builders/document-model/gen-dir.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,sCAAsC,CAAC;AA2B9C,wBAAsB,eAAe,CACnC,aAAa,EAAE,0BAA0B,iBAyB1C"}