@cube-dev/ui-kit 0.102.0 → 0.104.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 (615) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/es/_internal/hooks/index.js +1 -1
  3. package/es/_internal/hooks/use-chained-callback.js +1 -1
  4. package/es/_internal/hooks/use-debounced-value.js +1 -1
  5. package/es/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/es/_internal/hooks/use-effect-once.js +1 -1
  7. package/es/_internal/hooks/use-event.js +1 -1
  8. package/es/_internal/hooks/use-is-first-render.js +1 -1
  9. package/es/_internal/hooks/use-sync-ref.js +1 -1
  10. package/es/_internal/hooks/use-timer/index.js +1 -1
  11. package/es/_internal/hooks/use-timer/timer.js +1 -1
  12. package/es/_internal/hooks/use-timer/use-timer.js +1 -1
  13. package/es/_internal/hooks/use-update-effect.js +1 -1
  14. package/es/_internal/hooks/use-warn.js +1 -1
  15. package/es/_internal/index.js +1 -1
  16. package/es/components/Block.js +1 -1
  17. package/es/components/CollectionItem.js +1 -1
  18. package/es/components/GlobalStyles.js +1 -1
  19. package/es/components/GridProvider.js +1 -1
  20. package/es/components/HiddenInput.js +1 -1
  21. package/es/components/OpenTrasition.js +1 -1
  22. package/es/components/Root.js +1 -1
  23. package/es/components/actions/Action/Action.js +1 -1
  24. package/es/components/actions/Button/Button.js +16 -2
  25. package/es/components/actions/Button/index.js +1 -1
  26. package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  27. package/es/components/actions/CommandMenu/CommandMenu.js +1 -1
  28. package/es/components/actions/CommandMenu/index.js +1 -1
  29. package/es/components/actions/CommandMenu/styled.js +1 -1
  30. package/es/components/actions/ItemAction/ItemAction.js +20 -3
  31. package/es/components/actions/ItemAction/index.js +1 -1
  32. package/es/components/actions/ItemActionContext.js +1 -1
  33. package/es/components/actions/ItemButton/ItemButton.js +1 -1
  34. package/es/components/actions/ItemButton/index.js +1 -1
  35. package/es/components/actions/Link/Link.js +1 -1
  36. package/es/components/actions/Menu/Menu.js +1 -1
  37. package/es/components/actions/Menu/MenuItem.js +1 -1
  38. package/es/components/actions/Menu/MenuSection.js +1 -1
  39. package/es/components/actions/Menu/MenuTrigger.js +1 -1
  40. package/es/components/actions/Menu/SubMenuTrigger.js +1 -1
  41. package/es/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  42. package/es/components/actions/Menu/context.js +1 -1
  43. package/es/components/actions/Menu/index.js +1 -1
  44. package/es/components/actions/Menu/styled.js +1 -1
  45. package/es/components/actions/index.js +1 -1
  46. package/es/components/actions/use-action.js +1 -1
  47. package/es/components/actions/use-anchored-menu.js +1 -1
  48. package/es/components/actions/use-context-menu.js +1 -1
  49. package/es/components/content/ActiveZone/ActiveZone.js +1 -1
  50. package/es/components/content/Alert/Alert.js +1 -1
  51. package/es/components/content/Alert/index.js +1 -1
  52. package/es/components/content/Alert/types.js +1 -1
  53. package/es/components/content/Alert/use-alert.js +1 -1
  54. package/es/components/content/Avatar/Avatar.js +1 -1
  55. package/es/components/content/Badge/Badge.js +1 -1
  56. package/es/components/content/Card/Card.js +1 -1
  57. package/es/components/content/Content.js +1 -1
  58. package/es/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  59. package/es/components/content/CopyPasteBlock/index.js +1 -1
  60. package/es/components/content/CopySnippet/CopySnippet.js +1 -1
  61. package/es/components/content/CopySnippet/index.js +1 -1
  62. package/es/components/content/Disclosure/Disclosure.js +1 -1
  63. package/es/components/content/Disclosure/index.js +1 -1
  64. package/es/components/content/Divider.js +1 -1
  65. package/es/components/content/Footer.js +1 -1
  66. package/es/components/content/Header.js +1 -1
  67. package/es/components/content/HotKeys/HotKeys.js +1 -1
  68. package/es/components/content/HotKeys/index.js +1 -1
  69. package/es/components/content/Item/Item.js +30 -9
  70. package/es/components/content/Item/index.js +1 -1
  71. package/es/components/content/ItemBadge/ItemBadge.js +1 -1
  72. package/es/components/content/ItemBadge/index.js +1 -1
  73. package/es/components/content/Layout/GridLayout.js +1 -1
  74. package/es/components/content/Layout/Layout.js +1 -1
  75. package/es/components/content/Layout/LayoutBlock.js +1 -1
  76. package/es/components/content/Layout/LayoutCenter.js +1 -1
  77. package/es/components/content/Layout/LayoutContainer.js +1 -1
  78. package/es/components/content/Layout/LayoutContent.js +1 -1
  79. package/es/components/content/Layout/LayoutContext.js +1 -1
  80. package/es/components/content/Layout/LayoutFlex.js +1 -1
  81. package/es/components/content/Layout/LayoutFooter.js +1 -1
  82. package/es/components/content/Layout/LayoutGrid.js +1 -1
  83. package/es/components/content/Layout/LayoutHeader.js +1 -1
  84. package/es/components/content/Layout/LayoutPane.js +1 -1
  85. package/es/components/content/Layout/LayoutPanel.js +1 -1
  86. package/es/components/content/Layout/LayoutPanelHeader.js +1 -1
  87. package/es/components/content/Layout/LayoutToolbar.js +1 -1
  88. package/es/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  89. package/es/components/content/Layout/index.js +1 -1
  90. package/es/components/content/Layout/utils.js +1 -1
  91. package/es/components/content/List/SectionHeading.js +1 -1
  92. package/es/components/content/List/index.js +1 -1
  93. package/es/components/content/Paragraph.js +1 -1
  94. package/es/components/content/Placeholder/Placeholder.js +1 -1
  95. package/es/components/content/PrismCode/PrismCode.js +1 -1
  96. package/es/components/content/PrismCode/prismSetup.js +1 -1
  97. package/es/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  98. package/es/components/content/Result/Result.js +1 -1
  99. package/es/components/content/Skeleton/Skeleton.js +1 -1
  100. package/es/components/content/Tag/Tag.js +1 -1
  101. package/es/components/content/Text.js +1 -1
  102. package/es/components/content/TextItem/TextItem.js +1 -1
  103. package/es/components/content/TextItem/index.js +1 -1
  104. package/es/components/content/Title.js +1 -1
  105. package/es/components/content/highlightText.js +1 -1
  106. package/es/components/content/use-auto-tooltip.js +1 -1
  107. package/es/components/fields/Checkbox/Checkbox.js +1 -1
  108. package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
  109. package/es/components/fields/Checkbox/context.js +1 -1
  110. package/es/components/fields/Checkbox/index.js +1 -1
  111. package/es/components/fields/ComboBox/ComboBox.js +1 -1
  112. package/es/components/fields/ComboBox/index.js +1 -1
  113. package/es/components/fields/DatePicker/DateInput.js +1 -1
  114. package/es/components/fields/DatePicker/DateInputBase.js +1 -1
  115. package/es/components/fields/DatePicker/DatePicker.js +1 -1
  116. package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
  117. package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
  118. package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
  119. package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
  120. package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
  121. package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  122. package/es/components/fields/DatePicker/TimeInput.js +1 -1
  123. package/es/components/fields/DatePicker/index.js +1 -1
  124. package/es/components/fields/DatePicker/intl.js +1 -1
  125. package/es/components/fields/DatePicker/parseDate.js +1 -1
  126. package/es/components/fields/DatePicker/props.js +1 -1
  127. package/es/components/fields/DatePicker/types.js +1 -1
  128. package/es/components/fields/DatePicker/utils.js +1 -1
  129. package/es/components/fields/FileInput/FileInput.js +1 -1
  130. package/es/components/fields/FilterListBox/FilterListBox.js +1 -1
  131. package/es/components/fields/FilterListBox/index.js +1 -1
  132. package/es/components/fields/FilterPicker/FilterPicker.js +3 -3
  133. package/es/components/fields/FilterPicker/index.js +1 -1
  134. package/es/components/fields/Input/Input.js +1 -1
  135. package/es/components/fields/Input/index.js +1 -1
  136. package/es/components/fields/ListBox/ListBox.js +1 -1
  137. package/es/components/fields/ListBox/index.js +1 -1
  138. package/es/components/fields/NumberInput/NumberInput.js +1 -1
  139. package/es/components/fields/NumberInput/StepButton.js +1 -1
  140. package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
  141. package/es/components/fields/Picker/Picker.js +3 -3
  142. package/es/components/fields/Picker/index.js +1 -1
  143. package/es/components/fields/RadioGroup/Radio.js +1 -1
  144. package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
  145. package/es/components/fields/RadioGroup/context.js +1 -1
  146. package/es/components/fields/RadioGroup/index.js +1 -1
  147. package/es/components/fields/SearchInput/SearchInput.js +1 -1
  148. package/es/components/fields/SearchInput/index.js +1 -1
  149. package/es/components/fields/Select/Select.js +1 -1
  150. package/es/components/fields/Select/index.js +1 -1
  151. package/es/components/fields/Slider/Gradation.js +1 -1
  152. package/es/components/fields/Slider/Header.js +1 -1
  153. package/es/components/fields/Slider/RangeSlider.js +1 -1
  154. package/es/components/fields/Slider/Slider.js +1 -1
  155. package/es/components/fields/Slider/SliderBase.js +1 -1
  156. package/es/components/fields/Slider/SliderInput.js +1 -1
  157. package/es/components/fields/Slider/SliderThumb.js +1 -1
  158. package/es/components/fields/Slider/SliderTrack.js +1 -1
  159. package/es/components/fields/Slider/elements.js +1 -1
  160. package/es/components/fields/Slider/index.js +1 -1
  161. package/es/components/fields/Slider/types.js +1 -1
  162. package/es/components/fields/Switch/Switch.js +1 -1
  163. package/es/components/fields/Switch/index.js +1 -1
  164. package/es/components/fields/TextArea/TextArea.js +1 -1
  165. package/es/components/fields/TextArea/index.js +1 -1
  166. package/es/components/fields/TextInput/TextInput.js +1 -1
  167. package/es/components/fields/TextInput/TextInputBase.js +1 -1
  168. package/es/components/fields/TextInput/index.js +1 -1
  169. package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  170. package/es/components/fields/TextInputMapper/index.js +1 -1
  171. package/es/components/fields/index.js +1 -1
  172. package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
  173. package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  174. package/es/components/form/FieldWrapper/index.js +1 -1
  175. package/es/components/form/FieldWrapper/types.js +1 -1
  176. package/es/components/form/Form/Field.js +1 -1
  177. package/es/components/form/Form/Form.js +1 -1
  178. package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
  179. package/es/components/form/Form/ResetButton/index.js +1 -1
  180. package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  181. package/es/components/form/Form/SubmitButton/index.js +1 -1
  182. package/es/components/form/Form/SubmitError.js +1 -1
  183. package/es/components/form/Form/index.js +1 -1
  184. package/es/components/form/Form/types.js +1 -1
  185. package/es/components/form/Form/use-field/index.js +1 -1
  186. package/es/components/form/Form/use-field/types.js +1 -1
  187. package/es/components/form/Form/use-field/use-field-props.js +1 -1
  188. package/es/components/form/Form/use-field/use-field.js +1 -1
  189. package/es/components/form/Form/use-form.js +1 -1
  190. package/es/components/form/Form/validation.js +1 -1
  191. package/es/components/form/Label.js +1 -1
  192. package/es/components/form/index.js +1 -1
  193. package/es/components/form/wrapper.js +1 -1
  194. package/es/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  195. package/es/components/helpers/DisplayTransition/index.js +1 -1
  196. package/es/components/helpers/IconSwitch/IconSwitch.js +1 -1
  197. package/es/components/helpers/index.js +1 -1
  198. package/es/components/layout/Flex.js +1 -1
  199. package/es/components/layout/Flow.js +1 -1
  200. package/es/components/layout/Grid.js +1 -1
  201. package/es/components/layout/Panel.js +1 -1
  202. package/es/components/layout/Prefix.js +1 -1
  203. package/es/components/layout/ResizablePanel.js +1 -1
  204. package/es/components/layout/Space.js +1 -1
  205. package/es/components/layout/Suffix.js +1 -1
  206. package/es/components/navigation/Tabs/DraggableTabList.js +101 -0
  207. package/es/components/navigation/Tabs/EditableTitle.js +116 -0
  208. package/es/components/navigation/Tabs/TabButton.js +320 -0
  209. package/es/components/navigation/Tabs/TabDropIndicator.js +34 -0
  210. package/es/components/navigation/Tabs/TabPanel.js +128 -0
  211. package/es/components/navigation/Tabs/TabPicker.js +46 -0
  212. package/es/components/navigation/Tabs/Tabs.js +212 -707
  213. package/es/components/navigation/Tabs/TabsAction.js +70 -0
  214. package/es/components/navigation/Tabs/TabsContext.js +36 -0
  215. package/es/components/navigation/Tabs/index.js +2 -2
  216. package/es/components/navigation/Tabs/styled.js +354 -0
  217. package/es/components/navigation/Tabs/types.js +17 -0
  218. package/es/components/navigation/Tabs/use-tab-editing.js +61 -0
  219. package/es/components/navigation/Tabs/use-tab-indicator.js +77 -0
  220. package/es/components/navigation/index.js +1 -1
  221. package/es/components/organisms/FileTabs/FileTabs.js +1 -1
  222. package/es/components/organisms/StatsCard/StatsCard.js +1 -1
  223. package/es/components/other/Calendar/Calendar.js +1 -1
  224. package/es/components/other/Calendar/CalendarCell.js +1 -1
  225. package/es/components/other/Calendar/CalendarGrid.js +1 -1
  226. package/es/components/other/Calendar/RangeCalendar.js +1 -1
  227. package/es/components/other/CloudLogo/CloudLogo.js +1 -1
  228. package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
  229. package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  230. package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  231. package/es/components/overlays/AlertDialog/index.js +1 -1
  232. package/es/components/overlays/AlertDialog/types.js +1 -1
  233. package/es/components/overlays/Dialog/Dialog.js +1 -1
  234. package/es/components/overlays/Dialog/DialogContainer.js +1 -1
  235. package/es/components/overlays/Dialog/DialogForm.js +1 -1
  236. package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
  237. package/es/components/overlays/Dialog/context.js +1 -1
  238. package/es/components/overlays/Dialog/index.js +1 -1
  239. package/es/components/overlays/Dialog/use-dialog-container.js +1 -1
  240. package/es/components/overlays/Modal/Modal.js +1 -1
  241. package/es/components/overlays/Modal/OpenTransition.js +1 -1
  242. package/es/components/overlays/Modal/Overlay.js +1 -1
  243. package/es/components/overlays/Modal/Popover.js +1 -1
  244. package/es/components/overlays/Modal/Tray.js +1 -1
  245. package/es/components/overlays/Modal/Underlay.js +1 -1
  246. package/es/components/overlays/Modal/index.js +1 -1
  247. package/es/components/overlays/Modal/types.js +1 -1
  248. package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
  249. package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
  250. package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
  251. package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
  252. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogContext.js +1 -1
  253. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
  254. package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
  255. package/es/components/overlays/NewNotifications/Notification.js +1 -1
  256. package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
  257. package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
  258. package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
  259. package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
  260. package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
  261. package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
  262. package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
  263. package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
  264. package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
  265. package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
  266. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.js +1 -1
  267. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
  268. package/es/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
  269. package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
  270. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
  271. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
  272. package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
  273. package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
  274. package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
  275. package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
  276. package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
  277. package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
  278. package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
  279. package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
  280. package/es/components/overlays/NewNotifications/index.js +1 -1
  281. package/es/components/overlays/NewNotifications/types.js +1 -1
  282. package/es/components/overlays/Notification/Notification.js +1 -1
  283. package/es/components/overlays/OverlayWrapper.js +1 -1
  284. package/es/components/overlays/Toasts/Toast.js +1 -1
  285. package/es/components/overlays/Toasts/index.js +1 -1
  286. package/es/components/overlays/Toasts/types.js +1 -1
  287. package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
  288. package/es/components/overlays/Tooltip/Tooltip.js +1 -1
  289. package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
  290. package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  291. package/es/components/overlays/Tooltip/context.js +1 -1
  292. package/es/components/overlays/Tooltip/index.js +1 -1
  293. package/es/components/portal/Portal.js +1 -1
  294. package/es/components/portal/PortalProvider.js +1 -1
  295. package/es/components/portal/index.js +1 -1
  296. package/es/components/portal/types.js +1 -1
  297. package/es/components/portal/usePortal.js +1 -1
  298. package/es/components/shared/InvalidIcon.js +1 -1
  299. package/es/components/shared/ValidIcon.js +1 -1
  300. package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  301. package/es/components/status/LoadingAnimation/index.js +1 -1
  302. package/es/components/status/Spin/Cube.js +1 -1
  303. package/es/components/status/Spin/InternalSpinner.js +1 -1
  304. package/es/components/status/Spin/Spin.js +1 -1
  305. package/es/components/status/Spin/SpinsContainer.js +1 -1
  306. package/es/components/status/Spin/index.js +1 -1
  307. package/es/components/status/Spin/types.js +1 -1
  308. package/es/components/status/index.js +1 -1
  309. package/es/data/item-themes.js +249 -5
  310. package/es/data/themes.js +1 -1
  311. package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
  312. package/es/icons/AdjustmentsIcon.js +1 -1
  313. package/es/icons/AiIcon.js +1 -1
  314. package/es/icons/AreaChartIcon.js +1 -1
  315. package/es/icons/BackwardIcon.js +1 -1
  316. package/es/icons/BarChartIcon.js +1 -1
  317. package/es/icons/BellFilledIcon.js +1 -1
  318. package/es/icons/BellIcon.js +1 -1
  319. package/es/icons/BooleanIcon.js +1 -1
  320. package/es/icons/CalendarEditIcon.js +1 -1
  321. package/es/icons/CalendarIcon.js +1 -1
  322. package/es/icons/CaretDownIcon.js +1 -1
  323. package/es/icons/CaretUpIcon.js +1 -1
  324. package/es/icons/ChartAreaStackedIcon.js +1 -1
  325. package/es/icons/ChartAreaStackedPercentageIcon.js +1 -1
  326. package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  327. package/es/icons/ChartBarGroupedIcon.js +1 -1
  328. package/es/icons/ChartBarHorizontalIcon.js +1 -1
  329. package/es/icons/ChartBarLineIcon.js +1 -1
  330. package/es/icons/ChartBarStackedHorizontalIcon.js +1 -1
  331. package/es/icons/ChartBarStackedIcon.js +1 -1
  332. package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  333. package/es/icons/ChartBarStackedPercentageIcon.js +1 -1
  334. package/es/icons/ChartBoxPlot2Icon.js +1 -1
  335. package/es/icons/ChartBoxPlotIcon.js +1 -1
  336. package/es/icons/ChartBubbleIcon.js +1 -1
  337. package/es/icons/ChartDonut2Icon.js +1 -1
  338. package/es/icons/ChartFunnelIcon.js +1 -1
  339. package/es/icons/ChartHeatmapIcon.js +1 -1
  340. package/es/icons/ChartKPIIcon.js +1 -1
  341. package/es/icons/ChartPie2Icon.js +1 -1
  342. package/es/icons/ChartScatterIcon.js +1 -1
  343. package/es/icons/CheckCircleFilledIcon.js +1 -1
  344. package/es/icons/CheckCircleIcon.js +1 -1
  345. package/es/icons/CheckIcon.js +1 -1
  346. package/es/icons/CircleFilledIcon.js +1 -1
  347. package/es/icons/ClearIcon.js +1 -1
  348. package/es/icons/CloseCircleFilledIcon.js +1 -1
  349. package/es/icons/CloseCircleIcon.js +1 -1
  350. package/es/icons/CloseIcon.js +1 -1
  351. package/es/icons/CodeIcon.js +1 -1
  352. package/es/icons/ColumnTotalIcon.js +1 -1
  353. package/es/icons/CopyIcon.js +1 -1
  354. package/es/icons/CountIcon.js +1 -1
  355. package/es/icons/CubeIcon.js +1 -1
  356. package/es/icons/CubePauseIcon.js +1 -1
  357. package/es/icons/CubePlayIcon.js +1 -1
  358. package/es/icons/CurrencyDollarIcon.js +1 -1
  359. package/es/icons/DangerIcon.js +1 -1
  360. package/es/icons/DashboardIcon.js +1 -1
  361. package/es/icons/DatabaseIcon.js +1 -1
  362. package/es/icons/DecimalDecreaseIcon.js +1 -1
  363. package/es/icons/DecimalIncreaseIcon.js +1 -1
  364. package/es/icons/DirectionIcon.js +1 -1
  365. package/es/icons/DonutIcon.js +1 -1
  366. package/es/icons/DownIcon.js +1 -1
  367. package/es/icons/EditIcon.js +1 -1
  368. package/es/icons/ExclamationCircleFilledIcon.js +1 -1
  369. package/es/icons/ExclamationCircleIcon.js +1 -1
  370. package/es/icons/ExclamationIcon.js +1 -1
  371. package/es/icons/EyeIcon.js +1 -1
  372. package/es/icons/EyeInvisibleIcon.js +1 -1
  373. package/es/icons/FilterIcon.js +1 -1
  374. package/es/icons/FolderFilledIcon.js +1 -1
  375. package/es/icons/FolderIcon.js +1 -1
  376. package/es/icons/FolderOpenFilledIcon.js +1 -1
  377. package/es/icons/FolderOpenIcon.js +1 -1
  378. package/es/icons/ForwardIcon.js +1 -1
  379. package/es/icons/HierarchyIcon.js +1 -1
  380. package/es/icons/HierarchyOpenIcon.js +1 -1
  381. package/es/icons/Icon.js +1 -1
  382. package/es/icons/InfoCircleIcon.js +1 -1
  383. package/es/icons/InfoIcon.js +1 -1
  384. package/es/icons/KeyIcon.js +1 -1
  385. package/es/icons/LeftIcon.js +1 -1
  386. package/es/icons/LineChartIcon.js +1 -1
  387. package/es/icons/LoadingIcon.js +1 -1
  388. package/es/icons/LockFilledIcon.js +1 -1
  389. package/es/icons/LockIcon.js +1 -1
  390. package/es/icons/MoreIcon.js +1 -1
  391. package/es/icons/NotAllowedIcon.js +1 -1
  392. package/es/icons/Number123Icon.js +1 -1
  393. package/es/icons/NumberIcon.js +1 -1
  394. package/es/icons/PauseCircleFilledIcon.js +1 -1
  395. package/es/icons/PauseCircleIcon.js +1 -1
  396. package/es/icons/PauseIcon.js +1 -1
  397. package/es/icons/PercentageIcon.js +1 -1
  398. package/es/icons/PieChartIcon.js +1 -1
  399. package/es/icons/PlayCircleIcon.js +1 -1
  400. package/es/icons/PlayIcon.js +1 -1
  401. package/es/icons/PlusIcon.js +1 -1
  402. package/es/icons/ProgressBarIcon.js +1 -1
  403. package/es/icons/ReloadIcon.js +1 -1
  404. package/es/icons/ReportIcon.js +1 -1
  405. package/es/icons/ReturnIcon.js +1 -1
  406. package/es/icons/RightIcon.js +1 -1
  407. package/es/icons/RowTotalsIcon.js +1 -1
  408. package/es/icons/SchemeIcon.js +1 -1
  409. package/es/icons/SearchIcon.js +1 -1
  410. package/es/icons/SemanticQueryIcon.js +1 -1
  411. package/es/icons/SettingsIcon.js +1 -1
  412. package/es/icons/ShieldFilledIcon.js +1 -1
  413. package/es/icons/ShieldIcon.js +1 -1
  414. package/es/icons/SlashIcon.js +1 -1
  415. package/es/icons/SparklesIcon.js +1 -1
  416. package/es/icons/SqlIcon.js +1 -1
  417. package/es/icons/StatsIcon.js +1 -1
  418. package/es/icons/StopIcon.js +1 -1
  419. package/es/icons/StringIcon.js +1 -1
  420. package/es/icons/SubtotalsIcon.js +1 -1
  421. package/es/icons/SwitchIcon.js +1 -1
  422. package/es/icons/TableIcon.js +1 -1
  423. package/es/icons/ThumbsDownIcon.js +1 -1
  424. package/es/icons/ThumbsUpIcon.js +1 -1
  425. package/es/icons/ThunderboltCrossedIcon.js +1 -1
  426. package/es/icons/ThunderboltFilledIcon.js +1 -1
  427. package/es/icons/ThunderboltIcon.js +1 -1
  428. package/es/icons/TimeIcon.js +1 -1
  429. package/es/icons/TrashIcon.js +1 -1
  430. package/es/icons/UnlockIcon.js +1 -1
  431. package/es/icons/UpIcon.js +1 -1
  432. package/es/icons/UserGroupIcon.js +1 -1
  433. package/es/icons/UserIcon.js +1 -1
  434. package/es/icons/UserLockIcon.js +1 -1
  435. package/es/icons/ViewIcon.js +1 -1
  436. package/es/icons/WarningFilledIcon.js +1 -1
  437. package/es/icons/WarningIcon.js +1 -1
  438. package/es/icons/index.js +1 -1
  439. package/es/icons/wrap-icon.js +1 -1
  440. package/es/index.js +1 -1
  441. package/es/provider.js +1 -1
  442. package/es/providers/TrackingProvider.js +1 -1
  443. package/es/providers/navigation.types.js +1 -1
  444. package/es/providers/navigationAdapter.default.js +1 -1
  445. package/es/services/notification.js +1 -1
  446. package/es/shared/form.js +1 -1
  447. package/es/shared/index.js +1 -1
  448. package/es/stories/Form.legacy-stories.js +1 -1
  449. package/es/stories/FormFieldArgs.js +1 -1
  450. package/es/stories/SimpleLayout.stories.js +1 -1
  451. package/es/stories/Tasty.stories.js +1 -1
  452. package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
  453. package/es/stories/components/DialogFormApp.js +1 -1
  454. package/es/stories/components/StyledButton.js +1 -1
  455. package/es/stories/lists/baseProps.js +1 -1
  456. package/es/stories/playground/PlaygroundEditor.js +1 -1
  457. package/es/stories/playground/PlaygroundLayout.js +1 -1
  458. package/es/stories/playground/PlaygroundOutput.js +1 -1
  459. package/es/stories/playground/PlaygroundPreview.js +1 -1
  460. package/es/stories/playground/components/Button.js +1 -1
  461. package/es/stories/playground/components/Card.js +1 -1
  462. package/es/stories/playground/components/ScrollProgress.js +1 -1
  463. package/es/stories/playground/examples.js +1 -1
  464. package/es/tasty/chunks/cacheKey.js +1 -1
  465. package/es/tasty/chunks/definitions.js +1 -1
  466. package/es/tasty/chunks/index.js +1 -1
  467. package/es/tasty/chunks/renderChunk.js +1 -1
  468. package/es/tasty/config.js +1 -1
  469. package/es/tasty/debug.js +1 -1
  470. package/es/tasty/hooks/index.js +1 -1
  471. package/es/tasty/hooks/useGlobalStyles.js +1 -1
  472. package/es/tasty/hooks/useKeyframes.js +1 -1
  473. package/es/tasty/hooks/useProperty.js +1 -1
  474. package/es/tasty/hooks/useRawCSS.js +1 -1
  475. package/es/tasty/hooks/useStyles.js +1 -1
  476. package/es/tasty/index.js +1 -1
  477. package/es/tasty/injector/index.js +1 -1
  478. package/es/tasty/injector/injector.js +1 -1
  479. package/es/tasty/injector/sheet-manager.js +1 -1
  480. package/es/tasty/injector/types.js +1 -1
  481. package/es/tasty/keyframes/index.js +1 -1
  482. package/es/tasty/parser/classify.js +1 -1
  483. package/es/tasty/parser/const.js +1 -1
  484. package/es/tasty/parser/lru.js +1 -1
  485. package/es/tasty/parser/parser.js +1 -1
  486. package/es/tasty/parser/tokenizer.js +1 -1
  487. package/es/tasty/parser/types.js +1 -1
  488. package/es/tasty/pipeline/conditions.js +1 -1
  489. package/es/tasty/pipeline/exclusive.js +1 -1
  490. package/es/tasty/pipeline/index.js +1 -1
  491. package/es/tasty/pipeline/materialize.js +1 -1
  492. package/es/tasty/pipeline/parseStateKey.js +1 -1
  493. package/es/tasty/pipeline/simplify.js +1 -1
  494. package/es/tasty/plugins/index.js +1 -1
  495. package/es/tasty/plugins/okhsl-plugin.js +1 -1
  496. package/es/tasty/plugins/types.js +1 -1
  497. package/es/tasty/properties/index.js +1 -1
  498. package/es/tasty/states/index.js +1 -1
  499. package/es/tasty/static/index.js +1 -1
  500. package/es/tasty/static/tastyStatic.js +1 -1
  501. package/es/tasty/static/types.js +1 -1
  502. package/es/tasty/styles/align.js +1 -1
  503. package/es/tasty/styles/border.js +1 -1
  504. package/es/tasty/styles/boxShadow.combinator.js +1 -1
  505. package/es/tasty/styles/color.js +1 -1
  506. package/es/tasty/styles/createStyle.js +1 -1
  507. package/es/tasty/styles/dimension.js +1 -1
  508. package/es/tasty/styles/display.js +1 -1
  509. package/es/tasty/styles/fade.js +1 -1
  510. package/es/tasty/styles/fill.js +1 -1
  511. package/es/tasty/styles/flow.js +1 -1
  512. package/es/tasty/styles/gap.js +1 -1
  513. package/es/tasty/styles/height.js +1 -1
  514. package/es/tasty/styles/index.js +1 -1
  515. package/es/tasty/styles/inset.js +6 -5
  516. package/es/tasty/styles/justify.js +1 -1
  517. package/es/tasty/styles/list.js +1 -1
  518. package/es/tasty/styles/margin.js +6 -5
  519. package/es/tasty/styles/outline.js +1 -1
  520. package/es/tasty/styles/padding.js +6 -5
  521. package/es/tasty/styles/place.js +1 -1
  522. package/es/tasty/styles/predefined.js +1 -1
  523. package/es/tasty/styles/preset.js +1 -1
  524. package/es/tasty/styles/radius.js +1 -1
  525. package/es/tasty/styles/reset.js +1 -1
  526. package/es/tasty/styles/scrollbar.js +1 -1
  527. package/es/tasty/styles/shadow.js +1 -1
  528. package/es/tasty/styles/styledScrollbar.js +1 -1
  529. package/es/tasty/styles/transition.js +1 -1
  530. package/es/tasty/styles/types.js +1 -1
  531. package/es/tasty/styles/width.js +1 -1
  532. package/es/tasty/tasty.js +1 -1
  533. package/es/tasty/types.js +1 -1
  534. package/es/tasty/utils/cache-wrapper.js +1 -1
  535. package/es/tasty/utils/case-converter.js +1 -1
  536. package/es/tasty/utils/colors.js +1 -1
  537. package/es/tasty/utils/dotize.js +1 -1
  538. package/es/tasty/utils/filter-base-props.js +1 -1
  539. package/es/tasty/utils/get-display-name.js +1 -1
  540. package/es/tasty/utils/hsl-to-rgb.js +1 -1
  541. package/es/tasty/utils/is-dev-env.js +1 -1
  542. package/es/tasty/utils/merge-styles.js +1 -1
  543. package/es/tasty/utils/mod-attrs.js +1 -1
  544. package/es/tasty/utils/okhsl-to-rgb.js +1 -1
  545. package/es/tasty/utils/process-tokens.js +1 -1
  546. package/es/tasty/utils/rgb-to-okhsl.js +1 -1
  547. package/es/tasty/utils/string.js +1 -1
  548. package/es/tasty/utils/styles.js +1 -1
  549. package/es/tasty/utils/typography.js +1 -1
  550. package/es/tasty/utils/warnings.js +1 -1
  551. package/es/tasty/zero/babel.js +1 -1
  552. package/es/tasty/zero/css-writer.js +1 -1
  553. package/es/tasty/zero/extractor.js +1 -1
  554. package/es/tasty/zero/index.js +1 -1
  555. package/es/tasty/zero/next.js +1 -1
  556. package/es/tokens/base.js +1 -1
  557. package/es/tokens/colors.js +11 -1
  558. package/es/tokens/index.js +1 -1
  559. package/es/tokens/layout.js +1 -1
  560. package/es/tokens/shadows.js +1 -1
  561. package/es/tokens/sizes.js +1 -1
  562. package/es/tokens/spacing.js +1 -1
  563. package/es/tokens/typography.js +1 -1
  564. package/es/utils/ResizeSensor.js +1 -1
  565. package/es/utils/index.js +1 -1
  566. package/es/utils/modules.js +1 -1
  567. package/es/utils/promise.js +1 -1
  568. package/es/utils/raf.js +1 -1
  569. package/es/utils/random.js +1 -1
  570. package/es/utils/range.js +1 -1
  571. package/es/utils/react/RenderCache.js +1 -1
  572. package/es/utils/react/Slots.js +1 -1
  573. package/es/utils/react/chain.js +1 -1
  574. package/es/utils/react/forwardRefWithGenerics.js +1 -1
  575. package/es/utils/react/index.js +1 -1
  576. package/es/utils/react/interactions.js +1 -1
  577. package/es/utils/react/isTextOnly.js +1 -1
  578. package/es/utils/react/mapProps.js +1 -1
  579. package/es/utils/react/mergeProps.js +1 -1
  580. package/es/utils/react/nullableValue.js +1 -1
  581. package/es/utils/react/resolveIcon.js +1 -1
  582. package/es/utils/react/sharedStore.js +1 -1
  583. package/es/utils/react/useCombinedRefs.js +1 -1
  584. package/es/utils/react/useControlledFocusVisible.js +1 -1
  585. package/es/utils/react/useEventBus.js +1 -1
  586. package/es/utils/react/useId.js +1 -1
  587. package/es/utils/react/useIsDarwin.js +1 -1
  588. package/es/utils/react/useKeySymbols.js +1 -1
  589. package/es/utils/react/useLayoutEffect.js +1 -1
  590. package/es/utils/react/useLocalStorage.js +1 -1
  591. package/es/utils/react/useQaProps.js +1 -1
  592. package/es/utils/react/useViewportSize.js +1 -1
  593. package/es/utils/react/wrapNodeIfPlain.js +1 -1
  594. package/es/utils/tree.js +1 -1
  595. package/es/utils/warnings.js +1 -1
  596. package/es/version.js +2 -2
  597. package/package.json +2 -2
  598. package/types/components/actions/Button/Button.d.ts +1 -1
  599. package/types/components/actions/ItemAction/ItemAction.d.ts +2 -2
  600. package/types/components/navigation/Tabs/DraggableTabList.d.ts +23 -0
  601. package/types/components/navigation/Tabs/EditableTitle.d.ts +24 -0
  602. package/types/components/navigation/Tabs/TabButton.d.ts +22 -0
  603. package/types/components/navigation/Tabs/TabDropIndicator.d.ts +17 -0
  604. package/types/components/navigation/Tabs/TabPanel.d.ts +49 -0
  605. package/types/components/navigation/Tabs/TabPicker.d.ts +23 -0
  606. package/types/components/navigation/Tabs/Tabs.d.ts +6 -189
  607. package/types/components/navigation/Tabs/TabsAction.d.ts +38 -0
  608. package/types/components/navigation/Tabs/TabsContext.d.ts +57 -0
  609. package/types/components/navigation/Tabs/index.d.ts +3 -2
  610. package/types/components/navigation/Tabs/styled.d.ts +5927 -0
  611. package/types/components/navigation/Tabs/types.d.ts +261 -0
  612. package/types/components/navigation/Tabs/use-tab-editing.d.ts +30 -0
  613. package/types/components/navigation/Tabs/use-tab-indicator.d.ts +20 -0
  614. package/types/data/item-themes.d.ts +15 -1
  615. package/types/tokens/colors.d.ts +2 -0
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/utils/tree.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/version.js CHANGED
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.102.0
4
+ * @cube-dev/ui-kit v0.104.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
- export const VERSION = '0.102.0';
8
+ export const VERSION = '0.104.0';
9
9
  if (typeof window !== 'undefined') {
10
10
  const version = VERSION;
11
11
  // Ensure CubeUIKit is defined on window in a way bundlers recognize
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.102.0",
3
+ "version": "0.104.0",
4
4
  "description": "UIKit for Cube Projects",
5
5
  "keywords": [
6
6
  "uikit"
@@ -40,7 +40,7 @@
40
40
  "@vitejs/plugin-react": "^4.3.2",
41
41
  "clipboard-copy": "^4.0.1",
42
42
  "clsx": "^1.1.1",
43
- "diff": "^7.0.0",
43
+ "diff": "^8.0.3",
44
44
  "email-validator": "^2.0.4",
45
45
  "globals": "^16.0.0",
46
46
  "playwright-core": "^1.53.2",
@@ -37,7 +37,7 @@ export interface CubeButtonProps extends CubeActionProps {
37
37
  */
38
38
  defaultTooltipPlacement?: OverlayProps['placement'];
39
39
  }
40
- export type ButtonVariant = 'default.primary' | 'default.secondary' | 'default.outline' | 'default.neutral' | 'default.clear' | 'default.link' | 'danger.primary' | 'danger.secondary' | 'danger.outline' | 'danger.neutral' | 'danger.clear' | 'danger.link' | 'success.primary' | 'success.secondary' | 'success.outline' | 'success.neutral' | 'success.clear' | 'success.link' | 'special.primary' | 'special.secondary' | 'special.outline' | 'special.neutral' | 'special.clear' | 'special.link';
40
+ export type ButtonVariant = 'default.primary' | 'default.secondary' | 'default.outline' | 'default.neutral' | 'default.clear' | 'default.link' | 'danger.primary' | 'danger.secondary' | 'danger.outline' | 'danger.neutral' | 'danger.clear' | 'danger.link' | 'success.primary' | 'success.secondary' | 'success.outline' | 'success.neutral' | 'success.clear' | 'success.link' | 'warning.primary' | 'warning.secondary' | 'warning.outline' | 'warning.neutral' | 'warning.clear' | 'warning.link' | 'note.primary' | 'note.secondary' | 'note.outline' | 'note.neutral' | 'note.clear' | 'note.link' | 'special.primary' | 'special.secondary' | 'special.outline' | 'special.neutral' | 'special.clear' | 'special.link';
41
41
  export declare const DEFAULT_BUTTON_STYLES: {
42
42
  readonly display: "inline-grid";
43
43
  readonly flow: "column dense";
@@ -7,8 +7,8 @@ export interface CubeItemActionProps extends Omit<CubeUseActionProps, 'as' | 'ht
7
7
  children?: ReactNode;
8
8
  isLoading?: boolean;
9
9
  isSelected?: boolean;
10
- type?: 'primary' | 'secondary' | 'neutral' | 'clear' | (string & {});
11
- theme?: 'default' | 'danger' | 'success' | 'special' | (string & {});
10
+ type?: 'primary' | 'secondary' | 'outline' | 'neutral' | 'clear' | (string & {});
11
+ theme?: 'default' | 'danger' | 'success' | 'warning' | 'note' | 'special' | (string & {});
12
12
  tooltip?: string | (Omit<ComponentProps<typeof TooltipProvider>, 'children'> & {
13
13
  title?: string;
14
14
  });
@@ -0,0 +1,23 @@
1
+ import { ReactNode, RefObject } from 'react';
2
+ import { DraggableCollectionState, DroppableCollectionState, TabListState } from 'react-stately';
3
+ import type { Key } from '@react-types/shared';
4
+ export interface DraggableTabListProps {
5
+ /** Tab list state from React Stately */
6
+ state: TabListState<object>;
7
+ /** Ref to the tab list container */
8
+ listRef: RefObject<HTMLDivElement | null>;
9
+ /** Current ordered keys */
10
+ orderedKeys: string[];
11
+ /** Callback when tabs are reordered */
12
+ onReorder?: (newOrder: Key[]) => void;
13
+ /** Render function that receives drag/drop states */
14
+ children: (dragState: DraggableCollectionState, dropState: DroppableCollectionState, collectionProps: Record<string, unknown>) => ReactNode;
15
+ }
16
+ /**
17
+ * Component that enables drag-and-drop reordering for tabs.
18
+ *
19
+ * This component encapsulates all drag/drop hook calls, ensuring they're only
20
+ * called when reordering is actually enabled. It uses the render prop pattern
21
+ * to pass the drag/drop states to its children.
22
+ */
23
+ export declare function DraggableTabList({ state, listRef, orderedKeys, onReorder, children, }: DraggableTabListProps): ReactNode;
@@ -0,0 +1,24 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface EditableTitleProps {
3
+ /** The current title to display (when not editing) */
4
+ title: ReactNode;
5
+ /** Whether the title is currently being edited */
6
+ isEditing: boolean;
7
+ /** Current edit input value */
8
+ editValue: string;
9
+ /** Callback when edit value changes */
10
+ onEditValueChange: (value: string) => void;
11
+ /** Callback to start editing (e.g., on double-click) */
12
+ onStartEditing: () => void;
13
+ /** Callback when editing is submitted (Enter or blur) */
14
+ onSubmit: () => void;
15
+ /** Callback when editing is cancelled (Escape) */
16
+ onCancel: () => void;
17
+ }
18
+ /**
19
+ * Inline editable title component for tab labels.
20
+ *
21
+ * When not editing, displays the title as a span with double-click to edit.
22
+ * When editing, displays an auto-sizing input field.
23
+ */
24
+ export declare function EditableTitle({ title, isEditing, editValue, onEditValueChange, onStartEditing, onSubmit, onCancel, }: EditableTitleProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,22 @@
1
+ import { ParsedTab } from './types';
2
+ import type { Node } from '@react-types/shared';
3
+ export interface TabButtonProps {
4
+ /** React Aria collection item */
5
+ item: Node<object>;
6
+ /** Parsed tab data */
7
+ tabData: ParsedTab;
8
+ /** Whether this is the last tab (for drop indicator) */
9
+ isLastTab?: boolean;
10
+ }
11
+ /**
12
+ * Individual tab button component.
13
+ *
14
+ * Uses TabsContext to access shared props, dramatically reducing prop drilling.
15
+ * Handles:
16
+ * - Tab selection and keyboard navigation
17
+ * - Inline title editing
18
+ * - Menu and context menu
19
+ * - Drag-and-drop reordering
20
+ * - Focus and hover states
21
+ */
22
+ export declare function TabButton({ item, tabData, isLastTab }: TabButtonProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import type { DropTarget } from 'react-aria';
2
+ import type { DroppableCollectionState } from 'react-stately';
3
+ export interface TabDropIndicatorProps {
4
+ /** Drop target configuration */
5
+ target: DropTarget;
6
+ /** Droppable collection state from React Aria */
7
+ dropState: DroppableCollectionState;
8
+ /** Position of the indicator (before or after the tab) */
9
+ position: 'before' | 'after';
10
+ }
11
+ /**
12
+ * Visual drop indicator for drag-and-drop tab reordering.
13
+ *
14
+ * Renders a vertical line showing where the dragged tab will be dropped.
15
+ * Only visible when the drop target is active.
16
+ */
17
+ export declare function TabDropIndicator({ target, dropState, position, }: TabDropIndicatorProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,49 @@
1
+ import type { Key } from '@react-types/shared';
2
+ import type { ReactNode } from 'react';
3
+ import type { TabListState } from 'react-stately';
4
+ import type { Styles } from '../../../tasty';
5
+ import type { CacheKeyValue, ParsedPanel, ParsedTab } from './types';
6
+ /**
7
+ * Determines if a panel should be rendered based on prerender/keepMounted settings.
8
+ */
9
+ export declare function shouldRenderPanel(isActive: boolean, wasVisited: boolean, effectivePrerender: boolean | undefined, effectiveKeepMounted: boolean | undefined): boolean;
10
+ export interface TabPanelRendererProps {
11
+ tabKey: string;
12
+ state: TabListState<object>;
13
+ content: ReactNode;
14
+ prerender?: boolean;
15
+ keepMounted?: boolean;
16
+ tabPrerender?: boolean;
17
+ tabKeepMounted?: boolean;
18
+ visitedKeys: Set<string>;
19
+ panelStyles?: Styles;
20
+ qa?: string;
21
+ qaVal?: string;
22
+ }
23
+ /**
24
+ * Renders a single tab panel with proper ARIA attributes.
25
+ */
26
+ export declare function TabPanelRenderer({ tabKey, state, content, prerender, keepMounted, tabPrerender, tabKeepMounted, visitedKeys, panelStyles, qa, qaVal, }: TabPanelRendererProps): import("react/jsx-runtime").JSX.Element | null;
27
+ export interface CachedPanelRendererProps {
28
+ parsedTabs: ParsedTab[];
29
+ explicitPanels: Map<string, ParsedPanel>;
30
+ state: TabListState<object>;
31
+ renderPanel: (key: Key) => ReactNode;
32
+ panelCacheKeys?: Record<string | number, CacheKeyValue>;
33
+ prerender: boolean;
34
+ keepMounted: boolean;
35
+ visitedKeys: Set<string>;
36
+ }
37
+ /**
38
+ * Renders panels with content caching for `renderPanel`.
39
+ *
40
+ * Core principle: `renderPanel` is only called when the tab is active
41
+ * (or once on mount for `prerender`). Inactive panels use cached content.
42
+ *
43
+ * Caching behavior:
44
+ * - `keepMounted=true`: Cache content after first activation, reuse while inactive
45
+ * - `prerender=true`: Call `renderPanel` once on mount, reuse until active again
46
+ * - `panelCacheKeys`: Adds cache-key-based invalidation (lazy - only when active)
47
+ * - No caching props: Only active panel is rendered, unmount when inactive
48
+ */
49
+ export declare function CachedPanelRenderer({ parsedTabs, explicitPanels, state, renderPanel, panelCacheKeys, prerender, keepMounted, visitedKeys, }: CachedPanelRendererProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,23 @@
1
+ import { Key } from 'react-aria';
2
+ import type { ParsedTab, TabSize, TabType } from './types';
3
+ export interface TabPickerProps {
4
+ /** Ordered list of parsed tabs to display in the picker */
5
+ tabs: ParsedTab[];
6
+ /** Currently selected tab key */
7
+ selectedKey: Key | null;
8
+ /** Callback when a tab is selected from the picker */
9
+ onSelect: (key: Key) => void;
10
+ /** Callback when a tab should be deleted. When provided, shows delete action on items. */
11
+ onDelete?: (key: Key) => void;
12
+ /** Size of the picker trigger button */
13
+ size?: TabSize;
14
+ /** Type of the parent Tabs component (for border styling) */
15
+ type?: TabType;
16
+ }
17
+ /**
18
+ * Tab picker component that displays a dropdown menu of all tabs.
19
+ *
20
+ * Used in the Tabs suffix area when tabs overflow to provide quick navigation
21
+ * to any tab without scrolling.
22
+ */
23
+ export declare function TabPicker({ tabs, selectedKey, onSelect, onDelete, size, type, }: TabPickerProps): import("react/jsx-runtime").JSX.Element;
@@ -1,172 +1,6 @@
1
- import { Key } from '@react-types/shared';
2
- import { ReactElement, ReactNode } from 'react';
3
- import { BaseProps, OuterStyleProps, Styles } from '../../../tasty';
4
- import { CubeItemProps } from '../../content/Item';
5
- /** Visual appearance type for tabs */
6
- export type TabType = 'default' | 'file' | 'panel' | 'radio';
7
- /** Tab size options */
8
- export type TabSize = 'medium' | 'large';
9
- /** Common props for panel rendering behavior */
10
- interface PanelBehaviorProps {
11
- /** If true, panel is rendered but hidden when not active. */
12
- prerender?: boolean;
13
- /** If true, once visited the panel stays in DOM. */
14
- keepMounted?: boolean;
15
- }
16
- /** Common props for QA attributes */
17
- interface QAProps {
18
- /** QA selector attribute. */
19
- qa?: string;
20
- /** Additional QA value attribute. */
21
- qaVal?: string;
22
- }
23
- /** Props from CubeItemProps that don't apply to Tab */
24
- type OmittedItemProps = 'id' | 'type' | 'size' | 'theme' | 'shape' | 'icon' | 'rightIcon' | 'prefix' | 'suffix' | 'description' | 'descriptionPlacement' | 'descriptionProps' | 'tooltip' | 'defaultTooltipPlacement' | 'hotkeys' | 'keyboardShortcutProps' | 'loadingSlot' | 'isLoading' | 'labelProps' | 'labelRef' | 'level' | 'highlight' | 'highlightCaseSensitive' | 'highlightStyles' | 'variant' | 'htmlType' | 'isSelected' | 'preserveActionsSpace' | 'disableActionsFocus' | 'actions' | 'showActionsOnHover';
25
- /** Common styling props for tabs - inherits style props from CubeItemProps */
26
- interface TabStyleProps extends Omit<CubeItemProps, OmittedItemProps> {
27
- /** Tab size. Large uses `t2m` preset, medium uses `t3m`. */
28
- size?: TabSize;
29
- /** Visual appearance type. */
30
- type?: TabType;
31
- /** Whether to show actions only on hover. */
32
- showActionsOnHover?: boolean;
33
- }
34
- export interface CubeTabsProps extends BaseProps, OuterStyleProps, PanelBehaviorProps {
35
- /** Controlled active tab key. When provided, component is controlled. */
36
- activeKey?: Key;
37
- /** Initial active tab key for uncontrolled mode. */
38
- defaultActiveKey?: Key;
39
- /**
40
- * Visual appearance type for tabs.
41
- * - `default` - Standard tabs with selection indicator below (default)
42
- * - `file` - File-style tabs with fill highlight on selection, delimiter between tabs
43
- * - `panel` - Panel-style tabs with border bottom highlight on selection, delimiter between tabs
44
- * - `radio` - Radio button style for tab selection
45
- * @default 'default'
46
- */
47
- type?: TabType;
48
- /** Tab size. Large uses `t2m` preset, medium uses `t3m`. */
49
- size?: TabSize;
50
- /** Accessible label for the tab list. */
51
- label?: string;
52
- /** Content rendered before the tab list. */
53
- prefix?: ReactNode;
54
- /** Content rendered after the tab list. */
55
- suffix?: ReactNode;
56
- /** Callback when active tab changes. */
57
- onChange?: (key: Key) => void;
58
- /** Callback when tab delete button is clicked. Presence enables delete buttons. */
59
- onDelete?: (key: Key) => void;
60
- /** Callback when a tab title is changed. Enables title editing on tabs with isEditable. */
61
- onTitleChange?: (key: Key, newTitle: string) => void;
62
- /** Whether to show tab actions only on hover. Can be overridden per-tab. */
63
- showActionsOnHover?: boolean;
64
- /** Custom tasty styles for the tab bar container. */
65
- styles?: Styles;
66
- /** QA selector attribute. */
67
- qa?: string;
68
- /** Tab components or Tabs.List with Tabs.Panel. */
69
- children?: ReactNode;
70
- /**
71
- * Functional content renderer for optimized lazy evaluation.
72
- * When provided, panel content is only evaluated for the active tab,
73
- * while inactive tabs use cached content. This prevents expensive
74
- * re-renders of tab content on every parent render.
75
- *
76
- * Use with tabs that have no children for maximum optimization.
77
- *
78
- * @param key - The key of the tab to render content for
79
- * @returns Panel content for the given tab
80
- *
81
- * @example
82
- * ```tsx
83
- * <Tabs
84
- * renderPanel={(key) => {
85
- * switch (key) {
86
- * case 'tab1': return <ExpensiveComponent />;
87
- * case 'tab2': return <AnotherExpensive />;
88
- * default: return null;
89
- * }
90
- * }}
91
- * >
92
- * <Tab key="tab1" title="Tab 1" />
93
- * <Tab key="tab2" title="Tab 2" />
94
- * </Tabs>
95
- * ```
96
- */
97
- renderPanel?: (key: Key) => ReactNode;
98
- /**
99
- * Cache keys for individual panels. Enables caching for specified panels.
100
- *
101
- * By default (without cache keys), panels re-render on every Tabs render.
102
- * When a panel has a non-undefined cache key defined, its content is cached
103
- * and reused until the cache key changes.
104
- *
105
- * **Important:**
106
- * - Cache keys must be primitive values (string, number, boolean, null).
107
- * - Objects/arrays will cause cache misses on every render (reference comparison).
108
- * - Symbol tab keys are not supported for caching (use string keys instead).
109
- * - Setting a key to `undefined` is the same as not having it (no caching).
110
- *
111
- * @example
112
- * ```tsx
113
- * // Enable caching for specific panels with their dependencies as cache keys
114
- * <Tabs
115
- * renderPanel={(key) => <Panel data={data[key]} />}
116
- * panelCacheKeys={{
117
- * tab1: data.tab1.version, // Cached, invalidates when version changes
118
- * tab2: data.tab2.version, // Cached, invalidates when version changes
119
- * // tab3 has no cache key - re-renders on every Tabs render
120
- * }}
121
- * />
122
- * ```
123
- */
124
- panelCacheKeys?: Record<string | number, string | number | boolean | null | undefined>;
125
- }
126
- export interface CubeTabProps extends TabStyleProps, PanelBehaviorProps {
127
- /**
128
- * Unique identifier for the tab. Used for activeKey matching.
129
- * Auto-injected from the React `key` prop (converted to string).
130
- * Note: All keys are internally converted to strings for React Aria compatibility.
131
- */
132
- id?: string;
133
- /** Content displayed in the tab button. */
134
- title: ReactNode;
135
- /** Panel content rendered when tab is active. */
136
- children?: ReactNode;
137
- /** Disables the tab (cannot be selected). */
138
- isDisabled?: boolean;
139
- /** Actions to render in the tab (e.g., icons, buttons). Rendered before delete action if tab is deletable. */
140
- actions?: ReactNode;
141
- /** Whether the tab title can be edited. Requires onTitleChange on Tabs or Tab. */
142
- isEditable?: boolean;
143
- /** Callback when this tab's title is changed. Overrides parent's onTitleChange. */
144
- onTitleChange?: (newTitle: string) => void;
145
- }
146
- export interface CubeTabPanelProps extends PanelBehaviorProps, QAProps {
147
- /**
148
- * Panel identifier. Must match a Tab's id.
149
- * Auto-injected from the React `key` prop (converted to string).
150
- */
151
- id?: string;
152
- /** Panel content. */
153
- children?: ReactNode;
154
- /** Custom tasty styles for the panel container. */
155
- styles?: Styles;
156
- }
157
- export interface CubeTabListProps {
158
- /** Tab components. */
159
- children?: ReactNode;
160
- }
161
- /** Ref API for programmatic control of Tabs component */
162
- export interface CubeTabsRef {
163
- /** The root DOM element of the Tabs component */
164
- element: HTMLDivElement | null;
165
- /** Start editing a tab's title by its key */
166
- startEditing: (key: Key) => void;
167
- /** Cancel the current editing session */
168
- cancelEditing: () => void;
169
- }
1
+ import { ReactElement } from 'react';
2
+ import { TabsAction } from './TabsAction';
3
+ import type { CubeTabListProps, CubeTabPanelProps, CubeTabProps, CubeTabsProps } from './types';
170
4
  declare function Tab(_props: CubeTabProps): ReactElement | null;
171
5
  declare namespace Tab {
172
6
  var displayName: string;
@@ -184,8 +18,6 @@ declare namespace TabList {
184
18
  * Built with React Aria for full accessibility support.
185
19
  *
186
20
  * **Note:** Tab keys are internally converted to strings for React Aria compatibility.
187
- * When using `activeKey`, `onChange`, etc., be aware that numeric keys will be
188
- * converted to their string equivalents.
189
21
  *
190
22
  * @example
191
23
  * // Simple usage
@@ -211,26 +43,11 @@ declare namespace TabList {
211
43
  * <Tabs.Panel key="tab1">Content 1</Tabs.Panel>
212
44
  * <Tabs.Panel key="tab2">Content 2</Tabs.Panel>
213
45
  * </Tabs>
214
- *
215
- * @example
216
- * // Optimized lazy rendering with renderPanel
217
- * <Tabs
218
- * defaultActiveKey="tab1"
219
- * renderPanel={(key) => {
220
- * switch (key) {
221
- * case 'tab1': return <ExpensiveComponent />;
222
- * case 'tab2': return <AnotherExpensive />;
223
- * default: return null;
224
- * }
225
- * }}
226
- * >
227
- * <Tab key="tab1" title="Tab 1" />
228
- * <Tab key="tab2" title="Tab 2" />
229
- * </Tabs>
230
46
  */
231
- export declare const Tabs: import("react").ForwardRefExoticComponent<CubeTabsProps & import("react").RefAttributes<CubeTabsRef>> & {
47
+ export declare const Tabs: import("react").ForwardRefExoticComponent<CubeTabsProps & import("react").RefAttributes<HTMLDivElement>> & {
232
48
  Tab: typeof Tab;
233
49
  List: typeof TabList;
234
50
  Panel: typeof TabPanel;
51
+ Action: import("react").ForwardRefExoticComponent<Omit<import("./TabsAction").CubeTabsActionProps, "ref"> & import("react").RefAttributes<import("@react-types/shared").FocusableRefValue<HTMLElement, HTMLElement>>>;
235
52
  };
236
- export { Tab, TabList, TabPanel };
53
+ export { Tab, TabList, TabPanel, TabsAction };