@metaobjectsdev/metadata 0.8.1 → 0.9.0
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/dist/attr-schema-validate.d.ts.map +1 -1
- package/dist/attr-schema-validate.js +49 -1
- package/dist/attr-schema-validate.js.map +1 -1
- package/dist/core/field/field-constants.d.ts +27 -2
- package/dist/core/field/field-constants.d.ts.map +1 -1
- package/dist/core/field/field-constants.js +30 -2
- package/dist/core/field/field-constants.js.map +1 -1
- package/dist/core/field/field-schema.d.ts +9 -1
- package/dist/core/field/field-schema.d.ts.map +1 -1
- package/dist/core/field/field-schema.js +34 -3
- package/dist/core/field/field-schema.js.map +1 -1
- package/dist/core/field/meta-field.d.ts +10 -0
- package/dist/core/field/meta-field.d.ts.map +1 -1
- package/dist/core/field/meta-field.js +36 -1
- package/dist/core/field/meta-field.js.map +1 -1
- package/dist/core/field/validate-field-readonly.d.ts +9 -0
- package/dist/core/field/validate-field-readonly.d.ts.map +1 -0
- package/dist/core/field/validate-field-readonly.js +116 -0
- package/dist/core/field/validate-field-readonly.js.map +1 -0
- package/dist/core/object/meta-object-aware.d.ts +11 -0
- package/dist/core/object/meta-object-aware.d.ts.map +1 -0
- package/dist/core/object/meta-object-aware.js +15 -0
- package/dist/core/object/meta-object-aware.js.map +1 -0
- package/dist/core/object/meta-object.d.ts +21 -0
- package/dist/core/object/meta-object.d.ts.map +1 -1
- package/dist/core/object/meta-object.js +43 -2
- package/dist/core/object/meta-object.js.map +1 -1
- package/dist/core/object/object-class-registry.d.ts +22 -0
- package/dist/core/object/object-class-registry.d.ts.map +1 -0
- package/dist/core/object/object-class-registry.js +38 -0
- package/dist/core/object/object-class-registry.js.map +1 -0
- package/dist/core/object/object-constants.d.ts +7 -0
- package/dist/core/object/object-constants.d.ts.map +1 -1
- package/dist/core/object/object-constants.js +14 -0
- package/dist/core/object/object-constants.js.map +1 -1
- package/dist/core/object/object-schema.d.ts.map +1 -1
- package/dist/core/object/object-schema.js +24 -1
- package/dist/core/object/object-schema.js.map +1 -1
- package/dist/core/object/validate-discriminator.d.ts +4 -0
- package/dist/core/object/validate-discriminator.d.ts.map +1 -0
- package/dist/core/object/validate-discriminator.js +145 -0
- package/dist/core/object/validate-discriminator.js.map +1 -0
- package/dist/core/object/value-object.d.ts +23 -0
- package/dist/core/object/value-object.d.ts.map +1 -0
- package/dist/core/object/value-object.js +51 -0
- package/dist/core/object/value-object.js.map +1 -0
- package/dist/core/query/query-constants.d.ts.map +1 -1
- package/dist/core/query/query-constants.js +4 -0
- package/dist/core/query/query-constants.js.map +1 -1
- package/dist/core-types.d.ts.map +1 -1
- package/dist/core-types.js +16 -4
- package/dist/core-types.js.map +1 -1
- package/dist/errors.d.ts +2 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +23 -0
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/loader/meta-data-loader.d.ts.map +1 -1
- package/dist/loader/meta-data-loader.js +26 -1
- package/dist/loader/meta-data-loader.js.map +1 -1
- package/dist/loader/validation-passes.d.ts +1 -0
- package/dist/loader/validation-passes.d.ts.map +1 -1
- package/dist/loader/validation-passes.js +122 -2
- package/dist/loader/validation-passes.js.map +1 -1
- package/dist/naming.d.ts.map +1 -1
- package/dist/naming.js +7 -6
- package/dist/naming.js.map +1 -1
- package/dist/persistence/db/db-constants.d.ts +23 -0
- package/dist/persistence/db/db-constants.d.ts.map +1 -1
- package/dist/persistence/db/db-constants.js +31 -0
- package/dist/persistence/db/db-constants.js.map +1 -1
- package/dist/persistence/db/db-provider.js +3 -3
- package/dist/persistence/db/db-provider.js.map +1 -1
- package/dist/persistence/db/db-schema.d.ts +8 -0
- package/dist/persistence/db/db-schema.d.ts.map +1 -1
- package/dist/persistence/db/db-schema.js +17 -1
- package/dist/persistence/db/db-schema.js.map +1 -1
- package/dist/persistence/source/meta-source.d.ts +15 -1
- package/dist/persistence/source/meta-source.d.ts.map +1 -1
- package/dist/persistence/source/meta-source.js +55 -3
- package/dist/persistence/source/meta-source.js.map +1 -1
- package/dist/persistence/source/source-constants.d.ts +20 -1
- package/dist/persistence/source/source-constants.d.ts.map +1 -1
- package/dist/persistence/source/source-constants.js +36 -1
- package/dist/persistence/source/source-constants.js.map +1 -1
- package/dist/persistence/source/source-schema.d.ts.map +1 -1
- package/dist/persistence/source/source-schema.js +65 -4
- package/dist/persistence/source/source-schema.js.map +1 -1
- package/dist/persistence/source/validate-source-parameter-ref.d.ts +4 -0
- package/dist/persistence/source/validate-source-parameter-ref.d.ts.map +1 -0
- package/dist/persistence/source/validate-source-parameter-ref.js +96 -0
- package/dist/persistence/source/validate-source-parameter-ref.js.map +1 -0
- package/dist/persistence/source/validate-source-physical-names.d.ts +9 -0
- package/dist/persistence/source/validate-source-physical-names.d.ts.map +1 -0
- package/dist/persistence/source/validate-source-physical-names.js +79 -0
- package/dist/persistence/source/validate-source-physical-names.js.map +1 -0
- package/dist/serializer-json.d.ts.map +1 -1
- package/dist/serializer-json.js +43 -0
- package/dist/serializer-json.js.map +1 -1
- package/dist/template/template-constants.d.ts +9 -0
- package/dist/template/template-constants.d.ts.map +1 -1
- package/dist/template/template-constants.js +20 -0
- 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 +42 -3
- package/dist/template/template-schema.js.map +1 -1
- package/package.json +1 -1
- package/src/attr-schema-validate.ts +70 -0
- package/src/core/field/field-constants.ts +37 -2
- package/src/core/field/field-schema.ts +43 -2
- package/src/core/field/meta-field.ts +39 -0
- package/src/core/field/validate-field-readonly.ts +142 -0
- package/src/core/object/meta-object-aware.ts +27 -0
- package/src/core/object/meta-object.ts +47 -2
- package/src/core/object/object-class-registry.ts +48 -0
- package/src/core/object/object-constants.ts +17 -0
- package/src/core/object/object-schema.ts +29 -1
- package/src/core/object/validate-discriminator.ts +195 -0
- package/src/core/object/value-object.ts +65 -0
- package/src/core/query/query-constants.ts +5 -0
- package/src/core-types.ts +17 -4
- package/src/errors.ts +23 -0
- package/src/index.ts +10 -0
- package/src/loader/meta-data-loader.ts +31 -1
- package/src/loader/validation-passes.ts +161 -0
- package/src/naming.ts +6 -5
- package/src/persistence/db/db-constants.ts +40 -0
- package/src/persistence/db/db-provider.ts +3 -3
- package/src/persistence/db/db-schema.ts +20 -0
- package/src/persistence/source/meta-source.ts +64 -2
- package/src/persistence/source/source-constants.ts +40 -1
- package/src/persistence/source/source-schema.ts +78 -3
- package/src/persistence/source/validate-source-parameter-ref.ts +143 -0
- package/src/persistence/source/validate-source-physical-names.ts +123 -0
- package/src/serializer-json.ts +50 -0
- package/src/template/template-constants.ts +23 -0
- package/src/template/template-schema.ts +49 -2
- package/dist/constants.d.ts +0 -208
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js +0 -419
- package/dist/constants.js.map +0 -1
- package/dist/core/file-meta-data-loader.d.ts +0 -18
- package/dist/core/file-meta-data-loader.d.ts.map +0 -1
- package/dist/core/file-meta-data-loader.js +0 -81
- package/dist/core/file-meta-data-loader.js.map +0 -1
- package/dist/core/file-source.d.ts +0 -12
- package/dist/core/file-source.d.ts.map +0 -1
- package/dist/core/file-source.js +0 -46
- package/dist/core/file-source.js.map +0 -1
- package/dist/core-attr-schemas.d.ts +0 -22
- package/dist/core-attr-schemas.d.ts.map +0 -1
- package/dist/core-attr-schemas.js +0 -324
- package/dist/core-attr-schemas.js.map +0 -1
- package/dist/db/db-attr-schemas.d.ts +0 -8
- package/dist/db/db-attr-schemas.d.ts.map +0 -1
- package/dist/db/db-attr-schemas.js +0 -26
- package/dist/db/db-attr-schemas.js.map +0 -1
- package/dist/db/db-provider.d.ts +0 -3
- package/dist/db/db-provider.d.ts.map +0 -1
- package/dist/db/db-provider.js +0 -28
- package/dist/db/db-provider.js.map +0 -1
- package/dist/meta/find-reference.d.ts +0 -22
- package/dist/meta/find-reference.d.ts.map +0 -1
- package/dist/meta/find-reference.js +0 -29
- package/dist/meta/find-reference.js.map +0 -1
- package/dist/meta/meta-attr.d.ts +0 -8
- package/dist/meta/meta-attr.d.ts.map +0 -1
- package/dist/meta/meta-attr.js +0 -17
- package/dist/meta/meta-attr.js.map +0 -1
- package/dist/meta/meta-data.d.ts +0 -107
- package/dist/meta/meta-data.d.ts.map +0 -1
- package/dist/meta/meta-data.js +0 -302
- package/dist/meta/meta-data.js.map +0 -1
- package/dist/meta/meta-field.d.ts +0 -48
- package/dist/meta/meta-field.d.ts.map +0 -1
- package/dist/meta/meta-field.js +0 -94
- package/dist/meta/meta-field.js.map +0 -1
- package/dist/meta/meta-identity.d.ts +0 -71
- package/dist/meta/meta-identity.d.ts.map +0 -1
- package/dist/meta/meta-identity.js +0 -129
- package/dist/meta/meta-identity.js.map +0 -1
- package/dist/meta/meta-layout.d.ts +0 -23
- package/dist/meta/meta-layout.d.ts.map +0 -1
- package/dist/meta/meta-layout.js +0 -45
- package/dist/meta/meta-layout.js.map +0 -1
- package/dist/meta/meta-object.d.ts +0 -40
- package/dist/meta/meta-object.d.ts.map +0 -1
- package/dist/meta/meta-object.js +0 -81
- package/dist/meta/meta-object.js.map +0 -1
- package/dist/meta/meta-origin.d.ts +0 -32
- package/dist/meta/meta-origin.d.ts.map +0 -1
- package/dist/meta/meta-origin.js +0 -55
- package/dist/meta/meta-origin.js.map +0 -1
- package/dist/meta/meta-relationship.d.ts +0 -11
- package/dist/meta/meta-relationship.d.ts.map +0 -1
- package/dist/meta/meta-relationship.js +0 -27
- package/dist/meta/meta-relationship.js.map +0 -1
- package/dist/meta/meta-root.d.ts +0 -12
- package/dist/meta/meta-root.d.ts.map +0 -1
- package/dist/meta/meta-root.js +0 -24
- package/dist/meta/meta-root.js.map +0 -1
- package/dist/meta/meta-source.d.ts +0 -18
- package/dist/meta/meta-source.d.ts.map +0 -1
- package/dist/meta/meta-source.js +0 -31
- package/dist/meta/meta-source.js.map +0 -1
- package/dist/meta/meta-validator.d.ts +0 -29
- package/dist/meta/meta-validator.d.ts.map +0 -1
- package/dist/meta/meta-validator.js +0 -49
- package/dist/meta/meta-validator.js.map +0 -1
- package/dist/meta/meta-view.d.ts +0 -4
- package/dist/meta/meta-view.d.ts.map +0 -1
- package/dist/meta/meta-view.js +0 -8
- package/dist/meta/meta-view.js.map +0 -1
- package/dist/persistence/db/db-attr-schemas.d.ts +0 -8
- package/dist/persistence/db/db-attr-schemas.d.ts.map +0 -1
- package/dist/persistence/db/db-attr-schemas.js +0 -28
- package/dist/persistence/db/db-attr-schemas.js.map +0 -1
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
// MetaIdentity — concrete node class for type=identity nodes.
|
|
2
|
-
// MetaPrimaryIdentity and MetaSecondaryIdentity are co-located subtype classes.
|
|
3
|
-
//
|
|
4
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
5
|
-
import { MetaData } from "./meta-data.js";
|
|
6
|
-
import { IDENTITY_SUBTYPE_PRIMARY, IDENTITY_SUBTYPE_SECONDARY, IDENTITY_SUBTYPE_REFERENCE, IDENTITY_ATTR_FIELDS, IDENTITY_ATTR_GENERATION, IDENTITY_ATTR_UNIQUE, IDENTITY_REFERENCE_ATTR_REFERENCES, IDENTITY_REFERENCE_ATTR_ENFORCE, } from "../constants.js";
|
|
7
|
-
export class MetaIdentity extends MetaData {
|
|
8
|
-
get fields() {
|
|
9
|
-
const f = this.ownAttr(IDENTITY_ATTR_FIELDS);
|
|
10
|
-
return Array.isArray(f) ? f : [];
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Whether the identity enforces uniqueness.
|
|
14
|
-
* Defaults to true; explicit `@unique: false` makes it a non-unique index.
|
|
15
|
-
*/
|
|
16
|
-
get unique() {
|
|
17
|
-
return this.ownAttr(IDENTITY_ATTR_UNIQUE) !== false;
|
|
18
|
-
}
|
|
19
|
-
isPrimary() {
|
|
20
|
-
return this.subType === IDENTITY_SUBTYPE_PRIMARY;
|
|
21
|
-
}
|
|
22
|
-
isSecondary() {
|
|
23
|
-
return this.subType === IDENTITY_SUBTYPE_SECONDARY;
|
|
24
|
-
}
|
|
25
|
-
isReference() {
|
|
26
|
-
return this.subType === IDENTITY_SUBTYPE_REFERENCE;
|
|
27
|
-
}
|
|
28
|
-
isComposite() {
|
|
29
|
-
return this.fields.length > 1;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Primary identity (the entity's PK). Always unique by definition.
|
|
34
|
-
* Carries `@generation` (increment / uuid / assigned).
|
|
35
|
-
*/
|
|
36
|
-
export class MetaPrimaryIdentity extends MetaIdentity {
|
|
37
|
-
get generation() {
|
|
38
|
-
const v = this.ownAttr(IDENTITY_ATTR_GENERATION);
|
|
39
|
-
return typeof v === "string" ? v : undefined;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Secondary identity — a unique or non-unique index on one or more fields.
|
|
44
|
-
* `@generation` does not apply here.
|
|
45
|
-
*/
|
|
46
|
-
export class MetaSecondaryIdentity extends MetaIdentity {
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Reference identity — a field (or compound field set) on this entity whose
|
|
50
|
-
* value(s) identify an instance of another entity.
|
|
51
|
-
*
|
|
52
|
-
* Maps to: SQL foreign key, document linked reference, graph edge target,
|
|
53
|
-
* OO pointer/reference. Backend-agnostic at the metamodel level.
|
|
54
|
-
*
|
|
55
|
-
* Carries `@references` — either a bare entity name (defaults to that
|
|
56
|
-
* entity's primary identity) or a dotted `Entity.field` or
|
|
57
|
-
* `Entity.fieldA,fieldB` form for explicit field/compound targets.
|
|
58
|
-
*/
|
|
59
|
-
export class MetaReferenceIdentity extends MetaIdentity {
|
|
60
|
-
/** Raw `@references` attr value, unparsed. */
|
|
61
|
-
get referencesRaw() {
|
|
62
|
-
const v = this.ownAttr(IDENTITY_REFERENCE_ATTR_REFERENCES);
|
|
63
|
-
return typeof v === "string" ? v : undefined;
|
|
64
|
-
}
|
|
65
|
-
/** Target entity name (the bit before the dot, or the whole bare value). */
|
|
66
|
-
get targetEntity() {
|
|
67
|
-
const raw = this.referencesRaw;
|
|
68
|
-
if (raw === undefined)
|
|
69
|
-
return undefined;
|
|
70
|
-
const dotIdx = raw.indexOf(".");
|
|
71
|
-
return dotIdx === -1 ? raw : raw.slice(0, dotIdx);
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Whether the reference is physically enforced by the backend.
|
|
75
|
-
* Default true (hard FK constraint emitted). Explicit `@enforce: false`
|
|
76
|
-
* marks the reference as logical-only — drizzle-schema skips `.references()`
|
|
77
|
-
* and migrate-ts's expected schema omits the FK descriptor. relations()
|
|
78
|
-
* block and projection JOIN inference are unaffected.
|
|
79
|
-
*/
|
|
80
|
-
get enforce() {
|
|
81
|
-
return this.ownAttr(IDENTITY_REFERENCE_ATTR_ENFORCE) !== false;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Target field names. Empty array means "use the target's primary identity"
|
|
85
|
-
* (the bare-entity form). For dotted forms, returns the field(s) after the
|
|
86
|
-
* dot (comma-split, trimmed).
|
|
87
|
-
*/
|
|
88
|
-
get targetFields() {
|
|
89
|
-
const raw = this.referencesRaw;
|
|
90
|
-
if (raw === undefined)
|
|
91
|
-
return [];
|
|
92
|
-
const dotIdx = raw.indexOf(".");
|
|
93
|
-
if (dotIdx === -1)
|
|
94
|
-
return [];
|
|
95
|
-
return raw
|
|
96
|
-
.slice(dotIdx + 1)
|
|
97
|
-
.split(",")
|
|
98
|
-
.map((s) => s.trim())
|
|
99
|
-
.filter((s) => s.length > 0);
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Resolve the target field on the referenced entity that this reference
|
|
103
|
-
* points at. Priority: explicit dotted-form `@references: "Entity.field"`
|
|
104
|
-
* override → target entity's primary identity field → "id" fallback.
|
|
105
|
-
*
|
|
106
|
-
* Returns undefined only if the target entity cannot be found in `root`.
|
|
107
|
-
* Centralizes the FK-target resolution rule used by projection view DDL,
|
|
108
|
-
* Drizzle schema emit, and migration schema comparison.
|
|
109
|
-
*/
|
|
110
|
-
resolvedTargetPkField(root) {
|
|
111
|
-
const explicit = this.targetFields[0];
|
|
112
|
-
if (explicit !== undefined)
|
|
113
|
-
return explicit;
|
|
114
|
-
const targetName = this.targetEntity;
|
|
115
|
-
if (targetName === undefined)
|
|
116
|
-
return undefined;
|
|
117
|
-
const targetObj = root.findObject(targetName);
|
|
118
|
-
if (!targetObj)
|
|
119
|
-
return undefined;
|
|
120
|
-
const primary = targetObj.primaryIdentity();
|
|
121
|
-
const fields = primary?.ownAttr(IDENTITY_ATTR_FIELDS);
|
|
122
|
-
if (typeof fields === "string")
|
|
123
|
-
return fields.split(",")[0].trim();
|
|
124
|
-
if (Array.isArray(fields) && fields.length > 0)
|
|
125
|
-
return String(fields[0]).trim();
|
|
126
|
-
return "id";
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
//# sourceMappingURL=meta-identity.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-identity.js","sourceRoot":"","sources":["../../src/meta/meta-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
import { type SortOrderValue } from "../constants.js";
|
|
3
|
-
export declare class MetaLayout extends MetaData {
|
|
4
|
-
/** The number of rows per page for the dataGrid layout. */
|
|
5
|
-
get pageSize(): number | undefined;
|
|
6
|
-
/** The field name to sort by default in the dataGrid layout. */
|
|
7
|
-
get defaultSortField(): string | undefined;
|
|
8
|
-
/**
|
|
9
|
-
* The default sort order (`"asc"` or `"desc"`) for the dataGrid layout.
|
|
10
|
-
* Returns `undefined` when the attr is absent.
|
|
11
|
-
*/
|
|
12
|
-
get defaultSortOrder(): SortOrderValue | undefined;
|
|
13
|
-
/**
|
|
14
|
-
* True when `@filterable: true` is set on the dataGrid layout.
|
|
15
|
-
* Defaults to `false` when the attr is absent.
|
|
16
|
-
*/
|
|
17
|
-
get filterable(): boolean;
|
|
18
|
-
/** A JSON-encoded preset filter string for the dataGrid layout. */
|
|
19
|
-
get filter(): string | undefined;
|
|
20
|
-
/** The ordered list of field names to display as columns in the dataGrid layout. */
|
|
21
|
-
get columns(): string[];
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=meta-layout.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-layout.d.ts","sourceRoot":"","sources":["../../src/meta/meta-layout.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAOL,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AAEzB,qBAAa,UAAW,SAAQ,QAAQ;IACtC,2DAA2D;IAC3D,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;IAED,gEAAgE;IAChE,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAGzC;IAED;;;OAGG;IACH,IAAI,gBAAgB,IAAI,cAAc,GAAG,SAAS,CAGjD;IAED;;;OAGG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,mEAAmE;IACnE,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAG/B;IAED,oFAAoF;IACpF,IAAI,OAAO,IAAI,MAAM,EAAE,CAGtB;CACF"}
|
package/dist/meta/meta-layout.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
// MetaLayout — concrete node class for type=layout nodes.
|
|
2
|
-
// Object-level UI surfaces (Project E; replaces object-attached data-grid view
|
|
3
|
-
// subtype; views are strictly field-level per Java parity).
|
|
4
|
-
//
|
|
5
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
6
|
-
import { MetaData } from "./meta-data.js";
|
|
7
|
-
import { LAYOUT_DATA_GRID_ATTR_PAGE_SIZE, LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_FIELD, LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER, LAYOUT_DATA_GRID_ATTR_FILTERABLE, LAYOUT_DATA_GRID_ATTR_FILTER, LAYOUT_DATA_GRID_ATTR_COLUMNS, } from "../constants.js";
|
|
8
|
-
export class MetaLayout extends MetaData {
|
|
9
|
-
/** The number of rows per page for the dataGrid layout. */
|
|
10
|
-
get pageSize() {
|
|
11
|
-
const v = this.ownAttr(LAYOUT_DATA_GRID_ATTR_PAGE_SIZE);
|
|
12
|
-
return typeof v === "number" ? v : undefined;
|
|
13
|
-
}
|
|
14
|
-
/** The field name to sort by default in the dataGrid layout. */
|
|
15
|
-
get defaultSortField() {
|
|
16
|
-
const v = this.ownAttr(LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_FIELD);
|
|
17
|
-
return typeof v === "string" ? v : undefined;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* The default sort order (`"asc"` or `"desc"`) for the dataGrid layout.
|
|
21
|
-
* Returns `undefined` when the attr is absent.
|
|
22
|
-
*/
|
|
23
|
-
get defaultSortOrder() {
|
|
24
|
-
const v = this.ownAttr(LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER);
|
|
25
|
-
return typeof v === "string" ? v : undefined;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* True when `@filterable: true` is set on the dataGrid layout.
|
|
29
|
-
* Defaults to `false` when the attr is absent.
|
|
30
|
-
*/
|
|
31
|
-
get filterable() {
|
|
32
|
-
return this.ownAttr(LAYOUT_DATA_GRID_ATTR_FILTERABLE) === true;
|
|
33
|
-
}
|
|
34
|
-
/** A JSON-encoded preset filter string for the dataGrid layout. */
|
|
35
|
-
get filter() {
|
|
36
|
-
const v = this.ownAttr(LAYOUT_DATA_GRID_ATTR_FILTER);
|
|
37
|
-
return typeof v === "string" ? v : undefined;
|
|
38
|
-
}
|
|
39
|
-
/** The ordered list of field names to display as columns in the dataGrid layout. */
|
|
40
|
-
get columns() {
|
|
41
|
-
const c = this.ownAttr(LAYOUT_DATA_GRID_ATTR_COLUMNS);
|
|
42
|
-
return Array.isArray(c) ? c : [];
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=meta-layout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-layout.js","sourceRoot":"","sources":["../../src/meta/meta-layout.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,+EAA+E;AAC/E,4DAA4D;AAC5D,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,+BAA+B,EAC/B,wCAAwC,EACxC,wCAAwC,EACxC,gCAAgC,EAChC,4BAA4B,EAC5B,6BAA6B,GAE9B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,UAAW,SAAQ,QAAQ;IACtC,2DAA2D;IAC3D,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,gEAAgE;IAChE,IAAI,gBAAgB;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,IAAI,gBAAgB;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,KAAK,IAAI,CAAC;IACjE,CAAC;IAED,mEAAmE;IACnE,IAAI,MAAM;QACR,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,oFAAoF;IACpF,IAAI,OAAO;QACT,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
import type { MetaField } from "./meta-field.js";
|
|
3
|
-
import type { MetaIdentity, MetaReferenceIdentity } from "./meta-identity.js";
|
|
4
|
-
import type { MetaLayout } from "./meta-layout.js";
|
|
5
|
-
import type { MetaRelationship } from "./meta-relationship.js";
|
|
6
|
-
import type { MetaValidator } from "./meta-validator.js";
|
|
7
|
-
export declare class MetaObject extends MetaData {
|
|
8
|
-
get dbTable(): string | undefined;
|
|
9
|
-
get javaRuntime(): string | undefined;
|
|
10
|
-
isEntity(): boolean;
|
|
11
|
-
isValue(): boolean;
|
|
12
|
-
/** All effective fields (own + inherited via extends). */
|
|
13
|
-
fields(): MetaField[];
|
|
14
|
-
/** Own fields only — excludes fields inherited via extends. Java parity: getMetaFields(false). */
|
|
15
|
-
ownFields(): MetaField[];
|
|
16
|
-
/** All effective identities (own + inherited via extends). */
|
|
17
|
-
identities(): MetaIdentity[];
|
|
18
|
-
/** Own identities only — excludes inherited. */
|
|
19
|
-
ownIdentities(): MetaIdentity[];
|
|
20
|
-
/** Returns the single primary identity, if any. */
|
|
21
|
-
primaryIdentity(): MetaIdentity | undefined;
|
|
22
|
-
/** Secondary identities. */
|
|
23
|
-
secondaryIdentities(): MetaIdentity[];
|
|
24
|
-
/** Reference identities — fields on this entity that identify another entity. */
|
|
25
|
-
referenceIdentities(): MetaReferenceIdentity[];
|
|
26
|
-
/** All effective relationships (own + inherited via extends). */
|
|
27
|
-
relationships(): MetaRelationship[];
|
|
28
|
-
/** Own relationships only — excludes inherited. */
|
|
29
|
-
ownRelationships(): MetaRelationship[];
|
|
30
|
-
/** All effective validators (own + inherited via extends). */
|
|
31
|
-
validators(): MetaValidator[];
|
|
32
|
-
/** Own validators only — excludes validators inherited via extends. Java parity: getChildren(Class, false). */
|
|
33
|
-
ownValidators(): MetaValidator[];
|
|
34
|
-
/** All effective layouts (own + inherited via extends). */
|
|
35
|
-
layouts(): MetaLayout[];
|
|
36
|
-
/** Own layouts only — excludes inherited. */
|
|
37
|
-
ownLayouts(): MetaLayout[];
|
|
38
|
-
findField(name: string): MetaField | undefined;
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=meta-object.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-object.d.ts","sourceRoot":"","sources":["../../src/meta/meta-object.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAiB1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,qBAAa,UAAW,SAAQ,QAAQ;IACtC,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAQhC;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAGpC;IAED,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;IAIlB,0DAA0D;IAC1D,MAAM,IAAI,SAAS,EAAE;IAMrB,kGAAkG;IAClG,SAAS,IAAI,SAAS,EAAE;IAMxB,8DAA8D;IAC9D,UAAU,IAAI,YAAY,EAAE;IAM5B,gDAAgD;IAChD,aAAa,IAAI,YAAY,EAAE;IAM/B,mDAAmD;IACnD,eAAe,IAAI,YAAY,GAAG,SAAS;IAM3C,4BAA4B;IAC5B,mBAAmB,IAAI,YAAY,EAAE;IAMrC,iFAAiF;IACjF,mBAAmB,IAAI,qBAAqB,EAAE;IAQ9C,iEAAiE;IACjE,aAAa,IAAI,gBAAgB,EAAE;IAMnC,mDAAmD;IACnD,gBAAgB,IAAI,gBAAgB,EAAE;IAMtC,8DAA8D;IAC9D,UAAU,IAAI,aAAa,EAAE;IAM7B,+GAA+G;IAC/G,aAAa,IAAI,aAAa,EAAE;IAMhC,2DAA2D;IAC3D,OAAO,IAAI,UAAU,EAAE;IAMvB,6CAA6C;IAC7C,UAAU,IAAI,UAAU,EAAE;IAM1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;CAK/C"}
|
package/dist/meta/meta-object.js
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
// MetaObject — concrete node class for type=object nodes.
|
|
2
|
-
//
|
|
3
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
4
|
-
// Children are already concrete typed nodes; accessors filter by type constant.
|
|
5
|
-
import { MetaData } from "./meta-data.js";
|
|
6
|
-
import { TYPE_FIELD, TYPE_IDENTITY, TYPE_RELATIONSHIP, TYPE_VALIDATOR, TYPE_SOURCE, TYPE_LAYOUT, SOURCE_SUBTYPE_DB_TABLE, SOURCE_DB_TABLE_ATTR_NAME, OBJECT_SUBTYPE_ENTITY, OBJECT_SUBTYPE_VALUE, IDENTITY_SUBTYPE_PRIMARY, IDENTITY_SUBTYPE_SECONDARY, IDENTITY_SUBTYPE_REFERENCE, OBJECT_ATTR_JAVA_RUNTIME, } from "../constants.js";
|
|
7
|
-
export class MetaObject extends MetaData {
|
|
8
|
-
get dbTable() {
|
|
9
|
-
return this.cached("dbTable", () => {
|
|
10
|
-
const source = this.children().find((c) => c.type === TYPE_SOURCE && c.subType === SOURCE_SUBTYPE_DB_TABLE);
|
|
11
|
-
const name = source?.ownAttr(SOURCE_DB_TABLE_ATTR_NAME);
|
|
12
|
-
return typeof name === "string" && name !== "" ? name : undefined;
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
get javaRuntime() {
|
|
16
|
-
const v = this.ownAttr(OBJECT_ATTR_JAVA_RUNTIME);
|
|
17
|
-
return typeof v === "string" ? v : undefined;
|
|
18
|
-
}
|
|
19
|
-
isEntity() {
|
|
20
|
-
return this.subType === OBJECT_SUBTYPE_ENTITY;
|
|
21
|
-
}
|
|
22
|
-
isValue() {
|
|
23
|
-
return this.subType === OBJECT_SUBTYPE_VALUE;
|
|
24
|
-
}
|
|
25
|
-
/** All effective fields (own + inherited via extends). */
|
|
26
|
-
fields() {
|
|
27
|
-
return this.cached("fields", () => this.children().filter((c) => c.type === TYPE_FIELD));
|
|
28
|
-
}
|
|
29
|
-
/** Own fields only — excludes fields inherited via extends. Java parity: getMetaFields(false). */
|
|
30
|
-
ownFields() {
|
|
31
|
-
return this.cached("ownFields", () => this.ownChildren().filter((c) => c.type === TYPE_FIELD));
|
|
32
|
-
}
|
|
33
|
-
/** All effective identities (own + inherited via extends). */
|
|
34
|
-
identities() {
|
|
35
|
-
return this.cached("identities", () => this.children().filter((c) => c.type === TYPE_IDENTITY));
|
|
36
|
-
}
|
|
37
|
-
/** Own identities only — excludes inherited. */
|
|
38
|
-
ownIdentities() {
|
|
39
|
-
return this.cached("ownIdentities", () => this.ownChildren().filter((c) => c.type === TYPE_IDENTITY));
|
|
40
|
-
}
|
|
41
|
-
/** Returns the single primary identity, if any. */
|
|
42
|
-
primaryIdentity() {
|
|
43
|
-
return this.cached("primaryIdentity", () => this.identities().find((i) => i.subType === IDENTITY_SUBTYPE_PRIMARY));
|
|
44
|
-
}
|
|
45
|
-
/** Secondary identities. */
|
|
46
|
-
secondaryIdentities() {
|
|
47
|
-
return this.cached("secondaryIdentities", () => this.identities().filter((i) => i.subType === IDENTITY_SUBTYPE_SECONDARY));
|
|
48
|
-
}
|
|
49
|
-
/** Reference identities — fields on this entity that identify another entity. */
|
|
50
|
-
referenceIdentities() {
|
|
51
|
-
return this.cached("referenceIdentities", () => this.identities().filter((i) => i.subType === IDENTITY_SUBTYPE_REFERENCE));
|
|
52
|
-
}
|
|
53
|
-
/** All effective relationships (own + inherited via extends). */
|
|
54
|
-
relationships() {
|
|
55
|
-
return this.cached("relationships", () => this.children().filter((c) => c.type === TYPE_RELATIONSHIP));
|
|
56
|
-
}
|
|
57
|
-
/** Own relationships only — excludes inherited. */
|
|
58
|
-
ownRelationships() {
|
|
59
|
-
return this.cached("ownRelationships", () => this.ownChildren().filter((c) => c.type === TYPE_RELATIONSHIP));
|
|
60
|
-
}
|
|
61
|
-
/** All effective validators (own + inherited via extends). */
|
|
62
|
-
validators() {
|
|
63
|
-
return this.cached("validators", () => this.children().filter((c) => c.type === TYPE_VALIDATOR));
|
|
64
|
-
}
|
|
65
|
-
/** Own validators only — excludes validators inherited via extends. Java parity: getChildren(Class, false). */
|
|
66
|
-
ownValidators() {
|
|
67
|
-
return this.cached("ownValidators", () => this.ownChildren().filter((c) => c.type === TYPE_VALIDATOR));
|
|
68
|
-
}
|
|
69
|
-
/** All effective layouts (own + inherited via extends). */
|
|
70
|
-
layouts() {
|
|
71
|
-
return this.cached("layouts", () => this.children().filter((c) => c.type === TYPE_LAYOUT));
|
|
72
|
-
}
|
|
73
|
-
/** Own layouts only — excludes inherited. */
|
|
74
|
-
ownLayouts() {
|
|
75
|
-
return this.cached("ownLayouts", () => this.ownChildren().filter((c) => c.type === TYPE_LAYOUT));
|
|
76
|
-
}
|
|
77
|
-
findField(name) {
|
|
78
|
-
return this.cached(`findField:${name}`, () => this.fields().find((f) => f.name === name));
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=meta-object.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-object.js","sourceRoot":"","sources":["../../src/meta/meta-object.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
import { type AggregateFunction } from "../constants.js";
|
|
3
|
-
export declare class MetaOrigin extends MetaData {
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Passthrough origin — the field's value is sourced directly from a
|
|
7
|
-
* cross-entity field reference (e.g. a projection that forwards Program.title).
|
|
8
|
-
*
|
|
9
|
-
* Carries `@from` (required): the dotted Entity.field reference identifying
|
|
10
|
-
* the source value.
|
|
11
|
-
*/
|
|
12
|
-
export declare class MetaPassthroughOrigin extends MetaOrigin {
|
|
13
|
-
/** The dotted-path cross-entity field reference this origin passes through (e.g. "Program.title"). */
|
|
14
|
-
get from(): string | undefined;
|
|
15
|
-
/** Optional dotted relationship path used to reach the source entity (e.g. "Program.weeks"). */
|
|
16
|
-
get via(): string | undefined;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Aggregate origin — the field's value is computed by aggregating values
|
|
20
|
-
* over a relationship path (count / sum / avg / min / max).
|
|
21
|
-
*
|
|
22
|
-
* Carries `@agg`, `@of`, and `@via` (all required).
|
|
23
|
-
*/
|
|
24
|
-
export declare class MetaAggregateOrigin extends MetaOrigin {
|
|
25
|
-
/** The aggregate function (count | sum | avg | min | max). */
|
|
26
|
-
get agg(): AggregateFunction | undefined;
|
|
27
|
-
/** The dotted-path target of the aggregate (e.g. "Week.id"). */
|
|
28
|
-
get of(): string | undefined;
|
|
29
|
-
/** The dotted relationship path the aggregate walks (e.g. "Program.weeks"). */
|
|
30
|
-
get via(): string | undefined;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=meta-origin.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-origin.d.ts","sourceRoot":"","sources":["../../src/meta/meta-origin.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAML,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AAEzB,qBAAa,UAAW,SAAQ,QAAQ;CAAG;AAE3C;;;;;;GAMG;AACH,qBAAa,qBAAsB,SAAQ,UAAU;IACnD,sGAAsG;IACtG,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAG7B;IAED,gGAAgG;IAChG,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAG5B;CACF;AAED;;;;;GAKG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,8DAA8D;IAC9D,IAAI,GAAG,IAAI,iBAAiB,GAAG,SAAS,CAGvC;IAED,gEAAgE;IAChE,IAAI,EAAE,IAAI,MAAM,GAAG,SAAS,CAG3B;IAED,+EAA+E;IAC/E,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAG5B;CACF"}
|
package/dist/meta/meta-origin.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
// MetaOrigin — concrete node class for type=origin nodes.
|
|
2
|
-
// Field-level provenance (Project E).
|
|
3
|
-
// passthrough / aggregate origin subtypes declare how field values are derived.
|
|
4
|
-
//
|
|
5
|
-
// MetaPassthroughOrigin and MetaAggregateOrigin are co-located subtype classes
|
|
6
|
-
// (mirrors the meta-identity.ts pattern).
|
|
7
|
-
//
|
|
8
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
9
|
-
import { MetaData } from "./meta-data.js";
|
|
10
|
-
import { ORIGIN_PASSTHROUGH_ATTR_FROM, ORIGIN_PASSTHROUGH_ATTR_VIA, ORIGIN_AGGREGATE_ATTR_AGG, ORIGIN_AGGREGATE_ATTR_OF, ORIGIN_AGGREGATE_ATTR_VIA, } from "../constants.js";
|
|
11
|
-
export class MetaOrigin extends MetaData {
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Passthrough origin — the field's value is sourced directly from a
|
|
15
|
-
* cross-entity field reference (e.g. a projection that forwards Program.title).
|
|
16
|
-
*
|
|
17
|
-
* Carries `@from` (required): the dotted Entity.field reference identifying
|
|
18
|
-
* the source value.
|
|
19
|
-
*/
|
|
20
|
-
export class MetaPassthroughOrigin extends MetaOrigin {
|
|
21
|
-
/** The dotted-path cross-entity field reference this origin passes through (e.g. "Program.title"). */
|
|
22
|
-
get from() {
|
|
23
|
-
const v = this.ownAttr(ORIGIN_PASSTHROUGH_ATTR_FROM);
|
|
24
|
-
return typeof v === "string" ? v : undefined;
|
|
25
|
-
}
|
|
26
|
-
/** Optional dotted relationship path used to reach the source entity (e.g. "Program.weeks"). */
|
|
27
|
-
get via() {
|
|
28
|
-
const v = this.ownAttr(ORIGIN_PASSTHROUGH_ATTR_VIA);
|
|
29
|
-
return typeof v === "string" ? v : undefined;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Aggregate origin — the field's value is computed by aggregating values
|
|
34
|
-
* over a relationship path (count / sum / avg / min / max).
|
|
35
|
-
*
|
|
36
|
-
* Carries `@agg`, `@of`, and `@via` (all required).
|
|
37
|
-
*/
|
|
38
|
-
export class MetaAggregateOrigin extends MetaOrigin {
|
|
39
|
-
/** The aggregate function (count | sum | avg | min | max). */
|
|
40
|
-
get agg() {
|
|
41
|
-
const v = this.ownAttr(ORIGIN_AGGREGATE_ATTR_AGG);
|
|
42
|
-
return typeof v === "string" ? v : undefined;
|
|
43
|
-
}
|
|
44
|
-
/** The dotted-path target of the aggregate (e.g. "Week.id"). */
|
|
45
|
-
get of() {
|
|
46
|
-
const v = this.ownAttr(ORIGIN_AGGREGATE_ATTR_OF);
|
|
47
|
-
return typeof v === "string" ? v : undefined;
|
|
48
|
-
}
|
|
49
|
-
/** The dotted relationship path the aggregate walks (e.g. "Program.weeks"). */
|
|
50
|
-
get via() {
|
|
51
|
-
const v = this.ownAttr(ORIGIN_AGGREGATE_ATTR_VIA);
|
|
52
|
-
return typeof v === "string" ? v : undefined;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=meta-origin.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-origin.js","sourceRoot":"","sources":["../../src/meta/meta-origin.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,sCAAsC;AACtC,gFAAgF;AAChF,EAAE;AACF,+EAA+E;AAC/E,0CAA0C;AAC1C,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAE1B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,UAAW,SAAQ,QAAQ;CAAG;AAE3C;;;;;;GAMG;AACH,MAAM,OAAO,qBAAsB,SAAQ,UAAU;IACnD,sGAAsG;IACtG,IAAI,IAAI;QACN,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,gGAAgG;IAChG,IAAI,GAAG;QACL,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,UAAU;IACjD,8DAA8D;IAC9D,IAAI,GAAG;QACL,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAuB,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,CAAC;IAED,gEAAgE;IAChE,IAAI,EAAE;QACJ,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,+EAA+E;IAC/E,IAAI,GAAG;QACL,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
export declare class MetaRelationship extends MetaData {
|
|
3
|
-
get cardinality(): string | undefined;
|
|
4
|
-
/** FQN of the target object (e.g., "acme::vehicle::Car"). */
|
|
5
|
-
get objectRef(): string | undefined;
|
|
6
|
-
/** Join-table entity name for N:M relationships. */
|
|
7
|
-
get joinEntity(): string | undefined;
|
|
8
|
-
/** Join-table column names for N:M relationships. */
|
|
9
|
-
get joinFields(): string[];
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=meta-relationship.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-relationship.d.ts","sourceRoot":"","sources":["../../src/meta/meta-relationship.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAQ1C,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAGpC;IAED,6DAA6D;IAC7D,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAGlC;IAED,oDAAoD;IACpD,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAGnC;IAED,qDAAqD;IACrD,IAAI,UAAU,IAAI,MAAM,EAAE,CAGzB;CACF"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
// MetaRelationship — concrete node class for type=relationship nodes.
|
|
2
|
-
//
|
|
3
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
4
|
-
import { MetaData } from "./meta-data.js";
|
|
5
|
-
import { RELATIONSHIP_ATTR_CARDINALITY, RELATIONSHIP_ATTR_OBJECT_REF, RELATIONSHIP_ATTR_JOIN_ENTITY, RELATIONSHIP_ATTR_JOIN_FIELDS, } from "../constants.js";
|
|
6
|
-
export class MetaRelationship extends MetaData {
|
|
7
|
-
get cardinality() {
|
|
8
|
-
const v = this.ownAttr(RELATIONSHIP_ATTR_CARDINALITY);
|
|
9
|
-
return typeof v === "string" ? v : undefined;
|
|
10
|
-
}
|
|
11
|
-
/** FQN of the target object (e.g., "acme::vehicle::Car"). */
|
|
12
|
-
get objectRef() {
|
|
13
|
-
const v = this.ownAttr(RELATIONSHIP_ATTR_OBJECT_REF);
|
|
14
|
-
return typeof v === "string" ? v : undefined;
|
|
15
|
-
}
|
|
16
|
-
/** Join-table entity name for N:M relationships. */
|
|
17
|
-
get joinEntity() {
|
|
18
|
-
const v = this.ownAttr(RELATIONSHIP_ATTR_JOIN_ENTITY);
|
|
19
|
-
return typeof v === "string" ? v : undefined;
|
|
20
|
-
}
|
|
21
|
-
/** Join-table column names for N:M relationships. */
|
|
22
|
-
get joinFields() {
|
|
23
|
-
const f = this.ownAttr(RELATIONSHIP_ATTR_JOIN_FIELDS);
|
|
24
|
-
return Array.isArray(f) ? f : [];
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=meta-relationship.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-relationship.js","sourceRoot":"","sources":["../../src/meta/meta-relationship.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW;QACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,6DAA6D;IAC7D,IAAI,SAAS;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,oDAAoD;IACpD,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,qDAAqD;IACrD,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACtD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAc,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,CAAC;CACF"}
|
package/dist/meta/meta-root.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
import type { MetaObject } from "./meta-object.js";
|
|
3
|
-
import type { MetaField } from "./meta-field.js";
|
|
4
|
-
export declare class MetaRoot extends MetaData {
|
|
5
|
-
/** Object entities defined at this root level. */
|
|
6
|
-
objects(): MetaObject[];
|
|
7
|
-
/** Abstract / package-level fields defined at root (rare; e.g. shared id fields). */
|
|
8
|
-
fields(): MetaField[];
|
|
9
|
-
/** Find an object by name. */
|
|
10
|
-
findObject(name: string): MetaObject | undefined;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=meta-root.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-root.d.ts","sourceRoot":"","sources":["../../src/meta/meta-root.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,QAAS,SAAQ,QAAQ;IACpC,kDAAkD;IAClD,OAAO,IAAI,UAAU,EAAE;IAMvB,qFAAqF;IACrF,MAAM,IAAI,SAAS,EAAE;IAMrB,8BAA8B;IAC9B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;CAMjD"}
|
package/dist/meta/meta-root.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
// MetaRoot — concrete node class for the type=metadata root node.
|
|
2
|
-
//
|
|
3
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
4
|
-
// Children are already concrete typed nodes; accessors filter by type constant.
|
|
5
|
-
import { MetaData } from "./meta-data.js";
|
|
6
|
-
import { TYPE_OBJECT, TYPE_FIELD } from "../constants.js";
|
|
7
|
-
export class MetaRoot extends MetaData {
|
|
8
|
-
/** Object entities defined at this root level. */
|
|
9
|
-
objects() {
|
|
10
|
-
return this.cached("objects", () => this.ownChildren().filter((c) => c.type === TYPE_OBJECT));
|
|
11
|
-
}
|
|
12
|
-
/** Abstract / package-level fields defined at root (rare; e.g. shared id fields). */
|
|
13
|
-
fields() {
|
|
14
|
-
return this.cached("fields", () => this.ownChildren().filter((c) => c.type === TYPE_FIELD));
|
|
15
|
-
}
|
|
16
|
-
/** Find an object by name. */
|
|
17
|
-
findObject(name) {
|
|
18
|
-
return this.cached(`findObject:${name}`, () => {
|
|
19
|
-
const child = this.ownChildByTypeAndName(TYPE_OBJECT, name);
|
|
20
|
-
return child !== undefined ? child : undefined;
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=meta-root.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-root.js","sourceRoot":"","sources":["../../src/meta/meta-root.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,wEAAwE;AACxE,gFAAgF;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI1D,MAAM,OAAO,QAAS,SAAQ,QAAQ;IACpC,kDAAkD;IAClD,OAAO;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CACjC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED,qFAAqF;IACrF,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAChC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CACxE,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,EAAE,GAAG,EAAE;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC5D,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAE,KAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
export declare class MetaSource extends MetaData {
|
|
3
|
-
/** The SQL table or view name (value of @name attr on the source child). */
|
|
4
|
-
get sourceName(): string | undefined;
|
|
5
|
-
/**
|
|
6
|
-
* True when this source is a `dbTable` (writable).
|
|
7
|
-
* Explicitly defined rather than derived from `isReadOnly()` so it remains
|
|
8
|
-
* correct if a third source subtype is added in the future.
|
|
9
|
-
*/
|
|
10
|
-
isWritable(): boolean;
|
|
11
|
-
/**
|
|
12
|
-
* True when this source is a `dbView` (read-only projection).
|
|
13
|
-
* Explicitly defined rather than derived from `isWritable()` so it remains
|
|
14
|
-
* correct if a third source subtype is added in the future.
|
|
15
|
-
*/
|
|
16
|
-
isReadOnly(): boolean;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=meta-source.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-source.d.ts","sourceRoot":"","sources":["../../src/meta/meta-source.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,qBAAa,UAAW,SAAQ,QAAQ;IACtC,4EAA4E;IAC5E,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAGnC;IAED;;;;OAIG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;OAIG;IACH,UAAU,IAAI,OAAO;CAGtB"}
|
package/dist/meta/meta-source.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
// MetaSource — concrete node class for type=source nodes.
|
|
2
|
-
// Declares where an object's data lives (Project E).
|
|
3
|
-
// dbTable / dbView source subtypes declare the SQL table or view name.
|
|
4
|
-
//
|
|
5
|
-
// Extends MetaData directly: no model wrapper, no metaOf() indirection.
|
|
6
|
-
import { MetaData } from "./meta-data.js";
|
|
7
|
-
import { SOURCE_ATTR_NAME, SOURCE_SUBTYPE_DB_TABLE, SOURCE_SUBTYPE_DB_VIEW, } from "../constants.js";
|
|
8
|
-
export class MetaSource extends MetaData {
|
|
9
|
-
/** The SQL table or view name (value of @name attr on the source child). */
|
|
10
|
-
get sourceName() {
|
|
11
|
-
const v = this.ownAttr(SOURCE_ATTR_NAME);
|
|
12
|
-
return typeof v === "string" ? v : undefined;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* True when this source is a `dbTable` (writable).
|
|
16
|
-
* Explicitly defined rather than derived from `isReadOnly()` so it remains
|
|
17
|
-
* correct if a third source subtype is added in the future.
|
|
18
|
-
*/
|
|
19
|
-
isWritable() {
|
|
20
|
-
return this.subType === SOURCE_SUBTYPE_DB_TABLE;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* True when this source is a `dbView` (read-only projection).
|
|
24
|
-
* Explicitly defined rather than derived from `isWritable()` so it remains
|
|
25
|
-
* correct if a third source subtype is added in the future.
|
|
26
|
-
*/
|
|
27
|
-
isReadOnly() {
|
|
28
|
-
return this.subType === SOURCE_SUBTYPE_DB_VIEW;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=meta-source.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"meta-source.js","sourceRoot":"","sources":["../../src/meta/meta-source.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,qDAAqD;AACrD,uEAAuE;AACvE,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,OAAO,UAAW,SAAQ,QAAQ;IACtC,4EAA4E;IAC5E,IAAI,UAAU;QACZ,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,KAAK,uBAAuB,CAAC;IAClD,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,KAAK,sBAAsB,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { MetaData } from "./meta-data.js";
|
|
2
|
-
export declare class MetaValidator extends MetaData {
|
|
3
|
-
/**
|
|
4
|
-
* Numeric range — shared by length, numeric, and array validators.
|
|
5
|
-
* (Pattern moves to MetaRegexValidator; required validators have no extra attrs.)
|
|
6
|
-
*/
|
|
7
|
-
get min(): number | undefined;
|
|
8
|
-
get max(): number | undefined;
|
|
9
|
-
isRequired(): boolean;
|
|
10
|
-
isLength(): boolean;
|
|
11
|
-
isRegex(): boolean;
|
|
12
|
-
}
|
|
13
|
-
/** Required validator (no extra attrs; subtype class exists for instanceof narrowing). */
|
|
14
|
-
export declare class MetaRequiredValidator extends MetaValidator {
|
|
15
|
-
}
|
|
16
|
-
/** Length validator: min/max are string/array length bounds. */
|
|
17
|
-
export declare class MetaLengthValidator extends MetaValidator {
|
|
18
|
-
}
|
|
19
|
-
/** Regex validator: carries the pattern. */
|
|
20
|
-
export declare class MetaRegexValidator extends MetaValidator {
|
|
21
|
-
get pattern(): string | undefined;
|
|
22
|
-
}
|
|
23
|
-
/** Numeric validator: min/max are value bounds. */
|
|
24
|
-
export declare class MetaNumericValidator extends MetaValidator {
|
|
25
|
-
}
|
|
26
|
-
/** Array validator: min/max are element-count bounds. */
|
|
27
|
-
export declare class MetaArrayValidator extends MetaValidator {
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=meta-validator.d.ts.map
|