@cube-dev/ui-kit 0.166.0 → 0.168.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 (663) hide show
  1. package/README.md +4 -7
  2. package/dist/CHANGELOG.md +47 -0
  3. package/dist/README.md +4 -7
  4. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  5. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  6. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  7. package/dist/_internal/hooks/use-event.js +1 -1
  8. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  9. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  10. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  11. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  12. package/dist/_internal/hooks/use-warn.js +1 -1
  13. package/dist/components/Block.js +1 -1
  14. package/dist/components/CollectionItem.js +1 -1
  15. package/dist/components/GlobalStyles.js +4 -4
  16. package/dist/components/GlobalStyles.js.map +1 -1
  17. package/dist/components/GridProvider.js +1 -1
  18. package/dist/components/HiddenInput.js +1 -1
  19. package/dist/components/Root.js +5 -5
  20. package/dist/components/Root.js.map +1 -1
  21. package/dist/components/actions/Action/Action.js +1 -1
  22. package/dist/components/actions/Banner/Banner.js +1 -1
  23. package/dist/components/actions/Button/Button.d.ts +0 -1
  24. package/dist/components/actions/Button/Button.js +1 -1
  25. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  26. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  27. package/dist/components/actions/ButtonSplit/context.js +1 -1
  28. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  29. package/dist/components/actions/CommandMenu/styled.js +1 -1
  30. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  31. package/dist/components/actions/ItemActionContext.js +1 -1
  32. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  33. package/dist/components/actions/Link/Link.js +1 -1
  34. package/dist/components/actions/Menu/Menu.js +1 -1
  35. package/dist/components/actions/Menu/MenuItem.js +1 -1
  36. package/dist/components/actions/Menu/MenuSection.js +1 -1
  37. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  38. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  39. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  40. package/dist/components/actions/Menu/context.js +1 -1
  41. package/dist/components/actions/Menu/styled.js +1 -1
  42. package/dist/components/actions/index.js +1 -1
  43. package/dist/components/actions/use-action.js +1 -1
  44. package/dist/components/actions/use-anchored-menu.d.ts +7 -3
  45. package/dist/components/actions/use-anchored-menu.js +17 -12
  46. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  47. package/dist/components/actions/use-context-menu.d.ts +6 -3
  48. package/dist/components/actions/use-context-menu.js +25 -13
  49. package/dist/components/actions/use-context-menu.js.map +1 -1
  50. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  51. package/dist/components/content/Alert/Alert.js +1 -1
  52. package/dist/components/content/Alert/use-alert.js +1 -1
  53. package/dist/components/content/Avatar/Avatar.js +1 -1
  54. package/dist/components/content/Badge/Badge.js +1 -1
  55. package/dist/components/content/Card/Card.js +1 -1
  56. package/dist/components/content/Content.js +1 -1
  57. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  58. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  59. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  60. package/dist/components/content/Divider.js +1 -1
  61. package/dist/components/content/Footer.js +1 -1
  62. package/dist/components/content/Header.js +1 -1
  63. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  64. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  65. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  66. package/dist/components/content/Item/Item.js +1 -1
  67. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  68. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  69. package/dist/components/content/Layout/GridLayout.js +1 -1
  70. package/dist/components/content/Layout/Layout.js +1 -1
  71. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  72. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  73. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  74. package/dist/components/content/Layout/LayoutContent.js +1 -1
  75. package/dist/components/content/Layout/LayoutContext.js +1 -1
  76. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  77. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  78. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  79. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  80. package/dist/components/content/Layout/LayoutPane.js +1 -1
  81. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  82. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  83. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  84. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  85. package/dist/components/content/Layout/index.js +1 -1
  86. package/dist/components/content/Layout/utils.js +1 -1
  87. package/dist/components/content/Paragraph.js +1 -1
  88. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  89. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  90. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  91. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  92. package/dist/components/content/Result/Result.js +1 -1
  93. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  94. package/dist/components/content/Tag/Tag.js +1 -1
  95. package/dist/components/content/Text.d.ts +14 -14
  96. package/dist/components/content/Text.js +1 -1
  97. package/dist/components/content/TextItem/TextItem.js +1 -1
  98. package/dist/components/content/Title.js +1 -1
  99. package/dist/components/content/Tree/Tree.js +1 -1
  100. package/dist/components/content/Tree/TreeNode.js +1 -1
  101. package/dist/components/content/Tree/styled.js +1 -1
  102. package/dist/components/content/Tree/tree-index.js +1 -1
  103. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  104. package/dist/components/content/Tree/use-load-data.js +1 -1
  105. package/dist/components/content/highlightText.js +1 -1
  106. package/dist/components/content/use-auto-tooltip.js +1 -1
  107. package/dist/components/data/DataTable/DataTable.js +1 -1
  108. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  109. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  110. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  111. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  112. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  113. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  114. package/dist/components/data/TableBase/RowCollection.js +1 -1
  115. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  116. package/dist/components/data/TableBase/TableRow.js +1 -1
  117. package/dist/components/data/TableBase/TableView.js +1 -1
  118. package/dist/components/data/TableBase/column-menu.js +1 -1
  119. package/dist/components/data/TableBase/column-tint.js +1 -1
  120. package/dist/components/data/TableBase/row-menu.js +1 -1
  121. package/dist/components/data/TableBase/styled.d.ts +1 -2
  122. package/dist/components/data/TableBase/styled.js +1 -1
  123. package/dist/components/data/TableBase/table-tree.js +1 -1
  124. package/dist/components/data/TableBase/types.js +1 -1
  125. package/dist/components/data/TableBase/use-cell-selection.d.ts +0 -1
  126. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  127. package/dist/components/data/TableBase/use-column-order.js +1 -1
  128. package/dist/components/data/TableBase/use-container-width.js +1 -1
  129. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  130. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  131. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  132. package/dist/components/data/TableBase/use-table-search.js +1 -1
  133. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  134. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  135. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  136. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  137. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  138. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  139. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  140. package/dist/components/fields/Checkbox/context.js +1 -1
  141. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  142. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  143. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  144. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  145. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  146. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  147. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  148. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  149. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  150. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  151. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  152. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  153. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  154. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  155. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  156. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  157. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  158. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  159. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  160. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  161. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  162. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  163. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  164. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  165. package/dist/components/fields/DatePicker/period.js +1 -1
  166. package/dist/components/fields/DatePicker/props.js +1 -1
  167. package/dist/components/fields/DatePicker/utils.js +1 -1
  168. package/dist/components/fields/FileInput/FileInput.js +1 -1
  169. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  170. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  171. package/dist/components/fields/Input/Input.js +1 -1
  172. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  173. package/dist/components/fields/ListBox/ListBox.js +1 -1
  174. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  175. package/dist/components/fields/ListBoxPopover/index.d.ts +0 -1
  176. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  177. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  178. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  179. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  180. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  181. package/dist/components/fields/Picker/Picker.js +1 -1
  182. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  183. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  184. package/dist/components/fields/RadioGroup/context.js +1 -1
  185. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  186. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  187. package/dist/components/fields/Select/Select.js +1 -1
  188. package/dist/components/fields/Slider/Gradation.js +1 -1
  189. package/dist/components/fields/Slider/HueSlider.js +1 -1
  190. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  191. package/dist/components/fields/Slider/Slider.js +1 -1
  192. package/dist/components/fields/Slider/SliderBase.js +1 -1
  193. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  194. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  195. package/dist/components/fields/Slider/elements.js +1 -1
  196. package/dist/components/fields/Slider/index.js +1 -1
  197. package/dist/components/fields/Switch/Switch.js +1 -1
  198. package/dist/components/fields/TextArea/TextArea.js +1 -1
  199. package/dist/components/fields/TextInput/TextInput.js +1 -1
  200. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  201. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  202. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  203. package/dist/components/fields/color/ColorPanel.js +1 -1
  204. package/dist/components/fields/color/channels.js +1 -1
  205. package/dist/components/fields/color/color.js +1 -1
  206. package/dist/components/fields/color/context.js +1 -1
  207. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  208. package/dist/components/form/Form/Field.js +1 -1
  209. package/dist/components/form/Form/Form.js +1 -1
  210. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  211. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  212. package/dist/components/form/Form/SubmitError.js +1 -1
  213. package/dist/components/form/Form/index.js +1 -1
  214. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  215. package/dist/components/form/Form/use-field/use-field.js +1 -1
  216. package/dist/components/form/Form/use-form.js +1 -1
  217. package/dist/components/form/Form/validation.js +1 -1
  218. package/dist/components/form/Label.js +1 -1
  219. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  220. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  221. package/dist/components/form/validation/use-validation-props.js +1 -1
  222. package/dist/components/form/wrapper.js +1 -1
  223. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  224. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  225. package/dist/components/layout/Board/Board.d.ts +11 -5
  226. package/dist/components/layout/Board/Board.js +15 -7
  227. package/dist/components/layout/Board/Board.js.map +1 -1
  228. package/dist/components/layout/Board/BoardProvider.js +1 -1
  229. package/dist/components/layout/Board/BoardResponsive.d.ts +6 -3
  230. package/dist/components/layout/Board/BoardResponsive.js +3 -3
  231. package/dist/components/layout/Board/BoardResponsive.js.map +1 -1
  232. package/dist/components/layout/Board/Widget.d.ts +29 -1
  233. package/dist/components/layout/Board/Widget.js +5 -2
  234. package/dist/components/layout/Board/Widget.js.map +1 -1
  235. package/dist/components/layout/Board/WidgetHost.js +67 -17
  236. package/dist/components/layout/Board/WidgetHost.js.map +1 -1
  237. package/dist/components/layout/Board/board-context.js +1 -1
  238. package/dist/components/layout/Board/board-context.js.map +1 -1
  239. package/dist/components/layout/Board/board-store.js +2 -2
  240. package/dist/components/layout/Board/board-store.js.map +1 -1
  241. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  242. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  243. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  244. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  245. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  246. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  247. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  248. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  249. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  250. package/dist/components/layout/Board/index.d.ts +2 -1
  251. package/dist/components/layout/Board/index.js +1 -1
  252. package/dist/components/layout/Board/index.js.map +1 -1
  253. package/dist/components/layout/Board/responsive-utils.js +1 -1
  254. package/dist/components/layout/Board/use-board-layout.d.ts +26 -0
  255. package/dist/components/layout/Board/use-board-layout.js +4 -4
  256. package/dist/components/layout/Board/use-board-layout.js.map +1 -1
  257. package/dist/components/layout/Board/use-board-registry.js +4 -4
  258. package/dist/components/layout/Board/use-board-registry.js.map +1 -1
  259. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  260. package/dist/components/layout/Board/use-board-selection.js +1 -1
  261. package/dist/components/layout/Flex.js +1 -1
  262. package/dist/components/layout/Flow.js +1 -1
  263. package/dist/components/layout/Grid.js +1 -1
  264. package/dist/components/layout/Panel.js +1 -1
  265. package/dist/components/layout/Prefix.js +1 -1
  266. package/dist/components/layout/ResizablePanel.js +1 -1
  267. package/dist/components/layout/Space.js +1 -1
  268. package/dist/components/layout/Suffix.js +1 -1
  269. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  270. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  271. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  272. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  273. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  274. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  275. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  276. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  277. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  278. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  279. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  280. package/dist/components/navigation/Tabs/styled.js +1 -1
  281. package/dist/components/navigation/Tabs/types.js +1 -1
  282. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  283. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  284. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  285. package/dist/components/other/Calendar/Calendar.js +1 -1
  286. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  287. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  288. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  289. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  290. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  291. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  292. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  293. package/dist/components/other/Calendar/styled.js +1 -1
  294. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  295. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  296. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  297. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  298. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  299. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  300. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  301. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  302. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  303. package/dist/components/overlays/Dialog/context.js +1 -1
  304. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  305. package/dist/components/overlays/Modal/Modal.d.ts +1 -2
  306. package/dist/components/overlays/Modal/Modal.js +1 -1
  307. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  308. package/dist/components/overlays/Modal/Overlay.d.ts +0 -1
  309. package/dist/components/overlays/Modal/Overlay.js +4 -3
  310. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  311. package/dist/components/overlays/Modal/Popover.js +1 -1
  312. package/dist/components/overlays/Modal/Tray.js +1 -1
  313. package/dist/components/overlays/Modal/Underlay.js +1 -1
  314. package/dist/components/overlays/Modal/types.d.ts +0 -1
  315. package/dist/components/overlays/Notifications/Notification.js +1 -1
  316. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  317. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  318. package/dist/components/overlays/Notifications/NotificationContext.d.ts +0 -2
  319. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  320. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  321. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  322. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  323. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  324. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  325. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  326. package/dist/components/overlays/Notifications/index.js +1 -1
  327. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  328. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  329. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  330. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  331. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  332. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  333. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  334. package/dist/components/overlays/Toast/index.js +1 -1
  335. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  336. package/dist/components/overlays/Toast/useToast.js +1 -1
  337. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  338. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  339. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  340. package/dist/components/overlays/Tooltip/context.js +1 -1
  341. package/dist/components/portal/Portal.js +7 -5
  342. package/dist/components/portal/Portal.js.map +1 -1
  343. package/dist/components/portal/PortalProvider.js +1 -1
  344. package/dist/components/portal/index.d.ts +0 -1
  345. package/dist/components/portal/usePortal.js +1 -1
  346. package/dist/components/shared/DraggableCollection.js +1 -1
  347. package/dist/components/shared/InvalidIcon.js +1 -1
  348. package/dist/components/shared/ValidIcon.js +1 -1
  349. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  350. package/dist/components/status/Spin/Cube.js +1 -1
  351. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  352. package/dist/components/status/Spin/Spin.js +1 -1
  353. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  354. package/dist/data/item-themes.js +1 -1
  355. package/dist/data/themes.js +1 -1
  356. package/dist/eslint-plugin/defaults.generated.js +21 -1
  357. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  358. package/dist/eslint-plugin/index.js +1 -1
  359. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  360. package/dist/i18n/I18nProvider.js +1 -1
  361. package/dist/i18n/createFormatter.js +1 -1
  362. package/dist/i18n/index.js +1 -1
  363. package/dist/i18n/instance.js +1 -1
  364. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  365. package/dist/i18n/locales/en-US/uikit.js +1 -1
  366. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  367. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  368. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  369. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  370. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  371. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  372. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  373. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  374. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  375. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  376. package/dist/i18n/locales.js +1 -1
  377. package/dist/i18n/useFormatter.js +1 -1
  378. package/dist/i18n/useI18n.js +1 -1
  379. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  380. package/dist/icons/AdjustmentsIcon.js +1 -1
  381. package/dist/icons/AiIcon.js +1 -1
  382. package/dist/icons/AreaChartIcon.js +1 -1
  383. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  384. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  385. package/dist/icons/BackwardIcon.js +1 -1
  386. package/dist/icons/BarChartIcon.js +1 -1
  387. package/dist/icons/BellFilledIcon.js +1 -1
  388. package/dist/icons/BellIcon.js +1 -1
  389. package/dist/icons/BooleanIcon.js +1 -1
  390. package/dist/icons/CalendarEditIcon.js +1 -1
  391. package/dist/icons/CalendarIcon.js +1 -1
  392. package/dist/icons/CaretDownIcon.js +1 -1
  393. package/dist/icons/CaretUpIcon.js +1 -1
  394. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  395. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  396. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  397. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  398. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  399. package/dist/icons/ChartBarLineIcon.js +1 -1
  400. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  401. package/dist/icons/ChartBarStackedIcon.js +1 -1
  402. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  403. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  404. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  405. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  406. package/dist/icons/ChartBubbleIcon.js +1 -1
  407. package/dist/icons/ChartDonut2Icon.js +1 -1
  408. package/dist/icons/ChartFunnelIcon.js +1 -1
  409. package/dist/icons/ChartHeatmapIcon.js +1 -1
  410. package/dist/icons/ChartKPIIcon.js +1 -1
  411. package/dist/icons/ChartPie2Icon.js +1 -1
  412. package/dist/icons/ChartScatterIcon.js +1 -1
  413. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  414. package/dist/icons/CheckCircleIcon.js +1 -1
  415. package/dist/icons/CheckIcon.js +1 -1
  416. package/dist/icons/CircleFilledIcon.js +1 -1
  417. package/dist/icons/ClearIcon.js +1 -1
  418. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  419. package/dist/icons/CloseCircleIcon.js +1 -1
  420. package/dist/icons/CloseIcon.js +1 -1
  421. package/dist/icons/CodeIcon.js +1 -1
  422. package/dist/icons/ColumnTotalIcon.js +1 -1
  423. package/dist/icons/CopyIcon.js +1 -1
  424. package/dist/icons/CountIcon.js +1 -1
  425. package/dist/icons/CubeIcon.js +1 -1
  426. package/dist/icons/CubePauseIcon.js +1 -1
  427. package/dist/icons/CubePlayIcon.js +1 -1
  428. package/dist/icons/CurrencyDollarIcon.js +1 -1
  429. package/dist/icons/DangerIcon.js +1 -1
  430. package/dist/icons/DashboardIcon.js +1 -1
  431. package/dist/icons/DatabaseIcon.js +1 -1
  432. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  433. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  434. package/dist/icons/DirectionIcon.js +1 -1
  435. package/dist/icons/DonutIcon.js +1 -1
  436. package/dist/icons/DownIcon.js +1 -1
  437. package/dist/icons/EditIcon.js +1 -1
  438. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  439. package/dist/icons/ExclamationCircleIcon.js +1 -1
  440. package/dist/icons/ExclamationIcon.js +1 -1
  441. package/dist/icons/EyeIcon.js +1 -1
  442. package/dist/icons/EyeInvisibleIcon.js +1 -1
  443. package/dist/icons/FilterIcon.js +1 -1
  444. package/dist/icons/FolderFilledIcon.js +1 -1
  445. package/dist/icons/FolderIcon.js +1 -1
  446. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  447. package/dist/icons/FolderOpenIcon.js +1 -1
  448. package/dist/icons/ForwardIcon.js +1 -1
  449. package/dist/icons/GripVerticalIcon.js +1 -1
  450. package/dist/icons/HierarchyIcon.js +1 -1
  451. package/dist/icons/HierarchyOpenIcon.js +1 -1
  452. package/dist/icons/Icon.js +1 -1
  453. package/dist/icons/InfoCircleIcon.js +1 -1
  454. package/dist/icons/InfoIcon.js +1 -1
  455. package/dist/icons/KeyIcon.js +1 -1
  456. package/dist/icons/LeftIcon.js +1 -1
  457. package/dist/icons/LineChartIcon.js +1 -1
  458. package/dist/icons/LoadingIcon.js +1 -1
  459. package/dist/icons/LockFilledIcon.js +1 -1
  460. package/dist/icons/LockIcon.js +1 -1
  461. package/dist/icons/MoreIcon.js +1 -1
  462. package/dist/icons/NotAllowedIcon.js +1 -1
  463. package/dist/icons/Number123Icon.js +1 -1
  464. package/dist/icons/NumberIcon.js +1 -1
  465. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  466. package/dist/icons/PauseCircleIcon.js +1 -1
  467. package/dist/icons/PauseIcon.js +1 -1
  468. package/dist/icons/PercentageIcon.js +1 -1
  469. package/dist/icons/PieChartIcon.js +1 -1
  470. package/dist/icons/PipetteIcon.js +1 -1
  471. package/dist/icons/PlayCircleIcon.js +1 -1
  472. package/dist/icons/PlayIcon.js +1 -1
  473. package/dist/icons/PlusIcon.js +1 -1
  474. package/dist/icons/ProgressBarIcon.js +1 -1
  475. package/dist/icons/ReloadIcon.js +1 -1
  476. package/dist/icons/ReportIcon.js +1 -1
  477. package/dist/icons/ReturnIcon.js +1 -1
  478. package/dist/icons/RightIcon.js +1 -1
  479. package/dist/icons/RowTotalsIcon.js +1 -1
  480. package/dist/icons/SchemeIcon.js +1 -1
  481. package/dist/icons/SearchIcon.js +1 -1
  482. package/dist/icons/SemanticQueryIcon.js +1 -1
  483. package/dist/icons/SettingsIcon.js +1 -1
  484. package/dist/icons/ShieldFilledIcon.js +1 -1
  485. package/dist/icons/ShieldIcon.js +1 -1
  486. package/dist/icons/SlashIcon.js +1 -1
  487. package/dist/icons/SparklesIcon.js +1 -1
  488. package/dist/icons/SqlIcon.js +1 -1
  489. package/dist/icons/StatsIcon.js +1 -1
  490. package/dist/icons/StopIcon.js +1 -1
  491. package/dist/icons/StringIcon.js +1 -1
  492. package/dist/icons/SubtotalsIcon.js +1 -1
  493. package/dist/icons/SwitchIcon.js +1 -1
  494. package/dist/icons/TableIcon.js +1 -1
  495. package/dist/icons/ThumbsDownIcon.js +1 -1
  496. package/dist/icons/ThumbsUpIcon.js +1 -1
  497. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  498. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  499. package/dist/icons/ThunderboltIcon.js +1 -1
  500. package/dist/icons/TimeIcon.js +1 -1
  501. package/dist/icons/TrashIcon.js +1 -1
  502. package/dist/icons/UnlockIcon.js +1 -1
  503. package/dist/icons/UpIcon.js +1 -1
  504. package/dist/icons/UserGroupIcon.js +1 -1
  505. package/dist/icons/UserIcon.js +1 -1
  506. package/dist/icons/UserLockIcon.js +1 -1
  507. package/dist/icons/ViewIcon.js +1 -1
  508. package/dist/icons/WarningFilledIcon.js +1 -1
  509. package/dist/icons/WarningIcon.js +1 -1
  510. package/dist/icons/wrap-icon.js +1 -1
  511. package/dist/index.d.ts +6 -3
  512. package/dist/index.js +4 -3
  513. package/dist/index.js.map +1 -1
  514. package/dist/probe/canonicalize.js +1 -1
  515. package/dist/probe/css.js +1 -1
  516. package/dist/probe/index.js +1 -1
  517. package/dist/provider.js +1 -1
  518. package/dist/providers/TrackingProvider.js +1 -1
  519. package/dist/providers/navigationAdapter.default.js +1 -1
  520. package/dist/tokens/all-tokens.d.ts +10 -0
  521. package/dist/tokens/{index.js → all-tokens.js} +7 -25
  522. package/dist/tokens/all-tokens.js.map +1 -0
  523. package/dist/tokens/base.js +2 -1
  524. package/dist/tokens/base.js.map +1 -1
  525. package/dist/tokens/color-seed.js +1 -1
  526. package/dist/tokens/color-theme.js +1 -1
  527. package/dist/tokens/colors.js +1 -1
  528. package/dist/tokens/index.d.ts +3 -10
  529. package/dist/tokens/layout.js +1 -1
  530. package/dist/tokens/lazy-styles.js +1 -1
  531. package/dist/tokens/palette-config.js +1 -1
  532. package/dist/tokens/palette.js +1 -1
  533. package/dist/tokens/resolve.d.ts +113 -0
  534. package/dist/tokens/resolve.js +403 -0
  535. package/dist/tokens/resolve.js.map +1 -0
  536. package/dist/tokens/shadows.js +1 -1
  537. package/dist/tokens/sizes.js +1 -1
  538. package/dist/tokens/spacing.js +1 -1
  539. package/dist/tokens/typography.js +1 -1
  540. package/dist/utils/ResizeSensor.js +1 -1
  541. package/dist/utils/is-dev-env.js +1 -1
  542. package/dist/utils/modules.js +1 -1
  543. package/dist/utils/promise.js +1 -1
  544. package/dist/utils/raf.js +1 -1
  545. package/dist/utils/random.js +1 -1
  546. package/dist/utils/range.js +1 -1
  547. package/dist/utils/react/RenderCache.js +1 -1
  548. package/dist/utils/react/Slots.js +1 -1
  549. package/dist/utils/react/chain.js +1 -1
  550. package/dist/utils/react/disabledProps.js +1 -1
  551. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  552. package/dist/utils/react/index.js +1 -1
  553. package/dist/utils/react/interactions.js +1 -1
  554. package/dist/utils/react/isTextOnly.js +1 -1
  555. package/dist/utils/react/mapProps.js +1 -1
  556. package/dist/utils/react/mergeProps.js +1 -1
  557. package/dist/utils/react/nullableValue.js +1 -1
  558. package/dist/utils/react/resolveIcon.js +1 -1
  559. package/dist/utils/react/sharedStore.js +1 -1
  560. package/dist/utils/react/useBufferedValue.js +1 -1
  561. package/dist/utils/react/useCombinedRefs.js +1 -1
  562. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  563. package/dist/utils/react/useEventBus.js +1 -1
  564. package/dist/utils/react/useId.js +1 -1
  565. package/dist/utils/react/useIsDarwin.js +1 -1
  566. package/dist/utils/react/useKeySymbols.js +1 -1
  567. package/dist/utils/react/useLayoutEffect.js +1 -1
  568. package/dist/utils/react/useLocalStorage.js +1 -1
  569. package/dist/utils/react/useMergeStyles.js +1 -1
  570. package/dist/utils/react/usePopoverSync.js +1 -1
  571. package/dist/utils/react/useQaProps.js +1 -1
  572. package/dist/utils/react/useViewportSize.js +1 -1
  573. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  574. package/dist/utils/selection.js +1 -1
  575. package/dist/utils/styles.js +1 -1
  576. package/dist/utils/tree.js +1 -1
  577. package/dist/utils/warnings.js +1 -1
  578. package/dist/version.js +3 -3
  579. package/docs/Colors.md +16 -40
  580. package/docs/ComplexLayout.md +8 -0
  581. package/docs/CreateComponent.md +15 -8
  582. package/docs/Introduction.md +15 -36
  583. package/docs/RenderCache.md +8 -6
  584. package/docs/Theming.md +164 -497
  585. package/docs/Usage.md +129 -138
  586. package/docs/Utilities.md +2 -2
  587. package/docs/components/CollectionItem.md +1 -0
  588. package/docs/components/actions/Banner.md +1 -0
  589. package/docs/components/actions/Button.md +8 -36
  590. package/docs/components/actions/ButtonSplit.md +2 -0
  591. package/docs/components/actions/CommandMenu.md +8 -8
  592. package/docs/components/actions/ItemButton.md +6 -20
  593. package/docs/components/actions/Link.md +10 -5
  594. package/docs/components/actions/Menu.md +24 -11
  595. package/docs/components/actions/MenuTrigger.md +3 -12
  596. package/docs/components/actions/use-anchored-menu.md +5 -5
  597. package/docs/components/actions/use-context-menu.md +11 -7
  598. package/docs/components/content/Badge.md +3 -0
  599. package/docs/components/content/HotKeys.md +21 -14
  600. package/docs/components/content/InlineInput.md +14 -14
  601. package/docs/components/content/Item.md +25 -17
  602. package/docs/components/content/ItemCard.md +1 -0
  603. package/docs/components/content/Layout.md +12 -1
  604. package/docs/components/content/PrismCode.md +13 -18
  605. package/docs/components/content/Tag.md +1 -1
  606. package/docs/components/content/TextItem.md +5 -3
  607. package/docs/components/content/Tree.md +69 -154
  608. package/docs/components/data/DataTable.md +56 -168
  609. package/docs/components/data/ItemTable.md +182 -485
  610. package/docs/components/fields/Checkbox.md +2 -0
  611. package/docs/components/fields/ColorInput.md +38 -79
  612. package/docs/components/fields/ColorPicker.md +17 -39
  613. package/docs/components/fields/ColorSwatch.md +11 -30
  614. package/docs/components/fields/ColorSwatchGroup.md +18 -42
  615. package/docs/components/fields/ComboBox.md +13 -1
  616. package/docs/components/fields/CommandTextArea.md +10 -37
  617. package/docs/components/fields/DatePicker.md +3 -0
  618. package/docs/components/fields/FileInput.md +3 -0
  619. package/docs/components/fields/FilterListBox.md +34 -14
  620. package/docs/components/fields/FilterPicker.md +33 -16
  621. package/docs/components/fields/HueSlider.md +5 -5
  622. package/docs/components/fields/ListBox.md +35 -9
  623. package/docs/components/fields/NumberInput.md +3 -0
  624. package/docs/components/fields/PasswordInput.md +3 -0
  625. package/docs/components/fields/PeriodPicker.md +7 -17
  626. package/docs/components/fields/Picker.md +54 -29
  627. package/docs/components/fields/RadioGroup.md +13 -5
  628. package/docs/components/fields/SearchComboBox.md +3 -0
  629. package/docs/components/fields/SearchInput.md +4 -2
  630. package/docs/components/fields/Select.md +23 -13
  631. package/docs/components/fields/Switch.md +3 -0
  632. package/docs/components/fields/TextInput.md +3 -0
  633. package/docs/components/fields/TextInputMapper.md +1 -2
  634. package/docs/components/form/Field.md +5 -2
  635. package/docs/components/form/Form.md +5 -0
  636. package/docs/components/form/FormInstance.md +1 -1
  637. package/docs/components/helpers/DisplayTransition.md +10 -6
  638. package/docs/components/helpers/IconSwitch.md +1 -0
  639. package/docs/components/layout/Board.md +79 -213
  640. package/docs/components/navigation/Pagination.md +36 -75
  641. package/docs/components/navigation/Tabs.md +3 -15
  642. package/docs/components/other/Calendar.md +22 -39
  643. package/docs/components/other/CubeLogo.md +1 -1
  644. package/docs/components/overlays/Dialog.md +3 -0
  645. package/docs/components/overlays/DialogContainer.md +2 -0
  646. package/docs/components/overlays/DialogForm.md +6 -2
  647. package/docs/components/overlays/DialogTrigger.md +4 -2
  648. package/docs/components/overlays/Notifications.md +7 -0
  649. package/docs/components/overlays/Toast.md +12 -8
  650. package/docs/components/overlays/Tooltip.md +7 -3
  651. package/docs/components/overlays/UseDialogContainer.md +16 -10
  652. package/docs/components/status/LoadingAnimation.md +3 -9
  653. package/docs/tasty/configuration.md +195 -15
  654. package/docs/tasty/dsl.md +40 -5
  655. package/docs/tasty/injector.md +11 -0
  656. package/docs/tasty/methodology.md +1 -1
  657. package/docs/tasty/pipeline.md +1 -4
  658. package/docs/tasty/react-api.md +1 -1
  659. package/docs/tasty/styles.md +8 -1
  660. package/package.json +4 -4
  661. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +0 -2
  662. package/dist/components/portal/PortalProvider.d.ts +0 -2
  663. package/dist/tokens/index.js.map +0 -1
