@metaobjectsdev/codegen-ts 0.9.0 → 0.11.0-rc.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 (342) hide show
  1. package/README.md +1 -1
  2. package/dist/column-mapper.d.ts +12 -6
  3. package/dist/column-mapper.d.ts.map +1 -1
  4. package/dist/column-mapper.js +68 -28
  5. package/dist/column-mapper.js.map +1 -1
  6. package/dist/constants.d.ts +8 -0
  7. package/dist/constants.d.ts.map +1 -1
  8. package/dist/constants.js +16 -0
  9. package/dist/constants.js.map +1 -1
  10. package/dist/docs-paths.d.ts +58 -0
  11. package/dist/docs-paths.d.ts.map +1 -0
  12. package/dist/docs-paths.js +89 -0
  13. package/dist/docs-paths.js.map +1 -0
  14. package/dist/enum-import.d.ts +14 -0
  15. package/dist/enum-import.d.ts.map +1 -0
  16. package/dist/enum-import.js +35 -0
  17. package/dist/enum-import.js.map +1 -0
  18. package/dist/enum-shared.d.ts +32 -0
  19. package/dist/enum-shared.d.ts.map +1 -0
  20. package/dist/enum-shared.js +83 -0
  21. package/dist/enum-shared.js.map +1 -0
  22. package/dist/generator-registry.d.ts +22 -0
  23. package/dist/generator-registry.d.ts.map +1 -0
  24. package/dist/generator-registry.js +161 -0
  25. package/dist/generator-registry.js.map +1 -0
  26. package/dist/generator.d.ts +6 -0
  27. package/dist/generator.d.ts.map +1 -1
  28. package/dist/generator.js.map +1 -1
  29. package/dist/generators/api-doc-render.d.ts +17 -0
  30. package/dist/generators/api-doc-render.d.ts.map +1 -0
  31. package/dist/generators/api-doc-render.js +431 -0
  32. package/dist/generators/api-doc-render.js.map +1 -0
  33. package/dist/generators/api-docs-file.d.ts +21 -0
  34. package/dist/generators/api-docs-file.d.ts.map +1 -0
  35. package/dist/generators/api-docs-file.js +112 -0
  36. package/dist/generators/api-docs-file.js.map +1 -0
  37. package/dist/generators/api-field-shape.d.ts +39 -0
  38. package/dist/generators/api-field-shape.d.ts.map +1 -0
  39. package/dist/generators/api-field-shape.js +92 -0
  40. package/dist/generators/api-field-shape.js.map +1 -0
  41. package/dist/generators/api-label.d.ts +3 -0
  42. package/dist/generators/api-label.d.ts.map +1 -0
  43. package/dist/generators/api-label.js +8 -0
  44. package/dist/generators/api-label.js.map +1 -0
  45. package/dist/generators/api-model.d.ts +122 -0
  46. package/dist/generators/api-model.d.ts.map +1 -0
  47. package/dist/generators/api-model.js +809 -0
  48. package/dist/generators/api-model.js.map +1 -0
  49. package/dist/generators/docs-data-builder.d.ts +26 -4
  50. package/dist/generators/docs-data-builder.d.ts.map +1 -1
  51. package/dist/generators/docs-data-builder.js +439 -167
  52. package/dist/generators/docs-data-builder.js.map +1 -1
  53. package/dist/generators/docs-data.d.ts +136 -27
  54. package/dist/generators/docs-data.d.ts.map +1 -1
  55. package/dist/generators/docs-data.js +1 -1
  56. package/dist/generators/docs-data.js.map +1 -1
  57. package/dist/generators/docs-file.d.ts +19 -0
  58. package/dist/generators/docs-file.d.ts.map +1 -1
  59. package/dist/generators/docs-file.js +154 -27
  60. package/dist/generators/docs-file.js.map +1 -1
  61. package/dist/generators/entity-file.d.ts.map +1 -1
  62. package/dist/generators/entity-file.js +29 -14
  63. package/dist/generators/entity-file.js.map +1 -1
  64. package/dist/generators/extractor-file.d.ts.map +1 -1
  65. package/dist/generators/extractor-file.js +2 -1
  66. package/dist/generators/extractor-file.js.map +1 -1
  67. package/dist/generators/field-anchor.d.ts +7 -0
  68. package/dist/generators/field-anchor.d.ts.map +1 -0
  69. package/dist/generators/field-anchor.js +23 -0
  70. package/dist/generators/field-anchor.js.map +1 -0
  71. package/dist/generators/index.d.ts +8 -1
  72. package/dist/generators/index.d.ts.map +1 -1
  73. package/dist/generators/index.js +6 -0
  74. package/dist/generators/index.js.map +1 -1
  75. package/dist/generators/mermaid-er.d.ts +14 -0
  76. package/dist/generators/mermaid-er.d.ts.map +1 -1
  77. package/dist/generators/mermaid-er.js +14 -0
  78. package/dist/generators/mermaid-er.js.map +1 -1
  79. package/dist/generators/output-parser-file.d.ts.map +1 -1
  80. package/dist/generators/output-parser-file.js +3 -4
  81. package/dist/generators/output-parser-file.js.map +1 -1
  82. package/dist/generators/output-prompt-file.d.ts.map +1 -1
  83. package/dist/generators/output-prompt-file.js +2 -2
  84. package/dist/generators/output-prompt-file.js.map +1 -1
  85. package/dist/generators/prompt-render-file.d.ts.map +1 -1
  86. package/dist/generators/prompt-render-file.js +3 -4
  87. package/dist/generators/prompt-render-file.js.map +1 -1
  88. package/dist/generators/queries-file.d.ts.map +1 -1
  89. package/dist/generators/queries-file.js +8 -3
  90. package/dist/generators/queries-file.js.map +1 -1
  91. package/dist/generators/render-helper-file.d.ts.map +1 -1
  92. package/dist/generators/render-helper-file.js +2 -2
  93. package/dist/generators/render-helper-file.js.map +1 -1
  94. package/dist/generators/routes-file-hono.d.ts.map +1 -1
  95. package/dist/generators/routes-file-hono.js +5 -1
  96. package/dist/generators/routes-file-hono.js.map +1 -1
  97. package/dist/generators/routes-file.d.ts +3 -0
  98. package/dist/generators/routes-file.d.ts.map +1 -1
  99. package/dist/generators/routes-file.js +6 -1
  100. package/dist/generators/routes-file.js.map +1 -1
  101. package/dist/generators/template-doc-builder.d.ts +19 -0
  102. package/dist/generators/template-doc-builder.d.ts.map +1 -0
  103. package/dist/generators/template-doc-builder.js +220 -0
  104. package/dist/generators/template-doc-builder.js.map +1 -0
  105. package/dist/generators/template-doc-data.d.ts +62 -0
  106. package/dist/generators/template-doc-data.d.ts.map +1 -0
  107. package/dist/generators/template-doc-data.js +16 -0
  108. package/dist/generators/template-doc-data.js.map +1 -0
  109. package/dist/generators/template-payload-tree.d.ts +15 -0
  110. package/dist/generators/template-payload-tree.d.ts.map +1 -0
  111. package/dist/generators/template-payload-tree.js +61 -0
  112. package/dist/generators/template-payload-tree.js.map +1 -0
  113. package/dist/generators/template-source-annotate.d.ts +74 -0
  114. package/dist/generators/template-source-annotate.d.ts.map +1 -0
  115. package/dist/generators/template-source-annotate.js +184 -0
  116. package/dist/generators/template-source-annotate.js.map +1 -0
  117. package/dist/generators/template-source-render.d.ts +24 -0
  118. package/dist/generators/template-source-render.d.ts.map +1 -0
  119. package/dist/generators/template-source-render.js +175 -0
  120. package/dist/generators/template-source-render.js.map +1 -0
  121. package/dist/generators/trace-helper-file.d.ts +9 -0
  122. package/dist/generators/trace-helper-file.d.ts.map +1 -0
  123. package/dist/generators/trace-helper-file.js +196 -0
  124. package/dist/generators/trace-helper-file.js.map +1 -0
  125. package/dist/import-path.d.ts +18 -0
  126. package/dist/import-path.d.ts.map +1 -1
  127. package/dist/import-path.js +21 -0
  128. package/dist/import-path.js.map +1 -1
  129. package/dist/index.d.ts +29 -4
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.js +28 -2
  132. package/dist/index.js.map +1 -1
  133. package/dist/metaobjects-config.d.ts +101 -2
  134. package/dist/metaobjects-config.d.ts.map +1 -1
  135. package/dist/metaobjects-config.js +46 -0
  136. package/dist/metaobjects-config.js.map +1 -1
  137. package/dist/naming.d.ts +39 -2
  138. package/dist/naming.d.ts.map +1 -1
  139. package/dist/naming.js +52 -3
  140. package/dist/naming.js.map +1 -1
  141. package/dist/payload-codegen.d.ts.map +1 -1
  142. package/dist/payload-codegen.js +14 -6
  143. package/dist/payload-codegen.js.map +1 -1
  144. package/dist/pk-resolver.d.ts.map +1 -1
  145. package/dist/pk-resolver.js +4 -2
  146. package/dist/pk-resolver.js.map +1 -1
  147. package/dist/projection/extract-view-spec.d.ts.map +1 -1
  148. package/dist/projection/extract-view-spec.js +52 -26
  149. package/dist/projection/extract-view-spec.js.map +1 -1
  150. package/dist/relation-resolver.d.ts +16 -0
  151. package/dist/relation-resolver.d.ts.map +1 -1
  152. package/dist/relation-resolver.js +82 -1
  153. package/dist/relation-resolver.js.map +1 -1
  154. package/dist/render-context.d.ts +25 -2
  155. package/dist/render-context.d.ts.map +1 -1
  156. package/dist/render-context.js +7 -0
  157. package/dist/render-context.js.map +1 -1
  158. package/dist/render-engine/embedded-templates.generated.d.ts +2 -0
  159. package/dist/render-engine/embedded-templates.generated.d.ts.map +1 -0
  160. package/dist/render-engine/embedded-templates.generated.js +15 -0
  161. package/dist/render-engine/embedded-templates.generated.js.map +1 -0
  162. package/dist/render-engine/framework-provider.d.ts.map +1 -1
  163. package/dist/render-engine/framework-provider.js +26 -13
  164. package/dist/render-engine/framework-provider.js.map +1 -1
  165. package/dist/runner.d.ts.map +1 -1
  166. package/dist/runner.js +20 -0
  167. package/dist/runner.js.map +1 -1
  168. package/dist/templates/docs-file.d.ts +2 -6
  169. package/dist/templates/docs-file.d.ts.map +1 -1
  170. package/dist/templates/docs-file.js +2 -5
  171. package/dist/templates/docs-file.js.map +1 -1
  172. package/dist/templates/drizzle-schema.d.ts.map +1 -1
  173. package/dist/templates/drizzle-schema.js +72 -23
  174. package/dist/templates/drizzle-schema.js.map +1 -1
  175. package/dist/templates/entity-constants.d.ts +7 -0
  176. package/dist/templates/entity-constants.d.ts.map +1 -1
  177. package/dist/templates/entity-constants.js +3 -3
  178. package/dist/templates/entity-constants.js.map +1 -1
  179. package/dist/templates/entity-file.d.ts.map +1 -1
  180. package/dist/templates/entity-file.js +16 -5
  181. package/dist/templates/entity-file.js.map +1 -1
  182. package/dist/templates/enums-file.d.ts +11 -0
  183. package/dist/templates/enums-file.d.ts.map +1 -0
  184. package/dist/templates/enums-file.js +44 -0
  185. package/dist/templates/enums-file.js.map +1 -0
  186. package/dist/templates/extract-delegate-emitter.d.ts.map +1 -1
  187. package/dist/templates/extract-delegate-emitter.js +6 -8
  188. package/dist/templates/extract-delegate-emitter.js.map +1 -1
  189. package/dist/templates/extractor.d.ts.map +1 -1
  190. package/dist/templates/extractor.js +58 -41
  191. package/dist/templates/extractor.js.map +1 -1
  192. package/dist/templates/field-meta.d.ts.map +1 -1
  193. package/dist/templates/field-meta.js +2 -6
  194. package/dist/templates/field-meta.js.map +1 -1
  195. package/dist/templates/filter-allowlist.d.ts +7 -2
  196. package/dist/templates/filter-allowlist.d.ts.map +1 -1
  197. package/dist/templates/filter-allowlist.js +18 -10
  198. package/dist/templates/filter-allowlist.js.map +1 -1
  199. package/dist/templates/filter-shared.js +2 -2
  200. package/dist/templates/filter-shared.js.map +1 -1
  201. package/dist/templates/filter-type.d.ts +7 -1
  202. package/dist/templates/filter-type.d.ts.map +1 -1
  203. package/dist/templates/filter-type.js +10 -6
  204. package/dist/templates/filter-type.js.map +1 -1
  205. package/dist/templates/find-templates.d.ts +4 -0
  206. package/dist/templates/find-templates.d.ts.map +1 -0
  207. package/dist/templates/find-templates.js +15 -0
  208. package/dist/templates/find-templates.js.map +1 -0
  209. package/dist/templates/fr010-field-mapping.d.ts +2 -0
  210. package/dist/templates/fr010-field-mapping.d.ts.map +1 -1
  211. package/dist/templates/fr010-field-mapping.js +15 -11
  212. package/dist/templates/fr010-field-mapping.js.map +1 -1
  213. package/dist/templates/inferred-types.d.ts +44 -7
  214. package/dist/templates/inferred-types.d.ts.map +1 -1
  215. package/dist/templates/inferred-types.js +121 -19
  216. package/dist/templates/inferred-types.js.map +1 -1
  217. package/dist/templates/mermaid-er.d.ts +35 -2
  218. package/dist/templates/mermaid-er.d.ts.map +1 -1
  219. package/dist/templates/mermaid-er.js +174 -7
  220. package/dist/templates/mermaid-er.js.map +1 -1
  221. package/dist/templates/output-format-spec-emitter.js +1 -1
  222. package/dist/templates/output-format-spec-emitter.js.map +1 -1
  223. package/dist/templates/output-parser.d.ts.map +1 -1
  224. package/dist/templates/output-parser.js +31 -80
  225. package/dist/templates/output-parser.js.map +1 -1
  226. package/dist/templates/output-prompt.d.ts.map +1 -1
  227. package/dist/templates/output-prompt.js +2 -2
  228. package/dist/templates/output-prompt.js.map +1 -1
  229. package/dist/templates/queries-file.d.ts.map +1 -1
  230. package/dist/templates/queries-file.js +113 -5
  231. package/dist/templates/queries-file.js.map +1 -1
  232. package/dist/templates/queries.d.ts +7 -2
  233. package/dist/templates/queries.d.ts.map +1 -1
  234. package/dist/templates/queries.js +15 -15
  235. package/dist/templates/queries.js.map +1 -1
  236. package/dist/templates/relations-block.d.ts.map +1 -1
  237. package/dist/templates/relations-block.js +12 -3
  238. package/dist/templates/relations-block.js.map +1 -1
  239. package/dist/templates/render-helper.d.ts.map +1 -1
  240. package/dist/templates/render-helper.js +5 -5
  241. package/dist/templates/render-helper.js.map +1 -1
  242. package/dist/templates/routes-file-hono.d.ts.map +1 -1
  243. package/dist/templates/routes-file-hono.js +1 -2
  244. package/dist/templates/routes-file-hono.js.map +1 -1
  245. package/dist/templates/routes-file.d.ts.map +1 -1
  246. package/dist/templates/routes-file.js +184 -7
  247. package/dist/templates/routes-file.js.map +1 -1
  248. package/dist/templates/tph-discriminator.d.ts +56 -0
  249. package/dist/templates/tph-discriminator.d.ts.map +1 -0
  250. package/dist/templates/tph-discriminator.js +180 -0
  251. package/dist/templates/tph-discriminator.js.map +1 -0
  252. package/dist/templates/value-object-file.d.ts +2 -1
  253. package/dist/templates/value-object-file.d.ts.map +1 -1
  254. package/dist/templates/value-object-file.js +33 -5
  255. package/dist/templates/value-object-file.js.map +1 -1
  256. package/dist/templates/zod-validators.d.ts +65 -2
  257. package/dist/templates/zod-validators.d.ts.map +1 -1
  258. package/dist/templates/zod-validators.js +202 -22
  259. package/dist/templates/zod-validators.js.map +1 -1
  260. package/package.json +103 -34
  261. package/src/column-mapper.ts +79 -32
  262. package/src/constants.ts +18 -0
  263. package/src/docs-paths.ts +128 -0
  264. package/src/enum-import.ts +43 -0
  265. package/src/enum-shared.ts +95 -0
  266. package/src/generator-registry.ts +204 -0
  267. package/src/generator.ts +6 -0
  268. package/src/generators/api-doc-render.ts +572 -0
  269. package/src/generators/api-docs-file.ts +146 -0
  270. package/src/generators/api-field-shape.ts +114 -0
  271. package/src/generators/api-label.ts +7 -0
  272. package/src/generators/api-model.ts +1067 -0
  273. package/src/generators/docs-data-builder.ts +483 -189
  274. package/src/generators/docs-data.ts +139 -28
  275. package/src/generators/docs-file.ts +205 -39
  276. package/src/generators/entity-file.ts +31 -15
  277. package/src/generators/extractor-file.ts +2 -1
  278. package/src/generators/field-anchor.ts +24 -0
  279. package/src/generators/index.ts +8 -1
  280. package/src/generators/mermaid-er.ts +14 -0
  281. package/src/generators/output-parser-file.ts +3 -4
  282. package/src/generators/output-prompt-file.ts +2 -1
  283. package/src/generators/prompt-render-file.ts +3 -4
  284. package/src/generators/queries-file.ts +9 -3
  285. package/src/generators/render-helper-file.ts +2 -1
  286. package/src/generators/routes-file-hono.ts +5 -1
  287. package/src/generators/routes-file.ts +7 -1
  288. package/src/generators/template-doc-builder.ts +306 -0
  289. package/src/generators/template-doc-data.ts +85 -0
  290. package/src/generators/template-payload-tree.ts +71 -0
  291. package/src/generators/template-source-annotate.ts +290 -0
  292. package/src/generators/template-source-render.ts +203 -0
  293. package/src/generators/trace-helper-file.ts +301 -0
  294. package/src/import-path.ts +28 -0
  295. package/src/index.ts +55 -4
  296. package/src/metaobjects-config.ts +146 -2
  297. package/src/naming.ts +73 -3
  298. package/src/payload-codegen.ts +16 -5
  299. package/src/pk-resolver.ts +4 -2
  300. package/src/projection/extract-view-spec.ts +50 -31
  301. package/src/relation-resolver.ts +103 -1
  302. package/src/render-context.ts +32 -2
  303. package/src/render-engine/embedded-templates.generated.ts +14 -0
  304. package/src/render-engine/framework-provider.ts +25 -11
  305. package/src/runner.ts +24 -0
  306. package/src/templates/docs-file.ts +2 -9
  307. package/src/templates/drizzle-schema.ts +80 -28
  308. package/src/templates/entity-constants.ts +3 -3
  309. package/src/templates/entity-file.ts +16 -5
  310. package/src/templates/enums-file.ts +50 -0
  311. package/src/templates/extract-delegate-emitter.ts +6 -7
  312. package/src/templates/extractor.ts +70 -40
  313. package/src/templates/field-meta.ts +1 -7
  314. package/src/templates/filter-allowlist.ts +18 -11
  315. package/src/templates/filter-shared.ts +2 -2
  316. package/src/templates/filter-type.ts +9 -7
  317. package/src/templates/find-templates.ts +15 -0
  318. package/src/templates/fr010-field-mapping.ts +15 -13
  319. package/src/templates/inferred-types.ts +122 -21
  320. package/src/templates/mermaid-er.ts +176 -8
  321. package/src/templates/output-format-spec-emitter.ts +1 -1
  322. package/src/templates/output-parser.ts +31 -80
  323. package/src/templates/output-prompt.ts +2 -1
  324. package/src/templates/queries-file.ts +133 -4
  325. package/src/templates/queries.ts +21 -15
  326. package/src/templates/relations-block.ts +19 -3
  327. package/src/templates/render-helper.ts +5 -4
  328. package/src/templates/routes-file-hono.ts +1 -2
  329. package/src/templates/routes-file.ts +234 -7
  330. package/src/templates/tph-discriminator.ts +232 -0
  331. package/src/templates/value-object-file.ts +39 -5
  332. package/src/templates/zod-validators.ts +225 -21
  333. package/templates/api/agent-api.md.mustache +30 -0
  334. package/templates/api/entity-api.md.mustache +69 -0
  335. package/templates/api/index.md.mustache +21 -0
  336. package/templates/docs/entity-page.md.mustache +33 -21
  337. package/templates/docs/template-page.md.mustache +56 -0
  338. package/dist/templates/extract-schema-emitter.d.ts +0 -8
  339. package/dist/templates/extract-schema-emitter.d.ts.map +0 -1
  340. package/dist/templates/extract-schema-emitter.js +0 -81
  341. package/dist/templates/extract-schema-emitter.js.map +0 -1
  342. package/src/templates/extract-schema-emitter.ts +0 -111
