@cube-dev/ui-kit 0.0.0-canary-7544b7f → 0.0.0-canary-03bd4af

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 (452) hide show
  1. package/dist/CHANGELOG.md +103 -0
  2. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  3. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  5. package/dist/_internal/hooks/use-event.js +1 -1
  6. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  7. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  8. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  9. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  10. package/dist/_internal/hooks/use-warn.js +1 -1
  11. package/dist/components/Block.js +1 -1
  12. package/dist/components/CollectionItem.js +1 -1
  13. package/dist/components/GlobalStyles.js +1 -1
  14. package/dist/components/GridProvider.js +1 -1
  15. package/dist/components/HiddenInput.js +1 -1
  16. package/dist/components/Root.js +1 -1
  17. package/dist/components/actions/Action/Action.js +1 -1
  18. package/dist/components/actions/Banner/Banner.js +1 -1
  19. package/dist/components/actions/Button/Button.js +17 -3
  20. package/dist/components/actions/Button/Button.js.map +1 -1
  21. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  22. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  23. package/dist/components/actions/ButtonSplit/context.js +1 -1
  24. package/dist/components/actions/CommandMenu/CommandMenu.js +3 -4
  25. package/dist/components/actions/CommandMenu/CommandMenu.js.map +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 +18 -2
  30. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  31. package/dist/components/actions/Link/Link.js +1 -1
  32. package/dist/components/actions/Menu/Menu.js +3 -4
  33. package/dist/components/actions/Menu/Menu.js.map +1 -1
  34. package/dist/components/actions/Menu/MenuItem.js +1 -1
  35. package/dist/components/actions/Menu/MenuSection.js +1 -1
  36. package/dist/components/actions/Menu/MenuTrigger.js +8 -5
  37. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  38. package/dist/components/actions/Menu/SubMenuTrigger.js +10 -7
  39. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  40. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  41. package/dist/components/actions/Menu/context.js +1 -1
  42. package/dist/components/actions/Menu/styled.js +1 -1
  43. package/dist/components/actions/index.js +1 -1
  44. package/dist/components/actions/use-action.js +1 -1
  45. package/dist/components/actions/use-anchored-menu.js +4 -3
  46. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  47. package/dist/components/actions/use-context-menu.js +4 -3
  48. package/dist/components/actions/use-context-menu.js.map +1 -1
  49. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  50. package/dist/components/content/Alert/Alert.js +1 -1
  51. package/dist/components/content/Alert/use-alert.js +1 -1
  52. package/dist/components/content/Avatar/Avatar.js +1 -1
  53. package/dist/components/content/Badge/Badge.js +1 -1
  54. package/dist/components/content/Card/Card.js +1 -1
  55. package/dist/components/content/Content.js +1 -1
  56. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  57. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  58. package/dist/components/content/Disclosure/Disclosure.js +2 -1
  59. package/dist/components/content/Disclosure/Disclosure.js.map +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/InlineInput/InlineInput.js +1 -1
  65. package/dist/components/content/Item/Item.js +1 -1
  66. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  67. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  68. package/dist/components/content/Layout/GridLayout.js +1 -1
  69. package/dist/components/content/Layout/Layout.js +1 -1
  70. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  71. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  72. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  73. package/dist/components/content/Layout/LayoutContent.js +1 -1
  74. package/dist/components/content/Layout/LayoutContext.js +1 -1
  75. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  76. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  77. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  78. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  79. package/dist/components/content/Layout/LayoutPane.js +1 -1
  80. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  81. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  82. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  83. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  84. package/dist/components/content/Layout/index.js +1 -1
  85. package/dist/components/content/Layout/utils.js +1 -1
  86. package/dist/components/content/Paragraph.js +1 -1
  87. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  88. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  89. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  90. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  91. package/dist/components/content/Result/Result.js +1 -1
  92. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  93. package/dist/components/content/Tag/Tag.js +1 -1
  94. package/dist/components/content/Text.js +1 -1
  95. package/dist/components/content/TextItem/TextItem.js +1 -1
  96. package/dist/components/content/Title.js +1 -1
  97. package/dist/components/content/Tree/Tree.js +1 -1
  98. package/dist/components/content/Tree/TreeNode.js +1 -1
  99. package/dist/components/content/Tree/styled.js +1 -1
  100. package/dist/components/content/Tree/tree-index.js +1 -1
  101. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  102. package/dist/components/content/Tree/use-load-data.js +1 -1
  103. package/dist/components/content/highlightText.js +1 -1
  104. package/dist/components/content/use-auto-tooltip.js +1 -1
  105. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  106. package/dist/components/fields/Checkbox/CheckboxGroup.js +3 -3
  107. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  108. package/dist/components/fields/Checkbox/context.js +1 -1
  109. package/dist/components/fields/ComboBox/ComboBox.js +11 -7
  110. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  111. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  112. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  113. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  114. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  115. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  116. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  117. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  118. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  119. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  120. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  121. package/dist/components/fields/DatePicker/intl.js +1 -1
  122. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  123. package/dist/components/fields/DatePicker/props.js +1 -1
  124. package/dist/components/fields/DatePicker/utils.js +1 -1
  125. package/dist/components/fields/FileInput/FileInput.js +1 -1
  126. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  127. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -21
  128. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  129. package/dist/components/fields/Input/Input.js +1 -1
  130. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  131. package/dist/components/fields/ListBox/ListBox.js +1 -1
  132. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  133. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  134. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  135. package/dist/components/fields/Picker/Picker.js +1 -21
  136. package/dist/components/fields/Picker/Picker.js.map +1 -1
  137. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  138. package/dist/components/fields/RadioGroup/RadioGroup.js +3 -3
  139. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  140. package/dist/components/fields/RadioGroup/context.js +1 -1
  141. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  142. package/dist/components/fields/Select/Select.js +10 -7
  143. package/dist/components/fields/Select/Select.js.map +1 -1
  144. package/dist/components/fields/Slider/Gradation.js +1 -1
  145. package/dist/components/fields/Slider/HueSlider.js +1 -1
  146. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  147. package/dist/components/fields/Slider/Slider.js +1 -1
  148. package/dist/components/fields/Slider/SliderBase.js +1 -1
  149. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  150. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  151. package/dist/components/fields/Slider/elements.js +1 -1
  152. package/dist/components/fields/Slider/index.js +1 -1
  153. package/dist/components/fields/Switch/Switch.js +1 -1
  154. package/dist/components/fields/TextArea/TextArea.js +1 -1
  155. package/dist/components/fields/TextInput/TextInput.js +1 -1
  156. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  157. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  158. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  159. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  160. package/dist/components/form/Form/Field.js +1 -1
  161. package/dist/components/form/Form/Form.d.ts +1 -2
  162. package/dist/components/form/Form/Form.js +3 -3
  163. package/dist/components/form/Form/Form.js.map +1 -1
  164. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  165. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  166. package/dist/components/form/Form/SubmitError.js +1 -1
  167. package/dist/components/form/Form/index.d.ts +1 -1
  168. package/dist/components/form/Form/index.js +1 -1
  169. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  170. package/dist/components/form/Form/use-field/use-field.js +1 -1
  171. package/dist/components/form/Form/use-form.js +1 -1
  172. package/dist/components/form/Form/validation.js +1 -1
  173. package/dist/components/form/Label.js +3 -3
  174. package/dist/components/form/Label.js.map +1 -1
  175. package/dist/components/form/wrapper.js +1 -1
  176. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  177. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  178. package/dist/components/layout/Flex.js +1 -1
  179. package/dist/components/layout/Flow.js +1 -1
  180. package/dist/components/layout/Grid.js +1 -1
  181. package/dist/components/layout/Panel.js +1 -1
  182. package/dist/components/layout/Prefix.js +1 -1
  183. package/dist/components/layout/ResizablePanel.js +1 -1
  184. package/dist/components/layout/Space.js +1 -1
  185. package/dist/components/layout/Suffix.js +1 -1
  186. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  187. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  188. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  189. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  190. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  191. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  192. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  193. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  194. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  195. package/dist/components/navigation/Tabs/styled.js +1 -1
  196. package/dist/components/navigation/Tabs/types.js +1 -1
  197. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  198. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  199. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  200. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  201. package/dist/components/other/Calendar/Calendar.js +1 -1
  202. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  203. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  204. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  205. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  206. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  207. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  208. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  209. package/dist/components/overlays/Dialog/Dialog.d.ts +1 -2
  210. package/dist/components/overlays/Dialog/Dialog.js +3 -3
  211. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  212. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  213. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  214. package/dist/components/overlays/Dialog/DialogTrigger.js +54 -8
  215. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  216. package/dist/components/overlays/Dialog/context.js +1 -1
  217. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  218. package/dist/components/overlays/Modal/Modal.js +3 -3
  219. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  220. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  221. package/dist/components/overlays/Modal/Overlay.js +1 -1
  222. package/dist/components/overlays/Modal/Popover.js +1 -1
  223. package/dist/components/overlays/Modal/Tray.js +3 -3
  224. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  225. package/dist/components/overlays/Modal/Underlay.js +1 -1
  226. package/dist/components/overlays/Notifications/Notification.js +1 -1
  227. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  228. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  229. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  230. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  231. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  232. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  233. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  234. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  235. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  236. package/dist/components/overlays/Notifications/index.js +1 -1
  237. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  238. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  239. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  240. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  241. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  242. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  243. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  244. package/dist/components/overlays/Toast/index.js +1 -1
  245. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  246. package/dist/components/overlays/Toast/useToast.js +1 -1
  247. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  248. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  249. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  250. package/dist/components/overlays/Tooltip/context.js +1 -1
  251. package/dist/components/portal/Portal.js +1 -1
  252. package/dist/components/portal/PortalProvider.js +1 -1
  253. package/dist/components/portal/usePortal.js +1 -1
  254. package/dist/components/shared/DraggableCollection.js +1 -1
  255. package/dist/components/shared/InvalidIcon.js +1 -1
  256. package/dist/components/shared/ValidIcon.js +1 -1
  257. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  258. package/dist/components/status/Spin/Cube.js +1 -1
  259. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  260. package/dist/components/status/Spin/Spin.js +1 -1
  261. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  262. package/dist/data/item-themes.js +1 -1
  263. package/dist/data/themes.js +1 -1
  264. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  265. package/dist/icons/AdjustmentsIcon.js +1 -1
  266. package/dist/icons/AiIcon.js +1 -1
  267. package/dist/icons/AreaChartIcon.js +1 -1
  268. package/dist/icons/BackwardIcon.js +1 -1
  269. package/dist/icons/BarChartIcon.js +1 -1
  270. package/dist/icons/BellFilledIcon.js +1 -1
  271. package/dist/icons/BellIcon.js +1 -1
  272. package/dist/icons/BooleanIcon.js +1 -1
  273. package/dist/icons/CalendarEditIcon.js +1 -1
  274. package/dist/icons/CalendarIcon.js +1 -1
  275. package/dist/icons/CaretDownIcon.js +1 -1
  276. package/dist/icons/CaretUpIcon.js +1 -1
  277. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  278. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  279. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  280. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  281. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  282. package/dist/icons/ChartBarLineIcon.js +1 -1
  283. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  284. package/dist/icons/ChartBarStackedIcon.js +1 -1
  285. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  286. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  287. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  288. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  289. package/dist/icons/ChartBubbleIcon.js +1 -1
  290. package/dist/icons/ChartDonut2Icon.js +1 -1
  291. package/dist/icons/ChartFunnelIcon.js +1 -1
  292. package/dist/icons/ChartHeatmapIcon.js +1 -1
  293. package/dist/icons/ChartKPIIcon.js +1 -1
  294. package/dist/icons/ChartPie2Icon.js +1 -1
  295. package/dist/icons/ChartScatterIcon.js +1 -1
  296. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  297. package/dist/icons/CheckCircleIcon.js +1 -1
  298. package/dist/icons/CheckIcon.js +1 -1
  299. package/dist/icons/CircleFilledIcon.js +1 -1
  300. package/dist/icons/ClearIcon.js +1 -1
  301. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  302. package/dist/icons/CloseCircleIcon.js +1 -1
  303. package/dist/icons/CloseIcon.js +1 -1
  304. package/dist/icons/CodeIcon.js +1 -1
  305. package/dist/icons/ColumnTotalIcon.js +1 -1
  306. package/dist/icons/CopyIcon.js +1 -1
  307. package/dist/icons/CountIcon.js +1 -1
  308. package/dist/icons/CubeIcon.js +1 -1
  309. package/dist/icons/CubePauseIcon.js +1 -1
  310. package/dist/icons/CubePlayIcon.js +1 -1
  311. package/dist/icons/CurrencyDollarIcon.js +1 -1
  312. package/dist/icons/DangerIcon.js +1 -1
  313. package/dist/icons/DashboardIcon.js +1 -1
  314. package/dist/icons/DatabaseIcon.js +1 -1
  315. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  316. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  317. package/dist/icons/DirectionIcon.js +1 -1
  318. package/dist/icons/DonutIcon.js +1 -1
  319. package/dist/icons/DownIcon.js +1 -1
  320. package/dist/icons/EditIcon.js +1 -1
  321. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  322. package/dist/icons/ExclamationCircleIcon.js +1 -1
  323. package/dist/icons/ExclamationIcon.js +1 -1
  324. package/dist/icons/EyeIcon.js +1 -1
  325. package/dist/icons/EyeInvisibleIcon.js +1 -1
  326. package/dist/icons/FilterIcon.js +1 -1
  327. package/dist/icons/FolderFilledIcon.js +1 -1
  328. package/dist/icons/FolderIcon.js +1 -1
  329. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  330. package/dist/icons/FolderOpenIcon.js +1 -1
  331. package/dist/icons/ForwardIcon.js +1 -1
  332. package/dist/icons/GripVerticalIcon.js +1 -1
  333. package/dist/icons/HierarchyIcon.js +1 -1
  334. package/dist/icons/HierarchyOpenIcon.js +1 -1
  335. package/dist/icons/Icon.js +1 -1
  336. package/dist/icons/InfoCircleIcon.js +1 -1
  337. package/dist/icons/InfoIcon.js +1 -1
  338. package/dist/icons/KeyIcon.js +1 -1
  339. package/dist/icons/LeftIcon.js +1 -1
  340. package/dist/icons/LineChartIcon.js +1 -1
  341. package/dist/icons/LoadingIcon.js +1 -1
  342. package/dist/icons/LockFilledIcon.js +1 -1
  343. package/dist/icons/LockIcon.js +1 -1
  344. package/dist/icons/MoreIcon.js +1 -1
  345. package/dist/icons/NotAllowedIcon.js +1 -1
  346. package/dist/icons/Number123Icon.js +1 -1
  347. package/dist/icons/NumberIcon.js +1 -1
  348. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  349. package/dist/icons/PauseCircleIcon.js +1 -1
  350. package/dist/icons/PauseIcon.js +1 -1
  351. package/dist/icons/PercentageIcon.js +1 -1
  352. package/dist/icons/PieChartIcon.js +1 -1
  353. package/dist/icons/PlayCircleIcon.js +1 -1
  354. package/dist/icons/PlayIcon.js +1 -1
  355. package/dist/icons/PlusIcon.js +1 -1
  356. package/dist/icons/ProgressBarIcon.js +1 -1
  357. package/dist/icons/ReloadIcon.js +1 -1
  358. package/dist/icons/ReportIcon.js +1 -1
  359. package/dist/icons/ReturnIcon.js +1 -1
  360. package/dist/icons/RightIcon.js +1 -1
  361. package/dist/icons/RowTotalsIcon.js +1 -1
  362. package/dist/icons/SchemeIcon.js +1 -1
  363. package/dist/icons/SearchIcon.js +1 -1
  364. package/dist/icons/SemanticQueryIcon.js +1 -1
  365. package/dist/icons/SettingsIcon.js +1 -1
  366. package/dist/icons/ShieldFilledIcon.js +1 -1
  367. package/dist/icons/ShieldIcon.js +1 -1
  368. package/dist/icons/SlashIcon.js +1 -1
  369. package/dist/icons/SparklesIcon.js +1 -1
  370. package/dist/icons/SqlIcon.js +1 -1
  371. package/dist/icons/StatsIcon.js +1 -1
  372. package/dist/icons/StopIcon.js +1 -1
  373. package/dist/icons/StringIcon.js +1 -1
  374. package/dist/icons/SubtotalsIcon.js +1 -1
  375. package/dist/icons/SwitchIcon.js +1 -1
  376. package/dist/icons/TableIcon.js +1 -1
  377. package/dist/icons/ThumbsDownIcon.js +1 -1
  378. package/dist/icons/ThumbsUpIcon.js +1 -1
  379. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  380. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  381. package/dist/icons/ThunderboltIcon.js +1 -1
  382. package/dist/icons/TimeIcon.js +1 -1
  383. package/dist/icons/TrashIcon.js +1 -1
  384. package/dist/icons/UnlockIcon.js +1 -1
  385. package/dist/icons/UpIcon.js +1 -1
  386. package/dist/icons/UserGroupIcon.js +1 -1
  387. package/dist/icons/UserIcon.js +1 -1
  388. package/dist/icons/UserLockIcon.js +1 -1
  389. package/dist/icons/ViewIcon.js +1 -1
  390. package/dist/icons/WarningFilledIcon.js +1 -1
  391. package/dist/icons/WarningIcon.js +1 -1
  392. package/dist/icons/wrap-icon.js +1 -1
  393. package/dist/index.d.ts +2 -1
  394. package/dist/index.js +3 -2
  395. package/dist/index.js.map +1 -1
  396. package/dist/provider.js +1 -1
  397. package/dist/providers/TrackingProvider.js +1 -1
  398. package/dist/providers/navigationAdapter.default.js +1 -1
  399. package/dist/tokens/base.js +1 -1
  400. package/dist/tokens/colors.js +1 -1
  401. package/dist/tokens/index.js +1 -1
  402. package/dist/tokens/layout.js +1 -1
  403. package/dist/tokens/palette.js +1 -1
  404. package/dist/tokens/shadows.js +1 -1
  405. package/dist/tokens/sizes.js +1 -1
  406. package/dist/tokens/spacing.js +1 -1
  407. package/dist/tokens/typography.js +1 -1
  408. package/dist/utils/ResizeSensor.js +1 -1
  409. package/dist/utils/index.d.ts +1 -0
  410. package/dist/utils/is-dev-env.js +1 -1
  411. package/dist/utils/modules.js +1 -1
  412. package/dist/utils/promise.js +1 -1
  413. package/dist/utils/raf.js +1 -1
  414. package/dist/utils/random.js +1 -1
  415. package/dist/utils/range.js +1 -1
  416. package/dist/utils/react/RenderCache.js +1 -1
  417. package/dist/utils/react/Slots.js +1 -1
  418. package/dist/utils/react/chain.js +1 -1
  419. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  420. package/dist/utils/react/index.d.ts +1 -0
  421. package/dist/utils/react/index.js +2 -1
  422. package/dist/utils/react/interactions.js +1 -1
  423. package/dist/utils/react/isTextOnly.js +1 -1
  424. package/dist/utils/react/mapProps.js +1 -1
  425. package/dist/utils/react/mergeProps.js +1 -1
  426. package/dist/utils/react/nullableValue.js +1 -1
  427. package/dist/utils/react/resolveIcon.js +1 -1
  428. package/dist/utils/react/sharedStore.js +1 -1
  429. package/dist/utils/react/useCombinedRefs.js +1 -1
  430. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  431. package/dist/utils/react/useEventBus.js +26 -17
  432. package/dist/utils/react/useEventBus.js.map +1 -1
  433. package/dist/utils/react/useId.js +1 -1
  434. package/dist/utils/react/useIsDarwin.js +1 -1
  435. package/dist/utils/react/useKeySymbols.js +1 -1
  436. package/dist/utils/react/useLayoutEffect.js +1 -1
  437. package/dist/utils/react/useLocalStorage.js +1 -1
  438. package/dist/utils/react/useMergeStyles.js +1 -1
  439. package/dist/utils/react/usePopoverSync.d.ts +116 -0
  440. package/dist/utils/react/usePopoverSync.js +131 -11
  441. package/dist/utils/react/usePopoverSync.js.map +1 -1
  442. package/dist/utils/react/useQaProps.js +1 -1
  443. package/dist/utils/react/useViewportSize.js +1 -1
  444. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  445. package/dist/utils/selection.js +1 -1
  446. package/dist/utils/styles.js +1 -1
  447. package/dist/utils/tree.js +1 -1
  448. package/dist/utils/warnings.js +1 -1
  449. package/dist/version.js +2 -2
  450. package/docs/components/actions/Button.md +102 -24
  451. package/docs/components/actions/ItemButton.md +71 -34
  452. package/package.json +1 -1