package/docs/Usage.md CHANGED
@@ -16,7 +16,7 @@ For styling engine internals see the [Tasty documentation](./tasty/usage.md). Ta
16
16
  Tasty provides custom units that map to CSS custom properties defined on the Root component. Use these instead of raw pixel values to keep styling consistent.
17
17
 
18
18
  | Unit | CSS Variable | Example | Computed (defaults) |
19
- |------|-------------|---------|---------------------|
19
+ | --- | --- | --- | --- |
20
20
  | `x` | `var(--gap)` | `2x` → `calc(var(--gap) * 2)` | 16px |
21
21
  | `r` | `var(--radius)` | `1r` → `var(--radius)` | 6px |
22
22
  | `cr` | `var(--card-radius)` | `1cr` → `var(--card-radius)` | 10px |
@@ -28,7 +28,7 @@ Tasty provides custom units that map to CSS custom properties defined on the Roo
28
28
  These CSS custom properties are defined in `src/tokens/base.ts` and applied globally.
29
29
 
30
30
  | Token | Default | Description |
31
- |-------|---------|-------------|
31
+ | --- | --- | --- |
32
32
  | `$gap` | `8px` | Base spacing unit (used with `x` multiplier) |
33
33
  | `$radius` | `6px` | Base border radius (used with `r` multiplier) |
