@cube-dev/ui-kit 0.0.0-canary-1f0dd2c → 0.0.0-canary-1d27aa0

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 (625) hide show
  1. package/README.md +7 -4
  2. package/dist/README.md +7 -4
  3. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  4. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  5. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/dist/_internal/hooks/use-event.js +1 -1
  7. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  8. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  9. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  10. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  11. package/dist/_internal/hooks/use-warn.js +1 -1
  12. package/dist/components/Block.js +1 -1
  13. package/dist/components/CollectionItem.js +1 -1
  14. package/dist/components/GlobalStyles.js +1 -1
  15. package/dist/components/GridProvider.js +1 -1
  16. package/dist/components/HiddenInput.js +1 -1
  17. package/dist/components/Root.js +1 -1
  18. package/dist/components/actions/Action/Action.js +1 -1
  19. package/dist/components/actions/Banner/Banner.js +1 -1
  20. package/dist/components/actions/Button/Button.d.ts +0 -1
  21. package/dist/components/actions/Button/Button.js +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  24. package/dist/components/actions/ButtonSplit/context.js +1 -1
  25. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  26. package/dist/components/actions/CommandMenu/styled.js +1 -1
  27. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  28. package/dist/components/actions/ItemActionContext.js +1 -1
  29. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  30. package/dist/components/actions/Link/Link.js +1 -1
  31. package/dist/components/actions/Menu/Menu.js +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +1 -1
  33. package/dist/components/actions/Menu/MenuSection.js +1 -1
  34. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  35. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  36. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  37. package/dist/components/actions/Menu/context.js +1 -1
  38. package/dist/components/actions/Menu/styled.js +1 -1
  39. package/dist/components/actions/index.js +1 -1
  40. package/dist/components/actions/use-action.js +1 -1
  41. package/dist/components/actions/use-anchored-menu.js +1 -1
  42. package/dist/components/actions/use-context-menu.js +1 -1
  43. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  44. package/dist/components/content/Alert/Alert.js +1 -1
  45. package/dist/components/content/Alert/use-alert.js +1 -1
  46. package/dist/components/content/Avatar/Avatar.js +1 -1
  47. package/dist/components/content/Badge/Badge.js +1 -1
  48. package/dist/components/content/Card/Card.js +1 -1
  49. package/dist/components/content/Content.js +1 -1
  50. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  51. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  52. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  53. package/dist/components/content/Divider.js +1 -1
  54. package/dist/components/content/Footer.js +1 -1
  55. package/dist/components/content/Header.js +1 -1
  56. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  57. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  58. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  59. package/dist/components/content/Item/Item.js +1 -1
  60. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  61. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  62. package/dist/components/content/Layout/GridLayout.js +1 -1
  63. package/dist/components/content/Layout/Layout.js +1 -1
  64. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  65. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  66. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  67. package/dist/components/content/Layout/LayoutContent.js +1 -1
  68. package/dist/components/content/Layout/LayoutContext.js +1 -1
  69. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  70. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  71. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  72. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  73. package/dist/components/content/Layout/LayoutPane.js +1 -1
  74. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  75. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  76. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  77. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  78. package/dist/components/content/Layout/index.js +1 -1
  79. package/dist/components/content/Layout/utils.js +1 -1
  80. package/dist/components/content/Paragraph.js +1 -1
  81. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  82. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  83. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  84. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  85. package/dist/components/content/Result/Result.js +1 -1
  86. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  87. package/dist/components/content/Tag/Tag.js +1 -1
  88. package/dist/components/content/Text.d.ts +14 -14
  89. package/dist/components/content/Text.js +1 -1
  90. package/dist/components/content/TextItem/TextItem.js +1 -1
  91. package/dist/components/content/Title.js +1 -1
  92. package/dist/components/content/Tree/Tree.js +1 -1
  93. package/dist/components/content/Tree/TreeNode.js +1 -1
  94. package/dist/components/content/Tree/styled.js +1 -1
  95. package/dist/components/content/Tree/tree-index.js +1 -1
  96. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  97. package/dist/components/content/Tree/use-load-data.js +1 -1
  98. package/dist/components/content/highlightText.js +1 -1
  99. package/dist/components/content/use-auto-tooltip.js +1 -1
  100. package/dist/components/data/DataTable/DataTable.js +1 -1
  101. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  102. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  103. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  104. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  105. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  106. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  107. package/dist/components/data/TableBase/RowCollection.js +1 -1
  108. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  109. package/dist/components/data/TableBase/TableRow.js +1 -1
  110. package/dist/components/data/TableBase/TableView.js +1 -1
  111. package/dist/components/data/TableBase/column-menu.js +1 -1
  112. package/dist/components/data/TableBase/column-tint.js +1 -1
  113. package/dist/components/data/TableBase/row-menu.js +1 -1
  114. package/dist/components/data/TableBase/styled.d.ts +1 -2
  115. package/dist/components/data/TableBase/styled.js +1 -1
  116. package/dist/components/data/TableBase/table-tree.js +1 -1
  117. package/dist/components/data/TableBase/types.js +1 -1
  118. package/dist/components/data/TableBase/use-cell-selection.d.ts +0 -1
  119. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  120. package/dist/components/data/TableBase/use-column-order.js +1 -1
  121. package/dist/components/data/TableBase/use-container-width.js +1 -1
  122. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  123. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  124. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  125. package/dist/components/data/TableBase/use-table-search.js +1 -1
  126. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  127. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  128. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  129. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  130. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  131. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  132. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  133. package/dist/components/fields/Checkbox/context.js +1 -1
  134. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  135. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  136. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  137. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  138. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  139. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  140. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  141. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  142. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  143. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  144. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  145. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  146. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  147. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  148. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  149. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  150. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  151. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  152. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  153. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  154. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  155. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  156. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  157. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  158. package/dist/components/fields/DatePicker/period.js +1 -1
  159. package/dist/components/fields/DatePicker/props.js +1 -1
  160. package/dist/components/fields/DatePicker/utils.js +1 -1
  161. package/dist/components/fields/FileInput/FileInput.js +1 -1
  162. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  163. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  164. package/dist/components/fields/Input/Input.js +1 -1
  165. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  166. package/dist/components/fields/ListBox/ListBox.js +1 -1
  167. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  168. package/dist/components/fields/ListBoxPopover/index.d.ts +0 -1
  169. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  170. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  171. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  172. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  173. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  174. package/dist/components/fields/Picker/Picker.js +1 -1
  175. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  176. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  177. package/dist/components/fields/RadioGroup/context.js +1 -1
  178. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  179. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  180. package/dist/components/fields/Select/Select.js +1 -1
  181. package/dist/components/fields/Slider/Gradation.js +1 -1
  182. package/dist/components/fields/Slider/HueSlider.js +1 -1
  183. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  184. package/dist/components/fields/Slider/Slider.js +1 -1
  185. package/dist/components/fields/Slider/SliderBase.js +1 -1
  186. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  187. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  188. package/dist/components/fields/Slider/elements.js +1 -1
  189. package/dist/components/fields/Slider/index.js +1 -1
  190. package/dist/components/fields/Switch/Switch.js +1 -1
  191. package/dist/components/fields/TextArea/TextArea.js +1 -1
  192. package/dist/components/fields/TextInput/TextInput.js +1 -1
  193. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  194. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  195. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  196. package/dist/components/fields/color/ColorPanel.js +1 -1
  197. package/dist/components/fields/color/channels.js +1 -1
  198. package/dist/components/fields/color/color.js +1 -1
  199. package/dist/components/fields/color/context.js +1 -1
  200. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  201. package/dist/components/form/Form/Field.js +1 -1
  202. package/dist/components/form/Form/Form.js +1 -1
  203. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  204. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  205. package/dist/components/form/Form/SubmitError.js +1 -1
  206. package/dist/components/form/Form/index.js +1 -1
  207. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  208. package/dist/components/form/Form/use-field/use-field.js +1 -1
  209. package/dist/components/form/Form/use-form.js +1 -1
  210. package/dist/components/form/Form/validation.js +1 -1
  211. package/dist/components/form/Label.js +1 -1
  212. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  213. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  214. package/dist/components/form/validation/use-validation-props.js +1 -1
  215. package/dist/components/form/wrapper.js +1 -1
  216. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  217. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  218. package/dist/components/layout/Board/Board.js +1 -1
  219. package/dist/components/layout/Board/BoardProvider.js +1 -1
  220. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  221. package/dist/components/layout/Board/Widget.js +1 -1
  222. package/dist/components/layout/Board/WidgetHost.js +1 -1
  223. package/dist/components/layout/Board/board-context.js +1 -1
  224. package/dist/components/layout/Board/board-store.js +1 -1
  225. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  226. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  227. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  228. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  229. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  230. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  231. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  232. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  233. package/dist/components/layout/Board/index.js +1 -1
  234. package/dist/components/layout/Board/responsive-utils.js +1 -1
  235. package/dist/components/layout/Board/use-board-layout.js +1 -1
  236. package/dist/components/layout/Board/use-board-registry.js +1 -1
  237. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  238. package/dist/components/layout/Board/use-board-selection.js +1 -1
  239. package/dist/components/layout/Flex.js +1 -1
  240. package/dist/components/layout/Flow.js +1 -1
  241. package/dist/components/layout/Grid.js +1 -1
  242. package/dist/components/layout/Panel.js +1 -1
  243. package/dist/components/layout/Prefix.js +1 -1
  244. package/dist/components/layout/ResizablePanel.js +1 -1
  245. package/dist/components/layout/Space.js +1 -1
  246. package/dist/components/layout/Suffix.js +1 -1
  247. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  248. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  249. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  250. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  251. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  252. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  253. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  254. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  255. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  256. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  257. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  258. package/dist/components/navigation/Tabs/styled.js +1 -1
  259. package/dist/components/navigation/Tabs/types.js +1 -1
  260. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  261. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  262. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  263. package/dist/components/other/Calendar/Calendar.js +1 -1
  264. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  265. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  266. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  267. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  268. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  269. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  270. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  271. package/dist/components/other/Calendar/styled.js +1 -1
  272. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  273. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  274. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  275. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  276. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  277. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  278. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  279. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  280. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  281. package/dist/components/overlays/Dialog/context.js +1 -1
  282. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  283. package/dist/components/overlays/Modal/Modal.d.ts +1 -2
  284. package/dist/components/overlays/Modal/Modal.js +1 -1
  285. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  286. package/dist/components/overlays/Modal/Overlay.d.ts +0 -1
  287. package/dist/components/overlays/Modal/Overlay.js +1 -1
  288. package/dist/components/overlays/Modal/Popover.js +1 -1
  289. package/dist/components/overlays/Modal/Tray.js +1 -1
  290. package/dist/components/overlays/Modal/Underlay.js +1 -1
  291. package/dist/components/overlays/Modal/types.d.ts +0 -1
  292. package/dist/components/overlays/Notifications/Notification.js +1 -1
  293. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  294. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  295. package/dist/components/overlays/Notifications/NotificationContext.d.ts +0 -2
  296. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  297. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  298. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  299. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  300. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  301. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  302. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  303. package/dist/components/overlays/Notifications/index.js +1 -1
  304. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  305. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  306. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  307. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  308. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  309. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  310. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  311. package/dist/components/overlays/Toast/index.js +1 -1
  312. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  313. package/dist/components/overlays/Toast/useToast.js +1 -1
  314. package/dist/components/overlays/Tooltip/Tooltip.js +2 -1
  315. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  316. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  317. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  318. package/dist/components/overlays/Tooltip/context.js +1 -1
  319. package/dist/components/portal/Portal.js +1 -1
  320. package/dist/components/portal/PortalProvider.js +1 -1
  321. package/dist/components/portal/index.d.ts +0 -1
  322. package/dist/components/portal/usePortal.js +1 -1
  323. package/dist/components/shared/DraggableCollection.js +1 -1
  324. package/dist/components/shared/InvalidIcon.js +1 -1
  325. package/dist/components/shared/ValidIcon.js +1 -1
  326. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  327. package/dist/components/status/Spin/Cube.js +1 -1
  328. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  329. package/dist/components/status/Spin/Spin.js +1 -1
  330. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  331. package/dist/data/item-themes.js +1 -1
  332. package/dist/data/themes.js +1 -1
  333. package/dist/eslint-plugin/defaults.generated.js +1 -13
  334. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  335. package/dist/eslint-plugin/index.js +1 -1
  336. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  337. package/dist/i18n/I18nProvider.js +1 -1
  338. package/dist/i18n/createFormatter.js +1 -1
  339. package/dist/i18n/index.js +1 -1
  340. package/dist/i18n/instance.js +1 -1
  341. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  342. package/dist/i18n/locales/en-US/uikit.js +1 -1
  343. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  344. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  345. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  346. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  347. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  348. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  349. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  350. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  351. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  352. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  353. package/dist/i18n/locales.js +1 -1
  354. package/dist/i18n/useFormatter.js +1 -1
  355. package/dist/i18n/useI18n.js +1 -1
  356. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  357. package/dist/icons/AdjustmentsIcon.js +1 -1
  358. package/dist/icons/AiIcon.js +1 -1
  359. package/dist/icons/AreaChartIcon.js +1 -1
  360. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  361. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  362. package/dist/icons/BackwardIcon.js +1 -1
  363. package/dist/icons/BarChartIcon.js +1 -1
  364. package/dist/icons/BellFilledIcon.js +1 -1
  365. package/dist/icons/BellIcon.js +1 -1
  366. package/dist/icons/BooleanIcon.js +1 -1
  367. package/dist/icons/CalendarEditIcon.js +1 -1
  368. package/dist/icons/CalendarIcon.js +1 -1
  369. package/dist/icons/CaretDownIcon.js +1 -1
  370. package/dist/icons/CaretUpIcon.js +1 -1
  371. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  372. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  373. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  374. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  375. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  376. package/dist/icons/ChartBarLineIcon.js +1 -1
  377. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  378. package/dist/icons/ChartBarStackedIcon.js +1 -1
  379. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  380. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  381. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  382. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  383. package/dist/icons/ChartBubbleIcon.js +1 -1
  384. package/dist/icons/ChartDonut2Icon.js +1 -1
  385. package/dist/icons/ChartFunnelIcon.js +1 -1
  386. package/dist/icons/ChartHeatmapIcon.js +1 -1
  387. package/dist/icons/ChartKPIIcon.js +1 -1
  388. package/dist/icons/ChartPie2Icon.js +1 -1
  389. package/dist/icons/ChartScatterIcon.js +1 -1
  390. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  391. package/dist/icons/CheckCircleIcon.js +1 -1
  392. package/dist/icons/CheckIcon.js +1 -1
  393. package/dist/icons/CircleFilledIcon.js +1 -1
  394. package/dist/icons/ClearIcon.js +1 -1
  395. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  396. package/dist/icons/CloseCircleIcon.js +1 -1
  397. package/dist/icons/CloseIcon.js +1 -1
  398. package/dist/icons/CodeIcon.js +1 -1
  399. package/dist/icons/ColumnTotalIcon.js +1 -1
  400. package/dist/icons/CopyIcon.js +1 -1
  401. package/dist/icons/CountIcon.js +1 -1
  402. package/dist/icons/CubeIcon.js +1 -1
  403. package/dist/icons/CubePauseIcon.js +1 -1
  404. package/dist/icons/CubePlayIcon.js +1 -1
  405. package/dist/icons/CurrencyDollarIcon.js +1 -1
  406. package/dist/icons/DangerIcon.js +1 -1
  407. package/dist/icons/DashboardIcon.js +1 -1
  408. package/dist/icons/DatabaseIcon.js +1 -1
  409. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  410. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  411. package/dist/icons/DirectionIcon.js +1 -1
  412. package/dist/icons/DonutIcon.js +1 -1
  413. package/dist/icons/DownIcon.js +1 -1
  414. package/dist/icons/EditIcon.js +1 -1
  415. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  416. package/dist/icons/ExclamationCircleIcon.js +1 -1
  417. package/dist/icons/ExclamationIcon.js +1 -1
  418. package/dist/icons/EyeIcon.js +1 -1
  419. package/dist/icons/EyeInvisibleIcon.js +1 -1
  420. package/dist/icons/FilterIcon.js +1 -1
  421. package/dist/icons/FolderFilledIcon.js +1 -1
  422. package/dist/icons/FolderIcon.js +1 -1
  423. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  424. package/dist/icons/FolderOpenIcon.js +1 -1
  425. package/dist/icons/ForwardIcon.js +1 -1
  426. package/dist/icons/GripVerticalIcon.js +1 -1
  427. package/dist/icons/HierarchyIcon.js +1 -1
  428. package/dist/icons/HierarchyOpenIcon.js +1 -1
  429. package/dist/icons/Icon.js +1 -1
  430. package/dist/icons/InfoCircleIcon.js +1 -1
  431. package/dist/icons/InfoIcon.js +1 -1
  432. package/dist/icons/KeyIcon.js +1 -1
  433. package/dist/icons/LeftIcon.js +1 -1
  434. package/dist/icons/LineChartIcon.js +1 -1
  435. package/dist/icons/LoadingIcon.js +1 -1
  436. package/dist/icons/LockFilledIcon.js +1 -1
  437. package/dist/icons/LockIcon.js +1 -1
  438. package/dist/icons/MoreIcon.js +1 -1
  439. package/dist/icons/NotAllowedIcon.js +1 -1
  440. package/dist/icons/Number123Icon.js +1 -1
  441. package/dist/icons/NumberIcon.js +1 -1
  442. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  443. package/dist/icons/PauseCircleIcon.js +1 -1
  444. package/dist/icons/PauseIcon.js +1 -1
  445. package/dist/icons/PercentageIcon.js +1 -1
  446. package/dist/icons/PieChartIcon.js +1 -1
  447. package/dist/icons/PipetteIcon.js +1 -1
  448. package/dist/icons/PlayCircleIcon.js +1 -1
  449. package/dist/icons/PlayIcon.js +1 -1
  450. package/dist/icons/PlusIcon.js +1 -1
  451. package/dist/icons/ProgressBarIcon.js +1 -1
  452. package/dist/icons/ReloadIcon.js +1 -1
  453. package/dist/icons/ReportIcon.js +1 -1
  454. package/dist/icons/ReturnIcon.js +1 -1
  455. package/dist/icons/RightIcon.js +1 -1
  456. package/dist/icons/RowTotalsIcon.js +1 -1
  457. package/dist/icons/SchemeIcon.js +1 -1
  458. package/dist/icons/SearchIcon.js +1 -1
  459. package/dist/icons/SemanticQueryIcon.js +1 -1
  460. package/dist/icons/SettingsIcon.js +1 -1
  461. package/dist/icons/ShieldFilledIcon.js +1 -1
  462. package/dist/icons/ShieldIcon.js +1 -1
  463. package/dist/icons/SlashIcon.js +1 -1
  464. package/dist/icons/SparklesIcon.js +1 -1
  465. package/dist/icons/SqlIcon.js +1 -1
  466. package/dist/icons/StatsIcon.js +1 -1
  467. package/dist/icons/StopIcon.js +1 -1
  468. package/dist/icons/StringIcon.js +1 -1
  469. package/dist/icons/SubtotalsIcon.js +1 -1
  470. package/dist/icons/SwitchIcon.js +1 -1
  471. package/dist/icons/TableIcon.js +1 -1
  472. package/dist/icons/ThumbsDownIcon.js +1 -1
  473. package/dist/icons/ThumbsUpIcon.js +1 -1
  474. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  475. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  476. package/dist/icons/ThunderboltIcon.js +1 -1
  477. package/dist/icons/TimeIcon.js +1 -1
  478. package/dist/icons/TrashIcon.js +1 -1
  479. package/dist/icons/UnlockIcon.js +1 -1
  480. package/dist/icons/UpIcon.js +1 -1
  481. package/dist/icons/UserGroupIcon.js +1 -1
  482. package/dist/icons/UserIcon.js +1 -1
  483. package/dist/icons/UserLockIcon.js +1 -1
  484. package/dist/icons/ViewIcon.js +1 -1
  485. package/dist/icons/WarningFilledIcon.js +1 -1
  486. package/dist/icons/WarningIcon.js +1 -1
  487. package/dist/icons/wrap-icon.js +1 -1
  488. package/dist/index.js +1 -1
  489. package/dist/probe/canonicalize.js +1 -1
  490. package/dist/probe/css.js +1 -1
  491. package/dist/probe/index.js +1 -1
  492. package/dist/provider.js +1 -1
  493. package/dist/providers/TrackingProvider.js +1 -1
  494. package/dist/providers/navigationAdapter.default.js +1 -1
  495. package/dist/tokens/base.js +1 -1
  496. package/dist/tokens/color-seed.js +1 -1
  497. package/dist/tokens/color-theme.js +1 -1
  498. package/dist/tokens/colors.js +1 -1
  499. package/dist/tokens/index.js +1 -1
  500. package/dist/tokens/layout.js +1 -1
  501. package/dist/tokens/lazy-styles.js +1 -1
  502. package/dist/tokens/palette-config.js +1 -1
  503. package/dist/tokens/palette.js +1 -1
  504. package/dist/tokens/shadows.js +1 -1
  505. package/dist/tokens/sizes.js +1 -1
  506. package/dist/tokens/spacing.js +1 -1
  507. package/dist/tokens/typography.js +1 -1
  508. package/dist/utils/ResizeSensor.js +1 -1
  509. package/dist/utils/is-dev-env.js +1 -1
  510. package/dist/utils/modules.js +1 -1
  511. package/dist/utils/promise.js +1 -1
  512. package/dist/utils/raf.js +1 -1
  513. package/dist/utils/random.js +1 -1
  514. package/dist/utils/range.js +1 -1
  515. package/dist/utils/react/RenderCache.js +1 -1
  516. package/dist/utils/react/Slots.js +1 -1
  517. package/dist/utils/react/chain.js +1 -1
  518. package/dist/utils/react/disabledProps.js +1 -1
  519. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  520. package/dist/utils/react/index.js +1 -1
  521. package/dist/utils/react/interactions.js +1 -1
  522. package/dist/utils/react/isTextOnly.js +1 -1
  523. package/dist/utils/react/mapProps.js +1 -1
  524. package/dist/utils/react/mergeProps.js +1 -1
  525. package/dist/utils/react/nullableValue.js +1 -1
  526. package/dist/utils/react/resolveIcon.js +1 -1
  527. package/dist/utils/react/sharedStore.js +1 -1
  528. package/dist/utils/react/useBufferedValue.js +1 -1
  529. package/dist/utils/react/useCombinedRefs.js +1 -1
  530. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  531. package/dist/utils/react/useEventBus.js +1 -1
  532. package/dist/utils/react/useId.js +1 -1
  533. package/dist/utils/react/useIsDarwin.js +1 -1
  534. package/dist/utils/react/useKeySymbols.js +1 -1
  535. package/dist/utils/react/useLayoutEffect.js +1 -1
  536. package/dist/utils/react/useLocalStorage.js +1 -1
  537. package/dist/utils/react/useMergeStyles.js +1 -1
  538. package/dist/utils/react/usePopoverSync.js +1 -1
  539. package/dist/utils/react/useQaProps.js +1 -1
  540. package/dist/utils/react/useViewportSize.js +1 -1
  541. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  542. package/dist/utils/selection.js +1 -1
  543. package/dist/utils/styles.js +1 -1
  544. package/dist/utils/tree.js +1 -1
  545. package/dist/utils/warnings.js +1 -1
  546. package/dist/version.js +3 -3
  547. package/docs/Colors.md +40 -16
  548. package/docs/ComplexLayout.md +0 -8
  549. package/docs/CreateComponent.md +8 -15
  550. package/docs/Introduction.md +36 -15
  551. package/docs/RenderCache.md +6 -8
  552. package/docs/Theming.md +497 -164
  553. package/docs/Usage.md +138 -108
  554. package/docs/Utilities.md +2 -2
  555. package/docs/components/CollectionItem.md +0 -1
  556. package/docs/components/actions/Banner.md +0 -1
  557. package/docs/components/actions/Button.md +36 -8
  558. package/docs/components/actions/ButtonSplit.md +0 -2
  559. package/docs/components/actions/CommandMenu.md +8 -8
  560. package/docs/components/actions/ItemButton.md +20 -6
  561. package/docs/components/actions/Link.md +5 -10
  562. package/docs/components/actions/Menu.md +11 -24
  563. package/docs/components/actions/MenuTrigger.md +12 -3
  564. package/docs/components/actions/use-anchored-menu.md +2 -2
  565. package/docs/components/actions/use-context-menu.md +2 -5
  566. package/docs/components/content/Badge.md +0 -3
  567. package/docs/components/content/HotKeys.md +14 -21
  568. package/docs/components/content/InlineInput.md +14 -14
  569. package/docs/components/content/Item.md +17 -25
  570. package/docs/components/content/ItemCard.md +0 -1
  571. package/docs/components/content/Layout.md +1 -12
  572. package/docs/components/content/PrismCode.md +18 -13
  573. package/docs/components/content/Tag.md +1 -1
  574. package/docs/components/content/TextItem.md +3 -5
  575. package/docs/components/content/Tree.md +154 -69
  576. package/docs/components/data/DataTable.md +168 -56
  577. package/docs/components/data/ItemTable.md +485 -182
  578. package/docs/components/fields/Checkbox.md +0 -2
  579. package/docs/components/fields/ColorInput.md +79 -38
  580. package/docs/components/fields/ColorPicker.md +39 -17
  581. package/docs/components/fields/ColorSwatch.md +30 -11
  582. package/docs/components/fields/ColorSwatchGroup.md +42 -18
  583. package/docs/components/fields/ComboBox.md +1 -13
  584. package/docs/components/fields/CommandTextArea.md +37 -10
  585. package/docs/components/fields/DatePicker.md +0 -3
  586. package/docs/components/fields/FileInput.md +0 -3
  587. package/docs/components/fields/FilterListBox.md +14 -34
  588. package/docs/components/fields/FilterPicker.md +16 -33
  589. package/docs/components/fields/HueSlider.md +5 -5
  590. package/docs/components/fields/ListBox.md +9 -35
  591. package/docs/components/fields/NumberInput.md +0 -3
  592. package/docs/components/fields/PasswordInput.md +0 -3
  593. package/docs/components/fields/PeriodPicker.md +17 -7
  594. package/docs/components/fields/Picker.md +29 -54
  595. package/docs/components/fields/RadioGroup.md +5 -13
  596. package/docs/components/fields/SearchComboBox.md +0 -3
  597. package/docs/components/fields/SearchInput.md +2 -4
  598. package/docs/components/fields/Select.md +13 -23
  599. package/docs/components/fields/Switch.md +0 -3
  600. package/docs/components/fields/TextInput.md +0 -3
  601. package/docs/components/fields/TextInputMapper.md +2 -1
  602. package/docs/components/form/Field.md +2 -5
  603. package/docs/components/form/Form.md +0 -5
  604. package/docs/components/form/FormInstance.md +1 -1
  605. package/docs/components/helpers/DisplayTransition.md +6 -10
  606. package/docs/components/helpers/IconSwitch.md +0 -1
  607. package/docs/components/layout/Board.md +190 -50
  608. package/docs/components/navigation/Pagination.md +75 -36
  609. package/docs/components/navigation/Tabs.md +15 -3
  610. package/docs/components/other/Calendar.md +39 -22
  611. package/docs/components/other/CubeLogo.md +1 -1
  612. package/docs/components/overlays/Dialog.md +0 -3
  613. package/docs/components/overlays/DialogContainer.md +0 -2
  614. package/docs/components/overlays/DialogForm.md +2 -6
  615. package/docs/components/overlays/DialogTrigger.md +2 -4
  616. package/docs/components/overlays/Notifications.md +0 -7
  617. package/docs/components/overlays/Toast.md +8 -12
  618. package/docs/components/overlays/Tooltip.md +12 -6
  619. package/docs/components/overlays/UseDialogContainer.md +10 -16
  620. package/docs/components/status/LoadingAnimation.md +9 -3
  621. package/docs/tasty/configuration.md +0 -127
  622. package/docs/tasty/injector.md +0 -11
  623. package/package.json +4 -4
  624. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +0 -2
  625. package/dist/components/portal/PortalProvider.d.ts +0 -2
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,13 +144,20 @@ 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 its own. They ship with a default, so nothing has to be set unless the default is wrong.
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.
148
150
 
