@elabs-ai/components-ui 5.1.0 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/dist/{chunk-KBWHHAI3.js → chunk-2ZWUTZHE.js} +2 -2
  2. package/dist/{chunk-SSQG36MH.js → chunk-34CYSZ2F.js} +2 -2
  3. package/dist/chunk-34CYSZ2F.js.map +1 -0
  4. package/dist/{chunk-AXHMQOIZ.js → chunk-3GJLYUZ6.js} +3 -3
  5. package/dist/{chunk-CEDK5GM2.js → chunk-5AJQUJ5C.js} +2 -2
  6. package/dist/{chunk-MDQYRES4.js → chunk-5KNLME6F.js} +11 -5
  7. package/dist/chunk-5KNLME6F.js.map +1 -0
  8. package/dist/{chunk-ERTYAID6.js → chunk-5QQFXDUY.js} +5 -3
  9. package/dist/{chunk-ERTYAID6.js.map → chunk-5QQFXDUY.js.map} +1 -1
  10. package/dist/{chunk-E3GNYOLS.js → chunk-64BKIIJC.js} +2 -2
  11. package/dist/{chunk-RHVYRQN4.js → chunk-7ZJLR6RP.js} +2 -2
  12. package/dist/{chunk-HWVU636Q.js → chunk-A3JF66ZC.js} +3 -3
  13. package/dist/{chunk-NZUKZRT7.js → chunk-A3TT32GE.js} +2 -2
  14. package/dist/{chunk-C2ICCCP5.js → chunk-A4ZSNEZD.js} +2 -2
  15. package/dist/{chunk-JTY3REOB.js → chunk-BGXBANS2.js} +3 -3
  16. package/dist/{chunk-MY5H6D5Y.js → chunk-C4FNDXBM.js} +2 -2
  17. package/dist/{chunk-QF6UWWDY.js → chunk-C4FZWPI4.js} +1 -1
  18. package/dist/{chunk-QF6UWWDY.js.map → chunk-C4FZWPI4.js.map} +1 -1
  19. package/dist/{chunk-QLM3KTAQ.js → chunk-C6I5I5LA.js} +3 -3
  20. package/dist/{chunk-IE5GWE72.js → chunk-CF7YSCCA.js} +3 -3
  21. package/dist/chunk-CF7YSCCA.js.map +1 -0
  22. package/dist/{chunk-RYPK72YP.js → chunk-CGY25FAG.js} +2 -2
  23. package/dist/{chunk-HDS64Z5L.js → chunk-DIL73NE3.js} +2 -2
  24. package/dist/{chunk-VC4GKLZL.js → chunk-EHN5ZAHP.js} +2 -2
  25. package/dist/{chunk-HXQ4MDCH.js → chunk-F6FF4EJN.js} +2 -2
  26. package/dist/{chunk-V5QCJHDA.js → chunk-FC2LHNJG.js} +3 -3
  27. package/dist/{chunk-ZRMF4YAS.js → chunk-FCVHZDP7.js} +3 -3
  28. package/dist/{chunk-BYFRDLDL.js → chunk-FKDI2T7X.js} +2 -2
  29. package/dist/{chunk-GWHO5ACE.js → chunk-FNRVVVXX.js} +2 -2
  30. package/dist/{chunk-Y33ZFTMR.js → chunk-FWAFP76U.js} +2 -2
  31. package/dist/{chunk-ZALGMUSW.js → chunk-HUXLE3K3.js} +2 -2
  32. package/dist/{chunk-NRPZ3BH4.js → chunk-I3LBIBVN.js} +2 -2
  33. package/dist/{chunk-GTDCC4YX.js → chunk-IV6OYZTL.js} +2 -2
  34. package/dist/{chunk-4DWIMWR5.js → chunk-JQIXRCLG.js} +2 -2
  35. package/dist/{chunk-M5WPZXBA.js → chunk-JU4KW7JN.js} +3 -3
  36. package/dist/{chunk-PSXUEWUS.js → chunk-LVY7B5PD.js} +2 -2
  37. package/dist/{chunk-FLCQKC64.js → chunk-MIWFBH5S.js} +3 -3
  38. package/dist/{chunk-6TJVJPNU.js → chunk-O6AIFSTX.js} +46 -1
  39. package/dist/chunk-O6AIFSTX.js.map +1 -0
  40. package/dist/{chunk-EJQYE4MY.js → chunk-OFFWEDKY.js} +2 -2
  41. package/dist/{chunk-W7OIVERI.js → chunk-ONXBRQJT.js} +2 -2
  42. package/dist/{chunk-ENL3CCZB.js → chunk-PCNQ6NP2.js} +5 -5
  43. package/dist/{chunk-BRL2HMZJ.js → chunk-PFGQDW3H.js} +2 -2
  44. package/dist/{chunk-GMXSCEYN.js → chunk-R6CITZBB.js} +2 -2
  45. package/dist/{chunk-CY5ISPFB.js → chunk-RHZSAWAU.js} +2 -2
  46. package/dist/{chunk-FXC64HLD.js → chunk-S7YR3FYZ.js} +2 -2
  47. package/dist/{chunk-W35X6J5P.js → chunk-SD5MGHIJ.js} +3 -3
  48. package/dist/{chunk-2DFB4YTK.js → chunk-SJHDX73F.js} +2 -2
  49. package/dist/{chunk-MRBDJASL.js → chunk-SQLEVIAD.js} +3 -3
  50. package/dist/{chunk-3EDNWHWD.js → chunk-SR3SC2Q3.js} +2 -2
  51. package/dist/{chunk-HANBQNW3.js → chunk-U7ADXWTI.js} +26 -14
  52. package/dist/chunk-U7ADXWTI.js.map +1 -0
  53. package/dist/{chunk-CEHCVDYR.js → chunk-U7CSWQAE.js} +3 -3
  54. package/dist/{chunk-SWQCCR6Q.js → chunk-U7FC5J6J.js} +3 -3
  55. package/dist/{chunk-4VCU3GFI.js → chunk-UVVVKPSH.js} +2 -2
  56. package/dist/{chunk-BDOG4YSM.js → chunk-VAWYYETZ.js} +8 -8
  57. package/dist/{chunk-ALNJV4XB.js → chunk-WDZ47ZTX.js} +2 -2
  58. package/dist/{chunk-HHZJALGA.js → chunk-WL2EZDSD.js} +3 -3
  59. package/dist/{chunk-UQPW7INX.js → chunk-XE6GYGWS.js} +2 -2
  60. package/dist/{chunk-OGTILHKP.js → chunk-Y3CKZ7SH.js} +3 -3
  61. package/dist/{chunk-RIYDAMSQ.js → chunk-YA2CG4YL.js} +2 -2
  62. package/dist/{chunk-4DZGAY6R.js → chunk-ZESSUMCO.js} +2 -2
  63. package/dist/{chunk-L6A3RXCU.js → chunk-ZGNWDYSC.js} +3 -3
  64. package/dist/components/advanced-group/advanced-group.js +3 -3
  65. package/dist/components/advanced-group/index.js +3 -3
  66. package/dist/components/app-sidebar/app-sidebar.js +5 -5
  67. package/dist/components/app-sidebar/index.js +5 -5
  68. package/dist/components/attribution-panel/attribution-panel.js +4 -4
  69. package/dist/components/attribution-panel/attributions.generated.js +1 -1
  70. package/dist/components/attribution-panel/index.js +4 -4
  71. package/dist/components/bounded-number/bounded-number.js +4 -4
  72. package/dist/components/bounded-number/index.js +4 -4
  73. package/dist/components/breadcrumb/breadcrumb.js +3 -3
  74. package/dist/components/breadcrumb/index.js +3 -3
  75. package/dist/components/carousel/carousel.js +3 -3
  76. package/dist/components/carousel/index.js +3 -3
  77. package/dist/components/change-review/change-review.js +4 -4
  78. package/dist/components/change-review/index.js +4 -4
  79. package/dist/components/color-picker/color-picker.js +3 -3
  80. package/dist/components/color-picker/index.js +3 -3
  81. package/dist/components/combobox/combobox.js +5 -5
  82. package/dist/components/combobox/index.js +5 -5
  83. package/dist/components/command/command.js +4 -4
  84. package/dist/components/command/index.js +4 -4
  85. package/dist/components/confirm-dialog/confirm-dialog.js +4 -4
  86. package/dist/components/confirm-dialog/index.js +4 -4
  87. package/dist/components/context-rail/context-rail.js +6 -6
  88. package/dist/components/context-rail/index.js +6 -6
  89. package/dist/components/copyable-value/copyable-value.js +3 -3
  90. package/dist/components/copyable-value/index.js +3 -3
  91. package/dist/components/date-picker/date-picker.js +3 -3
  92. package/dist/components/date-picker/index.js +3 -3
  93. package/dist/components/date-range-picker/date-range-picker.js +3 -3
  94. package/dist/components/date-range-picker/index.js +3 -3
  95. package/dist/components/dialog/dialog.js +3 -3
  96. package/dist/components/dialog/index.js +3 -3
  97. package/dist/components/empty-state/empty-state.js +4 -4
  98. package/dist/components/empty-state/index.js +4 -4
  99. package/dist/components/error-state/error-state.js +4 -4
  100. package/dist/components/error-state/index.js +4 -4
  101. package/dist/components/expand-dialog/expand-dialog.js +4 -4
  102. package/dist/components/expand-dialog/index.js +4 -4
  103. package/dist/components/file-upload/file-upload.js +3 -3
  104. package/dist/components/file-upload/index.js +3 -3
  105. package/dist/components/key-value-editor/index.js +3 -3
  106. package/dist/components/key-value-editor/key-value-editor.js +3 -3
  107. package/dist/components/keyboard-shortcuts/index.js +4 -4
  108. package/dist/components/keyboard-shortcuts/keyboard-shortcuts.js +4 -4
  109. package/dist/components/list-editor/index.js +3 -3
  110. package/dist/components/list-editor/list-editor.js +3 -3
  111. package/dist/components/loading-state/index.js +4 -4
  112. package/dist/components/loading-state/loading-state.js +4 -4
  113. package/dist/components/locale-provider/index.js +2 -2
  114. package/dist/components/locale-provider/locale-provider.js +2 -2
  115. package/dist/components/locale-provider/messages.js +1 -1
  116. package/dist/components/mention-input/index.js +3 -3
  117. package/dist/components/mention-input/mention-input.js +3 -3
  118. package/dist/components/metric-card/index.js +4 -4
  119. package/dist/components/metric-card/metric-card.js +4 -4
  120. package/dist/components/model-picker/index.js +5 -5
  121. package/dist/components/model-picker/model-picker.js +5 -5
  122. package/dist/components/nav-main/index.js +5 -5
  123. package/dist/components/nav-main/nav-main.js +5 -5
  124. package/dist/components/nav-notifications/index.js +3 -3
  125. package/dist/components/nav-notifications/nav-notifications.js +3 -3
  126. package/dist/components/nav-user/index.js +5 -5
  127. package/dist/components/nav-user/nav-user.js +5 -5
  128. package/dist/components/number-input/index.js +3 -3
  129. package/dist/components/number-input/number-input.js +3 -3
  130. package/dist/components/pagination/index.js +3 -3
  131. package/dist/components/pagination/pagination.js +3 -3
  132. package/dist/components/revision-timeline/index.js +3 -3
  133. package/dist/components/revision-timeline/revision-timeline.js +3 -3
  134. package/dist/components/schema-form/index.js +9 -9
  135. package/dist/components/schema-form/schema-form.js +9 -9
  136. package/dist/components/sheet/index.js +3 -3
  137. package/dist/components/sheet/sheet.js +3 -3
  138. package/dist/components/side-dock/index.js +4 -4
  139. package/dist/components/side-dock/side-dock.js +4 -4
  140. package/dist/components/sidebar/index.js +4 -4
  141. package/dist/components/sidebar/sidebar.js +4 -4
  142. package/dist/components/slider-number/index.js +4 -4
  143. package/dist/components/slider-number/slider-number.js +4 -4
  144. package/dist/components/spec-playground/index.js +2 -2
  145. package/dist/components/spec-playground/locate-json-path.js +1 -1
  146. package/dist/components/spec-playground/spec-playground.js +2 -2
  147. package/dist/components/spinner/index.js +3 -3
  148. package/dist/components/spinner/spinner.js +3 -3
  149. package/dist/components/state-panel/index.js +3 -3
  150. package/dist/components/state-panel/state-panel.js +3 -3
  151. package/dist/components/table/index.js +3 -3
  152. package/dist/components/table/table.js +3 -3
  153. package/dist/components/team-switcher/index.js +5 -5
  154. package/dist/components/team-switcher/team-switcher.js +5 -5
  155. package/dist/components/theme-switcher/index.js +3 -3
  156. package/dist/components/theme-switcher/theme-switcher.js +3 -3
  157. package/dist/components/toolbar/index.js +1 -1
  158. package/dist/components/toolbar/toolbar.js +1 -1
  159. package/dist/components/transfer/index.js +3 -3
  160. package/dist/components/transfer/transfer.js +3 -3
  161. package/dist/components/tree/index.js +4 -4
  162. package/dist/components/tree/tree.js +4 -4
  163. package/dist/components/tree-select/index.js +5 -5
  164. package/dist/components/tree-select/tree-select.js +5 -5
  165. package/dist/components/view-toolbar/index.js +3 -3
  166. package/dist/components/view-toolbar/view-toolbar.js +3 -3
  167. package/dist/components/virtual-select/index.js +3 -3
  168. package/dist/components/virtual-select/virtual-select.js +3 -3
  169. package/dist/components/workspace-picker/index.js +6 -6
  170. package/dist/components/workspace-picker/workspace-picker.js +6 -6
  171. package/dist/index.d.ts +18 -3
  172. package/dist/index.js +60 -57
  173. package/dist/lib/streamdown-translations.js +3 -3
  174. package/package.json +3 -3
  175. package/src/components/attribution-panel/attributions.generated.ts +26 -14
  176. package/src/components/locale-provider/messages.ts +47 -0
  177. package/src/components/metric-card/metric-card.tsx +1 -1
  178. package/src/components/spec-playground/locate-json-path.ts +1 -1
  179. package/src/components/spec-playground/spec-playground.tsx +1 -1
  180. package/src/components/toolbar/toolbar.tsx +4 -2
  181. package/src/components/tree/tree.stories.tsx +28 -0
  182. package/src/components/tree/tree.tsx +17 -2
  183. package/src/index.ts +3 -0
  184. package/dist/chunk-6TJVJPNU.js.map +0 -1
  185. package/dist/chunk-HANBQNW3.js.map +0 -1
  186. package/dist/chunk-IE5GWE72.js.map +0 -1
  187. package/dist/chunk-MDQYRES4.js.map +0 -1
  188. package/dist/chunk-SSQG36MH.js.map +0 -1
  189. /package/dist/{chunk-KBWHHAI3.js.map → chunk-2ZWUTZHE.js.map} +0 -0
  190. /package/dist/{chunk-AXHMQOIZ.js.map → chunk-3GJLYUZ6.js.map} +0 -0
  191. /package/dist/{chunk-CEDK5GM2.js.map → chunk-5AJQUJ5C.js.map} +0 -0
  192. /package/dist/{chunk-E3GNYOLS.js.map → chunk-64BKIIJC.js.map} +0 -0
  193. /package/dist/{chunk-RHVYRQN4.js.map → chunk-7ZJLR6RP.js.map} +0 -0
  194. /package/dist/{chunk-HWVU636Q.js.map → chunk-A3JF66ZC.js.map} +0 -0
  195. /package/dist/{chunk-NZUKZRT7.js.map → chunk-A3TT32GE.js.map} +0 -0
  196. /package/dist/{chunk-C2ICCCP5.js.map → chunk-A4ZSNEZD.js.map} +0 -0
  197. /package/dist/{chunk-JTY3REOB.js.map → chunk-BGXBANS2.js.map} +0 -0
  198. /package/dist/{chunk-MY5H6D5Y.js.map → chunk-C4FNDXBM.js.map} +0 -0
  199. /package/dist/{chunk-QLM3KTAQ.js.map → chunk-C6I5I5LA.js.map} +0 -0
  200. /package/dist/{chunk-RYPK72YP.js.map → chunk-CGY25FAG.js.map} +0 -0
  201. /package/dist/{chunk-HDS64Z5L.js.map → chunk-DIL73NE3.js.map} +0 -0
  202. /package/dist/{chunk-VC4GKLZL.js.map → chunk-EHN5ZAHP.js.map} +0 -0
  203. /package/dist/{chunk-HXQ4MDCH.js.map → chunk-F6FF4EJN.js.map} +0 -0
  204. /package/dist/{chunk-V5QCJHDA.js.map → chunk-FC2LHNJG.js.map} +0 -0
  205. /package/dist/{chunk-ZRMF4YAS.js.map → chunk-FCVHZDP7.js.map} +0 -0
  206. /package/dist/{chunk-BYFRDLDL.js.map → chunk-FKDI2T7X.js.map} +0 -0
  207. /package/dist/{chunk-GWHO5ACE.js.map → chunk-FNRVVVXX.js.map} +0 -0
  208. /package/dist/{chunk-Y33ZFTMR.js.map → chunk-FWAFP76U.js.map} +0 -0
  209. /package/dist/{chunk-ZALGMUSW.js.map → chunk-HUXLE3K3.js.map} +0 -0
  210. /package/dist/{chunk-NRPZ3BH4.js.map → chunk-I3LBIBVN.js.map} +0 -0
  211. /package/dist/{chunk-GTDCC4YX.js.map → chunk-IV6OYZTL.js.map} +0 -0
  212. /package/dist/{chunk-4DWIMWR5.js.map → chunk-JQIXRCLG.js.map} +0 -0
  213. /package/dist/{chunk-M5WPZXBA.js.map → chunk-JU4KW7JN.js.map} +0 -0
  214. /package/dist/{chunk-PSXUEWUS.js.map → chunk-LVY7B5PD.js.map} +0 -0
  215. /package/dist/{chunk-FLCQKC64.js.map → chunk-MIWFBH5S.js.map} +0 -0
  216. /package/dist/{chunk-EJQYE4MY.js.map → chunk-OFFWEDKY.js.map} +0 -0
  217. /package/dist/{chunk-W7OIVERI.js.map → chunk-ONXBRQJT.js.map} +0 -0
  218. /package/dist/{chunk-ENL3CCZB.js.map → chunk-PCNQ6NP2.js.map} +0 -0
  219. /package/dist/{chunk-BRL2HMZJ.js.map → chunk-PFGQDW3H.js.map} +0 -0
  220. /package/dist/{chunk-GMXSCEYN.js.map → chunk-R6CITZBB.js.map} +0 -0
  221. /package/dist/{chunk-CY5ISPFB.js.map → chunk-RHZSAWAU.js.map} +0 -0
  222. /package/dist/{chunk-FXC64HLD.js.map → chunk-S7YR3FYZ.js.map} +0 -0
  223. /package/dist/{chunk-W35X6J5P.js.map → chunk-SD5MGHIJ.js.map} +0 -0
  224. /package/dist/{chunk-2DFB4YTK.js.map → chunk-SJHDX73F.js.map} +0 -0
  225. /package/dist/{chunk-MRBDJASL.js.map → chunk-SQLEVIAD.js.map} +0 -0
  226. /package/dist/{chunk-3EDNWHWD.js.map → chunk-SR3SC2Q3.js.map} +0 -0
  227. /package/dist/{chunk-CEHCVDYR.js.map → chunk-U7CSWQAE.js.map} +0 -0
  228. /package/dist/{chunk-SWQCCR6Q.js.map → chunk-U7FC5J6J.js.map} +0 -0
  229. /package/dist/{chunk-4VCU3GFI.js.map → chunk-UVVVKPSH.js.map} +0 -0
  230. /package/dist/{chunk-BDOG4YSM.js.map → chunk-VAWYYETZ.js.map} +0 -0
  231. /package/dist/{chunk-ALNJV4XB.js.map → chunk-WDZ47ZTX.js.map} +0 -0
  232. /package/dist/{chunk-HHZJALGA.js.map → chunk-WL2EZDSD.js.map} +0 -0
  233. /package/dist/{chunk-UQPW7INX.js.map → chunk-XE6GYGWS.js.map} +0 -0
  234. /package/dist/{chunk-OGTILHKP.js.map → chunk-Y3CKZ7SH.js.map} +0 -0
  235. /package/dist/{chunk-RIYDAMSQ.js.map → chunk-YA2CG4YL.js.map} +0 -0
  236. /package/dist/{chunk-4DZGAY6R.js.map → chunk-ZESSUMCO.js.map} +0 -0
  237. /package/dist/{chunk-L6A3RXCU.js.map → chunk-ZGNWDYSC.js.map} +0 -0