@@ -41,6 +41,7 @@ Supports [Base properties](../../BaseProperties.md)
41
41
  Customises the root element of the component.
42
42
 
43
43
  **Sub-elements:**
44
+
44
45
  - `Icon` – wrapper around the leading icon
45
46
  - `RightIcon` – wrapper around the trailing icon
46
47
  - `Label` – the button text content
@@ -114,27 +115,35 @@ The `mods` prop accepts the following modifiers you can override:
114
115
  ```jsx
115
116
  import { IconPlus } from '@tabler/icons-react';
116
117
 
117
- {/* Standard icon */}
118
- <Button icon={<IconPlus />} aria-label="Add item" />
119
-
120
- {/* Empty slot (reserves space but shows nothing) */}
121
- <Button icon={true} aria-label="Empty slot" />
122
-
123
- {/* Dynamic icon based on mods */}
124
- <Button
125
- icon={({ loading }) => loading ? <SpinnerIcon /> : <IconPlus />}
118
+ {
119
+ /* Standard icon */
120
+ }
121
+ <Button icon={<IconPlus />} aria-label="Add item" />;
122
+
123
+ {
124
+ /* Empty slot (reserves space but shows nothing) */
125
+ }
126
+ <Button icon={true} aria-label="Empty slot" />;
127
+
128
+ {
129
+ /* Dynamic icon based on mods */
130
+ }
131
+ <Button
132
+ icon={({ loading }) => (loading ? <SpinnerIcon /> : <IconPlus />)}
126
133
  aria-label="Dynamic icon"
127
134
  >
128
135
  Save
129
- </Button>
136
+ </Button>;
130
137
 
131
- {/* Return true from function for empty slot */}
132
- <Button
133
- icon={({ selected }) => selected ? <CheckIcon /> : true}
138
+ {
139
+ /* Return true from function for empty slot */
140
+ }
141
+ <Button
142
+ icon={({ selected }) => (selected ? <CheckIcon /> : true)}
134
143
  aria-label="Conditional icon"
135
144
  >
136
145
  Option
137
- </Button>
146
+ </Button>;
138
147
  ```