149
151
  | Token | Default | Role |
150
- | --- | --- | --- |
152
+ |-------|---------|------|
151
153
  | `#current-fill` | `#surface` | The label color `current.primary` punches out of its `currentcolor` chip — read by that one flavour and nothing else |
152
154
 
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:
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:
154
161
 
155
162
  ```jsx
156
163
  <Block fill="#fixed-dark" color="#white" styles={{ '#current-fill': '#fixed-dark' }}>
@@ -158,14 +165,16 @@ Tokens a **container** sets to steer a component that cannot resolve the color o
158
165
  </Block>
159
166
  ```
160
167
 
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.
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.
162
171
 
163
172
  ### Accent System
164
173
 
165
174
  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.):
166
175
 
167
176
  | Token (default theme; prefixed in others) | Role |
168
- | --- | --- |
177
+ |-------|------|
169
178
  | `#accent-surface` | Saturated brand fill (button bg) |
170
179
  | `#accent-surface-2`, `#accent-surface-3` | Darker / more saturated variants |
171
180
  | `#accent-surface-text` | Near-white text on accent fill |
@@ -178,15 +187,15 @@ In the `default` theme these tokens are unprefixed (`#accent-surface`). In color
178
187
 
179
188
  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).
180
189
 
181
- The hues below are the _defaults_; each is tunable at runtime (see [Theming](./Theming.md)).
190
+ The hues below are the *defaults*; each is tunable at runtime (see [Theming](./Theming.md)).
182
191
 
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 |
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 |
190
199
 
