@almadar/core 11.3.0 → 11.4.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 (92) hide show
  1. package/dist/behavior-package.js +1 -3
  2. package/dist/{builders-DXPLnmJy.d.ts → builders-CAQ_shuO.d.ts} +273 -273
  3. package/dist/builders.d.ts +6 -6
  4. package/dist/builders.js +8 -10
  5. package/dist/{bus-CRxTnebm.d.ts → bus-QFvlnIfW.d.ts} +113 -438
  6. package/dist/{chunk-B4MNHGBP.js → chunk-5IRZ6ROW.js} +0 -2
  7. package/dist/{chunk-7NDAXM2Z.js → chunk-6XYHVJ4J.js} +1 -3
  8. package/dist/{chunk-2NKK2X53.js → chunk-7JO77HA6.js} +1 -3
  9. package/dist/chunk-AIRZM37O.js +3809 -0
  10. package/dist/{chunk-RGACZEYC.js → chunk-DDBAQMWA.js} +0 -2
  11. package/dist/{chunk-XBWV3DXX.js → chunk-DHWP7B4S.js} +142 -7
  12. package/dist/{chunk-7GHJU5WI.js → chunk-GNLND5O2.js} +0 -2
  13. package/dist/{chunk-PYYHDYTD.js → chunk-ISAUHHDU.js} +1 -3
  14. package/dist/{chunk-M4S2B5VJ.js → chunk-IU3WGC6Q.js} +0 -2
  15. package/dist/{chunk-VIHQKKTZ.js → chunk-JCRN3F6T.js} +10 -12
  16. package/dist/{chunk-7B4JRMRL.js → chunk-JPJQCTJI.js} +12 -6
  17. package/dist/{chunk-6H3UIZR2.js → chunk-O2ZUOWNK.js} +4 -6
  18. package/dist/{chunk-DNS4GKQV.js → chunk-OLSKERKZ.js} +51 -46
  19. package/dist/{chunk-N3CK4AYW.js → chunk-QV6J4EAF.js} +560 -58
  20. package/dist/{chunk-347APWFM.js → chunk-R3Y7ABF4.js} +2 -4
  21. package/dist/{chunk-3DZOFI53.js → chunk-TOAMAGC7.js} +2 -4
  22. package/dist/{chunk-LPJ7GKRM.js → chunk-UCP26C3C.js} +4 -6
  23. package/dist/{chunk-VG7BRFUD.js → chunk-W3UJRSYC.js} +0 -2
  24. package/dist/{effect-C2VKm6kk.d.ts → effect--PY8R4Oi.d.ts} +84 -50
  25. package/dist/{effect-result-BFNANDJ-.d.ts → effect-result-fH1ZTxn6.d.ts} +59 -38
  26. package/dist/{expression-DirYKz-f.d.ts → expression-DxY6ct3t.d.ts} +1 -1
  27. package/dist/factory/index.d.ts +3 -3
  28. package/dist/factory/index.js +8 -10
  29. package/dist/factory-runtime/index.d.ts +4 -4
  30. package/dist/factory-runtime/index.js +15 -17
  31. package/dist/fixtures.d.ts +8 -7
  32. package/dist/fixtures.js +6 -8
  33. package/dist/i18n/index.js +2 -4
  34. package/dist/{index-DuHpwitt.d.ts → index-Dk2AoJdI.d.ts} +44 -31
  35. package/dist/index.d.ts +17 -19
  36. package/dist/index.js +23 -25
  37. package/dist/kernel-wire.d.ts +3 -3
  38. package/dist/kernel-wire.js +3 -5
  39. package/dist/language/constructs.json +5 -0
  40. package/dist/language/program-types.json +6 -0
  41. package/dist/language/validation-codes.json +135 -0
  42. package/dist/language/vocabulary.json +45 -1
  43. package/dist/language-data.js +3 -5
  44. package/dist/lolo-document/index.js +0 -2
  45. package/dist/patterns/component-mapping.json +1 -1
  46. package/dist/patterns/definitions.d.ts +2 -2
  47. package/dist/patterns/definitions.js +1 -3
  48. package/dist/patterns/event-contracts.json +1 -1
  49. package/dist/patterns/index.d.ts +9 -3
  50. package/dist/patterns/index.js +3 -5
  51. package/dist/patterns/patterns-registry.json +560 -56
  52. package/dist/patterns/registry.json +560 -56
  53. package/dist/themes/index.js +2 -4
  54. package/dist/{trait-Cv3HTGFL.d.ts → trait-BO2gbBte.d.ts} +82 -92
  55. package/dist/types/index.d.ts +9 -9
  56. package/dist/types/index.js +12 -14
  57. package/dist/{types-wWEqi7vj.d.ts → types-CSBhbbse.d.ts} +3 -3
  58. package/package.json +6 -6
  59. package/dist/behavior-package.js.map +0 -1
  60. package/dist/builders.js.map +0 -1
  61. package/dist/chunk-2NKK2X53.js.map +0 -1
  62. package/dist/chunk-347APWFM.js.map +0 -1
  63. package/dist/chunk-3DZOFI53.js.map +0 -1
  64. package/dist/chunk-6H3UIZR2.js.map +0 -1
  65. package/dist/chunk-7B4JRMRL.js.map +0 -1
  66. package/dist/chunk-7GHJU5WI.js.map +0 -1
  67. package/dist/chunk-7NDAXM2Z.js.map +0 -1
  68. package/dist/chunk-B4MNHGBP.js.map +0 -1
  69. package/dist/chunk-DNS4GKQV.js.map +0 -1
  70. package/dist/chunk-LPJ7GKRM.js.map +0 -1
  71. package/dist/chunk-M4S2B5VJ.js.map +0 -1
  72. package/dist/chunk-N3CK4AYW.js.map +0 -1
  73. package/dist/chunk-PYYHDYTD.js.map +0 -1
  74. package/dist/chunk-RGACZEYC.js.map +0 -1
  75. package/dist/chunk-VG7BRFUD.js.map +0 -1
  76. package/dist/chunk-VIHQKKTZ.js.map +0 -1
  77. package/dist/chunk-XBWV3DXX.js.map +0 -1
  78. package/dist/chunk-ZDIHVDTW.js +0 -3810
  79. package/dist/chunk-ZDIHVDTW.js.map +0 -1
  80. package/dist/factory/index.js.map +0 -1
  81. package/dist/factory-runtime/index.js.map +0 -1
  82. package/dist/fixtures.js.map +0 -1
  83. package/dist/i18n/index.js.map +0 -1
  84. package/dist/index.js.map +0 -1
  85. package/dist/kernel-wire.js.map +0 -1
  86. package/dist/language-data.js.map +0 -1
  87. package/dist/lolo-document/index.js.map +0 -1
  88. package/dist/patterns/definitions.js.map +0 -1
  89. package/dist/patterns/index.js.map +0 -1
  90. package/dist/themes/index.js.map +0 -1
  91. package/dist/types/index.js.map +0 -1
  92. package/dist/{domain-WtYcvBMH.d.ts → domain-Cpmja5ak.d.ts} +51 -51
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "version": "1.0.0",
3
- "exportedAt": "2026-11-07T03:57:49.631Z",
3
+ "exportedAt": "2026-11-09T16:44:50.431Z",
4
+ "maintenance": "Hand-maintained since 2026-11-07; the pattern-sync generator is archived. Edit this file directly.",
4
5
  "patterns": {
5
6
  "detail-panel": {
6
7
  "type": "detail-panel",
@@ -984,6 +985,16 @@
984
985
  ]
985
986
  }