package/dist/index.js CHANGED
@@ -12,7 +12,7 @@ import {
12
12
  import {
13
13
  STREAMDOWN_TRANSLATION_KEYS,
14
14
  useStreamdownTranslations
15
- } from "./chunk-HDS64Z5L.js";
15
+ } from "./chunk-DIL73NE3.js";
16
16
  import {
17
17
  downloadBlob,
18
18
  downloadUrl
@@ -84,7 +84,7 @@ import {
84
84
  import "./chunk-2AABRSIN.js";
85
85
  import {
86
86
  WorkspacePicker
87
- } from "./chunk-SWQCCR6Q.js";
87
+ } from "./chunk-U7FC5J6J.js";
88
88
  import {
89
89
  formatLastOpened
90
90
  } from "./chunk-BZQF5QCN.js";
@@ -100,26 +100,26 @@ import {
100
100
  ResultCount,
101
101
  ViewToolbar,
102
102
  ViewToolbarFilters
103
- } from "./chunk-RHVYRQN4.js";
103
+ } from "./chunk-7ZJLR6RP.js";
104
104
  import "./chunk-4HTVJZVG.js";
105
105
  import {
106
106
  VirtualSelect
107
- } from "./chunk-HXQ4MDCH.js";
107
+ } from "./chunk-F6FF4EJN.js";
108
108
  import {
109
109
  useVirtualListbox
110
110
  } from "./chunk-AFJCS2WV.js";
