@almadar/core 10.81.0 → 10.83.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.
Files changed (34) hide show
  1. package/dist/builders.d.ts +3 -3
  2. package/dist/builders.js +10 -0
  3. package/dist/builders.js.map +1 -1
  4. package/dist/{effect-BHoSW19_.d.ts → effect-DruTSW2O.d.ts} +123 -4
  5. package/dist/{entityAccess-0POr1WuY.d.ts → entityAccess-BoYVXf3b.d.ts} +1 -1
  6. package/dist/factory/index.d.ts +4 -4
  7. package/dist/factory/index.js +863 -5
  8. package/dist/factory/index.js.map +1 -1
  9. package/dist/factory-runtime/index.d.ts +3 -3
  10. package/dist/factory-runtime/index.js +10 -0
  11. package/dist/factory-runtime/index.js.map +1 -1
  12. package/dist/{index-rVlLkZJu.d.ts → index-76Ff6JCE.d.ts} +4 -4
  13. package/dist/index.d.ts +10 -10
  14. package/dist/index.js +894 -10
  15. package/dist/index.js.map +1 -1
  16. package/dist/mock/index.d.ts +4 -4
  17. package/dist/mock/index.js +10 -0
  18. package/dist/mock/index.js.map +1 -1
  19. package/dist/patterns/component-mapping.json +11 -1
  20. package/dist/patterns/event-contracts.json +15 -1
  21. package/dist/patterns/index.d.ts +1861 -23
  22. package/dist/patterns/index.js +883 -9
  23. package/dist/patterns/index.js.map +1 -1
  24. package/dist/patterns/integrators-registry.json +1 -1
  25. package/dist/patterns/patterns-registry.json +854 -6
  26. package/dist/patterns/registry.json +854 -6
  27. package/dist/patterns/services-registry.json +1 -1
  28. package/dist/{schema-CkTTGH6l.d.ts → schema-BdeZ8R35.d.ts} +4482 -4482
  29. package/dist/{trait-D269f6pt.d.ts → trait-DKJWX0Ru.d.ts} +1 -1
  30. package/dist/types/index.d.ts +5 -5
  31. package/dist/types/index.js +13 -1
  32. package/dist/types/index.js.map +1 -1
  33. package/dist/{types-7PHjoE7m.d.ts → types-CRr2IuTj.d.ts} +2 -2
  34. package/package.json +1 -1
@@ -17311,7 +17311,7 @@ var patterns_registry_default = {
17311
17311
  types: [
17312
17312
  "object"
17313
17313
  ],
17314
- description: "GAP-80: line-level error/warning highlights for editable mode. Map of 1-based line number \u2192 severity. The overlay paints a colored background on each line: error = red, warning = yellow. Pass undefined (default) to disable. The consumer is responsible for computing the path \u2192 line map from the schema + validation results.",
17314
+ description: "GAP-80: line-level error/warning highlights. Map of 1-based line number \u2192 severity. Paints a colored background on each line: error = red, warning = yellow. Honored by the editable overlay and (GAP-84) by viewer mode's non-diff highlight; pass undefined (default) to disable. The consumer is responsible for computing the path \u2192 line map from the schema + validation results.",
17315
17315
  nonAuthorable: true
17316
17316
  },