986
987
  },
988
+ "iconMap": {
989
+ "types": [
990
+ "object"
991
+ ],
992
+ "mapValue": {
993
+ "types": [
994
+ "string"
995
+ ]
996
+ }
997
+ },
987
998
  "variant": {
988
999
  "types": [
989
1000
  "string"
@@ -11944,6 +11955,44 @@
11944
11955
  "description": "Content that appears or changes inside the box eases in instead of switching in one frame (new rows, swapped views, changed text), played in presentation motion (the theme's dramatic duration, standard easing) so it can be watched. Off under reduced motion.",
11945
11956
  "default": false
11946
11957
  },
11958
+ "marquee": {
11959
+ "types": [
11960
+ "object"
11961
+ ],
11962
+ "description": "Scroll the content as a moving strip (pauses on hover; stands still and wraps under reduced motion)",
11963
+ "properties": {
11964
+ "direction": {
11965
+ "types": [
11966
+ "string"
11967
+ ],
11968
+ "enumValues": [
11969
+ "start",
11970
+ "end"
11971
+ ]
11972
+ },
11973
+ "speed": {
11974
+ "types": [
11975
+ "number"
11976
+ ]
11977
+ },
11978
+ "clip": {
11979
+ "types": [
11980
+ "boolean"
11981
+ ]
11982
+ },
11983
+ "loop": {
11984
+ "types": [
11985
+ "boolean"
11986
+ ]
11987
+ }
11988
+ },
11989
+ "propertyRequired": [
11990
+ "direction",
11991
+ "speed",
11992
+ "clip",
11993
+ "loop"
11994
+ ]
11995
+ },
11947
11996
  "backdrop": {
11948
11997
  "types": [
11949
11998
  "node"
@@ -20736,6 +20785,11 @@
20736
20785
  "string"
20737
20786
  ]
20738
20787
  },
20788
+ "description": {
20789
+ "types": [
20790
+ "string"
20791
+ ]
20792
+ },
20739
20793
  "icon": {
20740
20794
  "types": [
20741
20795
  "icon",
@@ -40741,6 +40795,275 @@
40741
40795
  ],
40742
40796
  "tier": "presentation"
40743
40797
  },
40798
+ "cursor": {
40799
+ "types": [
40800
+ "object"
40801
+ ],
40802
+ "description": "Buffer mode: when set, the program owns the text and the cursor (std-text-buffer) and this surface only paints them — `code` split on newlines, the caret here, `selection`, `decorations` and `popover` — and emits input as events: every keydown through `onKey`, a press through `onPointerDown`, the character the pointer rests over through `onHover`. It never edits, moves the caret or interprets a key itself, and keeps the cursor line in view.",
40803
+ "properties": {
40804
+ "row": {
40805
+ "types": [
40806
+ "number"
40807
+ ]
40808
+ },
40809
+ "col": {
40810
+ "types": [
40811
+ "number"
40812
+ ]
40813
+ }
40814
+ },
40815
+ "propertyRequired": [
40816
+ "row",
40817
+ "col"
40818
+ ],
40819
+ "tier": "presentation"
40820
+ },
40821
+ "caret": {
40822
+ "types": [
40823
+ "string"
40824
+ ],
40825
+ "description": "Buffer mode: the caret shape the program's mode asks for.",
40826
+ "enumValues": [
40827
+ "bar",
40828
+ "block",
40829
+ "underline"
40830
+ ],
40831
+ "tier": "presentation"
40832
+ },
40833
+ "selection": {
40834
+ "types": [
40835
+ "object"
40836
+ ],
40837
+ "description": "Buffer mode: the selected range to paint (VISUAL), or none.",
40838
+ "properties": {
40839
+ "fromRow": {
40840
+ "types": [
40841
+ "number"
40842
+ ]
40843
+ },
40844
+ "fromCol": {
40845
+ "types": [
40846
+ "number"
40847
+ ]
40848
+ },
40849
+ "toRow": {
40850
+ "types": [
40851
+ "number"
40852
+ ]
40853
+ },
40854
+ "toCol": {
40855
+ "types": [
40856
+ "number"
40857
+ ]
40858
+ },
40859
+ "linewise": {
40860
+ "types": [
40861
+ "boolean"
40862
+ ]
40863
+ }
40864
+ },
40865
+ "propertyRequired": [
40866
+ "fromRow",
40867
+ "fromCol",
40868
+ "toRow",
40869
+ "toCol",
40870
+ "linewise"
40871
+ ],
40872
+ "tier": "presentation"
40873
+ },
40874
+ "decorations": {
40875
+ "types": [
40876
+ "array"
40877
+ ],
40878
+ "description": "Buffer mode: ranges painted by tone (syntax colors, search hits, review highlights).",
40879
+ "items": {
40880
+ "types": [
40881
+ "object"
40882
+ ],
40883
+ "properties": {
40884
+ "id": {
40885
+ "types": [
40886
+ "string"
40887
+ ]
40888
+ },
40889
+ "fromRow": {
40890
+ "types": [
40891
+ "number"
40892
+ ]
40893
+ },
40894
+ "fromCol": {
40895
+ "types": [
40896
+ "number"
40897
+ ]
40898
+ },
40899
+ "toRow": {
40900
+ "types": [
40901
+ "number"
40902
+ ]
40903
+ },
40904
+ "toCol": {
40905
+ "types": [
40906
+ "number"
40907
+ ]
40908
+ },
40909
+ "tone": {
40910
+ "types": [
40911
+ "string"
40912
+ ]
40913
+ },
40914
+ "label": {
40915
+ "types": [
40916
+ "string"
40917
+ ]
40918
+ }
40919
+ },
40920
+ "required": [
40921
+ "id",
40922
+ "fromRow",
40923
+ "fromCol",
40924
+ "toRow",
40925
+ "toCol",
40926
+ "tone"
40927
+ ]
40928
+ },
40929
+ "tier": "presentation"
40930
+ },
40931
+ "popover": {
40932
+ "types": [
40933
+ "object"
40934
+ ],
40935
+ "description": "Buffer mode: a note anchored below a range, or none.",
40936
+ "properties": {
40937
+ "fromRow": {
40938
+ "types": [
40939
+ "number"
40940
+ ]
40941
+ },
40942
+ "fromCol": {
40943
+ "types": [
40944
+ "number"
40945
+ ]
40946
+ },
40947
+ "toRow": {
40948
+ "types": [
40949
+ "number"
40950
+ ]
40951
+ },
40952
+ "toCol": {
40953
+ "types": [
40954
+ "number"
40955
+ ]
40956
+ },
40957
+ "title": {
40958
+ "types": [
40959
+ "string"
40960
+ ]
40961
+ },
40962
+ "sections": {
40963
+ "types": [
40964
+ "array"
40965
+ ],
40966
+ "items": {
40967
+ "types": [
40968
+ "object"
40969
+ ],
40970
+ "properties": {
40971
+ "heading": {
40972
+ "types": [
40973
+ "string"
40974
+ ]
40975
+ },
40976
+ "lines": {
40977
+ "types": [
40978
+ "array"
40979
+ ],
40980
+ "items": {
40981
+ "types": [
40982
+ "string"
40983
+ ]
40984
+ }
40985
+ }
40986
+ },
40987
+ "required": [
40988
+ "heading",
40989
+ "lines"
40990
+ ]
40991
+ }
40992
+ },
40993
+ "busy": {
40994
+ "types": [
40995
+ "boolean"
40996
+ ]
40997
+ }
40998
+ },
40999
+ "propertyRequired": [
41000
+ "fromRow",
41001
+ "fromCol",
41002
+ "toRow",
41003
+ "toCol",
41004
+ "title",
41005
+ "sections",
41006
+ "busy"
41007
+ ],
41008
+ "tier": "presentation"
41009
+ },
41010
+ "relativeLineNumbers": {
41011
+ "types": [
41012
+ "boolean"
41013
+ ],
41014
+ "description": "Number each line by its distance from the cursor line; the cursor line shows its own number.",
41015
+ "tier": "presentation"
41016
+ },
41017
+ "onPointerDown": {
41018
+ "types": [
41019
+ "string"
41020
+ ],
41021
+ "description": "Buffer mode: emits UI:{onPointerDown} with the zero-based row and column a pointer pressed.",
41022
+ "kind": "event-ref",
41023
+ "emitPayloadSchema": [
41024
+ {
41025
+ "name": "editorId",
41026
+ "type": "string",
41027
+ "required": true
41028
+ },
41029
+ {
41030
+ "name": "row",
41031
+ "type": "number",
41032
+ "required": true
41033
+ },
41034
+ {
41035
+ "name": "col",
41036
+ "type": "number",
41037
+ "required": true
41038
+ }
41039
+ ],
41040
+ "tier": "presentation"
41041
+ },
41042
+ "onHover": {
41043
+ "types": [
41044
+ "string"
41045
+ ],
41046
+ "description": "Buffer mode: emits UI:{onHover} with the zero-based row and column the pointer moved onto (once per character it enters).",
41047
+ "kind": "event-ref",
41048
+ "emitPayloadSchema": [
41049
+ {
41050
+ "name": "editorId",
41051
+ "type": "string",
41052
+ "required": true
41053
+ },
41054
+ {
41055
+ "name": "row",
41056
+ "type": "number",
41057
+ "required": true
41058
+ },
41059
+ {
41060
+ "name": "col",
41061
+ "type": "number",
41062
+ "required": true
41063
+ }
41064
+ ],
41065
+ "tier": "presentation"
41066
+ },
40744
41067
  "completions": {
40745
41068
  "types": [
40746
41069
  "function"
@@ -43262,6 +43585,54 @@
43262
43585
  }
43263
43586
  ]
43264
43587
  },