111
111
  import "./chunk-W7I2X6VI.js";
112
112
  import {
113
113
  Transfer
114
- } from "./chunk-C2ICCCP5.js";
114
+ } from "./chunk-A4ZSNEZD.js";
115
115
  import "./chunk-4ACT7RLU.js";
116
116
  import {
117
117
  TreeSelect
118
- } from "./chunk-M5WPZXBA.js";
118
+ } from "./chunk-JU4KW7JN.js";
119
119
  import "./chunk-5YZLOAKR.js";
120
120
  import {
121
121
  Tree
122
- } from "./chunk-MDQYRES4.js";
122
+ } from "./chunk-5KNLME6F.js";
123
123
  import {
124
124
  useTreeKeyboard
125
125
  } from "./chunk-ZI2OXD6L.js";
@@ -142,11 +142,11 @@ import {
142
142
  ToolbarToggleGroup,
143
143
  ToolbarToggleItem,
144
144
  toolbarVariants
145
- } from "./chunk-ERTYAID6.js";
145
+ } from "./chunk-5QQFXDUY.js";
146
146
  import "./chunk-DSGTH6JW.js";
147
147
  import {
148
148
  ThemeSwitcher
149
- } from "./chunk-KBWHHAI3.js";
149
+ } from "./chunk-2ZWUTZHE.js";
150
150
  import {
151
151
  useThemeTransition
152
152
  } from "./chunk-YIFB24WW.js";