17317
17317
  title: {
@@ -17600,6 +17600,265 @@ var patterns_registry_default = {
17600
17600
  "boolean"
17601
17601
  ],
17602
17602
  description: "Show copy button (viewer alias for showCopyButton)"
17603
+ },
17604
+ editorId: {
17605
+ types: [
17606
+ "string"
17607
+ ],
17608
+ description: "Stable identity for the keyboard router / plugin host to target this editor. Unset = this instance never receives capability events.",
17609
+ tier: "presentation"
17610
+ },
17611
+ onEditorFocus: {
17612
+ types: [
17613
+ "string"
17614
+ ],
17615
+ description: "Declarative bus emit fired when this editor gains focus.",
17616
+ kind: "event-ref",
17617
+ emitPayloadSchema: [
17618
+ {
17619
+ name: "editorId",
17620
+ type: "string",
17621
+ required: true
17622
+ }
17623
+ ],
17624
+ default: "EDITOR_FOCUS",
17625
+ tier: "presentation"
17626
+ },
17627
+ onEditorBlur: {
17628
+ types: [
17629
+ "string"
17630
+ ],
17631
+ description: "Declarative bus emit fired when this editor loses focus.",
17632
+ kind: "event-ref",
17633
+ emitPayloadSchema: [
17634
+ {
17635
+ name: "editorId",
17636
+ type: "string",
17637
+ required: true
17638
+ }
17639
+ ],
17640
+ default: "EDITOR_BLUR",
17641
+ tier: "presentation"
17642
+ },
17643
+ onMotion: {
17644
+ types: [
17645
+ "string"
17646
+ ],
17647
+ description: "Declarative bus listen: move the cursor per the vim-style motion vocabulary.",
17648
+ kind: "event-listen",
17649
+ listenPayloadSchema: [
17650
+ {
17651
+ name: "editorId",
17652
+ type: "string",
17653
+ required: true
17654
+ },
17655
+ {
17656
+ name: "motion",
17657
+ type: "string",
17658
+ required: true,
17659
+ enumValues: [
17660
+ "left",
17661
+ "right",
17662
+ "up",
17663
+ "down",
17664
+ "word-forward",
17665
+ "word-back",
17666
+ "word-end",
17667
+ "line-start",
17668
+ "line-end",
17669
+ "first-nonblank",
17670
+ "doc-start",
17671
+ "doc-end",
17672
+ "paragraph-forward",
17673
+ "paragraph-back",
17674
+ "line",
17675
+ "selection"
17676
+ ]
17677
+ },
17678
+ {
17679
+ name: "count",
17680
+ type: "number",
17681
+ required: true
17682
+ }
17683
+ ],
17684
+ default: "MOTION",
17685
+ tier: "presentation"
17686
+ },
17687
+ onOperate: {
17688
+ types: [
17689
+ "string"
17690
+ ],
17691
+ description: "Declarative bus listen: apply a text operator over a motion's range.",
17692
+ kind: "event-listen",
17693
+ listenPayloadSchema: [
17694
+ {
17695
+ name: "editorId",
17696
+ type: "string",
17697
+ required: true
17698
+ },
17699
+ {
17700
+ name: "operator",
17701
+ type: "string",
17702
+ required: true,
17703
+ enumValues: [
17704
+ "delete",
17705
+ "yank",
17706
+ "change"
17707
+ ]
17708
+ },
17709
+ {
17710
+ name: "motion",
17711
+ type: "string",
17712
+ required: true,
17713
+ enumValues: [
17714
+ "left",
17715
+ "right",
17716
+ "up",
17717
+ "down",
17718
+ "word-forward",
17719
+ "word-back",
17720
+ "word-end",
17721
+ "line-start",
17722
+ "line-end",
17723
+ "first-nonblank",
17724
+ "doc-start",
17725
+ "doc-end",
17726
+ "paragraph-forward",
17727
+ "paragraph-back",
17728
+ "line",
17729
+ "selection"
17730
+ ]
17731
+ },
17732
+ {
17733
+ name: "count",
17734
+ type: "number",
17735
+ required: true
17736
+ }
17737
+ ],
17738
+ default: "OPERATE",
17739
+ tier: "presentation"
17740
+ },
17741
+ onInsertText: {
17742
+ types: [
17743
+ "string"
17744
+ ],
17745
+ description: "Declarative bus listen: insert literal text at the cursor.",
17746
+ kind: "event-listen",
17747
+ listenPayloadSchema: [
17748
+ {
17749
+ name: "editorId",
17750
+ type: "string",
17751
+ required: true
17752
+ },
17753
+ {
17754
+ name: "text",
17755
+ type: "string",
17756
+ required: true
17757
+ }
17758
+ ],
17759
+ default: "INSERT_TEXT",
17760
+ tier: "presentation"
17761
+ },
17762
+ onSetMode: {
17763
+ types: [
17764
+ "string"
17765
+ ],
17766
+ description: "Declarative bus listen: switch editor mode and caret style.",
17767
+ kind: "event-listen",
17768
+ listenPayloadSchema: [
17769
+ {
17770
+ name: "editorId",
17771
+ type: "string",
17772
+ required: true
17773
+ },
17774
+ {
17775
+ name: "mode",
17776
+ type: "string",
17777
+ required: true
17778
+ },
17779
+ {
17780
+ name: "caret",
17781
+ type: "string",
17782
+ required: true,
17783
+ enumValues: [
17784
+ "bar",
17785
+ "block",
17786
+ "underline"
17787
+ ]
17788
+ }
17789
+ ],
17790
+ default: "SET_MODE",
17791
+ tier: "presentation"
17792
+ },
17793
+ motions: {
17794
+ types: [
17795
+ "array"
17796
+ ],
17797
+ description: "Motion vocabulary this editor accepts. Default: the full `EditorMotion` set.",
17798
+ items: {
17799
+ types: [
17800
+ "string"
17801
+ ],
17802
+ enumValues: [
17803
+ "left",
17804
+ "right",
17805
+ "up",
17806
+ "down",
17807
+ "word-forward",
17808
+ "word-back",
17809
+ "word-end",
17810
+ "line-start",
17811
+ "line-end",
17812
+ "first-nonblank",
17813
+ "doc-start",
17814
+ "doc-end",
17815
+ "paragraph-forward",
17816
+ "paragraph-back",
17817
+ "line",
17818
+ "selection"
17819
+ ]
17820
+ },
17821
+ default: [
17822
+ "left",
17823
+ "right",
17824
+ "up",
17825
+ "down",
17826
+ "word-forward",
17827
+ "word-back",
17828
+ "word-end",
17829
+ "line-start",
17830
+ "line-end",
17831
+ "first-nonblank",
17832
+ "doc-start",
17833
+ "doc-end",
17834
+ "paragraph-forward",
17835
+ "paragraph-back",
17836
+ "line",
17837
+ "selection"
17838
+ ],
17839
+ tier: "presentation"
17840
+ },
17841
+ operators: {
17842
+ types: [
17843
+ "array"
17844
+ ],
17845
+ description: "Operator vocabulary this editor accepts. Default: the full `EditorOperator` set.",
17846
+ items: {
17847
+ types: [
17848
+ "string"
17849
+ ],
17850
+ enumValues: [
17851
+ "delete",
17852
+ "yank",
17853
+ "change"
17854
+ ]
17855
+ },
17856
+ default: [
17857
+ "delete",
17858
+ "yank",
17859
+ "change"
17860
+ ],
17861
+ tier: "presentation"
17603
17862
  }
