@metaobjectsdev/codegen-ts 0.24.5 → 1.0.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 (237) hide show
  1. package/README.md +37 -12
  2. package/dist/api-surface.d.ts +29 -0
  3. package/dist/api-surface.d.ts.map +1 -1
  4. package/dist/api-surface.js +47 -0
  5. package/dist/api-surface.js.map +1 -1
  6. package/dist/column-mapper.d.ts +12 -0
  7. package/dist/column-mapper.d.ts.map +1 -1
  8. package/dist/column-mapper.js +1 -0
  9. package/dist/column-mapper.js.map +1 -1
  10. package/dist/constants.d.ts +24 -11
  11. package/dist/constants.d.ts.map +1 -1
  12. package/dist/constants.js +54 -19
  13. package/dist/constants.js.map +1 -1
  14. package/dist/db-emitting.d.ts +6 -0
  15. package/dist/db-emitting.d.ts.map +1 -0
  16. package/dist/db-emitting.js +26 -0
  17. package/dist/db-emitting.js.map +1 -0
  18. package/dist/generator-registry.d.ts.map +1 -1
  19. package/dist/generator-registry.js +14 -1
  20. package/dist/generator-registry.js.map +1 -1
  21. package/dist/generator.d.ts +5 -0
  22. package/dist/generator.d.ts.map +1 -1
  23. package/dist/generator.js.map +1 -1
  24. package/dist/generators/agent-docs-file.d.ts +19 -0
  25. package/dist/generators/agent-docs-file.d.ts.map +1 -0
  26. package/dist/generators/agent-docs-file.js +257 -0
  27. package/dist/generators/agent-docs-file.js.map +1 -0
  28. package/dist/generators/agent-requirements-page.d.ts +22 -0
  29. package/dist/generators/agent-requirements-page.d.ts.map +1 -0
  30. package/dist/generators/agent-requirements-page.js +175 -0
  31. package/dist/generators/agent-requirements-page.js.map +1 -0
  32. package/dist/generators/agent-schema-input.d.ts +69 -0
  33. package/dist/generators/agent-schema-input.d.ts.map +1 -0
  34. package/dist/generators/agent-schema-input.js +23 -0
  35. package/dist/generators/agent-schema-input.js.map +1 -0
  36. package/dist/generators/agent-schema-page.d.ts +21 -0
  37. package/dist/generators/agent-schema-page.d.ts.map +1 -0
  38. package/dist/generators/agent-schema-page.js +241 -0
  39. package/dist/generators/agent-schema-page.js.map +1 -0
  40. package/dist/generators/agent-ui-page.d.ts +22 -0
  41. package/dist/generators/agent-ui-page.d.ts.map +1 -0
  42. package/dist/generators/agent-ui-page.js +253 -0
  43. package/dist/generators/agent-ui-page.js.map +1 -0
  44. package/dist/generators/api-docs-file.d.ts.map +1 -1
  45. package/dist/generators/api-docs-file.js +13 -6
  46. package/dist/generators/api-docs-file.js.map +1 -1
  47. package/dist/generators/api-model.d.ts +6 -0
  48. package/dist/generators/api-model.d.ts.map +1 -1
  49. package/dist/generators/api-model.js +54 -35
  50. package/dist/generators/api-model.js.map +1 -1
  51. package/dist/generators/callable-file.js +1 -1
  52. package/dist/generators/callable-file.js.map +1 -1
  53. package/dist/generators/docs-data-builder.d.ts.map +1 -1
  54. package/dist/generators/docs-data-builder.js +47 -2
  55. package/dist/generators/docs-data-builder.js.map +1 -1
  56. package/dist/generators/docs-data.d.ts +6 -2
  57. package/dist/generators/docs-data.d.ts.map +1 -1
  58. package/dist/generators/index.d.ts +3 -8
  59. package/dist/generators/index.d.ts.map +1 -1
  60. package/dist/generators/index.js +19 -14
  61. package/dist/generators/index.js.map +1 -1
  62. package/dist/generators/names-file.d.ts +17 -0
  63. package/dist/generators/names-file.d.ts.map +1 -0
  64. package/dist/generators/names-file.js +95 -0
  65. package/dist/generators/names-file.js.map +1 -0
  66. package/dist/generators/requirements-markdown.d.ts +18 -1
  67. package/dist/generators/requirements-markdown.d.ts.map +1 -1
  68. package/dist/generators/requirements-markdown.js +11 -9
  69. package/dist/generators/requirements-markdown.js.map +1 -1
  70. package/dist/generators/routes-file-hono.d.ts +17 -2
  71. package/dist/generators/routes-file-hono.d.ts.map +1 -1
  72. package/dist/generators/routes-file-hono.js +9 -11
  73. package/dist/generators/routes-file-hono.js.map +1 -1
  74. package/dist/generators/routes-file.d.ts +17 -2
  75. package/dist/generators/routes-file.d.ts.map +1 -1
  76. package/dist/generators/routes-file.js +10 -8
  77. package/dist/generators/routes-file.js.map +1 -1
  78. package/dist/generators/template-generator.d.ts.map +1 -1
  79. package/dist/generators/template-generator.js +20 -6
  80. package/dist/generators/template-generator.js.map +1 -1
  81. package/dist/index.d.ts +20 -5
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js +43 -4
  84. package/dist/index.js.map +1 -1
  85. package/dist/metaobjects-config.d.ts +38 -1
  86. package/dist/metaobjects-config.d.ts.map +1 -1
  87. package/dist/metaobjects-config.js +9 -1
  88. package/dist/metaobjects-config.js.map +1 -1
  89. package/dist/names.d.ts +275 -0
  90. package/dist/names.d.ts.map +1 -0
  91. package/dist/names.js +433 -0
  92. package/dist/names.js.map +1 -0
  93. package/dist/overwrite-policy.d.ts.map +1 -1
  94. package/dist/overwrite-policy.js +15 -3
  95. package/dist/overwrite-policy.js.map +1 -1
  96. package/dist/projection/extract-view-spec.d.ts +25 -1
  97. package/dist/projection/extract-view-spec.d.ts.map +1 -1
  98. package/dist/projection/extract-view-spec.js +79 -6
  99. package/dist/projection/extract-view-spec.js.map +1 -1
  100. package/dist/reference-templates.d.ts +1 -1
  101. package/dist/reference-templates.d.ts.map +1 -1
  102. package/dist/reference-templates.js +1 -1
  103. package/dist/reference-templates.js.map +1 -1
  104. package/dist/render-context.d.ts +12 -1
  105. package/dist/render-context.d.ts.map +1 -1
  106. package/dist/render-context.js +1 -0
  107. package/dist/render-context.js.map +1 -1
  108. package/dist/retired-codegen-attrs.d.ts +32 -0
  109. package/dist/retired-codegen-attrs.d.ts.map +1 -0
  110. package/dist/retired-codegen-attrs.js +47 -0
  111. package/dist/retired-codegen-attrs.js.map +1 -0
  112. package/dist/routes-expose.d.ts +63 -0
  113. package/dist/routes-expose.d.ts.map +1 -0
  114. package/dist/routes-expose.js +57 -0
  115. package/dist/routes-expose.js.map +1 -0
  116. package/dist/runner.d.ts +18 -0
  117. package/dist/runner.d.ts.map +1 -1
  118. package/dist/runner.js +109 -7
  119. package/dist/runner.js.map +1 -1
  120. package/dist/templates/callable-file.d.ts +7 -2
  121. package/dist/templates/callable-file.d.ts.map +1 -1
  122. package/dist/templates/callable-file.js +54 -9
  123. package/dist/templates/callable-file.js.map +1 -1
  124. package/dist/templates/drizzle-schema.d.ts.map +1 -1
  125. package/dist/templates/drizzle-schema.js +236 -65
  126. package/dist/templates/drizzle-schema.js.map +1 -1
  127. package/dist/templates/entity-constants.d.ts +15 -6
  128. package/dist/templates/entity-constants.d.ts.map +1 -1
  129. package/dist/templates/entity-constants.js +85 -161
  130. package/dist/templates/entity-constants.js.map +1 -1
  131. package/dist/templates/entity-file.d.ts.map +1 -1
  132. package/dist/templates/entity-file.js +38 -4
  133. package/dist/templates/entity-file.js.map +1 -1
  134. package/dist/templates/entity-meta-file.d.ts +15 -1
  135. package/dist/templates/entity-meta-file.d.ts.map +1 -1
  136. package/dist/templates/entity-meta-file.js +12 -2
  137. package/dist/templates/entity-meta-file.js.map +1 -1
  138. package/dist/templates/entity-ui-descriptor.d.ts +112 -0
  139. package/dist/templates/entity-ui-descriptor.d.ts.map +1 -0
  140. package/dist/templates/entity-ui-descriptor.js +238 -0
  141. package/dist/templates/entity-ui-descriptor.js.map +1 -0
  142. package/dist/templates/field-meta.d.ts +46 -9
  143. package/dist/templates/field-meta.d.ts.map +1 -1
  144. package/dist/templates/field-meta.js +95 -21
  145. package/dist/templates/field-meta.js.map +1 -1
  146. package/dist/templates/names-decl.d.ts +38 -0
  147. package/dist/templates/names-decl.d.ts.map +1 -0
  148. package/dist/templates/names-decl.js +104 -0
  149. package/dist/templates/names-decl.js.map +1 -0
  150. package/dist/templates/projection-decl.d.ts +21 -0
  151. package/dist/templates/projection-decl.d.ts.map +1 -1
  152. package/dist/templates/projection-decl.js +53 -29
  153. package/dist/templates/projection-decl.js.map +1 -1
  154. package/dist/templates/queries-file.d.ts.map +1 -1
  155. package/dist/templates/queries-file.js +17 -2
  156. package/dist/templates/queries-file.js.map +1 -1
  157. package/dist/templates/requirement-test.d.ts.map +1 -1
  158. package/dist/templates/requirement-test.js +13 -2
  159. package/dist/templates/requirement-test.js.map +1 -1
  160. package/dist/templates/routes-file-hono.d.ts +2 -1
  161. package/dist/templates/routes-file-hono.d.ts.map +1 -1
  162. package/dist/templates/routes-file-hono.js +11 -2
  163. package/dist/templates/routes-file-hono.js.map +1 -1
  164. package/dist/templates/routes-file.d.ts +2 -1
  165. package/dist/templates/routes-file.d.ts.map +1 -1
  166. package/dist/templates/routes-file.js +54 -21
  167. package/dist/templates/routes-file.js.map +1 -1
  168. package/dist/templates/value-object-file.d.ts.map +1 -1
  169. package/dist/templates/value-object-file.js +15 -1
  170. package/dist/templates/value-object-file.js.map +1 -1
  171. package/dist/templates/view-decl.d.ts +37 -1
  172. package/dist/templates/view-decl.d.ts.map +1 -1
  173. package/dist/templates/view-decl.js +27 -3
  174. package/dist/templates/view-decl.js.map +1 -1
  175. package/dist/templates/zod-validators.d.ts +21 -0
  176. package/dist/templates/zod-validators.d.ts.map +1 -1
  177. package/dist/templates/zod-validators.js +40 -5
  178. package/dist/templates/zod-validators.js.map +1 -1
  179. package/dist/view-context.d.ts +24 -0
  180. package/dist/view-context.d.ts.map +1 -0
  181. package/dist/view-context.js +81 -0
  182. package/dist/view-context.js.map +1 -0
  183. package/package.json +6 -6
  184. package/src/api-surface.ts +53 -0
  185. package/src/column-mapper.ts +13 -0
  186. package/src/constants.ts +91 -16
  187. package/src/db-emitting.ts +31 -0
  188. package/src/generator-registry.ts +14 -4
  189. package/src/generator.ts +5 -0
  190. package/src/generators/agent-docs-file.ts +297 -0
  191. package/src/generators/agent-requirements-page.ts +199 -0
  192. package/src/generators/agent-schema-input.ts +88 -0
  193. package/src/generators/agent-schema-page.ts +297 -0
  194. package/src/generators/agent-ui-page.ts +290 -0
  195. package/src/generators/api-docs-file.ts +13 -6
  196. package/src/generators/api-model.ts +63 -34
  197. package/src/generators/callable-file.ts +1 -1
  198. package/src/generators/docs-data-builder.ts +46 -2
  199. package/src/generators/docs-data.ts +6 -2
  200. package/src/generators/index.ts +25 -14
  201. package/src/generators/names-file.ts +98 -0
  202. package/src/generators/requirements-markdown.ts +36 -2
  203. package/src/generators/routes-file-hono.ts +19 -10
  204. package/src/generators/routes-file.ts +20 -7
  205. package/src/generators/template-generator.ts +20 -6
  206. package/src/index.ts +64 -4
  207. package/src/metaobjects-config.ts +48 -2
  208. package/src/names.ts +629 -0
  209. package/src/overwrite-policy.ts +15 -3
  210. package/src/projection/extract-view-spec.ts +85 -6
  211. package/src/reference/entity.ts +21 -2
  212. package/src/reference/names.ts +125 -0
  213. package/src/reference/queries.ts +19 -3
  214. package/src/reference/routes-hono.ts +19 -9
  215. package/src/reference/routes.ts +25 -9
  216. package/src/reference-templates.ts +1 -1
  217. package/src/render-context.ts +13 -1
  218. package/src/retired-codegen-attrs.ts +52 -0
  219. package/src/routes-expose.ts +86 -0
  220. package/src/runner.ts +122 -11
  221. package/src/templates/callable-file.ts +60 -8
  222. package/src/templates/drizzle-schema.ts +248 -60
  223. package/src/templates/entity-constants.ts +95 -184
  224. package/src/templates/entity-file.ts +46 -4
  225. package/src/templates/entity-meta-file.ts +16 -3
  226. package/src/templates/entity-ui-descriptor.ts +305 -0
  227. package/src/templates/field-meta.ts +100 -19
  228. package/src/templates/names-decl.ts +165 -0
  229. package/src/templates/projection-decl.ts +72 -31
  230. package/src/templates/queries-file.ts +17 -2
  231. package/src/templates/requirement-test.ts +13 -2
  232. package/src/templates/routes-file-hono.ts +14 -2
  233. package/src/templates/routes-file.ts +69 -24
  234. package/src/templates/value-object-file.ts +15 -1
  235. package/src/templates/view-decl.ts +53 -3
  236. package/src/templates/zod-validators.ts +41 -5
  237. package/src/view-context.ts +88 -0