139
148
 
140
149
  ### Link Button
@@ -159,21 +168,31 @@ import { IconPlus } from '@tabler/icons-react';
159
168
  ### With Tooltip
160
169
 
161
170
  ```jsx
162
- {/* Simple tooltip text */}
163
- <Button icon={<IconPlus />} tooltip="Add new item" aria-label="Add" />
164
-
165
- {/* Auto tooltip on overflow */}
166
- <Button tooltip={true} width="100px">This text will be truncated</Button>
171
+ {
172
+ /* Simple tooltip text */
173
+ }
174
+ <Button icon={<IconPlus />} tooltip="Add new item" aria-label="Add" />;
175
+
176
+ {
177
+ /* Auto tooltip on overflow */
178
+ }
179
+ <Button tooltip={true} width="100px">
180
+ This text will be truncated
181
+ </Button>;
167
182
  ```
168
183
 
169
184
  ### Custom Size
170
185
 
171
186
  ```jsx
172
- {/* Using a number (pixels) */}
173
- <Button size={64}>Large Custom</Button>
174
-
175
- {/* Using a string multiplier */}
176
- <Button size="8x">8x Size</Button>
187
+ {
188
+ /* Using a number (pixels) */
189
+ }
190
+ <Button size={64}>Large Custom</Button>;
191
+
192
+ {
193
+ /* Using a string multiplier */
194
+ }
195
+ <Button size="8x">8x Size</Button>;
177
196
  ```