191
200
  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'`.
192
201
 
@@ -203,7 +212,7 @@ resetPaletteConfig();
203
212
 
204
213
  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.
205
214
 
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:
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:
207
216
 
208
217
  ```tsx
209
218
  <Block tokens={renderColorTokens({ accent: { hue: 210 }, scheme: 'dark' })} fill="#surface">
@@ -217,27 +226,27 @@ Full contract, caveats and a live playground: [Theming](./Theming.md).
217
226
 
218
227
  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:
219
228
 
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` |
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` |
241
250
 
242
251
  `#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`.
243
252
 
@@ -250,74 +259,74 @@ Defined in `src/tokens/typography.ts`.
250
259
  ### Headings
251
260
 
252
261
  | Preset | Size | Line Height | Weight |
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 |
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 |
260
269
 
261
270
  ### Text
262
271
 
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 |
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 |
272
281
 
273
282
  ### Paragraph
274
283
 
275
284
  Paragraph presets have slightly increased line heights compared to text presets at the same size, optimized for multi-line reading.
276
285
 
277
286
  | Preset | Size | Line Height | Weight |
278
- | ------ | ---- | ----------- | ------ |
279
- | `p1` | 18px | 28px | 400 |
280
- | `p2` | 16px | 24px | 400 |
281
- | `p3` | 14px | 22px | 400 |
282
- | `p4` | 12px | 20px | 500 |
287
+ |--------|------|-------------|--------|
288
+ | `p1` | 18px | 28px | 400 |
289
+ | `p2` | 16px | 24px | 400 |
290
+ | `p3` | 14px | 22px | 400 |
291
+ | `p4` | 12px | 20px | 500 |
283
292
 
