@almadar/core 10.129.0 → 11.0.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/behavior-package.d.ts +49 -11
- package/dist/behavior-package.js +1 -1
- package/dist/{orbital-CkFdDS9f.d.ts → builders-BhnofAik.d.ts} +5966 -7116
- package/dist/builders.d.ts +6 -6
- package/dist/builders.js +7 -6
- package/dist/{bus-CcbB__oo.d.ts → bus-BrRFWDQK.d.ts} +270 -354
- package/dist/chunk-347APWFM.js +286 -0
- package/dist/chunk-347APWFM.js.map +1 -0
- package/dist/chunk-3URQAGD7.js +98 -0
- package/dist/chunk-3URQAGD7.js.map +1 -0
- package/dist/chunk-7GHJU5WI.js +39 -0
- package/dist/chunk-7GHJU5WI.js.map +1 -0
- package/dist/chunk-B4MNHGBP.js +8 -0
- package/dist/chunk-B4MNHGBP.js.map +1 -0
- package/dist/{chunk-KDMV222Q.js → chunk-F6KHUW7T.js} +304 -373
- package/dist/chunk-F6KHUW7T.js.map +1 -0
- package/dist/chunk-FGT5OS2Y.js +918 -0
- package/dist/chunk-FGT5OS2Y.js.map +1 -0
- package/dist/chunk-FQLEAMAB.js +24 -0
- package/dist/chunk-FQLEAMAB.js.map +1 -0
- package/dist/chunk-HEXOGHQ4.js +3264 -0
- package/dist/chunk-HEXOGHQ4.js.map +1 -0
- package/dist/chunk-JCD6GLBX.js +412 -0
- package/dist/chunk-JCD6GLBX.js.map +1 -0
- package/dist/{chunk-QUOTJULD.js → chunk-MGLG2XLD.js} +20 -219
- package/dist/chunk-MGLG2XLD.js.map +1 -0
- package/dist/chunk-MTBEBSNO.js +1293 -0
- package/dist/chunk-MTBEBSNO.js.map +1 -0
- package/dist/{chunk-X4SC7FGF.js → chunk-RGACZEYC.js} +99 -96
- package/dist/chunk-RGACZEYC.js.map +1 -0
- package/dist/{chunk-RYPVOI6H.js → chunk-UZPYYI37.js} +524 -26
- package/dist/{chunk-RYPVOI6H.js.map → chunk-UZPYYI37.js.map} +1 -1
- package/dist/chunk-VG7BRFUD.js +152 -0
- package/dist/chunk-VG7BRFUD.js.map +1 -0
- package/dist/chunk-Y2DYZPP5.js +2329 -0
- package/dist/chunk-Y2DYZPP5.js.map +1 -0
- package/dist/chunk-ZEI7C32D.js +1566 -0
- package/dist/chunk-ZEI7C32D.js.map +1 -0
- package/dist/{domain-Dz3jP-UM.d.ts → domain-CfKPpXCP.d.ts} +51 -51
- package/dist/{effect-result-Bebwu9yT.d.ts → effect-result-DPERsn_v.d.ts} +641 -851
- package/dist/{effect-CiEVLsZz.d.ts → effect-wP-IdRt2.d.ts} +236 -443
- package/dist/{expression-D0Fs0riG.d.ts → expression-DirYKz-f.d.ts} +5 -13
- package/dist/factory/index.d.ts +7 -144
- package/dist/factory/index.js +8 -8
- package/dist/factory-runtime/index.d.ts +7 -6
- package/dist/factory-runtime/index.js +527 -8
- package/dist/factory-runtime/index.js.map +1 -1
- package/dist/fixtures.d.ts +9 -11
- package/dist/fixtures.js +12 -8
- package/dist/fixtures.js.map +1 -1
- package/dist/i18n/index.d.ts +15 -19
- package/dist/i18n/index.js +2 -1
- package/dist/{index-BC-Jycqj.d.ts → index-DomgmRBG.d.ts} +29 -729
- package/dist/index.d.ts +69 -247
- package/dist/index.js +322 -986
- package/dist/index.js.map +1 -1
- package/dist/kernel-wire.d.ts +3 -3
- package/dist/kernel-wire.js +3 -79
- package/dist/kernel-wire.js.map +1 -1
- package/dist/language/constructs.json +22 -2
- package/dist/language/program-types.json +203 -22
- package/dist/language/protocols.json +46 -0
- package/dist/language/ui-vocabulary.json +1697 -0
- package/dist/language/validation-codes.json +1205 -1215
- package/dist/language/vocabulary.json +44 -8
- package/dist/language-data.d.ts +7 -4
- package/dist/language-data.js +20 -14
- package/dist/language-data.js.map +1 -1
- package/dist/patterns/component-mapping.json +11 -1
- package/dist/patterns/definitions.d.ts +2 -2
- package/dist/patterns/definitions.js +1 -1
- package/dist/patterns/event-contracts.json +1 -15
- package/dist/patterns/index.d.ts +24 -120
- package/dist/patterns/index.js +3 -3
- package/dist/patterns/patterns-registry.json +522 -24
- package/dist/patterns/registry.json +522 -24
- package/dist/trait-CzG9M89M.d.ts +3519 -0
- package/dist/types/index.d.ts +9 -10
- package/dist/types/index.js +11 -5
- package/dist/{types-DGwrltUF.d.ts → types-BHlTjwWd.d.ts} +3 -3
- package/fixtures/events-wire/client-effects-by-trait/response.json +0 -18
- package/fixtures/events-wire/client-effects-provenance/response.json +0 -18
- package/fixtures/events-wire/effect-results-every-kind/response.json +2 -27
- package/fixtures/events-wire/navigate-1/response.json +8 -5
- package/fixtures/events-wire/navigate-2/response.json +11 -8
- package/fixtures/events-wire/navigate-3/response.json +14 -11
- package/fixtures/events-wire/navigate-back/response.json +7 -4
- package/fixtures/events-wire/render-ui-3/response.json +12 -9
- package/fixtures/events-wire/render-ui-clear/response.json +0 -7
- package/fixtures/events-wire/sse-stream/response.json +0 -20
- package/fixtures/events-wire/sse-stream/stream.json +0 -20
- package/fixtures/events-wire/stateless-traits/response.json +14 -5
- package/fixtures/kernel-wire/golden/basic-entity.json +1687 -0
- package/fixtures/kernel-wire/golden/entity-rerender.json +743 -0
- package/fixtures/kernel-wire/golden/rollback.json +793 -0
- package/fixtures/kernel-wire/golden/tick-counter.json +1538 -0
- package/fixtures/kernel-wire/golden/two-orbital-chore.json +847 -0
- package/fixtures/kernel-wire/golden/two-orbital-task.json +457 -0
- package/fixtures/kernel-wire/played-step.json +136 -0
- package/fixtures/kernel-wire/scripts/basic-entity.json +28 -0
- package/fixtures/kernel-wire/scripts/entity-rerender.json +13 -0
- package/fixtures/kernel-wire/scripts/rollback.json +53 -0
- package/fixtures/kernel-wire/scripts/tick-counter.json +26 -0
- package/fixtures/kernel-wire/scripts/two-orbital-chore.json +9 -0
- package/fixtures/kernel-wire/scripts/two-orbital-task.json +9 -0
- package/package.json +28 -19
- package/dist/builders-DmZE5By0.d.ts +0 -2663
- package/dist/chunk-45I2O4SJ.js +0 -4646
- package/dist/chunk-45I2O4SJ.js.map +0 -1
- package/dist/chunk-6LR43Z5E.js +0 -3061
- package/dist/chunk-6LR43Z5E.js.map +0 -1
- package/dist/chunk-GIUA3NUJ.js +0 -809
- package/dist/chunk-GIUA3NUJ.js.map +0 -1
- package/dist/chunk-GTY53NS5.js +0 -1908
- package/dist/chunk-GTY53NS5.js.map +0 -1
- package/dist/chunk-JOHDVS6J.js +0 -1614
- package/dist/chunk-JOHDVS6J.js.map +0 -1
- package/dist/chunk-KDMV222Q.js.map +0 -1
- package/dist/chunk-QRHJUS3D.js +0 -23
- package/dist/chunk-QRHJUS3D.js.map +0 -1
- package/dist/chunk-QUOTJULD.js.map +0 -1
- package/dist/chunk-V5VNGRVU.js +0 -66
- package/dist/chunk-V5VNGRVU.js.map +0 -1
- package/dist/chunk-X4SC7FGF.js.map +0 -1
- package/dist/entityAccess-BPSz1i2n.d.ts +0 -80
- package/dist/mock/index.d.ts +0 -153
- package/dist/mock/index.js +0 -190
- package/dist/mock/index.js.map +0 -1
- package/dist/schema-T5RT5s6H.d.ts +0 -282
- package/dist/state-machine/index.d.ts +0 -359
- package/dist/state-machine/index.js +0 -3
- package/dist/state-machine/index.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { R as RuntimeValue, J as JsonValue, S as SExpr,
|
|
2
|
+
import { R as RuntimeValue, J as JsonValue, S as SExpr, c as EventPayload, b as Expression } from './expression-DirYKz-f.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Service Types for Orbital Schema
|
|
@@ -541,16 +541,10 @@ declare function idPrefix(kind: IdKind): string;
|
|
|
541
541
|
* mutually non-overlapping, so match order is irrelevant.
|
|
542
542
|
*/
|
|
543
543
|
declare function idKindOf(id: string): IdKind | null;
|
|
544
|
+
/** A 26-char Crockford-base32 ULID: 48-bit ms timestamp + 80 bits of randomness. Needs only `getRandomValues`, so it also runs on a plain-http page where `randomUUID` is absent. */
|
|
545
|
+
declare function mintUlid(): string;
|
|
544
546
|
/** Mint a fresh, opaque, kind-tagged id: `<prefix><ULID>`. */
|
|
545
547
|
declare function mintId<K extends IdKind>(kind: K): IdForKind[K];
|
|
546
|
-
/**
|
|
547
|
-
* Deterministically derive a child id rooted in `parentId` — no entropy, no
|
|
548
|
-
* clock, so re-deriving from the same inputs never churns. JS twin of the
|
|
549
|
-
* Rust `derive_id` in `orbital-core/src/identity.rs`; used ONLY for synthetic
|
|
550
|
-
* nodes produced by deterministic materialization (orbital-import
|
|
551
|
-
* prefixing), never for author-facing fresh ids (use {@link mintId} there).
|
|
552
|
-
*/
|
|
553
|
-
declare function deriveId(parentId: string, discriminator: string): string;
|
|
554
548
|
/** Ledger row kind. `palette` entries are manifest ids, not name-ledger rows. */
|
|
555
549
|
type LedgerKind = 'orbital' | 'entity' | 'trait' | 'event' | 'page' | 'service' | 'theme';
|
|
556
550
|
/**
|
|
@@ -601,23 +595,23 @@ declare const ServiceIdSchema: z.ZodString & z.ZodType<ServiceId, string, z.core
|
|
|
601
595
|
declare const ThemeIdSchema: z.ZodString & z.ZodType<ThemeId, string, z.core.$ZodTypeInternals<ThemeId, string>>;
|
|
602
596
|
declare const PaletteEntryIdSchema: z.ZodString & z.ZodType<PaletteEntryId, string, z.core.$ZodTypeInternals<PaletteEntryId, string>>;
|
|
603
597
|
declare const LedgerKindSchema: z.ZodEnum<{
|
|
604
|
-
trait: "trait";
|
|
605
598
|
orbital: "orbital";
|
|
606
|
-
|
|
599
|
+
trait: "trait";
|
|
607
600
|
event: "event";
|
|
608
|
-
page: "page";
|
|
609
601
|
service: "service";
|
|
602
|
+
entity: "entity";
|
|
603
|
+
page: "page";
|
|
610
604
|
theme: "theme";
|
|
611
605
|
}>;
|
|
612
606
|
declare const LedgerEntrySchema: z.ZodObject<{
|
|
613
607
|
id: z.ZodString;
|
|
614
608
|
kind: z.ZodEnum<{
|
|
615
|
-
trait: "trait";
|
|
616
609
|
orbital: "orbital";
|
|
617
|
-
|
|
610
|
+
trait: "trait";
|
|
618
611
|
event: "event";
|
|
619
|
-
page: "page";
|
|
620
612
|
service: "service";
|
|
613
|
+
entity: "entity";
|
|
614
|
+
page: "page";
|
|
621
615
|
theme: "theme";
|
|
622
616
|
}>;
|
|
623
617
|
bakedName: z.ZodString;
|
|
@@ -639,12 +633,12 @@ declare const IdentityLedgerSchema: z.ZodObject<{
|
|
|
639
633
|
entries: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
640
634
|
id: z.ZodString;
|
|
641
635
|
kind: z.ZodEnum<{
|
|
642
|
-
trait: "trait";
|
|
643
636
|
orbital: "orbital";
|
|
644
|
-
|
|
637
|
+
trait: "trait";
|
|
645
638
|
event: "event";
|
|
646
|
-
page: "page";
|
|
647
639
|
service: "service";
|
|
640
|
+
entity: "entity";
|
|
641
|
+
page: "page";
|
|
648
642
|
theme: "theme";
|
|
649
643
|
}>;
|
|
650
644
|
bakedName: z.ZodString;
|
|
@@ -695,11 +689,15 @@ type FieldType = FieldTag | TypeVariable;
|
|
|
695
689
|
/** An unbound type variable (`t` of `type Page t` or a trait's `(t : Type)`),
|
|
696
690
|
* written `$t` — the `.orb` spelling the Rust `FieldType::TypeVar` serializes to. */
|
|
697
691
|
type TypeVariable = `$${string}`;
|
|
692
|
+
/** The fixed widths other than `int` (i64) and `number` (f64), the Rust `FieldType::Sized`: a checked range over
|
|
693
|
+
* an int or a number at run time. */
|
|
694
|
+
declare const NUM_WIDTH_TAGS: readonly ["i8", "i16", "i32", "u8", "u16", "u32", "u64", "f32"];
|
|
695
|
+
type NumWidthTag = (typeof NUM_WIDTH_TAGS)[number];
|
|
698
696
|
/** The concrete field-type tags (every `FieldType` but a type variable). */
|
|
699
|
-
type FieldTag = 'string' | 'number' | 'int' | 'boolean' | 'date' | 'timestamp' | 'datetime' | 'instant' | 'email' | 'url' | 'phone' | 'uuid' | 'image' | 'money' | 'file' | 'bytes' | 'array' | 'object' | 'enum' | 'relation' | 'trait' | 'orbital' | 'behavior' | 'slot' | 'pattern' | 'node' | 'event' | 'EventAddress' | 'CallKey' | 'SExpr' | 'union' | 'tuple' | 'field';
|
|
697
|
+
type FieldTag = 'string' | 'number' | 'int' | NumWidthTag | 'boolean' | 'date' | 'timestamp' | 'datetime' | 'instant' | 'email' | 'url' | 'phone' | 'uuid' | 'image' | 'money' | 'file' | 'bytes' | 'array' | 'object' | 'enum' | 'relation' | 'trait' | 'orbital' | 'behavior' | 'slot' | 'pattern' | 'node' | 'event' | 'EventAddress' | 'CallKey' | 'SExpr' | 'union' | 'tuple' | 'field';
|
|
700
698
|
/** Every `FieldType`, as a runtime array. Downstream imports this instead of
|
|
701
699
|
* re-listing the union — five copies had already drifted apart. */
|
|
702
|
-
declare const FIELD_TYPES: readonly ["string", "number", "int", "boolean", "date", "timestamp", "datetime", "instant", "email", "url", "phone", "uuid", "image", "money", "file", "bytes", "array", "object", "enum", "relation", "trait", "orbital", "behavior", "slot", "pattern", "node", "event", "EventAddress", "CallKey", "SExpr", "union", "tuple", "field"];
|
|
700
|
+
declare const FIELD_TYPES: readonly ["string", "number", "int", "i8", "i16", "i32", "u8", "u16", "u32", "u64", "f32", "boolean", "date", "timestamp", "datetime", "instant", "email", "url", "phone", "uuid", "image", "money", "file", "bytes", "array", "object", "enum", "relation", "trait", "orbital", "behavior", "slot", "pattern", "node", "event", "EventAddress", "CallKey", "SExpr", "union", "tuple", "field"];
|
|
703
701
|
/** The semantic string domains — constrained strings, validatable by value. */
|
|
704
702
|
declare const SEMANTIC_STRING_TYPES: readonly ["email", "url", "phone", "uuid", "image"];
|
|
705
703
|
type SemanticStringType = (typeof SEMANTIC_STRING_TYPES)[number];
|
|
@@ -718,26 +716,34 @@ declare const FieldTagSchema: z.ZodEnum<{
|
|
|
718
716
|
union: "union";
|
|
719
717
|
enum: "enum";
|
|
720
718
|
pattern: "pattern";
|
|
721
|
-
url: "url";
|
|
722
|
-
trait: "trait";
|
|
723
719
|
orbital: "orbital";
|
|
720
|
+
trait: "trait";
|
|
724
721
|
event: "event";
|
|
725
722
|
node: "node";
|
|
723
|
+
url: "url";
|
|
724
|
+
image: "image";
|
|
726
725
|
field: "field";
|
|
727
726
|
timestamp: "timestamp";
|
|
727
|
+
slot: "slot";
|
|
728
728
|
datetime: "datetime";
|
|
729
729
|
instant: "instant";
|
|
730
730
|
email: "email";
|
|
731
731
|
phone: "phone";
|
|
732
732
|
uuid: "uuid";
|
|
733
|
-
image: "image";
|
|
734
733
|
bytes: "bytes";
|
|
735
|
-
slot: "slot";
|
|
736
734
|
EventAddress: "EventAddress";
|
|
737
735
|
CallKey: "CallKey";
|
|
738
736
|
SExpr: "SExpr";
|
|
739
737
|
behavior: "behavior";
|
|
740
738
|
relation: "relation";
|
|
739
|
+
i8: "i8";
|
|
740
|
+
i16: "i16";
|
|
741
|
+
i32: "i32";
|
|
742
|
+
u8: "u8";
|
|
743
|
+
u16: "u16";
|
|
744
|
+
u32: "u32";
|
|
745
|
+
u64: "u64";
|
|
746
|
+
f32: "f32";
|
|
741
747
|
money: "money";
|
|
742
748
|
}>;
|
|
743
749
|
declare function isTypeVariable(type: string): type is TypeVariable;
|
|
@@ -755,26 +761,34 @@ declare const FieldTypeSchema: z.ZodUnion<readonly [z.ZodEnum<{
|
|
|
755
761
|
union: "union";
|
|
756
762
|
enum: "enum";
|
|
757
763
|
pattern: "pattern";
|
|
758
|
-
url: "url";
|
|
759
|
-
trait: "trait";
|
|
760
764
|
orbital: "orbital";
|
|
765
|
+
trait: "trait";
|
|
761
766
|
event: "event";
|
|
762
767
|
node: "node";
|
|
768
|
+
url: "url";
|
|
769
|
+
image: "image";
|
|
763
770
|
field: "field";
|
|
764
771
|
timestamp: "timestamp";
|
|
772
|
+
slot: "slot";
|
|
765
773
|
datetime: "datetime";
|
|
766
774
|
instant: "instant";
|
|
767
775
|
email: "email";
|
|
768
776
|
phone: "phone";
|
|
769
777
|
uuid: "uuid";
|
|
770
|
-
image: "image";
|
|
771
778
|
bytes: "bytes";
|
|
772
|
-
slot: "slot";
|
|
773
779
|
EventAddress: "EventAddress";
|
|
774
780
|
CallKey: "CallKey";
|
|
775
781
|
SExpr: "SExpr";
|
|
776
782
|
behavior: "behavior";
|
|
777
783
|
relation: "relation";
|
|
784
|
+
i8: "i8";
|
|
785
|
+
i16: "i16";
|
|
786
|
+
i32: "i32";
|
|
787
|
+
u8: "u8";
|
|
788
|
+
u16: "u16";
|
|
789
|
+
u32: "u32";
|
|
790
|
+
u64: "u64";
|
|
791
|
+
f32: "f32";
|
|
778
792
|
money: "money";
|
|
779
793
|
}>, z.ZodCustom<`$${string}`, `$${string}`>]>;
|
|
780
794
|
/** Words legal in a `.lolo`/`.orb` TYPE POSITION that are not entity field
|
|
@@ -782,7 +796,7 @@ declare const FieldTypeSchema: z.ZodUnion<readonly [z.ZodEnum<{
|
|
|
782
796
|
* meaning, etc.) — declared so the i18n `types` vocabulary section is
|
|
783
797
|
* `FIELD_TYPES ∪ TYPE_POSITION_ONLY` exactly, not a hand-maintained superset
|
|
784
798
|
* held together by a one-directional pinned test (see G-i18n-5). */
|
|
785
|
-
declare const TYPE_POSITION_ONLY: readonly ["Map", "any", "asset", "bool", "component", "duration", "entity", "float", "icon", "null", "secret", "void"];
|
|
799
|
+
declare const TYPE_POSITION_ONLY: readonly ["Map", "any", "asset", "bool", "component", "duration", "entity", "f64", "float", "i64", "icon", "null", "secret", "void"];
|
|
786
800
|
/**
|
|
787
801
|
* Cardinality for relation fields.
|
|
788
802
|
* Matches Rust compiler's Cardinality enum.
|
|
@@ -806,6 +820,8 @@ type RelationConfig = {
|
|
|
806
820
|
cardinality?: RelationCardinality;
|
|
807
821
|
/** Delete behavior */
|
|
808
822
|
onDelete?: 'cascade' | 'nullify' | 'restrict';
|
|
823
|
+
/** The target field a related record is shown by (`@display <field>`); the record id when absent. */
|
|
824
|
+
display?: string;
|
|
809
825
|
/**
|
|
810
826
|
* Foreign key field name (for legacy compatibility).
|
|
811
827
|
* @deprecated Use field instead
|
|
@@ -838,6 +854,7 @@ declare const RelationConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
|
838
854
|
nullify: "nullify";
|
|
839
855
|
restrict: "restrict";
|
|
840
856
|
}>>;
|
|
857
|
+
display: z.ZodOptional<z.ZodString>;
|
|
841
858
|
foreignKey: z.ZodOptional<z.ZodString>;
|
|
842
859
|
target: z.ZodOptional<z.ZodString>;
|
|
843
860
|
type: z.ZodOptional<z.ZodEnum<{
|
|
@@ -855,6 +872,7 @@ declare const RelationConfigSchema: z.ZodPipe<z.ZodObject<{
|
|
|
855
872
|
field?: string | undefined;
|
|
856
873
|
cardinality?: "one" | "many" | "one-to-many" | "many-to-one" | "many-to-many" | undefined;
|
|
857
874
|
onDelete?: "cascade" | "nullify" | "restrict" | undefined;
|
|
875
|
+
display?: string | undefined;
|
|
858
876
|
foreignKey?: string | undefined;
|
|
859
877
|
target?: string | undefined;
|
|
860
878
|
type?: "one" | "many" | "one-to-many" | "many-to-one" | "many-to-many" | undefined;
|
|
@@ -907,7 +925,7 @@ declare function isSemanticStringValue(type: SemanticStringType, value: string):
|
|
|
907
925
|
* Field-type tags that don't carry a type-dependent payload. The base
|
|
908
926
|
* `EntityField` shape applies as-is.
|
|
909
927
|
*/
|
|
910
|
-
type ScalarFieldType = 'string' | 'number' | 'int' | 'boolean' | 'date' | 'timestamp' | 'datetime' | 'instant' | 'email' | 'url' | 'phone' | 'uuid' | 'image' | 'money' | 'file' | 'bytes' | 'trait' | 'orbital' | 'behavior' | 'slot' | 'pattern' | 'node' | 'event' | 'EventAddress' | 'CallKey' | 'SExpr';
|
|
928
|
+
type ScalarFieldType = 'string' | 'number' | 'int' | NumWidthTag | 'boolean' | 'date' | 'timestamp' | 'datetime' | 'instant' | 'email' | 'url' | 'phone' | 'uuid' | 'image' | 'money' | 'file' | 'bytes' | 'trait' | 'orbital' | 'behavior' | 'slot' | 'pattern' | 'node' | 'event' | 'EventAddress' | 'CallKey' | 'SExpr';
|
|
911
929
|
/** Fields shared across every variant. */
|
|
912
930
|
type EntityFieldBase = {
|
|
913
931
|
/**
|
|
@@ -938,6 +956,8 @@ type EntityFieldBase = {
|
|
|
938
956
|
/** Runtime-managed widget state (authored `@intrinsic` in `.lolo`). Exempt
|
|
939
957
|
* from the explicit-binding rule and never a domain-data bind target. */
|
|
940
958
|
intrinsic?: boolean;
|
|
959
|
+
/** Stored computed field (authored `@derived <expr>` in `.lolo`): the kernel evaluates the expression on every write. */
|
|
960
|
+
derived?: JsonValue;
|
|
941
961
|
/** Human/semantic description (authored `@description "..."` in `.lolo`).
|
|
942
962
|
* Authoring/build-time metadata — factory-signature catalog, embeddings,
|
|
943
963
|
* curation field-matching; the runtime ignores it. */
|
|
@@ -1034,6 +1054,9 @@ type ObjectEntityField = EntityFieldBase & {
|
|
|
1034
1054
|
type: 'object';
|
|
1035
1055
|
/** Uniform value schema for a dynamic-key map (`Map K V`). */
|
|
1036
1056
|
items?: EntityField;
|
|
1057
|
+
/** `@payload(.<sibling>)`: with no `properties`, the object is the declared payload of the event the sibling member
|
|
1058
|
+
* of the same struct names (`.lolo` `payload : @payload event`). Mirrors Rust `FieldDefinition.record`. */
|
|
1059
|
+
record?: string;
|
|
1037
1060
|
};
|
|
1038
1061
|
/**
|
|
1039
1062
|
* Entity field definition — discriminated union by `type`. Each variant
|
|
@@ -1082,11 +1105,11 @@ declare const FieldSchema: z.ZodType<EntityField, unknown, z.core.$ZodTypeIntern
|
|
|
1082
1105
|
declare const ENTITY_ROLES: readonly ["player", "enemy", "npc", "item", "tile", "projectile", "effect", "ui", "decoration", "vehicle"];
|
|
1083
1106
|
type EntityRole = (typeof ENTITY_ROLES)[number];
|
|
1084
1107
|
declare const EntityRoleSchema: z.ZodEnum<{
|
|
1108
|
+
item: "item";
|
|
1085
1109
|
ui: "ui";
|
|
1086
1110
|
player: "player";
|
|
1087
1111
|
enemy: "enemy";
|
|
1088
1112
|
npc: "npc";
|
|
1089
|
-
item: "item";
|
|
1090
1113
|
tile: "tile";
|
|
1091
1114
|
projectile: "projectile";
|
|
1092
1115
|
effect: "effect";
|
|
@@ -1099,11 +1122,11 @@ declare const EntityRoleSchema: z.ZodEnum<{
|
|
|
1099
1122
|
declare const VISUAL_STYLES: readonly ["pixel", "vector", "hd", "1-bit", "isometric"];
|
|
1100
1123
|
type VisualStyle = (typeof VISUAL_STYLES)[number];
|
|
1101
1124
|
declare const VisualStyleSchema: z.ZodEnum<{
|
|
1125
|
+
isometric: "isometric";
|
|
1102
1126
|
pixel: "pixel";
|
|
1103
1127
|
vector: "vector";
|
|
1104
1128
|
hd: "hd";
|
|
1105
1129
|
"1-bit": "1-bit";
|
|
1106
|
-
isometric: "isometric";
|
|
1107
1130
|
}>;
|
|
1108
1131
|
/**
|
|
1109
1132
|
* Whether the asset is a 2D sprite/image or a 3D model. Set by the consuming
|
|
@@ -1412,11 +1435,11 @@ declare const SemanticAssetRefSchema: z.ZodObject<{
|
|
|
1412
1435
|
category: z.ZodString;
|
|
1413
1436
|
animations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1414
1437
|
style: z.ZodOptional<z.ZodEnum<{
|
|
1438
|
+
isometric: "isometric";
|
|
1415
1439
|
pixel: "pixel";
|
|
1416
1440
|
vector: "vector";
|
|
1417
1441
|
hd: "hd";
|
|
1418
1442
|
"1-bit": "1-bit";
|
|
1419
|
-
isometric: "isometric";
|
|
1420
1443
|
}>>;
|
|
1421
1444
|
variant: z.ZodOptional<z.ZodString>;
|
|
1422
1445
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1473,11 +1496,11 @@ declare const AssetSchema: z.ZodObject<{
|
|
|
1473
1496
|
category: z.ZodString;
|
|
1474
1497
|
animations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
1475
1498
|
style: z.ZodOptional<z.ZodEnum<{
|
|
1499
|
+
isometric: "isometric";
|
|
1476
1500
|
pixel: "pixel";
|
|
1477
1501
|
vector: "vector";
|
|
1478
1502
|
hd: "hd";
|
|
1479
1503
|
"1-bit": "1-bit";
|
|
1480
|
-
isometric: "isometric";
|
|
1481
1504
|
}>>;
|
|
1482
1505
|
variant: z.ZodOptional<z.ZodString>;
|
|
1483
1506
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1535,12 +1558,12 @@ declare const AssetCatalogEntrySchema: z.ZodObject<{
|
|
|
1535
1558
|
category: z.ZodString;
|
|
1536
1559
|
kind: z.ZodEnum<{
|
|
1537
1560
|
image: "image";
|
|
1561
|
+
model: "model";
|
|
1538
1562
|
scene: "scene";
|
|
1539
1563
|
other: "other";
|
|
1540
|
-
spritesheet: "spritesheet";
|
|
1541
1564
|
audio: "audio";
|
|
1565
|
+
spritesheet: "spritesheet";
|
|
1542
1566
|
portrait: "portrait";
|
|
1543
|
-
model: "model";
|
|
1544
1567
|
}>;
|
|
1545
1568
|
thumbnailUrl: z.ZodOptional<z.ZodString>;
|
|
1546
1569
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1567,12 +1590,12 @@ declare const AssetCatalogSchema: z.ZodArray<z.ZodObject<{
|
|
|
1567
1590
|
category: z.ZodString;
|
|
1568
1591
|
kind: z.ZodEnum<{
|
|
1569
1592
|
image: "image";
|
|
1593
|
+
model: "model";
|
|
1570
1594
|
scene: "scene";
|
|
1571
1595
|
other: "other";
|
|
1572
|
-
spritesheet: "spritesheet";
|
|
1573
1596
|
audio: "audio";
|
|
1597
|
+
spritesheet: "spritesheet";
|
|
1574
1598
|
portrait: "portrait";
|
|
1575
|
-
model: "model";
|
|
1576
1599
|
}>;
|
|
1577
1600
|
thumbnailUrl: z.ZodOptional<z.ZodString>;
|
|
1578
1601
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1628,10 +1651,10 @@ declare const CAMERA_MODES: readonly ["isometric", "perspective", "top-down", "f
|
|
|
1628
1651
|
type CameraMode = (typeof CAMERA_MODES)[number];
|
|
1629
1652
|
declare const CameraModeSchema: z.ZodEnum<{
|
|
1630
1653
|
isometric: "isometric";
|
|
1654
|
+
follow: "follow";
|
|
1631
1655
|
front: "front";
|
|
1632
1656
|
perspective: "perspective";
|
|
1633
1657
|
"top-down": "top-down";
|
|
1634
|
-
follow: "follow";
|
|
1635
1658
|
chase: "chase";
|
|
1636
1659
|
}>;
|
|
1637
1660
|
/**
|
|
@@ -1669,10 +1692,10 @@ declare const CameraSchema: z.ZodObject<{
|
|
|
1669
1692
|
fov: z.ZodOptional<z.ZodNumber>;
|
|
1670
1693
|
mode: z.ZodOptional<z.ZodEnum<{
|
|
1671
1694
|
isometric: "isometric";
|
|
1695
|
+
follow: "follow";
|
|
1672
1696
|
front: "front";
|
|
1673
1697
|
perspective: "perspective";
|
|
1674
1698
|
"top-down": "top-down";
|
|
1675
|
-
follow: "follow";
|
|
1676
1699
|
chase: "chase";
|
|
1677
1700
|
}>>;
|
|
1678
1701
|
azimuth: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1777,9 +1800,9 @@ declare const MANIFEST_ENTRY_KINDS: readonly ["model", "image", "spritesheet", "
|
|
|
1777
1800
|
type ManifestEntryKind = (typeof MANIFEST_ENTRY_KINDS)[number];
|
|
1778
1801
|
declare const ManifestEntryKindSchema: z.ZodEnum<{
|
|
1779
1802
|
image: "image";
|
|
1780
|
-
spritesheet: "spritesheet";
|
|
1781
|
-
audio: "audio";
|
|
1782
1803
|
model: "model";
|
|
1804
|
+
audio: "audio";
|
|
1805
|
+
spritesheet: "spritesheet";
|
|
1783
1806
|
json: "json";
|
|
1784
1807
|
}>;
|
|
1785
1808
|
/**
|
|
@@ -1829,9 +1852,9 @@ declare const MANIFEST_CANVAS_AFFINITIES: readonly ["isometric", "hex", "flat",
|
|
|
1829
1852
|
type ManifestCanvasAffinity = (typeof MANIFEST_CANVAS_AFFINITIES)[number];
|
|
1830
1853
|
declare const ManifestCanvasAffinitySchema: z.ZodEnum<{
|
|
1831
1854
|
flat: "flat";
|
|
1855
|
+
none: "none";
|
|
1832
1856
|
isometric: "isometric";
|
|
1833
1857
|
"3d": "3d";
|
|
1834
|
-
none: "none";
|
|
1835
1858
|
side: "side";
|
|
1836
1859
|
hex: "hex";
|
|
1837
1860
|
}>;
|
|
@@ -1902,18 +1925,18 @@ declare const ManifestEntrySchema: z.ZodObject<{
|
|
|
1902
1925
|
category: z.ZodString;
|
|
1903
1926
|
kind: z.ZodEnum<{
|
|
1904
1927
|
image: "image";
|
|
1905
|
-
spritesheet: "spritesheet";
|
|
1906
|
-
audio: "audio";
|
|
1907
1928
|
model: "model";
|
|
1929
|
+
audio: "audio";
|
|
1930
|
+
spritesheet: "spritesheet";
|
|
1908
1931
|
json: "json";
|
|
1909
1932
|
}>;
|
|
1910
1933
|
width: z.ZodNumber;
|
|
1911
1934
|
height: z.ZodNumber;
|
|
1912
1935
|
canvasAffinity: z.ZodEnum<{
|
|
1913
1936
|
flat: "flat";
|
|
1937
|
+
none: "none";
|
|
1914
1938
|
isometric: "isometric";
|
|
1915
1939
|
"3d": "3d";
|
|
1916
|
-
none: "none";
|
|
1917
1940
|
side: "side";
|
|
1918
1941
|
hex: "hex";
|
|
1919
1942
|
}>;
|
|
@@ -1970,6 +1993,14 @@ declare function parseAssetQuery(q: string): {
|
|
|
1970
1993
|
*/
|
|
1971
1994
|
declare function matchAssetQuery(entry: AssetCatalogEntry, q: string): boolean;
|
|
1972
1995
|
|
|
1996
|
+
/**
|
|
1997
|
+
* Entity Types for Orbital Units
|
|
1998
|
+
*
|
|
1999
|
+
* Defines the OrbitalEntity type - the nucleus of an Orbital Unit.
|
|
2000
|
+
*
|
|
2001
|
+
* @packageDocumentation
|
|
2002
|
+
*/
|
|
2003
|
+
|
|
1973
2004
|
/**
|
|
1974
2005
|
* Entity persistence types.
|
|
1975
2006
|
*
|
|
@@ -2044,6 +2075,11 @@ type OrbitalEntity = {
|
|
|
2044
2075
|
};
|
|
2045
2076
|
/** `@invariant <expr>`: every stored row satisfies each, proved by `orb validate` over the program's writes. No runtime effect. */
|
|
2046
2077
|
invariants?: SExpr[];
|
|
2078
|
+
/** `@index { fields, orderBy? }`: declared access paths. A path changes a query's cost, never its result. */
|
|
2079
|
+
indexes?: {
|
|
2080
|
+
fields: string[];
|
|
2081
|
+
orderBy?: string;
|
|
2082
|
+
}[];
|
|
2047
2083
|
/** Collection name (auto-derived if not provided for persistent entities) */
|
|
2048
2084
|
collection?: string;
|
|
2049
2085
|
/** Entity fields */
|
|
@@ -2088,6 +2124,10 @@ declare const OrbitalEntitySchema: z.ZodObject<{
|
|
|
2088
2124
|
delete: z.ZodOptional<z.ZodString>;
|
|
2089
2125
|
}, z.core.$strip>>;
|
|
2090
2126
|
invariants: z.ZodOptional<z.ZodType<SExpr[], unknown, z.core.$ZodTypeInternals<SExpr[], unknown>>>;
|
|
2127
|
+
indexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
2128
|
+
fields: z.ZodArray<z.ZodString>;
|
|
2129
|
+
orderBy: z.ZodOptional<z.ZodString>;
|
|
2130
|
+
}, z.core.$strict>>>;
|
|
2091
2131
|
collection: z.ZodOptional<z.ZodString>;
|
|
2092
2132
|
fields: z.ZodArray<z.ZodType<EntityField, unknown, z.core.$ZodTypeInternals<EntityField, unknown>>>;
|
|
2093
2133
|
instances: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
|
|
@@ -2101,11 +2141,11 @@ declare const OrbitalEntitySchema: z.ZodObject<{
|
|
|
2101
2141
|
category: z.ZodString;
|
|
2102
2142
|
animations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
2103
2143
|
style: z.ZodOptional<z.ZodEnum<{
|
|
2144
|
+
isometric: "isometric";
|
|
2104
2145
|
pixel: "pixel";
|
|
2105
2146
|
vector: "vector";
|
|
2106
2147
|
hd: "hd";
|
|
2107
2148
|
"1-bit": "1-bit";
|
|
2108
|
-
isometric: "isometric";
|
|
2109
2149
|
}>>;
|
|
2110
2150
|
variant: z.ZodOptional<z.ZodString>;
|
|
2111
2151
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2149,6 +2189,10 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2149
2189
|
delete: z.ZodOptional<z.ZodString>;
|
|
2150
2190
|
}, z.core.$strip>>;
|
|
2151
2191
|
invariants: z.ZodOptional<z.ZodType<SExpr[], unknown, z.core.$ZodTypeInternals<SExpr[], unknown>>>;
|
|
2192
|
+
indexes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
2193
|
+
fields: z.ZodArray<z.ZodString>;
|
|
2194
|
+
orderBy: z.ZodOptional<z.ZodString>;
|
|
2195
|
+
}, z.core.$strict>>>;
|
|
2152
2196
|
collection: z.ZodOptional<z.ZodString>;
|
|
2153
2197
|
fields: z.ZodArray<z.ZodType<EntityField, unknown, z.core.$ZodTypeInternals<EntityField, unknown>>>;
|
|
2154
2198
|
instances: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
|
|
@@ -2162,11 +2206,11 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2162
2206
|
category: z.ZodString;
|
|
2163
2207
|
animations: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
2164
2208
|
style: z.ZodOptional<z.ZodEnum<{
|
|
2209
|
+
isometric: "isometric";
|
|
2165
2210
|
pixel: "pixel";
|
|
2166
2211
|
vector: "vector";
|
|
2167
2212
|
hd: "hd";
|
|
2168
2213
|
"1-bit": "1-bit";
|
|
2169
|
-
isometric: "isometric";
|
|
2170
2214
|
}>>;
|
|
2171
2215
|
variant: z.ZodOptional<z.ZodString>;
|
|
2172
2216
|
dimension: z.ZodOptional<z.ZodEnum<{
|
|
@@ -2186,21 +2230,6 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2186
2230
|
}, z.core.$strip>;
|
|
2187
2231
|
/** The rows an entity starts with for a viewer's locale: its locale block, else `instances`. */
|
|
2188
2232
|
declare function instancesForLocale(entity: Pick<OrbitalEntity, 'instances' | 'localeInstances'>, locale: string | undefined): EntityRow[];
|
|
2189
|
-
/**
|
|
2190
|
-
* Derives the collection name for a persistent entity.
|
|
2191
|
-
*
|
|
2192
|
-
* Generates the database collection name by converting the entity name
|
|
2193
|
-
* to lowercase and adding an 's' suffix (simple pluralization).
|
|
2194
|
-
* Returns undefined for non-persistent (runtime) entities.
|
|
2195
|
-
*
|
|
2196
|
-
* @param {OrbitalEntity} entity - Entity to derive collection name for
|
|
2197
|
-
* @returns {string | undefined} Collection name or undefined for non-persistent entities
|
|
2198
|
-
*
|
|
2199
|
-
* @example
|
|
2200
|
-
* deriveCollection({ name: 'User', persistence: 'persistent' }); // returns 'users'
|
|
2201
|
-
* deriveCollection({ name: 'Task', persistence: 'runtime' }); // returns undefined
|
|
2202
|
-
*/
|
|
2203
|
-
declare function deriveCollection(entity: OrbitalEntity): string | undefined;
|
|
2204
2233
|
/**
|
|
2205
2234
|
* Checks if an entity is runtime-only (not persisted).
|
|
2206
2235
|
*
|
|
@@ -2245,17 +2274,10 @@ declare function storesRowsInBrowser(entity: Pick<OrbitalEntity, 'browser'>): bo
|
|
|
2245
2274
|
*/
|
|
2246
2275
|
declare function persistenceModeAllowsOverrides(persistence: EntityPersistence | undefined, dataBearing?: boolean): boolean;
|
|
2247
2276
|
/**
|
|
2248
|
-
* A single field value at runtime.
|
|
2249
|
-
*
|
|
2250
|
-
* The nested-record branch's index signature tolerates `undefined` so that
|
|
2251
|
-
* TypeScript optional properties (`x?: string`, carrying `string | undefined`)
|
|
2252
|
-
* on EntityRow extenders typecheck without ceremony. At JSON serialization
|
|
2253
|
-
* time `undefined` is equivalent to "key absent" and never appears on the
|
|
2254
|
-
* wire; the inclusion here is a pure type-surface accommodation.
|
|
2277
|
+
* A single field value at runtime: a JSON value. A date is its ISO string, an absent field is an absent key;
|
|
2278
|
+
* `Date` and `undefined` never travel on the wire, so neither is a field value.
|
|
2255
2279
|
*/
|
|
2256
|
-
type FieldValue =
|
|
2257
|
-
[key: string]: FieldValue | undefined;
|
|
2258
|
-
};
|
|
2280
|
+
type FieldValue = JsonValue;
|
|
2259
2281
|
/** Zod twin of `FieldValue` — the one runtime validator for a stored field slot. */
|
|
2260
2282
|
declare const FieldValueSchema: z.ZodType<FieldValue>;
|
|
2261
2283
|
/**
|
|
@@ -2296,7 +2318,7 @@ declare function isFieldValue(value: RuntimeValue): value is FieldValue;
|
|
|
2296
2318
|
*/
|
|
2297
2319
|
type EntityRow = {
|
|
2298
2320
|
id?: string;
|
|
2299
|
-
} & Record<string, FieldValue
|
|
2321
|
+
} & Record<string, FieldValue>;
|
|
2300
2322
|
/** Zod twin of `EntityRow` — the one runtime validator for an `@entity` wire row. */
|
|
2301
2323
|
declare const EntityRowSchema: z.ZodType<EntityRow>;
|
|
2302
2324
|
/**
|
|
@@ -2340,8 +2362,8 @@ type EntityData = Record<string, EntityRow[]>;
|
|
|
2340
2362
|
*
|
|
2341
2363
|
* DO NOT EDIT MANUALLY — regenerated by almadar-pattern-sync `patterns` command.
|
|
2342
2364
|
*
|
|
2343
|
-
* Generated: 2026-
|
|
2344
|
-
* Pattern count:
|
|
2365
|
+
* Generated: 2026-11-03T10:49:17.250Z
|
|
2366
|
+
* Pattern count: 260
|
|
2345
2367
|
*/
|
|
2346
2368
|
|
|
2347
2369
|
/**
|
|
@@ -2353,7 +2375,7 @@ type PatternPropValue = Record<string, FieldValue | undefined>;
|
|
|
2353
2375
|
* All valid pattern type names from @almadar/core/patterns registry.
|
|
2354
2376
|
* Use this type in render-ui effects for compile-time validation.
|
|
2355
2377
|
*/
|
|
2356
|
-
type PatternType = 'accordion' | 'action-palette' | 'action-tile' | 'activation-block' | 'activity-rail' | 'agent-activity-feed' | 'agent-activity-row' | 'agent-chat-feed' | 'alert' | 'algo-graph-canvas' | 'algorithm-canvas' | 'animated-counter' | 'animated-graphic' | 'animated-reveal' | 'aside' | 'atlas-image' | 'atlas-panel' | 'auth-layout' | 'avatar' | 'avl-glyph' | 'avl-state-machine' | 'avl-transition-detail' | 'avl-transition-explainer' | 'badge' | 'behavior-view' | 'biology-canvas' | 'bloom-quiz-block' | 'box' | 'branching-logic-builder' | 'breadcrumb' | 'button' | 'calendar-grid' | 'canvas' | 'canvas-2d' | 'card' | 'carousel' | 'center' | 'change-list' | 'chart' | 'chart-legend' | 'chat-bar' | 'checkbox' | 'chemistry-canvas' | 'choice-button' | 'code-block' | 'code-runner-panel' | 'command-palette' | 'commit-row' | 'conditional-wrapper' | 'confetti-effect' | 'confirm-dialog' | 'connection-block' | 'container' | 'content-renderer' | 'control-button' | 'control-grid' | 'counter-template' | 'dashboard-grid' | 'dashboard-layout' | 'data-grid' | 'data-list' | 'date-range-picker' | 'date-range-selector' | 'day-cell' | 'detail-panel' | 'dialog' | 'dialogue-bubble' | 'divider' | 'doc-breadcrumb' | 'doc-pagination' | 'doc-search' | 'doc-sidebar' | 'doc-toc' | 'dock-layout' | 'document-details' | 'document-panel' | 'document-viewer' | 'draw-fx-layer' | 'draw-group' | 'draw-mesh' | 'draw-shape' | 'draw-shape-layer' | 'draw-skinned-mesh' | 'draw-sprite' | 'draw-sprite-layer' | 'draw-text' | 'draw-text-layer' | 'drawer' | 'drawer-slot' | 'edge-decoration' | 'emoji-picker' | 'empty-state' | 'error-boundary' | 'error-state' | 'feature-card' | 'feature-grid' | 'file-tree' | 'filter-group' | 'filter-pill' | 'flex' | 'flip-card' | 'flip-container' | 'floating-action-button' | 'floating-toolbar' | 'flow-canvas' | 'form' | 'form-actions' | 'form-field' | 'form-layout' | 'form-section' | 'form-section-header' | 'fx-overlay' | 'game-audio-cue' | 'game-audio-toggle' | 'game-hud' | 'game-icon' | 'game-menu' | 'game-shell' | 'gantt' | 'generic-app-template' | 'geometric-pattern' | 'gradient-divider' | 'graph-canvas' | 'graph-view' | 'grid' | 'header' | 'health-bar' | 'hstack' | 'icon' | 'icon-button' | 'image' | 'import-preview-tree' | 'import-progress' | 'import-source-picker' | 'infinite-scroll-sentinel' | 'input' | 'input-group' | 'jazari-state-machine' | 'label' | 'law-reference-tooltip' | 'layers-panel' | 'learning-canvas' | 'lightbox' | 'likert-scale' | 'line-chart' | 'loading-state' | 'map-view' | 'markdown-content' | 'master-detail-layout' | 'math-canvas' | 'matrix-question' | 'media-gallery' | 'menu' | 'meter' | 'modal' | 'modal-slot' | 'module-card' | 'navigation' | 'notification' | 'number-stepper' | 'option-constraint-group' | 'orb-inspector' | 'orbital-visualization' | 'overlay' | 'page-header' | 'page-transition' | 'pagination' | 'pattern-tile' | 'physics-canvas' | 'popover' | 'positioned-canvas' | 'presence' | 'progress-bar' | 'progress-dots' | 'pull-to-refresh' | 'qr-scanner' | 'quiz-block' | 'radio' | 'range-slider' | 'reflection-block' | 'relation-select' | 'repeatable-form-section' | 'reply-tree' | 'rich-text-editor' | 'runtime-debugger' | 'scaled-diagram' | 'score-display' | 'search-input' | 'section' | 'section-header' | 'segment-renderer' | 'select' | 'sequence-bar' | 'side-panel' | 'sidebar' | 'signature-pad' | 'simple-grid' | 'skeleton' | 'social-proof' | 'sortable-list' | 'spacer' | 'sparkline' | 'spinner' | 'split' | 'split-pane' | 'stack' | 'star-rating' | 'stat-badge' | 'stat-card' | 'stat-display' | 'state-graph' | 'state-json-view' | 'state-machine-view' | 'status-dot' | 'subagent-trace-panel' | 'svg-branch' | 'svg-connection' | 'svg-flow' | 'svg-grid' | 'svg-lobe' | 'svg-mesh' | 'svg-morph' | 'svg-node' | 'svg-pulse' | 'svg-ring' | 'svg-shield' | 'svg-stack' | 'swipeable-row' | 'switch' | 'tabbed-container' | 'table-view' | 'tabs' | 'tag-input' | 'text-highlight' | 'textarea' | 'theme-toggle' | 'time-slot-cell' | 'timeline' | 'timer-display' | 'toast-slot' | 'tooltip' | 'top-nav-item' | 'trait-frame' | 'trait-slot' | 'trend-indicator' | 'typewriter-text' | 'typography' | 'ui-slot-component' | 'ui-slot-renderer' | 'upload-drop-zone' | 'version-diff' | 'video-embed' | 'violation-alert' | 'vote-stack' | 'vstack' | 'wizard-container' | 'wizard-navigation' | 'wizard-progress';
|
|
2378
|
+
type PatternType = 'accordion' | 'action-palette' | 'action-tile' | 'activation-block' | 'activity-rail' | 'agent-activity-feed' | 'agent-activity-row' | 'agent-chat-feed' | 'alert' | 'algo-graph-canvas' | 'algorithm-canvas' | 'animated-counter' | 'animated-graphic' | 'animated-reveal' | 'aside' | 'atlas-image' | 'atlas-panel' | 'auth-layout' | 'avatar' | 'avl-glyph' | 'avl-state-machine' | 'avl-transition-detail' | 'avl-transition-explainer' | 'badge' | 'behavior-view' | 'biology-canvas' | 'bloom-quiz-block' | 'box' | 'branching-logic-builder' | 'breadcrumb' | 'button' | 'calendar-grid' | 'canvas' | 'canvas-2d' | 'card' | 'carousel' | 'center' | 'change-list' | 'chart' | 'chart-legend' | 'chat-bar' | 'checkbox' | 'chemistry-canvas' | 'choice-button' | 'code-block' | 'code-runner-panel' | 'command-palette' | 'commit-row' | 'conditional-wrapper' | 'confetti-effect' | 'confirm-dialog' | 'connection-block' | 'container' | 'content-renderer' | 'control-button' | 'control-grid' | 'counter-template' | 'dashboard-grid' | 'dashboard-layout' | 'data-grid' | 'data-list' | 'date-range-picker' | 'date-range-selector' | 'day-cell' | 'detail-panel' | 'dialog' | 'dialogue-bubble' | 'divider' | 'doc-breadcrumb' | 'doc-pagination' | 'doc-search' | 'doc-sidebar' | 'doc-toc' | 'dock-layout' | 'document-details' | 'document-panel' | 'document-viewer' | 'draw-fx-layer' | 'draw-group' | 'draw-mesh' | 'draw-shape' | 'draw-shape-layer' | 'draw-skinned-mesh' | 'draw-sprite' | 'draw-sprite-layer' | 'draw-text' | 'draw-text-layer' | 'drawer' | 'drawer-slot' | 'edge-decoration' | 'emoji-picker' | 'empty-state' | 'error-boundary' | 'error-state' | 'feature-card' | 'feature-grid' | 'file-tree' | 'filter-group' | 'filter-pill' | 'flex' | 'flip-card' | 'flip-container' | 'floating-action-button' | 'floating-toolbar' | 'flow-canvas' | 'form' | 'form-actions' | 'form-field' | 'form-layout' | 'form-section' | 'form-section-header' | 'fx-overlay' | 'game-audio-cue' | 'game-audio-toggle' | 'game-hud' | 'game-icon' | 'game-menu' | 'game-shell' | 'gantt' | 'generic-app-template' | 'geometric-pattern' | 'gradient-divider' | 'graph-canvas' | 'graph-view' | 'grid' | 'guest-view' | 'header' | 'health-bar' | 'hstack' | 'icon' | 'icon-button' | 'image' | 'import-preview-tree' | 'import-progress' | 'import-source-picker' | 'infinite-scroll-sentinel' | 'input' | 'input-group' | 'jazari-state-machine' | 'label' | 'law-reference-tooltip' | 'layers-panel' | 'learning-canvas' | 'lightbox' | 'likert-scale' | 'line-chart' | 'loading-state' | 'machine-panel' | 'map-view' | 'markdown-content' | 'master-detail-layout' | 'math-canvas' | 'matrix-question' | 'media-gallery' | 'menu' | 'meter' | 'modal' | 'modal-slot' | 'module-card' | 'navigation' | 'notification' | 'number-stepper' | 'option-constraint-group' | 'orb-inspector' | 'orbital-visualization' | 'overlay' | 'page-header' | 'page-transition' | 'pagination' | 'pattern-tile' | 'physics-canvas' | 'popover' | 'positioned-canvas' | 'presence' | 'progress-bar' | 'progress-dots' | 'pull-to-refresh' | 'qr-scanner' | 'quiz-block' | 'radio' | 'range-slider' | 'reflection-block' | 'relation-select' | 'repeatable-form-section' | 'reply-tree' | 'rich-text-editor' | 'runtime-debugger' | 'scaled-diagram' | 'score-display' | 'search-input' | 'section' | 'section-header' | 'segment-renderer' | 'select' | 'sequence-bar' | 'side-panel' | 'sidebar' | 'signature-pad' | 'simple-grid' | 'skeleton' | 'social-proof' | 'sortable-list' | 'spacer' | 'sparkline' | 'spinner' | 'split' | 'split-pane' | 'stack' | 'star-rating' | 'stat-badge' | 'stat-card' | 'stat-display' | 'state-graph' | 'state-json-view' | 'state-machine-view' | 'status-dot' | 'subagent-trace-panel' | 'svg-branch' | 'svg-connection' | 'svg-flow' | 'svg-grid' | 'svg-lobe' | 'svg-mesh' | 'svg-morph' | 'svg-node' | 'svg-pulse' | 'svg-ring' | 'svg-shield' | 'svg-stack' | 'swipeable-row' | 'switch' | 'tabbed-container' | 'table-view' | 'tabs' | 'tag-input' | 'text-highlight' | 'textarea' | 'theme-toggle' | 'time-slot-cell' | 'timeline' | 'timer-display' | 'toast-slot' | 'tooltip' | 'top-nav-item' | 'trait-frame' | 'trait-slot' | 'trend-indicator' | 'typewriter-text' | 'typography' | 'ui-slot-component' | 'ui-slot-renderer' | 'upload-drop-zone' | 'version-diff' | 'video-embed' | 'violation-alert' | 'vote-stack' | 'vstack' | 'wizard-container' | 'wizard-navigation' | 'wizard-progress';
|
|
2357
2379
|
/**
|
|
2358
2380
|
* Pattern props map — each pattern type maps to its valid props interface.
|
|
2359
2381
|
*/
|
|
@@ -2837,9 +2859,9 @@ interface PatternPropsMap {
|
|
|
2837
2859
|
kind: string | SExpr;
|
|
2838
2860
|
label?: string | SExpr;
|
|
2839
2861
|
effectType?: string | SExpr;
|
|
2840
|
-
fieldType?:
|
|
2841
|
-
persistence?:
|
|
2842
|
-
namespace?:
|
|
2862
|
+
fieldType?: string | unknown | SExpr;
|
|
2863
|
+
persistence?: string | SExpr;
|
|
2864
|
+
namespace?: string | SExpr;
|
|
2843
2865
|
size?: string | SExpr;
|
|
2844
2866
|
showCaption?: boolean | string | SExpr;
|
|
2845
2867
|
className?: string | SExpr;
|
|
@@ -3718,6 +3740,10 @@ interface PatternPropsMap {
|
|
|
3718
3740
|
onGoToDefinition?: ((...args: never[]) => unknown) | string | SExpr;
|
|
3719
3741
|
diagnosticsCode?: string | SExpr;
|
|
3720
3742
|
lineNumbers?: boolean | string | SExpr;
|
|
3743
|
+
askEvent?: string | SExpr;
|
|
3744
|
+
noteEvent?: string | SExpr;
|
|
3745
|
+
askLabel?: string | SExpr;
|
|
3746
|
+
noteLabel?: string | SExpr;
|
|
3721
3747
|
enter?: string | SExpr;
|
|
3722
3748
|
enterDelay?: number | string | SExpr;
|
|
3723
3749
|
skeleton?: string | PatternPropValue | SExpr;
|
|
@@ -4652,6 +4678,7 @@ interface PatternPropsMap {
|
|
|
4652
4678
|
fields?: unknown[] | string | SExpr;
|
|
4653
4679
|
metaCommitEvent?: string | SExpr;
|
|
4654
4680
|
relationEvent?: string | SExpr;
|
|
4681
|
+
relationsData?: PatternPropValue | string | SExpr;
|
|
4655
4682
|
title?: string | SExpr;
|
|
4656
4683
|
className?: string | SExpr;
|
|
4657
4684
|
enter?: string | SExpr;
|
|
@@ -5170,6 +5197,7 @@ interface PatternPropsMap {
|
|
|
5170
5197
|
icon?: unknown | string | SExpr;
|
|
5171
5198
|
onRemove?: ((...args: never[]) => unknown) | string | SExpr;
|
|
5172
5199
|
removable?: boolean | string | SExpr;
|
|
5200
|
+
selected?: boolean | string | SExpr;
|
|
5173
5201
|
onClick?: ((...args: never[]) => unknown) | string | SExpr;
|
|
5174
5202
|
clickEvent?: string | SExpr;
|
|
5175
5203
|
removeEvent?: string | SExpr;
|
|
@@ -5339,6 +5367,10 @@ interface PatternPropsMap {
|
|
|
5339
5367
|
systemDependencies?: PatternPropValue | string | SExpr;
|
|
5340
5368
|
traitView?: PatternPropValue | string | SExpr;
|
|
5341
5369
|
onTraitViewChange?: ((...args: never[]) => unknown) | string | SExpr;
|
|
5370
|
+
toolbar?: boolean | string | SExpr;
|
|
5371
|
+
fitOnResize?: boolean | string | SExpr;
|
|
5372
|
+
flowSelection?: string | SExpr;
|
|
5373
|
+
onFlowSelect?: ((...args: never[]) => unknown) | string | SExpr;
|
|
5342
5374
|
openBehaviorEvent?: string | SExpr;
|
|
5343
5375
|
keyMap?: PatternPropValue | string | SExpr;
|
|
5344
5376
|
scene?: PatternPropValue | string | SExpr;
|
|
@@ -5979,6 +6011,13 @@ interface PatternPropsMap {
|
|
|
5979
6011
|
dir?: string | SExpr;
|
|
5980
6012
|
tabIndex?: number | string | SExpr;
|
|
5981
6013
|
};
|
|
6014
|
+
'guest-view': {
|
|
6015
|
+
type: 'guest-view';
|
|
6016
|
+
guest: string | SExpr;
|
|
6017
|
+
source: string | SExpr;
|
|
6018
|
+
deliver: string | SExpr;
|
|
6019
|
+
children?: unknown | string | SExpr;
|
|
6020
|
+
};
|
|
5982
6021
|
'header': {
|
|
5983
6022
|
type: 'header';
|
|
5984
6023
|
logo?: unknown | string | SExpr;
|
|
@@ -6582,6 +6621,15 @@ interface PatternPropsMap {
|
|
|
6582
6621
|
dir?: string | SExpr;
|
|
6583
6622
|
tabIndex?: number | string | SExpr;
|
|
6584
6623
|
};
|
|
6624
|
+
'machine-panel': {
|
|
6625
|
+
type: 'machine-panel';
|
|
6626
|
+
schema: unknown | string | SExpr;
|
|
6627
|
+
transitions: unknown[] | string | SExpr;
|
|
6628
|
+
describe?: ((...args: never[]) => unknown) | string | SExpr;
|
|
6629
|
+
behavior?: string | SExpr;
|
|
6630
|
+
replayStepMs?: number | string | SExpr;
|
|
6631
|
+
dependencies?: PatternPropValue | string | SExpr;
|
|
6632
|
+
};
|
|
6585
6633
|
'map-view': {
|
|
6586
6634
|
type: 'map-view';
|
|
6587
6635
|
surface?: string | SExpr;
|
|
@@ -7736,6 +7784,9 @@ interface PatternPropsMap {
|
|
|
7736
7784
|
mode?: string | SExpr;
|
|
7737
7785
|
defaultTab?: string | SExpr;
|
|
7738
7786
|
schema?: unknown | string | SExpr;
|
|
7787
|
+
describe?: ((...args: never[]) => unknown) | string | SExpr;
|
|
7788
|
+
behavior?: string | SExpr;
|
|
7789
|
+
dependencies?: PatternPropValue | string | SExpr;
|
|
7739
7790
|
enter?: string | SExpr;
|
|
7740
7791
|
enterDelay?: number | string | SExpr;
|
|
7741
7792
|
skeleton?: string | PatternPropValue | SExpr;
|
|
@@ -9640,7 +9691,7 @@ interface PatternPropsMap {
|
|
|
9640
9691
|
};
|
|
9641
9692
|
'ui-slot-component': {
|
|
9642
9693
|
type: 'ui-slot-component';
|
|
9643
|
-
slot:
|
|
9694
|
+
slot: string | SExpr;
|
|
9644
9695
|
portal?: boolean | string | SExpr;
|
|
9645
9696
|
position?: string | SExpr;
|
|
9646
9697
|
className?: string | SExpr;
|
|
@@ -9997,17 +10048,17 @@ type UISlot = (typeof UI_SLOTS)[number];
|
|
|
9997
10048
|
/** The slots a renderer mounts as `#slot-{name}`: every slot except the HUD group key, the `screen` alias and dotted sub-slots. */
|
|
9998
10049
|
declare const RENDERED_SLOTS: readonly UISlot[];
|
|
9999
10050
|
declare const UISlotSchema: z.ZodEnum<{
|
|
10000
|
-
system: "system";
|
|
10001
|
-
modal: "modal";
|
|
10002
|
-
drawer: "drawer";
|
|
10003
|
-
content: "content";
|
|
10004
10051
|
center: "center";
|
|
10052
|
+
drawer: "drawer";
|
|
10053
|
+
modal: "modal";
|
|
10005
10054
|
overlay: "overlay";
|
|
10006
10055
|
sidebar: "sidebar";
|
|
10056
|
+
content: "content";
|
|
10057
|
+
floating: "floating";
|
|
10007
10058
|
main: "main";
|
|
10008
10059
|
dock: "dock";
|
|
10009
10060
|
toast: "toast";
|
|
10010
|
-
|
|
10061
|
+
system: "system";
|
|
10011
10062
|
screen: "screen";
|
|
10012
10063
|
hud: "hud";
|
|
10013
10064
|
"hud-top": "hud-top";
|
|
@@ -10138,11 +10189,10 @@ type EmitEffect = ['emit', string] | ['emit', string, EventPayload | string];
|
|
|
10138
10189
|
* | `persist` | `success`, `failure` |
|
|
10139
10190
|
* | `call-service` | `success`, `failure`, `cancelled` |
|
|
10140
10191
|
* | `set` | `success` |
|
|
10141
|
-
* | `ref` | `on_change`, `failure` |
|
|
10142
10192
|
* | `fetch-stream` | `on_message`, `success`, `failure` |
|
|
10143
10193
|
*
|
|
10144
10194
|
* Payload convention:
|
|
10145
|
-
* - `success`
|
|
10195
|
+
* - `success` → the effect's result (fetched entity, new value)
|
|
10146
10196
|
* - `failure` → `{ error: string, code?: string }`
|
|
10147
10197
|
* - `on_message` → the incoming chunk (`fetch-stream`)
|
|
10148
10198
|
*
|
|
@@ -10155,8 +10205,6 @@ interface EmitConfig {
|
|
|
10155
10205
|
failure?: string;
|
|
10156
10206
|
/** `call-service` only: fires when `cancel-call` aborts the call; payload is `{ key }`. */
|
|
10157
10207
|
cancelled?: string;
|
|
10158
|
-
/** Reactive-subscription event (per update for `ref`). */
|
|
10159
|
-
on_change?: string;
|
|
10160
10208
|
/** Per-chunk fire for `fetch-stream`. */
|
|
10161
10209
|
on_message?: string;
|
|
10162
10210
|
}
|
|
@@ -10256,20 +10304,48 @@ type CallServiceEmitConfig = {
|
|
|
10256
10304
|
};
|
|
10257
10305
|
};
|
|
10258
10306
|
/**
|
|
10259
|
-
* Cancel-call effect - aborts the in-flight keyed call (`call-service`,
|
|
10307
|
+
* Cancel-call effect - aborts the in-flight keyed call (`call-service`,
|
|
10260
10308
|
* `browser/prompt` or `browser/embed`) started with that key in the same running
|
|
10261
10309
|
* app; no-op when none is in flight. The cancelled call emits its `emit.cancelled`
|
|
10262
10310
|
* event with `{ key }`, never success/failure, and a reply that arrives later is dropped.
|
|
10263
10311
|
* @example ['cancel-call', '@entity.id']
|
|
10264
10312
|
*/
|
|
10265
10313
|
type CancelCallEffect = ['cancel-call', SExpr];
|
|
10266
|
-
/** Trailing config of `random-bytes`, `credential-status` and `credential-
|
|
10314
|
+
/** Trailing config of `random-bytes`, `credential-status`, `credential-forget` and `credential-connect`: outcome events only. */
|
|
10267
10315
|
type HostCallEmitConfig = {
|
|
10268
10316
|
emit?: {
|
|
10269
10317
|
success?: string;
|
|
10270
10318
|
failure?: string;
|
|
10271
10319
|
};
|
|
10272
10320
|
};
|
|
10321
|
+
/** The OAuth client an `oauth-authorize` names: tag, mode, issuer XOR endpoints, secret-knob client credentials, clientAuth. */
|
|
10322
|
+
type OAuthClient = {
|
|
10323
|
+
[field: string]: SExpr;
|
|
10324
|
+
};
|
|
10325
|
+
/** Authorization request of `oauth-authorize`. */
|
|
10326
|
+
interface OAuthAuthorizeRequest {
|
|
10327
|
+
redirectUri: SExpr;
|
|
10328
|
+
scope?: SExpr;
|
|
10329
|
+
subject?: SExpr;
|
|
10330
|
+
params?: SExpr;
|
|
10331
|
+
}
|
|
10332
|
+
/**
|
|
10333
|
+
* OAuth-authorize effect - starts an authorization for a client; success carries `{ authUrl, state, code }`. Server-only.
|
|
10334
|
+
* @example ['oauth-authorize', { tag: 'google', mode: 'real' }, { redirectUri: 'https://app.example.com/cb', scope: ['openid'] }, { emit: { success: 'AUTH_URL' } }]
|
|
10335
|
+
*/
|
|
10336
|
+
type OAuthAuthorizeEffect = ['oauth-authorize', OAuthClient, OAuthAuthorizeRequest] | ['oauth-authorize', OAuthClient, OAuthAuthorizeRequest, HostCallEmitConfig & {
|
|
10337
|
+
key?: SExpr;
|
|
10338
|
+
}];
|
|
10339
|
+
/**
|
|
10340
|
+
* OAuth-connection-status effect - the signed-in viewer's connection to a provider (google, github or auth0).
|
|
10341
|
+
* @example ['oauth-connection-status', 'google', { emit: { success: 'CONNECTION' } }]
|
|
10342
|
+
*/
|
|
10343
|
+
type OAuthConnectionStatusEffect = ['oauth-connection-status', SExpr] | ['oauth-connection-status', SExpr, HostCallEmitConfig];
|
|
10344
|
+
/**
|
|
10345
|
+
* OAuth-connection-forget effect - drops the signed-in viewer's connection to a provider.
|
|
10346
|
+
* @example ['oauth-connection-forget', 'google', { emit: { success: 'DISCONNECTED' } }]
|
|
10347
|
+
*/
|
|
10348
|
+
type OAuthConnectionForgetEffect = ['oauth-connection-forget', SExpr] | ['oauth-connection-forget', SExpr, HostCallEmitConfig];
|
|
10273
10349
|
/**
|
|
10274
10350
|
* Random-bytes effect - `n` bytes (an integer from 1 to 1024) of the host CSPRNG, journaled on the kernel path.
|
|
10275
10351
|
* Success carries {@link RandomBytesPayload}; failure carries `{ error }`. Server-only.
|
|
@@ -10296,6 +10372,34 @@ type CredentialStatusEffect = ['credential-status', SExpr] | ['credential-status
|
|
|
10296
10372
|
* @example ['credential-forget', '@config.googleToken', { emit: { success: 'DISCONNECTED' } }]
|
|
10297
10373
|
*/
|
|
10298
10374
|
type CredentialForgetEffect = ['credential-forget', SExpr] | ['credential-forget', SExpr, HostCallEmitConfig];
|
|
10375
|
+
/** Why a `credential-connect` did not connect. */
|
|
10376
|
+
type CredentialConnectFailureKind = 'unavailable' | 'unsigned' | 'denied' | 'invalid_grant' | 'invalid_client' | 'transport' | 'malformed' | 'refused';
|
|
10377
|
+
/** The request of `credential-connect`: `credential`, `clientId` and `clientSecret` are secret knobs; `code` and `verifier` are the single-use values the host's credential store exchanges. */
|
|
10378
|
+
interface CredentialConnectRequest {
|
|
10379
|
+
credential: SExpr;
|
|
10380
|
+
scope?: SExpr;
|
|
10381
|
+
tokenEndpoint: SExpr;
|
|
10382
|
+
grant: SExpr;
|
|
10383
|
+
code: SExpr;
|
|
10384
|
+
redirectUri: SExpr;
|
|
10385
|
+
verifier?: SExpr;
|
|
10386
|
+
clientId: SExpr;
|
|
10387
|
+
clientSecret?: SExpr;
|
|
10388
|
+
clientAuth: SExpr;
|
|
10389
|
+
scopes?: SExpr;
|
|
10390
|
+
}
|
|
10391
|
+
/**
|
|
10392
|
+
* Credential-connect effect - asks the host's credential store to exchange an OAuth code at a declared token endpoint and
|
|
10393
|
+
* keep the result under the named secret knob; the program never holds a token. Success carries {@link CredentialPayload};
|
|
10394
|
+
* failure carries {@link CredentialConnectFailure}. Server-only.
|
|
10395
|
+
* @example ['credential-connect', { credential: '@config.googleToken', tokenEndpoint: 'https://oauth2.googleapis.com/token', grant: 'authorization_code', code: '@payload.code', redirectUri: 'https://app.example.com/cb', clientId: '@config.googleClientId', clientAuth: 'body' }, { emit: { success: 'CONNECTED' } }]
|
|
10396
|
+
*/
|
|
10397
|
+
type CredentialConnectEffect = ['credential-connect', CredentialConnectRequest] | ['credential-connect', CredentialConnectRequest, HostCallEmitConfig];
|
|
10398
|
+
/** Failure payload of `credential-connect`. */
|
|
10399
|
+
interface CredentialConnectFailure {
|
|
10400
|
+
error: string;
|
|
10401
|
+
kind: CredentialConnectFailureKind;
|
|
10402
|
+
}
|
|
10299
10403
|
/** Success payload of `credential-status` and `credential-forget`. */
|
|
10300
10404
|
interface CredentialPayload {
|
|
10301
10405
|
connected: boolean;
|
|
@@ -10306,7 +10410,7 @@ interface CredentialPayload {
|
|
|
10306
10410
|
* Access-check effect - the kernel's verdict on an entity's declared access policy for `viewer` (`null` for nobody) on
|
|
10307
10411
|
* `row`, through the evaluator fetch and persist enforce. Success carries {@link AccessCheckPayload}; an undeclared entity,
|
|
10308
10412
|
* an unknown action or a missing key fails with `{ error }`. Server-only.
|
|
10309
|
-
* @example ['access-check', { entity: 'Task', action: 'create', row: { ownerId: 'u1' },
|
|
10413
|
+
* @example ['access-check', { entity: 'Task', action: 'create', row: { ownerId: 'u1' }, identity: { id: 'u1' } }, { emit: { success: 'CHECKED' } }]
|
|
10310
10414
|
*/
|
|
10311
10415
|
type AccessCheckEffect = ['access-check', AccessCheckRequest] | ['access-check', AccessCheckRequest, HostCallEmitConfig];
|
|
10312
10416
|
/** The request of `access-check`. */
|
|
@@ -10314,7 +10418,7 @@ interface AccessCheckRequest {
|
|
|
10314
10418
|
entity: SExpr;
|
|
10315
10419
|
action: SExpr;
|
|
10316
10420
|
row: SExpr;
|
|
10317
|
-
|
|
10421
|
+
identity: SExpr;
|
|
10318
10422
|
}
|
|
10319
10423
|
/** Success payload of `access-check`. */
|
|
10320
10424
|
interface AccessCheckPayload {
|
|
@@ -10393,187 +10497,9 @@ interface CredentialAdminFailure {
|
|
|
10393
10497
|
error: string;
|
|
10394
10498
|
code: 'AUTH_ERROR' | 'VALIDATION_ERROR' | null;
|
|
10395
10499
|
}
|
|
10396
|
-
/** The provider words an OAuth connection can be kept for. */
|
|
10397
|
-
type OAuthProviderWord = 'google' | 'github' | 'auth0';
|
|
10398
|
-
/** The operations an `oauth-client` auth performs (closed set). */
|
|
10399
|
-
type OAuthOp = 'discovery' | 'code' | 'connect' | 'refresh' | 'revoke' | 'userinfo';
|
|
10400
|
-
/** The `oauth-endpoint` target words: the URL comes from the client's metadata. */
|
|
10401
|
-
type OAuthEndpointWord = 'token' | 'revocation' | 'userinfo';
|
|
10402
|
-
/**
|
|
10403
|
-
* An OAuth client object: where the authorization server is described (`issuer` XOR `endpoints`) and which
|
|
10404
|
-
* `secret` knobs hold the client credentials. `mode: 'mock'` has no runtime on the kernel host.
|
|
10405
|
-
*/
|
|
10406
|
-
type OAuthClient = {
|
|
10407
|
-
tag: OAuthProviderWord;
|
|
10408
|
-
mode: 'real' | 'mock';
|
|
10409
|
-
clientId: SExpr;
|
|
10410
|
-
clientSecret?: SExpr;
|
|
10411
|
-
clientAuth: 'basic' | 'post' | 'none';
|
|
10412
|
-
} & ({
|
|
10413
|
-
issuer: SExpr;
|
|
10414
|
-
endpoints?: never;
|
|
10415
|
-
} | {
|
|
10416
|
-
issuer?: never;
|
|
10417
|
-
endpoints: {
|
|
10418
|
-
authorization: SExpr;
|
|
10419
|
-
token: SExpr;
|
|
10420
|
-
revocation?: SExpr;
|
|
10421
|
-
userinfo?: SExpr;
|
|
10422
|
-
};
|
|
10423
|
-
});
|
|
10424
|
-
/** The options of `oauth-authorize`: the redirect, the scopes, the subject that must complete it, extra authorization params. */
|
|
10425
|
-
interface OAuthAuthorizeOptions {
|
|
10426
|
-
redirectUri: SExpr;
|
|
10427
|
-
scope?: SExpr;
|
|
10428
|
-
subject?: SExpr;
|
|
10429
|
-
params?: Record<string, SExpr>;
|
|
10430
|
-
}
|
|
10431
|
-
/**
|
|
10432
|
-
* OAuth-authorize effect - builds the authorization URL and keeps the pending grant (PKCE verifier included)
|
|
10433
|
-
* with the host; success carries {@link OAuthAuthorizePayload}, failure {@link OAuthEffectFailurePayload}. Server-only.
|
|
10434
|
-
* @example ['oauth-authorize', { tag: 'google', mode: 'real', issuer: '@config.issuer', clientId: '@config.id', clientAuth: 'post' }, { redirectUri: '@config.redirect' }, { emit: { success: 'AUTH_URL' } }]
|
|
10435
|
-
*/
|
|
10436
|
-
type OAuthAuthorizeEffect = ['oauth-authorize', OAuthClient, OAuthAuthorizeOptions] | ['oauth-authorize', OAuthClient, OAuthAuthorizeOptions, HostCallEmitConfig & {
|
|
10437
|
-
key?: SExpr;
|
|
10438
|
-
}];
|
|
10439
|
-
/**
|
|
10440
|
-
* OAuth-connection-status effect - the signed-in viewer's connection to a provider; success carries
|
|
10441
|
-
* {@link OAuthConnectionPayload}. Server-only.
|
|
10442
|
-
* @example ['oauth-connection-status', 'google', { emit: { success: 'CONNECTION' } }]
|
|
10443
|
-
*/
|
|
10444
|
-
type OAuthConnectionStatusEffect = ['oauth-connection-status', OAuthProviderWord] | ['oauth-connection-status', OAuthProviderWord, HostCallEmitConfig];
|
|
10445
|
-
/**
|
|
10446
|
-
* OAuth-connection-forget effect - drops the signed-in viewer's connection to a provider; success carries the
|
|
10447
|
-
* disconnected {@link OAuthConnectionPayload}. Server-only.
|
|
10448
|
-
* @example ['oauth-connection-forget', 'google', { emit: { success: 'DISCONNECTED' } }]
|
|
10449
|
-
*/
|
|
10450
|
-
type OAuthConnectionForgetEffect = ['oauth-connection-forget', OAuthProviderWord] | ['oauth-connection-forget', OAuthProviderWord, HostCallEmitConfig];
|
|
10451
|
-
/** Success payload of `oauth-authorize`. */
|
|
10452
|
-
interface OAuthAuthorizePayload {
|
|
10453
|
-
authUrl: string;
|
|
10454
|
-
state: string;
|
|
10455
|
-
/** The authorization code the person's consent returned on a host that asked them itself; empty text on every other host. */
|
|
10456
|
-
code: string;
|
|
10457
|
-
/** The call's evaluated `key` option; null when unkeyed. */
|
|
10458
|
-
key: string | null;
|
|
10459
|
-
}
|
|
10460
|
-
/** Success payload of `oauth-connection-status` and `oauth-connection-forget`, and of an `oauth-client` `connect`. */
|
|
10461
|
-
interface OAuthConnectionPayload {
|
|
10462
|
-
provider: OAuthProviderWord;
|
|
10463
|
-
connected: boolean;
|
|
10464
|
-
account: string;
|
|
10465
|
-
avatarUrl: string;
|
|
10466
|
-
scope: string[];
|
|
10467
|
-
connectedAt: string;
|
|
10468
|
-
}
|
|
10469
|
-
/** Failure payload of the OAuth effects: a fixed safe message, the public code and the closed reason. */
|
|
10470
|
-
interface OAuthEffectFailurePayload {
|
|
10471
|
-
error: string;
|
|
10472
|
-
code: HttpOAuthFailureCode;
|
|
10473
|
-
reason: HttpOAuthFailureReason;
|
|
10474
|
-
}
|
|
10475
|
-
/** Failure payload of `oauth-authorize`: the OAuth failure (or a bare `error`) beside the call's `key`. */
|
|
10476
|
-
type OAuthAuthorizeFailurePayload = (OAuthEffectFailurePayload | {
|
|
10477
|
-
error: string;
|
|
10478
|
-
}) & {
|
|
10479
|
-
key: string | null;
|
|
10480
|
-
};
|
|
10481
|
-
/** Success payloads of the `oauth-client` ops (each also carries the call's `key`). */
|
|
10482
|
-
interface OAuthDiscoveryPayload {
|
|
10483
|
-
issuer: string;
|
|
10484
|
-
key: string | null;
|
|
10485
|
-
}
|
|
10486
|
-
interface OAuthCodePayload {
|
|
10487
|
-
accessToken: string;
|
|
10488
|
-
refreshToken: string | null;
|
|
10489
|
-
expiresIn: number;
|
|
10490
|
-
tokenType: string;
|
|
10491
|
-
scope: string[];
|
|
10492
|
-
subject: string | null;
|
|
10493
|
-
key: string | null;
|
|
10494
|
-
}
|
|
10495
|
-
interface OAuthRefreshPayload {
|
|
10496
|
-
accessToken: string;
|
|
10497
|
-
expiresIn: number;
|
|
10498
|
-
key: string | null;
|
|
10499
|
-
}
|
|
10500
|
-
interface OAuthRevokePayload {
|
|
10501
|
-
revoked: boolean;
|
|
10502
|
-
key: string | null;
|
|
10503
|
-
}
|
|
10504
|
-
interface OAuthUserinfoPayload {
|
|
10505
|
-
sub: string;
|
|
10506
|
-
email: string;
|
|
10507
|
-
name: string;
|
|
10508
|
-
picture: string;
|
|
10509
|
-
key: string | null;
|
|
10510
|
-
}
|
|
10511
|
-
type OAuthConnectPayload = OAuthConnectionPayload & {
|
|
10512
|
-
key: string | null;
|
|
10513
|
-
};
|
|
10514
10500
|
type CallServiceEffect = ['call-service', string, string] | ['call-service', string, string, ServiceParams] | ['call-service', string, string, ServiceParams, CallServiceEmitConfig] | ['call-service', string, CallServiceConfig];
|
|
10515
|
-
/** HTTP method word of the `http` effect. */
|
|
10516
|
-
type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
10517
|
-
/**
|
|
10518
|
-
* Http effect - one HTTP request to a declared egress origin (server-only).
|
|
10519
|
-
* `request` carries the closed keys query/headers/body/auth/timeoutMs/responseAs/paginate/stream.
|
|
10520
|
-
* @example ['http', 'GET', 'https://api.iconify.design', '/search', { query: { query: '@payload.q' } }, { key: '@entity.id', emit: { success: 'OK', failure: 'ERR' } }]
|
|
10521
|
-
*/
|
|
10522
|
-
type HttpEffect = ['http', HttpMethod, string, SExpr] | ['http', HttpMethod, string, SExpr, SExpr] | ['http', HttpMethod, string, SExpr, SExpr, CallServiceEmitConfig];
|
|
10523
|
-
/**
|
|
10524
|
-
* Redis effect - one command to a declared `redis://`/`rediss://` egress origin (server-only); the kernel owns RESP.
|
|
10525
|
-
* @example ['redis', 'redis://cache.internal:6379', ['GET', '@payload.key'], { auth: '@config.password' }, { emit: { success: 'GOT', failure: 'ERR' } }]
|
|
10526
|
-
*/
|
|
10527
|
-
type RedisEffect = ['redis', string, SExpr] | ['redis', string, SExpr, SExpr] | ['redis', string, SExpr, SExpr, SExpr];
|
|
10528
|
-
/**
|
|
10529
|
-
* Postgres effect - one parameterised read-only query to a declared `postgres://` egress origin (server-only); the kernel owns the wire protocol.
|
|
10530
|
-
* @example ['postgres', 'postgres://db.internal:5432', 'select id from t where a = $1', ['@payload.a'], { user: 'app' }, { emit: { success: 'ROWS', failure: 'ERR' } }]
|
|
10531
|
-
*/
|
|
10532
|
-
type PostgresEffect = ['postgres', string, SExpr, SExpr] | ['postgres', string, SExpr, SExpr, SExpr] | ['postgres', string, SExpr, SExpr, SExpr, SExpr];
|
|
10533
|
-
/** Success payload of an `http` effect; a non-2xx status is still a success reply. */
|
|
10534
|
-
interface HttpReplyPayload {
|
|
10535
|
-
status: number;
|
|
10536
|
-
/** Lower-cased header names. */
|
|
10537
|
-
headers: Record<string, string>;
|
|
10538
|
-
body: string;
|
|
10539
|
-
/** The call's evaluated `key` option; null when unkeyed. */
|
|
10540
|
-
key: string | null;
|
|
10541
|
-
}
|
|
10542
|
-
/** Success payload of an `http` effect with `paginate`. */
|
|
10543
|
-
interface HttpPagedPayload<T> {
|
|
10544
|
-
pages: number;
|
|
10545
|
-
items: T[];
|
|
10546
|
-
last: HttpReplyPayload;
|
|
10547
|
-
/** The call's evaluated `key` option; null when unkeyed. */
|
|
10548
|
-
key: string | null;
|
|
10549
|
-
}
|
|
10550
|
-
interface HttpPresignedPayload {
|
|
10551
|
-
url: string;
|
|
10552
|
-
key: string | null;
|
|
10553
|
-
}
|
|
10554
|
-
/** Evaluated HTTP input; clock metadata belongs to the dispatch, never the authored request. */
|
|
10555
|
-
interface HttpCall {
|
|
10556
|
-
method: string;
|
|
10557
|
-
origin: string;
|
|
10558
|
-
path: string;
|
|
10559
|
-
request: JsonObject;
|
|
10560
|
-
key?: string | null;
|
|
10561
|
-
nowMs?: number;
|
|
10562
|
-
/** `beacon` hands the built request to the host's beacon port instead of an exchange; absent is `fetch`. */
|
|
10563
|
-
delivery?: 'fetch' | 'beacon';
|
|
10564
|
-
}
|
|
10565
|
-
/** Success payload of a `browser/beacon` effect: how the host took the request, never a collector reply. */
|
|
10566
|
-
interface HttpBeaconPayload {
|
|
10567
|
-
/** Queue accepted, or the keepalive fetch answered 2xx. */
|
|
10568
|
-
sent: boolean;
|
|
10569
|
-
via: 'queue' | 'fetch';
|
|
10570
|
-
/** The keepalive fetch's status; null when the queue accepted or the fetch threw. */
|
|
10571
|
-
status: number | null;
|
|
10572
|
-
/** The call's evaluated `key`; null when unkeyed. */
|
|
10573
|
-
key: string | null;
|
|
10574
|
-
}
|
|
10575
10501
|
/** A page fact `browser/page-facts` can read; the list order is the read order. */
|
|
10576
|
-
type PageFactField = 'hostname' | 'referrer' | 'screenWidth';
|
|
10502
|
+
type PageFactField = 'hostname' | 'referrer' | 'screenWidth' | 'href';
|
|
10577
10503
|
/** Success payload of `browser/page-facts`: a fact that was not requested carries its default. */
|
|
10578
10504
|
interface BrowserPageFacts {
|
|
10579
10505
|
/** False when there is no page (no window or document). */
|
|
@@ -10581,6 +10507,8 @@ interface BrowserPageFacts {
|
|
|
10581
10507
|
hostname: string;
|
|
10582
10508
|
referrer: string;
|
|
10583
10509
|
screenWidth: number | null;
|
|
10510
|
+
/** The full URL of the current location; empty when it was not requested or there is no page. */
|
|
10511
|
+
href: string;
|
|
10584
10512
|
}
|
|
10585
10513
|
/**
|
|
10586
10514
|
* Page-facts effect - read the requested page facts (client-only).
|
|
@@ -10634,12 +10562,6 @@ type BrowserPromptEffect = ['browser/prompt', string, string] | ['browser/prompt
|
|
|
10634
10562
|
* @example ['browser/embed', ['a', 'b'], { key: '@entity.batchId', emit: { success: 'EMBEDDED', failure: 'FAILED', cancelled: 'CANCELLED' } }]
|
|
10635
10563
|
*/
|
|
10636
10564
|
type BrowserEmbedEffect = ['browser/embed', string[]] | ['browser/embed', string[], CallServiceEmitConfig];
|
|
10637
|
-
/**
|
|
10638
|
-
* Beacon effect - fire-and-forget text/plain POST to an absolute http(s) URL through the browser's beacon queue,
|
|
10639
|
-
* then one keepalive fetch (client-only).
|
|
10640
|
-
* @example ['browser/beacon', 'https://collector.example.com/e', { text: '@entity.body', key: '@entity.id' }, { emit: { success: 'DONE', failure: 'FAILED', cancelled: 'CANCELLED' } }]
|
|
10641
|
-
*/
|
|
10642
|
-
type BrowserBeaconEffect = ['browser/beacon', string, SExpr] | ['browser/beacon', string, SExpr, CallServiceEmitConfig];
|
|
10643
10565
|
/** Why a `browser/tab-*` call failed: refused before any ask, no tabs on the host, no page script, a vanished element, or another error. */
|
|
10644
10566
|
type BrowserTabFailureKind = 'invalid' | 'unavailable' | 'not-ready' | 'not-found' | 'failed';
|
|
10645
10567
|
/** Failure payload of every `browser/tab-*` effect. */
|
|
@@ -10675,54 +10597,8 @@ interface BrowserTabElementRef {
|
|
|
10675
10597
|
type BrowserTabEffect = [BrowserTabOperator, SExpr] | [BrowserTabOperator, SExpr, CallServiceEmitConfig];
|
|
10676
10598
|
/** The `browser/tab-*` operator names. */
|
|
10677
10599
|
type BrowserTabOperator = 'browser/tab-list' | 'browser/tab-open' | 'browser/tab-close' | 'browser/tab-navigate' | 'browser/tab-query' | 'browser/tab-watch' | 'browser/tab-unwatch' | 'browser/tab-apply' | 'browser/tab-apply-many' | 'browser/tab-act' | 'browser/tab-capture';
|
|
10678
|
-
/** The leg of an `http` call that failed: its token-exchange grant or the authored request. */
|
|
10679
|
-
type HttpFailurePhase = 'grant' | 'request';
|
|
10680
10600
|
/** Public AUTH code of an `oauth` failure. */
|
|
10681
|
-
type HttpOAuthFailureCode = 'AUTH_ERROR' | 'VALIDATION_ERROR' | 'NOT_CONFIGURED' | 'SERVICE_ERROR' | 'NETWORK_ERROR';
|
|
10682
10601
|
/** Closed reason set of an `oauth` failure. */
|
|
10683
|
-
type HttpOAuthFailureReason = 'state-unknown' | 'state-expired' | 'subject-mismatch' | 'provider-mismatch' | 'not-signed-in' | 'store-unavailable' | 'metadata-invalid' | 'response-invalid' | 'token-rejected' | 'userinfo-mismatch' | 'unconfigured-client';
|
|
10684
|
-
/**
|
|
10685
|
-
* Failure payload of an `http` effect; `refused` = rejected before sending, `unavailable` = the host has no port
|
|
10686
|
-
* for a capability the call needs. `phase` names the failed leg (null for a refusal or other failure) and
|
|
10687
|
-
* `grantStatus`/`grantBody` the status and raw body text of a non-2xx grant reply (never a 2xx body, which carries tokens); `code`/`reason` are set only for `oauth`.
|
|
10688
|
-
*/
|
|
10689
|
-
type HttpFailurePayload = {
|
|
10690
|
-
error: string;
|
|
10691
|
-
/** The call's evaluated `key` option; null when unkeyed. */
|
|
10692
|
-
key: string | null;
|
|
10693
|
-
} & ({
|
|
10694
|
-
kind: 'unconfigured';
|
|
10695
|
-
credential: string;
|
|
10696
|
-
phase: HttpFailurePhase | null;
|
|
10697
|
-
grantStatus: number | null;
|
|
10698
|
-
grantBody: string | null;
|
|
10699
|
-
code: null;
|
|
10700
|
-
reason: null;
|
|
10701
|
-
} | {
|
|
10702
|
-
kind: 'timeout' | 'failed' | 'refused' | 'unavailable';
|
|
10703
|
-
credential: null;
|
|
10704
|
-
phase: HttpFailurePhase | null;
|
|
10705
|
-
grantStatus: number | null;
|
|
10706
|
-
grantBody: string | null;
|
|
10707
|
-
code: null;
|
|
10708
|
-
reason: null;
|
|
10709
|
-
} | {
|
|
10710
|
-
kind: 'oauth';
|
|
10711
|
-
credential: null;
|
|
10712
|
-
phase: null;
|
|
10713
|
-
grantStatus: null;
|
|
10714
|
-
grantBody: null;
|
|
10715
|
-
code: HttpOAuthFailureCode;
|
|
10716
|
-
reason: HttpOAuthFailureReason;
|
|
10717
|
-
});
|
|
10718
|
-
/** One `onMessage` delivery of an `http` effect with `stream` (json-lines: `event`/`id` null). */
|
|
10719
|
-
interface HttpStreamEvent {
|
|
10720
|
-
data: string;
|
|
10721
|
-
event: string | null;
|
|
10722
|
-
id: string | null;
|
|
10723
|
-
/** The call's evaluated `key` option; null when unkeyed. */
|
|
10724
|
-
key: string | null;
|
|
10725
|
-
}
|
|
10726
10602
|
/**
|
|
10727
10603
|
* Spawn effect - creates a new entity instance (games).
|
|
10728
10604
|
* @example ['spawn', 'Bullet', { x: '@entity.x', y: '@entity.y' }]
|
|
@@ -10740,7 +10616,7 @@ type DespawnEffect = ['despawn', string];
|
|
|
10740
10616
|
*/
|
|
10741
10617
|
type DoEffect = ['do', ...SExpr[]];
|
|
10742
10618
|
/**
|
|
10743
|
-
* Options accepted by `fetch`
|
|
10619
|
+
* Options accepted by `fetch` effects. Mirrors what
|
|
10744
10620
|
* `OrbitalServerRuntime`'s fetch handler reads at runtime: `id`, `filter`,
|
|
10745
10621
|
* `limit`, `offset`, `include`, plus the trailing `emit:` map for
|
|
10746
10622
|
* success/failure event names.
|
|
@@ -10766,6 +10642,8 @@ type FetchOptions = {
|
|
|
10766
10642
|
deliver?: 'rows' | 'ids';
|
|
10767
10643
|
/** `exact` (absent) counts every match for `totalCount`; `none` skips the count. */
|
|
10768
10644
|
total?: 'exact' | 'none';
|
|
10645
|
+
/** A non-empty string expression echoed as `key` in the success and failure payloads (EXEC-FETCH-3). */
|
|
10646
|
+
key?: string | RenderBinding;
|
|
10769
10647
|
/** Lifecycle events to emit on resolve / reject */
|
|
10770
10648
|
emit?: {
|
|
10771
10649
|
success?: string;
|
|
@@ -10797,7 +10675,7 @@ type FetchStreamOptions = {
|
|
|
10797
10675
|
*/
|
|
10798
10676
|
type FetchStreamEffect = ['fetch-stream', string] | ['fetch-stream', string, FetchStreamOptions];
|
|
10799
10677
|
/**
|
|
10800
|
-
* Result returned by a fetch
|
|
10678
|
+
* Result returned by a fetch handler.
|
|
10801
10679
|
*
|
|
10802
10680
|
* `rows` carries the entity (or entities) that survived `filter` AND
|
|
10803
10681
|
* pagination (`offset`/`limit`). `total` is the count of rows that
|
|
@@ -10838,54 +10716,6 @@ type LogEffect = ['log', ...SExpr[]];
|
|
|
10838
10716
|
* @example ['wait', 1000] - wait 1 second
|
|
10839
10717
|
*/
|
|
10840
10718
|
type WaitEffect = ['wait', number];
|
|
10841
|
-
/**
|
|
10842
|
-
* Ref effect - creates a reactive entity subscription.
|
|
10843
|
-
* Returns a reactive reference that auto-updates when the entity changes.
|
|
10844
|
-
* @example ['ref', '@entity.health'] - reactive subscription to health
|
|
10845
|
-
* @example ['ref', 'User', { id: '@payload.userId' }] - reactive ref to specific user
|
|
10846
|
-
*/
|
|
10847
|
-
type RefEffect = ['ref', string] | ['ref', string, FetchOptions];
|
|
10848
|
-
/**
|
|
10849
|
-
* Deref effect - snapshot read of an entity value.
|
|
10850
|
-
* Returns the current value without subscribing to changes.
|
|
10851
|
-
* @example ['deref', '@entity.health'] - read current health value
|
|
10852
|
-
* @example ['deref', 'User', { id: '@payload.userId' }] - read specific user snapshot
|
|
10853
|
-
*/
|
|
10854
|
-
type DerefEffect = ['deref', string] | ['deref', string, FetchOptions];
|
|
10855
|
-
/**
|
|
10856
|
-
* Swap! effect - atomic compare-and-swap on an entity field.
|
|
10857
|
-
* Only updates if the current value matches the expected value.
|
|
10858
|
-
* @example ['swap', '@entity.health', ['fn', ['old'], ['-', 'old', '@payload.damage']]]
|
|
10859
|
-
* @example ['swap', '@entity.counter', ['+', '@entity.counter', 1]]
|
|
10860
|
-
*/
|
|
10861
|
-
type SwapEffect = ['swap', string, SExpr];
|
|
10862
|
-
/**
|
|
10863
|
-
* Options accepted by `watch` effects. Mirrors what the runtime reads when
|
|
10864
|
-
* registering the change callback: `debounce` and the trailing `emit:` map.
|
|
10865
|
-
*/
|
|
10866
|
-
type WatchOptions = {
|
|
10867
|
-
/** Debounce duration in milliseconds */
|
|
10868
|
-
debounce?: number;
|
|
10869
|
-
/** Lifecycle events to emit on update / failure */
|
|
10870
|
-
emit?: {
|
|
10871
|
-
on_message?: string;
|
|
10872
|
-
failure?: string;
|
|
10873
|
-
};
|
|
10874
|
-
};
|
|
10875
|
-
/**
|
|
10876
|
-
* Watch effect - registers a callback for entity changes.
|
|
10877
|
-
* Emits an event whenever the watched binding changes.
|
|
10878
|
-
* @example ['watch', '@entity.health', 'HEALTH_CHANGED']
|
|
10879
|
-
* @example ['watch', '@entity.status', 'STATUS_UPDATED', { debounce: 100 }]
|
|
10880
|
-
*/
|
|
10881
|
-
type WatchEffect = ['watch', string, string] | ['watch', string, string, WatchOptions];
|
|
10882
|
-
/**
|
|
10883
|
-
* Atomic effect - groups multiple effects into an atomic transaction.
|
|
10884
|
-
* All effects either succeed together or are rolled back.
|
|
10885
|
-
* @example ['atomic', ['set', '@entity.x', 10], ['set', '@entity.y', 20]]
|
|
10886
|
-
* @example ['atomic', ['persist', 'update', 'User', { balance: 100 }], ['emit', 'BALANCE_UPDATED']]
|
|
10887
|
-
*/
|
|
10888
|
-
type AtomicEffect = ['atomic', ...SExpr[]];
|
|
10889
10719
|
/**
|
|
10890
10720
|
* Agent effect - invokes an agent/* operator.
|
|
10891
10721
|
* Covers all 22 operators in the std-agent category.
|
|
@@ -10923,13 +10753,29 @@ type LlmEffect = [`llm/${string}`, ...SExpr[]];
|
|
|
10923
10753
|
* installed packages through `orb`, so they run on the server.
|
|
10924
10754
|
* @example ['behavior/catalog', { paths: ['std/ui/core/molecules'] }, { emit: { success: 'LISTED', failure: 'LIST_FAILED' } }]
|
|
10925
10755
|
*/
|
|
10926
|
-
type BehaviorReflectionEffect = ['behavior/catalog' | 'behavior/describe' | 'behavior/source' | 'behavior/resolve' | 'behavior/dependencies', ...SExpr[]];
|
|
10756
|
+
type BehaviorReflectionEffect = ['behavior/catalog' | 'behavior/describe' | 'behavior/source' | 'behavior/resolve' | 'behavior/dependencies' | 'behavior/packages', ...SExpr[]];
|
|
10757
|
+
/**
|
|
10758
|
+
* Kernel-owned memory asks (EXEC-METAL-1..4): arenas, blocks, borrows and the atomic cells of shared arenas. The
|
|
10759
|
+
* pure reads of the family (`mem/read`, `mem/read-uint`, `mem/read-int`, `mem/length`, `mem/layout`) are expressions, not effect heads.
|
|
10760
|
+
* @example ['mem/arena-new', 'bump', 4096, { emit: { success: 'ARENA_OK', failure: 'FAILED' } }]
|
|
10761
|
+
*/
|
|
10762
|
+
type MemEffect = ['mem/arena-new' | 'mem/arena-drop' | 'mem/alloc' | 'mem/free' | 'mem/borrow' | 'mem/release' | 'mem/write' | 'mem/freeze' | 'mem/atomic-load' | 'mem/atomic-store' | 'mem/atomic-add' | 'mem/atomic-cas', ...SExpr[]];
|
|
10763
|
+
/**
|
|
10764
|
+
* Granted worklist reorders (EXEC-METAL-5), applied after the step's own emits; the rest of `kernel/` is expressions.
|
|
10765
|
+
* @example ['kernel/queue-front', 'TICK']
|
|
10766
|
+
*/
|
|
10767
|
+
type KernelEffect = ['kernel/queue-front' | 'kernel/queue-back', ...SExpr[]];
|
|
10768
|
+
/**
|
|
10769
|
+
* A granted C call through the native host (EXEC-METAL-6).
|
|
10770
|
+
* @example ['ffi/call', '/usr/lib/libSystem.B.dylib', 'cos', [0.5], { emit: { success: 'COS_DONE', failure: 'FFI_FAILED' } }]
|
|
10771
|
+
*/
|
|
10772
|
+
type FfiEffect = ['ffi/call', ...SExpr[]];
|
|
10927
10773
|
/**
|
|
10928
10774
|
* Program effects: read `.lolo` text into a quoted program, print one back,
|
|
10929
10775
|
* evaluate one (validate, then instantiate). Run `orb` on the server.
|
|
10930
10776
|
* @example ['program/eval', '@entity.program', { emit: { success: 'BUILT', failure: 'BUILD_FAILED' } }]
|
|
10931
10777
|
*/
|
|
10932
|
-
type ProgramEffect = ['program/read' | 'program/print' | 'program/eval' | 'program/validate' | 'program/compose' | 'program/step' | 'program/live', ...SExpr[]];
|
|
10778
|
+
type ProgramEffect = ['program/read' | 'program/print' | 'program/eval' | 'program/validate' | 'program/prove' | 'program/os-grants' | 'program/compose' | 'program/step' | 'program/live' | 'program/self' | 'program/tick' | 'program/resolve-rows' | 'program/open' | 'program/close', ...SExpr[]];
|
|
10933
10779
|
/**
|
|
10934
10780
|
* Agent-port effects, the three abilities an LLM tool loop is written with: `program/inputs` lists the
|
|
10935
10781
|
* running program's declared external inputs, `program/dispatch` fires one AS THE CALLER through the ordinary
|
|
@@ -10948,7 +10794,12 @@ type AgentPortEffect = ['program/inputs' | 'program/dispatch' | 'persist/read-na
|
|
|
10948
10794
|
type SessionEffect = [`session/${string}`, ...SExpr[]];
|
|
10949
10795
|
type TraceEffect = [`trace/${string}`, ...SExpr[]];
|
|
10950
10796
|
type MemoryEffect = [`memory/${string}`, ...SExpr[]];
|
|
10797
|
+
type KvEffect = [`kv/${string}`, ...SExpr[]];
|
|
10951
10798
|
type ApplicationEffect = [`application/${string}`, ...SExpr[]];
|
|
10799
|
+
type AudioEffect = [`audio/${string}`, ...SExpr[]];
|
|
10800
|
+
type AuthEffect = [`auth/${string}`, ...SExpr[]];
|
|
10801
|
+
type IdentityEffect = [`identity/${string}`, ...SExpr[]];
|
|
10802
|
+
type ThemeEffect = [`theme/${string}`, ...SExpr[]];
|
|
10952
10803
|
/** Effect operators the std registry declares that had no typed tuple (arity from the registry). */
|
|
10953
10804
|
type NotifyEffect = ['notify', SExpr] | ['notify', SExpr, SExpr];
|
|
10954
10805
|
type SendServerEffect = ['send-server', SExpr] | ['send-server', SExpr, SExpr];
|
|
@@ -10963,7 +10814,7 @@ type WorkspaceArchiveOrbitalEffect = ['workspace/archive-orbital', SExpr];
|
|
|
10963
10814
|
* Union of all typed effects.
|
|
10964
10815
|
* Provides compile-time validation for common effect types.
|
|
10965
10816
|
*/
|
|
10966
|
-
type TypedEffect = RenderUIEffect | NavigateEffect | NavigateBackEffect | EmitEffect | SetEffect | PersistEffect | CallServiceEffect | CancelCallEffect |
|
|
10817
|
+
type TypedEffect = RenderUIEffect | NavigateEffect | NavigateBackEffect | EmitEffect | SetEffect | PersistEffect | CallServiceEffect | CancelCallEffect | OAuthAuthorizeEffect | OAuthConnectionStatusEffect | OAuthConnectionForgetEffect | RandomBytesEffect | CredentialStatusEffect | CredentialForgetEffect | CredentialConnectEffect | CredentialAdminEffect | AccessCheckEffect | SpawnEffect | DespawnEffect | DoEffect | FetchEffect | FetchStreamEffect | IfEffect | WhenEffect | LetEffect | LogEffect | WaitEffect | AgentEffect | OsEffect | BrowserEffect | LlmEffect | BehaviorReflectionEffect | ProgramEffect | MemEffect | KernelEffect | FfiEffect | AgentPortEffect | SessionEffect | TraceEffect | MemoryEffect | KvEffect | ApplicationEffect | AudioEffect | AuthEffect | IdentityEffect | ThemeEffect | NotifyEffect | SendServerEffect | ProbSeedEffect | ProbConditionEffect | WorkspaceWriteOrbitalEffect | WorkspaceWriteFileEffect | WorkspaceWriteSchemaEffect | WorkspaceWritePlanEffect | WorkspaceArchiveOrbitalEffect;
|
|
10967
10818
|
/**
|
|
10968
10819
|
* Effect type - typed S-expression format.
|
|
10969
10820
|
*
|
|
@@ -10991,9 +10842,9 @@ type TypedEffect = RenderUIEffect | NavigateEffect | NavigateBackEffect | EmitEf
|
|
|
10991
10842
|
*/
|
|
10992
10843
|
type Effect = TypedEffect;
|
|
10993
10844
|
/** Every literal effect operator the {@link Effect} union declares, as runtime data. */
|
|
10994
|
-
declare const EFFECT_OPERATORS: readonly ["render-ui", "navigate", "navigate-back", "emit", "set", "persist", "call-service", "cancel-call", "
|
|
10845
|
+
declare const EFFECT_OPERATORS: readonly ["render-ui", "navigate", "navigate-back", "emit", "set", "persist", "call-service", "cancel-call", "oauth-authorize", "oauth-connection-status", "oauth-connection-forget", "random-bytes", "credential-status", "credential-forget", "credential-connect", "credential-list", "credential-set", "credential-remove", "credential-test", "credential-mode", "credential-rotate", "access-check", "spawn", "despawn", "do", "fetch", "fetch-stream", "if", "when", "let", "log", "wait", "notify", "send-server", "prob/seed", "prob/condition", "workspace/write-orbital", "workspace/write-file", "workspace/write-schema", "workspace/write-plan", "workspace/archive-orbital", "behavior/catalog", "behavior/describe", "behavior/source", "behavior/resolve", "behavior/dependencies", "behavior/packages", "program/read", "program/print", "program/eval", "program/validate", "program/prove", "program/os-grants", "program/compose", "program/step", "program/inputs", "program/dispatch", "program/open", "program/close", "program/live", "program/self", "program/tick", "program/resolve-rows", "persist/read-named", "mem/arena-new", "mem/arena-drop", "mem/alloc", "mem/free", "mem/borrow", "mem/release", "mem/write", "mem/freeze", "mem/atomic-load", "mem/atomic-store", "mem/atomic-add", "mem/atomic-cas", "kernel/queue-front", "kernel/queue-back", "ffi/call"];
|
|
10995
10846
|
/** Namespaced effect families (`<family>/<name>`, e.g. `llm/generate`) the {@link Effect} union declares. */
|
|
10996
|
-
declare const EFFECT_OPERATOR_FAMILIES: readonly ["agent", "os", "browser", "llm", "session", "trace", "memory", "application"];
|
|
10847
|
+
declare const EFFECT_OPERATOR_FAMILIES: readonly ["agent", "os", "browser", "llm", "session", "trace", "memory", "kv", "application", "audio", "auth", "identity", "theme"];
|
|
10997
10848
|
type EffectOperator = (typeof EFFECT_OPERATORS)[number];
|
|
10998
10849
|
type EffectOperatorFamily = (typeof EFFECT_OPERATOR_FAMILIES)[number];
|
|
10999
10850
|
type EffectHead = Effect[0];
|
|
@@ -11009,15 +10860,15 @@ type EffectOperatorsInSync = AssertTrue<[
|
|
|
11009
10860
|
] extends [never, never, never, never] ? true : false>;
|
|
11010
10861
|
/**
|
|
11011
10862
|
* The effects a server reports an outcome for on
|
|
11012
|
-
* `
|
|
10863
|
+
* `EventResponse.effectResults` (`ServerEffectResult.effect`). Every
|
|
11013
10864
|
* member is checked against the effect heads above at compile time, so a
|
|
11014
10865
|
* name that is not an effect cannot be listed and a new server-reported
|
|
11015
10866
|
* effect is added HERE only — the wire type, its zod twin and the
|
|
11016
10867
|
* `events-wire` fixture case all derive from this array.
|
|
11017
10868
|
*/
|
|
11018
|
-
declare const SERVER_REPORTED_EFFECTS: readonly ["set", "persist", "call-service", "
|
|
10869
|
+
declare const SERVER_REPORTED_EFFECTS: readonly ["set", "persist", "call-service", "fetch", "fetch-stream", "emit"];
|
|
11019
10870
|
type ServerReportedEffect = (typeof SERVER_REPORTED_EFFECTS)[number];
|
|
11020
|
-
/** A namespaced effect head (`
|
|
10871
|
+
/** A namespaced effect head (`llm/generate`, `behavior/describe`, `program/read`) — what a
|
|
11021
10872
|
* `substrate` result's `name` carries. Derived from the union, never listed. */
|
|
11022
10873
|
type NamespacedEffectName = Extract<Effect[0], `${string}/${string}`>;
|
|
11023
10874
|
/** Validates the S-expression shape and yields the typed `Effect` (the claim `isEffect` makes). */
|
|
@@ -11134,64 +10985,6 @@ declare function despawn(entityId: string): DespawnEffect;
|
|
|
11134
10985
|
* @example ["do", ["set", "@entity.x", 0], ["set", "@entity.y", 0]]
|
|
11135
10986
|
*/
|
|
11136
10987
|
declare function doEffects(...effects: SExpr[]): DoEffect;
|
|
11137
|
-
/**
|
|
11138
|
-
* Create a ref effect (reactive entity subscription).
|
|
11139
|
-
*
|
|
11140
|
-
* @param {string} binding - Binding or entity name to subscribe to
|
|
11141
|
-
* @param {FetchOptions} [selector] - Optional selector for specific entity
|
|
11142
|
-
* @returns {RefEffect} Ref effect array
|
|
11143
|
-
*
|
|
11144
|
-
* @example
|
|
11145
|
-
* ref('@entity.health'); // returns ["ref", "@entity.health"]
|
|
11146
|
-
* ref('User', { id: '@payload.userId' }); // returns ["ref", "User", { id: "@payload.userId" }]
|
|
11147
|
-
*/
|
|
11148
|
-
declare function ref(binding: string): RefEffect;
|
|
11149
|
-
declare function ref(binding: string, selector: FetchOptions): RefEffect;
|
|
11150
|
-
/**
|
|
11151
|
-
* Create a deref effect (snapshot read).
|
|
11152
|
-
*
|
|
11153
|
-
* @param {string} binding - Binding or entity name to read
|
|
11154
|
-
* @param {FetchOptions} [selector] - Optional selector for specific entity
|
|
11155
|
-
* @returns {DerefEffect} Deref effect array
|
|
11156
|
-
*
|
|
11157
|
-
* @example
|
|
11158
|
-
* deref('@entity.health'); // returns ["deref", "@entity.health"]
|
|
11159
|
-
* deref('User', { id: '@payload.userId' }); // returns ["deref", "User", { id: "@payload.userId" }]
|
|
11160
|
-
*/
|
|
11161
|
-
declare function deref(binding: string): DerefEffect;
|
|
11162
|
-
declare function deref(binding: string, selector: FetchOptions): DerefEffect;
|
|
11163
|
-
/**
|
|
11164
|
-
* Create a swap effect (atomic compare-and-swap).
|
|
11165
|
-
*
|
|
11166
|
-
* @param {string} binding - Binding to atomically update
|
|
11167
|
-
* @param {SExpr} transform - Transformation expression applied to the current value
|
|
11168
|
-
* @returns {SwapEffect} Swap effect array
|
|
11169
|
-
*
|
|
11170
|
-
* @example
|
|
11171
|
-
* swap('@entity.counter', ['+', '@entity.counter', 1]);
|
|
11172
|
-
* // returns ["swap", "@entity.counter", ["+", "@entity.counter", 1]]
|
|
11173
|
-
*/
|
|
11174
|
-
declare function swap(binding: string, transform: SExpr): SwapEffect;
|
|
11175
|
-
/**
|
|
11176
|
-
* Create a watch effect (entity change callback).
|
|
11177
|
-
*
|
|
11178
|
-
* @example
|
|
11179
|
-
* watch('@entity.health', 'HEALTH_CHANGED');
|
|
11180
|
-
* watch('@entity.status', 'STATUS_UPDATED', { debounce: 100 });
|
|
11181
|
-
*/
|
|
11182
|
-
declare function watch(binding: string, event: string): WatchEffect;
|
|
11183
|
-
declare function watch(binding: string, event: string, options: WatchOptions): WatchEffect;
|
|
11184
|
-
/**
|
|
11185
|
-
* Create an atomic effect (transaction group).
|
|
11186
|
-
*
|
|
11187
|
-
* @param {...SExpr[]} effects - Effects to execute atomically
|
|
11188
|
-
* @returns {AtomicEffect} Atomic effect array
|
|
11189
|
-
*
|
|
11190
|
-
* @example
|
|
11191
|
-
* atomic(['set', '@entity.x', 10], ['set', '@entity.y', 20]);
|
|
11192
|
-
* // returns ["atomic", ["set", "@entity.x", 10], ["set", "@entity.y", 20]]
|
|
11193
|
-
*/
|
|
11194
|
-
declare function atomic(...effects: SExpr[]): AtomicEffect;
|
|
11195
10988
|
/** Resolved pattern props for render-ui effects at runtime. Recursive for nested pattern configs. */
|
|
11196
10989
|
type ResolvedPatternProps = {
|
|
11197
10990
|
[prop: string]: string | number | boolean | null | undefined | ResolvedPatternProps | RenderChildrenMap | Array<ResolvedPatternProps | RenderChildrenMap>;
|
|
@@ -11222,5 +11015,5 @@ interface RenderUINode {
|
|
|
11222
11015
|
renderItem?: RenderUINode;
|
|
11223
11016
|
}
|
|
11224
11017
|
|
|
11225
|
-
export { AssetCatalogEntrySchema as $, AnimationDefSchema as J, AnimationNameSchema as L, AssetAspectSchema as X, AssetCatalogSchema as a0, AssetDimensionSchema as a2, AssetSchema as a3, AudioManifestSchema as
|
|
11226
|
-
export type { AnyPatternConfig as A, AccessCheckRequest as B, AgentEffect as C, AgentPortEffect as D, EntityField as E,
|
|
11018
|
+
export { AssetCatalogEntrySchema as $, AnimationDefSchema as J, AnimationNameSchema as L, AssetAspectSchema as X, AssetCatalogSchema as a0, AssetDimensionSchema as a2, AssetSchema as a3, AudioManifestSchema as a6, DEFAULT_UNIT_ANIMATION_ROWS as aO, EFFECT_OPERATORS as aR, EFFECT_OPERATOR_FAMILIES as aS, ENTITY_ROLES as aT, EffectSchema as aY, CAMERA_MODES as al, CameraModeSchema as ar, CameraSchema as as, EntityFieldSchema as b1, EntityIdSchema as b2, EntityPersistenceSchema as b3, EntityRoleSchema as b5, EntityRowSchema as b6, EntitySchema as b7, LedgerKindSchema as bB, MANIFEST_ASSET_LICENSES as bE, MANIFEST_CANVAS_AFFINITIES as bF, MANIFEST_ENTRY_KINDS as bG, MANIFEST_SOURCE_CATALOGS as bH, ManifestAssetLicenseSchema as bJ, ManifestCanvasAffinitySchema as bL, ManifestEntryKindSchema as bP, ManifestEntrySchema as bQ, ManifestFrameSpecSchema as bS, ManifestSourceCatalogSchema as bU, McpServiceDefSchema as bW, EventIdSchema as ba, FIELD_TYPES as bb, FX_KINDS as bc, FieldProjectionSchema as bj, FieldSchema as bk, FieldTagSchema as bm, FieldTypeSchema as bo, FieldValueSchema as bp, FileValueSchema as br, FxKindSchema as bt, IdentityLedgerSchema as bx, LedgerEntrySchema as bz, OrbitalEntitySchema as c7, OrbitalIdSchema as c8, RestServiceDefSchema as cA, SEMANTIC_STRING_PATTERNS as cB, SEMANTIC_STRING_TYPES as cC, SERVER_REPORTED_EFFECTS as cD, SERVICE_TYPES as cE, SHEET_PROJECTIONS as cF, SPRITE_DIRECTIONS as cG, SPRITE_SHEET_LAYOUT as cH, ScenePosSchema as cK, SemanticAssetRefSchema as cN, ServiceDefinitionSchema as cQ, ServiceIdSchema as cS, ServiceRefObjectSchema as cV, ServiceRefSchema as cW, ServiceRefStringSchema as cX, ServiceTypeSchema as cZ, PageIdSchema as cb, PaletteEntryIdSchema as cd, PatternConfigSchema as ce, PatternObjectSchema as cf, RENDERED_SLOTS as cn, RelationConfigSchema as cq, ResolvedPatternPropsSchema as cw, RestAuthConfigSchema as cy, isClientResident as d$, SheetProjectionSchema as d1, SocketEventsSchema as d3, SocketServiceDefSchema as d5, SoundEntrySchema as d7, asEntityId as dE, asEventId as dF, asOrbitalId as dG, asPageId as dH, asPaletteEntryId as dI, asServiceId as dJ, asThemeId as dK, asTraitId as dL, callService as dM, createAssetKey as dN, credentialStatusConnected as dO, credentialStorageKey as dP, defaultUnitAtlas as dQ, despawn as dR, doEffects as dS, emit as dT, findService as dU, getDefaultAnimationsForRole as dV, getServiceNames as dW, hasService as dX, idKindOf as dY, idPrefix as dZ, instancesForLocale as d_, SpriteDirectionSchema as da, SpriteSheetAtlasSchema as dd, SubTextureSchema as dg, TYPE_POSITION_ONLY as dh, TextureAtlasSchema as dk, ThemeIdSchema as dm, TilesheetSchema as dp, TraitIdSchema as dr, TypeVariableSchema as dt, UISlotSchema as du, UI_SLOTS as dv, VISUAL_STYLES as dw, VisualStyleSchema as dy, isEffect as e0, isEmailValue as e1, isEntityId as e2, isEventId as e3, isFieldValue as e4, isFileValue as e5, isMcpService as e6, isOrbitalId as e7, isPageId as e8, isPaletteEntryId as e9, parseAssetKey as eA, parseAssetQuery as eB, parseServiceRef as eC, persist as eD, persistenceModeAllowsOverrides as eE, renderUI as eF, resolveCredentialStatusIdentity as eG, set as eH, spawn as eI, storesRowsInBrowser as eJ, validateAssetAnimations as eK, isPersistBatchOperation as ea, isPhoneValue as eb, isRestService as ec, isRuntimeEntity as ed, isSExprEffect as ee, isSemanticStringType as ef, isSemanticStringValue as eg, isServiceId as eh, isServiceReference as ei, isServiceReferenceObject as ej, isSocketService as ek, isThemeId as el, isTraitId as em, isTypeVariable as en, isTypeVariableField as eo, isUrlValue as ep, isUuidValue as eq, ledgerCurName as er, ledgerRename as es, ledgerResolveName as et, manifestToAssetCatalog as eu, matchAssetQuery as ev, mintId as ew, mintUlid as ex, navigate as ey, navigateBack as ez, PATTERN_TYPES as p, isValidPatternType as t, ANIMATION_NAMES as v, ASSET_ASPECTS as w, ASSET_DIMENSIONS as x };
|
|
11019
|
+
export type { AnyPatternConfig as A, AccessCheckRequest as B, AgentEffect as C, AgentPortEffect as D, EntityField as E, FieldProjection as F, AnimationDef as G, AnimationDefInput as H, IdentityLedger as I, AnimationName as K, ApplicationEffect as M, NamespacedEffectName as N, OrbitalId as O, PageId as P, ArrayEntityField as Q, RelationConfig as R, ServerReportedEffect as S, TraitId as T, UISlot as U, Asset as V, AssetAspect as W, AssetCatalog as Y, AssetCatalogEntry as Z, AssetCatalogEntryInput as _, EntityPersistence as a, EntityData as a$, AssetDimension as a1, AssetUrl as a4, AudioManifest as a5, BehaviorReflectionEffect as a7, BrowserEmbedEffect as a8, BrowserEmbedPayload as a9, CredentialConnectFailureKind as aA, CredentialConnectRequest as aB, CredentialForgetEffect as aC, CredentialIdentity as aD, CredentialListEntry as aE, CredentialListPayload as aF, CredentialModePayload as aG, CredentialPayload as aH, CredentialRemovePayload as aI, CredentialRotatePayload as aJ, CredentialServiceStatus as aK, CredentialSetPayload as aL, CredentialStatusEffect as aM, CredentialTestPayload as aN, DespawnEffect as aP, DoEffect as aQ, EffectInput as aU, EffectOperator as aV, EffectOperatorFamily as aW, EffectOperatorsInSync as aX, EmitConfig as aZ, EmitEffect as a_, BrowserPageFacts as aa, BrowserPageFactsEffect as ab, BrowserPromptEffect as ac, BrowserPromptPayload as ad, BrowserTabCapture as ae, BrowserTabEffect as af, BrowserTabElement as ag, BrowserTabElementRef as ah, BrowserTabFailureKind as ai, BrowserTabFailurePayload as aj, BrowserTabOperator as ak, CallServiceConfig as am, CallServiceEffect as an, CallServiceEmitConfig as ao, Camera as ap, CameraMode as aq, CancelCallEffect as at, ControlValue as au, CredentialAdminEffect as av, CredentialAdminFailure as aw, CredentialAdminOperator as ax, CredentialConnectEffect as ay, CredentialConnectFailure as az, EventId as b, NotifyEffect as b$, EntityFieldInput as b0, EntityRole as b4, EntityWith as b8, EnumEntityField as b9, LedgerKind as bA, LlmEffect as bC, LogEffect as bD, ManifestAssetLicense as bI, ManifestCanvasAffinity as bK, ManifestEntry as bM, ManifestEntryInput as bN, ManifestEntryKind as bO, ManifestFrameSpec as bR, ManifestSourceCatalog as bT, McpServiceDef as bV, MemoryEffect as bX, NavigateBackEffect as bY, NavigateEffect as bZ, NavigateOptions as b_, FetchEffect as bd, FetchOptions as be, FetchResult as bf, FetchStreamEffect as bg, FetchStreamOptions as bh, Field as bi, FieldTag as bl, FieldType as bn, FileValue as bq, FxKind as bs, HostCallEmitConfig as bu, IdForKind as bv, IdKind as bw, LedgerEntry as by, EntityRow as c, SetEffect as c$, ObjectEntityField as c0, OnDeviceEmbedderPort as c1, OnDeviceFailureKind as c2, OnDeviceFailurePayload as c3, OnDeviceModelPort as c4, OnDeviceModelPorts as c5, OrbitalEntityInput as c6, OsEffect as c9, ScalarEntityField as cI, ScenePos as cJ, SemanticAssetRef as cL, SemanticAssetRefInput as cM, SemanticStringType as cO, SendServerEffect as cP, ServiceId as cR, ServiceParamsValue as cT, ServiceRefObject as cU, ServiceType as cY, SessionEffect as c_, PageFactField as ca, PaletteEntryId as cc, PersistBatchOperation as cg, PersistData as ch, PersistEffect as ci, PersistEmitConfig as cj, ProbConditionEffect as ck, ProbSeedEffect as cl, ProgramEffect as cm, RandomBytesEffect as co, RandomBytesPayload as cp, RelationEntityField as cr, RenderChildrenMap as cs, RenderItemLambda as ct, RenderUINode as cu, ResolvedPatternProps as cv, RestAuthConfig as cx, RestServiceDef as cz, Effect as d, SheetProjection as d0, SocketEvents as d2, SocketServiceDef as d4, SoundEntry as d6, SpawnEffect as d8, SpriteDirection as d9, WorkspaceWriteFileEffect as dA, WorkspaceWriteOrbitalEffect as dB, WorkspaceWritePlanEffect as dC, WorkspaceWriteSchemaEffect as dD, SpriteSheetAtlas as db, SpriteSheetAtlasInput as dc, SpriteSheetLayout as de, SubTexture as df, TemplatePatternConfig as di, TextureAtlas as dj, ThemeId as dl, Tilesheet as dn, TraceEffect as dq, TypeVariableEntityField as ds, VisualStyle as dx, WorkspaceArchiveOrbitalEffect as dz, TypedEffect as e, TypeVariable as f, EntityId as g, Entity as h, FieldValue as i, ServiceParams as j, ServiceRef as k, ServiceDefinition as l, RenderBinding as m, RenderUIEffect as n, PatternType as o, PatternConfig as q, PatternProps as r, PatternPropsMap as s, OrbitalEntity as u, AccessCheckEffect as y, AccessCheckPayload as z };
|