@cube-dev/ui-kit 0.177.0 → 0.178.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/dist/CHANGELOG.md +10 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.d.ts +1 -0
  19. package/dist/components/actions/Button/Button.js +1 -1
  20. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  21. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  22. package/dist/components/actions/ButtonSplit/context.js +1 -1
  23. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  24. package/dist/components/actions/CommandMenu/styled.js +1 -1
  25. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  26. package/dist/components/actions/ItemActionContext.js +1 -1
  27. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  28. package/dist/components/actions/Link/Link.js +1 -1
  29. package/dist/components/actions/Menu/Menu.js +1 -1
  30. package/dist/components/actions/Menu/MenuItem.js +1 -1
  31. package/dist/components/actions/Menu/MenuSection.js +1 -1
  32. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  34. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  35. package/dist/components/actions/Menu/context.js +1 -1
  36. package/dist/components/actions/Menu/styled.js +1 -1
  37. package/dist/components/actions/index.js +1 -1
  38. package/dist/components/actions/use-action.js +1 -1
  39. package/dist/components/actions/use-anchored-menu.js +1 -1
  40. package/dist/components/actions/use-context-menu.js +1 -1
  41. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  42. package/dist/components/content/Alert/Alert.js +1 -1
  43. package/dist/components/content/Alert/use-alert.js +1 -1
  44. package/dist/components/content/Avatar/Avatar.js +1 -1
  45. package/dist/components/content/Badge/Badge.js +1 -1
  46. package/dist/components/content/Card/Card.js +1 -1
  47. package/dist/components/content/Content.js +1 -1
  48. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  49. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  50. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  51. package/dist/components/content/Divider.js +1 -1
  52. package/dist/components/content/Footer.js +1 -1
  53. package/dist/components/content/Header.js +1 -1
  54. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  55. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  56. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  57. package/dist/components/content/Item/Item.js +1 -1
  58. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  59. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  60. package/dist/components/content/Layout/GridLayout.js +1 -1
  61. package/dist/components/content/Layout/Layout.js +1 -1
  62. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  63. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  64. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  65. package/dist/components/content/Layout/LayoutContent.js +1 -1
  66. package/dist/components/content/Layout/LayoutContext.js +1 -1
  67. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  68. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  69. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  70. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutPane.js +1 -1
  72. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  73. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  74. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  75. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  76. package/dist/components/content/Layout/index.js +1 -1
  77. package/dist/components/content/Layout/utils.js +1 -1
  78. package/dist/components/content/Paragraph.js +1 -1
  79. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  80. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  81. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  82. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  83. package/dist/components/content/Result/Result.js +1 -1
  84. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  85. package/dist/components/content/Tag/Tag.js +1 -1
  86. package/dist/components/content/Text.d.ts +28 -28
  87. package/dist/components/content/Text.js +1 -1
  88. package/dist/components/content/TextItem/TextItem.js +1 -1
  89. package/dist/components/content/Title.js +1 -1
  90. package/dist/components/content/Tree/Tree.js +1 -1
  91. package/dist/components/content/Tree/TreeNode.js +1 -1
  92. package/dist/components/content/Tree/styled.js +1 -1
  93. package/dist/components/content/Tree/tree-index.js +1 -1
  94. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  95. package/dist/components/content/Tree/use-load-data.js +1 -1
  96. package/dist/components/content/highlightText.js +1 -1
  97. package/dist/components/content/use-auto-tooltip.js +1 -1
  98. package/dist/components/data/DataTable/DataTable.js +1 -1
  99. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  100. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  101. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  102. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  103. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  104. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  105. package/dist/components/data/TableBase/RowCollection.js +1 -1
  106. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  107. package/dist/components/data/TableBase/TableRow.js +1 -1
  108. package/dist/components/data/TableBase/TableView.js +1 -1
  109. package/dist/components/data/TableBase/column-menu.js +1 -1
  110. package/dist/components/data/TableBase/column-tint.js +1 -1
  111. package/dist/components/data/TableBase/row-menu.js +1 -1
  112. package/dist/components/data/TableBase/styled.d.ts +2 -1
  113. package/dist/components/data/TableBase/styled.js +1 -1
  114. package/dist/components/data/TableBase/table-tree.js +1 -1
  115. package/dist/components/data/TableBase/types.js +1 -1
  116. package/dist/components/data/TableBase/use-cell-selection.d.ts +1 -0
  117. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  118. package/dist/components/data/TableBase/use-column-order.js +1 -1
  119. package/dist/components/data/TableBase/use-container-width.js +1 -1
  120. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  121. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  122. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  123. package/dist/components/data/TableBase/use-table-search.js +1 -1
  124. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  125. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  126. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  127. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  128. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  129. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  130. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  131. package/dist/components/fields/Checkbox/context.js +1 -1
  132. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  133. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  134. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  135. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  136. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  137. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  138. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  139. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  140. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  141. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  142. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  143. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  144. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  145. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  146. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  147. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  148. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  149. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  150. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  151. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  152. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  153. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  154. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  155. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  156. package/dist/components/fields/DatePicker/period.js +1 -1
  157. package/dist/components/fields/DatePicker/props.js +1 -1
  158. package/dist/components/fields/DatePicker/utils.js +1 -1
  159. package/dist/components/fields/FileInput/FileInput.js +1 -1
  160. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  161. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +14 -0
  162. package/dist/components/fields/FilterPicker/FilterPicker.js +26 -13
  163. package/dist/components/fields/FilterPicker/FilterPicker.js.map +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 +1 -0
  169. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  170. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +2 -0
  171. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  172. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  173. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  174. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  175. package/dist/components/fields/Picker/Picker.d.ts +14 -0
  176. package/dist/components/fields/Picker/Picker.js +26 -13
  177. package/dist/components/fields/Picker/Picker.js.map +1 -1
  178. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  179. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  180. package/dist/components/fields/RadioGroup/context.js +1 -1
  181. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  182. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  183. package/dist/components/fields/Select/Select.d.ts +15 -1
  184. package/dist/components/fields/Select/Select.js +27 -6
  185. package/dist/components/fields/Select/Select.js.map +1 -1
  186. package/dist/components/fields/Slider/Gradation.js +1 -1
  187. package/dist/components/fields/Slider/HueSlider.js +1 -1
  188. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  189. package/dist/components/fields/Slider/Slider.js +1 -1
  190. package/dist/components/fields/Slider/SliderBase.js +1 -1
  191. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  192. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  193. package/dist/components/fields/Slider/elements.js +1 -1
  194. package/dist/components/fields/Slider/index.js +1 -1
  195. package/dist/components/fields/Switch/Switch.js +1 -1
  196. package/dist/components/fields/TextArea/TextArea.js +1 -1
  197. package/dist/components/fields/TextInput/TextInput.js +1 -1
  198. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  199. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  200. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  201. package/dist/components/fields/TriggerActions.js +64 -0
  202. package/dist/components/fields/TriggerActions.js.map +1 -0
  203. package/dist/components/fields/color/ColorPanel.js +1 -1
  204. package/dist/components/fields/color/channels.js +1 -1
  205. package/dist/components/fields/color/color.js +1 -1
  206. package/dist/components/fields/color/context.js +1 -1
  207. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  208. package/dist/components/form/Form/Field.js +1 -1
  209. package/dist/components/form/Form/Form.js +1 -1
  210. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  211. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  212. package/dist/components/form/Form/SubmitError.js +1 -1
  213. package/dist/components/form/Form/index.js +1 -1
  214. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  215. package/dist/components/form/Form/use-field/use-field.js +1 -1
  216. package/dist/components/form/Form/use-form.js +1 -1
  217. package/dist/components/form/Form/validation.js +1 -1
  218. package/dist/components/form/Label.js +1 -1
  219. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  220. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  221. package/dist/components/form/validation/use-validation-props.js +1 -1
  222. package/dist/components/form/wrapper.js +1 -1
  223. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  224. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  225. package/dist/components/layout/Board/Board.js +1 -1
  226. package/dist/components/layout/Board/BoardProvider.js +1 -1
  227. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  228. package/dist/components/layout/Board/Widget.js +1 -1
  229. package/dist/components/layout/Board/WidgetHost.js +1 -1
  230. package/dist/components/layout/Board/board-context.js +1 -1
  231. package/dist/components/layout/Board/board-store.js +1 -1
  232. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  233. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  234. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  235. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  236. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  237. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  238. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  239. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  240. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  241. package/dist/components/layout/Board/index.js +1 -1
  242. package/dist/components/layout/Board/responsive-utils.js +1 -1
  243. package/dist/components/layout/Board/use-board-layout.js +1 -1
  244. package/dist/components/layout/Board/use-board-registry.js +1 -1
  245. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  246. package/dist/components/layout/Board/use-board-selection.js +1 -1
  247. package/dist/components/layout/Flex.js +1 -1
  248. package/dist/components/layout/Flow.js +1 -1
  249. package/dist/components/layout/Grid.js +1 -1
  250. package/dist/components/layout/Panel.js +1 -1
  251. package/dist/components/layout/Prefix.js +1 -1
  252. package/dist/components/layout/ResizablePanel.js +1 -1
  253. package/dist/components/layout/Space.js +1 -1
  254. package/dist/components/layout/Suffix.js +1 -1
  255. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  256. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  257. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  258. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  259. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  260. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  261. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  262. package/dist/components/navigation/Tabs/Tabs.d.ts +3 -0
  263. package/dist/components/navigation/Tabs/Tabs.js +10 -1
  264. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  265. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  266. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  267. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  268. package/dist/components/navigation/Tabs/styled.js +1 -1
  269. package/dist/components/navigation/Tabs/types.js +1 -1
  270. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  271. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  272. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  273. package/dist/components/other/Calendar/Calendar.js +1 -1
  274. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  275. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  276. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  277. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  278. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  279. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  280. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  281. package/dist/components/other/Calendar/styled.js +1 -1
  282. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  283. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  284. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  285. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  286. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  287. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  288. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  289. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  290. package/dist/components/overlays/Dialog/DialogTrigger.js +2 -2
  291. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  292. package/dist/components/overlays/Dialog/context.js +1 -1
  293. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  294. package/dist/components/overlays/Modal/Modal.d.ts +2 -1
  295. package/dist/components/overlays/Modal/Modal.js +1 -1
  296. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  297. package/dist/components/overlays/Modal/Overlay.d.ts +1 -0
  298. package/dist/components/overlays/Modal/Overlay.js +1 -1
  299. package/dist/components/overlays/Modal/Popover.js +1 -1
  300. package/dist/components/overlays/Modal/Tray.js +1 -1
  301. package/dist/components/overlays/Modal/Underlay.js +1 -1
  302. package/dist/components/overlays/Modal/types.d.ts +1 -0
  303. package/dist/components/overlays/Notifications/Notification.js +1 -1
  304. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  305. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  306. package/dist/components/overlays/Notifications/NotificationContext.d.ts +2 -0
  307. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  308. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  309. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  310. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  311. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  312. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  313. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  314. package/dist/components/overlays/Notifications/index.js +1 -1
  315. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  316. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  317. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  318. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  319. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  320. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  321. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  322. package/dist/components/overlays/Toast/index.js +1 -1
  323. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  324. package/dist/components/overlays/Toast/useToast.js +1 -1
  325. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  326. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  327. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  328. package/dist/components/overlays/Tooltip/context.js +1 -1
  329. package/dist/components/portal/Portal.js +1 -1
  330. package/dist/components/portal/PortalProvider.d.ts +2 -0
  331. package/dist/components/portal/PortalProvider.js +1 -1
  332. package/dist/components/portal/index.d.ts +1 -0
  333. package/dist/components/portal/usePortal.js +1 -1
  334. package/dist/components/shared/DraggableCollection.js +1 -1
  335. package/dist/components/shared/InvalidIcon.js +1 -1
  336. package/dist/components/shared/ValidIcon.js +1 -1
  337. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  338. package/dist/components/status/Spin/Cube.js +1 -1
  339. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  340. package/dist/components/status/Spin/Spin.js +1 -1
  341. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  342. package/dist/data/item-themes.js +1 -1
  343. package/dist/data/themes.js +1 -1
  344. package/dist/eslint-plugin/defaults.generated.js +5 -1
  345. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  346. package/dist/eslint-plugin/index.js +1 -1
  347. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  348. package/dist/i18n/I18nProvider.js +1 -1
  349. package/dist/i18n/createFormatter.js +1 -1
  350. package/dist/i18n/index.js +1 -1
  351. package/dist/i18n/instance.js +1 -1
  352. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  353. package/dist/i18n/locales/en-US/uikit.js +1 -1
  354. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  355. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  356. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  357. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  358. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  359. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  360. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  361. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  362. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  363. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  364. package/dist/i18n/locales.js +1 -1
  365. package/dist/i18n/useFormatter.js +1 -1
  366. package/dist/i18n/useI18n.js +1 -1
  367. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  368. package/dist/icons/AdjustmentsIcon.js +1 -1
  369. package/dist/icons/AiIcon.js +1 -1
  370. package/dist/icons/AreaChartIcon.js +1 -1
  371. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  372. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  373. package/dist/icons/BackwardIcon.js +1 -1
  374. package/dist/icons/BarChartIcon.js +1 -1
  375. package/dist/icons/BellFilledIcon.js +1 -1
  376. package/dist/icons/BellIcon.js +1 -1
  377. package/dist/icons/BooleanIcon.js +1 -1
  378. package/dist/icons/CalendarEditIcon.js +1 -1
  379. package/dist/icons/CalendarIcon.js +1 -1
  380. package/dist/icons/CaretDownIcon.js +1 -1
  381. package/dist/icons/CaretUpIcon.js +1 -1
  382. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  383. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  384. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  385. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  386. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  387. package/dist/icons/ChartBarLineIcon.js +1 -1
  388. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  389. package/dist/icons/ChartBarStackedIcon.js +1 -1
  390. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  391. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  392. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  393. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  394. package/dist/icons/ChartBubbleIcon.js +1 -1
  395. package/dist/icons/ChartDonut2Icon.js +1 -1
  396. package/dist/icons/ChartFunnelIcon.js +1 -1
  397. package/dist/icons/ChartHeatmapIcon.js +1 -1
  398. package/dist/icons/ChartKPIIcon.js +1 -1
  399. package/dist/icons/ChartPie2Icon.js +1 -1
  400. package/dist/icons/ChartScatterIcon.js +1 -1
  401. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  402. package/dist/icons/CheckCircleIcon.js +1 -1
  403. package/dist/icons/CheckIcon.js +1 -1
  404. package/dist/icons/CircleFilledIcon.js +1 -1
  405. package/dist/icons/ClearIcon.js +1 -1
  406. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  407. package/dist/icons/CloseCircleIcon.js +1 -1
  408. package/dist/icons/CloseIcon.js +1 -1
  409. package/dist/icons/CodeIcon.js +1 -1
  410. package/dist/icons/ColumnTotalIcon.js +1 -1
  411. package/dist/icons/CopyIcon.js +1 -1
  412. package/dist/icons/CountIcon.js +1 -1
  413. package/dist/icons/CubeIcon.js +1 -1
  414. package/dist/icons/CubePauseIcon.js +1 -1
  415. package/dist/icons/CubePlayIcon.js +1 -1
  416. package/dist/icons/CurrencyDollarIcon.js +1 -1
  417. package/dist/icons/DangerIcon.js +1 -1
  418. package/dist/icons/DashboardIcon.js +1 -1
  419. package/dist/icons/DatabaseIcon.js +1 -1
  420. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  421. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  422. package/dist/icons/DirectionIcon.js +1 -1
  423. package/dist/icons/DonutIcon.js +1 -1
  424. package/dist/icons/DownIcon.js +1 -1
  425. package/dist/icons/EditIcon.js +1 -1
  426. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  427. package/dist/icons/ExclamationCircleIcon.js +1 -1
  428. package/dist/icons/ExclamationIcon.js +1 -1
  429. package/dist/icons/EyeIcon.js +1 -1
  430. package/dist/icons/EyeInvisibleIcon.js +1 -1
  431. package/dist/icons/FilterIcon.js +1 -1
  432. package/dist/icons/FolderFilledIcon.js +1 -1
  433. package/dist/icons/FolderIcon.js +1 -1
  434. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  435. package/dist/icons/FolderOpenIcon.js +1 -1
  436. package/dist/icons/ForwardIcon.js +1 -1
  437. package/dist/icons/GripVerticalIcon.js +1 -1
  438. package/dist/icons/HierarchyIcon.js +1 -1
  439. package/dist/icons/HierarchyOpenIcon.js +1 -1
  440. package/dist/icons/Icon.js +1 -1
  441. package/dist/icons/InfoCircleIcon.js +1 -1
  442. package/dist/icons/InfoIcon.js +1 -1
  443. package/dist/icons/KeyIcon.js +1 -1
  444. package/dist/icons/LeftIcon.js +1 -1
  445. package/dist/icons/LineChartIcon.js +1 -1
  446. package/dist/icons/LoadingIcon.js +1 -1
  447. package/dist/icons/LockFilledIcon.js +1 -1
  448. package/dist/icons/LockIcon.js +1 -1
  449. package/dist/icons/MoreIcon.js +1 -1
  450. package/dist/icons/NotAllowedIcon.js +1 -1
  451. package/dist/icons/Number123Icon.js +1 -1
  452. package/dist/icons/NumberIcon.js +1 -1
  453. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  454. package/dist/icons/PauseCircleIcon.js +1 -1
  455. package/dist/icons/PauseIcon.js +1 -1
  456. package/dist/icons/PercentageIcon.js +1 -1
  457. package/dist/icons/PieChartIcon.js +1 -1
  458. package/dist/icons/PipetteIcon.js +1 -1
  459. package/dist/icons/PlayCircleIcon.js +1 -1
  460. package/dist/icons/PlayIcon.js +1 -1
  461. package/dist/icons/PlusIcon.js +1 -1
  462. package/dist/icons/ProgressBarIcon.js +1 -1
  463. package/dist/icons/ReloadIcon.js +1 -1
  464. package/dist/icons/ReportIcon.js +1 -1
  465. package/dist/icons/ReturnIcon.js +1 -1
  466. package/dist/icons/RightIcon.js +1 -1
  467. package/dist/icons/RowTotalsIcon.js +1 -1
  468. package/dist/icons/SchemeIcon.js +1 -1
  469. package/dist/icons/SearchIcon.js +1 -1
  470. package/dist/icons/SemanticQueryIcon.js +1 -1
  471. package/dist/icons/SettingsIcon.js +1 -1
  472. package/dist/icons/ShieldFilledIcon.js +1 -1
  473. package/dist/icons/ShieldIcon.js +1 -1
  474. package/dist/icons/SlashIcon.js +1 -1
  475. package/dist/icons/SparklesIcon.js +1 -1
  476. package/dist/icons/SqlIcon.js +1 -1
  477. package/dist/icons/StatsIcon.js +1 -1
  478. package/dist/icons/StopIcon.js +1 -1
  479. package/dist/icons/StringIcon.js +1 -1
  480. package/dist/icons/SubtotalsIcon.js +1 -1
  481. package/dist/icons/SwitchIcon.js +1 -1
  482. package/dist/icons/TableIcon.js +1 -1
  483. package/dist/icons/ThumbsDownIcon.js +1 -1
  484. package/dist/icons/ThumbsUpIcon.js +1 -1
  485. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  486. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  487. package/dist/icons/ThunderboltIcon.js +1 -1
  488. package/dist/icons/TimeIcon.js +1 -1
  489. package/dist/icons/TrashIcon.js +1 -1
  490. package/dist/icons/UnlockIcon.js +1 -1
  491. package/dist/icons/UpIcon.js +1 -1
  492. package/dist/icons/UserGroupIcon.js +1 -1
  493. package/dist/icons/UserIcon.js +1 -1
  494. package/dist/icons/UserLockIcon.js +1 -1
  495. package/dist/icons/ViewIcon.js +1 -1
  496. package/dist/icons/WarningFilledIcon.js +1 -1
  497. package/dist/icons/WarningIcon.js +1 -1
  498. package/dist/icons/wrap-icon.js +1 -1
  499. package/dist/index.js +1 -1
  500. package/dist/probe/canonicalize.js +1 -1
  501. package/dist/probe/css.js +1 -1
  502. package/dist/probe/index.js +1 -1
  503. package/dist/provider.js +1 -1
  504. package/dist/providers/TrackingProvider.js +1 -1
  505. package/dist/providers/navigationAdapter.default.js +1 -1
  506. package/dist/tokens/all-tokens.js +1 -1
  507. package/dist/tokens/base.js +1 -1
  508. package/dist/tokens/color-seed.js +1 -1
  509. package/dist/tokens/color-theme.js +1 -1
  510. package/dist/tokens/colors.js +1 -1
  511. package/dist/tokens/layout.js +1 -1
  512. package/dist/tokens/lazy-styles.js +1 -1
  513. package/dist/tokens/legacy-color.js +1 -1
  514. package/dist/tokens/palette-config.js +1 -1
  515. package/dist/tokens/palette.js +1 -1
  516. package/dist/tokens/resolve.js +1 -1
  517. package/dist/tokens/shadows.js +1 -1
  518. package/dist/tokens/sizes.js +1 -1
  519. package/dist/tokens/spacing.js +1 -1
  520. package/dist/tokens/typography.js +1 -1
  521. package/dist/utils/ResizeSensor.js +1 -1
  522. package/dist/utils/colors.js +1 -1
  523. package/dist/utils/is-dev-env.js +1 -1
  524. package/dist/utils/modules.js +1 -1
  525. package/dist/utils/promise.js +1 -1
  526. package/dist/utils/raf.js +1 -1
  527. package/dist/utils/random.js +1 -1
  528. package/dist/utils/range.js +1 -1
  529. package/dist/utils/react/RenderCache.js +1 -1
  530. package/dist/utils/react/Slots.js +1 -1
  531. package/dist/utils/react/chain.js +1 -1
  532. package/dist/utils/react/disabledProps.js +1 -1
  533. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  534. package/dist/utils/react/index.js +1 -1
  535. package/dist/utils/react/interactions.js +1 -1
  536. package/dist/utils/react/isTextOnly.js +1 -1
  537. package/dist/utils/react/mapProps.js +1 -1
  538. package/dist/utils/react/mergeProps.js +1 -1
  539. package/dist/utils/react/nullableValue.js +1 -1
  540. package/dist/utils/react/resolveIcon.js +1 -1
  541. package/dist/utils/react/sharedStore.js +1 -1
  542. package/dist/utils/react/useBufferedValue.js +1 -1
  543. package/dist/utils/react/useCombinedRefs.js +1 -1
  544. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  545. package/dist/utils/react/useEventBus.js +1 -1
  546. package/dist/utils/react/useId.js +1 -1
  547. package/dist/utils/react/useIsDarwin.js +1 -1
  548. package/dist/utils/react/useKeySymbols.js +1 -1
  549. package/dist/utils/react/useLayoutEffect.js +1 -1
  550. package/dist/utils/react/useLocalStorage.js +1 -1
  551. package/dist/utils/react/useMergeStyles.js +1 -1
  552. package/dist/utils/react/usePopoverSync.js +1 -1
  553. package/dist/utils/react/useQaProps.js +1 -1
  554. package/dist/utils/react/useScheme.js +1 -1
  555. package/dist/utils/react/useViewportSize.js +1 -1
  556. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  557. package/dist/utils/selection.js +1 -1
  558. package/dist/utils/styles.js +1 -1
  559. package/dist/utils/tree.js +1 -1
  560. package/dist/utils/warnings.js +1 -1
  561. package/dist/version.js +2 -2
  562. package/docs/components/fields/FilterPicker.md +45 -0
  563. package/docs/components/fields/Picker.md +47 -0
  564. package/docs/components/fields/Select.md +43 -0
  565. package/docs/components/navigation/Tabs.md +19 -1
  566. package/docs/components/overlays/DialogTrigger.md +1 -1
  567. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  import { EventBusContext, useEventBus } from "./useEventBus.js";