284
293
  ### Markdown / Prose
285
294
 
286
295
  Largest line heights, designed for long-form content blocks.
287
296
 
288
297
  | Preset | Size | Line Height | Weight |
289
- | ------ | ---- | ----------- | ------ |
290
- | `m1` | 18px | 32px | 400 |
291
- | `m2` | 16px | 28px | 400 |
292
- | `m3` | 14px | 24px | 400 |
298
+ |--------|------|-------------|--------|
299
+ | `m1` | 18px | 32px | 400 |
300
+ | `m2` | 16px | 28px | 400 |
301
+ | `m3` | 14px | 24px | 400 |
293
302
 
294
303
  ### Snippet / Monospace
295
304
 
296
305
  Sized to parallel `t2`–`t4`. Each preset sets `font-family` to `var(--font-mono)` (the design-system monospace stack from `Root`).
297
306
 
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 |
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 |
303
312
 
304
313
  ### Special Presets
305
314
 
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 |
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 |
314
323
 
315
324
  ## Themes
316
325
 
317
326
  Component themes are set via the `theme` prop or `theme=name` modifier:
318
327
 
319
328
  | Theme | Purpose |
320
- | --- | --- |
329
+ |-------|---------|
321
330
  | `default` | Standard appearance |
322
331
  | `danger` | Destructive / error actions |