@@ -163,7 +163,7 @@ import {
163
163
  import "./chunk-B2RSOLLO.js";
164
164
  import {
165
165
  TeamSwitcher
166
- } from "./chunk-QLM3KTAQ.js";
166
+ } from "./chunk-C6I5I5LA.js";
167
167
  import "./chunk-2SBYBN45.js";
168
168
  import {
169
169
  DEFAULT_THEME_FAMILY_SWITCH_LABELS,
@@ -190,7 +190,7 @@ import {
190
190
  TableHead,
191
191
  TableHeader,
192
192
  TableRow
193
- } from "./chunk-4DZGAY6R.js";
193
+ } from "./chunk-ZESSUMCO.js";
194
194
  import "./chunk-CEQER4CV.js";
195
195
  import {
196
196
  SplitPanel,
@@ -200,12 +200,12 @@ import "./chunk-AA3SPDJU.js";
200
200
  import {
201
201
  DEFAULT_SPEC_PLAYGROUND_LABELS,
202
202
  SpecPlayground
203
- } from "./chunk-SSQG36MH.js";
204
- import "./chunk-QF6UWWDY.js";
203
+ } from "./chunk-34CYSZ2F.js";
204
+ import "./chunk-C4FZWPI4.js";
205
205
  import "./chunk-5P4BSHIG.js";
206
206
  import {
207
207
  SliderNumber
208
- } from "./chunk-L6A3RXCU.js";
208
+ } from "./chunk-ZGNWDYSC.js";
209
209
  import "./chunk-U7QYCYHC.js";