@@ -14,6 +14,7 @@
14
14
  import { existsSync, readFileSync } from "node:fs";
15
15
  import { join, resolve, dirname } from "node:path";
16
16
  import { fileURLToPath } from "node:url";
17
+ import { EMBEDDED_FRAMEWORK_TEMPLATES } from "./embedded-templates.generated.js";
17
18
  /** Canonical shipped template — used to verify a candidate framework
18
19
  * templates directory actually contains our defaults. Without this check a
19
20
  * hoisted-install layout (pnpm/bun workspaces) can walk up to a CONSUMER
@@ -27,8 +28,11 @@ const CANONICAL_TEMPLATE_REL = "docs/entity-page.md.mustache";
27
28
  *
28
29
  * Returns `undefined` when no on-disk templates dir can be found — e.g. inside
29
30
  * the `bun build --compile` standalone binary, whose `import.meta.url` is a
30
- * `/$bunfs/root` virtual path with no real `package.json` alongside it. The
31
- * embedded-template fallback (see `FileSystemProvider`) covers that case. */
31
+ * `/$bunfs/root` virtual path with no real `package.json` alongside it. In that
32
+ * case `FrameworkTemplatesProvider.resolve` falls back to the bundled
33
+ * `EMBEDDED_FRAMEWORK_TEMPLATES` (embedded-templates.generated.ts), a plain
34
+ * string module generated from the canonical templates/docs/*.mustache and
35
+ * compiled into the binary. */
32
36
  function findFrameworkTemplatesDir(start) {
33
37
  let dir = start;
34
38
  while (true) {
@@ -78,25 +82,34 @@ export class FileSystemProvider {
78
82
  }
79
83
  }
80
84
  /** The framework defaults provider — resolves refs against codegen-ts's own
81
- * on-disk `templates/` directory.
85
+ * on-disk `templates/` directory, falling back to the bundled
86
+ * `EMBEDDED_FRAMEWORK_TEMPLATES` when no on-disk dir exists.
82
87
  *
83
88
  * Resolution is lazy: the directory is located on first `resolve()`, not at
84
89
  * module import. This keeps merely importing this module side-effect-free,
85
90
  * which matters for the `bun build --compile` standalone `meta` binary — its
86
91
  * `import.meta.url` is a `/$bunfs/root` virtual path with no on-disk
87
- * `templates/` dir, so eager resolution at import time used to throw before
88
- * any command (even `--help` or the schema ops `migrate`/`verify --db`) could
89
- * run. Now non-codegen commands import cleanly; only the codegen doc path
90
- * (which the standalone binary doesn't target) needs the on-disk dir. */
92
+ * `templates/` dir.
93
+ *
94
+ * ON-DISK FIRST, then embedded: the source/install layout (and adopter
95
+ * overrides chained ahead of this provider via `projectProvider`) always wins,
96
+ * so local edits to the shipped package `templates/` still take effect. Only
97
+ * when the on-disk dir is unresolved (the compiled binary) — or a ref the dir
98
+ * doesn't contain — do we consult the embedded map, which is generated from
99
+ * the same canonical templates and compiled into the binary. Unknown refs are
100
+ * `undefined` in the map, which is the correct miss. */
91
101
  class FrameworkTemplatesProvider {
92
102
  resolve(ref) {
103
+ // On-disk first: dev/install layout, plus shipped-package edits.
93
104
  const dir = frameworkTemplatesDir();
94
- if (dir === undefined)
95
- return undefined;
96
- const path = join(dir, `${ref}.mustache`);
97
- if (!existsSync(path))
98
- return undefined;
99
- return readFileSync(path, "utf-8");
105
+ if (dir !== undefined) {
106
+ const path = join(dir, `${ref}.mustache`);
107
+ if (existsSync(path))
108
+ return readFileSync(path, "utf-8");
109
+ }
110
+ // Embedded fallback: the binary case (no on-disk dir) or a ref the on-disk
111
+ // dir doesn't carry. `undefined` for unknown refs is the correct miss.
112
+ return EMBEDDED_FRAMEWORK_TEMPLATES[ref];
100
113
  }
101
114
  }
102
115
  export const frameworkTemplatesProvider = new FrameworkTemplatesProvider();
@@ -1 +1 @@
1
- {"version":3,"file":"framework-provider.js","sourceRoot":"","sources":["../../src/render-engine/framework-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"framework-provider.js","sourceRoot":"","sources":["../../src/render-engine/framework-provider.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,6EAA6E;AAC7E,+EAA+E;AAC/E,4EAA4E;AAC5E,4CAA4C;AAC5C,EAAE;AACF,0EAA0E;AAC1E,+DAA+D;AAC/D,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,kEAAkE;AAClE,2DAA2D;AAG3D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF;;;2EAG2E;AAC3E,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAE9D;;;;;;;;;;;;gCAYgC;AAChC,SAAS,yBAAyB,CAAC,KAAa;IAC9C,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAC5C,qEAAqE;YACrE,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO,YAAY,CAAC;YACtB,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,qEAAqE;AACrE,+DAA+D;AAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEzD,+EAA+E;AAC/E,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,mEAAmE;AACnE,IAAI,sBAAiD,CAAC;AACtD,SAAS,qBAAqB;IAC5B,IAAI,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACzC,sBAAsB,GAAG,yBAAyB,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACvE,CAAC;IACD,OAAO,sBAAsB,IAAI,SAAS,CAAC;AAC7C,CAAC;AAED;;kCAEkC;AAClC,MAAM,OAAO,kBAAkB;IACA;IAA7B,YAA6B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAC7C,OAAO,CAAC,GAAW;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;CACF;AAED;;;;;;;;;;;;;;;;yDAgByD;AACzD,MAAM,0BAA0B;IAC9B,OAAO,CAAC,GAAW;QACjB,iEAAiE;QACjE,MAAM,GAAG,GAAG,qBAAqB,EAAE,CAAC;QACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAAC,CAAC;YAC1C,IAAI,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;QACD,2EAA2E;QAC3E,uEAAuE;QACvE,OAAO,4BAA4B,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;CACF;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAa,IAAI,0BAA0B,EAAE,CAAC;AAErF;;uCAEuC;AACvC,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,SAA8B;QAA9B,cAAS,GAAT,SAAS,CAAqB;IAAG,CAAC;IAC/D,OAAO,CAAC,GAAW;QACjB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;QACtC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED;;4EAE4E;AAC5E,MAAM,UAAU,eAAe,CAAC,WAAoB;IAClD,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,0BAA0B,CAAC;IACjE,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,0BAA0B,CAAC;IAClE,OAAO,IAAI,aAAa,CAAC;QACvB,IAAI,kBAAkB,CAAC,aAAa,CAAC;QACrC,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED;;;;gDAIgD;AAChD,MAAM,UAAU,6BAA6B;IAC3C,MAAM,GAAG,GAAG,qBAAqB,EAAE,CAAC;IACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,0BAA0B,CAAC;AAGrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAMpE,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAM/B,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;4BAEwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;oDACgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;qBAEiB;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;gDAC4C;IAC5C,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CA2LpE"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,0BAA0B,CAAC;AAGrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAMpE,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,uBAAuB,CAAC;AAU/B,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;4BAEwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;oDACgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;qBAEiB;IACjB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;gDAC4C;IAC5C,SAAS,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CA+MpE"}
package/dist/runner.js CHANGED
@@ -9,6 +9,9 @@ import { decideAndWrite, } from "./overwrite-policy.js";
9
9
  /** JS-identifier-shape only. Prevents filesystem traversal when metadata comes
10
10
  * from untrusted sources (e.g. MCP). Mirrors the guard in legacy generate.ts. */
11
11
  const VALID_ENTITY_NAME = /^[A-Za-z_][A-Za-z0-9_]*$/;
12
+ /** ADR-0025: doc generators whose single door is `meta docs`. If a `meta gen`
13
+ * config still lists one (by its stable `name`), the runner warns + skips it. */
14
+ const DEPRECATED_DOC_GENERATORS = new Set(["docs-file", "api-docs"]);
12
15
  export async function runGen(opts) {
13
16
  const warnings = [];
14
17
  const strategy = opts.mergeStrategy ?? "overwrite";
@@ -87,9 +90,21 @@ export async function runGen(opts) {
87
90
  const pkMap = buildPkMap(root);
88
91
  const relationMap = buildRelationMap(root);
89
92
  const packageOf = new Map(root.objects().map((o) => [o.name, o.package]));
93
+ // Auto-detect: is the OPT-IN Hono routes generator in the active suite? If so,
94
+ // surface it on every generator's ctx.config so api-docs documents the Hono
95
+ // CRUD surface it actually emits (rather than silently omitting it).
96
+ const includeHonoRoutes = config.generators.some((g) => g.emitsHonoRoutes === true);
90
97
  // 4. Run each generator with a per-target render context; collect with full path.
91
98
  const emitted = [];
92
99
  for (const generator of config.generators) {
100
+ // ADR-0025: `meta docs` is the single docs door. A `meta gen` config that
101
+ // still lists a deprecated doc generator is warned + skipped, not run — the
102
+ // generator stays as `meta docs`'s internal engine.
103
+ if (DEPRECATED_DOC_GENERATORS.has(generator.name)) {
104
+ warnings.push(`[${generator.name}] docs are produced by 'meta docs' (ADR-0025); ` +
105
+ `remove ${generator.name === "api-docs" ? "apiDocsFile()" : "docsFile()"} from generators. Skipped.`);
106
+ continue;
107
+ }
93
108
  const selfTarget = targetOf(generator);
94
109
  const renderContext = makeRenderContext({
95
110
  dialect: config.dialect,
@@ -98,6 +113,9 @@ export async function runGen(opts) {
98
113
  dbImport: selfTarget.dbImport,
99
114
  extStyle: config.extStyle,
100
115
  columnNamingStrategy: config.columnNamingStrategy,
116
+ pluralizeCollections: config.pluralizeCollections,
117
+ collectionNameOverrides: config.collectionNameOverrides,
118
+ timestampMode: config.timestampMode,
101
119
  apiPrefix: config.apiPrefix,
102
120
  emitAbstractShapes: config.emitAbstractShapes,
103
121
  outputLayout: selfTarget.outputLayout,
@@ -106,6 +124,7 @@ export async function runGen(opts) {
106
124
  packageOf,
107
125
  selfTarget,
108
126
  entityModuleTarget,
127
+ ...(config.providedEnumModule !== undefined && { providedEnumModule: config.providedEnumModule }),
109
128
  });
110
129
  const ctx = {
111
130
  entities: safeEntities,
@@ -117,6 +136,7 @@ export async function runGen(opts) {
117
136
  dbImport: selfTarget.dbImport,
118
137
  dialect: config.dialect,
119
138
  outputLayout: selfTarget.outputLayout,
139
+ includeHonoRoutes,
120
140
  },
121
141
  renderContext,
122
142
  ...(projectRoot !== undefined && { projectRoot }),
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,9 @@ export interface DocsRenderOpts {
5
5
  dialect: Dialect;
6
6
  columnNamingStrategy?: ColumnNamingStrategy;
7
7
  loadedRoot: MetaRoot;
8
- /** Names of generators present in the pipeline — drives the "Generated code"
9
- * section. Always includes "entity-file" implicitly. Recognized names:
10
- * "queries-file", "routes-file", "routes-file-hono". */
11
- generatorNames?: ReadonlySet<string>;
12
8
  }
13
9
  /** Backward-compatible entry point: builds the EntityDocData payload and
14
- * renders it via the framework template. Byte-identical to the hand-coded
15
- * rc.11 output (gated by `docs-file-conformance.test.ts`). */
10
+ * renders it via the framework template. Output is gated by
11
+ * `docs-file-conformance.test.ts`. */
16
12
  export declare function renderDocsFile(entity: MetaObject, opts: DocsRenderOpts): string;
17
13
  //# sourceMappingURL=docs-file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-file.d.ts","sourceRoot":"","sources":["../../src/templates/docs-file.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAKrE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,UAAU,EAAE,QAAQ,CAAC;IACrB;;6DAEyD;IACzD,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACtC;AAED;;+DAE+D;AAC/D,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,CAiB/E"}
1
+ {"version":3,"file":"docs-file.d.ts","sourceRoot":"","sources":["../../src/templates/docs-file.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAKrE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,UAAU,EAAE,QAAQ,CAAC;CACtB;AAED;;uCAEuC;AACvC,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,CAc/E"}
@@ -14,8 +14,8 @@ import { render } from "@metaobjectsdev/render";
14
14
  import { buildEntityDocData } from "../generators/docs-data-builder.js";
15
15
  import { frameworkTemplatesProvider } from "../render-engine/framework-provider.js";
16
16
  /** Backward-compatible entry point: builds the EntityDocData payload and
17
- * renders it via the framework template. Byte-identical to the hand-coded
18
- * rc.11 output (gated by `docs-file-conformance.test.ts`). */
17
+ * renders it via the framework template. Output is gated by
18
+ * `docs-file-conformance.test.ts`. */
19
19
  export function renderDocsFile(entity, opts) {
20
20
  const data = buildEntityDocData(entity, {
21
21
  dialect: opts.dialect,
@@ -23,9 +23,6 @@ export function renderDocsFile(entity, opts) {
23
23
  ? { columnNamingStrategy: opts.columnNamingStrategy }
24
24
  : {}),
25
25
  loadedRoot: opts.loadedRoot,
26
- ...(opts.generatorNames !== undefined
27
- ? { generatorNames: opts.generatorNames }
28
- : {}),
29
26
  });
30
27
  return render({
31
28
  ref: "docs/entity-page.md",
@@ -1 +1 @@
1
- {"version":3,"file":"docs-file.js","sourceRoot":"","sources":["../../src/templates/docs-file.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,sDAAsD;AACtD,sEAAsE;AACtE,wEAAwE;AACxE,mEAAmE;AACnE,gBAAgB;AAChB,EAAE;AACF,0EAA0E;AAC1E,wDAAwD;AACxD,iEAAiE;AACjE,4EAA4E;AAC5E,oCAAoC;AAKpC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAYpF;;+DAE+D;AAC/D,MAAM,UAAU,cAAc,CAAC,MAAkB,EAAE,IAAoB;IACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,EAAE;QACtC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE;YACrD,CAAC,CAAC,EAAE,CAAC;QACP,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS;YACnC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;YACzC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;QACZ,GAAG,EAAE,qBAAqB;QAC1B,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,0BAA0B;QACpC,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"docs-file.js","sourceRoot":"","sources":["../../src/templates/docs-file.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,sDAAsD;AACtD,sEAAsE;AACtE,wEAAwE;AACxE,mEAAmE;AACnE,gBAAgB;AAChB,EAAE;AACF,0EAA0E;AAC1E,wDAAwD;AACxD,iEAAiE;AACjE,4EAA4E;AAC5E,oCAAoC;AAKpC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAQpF;;uCAEuC;AACvC,MAAM,UAAU,cAAc,CAAC,MAAkB,EAAE,IAAoB;IACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,EAAE;QACtC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE;YACrD,CAAC,CAAC,EAAE,CAAC;QACP,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;QACZ,GAAG,EAAE,qBAAqB;QAC1B,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,0BAA0B;QACpC,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle-schema.d.ts","sourceRoot":"","sources":["../../src/templates/drizzle-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,UAAU,EAAa,MAAM,0BAA0B,CAAC;AAOjE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAO1D;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAkH7E"}
1
+ {"version":3,"file":"drizzle-schema.d.ts","sourceRoot":"","sources":["../../src/templates/drizzle-schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,UAAU,EAA2B,MAAM,0BAA0B,CAAC;AAO/E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CAyI7E"}
@@ -2,14 +2,15 @@
2
2
  // with FK .references() on FK columns derived from relationship children,
3
3
  // plus the relations() block auto-emitted at the end.
4
4
  import { code, imp, joinCode } from "ts-poet";
5
- import { MetaObject, MetaField } from "@metaobjectsdev/metadata";
5
+ import { MetaObject, MetaField, stripPackage } from "@metaobjectsdev/metadata";
6
6
  import { IDENTITY_SUBTYPE_SECONDARY, FIELD_SUBTYPE_LONG, IDENTITY_ATTR_FIELDS, IDENTITY_ATTR_GENERATION, IDENTITY_ATTR_UNIQUE, GENERATION_INCREMENT, GENERATION_UUID, FIELD_ATTR_AUTO_SET, } from "@metaobjectsdev/metadata";
7
7
  import {} from "../render-context.js";
8
- import { crossEntitySpecifier } from "../import-path.js";
8
+ import { crossEntitySpecifier, valueObjectModuleSpecifier } from "../import-path.js";
9
9
  import { mapColumnType } from "../column-mapper.js";
10
- import { tableNameFromEntity, variableNameFromEntity, columnNameFromField } from "../naming.js";
10
+ import { tableNameFromEntity, columnNameFromField } from "../naming.js";
11
11
  import { renderRelationsBlock } from "./relations-block.js";
12
12
  import { renderDocsFor } from "./jsdoc.js";
13
+ import { collectTphSubtypeFields } from "./tph-discriminator.js";
13
14
  /**
14
15
  * Render the Drizzle table definition for one entity, including:
15
16
  * - FK .references() on FK columns derived from relationship children
@@ -24,16 +25,16 @@ export function renderDrizzleSchema(obj, ctx) {
24
25
  const importModule = dialect === "sqlite" ? "drizzle-orm/sqlite-core" : "drizzle-orm/pg-core";
25
26
  const tableFnSym = imp(`${tableFn}@${importModule}`);
26
27
  const tableName = obj.dbTable ?? tableNameFromEntity(obj.name, ctx.columnNamingStrategy);
27
- const varName = variableNameFromEntity(obj.name);
28
+ const varName = ctx.collectionName(obj.name);
28
29
  const primary = obj.primaryIdentity();
29
- const rawPkFields = primary?.ownAttr(IDENTITY_ATTR_FIELDS);
30
+ const rawPkFields = primary?.attr(IDENTITY_ATTR_FIELDS);
30
31
  const pkFieldsList = Array.isArray(rawPkFields)
31
32
  ? rawPkFields
32
33
  : typeof rawPkFields === "string"
33
34
  ? rawPkFields.split(",").map((f) => f.trim()).filter(Boolean)
34
35
  : [];
35
36
  const pkFieldNames = new Set(pkFieldsList);
36
- const pkGeneration = primary?.ownAttr(IDENTITY_ATTR_GENERATION);
37
+ const pkGeneration = primary?.attr(IDENTITY_ATTR_GENERATION);
37
38
  const fkMap = buildFkMapForEntity(obj, ctx);
38
39
  const isComposite = pkFieldNames.size > 1;
39
40
  // Collect secondary identities and the field names that need .unique() on
@@ -43,10 +44,10 @@ export function renderDrizzleSchema(obj, ctx) {
43
44
  const secondaryIdentities = obj.secondaryIdentities();
44
45
  const uniqueFieldNames = new Set();
45
46
  for (const sec of secondaryIdentities) {
46
- const uniqueAttr = sec.ownAttr(IDENTITY_ATTR_UNIQUE);
47
+ const uniqueAttr = sec.attr(IDENTITY_ATTR_UNIQUE);
47
48
  if (uniqueAttr === false)
48
49
  continue; // explicit non-unique → don't mark column
49
- const fields = sec.ownAttr(IDENTITY_ATTR_FIELDS);
50
+ const fields = sec.attr(IDENTITY_ATTR_FIELDS);
50
51
  if (!Array.isArray(fields) || fields.length !== 1)
51
52
  continue; // multi-col uniques use a callback index, not a column flag
52
53
  uniqueFieldNames.add(fields[0]);
@@ -60,9 +61,9 @@ export function renderDrizzleSchema(obj, ctx) {
60
61
  const fkInfo = fkMap.get(child.name);
61
62
  // Compute the column spec once per field and reuse it for both the column
62
63
  // line and the CHECK collection.
63
- const spec = mapColumnType(child, ctx.dialect, ctx.columnNamingStrategy);
64
+ const spec = mapColumnType(child, ctx.dialect, ctx.columnNamingStrategy, ctx.timestampMode);
64
65
  const fieldDocs = renderDocsFor(child);
65
- const columnLine = renderColumn(spec, child, ctx, isPk, pkGeneration, fkInfo, isComposite, isUnique, obj.package);
66
+ const columnLine = renderColumn(spec, child, ctx, isPk, pkGeneration, fkInfo, isComposite, isUnique, obj.package, obj.name);
66
67
  columnLines.push(fieldDocs ? code ` ${fieldDocs}\n${columnLine}` : columnLine);
67
68
  if (spec.checkConstraint !== undefined) {
68
69
  checkConstraints.push({
@@ -71,20 +72,40 @@ export function renderDrizzleSchema(obj, ctx) {
71
72
  });
72
73
  }
73
74
  }
75
+ // FR-017 Tier 2 — TPH single-table inheritance. When this entity is a
76
+ // discriminator base, fold every concrete subtype's own columns into this
77
+ // one table. Subtype-only columns are ALWAYS nullable (a row of any other
78
+ // subtype stores NULL there) and never carry a DB default (a default would
79
+ // stamp onto other-subtype inserts), regardless of the field's @required.
80
+ // Subtype entities emit no table of their own (the value-object path).
81
+ for (const child of collectTphSubtypeFields(obj, ctx.loadedRoot)) {
82
+ const spec = mapColumnType(child, ctx.dialect, ctx.columnNamingStrategy, ctx.timestampMode);
83
+ const fieldDocs = renderDocsFor(child);
84
+ const columnLine = renderColumn(spec, child, ctx, false, undefined, fkMap.get(child.name), isComposite, false, obj.package, obj.name, true);
85
+ columnLines.push(fieldDocs ? code ` ${fieldDocs}\n${columnLine}` : columnLine);
86
+ // Enum CHECK constraints stay valid under TPH: `NULL IN (...)` is NULL
87
+ // (not false), so other-subtype rows with NULL pass the check.
88
+ if (spec.checkConstraint !== undefined) {
89
+ checkConstraints.push({
90
+ name: `chk_${tableName}_${spec.dbName}`,
91
+ expr: spec.checkConstraint,
92
+ });
93
+ }
94
+ }
74
95
  // Build all table callback entries
75
96
  const callbackEntries = [];
76
97
  if (isComposite && primary !== undefined) {
77
98
  callbackEntries.push(buildCompositeKeyCallback(pkFieldNames, importModule));
78
99
  }
79
100
  for (const sec of secondaryIdentities) {
80
- const fields = sec.ownAttr(IDENTITY_ATTR_FIELDS);
101
+ const fields = sec.attr(IDENTITY_ATTR_FIELDS);
81
102
  if (!Array.isArray(fields) || fields.length === 0)
82
103
  continue;
83
104
  const indexName = `idx_${tableName}_${fields.map((f) => columnNameFromField(f, ctx.columnNamingStrategy)).join("_")}`;
84
105
  // @unique on the identity defaults to true (preserves back-compat with
85
106
  // foundations fixtures that assumed secondary identities were always
86
107
  // unique). Explicit @unique: false → ordinary non-unique index.
87
- const uniqueAttr = sec.ownAttr(IDENTITY_ATTR_UNIQUE);
108
+ const uniqueAttr = sec.attr(IDENTITY_ATTR_UNIQUE);
88
109
  const isUnique = uniqueAttr !== false;
89
110
  const indexFn = isUnique ? "uniqueIndex" : "index";
90
111
  const indexSym = imp(`${indexFn}@${importModule}`);
@@ -139,12 +160,16 @@ function buildFkMapForEntity(obj, ctx) {
139
160
  const targetName = ref.targetEntity;
140
161
  if (!targetName)
141
162
  continue;
142
- const targetObj = ctx.loadedRoot.findObject(targetName);
163
+ // @references may be authored bare OR package-qualified, and the loader can
164
+ // resolve it to an FQN (e.g. the YAML front-end qualifies it). Strip the
165
+ // package so the lookup matches the object's bare name — mirrors the
166
+ // relation-resolver, which already does this.
167
+ const targetObj = ctx.loadedRoot.findObject(stripPackage(targetName));
143
168
  if (!targetObj)
144
169
  continue;
145
170
  const targetPkField = ref.resolvedTargetPkField(ctx.loadedRoot) ?? "id";
146
171
  result.set(fkField, {
147
- targetVarName: variableNameFromEntity(targetObj.name),
172
+ targetVarName: ctx.collectionName(targetObj.name),
148
173
  targetEntityName: targetObj.name,
149
174
  targetPkField,
150
175
  });
@@ -176,7 +201,13 @@ function inlineObjectLiteral(obj) {
176
201
  return `{ ${entries.join(", ")} }`;
177
202
  }
178
203
  /** Render one column line (field name + Drizzle column expression). */
179
- function renderColumn(spec, field, ctx, isPk, pkGeneration, fkInfo, isComposite, isUnique = false, entityPackage = undefined) {
204
+ function renderColumn(spec, field, ctx, isPk, pkGeneration, fkInfo, isComposite, isUnique = false, entityPackage = undefined,
205
+ // Name of the entity this column belongs to — used to detect a self-referential
206
+ // FK (target entity === this entity), which Drizzle emits without a self-import.
207
+ currentEntityName = "",
208
+ // FR-017 Tier 2 — TPH subtype-only column: force nullable (drop .notNull())
209
+ // and suppress any DB default (other-subtype rows must stay NULL here).
210
+ forceNullable = false) {
180
211
  const fnSym = imp(`${spec.fnName}@${spec.importModule}`);
181
212
  const dbNameLit = JSON.stringify(spec.dbName);
182
213
  let baseCall;
@@ -230,13 +261,17 @@ function renderColumn(spec, field, ctx, isPk, pkGeneration, fkInfo, isComposite,
230
261
  // Avoid double-emitting .unique() if it was already appended above.
231
262
  if (isUnique && m === ".unique()")
232
263
  continue;
264
+ // TPH subtype-only column: never .notNull() / .unique() — rows of other
265
+ // subtypes store NULL, so neither constraint can hold across the table.
266
+ if (forceNullable && (m === ".notNull()" || m === ".unique()"))
267
+ continue;
233
268
  modifiersStr += m;
234
269
  }
235
270
  // sqlDefaultSegment must be a Code segment (not a raw string) so ts-poet tracks
236
271
  // the `sql` import via imp(); a raw `.default(sql`...`)` would leave `sql`
237
272
  // unresolved in the generated file.
238
273
  let sqlDefaultSegment = null;
239
- if (spec.defaultExpr !== undefined && !isPk) {
274
+ if (spec.defaultExpr !== undefined && !isPk && !forceNullable) {
240
275
  if (spec.defaultExpr.kind === "now") {
241
276
  if (ctx.dialect === "sqlite") {
242
277
  const sqlSym = imp("sql@drizzle-orm");
@@ -259,14 +294,24 @@ function renderColumn(spec, field, ctx, isPk, pkGeneration, fkInfo, isComposite,
259
294
  // FK .references() uses imp() so ts-poet tracks the cross-entity import.
260
295
  let fkRefSegment = null;
261
296
  if (fkInfo !== undefined && !isPk) {
262
- const targetSpec = crossEntitySpecifier(ctx.outputLayout, entityPackage, ctx.packageOf.get(fkInfo.targetEntityName), fkInfo.targetEntityName, ctx.extStyle);
263
- const targetVarSym = imp(`${fkInfo.targetVarName}@${targetSpec}`);
264
- fkRefSegment = code `.references(() => ${targetVarSym}.${fkInfo.targetPkField})`;
297
+ if (fkInfo.targetEntityName === currentEntityName) {
298
+ // Self-referential FK (e.g. createdBy → this same table). Drizzle requires
299
+ // referencing the local table const directly — NOT a self-import — with an
300
+ // explicit `Any*Column` return type to break the circular type inference.
301
+ const anyColType = ctx.dialect === "sqlite" ? "AnySQLiteColumn" : "AnyPgColumn";
302
+ const anyColSym = imp(`${anyColType}@${spec.importModule}`);
303
+ fkRefSegment = code `.references((): ${anyColSym} => ${fkInfo.targetVarName}.${fkInfo.targetPkField})`;
304
+ }
305
+ else {
306
+ const targetSpec = crossEntitySpecifier(ctx.outputLayout, entityPackage, ctx.packageOf.get(fkInfo.targetEntityName), fkInfo.targetEntityName, ctx.extStyle);
307
+ const targetVarSym = imp(`${fkInfo.targetVarName}@${targetSpec}`);
308
+ fkRefSegment = code `.references(() => ${targetVarSym}.${fkInfo.targetPkField})`;
309
+ }
265
310
  }
266
311
  // @autoSet fields: emit .$defaultFn(() => new Date().toISOString()) so Drizzle
267
312
  // inserts stamp the server-side timestamp automatically. This means callers don't
268
313
  // need to supply createdAt / updatedAt in INSERT calls — Drizzle fills them in.
269
- const autoSet = field.ownAttr(FIELD_ATTR_AUTO_SET);
314
+ const autoSet = field.attr(FIELD_ATTR_AUTO_SET);
270
315
  const autoSetSuffix = (autoSet === "onCreate" || autoSet === "onUpdate")
271
316
  ? `.$defaultFn(() => new Date().toISOString())`
272
317
  : "";
@@ -278,12 +323,16 @@ function renderColumn(spec, field, ctx, isPk, pkGeneration, fkInfo, isComposite,
278
323
  let dollarTypeSegment = "";
279
324
  if (spec.dollarTypeRef !== undefined) {
280
325
  const ref = spec.dollarTypeRef;
326
+ const suffix = ref.array ? "[]" : "";
281
327
  if (ref.kind === "scalar") {
282
- dollarTypeSegment = `.$type<${ref.tsType}[]>()`;
328
+ dollarTypeSegment = `.$type<${ref.tsType}${suffix}>()`;
283
329
  }
284
330
  else {
285
- const refSym = imp(`${ref.name}@${ref.module}`);
286
- dollarTypeSegment = code `.$type<${refSym}[]>()`;
331
+ // Resolve the VO module through the shared layout/package/extStyle-aware
332
+ // helper so the .$type<VO> import matches the field's TS type + Zod schema.
333
+ const moduleSpec = valueObjectModuleSpecifier(ref.name, ctx.packageOf, entityPackage, ctx.outputLayout, ctx.extStyle);
334
+ const refSym = imp(`${ref.name}@${moduleSpec}`);
335
+ dollarTypeSegment = ref.array ? code `.$type<${refSym}[]>()` : code `.$type<${refSym}>()`;
287
336
  }
288
337
  }
289
338
  const columnLine = code ` ${field.name}: ${baseCall}${dollarTypeSegment}${modifiersStr}${autoSetSuffix}${sqlDefaultSegment ?? ""}${fkRefSegment ?? ""}`;
@@ -1 +1 @@
1
- {"version":3,"file":"drizzle-schema.js","sourceRoot":"","sources":["../../src/templates/drizzle-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drizzle-schema.js","sourceRoot":"","sources":["../../src/templates/drizzle-schema.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,0EAA0E;AAC1E,sDAAsD;AAEtD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAa,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EACL,0BAA0B,EAAE,kBAAkB,EAC9C,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EACpE,oBAAoB,EAAE,eAAe,EACrC,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAsB,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAmB,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAe,EAAE,GAAkB;IACrE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,MAAM,OAAO,GAAG,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,MAAM,YAAY,GAAG,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,qBAAqB,CAAC;IAC9F,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxD,MAAM,YAAY,GAAa,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QACvD,CAAC,CAAC,WAAuB;QACzB,CAAC,CAAC,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YAC7D,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,YAAY,GAAG,IAAI,GAAG,CAAS,YAAY,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,OAAO,EAAE,IAAI,CAAC,wBAAwB,CAAuB,CAAC;IAEnF,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC;IAE1C,0EAA0E;IAC1E,4EAA4E;IAC5E,yEAAyE;IACzE,yEAAyE;IACzE,MAAM,mBAAmB,GAAG,GAAG,CAAC,mBAAmB,EAAE,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAClD,IAAI,UAAU,KAAK,KAAK;YAAE,SAAS,CAAC,0CAA0C;QAC9E,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAyB,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS,CAAC,4DAA4D;QACzH,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,WAAW,GAAW,EAAE,CAAC;IAC/B,wFAAwF;IACxF,MAAM,gBAAgB,GAA0C,EAAE,CAAC;IACnE,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,0EAA0E;QAC1E,iCAAiC;QACjC,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5F,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5H,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA,KAAK,SAAS,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC/E,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvC,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,OAAO,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;gBACvC,IAAI,EAAE,IAAI,CAAC,eAAe;aAC3B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QACjE,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5F,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,YAAY,CAC7B,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAC3G,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA,KAAK,SAAS,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC/E,uEAAuE;QACvE,+DAA+D;QAC/D,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvC,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,OAAO,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;gBACvC,IAAI,EAAE,IAAI,CAAC,eAAe;aAC3B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,MAAM,eAAe,GAAW,EAAE,CAAC;IAEnC,IAAI,WAAW,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,eAAe,CAAC,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAyB,CAAC;QACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC5D,MAAM,SAAS,GAAG,OAAO,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACtH,uEAAuE;QACvE,qEAAqE;QACrE,gEAAgE;QAChE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,UAAU,KAAK,KAAK,CAAC;QACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC;QACnD,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC;IACpF,CAAC;IAED,sDAAsD;IACtD,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,gBAAgB,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,YAAY,EAAE,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACtC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,CAAC;IACzF,CAAC;IAED,IAAI,UAAgB,CAAC;IACrB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,UAAU,GAAG,IAAI,CAAA;eACN,OAAO,MAAM,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;EACjE,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;IAE/C,QAAQ,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;CAE1D,CAAC;IACA,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,IAAI,CAAA;eACN,OAAO,MAAM,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;EACjE,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;CAElD,CAAC;IACA,CAAC;IAED,6DAA6D;IAC7D,MAAM,cAAc,GAAG,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEtD,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,QAAQ,CAAC,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC;AAQD,oHAAoH;AACpH,SAAS,mBAAmB,CAAC,GAAe,EAAE,GAAkB;IAC9D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,mBAAmB,EAAE,EAAE,CAAC;QAC5C,6EAA6E;QAC7E,iEAAiE;QACjE,2EAA2E;QAC3E,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,SAAS;QAC3B,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC;QAChC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACxC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;QACjC,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC;QACpC,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,4EAA4E;QAC5E,yEAAyE;QACzE,qEAAqE;QACrE,8CAA8C;QAC9C,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,aAAa,GAAG,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE;YAClB,aAAa,EAAE,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC;YACjD,gBAAgB,EAAE,SAAS,CAAC,IAAI;YAChC,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,yBAAyB,CAChC,YAAyB,EACzB,YAAoB;IAEpB,MAAM,aAAa,GAAG,GAAG,CAAC,cAAc,YAAY,EAAE,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;SACxC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;SACxB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,CAAA,GAAG,aAAa,gBAAgB,UAAU,MAAM,CAAC;AAC9D,CAAC;AAED;;oFAEoF;AACpF,SAAS,mBAAmB,CAAC,GAA4B;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC;QACjC,CAAC;QACD,OAAO,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACrC,CAAC;AAED,uEAAuE;AACvE,SAAS,YAAY,CACnB,IAAgB,EAChB,KAAgB,EAChB,GAAkB,EAClB,IAAa,EACb,YAAgC,EAChC,MAA0B,EAC1B,WAAoB,EACpB,WAAoB,KAAK,EACzB,gBAAoC,SAAS;AAC7C,gFAAgF;AAChF,iFAAiF;AACjF,oBAA4B,EAAE;AAC9B,4EAA4E;AAC5E,wEAAwE;AACxE,gBAAyB,KAAK;IAE9B,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IAEzD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,QAAc,CAAC;IACnB,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3E,QAAQ,GAAG,IAAI,CAAA,GAAG,KAAK,IAAI,SAAS,KAAK,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;IAClF,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,IAAI,CAAA,GAAG,KAAK,IAAI,SAAS,GAAG,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,YAAY,KAAK,oBAAoB,EAAE,CAAC;YAC1C,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC7B,4EAA4E;gBAC5E,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sCAAsC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,kEAAkE;gBAClE,IAAI,KAAK,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;oBACzC,MAAM,YAAY,GAAG,GAAG,CAAC,aAAa,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;oBAC3D,QAAQ,GAAG,IAAI,CAAA,GAAG,YAAY,IAAI,SAAS,uBAAuB,CAAC;gBACrE,CAAC;qBAAM,CAAC;oBACN,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;oBACrD,QAAQ,GAAG,IAAI,CAAA,GAAG,SAAS,IAAI,SAAS,GAAG,CAAC;gBAC9C,CAAC;gBACD,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,IAAI,YAAY,KAAK,eAAe,EAAE,CAAC;YAC5C,QAAQ,GAAG,WAAW;gBACpB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,GAAG,CAAC,OAAO,KAAK,QAAQ;oBACxB,CAAC,CAAC,qDAAqD;oBACvD,CAAC,CAAC,+BAA+B,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;QAChD,CAAC;IACH,CAAC;IAED,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,6FAA6F;IAC7F,IAAI,QAAQ;QAAE,YAAY,IAAI,WAAW,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,qEAAqE;QACrE,wFAAwF;QACxF,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,WAAW,CAAC;YAAE,SAAS;QAChF,oEAAoE;QACpE,IAAI,QAAQ,IAAI,CAAC,KAAK,WAAW;YAAE,SAAS;QAC5C,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,aAAa,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,WAAW,CAAC;YAAE,SAAS;QACzE,YAAY,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,gFAAgF;IAChF,2EAA2E;IAC3E,oCAAoC;IACpC,IAAI,iBAAiB,GAAgB,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9D,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBACtC,iBAAiB,GAAG,IAAI,CAAA,YAAY,MAAM,wBAAwB,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,YAAY,IAAI,eAAe,CAAC;YAClC,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACtC,qEAAqE;YACrE,iBAAiB,GAAG,IAAI,CAAA,YAAY,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;QAC3E,CAAC;aAAM,CAAC;YACN,UAAU;YACV,YAAY,IAAI,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;QACxE,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,IAAI,YAAY,GAAgB,IAAI,CAAC;IACrC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,gBAAgB,KAAK,iBAAiB,EAAE,CAAC;YAClD,2EAA2E;YAC3E,2EAA2E;YAC3E,0EAA0E;YAC1E,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC;YAChF,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YAC5D,YAAY,GAAG,IAAI,CAAA,mBAAmB,SAAS,OAAO,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,oBAAoB,CACrC,GAAG,CAAC,YAAY,EAChB,aAAa,EACb,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAC1C,MAAM,CAAC,gBAAgB,EACvB,GAAG,CAAC,QAAQ,CACb,CAAC;YACF,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,aAAa,IAAI,UAAU,EAAE,CAAC,CAAC;YAClE,YAAY,GAAG,IAAI,CAAA,qBAAqB,YAAY,IAAI,MAAM,CAAC,aAAa,GAAG,CAAC;QAClF,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,kFAAkF;IAClF,gFAAgF;IAChF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,CAAC,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,UAAU,CAAC;QACtE,CAAC,CAAC,6CAA6C;QAC/C,CAAC,CAAC,EAAE,CAAC;IAEP,8EAA8E;IAC9E,wEAAwE;IACxE,2FAA2F;IAC3F,6EAA6E;IAC7E,UAAU;IACV,IAAI,iBAAiB,GAAkB,EAAE,CAAC;IAC1C,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,iBAAiB,GAAG,UAAU,GAAG,CAAC,MAAM,GAAG,MAAM,KAAK,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,yEAAyE;YACzE,4EAA4E;YAC5E,MAAM,UAAU,GAAG,0BAA0B,CAC3C,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,QAAQ,CACvE,CAAC;YACF,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;YAChD,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA,UAAU,MAAM,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,UAAU,MAAM,KAAK,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAA,KAAK,KAAK,CAAC,IAAI,KAAK,QAAQ,GAAG,iBAAiB,GAAG,YAAY,GAAG,aAAa,GAAG,iBAAiB,IAAI,EAAE,GAAG,YAAY,IAAI,EAAE,EAAE,CAAC;IACxJ,OAAO,IAAI,CAAC,cAAc,KAAK,SAAS;QACtC,CAAC,CAAC,IAAI,CAAA,QAAQ,IAAI,CAAC,cAAc,KAAK,UAAU,EAAE;QAClD,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC"}
@@ -1,4 +1,11 @@
1
1
  import { type Code } from "ts-poet";
2
+ import type { MetaData } from "@metaobjectsdev/metadata";
2
3
  import { MetaObject } from "@metaobjectsdev/metadata";
4
+ /**
5
+ * REST resource path for an entity. Pluralized + snake_cased + lowercased.
6
+ * "Subscriber" → "/subscribers"
7
+ * "WorkoutEvent" → "/workout_events"
8
+ */
9
+ export declare function resourcePath(entity: MetaData): string;
3
10
  export declare function renderEntityConstants(obj: MetaObject, apiPrefix?: string): Code;
4
11
  //# sourceMappingURL=entity-constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-constants.d.ts","sourceRoot":"","sources":["../../src/templates/entity-constants.ts"],"names":[],"mappings":"AA8BA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAa,MAAM,0BAA0B,CAAC;AA+KjE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,SAAK,GAAG,IAAI,CAwC3E"}
1
+ {"version":3,"file":"entity-constants.d.ts","sourceRoot":"","sources":["../../src/templates/entity-constants.ts"],"names":[],"mappings":"AA8BA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAa,MAAM,0BAA0B,CAAC;AAgCjE;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAMrD;AAoID,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,SAAK,GAAG,IAAI,CAwC3E"}
@@ -45,7 +45,7 @@ function humanize(s) {
45
45
  * "Subscriber" → "/subscribers"
46
46
  * "WorkoutEvent" → "/workout_events"
47
47
  */
48
- function resourcePath(entity) {
48
+ export function resourcePath(entity) {
49
49
  const overrideAttr = entity.ownAttr("routePath");
50
50
  if (typeof overrideAttr === "string" && overrideAttr.length > 0) {
51
51
  return overrideAttr.startsWith("/") ? overrideAttr : `/${overrideAttr}`;
@@ -135,11 +135,11 @@ function renderFieldRules(field) {
135
135
  }
136
136
  }
137
137
  // Field-level @required attr (if not already covered by validator).
138
- if (!hasRequired && field.ownAttr(FIELD_ATTR_REQUIRED) === true) {
138
+ if (!hasRequired && field.attr(FIELD_ATTR_REQUIRED) === true) {
139
139
  ruleParts.push(`required: ${JSON.stringify(`${humanize(field.name)} is required`)}`);
140
140
  }
141
141
  // Field-level @maxLength attr (if not already covered).
142
- const maxLenAttr = field.ownAttr(FIELD_ATTR_MAX_LENGTH);
142
+ const maxLenAttr = field.attr(FIELD_ATTR_MAX_LENGTH);
143
143
  if (!hasMaxLength && typeof maxLenAttr === "number") {
144
144
  ruleParts.push(`maxLength: { value: ${maxLenAttr}, message: ${JSON.stringify(`Must be ${maxLenAttr} characters or fewer`)} }`);
145
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"entity-constants.js","sourceRoot":"","sources":["../../src/templates/entity-constants.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,0EAA0E;AAC1E,EAAE;AACF,yDAAyD;AACzD,EAAE;AACF,gCAAgC;AAChC,6BAA6B;AAC7B,8BAA8B;AAC9B,+BAA+B;AAC/B,EAAE;AACF,eAAe;AACf,8BAA8B;AAC9B,0GAA0G;AAC1G,gEAAgE;AAChE,qGAAqG;AACrG,mGAAmG;AACnG,qFAAqF;AACrF,0FAA0F;AAC1F,0CAA0C;AAC1C,iFAAiF;AACjF,iEAAiE;AACjE,WAAW;AACX,SAAS;AACT,aAAa;AACb,gBAAgB;AAChB,EAAE;AACF,yEAAyE;AACzE,uEAAuE;AACvE,gDAAgD;AAEhD,OAAO,EAAE,IAAI,EAAa,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3E,8EAA8E;AAC9E,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,CAAC;SACL,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;SACnC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACxC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAAgB;IACpC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACjD,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,OAAO,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACnD,CAAC;AAED,iHAAiH;AACjH,SAAS,WAAW,CAAC,KAAgB;IACnC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAY,EAAE,QAAiB;IACvD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IACzE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,iBAAiB;YACpB,OAAO,MAAM,CAAC;QAChB,KAAK,mBAAmB;YACtB,OAAO,QAAQ,CAAC;QAClB,KAAK,iBAAiB;YACpB,OAAO,MAAM,CAAC;QAChB,KAAK,qBAAqB;YACxB,OAAO,UAAU,CAAC;QACpB,KAAK,qBAAqB;YACxB,OAAO,UAAU,CAAC;QACpB,KAAK,mBAAmB;YACtB,OAAO,QAAQ,CAAC;QAClB,KAAK,kBAAkB;YACrB,OAAO,OAAO,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB,KAAK,qBAAqB,CAAC;QAC3B,KAAK,qBAAqB;YACxB,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,KAAgB;IACxC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,OAAO,KAAK,0BAA0B,EAAE,CAAC;YACjD,MAAM,GAAG,GAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAwB,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;YACtG,SAAS,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnD,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,KAAK,wBAAwB,EAAE,CAAC;YACtD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC9C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAwB,IAAI,oBAAoB,GAAG,aAAa,CAAC;gBACxG,SAAS,CAAC,IAAI,CAAC,uBAAuB,GAAG,cAAc,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClF,CAAC;YACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAwB,IAAI,WAAW,GAAG,sBAAsB,CAAC;gBACxG,SAAS,CAAC,IAAI,CAAC,uBAAuB,GAAG,cAAc,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChF,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,KAAK,uBAAuB,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACtD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAwB,IAAI,gBAAgB,CAAC;gBACjF,qEAAqE;gBACrE,+EAA+E;gBAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAClE,SAAS,CAAC,IAAI,CAAC,sBAAsB,IAAI,eAAe,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,IAAI,EAAE,CAAC;QAChE,SAAS,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,wDAAwD;IACxD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxD,IAAI,CAAC,YAAY,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACpD,SAAS,CAAC,IAAI,CACZ,uBAAuB,UAAU,cAAc,IAAI,CAAC,SAAS,CAAC,WAAW,UAAU,sBAAsB,CAAC,IAAI,CAC/G,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7C,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACvC,CAAC;AAED,+EAA+E;AAC/E,SAAS,gBAAgB,CAAC,KAAgB;IACxC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAuB,CAAC;IAC3E,MAAM,QAAQ,GAAG,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAuB,CAAC;IACrE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAuB,CAAC,CAAC;IAC7F,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAa;QACxB,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;QACrC,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QACjC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;KAChC,CAAC;IACF,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClF,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3F,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;IAEzD,oEAAoE;IACpE,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,KAAK,KAAK,CAAC,IAAI,YAAY,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAe,EAAE,SAAS,GAAG,EAAE;IACnE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;IAC5B,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,+EAA+E;IAC/E,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,IAAI,GAAG;QACX,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;QAC1C,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;QACxC,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QAClC,iBAAiB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;QAC5C,GAAG,YAAY;KAChB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAEd,OAAO,IAAI,CAAA;;4BAEe,UAAU;;;;;;;;;;kCAUJ,UAAU,KAAK,UAAU;6BAEvD,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,WAC/C;;eAEa,UAAU;EACvB,IAAI;;CAEL,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"entity-constants.js","sourceRoot":"","sources":["../../src/templates/entity-constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity-file.d.ts","sourceRoot":"","sources":["../../src/templates/entity-file.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAc1D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,aAAa,EAClB,IAAI,CAAC,EAAE,oBAAoB,GAC1B,MAAM,CAuDR"}
1
+ {"version":3,"file":"entity-file.d.ts","sourceRoot":"","sources":["../../src/templates/entity-file.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAe1D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,aAAa,EAClB,IAAI,CAAC,EAAE,oBAAoB,GAC1B,MAAM,CAiER"}