323
332
  | `special` | Highlighted / promoted actions |
@@ -331,7 +340,7 @@ Component themes are set via the `theme` prop or `theme=name` modifier:
331
340
  Reusable style presets applied via the `recipe` style property. Defined in `src/components/Root.tsx`.
332
341
 
333
342
  | Recipe | Purpose |
334
- | --- | --- |
343
+ |--------|---------|
335
344
  | `reset` | Zero out margin, padding, border, outline; set `box-sizing: border-box` |
336
345
  | `button` | Base button appearance: no native styling, `touch-action: manipulation` |
337
346
  | `input` | Base input appearance: no native styling, inherit color |
@@ -344,7 +353,7 @@ Reusable style presets applied via the `recipe` style property. Defined in `src/
344
353
  These are data-attribute modifiers used in component style maps (via the `mods` prop):
345
354
 
346
355
  | Modifier | Description |
347
- | --- | --- |
356
+ |----------|-------------|
348
357
  | `disabled` | Disabled state |
349
358
  | `hovered` | Hover state |
350
359
  | `focused` | Focus state |
@@ -386,17 +395,38 @@ Icons live in `src/icons/`. Use existing icons when possible; otherwise use `@ta
386
395
  - Always wrap tabler icons with `<Icon>` for custom size/color. Never add props directly to tabler icons.