3
3
  import { useCallback, useContext, useEffect, useRef } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  //#region src/utils/react/useQaProps.ts
3
3
  /**
4
4
  * Processes QA props.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  import { useSyncExternalStore } from "react";
3
3
 
4
4
  //#region src/utils/react/useScheme.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useViewportSize.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  import { isValidElement } from "react";
3
3
  import { isFragment } from "react-is";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  //#region src/utils/selection.ts
3
3
  /**
4
4
  * Deduplicate/toggle keys in a selection: if a key appears twice it is
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  //#region src/utils/styles.ts
3
3
  /**
4
4
  * Split properties into style and non-style properties.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  //#region src/utils/tree.ts
3
3
  function toFlatTree(tree, includingFolders) {
4
4
  return tree.reduce((result, node) => {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  import { isDevEnvOrTest } from "./is-dev-env.js";
3
3
 
4
4
  //#region src/utils/warnings.ts
package/dist/version.js CHANGED
@@ -1,6 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.177.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.178.0 | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.177.0";
3
+ const VERSION = "0.178.0";
4
4
  const TASTY_VERSION = "3.7.0";
5
5
  if (typeof window !== "undefined") {
6
6
  const version = VERSION;
@@ -72,6 +72,7 @@ Choose a different component when the interaction has another shape:
72
72
  - **`onEscape`** `() => void` — Callback when Escape key is pressed
73
73
  - **`onOptionClick`** `(key: Key) => void` — Callback when an option is clicked (non-checkbox area)
74
74
  - **`onClear`** `() => void` — Callback called when the clear button is pressed
75
+ - **`actions`** `ReactNode` — Custom actions rendered inside the trigger, to the left of the built-in clear button and dropdown caret
75
76
  - **`onOpenChange`** `(isOpen: boolean) => void` — Callback called when the popover open state changes
76
77
  - **`isReorderable`** `boolean` (default: `false`) — Enable drag-and-drop item reordering in the dropdown list
77
78
  - **`onReorder`** `(newOrder: string[]) => void` — Callback when items are reordered via drag-and-drop or keyboard (Alt+Arrow)
@@ -208,6 +209,19 @@ For detailed information about all available item properties, see [Item document
208
209
  </FilterPicker>
209
210
  ```
210
211
 
212
+ ### FilterPicker.Action
213
+
214
+ An [ItemAction](../actions/ItemAction.md) re-exported for the `actions` slot. It picks up the trigger's size and theme, so an action matches the field it sits in without being configured. Give every icon-only action an `aria-label` (a `tooltip` string also supplies one), since the icon alone has no accessible name.
215
+
216
+ ```jsx
217
+ <FilterPicker
218
+ label="Favorite Fruit"
219
+ actions={<FilterPicker.Action icon={<ReloadIcon />} aria-label="Reset" onPress={reset} />}
220
+ >
221
+ {items}
222
+ </FilterPicker>
223
+ ```
224
+
211
225
  ### FilterPicker.Section
212
226
 
213
227
  Groups related items together with an optional heading.
@@ -348,6 +362,37 @@ const categories = [
348
362
  </FilterPicker>
349
363
  ```
350
364
 
365
+ ### With Custom Actions
366
+
367
+ Use `actions` to add your own controls inside the trigger. They render to the left of the built-in clear button and dropdown caret, and pressing one runs its handler without opening the popover — so an action can do something the clear button cannot, such as restoring a default selection instead of emptying it.
368
+
369
+ Actions follow the trigger's disabled state but not `isReadOnly` — a read-only field can still host an action that does not change the value, so pass `isDisabled` yourself for one that does. Pressing an action neither opens nor closes the popover, and works while the popover is open.
370
+
371
+ ```jsx
372
+ const DEFAULT_KEY = 'apple';
373
+
374
+ <FilterPicker
375
+ label="Favorite Fruit"
376
+ placeholder="Choose items..."
377
+ selectedKey={selectedKey}
378
+ isClearable
379
+ actions={
380
+ selectedKey !== DEFAULT_KEY ? (
381
+ <FilterPicker.Action
382
+ icon={<ReloadIcon />}
383
+ aria-label="Reset to default"
384
+ tooltip="Reset to default"
385
+ onPress={() => setSelectedKey(DEFAULT_KEY)}
386
+ />
387
+ ) : null
388
+ }
389
+ onSelectionChange={setSelectedKey}
390
+ >
391
+ <FilterPicker.Item key="apple">Apple</FilterPicker.Item>
392
+ <FilterPicker.Item key="banana">Banana</FilterPicker.Item>
393
+ </FilterPicker>
394
+ ```
395
+
351
396
  ### Multiple Selection
352
397
 
353
398
  ```jsx
@@ -49,6 +49,7 @@ Choose a different component when the interaction has another shape:
49
49
  - **`disabledKeys`** `Key[]` — Array of keys for disabled items
50
50
  - **`isClearable`** `boolean` (default: `false`) — Whether the picker shows a clear button when a selection is made
51
51
  - **`onClear`** `() => void` — Callback called when the clear button is pressed
52
+ - **`actions`** `ReactNode` — Custom actions rendered inside the trigger, to the left of the built-in clear button and dropdown caret
52
53
  - **`sortSelectedToTop`** `boolean` — Sort selected items to the top when the popover opens (only works with `items` prop)
53
54
  - **`renderSummary`** `((args: { selectedLabels, selectedKeys, selectionMode }) => ReactNode) | false` — Custom renderer for the summary shown inside the trigger
54
55
  - **`header`** `ReactNode` — Custom header content in the popover
@@ -220,6 +221,21 @@ See [Item documentation](../content/Item.md) for the complete API. Common proper
220
221
  </Picker>
221
222
  ```
222
223
 
224
+ ### Picker.Action
225
+
226
+ An [ItemAction](../actions/ItemAction.md) re-exported for the `actions` slot. It picks up the trigger's size and theme, so an action matches the field it sits in without being configured.
227
+
228
+ ```jsx
229
+ <Picker
230
+ label="Favorite Fruit"
231
+ actions={<Picker.Action icon={<ReloadIcon />} aria-label="Reset" onPress={reset} />}
232
+ >
233
+ {items}
234
+ </Picker>
235
+ ```
236
+
237
+ Give every icon-only action an `aria-label` (a `tooltip` string also supplies one), since the icon alone has no accessible name.
238
+
223
239
  ### Picker.Section
224
240
 
225
241
  Groups related items together under an optional section heading. Sections provide visual and semantic grouping for better organization.
@@ -374,6 +390,37 @@ Enable users to clear their selection with a clear button that appears when an i
374
390
  </Picker>
375
391
  ```
376
392
 
393
+ ### With Custom Actions
394
+
395
+ Use `actions` to add your own controls inside the trigger. They render to the left of the built-in clear button and dropdown caret, and pressing one runs its handler without opening the popover — so an action can do something the clear button cannot, such as restoring a default selection instead of emptying it.
396
+
397
+ Actions follow the trigger's disabled state but not `isReadOnly` — a read-only field can still host an action that does not change the value, so pass `isDisabled` yourself for one that does. Pressing an action neither opens nor closes the popover, and works while the popover is open.
398
+
399
+ ```jsx
400
+ const DEFAULT_KEY = 'apple';
401
+
402
+ <Picker
403
+ label="Favorite Fruit"
404
+ placeholder="Select a fruit"
405
+ selectedKey={selectedKey}
406
+ isClearable
407
+ actions={
408
+ selectedKey !== DEFAULT_KEY ? (
409
+ <Picker.Action
410
+ icon={<ReloadIcon />}
411
+ aria-label="Reset to default"
412
+ tooltip="Reset to default"
413
+ onPress={() => setSelectedKey(DEFAULT_KEY)}
414
+ />
415
+ ) : null
416
+ }
417
+ onSelectionChange={setSelectedKey}
418
+ >
419
+ <Picker.Item key="apple">Apple</Picker.Item>
420
+ <Picker.Item key="banana">Banana</Picker.Item>
421
+ </Picker>
422
+ ```
423
+
377
424
  ### Multiple Selection with Select All
378
425
 
379
426
  Add a "Select All" option for quick selection of all available items in multiple selection mode.
@@ -38,6 +38,7 @@ Choose a different component when the interaction has another shape:
38
38
  - **`size`** `string` (default: `medium`) — Size of the select component
39
39
  - **`direction`** `string` (default: `bottom`) — Preferred direction for the dropdown menu
40
40
  - **`isClearable`** `boolean` (default: `false`) — Whether the select is clearable using a clear button in the rightIcon slot
41
+ - **`actions`** `ReactNode` — Custom actions rendered inside the trigger, to the left of the built-in clear button and dropdown caret
41
42
  - **`shouldFlip`** `boolean` (default: `true`) — Whether dropdown should flip to fit in viewport
42
43
  - **`overlayOffset`** `number` (default: `8`) — Distance between select and dropdown in pixels
43
44
  - **`items`** `Iterable<T>` — Item objects used when rendering dynamic collections
@@ -77,6 +78,8 @@ Choose a different component when the interaction has another shape:
77
78
 
78
79
  **onClear** - Callback fired when the clear button is pressed, allowing you to perform custom actions when the selection is cleared.
79
80
 
81
+ **actions** - Your own controls inside the trigger, rendered to the left of the built-in clear button and dropdown caret. Pressing one runs its handler without opening or closing the popover — including while the popover is open — so an action can do something the clear button cannot, such as restoring a default selection instead of emptying it. Use `Select.Action` so they match the trigger's size and theme. Actions follow the trigger's disabled state but not `isReadOnly`; pass `isDisabled` yourself for an action that changes the value.
82
+
80
83
  **tooltip** - Enables tooltip display on the trigger button. Can be:
81
84
 
82
85
  - `string` - Simple tooltip text
@@ -212,6 +215,19 @@ For detailed information about all available item properties, see [Item document
212
215
  </Select>
213
216
  ```
214
217
 
218
+ ### Select.Action
219
+
220
+ An [ItemAction](../actions/ItemAction.md) re-exported for the `actions` slot. It picks up the trigger's size and theme, so an action matches the field it sits in without being configured. Give every icon-only action an `aria-label` (a `tooltip` string also supplies one), since the icon alone has no accessible name.
221
+
222
+ ```jsx
223
+ <Select
224
+ label="Color"
225
+ actions={<Select.Action icon={<ReloadIcon />} aria-label="Reset" onPress={reset} />}
226
+ >
227
+ {items}
228
+ </Select>
229
+ ```
230
+
215
231
  ### Select.Section
216
232
 
217
233
  Groups related options together with an optional heading.
@@ -286,6 +302,33 @@ Groups related options together with an optional heading.
286
302
  </Select>
287
303
  ```
288
304
 
305
+ ### With Custom Actions
306
+
307
+ ```jsx
308
+ const DEFAULT_KEY = 'blue';
309
+
310
+ <Select
311
+ isClearable
312
+ label="Color"
313
+ placeholder="Choose a color..."
314
+ selectedKey={selectedKey}
315
+ actions={
316
+ selectedKey !== DEFAULT_KEY ? (
317
+ <Select.Action
318
+ icon={<ReloadIcon />}
319
+ aria-label="Reset to default"
320
+ tooltip="Reset to default"
321
+ onPress={() => setSelectedKey(DEFAULT_KEY)}
322
+ />
323
+ ) : null
324
+ }
325
+ onSelectionChange={setSelectedKey}
326
+ >
327
+ <Select.Item key="red">Red</Select.Item>
328
+ <Select.Item key="blue">Blue</Select.Item>
329
+ </Select>
330
+ ```
331
+
289
332
  ### Validation States
290
333
 
291
334
  ```jsx
@@ -244,6 +244,24 @@ Action button designed for the Tabs prefix/suffix slots. Styled with sharp edges
244
244
 
245
245
  Inherits all props from `ItemButton` except `shape` (always sharp).
246
246
 
247
+ ### Tab.Action
248
+
249
+ Action for a single tab's own `actions` slot, where it renders to the left of the built-in menu trigger and delete button. It is an [ItemAction](../actions/ItemAction.md), the same component those built-ins use, so it picks up the tab's size and theme without being configured. Pressing one runs its handler without selecting the tab.
250
+
251
+ Not to be confused with `Tabs.Action`, which is sized for the tab bar's `prefix` / `suffix` slots rather than for a tab.
252
+
253
+ ```jsx
254
+ <Tab
255
+ key="tab1"
256
+ title="Tab 1"
257
+ actions={<Tab.Action icon={<PinIcon />} aria-label="Pin tab" onPress={handlePin} />}
258
+ >
259
+ Content
260
+ </Tab>
261
+ ```
262
+
263
+ Give every icon-only action an `aria-label` (a `tooltip` string also supplies one), since the icon alone has no accessible name.
264
+
247
265
  ### Tab Props
248
266
 
249
267
  `Tab` extends [Item](../content/Item.md), so it accepts all Item props except those that don't apply to tabs (`description`, `hotkeys`, `theme`, `shape`, `variant`, `highlight`, `isSelected`, `htmlType`). This includes `icon`, `rightIcon`, `prefix`, `suffix`, `tooltip`, `isLoading`, `loadingSlot`, and all style props.
@@ -254,7 +272,7 @@ In addition, Tab accepts these tab-specific props:
254
272
  - **`isDisabled`** `boolean` — Disables the tab
255
273
  - **`size`** `TabSize` — Override tab size for this tab
256
274
  - **`type`** `TabType` — Override tab type for this tab
257
- - **`actions`** `ReactNode` — Custom actions to render in the tab
275
+ - **`actions`** `ReactNode` — Custom actions to render in the tab, left of the built-in menu trigger and delete button. Use `Tab.Action`
258
276
  - **`autoHideActions`** `boolean` — Show actions only on hover (overrides Tabs-level)
259
277
  - **`isEditable`** `boolean` — Whether the tab title can be edited (overrides Tabs-level)
260
278
  - **`onTitleChange`** `(newTitle: string) => void` — Callback when title changes (overrides Tabs-level)
@@ -35,7 +35,7 @@ DialogTrigger serves as a wrapper around a Dialog and its associated trigger, li
35
35
  - **`onDismiss`** `function` — Callback fired when the dialog is dismissed
36
36
  - **`targetRef`** — The ref of the element the Dialog should visually attach itself to
37
37
  - **`styles`** — The style map for the overlay
38
- - **`shouldCloseOnInteractOutside`** `(element: Element) => boolean` — Function to determine if a popover type Dialog should close on outside interaction. Asked before the built-in dismiss behaviours, so returning `false` keeps the popover open even for a `Button` / `ItemButton` that would otherwise dismiss it — and the pressed control still receives its own click. The element passed is the deepest node under the pointer (for a `Button` that is the label inside it, not the `<button>`), so guard with `contains()` rather than an identity check
38
+ - **`shouldCloseOnInteractOutside`** `(element: Element) => boolean` — Function to determine if a popover type Dialog should close on outside interaction. Asked before every built-in dismiss behaviour, so returning `false` keeps the popover open even for a `Button` / `ItemButton` that would otherwise dismiss it, or for a control the trigger itself owns (a picker's clear button, its custom `actions`) that would otherwise be read as a press on the trigger — and the pressed control still receives its own click. The element passed is the deepest node under the pointer (for a `Button` that is the label inside it, not the `<button>`), so guard with `contains()` rather than an identity check
39
39
  - **`shouldRestoreFocus`** `boolean` (default: `true`) — Whether focus returns to the trigger when the dialog closes. Only needed for a surface that claims focus _later_ than the restore (async load, entry animation); an action that focuses the surface it opens is already left alone — see [Focus Management](#best-practices)
40
40
 
41
41
  ### Base Properties
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.177.0",
3
+ "version": "0.178.0",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {