@almadar/core 2.2.1 → 2.3.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.
@@ -0,0 +1,81 @@
1
+ import { T as TraitEventContract, E as EntityField, a as EntityPersistence, O as OrbitalDefinition, b as OrbitalSchema, c as Entity, d as Trait, P as Page } from './schema-DKSddYoB.js';
2
+ import 'zod';
3
+ import '@almadar/patterns';
4
+
5
+ /**
6
+ * Orbital Builders
7
+ *
8
+ * Pure functions for constructing and composing Orbitals.
9
+ * No new types. Everything uses existing core types:
10
+ * Entity, Trait, Page, OrbitalDefinition, OrbitalSchema.
11
+ *
12
+ * Three categories:
13
+ * 1. Builders: construct Entity, Page from common params
14
+ * 2. Utilities: ensureIdField, resolveDefaults
15
+ * 3. Composition: connect, compose, pipe
16
+ *
17
+ * @packageDocumentation
18
+ */
19
+
20
+ /**
21
+ * Ensure the fields array has an `id` field. Prepends one if missing.
22
+ */
23
+ declare function ensureIdField(fields: EntityField[]): EntityField[];
24
+ /**
25
+ * Simple pluralization: append 's'.
26
+ */
27
+ declare function plural(name: string): string;
28
+ interface MakeEntityOpts {
29
+ name: string;
30
+ fields: EntityField[];
31
+ persistence?: EntityPersistence;
32
+ collection?: string;
33
+ }
34
+ /**
35
+ * Build an Entity from options. Auto-adds id field, auto-derives collection.
36
+ */
37
+ declare function makeEntity(opts: MakeEntityOpts): Entity;
38
+ interface MakePageOpts {
39
+ name: string;
40
+ path: string;
41
+ traitName: string;
42
+ isInitial?: boolean;
43
+ }
44
+ /**
45
+ * Build a Page that binds to a single trait.
46
+ */
47
+ declare function makePage(opts: MakePageOpts): Page;
48
+ /**
49
+ * Build an OrbitalDefinition from its three components.
50
+ */
51
+ declare function makeOrbital(name: string, entity: Entity, traits: Trait[], pages: Page[]): OrbitalDefinition;
52
+ /**
53
+ * Wire a cross-orbital event between two orbitals.
54
+ * Adds emits to a's first trait, listens to b's first trait.
55
+ * Pure: returns new orbitals, no mutation.
56
+ */
57
+ declare function connect(a: OrbitalDefinition, b: OrbitalDefinition, event: TraitEventContract, triggers?: string): [OrbitalDefinition, OrbitalDefinition];
58
+ interface ComposeConnection {
59
+ from: string;
60
+ to: string;
61
+ event: TraitEventContract;
62
+ triggers?: string;
63
+ }
64
+ interface ComposePage {
65
+ name: string;
66
+ path: string;
67
+ traits: string[];
68
+ isInitial?: boolean;
69
+ }
70
+ /**
71
+ * Compose multiple orbitals into a single OrbitalSchema (application).
72
+ * Applies connections (cross-orbital event wiring) and page assignments.
73
+ */
74
+ declare function compose(orbitals: OrbitalDefinition[], pages: ComposePage[], connections: ComposeConnection[], appName?: string): OrbitalSchema;
75
+ /**
76
+ * Chain orbitals in sequence with automatic event wiring.
77
+ * Sugar over connect + compose: wires events[0] from orbital[0] to orbital[1], etc.
78
+ */
79
+ declare function pipe(orbitals: OrbitalDefinition[], events: TraitEventContract[], appName?: string): OrbitalSchema;
80
+
81
+ export { type ComposeConnection, type ComposePage, type MakeEntityOpts, type MakePageOpts, compose, connect, ensureIdField, makeEntity, makeOrbital, makePage, pipe, plural };
@@ -0,0 +1,141 @@
1
+ // src/builders.ts
2
+ function ensureIdField(fields) {
3
+ if (fields.some((f) => f.name === "id")) return fields;
4
+ return [{ name: "id", type: "string", required: true }, ...fields];
5
+ }
6
+ function plural(name) {
7
+ return name + "s";
8
+ }
9
+ function makeEntity(opts) {
10
+ const fields = ensureIdField(opts.fields);
11
+ const persistence = opts.persistence ?? "runtime";
12
+ return {
13
+ name: opts.name,
14
+ persistence,
15
+ ...persistence === "persistent" ? { collection: opts.collection ?? plural(opts.name).toLowerCase() } : {},
16
+ fields
17
+ };
18
+ }
19
+ function makePage(opts) {
20
+ return {
21
+ name: opts.name,
22
+ path: opts.path,
23
+ ...opts.isInitial ? { isInitial: true } : {},
24
+ traits: [{ ref: opts.traitName }]
25
+ };
26
+ }
27
+ function makeOrbital(name, entity, traits, pages) {
28
+ return { name, entity, traits, pages };
29
+ }
30
+ function connect(a, b, event, triggers) {
31
+ const aClone = structuredClone(a);
32
+ const bClone = structuredClone(b);
33
+ const aTrait = aClone.traits[0];
34
+ if (aTrait) {
35
+ const emitContract = {
36
+ ...event,
37
+ scope: event.scope ?? "external"
38
+ };
39
+ aTrait.emits = [...aTrait.emits ?? [], emitContract];
40
+ }
41
+ const bTrait = bClone.traits[0];
42
+ if (bTrait) {
43
+ const listener = {
44
+ event: event.event,
45
+ triggers: triggers ?? "INIT",
46
+ scope: "external"
47
+ };
48
+ bTrait.listens = [...bTrait.listens ?? [], listener];
49
+ }
50
+ return [aClone, bClone];
51
+ }
52
+ function compose(orbitals, pages, connections, appName) {
53
+ const cloned = structuredClone(orbitals);
54
+ for (const conn of connections) {
55
+ const emitter = cloned.find((o) => {
56
+ const traits = o.traits;
57
+ return traits.some((t) => t.name === conn.from);
58
+ });
59
+ const listener = cloned.find((o) => {
60
+ const traits = o.traits;
61
+ return traits.some((t) => t.name === conn.to);
62
+ });
63
+ if (emitter && listener) {
64
+ const eTrait = emitter.traits.find((t) => t.name === conn.from);
65
+ const lTrait = listener.traits.find((t) => t.name === conn.to);
66
+ if (eTrait) {
67
+ const emitContract = { ...conn.event, scope: conn.event.scope ?? "external" };
68
+ eTrait.emits = [...eTrait.emits ?? [], emitContract];
69
+ }
70
+ if (lTrait) {
71
+ const listenContract = {
72
+ event: conn.event.event,
73
+ triggers: conn.triggers ?? "INIT",
74
+ scope: "external"
75
+ };
76
+ lTrait.listens = [...lTrait.listens ?? [], listenContract];
77
+ }
78
+ }
79
+ }
80
+ for (const orbital of cloned) {
81
+ const traitNames = orbital.traits.map((t) => t.name);
82
+ const matchingPages = pages.filter(
83
+ (p) => p.traits.some((t) => traitNames.includes(t))
84
+ );
85
+ orbital.pages = matchingPages.map((p) => ({
86
+ name: p.name,
87
+ path: p.path,
88
+ ...p.isInitial ? { isInitial: true } : {},
89
+ traits: p.traits.filter((t) => traitNames.includes(t)).map((ref) => ({ ref }))
90
+ }));
91
+ }
92
+ return {
93
+ name: appName ?? "Application",
94
+ version: "1.0.0",
95
+ orbitals: cloned
96
+ };
97
+ }
98
+ function pipe(orbitals, events, appName) {
99
+ if (events.length !== orbitals.length - 1) {
100
+ throw new Error(`pipe requires exactly ${orbitals.length - 1} events for ${orbitals.length} orbitals`);
101
+ }
102
+ const cloned = structuredClone(orbitals);
103
+ for (let i = 0; i < events.length; i++) {
104
+ const aTrait = cloned[i].traits[0];
105
+ const bTrait = cloned[i + 1].traits[0];
106
+ if (aTrait) {
107
+ const emitContract = { ...events[i], scope: events[i].scope ?? "external" };
108
+ aTrait.emits = [...aTrait.emits ?? [], emitContract];
109
+ }
110
+ if (bTrait) {
111
+ const listener = {
112
+ event: events[i].event,
113
+ triggers: "INIT",
114
+ scope: "external"
115
+ };
116
+ bTrait.listens = [...bTrait.listens ?? [], listener];
117
+ }
118
+ }
119
+ const pages = cloned.map((o, i) => {
120
+ const entityName = typeof o.entity === "string" ? o.entity : o.entity.name;
121
+ const traitNames = o.traits.map((t) => t.name);
122
+ return {
123
+ name: `${entityName}Page`,
124
+ path: `/${plural(entityName).toLowerCase()}`,
125
+ ...i === 0 ? { isInitial: true } : {},
126
+ traits: traitNames.map((ref) => ({ ref }))
127
+ };
128
+ });
129
+ for (let i = 0; i < cloned.length; i++) {
130
+ cloned[i].pages = [pages[i]];
131
+ }
132
+ return {
133
+ name: appName ?? "Application",
134
+ version: "1.0.0",
135
+ orbitals: cloned
136
+ };
137
+ }
138
+
139
+ export { compose, connect, ensureIdField, makeEntity, makeOrbital, makePage, pipe, plural };
140
+ //# sourceMappingURL=builders.js.map
141
+ //# sourceMappingURL=builders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/builders.ts"],"names":[],"mappings":"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","file":"builders.js","sourcesContent":["/**\n * Orbital Builders\n *\n * Pure functions for constructing and composing Orbitals.\n * No new types. Everything uses existing core types:\n * Entity, Trait, Page, OrbitalDefinition, OrbitalSchema.\n *\n * Three categories:\n * 1. Builders: construct Entity, Page from common params\n * 2. Utilities: ensureIdField, resolveDefaults\n * 3. Composition: connect, compose, pipe\n *\n * @packageDocumentation\n */\n\nimport type { Entity, EntityPersistence } from './types/entity.js';\nimport type { EntityField } from './types/field.js';\nimport type { Page } from './types/page.js';\nimport type { OrbitalDefinition } from './types/orbital.js';\nimport type { OrbitalSchema } from './types/schema.js';\nimport type { TraitEventContract, TraitEventListener, Trait } from './types/trait.js';\n\n// ============================================================================\n// Utilities\n// ============================================================================\n\n/**\n * Ensure the fields array has an `id` field. Prepends one if missing.\n */\nexport function ensureIdField(fields: EntityField[]): EntityField[] {\n if (fields.some(f => f.name === 'id')) return fields;\n return [{ name: 'id', type: 'string', required: true }, ...fields];\n}\n\n/**\n * Simple pluralization: append 's'.\n */\nexport function plural(name: string): string {\n return name + 's';\n}\n\n// ============================================================================\n// Entity Builder\n// ============================================================================\n\nexport interface MakeEntityOpts {\n name: string;\n fields: EntityField[];\n persistence?: EntityPersistence;\n collection?: string;\n}\n\n/**\n * Build an Entity from options. Auto-adds id field, auto-derives collection.\n */\nexport function makeEntity(opts: MakeEntityOpts): Entity {\n const fields = ensureIdField(opts.fields);\n const persistence = opts.persistence ?? 'runtime';\n return {\n name: opts.name,\n persistence,\n ...(persistence === 'persistent'\n ? { collection: opts.collection ?? plural(opts.name).toLowerCase() }\n : {}),\n fields,\n };\n}\n\n// ============================================================================\n// Page Builder\n// ============================================================================\n\nexport interface MakePageOpts {\n name: string;\n path: string;\n traitName: string;\n isInitial?: boolean;\n}\n\n/**\n * Build a Page that binds to a single trait.\n */\nexport function makePage(opts: MakePageOpts): Page {\n return {\n name: opts.name,\n path: opts.path,\n ...(opts.isInitial ? { isInitial: true } : {}),\n traits: [{ ref: opts.traitName }],\n };\n}\n\n// ============================================================================\n// Orbital Builder\n// ============================================================================\n\n/**\n * Build an OrbitalDefinition from its three components.\n */\nexport function makeOrbital(\n name: string,\n entity: Entity,\n traits: Trait[],\n pages: Page[],\n): OrbitalDefinition {\n return { name, entity, traits, pages } as OrbitalDefinition;\n}\n\n// ============================================================================\n// Composition: connect\n// ============================================================================\n\n/**\n * Wire a cross-orbital event between two orbitals.\n * Adds emits to a's first trait, listens to b's first trait.\n * Pure: returns new orbitals, no mutation.\n */\nexport function connect(\n a: OrbitalDefinition,\n b: OrbitalDefinition,\n event: TraitEventContract,\n triggers?: string,\n): [OrbitalDefinition, OrbitalDefinition] {\n const aClone = structuredClone(a);\n const bClone = structuredClone(b);\n\n // Add emit to first trait of a\n const aTrait = (aClone.traits as Trait[])[0];\n if (aTrait) {\n const emitContract: TraitEventContract = {\n ...event,\n scope: event.scope ?? 'external',\n };\n aTrait.emits = [...(aTrait.emits ?? []), emitContract];\n }\n\n // Add listen to first trait of b\n const bTrait = (bClone.traits as Trait[])[0];\n if (bTrait) {\n const listener: TraitEventListener = {\n event: event.event,\n triggers: triggers ?? 'INIT',\n scope: 'external',\n };\n bTrait.listens = [...(bTrait.listens ?? []), listener];\n }\n\n return [aClone, bClone];\n}\n\n// ============================================================================\n// Composition: compose\n// ============================================================================\n\nexport interface ComposeConnection {\n from: string;\n to: string;\n event: TraitEventContract;\n triggers?: string;\n}\n\nexport interface ComposePage {\n name: string;\n path: string;\n traits: string[];\n isInitial?: boolean;\n}\n\n/**\n * Compose multiple orbitals into a single OrbitalSchema (application).\n * Applies connections (cross-orbital event wiring) and page assignments.\n */\nexport function compose(\n orbitals: OrbitalDefinition[],\n pages: ComposePage[],\n connections: ComposeConnection[],\n appName?: string,\n): OrbitalSchema {\n const cloned = structuredClone(orbitals);\n\n // Apply connections\n for (const conn of connections) {\n const emitter = cloned.find(o => {\n const traits = o.traits as Trait[];\n return traits.some(t => t.name === conn.from);\n });\n const listener = cloned.find(o => {\n const traits = o.traits as Trait[];\n return traits.some(t => t.name === conn.to);\n });\n\n if (emitter && listener) {\n const eTrait = (emitter.traits as Trait[]).find(t => t.name === conn.from);\n const lTrait = (listener.traits as Trait[]).find(t => t.name === conn.to);\n\n if (eTrait) {\n const emitContract: TraitEventContract = { ...conn.event, scope: conn.event.scope ?? 'external' };\n eTrait.emits = [...(eTrait.emits ?? []), emitContract];\n }\n if (lTrait) {\n const listenContract: TraitEventListener = {\n event: conn.event.event,\n triggers: conn.triggers ?? 'INIT',\n scope: 'external',\n };\n lTrait.listens = [...(lTrait.listens ?? []), listenContract];\n }\n }\n }\n\n // Assign pages to orbitals\n for (const orbital of cloned) {\n const traitNames = (orbital.traits as Trait[]).map(t => t.name);\n const matchingPages = pages.filter(p =>\n p.traits.some(t => traitNames.includes(t)),\n );\n orbital.pages = matchingPages.map(p => ({\n name: p.name,\n path: p.path,\n ...(p.isInitial ? { isInitial: true } : {}),\n traits: p.traits\n .filter(t => traitNames.includes(t))\n .map(ref => ({ ref })),\n }));\n }\n\n return {\n name: appName ?? 'Application',\n version: '1.0.0',\n orbitals: cloned,\n };\n}\n\n// ============================================================================\n// Composition: pipe\n// ============================================================================\n\n/**\n * Chain orbitals in sequence with automatic event wiring.\n * Sugar over connect + compose: wires events[0] from orbital[0] to orbital[1], etc.\n */\nexport function pipe(\n orbitals: OrbitalDefinition[],\n events: TraitEventContract[],\n appName?: string,\n): OrbitalSchema {\n if (events.length !== orbitals.length - 1) {\n throw new Error(`pipe requires exactly ${orbitals.length - 1} events for ${orbitals.length} orbitals`);\n }\n\n const cloned = structuredClone(orbitals);\n\n // Wire adjacent pairs\n for (let i = 0; i < events.length; i++) {\n const aTrait = (cloned[i].traits as Trait[])[0];\n const bTrait = (cloned[i + 1].traits as Trait[])[0];\n\n if (aTrait) {\n const emitContract: TraitEventContract = { ...events[i], scope: events[i].scope ?? 'external' };\n aTrait.emits = [...(aTrait.emits ?? []), emitContract];\n }\n if (bTrait) {\n const listener: TraitEventListener = {\n event: events[i].event,\n triggers: 'INIT',\n scope: 'external',\n };\n bTrait.listens = [...(bTrait.listens ?? []), listener];\n }\n }\n\n // Auto-generate pages: one per orbital, first is initial\n const pages: Page[] = cloned.map((o, i) => {\n const entityName = typeof o.entity === 'string' ? o.entity : o.entity.name;\n const traitNames = (o.traits as Trait[]).map(t => t.name);\n return {\n name: `${entityName}Page`,\n path: `/${plural(entityName).toLowerCase()}`,\n ...(i === 0 ? { isInitial: true } : {}),\n traits: traitNames.map(ref => ({ ref })),\n };\n });\n\n // Assign pages back to orbitals\n for (let i = 0; i < cloned.length; i++) {\n cloned[i].pages = [pages[i]];\n }\n\n return {\n name: appName ?? 'Application',\n version: '1.0.0',\n orbitals: cloned,\n };\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { bq as SExpr, V as Entity, a_ as Page, O as OrbitalSchema, b$ as Trait } from '../schema-N46ASk3M.js';
1
+ import { bs as SExpr, c as Entity, P as Page, b as OrbitalSchema, d as Trait } from '../schema-DKSddYoB.js';
2
2
  import 'zod';