17604
17863
  }
17605
17864
  },
@@ -27662,7 +27921,12 @@ var patterns_registry_default = {
27662
27921
  {
27663
27922
  name: "next",
27664
27923
  type: "string",
27665
- required: true
27924
+ required: true,
27925
+ enumValues: [
27926
+ "up",
27927
+ "down",
27928
+ "none"
27929
+ ]
27666
27930
  }
27667
27931
  ]
27668
27932
  },
@@ -28130,7 +28394,12 @@ var patterns_registry_default = {
28130
28394
  {
28131
28395
  name: "vote",
28132
28396
  type: "string",
28133
- required: true
28397
+ required: true,
28398
+ enumValues: [
28399
+ "up",
28400
+ "down",
28401
+ "none"
28402
+ ]
28134
28403
  }
28135
28404
  ]
28136
28405
  },
@@ -33618,6 +33887,20 @@ var patterns_registry_default = {
33618
33887
  "role",
33619
33888
  "category"
33620
33889
  ]
33890
+ },
33891
+ toggleEvent: {
33892
+ types: [
33893
+ "string"
33894
+ ],
33895
+ description: "Event dispatched via event bus on toggle, carrying the new muted state.",
33896
+ kind: "event-ref",
33897
+ emitPayloadSchema: [
33898
+ {
33899
+ name: "muted",
33900
+ type: "boolean",
33901
+ required: true
33902
+ }
33903
+ ]
33621
33904
  }
33622
33905
  }
33623
33906
  },
@@ -37190,7 +37473,11 @@ var patterns_registry_default = {
37190
37473
  {
37191
37474
  name: "direction",
37192
37475
  type: "string",
37193
- required: true
37476
+ required: true,
37477
+ enumValues: [
37478
+ "asc",
37479
+ "desc"
37480
+ ]
37194
37481
  }
37195
37482
  ]
37196
37483
  },
@@ -38720,6 +39007,92 @@ var patterns_registry_default = {
38720
39007
  ]
38721
39008
  }
38722
39009
  },
