@metaobjectsdev/codegen-ts 1.0.4 → 1.0.5-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 (37) hide show
  1. package/dist/column-mapper.d.ts.map +1 -1
  2. package/dist/column-mapper.js +14 -0
  3. package/dist/column-mapper.js.map +1 -1
  4. package/dist/projection/extract-view-spec.d.ts.map +1 -1
  5. package/dist/projection/extract-view-spec.js +49 -3
  6. package/dist/projection/extract-view-spec.js.map +1 -1
  7. package/dist/templates/drizzle-schema.d.ts +9 -1
  8. package/dist/templates/drizzle-schema.d.ts.map +1 -1
  9. package/dist/templates/drizzle-schema.js +14 -45
  10. package/dist/templates/drizzle-schema.js.map +1 -1
  11. package/dist/templates/entity-file.d.ts.map +1 -1
  12. package/dist/templates/entity-file.js +9 -1
  13. package/dist/templates/entity-file.js.map +1 -1
  14. package/dist/templates/enum-int-codec.d.ts +43 -0
  15. package/dist/templates/enum-int-codec.d.ts.map +1 -0
  16. package/dist/templates/enum-int-codec.js +66 -0
  17. package/dist/templates/enum-int-codec.js.map +1 -0
  18. package/dist/templates/inferred-types.d.ts.map +1 -1
  19. package/dist/templates/inferred-types.js +7 -1
  20. package/dist/templates/inferred-types.js.map +1 -1
  21. package/dist/templates/view-decl.d.ts +8 -0
  22. package/dist/templates/view-decl.d.ts.map +1 -1
  23. package/dist/templates/view-decl.js +29 -4
  24. package/dist/templates/view-decl.js.map +1 -1
  25. package/dist/templates/zod-validators.d.ts +18 -1
  26. package/dist/templates/zod-validators.d.ts.map +1 -1
  27. package/dist/templates/zod-validators.js +28 -3
  28. package/dist/templates/zod-validators.js.map +1 -1
  29. package/package.json +6 -6
  30. package/src/column-mapper.ts +13 -0
  31. package/src/projection/extract-view-spec.ts +55 -6
  32. package/src/templates/drizzle-schema.ts +16 -46
  33. package/src/templates/entity-file.ts +9 -1
  34. package/src/templates/enum-int-codec.ts +67 -0
  35. package/src/templates/inferred-types.ts +7 -1
  36. package/src/templates/view-decl.ts +43 -5
  37. package/src/templates/zod-validators.ts +27 -3
