@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
package/src/serializer-json.ts
CHANGED
|
@@ -25,6 +25,16 @@ import {
|
|
|
25
25
|
ATTR_SUBTYPE_BOOLEAN,
|
|
26
26
|
ATTR_SUBTYPE_STRINGARRAY,
|
|
27
27
|
} from "./core/attr/attr-constants.js";
|
|
28
|
+
import {
|
|
29
|
+
SOURCE_SUBTYPE_RDB,
|
|
30
|
+
SOURCE_ATTR_KIND,
|
|
31
|
+
SOURCE_ATTR_TABLE,
|
|
32
|
+
DEFAULT_SOURCE_KIND,
|
|
33
|
+
PHYSICAL_NAME_ATTR_BY_KIND,
|
|
34
|
+
} from "./persistence/source/source-constants.js";
|
|
35
|
+
import { TYPE_SOURCE } from "./shared/base-types.js";
|
|
36
|
+
|
|
37
|
+
const SOURCE_RDB_FUSED_KEY = `${TYPE_SOURCE}${TYPE_SUBTYPE_SEPARATOR}${SOURCE_SUBTYPE_RDB}`;
|
|
28
38
|
|
|
29
39
|
// ---------------------------------------------------------------------------
|
|
30
40
|
// Public API
|
|
@@ -153,6 +163,10 @@ export function canonicalSerialize(model: MetaData): string {
|
|
|
153
163
|
const raw = serializeJson(model, { indent: 2 });
|
|
154
164
|
|
|
155
165
|
const parsed = JSON.parse(raw) as unknown;
|
|
166
|
+
// FR-016 / ADR-0018: rewrite legacy @table → kind-matching alias on source.rdb
|
|
167
|
+
// wrappers (run before alphabetical sort so the rewritten key sorts in its
|
|
168
|
+
// canonical position).
|
|
169
|
+
rewriteSourceRdbPhysicalNames(parsed);
|
|
156
170
|
const sorted = sortAttrKeys(parsed);
|
|
157
171
|
const out = JSON.stringify(sorted, null, 2);
|
|
158
172
|
|
|
@@ -170,12 +184,48 @@ export function canonicalSerializeEffective(model: MetaData): string {
|
|
|
170
184
|
const raw = JSON.stringify(nodeObj, null, 2);
|
|
171
185
|
|
|
172
186
|
const parsed = JSON.parse(raw) as unknown;
|
|
187
|
+
rewriteSourceRdbPhysicalNames(parsed);
|
|
173
188
|
const sorted = sortAttrKeys(parsed);
|
|
174
189
|
const out = JSON.stringify(sorted, null, 2);
|
|
175
190
|
|
|
176
191
|
return out + "\n";
|
|
177
192
|
}
|
|
178
193
|
|
|
194
|
+
/**
|
|
195
|
+
* FR-016 / ADR-0018 — when a source.rdb wrapper carries @table with a non-table
|
|
196
|
+
* @kind (the pre-1.0 legacy spelling), rewrite the attr key in place to the
|
|
197
|
+
* kind-matching alias (@view / @materializedView / @proc / @function). Mutates
|
|
198
|
+
* the parsed JSON in place; idempotent and a no-op for canonical inputs.
|
|
199
|
+
*/
|
|
200
|
+
function rewriteSourceRdbPhysicalNames(value: unknown): void {
|
|
201
|
+
if (Array.isArray(value)) {
|
|
202
|
+
for (const item of value) rewriteSourceRdbPhysicalNames(item);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
if (value === null || typeof value !== "object") return;
|
|
206
|
+
|
|
207
|
+
const obj = value as Record<string, unknown>;
|
|
208
|
+
const rdbBody = obj[SOURCE_RDB_FUSED_KEY];
|
|
209
|
+
if (rdbBody !== undefined && rdbBody !== null && typeof rdbBody === "object" && !Array.isArray(rdbBody)) {
|
|
210
|
+
const body = rdbBody as Record<string, unknown>;
|
|
211
|
+
const kindRaw = body[`${ATTR_PREFIX}${SOURCE_ATTR_KIND}`];
|
|
212
|
+
const kind = typeof kindRaw === "string" && kindRaw !== "" ? kindRaw : DEFAULT_SOURCE_KIND;
|
|
213
|
+
const canonical = PHYSICAL_NAME_ATTR_BY_KIND.get(kind);
|
|
214
|
+
if (canonical !== undefined && canonical !== SOURCE_ATTR_TABLE) {
|
|
215
|
+
const legacyKey = `${ATTR_PREFIX}${SOURCE_ATTR_TABLE}`;
|
|
216
|
+
const canonicalKey = `${ATTR_PREFIX}${canonical}`;
|
|
217
|
+
const legacyValue = body[legacyKey];
|
|
218
|
+
if (legacyValue !== undefined && body[canonicalKey] === undefined) {
|
|
219
|
+
body[canonicalKey] = legacyValue;
|
|
220
|
+
delete body[legacyKey];
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
// Recurse through every value (in particular `children`).
|
|
226
|
+
for (const v of Object.values(obj)) rewriteSourceRdbPhysicalNames(v);
|
|
227
|
+
}
|
|
228
|
+
|
|
179
229
|
function sortAttrKeys(value: unknown): unknown {
|
|
180
230
|
if (Array.isArray(value)) {
|
|
181
231
|
return value.map(sortAttrKeys);
|
|
@@ -41,6 +41,29 @@ export const TEMPLATE_ATTR_SINCE = "since";
|
|
|
41
41
|
// carry a tag contract a downstream parser depends on.
|
|
42
42
|
export const TEMPLATE_ATTR_REQUIRED_TAGS = "requiredTags";
|
|
43
43
|
|
|
44
|
+
// --- @kind + email part-refs (template.output only) ---
|
|
45
|
+
//
|
|
46
|
+
// A template.output is either a plain document (renders @textRef in @format → one
|
|
47
|
+
// string) or an email (renders subject + html + optional text → a structured
|
|
48
|
+
// EmailDocument). @kind is a closed enum; the email part-refs are 2-layer logical
|
|
49
|
+
// (group/source) textRefs resolved by a provider at render time, like @textRef.
|
|
50
|
+
// Cross-field rules live in the loader validation pass (validateTemplatePayloadRefs):
|
|
51
|
+
// - @kind="email" → require @subjectRef AND @htmlBodyRef (textRef unused; @textBodyRef optional)
|
|
52
|
+
// - @kind="document" / absent → require @textRef
|
|
53
|
+
export const TEMPLATE_ATTR_KIND = "kind";
|
|
54
|
+
export const TEMPLATE_KIND_DOCUMENT = "document";
|
|
55
|
+
export const TEMPLATE_KIND_EMAIL = "email";
|
|
56
|
+
export const TEMPLATE_KIND_DEFAULT = TEMPLATE_KIND_DOCUMENT;
|
|
57
|
+
export const TEMPLATE_KINDS = [
|
|
58
|
+
TEMPLATE_KIND_DOCUMENT,
|
|
59
|
+
TEMPLATE_KIND_EMAIL,
|
|
60
|
+
] as const;
|
|
61
|
+
export type TemplateKind = (typeof TEMPLATE_KINDS)[number];
|
|
62
|
+
|
|
63
|
+
export const TEMPLATE_ATTR_SUBJECT_REF = "subjectRef";
|
|
64
|
+
export const TEMPLATE_ATTR_HTML_BODY_REF = "htmlBodyRef";
|
|
65
|
+
export const TEMPLATE_ATTR_TEXT_BODY_REF = "textBodyRef";
|
|
66
|
+
|
|
44
67
|
// Prompt-overlay attrs (template.prompt only).
|
|
45
68
|
export const TEMPLATE_ATTR_MAX_TOKENS = "maxTokens";
|
|
46
69
|
export const TEMPLATE_ATTR_REQUIRED_SLOTS = "requiredSlots";
|
|
@@ -32,6 +32,12 @@ import {
|
|
|
32
32
|
TEMPLATE_ATTR_PROMPT_STYLE,
|
|
33
33
|
PROMPT_STYLE_DEFAULT,
|
|
34
34
|
PROMPT_STYLES,
|
|
35
|
+
TEMPLATE_ATTR_KIND,
|
|
36
|
+
TEMPLATE_KINDS,
|
|
37
|
+
TEMPLATE_KIND_DEFAULT,
|
|
38
|
+
TEMPLATE_ATTR_SUBJECT_REF,
|
|
39
|
+
TEMPLATE_ATTR_HTML_BODY_REF,
|
|
40
|
+
TEMPLATE_ATTR_TEXT_BODY_REF,
|
|
35
41
|
} from "./template-constants.js";
|
|
36
42
|
|
|
37
43
|
// Generic attrs shared by template.prompt and template.output.
|
|
@@ -45,7 +51,12 @@ const genericAttrs: AttrSchema[] = [
|
|
|
45
51
|
{
|
|
46
52
|
name: TEMPLATE_ATTR_TEXT_REF,
|
|
47
53
|
valueType: ATTR_SUBTYPE_STRING,
|
|
48
|
-
|
|
54
|
+
// Relaxed to optional at the schema level: a template.output with @kind="email"
|
|
55
|
+
// renders subject/html/text parts and carries NO @textRef. The presence rule is
|
|
56
|
+
// enforced conditionally in the loader (validateTemplatePayloadRefs): document /
|
|
57
|
+
// prompt require @textRef; email does not. template.prompt's @textRef requirement
|
|
58
|
+
// is likewise enforced there.
|
|
59
|
+
required: false,
|
|
49
60
|
description: "2-layer logical reference (group/source) to the body text, resolved by a provider at render time.",
|
|
50
61
|
},
|
|
51
62
|
{
|
|
@@ -94,6 +105,42 @@ const promptStyleAttr: AttrSchema = {
|
|
|
94
105
|
"FR-010 output-format prompt presentation: 'guide' (prose list + example), 'inline' (inline placeholders / enum choices), or 'exampleOnly' (filled skeleton). Guidance is never emitted as comments.",
|
|
95
106
|
};
|
|
96
107
|
|
|
108
|
+
// @kind + email part-refs (template.output only).
|
|
109
|
+
//
|
|
110
|
+
// @kind is a closed enum (document|email), default "document", enforced via
|
|
111
|
+
// allowedValues exactly like @format / @promptStyle. The 3 part-refs are optional
|
|
112
|
+
// 2-layer logical (group/source) textRefs; their conditional presence (email needs
|
|
113
|
+
// @subjectRef + @htmlBodyRef) is enforced in the loader validation pass.
|
|
114
|
+
const outputKindAttrs: AttrSchema[] = [
|
|
115
|
+
{
|
|
116
|
+
name: TEMPLATE_ATTR_KIND,
|
|
117
|
+
valueType: ATTR_SUBTYPE_STRING,
|
|
118
|
+
required: false,
|
|
119
|
+
default: TEMPLATE_KIND_DEFAULT,
|
|
120
|
+
allowedValues: [...TEMPLATE_KINDS],
|
|
121
|
+
description:
|
|
122
|
+
"Output shape: 'document' (renders @textRef in @format → one string) or 'email' (renders subject + html + optional text → a structured EmailDocument).",
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
name: TEMPLATE_ATTR_SUBJECT_REF,
|
|
126
|
+
valueType: ATTR_SUBTYPE_STRING,
|
|
127
|
+
required: false,
|
|
128
|
+
description: "Email only: 2-layer logical reference (group/source) to the subject-line text. Required when @kind=\"email\".",
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
name: TEMPLATE_ATTR_HTML_BODY_REF,
|
|
132
|
+
valueType: ATTR_SUBTYPE_STRING,
|
|
133
|
+
required: false,
|
|
134
|
+
description: "Email only: 2-layer logical reference (group/source) to the HTML body text. Required when @kind=\"email\".",
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
name: TEMPLATE_ATTR_TEXT_BODY_REF,
|
|
138
|
+
valueType: ATTR_SUBTYPE_STRING,
|
|
139
|
+
required: false,
|
|
140
|
+
description: "Email only: 2-layer logical reference (group/source) to the optional plain-text alternative body.",
|
|
141
|
+
},
|
|
142
|
+
];
|
|
143
|
+
|
|
97
144
|
// LLM-overlay attrs (template.prompt only).
|
|
98
145
|
const promptOverlayAttrs: AttrSchema[] = [
|
|
99
146
|
{
|
|
@@ -159,6 +206,6 @@ const toolcallAttrs: AttrSchema[] = [
|
|
|
159
206
|
export const TEMPLATE_ATTRS_MAP = new Map<string, AttrSchema[]>([
|
|
160
207
|
[SUBTYPE_BASE, []],
|
|
161
208
|
[TEMPLATE_SUBTYPE_PROMPT, [...genericAttrs, ...promptOverlayAttrs]],
|
|
162
|
-
[TEMPLATE_SUBTYPE_OUTPUT, [...genericAttrs, promptStyleAttr]],
|
|
209
|
+
[TEMPLATE_SUBTYPE_OUTPUT, [...genericAttrs, promptStyleAttr, ...outputKindAttrs]],
|
|
163
210
|
[TEMPLATE_SUBTYPE_TOOLCALL, [...toolcallAttrs]],
|
|
164
211
|
]);
|
package/dist/constants.d.ts
DELETED
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
export declare const TYPE_METADATA = "metadata";
|
|
2
|
-
export declare const TYPE_OBJECT = "object";
|
|
3
|
-
export declare const TYPE_FIELD = "field";
|
|
4
|
-
export declare const TYPE_ATTR = "attr";
|
|
5
|
-
export declare const TYPE_VALIDATOR = "validator";
|
|
6
|
-
export declare const TYPE_VIEW = "view";
|
|
7
|
-
export declare const TYPE_IDENTITY = "identity";
|
|
8
|
-
export declare const TYPE_RELATIONSHIP = "relationship";
|
|
9
|
-
export declare const TYPE_LAYOUT = "layout";
|
|
10
|
-
export declare const TYPE_SOURCE = "source";
|
|
11
|
-
export declare const TYPE_ORIGIN = "origin";
|
|
12
|
-
export declare const BASE_TYPES: readonly ["metadata", "object", "field", "attr", "validator", "view", "identity", "relationship", "layout", "source", "origin"];
|
|
13
|
-
export type BaseType = (typeof BASE_TYPES)[number];
|
|
14
|
-
export declare const SUBTYPE_BASE = "base";
|
|
15
|
-
/**
|
|
16
|
-
* The metadata document root subtype. The root node is `metadata.root` in the
|
|
17
|
-
* canonical format. (Distinct from the universal SUBTYPE_BASE — the redesigned
|
|
18
|
-
* format spec confirms the root subtype is `root`, not `base`.)
|
|
19
|
-
*/
|
|
20
|
-
export declare const SUBTYPE_ROOT = "root";
|
|
21
|
-
export declare const METADATA_SUBTYPES: readonly ["root"];
|
|
22
|
-
export type MetadataSubType = (typeof METADATA_SUBTYPES)[number];
|
|
23
|
-
export declare const OBJECT_SUBTYPE_ENTITY = "entity";
|
|
24
|
-
export declare const OBJECT_SUBTYPE_VALUE = "value";
|
|
25
|
-
export declare const OBJECT_SUBTYPES: readonly ["base", "entity", "value"];
|
|
26
|
-
export type ObjectSubType = (typeof OBJECT_SUBTYPES)[number];
|
|
27
|
-
export declare const FIELD_SUBTYPE_STRING = "string";
|
|
28
|
-
export declare const FIELD_SUBTYPE_INT = "int";
|
|
29
|
-
export declare const FIELD_SUBTYPE_SHORT = "short";
|
|
30
|
-
export declare const FIELD_SUBTYPE_BYTE = "byte";
|
|
31
|
-
export declare const FIELD_SUBTYPE_LONG = "long";
|
|
32
|
-
export declare const FIELD_SUBTYPE_DOUBLE = "double";
|
|
33
|
-
export declare const FIELD_SUBTYPE_FLOAT = "float";
|
|
34
|
-
export declare const FIELD_SUBTYPE_DECIMAL = "decimal";
|
|
35
|
-
export declare const FIELD_SUBTYPE_BOOLEAN = "boolean";
|
|
36
|
-
export declare const FIELD_SUBTYPE_DATE = "date";
|
|
37
|
-
export declare const FIELD_SUBTYPE_TIME = "time";
|
|
38
|
-
export declare const FIELD_SUBTYPE_TIMESTAMP = "timestamp";
|
|
39
|
-
export declare const FIELD_SUBTYPE_OBJECT = "object";
|
|
40
|
-
export declare const FIELD_SUBTYPE_CLASS = "class";
|
|
41
|
-
export declare const FIELD_SUBTYPE_CURRENCY = "currency";
|
|
42
|
-
export declare const FIELD_SUBTYPES: readonly ["base", "string", "int", "short", "byte", "long", "double", "float", "decimal", "boolean", "date", "time", "timestamp", "object", "class", "currency"];
|
|
43
|
-
export type FieldSubType = (typeof FIELD_SUBTYPES)[number];
|
|
44
|
-
export declare const ATTR_SUBTYPE_STRING = "string";
|
|
45
|
-
export declare const ATTR_SUBTYPE_INT = "int";
|
|
46
|
-
export declare const ATTR_SUBTYPE_LONG = "long";
|
|
47
|
-
export declare const ATTR_SUBTYPE_DOUBLE = "double";
|
|
48
|
-
export declare const ATTR_SUBTYPE_BOOLEAN = "boolean";
|
|
49
|
-
export declare const ATTR_SUBTYPE_CLASS = "class";
|
|
50
|
-
export declare const ATTR_SUBTYPE_PROPERTIES = "properties";
|
|
51
|
-
export declare const ATTR_SUBTYPE_STRINGARRAY = "stringarray";
|
|
52
|
-
export declare const ATTR_SUBTYPES: readonly ["base", "string", "int", "long", "double", "boolean", "class", "properties", "stringarray"];
|
|
53
|
-
export type AttrSubType = (typeof ATTR_SUBTYPES)[number];
|
|
54
|
-
export declare const VALIDATOR_SUBTYPE_REQUIRED = "required";
|
|
55
|
-
export declare const VALIDATOR_SUBTYPE_LENGTH = "length";
|
|
56
|
-
export declare const VALIDATOR_SUBTYPE_REGEX = "regex";
|
|
57
|
-
export declare const VALIDATOR_SUBTYPE_NUMERIC = "numeric";
|
|
58
|
-
export declare const VALIDATOR_SUBTYPE_ARRAY = "array";
|
|
59
|
-
export declare const VALIDATOR_SUBTYPES: readonly ["base", "required", "length", "regex", "numeric", "array"];
|
|
60
|
-
export type ValidatorSubType = (typeof VALIDATOR_SUBTYPES)[number];
|
|
61
|
-
export declare const VIEW_SUBTYPE_TEXT = "text";
|
|
62
|
-
export declare const VIEW_SUBTYPE_TEXTAREA = "textarea";
|
|
63
|
-
export declare const VIEW_SUBTYPE_DATE = "date";
|
|
64
|
-
export declare const VIEW_SUBTYPE_MONTH = "month";
|
|
65
|
-
export declare const VIEW_SUBTYPE_HOTLINK = "hotlink";
|
|
66
|
-
export declare const VIEW_SUBTYPE_DROPDOWN = "dropdown";
|
|
67
|
-
export declare const VIEW_SUBTYPE_RADIO = "radio";
|
|
68
|
-
export declare const VIEW_SUBTYPE_CHECKBOX = "checkbox";
|
|
69
|
-
export declare const VIEW_SUBTYPE_NUMBER = "number";
|
|
70
|
-
export declare const VIEW_SUBTYPE_PASSWORD = "password";
|
|
71
|
-
export declare const VIEW_SUBTYPE_HIDDEN = "hidden";
|
|
72
|
-
export declare const VIEW_SUBTYPE_WEB = "web";
|
|
73
|
-
export declare const VIEW_SUBTYPE_CURRENCY = "currency";
|
|
74
|
-
export declare const VIEW_SUBTYPES: readonly ["base", "text", "textarea", "date", "month", "hotlink", "dropdown", "radio", "checkbox", "number", "password", "hidden", "web", "currency"];
|
|
75
|
-
export type ViewSubType = (typeof VIEW_SUBTYPES)[number];
|
|
76
|
-
export declare const LAYOUT_SUBTYPE_DATA_GRID = "dataGrid";
|
|
77
|
-
export declare const LAYOUT_SUBTYPES: readonly ["base", "dataGrid"];
|
|
78
|
-
export type LayoutSubType = (typeof LAYOUT_SUBTYPES)[number];
|
|
79
|
-
export declare const LAYOUT_DATA_GRID_ATTR_PAGE_SIZE = "pageSize";
|
|
80
|
-
export declare const LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_FIELD = "defaultSortField";
|
|
81
|
-
export declare const LAYOUT_DATA_GRID_ATTR_DEFAULT_SORT_ORDER = "defaultSortOrder";
|
|
82
|
-
export declare const LAYOUT_DATA_GRID_ATTR_FILTERABLE = "filterable";
|
|
83
|
-
export declare const LAYOUT_DATA_GRID_ATTR_FILTER = "filter";
|
|
84
|
-
export declare const LAYOUT_DATA_GRID_ATTR_COLUMNS = "columns";
|
|
85
|
-
/** BCP 47 locale code on a view[currency]. Defaults to "en-US" when omitted. */
|
|
86
|
-
export declare const VIEW_CURRENCY_ATTR_LOCALE = "locale";
|
|
87
|
-
/** Default BCP 47 locale code when @locale is omitted on a view[currency]. */
|
|
88
|
-
export declare const VIEW_CURRENCY_ATTR_LOCALE_DEFAULT = "en-US";
|
|
89
|
-
export declare const IDENTITY_SUBTYPE_PRIMARY = "primary";
|
|
90
|
-
export declare const IDENTITY_SUBTYPE_SECONDARY = "secondary";
|
|
91
|
-
export declare const IDENTITY_SUBTYPE_REFERENCE = "reference";
|
|
92
|
-
export declare const IDENTITY_SUBTYPES: readonly ["primary", "secondary", "reference"];
|
|
93
|
-
export type IdentitySubType = (typeof IDENTITY_SUBTYPES)[number];
|
|
94
|
-
export declare const RELATIONSHIP_SUBTYPE_ASSOCIATION = "association";
|
|
95
|
-
export declare const RELATIONSHIP_SUBTYPE_AGGREGATION = "aggregation";
|
|
96
|
-
export declare const RELATIONSHIP_SUBTYPE_COMPOSITION = "composition";
|
|
97
|
-
export declare const RELATIONSHIP_SUBTYPES: readonly ["base", "association", "aggregation", "composition"];
|
|
98
|
-
export type RelationshipSubType = (typeof RELATIONSHIP_SUBTYPES)[number];
|
|
99
|
-
export declare const RESERVED_KEY_NAME = "name";
|
|
100
|
-
export declare const RESERVED_KEY_PACKAGE = "package";
|
|
101
|
-
export declare const RESERVED_KEY_EXTENDS = "extends";
|
|
102
|
-
export declare const RESERVED_KEY_ABSTRACT = "abstract";
|
|
103
|
-
export declare const RESERVED_KEY_OVERLAY = "overlay";
|
|
104
|
-
export declare const RESERVED_KEY_IS_ARRAY = "isArray";
|
|
105
|
-
export declare const RESERVED_KEY_CHILDREN = "children";
|
|
106
|
-
/** attr-child-node body key carrying the typed value. */
|
|
107
|
-
export declare const RESERVED_KEY_VALUE = "value";
|
|
108
|
-
export declare const RESERVED_KEYS: Set<string>;
|
|
109
|
-
export declare const JSON_KEY_SCHEMA = "$schema";
|
|
110
|
-
export declare const ATTR_PREFIX = "@";
|
|
111
|
-
/** Separator fusing type and subType in a node's wrapper key (`object.entity`). */
|
|
112
|
-
export declare const TYPE_SUBTYPE_SEPARATOR = ".";
|
|
113
|
-
/** Separator between package segments and between package and name. */
|
|
114
|
-
export declare const PACKAGE_SEPARATOR = "::";
|
|
115
|
-
/** Relative-reference "go up one level" marker. */
|
|
116
|
-
export declare const PACKAGE_PARENT = "..";
|
|
117
|
-
export declare const CHILD_RULE_WILDCARD = "*";
|
|
118
|
-
export declare const IDENTITY_ATTR_FIELDS = "fields";
|
|
119
|
-
export declare const IDENTITY_ATTR_GENERATION = "generation";
|
|
120
|
-
/** On secondary identities: true → uniqueIndex; false/absent → index. Defaults to true for back-compat. */
|
|
121
|
-
export declare const IDENTITY_ATTR_UNIQUE = "unique";
|
|
122
|
-
/** Identity-reference attr: target entity (bare or dotted `Entity.field` / `Entity.fA,fB`). */
|
|
123
|
-
export declare const IDENTITY_REFERENCE_ATTR_REFERENCES = "references";
|
|
124
|
-
/** Identity-reference attr: physical-enforcement flag. Default true → hard FK constraint; false → logical-only reference. */
|
|
125
|
-
export declare const IDENTITY_REFERENCE_ATTR_ENFORCE = "enforce";
|
|
126
|
-
export declare const RELATIONSHIP_ATTR_CARDINALITY = "cardinality";
|
|
127
|
-
export declare const RELATIONSHIP_ATTR_OBJECT_REF = "objectRef";
|
|
128
|
-
export declare const RELATIONSHIP_ATTR_JOIN_ENTITY = "joinEntity";
|
|
129
|
-
export declare const RELATIONSHIP_ATTR_JOIN_FIELDS = "joinFields";
|
|
130
|
-
export declare const FIELD_ATTR_REQUIRED = "required";
|
|
131
|
-
export declare const FIELD_ATTR_UNIQUE = "unique";
|
|
132
|
-
export declare const FIELD_ATTR_DEFAULT = "default";
|
|
133
|
-
export declare const FIELD_ATTR_MAX_LENGTH = "maxLength";
|
|
134
|
-
export declare const FIELD_ATTR_DB_COLUMN = "dbColumn";
|
|
135
|
-
export declare const FIELD_ATTR_PRECISION = "precision";
|
|
136
|
-
export declare const FIELD_ATTR_SCALE = "scale";
|
|
137
|
-
export declare const FIELD_ATTR_FILTERABLE = "filterable";
|
|
138
|
-
export declare const FIELD_ATTR_SORTABLE = "sortable";
|
|
139
|
-
export declare const FIELD_ATTR_SORTABLE_DEFAULT_ORDER = "sortableDefaultOrder";
|
|
140
|
-
/** When true, suppress the @filterable-without-index Loader warning (Project D drift check). */
|
|
141
|
-
export declare const FIELD_ATTR_DB_INDEXED = "db.indexed";
|
|
142
|
-
/** ISO 4217 currency code on a currency-subtype field. Defaults to "USD" when omitted. */
|
|
143
|
-
export declare const FIELD_ATTR_CURRENCY = "currency";
|
|
144
|
-
/** Default ISO 4217 currency code when @currency is omitted on a currency field. */
|
|
145
|
-
export declare const FIELD_ATTR_CURRENCY_DEFAULT = "USD";
|
|
146
|
-
/** Auto-set semantics on a timestamp field. Values: "onCreate" | "onUpdate". */
|
|
147
|
-
export declare const FIELD_ATTR_AUTO_SET = "autoSet";
|
|
148
|
-
/** Name (or FQN) of the target object an object-typed field nests. Same wire
|
|
149
|
-
* spelling as the relationship `@objectRef` — Java's single ATTR_OBJECT_REF. */
|
|
150
|
-
export declare const FIELD_ATTR_OBJECT_REF = "objectRef";
|
|
151
|
-
export declare const AUTO_SET_ON_CREATE = "onCreate";
|
|
152
|
-
export declare const AUTO_SET_ON_UPDATE = "onUpdate";
|
|
153
|
-
export declare const AUTO_SET_VALUES: readonly ["onCreate", "onUpdate"];
|
|
154
|
-
export type AutoSetValue = (typeof AUTO_SET_VALUES)[number];
|
|
155
|
-
export declare const SORT_ORDER_ASC = "asc";
|
|
156
|
-
export declare const SORT_ORDER_DESC = "desc";
|
|
157
|
-
export declare const SORT_ORDER_VALUES: readonly ["asc", "desc"];
|
|
158
|
-
export type SortOrderValue = (typeof SORT_ORDER_VALUES)[number];
|
|
159
|
-
export declare const OBJECT_JAVA_RUNTIME_POJO = "pojo";
|
|
160
|
-
export declare const OBJECT_JAVA_RUNTIME_MAP = "map";
|
|
161
|
-
export declare const OBJECT_JAVA_RUNTIME_PROXY = "proxy";
|
|
162
|
-
export declare const OBJECT_JAVA_RUNTIME_VALUES: readonly ["pojo", "map", "proxy"];
|
|
163
|
-
export type ObjectJavaRuntimeValue = (typeof OBJECT_JAVA_RUNTIME_VALUES)[number];
|
|
164
|
-
export declare const VALIDATOR_ATTR_PATTERN = "pattern";
|
|
165
|
-
export declare const VALIDATOR_ATTR_MIN = "min";
|
|
166
|
-
export declare const VALIDATOR_ATTR_MAX = "max";
|
|
167
|
-
export declare const GENERATION_INCREMENT = "increment";
|
|
168
|
-
export declare const GENERATION_UUID = "uuid";
|
|
169
|
-
export declare const GENERATION_ASSIGNED = "assigned";
|
|
170
|
-
export declare const GENERATION_VALUES: readonly ["increment", "uuid", "assigned"];
|
|
171
|
-
export type GenerationValue = (typeof GENERATION_VALUES)[number];
|
|
172
|
-
export declare const CARDINALITY_ONE = "one";
|
|
173
|
-
export declare const CARDINALITY_MANY = "many";
|
|
174
|
-
export declare const CARDINALITY_VALUES: readonly ["one", "many"];
|
|
175
|
-
export type CardinalityValue = (typeof CARDINALITY_VALUES)[number];
|
|
176
|
-
export declare const FILTER_OPS: readonly ["eq", "ne", "gt", "gte", "lt", "lte", "in", "like", "isNull"];
|
|
177
|
-
export type FilterOp = (typeof FILTER_OPS)[number];
|
|
178
|
-
export declare const OPS_BY_SUBTYPE: Readonly<Record<string, readonly FilterOp[]>>;
|
|
179
|
-
export declare function opsForSubType(subType: string): readonly FilterOp[];
|
|
180
|
-
/** Java runtime strategy for an object. Values: "pojo" | "map" | "proxy". */
|
|
181
|
-
export declare const OBJECT_ATTR_JAVA_RUNTIME = "javaRuntime";
|
|
182
|
-
export declare const SOURCE_SUBTYPE_DB_TABLE = "dbTable";
|
|
183
|
-
export declare const SOURCE_SUBTYPE_DB_VIEW = "dbView";
|
|
184
|
-
export declare const SOURCE_SUBTYPES: readonly ["base", "dbTable", "dbView"];
|
|
185
|
-
export type SourceSubType = (typeof SOURCE_SUBTYPES)[number];
|
|
186
|
-
export declare const SOURCE_DB_TABLE_ATTR_NAME = "name";
|
|
187
|
-
export declare const SOURCE_DB_VIEW_ATTR_NAME = "name";
|
|
188
|
-
/** Shared @name attr key for MetaSource (covers both dbTable and dbView). Use this
|
|
189
|
-
* in generic source accessors instead of the subtype-specific aliases above. */
|
|
190
|
-
export declare const SOURCE_ATTR_NAME = "name";
|
|
191
|
-
/** Optional DB schema attr on source[dbTable] / source[dbView]. Postgres uses
|
|
192
|
-
* this to namespace tables/views. SQLite has no schema concept and rejects
|
|
193
|
-
* any non-default value. Default for Postgres: "public". */
|
|
194
|
-
export declare const SOURCE_ATTR_SCHEMA = "schema";
|
|
195
|
-
/** Default Postgres schema when @schema is omitted from a source. */
|
|
196
|
-
export declare const DEFAULT_DB_SCHEMA_POSTGRES = "public";
|
|
197
|
-
export declare const ORIGIN_SUBTYPE_PASSTHROUGH = "passthrough";
|
|
198
|
-
export declare const ORIGIN_SUBTYPE_AGGREGATE = "aggregate";
|
|
199
|
-
export declare const ORIGIN_SUBTYPES: readonly ["base", "passthrough", "aggregate"];
|
|
200
|
-
export type OriginSubType = (typeof ORIGIN_SUBTYPES)[number];
|
|
201
|
-
export declare const ORIGIN_PASSTHROUGH_ATTR_FROM = "from";
|
|
202
|
-
export declare const ORIGIN_PASSTHROUGH_ATTR_VIA = "via";
|
|
203
|
-
export declare const ORIGIN_AGGREGATE_ATTR_AGG = "agg";
|
|
204
|
-
export declare const ORIGIN_AGGREGATE_ATTR_OF = "of";
|
|
205
|
-
export declare const ORIGIN_AGGREGATE_ATTR_VIA = "via";
|
|
206
|
-
export declare const AGGREGATE_FUNCTIONS: readonly ["count", "sum", "avg", "min", "max"];
|
|
207
|
-
export type AggregateFunction = (typeof AGGREGATE_FUNCTIONS)[number];
|
|
208
|
-
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|