34
34
  | `$border-width` | `1px` | Base border width (used with `bw` multiplier) |
@@ -47,20 +47,20 @@ These CSS custom properties are defined in `src/tokens/base.ts` and applied glob
47
47
 
48
48
  Defined in `src/tokens/spacing.ts`. Values use the `x` unit.
49
49
 
50
- | Token | Value | Computed (gap=8px) |
51
- |-------|-------|-------------------|
52
- | `$space-xs` | `0.5x` | 4px |
53
- | `$space-sm` | `0.75x` | 6px |
54
- | `$space-md` | `1x` | 8px |
55
- | `$space-lg` | `1.5x` | 12px |
56
- | `$space-xl` | `2x` | 16px |
50
+ | Token | Value | Computed (gap=8px) |
51
+ | ----------- | ------- | ------------------ |
52
+ | `$space-xs` | `0.5x` | 4px |
53
+ | `$space-sm` | `0.75x` | 6px |
54
+ | `$space-md` | `1x` | 8px |
55
+ | `$space-lg` | `1.5x` | 12px |
56
+ | `$space-xl` | `2x` | 16px |
57
57
 
58
58
  ## Size Tokens
59
59
 
60
60
  Defined in `src/tokens/sizes.ts`. Used for component heights and icon sizes.
61
61
 