387
396
  - To add new icons run: `pnpm add-icons`
388
397
 
389
- 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).
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).
390
404
 
391
405
  ## Hierarchical Table Rows
392
406
 
393
- `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`.
394
-
395
- 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.
396
-
397
- 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.
398
-
399
- 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.
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.
400
430
 
401
431
  ## Form System
402
432
 
@@ -427,7 +457,7 @@ Returns a `CubeFormInstance` with:
427
457
  Async rule-based system. Each rule is an object with one of these properties:
428
458
 
429
459
  | Rule | Description |
430
- | --- | --- |
460
+ |------|-------------|
431
461
  | `required` | Field must have a value |
432
462
  | `type` | Type check: `email`, `url`, `number`, `integer`, `date`, `hex`, etc. |
433
463
  | `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,7 +85,6 @@ const items = [{
85
85
  ```
86
86
 
87
87
  **Always provide explicit `textValue` for:**
88
-
89
88
  - Icons/images without text
90
89
  - Formatted/complex content
91
90
  - Non-readable keys (UUIDs)
@@ -48,7 +48,6 @@ Supports [Base properties](../../BaseProperties.md)
48
48
  Customizes the root element of the component.
49
49
 
50
50
  **Sub-elements:**
51
-
52
51
  - `Label` - The main text content area