178
197
 
179
198
  ## Accessibility
@@ -195,6 +214,65 @@ import { IconPlus } from '@tabler/icons-react';
195
214
  - `aria-pressed` – Managed automatically when `isSelected` is used.
196
215
  - Additional ARIA attributes supported by React Aria's `useButton`.
197
216
 
217
+ ## Behaviour Inside Popovers
218
+
219
+ By default, pressing a `Button` inside an open popover (any overlay that
220
+ uses `usePopoverSync` — including the popovers rendered by `FilterPicker`,
221
+ `Picker`, `ComboBox`, `Select`, `MenuTrigger`, and
222
+ `DialogTrigger type="popover"`) **dismisses that popover** after the user's
223
+ `onPress` runs. This matches the common UX where a popover is a transient
224
+ surface: any action inside it should close it.
225
+
226
+ Modal / tray / fullscreen Dialogs are **not** affected — a Button inside a
227
+ modal Dialog does not auto-close it.
228
+
229
+ ### Opt-outs
230
+
231
+ There are three ways to keep the popover open when a Button is pressed:
232
+
233
+ 1. **Automatic for popover triggers.** Buttons that act as popover triggers
234
+ already carry `data-popover-trigger` (applied by `MenuTrigger`,
235
+ `DialogTrigger type="popover"`, `FilterPicker`, `Picker`, `ComboBox`,
236
+ `Select`). Modal-type `DialogTrigger` children are **not** marked, so they
237
+ correctly dismiss the parent popover and let the modal take over.
238
+ 2. **Manual via `data-popover-keep`.** Add the attribute to the button
239
+ (toggle case) or to any ancestor element (subtree case — useful when a
240
+ custom inline editor inside a popover footer should not collapse on
241
+ every interaction):
242
+
243
+ ```jsx
244
+ <Button data-popover-keep onPress={() => setMode((m) => !m)}>
245
+ Toggle
246
+ </Button>
247
+
248
+ <div data-popover-keep>
249
+ {/* All Buttons inside this wrapper opt out. */}
250
+ </div>
251
+ ```
252
+
253
+ 3. **Custom non-Cube triggers.** Call `useDismissParentPopover()` yourself if
254
+ your control should dismiss the popover but does not extend `Button` /
255
+ `ItemButton`:
256
+ ```jsx
257
+ const dismiss = useDismissParentPopover();
258
+ <MyCustomPressable
259
+ onPress={(e) => {
260
+ doThing();
261
+ dismiss(e.currentTarget);
262
+ }}
263
+ />;
264
+ ```
265
+
266
+ ### Async `onPress`
267
+
268
+ The dismiss is dispatched via the EventBus, which defers with `setTimeout(0)`.
269
+ This means synchronous `onPress` handlers (and any React state updates they
270
+ trigger) flush **before** the popover closes — including the common case of
271
+ opening a hoisted modal via `useDialogContainer` from a popover footer (the
272
+ modal mounts first, then the popover closes behind it). If your `onPress` is
273
+ async and `await`s before opening another overlay, the popover will close
274
+ first and the new overlay will appear after — usually fine, but worth noting.
275
+
198
276
  ## Best Practices