3
3
  import '@almadar/patterns';
4
4
 
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { O as OrbitalSchema, S as State, a as OrbitalDefinition } from './schema-N46ASk3M.js';
2
- export { A as AGENT_DOMAIN_CATEGORIES, b as ALLOWED_CUSTOM_COMPONENTS, c as AgentDomainCategory, d as AgentDomainCategorySchema, e as AllowedCustomComponent, f as AnimationDef, g as AnimationDefInput, h as AnimationDefSchema, i as AssetMap, j as AssetMapInput, k as AssetMapSchema, l as AssetMapping, m as AssetMappingInput, n as AssetMappingSchema, C as CORE_BINDINGS, o as CallServiceConfig, p as ComputedEventContract, q as ComputedEventContractSchema, r as ComputedEventListener, s as ComputedEventListenerSchema, t as CoreBinding, u as CustomPatternDefinition, v as CustomPatternDefinitionInput, w as CustomPatternDefinitionSchema, x as CustomPatternMap, y as CustomPatternMapInput, z as CustomPatternMapSchema, D as DesignPreferences, B as DesignPreferencesInput, E as DesignPreferencesSchema, F as DesignTokens, G as DesignTokensInput, H as DesignTokensSchema, I as DomainCategory, J as DomainCategorySchema, K as DomainContext, L as DomainContextInput, M as DomainContextSchema, N as DomainVocabulary, P as DomainVocabularySchema, Q as ENTITY_ROLES, R as Effect, T as EffectInput, U as EffectSchema, V as Entity, W as EntityField, X as EntityFieldInput, Y as EntityFieldSchema, Z as EntityPersistence, _ as EntityPersistenceSchema, $ as EntityRef, a0 as EntityRefSchema, a1 as EntityRefStringSchema, a2 as EntityRole, a3 as EntityRoleSchema, a4 as EntitySchema, a5 as EntitySemanticRole, a6 as EntitySemanticRoleSchema, a7 as Event, a8 as EventInput, a9 as EventListener, aa as EventListenerSchema, ab as EventPayloadField, ac as EventPayloadFieldSchema, ad as EventSchema, ae as EventScope, af as EventScopeSchema, ag as EventSemanticRole, ah as EventSemanticRoleSchema, ai as EventSource, aj as EventSourceSchema, ak as Expression, al as ExpressionInput, am as ExpressionSchema, an as Field, ao as FieldFormat, ap as FieldFormatSchema, aq as FieldSchema, ar as FieldType, as as FieldTypeSchema, at as FullOrbitalUnit, au as GAME_TYPES, av as GameSubCategory, aw as GameSubCategorySchema, ax as GameType, ay as GameTypeSchema, az as Guard, aA as GuardInput, aB as GuardSchema, aC as McpServiceDef, aD as McpServiceDefSchema, aE as NodeClassification, aF as NodeClassificationSchema, at as Orbital, aG as OrbitalConfig, aH as OrbitalConfigInput, aI as OrbitalConfigSchema, aJ as OrbitalDefinitionSchema, aK as OrbitalEntity, aL as OrbitalEntityInput, aM as OrbitalEntitySchema, aN as OrbitalInput, aO as OrbitalPage, aP as OrbitalPageInput, aQ as OrbitalPageSchema, aR as OrbitalPageStrictInput, aS as OrbitalPageStrictSchema, aT as OrbitalSchemaInput, aU as OrbitalSchemaSchema, aV as OrbitalTraitRef, aW as OrbitalTraitRefSchema, aX as OrbitalUnit, aY as OrbitalUnitSchema, aZ as OrbitalZodSchema, a_ as Page, a$ as PageRef, b0 as PageRefObject, b1 as PageRefObjectSchema, b2 as PageRefSchema, b3 as PageRefStringSchema, b4 as PageSchema, b5 as PageTraitRef, b6 as PageTraitRefSchema, b7 as ParsedBinding, b8 as PayloadField, b9 as PayloadFieldSchema, ba as PresentationType, bb as RelatedLink, bc as RelatedLinkSchema, bd as RelationConfig, be as RelationConfigSchema, bf as RenderUIConfig, bg as RequiredField, bh as RequiredFieldSchema, bi as ResolvedAsset, bj as ResolvedAssetInput, bk as ResolvedAssetSchema, bl as RestAuthConfig, bm as RestAuthConfigSchema, bn as RestServiceDef, bo as RestServiceDefSchema, bp as SERVICE_TYPES, bq as SExpr, br as SExprAtom, bs as SExprAtomSchema, bt as SExprInput, bu as SExprSchema, bv as SemanticAssetRef, bw as SemanticAssetRefInput, bx as SemanticAssetRefSchema, by as ServiceDefinition, bz as ServiceDefinitionSchema, bA as ServiceRef, bB as ServiceRefSchema, bC as ServiceRefStringSchema, bD as ServiceType, bE as ServiceTypeSchema, bF as SocketEvents, bG as SocketEventsSchema, bH as SocketServiceDef, bI as SocketServiceDefSchema, bJ as StateInput, bK as StateMachine, bL as StateMachineInput, bM as StateMachineSchema, bN as StateSchema, bO as StateSemanticRole, bP as StateSemanticRoleSchema, bQ as SuggestedGuard, bR as SuggestedGuardSchema, bS as ThemeDefinition, bT as ThemeDefinitionSchema, bU as ThemeRef, bV as ThemeRefSchema, bW as ThemeRefStringSchema, bX as ThemeTokens, bY as ThemeTokensSchema, bZ as ThemeVariant, b_ as ThemeVariantSchema, b$ as Trait, c0 as TraitCategory, c1 as TraitCategorySchema, c2 as TraitDataEntity, c3 as TraitDataEntitySchema, c4 as TraitEntityField, c5 as TraitEntityFieldSchema, c6 as TraitEventContract, c7 as TraitEventContractSchema, c8 as TraitEventListener, c9 as TraitEventListenerSchema, ca as TraitInput, cb as TraitRef, cc as TraitRefSchema, cd as TraitReference, ce as TraitReferenceInput, cf as TraitReferenceSchema, cg as TraitSchema, ch as TraitTick, ci as TraitTickSchema, cj as TraitUIBinding, ck as Transition, cl as TransitionInput, cm as TransitionSchema, cn as UISlot, co as UISlotSchema, cp as UI_SLOTS, cq as UXHints, cr as UXHintsSchema, cs as UseDeclaration, ct as UseDeclarationSchema, cu as UserPersona, cv as UserPersonaInput, cw as UserPersonaSchema, cx as VISUAL_STYLES, cy as ViewType, cz as ViewTypeSchema, cA as VisualStyle, cB as VisualStyleSchema, cC as callService, cD as collectBindings, cE as createAssetKey, cF as deriveCollection, cG as despawn, cH as doEffects, cI as emit, cJ as findService, cK as getArgs, cL as getDefaultAnimationsForRole, cM as getOperator, cN as getServiceNames, cO as getTraitConfig, cP as getTraitName, cQ as hasService, cR as isBinding, cS as isCircuitEvent, cT as isEffect, cU as isEntityReference, cV as isImportedTraitRef, cW as isInlineTrait, cX as isMcpService, cY as isOrbitalDefinition, cZ as isPageReference, c_ as isPageReferenceObject, c$ as isPageReferenceString, d0 as isRestService, d1 as isRuntimeEntity, d2 as isSExpr, d3 as isSExprAtom, d4 as isSExprCall, d5 as isSExprEffect, d6 as isServiceReference, d7 as isSingletonEntity, d8 as isSocketService, d9 as isThemeReference, da as isValidBinding, db as navigate, dc as normalizeTraitRef, dd as notify, de as parseAssetKey, df as parseBinding, dg as parseEntityRef, dh as parseImportedTraitRef, di as parseOrbitalSchema, dj as parsePageRef, dk as parseServiceRef, dl as persist, dm as renderUI, dn as safeParseOrbitalSchema, dp as set, dq as sexpr, dr as spawn, ds as validateAssetAnimations, dt as walkSExpr } from './schema-N46ASk3M.js';
1
+ import { b as OrbitalSchema, S as State, O as OrbitalDefinition } from './schema-DKSddYoB.js';
2
+ export { A as AGENT_DOMAIN_CATEGORIES, e as ALLOWED_CUSTOM_COMPONENTS, f as AgentDomainCategory, g as AgentDomainCategorySchema, h as AllowedCustomComponent, i as AnimationDef, j as AnimationDefInput, k as AnimationDefSchema, l as AssetMap, m as AssetMapInput, n as AssetMapSchema, o as AssetMapping, p as AssetMappingInput, q as AssetMappingSchema, C as CORE_BINDINGS, r as CallServiceConfig, s as ComputedEventContract, t as ComputedEventContractSchema, u as ComputedEventListener, v as ComputedEventListenerSchema, w as CoreBinding, x as CustomPatternDefinition, y as CustomPatternDefinitionInput, z as CustomPatternDefinitionSchema, B as CustomPatternMap, D as CustomPatternMapInput, F as CustomPatternMapSchema, G as DesignPreferences, H as DesignPreferencesInput, I as DesignPreferencesSchema, J as DesignTokens, K as DesignTokensInput, L as DesignTokensSchema, M as DomainCategory, N as DomainCategorySchema, Q as DomainContext, R as DomainContextInput, U as DomainContextSchema, V as DomainVocabulary, W as DomainVocabularySchema, X as ENTITY_ROLES, Y as Effect, Z as EffectInput, _ as EffectSchema, c as Entity, E as EntityField, $ as EntityFieldInput, a0 as EntityFieldSchema, a as EntityPersistence, a1 as EntityPersistenceSchema, a2 as EntityRef, a3 as EntityRefSchema, a4 as EntityRefStringSchema, a5 as EntityRole, a6 as EntityRoleSchema, a7 as EntitySchema, a8 as EntitySemanticRole, a9 as EntitySemanticRoleSchema, aa as Event, ab as EventInput, ac as EventListener, ad as EventListenerSchema, ae as EventPayloadField, af as EventPayloadFieldSchema, ag as EventSchema, ah as EventScope, ai as EventScopeSchema, aj as EventSemanticRole, ak as EventSemanticRoleSchema, al as EventSource, am as EventSourceSchema, an as Expression, ao as ExpressionInput, ap as ExpressionSchema, aq as Field, ar as FieldFormat, as as FieldFormatSchema, at as FieldSchema, au as FieldType, av as FieldTypeSchema, aw as FullOrbitalUnit, ax as GAME_TYPES, ay as GameSubCategory, az as GameSubCategorySchema, aA as GameType, aB as GameTypeSchema, aC as Guard, aD as GuardInput, aE as GuardSchema, aF as McpServiceDef, aG as McpServiceDefSchema, aH as NodeClassification, aI as NodeClassificationSchema, aw as Orbital, aJ as OrbitalConfig, aK as OrbitalConfigInput, aL as OrbitalConfigSchema, aM as OrbitalDefinitionSchema, aN as OrbitalEntity, aO as OrbitalEntityInput, aP as OrbitalEntitySchema, aQ as OrbitalInput, aR as OrbitalPage, aS as OrbitalPageInput, aT as OrbitalPageSchema, aU as OrbitalPageStrictInput, aV as OrbitalPageStrictSchema, aW as OrbitalSchemaInput, aX as OrbitalSchemaSchema, aY as OrbitalTraitRef, aZ as OrbitalTraitRefSchema, a_ as OrbitalUnit, a$ as OrbitalUnitSchema, b0 as OrbitalZodSchema, P as Page, b1 as PageRef, b2 as PageRefObject, b3 as PageRefObjectSchema, b4 as PageRefSchema, b5 as PageRefStringSchema, b6 as PageSchema, b7 as PageTraitRef, b8 as PageTraitRefSchema, b9 as ParsedBinding, ba as PayloadField, bb as PayloadFieldSchema, bc as PresentationType, bd as RelatedLink, be as RelatedLinkSchema, bf as RelationConfig, bg as RelationConfigSchema, bh as RenderUIConfig, bi as RequiredField, bj as RequiredFieldSchema, bk as ResolvedAsset, bl as ResolvedAssetInput, bm as ResolvedAssetSchema, bn as RestAuthConfig, bo as RestAuthConfigSchema, bp as RestServiceDef, bq as RestServiceDefSchema, br as SERVICE_TYPES, bs as SExpr, bt as SExprAtom, bu as SExprAtomSchema, bv as SExprInput, bw as SExprSchema, bx as SemanticAssetRef, by as SemanticAssetRefInput, bz as SemanticAssetRefSchema, bA as ServiceDefinition, bB as ServiceDefinitionSchema, bC as ServiceRef, bD as ServiceRefSchema, bE as ServiceRefStringSchema, bF as ServiceType, bG as ServiceTypeSchema, bH as SocketEvents, bI as SocketEventsSchema, bJ as SocketServiceDef, bK as SocketServiceDefSchema, bL as StateInput, bM as StateMachine, bN as StateMachineInput, bO as StateMachineSchema, bP as StateSchema, bQ as StateSemanticRole, bR as StateSemanticRoleSchema, bS as SuggestedGuard, bT as SuggestedGuardSchema, bU as ThemeDefinition, bV as ThemeDefinitionSchema, bW as ThemeRef, bX as ThemeRefSchema, bY as ThemeRefStringSchema, bZ as ThemeTokens, b_ as ThemeTokensSchema, b$ as ThemeVariant, c0 as ThemeVariantSchema, d as Trait, c1 as TraitCategory, c2 as TraitCategorySchema, c3 as TraitDataEntity, c4 as TraitDataEntitySchema, c5 as TraitEntityField, c6 as TraitEntityFieldSchema, T as TraitEventContract, c7 as TraitEventContractSchema, c8 as TraitEventListener, c9 as TraitEventListenerSchema, ca as TraitInput, cb as TraitRef, cc as TraitRefSchema, cd as TraitReference, ce as TraitReferenceInput, cf as TraitReferenceSchema, cg as TraitSchema, ch as TraitTick, ci as TraitTickSchema, cj as TraitUIBinding, ck as Transition, cl as TransitionInput, cm as TransitionSchema, cn as UISlot, co as UISlotSchema, cp as UI_SLOTS, cq as UXHints, cr as UXHintsSchema, cs as UseDeclaration, ct as UseDeclarationSchema, cu as UserPersona, cv as UserPersonaInput, cw as UserPersonaSchema, cx as VISUAL_STYLES, cy as ViewType, cz as ViewTypeSchema, cA as VisualStyle, cB as VisualStyleSchema, cC as callService, cD as collectBindings, cE as createAssetKey, cF as deriveCollection, cG as despawn, cH as doEffects, cI as emit, cJ as findService, cK as getArgs, cL as getDefaultAnimationsForRole, cM as getOperator, cN as getServiceNames, cO as getTraitConfig, cP as getTraitName, cQ as hasService, cR as isBinding, cS as isCircuitEvent, cT as isEffect, cU as isEntityReference, cV as isImportedTraitRef, cW as isInlineTrait, cX as isMcpService, cY as isOrbitalDefinition, cZ as isPageReference, c_ as isPageReferenceObject, c$ as isPageReferenceString, d0 as isRestService, d1 as isRuntimeEntity, d2 as isSExpr, d3 as isSExprAtom, d4 as isSExprCall, d5 as isSExprEffect, d6 as isServiceReference, d7 as isSingletonEntity, d8 as isSocketService, d9 as isThemeReference, da as isValidBinding, db as navigate, dc as normalizeTraitRef, dd as notify, de as parseAssetKey, df as parseBinding, dg as parseEntityRef, dh as parseImportedTraitRef, di as parseOrbitalSchema, dj as parsePageRef, dk as parseServiceRef, dl as persist, dm as renderUI, dn as safeParseOrbitalSchema, dp as set, dq as sexpr, dr as spawn, ds as validateAssetAnimations, dt as walkSExpr } from './schema-DKSddYoB.js';
3
3
  import { ResolvedIR, ResolvedEntity, ResolvedPage, ResolvedTrait, SchemaChange, CategorizedRemovals, PageContentReduction } from './types/index.js';