43588
+ "focusTarget": {
43589
+ "types": [
43590
+ "object"
43591
+ ],
43592
+ "description": "Orbital mode: a transition to scroll to; its trait's box opens and the canvas scrolls to the transition. @default null",
43593
+ "properties": {
43594
+ "trait": {
43595
+ "types": [
43596
+ "string"
43597
+ ]
43598
+ },
43599
+ "event": {
43600
+ "types": [
43601
+ "string"
43602
+ ]
43603
+ },
43604
+ "from": {
43605
+ "types": [
43606
+ "string"
43607
+ ]
43608
+ },
43609
+ "to": {
43610
+ "types": [
43611
+ "string"
43612
+ ]
43613
+ },
43614
+ "nonce": {
43615
+ "types": [
43616
+ "number"
43617
+ ]
43618
+ }
43619
+ },
43620
+ "propertyRequired": [
43621
+ "trait",
43622
+ "event",
43623
+ "from",
43624
+ "to",
43625
+ "nonce"
43626
+ ],
43627
+ "default": null,
43628
+ "example": {
43629
+ "trait": "OrderPage",
43630
+ "event": "EDIT",
43631
+ "from": "browsing",
43632
+ "to": "editing",
43633
+ "nonce": 1
43634
+ }
43635
+ },
43265
43636
  "maxHeight": {
43266
43637
  "types": [
43267
43638
  "string"
@@ -61432,6 +61803,14 @@
61432
61803
  }
61433
61804
  ]