53
52
  - `Actions` - Container for action buttons
54
53
 
@@ -195,7 +195,13 @@ 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 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.
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.
199
205
 
200
206
  ### Custom Size
201
207
 
@@ -228,21 +234,35 @@ A disabled button keeps showing its tooltip. Browsers stop dispatching mouse eve
228
234
 
229
235
  - `aria-label`, `aria-labelledby` – Accessible name.
230
236
  - `aria-pressed` – Managed automatically when `isSelected` is used.
231
- - `aria-disabled` – Announces the disabled state whenever the native `disabled` attribute cannot be used: on links, and on buttons that carry a tooltip.
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.
232
239
  - Additional ARIA attributes supported by React Aria's `useButton`.
233
240
 
234
241
  ## Behaviour Inside Popovers
235
242
 
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.
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.
237
249
 
238
- Modal / tray / fullscreen Dialogs are **not** affected — a Button inside a modal Dialog does not auto-close it.
250
+ Modal / tray / fullscreen Dialogs are **not** affected — a Button inside a
251
+ modal Dialog does not auto-close it.
239
252
 
240
253
  ### Opt-outs
241
254
 
242
255
  There are three ways to keep the popover open when a Button is pressed:
243
256
 
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):
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):
246
266
 
247
267
  ```jsx
248
268
  <Button data-popover-keep onPress={() => setMode((m) => !m)}>
@@ -254,7 +274,9 @@ There are three ways to keep the popover open when a Button is pressed:
254
274
  </div>
255
275
  ```
