@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
 
@@ -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,12 +1,12 @@
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
8
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
- import { forwardRef, useCallback, useEffect, useMemo, useRef, useState, } from 'react';
9
+ import { forwardRef, useMemo, } from 'react';
10
10
  import { useHotkeys } from 'react-hotkeys-hook';
11
11
  import { DANGER_CLEAR_STYLES, DANGER_ITEM_STYLES, DANGER_LINK_STYLES, DANGER_NEUTRAL_STYLES, DANGER_OUTLINE_STYLES, DANGER_PRIMARY_STYLES, DANGER_SECONDARY_STYLES, DEFAULT_CLEAR_STYLES, DEFAULT_ITEM_STYLES, DEFAULT_LINK_STYLES, DEFAULT_NEUTRAL_STYLES, DEFAULT_OUTLINE_STYLES, DEFAULT_PRIMARY_STYLES, DEFAULT_SECONDARY_STYLES, SPECIAL_CLEAR_STYLES, SPECIAL_ITEM_STYLES, SPECIAL_LINK_STYLES, SPECIAL_NEUTRAL_STYLES, SPECIAL_OUTLINE_STYLES, SPECIAL_PRIMARY_STYLES, SPECIAL_SECONDARY_STYLES, SUCCESS_CLEAR_STYLES, SUCCESS_ITEM_STYLES, SUCCESS_LINK_STYLES, SUCCESS_NEUTRAL_STYLES, SUCCESS_OUTLINE_STYLES, SUCCESS_PRIMARY_STYLES, SUCCESS_SECONDARY_STYLES, } from '../../../data/item-themes';
12
12
  import { CheckIcon } from '../../../icons/CheckIcon';
@@ -15,9 +15,9 @@ import { CONTAINER_STYLES, tasty, } from '../../../tasty';
15
15
  import { mergeProps } from '../../../utils/react';
16
16
  import { ItemAction } from '../../actions/ItemAction';
17
17
  import { ItemActionProvider } from '../../actions/ItemActionContext';
18
- import { TooltipProvider, } from '../../overlays/Tooltip/TooltipProvider';
19
18
  import { HotKeys } from '../HotKeys';
20
19
  import { ItemBadge } from '../ItemBadge';