210
210
  import {
211
211
  Slider
@@ -213,7 +213,7 @@ import {
213
213
  import "./chunk-DIQJODQR.js";
214
214
  import {
215
215
  SideDock
216
- } from "./chunk-OGTILHKP.js";
216
+ } from "./chunk-Y3CKZ7SH.js";
217
217
  import "./chunk-WNIVCHDP.js";
218
218
  import {
219
219
  SectionHeader
@@ -247,7 +247,7 @@ import {
247
247
  RevisionTimeline,
248
248
  laneColor,
249
249
  revisionTimelineVariants
250
- } from "./chunk-GWHO5ACE.js";
250
+ } from "./chunk-FNRVVVXX.js";
251
251
  import "./chunk-FHDJKH2A.js";
252
252
  import {
253
253
  SchemaForm,
@@ -261,7 +261,7 @@ import {
261
261
  SchemaFormSubmit,
262
262
  SchemaFormTestAction,
263
263
  SchemaFormTitle
264
- } from "./chunk-BDOG4YSM.js";
264
+ } from "./chunk-VAWYYETZ.js";
265
265
  import "./chunk-HLMFRCFE.js";
266
266
  import "./chunk-BWL7HWEF.js";
267
267
  import {
@@ -326,7 +326,7 @@ import {
326
326
  PaginationLink,
327
327
  PaginationNext,
328
328
  PaginationPrevious
329
- } from "./chunk-BRL2HMZJ.js";
329
+ } from "./chunk-PFGQDW3H.js";
330
330
  import "./chunk-SMTAPQEQ.js";
331
331
  import {
332
332
  PARALLAX_MAX_TRAVEL,
@@ -344,11 +344,11 @@ import {
344
344
  import "./chunk-LLQWLZ75.js";
345
345
  import {
346
346
  NavNotifications
347
- } from "./chunk-NRPZ3BH4.js";
347
+ } from "./chunk-I3LBIBVN.js";
348
348
  import "./chunk-UCEVPLR5.js";
349
349
  import {
350
350
  NavUser
351
- } from "./chunk-FLCQKC64.js";
351
+ } from "./chunk-MIWFBH5S.js";
352
352
  import "./chunk-USI4LB3N.js";
353
353
  import {
354
354
  NavigationMenu,
@@ -363,12 +363,12 @@ import {
363
363
  import "./chunk-QODOFLHL.js";
364
364
  import {
365
365
  MetricCard
366
- } from "./chunk-IE5GWE72.js";
366
+ } from "./chunk-CF7YSCCA.js";
367
367
  import "./chunk-LDOCY4SU.js";
368
368
  import "./chunk-YK4H7VWM.js";
369
369
  import {
370
370
  ModelPicker
371
- } from "./chunk-V5QCJHDA.js";
371
+ } from "./chunk-FC2LHNJG.js";
372
372
  import {
373
373
  countItems,
374
374
  modelPickerBody,
@@ -377,7 +377,7 @@ import {
377
377
  import "./chunk-QDJHUNBQ.js";
378
378
  import {
379
379
  NavMain
380
- } from "./chunk-UQPW7INX.js";
380
+ } from "./chunk-XE6GYGWS.js";
381
381
  import "./chunk-OYKS7YHE.js";
382
382
  import {
383
383
  MatchHighlight,
@@ -393,7 +393,7 @@ import {
393
393
  MentionInputList,
394
394
  MentionInputTextarea,
395
395
  useMentionInput
396
- } from "./chunk-4DWIMWR5.js";
396
+ } from "./chunk-JQIXRCLG.js";
397
397
  import {
398
398
  defaultMentionFilter,
399
399
  insertMention,
@@ -433,19 +433,19 @@ import {
433
433
  import "./chunk-4YOFSGHD.js";
434
434
  import {
435
435
  ListEditor
436
- } from "./chunk-ALNJV4XB.js";
436
+ } from "./chunk-WDZ47ZTX.js";
437
437
  import "./chunk-4PXDZR2W.js";
438
438
  import {
439
439
  LoadingState
440
- } from "./chunk-GMXSCEYN.js";
440
+ } from "./chunk-R6CITZBB.js";
441
441
  import "./chunk-CRVB4SLG.js";
442
442
  import {
443
443
  KeyValueEditor
444
- } from "./chunk-NZUKZRT7.js";
444
+ } from "./chunk-A3TT32GE.js";
445
445
  import "./chunk-ZE2H4J3P.js";
446
446
  import {
447
447
  KeyboardShortcuts
448
- } from "./chunk-ZRMF4YAS.js";
448
+ } from "./chunk-FCVHZDP7.js";
449
449
  import "./chunk-G72UOVKS.js";
450
450
  import {
451
451
  LinkPreview,
@@ -520,7 +520,7 @@ import {
520
520
  FileUploadItem,
521
521
  FileUploadList,
522
522
  useFileUpload
523
- } from "./chunk-RYPK72YP.js";
523
+ } from "./chunk-CGY25FAG.js";
524
524
  import "./chunk-X4FE7UKP.js";
525
525
  import {
526
526
  Progress,
@@ -530,18 +530,18 @@ import "./chunk-ISWUCXEZ.js";
530
530
  import "./chunk-XGX3UFLD.js";
531
531
  import {
532
532
  EmptyState
533
- } from "./chunk-E3GNYOLS.js";
533
+ } from "./chunk-64BKIIJC.js";
534
534
  import "./chunk-HZPNST7D.js";
535
535
  import {
536
536
  ErrorState
537
- } from "./chunk-RIYDAMSQ.js";
537
+ } from "./chunk-YA2CG4YL.js";
538
538
  import {
539
539
  ExpandDialog,
540
540
  ExpandDialogContent,
541
541
  ExpandDialogHeader,
542
542
  ExpandDialogPanes,
543
543
  expandDialogPanesVariants
544
- } from "./chunk-W35X6J5P.js";
544
+ } from "./chunk-SD5MGHIJ.js";
545
545
  import "./chunk-Z4CYBG3H.js";
546
546
  import {
547
547
  Descriptions,
@@ -567,12 +567,12 @@ import {
567
567
  import "./chunk-CRGGGHAM.js";
568
568
  import {
569
569
  ContextRail
570
- } from "./chunk-ENL3CCZB.js";
570
+ } from "./chunk-PCNQ6NP2.js";
571
571
  import "./chunk-LJGWA2XL.js";
572
572
  import "./chunk-RF7JSNXJ.js";
573
573
  import {
574
574
  CopyableValue
575
- } from "./chunk-CEDK5GM2.js";
575
+ } from "./chunk-5AJQUJ5C.js";
576
576
  import "./chunk-FAOX6A5D.js";
577
577
  import {
578
578
  Toaster,
@@ -581,11 +581,11 @@ import {
581
581
  import "./chunk-DXDLTYTT.js";
582
582
  import {
583
583
  DatePicker
584
- } from "./chunk-2DFB4YTK.js";
584
+ } from "./chunk-SJHDX73F.js";
585
585
  import "./chunk-YZVXIPBC.js";
586
586
  import {
587
587
  DateRangePicker
588
- } from "./chunk-3EDNWHWD.js";
588
+ } from "./chunk-SR3SC2Q3.js";
589
589
  import "./chunk-7WIHVGYL.js";
590
590
  import {
591
591
  CommandTrigger
@@ -597,11 +597,11 @@ import {
597
597
  import "./chunk-OITCRC5D.js";
598
598
  import {
599
599
  ConfirmDialog
600
- } from "./chunk-JTY3REOB.js";
600
+ } from "./chunk-BGXBANS2.js";
601
601
  import "./chunk-AQNLEP5F.js";
602
602
  import {
603
603
  Spinner
604
- } from "./chunk-W7OIVERI.js";
604
+ } from "./chunk-ONXBRQJT.js";
605
605
  import "./chunk-VH7GG77B.js";
606
606
  import {
607
607
  ContextMenu,
@@ -623,11 +623,11 @@ import "./chunk-HPUPDT4Q.js";
623
623
  import {
624
624
  COLOR_TOKENS,
625
625
  ColorPicker
626
- } from "./chunk-MY5H6D5Y.js";
626
+ } from "./chunk-C4FNDXBM.js";
627
627
  import "./chunk-WOMO5CZ7.js";
628
628
  import {
629
629
  Combobox
630
- } from "./chunk-HHZJALGA.js";
630
+ } from "./chunk-WL2EZDSD.js";
631
631
  import "./chunk-OR4NVFPH.js";