62
- | Token | Value |
63
- |-------|-------|
62
+ | Token | Value |
63
+ | ---------- | ------ |
64
64
  | `$size-xs` | `24px` |
65
65
  | `$size-sm` | `28px` |
66
66
  | `$size-md` | `32px` |
@@ -71,22 +71,22 @@ Defined in `src/tokens/sizes.ts`. Used for component heights and icon sizes.
71
71
 
72
72
  Defined in `src/tokens/shadows.ts`. Shadow colors (`#shadow-sm`, `#shadow-md`, `#shadow-lg`) are generated by Glaze and adapt automatically to dark / high-contrast schemes.
73
73
 
74
- | Token | Value |
75
- |-------|-------|
76
- | `$item-shadow` | `0 1bw 0.375x #shadow-sm` |
77
- | `$card-shadow` | `0 0.5x 2x #shadow-md` |
78
- | `$shadow` | `0 0.5x 2x #shadow-md` |
79
- | `$dialog-shadow` | `0 1x 4x #shadow-lg` |
74
+ | Token | Value |
75
+ | ---------------- | ------------------------- |
76
+ | `$item-shadow` | `0 1bw 0.375x #shadow-sm` |
77
+ | `$card-shadow` | `0 0.5x 2x #shadow-md` |
78
+ | `$shadow` | `0 0.5x 2x #shadow-md` |
79
+ | `$dialog-shadow` | `0 1x 4x #shadow-lg` |
80
80
 
