@powerhousedao/codegen 5.1.0 → 5.2.0-dev.1

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 (453) hide show
  1. package/dist/index.d.ts +4 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +3 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/creators.esm.t +1 -1
  6. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/error.esm.t +3 -3
  7. package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +3 -0
  8. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +70 -4
  9. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +1 -3
  10. package/dist/src/codegen/.hygen/templates/powerhouse/generate-subgraph/lib.esm.t +9 -0
  11. package/dist/src/codegen/__tests__/config.d.ts +1 -0
  12. package/dist/src/codegen/__tests__/config.d.ts.map +1 -1
  13. package/dist/src/codegen/__tests__/config.js +1 -0
  14. package/dist/src/codegen/__tests__/config.js.map +1 -1
  15. package/dist/src/codegen/__tests__/generate-doc-model.test.js +115 -88
  16. package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
  17. package/dist/src/codegen/__tests__/generate-drive-editor.test.js +6 -3
  18. package/dist/src/codegen/__tests__/generate-drive-editor.test.js.map +1 -1
  19. package/dist/src/codegen/__tests__/generate-editor.test.js +10 -7
  20. package/dist/src/codegen/__tests__/generate-editor.test.js.map +1 -1
  21. package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
  22. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +2 -0
  23. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +1 -0
  24. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +159 -0
  25. package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +1 -0
  26. package/dist/src/codegen/__tests__/ts-morph-generator.test.js +2 -1
  27. package/dist/src/codegen/__tests__/ts-morph-generator.test.js.map +1 -1
  28. package/dist/src/codegen/generate.d.ts +42 -6
  29. package/dist/src/codegen/generate.d.ts.map +1 -1
  30. package/dist/src/codegen/generate.js +212 -95
  31. package/dist/src/codegen/generate.js.map +1 -1
  32. package/dist/src/codegen/graphql.d.ts +20 -17
  33. package/dist/src/codegen/graphql.d.ts.map +1 -1
  34. package/dist/src/codegen/graphql.js +105 -78
  35. package/dist/src/codegen/graphql.js.map +1 -1
  36. package/dist/src/codegen/hygen.d.ts +1 -8
  37. package/dist/src/codegen/hygen.d.ts.map +1 -1
  38. package/dist/src/codegen/hygen.js +9 -69
  39. package/dist/src/codegen/hygen.js.map +1 -1
  40. package/dist/src/create-lib/create-project.d.ts +8 -27
  41. package/dist/src/create-lib/create-project.d.ts.map +1 -1
  42. package/dist/src/create-lib/create-project.js +79 -151
  43. package/dist/src/create-lib/create-project.js.map +1 -1
  44. package/dist/src/create-lib/utils.d.ts +1 -0
  45. package/dist/src/create-lib/utils.d.ts.map +1 -1
  46. package/dist/src/create-lib/utils.js +6 -0
  47. package/dist/src/create-lib/utils.js.map +1 -1
  48. package/dist/src/file-builders/boilerplate/build-package-json.test.d.ts +2 -0
  49. package/dist/src/file-builders/boilerplate/build-package-json.test.d.ts.map +1 -0
  50. package/dist/src/file-builders/boilerplate/build-package-json.test.js +28 -0
  51. package/dist/src/file-builders/boilerplate/build-package-json.test.js.map +1 -0
  52. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts +2 -0
  53. package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts.map +1 -0
  54. package/dist/src/file-builders/boilerplate/package-json-versions.test.js +34 -0
  55. package/dist/src/file-builders/boilerplate/package-json-versions.test.js.map +1 -0
  56. package/dist/src/file-builders/boilerplate/package.json.d.ts +6 -0
  57. package/dist/src/file-builders/boilerplate/package.json.d.ts.map +1 -0
  58. package/dist/src/file-builders/boilerplate/package.json.js +18 -0
  59. package/dist/src/file-builders/boilerplate/package.json.js.map +1 -0
  60. package/dist/src/file-builders/document-editor.d.ts +8 -0
  61. package/dist/src/file-builders/document-editor.d.ts.map +1 -0
  62. package/dist/src/file-builders/document-editor.js +57 -0
  63. package/dist/src/file-builders/document-editor.js.map +1 -0
  64. package/dist/src/file-builders/document-model/document-model.d.ts +8 -0
  65. package/dist/src/file-builders/document-model/document-model.d.ts.map +1 -0
  66. package/dist/src/file-builders/document-model/document-model.js +234 -0
  67. package/dist/src/file-builders/document-model/document-model.js.map +1 -0
  68. package/dist/src/file-builders/document-model/gen-dir.d.ts +3 -0
  69. package/dist/src/file-builders/document-model/gen-dir.d.ts.map +1 -0
  70. package/dist/src/file-builders/document-model/gen-dir.js +201 -0
  71. package/dist/src/file-builders/document-model/gen-dir.js.map +1 -0
  72. package/dist/src/file-builders/document-model/root-dir.d.ts +3 -0
  73. package/dist/src/file-builders/document-model/root-dir.d.ts.map +1 -0
  74. package/dist/src/file-builders/document-model/root-dir.js +51 -0
  75. package/dist/src/file-builders/document-model/root-dir.js.map +1 -0
  76. package/dist/src/file-builders/document-model/src-dir.d.ts +3 -0
  77. package/dist/src/file-builders/document-model/src-dir.d.ts.map +1 -0
  78. package/dist/src/file-builders/document-model/src-dir.js +118 -0
  79. package/dist/src/file-builders/document-model/src-dir.js.map +1 -0
  80. package/dist/src/file-builders/document-model/tests-dir.d.ts +3 -0
  81. package/dist/src/file-builders/document-model/tests-dir.d.ts.map +1 -0
  82. package/dist/src/file-builders/document-model/tests-dir.js +127 -0
  83. package/dist/src/file-builders/document-model/tests-dir.js.map +1 -0
  84. package/dist/src/file-builders/document-model/upgrades-dir.d.ts +31 -0
  85. package/dist/src/file-builders/document-model/upgrades-dir.d.ts.map +1 -0
  86. package/dist/src/file-builders/document-model/upgrades-dir.js +135 -0
  87. package/dist/src/file-builders/document-model/upgrades-dir.js.map +1 -0
  88. package/dist/src/file-builders/drive-editor.d.ts +9 -0
  89. package/dist/src/file-builders/drive-editor.d.ts.map +1 -0
  90. package/dist/src/file-builders/drive-editor.js +164 -0
  91. package/dist/src/file-builders/drive-editor.js.map +1 -0
  92. package/dist/src/file-builders/editor-common.d.ts +13 -0
  93. package/dist/src/file-builders/editor-common.d.ts.map +1 -0
  94. package/dist/src/file-builders/editor-common.js +26 -0
  95. package/dist/src/file-builders/editor-common.js.map +1 -0
  96. package/dist/src/file-builders/index-files.d.ts +18 -0
  97. package/dist/src/file-builders/index-files.d.ts.map +1 -0
  98. package/dist/src/file-builders/index-files.js +25 -0
  99. package/dist/src/file-builders/index-files.js.map +1 -0
  100. package/dist/src/file-builders/index.d.ts +10 -0
  101. package/dist/src/file-builders/index.d.ts.map +1 -0
  102. package/dist/src/file-builders/index.js +9 -0
  103. package/dist/src/file-builders/index.js.map +1 -0
  104. package/dist/src/file-builders/module-files.d.ts +32 -0
  105. package/dist/src/file-builders/module-files.d.ts.map +1 -0
  106. package/dist/src/file-builders/module-files.js +132 -0
  107. package/dist/src/file-builders/module-files.js.map +1 -0
  108. package/dist/src/file-builders/subgraphs.d.ts +6 -0
  109. package/dist/src/file-builders/subgraphs.d.ts.map +1 -0
  110. package/dist/src/file-builders/subgraphs.js +53 -0
  111. package/dist/src/file-builders/subgraphs.js.map +1 -0
  112. package/dist/src/file-builders/types.d.ts +66 -0
  113. package/dist/src/file-builders/types.d.ts.map +1 -0
  114. package/dist/src/file-builders/types.js +2 -0
  115. package/dist/src/file-builders/types.js.map +1 -0
  116. package/dist/src/index.d.ts +0 -1
  117. package/dist/src/index.d.ts.map +1 -1
  118. package/dist/src/index.js +0 -1
  119. package/dist/src/index.js.map +1 -1
  120. package/dist/src/name-builders/get-action-names.d.ts +6 -0
  121. package/dist/src/name-builders/get-action-names.d.ts.map +1 -0
  122. package/dist/src/name-builders/get-action-names.js +16 -0
  123. package/dist/src/name-builders/get-action-names.js.map +1 -0
  124. package/dist/src/name-builders/get-variable-names.d.ts +48 -0
  125. package/dist/src/name-builders/get-variable-names.d.ts.map +1 -0
  126. package/dist/src/name-builders/get-variable-names.js +147 -0
  127. package/dist/src/name-builders/get-variable-names.js.map +1 -0
  128. package/dist/src/name-builders/index.d.ts +3 -0
  129. package/dist/src/name-builders/index.d.ts.map +1 -0
  130. package/dist/src/name-builders/index.js +3 -0
  131. package/dist/src/name-builders/index.js.map +1 -0
  132. package/dist/src/templates/boilerplate/AGENTS.md.d.ts +2 -0
  133. package/dist/src/templates/boilerplate/AGENTS.md.d.ts.map +1 -0
  134. package/dist/src/templates/boilerplate/AGENTS.md.js +408 -0
  135. package/dist/src/templates/boilerplate/AGENTS.md.js.map +1 -0
  136. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts +2 -0
  137. package/dist/src/templates/boilerplate/CLAUDE.md.d.ts.map +1 -0
  138. package/dist/src/templates/boilerplate/CLAUDE.md.js +408 -0
  139. package/dist/src/templates/boilerplate/CLAUDE.md.js.map +1 -0
  140. package/dist/src/templates/boilerplate/LICENSE.d.ts +2 -0
  141. package/dist/src/templates/boilerplate/LICENSE.d.ts.map +1 -0
  142. package/{LICENSE → dist/src/templates/boilerplate/LICENSE.js} +4 -1
  143. package/dist/src/templates/boilerplate/LICENSE.js.map +1 -0
  144. package/dist/src/templates/boilerplate/README.md.d.ts +2 -0
  145. package/dist/src/templates/boilerplate/README.md.d.ts.map +1 -0
  146. package/dist/src/templates/boilerplate/README.md.js +194 -0
  147. package/dist/src/templates/boilerplate/README.md.js.map +1 -0
  148. package/dist/src/templates/boilerplate/claude/settings.local.json.d.ts +2 -0
  149. package/dist/src/templates/boilerplate/claude/settings.local.json.d.ts.map +1 -0
  150. package/dist/src/templates/boilerplate/claude/settings.local.json.js +18 -0
  151. package/dist/src/templates/boilerplate/claude/settings.local.json.js.map +1 -0
  152. package/dist/src/templates/boilerplate/cursor/mcp.json.d.ts +2 -0
  153. package/dist/src/templates/boilerplate/cursor/mcp.json.d.ts.map +1 -0
  154. package/dist/src/templates/boilerplate/cursor/mcp.json.js +12 -0
  155. package/dist/src/templates/boilerplate/cursor/mcp.json.js.map +1 -0
  156. package/dist/src/templates/boilerplate/document-models/document-models.d.ts +2 -0
  157. package/dist/src/templates/boilerplate/document-models/document-models.d.ts.map +1 -0
  158. package/dist/src/templates/boilerplate/document-models/document-models.js +7 -0
  159. package/dist/src/templates/boilerplate/document-models/document-models.js.map +1 -0
  160. package/dist/src/templates/boilerplate/document-models/index.d.ts +2 -0
  161. package/dist/src/templates/boilerplate/document-models/index.d.ts.map +1 -0
  162. package/dist/src/templates/boilerplate/document-models/index.js +2 -0
  163. package/dist/src/templates/boilerplate/document-models/index.js.map +1 -0
  164. package/dist/src/templates/boilerplate/editors/editors.d.ts +2 -0
  165. package/dist/src/templates/boilerplate/editors/editors.d.ts.map +1 -0
  166. package/dist/src/templates/boilerplate/editors/editors.js +7 -0
  167. package/dist/src/templates/boilerplate/editors/editors.js.map +1 -0
  168. package/dist/src/templates/boilerplate/editors/index.d.ts +2 -0
  169. package/dist/src/templates/boilerplate/editors/index.d.ts.map +1 -0
  170. package/dist/src/templates/boilerplate/editors/index.js +2 -0
  171. package/dist/src/templates/boilerplate/editors/index.js.map +1 -0
  172. package/dist/src/templates/boilerplate/eslint.config.js.d.ts +2 -0
  173. package/dist/src/templates/boilerplate/eslint.config.js.d.ts.map +1 -0
  174. package/dist/src/templates/boilerplate/eslint.config.js.js +140 -0
  175. package/dist/src/templates/boilerplate/eslint.config.js.js.map +1 -0
  176. package/dist/src/templates/boilerplate/gemini/settings.json.d.ts +2 -0
  177. package/dist/src/templates/boilerplate/gemini/settings.json.d.ts.map +1 -0
  178. package/dist/src/templates/boilerplate/gemini/settings.json.js +12 -0
  179. package/dist/src/templates/boilerplate/gemini/settings.json.js.map +1 -0
  180. package/dist/src/templates/boilerplate/gitignore.d.ts +2 -0
  181. package/dist/src/templates/boilerplate/gitignore.d.ts.map +1 -0
  182. package/dist/src/templates/boilerplate/gitignore.js +11 -0
  183. package/dist/src/templates/boilerplate/gitignore.js.map +1 -0
  184. package/dist/src/templates/boilerplate/index.d.ts +2 -0
  185. package/dist/src/templates/boilerplate/index.d.ts.map +1 -0
  186. package/dist/src/templates/boilerplate/index.html.d.ts +2 -0
  187. package/dist/src/templates/boilerplate/index.html.d.ts.map +1 -0
  188. package/dist/src/templates/boilerplate/index.html.js +33 -0
  189. package/dist/src/templates/boilerplate/index.html.js.map +1 -0
  190. package/dist/src/templates/boilerplate/index.html.legacy.d.ts +2 -0
  191. package/dist/src/templates/boilerplate/index.html.legacy.d.ts.map +1 -0
  192. package/dist/src/templates/boilerplate/index.html.legacy.js +36 -0
  193. package/dist/src/templates/boilerplate/index.html.legacy.js.map +1 -0
  194. package/dist/src/templates/boilerplate/index.js +9 -0
  195. package/dist/src/templates/boilerplate/index.js.map +1 -0
  196. package/dist/src/templates/boilerplate/mcp.json.d.ts +2 -0
  197. package/dist/src/templates/boilerplate/mcp.json.d.ts.map +1 -0
  198. package/dist/src/templates/boilerplate/mcp.json.js +12 -0
  199. package/dist/src/templates/boilerplate/mcp.json.js.map +1 -0
  200. package/dist/src/templates/boilerplate/npmrc.d.ts +2 -0
  201. package/dist/src/templates/boilerplate/npmrc.d.ts.map +1 -0
  202. package/dist/src/templates/boilerplate/npmrc.js +2 -0
  203. package/dist/src/templates/boilerplate/npmrc.js.map +1 -0
  204. package/dist/src/templates/boilerplate/package.json.d.ts +2 -0
  205. package/dist/src/templates/boilerplate/package.json.d.ts.map +1 -0
  206. package/dist/src/templates/boilerplate/package.json.js +115 -0
  207. package/dist/src/templates/boilerplate/package.json.js.map +1 -0
  208. package/dist/src/templates/boilerplate/package.json.legacy.d.ts +55 -0
  209. package/dist/src/templates/boilerplate/package.json.legacy.d.ts.map +1 -0
  210. package/dist/src/templates/boilerplate/package.json.legacy.js +55 -0
  211. package/dist/src/templates/boilerplate/package.json.legacy.js.map +1 -0
  212. package/dist/src/templates/boilerplate/powerhouse.config.json.d.ts +6 -0
  213. package/dist/src/templates/boilerplate/powerhouse.config.json.d.ts.map +1 -0
  214. package/dist/src/templates/boilerplate/powerhouse.config.json.js +46 -0
  215. package/dist/src/templates/boilerplate/powerhouse.config.json.js.map +1 -0
  216. package/dist/src/templates/boilerplate/powerhouse.manifest.json.d.ts +2 -0
  217. package/dist/src/templates/boilerplate/powerhouse.manifest.json.d.ts.map +1 -0
  218. package/dist/src/templates/boilerplate/powerhouse.manifest.json.js +19 -0
  219. package/dist/src/templates/boilerplate/powerhouse.manifest.json.js.map +1 -0
  220. package/dist/src/templates/boilerplate/processors/index.d.ts +2 -0
  221. package/dist/src/templates/boilerplate/processors/index.d.ts.map +1 -0
  222. package/dist/src/templates/boilerplate/processors/index.js +2 -0
  223. package/dist/src/templates/boilerplate/processors/index.js.map +1 -0
  224. package/dist/src/templates/boilerplate/style.css.d.ts +2 -0
  225. package/dist/src/templates/boilerplate/style.css.d.ts.map +1 -0
  226. package/dist/src/templates/boilerplate/style.css.js +17 -0
  227. package/dist/src/templates/boilerplate/style.css.js.map +1 -0
  228. package/dist/src/templates/boilerplate/subgraphs/index.d.ts +2 -0
  229. package/dist/src/templates/boilerplate/subgraphs/index.d.ts.map +1 -0
  230. package/dist/src/templates/boilerplate/subgraphs/index.js +2 -0
  231. package/dist/src/templates/boilerplate/subgraphs/index.js.map +1 -0
  232. package/dist/src/templates/boilerplate/tsconfig.json.d.ts +2 -0
  233. package/dist/src/templates/boilerplate/tsconfig.json.d.ts.map +1 -0
  234. package/dist/src/templates/boilerplate/tsconfig.json.js +46 -0
  235. package/dist/src/templates/boilerplate/tsconfig.json.js.map +1 -0
  236. package/dist/src/templates/boilerplate/vite.config.ts.d.ts +2 -0
  237. package/dist/src/templates/boilerplate/vite.config.ts.d.ts.map +1 -0
  238. package/dist/src/templates/boilerplate/vite.config.ts.js +21 -0
  239. package/dist/src/templates/boilerplate/vite.config.ts.js.map +1 -0
  240. package/dist/src/templates/boilerplate/vitest.config.ts.d.ts +2 -0
  241. package/dist/src/templates/boilerplate/vitest.config.ts.d.ts.map +1 -0
  242. package/dist/src/templates/boilerplate/vitest.config.ts.js +21 -0
  243. package/dist/src/templates/boilerplate/vitest.config.ts.js.map +1 -0
  244. package/dist/src/templates/document-editor/editor.d.ts +5 -0
  245. package/dist/src/templates/document-editor/editor.d.ts.map +1 -0
  246. package/dist/src/templates/document-editor/editor.js +78 -0
  247. package/dist/src/templates/document-editor/editor.js.map +1 -0
  248. package/dist/src/templates/document-editor/module.d.ts +7 -0
  249. package/dist/src/templates/document-editor/module.d.ts.map +1 -0
  250. package/dist/src/templates/document-editor/module.js +16 -0
  251. package/dist/src/templates/document-editor/module.js.map +1 -0
  252. package/dist/src/templates/document-model/actions.d.ts +3 -0
  253. package/dist/src/templates/document-model/actions.d.ts.map +1 -0
  254. package/dist/src/templates/document-model/actions.js +28 -0
  255. package/dist/src/templates/document-model/actions.js.map +1 -0
  256. package/dist/src/templates/document-model/gen/actions.d.ts +3 -0
  257. package/dist/src/templates/document-model/gen/actions.d.ts.map +1 -0
  258. package/dist/src/templates/document-model/gen/actions.js +40 -0
  259. package/dist/src/templates/document-model/gen/actions.js.map +1 -0
  260. package/dist/src/templates/document-model/gen/creators.d.ts +3 -0
  261. package/dist/src/templates/document-model/gen/creators.d.ts.map +1 -0
  262. package/dist/src/templates/document-model/gen/creators.js +16 -0
  263. package/dist/src/templates/document-model/gen/creators.js.map +1 -0
  264. package/dist/src/templates/document-model/gen/document-schema.d.ts +3 -0
  265. package/dist/src/templates/document-model/gen/document-schema.d.ts.map +1 -0
  266. package/dist/src/templates/document-model/gen/document-schema.js +56 -0
  267. package/dist/src/templates/document-model/gen/document-schema.js.map +1 -0
  268. package/dist/src/templates/document-model/gen/document-type.d.ts +3 -0
  269. package/dist/src/templates/document-model/gen/document-type.d.ts.map +1 -0
  270. package/dist/src/templates/document-model/gen/document-type.js +5 -0
  271. package/dist/src/templates/document-model/gen/document-type.js.map +1 -0
  272. package/dist/src/templates/document-model/gen/index.d.ts +3 -0
  273. package/dist/src/templates/document-model/gen/index.d.ts.map +1 -0
  274. package/dist/src/templates/document-model/gen/index.js +29 -0
  275. package/dist/src/templates/document-model/gen/index.js.map +1 -0
  276. package/dist/src/templates/document-model/gen/modules/actions.d.ts +8 -0
  277. package/dist/src/templates/document-model/gen/modules/actions.d.ts.map +1 -0
  278. package/dist/src/templates/document-model/gen/modules/actions.js +39 -0
  279. package/dist/src/templates/document-model/gen/modules/actions.js.map +1 -0
  280. package/dist/src/templates/document-model/gen/modules/creators.d.ts +3 -0
  281. package/dist/src/templates/document-model/gen/modules/creators.d.ts.map +1 -0
  282. package/dist/src/templates/document-model/gen/modules/creators.js +97 -0
  283. package/dist/src/templates/document-model/gen/modules/creators.js.map +1 -0
  284. package/dist/src/templates/document-model/gen/modules/error.d.ts +3 -0
  285. package/dist/src/templates/document-model/gen/modules/error.d.ts.map +1 -0
  286. package/dist/src/templates/document-model/gen/modules/error.js +73 -0
  287. package/dist/src/templates/document-model/gen/modules/error.js.map +1 -0
  288. package/dist/src/templates/document-model/gen/modules/operations.d.ts +3 -0
  289. package/dist/src/templates/document-model/gen/modules/operations.d.ts.map +1 -0
  290. package/dist/src/templates/document-model/gen/modules/operations.js +61 -0
  291. package/dist/src/templates/document-model/gen/modules/operations.js.map +1 -0
  292. package/dist/src/templates/document-model/gen/ph-factories.d.ts +3 -0
  293. package/dist/src/templates/document-model/gen/ph-factories.d.ts.map +1 -0
  294. package/dist/src/templates/document-model/gen/ph-factories.js +93 -0
  295. package/dist/src/templates/document-model/gen/ph-factories.js.map +1 -0
  296. package/dist/src/templates/document-model/gen/reducer.d.ts +3 -0
  297. package/dist/src/templates/document-model/gen/reducer.d.ts.map +1 -0
  298. package/dist/src/templates/document-model/gen/reducer.js +106 -0
  299. package/dist/src/templates/document-model/gen/reducer.js.map +1 -0
  300. package/dist/src/templates/document-model/gen/schema/index.d.ts +2 -0
  301. package/dist/src/templates/document-model/gen/schema/index.d.ts.map +1 -0
  302. package/dist/src/templates/document-model/gen/schema/index.js +6 -0
  303. package/dist/src/templates/document-model/gen/schema/index.js.map +1 -0
  304. package/dist/src/templates/document-model/gen/types.d.ts +3 -0
  305. package/dist/src/templates/document-model/gen/types.d.ts.map +1 -0
  306. package/dist/src/templates/document-model/gen/types.js +38 -0
  307. package/dist/src/templates/document-model/gen/types.js.map +1 -0
  308. package/dist/src/templates/document-model/gen/utils.d.ts +3 -0
  309. package/dist/src/templates/document-model/gen/utils.d.ts.map +1 -0
  310. package/dist/src/templates/document-model/gen/utils.js +77 -0
  311. package/dist/src/templates/document-model/gen/utils.js.map +1 -0
  312. package/dist/src/templates/document-model/hooks.d.ts +3 -0
  313. package/dist/src/templates/document-model/hooks.d.ts.map +1 -0
  314. package/dist/src/templates/document-model/hooks.js +52 -0
  315. package/dist/src/templates/document-model/hooks.js.map +1 -0
  316. package/dist/src/templates/document-model/index.d.ts +2 -0
  317. package/dist/src/templates/document-model/index.d.ts.map +1 -0
  318. package/dist/src/templates/document-model/index.js +9 -0
  319. package/dist/src/templates/document-model/index.js.map +1 -0
  320. package/dist/src/templates/document-model/module.d.ts +9 -0
  321. package/dist/src/templates/document-model/module.d.ts.map +1 -0
  322. package/dist/src/templates/document-model/module.js +26 -0
  323. package/dist/src/templates/document-model/module.js.map +1 -0
  324. package/dist/src/templates/document-model/src/index.d.ts +2 -0
  325. package/dist/src/templates/document-model/src/index.d.ts.map +1 -0
  326. package/dist/src/templates/document-model/src/index.js +5 -0
  327. package/dist/src/templates/document-model/src/index.js.map +1 -0
  328. package/dist/src/templates/document-model/src/tests/document-model.test.d.ts +3 -0
  329. package/dist/src/templates/document-model/src/tests/document-model.test.d.ts.map +1 -0
  330. package/dist/src/templates/document-model/src/tests/document-model.test.js +121 -0
  331. package/dist/src/templates/document-model/src/tests/document-model.test.js.map +1 -0
  332. package/dist/src/templates/document-model/src/tests/module.test.d.ts +6 -0
  333. package/dist/src/templates/document-model/src/tests/module.test.d.ts.map +1 -0
  334. package/dist/src/templates/document-model/src/tests/module.test.js +87 -0
  335. package/dist/src/templates/document-model/src/tests/module.test.js.map +1 -0
  336. package/dist/src/templates/document-model/src/utils.d.ts +2 -0
  337. package/dist/src/templates/document-model/src/utils.d.ts.map +1 -0
  338. package/dist/src/templates/document-model/src/utils.js +5 -0
  339. package/dist/src/templates/document-model/src/utils.js.map +1 -0
  340. package/dist/src/templates/document-model/upgrades/upgrade-transition.d.ts +7 -0
  341. package/dist/src/templates/document-model/upgrades/upgrade-transition.d.ts.map +1 -0
  342. package/dist/src/templates/document-model/upgrades/upgrade-transition.js +22 -0
  343. package/dist/src/templates/document-model/upgrades/upgrade-transition.js.map +1 -0
  344. package/dist/src/templates/document-model/utils.d.ts +3 -0
  345. package/dist/src/templates/document-model/utils.d.ts.map +1 -0
  346. package/dist/src/templates/document-model/utils.js +11 -0
  347. package/dist/src/templates/document-model/utils.js.map +1 -0
  348. package/dist/src/templates/drive-editor/components/CreateDocument.d.ts +2 -0
  349. package/dist/src/templates/drive-editor/components/CreateDocument.d.ts.map +1 -0
  350. package/dist/src/templates/drive-editor/components/CreateDocument.js +58 -0
  351. package/dist/src/templates/drive-editor/components/CreateDocument.js.map +1 -0
  352. package/dist/src/templates/drive-editor/components/DriveContents.d.ts +2 -0
  353. package/dist/src/templates/drive-editor/components/DriveContents.d.ts.map +1 -0
  354. package/dist/src/templates/drive-editor/components/DriveContents.js +24 -0
  355. package/dist/src/templates/drive-editor/components/DriveContents.js.map +1 -0
  356. package/dist/src/templates/drive-editor/components/DriveExplorer.d.ts +2 -0
  357. package/dist/src/templates/drive-editor/components/DriveExplorer.d.ts.map +1 -0
  358. package/dist/src/templates/drive-editor/components/DriveExplorer.js +32 -0
  359. package/dist/src/templates/drive-editor/components/DriveExplorer.js.map +1 -0
  360. package/dist/src/templates/drive-editor/components/EmptyState.d.ts +2 -0
  361. package/dist/src/templates/drive-editor/components/EmptyState.d.ts.map +1 -0
  362. package/dist/src/templates/drive-editor/components/EmptyState.js +19 -0
  363. package/dist/src/templates/drive-editor/components/EmptyState.js.map +1 -0
  364. package/dist/src/templates/drive-editor/components/Files.d.ts +2 -0
  365. package/dist/src/templates/drive-editor/components/Files.d.ts.map +1 -0
  366. package/dist/src/templates/drive-editor/components/Files.js +30 -0
  367. package/dist/src/templates/drive-editor/components/Files.js.map +1 -0
  368. package/dist/src/templates/drive-editor/components/FolderTree.d.ts +2 -0
  369. package/dist/src/templates/drive-editor/components/FolderTree.d.ts.map +1 -0
  370. package/dist/src/templates/drive-editor/components/FolderTree.js +108 -0
  371. package/dist/src/templates/drive-editor/components/FolderTree.js.map +1 -0
  372. package/dist/src/templates/drive-editor/components/Folders.d.ts +2 -0
  373. package/dist/src/templates/drive-editor/components/Folders.d.ts.map +1 -0
  374. package/dist/src/templates/drive-editor/components/Folders.js +28 -0
  375. package/dist/src/templates/drive-editor/components/Folders.js.map +1 -0
  376. package/dist/src/templates/drive-editor/components/NavigationBreadcrumbs.d.ts +2 -0
  377. package/dist/src/templates/drive-editor/components/NavigationBreadcrumbs.d.ts.map +1 -0
  378. package/dist/src/templates/drive-editor/components/NavigationBreadcrumbs.js +14 -0
  379. package/dist/src/templates/drive-editor/components/NavigationBreadcrumbs.js.map +1 -0
  380. package/dist/src/templates/drive-editor/config.d.ts +5 -0
  381. package/dist/src/templates/drive-editor/config.d.ts.map +1 -0
  382. package/dist/src/templates/drive-editor/config.js +11 -0
  383. package/dist/src/templates/drive-editor/config.js.map +1 -0
  384. package/dist/src/templates/drive-editor/editor.d.ts +2 -0
  385. package/dist/src/templates/drive-editor/editor.d.ts.map +1 -0
  386. package/dist/src/templates/drive-editor/editor.js +18 -0
  387. package/dist/src/templates/drive-editor/editor.js.map +1 -0
  388. package/dist/src/templates/index.d.ts +65 -0
  389. package/dist/src/templates/index.d.ts.map +1 -0
  390. package/dist/src/templates/index.js +65 -0
  391. package/dist/src/templates/index.js.map +1 -0
  392. package/dist/src/utils/constants.d.ts +13 -0
  393. package/dist/src/utils/constants.d.ts.map +1 -0
  394. package/dist/src/utils/constants.js +29 -0
  395. package/dist/src/utils/constants.js.map +1 -0
  396. package/dist/src/utils/dependencies.d.ts +12 -0
  397. package/dist/src/utils/dependencies.d.ts.map +1 -0
  398. package/dist/src/utils/dependencies.js +34 -0
  399. package/dist/src/utils/dependencies.js.map +1 -0
  400. package/dist/src/utils/document-type-metadata.d.ts +15 -0
  401. package/dist/src/utils/document-type-metadata.d.ts.map +1 -0
  402. package/dist/src/utils/document-type-metadata.js +67 -0
  403. package/dist/src/utils/document-type-metadata.js.map +1 -0
  404. package/dist/src/utils/format-with-prettier.d.ts +5 -0
  405. package/dist/src/utils/format-with-prettier.d.ts.map +1 -0
  406. package/dist/src/utils/format-with-prettier.js +20 -0
  407. package/dist/src/utils/format-with-prettier.js.map +1 -0
  408. package/dist/src/utils/index.d.ts +10 -0
  409. package/dist/src/utils/index.d.ts.map +1 -1
  410. package/dist/src/utils/index.js +10 -0
  411. package/dist/src/utils/index.js.map +1 -1
  412. package/dist/src/utils/mock.d.ts +2 -3
  413. package/dist/src/utils/mock.d.ts.map +1 -1
  414. package/dist/src/utils/mock.js +4 -4
  415. package/dist/src/utils/mock.js.map +1 -1
  416. package/dist/src/utils/source-files.d.ts +18 -0
  417. package/dist/src/utils/source-files.d.ts.map +1 -0
  418. package/dist/src/utils/source-files.js +39 -0
  419. package/dist/src/utils/source-files.js.map +1 -0
  420. package/dist/src/utils/spawn-async.d.ts +5 -0
  421. package/dist/src/utils/spawn-async.d.ts.map +1 -0
  422. package/dist/src/utils/spawn-async.js +29 -0
  423. package/dist/src/utils/spawn-async.js.map +1 -0
  424. package/dist/src/utils/syntax-builders.d.ts +8 -0
  425. package/dist/src/utils/syntax-builders.d.ts.map +1 -0
  426. package/dist/src/utils/syntax-builders.js +72 -0
  427. package/dist/src/utils/syntax-builders.js.map +1 -0
  428. package/dist/src/utils/syntax-getters.d.ts +9 -0
  429. package/dist/src/utils/syntax-getters.d.ts.map +1 -0
  430. package/dist/src/utils/syntax-getters.js +20 -0
  431. package/dist/src/utils/syntax-getters.js.map +1 -0
  432. package/dist/src/utils/ts-morph-project.d.ts +15 -0
  433. package/dist/src/utils/ts-morph-project.d.ts.map +1 -0
  434. package/dist/src/utils/ts-morph-project.js +28 -0
  435. package/dist/src/utils/ts-morph-project.js.map +1 -0
  436. package/dist/src/utils/unsafe-utils.d.ts +8 -0
  437. package/dist/src/utils/unsafe-utils.d.ts.map +1 -0
  438. package/dist/src/utils/unsafe-utils.js +23 -0
  439. package/dist/src/utils/unsafe-utils.js.map +1 -0
  440. package/dist/tsconfig.tsbuildinfo +1 -1
  441. package/dist/vitest.config.d.ts.map +1 -1
  442. package/dist/vitest.config.js +4 -1
  443. package/dist/vitest.config.js.map +1 -1
  444. package/package.json +44 -16
  445. package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/edit-name.esm.t +0 -78
  446. package/dist/src/codegen/__tests__/generate-schemas.test.d.ts +0 -2
  447. package/dist/src/codegen/__tests__/generate-schemas.test.d.ts.map +0 -1
  448. package/dist/src/codegen/__tests__/generate-schemas.test.js +0 -143
  449. package/dist/src/codegen/__tests__/generate-schemas.test.js.map +0 -1
  450. package/dist/src/ts-morph-utils.d.ts +0 -48
  451. package/dist/src/ts-morph-utils.d.ts.map +0 -1
  452. package/dist/src/ts-morph-utils.js +0 -207
  453. package/dist/src/ts-morph-utils.js.map +0 -1
