@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/names.js
ADDED
|
@@ -0,0 +1,433 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* §A2/§A3 — the ONE place a data name is resolved for a generator run.
|
|
3
|
+
*
|
|
4
|
+
* Both the names artifact (namesFile) and the entity generator that consumes it call this,
|
|
5
|
+
* so the constant and the binding it describes cannot be produced by different resolvers or
|
|
6
|
+
* different arguments. That is the whole rule; a name computed twice is a name that can
|
|
7
|
+
* disagree with itself.
|
|
8
|
+
*/
|
|
9
|
+
import { primaryRdbSource, resolveColumnName, resolveIndexName, resolveTableSchema, isMetaObject, isMetaSource, PHYSICAL_NAME_ATTR_BY_KIND, SOURCE_ATTR_SCHEMA, SOURCE_ROLE_PRIMARY, TYPE_INDEX, TYPE_OBJECT, TYPE_SOURCE, } from "@metaobjectsdev/metadata";
|
|
10
|
+
import { code, imp } from "ts-poet";
|
|
11
|
+
import { crossEntitySpecifier } from "./import-path.js";
|
|
12
|
+
/**
|
|
13
|
+
* One source node's names, keyed by the metamodel's own kind→alias map.
|
|
14
|
+
*
|
|
15
|
+
* `readOnly` is deliberately NOT carried, and its removal is the shape's own rule applied
|
|
16
|
+
* to itself: it is not metadata at all but a derivation over `@kind` (`source.isReadOnly()`),
|
|
17
|
+
* and a sweep of all five ports found ZERO consumers, generated or hand-written. An
|
|
18
|
+
* artifact that mirrors the metadata tree carries what was declared; a reader who wants
|
|
19
|
+
* read-only-ness asks `kind`, which is the thing the author actually wrote.
|
|
20
|
+
*/
|
|
21
|
+
function sourceNamesOf(source) {
|
|
22
|
+
const kind = source.effectiveKind;
|
|
23
|
+
// The metamodel's map, never a local switch: a sixth @kind must not need an edit here to
|
|
24
|
+
// be spelled correctly, and a local copy is a second answer to a question that has one.
|
|
25
|
+
const alias = PHYSICAL_NAME_ATTR_BY_KIND.get(kind);
|
|
26
|
+
const schema = source.attr(SOURCE_ATTR_SCHEMA);
|
|
27
|
+
return {
|
|
28
|
+
type: TYPE_SOURCE,
|
|
29
|
+
subType: source.subType,
|
|
30
|
+
kind,
|
|
31
|
+
...(typeof schema === "string" && schema !== "" ? { schema } : {}),
|
|
32
|
+
...(alias === undefined ? {} : { [alias]: source.physicalName }),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Every `source.rdb` child of `obj`, keyed by effective role. */
|
|
36
|
+
function sourcesOf(sources, where) {
|
|
37
|
+
const out = {};
|
|
38
|
+
for (const src of sources) {
|
|
39
|
+
const role = src.role;
|
|
40
|
+
const resolved = sourceNamesOf(src);
|
|
41
|
+
const existing = out[role];
|
|
42
|
+
if (existing === undefined) {
|
|
43
|
+
out[role] = resolved;
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
// The refusal is about DISAGREEMENT, not about the count. An abstract base and the
|
|
47
|
+
// child that extends it may each declare a `@role: primary` source naming the same
|
|
48
|
+
// relation; that is legal and stays legal, because the records then compare equal.
|
|
49
|
+
//
|
|
50
|
+
// Two sources in one role that resolve DIFFERENTLY is the real problem, and silently
|
|
51
|
+
// keeping one is the `dropped` failure mode this artifact makes impossible: the second
|
|
52
|
+
// name is carried nowhere, read by nobody, and the binding quietly takes the first's.
|
|
53
|
+
//
|
|
54
|
+
// WHAT IS COMPARED. The whole resolved record — kind, schema and the physical name
|
|
55
|
+
// under its alias — for EVERY role. `primaryRdbSource` now compares the same address
|
|
56
|
+
// (`sourceAddressKey`) for `primary`, so the two doors agree by construction rather
|
|
57
|
+
// than by coincidence.
|
|
58
|
+
//
|
|
59
|
+
// This comment used to claim the two were "deliberately the SAME rule" when they were
|
|
60
|
+
// not, and the gap was reachable: two `@role: primary` sources agreeing on `@table`
|
|
61
|
+
// but disagreeing on `@schema` loaded clean, were ACCEPTED by `primaryRdbSource` and
|
|
62
|
+
// refused here, so `meta gen` failed on a model every other door admitted. Worse, the
|
|
63
|
+
// weaker key made the accepted answer port-dependent — `primaries[0]` is the inherited
|
|
64
|
+
// source in TS/C#/Python and the own source on the JVM. That is now closed at the
|
|
65
|
+
// authority; this stays because it also covers the non-primary roles (two disagreeing
|
|
66
|
+
// REPLICAs) and because it is what builds the keyed map.
|
|
67
|
+
if (JSON.stringify(existing) !== JSON.stringify(resolved)) {
|
|
68
|
+
throw new Error(`${where} declares more than one source.rdb with @role: "${role}", and they ` +
|
|
69
|
+
`disagree on the object's physical address: ${JSON.stringify(existing)} vs ` +
|
|
70
|
+
`${JSON.stringify(resolved)}. The names artifact keys sources by role, so the ` +
|
|
71
|
+
`second has nowhere to go.`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return out;
|
|
75
|
+
}
|
|
76
|
+
/** Every `source.rdb` child of `obj`. `own` restricts to those declared here. */
|
|
77
|
+
function rdbSourcesOf(obj, own) {
|
|
78
|
+
// ADR-0039: children() resolves through `extends`; ownChildren() is the sanctioned
|
|
79
|
+
// own-only twin for "what does THIS artifact declare".
|
|
80
|
+
const kids = own ? obj.ownChildren() : obj.children();
|
|
81
|
+
return kids.filter((c) => isMetaSource(c));
|
|
82
|
+
}
|
|
83
|
+
/** Every `identity.*` / `index.*` child, keyed by metamodel name. */
|
|
84
|
+
function keysOf(nodes) {
|
|
85
|
+
const out = {};
|
|
86
|
+
for (const node of nodes) {
|
|
87
|
+
// resolveIndexName owns BOTH the package strip and the empty-name refusal, so the
|
|
88
|
+
// artifact and the DDL cannot disagree about what an index is called — and an
|
|
89
|
+
// `index.lookup` with an empty name (which the loader accepts, unlike an identity)
|
|
90
|
+
// fails here instead of reaching an emitter.
|
|
91
|
+
const hasIndexName = INDEX_NAMED_SUBTYPES.has(`${node.type}.${node.subType}`);
|
|
92
|
+
out[node.name] = {
|
|
93
|
+
type: node.type,
|
|
94
|
+
subType: node.subType,
|
|
95
|
+
name: node.name,
|
|
96
|
+
...(hasIndexName ? { index: resolveIndexName(node) } : {}),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
return out;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* The nodes whose database index name the artifact carries.
|
|
103
|
+
*
|
|
104
|
+
* A closed set rather than "anything with a name", because the rule is narrow and worth
|
|
105
|
+
* stating: the artifact carries a physical name only where ONE resolver, shared by codegen
|
|
106
|
+
* and migrate, produces it. `identity.primary` and `identity.reference` have names that are
|
|
107
|
+
* addressing handles, not database names — see {@link KeyNames}.
|
|
108
|
+
*/
|
|
109
|
+
const INDEX_NAMED_SUBTYPES = new Set([
|
|
110
|
+
"identity.secondary",
|
|
111
|
+
"index.lookup",
|
|
112
|
+
]);
|
|
113
|
+
/**
|
|
114
|
+
* Whether `obj` DECLARES anything a names artifact carries.
|
|
115
|
+
*
|
|
116
|
+
* One predicate, because the artifact has four collections and the two places that ask
|
|
117
|
+
* this question must agree about all four. They used to ask about fields alone, and the
|
|
118
|
+
* cost was precise: an intermediate abstract declaring only an `identity.secondary` — a
|
|
119
|
+
* key hoisted onto a chain, which is the whole reason such a node exists — answered "no".
|
|
120
|
+
* {@link namesArtifactSuperOf} then walked past it and {@link resolveSuperFragmentNames}
|
|
121
|
+
* emitted nothing for it, so its key appeared in NEITHER the child's own set nor the
|
|
122
|
+
* grandparent's spread. `drizzle-schema.ts` still emitted `uniqueIndex(<E>Names.
|
|
123
|
+
* identities.<key>.index)` against it, and the generated code did not compile.
|
|
124
|
+
*
|
|
125
|
+
* ADR-0039's sanctioned own-accessor use: the question is what this node declares, not
|
|
126
|
+
* what it can see. An inherited key belongs to the ancestor that declared it, and is
|
|
127
|
+
* reached through that ancestor's artifact.
|
|
128
|
+
*/
|
|
129
|
+
function declaresNamesContent(obj) {
|
|
130
|
+
return obj.ownFields().length > 0 ||
|
|
131
|
+
obj.ownIdentities().length > 0 ||
|
|
132
|
+
obj.ownLookupIndexes().length > 0;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* The nearest ancestor of `obj` that carries a names artifact of its own, or undefined.
|
|
136
|
+
*
|
|
137
|
+
* Walks past an ancestor with nothing to contribute — an abstract marker with no fields,
|
|
138
|
+
* no keys and no source emits no artifact, so there is nothing to extend and the search
|
|
139
|
+
* continues upward rather than stopping at a name that does not exist.
|
|
140
|
+
*/
|
|
141
|
+
export function namesArtifactSuperOf(obj) {
|
|
142
|
+
let cur = obj.superData;
|
|
143
|
+
while (cur !== undefined) {
|
|
144
|
+
// The exported guard, never `as MetaObject` and never a duck-type check on a method
|
|
145
|
+
// name: `superData` is only a MetaData, and CLAUDE.md makes this the required
|
|
146
|
+
// mechanism — two physical copies of the package in one process give a class object
|
|
147
|
+
// and an instance different identities, so `instanceof` returns false for a real node.
|
|
148
|
+
if (isMetaObject(cur) && (declaresNamesContent(cur) || primaryRdbSource(cur) !== undefined)) {
|
|
149
|
+
return cur;
|
|
150
|
+
}
|
|
151
|
+
cur = cur.superData;
|
|
152
|
+
}
|
|
153
|
+
return undefined;
|
|
154
|
+
}
|
|
155
|
+
export function resolveObjectNames(obj, strategy) {
|
|
156
|
+
// #248: an object participates in the database iff it declares (or inherits) a primary
|
|
157
|
+
// source. Never gate on the object subtype. ADR-0039: resolving children().
|
|
158
|
+
//
|
|
159
|
+
// primaryRdbSource, not a scan of our own: it is THE primary-source lookup for the whole
|
|
160
|
+
// toolchain, and it carries the divergence refusal that used to live in this function
|
|
161
|
+
// (see below). A second scan here would be a lookup written twice — the same defect one
|
|
162
|
+
// level down from the one this file exists to prevent (a NAME resolved twice).
|
|
163
|
+
const source = primaryRdbSource(obj);
|
|
164
|
+
if (source === undefined)
|
|
165
|
+
return undefined;
|
|
166
|
+
const ownFieldList = obj.ownFields();
|
|
167
|
+
const fields = {};
|
|
168
|
+
// ADR-0039: fields() is the RESOLVING accessor — inherited fields must appear, and an
|
|
169
|
+
// inherited @column must resolve, or the constant disagrees with the DDL.
|
|
170
|
+
for (const f of obj.fields()) {
|
|
171
|
+
fields[f.name] = { name: f.name, column: resolveColumnName(f, strategy) };
|
|
172
|
+
}
|
|
173
|
+
// ADR-0039's sanctioned own-accessor use: what this artifact DECLARES. See ObjectNames.
|
|
174
|
+
const ownFields = {};
|
|
175
|
+
for (const f of ownFieldList) {
|
|
176
|
+
ownFields[f.name] = { name: f.name, column: resolveColumnName(f, strategy) };
|
|
177
|
+
}
|
|
178
|
+
const superObj = namesArtifactSuperOf(obj);
|
|
179
|
+
const superNames = superObj === undefined
|
|
180
|
+
? undefined
|
|
181
|
+
: { name: superObj.name, package: superObj.package };
|
|
182
|
+
// Identity of the resolved source NODE, not equality of the resolved strings: a
|
|
183
|
+
// divergence guard is exactly what this codebase forbids here, and the question being
|
|
184
|
+
// asked is structural — did this object declare a source, or is it using its parent's?
|
|
185
|
+
const inheritsSource = source !== undefined && superObj !== undefined &&
|
|
186
|
+
primaryRdbSource(superObj) === source;
|
|
187
|
+
// Read the physical name off the primary SOURCE ALREADY IN HAND rather than calling
|
|
188
|
+
// resolveTableName() for it. Both now delegate to primaryRdbSource, so this is no longer
|
|
189
|
+
// about avoiding a second, differently-written lookup — it is that resolveTableName adds
|
|
190
|
+
// a no-source FALLBACK (pluralize(snake(name))) this function must not take: an object
|
|
191
|
+
// with no primary source returns undefined above, and must never acquire a table name it
|
|
192
|
+
// never declared. Mirrors the C# port (CSharpNaming.ResolveObjectNames).
|
|
193
|
+
const name = source.physicalName;
|
|
194
|
+
// The divergence refusal — an object whose @role: primary sources resolve to more than
|
|
195
|
+
// one physical name — used to live HERE, and that was the defect. Every consumer
|
|
196
|
+
// downstream references this name unconditionally (no per-site equality guard; see
|
|
197
|
+
// drizzle-schema.ts), but this function runs only when the `names` generator is in the
|
|
198
|
+
// run, so with namesFile() unwired nothing refused at all: `meta migrate` emitted DDL
|
|
199
|
+
// against the PARENT's table and ObjectManager read and wrote it, silently, on every
|
|
200
|
+
// run. A refusal that depends on which consumer asked is not a refusal.
|
|
201
|
+
//
|
|
202
|
+
// It now lives in primaryRdbSource (@metaobjectsdev/metadata's naming.ts), called
|
|
203
|
+
// above, so resolveTableName, resolveTableSchema, MetaObject.dbTable and this function
|
|
204
|
+
// all inherit it from one implementation. See that function's doc for the reachability
|
|
205
|
+
// analysis — the shape loads with ZERO errors — and for why the check must be
|
|
206
|
+
// DIRECTION-BLIND rather than comparing against the first primary WRITABLE source.
|
|
207
|
+
// names.test.ts pins both directions through this entry point; naming.test.ts (in
|
|
208
|
+
// @metaobjectsdev/metadata) pins the other three doors.
|
|
209
|
+
return {
|
|
210
|
+
type: TYPE_OBJECT,
|
|
211
|
+
subType: obj.subType,
|
|
212
|
+
// The object's OWN name. `source.physicalName` (resolved above as `name`) is now
|
|
213
|
+
// reached through `sources.<role>.<alias>`, which is the point of the restructure:
|
|
214
|
+
// one key stopped meaning a table, a view and a procedure depending on the object.
|
|
215
|
+
name: obj.name,
|
|
216
|
+
sources: sourcesOf(rdbSourcesOf(obj, false), obj.name),
|
|
217
|
+
ownSources: sourcesOf(rdbSourcesOf(obj, true), obj.name),
|
|
218
|
+
fields,
|
|
219
|
+
ownFields,
|
|
220
|
+
identities: keysOf(obj.identities()),
|
|
221
|
+
ownIdentities: keysOf(obj.ownIdentities()),
|
|
222
|
+
indexes: keysOf(obj.lookupIndexes()),
|
|
223
|
+
ownIndexes: keysOf(obj.ownLookupIndexes()),
|
|
224
|
+
superNames,
|
|
225
|
+
inheritsSource,
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* The names FRAGMENT for an object that a sourced object extends but which declares no
|
|
230
|
+
* source of its own — the `BaseEntity` pattern: shared fields, no table.
|
|
231
|
+
*
|
|
232
|
+
* Separate from {@link resolveObjectNames} on purpose, and the separation is the #248 rule
|
|
233
|
+
* intact rather than weakened. "Has a primary source" still decides whether an object is a
|
|
234
|
+
* database participant, so an `object.value` carrying fields resolves to nothing here as it
|
|
235
|
+
* always has. A fragment is emitted only for an object REACHED from a participant by
|
|
236
|
+
* walking `extends` upward — which is the only context in which its fields are columns at
|
|
237
|
+
* all. It carries no `kind`/`name`/`readOnly`, because it has no physical name and must
|
|
238
|
+
* never acquire one.
|
|
239
|
+
*
|
|
240
|
+
* Returns undefined when the object declares nothing of its own: an abstract marker has
|
|
241
|
+
* nothing to extend, and emitting an empty artifact for it would put a name in the import
|
|
242
|
+
* graph that says nothing. "Nothing" is {@link declaresNamesContent} — fields OR keys, the
|
|
243
|
+
* same question {@link namesArtifactSuperOf} asks, so the walk and the emit cannot disagree
|
|
244
|
+
* about which ancestors exist.
|
|
245
|
+
*/
|
|
246
|
+
export function resolveSuperFragmentNames(obj, strategy) {
|
|
247
|
+
if (!declaresNamesContent(obj))
|
|
248
|
+
return undefined;
|
|
249
|
+
const ownFieldList = obj.ownFields();
|
|
250
|
+
const fields = {};
|
|
251
|
+
for (const f of obj.fields()) {
|
|
252
|
+
fields[f.name] = { name: f.name, column: resolveColumnName(f, strategy) };
|
|
253
|
+
}
|
|
254
|
+
const ownFields = {};
|
|
255
|
+
for (const f of ownFieldList) {
|
|
256
|
+
ownFields[f.name] = { name: f.name, column: resolveColumnName(f, strategy) };
|
|
257
|
+
}
|
|
258
|
+
const superObj = namesArtifactSuperOf(obj);
|
|
259
|
+
return {
|
|
260
|
+
type: TYPE_OBJECT,
|
|
261
|
+
subType: obj.subType,
|
|
262
|
+
name: obj.name,
|
|
263
|
+
// Empty, and emitted as empty rather than omitted: a child spreads `...Super.sources`
|
|
264
|
+
// unconditionally, so the key has to exist. A fragment declares no source and must
|
|
265
|
+
// never acquire a physical name it never wrote.
|
|
266
|
+
sources: {},
|
|
267
|
+
ownSources: {},
|
|
268
|
+
fields,
|
|
269
|
+
ownFields,
|
|
270
|
+
identities: keysOf(obj.identities()),
|
|
271
|
+
ownIdentities: keysOf(obj.ownIdentities()),
|
|
272
|
+
indexes: keysOf(obj.lookupIndexes()),
|
|
273
|
+
ownIndexes: keysOf(obj.ownLookupIndexes()),
|
|
274
|
+
superNames: superObj === undefined
|
|
275
|
+
? undefined
|
|
276
|
+
: { name: superObj.name, package: superObj.package },
|
|
277
|
+
inheritsSource: false,
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* §B2 — the shared builder every `<Object>Names` reference call site used to hand-roll:
|
|
282
|
+
* check whether the artifact exists in this run (`ctx.includeNames`), resolve the
|
|
283
|
+
* constant (`resolveObjectNames`), and build the ts-poet import symbol pointing at
|
|
284
|
+
* `<Object>.names.ts`. Returns undefined whenever the artifact does not exist for this
|
|
285
|
+
* object in this run — a PRESENCE guard ("is the artifact in this run at all"), never the
|
|
286
|
+
* divergence refusal that `primaryRdbSource` owns: this function never compares a
|
|
287
|
+
* resolved value to a literal, it only asks whether the constant exists.
|
|
288
|
+
*
|
|
289
|
+
* `fromPackage` is the package of the FILE BEING EMITTED — the file that will hold the
|
|
290
|
+
* `import { <Object>Names } from …` line — and defaults to `obj.package`, correct for
|
|
291
|
+
* every site that emits `obj`'s OWN module (the entity generator referencing its own
|
|
292
|
+
* names artifact, same object on both ends). A caller emitting a DIFFERENT object's file
|
|
293
|
+
* and reaching across packages for `obj`'s names artifact — an M:N routes file, which
|
|
294
|
+
* lives in the SOURCE entity's package, importing the junction/target's `<X>Names` — MUST
|
|
295
|
+
* pass the emitting file's own package explicitly. Making this an explicit parameter
|
|
296
|
+
* (rather than assuming same-package the way a plain sibling specifier does) is what
|
|
297
|
+
* surfaces that choice: see routes-file.ts's `resolveJunctionColumn`, the one site that
|
|
298
|
+
* got it wrong by assuming same-package.
|
|
299
|
+
*/
|
|
300
|
+
export function namesRef(obj, ctx, fromPackage = obj.package) {
|
|
301
|
+
if (!ctx.includeNames)
|
|
302
|
+
return undefined;
|
|
303
|
+
const resolved = resolveObjectNames(obj, ctx.columnNamingStrategy);
|
|
304
|
+
if (resolved === undefined)
|
|
305
|
+
return undefined;
|
|
306
|
+
const symbol = code `${imp(`${obj.name}Names@${crossEntitySpecifier(ctx.selfTarget.outputLayout, fromPackage, obj.package, `${obj.name}.names`, ctx.extStyle)}`)}`;
|
|
307
|
+
return { resolved, symbol };
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Adapts a `namesRef()` result to the `{ name, symbol }` shape `renderEntityConstants` /
|
|
311
|
+
* `renderEntityMetaFile` accept. Kept as a separate, narrower shape from `namesRef`'s own
|
|
312
|
+
* `{ resolved, symbol }` rather than folded together: those two functions' parameter
|
|
313
|
+
* predates this helper, and an adopter who already ejected the ADR-0034 reference
|
|
314
|
+
* template calls them with exactly this `{ name, symbol }` shape — widening the required
|
|
315
|
+
* shape to `resolved` would fail to compile in every such copy.
|
|
316
|
+
*/
|
|
317
|
+
export function namesConstArg(names, role = SOURCE_ROLE_PRIMARY) {
|
|
318
|
+
// `resolved.name` is optional because a FRAGMENT (an abstract base contributing columns,
|
|
319
|
+
// with no source of its own) genuinely has no physical name. No caller reaches here with
|
|
320
|
+
// one — `namesRef` goes through `resolveObjectNames`, which requires a primary source —
|
|
321
|
+
// but returning undefined rather than asserting keeps the fragment case from acquiring a
|
|
322
|
+
// `$table` it never declared, which is the phantom-table failure #248 exists to prevent.
|
|
323
|
+
const src = names?.resolved.sources[role];
|
|
324
|
+
if (names === undefined || src === undefined)
|
|
325
|
+
return undefined;
|
|
326
|
+
const alias = PHYSICAL_NAME_ATTR_BY_KIND.get(src.kind);
|
|
327
|
+
const physical = alias === undefined ? undefined : src[alias];
|
|
328
|
+
// A fragment (an abstract base contributing columns, no source of its own) genuinely
|
|
329
|
+
// has no physical name. Returning undefined rather than asserting keeps it from
|
|
330
|
+
// acquiring a `$table` it never declared — the phantom-table failure #248 prevents.
|
|
331
|
+
if (typeof physical !== "string")
|
|
332
|
+
return undefined;
|
|
333
|
+
return { name: physical, symbol: names.symbol };
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* A member access that stays valid whatever the key is: `.email` for an identifier,
|
|
337
|
+
* `["2fa-idx"]` otherwise.
|
|
338
|
+
*
|
|
339
|
+
* Needed because two of the artifact's four collections are keyed by an AUTHOR-CHOSEN
|
|
340
|
+
* name. Field keys are field names and are always identifiers; an index name is whatever
|
|
341
|
+
* the author wrote (`uq_cust_email` is an identifier, `2fa-idx` is not), so a dot access
|
|
342
|
+
* built from it does not parse. One helper rather than a per-site guess.
|
|
343
|
+
*/
|
|
344
|
+
function member(key) {
|
|
345
|
+
return /^[A-Za-z_$][A-Za-z0-9_$]*$/.test(key) ? `.${key}` : `[${JSON.stringify(key)}]`;
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* The physical-name expression every §A6 `$table` / view-name site builds: the constant
|
|
349
|
+
* when the artifact is present, the literal otherwise. No equality guard — but the two
|
|
350
|
+
* branches earn that two different ways, and both are worth naming:
|
|
351
|
+
*
|
|
352
|
+
* - A TABLE literal (`drizzle-schema.ts`, `entity-constants.ts`) comes from
|
|
353
|
+
* `dbTable`/`resolveTableName`, which delegate to `primaryRdbSource` — the same lookup
|
|
354
|
+
* `resolveObjectNames` uses — so a disagreeing object has already thrown.
|
|
355
|
+
* - A VIEW literal (`projection-decl.ts`, `view-decl.ts`) comes from `viewName()`
|
|
356
|
+
* (`extract-view-spec.ts`), which reads OWN read-only sources only. That cannot diverge:
|
|
357
|
+
* a concrete projection may not inherit a source (`ERR_PROJECTION_INHERITED_SOURCE`) and
|
|
358
|
+
* the loader allows one own primary, so there is nothing for it to disagree with.
|
|
359
|
+
*
|
|
360
|
+
* Either way a reference here is the single spelling, never a lookalike computed twice.
|
|
361
|
+
*
|
|
362
|
+
* `role` selects WHICH source — the parameter that did not exist while the artifact held
|
|
363
|
+
* one name. A write-through entity declares two physical names; passing `replica` is how
|
|
364
|
+
* the read view stops being a literal in TypeScript and C# alike.
|
|
365
|
+
*/
|
|
366
|
+
export function physicalNameExpr(names, literal, obj, role = SOURCE_ROLE_PRIMARY) {
|
|
367
|
+
const alias = sourceAliasOf(obj, role);
|
|
368
|
+
// No alias means either no source in that role or a @kind carrying no physical-name
|
|
369
|
+
// slot. Falling back to the literal keeps a future @kind from emitting `undefined` into
|
|
370
|
+
// a table binding, which would fail at the database rather than at the compiler.
|
|
371
|
+
if (names === undefined || alias === undefined)
|
|
372
|
+
return code `${JSON.stringify(literal)}`;
|
|
373
|
+
return code `${names.symbol}.sources${member(role)}.${alias}`;
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* The physical-name alias key for `obj`'s source in `role` — `table`, `view`, `proc`, …
|
|
377
|
+
*
|
|
378
|
+
* Derived from the object rather than taken as a parameter, so a call site cannot pass an
|
|
379
|
+
* alias that disagrees with the source it is describing. Reads the metamodel's own
|
|
380
|
+
* `PHYSICAL_NAME_ATTR_BY_KIND`; a local switch here would be a second answer to a
|
|
381
|
+
* question the metamodel already answers, which is the defect class this file exists for.
|
|
382
|
+
*/
|
|
383
|
+
export function sourceAliasOf(obj, role = SOURCE_ROLE_PRIMARY) {
|
|
384
|
+
const src = rdbSourcesOf(obj, false).find((c) => c.role === role);
|
|
385
|
+
return src === undefined ? undefined : PHYSICAL_NAME_ATTR_BY_KIND.get(src.effectiveKind);
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* A source's `@schema` expression, or undefined when the source declares none.
|
|
389
|
+
*
|
|
390
|
+
* Undefined rather than a literal fallback: an absent `@schema` means "the dialect's
|
|
391
|
+
* default", which a caller expresses by omitting the qualifier entirely — emitting `""`
|
|
392
|
+
* or `"public"` would be this artifact inventing a name the author never wrote.
|
|
393
|
+
*/
|
|
394
|
+
export function sourceSchemaExpr(names, role = SOURCE_ROLE_PRIMARY) {
|
|
395
|
+
const src = names?.resolved.sources[role];
|
|
396
|
+
if (names === undefined || src === undefined || src.schema === undefined)
|
|
397
|
+
return undefined;
|
|
398
|
+
return code `${names.symbol}.sources${member(role)}.schema`;
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* An index's database-name expression — the constant when the artifact carries the node,
|
|
402
|
+
* the literal otherwise.
|
|
403
|
+
*
|
|
404
|
+
* The literal arm goes through `resolveIndexName` rather than reading `node.name`, so the
|
|
405
|
+
* names-off path and the names-on path answer with the same function. That is the whole
|
|
406
|
+
* lesson of `fdb4118f1`: two spellings of one name agree until they do not.
|
|
407
|
+
*/
|
|
408
|
+
export function indexNameExpr(names, node) {
|
|
409
|
+
const collection = node.type === TYPE_INDEX ? "indexes" : "identities";
|
|
410
|
+
const entry = names?.resolved[collection][node.name];
|
|
411
|
+
return names !== undefined && entry !== undefined && entry.index !== undefined
|
|
412
|
+
? code `${names.symbol}.${collection}${member(node.name)}.index`
|
|
413
|
+
: code `${JSON.stringify(resolveIndexName(node))}`;
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* A field's physical-column expression: the constant when the given artifact carries the
|
|
417
|
+
* field, the literal otherwise.
|
|
418
|
+
*
|
|
419
|
+
* The literal arm is a PRESENCE guard — "no artifact in this run", the documented ADR-0034
|
|
420
|
+
* opt-out — and NOT a divergence guard. It used to carry a second sanctioned case: a TPH
|
|
421
|
+
* fold emitting a subtype's own columns, which the BASE's artifact never saw. That was
|
|
422
|
+
* never a presence question; the constant existed the whole time, in the subtype's own
|
|
423
|
+
* artifact. Callers now resolve the declaring entity's ref before falling back
|
|
424
|
+
* (`drizzle-schema.ts`), so a miss no longer has a known-good explanation and the fallback
|
|
425
|
+
* is the last resort it was meant to be.
|
|
426
|
+
*/
|
|
427
|
+
export function columnExpr(names, fieldName, literal) {
|
|
428
|
+
const entry = names?.resolved.fields[fieldName];
|
|
429
|
+
return names !== undefined && entry !== undefined
|
|
430
|
+
? code `${names.symbol}.fields.${fieldName}.column`
|
|
431
|
+
: code `${JSON.stringify(literal)}`;
|
|
432
|
+
}
|
|
433
|
+
//# sourceMappingURL=names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"names.js","sourceRoot":"","sources":["../src/names.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,0BAA0B,EAC1B,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,WAAW,GAIZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAa,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AA+HxD;;;;;;;;GAQG;AACH,SAAS,aAAa,CAAC,MAAkB;IACvC,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,CAAC;IAClC,yFAAyF;IACzF,wFAAwF;IACxF,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC/C,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,IAAI;QACJ,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,kEAAkE;AAClE,SAAS,SAAS,CAAC,OAA8B,EAAE,KAAa;IAC9D,MAAM,GAAG,GAAgC,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;YACrB,SAAS;QACX,CAAC;QACD,mFAAmF;QACnF,mFAAmF;QACnF,mFAAmF;QACnF,EAAE;QACF,qFAAqF;QACrF,uFAAuF;QACvF,sFAAsF;QACtF,EAAE;QACF,mFAAmF;QACnF,qFAAqF;QACrF,oFAAoF;QACpF,uBAAuB;QACvB,EAAE;QACF,sFAAsF;QACtF,oFAAoF;QACpF,qFAAqF;QACrF,sFAAsF;QACtF,uFAAuF;QACvF,kFAAkF;QAClF,sFAAsF;QACtF,yDAAyD;QACzD,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,mDAAmD,IAAI,cAAc;gBAC7E,8CAA8C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM;gBAC5E,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oDAAoD;gBAC/E,2BAA2B,CAC5B,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iFAAiF;AACjF,SAAS,YAAY,CAAC,GAAe,EAAE,GAAY;IACjD,mFAAmF;IACnF,uDAAuD;IACvD,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IACtD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAmB,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,qEAAqE;AACrE,SAAS,MAAM,CACb,KAA4F;IAE5F,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,kFAAkF;QAClF,8EAA8E;QAC9E,mFAAmF;QACnF,6CAA6C;QAC7C,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9E,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3D,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IACxD,oBAAoB;IACpB,cAAc;CACf,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,SAAS,oBAAoB,CAAC,GAAe;IAC3C,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,CAAC;QAC/B,GAAG,CAAC,aAAa,EAAE,CAAC,MAAM,GAAG,CAAC;QAC9B,GAAG,CAAC,gBAAgB,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAe;IAClD,IAAI,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC;IACxB,OAAO,GAAG,KAAK,SAAS,EAAE,CAAC;QACzB,oFAAoF;QACpF,8EAA8E;QAC9E,oFAAoF;QACpF,uFAAuF;QACvF,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;YAC5F,OAAO,GAAG,CAAC;QACb,CAAC;QACD,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC;IACtB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,GAAe,EACf,QAA+B;IAE/B,uFAAuF;IACvF,4EAA4E;IAC5E,EAAE;IACF,yFAAyF;IACzF,sFAAsF;IACtF,wFAAwF;IACxF,+EAA+E;IAC/E,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;IAErC,MAAM,MAAM,GAA+B,EAAE,CAAC;IAC9C,sFAAsF;IACtF,0EAA0E;IAC1E,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,wFAAwF;IACxF,MAAM,SAAS,GAA+B,EAAE,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC/E,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,UAAU,GAA2B,QAAQ,KAAK,SAAS;QAC/D,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IACvD,gFAAgF;IAChF,sFAAsF;IACtF,uFAAuF;IACvF,MAAM,cAAc,GAAG,MAAM,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;QACnE,gBAAgB,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC;IAGxC,oFAAoF;IACpF,yFAAyF;IACzF,yFAAyF;IACzF,uFAAuF;IACvF,yFAAyF;IACzF,yEAAyE;IACzE,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC;IAEjC,uFAAuF;IACvF,iFAAiF;IACjF,mFAAmF;IACnF,uFAAuF;IACvF,sFAAsF;IACtF,qFAAqF;IACrF,wEAAwE;IACxE,EAAE;IACF,kFAAkF;IAClF,uFAAuF;IACvF,uFAAuF;IACvF,8EAA8E;IAC9E,mFAAmF;IACnF,kFAAkF;IAClF,wDAAwD;IAExD,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,iFAAiF;QACjF,mFAAmF;QACnF,mFAAmF;QACnF,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;QACtD,UAAU,EAAE,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;QACxD,MAAM;QACN,SAAS;QACT,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACpC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACpC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC1C,UAAU;QACV,cAAc;KACf,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAe,EACf,QAA+B;IAE/B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;IAErC,MAAM,MAAM,GAA+B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,SAAS,GAA+B,EAAE,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC/E,CAAC;IACD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC3C,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,sFAAsF;QACtF,mFAAmF;QACnF,gDAAgD;QAChD,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,EAAE;QACd,MAAM;QACN,SAAS;QACT,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACpC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACpC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC1C,UAAU,EAAE,QAAQ,KAAK,SAAS;YAChC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;QACtD,cAAc,EAAE,KAAK;KACtB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,QAAQ,CACtB,GAAe,EACf,GAAkB,EAClB,cAAkC,GAAG,CAAC,OAAO;IAE7C,IAAI,CAAC,GAAG,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACnE,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAA,GAAG,GAAG,CACvB,GAAG,GAAG,CAAC,IAAI,SAAS,oBAAoB,CACtC,GAAG,CAAC,UAAU,CAAC,YAAY,EAC3B,WAAW,EACX,GAAG,CAAC,OAAO,EACX,GAAG,GAAG,CAAC,IAAI,QAAQ,EACnB,GAAG,CAAC,QAAQ,CACb,EAAE,CACJ,EAAE,CAAC;IACJ,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,KAA4E,EAC5E,OAAe,mBAAmB;IAElC,yFAAyF;IACzF,yFAAyF;IACzF,wFAAwF;IACxF,yFAAyF;IACzF,yFAAyF;IACzF,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC/D,MAAM,KAAK,GAAG,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAA0B,CAAC,CAAC;IACnF,qFAAqF;IACrF,gFAAgF;IAChF,oFAAoF;IACpF,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACnD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,MAAM,CAAC,GAAW;IACzB,OAAO,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;AACzF,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA4C,EAC5C,OAAe,EACf,GAAe,EACf,OAAe,mBAAmB;IAElC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACvC,oFAAoF;IACpF,wFAAwF;IACxF,iFAAiF;IACjF,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IACxF,OAAO,IAAI,CAAA,GAAG,KAAK,CAAC,MAAM,WAAW,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;AAC/D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,GAAe,EAAE,OAAe,mBAAmB;IAC/E,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAClE,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA4E,EAC5E,OAAe,mBAAmB;IAElC,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3F,OAAO,IAAI,CAAA,GAAG,KAAK,CAAC,MAAM,WAAW,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,KAA4E,EAC5E,IAAgF;IAEhF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;IACvE,MAAM,KAAK,GAAG,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAC5E,CAAC,CAAC,IAAI,CAAA,GAAG,KAAK,CAAC,MAAM,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;QAC/D,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CACxB,KAA4E,EAC5E,SAAiB,EACjB,OAAe;IAEf,MAAM,KAAK,GAAG,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAC/C,CAAC,CAAC,IAAI,CAAA,GAAG,KAAK,CAAC,MAAM,WAAW,SAAS,SAAS;QAClD,CAAC,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;AACvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overwrite-policy.d.ts","sourceRoot":"","sources":["../src/overwrite-policy.ts"],"names":[],"mappings":"AA+CA,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,WAAW,GACX,WAAW,GACX,QAAQ,GACR,UAAU,GACV,SAAS,GACT,SAAS;AACX;;;;wBAIwB;GACtB,SAAS,CAAC;AAEd;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,eAAe,CAAC;AAE1D;;;iDAGiD;AACjD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;+DAE2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;qEAEiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB;;4EAEwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA8CD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GACzB,IAAI,CAYN;AAID;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAazE;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAM5E;AAwCD;gDACgD;AAChD,qBAAa,eAAgB,SAAQ,KAAK;;CAQzC;AA+FD;;;;;;8CAM8C;AAC9C,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE5D;AA+FD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,kBAAkB,GAAG,aAAkB,GACtD,WAAW,CAmBb;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,kBAAkB,GAAG,aAAkB,GACtD,WAAW,
|
|
1
|
+
{"version":3,"file":"overwrite-policy.d.ts","sourceRoot":"","sources":["../src/overwrite-policy.ts"],"names":[],"mappings":"AA+CA,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,WAAW,GACX,WAAW,GACX,QAAQ,GACR,UAAU,GACV,SAAS,GACT,SAAS;AACX;;;;wBAIwB;GACtB,SAAS,CAAC;AAEd;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,eAAe,CAAC;AAE1D;;;iDAGiD;AACjD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;+DAE2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;qEAEiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB;;4EAEwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA8CD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GACzB,IAAI,CAYN;AAID;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAazE;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAM5E;AAwCD;gDACgD;AAChD,qBAAa,eAAgB,SAAQ,KAAK;;CAQzC;AA+FD;;;;;;8CAM8C;AAC9C,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE5D;AA+FD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,kBAAkB,GAAG,aAAkB,GACtD,WAAW,CAmBb;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,cAAc,GAAE,kBAAkB,GAAG,aAAkB,GACtD,WAAW,CA0Fb"}
|
package/dist/overwrite-policy.js
CHANGED
|
@@ -443,10 +443,22 @@ export function decideAndWrite(path, content, optsOrStrategy = {}) {
|
|
|
443
443
|
return {
|
|
444
444
|
path,
|
|
445
445
|
status: "refused",
|
|
446
|
+
// The hint states WHAT HAPPENED, per file, and points at the recovery rather
|
|
447
|
+
// than restating it. The two remedies it used to name were both WRONG for the
|
|
448
|
+
// generator with the most at stake: `requirementTests()` emits a stub whose
|
|
449
|
+
// entire value is the body you write over it, and whose own header says "do not
|
|
450
|
+
// rename the test — the name is the link", so "move your edits into a
|
|
451
|
+
// non-generated file" asks for something the artifact forbids, and
|
|
452
|
+
// "--baseline=fresh to discard them" discards the only content the file has.
|
|
453
|
+
// The sequence that actually keeps an edit is three commands long and identical
|
|
454
|
+
// for every file in the run, so `runner.ts` prints it once; a doc pointer is
|
|
455
|
+
// what a direct `decideAndWrite` caller (a public export — no runner involved)
|
|
456
|
+
// gets instead, and it is never wrong.
|
|
446
457
|
conflictHint: kase.hasRecord
|
|
447
|
-
? "this file has been edited since it was generated
|
|
448
|
-
"
|
|
449
|
-
"
|
|
458
|
+
? "this file has been edited since it was generated, and there is no " +
|
|
459
|
+
".gen-state snapshot body on this machine to merge against — it was NOT " +
|
|
460
|
+
"overwritten, and your version is intact on disk. Recovery: " +
|
|
461
|
+
"docs/features/own-your-codegen.md."
|
|
450
462
|
: "no record of generating this file, and its content differs from fresh " +
|
|
451
463
|
"output — it was NOT overwritten. Move it aside, or re-run with " +
|
|
452
464
|
"--baseline=fresh to overwrite it and adopt fresh output as the baseline.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overwrite-policy.js","sourceRoot":"","sources":["../src/overwrite-policy.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,4DAA4D;AAC5D,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,6EAA6E;AAC7E,2DAA2D;AAC3D,EAAE;AACF,iBAAiB;AACjB,EAAE;AACF,0CAA0C;AAC1C,kEAAkE;AAClE,6EAA6E;AAC7E,4EAA4E;AAC5E,8EAA8E;AAC9E,yEAAyE;AACzE,yEAAyE;AACzE,gFAAgF;AAChF,8EAA8E;AAC9E,4EAA4E;AAC5E,kFAAkF;AAClF,EAAE;AACF,2EAA2E;AAC3E,yCAAyC;AACzC,EAAE;AACF,iFAAiF;AACjF,iFAAiF;AACjF,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,iFAAiF;AACjF,iFAAiF;AACjF,gDAAgD;AAEhD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,aAAa,EACb,SAAS,EACT,YAAY,EACZ,MAAM,GACP,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAsDtD,MAAM,WAAW,GAAG,cAAc,CAAC;AAInC,SAAS,MAAM,CAAC,OAAwB;IACtC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,UAAU,CAAC,WAAmB;IACrC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACrC,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO,MAAoB,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,WAAmB,EAAE,MAAkB;IACzD,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,8EAA8E;IAC9E,0EAA0E;IAC1E,+EAA+E;IAC/E,UAAU;IACV,MAAM,MAAM,GAAe,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;QAAE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAE,CAAC;IACzE,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACxF,CAAC;AAED,8EAA8E;AAC9E,iDAAiD;AACjD,EAAE;AACF,+EAA+E;AAC/E,iFAAiF;AACjF,iFAAiF;AACjF,kFAAkF;AAClF,gDAAgD;AAChD,8EAA8E;AAE9E;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,WAAmB,EACnB,OAAe;IAEf,OAAO,UAAU,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,OAAe,EACf,OAAe;IAEf,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACzD,OAAO,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,WAAmB,EACnB,OAAe;IAEf,OAAO,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAClC,WAAmB,EACnB,QAA0B;IAE1B,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YACtB,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IACD,IAAI,OAAO;QAAE,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,WAAW,GAAG,cAAc,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,GAAI,MAAuC,CAAC,cAAc,CAAC;YAClE,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,kFAAkF;IACpF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,iBAAiB,CAAC,WAAmB,EAAE,OAAe;IACpE,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,aAAa,CACX,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAC9B,IAAI,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAC5D,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,WAAmB,EAAE,OAAe;IACxD,2EAA2E;IAC3E,2EAA2E;IAC3E,8DAA8D;IAC9D,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;0CAC0C;AAC1C,SAAS,eAAe,CACtB,WAAmB,EACnB,OAAe,EACf,OAAe;IAEf,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAChD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC;AAED,iFAAiF;AACjF,SAAS,mBAAmB,CAC1B,WAAmB,EACnB,OAAe;IAEf,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,CAAC;AAClB,CAAC;AAED;gDACgD;AAChD,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC;QACE,KAAK,CACH,kEAAkE;YAChE,4DAA4D,CAC/D,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAYD;;;;;gFAKgF;AAChF,SAAS,eAAe,CACtB,OAAe,EACf,QAAgB,EAChB,SAAiB;IAEjB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,KAAK,CAAC;IACjD,IAAI,GAAG,CAAC;IACR,IAAI,CAAC;QACH,GAAG,GAAG,SAAS,CACb,MAAM,EACN;YACE,YAAY;YACZ,SAAS;YACT,IAAI;YACJ,YAAY;YACZ,IAAI;YACJ,gBAAgB;YAChB,IAAI;YACJ,qBAAqB;YACrB,OAAO;YACP,QAAQ;YACR,SAAS;SACV,EACD,EAAE,QAAQ,EAAE,OAAO,EAAE,CACtB,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAI,GAAa,CAAC,OAAO,IAAI,EAAE,CAAC;QACzC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,eAAe,EAAE,CAAC;QACxD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,IAAI,GAAI,GAAG,CAAC,KAA+B,CAAC,IAAI,CAAC;QACvD,IAAI,IAAI,KAAK,QAAQ;YAAE,MAAM,IAAI,eAAe,EAAE,CAAC;QACnD,MAAM,GAAG,CAAC,KAAK,CAAC;IAClB,CAAC;IACD,2EAA2E;IAC3E,2DAA2D;IAC3D,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IACjC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,6BAA6B,OAAO,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CACpE,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC;AAC/D,CAAC;AAED;;0BAE0B;AAC1B,SAAS,YAAY,CAAC,OAAe;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAC7C,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7B,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;iCAEiC;AACjC,SAAS,oBAAoB,CAAC,UAAkB;IAC9C,2EAA2E;IAC3E,yEAAyE;IACzE,8BAA8B;IAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;0CAG0C;AAC1C,SAAS,kBAAkB,CAAC,IAAwB;IAClD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC;IACrF,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;8CAM8C;AAC9C,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,oFAAoF;AACpF,SAAS,aAAa,CACpB,cAAkD;IAElD,OAAO,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;AAC5F,CAAC;AAwBD,SAAS,aAAa,CACpB,IAAY,EACZ,OAAe,EACf,IAAwB;IAExB,yCAAyC;IACzC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAE9C,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,KAAK,eAAe;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAEhF,mDAAmD;IACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE5C,+EAA+E;IAC/E,wEAAwE;IACxE,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,OAAO,EAAE,CAAC;YAC7C,mEAAmE;YACnE,OAAO,OAAO,KAAK,OAAO;gBACxB,CAAC,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE;gBACzC,CAAC,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC;QAC9C,CAAC;QAED,2EAA2E;QAC3E,yEAAyE;QACzE,EAAE;QACF,8EAA8E;QAC9E,2EAA2E;QAC3E,6EAA6E;QAC7E,kCAAkC;QAClC,EAAE;QACF,2EAA2E;QAC3E,8EAA8E;QAC9E,mCAAmC;QACnC,IAAI,OAAO,KAAK,OAAO;YAAE,OAAO,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;QAElE,IAAI,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YACvD,2EAA2E;YAC3E,4EAA4E;YAC5E,yEAAyE;YACzE,OAAO,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;QACpD,CAAC;QAED,4EAA4E;QAC5E,4DAA4D;QAC5D,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,SAAS,EAAE,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,SAAS;SACjE,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,8BAA8B;IAC9B,IAAI,OAAO,KAAK,OAAO,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAY,EACZ,OAAe,EACf,iBAAqD,EAAE;IAEvD,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC;IACzE,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf,KAAK,MAAM;YACT,OAAO,SAAS,CAAC;QACnB,KAAK,6BAA6B,CAAC;QACnC,KAAK,uBAAuB,CAAC;QAC7B,KAAK,oBAAoB;YACvB,OAAO,WAAW,CAAC;QACrB,KAAK,6BAA6B,CAAC;QACnC,KAAK,gCAAgC;YACnC,OAAO,WAAW,CAAC;QACrB,KAAK,qBAAqB;YACxB,OAAO,SAAS,CAAC;QACnB,KAAK,yBAAyB;YAC5B,OAAO,WAAW,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,OAAe,EACf,iBAAqD,EAAE;IAEvD,MAAM,IAAI,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAEhD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7B,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAEjC,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAErC,KAAK,6BAA6B,CAAC;QACnC,KAAK,uBAAuB;YAC1B,2EAA2E;YAC3E,0DAA0D;YAC1D,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAEvC,KAAK,6BAA6B,CAAC;QACnC,KAAK,gCAAgC;YACnC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7B,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAEvC,KAAK,qBAAqB;YACxB,yEAAyE;YACzE,6EAA6E;YAC7E,mDAAmD;YACnD,OAAO;gBACL,IAAI;gBACJ,MAAM,EAAE,SAAS;gBACjB,YAAY,EAAE,IAAI,CAAC,SAAS;oBAC1B,CAAC,CAAC,gEAAgE;wBAChE,oEAAoE;wBACpE,+DAA+D;oBACjE,CAAC,CAAC,wEAAwE;wBACxE,iEAAiE;wBACjE,0EAA0E;aAC/E,CAAC;QAEJ,KAAK,oBAAoB;YACvB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;QAEvC,KAAK,yBAAyB,CAAC,CAAC,CAAC;YAC/B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAEvC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEzD,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC3B,yDAAyD;gBACzD,eAAe,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC/C,wEAAwE;gBACxE,yEAAyE;gBACzE,oEAAoE;gBACpE,oDAAoD;gBACpD,OAAO;oBACL,IAAI;oBACJ,MAAM,EAAE,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;iBACnE,CAAC;YACJ,CAAC;YAED,wEAAwE;YACxE,+BAA+B;YAC/B,OAAO;gBACL,IAAI;gBACJ,MAAM,EAAE,UAAU;gBAClB,YAAY,EACV,sEAAsE;oBACtE,8BAA8B;aACjC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"overwrite-policy.js","sourceRoot":"","sources":["../src/overwrite-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type MetaData, type MetaRoot, MetaObject } from "@metaobjectsdev/metadata";
|
|
1
|
+
import { type MetaData, type MetaRoot, type MetaSource, MetaObject } from "@metaobjectsdev/metadata";
|
|
2
2
|
import type { ColumnNamingStrategy } from "../metaobjects-config.js";
|
|
3
3
|
import type { ViewSpec } from "./view-spec.js";
|
|
4
4
|
export interface ExtractContext {
|
|
@@ -15,6 +15,30 @@ export interface ExtractContext {
|
|
|
15
15
|
* base entity to extend.
|
|
16
16
|
*/
|
|
17
17
|
export declare function projectionViewName(projection: MetaObject, columnNamingStrategy: ColumnNamingStrategy): string;
|
|
18
|
+
/**
|
|
19
|
+
* The `@schema` of the SAME source node {@link projectionViewName} names, or undefined.
|
|
20
|
+
*
|
|
21
|
+
* It re-uses that function's selection rule ("prefer role:primary read-only, else the first
|
|
22
|
+
* read-only own source") deliberately, rather than asking the object for its schema: for a
|
|
23
|
+
* write-through ENTITY the object's primary source is the WRITABLE table, so
|
|
24
|
+
* `resolveTableSchema` would hand back the table's schema and qualify the replica view with
|
|
25
|
+
* it. A view and the table it replicates need not live in the same schema, and a name paired
|
|
26
|
+
* with someone else's schema is worse than no schema at all — it is confidently wrong.
|
|
27
|
+
*/
|
|
28
|
+
export declare function projectionViewSchema(projection: MetaObject): string | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* The source node {@link projectionViewName} names — the ONE selection, so the name, the
|
|
31
|
+
* schema and the role cannot be picked by three functions that agree until they do not.
|
|
32
|
+
*
|
|
33
|
+
* Hoisted out of `projectionViewSchema`, which used to be the only place the rule was
|
|
34
|
+
* written twice-removed from `viewName`. The third caller is what forced it: the names
|
|
35
|
+
* artifact keys its sources by ROLE, so a consumer reaching for a write-through entity's
|
|
36
|
+
* replica view has to know which role that view plays, and guessing `"replica"` would be
|
|
37
|
+
* exactly the second derivation this file exists to avoid.
|
|
38
|
+
*/
|
|
39
|
+
export declare function projectionViewSource(projection: MetaObject): MetaSource | undefined;
|
|
40
|
+
/** The ROLE of that source — the key its entry has in `<Entity>Names.sources`. */
|
|
41
|
+
export declare function projectionViewRole(projection: MetaObject): string | undefined;
|
|
18
42
|
/**
|
|
19
43
|
* FR-024 (ADR-0029): the entity NAMED by a node's dotted extends ref — the
|
|
20
44
|
* owner part of `<owner>.<child>...` resolved as an object. Mirrors the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-view-spec.d.ts","sourceRoot":"","sources":["../../src/projection/extract-view-spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extract-view-spec.d.ts","sourceRoot":"","sources":["../../src/projection/extract-view-spec.ts"],"names":[],"mappings":"AAqDA,OAAO,EAAE,KAAK,QAAQ,EAAkB,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAYrH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EACoC,QAAQ,EAEvD,MAAM,gBAAgB,CAAC;AAwNxB,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;CACrD;AAyGD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,oBAAoB,GACzC,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAG/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAGnF;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAYpF;AAosBD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,QAAQ,EACd,GAAG,EAAE,cAAc,GAClB,QAAQ,CAyCV"}
|