199
277
 
200
278
  1. **Do**: Provide a label for icon-only buttons
@@ -74,7 +74,7 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
74
74
  ### Sizes
75
75
 
76
76
  - `xsmall` - Extra small size for compact interfaces
77
- - `small` - Small size for dense layouts
77
+ - `small` - Small size for dense layouts
78
78
  - `medium` - Default size for most use cases
79
79
  - `large` - Large size for prominent actions
80
80
  - `xlarge` - Extra large size for hero actions
@@ -84,15 +84,13 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
84
84
  ### Basic Button
85
85
 
86
86
  ```jsx
87
- <ItemButton onPress={() => console.log('Clicked')}>
88
- Click me
89
- </ItemButton>
87
+ <ItemButton onPress={() => console.log('Clicked')}>Click me</ItemButton>
90
88
  ```
91
89
 
92
90
  ### Button with Icons
93
91
 
94
92
  ```jsx
95
- <ItemButton
93
+ <ItemButton
96
94
  icon={<IconFile />}
97
95
  rightIcon={<IconExternalLink />}
98
96
  onPress={handleOpen}
@@ -104,19 +102,13 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
104
102
  ### Link Button
105
103
 
106
104
  ```jsx
107
- <ItemButton to="/docs">
108
- Go to Documentation
109
- </ItemButton>
105
+ <ItemButton to="/docs">Go to Documentation</ItemButton>
110
106
  ```
111
107
 
112
108
  ### Button with Hotkey
113
109
 
114
110
  ```jsx