4
4
  export { AppSummary, BINDING_CONTEXT_RULES, BINDING_DOCS, BindingContext, BindingSchema, ChangeAuthor, ChangeSetDocument, ChangeSummary, CreateFlow, DEFAULT_INTERACTION_MODELS, DeleteFlow, EditFlow, GitHubLink, HistoryMeta, InteractionModel, InteractionModelInput, InteractionModelSchema, LazyService, ListInteraction, OperatorName, PatternTypeSchema, PersistActionName, ResolvedEntityBinding, ResolvedField, ResolvedNavigation, ResolvedPattern, ResolvedSection, ResolvedSectionEvent, ResolvedTraitBinding, ResolvedTraitDataEntity, ResolvedTraitEvent, ResolvedTraitGuard, ResolvedTraitListener, ResolvedTraitState, ResolvedTraitTick, ResolvedTraitTransition, ResolvedTraitUIBinding, SaveOptions, SaveResult, ServiceAction, ServiceActionName, ServiceContract, ServiceEvents, SnapshotDocument, StatsView, StoreContract, StoreFilter, StoreFilterOp, TransitionFrom, ValidationDocument, ValidationIssue, ValidationMeta, ValidationResults, ViewFlow, createEmptyResolvedPage, createEmptyResolvedTrait, createLazyService, createResolvedField, createTypedEventBus, getAllOperators, getAllPatternTypes, getBindingExamples, getInteractionModelForDomain, inferTsType, isResolvedIR, validateBindingInContext } from './types/index.js';
