@metaobjectsdev/metadata 0.6.0 → 0.7.0-rc.10
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 +54 -3
- package/dist/attr-schema-validate.js +7 -7
- package/dist/attr-schema-validate.js.map +1 -1
- package/dist/core/export-json.d.ts +6 -7
- package/dist/core/export-json.d.ts.map +1 -1
- package/dist/core/export-json.js +15 -17
- package/dist/core/export-json.js.map +1 -1
- package/dist/core/index.d.ts +4 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +6 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/parser-yaml.d.ts.map +1 -1
- package/dist/core/parser-yaml.js +36 -11
- package/dist/core/parser-yaml.js.map +1 -1
- package/dist/core/yaml-desugar.d.ts.map +1 -1
- package/dist/core/yaml-desugar.js +54 -5
- package/dist/core/yaml-desugar.js.map +1 -1
- package/dist/core/yaml-positions-walker.d.ts +21 -0
- package/dist/core/yaml-positions-walker.d.ts.map +1 -0
- package/dist/core/yaml-positions-walker.js +75 -0
- package/dist/core/yaml-positions-walker.js.map +1 -0
- package/dist/core/yaml-positions.d.ts +19 -0
- package/dist/core/yaml-positions.d.ts.map +1 -0
- package/dist/core/yaml-positions.js +60 -0
- package/dist/core/yaml-positions.js.map +1 -0
- package/dist/core-types.d.ts.map +1 -1
- package/dist/core-types.js +7 -4
- package/dist/core-types.js.map +1 -1
- package/dist/errors.d.ts +32 -9
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +44 -5
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/json-path.d.ts +8 -0
- package/dist/json-path.d.ts.map +1 -0
- package/dist/json-path.js +39 -0
- package/dist/json-path.js.map +1 -0
- package/dist/loader/meta-data-loader.d.ts +47 -6
- package/dist/loader/meta-data-loader.d.ts.map +1 -1
- package/dist/loader/meta-data-loader.js +126 -8
- package/dist/loader/meta-data-loader.js.map +1 -1
- package/dist/loader/meta-data-source.d.ts +6 -2
- package/dist/loader/meta-data-source.d.ts.map +1 -1
- package/dist/loader/meta-data-source.js +10 -6
- package/dist/loader/meta-data-source.js.map +1 -1
- package/dist/loader/shortcuts.d.ts +9 -0
- package/dist/loader/shortcuts.d.ts.map +1 -0
- package/dist/loader/shortcuts.js +19 -0
- package/dist/loader/shortcuts.js.map +1 -0
- package/dist/loader/sources/directory-source.d.ts +15 -0
- package/dist/loader/sources/directory-source.d.ts.map +1 -0
- package/dist/loader/sources/directory-source.js +80 -0
- package/dist/loader/sources/directory-source.js.map +1 -0
- package/dist/loader/sources/file-source.d.ts +12 -0
- package/dist/loader/sources/file-source.d.ts.map +1 -0
- package/dist/loader/sources/file-source.js +46 -0
- package/dist/loader/sources/file-source.js.map +1 -0
- package/dist/loader/sources/index.d.ts +5 -0
- package/dist/loader/sources/index.d.ts.map +1 -0
- package/dist/loader/sources/index.js +5 -0
- package/dist/loader/sources/index.js.map +1 -0
- package/dist/loader/sources/uri-source.d.ts +9 -0
- package/dist/loader/sources/uri-source.d.ts.map +1 -0
- package/dist/loader/sources/uri-source.js +42 -0
- package/dist/loader/sources/uri-source.js.map +1 -0
- package/dist/loader/validation-passes.d.ts.map +1 -1
- package/dist/loader/validation-passes.js +92 -28
- package/dist/loader/validation-passes.js.map +1 -1
- package/dist/naming.d.ts +15 -2
- package/dist/naming.d.ts.map +1 -1
- package/dist/naming.js +20 -6
- package/dist/naming.js.map +1 -1
- package/dist/parser-core.d.ts +17 -4
- package/dist/parser-core.d.ts.map +1 -1
- package/dist/parser-core.js +371 -44
- package/dist/parser-core.js.map +1 -1
- package/dist/parser-json.d.ts.map +1 -1
- package/dist/parser-json.js +10 -2
- package/dist/parser-json.js.map +1 -1
- package/dist/persistence/source/validate-source-roles.js +2 -2
- package/dist/persistence/source/validate-source-roles.js.map +1 -1
- package/dist/semantic-diff.d.ts +5 -0
- package/dist/semantic-diff.d.ts.map +1 -0
- package/dist/semantic-diff.js +49 -0
- package/dist/semantic-diff.js.map +1 -0
- package/dist/shared/meta-data.d.ts +10 -0
- package/dist/shared/meta-data.d.ts.map +1 -1
- package/dist/shared/meta-data.js +23 -0
- package/dist/shared/meta-data.js.map +1 -1
- package/dist/source.d.ts +96 -0
- package/dist/source.d.ts.map +1 -0
- package/dist/source.js +38 -0
- package/dist/source.js.map +1 -0
- package/dist/subtype-rules.js +1 -1
- package/dist/subtype-rules.js.map +1 -1
- package/dist/super-resolve.d.ts +2 -0
- package/dist/super-resolve.d.ts.map +1 -1
- package/dist/super-resolve.js +1 -1
- package/dist/super-resolve.js.map +1 -1
- package/dist/template/template-constants.d.ts +3 -1
- package/dist/template/template-constants.d.ts.map +1 -1
- package/dist/template/template-constants.js +22 -6
- package/dist/template/template-constants.js.map +1 -1
- package/dist/template/template-schema.d.ts.map +1 -1
- package/dist/template/template-schema.js +41 -1
- package/dist/template/template-schema.js.map +1 -1
- package/package.json +1 -1
- package/src/attr-schema-validate.ts +7 -7
- package/src/core/export-json.ts +15 -18
- package/src/core/index.ts +8 -2
- package/src/core/parser-yaml.ts +38 -11
- package/src/core/yaml-desugar.ts +58 -4
- package/src/core/yaml-positions-walker.ts +101 -0
- package/src/core/yaml-positions.ts +80 -0
- package/src/core-types.ts +7 -4
- package/src/errors.ts +57 -8
- package/src/index.ts +28 -3
- package/src/json-path.ts +46 -0
- package/src/loader/meta-data-loader.ts +168 -10
- package/src/loader/meta-data-source.ts +10 -6
- package/src/loader/shortcuts.ts +31 -0
- package/src/loader/sources/directory-source.ts +90 -0
- package/src/{core → loader/sources}/file-source.ts +3 -3
- package/src/loader/sources/index.ts +6 -0
- package/src/loader/sources/uri-source.ts +44 -0
- package/src/loader/validation-passes.ts +96 -29
- package/src/naming.ts +39 -7
- package/src/parser-core.ts +412 -46
- package/src/parser-json.ts +11 -2
- package/src/persistence/source/validate-source-roles.ts +2 -2
- package/src/semantic-diff.ts +48 -0
- package/src/shared/meta-data.ts +28 -0
- package/src/source.ts +99 -0
- package/src/subtype-rules.ts +1 -1
- package/src/super-resolve.ts +3 -1
- package/src/template/template-constants.ts +23 -6
- package/src/template/template-schema.ts +43 -0
- package/src/core/file-meta-data-loader.ts +0 -89
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// FR5b — YAML AST → JS walker that preserves source positions.
|
|
2
|
+
//
|
|
3
|
+
// This module is the only place inside @metaobjectsdev/metadata that
|
|
4
|
+
// imports the `yaml` package. It lives in core/ alongside parser-yaml.ts,
|
|
5
|
+
// and is reached only via that parser — never via src/index.ts. The
|
|
6
|
+
// browser-safety test guards this invariant.
|
|
7
|
+
import { parseDocument, isAlias, isMap, isScalar, isSeq, LineCounter, } from "yaml";
|
|
8
|
+
import { setPositionMap, } from "./yaml-positions.js";
|
|
9
|
+
/** Parse YAML text and return a JS object with positions attached.
|
|
10
|
+
*
|
|
11
|
+
* Mirrors the contract of `yaml.parse(text)` for the shapes the metaobjects
|
|
12
|
+
* authoring grammar uses (mappings, sequences, scalars). Aliases and tags
|
|
13
|
+
* are deferred via the underlying parseDocument call — i.e. they resolve as
|
|
14
|
+
* the library normally would.
|
|
15
|
+
*
|
|
16
|
+
* Throws on YAML syntax errors (same behavior as `yaml.parse`). */
|
|
17
|
+
export function parseYamlWithPositions(text) {
|
|
18
|
+
const lineCounter = new LineCounter();
|
|
19
|
+
const doc = parseDocument(text, { lineCounter });
|
|
20
|
+
// Surface YAML syntax errors as a throw, matching `yaml.parse` behavior.
|
|
21
|
+
// (parseDocument collects them rather than throwing.)
|
|
22
|
+
if (doc.errors.length > 0) {
|
|
23
|
+
throw doc.errors[0];
|
|
24
|
+
}
|
|
25
|
+
const value = yamlNodeToJs(doc.contents, lineCounter, doc);
|
|
26
|
+
return { value, lineCounter };
|
|
27
|
+
}
|
|
28
|
+
// Walk a yaml AST node into a JS structure. For each YAMLMap, attach a
|
|
29
|
+
// position-by-key map onto the resulting JS object — the position of each
|
|
30
|
+
// key is the (line, col) of the KEY token in the YAML source.
|
|
31
|
+
function yamlNodeToJs(node, lineCounter, doc) {
|
|
32
|
+
if (node === null || node === undefined)
|
|
33
|
+
return null;
|
|
34
|
+
if (isScalar(node)) {
|
|
35
|
+
// Honour the library's default scalar typing (numbers / booleans /
|
|
36
|
+
// strings / null all come through Scalar.value).
|
|
37
|
+
return node.value;
|
|
38
|
+
}
|
|
39
|
+
if (isAlias(node)) {
|
|
40
|
+
// Resolve an anchor alias (e.g. `*col` after `&col sku_code`) to its
|
|
41
|
+
// target value — same behaviour as the library's toJS().
|
|
42
|
+
const target = node.resolve(doc);
|
|
43
|
+
return yamlNodeToJs(target, lineCounter, doc);
|
|
44
|
+
}
|
|
45
|
+
if (isMap(node)) {
|
|
46
|
+
const out = {};
|
|
47
|
+
const positions = {};
|
|
48
|
+
let hasAnyPosition = false;
|
|
49
|
+
for (const pair of node.items) {
|
|
50
|
+
// Only string-keyed entries are valid in metaobjects authoring; ignore
|
|
51
|
+
// exotic keys (numeric / complex) — they'd already break the desugar.
|
|
52
|
+
if (!isScalar(pair.key))
|
|
53
|
+
continue;
|
|
54
|
+
const keyText = String(pair.key.value);
|
|
55
|
+
const valueJs = yamlNodeToJs(pair.value, lineCounter, doc);
|
|
56
|
+
out[keyText] = valueJs;
|
|
57
|
+
const keyRange = pair.key.range;
|
|
58
|
+
if (keyRange !== null && keyRange !== undefined) {
|
|
59
|
+
const pos = lineCounter.linePos(keyRange[0]);
|
|
60
|
+
positions[keyText] = { line: pos.line, col: pos.col };
|
|
61
|
+
hasAnyPosition = true;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (hasAnyPosition)
|
|
65
|
+
setPositionMap(out, positions);
|
|
66
|
+
return out;
|
|
67
|
+
}
|
|
68
|
+
if (isSeq(node)) {
|
|
69
|
+
return node.items.map((item) => yamlNodeToJs(item, lineCounter, doc));
|
|
70
|
+
}
|
|
71
|
+
// Tags / unsupported — fall back to null. The metaobjects authoring
|
|
72
|
+
// grammar does not use them.
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=yaml-positions-walker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-positions-walker.js","sourceRoot":"","sources":["../../src/core/yaml-positions-walker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Cross-port well-known symbol key for the position-by-key map. */
|
|
2
|
+
export declare const YAML_POSITION_BY_KEY: unique symbol;
|
|
3
|
+
/** A YAML source position — 1-indexed line and column. */
|
|
4
|
+
export interface YamlPosition {
|
|
5
|
+
readonly line: number;
|
|
6
|
+
readonly col: number;
|
|
7
|
+
}
|
|
8
|
+
/** The position-by-key map attached to a mapping object. */
|
|
9
|
+
export type PositionMap = Record<string, YamlPosition>;
|
|
10
|
+
/** Read the position-by-key map from a JS object, if present.
|
|
11
|
+
* Returns undefined for primitives, arrays, null, and untagged objects. */
|
|
12
|
+
export declare function getPositionMap(obj: unknown): PositionMap | undefined;
|
|
13
|
+
/** Read the position for a specific key on a mapping object. */
|
|
14
|
+
export declare function getYamlPosition(obj: unknown, key: string): YamlPosition | undefined;
|
|
15
|
+
/** Attach (or replace) the position-by-key map on a mapping object. The map
|
|
16
|
+
* property is non-enumerable so JSON.stringify and `for (const k in obj)`
|
|
17
|
+
* loops do not see it. */
|
|
18
|
+
export declare function setPositionMap(obj: Record<string, unknown>, positions: PositionMap): void;
|
|
19
|
+
//# sourceMappingURL=yaml-positions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-positions.d.ts","sourceRoot":"","sources":["../../src/core/yaml-positions.ts"],"names":[],"mappings":"AAkCA,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,eAEhC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,4DAA4D;AAC5D,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD;4EAC4E;AAC5E,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAKpE;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAC7B,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,MAAM,GACV,YAAY,GAAG,SAAS,CAG1B;AAED;;2BAE2B;AAC3B,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,SAAS,EAAE,WAAW,GACrB,IAAI,CAON"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// FR5b — YAML authoring source-position carrier (per ADR-0009).
|
|
2
|
+
//
|
|
3
|
+
// This module is split into two layers so the browser bundle (which
|
|
4
|
+
// imports from src/index.ts) stays free of the Node-only `yaml` package:
|
|
5
|
+
//
|
|
6
|
+
// - yaml-positions.ts (this file) — pure types + Symbol + accessors. NO
|
|
7
|
+
// `yaml` import. Imported by parser-core.ts so the source-on-node
|
|
8
|
+
// stamper can read positions when stamping `format: "yaml"` envelopes.
|
|
9
|
+
// - yaml-positions-walker.ts — depends on `yaml`. Imported only by
|
|
10
|
+
// parser-yaml.ts (and parser-yaml itself only ships server-side).
|
|
11
|
+
//
|
|
12
|
+
// Source-map carrier (per the FR5b spec's "open question" §2): a
|
|
13
|
+
// Symbol-keyed, non-enumerable property on the wrapper-mapping object. The
|
|
14
|
+
// symbol is the well-known cross-port key
|
|
15
|
+
// `Symbol.for("@metaobjectsdev/yamlPositionByKey")`, so any plugin that
|
|
16
|
+
// touches the canonical JS can read positions if it knows to look. The
|
|
17
|
+
// map's keys are the wrapper's own keys (e.g. "object.entity" for a
|
|
18
|
+
// wrapper `{ "object.entity": { ... } }` or "name" / "package" /
|
|
19
|
+
// "children" for the body keys of a node).
|
|
20
|
+
//
|
|
21
|
+
// Rationale for "symbol-keyed property" over a parallel sourcemap / wrapper
|
|
22
|
+
// type:
|
|
23
|
+
// - Invisible to JSON.stringify and Object.keys (non-enumerable).
|
|
24
|
+
// - No parallel data structure to keep in sync — the position rides with
|
|
25
|
+
// the node it describes.
|
|
26
|
+
// - No wrapper type — desugar still operates on plain JS objects, so the
|
|
27
|
+
// existing Rule 1–5 logic does not need a rewrite.
|
|
28
|
+
//
|
|
29
|
+
// On desugar-synthesized nodes (Rule 2's scalar-body lift): the synthesized
|
|
30
|
+
// body `{ name: rawScalar }` inherits the wrapper key's position from the
|
|
31
|
+
// parent's position map. On any other synthesis (Rule 4's isArray stamping,
|
|
32
|
+
// for example), the position survives because we shallow-copy via the
|
|
33
|
+
// existing desugar path.
|
|
34
|
+
/** Cross-port well-known symbol key for the position-by-key map. */
|
|
35
|
+
export const YAML_POSITION_BY_KEY = Symbol.for("@metaobjectsdev/yamlPositionByKey");
|
|
36
|
+
/** Read the position-by-key map from a JS object, if present.
|
|
37
|
+
* Returns undefined for primitives, arrays, null, and untagged objects. */
|
|
38
|
+
export function getPositionMap(obj) {
|
|
39
|
+
if (obj === null || typeof obj !== "object" || Array.isArray(obj)) {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
return obj[YAML_POSITION_BY_KEY];
|
|
43
|
+
}
|
|
44
|
+
/** Read the position for a specific key on a mapping object. */
|
|
45
|
+
export function getYamlPosition(obj, key) {
|
|
46
|
+
const map = getPositionMap(obj);
|
|
47
|
+
return map?.[key];
|
|
48
|
+
}
|
|
49
|
+
/** Attach (or replace) the position-by-key map on a mapping object. The map
|
|
50
|
+
* property is non-enumerable so JSON.stringify and `for (const k in obj)`
|
|
51
|
+
* loops do not see it. */
|
|
52
|
+
export function setPositionMap(obj, positions) {
|
|
53
|
+
Object.defineProperty(obj, YAML_POSITION_BY_KEY, {
|
|
54
|
+
value: positions,
|
|
55
|
+
enumerable: false,
|
|
56
|
+
writable: true,
|
|
57
|
+
configurable: true,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=yaml-positions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml-positions.js","sourceRoot":"","sources":["../../src/core/yaml-positions.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,oEAAoE;AACpE,yEAAyE;AACzE,EAAE;AACF,0EAA0E;AAC1E,sEAAsE;AACtE,2EAA2E;AAC3E,qEAAqE;AACrE,sEAAsE;AACtE,EAAE;AACF,iEAAiE;AACjE,2EAA2E;AAC3E,0CAA0C;AAC1C,wEAAwE;AACxE,uEAAuE;AACvE,oEAAoE;AACpE,iEAAiE;AACjE,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,QAAQ;AACR,oEAAoE;AACpE,2EAA2E;AAC3E,6BAA6B;AAC7B,2EAA2E;AAC3E,uDAAuD;AACvD,EAAE;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,4EAA4E;AAC5E,sEAAsE;AACtE,yBAAyB;AAEzB,oEAAoE;AACpE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAC5C,mCAAmC,CACpC,CAAC;AAWF;4EAC4E;AAC5E,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAQ,GAAgD,CAAC,oBAAoB,CAAC,CAAC;AACjF,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,eAAe,CAC7B,GAAY,EACZ,GAAW;IAEX,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC;AAED;;2BAE2B;AAC3B,MAAM,UAAU,cAAc,CAC5B,GAA4B,EAC5B,SAAsB;IAEtB,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,oBAAoB,EAAE;QAC/C,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;AACL,CAAC"}
|
package/dist/core-types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-types.d.ts","sourceRoot":"","sources":["../src/core-types.ts"],"names":[],"mappings":"AACA,OAAO,EAAgE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAa1D,OAAO,sCAAsC,CAAC;AAC9C,OAAO,iCAAiC,CAAC;AACzC,OAAO,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"core-types.d.ts","sourceRoot":"","sources":["../src/core-types.ts"],"names":[],"mappings":"AACA,OAAO,EAAgE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAa1D,OAAO,sCAAsC,CAAC;AAC9C,OAAO,iCAAiC,CAAC;AACzC,OAAO,qCAAqC,CAAC;AAyT7C;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,oBAM/B,CAAC;AAEF;yDACyD;AACzD,eAAO,MAAM,aAAa,EAAE,SAAS,oBAAoB,EAAiD,CAAC;AAE3G;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAE9D"}
|
package/dist/core-types.js
CHANGED
|
@@ -188,10 +188,13 @@ function registerCoreTypeDefs(registry) {
|
|
|
188
188
|
const originAttrs = ORIGIN_ATTRS_MAP.get(subType) ?? [];
|
|
189
189
|
registry.register(def(TYPE_ORIGIN, subType, `Origin (${subType})`, [wildcard(TYPE_ATTR)], NodeClass, originAttrs));
|
|
190
190
|
}
|
|
191
|
-
// template — renderable text artifacts (FR-004)
|
|
192
|
-
//
|
|
193
|
-
//
|
|
194
|
-
//
|
|
191
|
+
// template — renderable text artifacts (FR-004) + tool-call envelopes
|
|
192
|
+
// (ADR-0011). Three subtypes: prompt + output + toolcall; attr-only children.
|
|
193
|
+
// A single MetaTemplate class backs all three subtypes (mirrors source);
|
|
194
|
+
// per-subtype attr schemas drive validation (prompt + output require
|
|
195
|
+
// @payloadRef + @textRef + @format closed enum; prompt adds the LLM overlay;
|
|
196
|
+
// toolcall has its own set — @toolName + @payloadRef + @description, no
|
|
197
|
+
// @textRef requirement since toolcalls have no renderable body).
|
|
195
198
|
for (const subType of TEMPLATE_SUBTYPES) {
|
|
196
199
|
const templateAttrs = TEMPLATE_ATTRS_MAP.get(subType) ?? [];
|
|
197
200
|
registry.register(def(TYPE_TEMPLATE, subType, `Template (${subType})`, [wildcard(TYPE_ATTR)], MetaTemplate, templateAttrs));
|
package/dist/core-types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-types.js","sourceRoot":"","sources":["../src/core-types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"core-types.js","sourceRoot":"","sources":["../src/core-types.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,MAAM,EAAwD,YAAY,EAAE,MAAM,eAAe,CAAC;AAE3G,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAiB,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAwB,MAAM,qBAAqB,CAAC;AACzE,2EAA2E;AAC3E,wEAAwE;AACxE,gFAAgF;AAChF,0EAA0E;AAC1E,OAAO,sCAAsC,CAAC;AAC9C,OAAO,iCAAiC,CAAC;AACzC,OAAO,qCAAqC,CAAC;AAC7C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AACnI,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EACL,aAAa,EACb,WAAW,EACX,UAAU,EACV,SAAS,EACT,cAAc,EACd,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC7G,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,aAAa,EACb,qBAAqB,GACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AACtG,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,0CAA0C,CAAC;AAElD,8EAA8E;AAC9E,4EAA4E;AAC5E,kFAAkF;AAClF,qEAAqE;AACrE,+DAA+D;AAC/D,8EAA8E;AAE9E,SAAS,QAAQ,CAAC,SAAiB;IACjC,OAAO;QACL,SAAS;QACT,YAAY,EAAE,mBAAmB;QACjC,SAAS,EAAE,mBAAmB;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,GAAG,CACV,IAAY,EACZ,OAAe,EACf,WAAmB,EACnB,UAAuB,EACvB,SAA0B,EAC1B,aAA2B,EAAE,EAC7B,QAAmB;IAEnB,MAAM,UAAU,GAAmB;QACjC,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;QACjC,WAAW;QACX,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,UAAU;QACV,UAAU;KACX,CAAC;IACF,IAAI,QAAQ,KAAK,SAAS;QAAE,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,qEAAqE;AACrE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAA0B;IAC3D,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;IACnD,CAAC,wBAAwB,EAAE,mBAAmB,CAAC;IAC/C,CAAC,uBAAuB,EAAE,kBAAkB,CAAC;IAC7C,CAAC,yBAAyB,EAAE,oBAAoB,CAAC;IACjD,CAAC,uBAAuB,EAAE,kBAAkB,CAAC;CAC9C,CAAC,CAAC;AAEH,oEAAoE;AACpE,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAA0B;IAC1D,CAAC,wBAAwB,EAAE,mBAAmB,CAAC;IAC/C,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;IACnD,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;CACpD,CAAC,CAAC;AAEH,kEAAkE;AAClE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAA0B;IACxD,CAAC,0BAA0B,EAAE,qBAAqB,CAAC;IACnD,CAAC,wBAAwB,EAAE,mBAAmB,CAAC;IAC/C,CAAC,yBAAyB,EAAE,oBAAoB,CAAC;CAClD,CAAC,CAAC;AAEH,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAC5E,kEAAkE;AAElE,SAAS,oBAAoB,CAAC,QAAsB;IAClD,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,wBAAwB,EAAE;QACzD,QAAQ,CAAC,WAAW,CAAC;QACrB,QAAQ,CAAC,UAAU,CAAC;QACpB,QAAQ,CAAC,SAAS,CAAC;QACnB,QAAQ,CAAC,cAAc,CAAC;QACxB,QAAQ,CAAC,aAAa,CAAC;KACxB,EAAE,QAAQ,CAAC,CACb,CAAC;IAEF,sBAAsB;IACtB,MAAM,WAAW,GAAG;QAClB,QAAQ,CAAC,UAAU,CAAC;QACpB,QAAQ,CAAC,aAAa,CAAC;QACvB,QAAQ,CAAC,iBAAiB,CAAC;QAC3B,QAAQ,CAAC,cAAc,CAAC;QACxB,QAAQ,CAAC,WAAW,CAAC;QACrB,QAAQ,CAAC,WAAW,CAAC;QACrB,QAAQ,CAAC,SAAS,CAAC;KACpB,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,kBAAkB,OAAO,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CACnG,CAAC;IACJ,CAAC;IAED,sBAAsB;IACtB,MAAM,UAAU,GAAG;QACjB,QAAQ,CAAC,cAAc,CAAC;QACxB,QAAQ,CAAC,SAAS,CAAC;QACnB,QAAQ,CAAC,SAAS,CAAC;QACnB,QAAQ,CAAC,WAAW,CAAC;KACtB,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,yEAAyE;QACzE,yEAAyE;QACzE,MAAM,UAAU,GACd,OAAO,KAAK,sBAAsB;YAChC,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,EAAE,GAAG,iBAAiB,EAAE,CAAC;YACjD,CAAC,CAAC,OAAO,KAAK,kBAAkB;gBAC9B,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,EAAE,GAAG,aAAa,EAAE,CAAC;gBAC7C,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC;QAC9B,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,iBAAiB,OAAO,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EACpF,IAAI,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAC/D,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,8EAA8E;IAC9E,8EAA8E;IAC9E,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,aAAa,GAAG,IAAI,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;QACjF,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,qBAAqB,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,CAAC,CAC1F,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,4EAA4E;IAC5E,oEAAoE;IACpE,gEAAgE;IAChE,gEAAgE;IAChE,+EAA+E;IAC/E,wFAAwF;IACxF,iCAAiC;IACjC,MAAM,cAAc,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7C,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC;QACpE,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9D,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,cAAc,EAAE,OAAO,EAAE,cAAc,OAAO,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,CAAC,CAClG,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,mEAAmE;IACnE,4EAA4E;IAC5E,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,OAAO,KAAK,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CACzF,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,qFAAqF;IACrF,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,OAAO,KAAK,wBAAwB,CAAC,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CACjG,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,gFAAgF;IAChF,sEAAsE;IACtE,sCAAsC;IACtC,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CACxF,CAAC;IACJ,CAAC;IAED,uDAAuD;IACvD,kEAAkE;IAClE,0EAA0E;IAC1E,kDAAkD;IAClD,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC;QAC9D,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACxD,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,CAChG,CAAC;IACJ,CAAC;IAED,sEAAsE;IACtE,8EAA8E;IAC9E,yEAAyE;IACzE,qEAAqE;IACrE,6EAA6E;IAC7E,wEAAwE;IACxE,iEAAiE;IACjE,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACxC,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5D,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,aAAa,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,CACzG,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,2EAA2E;IAC3E,sEAAsE;IACtE,iEAAiE;IACjE,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC;QAClE,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAC,CAAC;QAC/E,QAAQ,CAAC,QAAQ,CACf,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,aAAa,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAChG,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,QAAQ,CAAC,QAAQ,CACf,GAAG,CACD,iBAAiB,EACjB,OAAO,EACP,iBAAiB,OAAO,GAAG,EAC3B,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EACrB,gBAAgB,EAChB,CAAC,GAAG,iBAAiB,CAAC,CACvB,CACF,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,kCAAkC;IAClC,QAAQ,CAAC,iBAAiB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACxD,QAAQ,CAAC,iBAAiB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AACjE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAyB;IACrD,EAAE,EAAE,wBAAwB;IAC5B,WAAW,EAAE,gDAAgD;IAC7D,aAAa,CAAC,QAAsB;QAClC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CACF,CAAC;AAEF;yDACyD;AACzD,MAAM,CAAC,MAAM,aAAa,GAAoC,CAAC,iBAAiB,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAE3G;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAsB;IACtD,iBAAiB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -1,14 +1,37 @@
|
|
|
1
|
+
import type { ErrorSource, LoaderError, NodeContext } from "./source.js";
|
|
1
2
|
/** Stable, language-neutral error codes — mirrors fixtures/conformance/ERROR-CODES.json. */
|
|
2
|
-
export declare const ERROR_CODES: readonly ["ERR_TOP_LEVEL_NOT_OBJECT", "ERR_UNKNOWN_TYPE", "ERR_UNKNOWN_SUBTYPE", "ERR_MISSING_SUBTYPE", "ERR_DUPLICATE_NAME", "ERR_UNRESOLVED_SUPER", "ERR_INVALID_SUBTYPE_CHILD", "ERR_UNKNOWN_ATTR", "ERR_BAD_ATTR_VALUE", "ERR_BAD_DEFAULT_SORT_FIELD", "ERR_PROVIDER_DEPENDENCY_CYCLE", "ERR_PROVIDER_DUPLICATE_ID", "ERR_PROVIDER_MISSING_DEPENDENCY", "ERR_PROVIDER_ATTR_CONFLICT", "ERR_MALFORMED_JSON", "ERR_MISSING_REQUIRED_ATTR", "ERR_SUBTYPE_RULE_VIOLATION", "ERR_OVERLAY_NO_TARGET", "ERR_MALFORMED_YAML", "ERR_INVALID_ORIGIN", "ERR_INVALID_TEMPLATE", "ERR_VAR_NOT_ON_PAYLOAD", "ERR_PARTIAL_UNRESOLVED", "ERR_REQUIRED_SLOT_UNUSED", "ERR_OUTPUT_TAG_MISSING", "ERR_BAD_ATTR_FILTER", "ERR_STORAGE_FLATTENED_ARRAY", "ERR_STORAGE_WITHOUT_OBJECT_REF", "ERR_RESERVED_ATTR", "ERR_SOURCE_NO_PRIMARY", "ERR_SOURCE_MULTIPLE_PRIMARY", "ERR_YAML_COERCION", "ERR_UNKNOWN"];
|
|
3
|
+
export declare const ERROR_CODES: readonly ["ERR_TOP_LEVEL_NOT_OBJECT", "ERR_UNKNOWN_TYPE", "ERR_UNKNOWN_SUBTYPE", "ERR_MISSING_SUBTYPE", "ERR_DUPLICATE_NAME", "ERR_UNRESOLVED_SUPER", "ERR_INVALID_SUBTYPE_CHILD", "ERR_UNKNOWN_ATTR", "ERR_BAD_ATTR_VALUE", "ERR_BAD_DEFAULT_SORT_FIELD", "ERR_PROVIDER_DEPENDENCY_CYCLE", "ERR_PROVIDER_DUPLICATE_ID", "ERR_PROVIDER_MISSING_DEPENDENCY", "ERR_PROVIDER_ATTR_CONFLICT", "ERR_MALFORMED_JSON", "ERR_MISSING_REQUIRED_ATTR", "ERR_SUBTYPE_RULE_VIOLATION", "ERR_OVERLAY_NO_TARGET", "ERR_MALFORMED_YAML", "ERR_INVALID_ORIGIN", "ERR_INVALID_TEMPLATE", "ERR_VAR_NOT_ON_PAYLOAD", "ERR_PARTIAL_UNRESOLVED", "ERR_REQUIRED_SLOT_UNUSED", "ERR_OUTPUT_TAG_MISSING", "ERR_BAD_ATTR_FILTER", "ERR_STORAGE_FLATTENED_ARRAY", "ERR_STORAGE_WITHOUT_OBJECT_REF", "ERR_RESERVED_ATTR", "ERR_SOURCE_NO_PRIMARY", "ERR_SOURCE_MULTIPLE_PRIMARY", "ERR_YAML_COERCION", "ERR_MERGE_CONFLICT", "ERR_UNKNOWN"];
|
|
4
|
+
/** Warning codes — same envelope shape as errors but advisory. */
|
|
5
|
+
export declare const WARNING_CODES: readonly ["WARN_DUPLICATE_DECLARATION", "WARN_LEGACY"];
|
|
6
|
+
export type WarningCode = (typeof WARNING_CODES)[number];
|
|
3
7
|
export type ErrorCode = (typeof ERROR_CODES)[number];
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Loader error carrying the ADR-0009 LoaderError envelope.
|
|
10
|
+
*
|
|
11
|
+
* Public shape (FR5a):
|
|
12
|
+
* new ParseError(message, { code, source, suggestions?, fixture?, node? })
|
|
13
|
+
*
|
|
14
|
+
* - `code` and `source` are required.
|
|
15
|
+
* - `source` is the ErrorSource discriminated union (json/yaml/merged/resolved/
|
|
16
|
+
* database/code) — the same envelope every cross-language port emits.
|
|
17
|
+
* - `suggestions[]`, `fixture`, `node` are optional per ADR-0009 §RECOMMENDED;
|
|
18
|
+
* FR5a does not populate them, FR5b–FR5e may.
|
|
19
|
+
*
|
|
20
|
+
* Legacy fields (`path?: string`, `source?: string`) were superseded by the
|
|
21
|
+
* envelope's `jsonPath` and `files` and have been dropped — see CHANGELOG.
|
|
22
|
+
*/
|
|
23
|
+
export declare class ParseError extends Error implements LoaderError {
|
|
24
|
+
readonly code: ErrorCode;
|
|
25
|
+
readonly source: ErrorSource;
|
|
26
|
+
readonly suggestions?: string[];
|
|
27
|
+
readonly fixture?: string;
|
|
28
|
+
readonly node?: NodeContext;
|
|
29
|
+
constructor(message: string, opts: {
|
|
30
|
+
code: ErrorCode;
|
|
31
|
+
source: ErrorSource;
|
|
32
|
+
suggestions?: string[];
|
|
33
|
+
fixture?: string;
|
|
34
|
+
node?: NodeContext;
|
|
12
35
|
});
|
|
13
36
|
}
|
|
14
37
|
/**
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,4FAA4F;AAc5F,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEzE,4FAA4F;AAc5F,eAAO,MAAM,WAAW,k3BAwCd,CAAC;AAEX,kEAAkE;AAClE,eAAO,MAAM,aAAa,wDAQhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,UAAW,SAAQ,KAAM,YAAW,WAAW;IAC1D,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC;gBAG1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS,CAAC;QAChB,MAAM,EAAE,WAAW,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,WAAW,CAAC;KACpB;CAiBJ;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;gBAEzB,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,SAAS,CAAA;KAAE;CAKzD"}
|
package/dist/errors.js
CHANGED
|
@@ -49,18 +49,57 @@ export const ERROR_CODES = [
|
|
|
49
49
|
// ADR-0006 D2 — YAML type-coercion guard. Emitted by every port's YAML
|
|
50
50
|
// loader when a coerced scalar mismatches the schema-declared type.
|
|
51
51
|
"ERR_YAML_COERCION",
|
|
52
|
+
// FR5c — multi-file overlay merge produced a conflicting attribute value:
|
|
53
|
+
// two contributors set the same @attr to different non-empty values.
|
|
54
|
+
"ERR_MERGE_CONFLICT",
|
|
52
55
|
"ERR_UNKNOWN",
|
|
53
56
|
];
|
|
57
|
+
/** Warning codes — same envelope shape as errors but advisory. */
|
|
58
|
+
export const WARNING_CODES = [
|
|
59
|
+
// FR5c — two contributors declared the same node identically (no semantic
|
|
60
|
+
// change). Emitted at the overlay-merge boundary.
|
|
61
|
+
"WARN_DUPLICATE_DECLARATION",
|
|
62
|
+
// Pre-FR5c legacy: parser/validator messages still surface as plain
|
|
63
|
+
// strings; wrapped at the loader boundary into the envelope shape with
|
|
64
|
+
// this code. Retired as those sites are migrated to envelopes.
|
|
65
|
+
"WARN_LEGACY",
|
|
66
|
+
];
|
|
67
|
+
/**
|
|
68
|
+
* Loader error carrying the ADR-0009 LoaderError envelope.
|
|
69
|
+
*
|
|
70
|
+
* Public shape (FR5a):
|
|
71
|
+
* new ParseError(message, { code, source, suggestions?, fixture?, node? })
|
|
72
|
+
*
|
|
73
|
+
* - `code` and `source` are required.
|
|
74
|
+
* - `source` is the ErrorSource discriminated union (json/yaml/merged/resolved/
|
|
75
|
+
* database/code) — the same envelope every cross-language port emits.
|
|
76
|
+
* - `suggestions[]`, `fixture`, `node` are optional per ADR-0009 §RECOMMENDED;
|
|
77
|
+
* FR5a does not populate them, FR5b–FR5e may.
|
|
78
|
+
*
|
|
79
|
+
* Legacy fields (`path?: string`, `source?: string`) were superseded by the
|
|
80
|
+
* envelope's `jsonPath` and `files` and have been dropped — see CHANGELOG.
|
|
81
|
+
*/
|
|
54
82
|
export class ParseError extends Error {
|
|
55
|
-
source;
|
|
56
|
-
path; // logical path within the JSON, e.g. "metadata.children[2].field"
|
|
57
83
|
code;
|
|
84
|
+
source;
|
|
85
|
+
suggestions;
|
|
86
|
+
fixture;
|
|
87
|
+
node;
|
|
58
88
|
constructor(message, opts) {
|
|
59
89
|
super(message);
|
|
60
90
|
this.name = "ParseError";
|
|
61
|
-
this.
|
|
62
|
-
this.
|
|
63
|
-
|
|
91
|
+
this.code = opts.code;
|
|
92
|
+
this.source = opts.source;
|
|
93
|
+
// exactOptionalPropertyTypes: only assign when defined.
|
|
94
|
+
if (opts.suggestions !== undefined) {
|
|
95
|
+
this.suggestions = opts.suggestions;
|
|
96
|
+
}
|
|
97
|
+
if (opts.fixture !== undefined) {
|
|
98
|
+
this.fixture = opts.fixture;
|
|
99
|
+
}
|
|
100
|
+
if (opts.node !== undefined) {
|
|
101
|
+
this.node = opts.node;
|
|
102
|
+
}
|
|
64
103
|
}
|
|
65
104
|
}
|
|
66
105
|
/**
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+CAA+C;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAI/C,4FAA4F;AAC5F,kFAAkF;AAClF,yDAAyD;AACzD,4FAA4F;AAC5F,gGAAgG;AAChG,2EAA2E;AAC3E,0FAA0F;AAC1F,EAAE;AACF,oFAAoF;AACpF,uFAAuF;AACvF,mFAAmF;AACnF,uFAAuF;AACvF,uFAAuF;AACvF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,0BAA0B;IAC1B,kBAAkB;IAClB,qBAAqB;IACrB,qBAAqB;IACrB,oBAAoB;IACpB,sBAAsB;IACtB,2BAA2B;IAC3B,kBAAkB;IAClB,oBAAoB;IACpB,4BAA4B;IAC5B,+BAA+B;IAC/B,2BAA2B;IAC3B,iCAAiC;IACjC,4BAA4B;IAC5B,oBAAoB;IACpB,2BAA2B;IAC3B,4BAA4B;IAC5B,uBAAuB;IACvB,oBAAoB;IACpB,oBAAoB;IACpB,sBAAsB;IACtB,wBAAwB;IACxB,wBAAwB;IACxB,0BAA0B;IAC1B,wBAAwB;IACxB,qBAAqB;IACrB,6BAA6B;IAC7B,gCAAgC;IAChC,qFAAqF;IACrF,mBAAmB;IACnB,uBAAuB;IACvB,6BAA6B;IAC7B,uEAAuE;IACvE,oEAAoE;IACpE,mBAAmB;IACnB,0EAA0E;IAC1E,qEAAqE;IACrE,oBAAoB;IACpB,aAAa;CACL,CAAC;AAEX,kEAAkE;AAClE,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,0EAA0E;IAC1E,kDAAkD;IAClD,4BAA4B;IAC5B,oEAAoE;IACpE,uEAAuE;IACvE,+DAA+D;IAC/D,aAAa;CACL,CAAC;AAKX;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IAC1B,IAAI,CAAY;IAChB,MAAM,CAAc;IACpB,WAAW,CAAY;IACvB,OAAO,CAAU;IACjB,IAAI,CAAe;IAE5B,YACE,OAAe,EACf,IAMC;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,wDAAwD;QACxD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAClC,IAAmC,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtE,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9B,IAA6B,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC3B,IAA+B,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACpD,CAAC;IACH,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IAC9B,IAAI,CAAwB;IAErC,YAAY,OAAe,EAAE,IAA2B;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;IACzB,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -64,12 +64,15 @@ export type { SerializeOptions } from "./serializer-json.js";
|
|
|
64
64
|
export { resolveSuperRef } from "./super-resolve.js";
|
|
65
65
|
export { MetaDataLoader } from "./loader/meta-data-loader.js";
|
|
66
66
|
export type { LoadOptions, LoadResult, LoadingState } from "./loader/meta-data-loader.js";
|
|
67
|
-
export {
|
|
67
|
+
export { InMemoryStringSource } from "./loader/meta-data-source.js";
|
|
68
68
|
export type { MetaDataSource, MetaDataFormat } from "./loader/meta-data-source.js";
|
|
69
|
+
export { loadDirectory, loadUris, loadString, } from "./loader/shortcuts.js";
|
|
69
70
|
export { ParseError, MetaModelError, ERROR_CODES } from "./errors.js";
|
|
70
71
|
export type { ErrorCode } from "./errors.js";
|
|
72
|
+
export type { ErrorSource, LoaderError, LoaderWarning, NodeContext, Contributor, } from "./source.js";
|
|
73
|
+
export { codeSource } from "./source.js";
|
|
71
74
|
export { validateAttrSchema } from "./attr-schema-validate.js";
|
|
72
75
|
export type { AttrSchemaValidationResult } from "./attr-schema-validate.js";
|
|
73
|
-
export { toSnakeCase, pluralize, resolveTableName, resolveColumnName, resolveTableSchema, buildNameMap, stripPackage, } from "./naming.js";
|
|
74
|
-
export type { EntityNameMap } from "./naming.js";
|
|
76
|
+
export { toSnakeCase, toKebabCase, pluralize, applyColumnNamingStrategy, DEFAULT_COLUMN_NAMING_STRATEGY, resolveTableName, resolveColumnName, resolveTableSchema, buildNameMap, stripPackage, } from "./naming.js";
|
|
77
|
+
export type { EntityNameMap, ColumnNamingStrategy } from "./naming.js";
|
|
75
78
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -71,12 +71,19 @@ export { serializeJson, canonicalSerialize, inferAttrSubType } from "./serialize
|
|
|
71
71
|
export { resolveSuperRef } from "./super-resolve.js";
|
|
72
72
|
// Loader hierarchy
|
|
73
73
|
export { MetaDataLoader } from "./loader/meta-data-loader.js";
|
|
74
|
-
export {
|
|
74
|
+
export { InMemoryStringSource } from "./loader/meta-data-source.js";
|
|
75
|
+
// Module-level loader shortcuts — delegate to MetaDataLoader.from* static
|
|
76
|
+
// factories. The shortcuts honor the ergonomic per-port pattern (TS and
|
|
77
|
+
// Python expose both class statics AND module-level functions); Java/C# stay
|
|
78
|
+
// class-only. Browser safety is preserved: the underlying sources are
|
|
79
|
+
// loaded via dynamic import inside MetaDataLoader.from*.
|
|
80
|
+
export { loadDirectory, loadUris, loadString, } from "./loader/shortcuts.js";
|
|
75
81
|
// Errors
|
|
76
82
|
export { ParseError, MetaModelError, ERROR_CODES } from "./errors.js";
|
|
83
|
+
export { codeSource } from "./source.js";
|
|
77
84
|
// Attribute-schema validation pass (Phase A3)
|
|
78
85
|
export { validateAttrSchema } from "./attr-schema-validate.js";
|
|
79
86
|
// Naming — hoisted from runtime-ts in v0.2.3 so multiple consumers (runtime-ts, migrate-ts, codegen-ts)
|
|
80
87
|
// share identical name resolution. See spec §4.1.
|
|
81
|
-
export { toSnakeCase, pluralize, resolveTableName, resolveColumnName, resolveTableSchema, buildNameMap, stripPackage, } from "./naming.js";
|
|
88
|
+
export { toSnakeCase, toKebabCase, pluralize, applyColumnNamingStrategy, DEFAULT_COLUMN_NAMING_STRATEGY, resolveTableName, resolveColumnName, resolveTableSchema, buildNameMap, stripPackage, } from "./naming.js";
|
|
82
89
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-path.d.ts","sourceRoot":"","sources":["../src/json-path.ts"],"names":[],"mappings":"AAiBA,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAE1C,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI1B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI5B,GAAG,IAAI,IAAI;IAIX,QAAQ,IAAI,MAAM;CAanB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// server/typescript/packages/metadata/src/json-path.ts
|
|
2
|
+
//
|
|
3
|
+
// FR5a / ADR-0009 — Canonical JSONPath builder.
|
|
4
|
+
//
|
|
5
|
+
// Construction rules (cross-port-aligned):
|
|
6
|
+
// - Root is `$`.
|
|
7
|
+
// - Object keys matching /^[A-Za-z_][A-Za-z0-9_]*$/ use dot notation: `.foo`.
|
|
8
|
+
// - All other keys use single-quoted bracket form: `['my-key']`, `['@attr']`.
|
|
9
|
+
// - Array indices use bracket form: `[N]`.
|
|
10
|
+
// - No trailing dots, no whitespace.
|
|
11
|
+
const IDENT_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
|
|
12
|
+
export class JsonPathBuilder {
|
|
13
|
+
segments = [];
|
|
14
|
+
pushKey(key) {
|
|
15
|
+
this.segments.push({ kind: "key", value: key });
|
|
16
|
+
}
|
|
17
|
+
pushIndex(idx) {
|
|
18
|
+
this.segments.push({ kind: "index", value: idx });
|
|
19
|
+
}
|
|
20
|
+
pop() {
|
|
21
|
+
this.segments.pop();
|
|
22
|
+
}
|
|
23
|
+
toString() {
|
|
24
|
+
let out = "$";
|
|
25
|
+
for (const seg of this.segments) {
|
|
26
|
+
if (seg.kind === "index") {
|
|
27
|
+
out += `[${seg.value}]`;
|
|
28
|
+
}
|
|
29
|
+
else if (IDENT_RE.test(seg.value)) {
|
|
30
|
+
out += `.${seg.value}`;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
out += `['${seg.value.replace(/'/g, "\\'")}']`;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return out;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=json-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-path.js","sourceRoot":"","sources":["../src/json-path.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,2CAA2C;AAC3C,mBAAmB;AACnB,gFAAgF;AAChF,gFAAgF;AAChF,6CAA6C;AAC7C,uCAAuC;AAEvC,MAAM,QAAQ,GAAG,0BAA0B,CAAC;AAM5C,MAAM,OAAO,eAAe;IACT,QAAQ,GAAc,EAAE,CAAC;IAE1C,OAAO,CAAC,GAAW;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,SAAS,CAAC,GAAW;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,GAAG;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACzB,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;YAC1B,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpC,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,GAAG,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import type { MetaData } from "../shared/meta-data.js";
|
|
2
2
|
import { MetaRoot } from "../shared/meta-root.js";
|
|
3
3
|
import { TypeRegistry } from "../registry.js";
|
|
4
|
-
import type {
|
|
4
|
+
import type { LoaderWarning } from "../source.js";
|
|
5
|
+
import type { MetaDataFormat, MetaDataSource } from "./meta-data-source.js";
|
|
5
6
|
import type { ParseOptions, ParseResult } from "../parser-core.js";
|
|
7
|
+
type DirectoryFactoryOptions = {
|
|
8
|
+
exclude?: string[];
|
|
9
|
+
recurse?: boolean;
|
|
10
|
+
};
|
|
6
11
|
/** Loader lifecycle state. Mirrors Java's MetaDataLoader phase enum. */
|
|
7
12
|
export type LoadingState = "uninitialized" | "loading" | "loaded" | "error";
|
|
8
13
|
export interface LoadOptions {
|
|
@@ -15,7 +20,13 @@ export interface LoadOptions {
|
|
|
15
20
|
}
|
|
16
21
|
export interface LoadResult {
|
|
17
22
|
root: MetaRoot;
|
|
18
|
-
|
|
23
|
+
/** Cross-port-aligned warning envelopes per ADR-0009.
|
|
24
|
+
* FR5a creates the channel; FR5c (overlay-merge duplicate detection)
|
|
25
|
+
* will be the first feature to populate it. Legacy string warnings
|
|
26
|
+
* collected during parse/validation are wrapped at the loader boundary
|
|
27
|
+
* with `code: "WARN_LEGACY"` and `source: { format: "code" }` so the
|
|
28
|
+
* channel always presents the envelope shape to consumers. */
|
|
29
|
+
warnings: LoaderWarning[];
|
|
19
30
|
errors: Error[];
|
|
20
31
|
}
|
|
21
32
|
export declare class MetaDataLoader {
|
|
@@ -26,6 +37,27 @@ export declare class MetaDataLoader {
|
|
|
26
37
|
private _root;
|
|
27
38
|
constructor(opts?: LoadOptions);
|
|
28
39
|
private static _defaultRegistry;
|
|
40
|
+
/**
|
|
41
|
+
* Load every supported file (`.json` / `.yaml` / `.yml`) under `dir` in
|
|
42
|
+
* deterministic ordinal-basename order. Recurses by default.
|
|
43
|
+
*
|
|
44
|
+
* Convenience for the typical "load a directory of metadata" path. The
|
|
45
|
+
* `DirectorySource` impl is loaded lazily to keep the package root
|
|
46
|
+
* browser-safe (the underlying source uses node:fs).
|
|
47
|
+
*
|
|
48
|
+
* A missing/unreadable directory is surfaced as a collected entry in
|
|
49
|
+
* `result.errors`; the loader returns a synthetic empty root rather than
|
|
50
|
+
* throwing — preserves the `meta export` CLI exit-code contract.
|
|
51
|
+
*/
|
|
52
|
+
static fromDirectory(dir: string, opts?: DirectoryFactoryOptions & LoadOptions): Promise<LoadResult>;
|
|
53
|
+
/**
|
|
54
|
+
* Load each URI as a {@link UriSource}. Supports `file://`, `http://`,
|
|
55
|
+
* `https://` schemes. The source impl is loaded lazily to keep the package
|
|
56
|
+
* root browser-safe.
|
|
57
|
+
*/
|
|
58
|
+
static fromUris(uris: string[], opts?: LoadOptions): Promise<LoadResult>;
|
|
59
|
+
/** Load a single in-memory string of the given format. */
|
|
60
|
+
static fromString(content: string, format: MetaDataFormat, opts?: LoadOptions): Promise<LoadResult>;
|
|
29
61
|
/** Current loading state. */
|
|
30
62
|
get state(): LoadingState;
|
|
31
63
|
/**
|
|
@@ -65,12 +97,20 @@ export declare class MetaDataLoader {
|
|
|
65
97
|
*/
|
|
66
98
|
childrenOfType(type: string): MetaData[];
|
|
67
99
|
/**
|
|
68
|
-
* Parse one source's raw content into a ParseResult.
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
100
|
+
* Parse one source's raw content into a ParseResult. Dispatches on the
|
|
101
|
+
* source's declared `format` — `"json"` runs the canonical JSON parser,
|
|
102
|
+
* `"yaml"` desugars the authoring YAML into canonical JSON via parseYaml.
|
|
103
|
+
* Cross-language consistent: the same format vocabulary is honored by the
|
|
104
|
+
* Java / C# / Python MetaDataLoaders.
|
|
105
|
+
*
|
|
106
|
+
* The YAML parser is loaded lazily so the browser-safe root entry never
|
|
107
|
+
* statically pulls in the `yaml` dependency — see the module-header comment.
|
|
108
|
+
* `parseYaml` is preloaded inside `load()` if any source declares YAML
|
|
109
|
+
* format so the call here can stay synchronous.
|
|
72
110
|
*/
|
|
73
111
|
protected parseSource(content: string, source: MetaDataSource, parseOpts: ParseOptions): ParseResult;
|
|
112
|
+
private static _yamlParser;
|
|
113
|
+
private static _ensureYamlParser;
|
|
74
114
|
/**
|
|
75
115
|
* Load metadata from one or more MetaDataSource instances. Sources are read
|
|
76
116
|
* in order; each source's content is parsed and merged into the accumulating
|
|
@@ -84,4 +124,5 @@ export declare class MetaDataLoader {
|
|
|
84
124
|
*/
|
|
85
125
|
load(sources: MetaDataSource[]): Promise<LoadResult>;
|
|
86
126
|
}
|
|
127
|
+
export {};
|
|
87
128
|
//# sourceMappingURL=meta-data-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta-data-loader.d.ts","sourceRoot":"","sources":["../../src/loader/meta-data-loader.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAU,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"meta-data-loader.d.ts","sourceRoot":"","sources":["../../src/loader/meta-data-loader.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAU,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAQlD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOnE,KAAK,uBAAuB,GAAG;IAC7B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAYF,wEAAwE;AACxE,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B,0GAA0G;IAC1G,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qEAAqE;IACrE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf;;;;;mEAK+D;IAC/D,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,MAAM,EAAE,KAAK,EAAE,CAAC;CACjB;AAcD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,KAAK,CAAuB;gBAExB,IAAI,CAAC,EAAE,WAAW;IAM9B,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAQ/B;;;;;;;;;;;OAWG;WACU,aAAa,CACxB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,uBAAuB,GAAG,WAAW,GAC3C,OAAO,CAAC,UAAU,CAAC;IA0BtB;;;;OAIG;WACU,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAM9E,0DAA0D;WAC7C,UAAU,CACrB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,UAAU,CAAC;IAQtB,6BAA6B;IAC7B,IAAI,KAAK,IAAI,YAAY,CAExB;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED;;;;OAIG;IACH,IAAI,IAAI,IAAI,QAAQ,CAGnB;IAED;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAK9C;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAKnE;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE;IASxC;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,WAAW,CACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,YAAY,GACtB,WAAW;IAuBd,OAAO,CAAC,MAAM,CAAC,WAAW,CAEZ;mBAEO,iBAAiB;IAUtC;;;;;;;;;;OAUG;IACG,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;CAuK3D"}
|