@cube-dev/ui-kit 0.94.2 → 0.96.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 (563) hide show
  1. package/CHANGELOG.md +22 -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 +26 -16
  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 +1 -1
  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 +4 -140
  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 +50 -0
  74. package/es/components/content/Layout/Layout.js +190 -0
  75. package/es/components/content/Layout/LayoutBlock.js +30 -0
  76. package/es/components/content/Layout/LayoutContent.js +112 -0
  77. package/es/components/content/Layout/LayoutContext.js +105 -0
  78. package/es/components/content/Layout/LayoutFlex.js +32 -0
  79. package/es/components/content/Layout/LayoutFooter.js +46 -0
  80. package/es/components/content/Layout/LayoutGrid.js +32 -0
  81. package/es/components/content/Layout/LayoutHeader.js +106 -0
  82. package/es/components/content/Layout/LayoutPane.js +333 -0
  83. package/es/components/content/Layout/LayoutPanel.js +419 -0
  84. package/es/components/content/Layout/LayoutPanelHeader.js +56 -0
  85. package/es/components/content/Layout/LayoutToolbar.js +36 -0
  86. package/es/components/content/Layout/hooks/useTinyScrollbar.js +129 -0
  87. package/es/components/content/Layout/index.js +35 -0
  88. package/es/components/content/Layout/utils.js +23 -0
  89. package/es/components/content/List/SectionHeading.js +1 -1
  90. package/es/components/content/List/index.js +1 -1
  91. package/es/components/content/Paragraph.js +1 -1
  92. package/es/components/content/Placeholder/Placeholder.js +1 -1
  93. package/es/components/content/PrismCode/PrismCode.js +1 -1
  94. package/es/components/content/PrismCode/prismSetup.js +1 -1
  95. package/es/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  96. package/es/components/content/Result/Result.js +1 -1
  97. package/es/components/content/Skeleton/Skeleton.js +1 -1
  98. package/es/components/content/Tag/Tag.js +1 -1
  99. package/es/components/content/Text.js +8 -7
  100. package/es/components/content/TextItem/TextItem.js +85 -0
  101. package/es/components/content/TextItem/index.js +10 -0
  102. package/es/components/content/Title.js +1 -1
  103. package/es/components/content/use-auto-tooltip.js +148 -0
  104. package/es/components/fields/Checkbox/Checkbox.js +1 -1
  105. package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
  106. package/es/components/fields/Checkbox/context.js +1 -1
  107. package/es/components/fields/Checkbox/index.js +1 -1
  108. package/es/components/fields/ComboBox/ComboBox.js +1 -1
  109. package/es/components/fields/ComboBox/index.js +1 -1
  110. package/es/components/fields/DatePicker/DateInput.js +1 -1
  111. package/es/components/fields/DatePicker/DateInputBase.js +1 -1
  112. package/es/components/fields/DatePicker/DatePicker.js +1 -1
  113. package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
  114. package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
  115. package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
  116. package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
  117. package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
  118. package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  119. package/es/components/fields/DatePicker/TimeInput.js +1 -1
  120. package/es/components/fields/DatePicker/index.js +1 -1
  121. package/es/components/fields/DatePicker/intl.js +1 -1
  122. package/es/components/fields/DatePicker/parseDate.js +1 -1
  123. package/es/components/fields/DatePicker/props.js +1 -1
  124. package/es/components/fields/DatePicker/types.js +1 -1
  125. package/es/components/fields/DatePicker/utils.js +1 -1
  126. package/es/components/fields/FileInput/FileInput.js +1 -1
  127. package/es/components/fields/FilterListBox/FilterListBox.js +1 -1
  128. package/es/components/fields/FilterListBox/index.js +1 -1
  129. package/es/components/fields/FilterPicker/FilterPicker.js +1 -1
  130. package/es/components/fields/FilterPicker/index.js +1 -1
  131. package/es/components/fields/Input/Input.js +1 -1
  132. package/es/components/fields/Input/index.js +1 -1
  133. package/es/components/fields/ListBox/ListBox.js +1 -1
  134. package/es/components/fields/ListBox/index.js +1 -1
  135. package/es/components/fields/NumberInput/NumberInput.js +1 -1
  136. package/es/components/fields/NumberInput/StepButton.js +1 -1
  137. package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
  138. package/es/components/fields/Picker/Picker.js +1 -1
  139. package/es/components/fields/Picker/index.js +1 -1
  140. package/es/components/fields/RadioGroup/Radio.js +1 -1
  141. package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
  142. package/es/components/fields/RadioGroup/context.js +1 -1
  143. package/es/components/fields/RadioGroup/index.js +1 -1
  144. package/es/components/fields/SearchInput/SearchInput.js +1 -1
  145. package/es/components/fields/SearchInput/index.js +1 -1
  146. package/es/components/fields/Select/Select.js +1 -1
  147. package/es/components/fields/Select/index.js +1 -1
  148. package/es/components/fields/Slider/Gradation.js +1 -1
  149. package/es/components/fields/Slider/Header.js +1 -1
  150. package/es/components/fields/Slider/RangeSlider.js +1 -1
  151. package/es/components/fields/Slider/Slider.js +1 -1
  152. package/es/components/fields/Slider/SliderBase.js +1 -1
  153. package/es/components/fields/Slider/SliderInput.js +1 -1
  154. package/es/components/fields/Slider/SliderThumb.js +1 -1
  155. package/es/components/fields/Slider/SliderTrack.js +1 -1
  156. package/es/components/fields/Slider/elements.js +1 -1
  157. package/es/components/fields/Slider/index.js +1 -1
  158. package/es/components/fields/Slider/types.js +1 -1
  159. package/es/components/fields/Switch/Switch.js +1 -1
  160. package/es/components/fields/Switch/index.js +1 -1
  161. package/es/components/fields/TextArea/TextArea.js +1 -1
  162. package/es/components/fields/TextArea/index.js +1 -1
  163. package/es/components/fields/TextInput/TextInput.js +1 -1
  164. package/es/components/fields/TextInput/TextInputBase.js +1 -1
  165. package/es/components/fields/TextInput/index.js +1 -1
  166. package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  167. package/es/components/fields/TextInputMapper/index.js +1 -1
  168. package/es/components/fields/index.js +1 -1
  169. package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
  170. package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  171. package/es/components/form/FieldWrapper/index.js +1 -1
  172. package/es/components/form/FieldWrapper/types.js +1 -1
  173. package/es/components/form/Form/Field.js +1 -1
  174. package/es/components/form/Form/Form.js +1 -1
  175. package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
  176. package/es/components/form/Form/ResetButton/index.js +1 -1
  177. package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  178. package/es/components/form/Form/SubmitButton/index.js +1 -1
  179. package/es/components/form/Form/SubmitError.js +1 -1
  180. package/es/components/form/Form/index.js +1 -1
  181. package/es/components/form/Form/types.js +1 -1
  182. package/es/components/form/Form/use-field/index.js +1 -1
  183. package/es/components/form/Form/use-field/types.js +1 -1
  184. package/es/components/form/Form/use-field/use-field-props.js +1 -1
  185. package/es/components/form/Form/use-field/use-field.js +1 -1
  186. package/es/components/form/Form/use-form.js +1 -1
  187. package/es/components/form/Form/validation.js +1 -1
  188. package/es/components/form/Label.js +1 -1
  189. package/es/components/form/index.js +1 -1
  190. package/es/components/form/wrapper.js +1 -1
  191. package/es/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  192. package/es/components/helpers/index.js +1 -1
  193. package/es/components/layout/Flex.js +1 -1
  194. package/es/components/layout/Flow.js +1 -1
  195. package/es/components/layout/Grid.js +1 -1
  196. package/es/components/layout/Panel.js +1 -1
  197. package/es/components/layout/Prefix.js +1 -1
  198. package/es/components/layout/ResizablePanel.js +1 -1
  199. package/es/components/layout/Space.js +1 -1
  200. package/es/components/layout/Suffix.js +1 -1
  201. package/es/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
  202. package/es/components/organisms/FileTabs/FileTabs.js +1 -1
  203. package/es/components/organisms/StatsCard/StatsCard.js +1 -1
  204. package/es/components/other/Base64Upload/Base64Upload.js +1 -1
  205. package/es/components/other/Calendar/Calendar.js +1 -1
  206. package/es/components/other/Calendar/CalendarCell.js +1 -1
  207. package/es/components/other/Calendar/CalendarGrid.js +1 -1
  208. package/es/components/other/Calendar/RangeCalendar.js +1 -1
  209. package/es/components/other/CloudLogo/CloudLogo.js +1 -1
  210. package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
  211. package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  212. package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  213. package/es/components/overlays/AlertDialog/index.js +1 -1
  214. package/es/components/overlays/AlertDialog/types.js +1 -1
  215. package/es/components/overlays/Dialog/Dialog.js +8 -3
  216. package/es/components/overlays/Dialog/DialogContainer.js +1 -1
  217. package/es/components/overlays/Dialog/DialogForm.js +1 -1
  218. package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
  219. package/es/components/overlays/Dialog/context.js +1 -1
  220. package/es/components/overlays/Dialog/index.js +1 -1
  221. package/es/components/overlays/Dialog/use-dialog-container.js +1 -1
  222. package/es/components/overlays/Modal/Modal.js +1 -1
  223. package/es/components/overlays/Modal/OpenTransition.js +1 -1
  224. package/es/components/overlays/Modal/Overlay.js +1 -1
  225. package/es/components/overlays/Modal/Popover.js +1 -1
  226. package/es/components/overlays/Modal/Tray.js +1 -1
  227. package/es/components/overlays/Modal/Underlay.js +1 -1
  228. package/es/components/overlays/Modal/index.js +1 -1
  229. package/es/components/overlays/Modal/types.js +1 -1
  230. package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
  231. package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
  232. package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
  233. package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
  234. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogContext.js +1 -1
  235. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
  236. package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
  237. package/es/components/overlays/NewNotifications/Notification.js +1 -1
  238. package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
  239. package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
  240. package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
  241. package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
  242. package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
  243. package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
  244. package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
  245. package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
  246. package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
  247. package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
  248. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.js +1 -1
  249. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
  250. package/es/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
  251. package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
  252. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
  253. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
  254. package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
  255. package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
  256. package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
  257. package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
  258. package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
  259. package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
  260. package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
  261. package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
  262. package/es/components/overlays/NewNotifications/index.js +1 -1
  263. package/es/components/overlays/NewNotifications/types.js +1 -1
  264. package/es/components/overlays/Notification/Notification.js +1 -1
  265. package/es/components/overlays/OverlayWrapper.js +1 -1
  266. package/es/components/overlays/Toasts/Toast.js +1 -1
  267. package/es/components/overlays/Toasts/index.js +1 -1
  268. package/es/components/overlays/Toasts/types.js +1 -1
  269. package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
  270. package/es/components/overlays/Tooltip/Tooltip.js +1 -1
  271. package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
  272. package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  273. package/es/components/overlays/Tooltip/context.js +1 -1
  274. package/es/components/overlays/Tooltip/index.js +1 -1
  275. package/es/components/portal/Portal.js +1 -1
  276. package/es/components/portal/PortalProvider.js +1 -1
  277. package/es/components/portal/index.js +1 -1
  278. package/es/components/portal/types.js +1 -1
  279. package/es/components/portal/usePortal.js +1 -1
  280. package/es/components/shared/InvalidIcon.js +1 -1
  281. package/es/components/shared/ValidIcon.js +1 -1
  282. package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  283. package/es/components/status/LoadingAnimation/index.js +1 -1
  284. package/es/components/status/Spin/Cube.js +1 -1
  285. package/es/components/status/Spin/InternalSpinner.js +1 -1
  286. package/es/components/status/Spin/Spin.js +1 -1
  287. package/es/components/status/Spin/SpinsContainer.js +1 -1
  288. package/es/components/status/Spin/index.js +1 -1
  289. package/es/components/status/Spin/types.js +1 -1
  290. package/es/components/status/index.js +1 -1
  291. package/es/data/item-themes.js +1 -1
  292. package/es/data/themes.js +1 -1
  293. package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
  294. package/es/icons/AdjustmentsIcon.js +1 -1
  295. package/es/icons/AiIcon.js +1 -1
  296. package/es/icons/AreaChartIcon.js +1 -1
  297. package/es/icons/BackwardIcon.js +1 -1
  298. package/es/icons/BarChartIcon.js +1 -1
  299. package/es/icons/BellFilledIcon.js +1 -1
  300. package/es/icons/BellIcon.js +1 -1
  301. package/es/icons/BooleanIcon.js +1 -1
  302. package/es/icons/CalendarEditIcon.js +1 -1
  303. package/es/icons/CalendarIcon.js +1 -1
  304. package/es/icons/CaretDownIcon.js +1 -1
  305. package/es/icons/CaretUpIcon.js +1 -1
  306. package/es/icons/ChartAreaStackedIcon.js +1 -1
  307. package/es/icons/ChartAreaStackedPercentageIcon.js +1 -1
  308. package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  309. package/es/icons/ChartBarGroupedIcon.js +1 -1
  310. package/es/icons/ChartBarHorizontalIcon.js +1 -1
  311. package/es/icons/ChartBarLineIcon.js +1 -1
  312. package/es/icons/ChartBarStackedHorizontalIcon.js +1 -1
  313. package/es/icons/ChartBarStackedIcon.js +1 -1
  314. package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  315. package/es/icons/ChartBarStackedPercentageIcon.js +1 -1
  316. package/es/icons/ChartBoxPlot2Icon.js +1 -1
  317. package/es/icons/ChartBoxPlotIcon.js +1 -1
  318. package/es/icons/ChartBubbleIcon.js +1 -1
  319. package/es/icons/ChartDonut2Icon.js +1 -1
  320. package/es/icons/ChartFunnelIcon.js +1 -1
  321. package/es/icons/ChartHeatmapIcon.js +1 -1
  322. package/es/icons/ChartKPIIcon.js +1 -1
  323. package/es/icons/ChartPie2Icon.js +1 -1
  324. package/es/icons/ChartScatterIcon.js +1 -1
  325. package/es/icons/CheckCircleFilledIcon.js +1 -1
  326. package/es/icons/CheckCircleIcon.js +1 -1
  327. package/es/icons/CheckIcon.js +1 -1
  328. package/es/icons/CircleFilledIcon.js +1 -1
  329. package/es/icons/ClearIcon.js +1 -1
  330. package/es/icons/CloseCircleFilledIcon.js +1 -1
  331. package/es/icons/CloseCircleIcon.js +1 -1
  332. package/es/icons/CloseIcon.js +1 -1
  333. package/es/icons/CodeIcon.js +1 -1
  334. package/es/icons/CopyIcon.js +1 -1
  335. package/es/icons/CountIcon.js +1 -1
  336. package/es/icons/CubeIcon.js +1 -1
  337. package/es/icons/CubePauseIcon.js +1 -1
  338. package/es/icons/CubePlayIcon.js +1 -1
  339. package/es/icons/CurrencyDollarIcon.js +1 -1
  340. package/es/icons/DangerIcon.js +1 -1
  341. package/es/icons/DashboardIcon.js +1 -1
  342. package/es/icons/DatabaseIcon.js +1 -1
  343. package/es/icons/DecimalDecreaseIcon.js +1 -1
  344. package/es/icons/DecimalIncreaseIcon.js +1 -1
  345. package/es/icons/DirectionIcon.js +1 -1
  346. package/es/icons/DonutIcon.js +1 -1
  347. package/es/icons/DownIcon.js +1 -1
  348. package/es/icons/EditIcon.js +1 -1
  349. package/es/icons/ExclamationCircleFilledIcon.js +1 -1
  350. package/es/icons/ExclamationCircleIcon.js +1 -1
  351. package/es/icons/ExclamationIcon.js +1 -1
  352. package/es/icons/EyeIcon.js +1 -1
  353. package/es/icons/EyeInvisibleIcon.js +1 -1
  354. package/es/icons/FilterIcon.js +1 -1
  355. package/es/icons/FolderFilledIcon.js +1 -1
  356. package/es/icons/FolderIcon.js +1 -1
  357. package/es/icons/FolderOpenFilledIcon.js +1 -1
  358. package/es/icons/FolderOpenIcon.js +1 -1
  359. package/es/icons/ForwardIcon.js +1 -1
  360. package/es/icons/HierarchyIcon.js +1 -1
  361. package/es/icons/HierarchyOpenIcon.js +1 -1
  362. package/es/icons/Icon.js +1 -1
  363. package/es/icons/InfoCircleIcon.js +1 -1
  364. package/es/icons/InfoIcon.js +1 -1
  365. package/es/icons/KeyIcon.js +1 -1
  366. package/es/icons/LeftIcon.js +1 -1
  367. package/es/icons/LineChartIcon.js +1 -1
  368. package/es/icons/LoadingIcon.js +1 -1
  369. package/es/icons/LockFilledIcon.js +1 -1
  370. package/es/icons/LockIcon.js +1 -1
  371. package/es/icons/MoreIcon.js +1 -1
  372. package/es/icons/NotAllowedIcon.js +1 -1
  373. package/es/icons/Number123Icon.js +1 -1
  374. package/es/icons/NumberIcon.js +1 -1
  375. package/es/icons/PauseCircleFilledIcon.js +1 -1
  376. package/es/icons/PauseCircleIcon.js +1 -1
  377. package/es/icons/PauseIcon.js +1 -1
  378. package/es/icons/PercentageIcon.js +1 -1
  379. package/es/icons/PieChartIcon.js +1 -1
  380. package/es/icons/PlayCircleIcon.js +1 -1
  381. package/es/icons/PlayIcon.js +1 -1
  382. package/es/icons/PlusIcon.js +1 -1
  383. package/es/icons/ProgressBarIcon.js +1 -1
  384. package/es/icons/ReloadIcon.js +1 -1
  385. package/es/icons/ReportIcon.js +1 -1
  386. package/es/icons/ReturnIcon.js +1 -1
  387. package/es/icons/RightIcon.js +1 -1
  388. package/es/icons/SchemeIcon.js +1 -1
  389. package/es/icons/SearchIcon.js +1 -1
  390. package/es/icons/SettingsIcon.js +1 -1
  391. package/es/icons/ShieldFilledIcon.js +1 -1
  392. package/es/icons/ShieldIcon.js +1 -1
  393. package/es/icons/SlashIcon.js +1 -1
  394. package/es/icons/SparklesIcon.js +1 -1
  395. package/es/icons/SqlIcon.js +1 -1
  396. package/es/icons/StatsIcon.js +1 -1
  397. package/es/icons/StopIcon.js +1 -1
  398. package/es/icons/StringIcon.js +1 -1
  399. package/es/icons/SwitchIcon.js +1 -1
  400. package/es/icons/TableIcon.js +1 -1
  401. package/es/icons/ThumbsDownIcon.js +1 -1
  402. package/es/icons/ThumbsUpIcon.js +1 -1
  403. package/es/icons/ThunderboltCrossedIcon.js +1 -1
  404. package/es/icons/ThunderboltFilledIcon.js +1 -1
  405. package/es/icons/ThunderboltIcon.js +1 -1
  406. package/es/icons/TimeIcon.js +1 -1
  407. package/es/icons/TrashIcon.js +1 -1
  408. package/es/icons/UnlockIcon.js +1 -1
  409. package/es/icons/UpIcon.js +1 -1
  410. package/es/icons/UserGroupIcon.js +1 -1
  411. package/es/icons/UserIcon.js +1 -1
  412. package/es/icons/UserLockIcon.js +1 -1
  413. package/es/icons/ViewIcon.js +1 -1
  414. package/es/icons/WarningFilledIcon.js +1 -1
  415. package/es/icons/WarningIcon.js +1 -1
  416. package/es/icons/add-new-icon.js +1 -1
  417. package/es/icons/index.js +1 -1
  418. package/es/icons/wrap-icon.js +1 -1
  419. package/es/index.js +4 -2
  420. package/es/provider.js +1 -1
  421. package/es/providers/TrackingProvider.js +1 -1
  422. package/es/providers/navigation.types.js +1 -1
  423. package/es/providers/navigationAdapter.default.js +1 -1
  424. package/es/services/notification.js +1 -1
  425. package/es/shared/form.js +1 -1
  426. package/es/shared/index.js +1 -1
  427. package/es/stories/Form.legacy-stories.js +1 -1
  428. package/es/stories/FormFieldArgs.js +1 -1
  429. package/es/stories/{Layout.stories.js → SimpleLayout.stories.js} +2 -2
  430. package/es/stories/Tasty.stories.js +1 -1
  431. package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
  432. package/es/stories/components/DialogFormApp.js +1 -1
  433. package/es/stories/components/StyledButton.js +1 -1
  434. package/es/stories/lists/baseProps.js +1 -1
  435. package/es/tasty/debug.js +1 -1
  436. package/es/tasty/index.js +1 -1
  437. package/es/tasty/injector/index.js +1 -1
  438. package/es/tasty/injector/injector.js +1 -1
  439. package/es/tasty/injector/sheet-manager.js +1 -1
  440. package/es/tasty/injector/types.js +1 -1
  441. package/es/tasty/parser/classify.js +1 -1
  442. package/es/tasty/parser/const.js +1 -1
  443. package/es/tasty/parser/lru.js +1 -1
  444. package/es/tasty/parser/parser.js +1 -1
  445. package/es/tasty/parser/tokenizer.js +1 -1
  446. package/es/tasty/parser/types.js +1 -1
  447. package/es/tasty/providers/BreakpointsProvider.js +1 -1
  448. package/es/tasty/styles/align.js +1 -1
  449. package/es/tasty/styles/border.js +1 -1
  450. package/es/tasty/styles/boxShadow.combinator.js +1 -1
  451. package/es/tasty/styles/color.js +1 -1
  452. package/es/tasty/styles/createStyle.js +1 -1
  453. package/es/tasty/styles/dimension.js +1 -1
  454. package/es/tasty/styles/display.js +1 -1
  455. package/es/tasty/styles/fade.js +1 -1
  456. package/es/tasty/styles/fill.js +1 -1
  457. package/es/tasty/styles/flow.js +1 -1
  458. package/es/tasty/styles/font.js +1 -1
  459. package/es/tasty/styles/fontStyle.js +1 -1
  460. package/es/tasty/styles/gap.js +1 -1
  461. package/es/tasty/styles/groupRadius.js +1 -1
  462. package/es/tasty/styles/height.js +1 -1
  463. package/es/tasty/styles/index.js +1 -1
  464. package/es/tasty/styles/inset.js +1 -1
  465. package/es/tasty/styles/justify.js +1 -1
  466. package/es/tasty/styles/list.js +23 -9
  467. package/es/tasty/styles/margin.js +1 -1
  468. package/es/tasty/styles/outline.js +1 -1
  469. package/es/tasty/styles/padding.js +1 -1
  470. package/es/tasty/styles/place.js +1 -1
  471. package/es/tasty/styles/predefined.js +1 -1
  472. package/es/tasty/styles/preset.js +1 -1
  473. package/es/tasty/styles/radius.js +1 -1
  474. package/es/tasty/styles/reset.js +1 -1
  475. package/es/tasty/styles/scrollbar.js +1 -1
  476. package/es/tasty/styles/shadow.js +1 -1
  477. package/es/tasty/styles/styledScrollbar.js +1 -1
  478. package/es/tasty/styles/transition.js +1 -2
  479. package/es/tasty/styles/types.js +1 -1
  480. package/es/tasty/styles/width.js +1 -1
  481. package/es/tasty/tasty.js +1 -1
  482. package/es/tasty/types.js +1 -1
  483. package/es/tasty/utils/cache-wrapper.js +1 -1
  484. package/es/tasty/utils/case-converter.js +1 -1
  485. package/es/tasty/utils/colors.js +1 -1
  486. package/es/tasty/utils/dotize.js +1 -1
  487. package/es/tasty/utils/filterBaseProps.js +1 -1
  488. package/es/tasty/utils/getDisplayName.js +1 -1
  489. package/es/tasty/utils/getModCombinations.js +1 -1
  490. package/es/tasty/utils/isDevEnv.js +1 -1
  491. package/es/tasty/utils/mergeStyles.js +1 -1
  492. package/es/tasty/utils/modAttrs.js +1 -1
  493. package/es/tasty/utils/renderStyles.js +1 -1
  494. package/es/tasty/utils/responsive.js +1 -1
  495. package/es/tasty/utils/string.js +1 -1
  496. package/es/tasty/utils/styles.js +1 -1
  497. package/es/tasty/utils/warnings.js +1 -1
  498. package/es/tokens.js +1 -1
  499. package/es/utils/ResizeSensor.js +1 -1
  500. package/es/utils/index.js +1 -1
  501. package/es/utils/modules.js +1 -1
  502. package/es/utils/promise.js +1 -1
  503. package/es/utils/raf.js +1 -1
  504. package/es/utils/random.js +1 -1
  505. package/es/utils/range.js +1 -1
  506. package/es/utils/react/RenderCache.js +1 -1
  507. package/es/utils/react/Slots.js +1 -1
  508. package/es/utils/react/chain.js +1 -1
  509. package/es/utils/react/forwardRefWithGenerics.js +1 -1
  510. package/es/utils/react/index.js +2 -1
  511. package/es/utils/react/interactions.js +1 -1
  512. package/es/utils/react/isTextOnly.js +1 -1
  513. package/es/utils/react/mapProps.js +1 -1
  514. package/es/utils/react/mergeProps.js +1 -1
  515. package/es/utils/react/nullableValue.js +1 -1
  516. package/es/utils/react/sharedStore.js +1 -1
  517. package/es/utils/react/useCombinedRefs.js +1 -1
  518. package/es/utils/react/useControlledFocusVisible.js +1 -1
  519. package/es/utils/react/useEventBus.js +1 -1
  520. package/es/utils/react/useId.js +1 -1
  521. package/es/utils/react/useIsDarwin.js +1 -1
  522. package/es/utils/react/useKeySymbols.js +1 -1
  523. package/es/utils/react/useLayoutEffect.js +1 -1
  524. package/es/utils/react/useLocalStorage.js +130 -0
  525. package/es/utils/react/useQaProps.js +1 -1
  526. package/es/utils/react/useViewportSize.js +1 -1
  527. package/es/utils/react/wrapNodeIfPlain.js +1 -1
  528. package/es/utils/tree.js +1 -1
  529. package/es/utils/warnings.js +1 -1
  530. package/es/version.js +2 -2
  531. package/package.json +1 -1
  532. package/types/components/actions/Button/Button.d.ts +13 -13
  533. package/types/components/actions/Menu/styled.d.ts +3 -9
  534. package/types/components/content/Item/Item.d.ts +1 -16
  535. package/types/components/content/Layout/GridLayout.d.ts +36 -0
  536. package/types/components/content/Layout/Layout.d.ts +25 -0
  537. package/types/components/content/Layout/LayoutBlock.d.ts +5 -0
  538. package/types/components/content/Layout/LayoutContent.d.ts +12 -0
  539. package/types/components/content/Layout/LayoutContext.d.ts +37 -0
  540. package/types/components/content/Layout/LayoutFlex.d.ts +5 -0
  541. package/types/components/content/Layout/LayoutFooter.d.ts +7 -0
  542. package/types/components/content/Layout/LayoutGrid.d.ts +12 -0
  543. package/types/components/content/Layout/LayoutHeader.d.ts +21 -0
  544. package/types/components/content/Layout/LayoutPane.d.ts +27 -0
  545. package/types/components/content/Layout/LayoutPanel.d.ts +47 -0
  546. package/types/components/content/Layout/LayoutPanelHeader.d.ts +17 -0
  547. package/types/components/content/Layout/LayoutToolbar.d.ts +5 -0
  548. package/types/components/content/Layout/hooks/useTinyScrollbar.d.ts +19 -0
  549. package/types/components/content/Layout/index.d.ts +41 -0
  550. package/types/components/content/Layout/utils.d.ts +5 -0
  551. package/types/components/content/List/SectionHeading.d.ts +1 -3
  552. package/types/components/content/Text.d.ts +10 -31
  553. package/types/components/content/TextItem/TextItem.d.ts +34 -0
  554. package/types/components/content/TextItem/index.d.ts +2 -0
  555. package/types/components/content/use-auto-tooltip.d.ts +23 -0
  556. package/types/components/fields/DatePicker/DatePickerElement.d.ts +1 -3
  557. package/types/index.d.ts +5 -2
  558. package/types/tasty/index.d.ts +1 -1
  559. package/types/tasty/styles/list.d.ts +7 -4
  560. package/types/tasty/types.d.ts +9 -4
  561. package/types/utils/react/index.d.ts +1 -0
  562. package/types/utils/react/useLocalStorage.d.ts +33 -0
  563. /package/types/stories/{Layout.stories.d.ts → SimpleLayout.stories.d.ts} +0 -0
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/utils/raf.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
package/es/utils/range.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -19,5 +19,6 @@ export { useQaProps } from './useQaProps';
19
19
  export { useEventBus, useEventListener, EventBusProvider } from './useEventBus';