5
5
  export { ASTNode, ComparisonCondition, ComparisonOperator, DomainBehavior, DomainChunk, DomainDocument, DomainEffect, DomainEntity, DomainField, DomainFieldType, DomainGuard, DomainPage, DomainPageAction, DomainPageSection, DomainRelationship, DomainTick, DomainToSchemaResult, DomainTransition, EFFECT_REGISTRY, EffectMapping, EffectType, FIELD_TYPE_REGISTRY, FieldCheckCondition, FieldReference, FieldTypeMapping, GUARD_REGISTRY, GuardCondition, GuardMapping, KEYWORDS, Lexer, LogicalCondition, LogicalOperator, MULTI_WORD_KEYWORDS, MappingStore, MergeResult, ParseError, ParseResult, RelationshipType, SchemaToDomainResult, SectionMapping, SourceLocation, SourceRange, Token, TokenType, UserCheckCondition, applySectionUpdate, computeSchemaHash, convertDomainToSchema, convertEntitiesToDomain, convertPagesToDomain, convertSchemaToDomain, convertTraitsToDomain, createMappingStore, deleteSection, detectChanges, domainKeywordToSchemaType, findMapping, findMappingByPath, findMappingsByType, formatBehaviorToDomain, formatBehaviorToSchema, formatDomainGuardToSchema, formatEntityToDomain, formatEntityToSchema, formatGuardConditionToDomain, formatGuardToDomain, formatGuardToSchema, formatMergeSummary, formatPageToDomain, formatPageToSchema, formatSchemaEntityToDomain, formatSchemaGuardToDomain, formatSchemaPageToDomain, formatSchemaTraitToDomain, generateDomainLanguageReference, generateSectionId, getEffectMapping, getFieldTypeMapping, getGuardMapping, getRegisteredEffects, getRegisteredFieldTypes, getRegisteredGuards, getRegistryStats, getSchemaPath, hasSchemaChanged, isEffectRegistered, isFieldTypeRegistered, isGuardRegistered, mergeDomainChunks, parseBehavior, parseDomainEffect, parseDomainEffects, parseDomainGuard, parseEntity, parseGuard, parsePage, parseSectionId, removeMapping, resolveConflict, schemaEntityToDomainEntity, schemaPageToDomainPage, schemaTraitToDomainBehavior, schemaTypeToDomainKeyword, tokenize, updateMappingRange, updateSchemaHash, upsertMapping, validateDomainChunk } from './domain-language/index.js';