115
- <ItemButton
116
- hotkeys="cmd+s"
117
- onPress={handleSave}
118
- type="primary"
119
- >
111
+ <ItemButton hotkeys="cmd+s" onPress={handleSave} type="primary">
120
112
  Save Document
121
113
  </ItemButton>
122
114
  ```
@@ -124,11 +116,7 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
124
116
  ### Form Submit Button
125
117
 
126
118
  ```jsx
127
- <ItemButton
128
- htmlType="submit"
129
- type="primary"
130
- icon={<IconCheck />}
131
- >
119
+ <ItemButton htmlType="submit" type="primary" icon={<IconCheck />}>
132
120
  Submit Form
133
121
  </ItemButton>
134
122
  ```
@@ -136,10 +124,7 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
136
124
  ### Button with Selection State
137
125
 
138
126
  ```jsx
139
- <ItemButton
140
- isSelected={isSelected}
141
- onPress={() => setIsSelected(!isSelected)}
142
- >
127
+ <ItemButton isSelected={isSelected} onPress={() => setIsSelected(!isSelected)}>
143
128
  Toggle Selection
144
129
  </ItemButton>
145
130
  ```
@@ -149,12 +134,20 @@ Inherits all modifiers from [Item](../content/Item.md) plus:
149
134
  ItemButton supports inline actions that appear on the right side. Use the `ItemButton.Action` compound component for consistent styling:
150
135
 
151
136
  ```jsx