61434
61805
  },
61806
+ "clickPayload": {
61807
+ "types": [
61808
+ "object"
61809
+ ],
61810
+ "description": "Payload sent with clickEvent beside the label, so a pill rendered from data names its item without matching on text",
61811
+ "payloadFor": "clickEvent",
61812
+ "eventPayloadBrand": true
61813
+ },
61435
61814
  "removeEvent": {
61436
61815
  "types": [
61437
61816
  "string"
@@ -86738,6 +87117,16 @@
86738
87117
  ]
86739
87118
  }
86740
87119
  },
87120
+ "iconMap": {
87121
+ "types": [
87122
+ "object"
87123
+ ],
87124
+ "mapValue": {
87125
+ "types": [
87126
+ "string"
87127
+ ]
87128
+ }
87129
+ },
86741
87130
  "variant": {
86742
87131
  "types": [
86743
87132
  "string"
@@ -86869,6 +87258,16 @@
86869
87258
  ]
86870
87259
  }
86871
87260
  },
87261
+ "iconMap": {
87262
+ "types": [
87263
+ "object"
87264
+ ],
87265
+ "mapValue": {
87266
+ "types": [
87267
+ "string"
87268
+ ]
87269
+ }
87270
+ },
86872
87271
  "variant": {
86873
87272
  "types": [
86874
87273
  "string"
@@ -89946,7 +90345,7 @@
89946
90345
  "types": [
89947
90346
  "array"
89948
90347
  ],
89949
- "description": "Parsed lesson segments (see `parseLessonSegments`). Ignored when `lesson` is given.",
90348
+ "description": "The lesson as segments (std-lesson-segments parses lesson text into them).",
89950
90349
  "items": {
89951
90350
  "types": [
89952
90351
  "object"
@@ -90199,12 +90598,6 @@
90199
90598
  "discriminator": "type"
90200
90599
  }
90201
90600
  },
90202
- "lesson": {
90203
- "types": [
90204
- "string"
90205
- ],
90206
- "description": "Raw lesson markdown with learning tags; parsed with `parseLessonSegments` and rendered"
90207
- },
90208
90601
  "activationSaveEvent": {
90209
90602
  "types": [
90210
90603
  "string"
@@ -91012,6 +91405,11 @@
91012
91405
  "types": [
91013
91406
  "string"
91014
91407
  ]
91408
+ },
91409
+ "text": {
91410
+ "types": [
91411
+ "string"
91412
+ ]
91015
91413
  }
91016
91414
  },
91017
91415
  "propertyRequired": [
@@ -109500,6 +109898,12 @@
109500
109898
  "drawableSlot": true
109501
109899
  }
109502
109900
  },
109901
+ "description": {
109902
+ "types": [
109903
+ "string"
109904
+ ],
109905
+ "description": "Text alternative for the scene, rendered as visually hidden text and linked by aria-describedby."
109906
+ },
109503
109907
  "camera": {
109504
109908
  "types": [
109505
109909
  "object"
@@ -118296,99 +118700,166 @@
118296
118700
  ],
118297
118701
  "typicalSize": "small",
118298
118702
  "propsSchema": {
118299
- "cue": {
118300
- "types": [
118301
- "string"
118302
- ],
118303
- "description": "Manifest key played as a one-shot SFX each time `cueSeq` advances."
118304
- },
118305
118703
  "cueSeq": {
118306
118704
  "types": [
118307
118705
  "number"
118308
118706
  ],
118309
- "description": "Monotonically increasing counter — bumping it re-triggers `cue`."
118707
+ "description": "Monotonically increasing counter — bumping it plays `cuePlay` once."
118310
118708
  },
118311
- "music": {
118709
+ "cuePlay": {
118312
118710
  "types": [
118313
- "string"
118314
- ],
118315
- "description": "Manifest key to crossfade to as looping background music; unset/empty stops music."
118316
- },
118317
- "muted": {
118318
- "types": [
118319
- "boolean"
118711
+ "object"
118320
118712
  ],
118321
- "description": "Muted state, owned externally and mirrored into the hook."
118713
+ "description": "The resolved one-shot to play on the next `cueSeq` bump.",
118714
+ "properties": {
118715
+ "key": {
118716
+ "types": [
118717
+ "string"
118718
+ ]
118719
+ },
118720
+ "source": {
118721
+ "types": [
118722
+ "string"
118723
+ ]
118724
+ },
118725
+ "volume": {
118726
+ "types": [
118727
+ "number"
118728
+ ]
118729
+ },
118730
+ "loop": {
118731
+ "types": [
118732
+ "boolean"
118733
+ ]
118734
+ },
118735
+ "poolSize": {
118736
+ "types": [
118737
+ "number"
118738
+ ]
118739
+ },
118740
+ "fadeMs": {
118741
+ "types": [
118742
+ "number"
118743
+ ]
118744
+ }
118745
+ },
118746
+ "propertyRequired": [
118747
+ "key",
118748
+ "source",
118749
+ "volume",
118750
+ "loop",
118751
+ "poolSize",
118752
+ "fadeMs"
118753
+ ]
118322
118754
  },
118323
- "volume": {
118755
+ "musicPlay": {
118324
118756
  "types": [
118325
- "number"
118757
+ "object"
118326
118758
  ],
118327
- "description": "Master volume 0-1, owned externally and mirrored into the hook."
118759
+ "description": "The resolved looping track; an empty key fades the current one out.",
118760
+ "properties": {
118761
+ "key": {
118762
+ "types": [
118763
+ "string"
118764
+ ]
118765
+ },
118766
+ "source": {
118767
+ "types": [
118768
+ "string"
118769
+ ]
118770
+ },
118771
+ "volume": {
118772
+ "types": [
118773
+ "number"
118774
+ ]
118775
+ },
118776
+ "loop": {
118777
+ "types": [
118778
+ "boolean"
118779
+ ]
118780
+ },
118781
+ "poolSize": {
118782
+ "types": [
118783
+ "number"
118784
+ ]
118785
+ },
118786
+ "fadeMs": {
118787
+ "types": [
118788
+ "number"
118789
+ ]
118790
+ }
118791
+ },
118792
+ "propertyRequired": [
118793
+ "key",
118794
+ "source",
118795
+ "volume",
118796
+ "loop",
118797
+ "poolSize",
118798
+ "fadeMs"
118799
+ ]
118328
118800
  },
118329
- "manifest": {
118801
+ "autostart": {
118330
118802
  "types": [
118331
- "object"
118803
+ "array"
118332
118804
  ],
118333
- "description": "Sound manifest — keys mapped to sound definitions (path, volume, loop, ...).",
118334
- "required": true,
118335
- "mapValue": {
118805
+ "description": "Resolved sounds started on the first user gesture while unmuted.",
118806
+ "items": {
118336
118807
  "types": [
118337
118808
  "object"
118338
118809
  ],
118339
118810
  "properties": {
118340
- "path": {
118341
- "types": [
118342
- "string",
118343
- "array"
118344
- ],
118345
- "items": {
118346
- "types": [
118347
- "string"
118348
- ]
118349
- }
118350
- },
118351
- "volume": {
118811
+ "key": {
118352
118812
  "types": [
118353
- "number"
118813
+ "string"
118354
118814
  ]
118355
118815
  },
118356
- "loop": {
118816
+ "source": {
118357
118817
  "types": [
118358
- "boolean"
118818
+ "string"
118359
118819
  ]
118360
118820
  },
118361
- "poolSize": {
118821
+ "volume": {
118362
118822
  "types": [
118363
118823
  "number"
118364
118824
  ]
118365
118825
  },
118366
- "autostart": {
118826
+ "loop": {
118367
118827
  "types": [
118368
118828
  "boolean"
118369
118829
  ]
118370
118830
  },
118371
- "crossfade": {
118831
+ "poolSize": {
118372
118832
  "types": [
118373
- "boolean"
118833
+ "number"
118374
118834
  ]
118375
118835
  },
118376
- "crossfadeDurationMs": {
118836
+ "fadeMs": {
118377
118837
  "types": [
118378
118838
  "number"
118379
118839
  ]
118380
118840
  }
118381
118841
  },
118382
118842
  "required": [
118383
- "path"
118843
+ "key",
118844
+ "source",
118845
+ "volume",
118846
+ "loop",
118847
+ "poolSize",
118848
+ "fadeMs"
118384
118849
  ]
118385
118850
  }
118386
118851
  },
118387
- "baseUrl": {
118852
+ "muted": {
118388
118853
  "types": [
118389
- "string"
118854
+ "boolean"
118855
+ ],
118856
+ "description": "Muted state, owned externally and mirrored into the hook."
118857
+ },
118858
+ "volume": {
118859
+ "types": [
118860
+ "number"
118390
118861
  ],
118391
- "description": "Base URL prepended to every manifest path."
118862
+ "description": "Master volume 0-1, owned externally and mirrored into the hook."
118392
118863
  }
118393
118864
  }
118394
118865
  },
@@ -125341,6 +125812,12 @@
125341
125812
  "settled",
125342
125813
  "readyCount"
125343
125814
  ]
125815
+ },
125816
+ "toolLabel": {
125817
+ "types": [
125818
+ "string"
125819
+ ],
125820
+ "description": "The declared label of the tool a tool step names, shown in place of its address."
125344
125821
  }
125345
125822
  }
125346
125823
  },
@@ -126357,6 +126834,33 @@
126357
126834
  "description": "The agent is running — the feed shows it is thinking.",
126358
126835
  "default": false
126359
126836
  },
126837
+ "toolLabels": {
126838
+ "types": [
126839
+ "array"
126840
+ ],
126841
+ "description": "Declared labels of the tools a step can name: a step of a listed tool shows its label, not its address.",
126842
+ "items": {
126843
+ "types": [
126844
+ "object"
126845
+ ],
126846
+ "properties": {
126847
+ "tool": {
126848
+ "types": [
126849
+ "string"
126850
+ ]
126851
+ },
126852
+ "label": {
126853
+ "types": [
126854
+ "string"
126855
+ ]
126856
+ }
126857
+ },
126858
+ "required": [
126859
+ "tool",
126860
+ "label"
126861
+ ]
126862
+ }
126863
+ },
126360
126864
  "className": {
126361
126865
  "types": [
126362
126866
  "string"