20
20
  export { useControlledFocusVisible } from './useControlledFocusVisible';
21
21
  export { RenderCache } from './RenderCache';
22
+ export { useLocalStorage } from './useLocalStorage';
22
23
 
23
24
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -0,0 +1,130 @@
1
+ /**
2
+ * @license MIT
3
+ * author: Cube Dev Team
4
+ * @cube-dev/ui-kit v0.96.0
5
+ * Released under the MIT license.
6
+ */
7
+
8
+ import { useCallback, useSyncExternalStore } from 'react';
9
+ import { useEvent } from '../../_internal/hooks/use-event';
10
+ /** Global registry of listeners per key for same-tab cross-instance sync */
11
+ const listeners = new Map();
12
+ /** Notify all listeners for a given key */
13
+ function notifyListeners(key) {
14
+ listeners.get(key)?.forEach((listener) => listener());
15
+ }
16
+ /** Check if localStorage is available */
17
+ function isLocalStorageAvailable() {
18
+ try {
19
+ const testKey = '__localStorage_test__';
20
+ window.localStorage.setItem(testKey, testKey);
21
+ window.localStorage.removeItem(testKey);
22
+ return true;
23
+ }
24
+ catch {
25
+ return false;
26
+ }
27
+ }
28
+ /** Safely parse JSON with fallback */
29
+ function parseJSON(value, fallback) {
30
+ if (value === null) {
31
+ return fallback;
32
+ }
33
+ try {
34
+ return JSON.parse(value);
35
+ }
36
+ catch {
37
+ return fallback;
38
+ }
39
+ }
40
+ /** Get initial value, supporting lazy initializer */
41
+ function getInitialValue(initialValue) {
42
+ return typeof initialValue === 'function'
43
+ ? initialValue()
44
+ : initialValue;
45
+ }
46
+ /**
47
+ * A hook to persist state in localStorage with cross-instance synchronization.
48
+ *
49
+ * Features:
50
+ * - JSON serialization/deserialization
51
+ * - Syncs between hook instances with the same key (same tab)
52
+ * - Syncs across browser tabs via storage event
53
+ * - SSR-safe (gracefully handles missing localStorage)
54
+ * - Supports lazy initial value
55
+ *
56
+ * @param key - The localStorage key. Pass `null` or `undefined` to disable the hook.
57
+ * @param initialValue - Initial value or lazy initializer function
58
+ * @returns Tuple of [value, setValue] similar to useState
59
+ *
60
+ * @example
61
+ * ```tsx
62
+ * // Basic usage
63
+ * const [theme, setTheme] = useLocalStorage('theme', 'light');
64
+ *
65
+ * // With lazy initializer
66
+ * const [settings, setSettings] = useLocalStorage('settings', () => getDefaultSettings());
67
+ *
68
+ * // Disabled (returns initialValue, setValue is no-op)
69
+ * const [value, setValue] = useLocalStorage(null, 'default');
70
+ *
71
+ * // Conditionally enabled
72
+ * const [data, setData] = useLocalStorage(isEnabled ? 'my-key' : null, {});
73
+ * ```
74
+ */
75
+ export function useLocalStorage(key, initialValue) {
76
+ const resolvedInitial = getInitialValue(initialValue);
77
+ const subscribe = useCallback((onStoreChange) => {
78
+ if (!key) {
79
+ return () => { };
80
+ }
81
+ // Add to same-tab listeners
82
+ if (!listeners.has(key)) {
83
+ listeners.set(key, new Set());
84
+ }
85
+ listeners.get(key).add(onStoreChange);
86
+ // Listen for cross-tab changes
87
+ const handleStorageEvent = (event) => {
88
+ if (event.key === key) {
89
+ onStoreChange();
90
+ }
91
+ };
92
+ window.addEventListener('storage', handleStorageEvent);
93
+ return () => {
94
+ listeners.get(key)?.delete(onStoreChange);
95
+ if (listeners.get(key)?.size === 0) {
96
+ listeners.delete(key);
97
+ }
98
+ window.removeEventListener('storage', handleStorageEvent);
99
+ };
100
+ }, [key]);
101
+ const getSnapshot = useCallback(() => {
102
+ if (!key || !isLocalStorageAvailable()) {
103
+ return resolvedInitial;
104
+ }
105
+ return parseJSON(localStorage.getItem(key), resolvedInitial);
106
+ }, [key, resolvedInitial]);
107
+ const getServerSnapshot = useCallback(() => {
108
+ return resolvedInitial;
109
+ }, [resolvedInitial]);
110
+ const storedValue = useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
111
+ const setValue = useEvent((update) => {
112
+ if (!key || !isLocalStorageAvailable()) {
113
+ return;
114
+ }
115
+ const currentValue = parseJSON(localStorage.getItem(key), resolvedInitial);
116
+ const newValue = typeof update === 'function'
117
+ ? update(currentValue)
118
+ : update;
119
+ try {
120
+ localStorage.setItem(key, JSON.stringify(newValue));
121
+ notifyListeners(key);
122
+ }
123
+ catch (error) {
124
+ console.error(`[useLocalStorage] Failed to save "${key}":`, error);
125
+ }
126
+ });
127
+ return [storedValue, setValue];
128
+ }
129
+
130
+
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.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.94.2
4
+ * @cube-dev/ui-kit v0.96.0
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
- export const VERSION = '0.94.2';
8
+ export const VERSION = '0.96.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.94.2",
3
+ "version": "0.96.0",
4
4
  "description": "UIKit for Cube Projects",