632
632
  import {
633
633
  Command,
@@ -640,7 +640,7 @@ import {
640
640
  CommandSeparator,
641
641
  CommandShortcut,
642
642
  useCommandActiveItemId
643
- } from "./chunk-CY5ISPFB.js";
643
+ } from "./chunk-RHZSAWAU.js";
644
644
  import "./chunk-IM5VJP6T.js";
645
645
  import {
646
646
  Dialog,
@@ -656,7 +656,7 @@ import {
656
656
  DialogTitle,
657
657
  DialogTrigger,
658
658
  dialogContentVariants
659
- } from "./chunk-BYFRDLDL.js";
659
+ } from "./chunk-FKDI2T7X.js";
660
660
  import "./chunk-C753P3VJ.js";
661
661
  import {
662
662
  PROSE_HEADING_REM,
@@ -680,7 +680,9 @@ import {
680
680
  import {
681
681
  useDialogDismissGuard
682
682
  } from "./chunk-L3SHPHLK.js";
683
- import "./chunk-L37QZALU.js";
683
+ import {
684
+ mergeRefs
685
+ } from "./chunk-L37QZALU.js";
684
686
  import "./chunk-AFEFAGPW.js";
685
687
  import {
686
688
  Popover,
@@ -723,7 +725,7 @@ import {
723
725
  CarouselItem,
724
726
  CarouselNext,
725
727
  CarouselPrevious
726
- } from "./chunk-ZALGMUSW.js";
728
+ } from "./chunk-HUXLE3K3.js";
727
729
  import "./chunk-MZDL7N52.js";
728
730
  import {
729
731
  ChangeReview,
@@ -733,7 +735,7 @@ import {
733
735
  ChangeReviewProvenance,
734
736
  ChangeReviewProvider,
735
737
  hunkVariants
736
- } from "./chunk-CEHCVDYR.js";
738
+ } from "./chunk-U7CSWQAE.js";
737
739
  import {
738
740
  formatElapsed
739
741
  } from "./chunk-3P7SRCDB.js";
@@ -753,7 +755,7 @@ import {
753
755
  import {
754
756
  StatePanel,
755
757
  statePanelVariants
756
- } from "./chunk-Y33ZFTMR.js";
758
+ } from "./chunk-FWAFP76U.js";
757
759
  import {
758
760
  ILLUSTRATION_ACCENT_VAR,
759
761
  illustrationAccent
@@ -794,11 +796,11 @@ import {
794
796
  import "./chunk-ZEMTALKO.js";
795
797
  import {
796
798
  BoundedNumber
797
- } from "./chunk-MRBDJASL.js";
799
+ } from "./chunk-SQLEVIAD.js";
798
800
  import "./chunk-CY624JOL.js";
799
801
  import {
800
802
  NumberInput
801
- } from "./chunk-GTDCC4YX.js";
803
+ } from "./chunk-IV6OYZTL.js";
802
804
  import "./chunk-UG5TKXTK.js";
803
805
  import {
804
806
  InputGroup,
@@ -823,7 +825,7 @@ import {
823
825
  BreadcrumbList,
824
826
  BreadcrumbPage,
825
827
  BreadcrumbSeparator
826
- } from "./chunk-VC4GKLZL.js";
828
+ } from "./chunk-EHN5ZAHP.js";
827
829
  import "./chunk-L66VJIRD.js";
828
830
  import {
829
831
  AspectRatio
@@ -832,7 +834,7 @@ import "./chunk-4UWOADYM.js";
832
834
  import {
833
835
  AttributionPanel,
834
836
  CATEGORY_LABEL
835
- } from "./chunk-AXHMQOIZ.js";
837
+ } from "./chunk-3GJLYUZ6.js";
836
838
  import "./chunk-V2S5DINS.js";
837
839
  import {
838
840
  ScrollArea,
@@ -840,7 +842,7 @@ import {
840
842
  } from "./chunk-IVEDMK5U.js";
841
843
  import {
842
844
  ATTRIBUTIONS
843
- } from "./chunk-HANBQNW3.js";
845
+ } from "./chunk-U7ADXWTI.js";
844
846
  import "./chunk-OEPN373X.js";
845
847
  import {
846
848
  Avatar,
@@ -875,7 +877,7 @@ import {
875
877
  import "./chunk-VHLPJ4XW.js";
876
878
  import {
877
879
  AppSidebar
878
- } from "./chunk-4VCU3GFI.js";
880
+ } from "./chunk-UVVVKPSH.js";
879
881
  import "./chunk-MPMMU3QI.js";
880
882
  import {
881
883
  Sidebar,
@@ -903,7 +905,7 @@ import {
903
905
  SidebarTrigger,
904
906
  sidebarMenuButtonVariants,
905
907
  useSidebar
906
- } from "./chunk-HWVU636Q.js";
908
+ } from "./chunk-A3JF66ZC.js";
907
909
  import "./chunk-R5JYMCEA.js";
908
910
  import {
909
911
  Sheet,
@@ -915,7 +917,7 @@ import {
915
917
  SheetPortal,
916
918
  SheetTitle,
917
919
  SheetTrigger
918
- } from "./chunk-FXC64HLD.js";
920
+ } from "./chunk-S7YR3FYZ.js";
919
921
  import "./chunk-ZXVPEQM5.js";
920
922
  import {
921
923
  Skeleton
@@ -956,7 +958,7 @@ import {
956
958
  import "./chunk-HHVULJGX.js";
957
959
  import {
958
960
  AdvancedGroup
959
- } from "./chunk-PSXUEWUS.js";
961
+ } from "./chunk-LVY7B5PD.js";
960
962
  import "./chunk-XYFEQHEM.js";
961
963
  import {
962
964
  Collapsible,
@@ -972,10 +974,10 @@ import "./chunk-6ROQKB4U.js";
972
974
  import {
973
975
  LocaleProvider,
974
976
  useLocale
975
- } from "./chunk-EJQYE4MY.js";
977
+ } from "./chunk-OFFWEDKY.js";
976
978
  import {
977
979
  DEFAULT_MESSAGES
978
- } from "./chunk-6TJVJPNU.js";
980
+ } from "./chunk-O6AIFSTX.js";
979
981
  import "./chunk-RHXVQZOW.js";
980
982
  import {
981
983
  AlertDialog,
@@ -1471,6 +1473,7 @@ export {
1471
1473
  mediaTypeFromName,
1472
1474
  mentionAt,
1473
1475
  mentionEnd,
1476
+ mergeRefs,
1474
1477
  meterFillVariants,
1475
1478
  meterVariants,
1476
1479
  modelPickerBody,
@@ -3,10 +3,10 @@
3
3
  import {
4
4
  STREAMDOWN_TRANSLATION_KEYS,
5
5
  useStreamdownTranslations
6
- } from "../chunk-HDS64Z5L.js";
6
+ } from "../chunk-DIL73NE3.js";
7
7
  import "../chunk-6ROQKB4U.js";
8
- import "../chunk-EJQYE4MY.js";
9
- import "../chunk-6TJVJPNU.js";
8
+ import "../chunk-OFFWEDKY.js";
9
+ import "../chunk-O6AIFSTX.js";
10
10
  import "../chunk-DCHYNTHI.js";
11
11
  export {
12
12
  STREAMDOWN_TRANSLATION_KEYS,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elabs-ai/components-ui",
3
- "version": "5.1.0",
3
+ "version": "5.3.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -81,7 +81,7 @@
81
81
  "react": "^18.2.0 || ^19.0.0",
82
82
  "react-dom": "^18.2.0 || ^19.0.0",
83
83
  "react-hook-form": "^7.54.2",
84
- "@elabs-ai/components-tokens": "^5.1.0"
84
+ "@elabs-ai/components-tokens": "^5.3.0"
85
85
  },
86
86
  "peerDependenciesMeta": {
87
87
  "@hookform/resolvers": {
@@ -113,7 +113,7 @@
113
113
  "vitest": "^3.0.2",
114
114
  "zod": "^3.24.1",
115
115
  "@elabs-ai/components-eslint-config": "0.1.0",
116
- "@elabs-ai/components-tokens": "5.1.0",
116
+ "@elabs-ai/components-tokens": "5.3.0",
117
117
  "@elabs-ai/components-typescript-config": "0.1.0"
118
118
  },
119
119
  "scripts": {
@@ -2,7 +2,7 @@
2
2
  // Run `pnpm gen` after changing a dependency, a vendored font, or
3
3
  // scripts/attributions.sources.json. `pnpm gen:check` fails on a stale copy.
4
4
  //
5
- // 122 entries (data: 4, source: 20, font: 2, dependency: 96).
5
+ // 123 entries (data: 4, source: 20, font: 2, dependency: 97).
6
6
 
7
7
  import type { Attribution } from "./attribution-types";
8
8
 
@@ -340,7 +340,7 @@ export const ATTRIBUTIONS: readonly Attribution[] = [
340
340
  license: "MIT",
341
341
  copyright: "Claudéric Demers",
342
342
  url: "https://www.npmjs.com/package/@dnd-kit/core",
343
- usedBy: ["@elabs-ai/components-charts", "@elabs-ai/components-data"],
343
+ usedBy: ["@elabs-ai/components-data"],
344
344
  required: false,
345
345
  note: null,
346
346
  },
@@ -1208,6 +1208,18 @@ export const ATTRIBUTIONS: readonly Attribution[] = [
1208
1208
  required: false,
1209
1209
  note: null,
1210
1210
  },
1211
+ {
1212
+ id: "mdast-util-directive",
1213
+ category: "dependency",
1214
+ name: "mdast-util-directive",
1215
+ version: "3.1.0",
1216
+ license: "MIT",
1217
+ copyright: "Titus Wormer",
1218
+ url: "https://www.npmjs.com/package/mdast-util-directive",
1219
+ usedBy: ["@elabs-ai/components-editor"],
1220
+ required: false,
1221
+ note: null,
1222
+ },
1211
1223
  {
1212
1224
  id: "mermaid",
1213
1225
  category: "dependency",
@@ -1220,6 +1232,18 @@ export const ATTRIBUTIONS: readonly Attribution[] = [
1220
1232
  required: false,
1221
1233
  note: null,
1222
1234
  },
1235
+ {
1236
+ id: "micromark-extension-directive",
1237
+ category: "dependency",
1238
+ name: "micromark-extension-directive",
1239
+ version: "4.0.0",
1240
+ license: "MIT",
1241
+ copyright: "Titus Wormer",
1242
+ url: "https://www.npmjs.com/package/micromark-extension-directive",
1243
+ usedBy: ["@elabs-ai/components-editor"],
1244
+ required: false,
1245
+ note: null,
1246
+ },
1223
1247
  {
1224
1248
  id: "motion",
1225
1249
  category: "dependency",
@@ -1484,16 +1508,4 @@ export const ATTRIBUTIONS: readonly Attribution[] = [
1484
1508
  required: false,
1485
1509
  note: null,
1486
1510
  },
1487
- {
1488
- id: "zustand",
1489
- category: "dependency",
1490
- name: "zustand",
1491
- version: "5.0.15",
1492
- license: "MIT",
1493
- copyright: "Paul Henschel",
1494
- url: "https://www.npmjs.com/package/zustand",
1495
- usedBy: ["@elabs-ai/components-charts"],
1496
- required: false,
1497
- note: null,
1498
- },
1499
1511
  ] as const;
@@ -419,6 +419,13 @@ export const DEFAULT_MESSAGES: Record<string, MessageValue> = {
419
419
  "charts.gantt.unitMinute": "Minute",
420
420
  "charts.gantt.unitSecond": "Second",
421
421
  "charts.gantt.unitMillisecond": "Millisecond",
422
+ // Gantt zoom controls (the scale buttons are presets; these move the density freely).
423
+ "charts.gantt.zoom": "Zoom",
424
+ "charts.gantt.zoomIn": "Zoom in",
425
+ "charts.gantt.zoomOut": "Zoom out",
426
+ "charts.gantt.zoomToFit": "Fit to width",
427
+ "charts.gantt.scrollToToday": "Today",
428
+ "charts.gantt.scrollToTask": "Scroll to {name}",
422
429
  // BulletChart (Few's bullet graph, RM-061). The SVG is aria-hidden, so this
423
430
  // sentence — built from these fragments — is the ONLY thing AT reads: it
424
431
  // states the value, its relationship to the target, and which qualitative
@@ -464,6 +471,46 @@ export const DEFAULT_MESSAGES: Record<string, MessageValue> = {
464
471
  "charts.dashboard.edit.moveCancelled": "Move cancelled. Restored to column {x}, row {y}",
465
472
  "charts.dashboard.edit.resizeCancelled":
466
473
  "Resize cancelled. Restored to column {x}, row {y}, size {w} by {h}",
474
+ // dashboard pack rebuild: locked tiles, the empty sheet, the edit-mode tile chrome.
475
+ "charts.dashboard.edit.locked": "{title} is locked",
476
+ "charts.dashboard.edit.lock": "Lock position and size",
477
+ "charts.dashboard.edit.unlock": "Unlock",
478
+ "charts.dashboard.edit.emptyTitle": "This sheet is empty",
479
+ "charts.dashboard.edit.emptyDescription":
480
+ "Drag a tile from the asset panel onto the sheet, or press Add in the toolbar.",
481
+ "charts.dashboard.edit.emptyViewTitle": "Nothing to show yet",
482
+ "charts.dashboard.edit.emptyViewDescription": "Switch to Edit to add the first tile.",
483
+ "charts.dashboard.edit.tileDuplicate": "Duplicate {title}",
484
+ "charts.dashboard.edit.tileDelete": "Delete {title}",
485
+ "charts.dashboard.edit.tileProperties": "Properties of {title}",
486
+ "charts.dashboard.edit.tileMore": "More actions for {title}",
487
+ "charts.dashboard.toolbar.assets": "Assets",
488
+ "charts.dashboard.toolbar.properties": "Properties",
489
+ "charts.dashboard.toolbar.layout": "Layout",
490
+ "charts.dashboard.toolbar.showGrid": "Show grid",
491
+ "charts.dashboard.toolbar.tidyUp": "Tidy up",
492
+ "charts.dashboard.toolbar.tidyUpDescription": "Reflow every tile into a clean reading order",
493
+ "charts.dashboard.toolbar.selectAll": "Select all",
494
+ "charts.dashboard.toolbar.deleteSelection": "Delete selection",
495
+ "charts.dashboard.toolbar.duplicateSelection": "Duplicate selection",
496
+ "charts.dashboard.toolbar.editSheet": "Edit sheet",
497
+ "charts.dashboard.toolbar.done": "Done",
498
+ "charts.dashboard.toolbar.more": "More",
499
+ "charts.dashboard.toolbar.saved": "All changes saved",
500
+ "charts.dashboard.toolbar.layoutFor": "Layout for",
501
+ "charts.dashboard.toolbar.layoutBase": "Desktop",
502
+ "charts.dashboard.toolbar.layoutMd": "Tablet",
503
+ "charts.dashboard.toolbar.layoutSm": "Phone",
504
+ "charts.dashboard.toolbar.gridDensityNow": "{columns} × {rows} cells",
505
+ "charts.dashboard.toolbar.gridDensityFlow": "{columns} columns · {rowHeight} px rows",
506
+ "charts.dashboard.properties.layout": "Layout",
507
+ "charts.dashboard.properties.column": "Column",
508
+ "charts.dashboard.properties.row": "Row",
509
+ "charts.dashboard.properties.width": "Width",
510
+ "charts.dashboard.properties.height": "Height",
511
+ "charts.dashboard.properties.lockedDescription":
512
+ "A locked tile keeps its cells when others move.",
513
+ "charts.dashboard.properties.noRoom": "No room for that size here",
467
514
  // dashboard toolbar — RM-079: mode switch, undo/redo, grid settings, save/discard, shortcuts.
468
515
  "charts.dashboard.toolbar.ariaLabel": "Dashboard toolbar",
469
516
  "charts.dashboard.toolbar.viewMode": "View",
@@ -31,7 +31,7 @@ function formatResolvedNumber(
31
31
 
32
32
  /*
33
33
  * ADR 0012: this is the ONE KPI tile — `@elabs-ai/components-charts` re-exports it.
34
- * RM-072 adds `size` (sm | md | lg) for dashboard-sheet tiles and a `sparkline`
34
+ * RM-072 adds `size` (sm | md | lg) for dashboard tiles and a `sparkline`
35
35
  * slot under the value. `ui` never imports `charts`: the host passes the
36
36
  * `<Sparkline …/>` element in.
37
37
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Map a validator's error `path` onto a line of the JSON text it came from, so clicking an
3
3
  * error can put the caret there. Paths are JSON-path-like and tolerant of both house styles:
4
- * `root.children[2].props.variant` (A2UI) and `$.tiles[3].layout.w` (DashboardSpec).
4
+ * `root.children[2].props.variant` (A2UI) and `$.tiles[3].layout.w` (any tile spec).
5
5
  *
6
6
  * The scanner is deliberately small: it walks well-formed JSON, recording where each key or
7
7
  * array element starts, and returns the DEEPEST prefix of the path that exists — a
@@ -26,7 +26,7 @@ import {
26
26
  import { Textarea } from "../textarea";
27
27
  import { lineOfParseError, locateJsonPath, offsetOfLine } from "./locate-json-path";
28
28
 
29
- /** One problem a validator reports — the shape both the A2UI and DashboardSpec validators use. */
29
+ /** One problem a validator reports — the shape the A2UI validator uses. */
30
30
  export interface SpecPlaygroundError {
31
31
  /** JSON-path-like address of the problem (`root.children[2].props.label`, `$.tiles[0]`). */
32
32
  path: string;
@@ -122,8 +122,10 @@ export const ToolbarSeparator = forwardRef<
122
122
  data-slot="toolbar-separator"
123
123
  className={cn(
124
124
  "bg-border-strong mx-1 shrink-0",
125
- "data-[orientation=horizontal]:h-5 data-[orientation=horizontal]:w-px",
126
- "data-[orientation=vertical]:h-px data-[orientation=vertical]:w-5",
125
+ // Radix flips the separator's orientation relative to the toolbar: a HORIZONTAL toolbar
126
+ // gets `data-orientation="vertical"` separators (a vertical hairline between groups).
127
+ "data-[orientation=vertical]:h-5 data-[orientation=vertical]:w-px",
128
+ "data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-5",
127
129
  className,
128
130
  )}
129
131
  {...props}
@@ -347,6 +347,34 @@ export const Multiple: Story = {
347
347
  },
348
348
  };
349
349
 
350
+ /**
351
+ * `expandOn="chevron"`: a click on a branch row only SELECTS it — expanding is the
352
+ * chevron's (and ArrowRight's) job. The shape a filter tree wants, where a parent value is
353
+ * selectable in its own right.
354
+ */
355
+ export const ExpandOnChevron: Story = {
356
+ args: {
357
+ nodes: orgTree,
358
+ defaultExpandedIds: ["engineering"],
359
+ selectionMode: "multiple",
360
+ checkboxes: true,
361
+ expandOn: "chevron",
362
+ },
363
+ play: async ({ canvasElement, userEvent }) => {
364
+ const canvas = within(canvasElement);
365
+ const frontend = canvas.getByRole("treeitem", { name: /^frontend$/i });
366
+ await expect(frontend).toHaveAttribute("aria-expanded", "false");
367
+ // The row click selects without expanding …
368
+ await userEvent.click(frontend);
369
+ await expect(frontend).toHaveAttribute("aria-checked", "true");
370
+ await expect(frontend).toHaveAttribute("aria-expanded", "false");
371
+ // … the keyboard still expands.
372
+ frontend.focus();
373
+ await userEvent.keyboard("{ArrowRight}");
374
+ await expect(frontend).toHaveAttribute("aria-expanded", "true");
375
+ },
376
+ };
377
+
350
378
  /** Fully expanded at mount via defaultExpandedIds. */
351
379
  export const Expanded: Story = {
352
380
  args: {