20
+ import { useAutoTooltip } from '../use-auto-tooltip';
21
21
  const DEFAULT_ICON_STYLES = {
22
22
  $: '>',
23
23
  display: 'grid',
@@ -85,6 +85,7 @@ const ItemElement = tasty({
85
85
  },
86
86
  width: {
87
87
  '': 'min $size',
88
+ 'has-icon & has-right-icon': 'min ($size * 2)',
88
89
  'size=inline': 'min (1lh + 2bw)',
89
90
  },
90
91
  border: '#clear',
@@ -278,143 +279,6 @@ const ItemElement = tasty({
278
279
  },
279
280
  styleProps: CONTAINER_STYLES,
280
281
  });
281
- export function useAutoTooltip({ tooltip, children, labelProps, isDynamicLabel = false, // if actions are set
282
- }) {
283
- // Determine if auto tooltip is enabled
284
- // Auto tooltip only works when children is a string (overflow detection needs text)
285
- const isAutoTooltipEnabled = useMemo(() => {
286
- if (typeof children !== 'string')
287
- return false;
288
- // Boolean true enables auto overflow detection
289
- if (tooltip === true)
290
- return true;
291
- if (typeof tooltip === 'object') {
292
- // If title is provided and auto is explicitly true, enable auto overflow detection
293
- if (tooltip.title) {
294
- return tooltip.auto === true;
295
- }
296
- // If no title is provided, default to auto=true unless explicitly disabled
297
- const autoValue = tooltip.auto !== undefined ? tooltip.auto : true;
298
- return !!autoValue;
299
- }
300
- return false;
301
- }, [tooltip, children]);
302
- // Track label overflow for auto tooltip (only when enabled)
303
- const externalLabelRef = labelProps?.ref;
304
- const [isLabelOverflowed, setIsLabelOverflowed] = useState(false);
305
- const elementRef = useRef(null);
306
- const resizeObserverRef = useRef(null);
307
- const checkLabelOverflow = useCallback(() => {
308
- const label = elementRef.current;
309
- if (!label) {
310
- setIsLabelOverflowed(false);
311
- return;
312
- }
313
- const hasOverflow = label.scrollWidth > label.clientWidth;
314
- setIsLabelOverflowed(hasOverflow);
315
- }, []);
316
- useEffect(() => {
317
- if (isAutoTooltipEnabled) {
318
- checkLabelOverflow();
319
- }
320
- }, [isAutoTooltipEnabled, checkLabelOverflow]);
321
- // Attach ResizeObserver via callback ref to handle DOM node changes
322
- const handleLabelElementRef = useCallback((element) => {
323
- // Call external callback ref to notify external refs
324
- if (externalLabelRef) {
325
- if (typeof externalLabelRef === 'function') {
326
- externalLabelRef(element);
327
- }
328
- else {
329
- externalLabelRef.current = element;
330
- }
331
- }
332
- // Disconnect previous observer
333
- if (resizeObserverRef.current) {
334
- try {
335
- resizeObserverRef.current.disconnect();
336
- }
337
- catch {
338
- // do nothing
339
- }
340
- resizeObserverRef.current = null;
341
- }
342
- elementRef.current = element;
343
- if (element && isAutoTooltipEnabled) {
344
- // Create a fresh observer to capture the latest callback
345
- const obs = new ResizeObserver(() => {
346
- checkLabelOverflow();
347
- });
348
- resizeObserverRef.current = obs;
349
- obs.observe(element);
350
- // Initial check
351
- checkLabelOverflow();
352
- }
353
- else {
354
- setIsLabelOverflowed(false);
355
- }
356
- }, [externalLabelRef, isAutoTooltipEnabled, checkLabelOverflow]);
357
- // Cleanup on unmount
358
- useEffect(() => {
359
- return () => {
360
- if (resizeObserverRef.current) {
361
- try {
362
- resizeObserverRef.current.disconnect();
363
- }
364
- catch {
365
- // do nothing
366
- }
367
- resizeObserverRef.current = null;
368
- }
369
- elementRef.current = null;
370
- };
371
- }, []);
372
- const finalLabelProps = useMemo(() => {
373
- const props = {
374
- ...(labelProps || {}),
375
- };
376
- delete props.ref;
377
- return props;
378
- }, [labelProps]);
379
- const renderWithTooltip = (renderElement, defaultTooltipPlacement) => {
380
- // Handle tooltip rendering based on tooltip prop type
381
- if (tooltip) {
382
- // String tooltip - simple case
383
- if (typeof tooltip === 'string') {
384
- return (_jsx(TooltipProvider, { placement: defaultTooltipPlacement, title: tooltip, children: (triggerProps, ref) => renderElement(triggerProps, ref) }));
385
- }
386
- // Boolean tooltip - auto tooltip on overflow
387
- if (tooltip === true) {
388
- if ((children || labelProps) && (isLabelOverflowed || isDynamicLabel)) {
389
- return (_jsx(TooltipProvider, { placement: defaultTooltipPlacement, title: children, isDisabled: !isLabelOverflowed && isDynamicLabel, children: (triggerProps, ref) => renderElement(triggerProps, ref) }));
390
- }
391
- }
392
- // Object tooltip - advanced configuration
393
- if (typeof tooltip === 'object') {
394
- const { auto, ...tooltipProps } = tooltip;
395
- // If title is provided and auto is not explicitly true, always show the tooltip
396
- if (tooltipProps.title && auto !== true) {
397
- return (_jsx(TooltipProvider, { placement: defaultTooltipPlacement, ...tooltipProps, children: (triggerProps, ref) => renderElement(triggerProps, ref) }));
398
- }
399
- // If title is provided with auto=true, OR no title but auto behavior enabled
400
- if ((children || labelProps) && (isLabelOverflowed || isDynamicLabel)) {
401
- return (_jsx(TooltipProvider, { placement: defaultTooltipPlacement, title: tooltipProps.title ?? children, isDisabled: !isLabelOverflowed &&
402
- isDynamicLabel &&
403
- tooltipProps.isDisabled !== true, ...tooltipProps, children: (triggerProps, ref) => renderElement(triggerProps, ref) }));
404
- }
405
- }
406
- }
407
- return renderElement();
408
- };
409
- return {
410
- labelRef: handleLabelElementRef,
411
- labelProps: finalLabelProps,
412
- isLabelOverflowed,
413
- isAutoTooltipEnabled,
414
- hasTooltip: !!tooltip,
415
- renderWithTooltip,
416
- };
417
- }
418
282
  const Item = (props, ref) => {
419
283
  let { children, size = 'medium', type = 'item', theme = 'default', mods, icon, rightIcon, prefix, suffix, description, descriptionPlacement = 'inline', labelProps, descriptionProps, keyboardShortcutProps, styles, htmlType, isSelected, hotkeys, tooltip = true, isDisabled, style, loadingSlot = 'auto', isLoading = false, isCard = false, actions, showActionsOnHover = false, disableActionsFocus = false, isButton = false, shape = 'button', defaultTooltipPlacement = 'top', ...rest } = props;
420
284
  // Loading state makes the component disabled
@@ -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,50 @@
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 { jsx as _jsx } from "react/jsx-runtime";
9
+ import { forwardRef, } from 'react';
10
+ import { tasty } from '../../../tasty';
11
+ import { Layout } from './Layout';
12
+ import { LayoutBlock } from './LayoutBlock';
13
+ import { LayoutContent } from './LayoutContent';
14
+ import { LayoutFlex } from './LayoutFlex';
15
+ import { LayoutFooter } from './LayoutFooter';
16
+ import { LayoutGrid } from './LayoutGrid';
17
+ import { LayoutHeader } from './LayoutHeader';
18
+ import { LayoutPane } from './LayoutPane';
19
+ import { LayoutPanel } from './LayoutPanel';
20
+ import { LayoutPanelHeader } from './LayoutPanelHeader';
21
+ import { LayoutToolbar } from './LayoutToolbar';
22
+ const GridLayoutElement = tasty(Layout, {
23
+ qa: 'GridLayout',
24
+ styles: {
25
+ Inner: {
26
+ display: 'grid',
27
+ },
28
+ },
29
+ });
30
+ function GridLayoutBase(props, ref) {
31
+ const { columns, rows, template, ...otherProps } = props;
32
+ return (_jsx(GridLayoutElement, { ref: ref, isGrid: true, gridColumns: columns, gridRows: rows, gridTemplate: template, ...otherProps }));
33
+ }
34
+ const _GridLayout = forwardRef(GridLayoutBase);
35
+ _GridLayout.displayName = 'GridLayout';
36
+ const GridLayout = Object.assign(_GridLayout, {
37
+ Toolbar: LayoutToolbar,
38
+ Header: LayoutHeader,
39
+ Footer: LayoutFooter,
40
+ Content: LayoutContent,
41
+ Block: LayoutBlock,
42
+ Flex: LayoutFlex,
43
+ Grid: LayoutGrid,
44
+ Pane: LayoutPane,
45
+ Panel: LayoutPanel,
46
+ PanelHeader: LayoutPanelHeader,
47
+ });
48
+ export { GridLayout };
49
+
50
+
@@ -0,0 +1,190 @@
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 { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
+ import { Children, forwardRef, isValidElement, useEffect, useMemo, useRef, useState, } from 'react';
10
+ import { extractStyles, filterBaseProps, INNER_STYLES, mergeStyles, OUTER_STYLES, tasty, } from '../../../tasty';
11
+ import { isDevEnv } from '../../../tasty/utils/isDevEnv';
12
+ import { Alert } from '../Alert';
13
+ import { LayoutProvider, useLayoutContext } from './LayoutContext';
14
+ const LayoutElement = tasty({
15
+ as: 'div',
16
+ qa: 'Layout',
17
+ styles: {
18
+ position: 'relative',
19
+ display: 'block',
20
+ overflow: 'hidden',
21
+ flexGrow: 1,
22
+ placeSelf: 'stretch',
23
+ height: {
24
+ '': 'auto',
25
+ 'auto-height': 'fixed 100%',
26
+ collapsed: '6x',
27
+ },
28
+ '$content-padding': '1x',
29
+ Inner: {
30
+ // Direct child selector required for nested layouts
31
+ $: '>',
32
+ position: 'absolute',
33
+ inset: '$inset-top $inset-right $inset-bottom $inset-left',
34
+ display: 'flex',
35
+ flow: 'column',
36
+ overflow: 'hidden',
37
+ // Disable transition during panel resize for snappy feedback
38
+ // Also disable transition when not ready to prevent initial animation
39
+ // Only animate when has-transition is enabled (and not dragging/not-ready)
40
+ transition: {
41
+ '': 'none',
42
+ 'has-transition': 'inset $transition ease-out',
43
+ 'dragging | not-ready': 'none',
44
+ },
45
+ },
46
+ },
47
+ });
48
+ // Check if a child is a Layout.Panel
49
+ function isPanelElement(child) {
50
+ return (isValidElement(child) &&
51
+ typeof child.type !== 'string' &&
52
+ child.type.displayName === 'Layout.Panel');
53
+ }
54
+ function LayoutInner(props) {
55
+ const layoutContext = useLayoutContext();
56
+ const localRef = useRef(null);
57
+ const [isAutoHeight, setIsAutoHeight] = useState(false);
58
+ const [isCollapsed, setIsCollapsed] = useState(false);
59
+ const { isGrid, columns, rows, template, contentPadding, hasTransition = false, styles, children, style, forwardedRef, _forceShowDevWarning, ...otherProps } = props;
60
+ // Separate panels from other children
61
+ const { panels, content } = useMemo(() => {
62
+ const panelElements = [];
63
+ const contentElements = [];
64
+ Children.forEach(children, (child) => {
65
+ if (isPanelElement(child)) {
66
+ panelElements.push(child);
67
+ }
68
+ else {
69
+ contentElements.push(child);
70
+ }
71
+ });
72
+ return { panels: panelElements, content: contentElements };
73
+ }, [children]);
74
+ // Extract outer wrapper styles and inner content styles
75
+ const outerStyles = extractStyles(otherProps, OUTER_STYLES);
76
+ const innerStyles = extractStyles(otherProps, INNER_STYLES);
77
+ // Merge styles using the same pattern as LayoutPane
78
+ const finalStyles = useMemo(() => {
79
+ // Handle grid mode and grid properties
80
+ const gridStyles = {};
81
+ if (isGrid) {
82
+ gridStyles.display = 'grid';
83
+ }
84
+ if (columns) {
85
+ gridStyles.gridColumns = columns;
86
+ }
87
+ if (rows) {
88
+ gridStyles.gridRows = rows;
89
+ }
90
+ if (template) {
91
+ gridStyles.gridTemplate = template;
92
+ }
93
+ return mergeStyles(outerStyles, contentPadding != null ? { '$content-padding': contentPadding } : null, styles, { Inner: mergeStyles(innerStyles, gridStyles, styles?.Inner) });
94
+ }, [
95
+ outerStyles,
96
+ innerStyles,
97
+ contentPadding,
98
+ styles,
99
+ isGrid,
100
+ columns,
101
+ rows,
102
+ template,
103
+ ]);
104
+ // Calculate inset values from panel sizes
105
+ const panelSizes = layoutContext?.panelSizes ?? {
106
+ left: 0,
107
+ top: 0,
108
+ right: 0,
109
+ bottom: 0,
110
+ };
111
+ const isDragging = layoutContext?.isDragging ?? false;
112
+ const isReady = layoutContext?.isReady ?? true;
113
+ const markReady = layoutContext?.markReady;
114
+ // Mark layout as ready after first paint
115
+ // Using useEffect + requestAnimationFrame ensures:
116
+ // 1. Panels register in useLayoutEffect → correct insets before first paint
117
+ // 2. First paint with not-ready=true (transition disabled)
118
+ // 3. After paint completes → enables transitions for subsequent changes
119
+ useEffect(() => {
120
+ const frameId = requestAnimationFrame(() => {
121
+ markReady?.();
122
+ });
123
+ return () => cancelAnimationFrame(frameId);
124
+ }, [markReady]);
125
+ // Auto-height detection: if layout collapses to 0 height after initialization,
126
+ // automatically set height to 100% to prevent invisible layout
127
+ useEffect(() => {
128
+ if (isReady && localRef.current && localRef.current.offsetHeight === 0) {
129
+ setIsAutoHeight(true);
130
+ }
131
+ }, [isReady]);
132
+ // Second check: if still 0 height after auto-height was applied,
133
+ // show collapsed state with warning
134
+ useEffect(() => {
135
+ if (isAutoHeight && localRef.current) {
136
+ // Use requestAnimationFrame to check after styles have been applied
137
+ const frameId = requestAnimationFrame(() => {
138
+ if (localRef.current && localRef.current.offsetHeight === 0) {
139
+ setIsCollapsed(true);
140
+ }
141
+ });
142
+ return () => cancelAnimationFrame(frameId);
143
+ }
144
+ }, [isAutoHeight]);
145
+ const insetStyle = useMemo(() => {
146
+ const baseStyle = {
147
+ '--inset-top': `${panelSizes.top}px`,
148
+ '--inset-right': `${panelSizes.right}px`,
149
+ '--inset-bottom': `${panelSizes.bottom}px`,
150
+ '--inset-left': `${panelSizes.left}px`,
151
+ };
152
+ if (style) {
153
+ return { ...baseStyle, ...style };
154
+ }
155
+ return baseStyle;
156
+ }, [panelSizes, style]);
157
+ const mods = useMemo(() => ({
158
+ dragging: isDragging,
159
+ 'not-ready': !isReady,
160
+ 'has-transition': hasTransition,
161
+ 'auto-height': isAutoHeight && !isCollapsed,
162
+ collapsed: isCollapsed,
163
+ }), [isDragging, isReady, hasTransition, isAutoHeight, isCollapsed]);
164
+ // Combine local ref with forwarded ref
165
+ const setRefs = (element) => {
166
+ localRef.current = element;
167
+ if (typeof forwardedRef === 'function') {
168
+ forwardedRef(element);
169
+ }
170
+ else if (forwardedRef) {
171
+ forwardedRef.current = element;
172
+ }
173
+ };
174
+ // Show dev warning when collapsed and in dev mode (or forced for stories)
175
+ const showDevWarning = isCollapsed && (_forceShowDevWarning || isDevEnv());
176
+ return (_jsx(LayoutElement, { ref: setRefs, ...filterBaseProps(otherProps, { eventProps: true }), mods: mods, styles: finalStyles, style: insetStyle, children: showDevWarning ? (_jsxs(Alert, { theme: "danger", children: [_jsx("b", { children: "UIKit:" }), " ", _jsx("b", { children: "<Layout/>" }), " has collapsed to ", _jsx("b", { children: "0" }), " height. Ensure the parent container has a defined height or use the", ' ', _jsx("b", { children: "height" }), " prop on ", _jsx("b", { children: "<Layout/>" }), "."] })) : (_jsxs(_Fragment, { children: [panels, _jsx("div", { "data-element": "Inner", children: content })] })) }));
177
+ }
178
+ /**
179
+ * Layout component provides a vertical flex layout with overflow-safe content.
180
+ * Uses a two-element architecture (wrapper + content) to ensure content never overflows.
181
+ */
182
+ function Layout(props, ref) {
183
+ const { hasTransition } = props;
184
+ return (_jsx(LayoutProvider, { hasTransition: hasTransition, children: _jsx(LayoutInner, { ...props, forwardedRef: ref }) }));
185
+ }
186
+ const _Layout = forwardRef(Layout);
187
+ _Layout.displayName = 'Layout';
188
+ export { _Layout as Layout };
189
+
190
+
@@ -0,0 +1,30 @@
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 { jsx as _jsx } from "react/jsx-runtime";
9
+ import { forwardRef } from 'react';
10
+ import { tasty } from '../../../tasty';
11
+ import { LayoutContent } from './LayoutContent';
12
+ const BlockElement = tasty(LayoutContent, {
13
+ qa: 'LayoutBlock',
14
+ styles: {
15
+ flexShrink: 0,
16
+ flexGrow: 0,
17
+ Inner: {
18
+ display: 'block',
19
+ },
20
+ },
21
+ });
22
+ function LayoutBlock(props, ref) {
23
+ const { children, scrollbar = 'tiny', ...otherProps } = props;
24
+ return (_jsx(BlockElement, { ...otherProps, ref: ref, scrollbar: scrollbar, children: children }));
25
+ }
26
+ const _LayoutBlock = forwardRef(LayoutBlock);
27
+ _LayoutBlock.displayName = 'Layout.Block';
28
+ export { _LayoutBlock as LayoutBlock };
29
+
30
+