39010
+ editable: {
39011
+ types: [
39012
+ "boolean"
39013
+ ],
39014
+ description: "--- Scene-edit mode (a game studio selecting/dragging drawables). Purely",
39015
+ default: false
39016
+ },
39017
+ selectedId: {
39018
+ types: [
39019
+ "string"
39020
+ ],
39021
+ description: "The currently-selected drawable id (controlled); `null`/undefined = none.",
39022
+ default: null
39023
+ },
39024
+ onSelect: {
39025
+ types: [
39026
+ "function"
39027
+ ],
39028
+ description: "Fired on a click that changes selection \u2014 before `selectEvent`.",
39029
+ kind: "callback",
39030
+ callbackArgs: [
39031
+ {
39032
+ name: "id",
39033
+ type: "string"
39034
+ }
39035
+ ]
39036
+ },
39037
+ onMove: {
39038
+ types: [
39039
+ "function"
39040
+ ],
39041
+ description: "Fired once per drag gesture, on drop \u2014 before `moveEvent`.",
39042
+ kind: "callback",
39043
+ callbackArgs: [
39044
+ {
39045
+ name: "id",
39046
+ type: "string"
39047
+ },
39048
+ {
39049
+ name: "x",
39050
+ type: "number"
39051
+ },
39052
+ {
39053
+ name: "y",
39054
+ type: "number"
39055
+ }
39056
+ ]
39057
+ },
39058
+ selectEvent: {
39059
+ types: [
39060
+ "string"
39061
+ ],
39062
+ description: "Declarative selection event, `UI:{selectEvent} { id }`.",
39063
+ kind: "event-ref",
39064
+ emitPayloadSchema: [
39065
+ {
39066
+ name: "id",
39067
+ type: "string",
39068
+ required: true
39069
+ }
39070
+ ]
39071
+ },
39072
+ moveEvent: {
39073
+ types: [
39074
+ "string"
39075
+ ],
39076
+ description: "Declarative move event, `UI:{moveEvent} { id, x, y }` \u2014 fired once on drop.",
39077
+ kind: "event-ref",
39078
+ emitPayloadSchema: [
39079
+ {
39080
+ name: "id",
39081
+ type: "string",
39082
+ required: true
39083
+ },
39084
+ {
39085
+ name: "x",
39086
+ type: "number",
39087
+ required: true
39088
+ },
39089
+ {
39090
+ name: "y",
39091
+ type: "number",
39092
+ required: true
39093
+ }
39094
+ ]
39095
+ },
38723
39096
  camera: {
38724
39097
  types: [
38725
39098
  "string"
@@ -39068,7 +39441,13 @@ var patterns_registry_default = {
39068
39441
  {
39069
39442
  name: "direction",
39070
39443
  type: "string",
39071
- required: true
39444
+ required: true,
39445
+ enumValues: [
39446
+ "up",
39447
+ "down",
39448
+ "left",
39449
+ "right"
39450
+ ]
39072
39451
  },
39073
39452
  {
39074
39453
  name: "pressed",
@@ -39895,6 +40274,12 @@ var patterns_registry_default = {
39895
40274
  ],
39896
40275
  description: "Background color (default transparent)."
39897
40276
  },
40277
+ fontFamily: {
40278
+ types: [
40279
+ "string"
40280
+ ],
40281
+ description: "Canvas text font family. Falls back to the theme's --font-family-body."
40282
+ },
39898
40283
  shapes: {
39899
40284
  types: [
39900
40285
  "array"
@@ -40019,6 +40404,11 @@ var patterns_registry_default = {
40019
40404
  "number"
40020
40405
  ]
40021
40406
  },
40407
+ fontFamily: {
40408
+ types: [
40409
+ "string"
40410
+ ]
40411
+ },
40022
40412
  align: {
40023
40413
  types: [
40024
40414
  "string"
@@ -40088,6 +40478,7 @@ var patterns_registry_default = {
40088
40478
  "string"
40089
40479
  ],
40090
40480
  enumValues: [
40481
+ "solid",
40091
40482
  "dashed",
40092
40483
  "dotted"
40093
40484
  ]
@@ -41391,6 +41782,11 @@ var patterns_registry_default = {
41391
41782
  "number"
41392
41783
  ]
41393
41784
  },
41785
+ fontFamily: {
41786
+ types: [
41787
+ "string"
41788
+ ]
41789
+ },
41394
41790
  align: {
41395
41791
  types: [
41396
41792
  "string"
@@ -41460,6 +41856,7 @@ var patterns_registry_default = {
41460
41856
  "string"
41461
41857
  ],
41462
41858
  enumValues: [
41859
+ "solid",
41463
41860
  "dashed",
41464
41861
  "dotted"
41465
41862
  ]
@@ -42666,6 +43063,11 @@ var patterns_registry_default = {
42666
43063
  "number"
42667
43064
  ]
42668
43065
  },
43066
+ fontFamily: {
43067
+ types: [
43068
+ "string"
43069
+ ]
43070
+ },
42669
43071
  align: {
42670
43072
  types: [
42671
43073
  "string"
@@ -42735,6 +43137,7 @@ var patterns_registry_default = {
42735
43137
  "string"
42736
43138
  ],
42737
43139
  enumValues: [
43140
+ "solid",
42738
43141
  "dashed",
42739
43142
  "dotted"
42740
43143
  ]
@@ -43142,6 +43545,12 @@ var patterns_registry_default = {
43142
43545
  description: "Base font size in px for all other canvas annotations (points, vectors, guides, curves, regions, angles, hops; default 12).",
43143
43546
  default: 12
43144
43547
  },
43548
+ fontFamily: {
43549
+ types: [
43550
+ "string"
43551
+ ],
43552
+ description: 'Canvas text font family. Accepts a known game-font key (e.g. "future-narrow") or a CSS font-family string.'
43553
+ },
43145
43554
  showCurveLabels: {
43146
43555
  types: [
43147
43556
  "boolean"
@@ -43200,6 +43609,7 @@ var patterns_registry_default = {
43200
43609
  "string"
43201
43610
  ],
43202
43611
  enumValues: [
43612
+ "solid",
43203
43613
  "dashed",
43204
43614
  "dotted"
43205
43615
  ]
@@ -43485,6 +43895,7 @@ var patterns_registry_default = {
43485
43895
  "string"
43486
43896
  ],
43487
43897
  enumValues: [
43898
+ "solid",
43488
43899
  "dashed",
43489
43900
  "dotted"
43490
43901
  ]
@@ -43719,6 +44130,11 @@ var patterns_registry_default = {
43719
44130
  "number"
43720
44131
  ]
43721
44132
  },
44133
+ fontFamily: {
44134
+ types: [
44135
+ "string"
44136
+ ]
44137
+ },
43722
44138
  align: {
43723
44139
  types: [
43724
44140
  "string"
@@ -43788,6 +44204,7 @@ var patterns_registry_default = {
43788
44204
  "string"
43789
44205
  ],
43790
44206
  enumValues: [
44207
+ "solid",
43791
44208
  "dashed",
43792
44209
  "dotted"
43793
44210
  ]
@@ -45254,6 +45671,11 @@ var patterns_registry_default = {
45254
45671
  "number"
45255
45672
  ]
45256
45673
  },
45674
+ fontFamily: {
45675
+ types: [
45676
+ "string"
45677
+ ]
45678
+ },
45257
45679
  align: {
45258
45680
  types: [
45259
45681
  "string"
@@ -45323,6 +45745,7 @@ var patterns_registry_default = {
45323
45745
  "string"
45324
45746
  ],
45325
45747
  enumValues: [
45748
+ "solid",
45326
45749
  "dashed",
45327
45750
  "dotted"
45328
45751
  ]
@@ -46463,6 +46886,11 @@ var patterns_registry_default = {
46463
46886
  "number"
46464
46887
  ]
46465
46888
  },
46889
+ fontFamily: {
46890
+ types: [
46891
+ "string"
46892
+ ]
46893
+ },
46466
46894
  align: {
46467
46895
  types: [
46468
46896
  "string"
@@ -46532,6 +46960,7 @@ var patterns_registry_default = {
46532
46960
  "string"
46533
46961
  ],
46534
46962
  enumValues: [
46963
+ "solid",
46535
46964
  "dashed",
46536
46965
  "dotted"
46537
46966
  ]
@@ -49745,6 +50174,90 @@ var patterns_registry_default = {
49745
50174
  ]
49746
50175
  }
49747
50176
  },
50177
+ editable: {
50178
+ types: [
50179
+ "boolean"
50180
+ ],
50181
+ description: "--- Scene-edit mode (a game studio selecting/dragging drawables). Purely"
50182
+ },
50183
+ selectedId: {
50184
+ types: [
50185
+ "string"
50186
+ ],
50187
+ description: "The currently-selected drawable id (controlled); `null`/undefined = none."
50188
+ },
50189
+ onSelect: {
50190
+ types: [
50191
+ "function"
50192
+ ],
50193
+ description: "Fired on a click that changes selection \u2014 before `selectEvent`.",
50194
+ kind: "callback",
50195
+ callbackArgs: [
50196
+ {
50197
+ name: "id",
50198
+ type: "string"
50199
+ }
50200
+ ]
50201
+ },
50202
+ onMove: {
50203
+ types: [
50204
+ "function"
50205
+ ],
50206
+ description: "Fired once per drag gesture, on drop \u2014 before `moveEvent`.",
50207
+ kind: "callback",
50208
+ callbackArgs: [
50209
+ {
50210
+ name: "id",
50211
+ type: "string"
50212
+ },
50213
+ {
50214
+ name: "x",
50215
+ type: "number"
50216
+ },
50217
+ {
50218
+ name: "y",
50219
+ type: "number"
50220
+ }
50221
+ ]
50222
+ },
50223
+ selectEvent: {
50224
+ types: [
50225
+ "string"
50226
+ ],
50227
+ description: "Declarative selection event, `UI:{selectEvent} { id }`.",
50228
+ kind: "event-ref",
50229
+ emitPayloadSchema: [
50230
+ {
50231
+ name: "id",
50232
+ type: "string",
50233
+ required: true
50234
+ }
50235
+ ]
50236
+ },
50237
+ moveEvent: {
50238
+ types: [
50239
+ "string"
50240
+ ],
50241
+ description: "Declarative move event, `UI:{moveEvent} { id, x, y }` \u2014 fired once on drop.",
50242
+ kind: "event-ref",
50243
+ emitPayloadSchema: [
50244
+ {
50245
+ name: "id",
50246
+ type: "string",
50247
+ required: true
50248
+ },
50249
+ {
50250
+ name: "x",
50251
+ type: "number",
50252
+ required: true
50253
+ },
50254
+ {
50255
+ name: "y",
50256
+ type: "number",
50257
+ required: true
50258
+ }
50259
+ ]
50260
+ },
49748
50261
  children: {
49749
50262
  types: [
49750
50263
  "node"
@@ -51273,6 +51786,11 @@ var patterns_registry_default = {
51273
51786
  "number"
51274
51787
  ]
51275
51788
  },
51789
+ fontFamily: {
51790
+ types: [
51791
+ "string"
51792
+ ]
51793
+ },
51276
51794
  align: {
51277
51795
  types: [
51278
51796
  "string"
@@ -51342,6 +51860,7 @@ var patterns_registry_default = {
51342
51860
  "string"
51343
51861
  ],
51344
51862
  enumValues: [
51863
+ "solid",
51345
51864
  "dashed",
51346
51865
  "dotted"
51347
51866
  ]
@@ -52589,6 +53108,11 @@ var patterns_registry_default = {
52589
53108
  types: [
52590
53109
  "boolean"
52591
53110
  ]
53111
+ },
53112
+ testId: {
53113
+ types: [
53114
+ "string"
53115
+ ]
52592
53116
  }
52593
53117
  },
52594
53118
  required: [
@@ -52845,6 +53369,330 @@ var patterns_registry_default = {
52845
53369
  description: "secondarySidebarClassName prop"
52846
53370
  }
52847
53371
  }
53372
+ },
53373
+ "command-palette": {
53374
+ type: "command-palette",
53375
+ category: "component",
53376
+ tier: "molecules",
53377
+ family: "core",
53378
+ description: "CommandPalette component",
53379
+ suggestedFor: [
53380
+ "command",
53381
+ "palette",
53382
+ "command palette"
53383
+ ],
53384
+ typicalSize: "medium",
53385
+ propsSchema: {
53386
+ open: {
53387
+ types: [
53388
+ "boolean"
53389
+ ],
53390
+ description: "Whether the palette overlay is open",
53391
+ required: true
53392
+ },
53393
+ onOpenChange: {
53394
+ types: [
53395
+ "function"
53396
+ ],
53397
+ description: "Called to open/close the overlay (Escape, overlay click, or a selection)",
53398
+ required: true,
53399
+ kind: "callback",
53400
+ callbackArgs: [
53401
+ {
53402
+ name: "open",
53403
+ type: "boolean"
53404
+ }
53405
+ ]
53406
+ },
53407
+ commands: {
53408
+ types: [
53409
+ "array"
53410
+ ],
53411
+ description: "Commands listed in the palette, filtered as the user types",
53412
+ required: true,
53413
+ items: {
53414
+ types: [
53415
+ "object"
53416
+ ],
53417
+ properties: {
53418
+ id: {
53419
+ types: [
53420
+ "string"
53421
+ ]
53422
+ },
53423
+ label: {
53424
+ types: [
53425
+ "string"
53426
+ ]
53427
+ },
53428
+ icon: {
53429
+ types: [
53430
+ "icon",
53431
+ "string"
53432
+ ]
53433
+ },
53434
+ shortcut: {
53435
+ types: [
53436
+ "string"
53437
+ ]
53438
+ },
53439
+ keywords: {
53440
+ types: [
53441
+ "array"
53442
+ ],
53443
+ items: {
53444
+ types: [
53445
+ "string"
53446
+ ]
53447
+ }
53448
+ },
53449
+ group: {
53450
+ types: [
53451
+ "string"
53452
+ ]
53453
+ },
53454
+ disabled: {
53455
+ types: [
53456
+ "boolean"
53457
+ ]
53458
+ },
53459
+ event: {
53460
+ types: [
53461
+ "string"
53462
+ ]
53463
+ },
53464
+ action: {
53465
+ types: [
53466
+ "string"
53467
+ ]
53468
+ },
53469
+ actionPayload: {
53470
+ types: [
53471
+ "object"
53472
+ ],
53473
+ freeform: true,
53474
+ eventPayloadBrand: true
53475
+ }
53476
+ },
53477
+ required: [
53478
+ "id",
53479
+ "label"
53480
+ ]
53481
+ }
53482
+ },
53483
+ onSelect: {
53484
+ types: [
53485
+ "function"
53486
+ ],
53487
+ description: "Called with the selected command (click, or Enter on the highlighted row)",
53488
+ kind: "callback",
53489
+ callbackArgs: [
53490
+ {
53491
+ name: "command",
53492
+ type: "object",
53493
+ schema: {
53494
+ types: [
53495
+ "object"
53496
+ ],
53497
+ properties: {
53498
+ id: {
53499
+ types: [
53500
+ "string"
53501
+ ]
53502
+ },
53503
+ label: {
53504
+ types: [
53505
+ "string"
53506
+ ]
53507
+ },
53508
+ icon: {
53509
+ types: [
53510
+ "icon",
53511
+ "string"
53512
+ ]
53513
+ },
53514
+ shortcut: {
53515
+ types: [
53516
+ "string"
53517
+ ]
53518
+ },
53519
+ keywords: {
53520
+ types: [
53521
+ "array"
53522
+ ],
53523
+ items: {
53524
+ types: [
53525
+ "string"
53526
+ ]
53527
+ }
53528
+ },
53529
+ group: {
53530
+ types: [
53531
+ "string"
53532
+ ]
53533
+ },
53534
+ disabled: {
53535
+ types: [
53536
+ "boolean"
53537
+ ]
53538
+ },
53539
+ event: {
53540
+ types: [
53541
+ "string"
53542
+ ]
53543
+ },
53544
+ action: {
53545
+ types: [
53546
+ "string"
53547
+ ]
53548
+ },
53549
+ actionPayload: {
53550
+ types: [
53551
+ "object"
53552
+ ],
53553
+ freeform: true,
53554
+ eventPayloadBrand: true
53555
+ }
53556
+ },
53557
+ required: [
53558
+ "id",
53559
+ "label"
53560
+ ]
53561
+ }
53562
+ }
53563
+ ]
53564
+ },
53565
+ placeholder: {
53566
+ types: [
53567
+ "string"
53568
+ ],
53569
+ description: "Search field placeholder. Consumers own i18n \u2014 plain string prop, no package-internal translation (matches FloatingToolbar's convention).",
53570
+ default: "Type a command..."
53571
+ },
53572
+ emptyLabel: {
53573
+ types: [
53574
+ "string"
53575
+ ],
53576
+ description: "Label shown when no command matches the query",
53577
+ default: "No matching commands"
53578
+ },
53579
+ className: {
53580
+ types: [
53581
+ "string"
53582
+ ],
53583
+ description: "Additional CSS classes on the overlay's dialog"
53584
+ }
53585
+ }
53586
+ },
53587
+ "game-audio-cue": {
53588
+ type: "game-audio-cue",
53589
+ category: "game",
53590
+ tier: "atoms",
53591
+ family: "game",
53592
+ description: "GameAudioCue component",
53593
+ suggestedFor: [
53594
+ "game",
53595
+ "audio",
53596
+ "cue",
53597
+ "game audio cue"
53598
+ ],
53599
+ typicalSize: "small",
53600
+ propsSchema: {
53601
+ cue: {
53602
+ types: [
53603
+ "string"
53604
+ ],
53605
+ description: "Manifest key played as a one-shot SFX each time `cueSeq` advances."
53606
+ },
53607
+ cueSeq: {
53608
+ types: [
53609
+ "number"
53610
+ ],
53611
+ description: "Monotonically increasing counter \u2014 bumping it re-triggers `cue`."
53612
+ },
53613
+ music: {
53614
+ types: [
53615
+ "string"
53616
+ ],
53617
+ description: "Manifest key to crossfade to as looping background music; unset/empty stops music."
53618
+ },
53619
+ muted: {
53620
+ types: [
53621
+ "boolean"
53622
+ ],
53623
+ description: "Muted state, owned externally and mirrored into the hook."
53624
+ },
53625
+ volume: {
53626
+ types: [
53627
+ "number"
53628
+ ],
53629
+ description: "Master volume 0-1, owned externally and mirrored into the hook."
53630
+ },
53631
+ manifest: {
53632
+ types: [
53633
+ "object"
53634
+ ],
53635
+ description: "Sound manifest \u2014 keys mapped to sound definitions (path, volume, loop, ...).",
53636
+ required: true,
53637
+ mapValue: {
53638
+ types: [
53639
+ "object"
53640
+ ],
53641
+ properties: {
53642
+ path: {
53643
+ types: [
53644
+ "string",
53645
+ "array"
53646
+ ],
53647
+ items: {
53648
+ types: [
53649
+ "string"
53650
+ ]
53651
+ }
53652
+ },
53653
+ volume: {
53654
+ types: [
53655
+ "number"
53656
+ ]
53657
+ },
53658
+ loop: {
53659
+ types: [
53660
+ "boolean"
53661
+ ]
53662
+ },
53663
+ poolSize: {
53664
+ types: [
53665
+ "number"
53666
+ ]
53667
+ },
53668
+ autostart: {
53669
+ types: [
53670
+ "boolean"
53671
+ ]
53672
+ },
53673
+ crossfade: {
53674
+ types: [
53675
+ "boolean"
53676
+ ]
53677
+ },
53678
+ crossfadeDurationMs: {
53679
+ types: [
53680
+ "number"
53681
+ ]
53682
+ }
53683
+ },
53684
+ required: [
53685
+ "path"
53686
+ ]
53687
+ }
53688
+ },
53689
+ baseUrl: {
53690
+ types: [
53691
+ "string"
53692
+ ],
53693
+ description: "Base URL prepended to every manifest path."
53694
+ }
53695
+ }
52848
53696
  }
52849
53697
  }};
52850
53698
  var JsonValueSchema = z.lazy(
@@ -53206,6 +54054,16 @@ z.object({
53206
54054
  });
53207
54055
  var MANIFEST_ENTRY_KINDS = ["model", "image", "spritesheet", "audio", "json"];
53208
54056
  var ManifestEntryKindSchema = z.enum(MANIFEST_ENTRY_KINDS);
54057
+ var SoundEntrySchema = z.object({
54058
+ path: z.union([z.string(), z.array(z.string())]),
54059
+ volume: z.number().optional(),
54060
+ loop: z.boolean().optional(),
54061
+ poolSize: z.number().optional(),
54062
+ autostart: z.boolean().optional(),
54063
+ crossfade: z.boolean().optional(),
54064
+ crossfadeDurationMs: z.number().optional()
54065
+ });
54066
+ z.record(z.string(), SoundEntrySchema);
53209
54067
  var MANIFEST_CANVAS_AFFINITIES = ["isometric", "hex", "flat", "side", "3d", "none"];
53210
54068
  var ManifestCanvasAffinitySchema = z.enum(MANIFEST_CANVAS_AFFINITIES);
53211
54069
  var MANIFEST_SOURCE_CATALOGS = ["kenny", "kekec-assets", "iram-assets", "trait-wars-assets", "kflow-assets"];