@@ -14022,4 +14022,4 @@ declare function safeParseOrbitalSchema(data: unknown): z.SafeParseReturnType<{
14022
14022
  type OrbitalSchemaInput = z.input<typeof OrbitalSchemaSchema>;
14023
14023
  type OrbitalConfigInput = z.input<typeof OrbitalConfigSchema>;
14024
14024
 
14025
- export { type EntityRef as $, AGENT_DOMAIN_CATEGORIES as A, type DesignPreferencesInput as B, CORE_BINDINGS as C, type DesignPreferences as D, DesignPreferencesSchema as E, type DesignTokens as F, type DesignTokensInput as G, DesignTokensSchema as H, type DomainCategory as I, DomainCategorySchema as J, type DomainContext as K, type DomainContextInput as L, DomainContextSchema as M, type DomainVocabulary as N, type OrbitalSchema as O, DomainVocabularySchema as P, ENTITY_ROLES as Q, type Effect as R, type State as S, type EffectInput as T, EffectSchema as U, type Entity as V, type EntityField as W, type EntityFieldInput as X, EntityFieldSchema as Y, type EntityPersistence as Z, EntityPersistenceSchema as _, type OrbitalDefinition as a, type PageRef as a$, EntityRefSchema as a0, EntityRefStringSchema as a1, type EntityRole as a2, EntityRoleSchema as a3, EntitySchema as a4, type EntitySemanticRole as a5, EntitySemanticRoleSchema as a6, type Event as a7, type EventInput as a8, type EventListener as a9, type GuardInput as aA, GuardSchema as aB, type McpServiceDef as aC, McpServiceDefSchema as aD, type NodeClassification as aE, NodeClassificationSchema as aF, type OrbitalConfig as aG, type OrbitalConfigInput as aH, OrbitalConfigSchema as aI, OrbitalDefinitionSchema as aJ, type OrbitalEntity as aK, type OrbitalEntityInput as aL, OrbitalEntitySchema as aM, type OrbitalInput as aN, type OrbitalPage as aO, type OrbitalPageInput as aP, OrbitalPageSchema as aQ, type OrbitalPageStrictInput as aR, OrbitalPageStrictSchema as aS, type OrbitalSchemaInput as aT, OrbitalSchemaSchema as aU, type OrbitalTraitRef as aV, OrbitalTraitRefSchema as aW, type OrbitalUnit as aX, OrbitalUnitSchema as aY, OrbitalSchema$1 as aZ, type Page as a_, EventListenerSchema as aa, type EventPayloadField as ab, EventPayloadFieldSchema as ac, EventSchema as ad, type EventScope as ae, EventScopeSchema as af, type EventSemanticRole as ag, EventSemanticRoleSchema as ah, type EventSource as ai, EventSourceSchema as aj, type Expression as ak, type ExpressionInput as al, ExpressionSchema as am, type Field as an, type FieldFormat as ao, FieldFormatSchema as ap, FieldSchema as aq, type FieldType as ar, FieldTypeSchema as as, type Orbital as at, GAME_TYPES as au, type GameSubCategory as av, GameSubCategorySchema as aw, type GameType as ax, GameTypeSchema as ay, type Guard as az, ALLOWED_CUSTOM_COMPONENTS as b, type Trait as b$, type PageRefObject as b0, PageRefObjectSchema as b1, PageRefSchema as b2, PageRefStringSchema as b3, PageSchema as b4, type PageTraitRef as b5, PageTraitRefSchema as b6, type ParsedBinding as b7, type PayloadField as b8, PayloadFieldSchema as b9, type ServiceRef as bA, ServiceRefSchema as bB, ServiceRefStringSchema as bC, type ServiceType as bD, ServiceTypeSchema as bE, type SocketEvents as bF, SocketEventsSchema as bG, type SocketServiceDef as bH, SocketServiceDefSchema as bI, type StateInput as bJ, type StateMachine as bK, type StateMachineInput as bL, StateMachineSchema as bM, StateSchema as bN, type StateSemanticRole as bO, StateSemanticRoleSchema as bP, type SuggestedGuard as bQ, SuggestedGuardSchema as bR, type ThemeDefinition as bS, ThemeDefinitionSchema as bT, type ThemeRef as bU, ThemeRefSchema as bV, ThemeRefStringSchema as bW, type ThemeTokens as bX, ThemeTokensSchema as bY, type ThemeVariant as bZ, ThemeVariantSchema as b_, type PresentationType as ba, type RelatedLink as bb, RelatedLinkSchema as bc, type RelationConfig as bd, RelationConfigSchema as be, type RenderUIConfig as bf, type RequiredField as bg, RequiredFieldSchema as bh, type ResolvedAsset as bi, type ResolvedAssetInput as bj, ResolvedAssetSchema as bk, type RestAuthConfig as bl, RestAuthConfigSchema as bm, type RestServiceDef as bn, RestServiceDefSchema as bo, SERVICE_TYPES as bp, type SExpr as bq, type SExprAtom as br, SExprAtomSchema as bs, type SExprInput as bt, SExprSchema as bu, type SemanticAssetRef as bv, type SemanticAssetRefInput as bw, SemanticAssetRefSchema as bx, type ServiceDefinition as by, ServiceDefinitionSchema as bz, type AgentDomainCategory as c, isPageReferenceString as c$, type TraitCategory as c0, TraitCategorySchema as c1, type TraitDataEntity as c2, TraitDataEntitySchema as c3, type TraitEntityField as c4, TraitEntityFieldSchema as c5, type TraitEventContract as c6, TraitEventContractSchema as c7, type TraitEventListener as c8, TraitEventListenerSchema as c9, type VisualStyle as cA, VisualStyleSchema as cB, callService as cC, collectBindings as cD, createAssetKey as cE, deriveCollection as cF, despawn as cG, doEffects as cH, emit as cI, findService as cJ, getArgs as cK, getDefaultAnimationsForRole as cL, getOperator as cM, getServiceNames as cN, getTraitConfig as cO, getTraitName as cP, hasService as cQ, isBinding as cR, isCircuitEvent as cS, isEffect as cT, isEntityReference as cU, isImportedTraitRef as cV, isInlineTrait as cW, isMcpService as cX, isOrbitalDefinition as cY, isPageReference as cZ, isPageReferenceObject as c_, type TraitInput as ca, type TraitRef as cb, TraitRefSchema as cc, type TraitReference as cd, type TraitReferenceInput as ce, TraitReferenceSchema as cf, TraitSchema as cg, type TraitTick as ch, TraitTickSchema as ci, type TraitUIBinding as cj, type Transition as ck, type TransitionInput as cl, TransitionSchema as cm, type UISlot as cn, UISlotSchema as co, UI_SLOTS as cp, type UXHints as cq, UXHintsSchema as cr, type UseDeclaration as cs, UseDeclarationSchema as ct, type UserPersona as cu, type UserPersonaInput as cv, UserPersonaSchema as cw, VISUAL_STYLES as cx, type ViewType as cy, ViewTypeSchema as cz, AgentDomainCategorySchema as d, isRestService as d0, isRuntimeEntity as d1, isSExpr as d2, isSExprAtom as d3, isSExprCall as d4, isSExprEffect as d5, isServiceReference as d6, isSingletonEntity as d7, isSocketService as d8, isThemeReference as d9, isValidBinding as da, navigate as db, normalizeTraitRef as dc, notify as dd, parseAssetKey as de, parseBinding as df, parseEntityRef as dg, parseImportedTraitRef as dh, parseOrbitalSchema as di, parsePageRef as dj, parseServiceRef as dk, persist as dl, renderUI as dm, safeParseOrbitalSchema as dn, set as dp, sexpr as dq, spawn as dr, validateAssetAnimations as ds, walkSExpr as dt, type AllowedCustomComponent as e, type AnimationDef as f, type AnimationDefInput as g, AnimationDefSchema as h, type AssetMap as i, type AssetMapInput as j, AssetMapSchema as k, type AssetMapping as l, type AssetMappingInput as m, AssetMappingSchema as n, type CallServiceConfig as o, type ComputedEventContract as p, ComputedEventContractSchema as q, type ComputedEventListener as r, ComputedEventListenerSchema as s, type CoreBinding as t, type CustomPatternDefinition as u, type CustomPatternDefinitionInput as v, CustomPatternDefinitionSchema as w, type CustomPatternMap as x, type CustomPatternMapInput as y, CustomPatternMapSchema as z };
14025
+ export { type EntityFieldInput as $, AGENT_DOMAIN_CATEGORIES as A, type CustomPatternMap as B, CORE_BINDINGS as C, type CustomPatternMapInput as D, type EntityField as E, CustomPatternMapSchema as F, type DesignPreferences as G, type DesignPreferencesInput as H, DesignPreferencesSchema as I, type DesignTokens as J, type DesignTokensInput as K, DesignTokensSchema as L, type DomainCategory as M, DomainCategorySchema as N, type OrbitalDefinition as O, type Page as P, type DomainContext as Q, type DomainContextInput as R, type State as S, type TraitEventContract as T, DomainContextSchema as U, type DomainVocabulary as V, DomainVocabularySchema as W, ENTITY_ROLES as X, type Effect as Y, type EffectInput as Z, EffectSchema as _, type EntityPersistence as a, OrbitalUnitSchema as a$, EntityFieldSchema as a0, EntityPersistenceSchema as a1, type EntityRef as a2, EntityRefSchema as a3, EntityRefStringSchema as a4, type EntityRole as a5, EntityRoleSchema as a6, EntitySchema as a7, type EntitySemanticRole as a8, EntitySemanticRoleSchema as a9, type GameType as aA, GameTypeSchema as aB, type Guard as aC, type GuardInput as aD, GuardSchema as aE, type McpServiceDef as aF, McpServiceDefSchema as aG, type NodeClassification as aH, NodeClassificationSchema as aI, type OrbitalConfig as aJ, type OrbitalConfigInput as aK, OrbitalConfigSchema as aL, OrbitalDefinitionSchema as aM, type OrbitalEntity as aN, type OrbitalEntityInput as aO, OrbitalEntitySchema as aP, type OrbitalInput as aQ, type OrbitalPage as aR, type OrbitalPageInput as aS, OrbitalPageSchema as aT, type OrbitalPageStrictInput as aU, OrbitalPageStrictSchema as aV, type OrbitalSchemaInput as aW, OrbitalSchemaSchema as aX, type OrbitalTraitRef as aY, OrbitalTraitRefSchema as aZ, type OrbitalUnit as a_, type Event as aa, type EventInput as ab, type EventListener as ac, EventListenerSchema as ad, type EventPayloadField as ae, EventPayloadFieldSchema as af, EventSchema as ag, type EventScope as ah, EventScopeSchema as ai, type EventSemanticRole as aj, EventSemanticRoleSchema as ak, type EventSource as al, EventSourceSchema as am, type Expression as an, type ExpressionInput as ao, ExpressionSchema as ap, type Field as aq, type FieldFormat as ar, FieldFormatSchema as as, FieldSchema as at, type FieldType as au, FieldTypeSchema as av, type Orbital as aw, GAME_TYPES as ax, type GameSubCategory as ay, GameSubCategorySchema as az, type OrbitalSchema as b, type ThemeVariant as b$, OrbitalSchema$1 as b0, type PageRef as b1, type PageRefObject as b2, PageRefObjectSchema as b3, PageRefSchema as b4, PageRefStringSchema as b5, PageSchema as b6, type PageTraitRef as b7, PageTraitRefSchema as b8, type ParsedBinding as b9, type ServiceDefinition as bA, ServiceDefinitionSchema as bB, type ServiceRef as bC, ServiceRefSchema as bD, ServiceRefStringSchema as bE, type ServiceType as bF, ServiceTypeSchema as bG, type SocketEvents as bH, SocketEventsSchema as bI, type SocketServiceDef as bJ, SocketServiceDefSchema as bK, type StateInput as bL, type StateMachine as bM, type StateMachineInput as bN, StateMachineSchema as bO, StateSchema as bP, type StateSemanticRole as bQ, StateSemanticRoleSchema as bR, type SuggestedGuard as bS, SuggestedGuardSchema as bT, type ThemeDefinition as bU, ThemeDefinitionSchema as bV, type ThemeRef as bW, ThemeRefSchema as bX, ThemeRefStringSchema as bY, type ThemeTokens as bZ, ThemeTokensSchema as b_, type PayloadField as ba, PayloadFieldSchema as bb, type PresentationType as bc, type RelatedLink as bd, RelatedLinkSchema as be, type RelationConfig as bf, RelationConfigSchema as bg, type RenderUIConfig as bh, type RequiredField as bi, RequiredFieldSchema as bj, type ResolvedAsset as bk, type ResolvedAssetInput as bl, ResolvedAssetSchema as bm, type RestAuthConfig as bn, RestAuthConfigSchema as bo, type RestServiceDef as bp, RestServiceDefSchema as bq, SERVICE_TYPES as br, type SExpr as bs, type SExprAtom as bt, SExprAtomSchema as bu, type SExprInput as bv, SExprSchema as bw, type SemanticAssetRef as bx, type SemanticAssetRefInput as by, SemanticAssetRefSchema as bz, type Entity as c, isPageReferenceString as c$, ThemeVariantSchema as c0, type TraitCategory as c1, TraitCategorySchema as c2, type TraitDataEntity as c3, TraitDataEntitySchema as c4, type TraitEntityField as c5, TraitEntityFieldSchema as c6, TraitEventContractSchema as c7, type TraitEventListener as c8, TraitEventListenerSchema as c9, type VisualStyle as cA, VisualStyleSchema as cB, callService as cC, collectBindings as cD, createAssetKey as cE, deriveCollection as cF, despawn as cG, doEffects as cH, emit as cI, findService as cJ, getArgs as cK, getDefaultAnimationsForRole as cL, getOperator as cM, getServiceNames as cN, getTraitConfig as cO, getTraitName as cP, hasService as cQ, isBinding as cR, isCircuitEvent as cS, isEffect as cT, isEntityReference as cU, isImportedTraitRef as cV, isInlineTrait as cW, isMcpService as cX, isOrbitalDefinition as cY, isPageReference as cZ, isPageReferenceObject as c_, type TraitInput as ca, type TraitRef as cb, TraitRefSchema as cc, type TraitReference as cd, type TraitReferenceInput as ce, TraitReferenceSchema as cf, TraitSchema as cg, type TraitTick as ch, TraitTickSchema as ci, type TraitUIBinding as cj, type Transition as ck, type TransitionInput as cl, TransitionSchema as cm, type UISlot as cn, UISlotSchema as co, UI_SLOTS as cp, type UXHints as cq, UXHintsSchema as cr, type UseDeclaration as cs, UseDeclarationSchema as ct, type UserPersona as cu, type UserPersonaInput as cv, UserPersonaSchema as cw, VISUAL_STYLES as cx, type ViewType as cy, ViewTypeSchema as cz, type Trait as d, isRestService as d0, isRuntimeEntity as d1, isSExpr as d2, isSExprAtom as d3, isSExprCall as d4, isSExprEffect as d5, isServiceReference as d6, isSingletonEntity as d7, isSocketService as d8, isThemeReference as d9, isValidBinding as da, navigate as db, normalizeTraitRef as dc, notify as dd, parseAssetKey as de, parseBinding as df, parseEntityRef as dg, parseImportedTraitRef as dh, parseOrbitalSchema as di, parsePageRef as dj, parseServiceRef as dk, persist as dl, renderUI as dm, safeParseOrbitalSchema as dn, set as dp, sexpr as dq, spawn as dr, validateAssetAnimations as ds, walkSExpr as dt, ALLOWED_CUSTOM_COMPONENTS as e, type AgentDomainCategory as f, AgentDomainCategorySchema as g, type AllowedCustomComponent as h, type AnimationDef as i, type AnimationDefInput as j, AnimationDefSchema as k, type AssetMap as l, type AssetMapInput as m, AssetMapSchema as n, type AssetMapping as o, type AssetMappingInput as p, AssetMappingSchema as q, type CallServiceConfig as r, type ComputedEventContract as s, ComputedEventContractSchema as t, type ComputedEventListener as u, ComputedEventListenerSchema as v, type CoreBinding as w, type CustomPatternDefinition as x, type CustomPatternDefinitionInput as y, CustomPatternDefinitionSchema as z };
@@ -1,5 +1,5 @@
1
- import { bq as SExpr } from '../schema-N46ASk3M.js';
2
- export { A as AGENT_DOMAIN_CATEGORIES, b as ALLOWED_CUSTOM_COMPONENTS, c as AgentDomainCategory, d as AgentDomainCategorySchema, e as AllowedCustomComponent, f as AnimationDef, g as AnimationDefInput, h as AnimationDefSchema, O as AppSchema, i as AssetMap, j as AssetMapInput, k as AssetMapSchema, l as AssetMapping, m as AssetMappingInput, n as AssetMappingSchema, C as CORE_BINDINGS, o as CallServiceConfig, p as ComputedEventContract, q as ComputedEventContractSchema, r as ComputedEventListener, s as ComputedEventListenerSchema, t as CoreBinding, u as CustomPatternDefinition, v as CustomPatternDefinitionInput, w as CustomPatternDefinitionSchema, x as CustomPatternMap, y as CustomPatternMapInput, z as CustomPatternMapSchema, D as DesignPreferences, B as DesignPreferencesInput, E as DesignPreferencesSchema, F as DesignTokens, G as DesignTokensInput, H as DesignTokensSchema, I as DomainCategory, J as DomainCategorySchema, K as DomainContext, L as DomainContextInput, M as DomainContextSchema, N as DomainVocabulary, P as DomainVocabularySchema, Q as ENTITY_ROLES, R as Effect, T as EffectInput, U as EffectSchema, V as Entity, W as EntityField, X as EntityFieldInput, Y as EntityFieldSchema, Z as EntityPersistence, _ as EntityPersistenceSchema, $ as EntityRef, a0 as EntityRefSchema, a1 as EntityRefStringSchema, a2 as EntityRole, a3 as EntityRoleSchema, a4 as EntitySchema, a5 as EntitySemanticRole, a6 as EntitySemanticRoleSchema, a7 as Event, a8 as EventInput, a9 as EventListener, aa as EventListenerSchema, ab as EventPayloadField, ac as EventPayloadFieldSchema, ad as EventSchema, ae as EventScope, af as EventScopeSchema, ag as EventSemanticRole, ah as EventSemanticRoleSchema, ai as EventSource, aj as EventSourceSchema, ak as Expression, al as ExpressionInput, am as ExpressionSchema, an as Field, ao as FieldFormat, ap as FieldFormatSchema, aq as FieldSchema, ar as FieldType, as as FieldTypeSchema, at as FullOrbitalUnit, au as GAME_TYPES, av as GameSubCategory, aw as GameSubCategorySchema, ax as GameType, ay as GameTypeSchema, az as Guard, aA as GuardInput, aB as GuardSchema, aC as McpServiceDef, aD as McpServiceDefSchema, aE as NodeClassification, aF as NodeClassificationSchema, at as Orbital, aG as OrbitalConfig, aH as OrbitalConfigInput, aI as OrbitalConfigSchema, a as OrbitalDefinition, aJ as OrbitalDefinitionSchema, aK as OrbitalEntity, aL as OrbitalEntityInput, aM as OrbitalEntitySchema, aN as OrbitalInput, aO as OrbitalPage, aP as OrbitalPageInput, aQ as OrbitalPageSchema, aR as OrbitalPageStrictInput, aS as OrbitalPageStrictSchema, O as OrbitalSchema, aT as OrbitalSchemaInput, aU as OrbitalSchemaSchema, aV as OrbitalTraitRef, aW as OrbitalTraitRefSchema, aX as OrbitalUnit, aY as OrbitalUnitSchema, aZ as OrbitalZodSchema, a_ as Page, a$ as PageRef, b0 as PageRefObject, b1 as PageRefObjectSchema, b2 as PageRefSchema, b3 as PageRefStringSchema, b4 as PageSchema, b5 as PageTraitRef, b6 as PageTraitRefSchema, b7 as ParsedBinding, b8 as PayloadField, b9 as PayloadFieldSchema, ba as PresentationType, bb as RelatedLink, bc as RelatedLinkSchema, bd as RelationConfig, be as RelationConfigSchema, bf as RenderUIConfig, bg as RequiredField, bh as RequiredFieldSchema, bi as ResolvedAsset, bj as ResolvedAssetInput, bk as ResolvedAssetSchema, bl as RestAuthConfig, bm as RestAuthConfigSchema, bn as RestServiceDef, bo as RestServiceDefSchema, bp as SERVICE_TYPES, br as SExprAtom, bs as SExprAtomSchema, bt as SExprInput, bu as SExprSchema, bv as SemanticAssetRef, bw as SemanticAssetRefInput, bx as SemanticAssetRefSchema, by as ServiceDefinition, bz as ServiceDefinitionSchema, bA as ServiceRef, bB as ServiceRefSchema, bC as ServiceRefStringSchema, bD as ServiceType, bE as ServiceTypeSchema, bF as SocketEvents, bG as SocketEventsSchema, bH as SocketServiceDef, bI as SocketServiceDefSchema, S as State, bJ as StateInput, bK as StateMachine, bL as StateMachineInput, bM as StateMachineSchema, bN as StateSchema, bO as StateSemanticRole, bP as StateSemanticRoleSchema, bQ as SuggestedGuard, bR as SuggestedGuardSchema, bS as ThemeDefinition, bT as ThemeDefinitionSchema, bU as ThemeRef, bV as ThemeRefSchema, bW as ThemeRefStringSchema, bX as ThemeTokens, bY as ThemeTokensSchema, bZ as ThemeVariant, b_ as ThemeVariantSchema, b$ as Trait, c0 as TraitCategory, c1 as TraitCategorySchema, c2 as TraitDataEntity, c3 as TraitDataEntitySchema, c4 as TraitEntityField, c5 as TraitEntityFieldSchema, c6 as TraitEventContract, c7 as TraitEventContractSchema, c8 as TraitEventListener, c9 as TraitEventListenerSchema, ca as TraitInput, cb as TraitRef, cc as TraitRefSchema, cd as TraitReference, ce as TraitReferenceInput, cf as TraitReferenceSchema, cg as TraitSchema, ch as TraitTick, ci as TraitTickSchema, cj as TraitUIBinding, ck as Transition, cl as TransitionInput, cm as TransitionSchema, cn as UISlot, co as UISlotSchema, cp as UI_SLOTS, cq as UXHints, cr as UXHintsSchema, cs as UseDeclaration, ct as UseDeclarationSchema, cu as UserPersona, cv as UserPersonaInput, cw as UserPersonaSchema, cx as VISUAL_STYLES, cy as ViewType, cz as ViewTypeSchema, cA as VisualStyle, cB as VisualStyleSchema, cC as callService, cD as collectBindings, cE as createAssetKey, cF as deriveCollection, cG as despawn, cH as doEffects, cI as emit, cJ as findService, cK as getArgs, cL as getDefaultAnimationsForRole, cM as getOperator, cN as getServiceNames, cO as getTraitConfig, cP as getTraitName, cQ as hasService, cR as isBinding, cS as isCircuitEvent, cT as isEffect, cU as isEntityReference, cV as isImportedTraitRef, cW as isInlineTrait, cX as isMcpService, cY as isOrbitalDefinition, cZ as isPageReference, c_ as isPageReferenceObject, c$ as isPageReferenceString, d0 as isRestService, d1 as isRuntimeEntity, d2 as isSExpr, d3 as isSExprAtom, d4 as isSExprCall, d5 as isSExprEffect, d6 as isServiceReference, d7 as isSingletonEntity, d8 as isSocketService, d9 as isThemeReference, da as isValidBinding, db as navigate, dc as normalizeTraitRef, dd as notify, de as parseAssetKey, df as parseBinding, dg as parseEntityRef, dh as parseImportedTraitRef, di as parseOrbitalSchema, dj as parsePageRef, dk as parseServiceRef, dl as persist, dm as renderUI, dn as safeParseOrbitalSchema, dp as set, dq as sexpr, dr as spawn, ds as validateAssetAnimations, dt as walkSExpr } from '../schema-N46ASk3M.js';
1
+ import { bs as SExpr } from '../schema-DKSddYoB.js';
2
+ export { A as AGENT_DOMAIN_CATEGORIES, e as ALLOWED_CUSTOM_COMPONENTS, f as AgentDomainCategory, g as AgentDomainCategorySchema, h as AllowedCustomComponent, i as AnimationDef, j as AnimationDefInput, k as AnimationDefSchema, b as AppSchema, l as AssetMap, m as AssetMapInput, n as AssetMapSchema, o as AssetMapping, p as AssetMappingInput, q as AssetMappingSchema, C as CORE_BINDINGS, r as CallServiceConfig, s as ComputedEventContract, t as ComputedEventContractSchema, u as ComputedEventListener, v as ComputedEventListenerSchema, w as CoreBinding, x as CustomPatternDefinition, y as CustomPatternDefinitionInput, z as CustomPatternDefinitionSchema, B as CustomPatternMap, D as CustomPatternMapInput, F as CustomPatternMapSchema, G as DesignPreferences, H as DesignPreferencesInput, I as DesignPreferencesSchema, J as DesignTokens, K as DesignTokensInput, L as DesignTokensSchema, M as DomainCategory, N as DomainCategorySchema, Q as DomainContext, R as DomainContextInput, U as DomainContextSchema, V as DomainVocabulary, W as DomainVocabularySchema, X as ENTITY_ROLES, Y as Effect, Z as EffectInput, _ as EffectSchema, c as Entity, E as EntityField, $ as EntityFieldInput, a0 as EntityFieldSchema, a as EntityPersistence, a1 as EntityPersistenceSchema, a2 as EntityRef, a3 as EntityRefSchema, a4 as EntityRefStringSchema, a5 as EntityRole, a6 as EntityRoleSchema, a7 as EntitySchema, a8 as EntitySemanticRole, a9 as EntitySemanticRoleSchema, aa as Event, ab as EventInput, ac as EventListener, ad as EventListenerSchema, ae as EventPayloadField, af as EventPayloadFieldSchema, ag as EventSchema, ah as EventScope, ai as EventScopeSchema, aj as EventSemanticRole, ak as EventSemanticRoleSchema, al as EventSource, am as EventSourceSchema, an as Expression, ao as ExpressionInput, ap as ExpressionSchema, aq as Field, ar as FieldFormat, as as FieldFormatSchema, at as FieldSchema, au as FieldType, av as FieldTypeSchema, aw as FullOrbitalUnit, ax as GAME_TYPES, ay as GameSubCategory, az as GameSubCategorySchema, aA as GameType, aB as GameTypeSchema, aC as Guard, aD as GuardInput, aE as GuardSchema, aF as McpServiceDef, aG as McpServiceDefSchema, aH as NodeClassification, aI as NodeClassificationSchema, aw as Orbital, aJ as OrbitalConfig, aK as OrbitalConfigInput, aL as OrbitalConfigSchema, O as OrbitalDefinition, aM as OrbitalDefinitionSchema, aN as OrbitalEntity, aO as OrbitalEntityInput, aP as OrbitalEntitySchema, aQ as OrbitalInput, aR as OrbitalPage, aS as OrbitalPageInput, aT as OrbitalPageSchema, aU as OrbitalPageStrictInput, aV as OrbitalPageStrictSchema, b as OrbitalSchema, aW as OrbitalSchemaInput, aX as OrbitalSchemaSchema, aY as OrbitalTraitRef, aZ as OrbitalTraitRefSchema, a_ as OrbitalUnit, a$ as OrbitalUnitSchema, b0 as OrbitalZodSchema, P as Page, b1 as PageRef, b2 as PageRefObject, b3 as PageRefObjectSchema, b4 as PageRefSchema, b5 as PageRefStringSchema, b6 as PageSchema, b7 as PageTraitRef, b8 as PageTraitRefSchema, b9 as ParsedBinding, ba as PayloadField, bb as PayloadFieldSchema, bc as PresentationType, bd as RelatedLink, be as RelatedLinkSchema, bf as RelationConfig, bg as RelationConfigSchema, bh as RenderUIConfig, bi as RequiredField, bj as RequiredFieldSchema, bk as ResolvedAsset, bl as ResolvedAssetInput, bm as ResolvedAssetSchema, bn as RestAuthConfig, bo as RestAuthConfigSchema, bp as RestServiceDef, bq as RestServiceDefSchema, br as SERVICE_TYPES, bt as SExprAtom, bu as SExprAtomSchema, bv as SExprInput, bw as SExprSchema, bx as SemanticAssetRef, by as SemanticAssetRefInput, bz as SemanticAssetRefSchema, bA as ServiceDefinition, bB as ServiceDefinitionSchema, bC as ServiceRef, bD as ServiceRefSchema, bE as ServiceRefStringSchema, bF as ServiceType, bG as ServiceTypeSchema, bH as SocketEvents, bI as SocketEventsSchema, bJ as SocketServiceDef, bK as SocketServiceDefSchema, S as State, bL as StateInput, bM as StateMachine, bN as StateMachineInput, bO as StateMachineSchema, bP as StateSchema, bQ as StateSemanticRole, bR as StateSemanticRoleSchema, bS as SuggestedGuard, bT as SuggestedGuardSchema, bU as ThemeDefinition, bV as ThemeDefinitionSchema, bW as ThemeRef, bX as ThemeRefSchema, bY as ThemeRefStringSchema, bZ as ThemeTokens, b_ as ThemeTokensSchema, b$ as ThemeVariant, c0 as ThemeVariantSchema, d as Trait, c1 as TraitCategory, c2 as TraitCategorySchema, c3 as TraitDataEntity, c4 as TraitDataEntitySchema, c5 as TraitEntityField, c6 as TraitEntityFieldSchema, T as TraitEventContract, c7 as TraitEventContractSchema, c8 as TraitEventListener, c9 as TraitEventListenerSchema, ca as TraitInput, cb as TraitRef, cc as TraitRefSchema, cd as TraitReference, ce as TraitReferenceInput, cf as TraitReferenceSchema, cg as TraitSchema, ch as TraitTick, ci as TraitTickSchema, cj as TraitUIBinding, ck as Transition, cl as TransitionInput, cm as TransitionSchema, cn as UISlot, co as UISlotSchema, cp as UI_SLOTS, cq as UXHints, cr as UXHintsSchema, cs as UseDeclaration, ct as UseDeclarationSchema, cu as UserPersona, cv as UserPersonaInput, cw as UserPersonaSchema, cx as VISUAL_STYLES, cy as ViewType, cz as ViewTypeSchema, cA as VisualStyle, cB as VisualStyleSchema, cC as callService, cD as collectBindings, cE as createAssetKey, cF as deriveCollection, cG as despawn, cH as doEffects, cI as emit, cJ as findService, cK as getArgs, cL as getDefaultAnimationsForRole, cM as getOperator, cN as getServiceNames, cO as getTraitConfig, cP as getTraitName, cQ as hasService, cR as isBinding, cS as isCircuitEvent, cT as isEffect, cU as isEntityReference, cV as isImportedTraitRef, cW as isInlineTrait, cX as isMcpService, cY as isOrbitalDefinition, cZ as isPageReference, c_ as isPageReferenceObject, c$ as isPageReferenceString, d0 as isRestService, d1 as isRuntimeEntity, d2 as isSExpr, d3 as isSExprAtom, d4 as isSExprCall, d5 as isSExprEffect, d6 as isServiceReference, d7 as isSingletonEntity, d8 as isSocketService, d9 as isThemeReference, da as isValidBinding, db as navigate, dc as normalizeTraitRef, dd as notify, de as parseAssetKey, df as parseBinding, dg as parseEntityRef, dh as parseImportedTraitRef, di as parseOrbitalSchema, dj as parsePageRef, dk as parseServiceRef, dl as persist, dm as renderUI, dn as safeParseOrbitalSchema, dp as set, dq as sexpr, dr as spawn, ds as validateAssetAnimations, dt as walkSExpr } from '../schema-DKSddYoB.js';
3
3
  import { z } from 'zod';
4
4
  export { CATEGORIES, CategoryMeta, OPERATORS, OPERATORS_SCHEMA, OPERATOR_NAMES, OperatorCategory, OperatorMeta, OperatorStats, OperatorsSchema, TargetPlatform, getOperatorMeta, getOperatorStats, getOperatorsByCategory, getOperatorsForTarget, isEffectOperator, isGuardOperator, isKnownOperator, validateOperatorArity } from '@almadar/operators';
5
5
  export { PATTERN_TYPES, PatternConfig, PatternType, isValidPatternType } from '@almadar/patterns';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@almadar/core",
3
- "version": "2.2.1",
3
+ "version": "2.3.0",
4
4
  "description": "Core schema types and definitions for Almadar",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -26,6 +26,11 @@
26
26
  "types": "./dist/state-machine/index.d.ts",
27
27
  "import": "./dist/state-machine/index.js",
28
28
  "require": "./dist/state-machine/index.js"
29
+ },
30
+ "./builders": {
31
+ "types": "./dist/builders.d.ts",
32
+ "import": "./dist/builders.js",
33
+ "require": "./dist/builders.js"
29
34
  }
30
35
  },
31
36
  "files": [