@@ -0,0 +1,38 @@
1
+ /**
2
+ * §A1/§A2 — `<Entity>Names`: the physical database names for one object, as constants a
3
+ * hand-written consumer references instead of a string literal.
4
+ *
5
+ * Shape copied from the FR-009 filter allowlist, which is the same problem (a per-entity
6
+ * name artifact) already solved in all five ports. Deliberately NOT folded into the entity
7
+ * descriptor: four of five ports have no descriptor to extend, and merging in TypeScript
8
+ * alone would make TS the odd port out on the axis this project protects hardest.
9
+ *
10
+ * An artifact whose object EXTENDS another one that has an artifact of its own spreads it
11
+ * rather than restating what it inherits — "extend from the parent, do not redo all the
12
+ * names". Two shapes, decided structurally:
13
+ *
14
+ * - the object declares its OWN source: spread only the super's `fields`, because the
15
+ * physical name, kind, schema and read-only-ness are this object's own. Spreading the
16
+ * whole super here would leak its `schema` onto a child that declares none.
17
+ * - the object INHERITS its source (a TPH subtype sharing its base's single table):
18
+ * spread the WHOLE super, so the table name is stated once, on the base.
19
+ */
20
+ import type { ColumnNamingStrategy, MetaObject } from "@metaobjectsdev/metadata";
21
+ export interface NamesDeclOpts {
22
+ readonly strategy?: ColumnNamingStrategy | undefined;
23
+ /**
24
+ * Module specifier for the super's names module (e.g. `"./BaseEntity.names"`), when this
25
+ * artifact extends one. Computed by the CALLER, which is the only place that knows the
26
+ * project's output layout and extension style. Omitted ⇒ the flat shape: every inherited
27
+ * column restated, which is what an ejected reference template that has not been updated
28
+ * still produces. Correct, just not deduplicated.
29
+ */
30
+ readonly superSpecifier?: string | undefined;
31
+ /**
32
+ * Render the FRAGMENT form — an abstract base that a sourced object extends, carrying
33
+ * columns and no physical name. See `resolveSuperFragmentNames`.
34
+ */
35
+ readonly fragment?: boolean | undefined;
36
+ }
37
+ export declare function renderNamesDecl(obj: MetaObject, opts?: ColumnNamingStrategy | NamesDeclOpts): string;
38
+ //# sourceMappingURL=names-decl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names-decl.d.ts","sourceRoot":"","sources":["../../src/templates/names-decl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAWjF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACrD;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACzC;AAOD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,UAAU,EACf,IAAI,CAAC,EAAE,oBAAoB,GAAG,aAAa,GAC1C,MAAM,CA6GR"}
@@ -0,0 +1,104 @@
1
+ import { GENERATED_HEADER } from "../constants.js";
2
+ import { PHYSICAL_NAME_ATTR_BY_KIND, primaryRdbSource } from "@metaobjectsdev/metadata";
3
+ /** The physical-name alias keys, in the metamodel's own order. */
4
+ const PHYSICAL_NAME_ALIASES = [...PHYSICAL_NAME_ATTR_BY_KIND.values()];
5
+ import { resolveObjectNames, resolveSuperFragmentNames, } from "../names.js";
6
+ /** Back-compat: the second argument was the naming strategy, and an ejected copy still passes it. */
7
+ function normalize(opts) {
8
+ return typeof opts === "string" || opts === undefined ? { strategy: opts } : opts;
9
+ }
10
+ export function renderNamesDecl(obj, opts) {
11
+ const o = normalize(opts);
12
+ // `fragment` says "this is an ANCESTOR render" — emit even though the walk reached this
13
+ // object by climbing rather than by matching. It does NOT say which shape to render, and
14
+ // it must not: a caller that hardcodes `true` is correct for an abstract base with
15
+ // columns and no table, and wrong for the other ancestor this walk reaches — a TPH BASE
16
+ // under `meta gen --entities <Subtype>`, which owns the shared table. Rendered as a
17
+ // fragment it emits no source at all while the subtype still spreads it.
18
+ //
19
+ // Derived HERE rather than at the call site because the call sites are plural and one of
20
+ // them is EJECTED: `src/reference/names.ts` is copied into an adopter's repo by
21
+ // `meta init` and thereafter owned by them. Deciding it in the engine makes every copy
22
+ // already on disk correct without an edit, and leaves no caller able to get it wrong.
23
+ const n = o.fragment === true && primaryRdbSource(obj) === undefined
24
+ ? resolveSuperFragmentNames(obj, o.strategy)
25
+ : resolveObjectNames(obj, o.strategy);
26
+ if (n === undefined)
27
+ return "";
28
+ const superSym = n.superNames === undefined || o.superSpecifier === undefined
29
+ ? undefined
30
+ : `${n.superNames.name}Names`;
31
+ const q = (v) => JSON.stringify(v);
32
+ // A key is emitted bare only when it is a valid identifier. Field names always are;
33
+ // an index name is author-chosen and routinely is not (`uq_cust_email` is, `2fa-idx`
34
+ // is not), so quoting is decided per key rather than per collection — an unquoted
35
+ // non-identifier key is a file that does not parse.
36
+ const key = (k) => (/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(k) ? k : q(k));
37
+ /**
38
+ * One `name`-keyed collection — `fields`, `identities`, `indexes`.
39
+ *
40
+ * With a super to spread, only what THIS object declares is emitted and the rest is
41
+ * reached through the parent's artifact, so a physical name is stated once. Without one,
42
+ * every member must be here: a consumer looks a column up by field name and an inherited
43
+ * miss falls back to a literal, which is the defect the artifact exists to remove.
44
+ *
45
+ * The collection key is always emitted, even when empty, because a child spreads
46
+ * `...Super.identities` unconditionally.
47
+ */
48
+ const collection = (label, all, own, render) => {
49
+ const rows = superSym === undefined ? all : own;
50
+ const body = Object.keys(rows).sort()
51
+ .map((k) => ` ${key(k)}: ${render(rows[k])},`)
52
+ .join("\n");
53
+ const spread = superSym === undefined ? "" : ` ...${superSym}.${label},\n`;
54
+ if (spread === "" && body === "")
55
+ return ` ${label}: {},`;
56
+ return ` ${label}: {\n${spread}${body}${body === "" ? "" : "\n"} },`;
57
+ };
58
+ const fieldsBlock = collection("fields", n.fields, n.ownFields, (f) => `{ name: ${q(f.name)}, column: ${q(f.column)} }`);
59
+ // `type` and `subType` on every entry, because the artifact mirrors the metadata tree
60
+ // and because on these two collections the subType is the only thing that says whether
61
+ // an index is unique — ADR-0040 put that in the type rather than in an attribute.
62
+ const renderKey = (k) => `{ type: ${q(k.type)}, subType: ${q(k.subType)}, name: ${q(k.name)}` +
63
+ (k.index === undefined ? " }" : `, index: ${q(k.index)} }`);
64
+ const identitiesBlock = collection("identities", n.identities, n.ownIdentities, renderKey);
65
+ const indexesBlock = collection("indexes", n.indexes, n.ownIndexes, renderKey);
66
+ const header = `// ${GENERATED_HEADER} — DO NOT EDIT.\n` +
67
+ `// Source metadata: ${obj.name}\n` +
68
+ (superSym === undefined ? "" : `import { ${superSym} } from ${q(o.superSpecifier)};\n\n`);
69
+ // The object's own identity. `name` is the METAMODEL name — it held the physical name
70
+ // until 0.25.0, and that key changing meaning without changing shape is the one thing
71
+ // here a hand-written consumer adopts without a compile error.
72
+ const identity = ` type: ${q(n.type)},\n` +
73
+ ` subType: ${q(n.subType)},\n` +
74
+ ` name: ${q(n.name)},\n`;
75
+ /** One source, under its role. The physical name sits under the alias for its `@kind`. */
76
+ const renderSource = (role, src) => {
77
+ const parts = [`type: ${q(src.type)}`, `subType: ${q(src.subType)}`, `kind: ${q(src.kind)}`];
78
+ if (src.schema !== undefined)
79
+ parts.push(`schema: ${q(src.schema)}`);
80
+ for (const alias of PHYSICAL_NAME_ALIASES) {
81
+ const v = src[alias];
82
+ if (typeof v === "string")
83
+ parts.push(`${alias}: ${q(v)}`);
84
+ }
85
+ return ` ${key(role)}: { ${parts.join(", ")} },`;
86
+ };
87
+ // A fragment declares no source and must never acquire one; a TPH subtype INHERITS its
88
+ // base's, so it spreads rather than restating — structural (the two resolve to the SAME
89
+ // node), never an equality test on the resolved strings.
90
+ const sourceRows = Object.keys(n.ownSources).sort()
91
+ .map((role) => renderSource(role, n.ownSources[role])).join("\n");
92
+ const spreadSources = superSym !== undefined && n.inheritsSource ? ` ...${superSym}.sources,\n` : "";
93
+ const sourcesBlock = spreadSources === "" && sourceRows === ""
94
+ ? " sources: {},"
95
+ : ` sources: {\n${spreadSources}${sourceRows}${sourceRows === "" ? "" : "\n"} },`;
96
+ return `${header}export const ${obj.name}Names = {
97
+ ${identity}${sourcesBlock}
98
+ ${fieldsBlock}
99
+ ${identitiesBlock}
100
+ ${indexesBlock}
101
+ } as const;
102
+ `;
103
+ }
104
+ //# sourceMappingURL=names-decl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names-decl.js","sourceRoot":"","sources":["../../src/templates/names-decl.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,16 @@
1
+ import { type Code } from "ts-poet";
1
2
  import { MetaObject, type MetaRoot } from "@metaobjectsdev/metadata";