81
81
  ## Layout Tokens
82
82
 
83
83
  Defined in `src/tokens/layout.ts`.
84
84
 
85
- | Token | Value |
86
- |-------|-------|
85
+ | Token | Value |
86
+ | -------------------- | -------- |
87
87
  | `$max-content-width` | `1440px` |
88
- | `$topbar-height` | `48px` |
89
- | `$sidebar-width` | `200px` |
88
+ | `$topbar-height` | `48px` |
89
+ | `$sidebar-width` | `200px` |
90
90
 
91
91
  ## Color Tokens
92
92
 
@@ -118,7 +118,7 @@ When the attribute is absent, the scheme falls back to `@media (prefers-color-sc
118
118
  The neutral palette uses a `surface` / `surface-text` model. Each surface depth has its own AAA text color, plus a soft (AA) variant for secondary copy:
119
119
 
120
120
  | Token | Role |
121
- |-------|------|
121
+ | --- | --- |
122
122
  | `#surface` | Primary background |
123
123
  | `#surface-2` | Slightly recessed background (cards, inputs) |
124
124
  | `#surface-3` | Deepest background (panels, code blocks) |
@@ -132,7 +132,7 @@ The neutral palette uses a `surface` / `surface-text` model. Each surface depth
132
132
  ### Other Neutral Tokens
133
133
 
134
134
  | Token | Role |
135
- |-------|------|
135
+ | --- | --- |
136
136
  | `#border` | Default border color |
137
137
  | `#placeholder` | Input placeholder text |
138
138
  | `#focus` | Focus ring color |
@@ -144,20 +144,13 @@ The neutral palette uses a `surface` / `surface-text` model. Each surface depth
144
144
 
145
145
  ### Context Hooks
146
146
 
147
- Tokens a **container** sets to steer a component that cannot resolve the color on
148
- its own. They ship with a default, so nothing has to be set unless the default is
149
- wrong.
147
+ Tokens a **container** sets to steer a component that cannot resolve the color on its own. They ship with a default, so nothing has to be set unless the default is wrong.
150
148
 
151
149
  | Token | Default | Role |
152
- |-------|---------|------|
150
+ | --- | --- | --- |
153
151
  | `#current-fill` | `#surface` | The label color `current.primary` punches out of its `currentcolor` chip — read by that one flavour and nothing else |
154
152
 
155
- `theme="current" type="primary"` fills with the color it **inherits**, so its
156
- label cannot come from that color too and reads `#current-fill` instead. The page
157
- (`#surface`) is the right answer almost everywhere, and wrong in exactly one
158
- place: a container whose own text color is the page paints `#white`, which *is*
159
- `#surface` in light mode, so the label would vanish into its own chip. Such a container sets
160
- the token to its own fill, which contrasts with its own text by construction:
153
+ `theme="current" type="primary"` fills with the color it **inherits**, so its label cannot come from that color too and reads `#current-fill` instead. The page (`#surface`) is the right answer almost everywhere, and wrong in exactly one place: a container whose own text color is the page paints `#white`, which _is_ `#surface` in light mode, so the label would vanish into its own chip. Such a container sets the token to its own fill, which contrasts with its own text by construction:
161
154
 
162
155
  ```jsx
163
156
  <Block fill="#fixed-dark" color="#white" styles={{ '#current-fill': '#fixed-dark' }}>
@@ -165,16 +158,14 @@ the token to its own fill, which contrasts with its own text by construction:
165
158
  </Block>
166
159
  ```
167
160
 
168
- Setting it moves the label, the icon slots and the chip's rim together. It also
169
- takes the alpha suffix like any other token (`#current-fill.5` is the disabled
170
- label), because it is a declared token rather than a bare custom property.
161
+ Setting it moves the label, the icon slots and the chip's rim together. It also takes the alpha suffix like any other token (`#current-fill.5` is the disabled label), because it is a declared token rather than a bare custom property.
171
162
 
172
163
  ### Accent System
173
164
 
174
165
  Each themed color (default, primary, success, danger, warning, note) provides an `accent-*` family anchored to a fixed white "accent surface text". These tokens stay recognizable across schemes (used for branded buttons, CTAs, etc.):
175
166
 
176
167
  | Token (default theme; prefixed in others) | Role |
177
- |-------|------|
168
+ | --- | --- |
178
169
  | `#accent-surface` | Saturated brand fill (button bg) |
179
170
  | `#accent-surface-2`, `#accent-surface-3` | Darker / more saturated variants |
180
171
  | `#accent-surface-text` | Near-white text on accent fill |
@@ -187,15 +178,15 @@ In the `default` theme these tokens are unprefixed (`#accent-surface`). In color
187
178
 
188
179
  Each colored theme (`primary`, `purple`, `success`, `danger`, `warning`, `note`) also provides its own tinted `<theme>-surface` (banner / chip background) and `<theme>-surface-text` (banner text).
189
180
 
190
- The hues below are the *defaults*; each is tunable at runtime (see [Theming](./Theming.md)).
181
+ The hues below are the _defaults_; each is tunable at runtime (see [Theming](./Theming.md)).
191
182
 
192
- | Group | Default hue | Purpose |
193
- |-------|-------------|---------|
194
- | `#primary-*` / `#purple-*` | 280.3° | Primary actions, brand color |
195
- | `#success-*` | 156.9° | Success states, confirmations |
196
- | `#danger-*` | 23.1° | Errors, destructive actions |
197
- | `#warning-*` | 84.3° | Warning states, caution |
198
- | `#note-*` | 302.3° | Informational notes |
183
+ | Group | Default hue | Purpose |
184
+ | -------------------------- | ----------- | ----------------------------- |
185
+ | `#primary-*` / `#purple-*` | 280.3° | Primary actions, brand color |
186
+ | `#success-*` | 156.9° | Success states, confirmations |
187
+ | `#danger-*` | 23.1° | Errors, destructive actions |
188
+ | `#warning-*` | 84.3° | Warning states, caution |
189
+ | `#note-*` | 302.3° | Informational notes |
199
190
 
200
191
  For example, a success banner uses `fill: '#success-surface'` + `color: '#success-surface-text'`, while a primary button uses `fill: '#primary-accent-surface'` + `color: '#primary-accent-surface-text'`.
201
192
 
@@ -212,7 +203,7 @@ resetPaletteConfig();
212
203
 
213
204
  Also available: `getPaletteConfig()`, `subscribePaletteConfig()`, the `usePaletteConfig()` hook, a `<Root palette={…}>` prop, `DEFAULT_PALETTE_CONFIG`, and `invalidatePaletteTokens()` for when you drive `glaze.configure(...)` yourself after mount. The palette is process-global — one palette per process, not per tree or per request.
214
205
 
215
- To theme a *region* instead of the document — a theme preview, or a dark panel inside a light page — use `renderColorTokens()`. It resolves one config and one scheme to flat values you apply via a `tokens` prop, without touching the live palette:
206
+ To theme a _region_ instead of the document — a theme preview, or a dark panel inside a light page — use `renderColorTokens()`. It resolves one config and one scheme to flat values you apply via a `tokens` prop, without touching the live palette:
216
207
 