152
- <ItemButton
137
+ <ItemButton
153
138
  icon={<IconFile />}
154
139
  actions={
155
140
  <>
156
- <ItemButton.Action icon={<IconEdit />} aria-label="Edit" onPress={handleEdit} />
157
- <ItemButton.Action icon={<IconTrash />} aria-label="Delete" onPress={handleDelete} />
141
+ <ItemButton.Action
142
+ icon={<IconEdit />}
143
+ aria-label="Edit"
144
+ onPress={handleEdit}
145
+ />
146
+ <ItemButton.Action
147
+ icon={<IconTrash />}
148
+ aria-label="Delete"
149
+ onPress={handleDelete}
150
+ />
158
151
  </>
159
152
  }
160
153
  onPress={handleOpen}
@@ -188,9 +181,41 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
188
181
  - `aria-pressed` - Indicates toggle state for toggle buttons
189
182
  - `role` - Automatically set to "button" or "link" based on props
190
183
 
184
+ ## Behaviour Inside Popovers
185
+
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.
190
+
191
+ ### Opt-outs
192
+
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):
200
+ ```jsx
201
+ <ItemButton data-popover-keep onPress={() => setMode((m) => !m)}>
202
+ Toggle Mode
203
+ </ItemButton>
204
+ ```
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.
214
+
191
215
  ## Best Practices