@@ -100,6 +100,12 @@ export function renderEntityFile(entity, ctx, opts) {
100
100
  // compile error). A base+write-through combo keeps the TPH polymorphic read path (reads
101
101
  // the base table); routing its reads through a replica view is a documented non-goal.
102
102
  const writeThrough = isWriteThrough(entity) && !tphBase;
103
+ // Rendered BEFORE the replica view below, for two reasons that both matter: the table
104
+ // DECLARES the int-backed-enum codecs (a `const` the view's declaration would duplicate,
105
+ // and a duplicate module-scope const is a parse error), and those consts must precede the
106
+ // view's use of them in the emitted file or the view hits a TDZ ReferenceError at import.
107
+ const declaredEnumIntCodecs = new Set();
108
+ const schemaBlock = renderDrizzleSchema(entity, ctx, declaredEnumIntCodecs);
103
109
  const viewSections = [];
104
110
  if (writeThrough) {
105
111
  const camel = entity.name.charAt(0).toLowerCase() + entity.name.slice(1);
@@ -132,6 +138,8 @@ export function renderEntityFile(entity, ctx, opts) {
132
138
  // is passed separately below and stays a literal — the artifact holds the primary
133
139
  // (table) source's name, not this one.
134
140
  names: entityNames,
141
+ // The table above already declared these; the view references them by name.
142
+ declaredEnumIntCodecs,
135
143
  // The replica view's OWN @schema, from the same source node projectionViewName picks
136
144
  // — never the entity's, which is the WRITE TABLE's and would qualify this view with a
137
145
  // schema that belongs to something else. A view and the table it replicates need not
@@ -159,7 +167,7 @@ ${docsPrefix}export type ${entity.name} = ${z}.infer<typeof ${entity.name}Schema
159
167
  // names artifact exports (undefined when the artifact is not in this run).
160
168
  const constantsNames = namesRef(entity, ctx);
161
169
  const sections = [
162
- renderDrizzleSchema(entity, ctx),
170
+ schemaBlock,
163
171
  ...viewSections,
164
172
  renderInferredTypes(entity, tphBase, ctx, writeThrough /* skipRow — read type is the view schema */),
165
173
  ...(enumAliases !== null ? [enumAliases] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"entity-file.js","sourceRoot":"","sources":["../../src/templates/entity-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-file.js","sourceRoot":"","sources":["../../src/templates/entity-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The int-backed `field.enum` codec emitter, shared by the two artifacts that can
3
+ * reference one: the entity's Drizzle table (`drizzle-schema.ts`) and any view-backed
4
+ * read model (`view-decl.ts` — a projection or an entity read-view).
5
+ *
6
+ * It lives in its own module because the codec is a MODULE-LOCAL const in whatever file
7
+ * declares the column, so every emitter that can produce such a column must be able to
8
+ * declare it too. While only the table template owned it, the view template emitted the
9
+ * call site and let the const name fall through to `imp(fnName@drizzle-orm/*-core)` —
10
+ * importing a member that package does not export, which `meta gen` reported as success
11
+ * and only `tsc` caught.
12
+ *
13
+ * The invariant this module exists to protect: the codec is declared ONCE PER MODULE, and
14
+ * it must precede every use. A write-through entity puts its table and its replica view in
15
+ * one file and both reference the same consts, so `entity-file.ts` renders the table first,
16
+ * collects the names it declared, and hands them to the view — which then references them
17
+ * instead of re-declaring. Two module-scope `const`s of one name is a JS parse error, and a
18
+ * declaration emitted after its use is a TDZ ReferenceError at import: both are worse than
19
+ * the missing-codec bug, because neither lets the module load at all.
20
+ */
21
+ import { type Code } from "ts-poet";
22
+ import type { EnumIntCustomType } from "../column-mapper.js";
23
+ /**
24
+ * Render an int-backed `field.enum`'s Drizzle `customType` helper plus its two
25
+ * lookup maps.
26
+ *
27
+ * The codec lives HERE, in the column definition, so nothing downstream needs to
28
+ * know about it: `db.insert().values()` encodes on bind, a selected row decodes on
29
+ * read, and a filter comparison encodes because Drizzle binds through the column
30
+ * type. That is why this shape was chosen over a Zod write-transform plus a
31
+ * generated read-decode — TS's generated queries return raw Drizzle rows and have
32
+ * no decode seam, so the query-layer approach meant inventing one and wrapping
33
+ * every generated read. It is also the direct analogue of what the other four
34
+ * ports already do (EF Core `HasConversion`, OMDB `JdbcFieldCodec`, Exposed
35
+ * `customEnumeration`, Python `ObjectManager` coercion).
36
+ *
37
+ * `fromDriver` throws on an unmapped integer rather than returning undefined: a
38
+ * value outside the map means the DB holds data the model says is impossible
39
+ * (a hand-written INSERT, or a member removed without a migration), and silently
40
+ * yielding `undefined` for a non-nullable field would surface far from the cause.
41
+ */
42
+ export declare function renderEnumIntCustomType(t: EnumIntCustomType, importModule: string): Code;
43
+ //# sourceMappingURL=enum-int-codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-int-codec.d.ts","sourceRoot":"","sources":["../../src/templates/enum-int-codec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAwBxF"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * The int-backed `field.enum` codec emitter, shared by the two artifacts that can
3
+ * reference one: the entity's Drizzle table (`drizzle-schema.ts`) and any view-backed
4
+ * read model (`view-decl.ts` — a projection or an entity read-view).
5
+ *
6
+ * It lives in its own module because the codec is a MODULE-LOCAL const in whatever file
7
+ * declares the column, so every emitter that can produce such a column must be able to
8
+ * declare it too. While only the table template owned it, the view template emitted the
9
+ * call site and let the const name fall through to `imp(fnName@drizzle-orm/*-core)` —
10
+ * importing a member that package does not export, which `meta gen` reported as success
11
+ * and only `tsc` caught.
12
+ *
13
+ * The invariant this module exists to protect: the codec is declared ONCE PER MODULE, and
14
+ * it must precede every use. A write-through entity puts its table and its replica view in
15
+ * one file and both reference the same consts, so `entity-file.ts` renders the table first,
16
+ * collects the names it declared, and hands them to the view — which then references them
17
+ * instead of re-declaring. Two module-scope `const`s of one name is a JS parse error, and a
18
+ * declaration emitted after its use is a TDZ ReferenceError at import: both are worse than
19
+ * the missing-codec bug, because neither lets the module load at all.
20
+ */
21
+ import { code, imp } from "ts-poet";
22
+ /**
23
+ * Render an int-backed `field.enum`'s Drizzle `customType` helper plus its two
24
+ * lookup maps.
25
+ *
26
+ * The codec lives HERE, in the column definition, so nothing downstream needs to
27
+ * know about it: `db.insert().values()` encodes on bind, a selected row decodes on
28
+ * read, and a filter comparison encodes because Drizzle binds through the column
29
+ * type. That is why this shape was chosen over a Zod write-transform plus a
30
+ * generated read-decode — TS's generated queries return raw Drizzle rows and have
31
+ * no decode seam, so the query-layer approach meant inventing one and wrapping
32
+ * every generated read. It is also the direct analogue of what the other four
33
+ * ports already do (EF Core `HasConversion`, OMDB `JdbcFieldCodec`, Exposed
34
+ * `customEnumeration`, Python `ObjectManager` coercion).
35
+ *
36
+ * `fromDriver` throws on an unmapped integer rather than returning undefined: a
37
+ * value outside the map means the DB holds data the model says is impossible
38
+ * (a hand-written INSERT, or a member removed without a migration), and silently
39
+ * yielding `undefined` for a non-nullable field would surface far from the cause.
40
+ */
41
+ export function renderEnumIntCustomType(t, importModule) {
42
+ const customTypeSym = imp(`customType@${importModule}`);
43
+ const union = t.members.map((m) => JSON.stringify(m)).join(" | ");
44
+ const toEntries = t.members
45
+ .map((m) => `${JSON.stringify(m)}: ${t.intByMember[m]}`)
46
+ .join(", ");
47
+ const fromEntries = t.members
48
+ .map((m) => `${t.intByMember[m]}: ${JSON.stringify(m)}`)
49
+ .join(", ");
50
+ return code `
51
+ const ${t.toIntConstName} = { ${toEntries} } as const satisfies Record<${union}, number>;
52
+ const ${t.fromIntConstName}: Record<number, ${union}> = { ${fromEntries} };
53
+ const ${t.fnConstName} = ${customTypeSym}<{ data: ${union}; driverData: number }>({
54
+ dataType: () => ${JSON.stringify(t.dataType)},
55
+ toDriver: (value) => ${t.toIntConstName}[value],
56
+ fromDriver: (value) => {
57
+ const member = ${t.fromIntConstName}[value];
58
+ if (member === undefined) {
59
+ throw new Error(\`unmapped ${t.fnConstName} value: \${value}\`);
60
+ }
61
+ return member;
62
+ },
63
+ });
64
+ `;
65
+ }
66
+ //# sourceMappingURL=enum-int-codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-int-codec.js","sourceRoot":"","sources":["../../src/templates/enum-int-codec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAa,MAAM,SAAS,CAAC;AAG/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,uBAAuB,CAAC,CAAoB,EAAE,YAAoB;IAChF,MAAM,aAAa,GAAG,GAAG,CAAC,cAAc,YAAY,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;SACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO;SAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,IAAI,CAAA;QACL,CAAC,CAAC,cAAc,QAAQ,SAAS,gCAAgC,KAAK;QACtE,CAAC,CAAC,gBAAgB,oBAAoB,KAAK,SAAS,WAAW;QAC/D,CAAC,CAAC,WAAW,MAAM,aAAa,YAAY,KAAK;oBACrC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;yBACrB,CAAC,CAAC,cAAc;;qBAEpB,CAAC,CAAC,gBAAgB;;mCAEJ,CAAC,CAAC,WAAW;;;;;CAK/C,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inferred-types.d.ts","sourceRoot":"","sources":["../../src/templates/inferred-types.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAiCtE,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGjF;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,OAAO,UAAQ,EACf,GAAG,CAAC,EAAE,aAAa,EACnB,OAAO,UAAQ,GACd,IAAI,CA8BN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAK9E;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAExD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAmE1F;AA4BD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAmC7E;AA2FD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAsBxF"}
1
+ {"version":3,"file":"inferred-types.d.ts","sourceRoot":"","sources":["../../src/templates/inferred-types.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAkCtE,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGjF;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,OAAO,UAAQ,EACf,GAAG,CAAC,EAAE,aAAa,EACnB,OAAO,UAAQ,GACd,IAAI,CA8BN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAK9E;AAED,oEAAoE;AACpE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAExD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAmE1F;AA4BD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAmC7E;AA2FD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CA2BxF"}
@@ -14,6 +14,7 @@ import { stripPackage } from "@metaobjectsdev/metadata";
14
14
  import { enumValues } from "../enum-meta.js";
15
15
  import { sharedEnumZodConstName } from "./enums-file.js";
16
16
  import { renderDocsFor } from "./jsdoc.js";
17
+ import { isTphReadNullTolerant } from "./zod-validators.js";
17
18
  import { sharedEnumForField } from "../enum-shared.js";
18
19
  import { sharedEnumImportSpecifier, providedEnumImportSpecifier } from "../enum-import.js";
19
20
  import { fieldDeclaringPackage } from "../render-context.js";
@@ -338,7 +339,12 @@ export function renderValueObjectInterface(entity, ctx) {
338
339
  const required = field.attr(FIELD_ATTR_REQUIRED) === true;
339
340
  const optional = required ? "" : "?";
340
341
  const tsType = valueObjectFieldType(entity, field, ctx);
341
- lines.push(code ` ${field.name}${optional}: ${tsType};`);
342
+ // A TPH subtype's read schema accepts `null` for a column that is NULL on a
343
+ // sibling subtype's row; the declared type has to admit the same values, or
344
+ // `parse<Base>()` returns something this interface rejects. One predicate
345
+ // answers it for both emitters (ADR-style single source, see its docblock).
346
+ const nullable = isTphReadNullTolerant(entity, field) ? " | null" : "";
347
+ lines.push(code ` ${field.name}${optional}: ${tsType}${nullable};`);
342
348
  }
343
349
  // joinCode with "\n" interpolates each Code segment on its own line and
344
350
  // keeps the imp() registrations intact so ts-poet hoists the imports.
@@ -1 +1 @@
1
- {"version":3,"file":"inferred-types.js","sourceRoot":"","sources":["../../src/templates/inferred-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inferred-types.js","sourceRoot":"","sources":["../../src/templates/inferred-types.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,14 @@ export interface ViewDeclOpts {
7
7
  readonly columnNamingStrategy: ColumnNamingStrategy;
8
8
  /** Drives the timestamp column TS type (Date vs string) in the view declaration. */
9
9
  readonly timestampMode: "date" | "string";
10
+ /**
11
+ * Int-backed-enum codec const names ALREADY declared in the module this view lands in.
12
+ * A write-through entity's table and its replica view share one file, and both reference
13
+ * the same codecs — so the view references these by name and declares only what the table
14
+ * did not (a derived field's codec, which the write table omits). Absent = the view owns
15
+ * every codec it needs, which is the projection case.
16
+ */
17
+ readonly declaredEnumIntCodecs?: ReadonlySet<string>;
10
18
  /**
11
19
  * ADR-0044/#228 — resolve a `field.object` / `field.map`'s `@objectRef` to the
12
20
  * value object's EMITTED name (bare when unique in the run, package-qualified on
@@ -1 +1 @@
1
- {"version":3,"file":"view-decl.d.ts","sourceRoot":"","sources":["../../src/templates/view-decl.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EACL,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGrE,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,oFAAoF;IACpF,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1C;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;IACvF;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC7C;AAqDD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,SAAS,EAAE;AAC5B;;;;;GAKG;AACH,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,GACjB,IAAI,CA4BN;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAiC9F"}
1
+ {"version":3,"file":"view-decl.d.ts","sourceRoot":"","sources":["../../src/templates/view-decl.ts"],"names":[],"mappings":"AASA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EACL,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAIrE,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACpD,oFAAoF;IACpF,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrD;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvE;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3C;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;IACvF;;;;;;;;;OASG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC7C;AAqED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,SAAS,EAAE;AAC5B;;;;;GAKG;AACH,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,GACjB,IAAI,CAyCN;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAiC9F"}
@@ -9,6 +9,7 @@
9
9
  import { code, imp, joinCode } from "ts-poet";
10
10
  import { FIELD_SUBTYPE_OBJECT, FIELD_ATTR_OBJECT_REF, } from "@metaobjectsdev/metadata";
11
11
  import { mapColumnType } from "../column-mapper.js";
12
+ import { renderEnumIntCustomType } from "./enum-int-codec.js";
12
13
  import { zodTypeFor } from "./field-meta.js";
13
14
  import { columnExpr } from "../names.js";
14
15
  /**
@@ -17,10 +18,22 @@ import { columnExpr } from "../names.js";
17
18
  * so `db.select().from(<view>)` is typed. Honors `@dbColumnType`; `.existing()`
18
19
  * views carry type + physical name only (no PK/default/notNull DDL modifiers).
19
20
  */
20
- function viewColumnLine(f, opts) {
21
+ function viewColumnLine(f, opts,
22
+ /** Codecs this view needs, collected for the caller to DECLARE — see below. */
23
+ enumIntTypes) {
21
24
  const { dialect, columnNamingStrategy, timestampMode } = opts;
22
25
  const spec = mapColumnType(f, dialect, columnNamingStrategy, timestampMode);
23
- const colSym = imp(`${spec.fnName}@${spec.importModule}`);
26
+ // An int-backed field.enum's column function is a LOCAL generated const (the
27
+ // customType helper the caller emits into this same file), so it must not be
28
+ // imported from drizzle-orm/*-core like a built-in column type would be. Same
29
+ // rule the table template applies in `renderColumn`; a view reads the very same
30
+ // integer column and needs the very same decode on the way out.
31
+ if (spec.enumIntCustomType !== undefined) {
32
+ enumIntTypes.set(spec.enumIntCustomType.fnConstName, spec.enumIntCustomType);
33
+ }
34
+ const colSym = spec.enumIntCustomType !== undefined
35
+ ? spec.enumIntCustomType.fnConstName
36
+ : imp(`${spec.fnName}@${spec.importModule}`);
24
37
  const optsArg = spec.fnOptions && Object.keys(spec.fnOptions).length > 0
25
38
  ? `, ${JSON.stringify(spec.fnOptions)}`
26
39
  : "";
@@ -80,7 +93,8 @@ viewName, viewVar, opts) {
80
93
  const viewFn = opts.dialect === "postgres" ? "pgView" : "sqliteView";
81
94
  const viewModule = opts.dialect === "postgres" ? "drizzle-orm/pg-core" : "drizzle-orm/sqlite-core";
82
95
  const viewSym = imp(`${viewFn}@${viewModule}`);
83
- const viewColumnLines = fields.map((f) => viewColumnLine(f, opts));
96
+ const enumIntTypes = new Map();
97
+ const viewColumnLines = fields.map((f) => viewColumnLine(f, opts, enumIntTypes));
84
98
  const viewNameExpr = typeof viewName === "string" ? code `${JSON.stringify(viewName)}` : viewName;
85
99
  // @schema — a view lands in a schema exactly as a table does, and migrate qualifies the
86
100
  // `CREATE VIEW` it emits. Fixing the table binding and leaving this one would be the more
@@ -94,7 +108,15 @@ viewName, viewVar, opts) {
94
108
  const viewCall = viewSchemaExpr === undefined
95
109
  ? code `${viewSym}`
96
110
  : code `${imp(`pgSchema@${viewModule}`)}(${viewSchemaExpr}).view`;
97
- return code `
111
+ // Int-backed enum codecs are declared BEFORE the view that references them, sorted
112
+ // by const name so output is deterministic regardless of field order — the same
113
+ // contract the table template holds.
114
+ const alreadyDeclared = opts.declaredEnumIntCodecs;
115
+ const enumIntBlocks = [...enumIntTypes.values()]
116
+ .filter((t) => alreadyDeclared === undefined || !alreadyDeclared.has(t.fnConstName))
117
+ .sort((a, b) => a.fnConstName.localeCompare(b.fnConstName))
118
+ .map((t) => renderEnumIntCustomType(t, viewModule));
119
+ const viewBlock = code `
98
120
  // View declaration — Drizzle uses this for typed SELECT queries.
99
121
  // The SQL view is created/managed by migrate-ts; .existing() tells Drizzle
100
122
  // not to attempt DDL for this declaration.
@@ -102,6 +124,9 @@ export const ${viewVar} = ${viewCall}(${viewNameExpr}, {
102
124
  ${joinCode(viewColumnLines, { on: ",\n" })}
103
125
  }).existing();
104
126
  `;
127
+ return enumIntBlocks.length === 0
128
+ ? viewBlock
129
+ : joinCode([...enumIntBlocks, viewBlock], { on: "\n" });
105
130
  }
106
131
  /**
107
132
  * The Zod object body for a view-backed read model — one `field: z.<type>[.nullable()]`
@@ -1 +1 @@
1
- {"version":3,"file":"view-decl.js","sourceRoot":"","sources":["../../src/templates/view-decl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-decl.js","sourceRoot":"","sources":["../../src/templates/view-decl.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type Code } from "ts-poet";
2
- import { MetaObject } from "@metaobjectsdev/metadata";
2
+ import { MetaObject, MetaField } from "@metaobjectsdev/metadata";
3
3
  import { type RenderContext } from "../render-context.js";
4
4
  /**
5
5
  * FR-017 Tier 1 — when this object is a TPH subtype (@discriminatorValue set
@@ -42,6 +42,23 @@ export declare function isTphSubtype(obj: MetaObject): boolean;
42
42
  * a plain entity has nothing to preserve, so both are omitted. Resolving
43
43
  * (ADR-0039): honors an @autoSet inherited via extends. */
44
44
  export declare function hasAutoSetFields(obj: MetaObject): boolean;
45
+ /**
46
+ * Is this field NULL-tolerant in a TPH subtype's READ shape?
47
+ *
48
+ * A TPH subtype shares one physical table with its siblings, so a column only one
49
+ * subtype declares is NULL on every other subtype's row, and a non-`@required` column
50
+ * of this subtype's own is NULL when unset. Either way the value read back is `null`,
51
+ * not `undefined`. The PRIMARY KEY is the exception — it is the shared base table's
52
+ * key and is present on every row.
53
+ *
54
+ * ONE predicate, because TWO emitters answer this question about the same field: the
55
+ * Zod read schema (`renderTphSubtypeReadSchema`) and the declared TS type
56
+ * (`renderValueObjectInterface`). They answered it differently, so the value
57
+ * `parse<Base>()` returns was not assignable to the base union and the generated
58
+ * module did not compile (TS2322). A second answer to one question is the defect;
59
+ * keeping the two call sites pointed here is the fix.
60
+ */
61
+ export declare function isTphReadNullTolerant(obj: MetaObject, field: MetaField): boolean;
45
62
  /**
46
63
  * FR-017 Tier 2 — the per-subtype FULL read schema `<Sub>Schema`. Unlike the
47
64
  * insert schema, this includes every effective field (PK included) so a raw DB
@@ -1 +1 @@
1
- {"version":3,"file":"zod-validators.d.ts","sourceRoot":"","sources":["../../src/templates/zod-validators.ts"],"names":[],"mappings":"AAWA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,UAAU,EAA2B,MAAM,0BAA0B,CAAC;AA2B/E,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAOjF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAQrG;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAE5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAEjE;AAqBD;8CAC8C;AAC9C,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAErD;AAED;;;;4DAI4D;AAC5D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAMzD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CA2BrF;AAED;;2EAE2E;AAC3E,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,EAAE,CAOnE;AA2DD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAyDjF;AAED,wEAAwE;AACxE,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,QAAQ,EAAE,OAAO,CAAC;IAClB;sEACkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;oDACgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,EAAE,CA0BtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,EAAE,CAgCtE;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAqI9E"}
1
+ {"version":3,"file":"zod-validators.d.ts","sourceRoot":"","sources":["../../src/templates/zod-validators.ts"],"names":[],"mappings":"AAWA,OAAO,EAAuB,KAAK,IAAI,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAgB,MAAM,0BAA0B,CAAC;AA2B/E,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAOjF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAQrG;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAE5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAEjE;AAqBD;8CAC8C;AAC9C,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAErD;AAED;;;;4DAI4D;AAC5D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAMzD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAIhF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CA6BrF;AAED;;2EAE2E;AAC3E,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,EAAE,CAOnE;AA2DD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAyDjF;AAED,wEAAwE;AACxE,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,QAAQ,EAAE,OAAO,CAAC;IAClB;sEACkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;oDACgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,EAAE,CA0BtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,gBAAgB,EAAE,CAgCtE;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,CAqI9E"}
@@ -102,6 +102,29 @@ export function hasAutoSetFields(obj) {
102
102
  }
103
103
  return false;
104
104
  }
105
+ /**
106
+ * Is this field NULL-tolerant in a TPH subtype's READ shape?
107
+ *
108
+ * A TPH subtype shares one physical table with its siblings, so a column only one
109
+ * subtype declares is NULL on every other subtype's row, and a non-`@required` column
110
+ * of this subtype's own is NULL when unset. Either way the value read back is `null`,
111
+ * not `undefined`. The PRIMARY KEY is the exception — it is the shared base table's
112
+ * key and is present on every row.
113
+ *
114
+ * ONE predicate, because TWO emitters answer this question about the same field: the
115
+ * Zod read schema (`renderTphSubtypeReadSchema`) and the declared TS type
116
+ * (`renderValueObjectInterface`). They answered it differently, so the value
117
+ * `parse<Base>()` returns was not assignable to the base union and the generated
118
+ * module did not compile (TS2322). A second answer to one question is the defect;
119
+ * keeping the two call sites pointed here is the fix.
120
+ */
121
+ export function isTphReadNullTolerant(obj, field) {
122
+ if (!isTphSubtype(obj))
123
+ return false;
124
+ if (!fieldWillBeOptional(field))
125
+ return false;
126
+ return !primaryIdentityFieldNames(obj).includes(field.name);
127
+ }
105
128
  /**
106
129
  * FR-017 Tier 2 — the per-subtype FULL read schema `<Sub>Schema`. Unlike the
107
130
  * insert schema, this includes every effective field (PK included) so a raw DB
@@ -124,9 +147,11 @@ export function renderTphSubtypeReadSchema(obj, ctx) {
124
147
  }
125
148
  const expr = zodFieldExpr(child, obj, ctx);
126
149
  // zodFieldExpr already appends `.optional()` for non-required fields; add
127
- // `.nullable()` on top so a NULL column value (the TPH default for any
128
- // subtype-only column) parses cleanly.
129
- fieldLines.push(fieldWillBeOptional(child) ? code ` ${child.name}: ${expr}.nullable()` : code ` ${child.name}: ${expr}`);
150
+ // `.nullable()` on top so a NULL column value parses cleanly. The declared
151
+ // interface widens the SAME fields — see isTphReadNullTolerant.
152
+ fieldLines.push(isTphReadNullTolerant(obj, child)
153
+ ? code ` ${child.name}: ${expr}.nullable()`
154
+ : code ` ${child.name}: ${expr}`);
130
155
  }
131
156
  const objName = ctx ? ctx.valueObjectEmittedName(obj) : obj.name;
132
157
  const docs = renderDocsFor(obj);
@@ -1 +1 @@
1
- {"version":3,"file":"zod-validators.js","sourceRoot":"","sources":["../../src/templates/zod-validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zod-validators.js","sourceRoot":"","sources":["../../src/templates/zod-validators.ts"],"names":[],"mappings":"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"}