217
208
  ```tsx
218
209
  <Block tokens={renderColorTokens({ accent: { hue: 210 }, scheme: 'dark' })} fill="#surface">
@@ -226,27 +217,27 @@ Full contract, caveats and a live playground: [Theming](./Theming.md).
226
217
 
227
218
  The previous token names continue to work as aliases (defined at the bottom of `src/tokens/colors.ts`). New code should prefer the Glaze tokens, but existing components do not need to be migrated:
228
219
 
229
- | Legacy | Resolves to |
230
- |-------|------------|
231
- | `#text` | `#surface-text-soft` |
232
- | `#dark` / `#dark-01` | `#surface-text` |
233
- | `#dark-02` | `#surface-text-soft` |
234
- | `#dark-03` | `#surface-text-soft-2` |
235
- | `#dark-04` | `#placeholder` |
236
- | `#dark-05` | `#border` |
237
- | `#minor` | `#surface-text-soft.65` |
238
- | `#shadow` | `#shadow-md` |
239
- | `#light` | `#surface-3` |
240
- | `#dark-bg` | `#surface-2` |
241
- | `#primary` / `#purple` | `#primary-accent-surface` |
242
- | `#primary-text` / `#purple-text` | `#primary-accent-text` |
243
- | `#primary-bg` / `#purple-bg` | `#primary-surface` |
244
- | `#primary-icon` / `#purple-icon` | `#primary-accent-icon` |
245
- | `#<status>` | `#<status>-accent-surface` |
246
- | `#<status>-text` | `#<status>-accent-text` |
247
- | `#<status>-bg` | `#<status>-surface` |
248
- | `#<status>-icon` | `#<status>-accent-icon` |
249
- | `#<status>-disabled` | `#disabled` |
220
+ | Legacy | Resolves to |
221
+ | -------------------------------- | -------------------------- |
222
+ | `#text` | `#surface-text-soft` |
223
+ | `#dark` / `#dark-01` | `#surface-text` |
224
+ | `#dark-02` | `#surface-text-soft` |
225
+ | `#dark-03` | `#surface-text-soft-2` |
226
+ | `#dark-04` | `#placeholder` |
227
+ | `#dark-05` | `#border` |
228
+ | `#minor` | `#surface-text-soft.65` |
229
+ | `#shadow` | `#shadow-md` |
230
+ | `#light` | `#surface-3` |
231
+ | `#dark-bg` | `#surface-2` |
232
+ | `#primary` / `#purple` | `#primary-accent-surface` |
233
+ | `#primary-text` / `#purple-text` | `#primary-accent-text` |
234
+ | `#primary-bg` / `#purple-bg` | `#primary-surface` |
235
+ | `#primary-icon` / `#purple-icon` | `#primary-accent-icon` |
236
+ | `#<status>` | `#<status>-accent-surface` |
237
+ | `#<status>-text` | `#<status>-accent-text` |
238
+ | `#<status>-bg` | `#<status>-surface` |
239
+ | `#<status>-icon` | `#<status>-accent-icon` |
240
+ | `#<status>-disabled` | `#disabled` |
250
241
 
251
242
  `#white`, `#black`, and `#clear` are not defined in the palette — `#white` and `#black` are tasty's built-in named colors, and `#clear` is an alias for `transparent`.
252
243
 
@@ -259,74 +250,95 @@ Defined in `src/tokens/typography.ts`.
259
250
  ### Headings
260
251
 
261
252
  | Preset | Size | Line Height | Weight |
262
- |--------|------|-------------|--------|
263
- | `h1` | 36px | 44px | 600 |
264
- | `h2` | 24px | 32px | 600 |
265
- | `h3` | 20px | 28px | 600 |
266
- | `h4` | 18px | 24px | 600 |
267
- | `h5` | 16px | 22px | 600 |
268
- | `h6` | 14px | 20px | 600 |
253
+ | ------ | ---- | ----------- | ------ |
254
+ | `h1` | 36px | 44px | 600 |
255
+ | `h2` | 24px | 32px | 600 |
256
+ | `h3` | 20px | 28px | 600 |
257
+ | `h4` | 18px | 24px | 600 |
258
+ | `h5` | 16px | 22px | 600 |
259
+ | `h6` | 14px | 20px | 600 |
269
260
 
270
261
  ### Text
271
262
 
272
- | Preset | Size | Line Height | Weight | Notes |
273
- |--------|------|-------------|--------|-------|
274
- | `t1` | 18px | 24px | 400 | |
275
- | `t2` | 16px | 22px | 400 | |
276
- | `t2m` | 16px | 22px | 500 | Medium weight variant |
277
- | `t3` | 14px | 20px | 400 | Base text size |
278
- | `t3m` | 14px | 20px | 500 | Medium weight variant |
279
- | `t4` | 12px | 18px | 500 | Small text |
280
- | `t4m` | 12px | 18px | 600 | Small text, semi-bold |
263
+ | Preset | Size | Line Height | Weight | Notes |
264
+ | ------ | ---- | ----------- | ------ | --------------------- |
265
+ | `t1` | 18px | 24px | 400 | |
266
+ | `t2` | 16px | 22px | 400 | |
267
+ | `t2m` | 16px | 22px | 500 | Medium weight variant |
268
+ | `t3` | 14px | 20px | 400 | Base text size |
269
+ | `t3m` | 14px | 20px | 500 | Medium weight variant |
270
+ | `t4` | 12px | 18px | 500 | Small text |
271
+ | `t4m` | 12px | 18px | 600 | Small text, semi-bold |
281
272
 
282
273
  ### Paragraph
283
274
 
284
275
  Paragraph presets have slightly increased line heights compared to text presets at the same size, optimized for multi-line reading.
285
276
 
286
277
  | Preset | Size | Line Height | Weight |
287
- |--------|------|-------------|--------|
288
- | `p1` | 18px | 28px | 400 |
289
- | `p2` | 16px | 24px | 400 |
290
- | `p3` | 14px | 22px | 400 |
291
- | `p4` | 12px | 20px | 500 |
278
+ | ------ | ---- | ----------- | ------ |
279
+ | `p1` | 18px | 28px | 400 |
280
+ | `p2` | 16px | 24px | 400 |
281
+ | `p3` | 14px | 22px | 400 |
282
+ | `p4` | 12px | 20px | 500 |
292
283
 
293
284
  ### Markdown / Prose
294
285
 
295
286
  Largest line heights, designed for long-form content blocks.
296
287
 
297
288
  | Preset | Size | Line Height | Weight |
298
- |--------|------|-------------|--------|
299
- | `m1` | 18px | 32px | 400 |
300
- | `m2` | 16px | 28px | 400 |
301
- | `m3` | 14px | 24px | 400 |
289
+ | ------ | ---- | ----------- | ------ |
290
+ | `m1` | 18px | 32px | 400 |
291
+ | `m2` | 16px | 28px | 400 |
292
+ | `m3` | 14px | 24px | 400 |
302
293
 
303
294
  ### Snippet / Monospace
304
295
 
305
296
  Sized to parallel `t2`–`t4`. Each preset sets `font-family` to `var(--font-mono)` (the design-system monospace stack from `Root`).
306
297
 
307
- | Preset | Size | Line Height | Weight | Notes |
308
- |--------|------|-------------|--------|-------|
309
- | `s2` | 16px | 22px | 400 | Larger code / snippet text |
310
- | `s3` | 14px | 20px | 400 | Default snippet size (matches Prism) |
311
- | `s4` | 12px | 18px | 400 | Compact code / snippet text |
298
+ | Preset | Size | Line Height | Weight | Notes |
299
+ | ------ | ---- | ----------- | ------ | ------------------------------------ |
300
+ | `s2` | 16px | 22px | 400 | Larger code / snippet text |
301
+ | `s3` | 14px | 20px | 400 | Default snippet size (matches Prism) |
302
+ | `s4` | 12px | 18px | 400 | Compact code / snippet text |
312
303
 
313
304
  ### Special Presets
314
305
 
315
- | Preset | Description |
316
- |--------|-------------|
317
- | `c1` | 14px, weight 600, uppercase — section captions |
318
- | `c2` | 12px, weight 600, uppercase — small captions |
319
- | `tag` | 12px, weight 600 — tag/badge text |
320
- | `strong` | Inherits everything, applies bold weight |
321
- | `em` | Inherits everything, applies italic style |
322
- | `default` | Aliases `t3` values — the base text style |
306
+ | Preset | Description |
307
+ | --------- | ---------------------------------------------- |
308
+ | `c1` | 14px, weight 600, uppercase — section captions |
309
+ | `c2` | 12px, weight 600, uppercase — small captions |
310
+ | `tag` | 12px, weight 600 — tag/badge text |
311
+ | `strong` | Inherits everything, applies bold weight |
312
+ | `em` | Inherits everything, applies italic style |
313
+ | `default` | Aliases `t3` values — the base text style |
314
+
315
+ ## Resolving Tokens Outside CSS
316
+
317
+ Some surfaces cannot take a `var(--…)` reference — a third-party iframe (Stripe Elements), a CodeMirror or Monaco theme object, a Vega spec. Those take colors, lengths and font descriptors as values, so they need the token _resolved_. `resolveTokenValue()` and its siblings read that value out of the DOM, from the element `Root` declares the tokens on, and refuse to hand back a placeholder.
318
+
319
+ ```ts
320
+ import { resolvePresetValues, resolveTokenValue, resolveTokenValues } from '@cube-dev/ui-kit';
321
+
322
+ resolveTokenValue('#purple'); // 'oklch(0.571 0.0971 280.3)'
323
+ resolveTokenValue('$space-md'); // '8px'
324
+ resolveTokenValues(['#surface', '#surface-text', '#border']); // keyed by the tokens as written
325
+ resolvePresetValues('s3'); // { fontFamily: 'ui-monospace, …', fontSize: '14px', lineHeight: '20px', … }
326
+ ```
327
+
328
+ `useTokenValue()`, `useTokenValues()` and `usePresetValues()` are the same three readers as hooks, re-resolved whenever the palette is re-seeded or the scheme / contrast tier flips. The object `useTokenValues()` returns keeps its identity while the values do, so it is safe as a dependency of the theme object built from it.
329
+
330
+ So these helpers do not inspect the value. They read `$tokens-applied`, a marker the token block declares alongside the tokens, which answers the question that matters — _are the kit's tokens in effect on this element?_ Off that surface every read returns `null` (or `fallback`) and warns once in development; on it, the computed value is taken as the truth.
331
+
332
+ All six take `{ element, fallback }`. Pass `element` to read a _local_ override instead of the document — a subtree carrying its own `tokens` prop (`renderColorTokens()`), or one under a `data-schema` / `data-contrast` that differs from the document's. Pass `fallback` for the value to use when a token cannot be resolved, including during SSR, where there is no DOM to read.
333
+
334
+ **Why `getComputedStyle` by hand does not work.** `Root` declares the token block on `<body>`, so `<html>`, a detached node, and a tree that has not mounted `Root` yet are all outside it — and a token read from outside does not come back empty. Tasty registers `@property` rules with real `initial-value`s, so `--gap` reads `4px` there rather than the kit's `8px`, `--radius` reads `6px`, `--transition` reads `80ms`. The value looks entirely ordinary and is simply wrong. Inspecting it cannot help in the other direction either: `#clear` really is `transparent` and `$h2-letter-spacing` really is `0px`, indistinguishable from an unset property of the same type.
323
335
 