192
216
 
193
217
  1. **Do**: Use clear, action-oriented text
218
+
194
219
  ```jsx
195
220
  <ItemButton onPress={handleSave} type="primary">
196
221
  Save Changes
@@ -198,6 +223,7 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
198
223
  ```
199
224
 
200
225
  2. **Do**: Add hotkeys for frequently used actions
226
+
201
227
  ```jsx
202
228
  <ItemButton hotkeys="cmd+s" onPress={handleSave}>
203
229
  Save Document
@@ -205,6 +231,7 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
205
231
  ```
206
232
 
207
233
  3. **Do**: Use appropriate button types for forms
234
+
208
235
  ```jsx
209
236
  <ItemButton htmlType="submit" type="primary">
210
237
  Submit Form
@@ -212,8 +239,9 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
212
239
  ```
213
240
 
214
241
  4. **Do**: Use `ItemButton.Action` for inline actions
242
+
215
243
  ```jsx
216
- <ItemButton
244
+ <ItemButton
217
245
  icon={<IconFile />}
218
246
  actions={
219
247
  <>
@@ -228,15 +256,21 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
228
256
  ```
229
257
 
230
258
  5. **Don't**: Use vague or unclear button text
259
+
231
260
  ```jsx
232
- {/* Avoid this - unclear what "OK" does */}
233
- <ItemButton onPress={handleAction}>OK</ItemButton>
261
+ {
262
+ /* Avoid this - unclear what "OK" does */
263
+ }
264
+ <ItemButton onPress={handleAction}>OK</ItemButton>;
234
265
  ```
235
266
 
236
267
  6. **Don't**: Add too many actions (limit to 2-3 for clarity)
268
+
237
269
  ```jsx
238
- {/* Avoid this - too many action buttons */}
239
- <ItemButton
270
+ {
271
+ /* Avoid this - too many action buttons */
272
+ }
273
+ <ItemButton
240
274
  actions={
241
275
  <>
242
276
  <ItemButton.Action icon={<IconEdit />} aria-label="Edit" />
@@ -247,13 +281,16 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
247
281
  }
248
282
  >
249
283
  Button with too many actions
250
- </ItemButton>
284
+ </ItemButton>;
251
285
  ```
252
286
 
253
287
  7. **Don't**: Overcrowd buttons with too many visual elements
288
+
254
289
  ```jsx
255
- {/* Avoid this - too many competing elements */}
256
- <ItemButton
290
+ {
291
+ /* Avoid this - too many competing elements */
292
+ }
293
+ <ItemButton
257
294
  icon={<IconA />}
258
295
  rightIcon={<IconB />}
259
296
  prefix="Pre"
@@ -261,7 +298,7 @@ Actions automatically inherit the parent button's `type` prop and adjust their s
261
298
  description="Long description"
262
299
  >
263
300
  Overcrowded Button
264
- </ItemButton>
301
+ </ItemButton>;
265
302
  ```
266
303
 
267
304
  8. **Accessibility**: Always ensure buttons have clear, descriptive labels, proper keyboard support, and provide `aria-label` for action buttons
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.0.0-canary-7544b7f",
3
+ "version": "0.0.0-canary-03bd4af",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {