@almadar/core 10.81.0 → 10.82.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-Baldm2vM.d.ts} +114 -4
  5. package/dist/{entityAccess-0POr1WuY.d.ts → entityAccess-CDYT7WWR.d.ts} +1 -1
  6. package/dist/factory/index.d.ts +4 -4
  7. package/dist/factory/index.js +570 -0
  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-R8PyPrGg.d.ts} +4 -4
  13. package/dist/index.d.ts +10 -10
  14. package/dist/index.js +587 -5
  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 +1 -1
  21. package/dist/patterns/index.d.ts +1270 -6
  22. package/dist/patterns/index.js +576 -4
  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 +561 -1
  26. package/dist/patterns/registry.json +561 -1
  27. package/dist/patterns/services-registry.json +1 -1
  28. package/dist/{schema-CkTTGH6l.d.ts → schema-1KQUz2pE.d.ts} +2 -2
  29. package/dist/{trait-D269f6pt.d.ts → trait-Dsp0vmGp.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-DJYozDXK.d.ts} +2 -2
  34. package/package.json +1 -1
@@ -33618,6 +33618,20 @@ var patterns_registry_default = {
33618
33618
  "role",
33619
33619
  "category"
33620
33620
  ]
33621
+ },
33622
+ toggleEvent: {
33623
+ types: [
33624
+ "string"
33625
+ ],
33626
+ description: "Event dispatched via event bus on toggle, carrying the new muted state.",
33627
+ kind: "event-ref",
33628
+ emitPayloadSchema: [
33629
+ {
33630
+ name: "muted",
33631
+ type: "boolean",
33632
+ required: true
33633
+ }
33634
+ ]
33621
33635
  }
33622
33636
  }
33623
33637
  },
@@ -38720,6 +38734,92 @@ var patterns_registry_default = {
38720
38734
  ]
38721
38735
  }
38722
38736
  },