324
336
  ## Themes
325
337
 
326
338
  Component themes are set via the `theme` prop or `theme=name` modifier:
327
339
 
328
340
  | Theme | Purpose |
329
- |-------|---------|
341
+ | --- | --- |
330
342
  | `default` | Standard appearance |
331
343
  | `danger` | Destructive / error actions |
332
344
  | `special` | Highlighted / promoted actions |
@@ -340,7 +352,7 @@ Component themes are set via the `theme` prop or `theme=name` modifier:
340
352
  Reusable style presets applied via the `recipe` style property. Defined in `src/components/Root.tsx`.
341
353
 
342
354
  | Recipe | Purpose |
343
- |--------|---------|
355
+ | --- | --- |
344
356
  | `reset` | Zero out margin, padding, border, outline; set `box-sizing: border-box` |
345
357
  | `button` | Base button appearance: no native styling, `touch-action: manipulation` |
346
358
  | `input` | Base input appearance: no native styling, inherit color |
@@ -353,7 +365,7 @@ Reusable style presets applied via the `recipe` style property. Defined in `src/
353
365
  These are data-attribute modifiers used in component style maps (via the `mods` prop):
354
366
 
355
367
  | Modifier | Description |
356
- |----------|-------------|
368
+ | --- | --- |
357
369
  | `disabled` | Disabled state |
358
370
  | `hovered` | Hover state |
359
371
  | `focused` | Focus state |
@@ -395,38 +407,17 @@ Icons live in `src/icons/`. Use existing icons when possible; otherwise use `@ta
395
407
  - Always wrap tabler icons with `<Icon>` for custom size/color. Never add props directly to tabler icons.
396
408
  - To add new icons run: `pnpm add-icons`
397
409
 
398
- Illustrations are not icons and do not live in `src/icons/`: `CubeLogo` and
399
- `NoDataIcon` are `Icon`-based components under `src/components/other/`. They size
400
- like an icon, but `NoDataIcon` is a three-tone drawing on the shared cube-face
401
- tokens (`#loading-face-1` … `#loading-face-3`) rather than a `currentColor`
402
- glyph, so it ignores `color` and belongs at illustration sizes (`size="8x"` and
403
- up).
410
+ Illustrations are not icons and do not live in `src/icons/`: `CubeLogo` and `NoDataIcon` are `Icon`-based components under `src/components/other/`. They size like an icon, but `NoDataIcon` is a three-tone drawing on the shared cube-face tokens (`#loading-face-1` … `#loading-face-3`) rather than a `currentColor` glyph, so it ignores `color` and belongs at illustration sizes (`size="8x"` and up).
404
411
 
405
412
  ## Hierarchical Table Rows
406
413
 
407
- `ItemTable` and `DataTable` opt into native treegrid behavior with
408
- `getRowChildren`. Pass roots in `data`; the callback returns already-loaded
409
- children, and row keys must be globally unique. Expansion is uncontrolled with
410
- `defaultExpandedKeys` or controlled with `expandedKeys` / `onExpand`.
411
-
412
- The shared table engine recursively sorts siblings, paginates roots with their
413
- complete subtrees, and flattens only expanded rows for rendering and
414
- virtualization. ItemTable client search preserves ancestor paths and temporarily
415
- opens branches containing matches. Server modes do not transform nested data.
416
-
417
- Use `treeColumnKey` to choose the disclosure/indent column. Its hierarchy chrome
418
- is customizable through the `TreeContent`, `TreeToggle`, and `TreeValue`
419
- sub-elements. ItemTable multiple selection cascades by default; DataTable cell
420
- ranges contain visible rows only. See each component's docs for pagination,
421
- numbering, selection, and drag/drop limits.
422
-
423
- DataTable also accepts nested column definitions for already-shaped pivot
424
- results. Group nodes create accessible multi-row headers with native column
425
- spans, while sorting, resizing, ranges and copying continue to operate on their
426
- leaf columns. Both tables fill an available flex pane by default; use
427
- `isAutoHeight` for a compact result whose frame should end at its last rendered
428
- row. Auto-height renders every row, so bounded tables remain the right choice
429
- for large results.
414
+ `ItemTable` and `DataTable` opt into native treegrid behavior with `getRowChildren`. Pass roots in `data`; the callback returns already-loaded children, and row keys must be globally unique. Expansion is uncontrolled with `defaultExpandedKeys` or controlled with `expandedKeys` / `onExpand`.
415
+
416
+ The shared table engine recursively sorts siblings, paginates roots with their complete subtrees, and flattens only expanded rows for rendering and virtualization. ItemTable client search preserves ancestor paths and temporarily opens branches containing matches. Server modes do not transform nested data.
417
+
418
+ Use `treeColumnKey` to choose the disclosure/indent column. Its hierarchy chrome is customizable through the `TreeContent`, `TreeToggle`, and `TreeValue` sub-elements. ItemTable multiple selection cascades by default; DataTable cell ranges contain visible rows only. See each component's docs for pagination, numbering, selection, and drag/drop limits.
419
+
420
+ DataTable also accepts nested column definitions for already-shaped pivot results. Group nodes create accessible multi-row headers with native column spans, while sorting, resizing, ranges and copying continue to operate on their leaf columns. Both tables fill an available flex pane by default; use `isAutoHeight` for a compact result whose frame should end at its last rendered row. Auto-height renders every row, so bounded tables remain the right choice for large results.
430
421
 
431
422
  ## Form System
432
423
 
@@ -457,7 +448,7 @@ Returns a `CubeFormInstance` with:
457
448
  Async rule-based system. Each rule is an object with one of these properties:
458
449
 
459
450
  | Rule | Description |
460
- |------|-------------|
451
+ | --- | --- |
461
452
  | `required` | Field must have a value |
462
453
  | `type` | Type check: `email`, `url`, `number`, `integer`, `date`, `hex`, etc. |
463
454
  | `pattern` | Regex pattern match |