2
3
  import type { ColumnNamingStrategy } from "../metaobjects-config.js";
3
4
  import { type RenderContext } from "../render-context.js";
5
+ import { type ObjectNames } from "../names.js";
4
6
  export interface ProjectionDeclOpts {
5
7
  readonly columnNamingStrategy: ColumnNamingStrategy;
6
8
  readonly dialect: "postgres" | "sqlite";
9
+ /**
10
+ * @deprecated Accepted and IGNORED — a projection's descriptor no longer carries the
11
+ * API base URL, same as an entity's. Kept on the options object because removing a
12
+ * field makes every caller still passing it fail TypeScript's excess-property check.
13
+ */
7
14
  readonly apiPrefix?: string;
8
15
  /** Drives the timestamp column TS type (Date vs string) in the view declaration. */
9
16
  readonly timestampMode?: "date" | "string";
@@ -26,6 +33,20 @@ export interface ProjectionDeclOpts {
26
33
  * e.g. a shared types package consumed by a web client that has no Drizzle.
27
34
  */
28
35
  readonly includeViewDecl?: boolean;
36
+ /**
37
+ * §A6 — the resolved names artifact for this projection plus the ts-poet symbol
38
+ * reference (`imp()`'d import of `<Projection>Names`), when the names generator is
39
+ * in the run. Built by the caller via `resolveObjectNames` + `imp(...)` — the same
40
+ * pair `drizzle-schema.ts` builds — so this file never resolves names itself; it
41
+ * only decides, per field, whether to reference the constant or fall back to the
42
+ * literal (a lookup MISS, never a divergence — `primaryRdbSource` already refused any
43
+ * object whose `@role: primary` sources disagree on a physical name). Threaded into `renderExistingViewDecl`
44
+ * too, since a projection's primary source IS the view its `sources.primary.view` names.
45
+ */
46
+ readonly names?: {
47
+ readonly resolved: ObjectNames;
48
+ readonly symbol: Code;
49
+ } | undefined;
29
50
  }
30
51
  /**
31
52
  * Render a TypeScript module for a projection entity. Emits:
@@ -1 +1 @@
1
- {"version":3,"file":"projection-decl.d.ts","sourceRoot":"","sources":["../../src/templates/projection-decl.ts"],"names":[],"mappings":"AAUA,OAAO,EACM,UAAU,EAAE,KAAK,QAAQ,EAErC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAYjF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,oFAAoF;IACpF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACpC;AAsBD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,kBAAkB,GACvB,MAAM,CAmGR"}
1
+ {"version":3,"file":"projection-decl.d.ts","sourceRoot":"","sources":["../../src/templates/projection-decl.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EACM,UAAU,EAAE,KAAK,QAAQ,EAErC,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEjF,OAAO,EAAsC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAWnF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,oFAAoF;IACpF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;CACxF;AAUD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,kBAAkB,GACvB,MAAM,CAwIR"}
@@ -7,31 +7,20 @@
7
7
  // - Zod Insert/Update schemas
8
8
  // - Insert/Update types
9
9
  import { code, imp, joinCode } from "ts-poet";
10
- import { MetaField, MetaObject, isMetaObject, FIELD_ATTR_OBJECT_REF, stripPackage, } from "@metaobjectsdev/metadata";
10
+ import { MetaField, MetaObject, isMetaObject, FIELD_ATTR_OBJECT_REF, stripPackage, resolveColumnName, resolveTableSchema, } from "@metaobjectsdev/metadata";
11
11
  import { projectionViewName } from "../projection/extract-view-spec.js";
12
- import { columnNameFromField, toSnakeCase, pluralize } from "../naming.js";
13
12
  import { GENERATED_HEADER } from "../constants.js";
14
13
  import { fieldDeclaringPackage } from "../render-context.js";
15
14
  import { valueObjectModuleSpecifier } from "../import-path.js";
15
+ import { physicalNameExpr, sourceSchemaExpr } from "../names.js";
16
16
  import { renderFilterAllowlist, renderSortAllowlist } from "./filter-allowlist.js";
17
17
  import { renderFilterType } from "./filter-type.js";
18
- import { inferViewKind, currencyMetaFor, labelFor } from "./field-meta.js";
18
+ import { buildUiFieldDescriptor, resourcePath } from "./entity-ui-descriptor.js";
19
19
  import { renderExistingViewDecl, renderViewReadZodObject } from "./view-decl.js";
20
20
  import { primaryIdentityFieldNames } from "./zod-validators.js";
21
21
  // ---------------------------------------------------------------------------
22
22
  // Helpers
23
23
  // ---------------------------------------------------------------------------
24
- /**
25
- * Convert a PascalCase projection name to a kebab-pluralized URL path.
26
- * "ProgramSummary" → "/program-summaries"
27
- * "CustomerSummary" → "/customer-summaries"
28
- * "Box" → "/boxes"
29
- * "Wish" → "/wishes"
30
- */
31
- function pathFromProjectionName(name) {
32
- const kebab = toSnakeCase(pluralize(name)).replace(/_/g, "-");
33
- return `/${kebab}`;
34
- }
35
24
  // ---------------------------------------------------------------------------
36
25
  // Public API
37
26
  // ---------------------------------------------------------------------------
@@ -48,7 +37,7 @@ function pathFromProjectionName(name) {
48
37
  * @param opts Column naming strategy + dialect.
49
38
  */
50
39
  export function renderProjectionDecl(projection, root, opts) {
51
- const { dialect, columnNamingStrategy, apiPrefix = "", timestampMode = "string", allowlists = true, ctx, includeViewDecl = true } = opts;
40
+ const { dialect, columnNamingStrategy, timestampMode = "string", allowlists = true, ctx, includeViewDecl = true, names } = opts;
52
41
  // ADR-0044/#228 — resolve a projection field's `@objectRef` to the value object's
53
42
  // EMITTED name + module TOGETHER (lock-step): bare when unique in the run,
54
43
  // package-qualified on a cross-package short-name collision, so the projection's
@@ -90,26 +79,62 @@ export function renderProjectionDecl(projection, root, opts) {
90
79
  for (const f of projection.ownFields())
91
80
  allFields.push(f);
92
81
  const constFieldLines = allFields.map((f) => {
93
- const dbCol = columnNameFromField(f.name, columnNamingStrategy);
94
- const view = inferViewKind(f);
95
- const label = labelFor(f);
96
- const baseEntry = `name: ${JSON.stringify(f.name)}, label: ${JSON.stringify(label)}, view: ${JSON.stringify(view)}, dbCol: ${JSON.stringify(dbCol)}`;
97
- const currencyMeta = currencyMetaFor(f);
98
- if (currencyMeta !== null) {
99
- return ` ${f.name}: { ${baseEntry}, currency: ${JSON.stringify(currencyMeta.currency)}, locale: ${JSON.stringify(currencyMeta.locale)} },`;
82
+ // §A4: resolveColumnName, NOT columnNameFromField — the latter takes a string and so
83
+ // cannot read @column, silently substituting the naming strategy's answer for a
84
+ // declared or inherited physical name. ADR-0039: resolving accessor, so a projection
85
+ // field inheriting @column through `extends` resolves it.
86
+ const dbCol = resolveColumnName(f, columnNamingStrategy);
87
+ // A6 reference the constant whenever the artifact is in the run AND carries this
88
+ // field. A lookup MISS (a TPH subtype field the base's names artifact never saw) is
89
+ // normal, not a divergence — fall back to the literal, same as every other §A6 site.
90
+ const namesEntry = names?.resolved.fields[f.name];
91
+ const dbColExpr = names !== undefined && namesEntry !== undefined
92
+ ? code `${names.symbol}.fields.${f.name}.column`
93
+ : code `${JSON.stringify(dbCol)}`;
94
+ // #356 — a projection's descriptor is the same shape the entity descriptor emits,
95
+ // and now literally the SAME derivation: `buildUiFieldDescriptor` is what
96
+ // `renderEntityConstants` reads, so the view kind, the label and the currency meta
97
+ // cannot come out differently here. A projection is read-only, so the members that
98
+ // describe a FORM (htmlType / placeholder / helpText / rules) are not emitted — a
99
+ // subset of one descriptor rather than a second answer — and `dbCol`, which only a
100
+ // view-backed const carries, is added.
101
+ const ui = buildUiFieldDescriptor(f);
102
+ const baseEntry = code `name: ${JSON.stringify(ui.name)}, label: ${JSON.stringify(ui.label)}, view: ${JSON.stringify(ui.view)}, dbCol: ${dbColExpr}`;
103
+ if (ui.currency !== undefined) {
104
+ return code ` ${f.name}: { ${baseEntry}, currency: ${JSON.stringify(ui.currency.currency)}, locale: ${JSON.stringify(ui.currency.locale)} },`;
100
105
  }
101
- return ` ${f.name}: { ${baseEntry} },`;
106
+ return code ` ${f.name}: { ${baseEntry} },`;
102
107
  });
103
108
  const projName = projection.name;
104
109
  const camelName = projName.charAt(0).toLowerCase() + projName.slice(1);
105
- const path = pathFromProjectionName(projName);
110
+ // ONE derivation of `$path`, shared with the entity const and with every page that
111
+ // documents an endpoint — `resourcePath` owns the projection/entity split. The
112
+ // kebab-pluralized spelling this module used to compute for itself is what it still
113
+ // returns for a projection; the second copy is what let `agent/ui.md` and
114
+ // `api/AGENT-API.md` both print the snake-cased entity spelling for a view.
115
+ const path = resourcePath(projection);
116
+ // A6 Task 1 fix round — the descriptor's $view is a SECOND, independent embedding
117
+ // of the view's physical name (the Drizzle .existing() decl in view-decl.ts is the
118
+ // first, already converted). Same "is the artifact in this run" condition, no
119
+ // equality guard: `names.resolved.name` is always the PRIMARY source's physical
120
+ // name, while `viewName` is derived by `viewName()` in extract-view-spec.ts, which
121
+ // for a projection declaring a role:replica read-only source BEFORE its role:primary
122
+ // one used to return a different, declaration-order-dependent string. That is why
123
+ // both spellings here must come from the constant rather than from two resolvers.
124
+ const viewLine = code `$view: ${physicalNameExpr(names, viewName, projection)}`;
125
+ // @schema for the view binding below. postgres-only downstream (view-decl gates on dialect).
126
+ const projectionSchema = resolveTableSchema(projection);
106
127
  // The projection's primary-identity fields type non-null in the view decl +
107
128
  // read schema even without @required (a PK is never NULL; see ViewDeclOpts).
108
129
  const pkFieldNames = new Set(primaryIdentityFieldNames(projection));
109
130
  const sections = [
110
131
  ...(includeViewDecl
111
- ? [renderExistingViewDecl(allFields, viewName, `${camelName}View`, {
112
- dialect, columnNamingStrategy, timestampMode, voRef, pkFieldNames,
132
+ ? [renderExistingViewDecl(allFields, physicalNameExpr(names, viewName, projection), `${camelName}View`, {
133
+ dialect, columnNamingStrategy, timestampMode, voRef, pkFieldNames, names,
134
+ // A projection's own artifact names its own view, so the constant IS this view's
135
+ // schema — unlike the write-through replica case in entity-file.ts.
136
+ schema: projectionSchema === undefined ? undefined
137
+ : sourceSchemaExpr(names) ?? projectionSchema,
113
138
  })]
114
139
  : []),
115
140
  code `
@@ -123,10 +148,9 @@ export type ${projName} = ${z}.infer<typeof ${projName}Schema>;
123
148
  code `
124
149
  export const ${projName} = {
125
150
  $entity: ${JSON.stringify(projName)},
126
- $view: ${JSON.stringify(viewName)},
151
+ ${viewLine},
127
152
  $path: ${JSON.stringify(path)},
128
- $apiPrefix: ${JSON.stringify(apiPrefix)},
129
- ${constFieldLines.join("\n")}
153
+ ${joinCode(constFieldLines, { on: "\n" })}
130
154
  } as const;
131
155
  `,
132
156
  ...(allowlists
@@ -1 +1 @@
1
- {"version":3,"file":"projection-decl.js","sourceRoot":"","sources":["../../src/templates/projection-decl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projection-decl.js","sourceRoot":"","sources":["../../src/templates/projection-decl.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queries-file.d.ts","sourceRoot":"","sources":["../../src/templates/queries-file.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,UAAU,EAGX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAyC1D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAqF7E"}
1
+ {"version":3,"file":"queries-file.d.ts","sourceRoot":"","sources":["../../src/templates/queries-file.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,UAAU,EAGX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAwD1D,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAqF7E"}
@@ -18,16 +18,31 @@ import { hasAutoSetFields } from "./zod-validators.js";
18
18
  * postgres.js, Neon, Vercel, pglite) — accepts whichever driver the consumer chose.
19
19
  * - SQLite: `BaseSQLiteDatabase<"sync" | "async", …>` accepts BOTH sync (better-sqlite3)
20
20
  * and async (libsql/Turso/D1) drivers; the generated queries `await` results, valid on either.
21
+ *
22
+ * EVERY type argument here must stay as OPEN as Drizzle's own constraint allows — a `Db`
23
+ * this alias cannot name is a helper the consumer cannot call, and generated code that
24
+ * does not compile is indistinguishable from generated code nobody imports. Two axes have
25
+ * now been re-pinned and re-widened in turn, so neither may be narrowed again:
26
+ * - DRIVER: pinning `NodePgDatabase` / `<"async">` rejected postgres.js and
27
+ * better-sqlite3. Fixed by dropping to the base classes above.
28
+ * - SCHEMA (`TFullSchema`): the idiomatic setup is `drizzle(client, { schema })`, which
29
+ * yields `PgDatabase<…, typeof schema>` / `BaseSQLiteDatabase<…, typeof schema>`.
30
+ * Leaving this parameter at Drizzle's `Record<string, never>` DEFAULT — spelled out on
31
+ * postgres, silently inherited on sqlite by supplying only two arguments — rejected
32
+ * every such db with TS2345 ("Type '\"work_item\"' is not assignable to type 'never'").
33
+ * `Record<string, unknown>` is verbatim Drizzle's own declared bound
34
+ * (`TFullSchema extends Record<string, unknown>`), so it admits both a schema-carrying
35
+ * and a schema-less db without reaching for `any`.
21
36
  */
22
37
  function dbTypeBlock(dialect) {
23
38
  return dialect === "postgres"
24
39
  ? {
25
40
  import: `import type { PgDatabase, PgQueryResultHKT } from "drizzle-orm/pg-core";`,
26
- alias: `type Db = PgDatabase<PgQueryResultHKT, Record<string, never>>;`,
41
+ alias: `type Db = PgDatabase<PgQueryResultHKT, Record<string, unknown>>;`,
27
42
  }
28
43
  : {
29
44
  import: `import type { BaseSQLiteDatabase } from "drizzle-orm/sqlite-core";`,
30
- alias: `type Db = BaseSQLiteDatabase<"sync" | "async", unknown>;`,
45
+ alias: `type Db = BaseSQLiteDatabase<"sync" | "async", unknown, Record<string, unknown>>;`,
31
46
  };
32
47
  }
33
48
  export function renderQueriesFile(obj, ctx) {
@@ -1 +1 @@
1
- {"version":3,"file":"queries-file.js","sourceRoot":"","sources":["../../src/templates/queries-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries-file.js","sourceRoot":"","sources":["../../src/templates/queries-file.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"requirement-test.d.ts","sourceRoot":"","sources":["../../src/templates/requirement-test.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE7E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;IAC3C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACpD;AA+ED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAoDpE"}
1
+ {"version":3,"file":"requirement-test.d.ts","sourceRoot":"","sources":["../../src/templates/requirement-test.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE7E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;IAC3C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACpD;AA+ED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CA+DpE"}
@@ -116,9 +116,20 @@ export function renderRequirementTest(a) {
116
116
  else {
117
117
  body = ` // Intended, not built. Write the assertion when this becomes live.`;
118
118
  }
119
+ // The header states the CONDITION on the survival promise, not just the promise.
120
+ // It used to say the body "survives regeneration" flat, which is true of the body and
121
+ // false of the run: a stub is worthless until hand-edited, and the moment it is edited
122
+ // and pushed, every clone that did not generate it refuses the file and exits 1 —
123
+ // demonstrable by deleting the gitignored `.gen-state` bodies and re-running. Stating
124
+ // the machine-local half here is what keeps a reader from reading a red CI run as a
125
+ // broken promise. The remedy itself lives on the refusal, not in every stub.
119
126
  return (`// ${GENERATED_HEADER}.\n` +
120
- `// The test IDENTITY is generated from the requirement; the BODY below is yours\n` +
121
- `// and survives regeneration. Do not rename the test — the name is the link.\n` +
127
+ `// The test IDENTITY is generated from the requirement; the BODY below is yours.\n` +
128
+ `// Do not rename the test — the name is the link.\n` +
129
+ `// Your body is never overwritten: MERGED where .metaobjects/.gen-state/ holds this\n` +
130
+ `// file's snapshot body, REFUSED (run exits 1, body kept) where it does not. Those\n` +
131
+ `// bodies are gitignored, so a fresh clone or CI is always the second case — see\n` +
132
+ `// docs/features/own-your-codegen.md for the recovery.\n` +
122
133
  `import { test, expect } from "bun:test";\n` +
123
134
  `\n` +
124
135
  `/**\n` +
@@ -1 +1 @@
1
- {"version":3,"file":"requirement-test.js","sourceRoot":"","sources":["../../src/templates/requirement-test.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,kFAAkF;AAClF,iFAAiF;AACjF,sFAAsF;AACtF,kFAAkF;AAClF,iDAAiD;AACjD,EAAE;AACF,+EAA+E;AAC/E,kFAAkF;AAClF,wDAAwD;AAExD,OAAO,EACL,oBAAoB,EACpB,yCAAyC,EACzC,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAanD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CACnD,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,yCAAyC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAC3F,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CAAC,CAAS;IACjC,OAAO,CAAC;SACL,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC;SACxB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,aAAa,CAAC,CAAS;IAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,UAAU,CAAC,OAAiC;IACnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,qDAAqD,CAAC;IAC/D,CAAC;IACD,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;SAC3E,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,OAAO,CAAC,CAAsB;IACrC,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACnE,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrF,OAAO,uBAAuB,OAAO,GAAG,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,CAAsB;IAC1D,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnF,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9C,iFAAiF;IACjF,oFAAoF;IACpF,0CAA0C;IAC1C,MAAM,QAAQ,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAErF,2EAA2E;IAC3E,+EAA+E;IAC/E,gFAAgF;IAChF,gFAAgF;IAChF,qFAAqF;IACrF,sFAAsF;IACtF,iFAAiF;IACjF,oFAAoF;IACpF,sEAAsE;IACtE,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAI;YACF,yBAAyB;gBACzB,wCAAwC,QAAQ,UAAU;gBAC1D,wDAAwD,gBAAgB,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM;gBAChG,MAAM,CAAC;IACX,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,0BAA0B,EAAE,CAAC;QACxD,IAAI;YACF,mFAAmF;gBACnF,iEAAiE,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,uEAAuE,CAAC;IACjF,CAAC;IAED,OAAO,CACL,MAAM,gBAAgB,KAAK;QAC3B,mFAAmF;QACnF,gFAAgF;QAChF,4CAA4C;QAC5C,IAAI;QACJ,OAAO;QACP,MAAM,SAAS,IAAI;QACnB,MAAM;QACN,sBAAsB,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI;QACrD,MAAM;QACN,cAAc;QACd,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;QAC5B,OAAO;QACP,GAAG,MAAM,KAAK,QAAQ,cAAc;QACpC,GAAG,IAAI,IAAI;QACX,OAAO,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"requirement-test.js","sourceRoot":"","sources":["../../src/templates/requirement-test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { MetaObject } from "@metaobjectsdev/metadata";
2
2
  import { type RenderContext } from "../render-context.js";
3
- export declare function renderRoutesFileHono(entity: MetaObject, ctx: RenderContext): string;
3
+ import { type CrudVerb } from "../routes-expose.js";
4
+ export declare function renderRoutesFileHono(entity: MetaObject, ctx: RenderContext, expose?: readonly CrudVerb[]): string;
4
5
  //# sourceMappingURL=routes-file-hono.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes-file-hono.d.ts","sourceRoot":"","sources":["../../src/templates/routes-file-hono.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAK1D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAqHnF"}
1
+ {"version":3,"file":"routes-file-hono.d.ts","sourceRoot":"","sources":["../../src/templates/routes-file-hono.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI1D,OAAO,EAAE,KAAK,QAAQ,EAAc,MAAM,qBAAqB,CAAC;AAEhE,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,aAAa,EAOlB,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,GAC3B,MAAM,CAsHR"}
@@ -28,7 +28,15 @@ import {} from "../render-context.js";
28
28
  import { entityModuleSpecifier } from "../import-path.js";
29
29
  import { GENERATED_HEADER } from "../constants.js";
30
30
  import { isProjection, isWriteThrough } from "../projection/projection-detector.js";
31
- export function renderRoutesFileHono(entity, ctx) {
31
+ import { exposeLine } from "../routes-expose.js";
32
+ export function renderRoutesFileHono(entity, ctx,
33
+ // #348 — resolved by the generator from its `expose` option. undefined = all five verbs,
34
+ // emitting no `expose` key at all, so output stays byte-identical without it.
35
+ //
36
+ // Applies to the CRUD mount only. The projection branch above uses
37
+ // mountReadOnlyCrudRoutes, a different helper that is read-only by construction and
38
+ // takes no `expose` — there is no writable surface there to narrow.
39
+ expose) {
32
40
  const entityName = entity.name;
33
41
  const handlerName = `register${entityName}Routes`;
34
42
  const entityFileSpec = entityModuleSpecifier(ctx.selfTarget, ctx.entityModuleTarget, entity.package, entityName, ctx.extStyle);
@@ -86,6 +94,7 @@ export function ${handlerName}(app: ${HonoSym}<any, any, any>, deps: { db: unkno
86
94
  const writeThrough = isWriteThrough(entity);
87
95
  const camelName = entityName.charAt(0).toLowerCase() + entityName.slice(1);
88
96
  const readViewLine = writeThrough ? `\n readView: ${camelName}View,` : "";
97
+ const exposeLineHono = exposeLine(expose, " ");
89
98
  const HonoSym = imp("t:Hono@hono");
90
99
  const mountCrudRoutesSym = imp("mountCrudRoutes@@metaobjectsdev/runtime-ts/hono");
91
100
  const literalImports = code `
@@ -118,7 +127,7 @@ export function ${handlerName}(app: ${HonoSym}<any, any, any>, deps: { db: unkno
118
127
  updateSchema: ${entityName}UpdateSchema,
119
128
  filterAllowlist: ${entityName}FilterAllowlist,
120
129
  sortAllowlist: ${entityName}SortAllowlist,
121
- dialect: ${JSON.stringify(ctx.dialect)},
130
+ dialect: ${JSON.stringify(ctx.dialect)},${exposeLineHono}
122
131
  });
123
132
  }
124
133
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"routes-file-hono.js","sourceRoot":"","sources":["../../src/templates/routes-file-hono.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes-file-hono.js","sourceRoot":"","sources":["../../src/templates/routes-file-hono.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { MetaObject } from "@metaobjectsdev/metadata";
2
2
  import { type RenderContext } from "../render-context.js";
3
- export declare function renderRoutesFile(entity: MetaObject, ctx: RenderContext): string;
3
+ import { type CrudVerb } from "../routes-expose.js";
4
+ export declare function renderRoutesFile(entity: MetaObject, ctx: RenderContext, expose?: readonly CrudVerb[]): string;
4
5
  //# sourceMappingURL=routes-file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes-file.d.ts","sourceRoot":"","sources":["../../src/templates/routes-file.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAK3D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,MAAM,CAyL/E"}
1
+ {"version":3,"file":"routes-file.d.ts","sourceRoot":"","sources":["../../src/templates/routes-file.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAK3D,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ1D,OAAO,EAAE,KAAK,QAAQ,EAAsD,MAAM,qBAAqB,CAAC;AAExG,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,aAAa,EAIlB,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,GAC3B,MAAM,CA2LR"}