256
276
 
257
- 3. **Custom non-Cube triggers.** Call `useDismissParentPopover()` yourself if your control should dismiss the popover but does not extend `Button` / `ItemButton`:
277
+ 3. **Custom non-Cube triggers.** Call `useDismissParentPopover()` yourself if
278
+ your control should dismiss the popover but does not extend `Button` /
279
+ `ItemButton`:
258
280
  ```jsx
259
281
  const dismiss = useDismissParentPopover();
260
282
  <MyCustomPressable
@@ -267,7 +289,13 @@ There are three ways to keep the popover open when a Button is pressed:
267
289
 
268
290
  ### Async `onPress`
269
291
 
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.
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.
271
299
 
272
300
  ## Best Practices
273
301
 
@@ -180,13 +180,11 @@ 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
-
184
183
  ```jsx
185
184
  <Button.Split actions={actions} defaultActionKey="deploy" type="primary" />
186
185
  ```
187
186
 
188
187
  2. **Do**: Set `type` and `theme` on the wrapper instead of repeating on each child.
189
-
190
188
  ```jsx
191
189
  <Button.Split type="primary">
192
190
  <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
  >
@@ -183,20 +183,34 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
183
183
 
184
184
  ## Behaviour Inside Popovers
185
185
 
186
- Like `Button`, an `ItemButton` press inside an open popover **dismisses that popover** by default — popovers are transient surfaces and any action inside them should close them. Modals/trays/fullscreen Dialogs are not affected.
186
+ Like `Button`, an `ItemButton` press inside an open popover **dismisses
187
+ that popover** by default — popovers are transient surfaces and any action
188
+ inside them should close them. Modals/trays/fullscreen Dialogs are not
189
+ affected.
187
190
 
188
191
  ### Opt-outs
189
192
 
190
- - **Automatic for popover triggers** — `MenuTrigger`, `DialogTrigger type="popover"`, and the picker components (`FilterPicker`, `Picker`, `ComboBox`, `Select`) mark their trigger ItemButtons with `data-popover-trigger` so they don't dismiss the popover they themselves live in.
191
- - **Manual via `data-popover-keep`** — add to the ItemButton (toggle) or any ancestor (whole subtree):
193
+ - **Automatic for popover triggers** — `MenuTrigger`, `DialogTrigger
194
+ type="popover"`, and the picker components (`FilterPicker`, `Picker`,
195
+ `ComboBox`, `Select`) mark their trigger ItemButtons with
196
+ `data-popover-trigger` so they don't dismiss the popover they themselves
197
+ live in.
198
+ - **Manual via `data-popover-keep`** — add to the ItemButton (toggle) or
199
+ any ancestor (whole subtree):
192
200
  ```jsx
193
201
  <ItemButton data-popover-keep onPress={() => setMode((m) => !m)}>
194
202
  Toggle Mode
195
203
  </ItemButton>
196
204
  ```
197
- - **Custom non-Cube triggers** — call `useDismissParentPopover()` directly if you build a control on top of something other than `Button` / `ItemButton`.
198
-
199
- The dismiss is dispatched via the EventBus, which defers with `setTimeout(0)` — so synchronous `onPress` handlers (and the React state updates they trigger) flush BEFORE the popover closes. This makes the "open a hoisted modal from a popover footer" pattern work without flicker: the modal mounts first, then the popover closes behind it.
205
+ - **Custom non-Cube triggers** — call `useDismissParentPopover()` directly
206
+ if you build a control on top of something other than `Button` /
207
+ `ItemButton`.
208
+
209
+ The dismiss is dispatched via the EventBus, which defers with `setTimeout(0)`
210
+ — so synchronous `onPress` handlers (and the React state updates they
211
+ trigger) flush BEFORE the popover closes. This makes the "open a hoisted
212
+ modal from a popover footer" pattern work without flicker: the modal mounts
213
+ first, then the popover closes behind it.
200
214
 
201
215
  ## Best Practices
202
216