package/docs/Utilities.md CHANGED
@@ -36,7 +36,7 @@ function extractStyles(
36
36
  ### Predefined style lists
37
37
 
38
38
  | List | Contains |
39
- |------|----------|
39
+ | --- | --- |
40
40
  | `BASE_STYLES` | `display`, `font`, `preset`, `hide`, `whiteSpace`, `opacity`, `transition` |
41
41
  | `POSITION_STYLES` | `gridArea`, `order`, `gridColumn`, `gridRow`, `placeSelf`, `alignSelf`, `justifySelf`, `zIndex`, `margin`, `inset`, `position` |
42
42
  | `DIMENSION_STYLES` | `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex` |
@@ -144,7 +144,7 @@ function filterBaseProps(
144
144
  ### What passes through
145
145
 
146
146
  | Category | Examples |
147
- |----------|----------|
147
+ | --- | --- |
148
148
  | DOM ids | `id` |
149
149
  | Base props | `role`, `as`, `children`, `style`, `className`, `href`, `target`, `tabIndex`, `hidden`, `disabled` |
150
150
  | ARIA attributes | `aria-label`, `aria-describedby`, etc. |
@@ -85,6 +85,7 @@ const items = [{
85
85
  ```
86
86
 
87
87
  **Always provide explicit `textValue` for:**
88
+
88
89
  - Icons/images without text
89
90
  - Formatted/complex content
90
91
  - Non-readable keys (UUIDs)
@@ -48,6 +48,7 @@ Supports [Base properties](../../BaseProperties.md)
48
48
  Customizes the root element of the component.
49
49
 
50
50
  **Sub-elements:**
51
+
51
52
  - `Label` - The main text content area
52
53
  - `Actions` - Container for action buttons
53
54
 
@@ -195,13 +195,7 @@ import { IconPlus } from '@tabler/icons-react';
195
195
  </Button>;
196
196
  ```
197
197
 
198
- A disabled button keeps showing its tooltip. Browsers stop dispatching mouse
199
- events on elements carrying the native `disabled` attribute, so a button that
200
- has a tooltip is marked with `aria-disabled` instead and kept inert: `onPress`
201
- never fires and clicks (including the ones Enter and Space produce) do nothing.
202
- Such a button also stays in the tab order, so keyboard users can focus it and
203
- read the tooltip. Buttons rendered as links (`to`) are always marked this way,
204
- since `disabled` is not a valid attribute on an anchor.
198
+ A disabled button keeps showing its tooltip. Browsers stop dispatching mouse events on elements carrying the native `disabled` attribute, so a button that has a tooltip is marked with `aria-disabled` instead and kept inert: `onPress` never fires and clicks (including the ones Enter and Space produce) do nothing. Such a button also stays in the tab order, so keyboard users can focus it and read the tooltip. Buttons rendered as links (`to`) are always marked this way, since `disabled` is not a valid attribute on an anchor.
205
199
 
206
200
  ### Custom Size
207
201
 
@@ -234,35 +228,21 @@ since `disabled` is not a valid attribute on an anchor.
234
228
 
235
229
  - `aria-label`, `aria-labelledby` – Accessible name.
236
230
  - `aria-pressed` – Managed automatically when `isSelected` is used.
237
- - `aria-disabled` – Announces the disabled state whenever the native `disabled`
238
- attribute cannot be used: on links, and on buttons that carry a tooltip.
231
+ - `aria-disabled` – Announces the disabled state whenever the native `disabled` attribute cannot be used: on links, and on buttons that carry a tooltip.
239
232
  - Additional ARIA attributes supported by React Aria's `useButton`.
240
233
 
241
234
  ## Behaviour Inside Popovers
242
235
 
243
- By default, pressing a `Button` inside an open popover (any overlay that
244
- uses `usePopoverSync` — including the popovers rendered by `FilterPicker`,
245
- `Picker`, `ComboBox`, `Select`, `MenuTrigger`, and
246
- `DialogTrigger type="popover"`) **dismisses that popover** after the user's
247
- `onPress` runs. This matches the common UX where a popover is a transient
248
- surface: any action inside it should close it.
236
+ By default, pressing a `Button` inside an open popover (any overlay that uses `usePopoverSync` — including the popovers rendered by `FilterPicker`, `Picker`, `ComboBox`, `Select`, `MenuTrigger`, and `DialogTrigger type="popover"`) **dismisses that popover** after the user's `onPress` runs. This matches the common UX where a popover is a transient surface: any action inside it should close it.
249
237
 
250
- Modal / tray / fullscreen Dialogs are **not** affected — a Button inside a
251
- modal Dialog does not auto-close it.
238
+ Modal / tray / fullscreen Dialogs are **not** affected — a Button inside a modal Dialog does not auto-close it.
252
239
 
253
240
  ### Opt-outs
254
241
 
255
242
  There are three ways to keep the popover open when a Button is pressed:
256
243
 
257
- 1. **Automatic for popover triggers.** Buttons that act as popover triggers
258
- already carry `data-popover-trigger` (applied by `MenuTrigger`,
259
- `DialogTrigger type="popover"`, `FilterPicker`, `Picker`, `ComboBox`,
260
- `Select`). Modal-type `DialogTrigger` children are **not** marked, so they
261
- correctly dismiss the parent popover and let the modal take over.
262
- 2. **Manual via `data-popover-keep`.** Add the attribute to the button
263
- (toggle case) or to any ancestor element (subtree case — useful when a
264
- custom inline editor inside a popover footer should not collapse on
265
- every interaction):
244
+ 1. **Automatic for popover triggers.** Buttons that act as popover triggers already carry `data-popover-trigger` (applied by `MenuTrigger`, `DialogTrigger type="popover"`, `FilterPicker`, `Picker`, `ComboBox`, `Select`). Modal-type `DialogTrigger` children are **not** marked, so they correctly dismiss the parent popover and let the modal take over.
245
+ 2. **Manual via `data-popover-keep`.** Add the attribute to the button (toggle case) or to any ancestor element (subtree case — useful when a custom inline editor inside a popover footer should not collapse on every interaction):
266
246
 
267
247
  ```jsx
268
248
  <Button data-popover-keep onPress={() => setMode((m) => !m)}>
@@ -274,9 +254,7 @@ There are three ways to keep the popover open when a Button is pressed:
274
254
  </div>
275
255
  ```
276
256
 
277
- 3. **Custom non-Cube triggers.** Call `useDismissParentPopover()` yourself if
278
- your control should dismiss the popover but does not extend `Button` /
279
- `ItemButton`:
257
+ 3. **Custom non-Cube triggers.** Call `useDismissParentPopover()` yourself if your control should dismiss the popover but does not extend `Button` / `ItemButton`:
280
258
  ```jsx
281
259
  const dismiss = useDismissParentPopover();
282
260
  <MyCustomPressable
@@ -289,13 +267,7 @@ There are three ways to keep the popover open when a Button is pressed:
289
267
 
290
268
  ### Async `onPress`
291
269
 
292
- The dismiss is dispatched via the EventBus, which defers with `setTimeout(0)`.
293
- This means synchronous `onPress` handlers (and any React state updates they
294
- trigger) flush **before** the popover closes — including the common case of
295
- opening a hoisted modal via `useDialogContainer` from a popover footer (the
296
- modal mounts first, then the popover closes behind it). If your `onPress` is
297
- async and `await`s before opening another overlay, the popover will close
298
- first and the new overlay will appear after — usually fine, but worth noting.
270
+ The dismiss is dispatched via the EventBus, which defers with `setTimeout(0)`. This means synchronous `onPress` handlers (and any React state updates they trigger) flush **before** the popover closes — including the common case of opening a hoisted modal via `useDialogContainer` from a popover footer (the modal mounts first, then the popover closes behind it). If your `onPress` is async and `await`s before opening another overlay, the popover will close first and the new overlay will appear after — usually fine, but worth noting.
299
271
 
300
272
  ## Best Practices
301
273
 
@@ -180,11 +180,13 @@ Use `actionProps`, `triggerProps`, and `menuProps` to customise individual parts
180
180
  ## Best Practices
181
181
 
182
182
  1. **Do**: Use strict mode for standard action+trigger patterns.
183
+
183
184
  ```jsx
184
185
  <Button.Split actions={actions} defaultActionKey="deploy" type="primary" />
185
186
  ```
186
187
 
187
188
  2. **Do**: Set `type` and `theme` on the wrapper instead of repeating on each child.
189
+
188
190
  ```jsx
189
191
  <Button.Split type="primary">
190
192
  <Button>Save</Button>
@@ -129,8 +129,8 @@ For detailed information about all available item properties, see the [Menu.Item
129
129
 
130
130
  ```jsx
131
131
  <CommandMenu searchPlaceholder="Search commands...">
132
- <CommandMenu.Item
133
- key="save"
132
+ <CommandMenu.Item
133
+ key="save"
134
134
  icon={<IconSave />}
135
135
  hotkeys="cmd+s"
136
136
  keywords={["write", "disk", "persist"]}
@@ -138,8 +138,8 @@ For detailed information about all available item properties, see the [Menu.Item
138
138
  >
139
139
  Save Document
140
140
  </CommandMenu.Item>
141
- <CommandMenu.Item
142
- key="help"
141
+ <CommandMenu.Item
142
+ key="help"
143
143
  icon={<IconHelp />}
144
144
  forceMount={true}
145
145
  description="Always visible help option"
@@ -358,10 +358,10 @@ function CommandMenuDialogContent({ onClose, ...args }) {
358
358
 
359
359
  return (
360
360
  <Dialog size="medium" isDismissable={false}>
361
- <CommandMenu
362
- width="100%"
363
- height="max(40x, 90vh)"
364
- size="medium"
361
+ <CommandMenu
362
+ width="100%"
363
+ height="max(40x, 90vh)"
364
+ size="medium"
365
365
  onAction={handleAction}
366
366
  {...args}
367
367
  >