38737
+ editable: {
38738
+ types: [
38739
+ "boolean"
38740
+ ],
38741
+ description: "--- Scene-edit mode (a game studio selecting/dragging drawables). Purely",
38742
+ default: false
38743
+ },
38744
+ selectedId: {
38745
+ types: [
38746
+ "string"
38747
+ ],
38748
+ description: "The currently-selected drawable id (controlled); `null`/undefined = none.",
38749
+ default: null
38750
+ },
38751
+ onSelect: {
38752
+ types: [
38753
+ "function"
38754
+ ],
38755
+ description: "Fired on a click that changes selection \u2014 before `selectEvent`.",
38756
+ kind: "callback",
38757
+ callbackArgs: [
38758
+ {
38759
+ name: "id",
38760
+ type: "string"
38761
+ }
38762
+ ]
38763
+ },
38764
+ onMove: {
38765
+ types: [
38766
+ "function"
38767
+ ],
38768
+ description: "Fired once per drag gesture, on drop \u2014 before `moveEvent`.",
38769
+ kind: "callback",
38770
+ callbackArgs: [
38771
+ {
38772
+ name: "id",
38773
+ type: "string"
38774
+ },
38775
+ {
38776
+ name: "x",
38777
+ type: "number"
38778
+ },
38779
+ {
38780
+ name: "y",
38781
+ type: "number"
38782
+ }
38783
+ ]
38784
+ },
38785
+ selectEvent: {
38786
+ types: [
38787
+ "string"
38788
+ ],
38789
+ description: "Declarative selection event, `UI:{selectEvent} { id }`.",
38790
+ kind: "event-ref",
38791
+ emitPayloadSchema: [
38792
+ {
38793
+ name: "id",
38794
+ type: "string",
38795
+ required: true
38796
+ }
38797
+ ]
38798
+ },
38799
+ moveEvent: {
38800
+ types: [
38801
+ "string"
38802
+ ],
38803
+ description: "Declarative move event, `UI:{moveEvent} { id, x, y }` \u2014 fired once on drop.",
38804
+ kind: "event-ref",
38805
+ emitPayloadSchema: [
38806
+ {
38807
+ name: "id",
38808
+ type: "string",
38809
+ required: true
38810
+ },
38811
+ {
38812
+ name: "x",
38813
+ type: "number",
38814
+ required: true
38815
+ },
38816
+ {
38817
+ name: "y",
38818
+ type: "number",
38819
+ required: true
38820
+ }
38821
+ ]
38822
+ },
38723
38823
  camera: {
38724
38824
  types: [
38725
38825
  "string"
@@ -39895,6 +39995,12 @@ var patterns_registry_default = {
39895
39995
  ],
39896
39996
  description: "Background color (default transparent)."
39897
39997
  },
39998
+ fontFamily: {
39999
+ types: [
40000
+ "string"
40001
+ ],
40002
+ description: "Canvas text font family. Falls back to the theme's --font-family-body."
40003
+ },
39898
40004
  shapes: {
39899
40005
  types: [
39900
40006
  "array"
@@ -40019,6 +40125,11 @@ var patterns_registry_default = {
40019
40125
  "number"
40020
40126
  ]
40021
40127
  },
40128
+ fontFamily: {
40129
+ types: [
40130
+ "string"
40131
+ ]
40132
+ },
40022
40133
  align: {
40023
40134
  types: [
40024
40135
  "string"
@@ -41391,6 +41502,11 @@ var patterns_registry_default = {
41391
41502
  "number"
41392
41503
  ]
41393
41504
  },
41505
+ fontFamily: {
41506
+ types: [
41507
+ "string"
41508
+ ]
41509
+ },
41394
41510
  align: {
41395
41511
  types: [
41396
41512
  "string"
@@ -42666,6 +42782,11 @@ var patterns_registry_default = {
42666
42782
  "number"
42667
42783
  ]
42668
42784
  },
42785
+ fontFamily: {
42786
+ types: [
42787
+ "string"
42788
+ ]
42789
+ },
42669
42790
  align: {
42670
42791
  types: [
42671
42792
  "string"
@@ -43142,6 +43263,12 @@ var patterns_registry_default = {
43142
43263
  description: "Base font size in px for all other canvas annotations (points, vectors, guides, curves, regions, angles, hops; default 12).",
43143
43264
  default: 12
43144
43265
  },
43266
+ fontFamily: {
43267
+ types: [
43268
+ "string"
43269
+ ],
43270
+ description: 'Canvas text font family. Accepts a known game-font key (e.g. "future-narrow") or a CSS font-family string.'
43271
+ },
43145
43272
  showCurveLabels: {
43146
43273
  types: [
43147
43274
  "boolean"
@@ -43719,6 +43846,11 @@ var patterns_registry_default = {
43719
43846
  "number"
43720
43847
  ]
43721
43848
  },
43849
+ fontFamily: {
43850
+ types: [
43851
+ "string"
43852
+ ]
43853
+ },
43722
43854
  align: {
43723
43855
  types: [
43724
43856
  "string"
@@ -45254,6 +45386,11 @@ var patterns_registry_default = {
45254
45386
  "number"
45255
45387
  ]
45256
45388
  },
45389
+ fontFamily: {
45390
+ types: [
45391
+ "string"
45392
+ ]
45393
+ },
45257
45394
  align: {
45258
45395
  types: [
45259
45396
  "string"
@@ -46463,6 +46600,11 @@ var patterns_registry_default = {
46463
46600
  "number"
46464
46601
  ]
46465
46602
  },
46603
+ fontFamily: {
46604
+ types: [
46605
+ "string"
46606
+ ]
46607
+ },
46466
46608
  align: {
46467
46609
  types: [
46468
46610
  "string"
@@ -49745,6 +49887,90 @@ var patterns_registry_default = {
49745
49887
  ]
49746
49888
  }
49747
49889
  },
49890
+ editable: {
49891
+ types: [
49892
+ "boolean"
49893
+ ],
49894
+ description: "--- Scene-edit mode (a game studio selecting/dragging drawables). Purely"
49895
+ },
49896
+ selectedId: {
49897
+ types: [
49898
+ "string"
49899
+ ],
49900
+ description: "The currently-selected drawable id (controlled); `null`/undefined = none."
49901
+ },
49902
+ onSelect: {
49903
+ types: [
49904
+ "function"
49905
+ ],
49906
+ description: "Fired on a click that changes selection \u2014 before `selectEvent`.",
49907
+ kind: "callback",
49908
+ callbackArgs: [
49909
+ {
49910
+ name: "id",
49911
+ type: "string"
49912
+ }
49913
+ ]
49914
+ },
49915
+ onMove: {
49916
+ types: [
49917
+ "function"
49918
+ ],
49919
+ description: "Fired once per drag gesture, on drop \u2014 before `moveEvent`.",
49920
+ kind: "callback",
49921
+ callbackArgs: [
49922
+ {
49923
+ name: "id",
49924
+ type: "string"
49925
+ },
49926
+ {
49927
+ name: "x",
49928
+ type: "number"
49929
+ },
49930
+ {
49931
+ name: "y",
49932
+ type: "number"
49933
+ }
49934
+ ]
49935
+ },
49936
+ selectEvent: {
49937
+ types: [
49938
+ "string"
49939
+ ],
49940
+ description: "Declarative selection event, `UI:{selectEvent} { id }`.",
49941
+ kind: "event-ref",
49942
+ emitPayloadSchema: [
49943
+ {
49944
+ name: "id",
49945
+ type: "string",
49946
+ required: true
49947
+ }
49948
+ ]
49949
+ },
49950
+ moveEvent: {
49951
+ types: [
49952
+ "string"
49953
+ ],
49954
+ description: "Declarative move event, `UI:{moveEvent} { id, x, y }` \u2014 fired once on drop.",
49955
+ kind: "event-ref",
49956
+ emitPayloadSchema: [
49957
+ {
49958
+ name: "id",
49959
+ type: "string",
49960
+ required: true
49961
+ },
49962
+ {
49963
+ name: "x",
49964
+ type: "number",
49965
+ required: true
49966
+ },
49967
+ {
49968
+ name: "y",
49969
+ type: "number",
49970
+ required: true
49971
+ }
49972
+ ]
49973
+ },
49748
49974
  children: {
49749
49975
  types: [
49750
49976
  "node"
@@ -51273,6 +51499,11 @@ var patterns_registry_default = {
51273
51499
  "number"
51274
51500
  ]
51275
51501
  },
51502
+ fontFamily: {
51503
+ types: [
51504
+ "string"
51505
+ ]
51506
+ },
51276
51507
  align: {
51277
51508
  types: [
51278
51509
  "string"
@@ -52589,6 +52820,11 @@ var patterns_registry_default = {
52589
52820
  types: [
52590
52821
  "boolean"
52591
52822
  ]
52823
+ },
52824
+ testId: {
52825
+ types: [
52826
+ "string"
52827
+ ]
52592
52828
  }
52593
52829
  },
52594
52830
  required: [
@@ -52845,6 +53081,330 @@ var patterns_registry_default = {
52845
53081
  description: "secondarySidebarClassName prop"
52846
53082
  }
52847
53083
  }
53084
+ },
53085
+ "command-palette": {
53086
+ type: "command-palette",
53087
+ category: "component",
53088
+ tier: "molecules",
53089
+ family: "core",
53090
+ description: "CommandPalette component",
53091
+ suggestedFor: [
53092
+ "command",
53093
+ "palette",
53094
+ "command palette"
53095
+ ],
53096
+ typicalSize: "medium",
53097
+ propsSchema: {
53098
+ open: {
53099
+ types: [
53100
+ "boolean"
53101
+ ],
53102
+ description: "Whether the palette overlay is open",
53103
+ required: true
53104
+ },
53105
+ onOpenChange: {
53106
+ types: [
53107
+ "function"
53108
+ ],
53109
+ description: "Called to open/close the overlay (Escape, overlay click, or a selection)",
53110
+ required: true,
53111
+ kind: "callback",
53112
+ callbackArgs: [
53113
+ {
53114
+ name: "open",
53115
+ type: "boolean"
53116
+ }
53117
+ ]
53118
+ },
53119
+ commands: {
53120
+ types: [
53121
+ "array"
53122
+ ],
53123
+ description: "Commands listed in the palette, filtered as the user types",
53124
+ required: true,
53125
+ items: {
53126
+ types: [
53127
+ "object"
53128
+ ],
53129
+ properties: {
53130
+ id: {
53131
+ types: [
53132
+ "string"
53133
+ ]
53134
+ },
53135
+ label: {
53136
+ types: [
53137
+ "string"
53138
+ ]
53139
+ },
53140
+ icon: {
53141
+ types: [
53142
+ "icon",
53143
+ "string"
53144
+ ]
53145
+ },
53146
+ shortcut: {
53147
+ types: [
53148
+ "string"
53149
+ ]
53150
+ },
53151
+ keywords: {
53152
+ types: [
53153
+ "array"
53154
+ ],
53155
+ items: {
53156
+ types: [
53157
+ "string"
53158
+ ]
53159
+ }
53160
+ },
53161
+ group: {
53162
+ types: [
53163
+ "string"
53164
+ ]
53165
+ },
53166
+ disabled: {
53167
+ types: [
53168
+ "boolean"
53169
+ ]
53170
+ },
53171
+ event: {
53172
+ types: [
53173
+ "string"
53174
+ ]
53175
+ },
53176
+ action: {
53177
+ types: [
53178
+ "string"
53179
+ ]
53180
+ },
53181
+ actionPayload: {
53182
+ types: [
53183
+ "object"
53184
+ ],
53185
+ freeform: true,
53186
+ eventPayloadBrand: true
53187
+ }
53188
+ },
53189
+ required: [
53190
+ "id",
53191
+ "label"
53192
+ ]
53193
+ }
53194
+ },
53195
+ onSelect: {
53196
+ types: [
53197
+ "function"
53198
+ ],
53199
+ description: "Called with the selected command (click, or Enter on the highlighted row)",
53200
+ kind: "callback",
53201
+ callbackArgs: [
53202
+ {
53203
+ name: "command",
53204
+ type: "object",
53205
+ schema: {
53206
+ types: [
53207
+ "object"
53208
+ ],
53209
+ properties: {
53210
+ id: {
53211
+ types: [
53212
+ "string"
53213
+ ]
53214
+ },
53215
+ label: {
53216
+ types: [
53217
+ "string"
53218
+ ]
53219
+ },
53220
+ icon: {
53221
+ types: [
53222
+ "icon",
53223
+ "string"
53224
+ ]
53225
+ },
53226
+ shortcut: {
53227
+ types: [
53228
+ "string"
53229
+ ]
53230
+ },
53231
+ keywords: {
53232
+ types: [
53233
+ "array"
53234
+ ],
53235
+ items: {
53236
+ types: [
53237
+ "string"
53238
+ ]
53239
+ }
53240
+ },
53241
+ group: {
53242
+ types: [
53243
+ "string"
53244
+ ]
53245
+ },
53246
+ disabled: {
53247
+ types: [
53248
+ "boolean"
53249
+ ]
53250
+ },
53251
+ event: {
53252
+ types: [
53253
+ "string"
53254
+ ]
53255
+ },
53256
+ action: {
53257
+ types: [
53258
+ "string"
53259
+ ]
53260
+ },
53261
+ actionPayload: {
53262
+ types: [
53263
+ "object"
53264
+ ],
53265
+ freeform: true,
53266
+ eventPayloadBrand: true
53267
+ }
53268
+ },
53269
+ required: [
53270
+ "id",
53271
+ "label"
53272
+ ]
53273
+ }
53274
+ }
53275
+ ]
53276
+ },
53277
+ placeholder: {
53278
+ types: [
53279
+ "string"
53280
+ ],
53281
+ description: "Search field placeholder. Consumers own i18n \u2014 plain string prop, no package-internal translation (matches FloatingToolbar's convention).",
53282
+ default: "Type a command..."
53283
+ },
53284
+ emptyLabel: {
53285
+ types: [
53286
+ "string"
53287
+ ],
53288
+ description: "Label shown when no command matches the query",
53289
+ default: "No matching commands"
53290
+ },
53291
+ className: {
53292
+ types: [
53293
+ "string"
53294
+ ],
53295
+ description: "Additional CSS classes on the overlay's dialog"
53296
+ }
53297
+ }
53298
+ },
53299
+ "game-audio-cue": {
53300
+ type: "game-audio-cue",
53301
+ category: "game",
53302
+ tier: "atoms",
53303
+ family: "game",
53304
+ description: "GameAudioCue component",
53305
+ suggestedFor: [
53306
+ "game",
53307
+ "audio",
53308
+ "cue",
53309
+ "game audio cue"
53310
+ ],
53311
+ typicalSize: "small",
53312
+ propsSchema: {
53313
+ cue: {
53314
+ types: [
53315
+ "string"
53316
+ ],
53317
+ description: "Manifest key played as a one-shot SFX each time `cueSeq` advances."
53318
+ },
53319
+ cueSeq: {
53320
+ types: [
53321
+ "number"
53322
+ ],
53323
+ description: "Monotonically increasing counter \u2014 bumping it re-triggers `cue`."
53324
+ },
53325
+ music: {
53326
+ types: [
53327
+ "string"
53328
+ ],
53329
+ description: "Manifest key to crossfade to as looping background music; unset/empty stops music."
53330
+ },
53331
+ muted: {
53332
+ types: [
53333
+ "boolean"
53334
+ ],
53335
+ description: "Muted state, owned externally and mirrored into the hook."
53336
+ },
53337
+ volume: {
53338
+ types: [
53339
+ "number"
53340
+ ],
53341
+ description: "Master volume 0-1, owned externally and mirrored into the hook."
53342
+ },
53343
+ manifest: {
53344
+ types: [
53345
+ "object"
53346
+ ],
53347
+ description: "Sound manifest \u2014 keys mapped to sound definitions (path, volume, loop, ...).",
53348
+ required: true,
53349
+ mapValue: {
53350
+ types: [
53351
+ "object"
53352
+ ],
53353
+ properties: {
53354
+ path: {
53355
+ types: [
53356
+ "string",
53357
+ "array"
53358
+ ],
53359
+ items: {
53360
+ types: [
53361
+ "string"
53362
+ ]
53363
+ }
53364
+ },
53365
+ volume: {
53366
+ types: [
53367
+ "number"
53368
+ ]
53369
+ },
53370
+ loop: {
53371
+ types: [
53372
+ "boolean"
53373
+ ]
53374
+ },
53375
+ poolSize: {
53376
+ types: [
53377
+ "number"
53378
+ ]
53379
+ },
53380
+ autostart: {
53381
+ types: [
53382
+ "boolean"
53383
+ ]
53384
+ },
53385
+ crossfade: {
53386
+ types: [
53387
+ "boolean"
53388
+ ]
53389
+ },
53390
+ crossfadeDurationMs: {
53391
+ types: [
53392
+ "number"
53393
+ ]
53394
+ }
53395
+ },
53396
+ required: [
53397
+ "path"
53398
+ ]
53399
+ }
53400
+ },
53401
+ baseUrl: {
53402
+ types: [
53403
+ "string"
53404
+ ],
53405
+ description: "Base URL prepended to every manifest path."
53406
+ }
53407
+ }
52848
53408
  }
52849
53409
  }};
52850
53410
  var JsonValueSchema = z.lazy(
@@ -53206,6 +53766,16 @@ z.object({
53206
53766
  });
53207
53767
  var MANIFEST_ENTRY_KINDS = ["model", "image", "spritesheet", "audio", "json"];
53208
53768
  var ManifestEntryKindSchema = z.enum(MANIFEST_ENTRY_KINDS);
53769
+ var SoundEntrySchema = z.object({
53770
+ path: z.union([z.string(), z.array(z.string())]),
53771
+ volume: z.number().optional(),
53772
+ loop: z.boolean().optional(),
53773
+ poolSize: z.number().optional(),
53774
+ autostart: z.boolean().optional(),
53775
+ crossfade: z.boolean().optional(),
53776
+ crossfadeDurationMs: z.number().optional()
53777
+ });
53778
+ z.record(z.string(), SoundEntrySchema);
53209
53779
  var MANIFEST_CANVAS_AFFINITIES = ["isometric", "hex", "flat", "side", "3d", "none"];
53210
53780
  var ManifestCanvasAffinitySchema = z.enum(MANIFEST_CANVAS_AFFINITIES);
53211
53781
  var MANIFEST_SOURCE_CATALOGS = ["kenny", "kekec-assets", "iram-assets", "trait-wars-assets", "kflow-assets"];