@@ -0,0 +1,78 @@
1
+ import { tsx } from "@tmpl/core";
2
+ export const documentEditorEditorFileTemplate = (v) => tsx `
3
+ import { DocumentToolbar } from "@powerhousedao/design-system/connect";
4
+ import { setName } from "document-model";
5
+ import { type FormEvent, useState } from "react";
6
+ import { ${v.useSelectedDocumentHookName} } from "${v.documentModelImportPath}";
7
+
8
+ export default function Editor() {
9
+ const [document, dispatch] = ${v.useSelectedDocumentHookName}();
10
+ const [isEditing, setIsEditing] = useState(false);
11
+
12
+ const handleSubmit = (event: FormEvent<HTMLFormElement>) => {
13
+ event.preventDefault();
14
+ const form = event.currentTarget;
15
+ const nameInput = form.elements.namedItem("name") as HTMLInputElement;
16
+ const name = nameInput.value.trim();
17
+ if (!name) return;
18
+ dispatch(setName(name));
19
+ setIsEditing(false);
20
+ };
21
+
22
+ return (
23
+ <div className="min-h-screen bg-gray-50">
24
+ <DocumentToolbar />
25
+ <div className="ph-default-styles">
26
+ <div className="flex justify-center px-4 py-8">
27
+ <div className="w-full max-w-md rounded-xl bg-white p-6 shadow-sm">
28
+ <div className="mb-4 text-xs font-medium uppercase tracking-wide text-gray-400">
29
+ ${v.documentModelDocumentTypeName}
30
+ </div>
31
+
32
+ {isEditing ? (
33
+ <form onSubmit={handleSubmit} className="space-y-4">
34
+ <input
35
+ type="text"
36
+ name="name"
37
+ defaultValue={document.header.name}
38
+ autoFocus
39
+ className="w-full rounded-lg border border-gray-200 px-4 py-3 text-lg font-semibold text-gray-900 outline-none transition-colors focus:border-blue-500 focus:ring-2 focus:ring-blue-100"
40
+ placeholder="Enter name..."
41
+ />
42
+ <div className="flex gap-2">
43
+ <button
44
+ type="submit"
45
+ className="flex-1 rounded-lg bg-blue-600 px-4 py-2.5 text-sm font-medium text-white transition-colors hover:bg-blue-700"
46
+ >
47
+ Save
48
+ </button>
49
+ <button
50
+ type="button"
51
+ onClick={() => setIsEditing(false)}
52
+ className="flex-1 rounded-lg border border-gray-200 px-4 py-2.5 text-sm font-medium text-gray-600 transition-colors hover:bg-gray-50"
53
+ >
54
+ Cancel
55
+ </button>
56
+ </div>
57
+ </form>
58
+ ) : (
59
+ <div className="flex items-center justify-between gap-4">
60
+ <h2 className="truncate text-xl font-semibold text-gray-900">
61
+ {document.header.name || "Untitled"}
62
+ </h2>
63
+ <button
64
+ onClick={() => setIsEditing(true)}
65
+ className="shrink-0 rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200"
66
+ >
67
+ Edit
68
+ </button>
69
+ </div>
70
+ )}
71
+ </div>
72
+ </div>
73
+ </div>
74
+ </div>
75
+ );
76
+ }
77
+ `.raw;
78
+ //# sourceMappingURL=editor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../../../src/templates/document-editor/editor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,CAEC,EACD,EAAE,CACF,GAAG,CAAA;;;;WAIM,CAAC,CAAC,2BAA2B,YAAY,CAAC,CAAC,uBAAuB;;;iCAG5C,CAAC,CAAC,2BAA2B;;;;;;;;;;;;;;;;;;;;gBAoB9C,CAAC,CAAC,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgD9C,CAAC,GAAG,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const documentEditorModuleFileTemplate: (v: {
2
+ editorName: string;
3
+ pascalCaseEditorName: string;
4
+ editorId: string;
5
+ documentTypes: string;
6
+ }) => string;
7
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../../src/templates/document-editor/module.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gCAAgC,GAAI,GAAG;IAClD,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;CACvB,WAcI,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { tsx } from "@tmpl/core";
2
+ export const documentEditorModuleFileTemplate = (v) => tsx `
3
+ import type { EditorModule } from "document-model";
4
+ import { lazy } from "react";
5
+
6
+ /** Document editor module for the "${v.documentTypes}" document type */
7
+ export const ${v.pascalCaseEditorName}: EditorModule = {
8
+ Component: lazy(() => import("./editor.js")),
9
+ documentTypes: ${v.documentTypes},
10
+ config: {
11
+ id: "${v.editorId}",
12
+ name: "${v.editorName}",
13
+ },
14
+ };
15
+ `.raw;
16
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../../src/templates/document-editor/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAKhD,EAAE,EAAE,CACH,GAAG,CAAA;;;;sCAIiC,CAAC,CAAC,aAAa;eACtC,CAAC,CAAC,oBAAoB;;qBAEhB,CAAC,CAAC,aAAa;;eAErB,CAAC,CAAC,QAAQ;iBACR,CAAC,CAAC,UAAU;;;CAG5B,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelRootActionsFileTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/templates/document-model/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AA0BxF,eAAO,MAAM,oCAAoC,GAC/C,GAAG,2BAA2B,WAQ3B,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { camelCase } from "change-case";
3
+ function buildModuleActionsName(module) {
4
+ const camelCaseModuleName = camelCase(module.name);
5
+ return `${camelCaseModuleName}Actions`;
6
+ }
7
+ function buildModuleActionsNames(modules) {
8
+ return modules.map(buildModuleActionsName);
9
+ }
10
+ function buildModuleActionsImports(modules) {
11
+ const actionNames = buildModuleActionsNames(modules).join(",\n");
12
+ return `import { ${actionNames} } from "./gen/creators.js";`;
13
+ }
14
+ function buildModuleActionsSpreadExport(modules) {
15
+ const spreadActionNames = buildModuleActionsNames(modules)
16
+ .map((n) => `...${n}`)
17
+ .join(",\n");
18
+ return `
19
+ export const actions = { ...baseActions, ${spreadActionNames} }`;
20
+ }
21
+ export const documentModelRootActionsFileTemplate = (v) => ts `
22
+ import { baseActions } from "document-model";
23
+ ${buildModuleActionsImports(v.modules)}
24
+
25
+ /** Actions for the ${v.pascalCaseDocumentType} document model */
26
+ ${buildModuleActionsSpreadExport(v.modules)}
27
+ `.raw;
28
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../src/templates/document-model/actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,SAAS,sBAAsB,CAAC,MAA2B;IACzD,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,GAAG,mBAAmB,SAAS,CAAC;AACzC,CAAC;AAED,SAAS,uBAAuB,CAAC,OAA8B;IAC7D,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA8B;IAC/D,MAAM,WAAW,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjE,OAAO,YAAY,WAAW,8BAA8B,CAAC;AAC/D,CAAC;AAED,SAAS,8BAA8B,CAAC,OAA8B;IACpE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,OAAO,CAAC;SACvD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACrB,IAAI,CAAC,KAAK,CAAC,CAAC;IACf,OAAO;2CACkC,iBAAiB,IAAI,CAAC;AACjE,CAAC;AACD,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;;EAEF,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC;;sBAEhB,CAAC,CAAC,sBAAsB;EAC5C,8BAA8B,CAAC,CAAC,CAAC,OAAO,CAAC;CAC1C,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelGenActionsFileTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AA4DxF,eAAO,MAAM,mCAAmC,GAC9C,GAAG,2BAA2B,WAQ3B,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { paramCase, pascalCase } from "change-case";
3
+ function makeModuleActionsTypeImport(module, pascalCaseDocumentType) {
4
+ const pascalCaseModuleName = pascalCase(module.name);
5
+ const paramCaseModuleName = paramCase(module.name);
6
+ return `import type { ${pascalCaseDocumentType}${pascalCaseModuleName}Action } from "./${paramCaseModuleName}/actions.js";`;
7
+ }
8
+ function makeModuleActionsTypeImports(modules, pascalCaseDocumentType) {
9
+ return modules
10
+ .map((module) => makeModuleActionsTypeImport(module, pascalCaseDocumentType))
11
+ .join("\n");
12
+ }
13
+ function makeModuleActionsTypeExport(module) {
14
+ const paramCaseModuleName = paramCase(module.name);
15
+ return `export * from "./${paramCaseModuleName}/actions.js";`;
16
+ }
17
+ function makeModuleActionsTypeExports(modules) {
18
+ return modules.map(makeModuleActionsTypeExport).join("\n");
19
+ }
20
+ function makeModuleActionTypeName(module, pascalCaseDocumentType) {
21
+ const pascalCaseModuleName = pascalCase(module.name);
22
+ return `${pascalCaseDocumentType}${pascalCaseModuleName}Action`;
23
+ }
24
+ function makeModuleActionTypesUnion(modules, pascalCaseDocumentType) {
25
+ return modules
26
+ .map((module) => makeModuleActionTypeName(module, pascalCaseDocumentType))
27
+ .join("|\n");
28
+ }
29
+ function makeDocumentActionType(modules, pascalCaseDocumentType) {
30
+ const actionTypeUnion = makeModuleActionTypesUnion(modules, pascalCaseDocumentType);
31
+ return `export type ${pascalCaseDocumentType}Action = ${actionTypeUnion};`;
32
+ }
33
+ export const documentModelGenActionsFileTemplate = (v) => ts `
34
+ ${makeModuleActionsTypeImports(v.modules, v.pascalCaseDocumentType)}
35
+
36
+ ${makeModuleActionsTypeExports(v.modules)}
37
+
38
+ ${makeDocumentActionType(v.modules, v.pascalCaseDocumentType)}
39
+ `.raw;
40
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGpD,SAAS,2BAA2B,CAClC,MAA2B,EAC3B,sBAA8B;IAE9B,MAAM,oBAAoB,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,iBAAiB,sBAAsB,GAAG,oBAAoB,oBAAoB,mBAAmB,eAAe,CAAC;AAC9H,CAAC;AACD,SAAS,4BAA4B,CACnC,OAA8B,EAC9B,sBAA8B;IAE9B,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACd,2BAA2B,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAC5D;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAAC,MAA2B;IAC9D,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,oBAAoB,mBAAmB,eAAe,CAAC;AAChE,CAAC;AAED,SAAS,4BAA4B,CAAC,OAA8B;IAClE,OAAO,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,wBAAwB,CAC/B,MAA2B,EAC3B,sBAA8B;IAE9B,MAAM,oBAAoB,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrD,OAAO,GAAG,sBAAsB,GAAG,oBAAoB,QAAQ,CAAC;AAClE,CAAC;AAED,SAAS,0BAA0B,CACjC,OAA8B,EAC9B,sBAA8B;IAE9B,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;SACzE,IAAI,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAA8B,EAC9B,sBAA8B;IAE9B,MAAM,eAAe,GAAG,0BAA0B,CAChD,OAAO,EACP,sBAAsB,CACvB,CAAC;IACF,OAAO,eAAe,sBAAsB,YAAY,eAAe,GAAG,CAAC;AAC7E,CAAC;AACD,MAAM,CAAC,MAAM,mCAAmC,GAAG,CACjD,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;EACF,4BAA4B,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,sBAAsB,CAAC;;EAEjE,4BAA4B,CAAC,CAAC,CAAC,OAAO,CAAC;;EAEvC,sBAAsB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,sBAAsB,CAAC;CAC5D,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelGenCreatorsFileTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=creators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.d.ts","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/creators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAgBxF,eAAO,MAAM,oCAAoC,GAC/C,GAAG,2BAA2B,WAI3B,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { camelCase, paramCase } from "change-case";
3
+ function buildModuleCreatorsExport(module) {
4
+ const paramCaseModuleName = paramCase(module.name);
5
+ const camelCaseModuleName = camelCase(module.name);
6
+ const moduleCreatorsExport = `export * from "./${paramCaseModuleName}/creators.js";`;
7
+ const moduleCreatorsNamespaceExport = `export * as ${camelCaseModuleName}Actions from "./${paramCaseModuleName}/creators.js";`;
8
+ return [moduleCreatorsExport, moduleCreatorsNamespaceExport];
9
+ }
10
+ function buildCreatorsExports(modules) {
11
+ return modules.flatMap(buildModuleCreatorsExport).join("\n");
12
+ }
13
+ export const documentModelGenCreatorsFileTemplate = (v) => ts `
14
+ ${buildCreatorsExports(v.modules)}
15
+ `.raw;
16
+ //# sourceMappingURL=creators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.js","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/creators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGnD,SAAS,yBAAyB,CAAC,MAA2B;IAC5D,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,mBAAmB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,oBAAoB,mBAAmB,gBAAgB,CAAC;IACrF,MAAM,6BAA6B,GAAG,eAAe,mBAAmB,mBAAmB,mBAAmB,gBAAgB,CAAC;IAE/H,OAAO,CAAC,oBAAoB,EAAE,6BAA6B,CAAC,CAAC;AAC/D,CAAC;AACD,SAAS,oBAAoB,CAAC,OAA8B;IAC1D,OAAO,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AACD,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;EACF,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC;CAChC,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelDocumentSchemaFileTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=document-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-schema.d.ts","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/document-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAGxF,eAAO,MAAM,uCAAuC,GAClD,GAAG,2BAA2B,WAuD3B,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { ts } from "@tmpl/core";
2
+ export const documentModelDocumentSchemaFileTemplate = (v) => ts `
3
+ import {
4
+ BaseDocumentHeaderSchema,
5
+ BaseDocumentStateSchema,
6
+ } from "document-model";
7
+ import { z } from "zod";
8
+ import { ${v.documentTypeVariableName} } from "./document-type.js";
9
+ import { ${v.stateSchemaName} } from "./schema/zod.js";
10
+ import type { ${v.phDocumentTypeName}, ${v.phStateName} } from "./types.js";
11
+
12
+ /** Schema for validating the header object of a ${v.pascalCaseDocumentType} document */
13
+ export const ${v.phDocumentTypeName}HeaderSchema = BaseDocumentHeaderSchema.extend({
14
+ documentType: z.literal(${v.documentTypeVariableName}),
15
+ });
16
+
17
+ /** Schema for validating the state object of a ${v.pascalCaseDocumentType} document */
18
+ export const ${v.phStateName}Schema = BaseDocumentStateSchema.extend({
19
+ global: ${v.stateSchemaName}(),
20
+ });
21
+
22
+ export const ${v.phDocumentSchemaName} = z.object({
23
+ header: ${v.phDocumentTypeName}HeaderSchema,
24
+ state: ${v.phStateName}Schema,
25
+ initialState: ${v.phStateName}Schema,
26
+ });
27
+
28
+ /** Simple helper function to check if a state object is a ${v.pascalCaseDocumentType} document state object */
29
+ export function ${v.isPhStateOfTypeFunctionName}(
30
+ state: unknown,
31
+ ): state is ${v.phStateName} {
32
+ return ${v.phStateName}Schema.safeParse(state).success;
33
+ }
34
+
35
+ /** Simple helper function to assert that a document state object is a ${v.pascalCaseDocumentType} document state object */
36
+ export function ${v.assertIsPhStateOfTypeFunctionName}(
37
+ state: unknown,
38
+ ): asserts state is ${v.phStateName} {
39
+ ${v.phStateName}Schema.parse(state);
40
+ }
41
+
42
+ /** Simple helper function to check if a document is a ${v.pascalCaseDocumentType} document */
43
+ export function ${v.isPhDocumentOfTypeFunctionName}(
44
+ document: unknown,
45
+ ): document is ${v.phDocumentTypeName} {
46
+ return ${v.phDocumentSchemaName}.safeParse(document).success;
47
+ }
48
+
49
+ /** Simple helper function to assert that a document is a ${v.pascalCaseDocumentType} document */
50
+ export function ${v.assertIsPhDocumentOfTypeFunctionName}(
51
+ document: unknown,
52
+ ): asserts document is ${v.phDocumentTypeName} {
53
+ ${v.phDocumentSchemaName}.parse(document);
54
+ }
55
+ `.raw;
56
+ //# sourceMappingURL=document-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-schema.js","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/document-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,uCAAuC,GAAG,CACrD,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;;;;;;WAMO,CAAC,CAAC,wBAAwB;WAC1B,CAAC,CAAC,eAAe;gBACZ,CAAC,CAAC,kBAAkB,KAAK,CAAC,CAAC,WAAW;;mDAEH,CAAC,CAAC,sBAAsB;eAC5D,CAAC,CAAC,kBAAkB;4BACP,CAAC,CAAC,wBAAwB;;;kDAGJ,CAAC,CAAC,sBAAsB;eAC3D,CAAC,CAAC,WAAW;YAChB,CAAC,CAAC,eAAe;;;eAGd,CAAC,CAAC,oBAAoB;YACzB,CAAC,CAAC,kBAAkB;WACrB,CAAC,CAAC,WAAW;kBACN,CAAC,CAAC,WAAW;;;6DAG8B,CAAC,CAAC,sBAAsB;kBACnE,CAAC,CAAC,2BAA2B;;cAEjC,CAAC,CAAC,WAAW;WAChB,CAAC,CAAC,WAAW;;;yEAGiD,CAAC,CAAC,sBAAsB;kBAC/E,CAAC,CAAC,iCAAiC;;sBAE/B,CAAC,CAAC,WAAW;IAC/B,CAAC,CAAC,WAAW;;;yDAGwC,CAAC,CAAC,sBAAsB;kBAC/D,CAAC,CAAC,8BAA8B;;iBAEjC,CAAC,CAAC,kBAAkB;WAC1B,CAAC,CAAC,oBAAoB;;;4DAG2B,CAAC,CAAC,sBAAsB;kBAClE,CAAC,CAAC,oCAAoC;;yBAE/B,CAAC,CAAC,kBAAkB;IACzC,CAAC,CAAC,oBAAoB;;CAEzB,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelDocumentTypeTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=document-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-type.d.ts","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/document-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAGxF,eAAO,MAAM,iCAAiC,GAC5C,GAAG,2BAA2B,WAI3B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { ts } from "@tmpl/core";
2
+ export const documentModelDocumentTypeTemplate = (v) => ts `
3
+ export const ${v.documentTypeVariableName} = "${v.documentTypeId}";
4
+ `.raw;
5
+ //# sourceMappingURL=document-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-type.js","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/document-type.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAC/C,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;eACW,CAAC,CAAC,wBAAwB,OAAO,CAAC,CAAC,cAAc;CAC/D,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputs } from "@powerhousedao/codegen/file-builders";
2
+ export declare const documentModelGenIndexFileTemplate: (v: DocumentModelTemplateInputs) => string;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAcxF,eAAO,MAAM,iCAAiC,GAC5C,GAAG,2BAA2B,WAoB3B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { paramCase } from "change-case";
3
+ function buildModuleOperationsExports(module) {
4
+ const moduleDirName = paramCase(module.name);
5
+ return `export * from "./${moduleDirName}/operations.js";`;
6
+ }
7
+ function buildModulesOperationsExports(modules) {
8
+ return modules.map(buildModuleOperationsExports).join("\n");
9
+ }
10
+ export const documentModelGenIndexFileTemplate = (v) => ts `
11
+ export * from './actions.js';
12
+ export * from './document-model.js';
13
+ export * from './types.js';
14
+ export * from './creators.js';
15
+ export {
16
+ create${v.phDocumentTypeName},
17
+ createState,
18
+ defaultPHState,
19
+ defaultGlobalState,
20
+ defaultLocalState,
21
+ } from './ph-factories.js';
22
+ export * from "./utils.js";
23
+ export * from "./reducer.js";
24
+ export * from "./schema/index.js";
25
+ export * from "./document-type.js";
26
+ export * from "./document-schema.js";
27
+ ${buildModulesOperationsExports(v.modules)}
28
+ `.raw;
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/templates/document-model/gen/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,SAAS,4BAA4B,CAAC,MAA2B;IAC/D,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7C,OAAO,oBAAoB,aAAa,kBAAkB,CAAC;AAC7D,CAAC;AAED,SAAS,6BAA6B,CAAC,OAA8B;IACnE,OAAO,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAC/C,CAA8B,EAC9B,EAAE,CACF,EAAE,CAAA;;;;;;UAMM,CAAC,CAAC,kBAAkB;;;;;;;;;;;EAW5B,6BAA6B,CAAC,CAAC,CAAC,OAAO,CAAC;CACzC,CAAC,GAAG,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { ActionFromOperation } from "@powerhousedao/codegen";
2
+ export declare function getModuleExportType(actions: ActionFromOperation[], pascalCaseDocumentName: string, pascalCaseModuleName: string): string;
3
+ export declare const documentModelOperationModuleActionsFileTemplate: (v: {
4
+ actions: ActionFromOperation[];
5
+ pascalCaseDocumentType: string;
6
+ pascalCaseModuleName: string;
7
+ }) => string;
8
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../../src/templates/document-model/gen/modules/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAyBlE,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,mBAAmB,EAAE,EAC9B,sBAAsB,EAAE,MAAM,EAC9B,oBAAoB,EAAE,MAAM,UAK7B;AAUD,eAAO,MAAM,+CAA+C,GAAI,GAAG;IACjE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,WAcI,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { getActionInputName, getActionInputTypeNames, getActionType, getActionTypeName, } from "@powerhousedao/codegen/name-builders";
3
+ function getActionTypeExport(action) {
4
+ const baseActionTypeName = action.hasAttachment
5
+ ? "ActionWithAttachment"
6
+ : "Action";
7
+ const actionTypeName = getActionTypeName(action);
8
+ const actionInputName = getActionInputName(action) ?? `"{}"`;
9
+ const actionType = getActionType(action);
10
+ return ts `export type ${actionTypeName} = ${baseActionTypeName} & { type: "${actionType}"; input: ${actionInputName} };`
11
+ .raw;
12
+ }
13
+ function getActionTypeExports(actions) {
14
+ return actions.map(getActionTypeExport).join("\n");
15
+ }
16
+ export function getModuleExportType(actions, pascalCaseDocumentName, pascalCaseModuleName) {
17
+ const actionTypeNames = actions.map(getActionTypeName).join(" |\n");
18
+ return ts `export type ${pascalCaseDocumentName}${pascalCaseModuleName}Action = ${actionTypeNames};`
19
+ .raw;
20
+ }
21
+ function getDocumentModelActionTypeImportNames(actions) {
22
+ const actionTypeImports = ["Action"];
23
+ const anyActionHasAttachment = actions.some((a) => a.hasAttachment);
24
+ if (anyActionHasAttachment) {
25
+ actionTypeImports.push("ActionWithAttachment");
26
+ }
27
+ return actionTypeImports.join(",\n");
28
+ }
29
+ export const documentModelOperationModuleActionsFileTemplate = (v) => ts `
30
+ import type { ${getDocumentModelActionTypeImportNames(v.actions)} } from 'document-model';
31
+ import type {
32
+ ${getActionInputTypeNames(v.actions)}
33
+ } from '../types.js';
34
+
35
+ ${getActionTypeExports(v.actions)}
36
+
37
+ ${getModuleExportType(v.actions, v.pascalCaseDocumentType, v.pascalCaseModuleName)}
38
+ `.raw;
39
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../../../src/templates/document-model/gen/modules/actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,GAClB,MAAM,sCAAsC,CAAC;AAE9C,SAAS,mBAAmB,CAAC,MAA2B;IACtD,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa;QAC7C,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,QAAQ,CAAC;IACb,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;IAC7D,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEzC,OAAO,EAAE,CAAA,eAAe,cAAc,MAAM,kBAAkB,eAAe,UAAU,aAAa,eAAe,KAAK;SACrH,GAAG,CAAC;AACT,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA8B;IAC1D,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAA8B,EAC9B,sBAA8B,EAC9B,oBAA4B;IAE5B,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpE,OAAO,EAAE,CAAA,eAAe,sBAAsB,GAAG,oBAAoB,YAAY,eAAe,GAAG;SAChG,GAAG,CAAC;AACT,CAAC;AAED,SAAS,qCAAqC,CAAC,OAA8B;IAC3E,MAAM,iBAAiB,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IACpE,IAAI,sBAAsB,EAAE,CAAC;QAC3B,iBAAiB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AACD,MAAM,CAAC,MAAM,+CAA+C,GAAG,CAAC,CAI/D,EAAE,EAAE,CACH,EAAE,CAAA;gBACY,qCAAqC,CAAC,CAAC,CAAC,OAAO,CAAC;;IAE5D,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC;;;EAGpC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC;;EAE/B,mBAAmB,CACnB,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,sBAAsB,EACxB,CAAC,CAAC,oBAAoB,CACvB;CACA,CAAC,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputsWithModule } from "@powerhousedao/codegen";
2
+ export declare const documentModelOperationsModuleCreatorsFileTemplate: (v: DocumentModelTemplateInputsWithModule) => string;
3
+ //# sourceMappingURL=creators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.d.ts","sourceRoot":"","sources":["../../../../../../src/templates/document-model/gen/modules/creators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qCAAqC,EACtC,MAAM,wBAAwB,CAAC;AA2FhC,eAAO,MAAM,iDAAiD,GAC5D,GAAG,qCAAqC,WAkBrC,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { ts } from "@tmpl/core";
2
+ import { camelCase, constantCase, pascalCase } from "change-case";
3
+ function makeDocumentModelTypeImports(actions) {
4
+ const actionTypeImports = ["createAction"];
5
+ const anyActionHasAttachment = actions.some((a) => a.hasAttachment);
6
+ if (anyActionHasAttachment) {
7
+ actionTypeImports.push("AttachmentInput");
8
+ }
9
+ return actionTypeImports.join(",\n");
10
+ }
11
+ function makeActionInputSchemaName(action) {
12
+ if (!action.hasInput)
13
+ return;
14
+ const pascalCaseActionName = pascalCase(action.name);
15
+ return `${pascalCaseActionName}InputSchema`;
16
+ }
17
+ function makeActionInputTypeName(action) {
18
+ if (!action.hasInput)
19
+ return;
20
+ const pascalCaseActionName = pascalCase(action.name);
21
+ return `${pascalCaseActionName}Input`;
22
+ }
23
+ function makeActionTypeName(action) {
24
+ const pascalCaseActionName = pascalCase(action.name);
25
+ return `${pascalCaseActionName}Action`;
26
+ }
27
+ function makeActionInputSchemaImports(actions) {
28
+ return actions.map(makeActionInputSchemaName).filter(Boolean).join(",\n");
29
+ }
30
+ function makeActionInputTypeImports(actions) {
31
+ return actions.map(makeActionInputTypeName).filter(Boolean).join(",\n");
32
+ }
33
+ function makeActionTypeImports(actions) {
34
+ return actions.map(makeActionTypeName).join(",\n");
35
+ }
36
+ function makeActionCreatorWithInput(actionWithInput) {
37
+ if (!actionWithInput.hasInput)
38
+ return;
39
+ const camelCaseActionName = camelCase(actionWithInput.name);
40
+ const constantCaseActionName = constantCase(actionWithInput.name);
41
+ const actionTypeName = makeActionTypeName(actionWithInput);
42
+ const inputSchemaName = makeActionInputSchemaName(actionWithInput);
43
+ const inputTypeName = makeActionInputTypeName(actionWithInput);
44
+ const inputArg = actionWithInput.isEmptyInput
45
+ ? `input: ${inputTypeName} = {}`
46
+ : `input: ${inputTypeName}`;
47
+ const argsArray = [inputArg];
48
+ if (actionWithInput.hasAttachment) {
49
+ argsArray.push(`attachments: AttachmentInput[]`);
50
+ }
51
+ const args = argsArray.join(", ");
52
+ return ts `
53
+ export const ${camelCaseActionName} = (${args}) =>
54
+ createAction<${actionTypeName}>(
55
+ "${constantCaseActionName}",
56
+ {...input},
57
+ ${actionWithInput.hasAttachment ? "attachments" : "undefined"},
58
+ ${inputSchemaName},
59
+ "${actionWithInput.scope}"
60
+ );`.raw;
61
+ }
62
+ function makeActionCreatorWithoutInput(actionWithoutInput) {
63
+ if (actionWithoutInput.hasInput)
64
+ return;
65
+ const camelCaseActionName = camelCase(actionWithoutInput.name);
66
+ const constantCaseActionName = constantCase(actionWithoutInput.name);
67
+ const actionTypeName = makeActionTypeName(actionWithoutInput);
68
+ return ts `
69
+ export const ${camelCaseActionName} = () =>
70
+ createAction<${actionTypeName}>("${constantCaseActionName}");`.raw;
71
+ }
72
+ function makeCreatorsForActionsWithInput(actions) {
73
+ const actionsWithInput = actions.filter((a) => a.hasInput);
74
+ return actionsWithInput.map(makeActionCreatorWithInput).join("\n\n");
75
+ }
76
+ function makeActionCreatorsWithoutInput(actions) {
77
+ const actionsWithoutInput = actions.filter((a) => !a.hasInput);
78
+ return actionsWithoutInput.map(makeActionCreatorWithoutInput).join("\n\n");
79
+ }
80
+ export const documentModelOperationsModuleCreatorsFileTemplate = (v) => ts `
81
+
82
+ import { ${makeDocumentModelTypeImports(v.actions)} } from 'document-model/core';
83
+ import {
84
+ ${makeActionInputSchemaImports(v.actions)}
85
+ } from '../schema/zod.js';
86
+ import type {
87
+ ${makeActionInputTypeImports(v.actions)}
88
+ } from '../types.js';
89
+ import type {
90
+ ${makeActionTypeImports(v.actions)}
91
+ } from './actions.js';
92
+
93
+ ${makeCreatorsForActionsWithInput(v.actions)}
94
+
95
+ ${makeActionCreatorsWithoutInput(v.actions)}
96
+ `.raw;
97
+ //# sourceMappingURL=creators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.js","sourceRoot":"","sources":["../../../../../../src/templates/document-model/gen/modules/creators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelTemplateInputsWithModule } from "@powerhousedao/codegen";
2
+ export declare const documentModelOperationsModuleErrorFileTemplate: (v: DocumentModelTemplateInputsWithModule) => string;
3
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../../../src/templates/document-model/gen/modules/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qCAAqC,EACtC,MAAM,wBAAwB,CAAC;AA8EhC,eAAO,MAAM,8CAA8C,GACzD,GAAG,qCAAqC,WAKrC,CAAC"}