5
5
  "keywords": [
6
6
  "uikit"
@@ -53,21 +53,13 @@ export declare const DEFAULT_BUTTON_STYLES: {
53
53
  readonly 'single-icon | type=link': 0;
54
54
  };
55
55
  readonly width: {
56
- readonly '': "initial";
57
- readonly 'size=xsmall & single-icon': "$size-xs $size-xs";
58
- readonly 'size=small & single-icon': "$size-sm $size-sm";
59
- readonly 'size=medium & single-icon': "$size-md $size-md";
60
- readonly 'size=large & single-icon': "$size-lg $size-lg";
61
- readonly 'size=xlarge & single-icon': "$size-xl $size-xl";
62
- readonly 'type=link': "initial";
56
+ readonly '': "min $size";
57
+ readonly 'left-icon & right-icon': "min ($size * 2 - 2bw)";
58
+ readonly 'single-icon': "fixed $size";
59
+ readonly 'type=link': "min 1ch";
63
60
  };
64
61
  readonly height: {
65
- readonly '': "initial";
66
- readonly 'size=xsmall': "$size-xs $size-xs";
67
- readonly 'size=small': "$size-sm $size-sm";
68
- readonly 'size=medium': "$size-md $size-md";
69
- readonly 'size=large': "$size-lg $size-lg";
70
- readonly 'size=xlarge': "$size-xl $size-xl";
62
+ readonly '': "fixed $size";
71
63
  readonly 'type=link': "initial";
72
64
  };
73
65
  readonly whiteSpace: "nowrap";
@@ -75,6 +67,14 @@ export declare const DEFAULT_BUTTON_STYLES: {
75
67
  readonly '': true;
76
68
  readonly 'type=link & !focused': 0;
77
69
  };
70
+ readonly $size: {
71
+ readonly '': "$size-md";
72
+ readonly 'size=xsmall': "$size-xs";
73
+ readonly 'size=small': "$size-sm";
74
+ readonly 'size=medium': "$size-md";
75
+ readonly 'size=large': "$size-lg";
76
+ readonly 'size=xlarge': "$size-xl";
77
+ };
78
78
  readonly ButtonIcon: {
79
79
  readonly width: "min 1fs";
80
80
  };
@@ -71,9 +71,7 @@ export declare const StyledHeader: import("react").ComponentType<{
71
71
  element?: `A${string}` | `B${string}` | `C${string}` | `D${string}` | `E${string}` | `F${string}` | `G${string}` | `H${string}` | `I${string}` | `J${string}` | `K${string}` | `L${string}` | `M${string}` | `N${string}` | `O${string}` | `P${string}` | `Q${string}` | `R${string}` | `S${string}` | `T${string}` | `U${string}` | `V${string}` | `W${string}` | `X${string}` | `Y${string}` | `Z${string}` | undefined;
72
72
  multiple?: boolean | undefined;
73
73
  styles?: import("../../../tasty").Styles | undefined;
74
- mods?: {
75
- [key: string]: string | number | boolean | null | undefined;
76
- } | undefined;
74
+ mods?: import("../../../tasty").Mods | undefined;
77
75
  min?: string | number | undefined;
78
76
  max?: string | number | undefined;
79
77
  css?: string | undefined;
@@ -517,9 +515,7 @@ export declare const StyledFooter: import("react").ComponentType<{
517
515
  element?: `A${string}` | `B${string}` | `C${string}` | `D${string}` | `E${string}` | `F${string}` | `G${string}` | `H${string}` | `I${string}` | `J${string}` | `K${string}` | `L${string}` | `M${string}` | `N${string}` | `O${string}` | `P${string}` | `Q${string}` | `R${string}` | `S${string}` | `T${string}` | `U${string}` | `V${string}` | `W${string}` | `X${string}` | `Y${string}` | `Z${string}` | undefined;
518
516
  multiple?: boolean | undefined;
519
517
  styles?: import("../../../tasty").Styles | undefined;
520
- mods?: {
521
- [key: string]: string | number | boolean | null | undefined;
522
- } | undefined;
518
+ mods?: import("../../../tasty").Mods | undefined;
523
519
  min?: string | number | undefined;
524
520
  max?: string | number | undefined;
525
521
  css?: string | undefined;
@@ -965,9 +961,7 @@ export declare const StyledSectionHeading: import("react").ComponentType<{
965
961
  element?: `A${string}` | `B${string}` | `C${string}` | `D${string}` | `E${string}` | `F${string}` | `G${string}` | `H${string}` | `I${string}` | `J${string}` | `K${string}` | `L${string}` | `M${string}` | `N${string}` | `O${string}` | `P${string}` | `Q${string}` | `R${string}` | `S${string}` | `T${string}` | `U${string}` | `V${string}` | `W${string}` | `X${string}` | `Y${string}` | `Z${string}` | undefined;
966
962
  multiple?: boolean | undefined;
967
963
  styles?: import("../../../tasty").Styles | undefined;
968
- mods?: {
969
- [key: string]: string | number | boolean | null | undefined;
970
- } | undefined;
964
+ mods?: import("../../../tasty").Mods | undefined;
971
965
  min?: string | number | undefined;
972
966
  max?: string | number | undefined;
973
967
  css?: string | undefined;
@@ -1,4 +1,4 @@
1
- import { HTMLAttributes, ReactNode, RefObject } from 'react';
1
+ import { ReactNode, RefObject } from 'react';
2
2
  import { OverlayProps } from 'react-aria';
3
3
  import { ItemVariant } from '../../../data/item-themes';
4
4
  import { BaseProps, ContainerStyleProps, Props } from '../../../tasty';
@@ -93,21 +93,6 @@ export interface CubeItemProps extends BaseProps, ContainerStyleProps {
93
93
  */
94
94
  labelRef?: RefObject<HTMLElement>;
95
95
  }
96
- export declare function useAutoTooltip({ tooltip, children, labelProps, isDynamicLabel, }: {
97
- tooltip: CubeItemProps['tooltip'];
98
- children: ReactNode;
99
- labelProps?: Props;
100
- isDynamicLabel?: boolean;
101
- }): {
102
- labelRef: (element: HTMLElement | null) => void;
103
- labelProps: {
104
- [x: string]: any;
105
- };
106
- isLabelOverflowed: boolean;
107
- isAutoTooltipEnabled: boolean;
108
- hasTooltip: boolean;
109
- renderWithTooltip: (renderElement: (tooltipTriggerProps?: HTMLAttributes<HTMLElement>, tooltipRef?: RefObject<HTMLElement>) => ReactNode, defaultTooltipPlacement: OverlayProps["placement"]) => string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
110
- };
111
96
  declare const _Item: import("react").ForwardRefExoticComponent<CubeItemProps & import("react").RefAttributes<HTMLElement>> & {
112
97
  Action: import("react").ForwardRefExoticComponent<Omit<import("../../actions/ItemAction").CubeItemActionProps, "ref"> & import("react").RefAttributes<import("@react-types/shared").FocusableRefValue<HTMLElement, HTMLElement>>>;
113
98
  Badge: import("react").ForwardRefExoticComponent<import("../ItemBadge").CubeItemBadgeProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,36 @@
1
+ import { ForwardRefExoticComponent, ReactNode, RefAttributes } from 'react';
2
+ import { Styles } from '../../../tasty';
3
+ import { CubeLayoutProps } from './Layout';
4
+ import { LayoutBlock } from './LayoutBlock';
5
+ import { LayoutContent } from './LayoutContent';
6
+ import { LayoutFlex } from './LayoutFlex';
7
+ import { LayoutFooter } from './LayoutFooter';
8
+ import { LayoutGrid } from './LayoutGrid';
9
+ import { LayoutHeader } from './LayoutHeader';
10
+ import { LayoutPane } from './LayoutPane';
11
+ import { LayoutPanel } from './LayoutPanel';
12
+ import { LayoutPanelHeader } from './LayoutPanelHeader';
13
+ import { LayoutToolbar } from './LayoutToolbar';
14
+ export interface CubeGridLayoutProps extends CubeLayoutProps {
15
+ /** Grid template columns */
16
+ columns?: Styles['gridColumns'];
17
+ /** Grid template rows */
18
+ rows?: Styles['gridRows'];
19
+ /** Grid template shorthand */
20
+ template?: Styles['gridTemplate'];
21
+ children?: ReactNode;
22
+ }
23
+ interface GridLayoutComponent extends ForwardRefExoticComponent<CubeGridLayoutProps & RefAttributes<HTMLDivElement>> {
24
+ Toolbar: typeof LayoutToolbar;
25
+ Header: typeof LayoutHeader;
26
+ Footer: typeof LayoutFooter;
27
+ Content: typeof LayoutContent;
28
+ Block: typeof LayoutBlock;
29
+ Flex: typeof LayoutFlex;
30
+ Grid: typeof LayoutGrid;
31
+ Pane: typeof LayoutPane;
32
+ Panel: typeof LayoutPanel;
33
+ PanelHeader: typeof LayoutPanelHeader;
34
+ }
35
+ declare const GridLayout: GridLayoutComponent;
36
+ export { GridLayout };
@@ -0,0 +1,25 @@
1
+ import { ReactNode } from 'react';
2
+ import { BaseProps, BlockStyleProps, ColorStyleProps, FlowStyleProps, OuterStyleProps, Styles } from '../../../tasty';
3
+ export interface CubeLayoutProps extends BaseProps, OuterStyleProps, BlockStyleProps, ColorStyleProps, FlowStyleProps {
4
+ /** Switch to grid display mode */
5
+ isGrid?: boolean;
6
+ /** Grid template columns (when isGrid=true) */
7
+ columns?: Styles['gridColumns'];
8
+ /** Grid template rows (when isGrid=true) */
9
+ rows?: Styles['gridRows'];
10
+ /** Grid template shorthand */
11
+ template?: Styles['gridTemplate'];
12
+ /** Padding for content areas (Layout.Content components). Default: '1x' */
13
+ contentPadding?: Styles['padding'];
14
+ /** Enable transition animation for Inner content when panels open/close */
15
+ hasTransition?: boolean;
16
+ /** Styles for wrapper and Inner sub-element */
17
+ styles?: Styles;
18
+ children?: ReactNode;
19
+ /**
20
+ * @internal Force show dev warning even in production (for storybook testing)
21
+ */
22
+ _forceShowDevWarning?: boolean;
23
+ }
24
+ declare const _Layout: import("react").ForwardRefExoticComponent<CubeLayoutProps & import("react").RefAttributes<HTMLDivElement>>;
25
+ export { _Layout as Layout };
@@ -0,0 +1,5 @@
1
+ import { CubeLayoutContentProps } from './LayoutContent';
2
+ export interface CubeLayoutBlockProps extends CubeLayoutContentProps {
3
+ }
4
+ declare const _LayoutBlock: import("react").ForwardRefExoticComponent<CubeLayoutBlockProps & import("react").RefAttributes<HTMLDivElement>>;
5
+ export { _LayoutBlock as LayoutBlock };
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from 'react';
2
+ import { BaseProps, ContainerStyleProps, Mods } from '../../../tasty';
3
+ export type ScrollbarType = 'default' | 'thin' | 'tiny' | 'none';
4
+ export interface CubeLayoutContentProps extends BaseProps, ContainerStyleProps {
5
+ /** Scrollbar style: 'default' | 'thin' | 'tiny' | 'none' */
6
+ scrollbar?: ScrollbarType;
7
+ children?: ReactNode;
8
+ /** Additional modifiers to apply */
9
+ mods?: Mods;
10
+ }
11
+ declare const _LayoutContent: import("react").ForwardRefExoticComponent<CubeLayoutContentProps & import("react").RefAttributes<HTMLDivElement>>;
12
+ export { _LayoutContent as LayoutContent };