@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.
- package/README.md +37 -12
- package/dist/api-surface.d.ts +29 -0
- package/dist/api-surface.d.ts.map +1 -1
- package/dist/api-surface.js +47 -0
- package/dist/api-surface.js.map +1 -1
- package/dist/column-mapper.d.ts +12 -0
- package/dist/column-mapper.d.ts.map +1 -1
- package/dist/column-mapper.js +1 -0
- package/dist/column-mapper.js.map +1 -1
- package/dist/constants.d.ts +24 -11
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +54 -19
- package/dist/constants.js.map +1 -1
- package/dist/db-emitting.d.ts +6 -0
- package/dist/db-emitting.d.ts.map +1 -0
- package/dist/db-emitting.js +26 -0
- package/dist/db-emitting.js.map +1 -0
- package/dist/generator-registry.d.ts.map +1 -1
- package/dist/generator-registry.js +14 -1
- package/dist/generator-registry.js.map +1 -1
- package/dist/generator.d.ts +5 -0
- package/dist/generator.d.ts.map +1 -1
- package/dist/generator.js.map +1 -1
- package/dist/generators/agent-docs-file.d.ts +19 -0
- package/dist/generators/agent-docs-file.d.ts.map +1 -0
- package/dist/generators/agent-docs-file.js +257 -0
- package/dist/generators/agent-docs-file.js.map +1 -0
- package/dist/generators/agent-requirements-page.d.ts +22 -0
- package/dist/generators/agent-requirements-page.d.ts.map +1 -0
- package/dist/generators/agent-requirements-page.js +175 -0
- package/dist/generators/agent-requirements-page.js.map +1 -0
- package/dist/generators/agent-schema-input.d.ts +69 -0
- package/dist/generators/agent-schema-input.d.ts.map +1 -0
- package/dist/generators/agent-schema-input.js +23 -0
- package/dist/generators/agent-schema-input.js.map +1 -0
- package/dist/generators/agent-schema-page.d.ts +21 -0
- package/dist/generators/agent-schema-page.d.ts.map +1 -0
- package/dist/generators/agent-schema-page.js +241 -0
- package/dist/generators/agent-schema-page.js.map +1 -0
- package/dist/generators/agent-ui-page.d.ts +22 -0
- package/dist/generators/agent-ui-page.d.ts.map +1 -0
- package/dist/generators/agent-ui-page.js +253 -0
- package/dist/generators/agent-ui-page.js.map +1 -0
- package/dist/generators/api-docs-file.d.ts.map +1 -1
- package/dist/generators/api-docs-file.js +13 -6
- package/dist/generators/api-docs-file.js.map +1 -1
- package/dist/generators/api-model.d.ts +6 -0
- package/dist/generators/api-model.d.ts.map +1 -1
- package/dist/generators/api-model.js +54 -35
- package/dist/generators/api-model.js.map +1 -1
- package/dist/generators/callable-file.js +1 -1
- package/dist/generators/callable-file.js.map +1 -1
- package/dist/generators/docs-data-builder.d.ts.map +1 -1
- package/dist/generators/docs-data-builder.js +47 -2
- package/dist/generators/docs-data-builder.js.map +1 -1
- package/dist/generators/docs-data.d.ts +6 -2
- package/dist/generators/docs-data.d.ts.map +1 -1
- package/dist/generators/index.d.ts +3 -8
- package/dist/generators/index.d.ts.map +1 -1
- package/dist/generators/index.js +19 -14
- package/dist/generators/index.js.map +1 -1
- package/dist/generators/names-file.d.ts +17 -0
- package/dist/generators/names-file.d.ts.map +1 -0
- package/dist/generators/names-file.js +95 -0
- package/dist/generators/names-file.js.map +1 -0
- package/dist/generators/requirements-markdown.d.ts +18 -1
- package/dist/generators/requirements-markdown.d.ts.map +1 -1
- package/dist/generators/requirements-markdown.js +11 -9
- package/dist/generators/requirements-markdown.js.map +1 -1
- package/dist/generators/routes-file-hono.d.ts +17 -2
- package/dist/generators/routes-file-hono.d.ts.map +1 -1
- package/dist/generators/routes-file-hono.js +9 -11
- package/dist/generators/routes-file-hono.js.map +1 -1
- package/dist/generators/routes-file.d.ts +17 -2
- package/dist/generators/routes-file.d.ts.map +1 -1
- package/dist/generators/routes-file.js +10 -8
- package/dist/generators/routes-file.js.map +1 -1
- package/dist/generators/template-generator.d.ts.map +1 -1
- package/dist/generators/template-generator.js +20 -6
- package/dist/generators/template-generator.js.map +1 -1
- package/dist/index.d.ts +20 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -4
- package/dist/index.js.map +1 -1
- package/dist/metaobjects-config.d.ts +38 -1
- package/dist/metaobjects-config.d.ts.map +1 -1
- package/dist/metaobjects-config.js +9 -1
- package/dist/metaobjects-config.js.map +1 -1
- package/dist/names.d.ts +275 -0
- package/dist/names.d.ts.map +1 -0
- package/dist/names.js +433 -0
- package/dist/names.js.map +1 -0
- package/dist/overwrite-policy.d.ts.map +1 -1
- package/dist/overwrite-policy.js +15 -3
- package/dist/overwrite-policy.js.map +1 -1
- package/dist/projection/extract-view-spec.d.ts +25 -1
- package/dist/projection/extract-view-spec.d.ts.map +1 -1
- package/dist/projection/extract-view-spec.js +79 -6
- package/dist/projection/extract-view-spec.js.map +1 -1
- package/dist/reference-templates.d.ts +1 -1
- package/dist/reference-templates.d.ts.map +1 -1
- package/dist/reference-templates.js +1 -1
- package/dist/reference-templates.js.map +1 -1
- package/dist/render-context.d.ts +12 -1
- package/dist/render-context.d.ts.map +1 -1
- package/dist/render-context.js +1 -0
- package/dist/render-context.js.map +1 -1
- package/dist/retired-codegen-attrs.d.ts +32 -0
- package/dist/retired-codegen-attrs.d.ts.map +1 -0
- package/dist/retired-codegen-attrs.js +47 -0
- package/dist/retired-codegen-attrs.js.map +1 -0
- package/dist/routes-expose.d.ts +63 -0
- package/dist/routes-expose.d.ts.map +1 -0
- package/dist/routes-expose.js +57 -0
- package/dist/routes-expose.js.map +1 -0
- package/dist/runner.d.ts +18 -0
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +109 -7
- package/dist/runner.js.map +1 -1
- package/dist/templates/callable-file.d.ts +7 -2
- package/dist/templates/callable-file.d.ts.map +1 -1
- package/dist/templates/callable-file.js +54 -9
- package/dist/templates/callable-file.js.map +1 -1
- package/dist/templates/drizzle-schema.d.ts.map +1 -1
- package/dist/templates/drizzle-schema.js +236 -65
- package/dist/templates/drizzle-schema.js.map +1 -1
- package/dist/templates/entity-constants.d.ts +15 -6
- package/dist/templates/entity-constants.d.ts.map +1 -1
- package/dist/templates/entity-constants.js +85 -161
- package/dist/templates/entity-constants.js.map +1 -1
- package/dist/templates/entity-file.d.ts.map +1 -1
- package/dist/templates/entity-file.js +38 -4
- package/dist/templates/entity-file.js.map +1 -1
- package/dist/templates/entity-meta-file.d.ts +15 -1
- package/dist/templates/entity-meta-file.d.ts.map +1 -1
- package/dist/templates/entity-meta-file.js +12 -2
- package/dist/templates/entity-meta-file.js.map +1 -1
- package/dist/templates/entity-ui-descriptor.d.ts +112 -0
- package/dist/templates/entity-ui-descriptor.d.ts.map +1 -0
- package/dist/templates/entity-ui-descriptor.js +238 -0
- package/dist/templates/entity-ui-descriptor.js.map +1 -0
- package/dist/templates/field-meta.d.ts +46 -9
- package/dist/templates/field-meta.d.ts.map +1 -1
- package/dist/templates/field-meta.js +95 -21
- package/dist/templates/field-meta.js.map +1 -1
- package/dist/templates/names-decl.d.ts +38 -0
- package/dist/templates/names-decl.d.ts.map +1 -0
- package/dist/templates/names-decl.js +104 -0
- package/dist/templates/names-decl.js.map +1 -0
- package/dist/templates/projection-decl.d.ts +21 -0
- package/dist/templates/projection-decl.d.ts.map +1 -1
- package/dist/templates/projection-decl.js +53 -29
- package/dist/templates/projection-decl.js.map +1 -1
- package/dist/templates/queries-file.d.ts.map +1 -1
- package/dist/templates/queries-file.js +17 -2
- package/dist/templates/queries-file.js.map +1 -1
- package/dist/templates/requirement-test.d.ts.map +1 -1
- package/dist/templates/requirement-test.js +13 -2
- package/dist/templates/requirement-test.js.map +1 -1
- package/dist/templates/routes-file-hono.d.ts +2 -1
- package/dist/templates/routes-file-hono.d.ts.map +1 -1
- package/dist/templates/routes-file-hono.js +11 -2
- package/dist/templates/routes-file-hono.js.map +1 -1
- package/dist/templates/routes-file.d.ts +2 -1
- package/dist/templates/routes-file.d.ts.map +1 -1
- package/dist/templates/routes-file.js +54 -21
- package/dist/templates/routes-file.js.map +1 -1
- package/dist/templates/value-object-file.d.ts.map +1 -1
- package/dist/templates/value-object-file.js +15 -1
- package/dist/templates/value-object-file.js.map +1 -1
- package/dist/templates/view-decl.d.ts +37 -1
- package/dist/templates/view-decl.d.ts.map +1 -1
- package/dist/templates/view-decl.js +27 -3
- package/dist/templates/view-decl.js.map +1 -1
- package/dist/templates/zod-validators.d.ts +21 -0
- package/dist/templates/zod-validators.d.ts.map +1 -1
- package/dist/templates/zod-validators.js +40 -5
- package/dist/templates/zod-validators.js.map +1 -1
- package/dist/view-context.d.ts +24 -0
- package/dist/view-context.d.ts.map +1 -0
- package/dist/view-context.js +81 -0
- package/dist/view-context.js.map +1 -0
- package/package.json +6 -6
- package/src/api-surface.ts +53 -0
- package/src/column-mapper.ts +13 -0
- package/src/constants.ts +91 -16
- package/src/db-emitting.ts +31 -0
- package/src/generator-registry.ts +14 -4
- package/src/generator.ts +5 -0
- package/src/generators/agent-docs-file.ts +297 -0
- package/src/generators/agent-requirements-page.ts +199 -0
- package/src/generators/agent-schema-input.ts +88 -0
- package/src/generators/agent-schema-page.ts +297 -0
- package/src/generators/agent-ui-page.ts +290 -0
- package/src/generators/api-docs-file.ts +13 -6
- package/src/generators/api-model.ts +63 -34
- package/src/generators/callable-file.ts +1 -1
- package/src/generators/docs-data-builder.ts +46 -2
- package/src/generators/docs-data.ts +6 -2
- package/src/generators/index.ts +25 -14
- package/src/generators/names-file.ts +98 -0
- package/src/generators/requirements-markdown.ts +36 -2
- package/src/generators/routes-file-hono.ts +19 -10
- package/src/generators/routes-file.ts +20 -7
- package/src/generators/template-generator.ts +20 -6
- package/src/index.ts +64 -4
- package/src/metaobjects-config.ts +48 -2
- package/src/names.ts +629 -0
- package/src/overwrite-policy.ts +15 -3
- package/src/projection/extract-view-spec.ts +85 -6
- package/src/reference/entity.ts +21 -2
- package/src/reference/names.ts +125 -0
- package/src/reference/queries.ts +19 -3
- package/src/reference/routes-hono.ts +19 -9
- package/src/reference/routes.ts +25 -9
- package/src/reference-templates.ts +1 -1
- package/src/render-context.ts +13 -1
- package/src/retired-codegen-attrs.ts +52 -0
- package/src/routes-expose.ts +86 -0
- package/src/runner.ts +122 -11
- package/src/templates/callable-file.ts +60 -8
- package/src/templates/drizzle-schema.ts +248 -60
- package/src/templates/entity-constants.ts +95 -184
- package/src/templates/entity-file.ts +46 -4
- package/src/templates/entity-meta-file.ts +16 -3
- package/src/templates/entity-ui-descriptor.ts +305 -0
- package/src/templates/field-meta.ts +100 -19
- package/src/templates/names-decl.ts +165 -0
- package/src/templates/projection-decl.ts +72 -31
- package/src/templates/queries-file.ts +17 -2
- package/src/templates/requirement-test.ts +13 -2
- package/src/templates/routes-file-hono.ts +14 -2
- package/src/templates/routes-file.ts +69 -24
- package/src/templates/value-object-file.ts +15 -1
- package/src/templates/view-decl.ts +53 -3
- package/src/templates/zod-validators.ts +41 -5
- package/src/view-context.ts +88 -0
package/dist/runner.d.ts
CHANGED
|
@@ -73,5 +73,23 @@ export interface RunGenResult {
|
|
|
73
73
|
* CLI can print the end-of-run summary. */
|
|
74
74
|
conflicts: WriteResult[];
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* True exactly on the FIRST gen after upgrading past the release that moved the API base
|
|
78
|
+
* URL out of the entity descriptor, and only for a project that actually had a prefix to
|
|
79
|
+
* move. Exported for test.
|
|
80
|
+
*
|
|
81
|
+
* Keyed on the #232 engine stamp rather than on `apiPrefix` alone so the note is
|
|
82
|
+
* self-extinguishing: whether the app passed `baseUrl` to its provider is runtime code
|
|
83
|
+
* `meta gen` cannot see, so a prefix-only trigger would nag for ever with no way to
|
|
84
|
+
* satisfy it — the cry-wolf failure that got the `timestampMode` warning deleted from
|
|
85
|
+
* this file (see `codegen-ts-tanstack/src/data-grid-gate.ts`).
|
|
86
|
+
*
|
|
87
|
+
* Silence is the default for an absent or unorderable recorded version. That is the
|
|
88
|
+
* OPPOSITE call to the 0.24.5 agent-context staleness nudge, and deliberately: there an
|
|
89
|
+
* unknown version meant "cannot prove it is fresh, so nudge"; here it means "no gen
|
|
90
|
+
* history, so nothing to migrate", and a false nag costs more than a missed one when the
|
|
91
|
+
* compile break already routes the adopter to the same line.
|
|
92
|
+
*/
|
|
93
|
+
export declare function shouldNoteBaseUrlMove(apiPrefix: string, recordedEngine: string | undefined, moveVersion?: string): boolean;
|
|
76
94
|
export declare function runGen(opts: RunGenOpts): Promise<RunGenResult>;
|
|
77
95
|
//# sourceMappingURL=runner.d.ts.map
|
package/dist/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAc,MAAM,0BAA0B,CAAC;AAOrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAQpE,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,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;IACxB;;;;;;;;;OASG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAClC;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;AA4BD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,WAAW,GAAE,MAA8B,GAC1C,OAAO,CAWT;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAonBpE"}
|
package/dist/runner.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { join, relative, resolve, isAbsolute, dirname } from "node:path";
|
|
2
2
|
import { warnMissingPromptGenerators } from "./prompt-generator-gate.js";
|
|
3
|
+
import { warnRetiredCodegenAttrs } from "./retired-codegen-attrs.js";
|
|
3
4
|
import { tmpdir } from "node:os";
|
|
4
5
|
import { fileURLToPath } from "node:url";
|
|
5
6
|
import { existsSync, readFileSync } from "node:fs";
|
|
6
7
|
import { isMetaRoot, OBJECT_SUBTYPE_VALUE, FIELD_SUBTYPE_TIMESTAMP, FIELD_ATTR_FILTERABLE } from "@metaobjectsdev/metadata";
|
|
7
8
|
import { assignEmittedNames } from "./naming/collision-names.js";
|
|
8
9
|
import { isAbstract } from "./instance-artifacts.js";
|
|
10
|
+
import { dbEmittingObjects, missingDialectMessage } from "./db-emitting.js";
|
|
9
11
|
import { hasAnyRdbSource } from "./source-detect.js";
|
|
10
12
|
import { normalizeConfig, DEFAULT_TARGET_NAME } from "./metaobjects-config.js";
|
|
11
13
|
import { buildPkMap } from "./pk-resolver.js";
|
|
@@ -36,6 +38,47 @@ function engineVersion() {
|
|
|
36
38
|
return undefined;
|
|
37
39
|
}
|
|
38
40
|
}
|
|
41
|
+
/** The release in which `$apiPrefix` left the generated entity descriptor. */
|
|
42
|
+
const BASE_URL_MOVE_VERSION = "0.25.0";
|
|
43
|
+
/** `N.N.N` only. Anything else — a prerelease tag, a sentinel — is deliberately unordered. */
|
|
44
|
+
function orderable(v) {
|
|
45
|
+
if (v === undefined)
|
|
46
|
+
return undefined;
|
|
47
|
+
const m = /^(\d+)\.(\d+)\.(\d+)$/.exec(v);
|
|
48
|
+
return m === null ? undefined : [Number(m[1]), Number(m[2]), Number(m[3])];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* True exactly on the FIRST gen after upgrading past the release that moved the API base
|
|
52
|
+
* URL out of the entity descriptor, and only for a project that actually had a prefix to
|
|
53
|
+
* move. Exported for test.
|
|
54
|
+
*
|
|
55
|
+
* Keyed on the #232 engine stamp rather than on `apiPrefix` alone so the note is
|
|
56
|
+
* self-extinguishing: whether the app passed `baseUrl` to its provider is runtime code
|
|
57
|
+
* `meta gen` cannot see, so a prefix-only trigger would nag for ever with no way to
|
|
58
|
+
* satisfy it — the cry-wolf failure that got the `timestampMode` warning deleted from
|
|
59
|
+
* this file (see `codegen-ts-tanstack/src/data-grid-gate.ts`).
|
|
60
|
+
*
|
|
61
|
+
* Silence is the default for an absent or unorderable recorded version. That is the
|
|
62
|
+
* OPPOSITE call to the 0.24.5 agent-context staleness nudge, and deliberately: there an
|
|
63
|
+
* unknown version meant "cannot prove it is fresh, so nudge"; here it means "no gen
|
|
64
|
+
* history, so nothing to migrate", and a false nag costs more than a missed one when the
|
|
65
|
+
* compile break already routes the adopter to the same line.
|
|
66
|
+
*/
|
|
67
|
+
export function shouldNoteBaseUrlMove(apiPrefix, recordedEngine, moveVersion = BASE_URL_MOVE_VERSION) {
|
|
68
|
+
if (apiPrefix === "")
|
|
69
|
+
return false;
|
|
70
|
+
const was = orderable(recordedEngine);
|
|
71
|
+
const move = orderable(moveVersion);
|
|
72
|
+
if (was === undefined || move === undefined)
|
|
73
|
+
return false;
|
|
74
|
+
for (let i = 0; i < 3; i++) {
|
|
75
|
+
const a = was[i];
|
|
76
|
+
const b = move[i];
|
|
77
|
+
if (a !== b)
|
|
78
|
+
return a < b;
|
|
79
|
+
}
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
39
82
|
export async function runGen(opts) {
|
|
40
83
|
const warnings = [];
|
|
41
84
|
const strategy = opts.mergeStrategy ?? "overwrite";
|
|
@@ -158,12 +201,9 @@ export async function runGen(opts) {
|
|
|
158
201
|
// projects — the error even told them their model "generates database code"
|
|
159
202
|
// that in fact imported nothing. It is demanded below at the point of USE, by
|
|
160
203
|
// the generator that reads it, which the runner names in the thrown message.
|
|
161
|
-
const
|
|
162
|
-
if (
|
|
163
|
-
|
|
164
|
-
throw new Error(`codegen config is missing dialect — required because this model ` +
|
|
165
|
-
`generates database code for: ${names}. Set dialect in ` +
|
|
166
|
-
`metaobjects.config.ts. (A model of only value objects and/or sourceless projections may omit it.)`);
|
|
204
|
+
const dbEmitting = dbEmittingObjects(safeEntities);
|
|
205
|
+
if (dbEmitting.length > 0 && opts.config.dialect === undefined) {
|
|
206
|
+
throw new Error(missingDialectMessage(dbEmitting));
|
|
167
207
|
}
|
|
168
208
|
/** Did the AUTHOR declare a dbImport reachable by this target? Tracked, never
|
|
169
209
|
* inferred by comparing against DEFAULT_DB_IMPORT — `meta init` scaffolds a
|
|
@@ -172,6 +212,16 @@ export async function runGen(opts) {
|
|
|
172
212
|
const dbImportUndeclaredFor = (targetName) => (opts.config.targets?.[targetName]?.dbImport ?? opts.config.dbImport) === undefined;
|
|
173
213
|
// 2. Resolve targets + entity-module target.
|
|
174
214
|
const config = normalizeConfig(opts.config);
|
|
215
|
+
// The compile break (`value` → `fetcher` on the provider) sends an adopter to the right
|
|
216
|
+
// line; this names the value to put there, once, for the projects that had one.
|
|
217
|
+
if (shouldNoteBaseUrlMove(config.apiPrefix, recordedEngine)) {
|
|
218
|
+
warnings.push(`apiPrefix ${JSON.stringify(config.apiPrefix)} no longer reaches the client — ` +
|
|
219
|
+
`generated hooks and services emit entity-relative paths. Supply it once at the ` +
|
|
220
|
+
`provider: <EntityFetcherProvider fetcher={...} baseUrl=${JSON.stringify(config.apiPrefix)}> ` +
|
|
221
|
+
`(Angular: provideEntityFetcher({ fetcher, baseUrl: ${JSON.stringify(config.apiPrefix)} })). ` +
|
|
222
|
+
`Server routes still mount under apiPrefix and are unaffected. ` +
|
|
223
|
+
`See docs/features/migrations/api-base-url-leaves-the-entity-descriptor.md`);
|
|
224
|
+
}
|
|
175
225
|
// (Historical: a warning stood here for a @filterable timestamp under
|
|
176
226
|
// timestampMode:"date", which used to throw at REQUEST time in runtime-ts's
|
|
177
227
|
// filter parser. That limitation is fixed — the generated allowlist now carries
|
|
@@ -250,10 +300,31 @@ export async function runGen(opts) {
|
|
|
250
300
|
// surface it on every generator's ctx.config so api-docs documents the Hono
|
|
251
301
|
// CRUD surface it actually emits (rather than silently omitting it).
|
|
252
302
|
const includeHonoRoutes = config.generators.some((g) => g.emitsHonoRoutes === true);
|
|
303
|
+
// §A6 — same auto-detection for the OPT-IN names generator. The entity tier may only
|
|
304
|
+
// REFERENCE `<Entity>Names` when something in this run actually emits it; the names
|
|
305
|
+
// generator is opt-in under ADR-0034 (meta gen runs the adopter's own copies), so an
|
|
306
|
+
// unconditional import would break every project that has not added it. Surfaced BOTH
|
|
307
|
+
// on ctx.config (the field reference/names.ts documents, and the shape a third-party
|
|
308
|
+
// generator reads) and on every RenderContext below (what the templates can actually
|
|
309
|
+
// see) — one aggregation, two consumers.
|
|
310
|
+
//
|
|
311
|
+
// Scoped BY TARGET, unlike includeHonoRoutes, because the two flags are read for
|
|
312
|
+
// different reasons: api-docs asks "is this surface in the run?", while a template
|
|
313
|
+
// referencing these constants emits a RELATIVE import at its own target's path. The
|
|
314
|
+
// names artifact is not a registered cross-target module (there is no importBase route
|
|
315
|
+
// to it), so `entityFile({ target: "db" })` beside a default-target `namesFile()` would
|
|
316
|
+
// otherwise emit `./<Entity>.names` from a directory that does not hold one.
|
|
317
|
+
const namesTargets = new Set(config.generators.filter((g) => g.emitsNames === true).map((g) => targetOf(g).name));
|
|
253
318
|
// A declared template.prompt with no prompt generator wired emits nothing and, before
|
|
254
319
|
// this, said nothing — while `meta verify` reported the template "clean". See
|
|
255
320
|
// prompt-generator-gate.ts. Self-extinguishing; warning only.
|
|
256
321
|
warnMissingPromptGenerators(root, config.generators, (m) => warnings.push(m));
|
|
322
|
+
// A retired `@emit*` codegen flag still sitting in the metadata suppresses nothing now.
|
|
323
|
+
// Named here rather than left to be discovered as a file that reappeared. Scoped to
|
|
324
|
+
// the run's own entity set (the same set every generator sees), so `meta gen <entity>`
|
|
325
|
+
// reports on what it just generated rather than on objects it was told to skip.
|
|
326
|
+
// See retired-codegen-attrs.ts. Self-extinguishing; warning only.
|
|
327
|
+
warnRetiredCodegenAttrs(safeEntities, (m) => warnings.push(m));
|
|
257
328
|
// 4. Run each generator with a per-target render context; collect with full path.
|
|
258
329
|
const emitted = [];
|
|
259
330
|
// FR-038 §8 — generators that opted into orphan reconciliation, paired with the
|
|
@@ -301,6 +372,7 @@ export async function runGen(opts) {
|
|
|
301
372
|
apiPrefix: config.apiPrefix,
|
|
302
373
|
emitAbstractShapes: config.emitAbstractShapes,
|
|
303
374
|
outputLayout: selfTarget.outputLayout,
|
|
375
|
+
includeNames: namesTargets.has(selfTarget.name),
|
|
304
376
|
pkMap,
|
|
305
377
|
relationMap,
|
|
306
378
|
packageOf,
|
|
@@ -320,6 +392,7 @@ export async function runGen(opts) {
|
|
|
320
392
|
dialect: config.dialect,
|
|
321
393
|
outputLayout: selfTarget.outputLayout,
|
|
322
394
|
includeHonoRoutes,
|
|
395
|
+
includeNames: namesTargets.has(selfTarget.name),
|
|
323
396
|
},
|
|
324
397
|
renderContext,
|
|
325
398
|
...(projectRoot !== undefined && { projectRoot }),
|
|
@@ -347,7 +420,11 @@ export async function runGen(opts) {
|
|
|
347
420
|
}
|
|
348
421
|
catch (err) {
|
|
349
422
|
const msg = err instanceof Error ? err.message : String(err);
|
|
350
|
-
throw
|
|
423
|
+
// `cause` preserves the original throw. Without it a `runGen` caller sees a
|
|
424
|
+
// plain Error carrying only the prefixed message, so it cannot tell a
|
|
425
|
+
// CodegenError (a metadata/config problem it can report) from a genuine bug
|
|
426
|
+
// in a generator, and every stack trace stops at this line.
|
|
427
|
+
throw new Error(`[${generator.name}] ${msg}`, { cause: err });
|
|
351
428
|
}
|
|
352
429
|
for (const file of files) {
|
|
353
430
|
const fullPath = join(writeOutDir, file.path);
|
|
@@ -412,6 +489,31 @@ export async function runGen(opts) {
|
|
|
412
489
|
for (const w of refused) {
|
|
413
490
|
warnings.push(`Refused to overwrite ${w.path}: ${w.conflictHint ?? "content differs and could not be verified as generated."}`);
|
|
414
491
|
}
|
|
492
|
+
// The recovery, ONCE — for the same reason the no-manifest branch above aggregates:
|
|
493
|
+
// it is the same three commands whether one file refused or sixteen, and repeating
|
|
494
|
+
// it per file buries it.
|
|
495
|
+
//
|
|
496
|
+
// It is stated as a SEQUENCE rather than a menu because there is exactly one way to
|
|
497
|
+
// keep an edit here and it is not obvious: a three-way merge needs a base, the
|
|
498
|
+
// `.gen-state` bodies are gitignored, and this machine has none — so the base has to
|
|
499
|
+
// be manufactured first. `--baseline=fresh` writes fresh output AND seeds the missing
|
|
500
|
+
// snapshot; restoring the file from git then puts the edit back with a base now
|
|
501
|
+
// present, and the next run merges it. Verified end to end (refused → overwrite →
|
|
502
|
+
// merged, edit intact).
|
|
503
|
+
//
|
|
504
|
+
// Two remedies were removed from the per-file hint and are not restored here as
|
|
505
|
+
// universal advice. "Move the edit into a non-generated file" holds only where the
|
|
506
|
+
// edit CAN live elsewhere — a `requirementTests()` stub's body cannot, because the
|
|
507
|
+
// test name is the link to the requirement and the stub's own header forbids renaming
|
|
508
|
+
// it. "--baseline=fresh" alone is a discard, and is named as one.
|
|
509
|
+
warnings.push(`To KEEP your version of the file(s) above, the edit must be committed first — ` +
|
|
510
|
+
`then: 'meta gen --baseline=fresh' (writes fresh output over them and seeds the ` +
|
|
511
|
+
`missing .gen-state snapshot), 'git checkout -- <paths>' to bring your version back, ` +
|
|
512
|
+
`then 'meta gen' again — the snapshot now exists, so the edit merges. ` +
|
|
513
|
+
`To DISCARD your version instead, '--baseline=fresh' on its own is the whole answer. ` +
|
|
514
|
+
`Moving the edit into a non-generated file works only where the edit can live outside ` +
|
|
515
|
+
`the generated one; a requirementTests() stub's body cannot, since the test name is ` +
|
|
516
|
+
`its link to the requirement.`);
|
|
415
517
|
};
|
|
416
518
|
const sweep = (dryRun) => {
|
|
417
519
|
if (projectRoot === undefined || orphanJobs.length === 0)
|
package/dist/runner.js.map
CHANGED
|
@@ -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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"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { type MetaObject } from "@metaobjectsdev/metadata";
|
|
2
|
+
import type { RenderContext } from "../render-context.js";
|
|
2
3
|
/** Return true when this entity is backed by a callable source (stored
|
|
3
4
|
* procedure or table function). Used by the generator factory to filter. */
|
|
4
5
|
export declare function isCallableEntity(entity: MetaObject): boolean;
|
|
5
6
|
/** Render the full file content for an entity's callable wrapper. Caller
|
|
6
|
-
* is responsible for formatting (prettier / biome) and writing to disk.
|
|
7
|
-
|
|
7
|
+
* is responsible for formatting (prettier / biome) and writing to disk.
|
|
8
|
+
*
|
|
9
|
+
* `ctx` is optional only so the pre-existing callers that render a wrapper in isolation
|
|
10
|
+
* keep compiling; with it absent the physical name is spelled literally, which is the
|
|
11
|
+
* same documented fallback as running with `namesFile()` out of the suite. */
|
|
12
|
+
export declare function renderCallableFile(entity: MetaObject, ctx?: RenderContext): string;
|
|
8
13
|
//# sourceMappingURL=callable-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callable-file.d.ts","sourceRoot":"","sources":["../../src/templates/callable-file.ts"],"names":[],"mappings":"AAqBA,OAAO,
|
|
1
|
+
{"version":3,"file":"callable-file.d.ts","sourceRoot":"","sources":["../../src/templates/callable-file.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEL,KAAK,UAAU,EAShB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAO1D;6EAC6E;AAC7E,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAG5D;AAcD;;;;;+EAK+E;AAC/E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,MAAM,CAgHlF"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// import { PhaseSummarySchema, type PhaseSummary } from "./PhaseSummary.js";
|
|
8
8
|
//
|
|
9
9
|
// export async function callPhaseSummary(
|
|
10
|
-
// db: PgDatabase<PgQueryResultHKT, Record<string,
|
|
10
|
+
// db: PgDatabase<PgQueryResultHKT, Record<string, unknown>>,
|
|
11
11
|
// args: PhaseSummaryArgs,
|
|
12
12
|
// ): Promise<PhaseSummary[]> {
|
|
13
13
|
// const r = await db.execute(
|
|
@@ -18,8 +18,10 @@
|
|
|
18
18
|
//
|
|
19
19
|
// Zero-argument procs (no @parameterRef) emit a no-args version that drops the
|
|
20
20
|
// `args` parameter and calls `fn_x()`.
|
|
21
|
-
import { isMetaSource, SOURCE_ATTR_PARAMETER_REF, SOURCE_KIND_STORED_PROC, SOURCE_KIND_TABLE_FUNCTION, TYPE_FIELD, TYPE_SOURCE, OBJECT_SUBTYPE_VALUE, } from "@metaobjectsdev/metadata";
|
|
21
|
+
import { primaryRdbSource, isMetaSource, SOURCE_ATTR_PARAMETER_REF, SOURCE_KIND_STORED_PROC, SOURCE_KIND_TABLE_FUNCTION, TYPE_FIELD, TYPE_SOURCE, OBJECT_SUBTYPE_VALUE, } from "@metaobjectsdev/metadata";
|
|
22
22
|
import { GENERATED_HEADER } from "../constants.js";
|
|
23
|
+
import { crossEntitySpecifier } from "../import-path.js";
|
|
24
|
+
import { resolveObjectNames } from "../names.js";
|
|
23
25
|
const CALLABLE_KINDS = new Set([
|
|
24
26
|
SOURCE_KIND_STORED_PROC,
|
|
25
27
|
SOURCE_KIND_TABLE_FUNCTION,
|
|
@@ -45,8 +47,24 @@ function callableSource(entity) {
|
|
|
45
47
|
return undefined;
|
|
46
48
|
}
|
|
47
49
|
/** Render the full file content for an entity's callable wrapper. Caller
|
|
48
|
-
* is responsible for formatting (prettier / biome) and writing to disk.
|
|
49
|
-
|
|
50
|
+
* is responsible for formatting (prettier / biome) and writing to disk.
|
|
51
|
+
*
|
|
52
|
+
* `ctx` is optional only so the pre-existing callers that render a wrapper in isolation
|
|
53
|
+
* keep compiling; with it absent the physical name is spelled literally, which is the
|
|
54
|
+
* same documented fallback as running with `namesFile()` out of the suite. */
|
|
55
|
+
export function renderCallableFile(entity, ctx) {
|
|
56
|
+
// Run the primary-source DIVERGENCE refusal before resolving a physical name.
|
|
57
|
+
// `callableSource` selects by @kind with NO role filter, so it is a THIRD door into
|
|
58
|
+
// "what relation does this object name" — and it is reached by `callableFile()` alone,
|
|
59
|
+
// with no table-name resolver anywhere on the path. Without this an object whose
|
|
60
|
+
// @role: primary sources disagree emitted a wrapper bound to the inherited parent's
|
|
61
|
+
// procedure, on a model every other tier refuses. A refusal that depends on which
|
|
62
|
+
// generators ran is not a refusal.
|
|
63
|
+
//
|
|
64
|
+
// The SELECTION below is deliberately unchanged: divergence is about the NAME, while
|
|
65
|
+
// this function additionally asks "which source is callable?". Same shape as
|
|
66
|
+
// MetaObject.dbTable and the JVM/C# findPrimaryWritableSource.
|
|
67
|
+
primaryRdbSource(entity);
|
|
50
68
|
const source = callableSource(entity);
|
|
51
69
|
if (source === undefined) {
|
|
52
70
|
throw new Error(`renderCallableFile: entity "${entity.name}" has no source.rdb with @kind: "storedProc" or "tableFunction"`);
|
|
@@ -72,6 +90,25 @@ export function renderCallableFile(entity) {
|
|
|
72
90
|
const sqlArgList = paramFieldNames.length === 0
|
|
73
91
|
? ""
|
|
74
92
|
: paramFieldNames.map((n) => `\${args.${n}}`).join(", ");
|
|
93
|
+
// §A6 — reference `<Entity>Names.sources.primary.proc` rather than spelling the
|
|
94
|
+
// procedure a SECOND time.
|
|
95
|
+
// This file is a raw string template rather than ts-poet, so the import is composed here
|
|
96
|
+
// instead of through `imp`; `crossEntitySpecifier` is the same helper `namesRef` uses, so
|
|
97
|
+
// the specifier (and its extension style) cannot drift from every other generator's.
|
|
98
|
+
const namesConst = ctx !== undefined && ctx.includeNames &&
|
|
99
|
+
resolveObjectNames(entity, ctx.columnNamingStrategy) !== undefined
|
|
100
|
+
? `${entity.name}Names`
|
|
101
|
+
: undefined;
|
|
102
|
+
const namesImport = namesConst === undefined
|
|
103
|
+
? ""
|
|
104
|
+
: `import { ${namesConst} } from "${crossEntitySpecifier(ctx.selfTarget.outputLayout, entity.package, entity.package, `${entity.name}.names`, ctx.extStyle)}";\n`;
|
|
105
|
+
// The identifier must stay an IDENTIFIER. A bare interpolation into drizzle's `sql` tag
|
|
106
|
+
// binds a PARAMETER, so `sql`SELECT * FROM ${Names.sources.primary.proc}(…)`` would send the procedure
|
|
107
|
+
// name as a query argument and produce SQL that cannot execute. `sql.raw` splices text.
|
|
108
|
+
// `sql.identifier` is deliberately not used: it quotes, which changes the statement.
|
|
109
|
+
const procNameExpr = namesConst === undefined
|
|
110
|
+
? procName
|
|
111
|
+
: `\${${"sql.raw"}(${namesConst}.name)}`;
|
|
75
112
|
const fnName = `call${entity.name}`;
|
|
76
113
|
const projectionType = entity.name;
|
|
77
114
|
const projectionSchemaName = `${entity.name}Schema`;
|
|
@@ -80,22 +117,30 @@ export function renderCallableFile(entity) {
|
|
|
80
117
|
const argsImport = argsObject
|
|
81
118
|
? `import type { ${argsObjectName} } from "./${argsObjectName}.js";\n`
|
|
82
119
|
: "";
|
|
120
|
+
// The `db` parameter type carries the same open-type-argument rule as the queries
|
|
121
|
+
// file's `Db` alias (see templates/queries-file.ts `dbTypeBlock`): `PgDatabase` is the
|
|
122
|
+
// base every PG driver extends, and the schema parameter stays at Drizzle's own bound
|
|
123
|
+
// `Record<string, unknown>` — NOT its `Record<string, never>` default, which rejects the
|
|
124
|
+
// idiomatic `drizzle(client, { schema })` db with TS2345 and makes this callable
|
|
125
|
+
// uninvokable. Uncompilable generated code is indistinguishable from unused generated
|
|
126
|
+
// code, so this parameter must never be narrowed back.
|
|
83
127
|
const signature = argsObject
|
|
84
|
-
? `db: PgDatabase<PgQueryResultHKT, Record<string,
|
|
85
|
-
: `db: PgDatabase<PgQueryResultHKT, Record<string,
|
|
128
|
+
? `db: PgDatabase<PgQueryResultHKT, Record<string, unknown>>, args: ${argsObjectName}`
|
|
129
|
+
: `db: PgDatabase<PgQueryResultHKT, Record<string, unknown>>`;
|
|
86
130
|
return `// ${GENERATED_HEADER}
|
|
87
131
|
import { sql } from "drizzle-orm";
|
|
88
132
|
import type { PgDatabase, PgQueryResultHKT } from "drizzle-orm/pg-core";
|
|
89
|
-
${argsImport}import { ${projectionSchemaName}, type ${projectionType} } from "./${entity.name}.js";
|
|
133
|
+
${namesImport}${argsImport}import { ${projectionSchemaName}, type ${projectionType} } from "./${entity.name}.js";
|
|
90
134
|
|
|
91
135
|
/**
|
|
92
|
-
* FR-015: typed wrapper around the
|
|
136
|
+
* FR-015: typed wrapper around the ${source.effectiveKind === SOURCE_KIND_STORED_PROC ? "stored procedure" : "table function"} named by
|
|
137
|
+
* \`${namesConst === undefined ? procName : `${namesConst}.name`}\`.
|
|
93
138
|
* Drizzle passes a parameterised SELECT — args bind in declaration order from
|
|
94
139
|
* the @parameterRef value-object${argsObject ? `, here ${argsObjectName}` : ""}.
|
|
95
140
|
*/
|
|
96
141
|
export async function ${fnName}(${signature}): Promise<${projectionType}[]> {
|
|
97
142
|
const r = await db.execute(
|
|
98
|
-
sql\`SELECT * FROM ${
|
|
143
|
+
sql\`SELECT * FROM ${procNameExpr}(${sqlArgList})\`,
|
|
99
144
|
);
|
|
100
145
|
return r.rows.map((row) => ${projectionSchemaName}.parse(row as unknown));
|
|
101
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callable-file.js","sourceRoot":"","sources":["../../src/templates/callable-file.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,uEAAuE;AACvE,EAAE;AACF,uCAAuC;AACvC,6EAA6E;AAC7E,mEAAmE;AACnE,+EAA+E;AAC/E,EAAE;AACF,4CAA4C;AAC5C
|
|
1
|
+
{"version":3,"file":"callable-file.js","sourceRoot":"","sources":["../../src/templates/callable-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -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,
|
|
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,EAAoD,MAAM,0BAA0B,CAAC;AASxG,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAYjF;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA0V7E"}
|