@cube-dev/ui-kit 0.135.1 → 0.136.1

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 (433) hide show
  1. package/dist/CHANGELOG.md +37 -0
  2. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  3. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  5. package/dist/_internal/hooks/use-event.js +1 -1
  6. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  7. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  8. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  9. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  10. package/dist/_internal/hooks/use-warn.js +1 -1
  11. package/dist/components/Block.js +1 -1
  12. package/dist/components/CollectionItem.js +1 -1
  13. package/dist/components/GlobalStyles.js +1 -1
  14. package/dist/components/GridProvider.js +1 -1
  15. package/dist/components/HiddenInput.js +1 -1
  16. package/dist/components/Root.js +1 -1
  17. package/dist/components/actions/Action/Action.js +1 -1
  18. package/dist/components/actions/Banner/Banner.js +1 -1
  19. package/dist/components/actions/Button/Button.js +2 -1
  20. package/dist/components/actions/Button/Button.js.map +1 -1
  21. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  22. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  23. package/dist/components/actions/ButtonSplit/context.js +1 -1
  24. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  25. package/dist/components/actions/CommandMenu/styled.js +1 -1
  26. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  27. package/dist/components/actions/ItemActionContext.js +1 -1
  28. package/dist/components/actions/ItemButton/ItemButton.js +2 -1
  29. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  30. package/dist/components/actions/Link/Link.js +1 -1
  31. package/dist/components/actions/Menu/Menu.js +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +1 -1
  33. package/dist/components/actions/Menu/MenuSection.js +1 -1
  34. package/dist/components/actions/Menu/MenuTrigger.d.ts +7 -0
  35. package/dist/components/actions/Menu/MenuTrigger.js +42 -40
  36. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  37. package/dist/components/actions/Menu/SubMenuTrigger.js +7 -20
  38. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  39. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  40. package/dist/components/actions/Menu/context.js +1 -1
  41. package/dist/components/actions/Menu/styled.js +1 -1
  42. package/dist/components/actions/index.js +1 -1
  43. package/dist/components/actions/use-action.js +1 -1
  44. package/dist/components/actions/use-anchored-menu.js +6 -19
  45. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  46. package/dist/components/actions/use-context-menu.js +17 -21
  47. package/dist/components/actions/use-context-menu.js.map +1 -1
  48. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  49. package/dist/components/content/Alert/Alert.js +1 -1
  50. package/dist/components/content/Alert/use-alert.js +1 -1
  51. package/dist/components/content/Avatar/Avatar.js +1 -1
  52. package/dist/components/content/Badge/Badge.js +1 -1
  53. package/dist/components/content/Card/Card.js +1 -1
  54. package/dist/components/content/Content.js +1 -1
  55. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  56. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  57. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  58. package/dist/components/content/Divider.js +1 -1
  59. package/dist/components/content/Footer.js +1 -1
  60. package/dist/components/content/Header.js +1 -1
  61. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  62. package/dist/components/content/Item/Item.js +1 -1
  63. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  64. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  65. package/dist/components/content/Layout/GridLayout.js +1 -1
  66. package/dist/components/content/Layout/Layout.js +1 -1
  67. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  68. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  69. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  70. package/dist/components/content/Layout/LayoutContent.js +1 -1
  71. package/dist/components/content/Layout/LayoutContext.js +1 -1
  72. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  73. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  74. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  75. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  76. package/dist/components/content/Layout/LayoutPane.js +1 -1
  77. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  78. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  79. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  80. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  81. package/dist/components/content/Layout/index.js +1 -1
  82. package/dist/components/content/Layout/utils.js +1 -1
  83. package/dist/components/content/Paragraph.js +1 -1
  84. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  85. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  86. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  87. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  88. package/dist/components/content/Result/Result.js +1 -1
  89. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  90. package/dist/components/content/Tag/Tag.js +1 -1
  91. package/dist/components/content/Text.js +1 -1
  92. package/dist/components/content/TextItem/TextItem.js +1 -1
  93. package/dist/components/content/Title.js +1 -1
  94. package/dist/components/content/Tree/Tree.js +1 -1
  95. package/dist/components/content/Tree/TreeNode.js +1 -1
  96. package/dist/components/content/Tree/styled.js +1 -1
  97. package/dist/components/content/Tree/tree-index.js +1 -1
  98. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  99. package/dist/components/content/Tree/use-load-data.js +1 -1
  100. package/dist/components/content/highlightText.js +1 -1
  101. package/dist/components/content/use-auto-tooltip.js +1 -1
  102. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  103. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  104. package/dist/components/fields/Checkbox/context.js +1 -1
  105. package/dist/components/fields/ComboBox/ComboBox.js +14 -20
  106. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  107. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  108. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  109. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  110. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  111. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  112. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  113. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  114. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  115. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  116. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  117. package/dist/components/fields/DatePicker/intl.js +1 -1
  118. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  119. package/dist/components/fields/DatePicker/props.js +1 -1
  120. package/dist/components/fields/DatePicker/utils.js +1 -1
  121. package/dist/components/fields/FileInput/FileInput.js +1 -1
  122. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  123. package/dist/components/fields/FilterPicker/FilterPicker.js +14 -21
  124. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  125. package/dist/components/fields/Input/Input.js +1 -1
  126. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  127. package/dist/components/fields/ListBox/ListBox.js +14 -19
  128. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  129. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  130. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  131. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  132. package/dist/components/fields/Picker/Picker.js +14 -21
  133. package/dist/components/fields/Picker/Picker.js.map +1 -1
  134. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  135. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  136. package/dist/components/fields/RadioGroup/context.js +1 -1
  137. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  138. package/dist/components/fields/Select/Select.js +17 -22
  139. package/dist/components/fields/Select/Select.js.map +1 -1
  140. package/dist/components/fields/Slider/Gradation.js +1 -1
  141. package/dist/components/fields/Slider/HueSlider.js +1 -1
  142. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  143. package/dist/components/fields/Slider/Slider.js +1 -1
  144. package/dist/components/fields/Slider/SliderBase.js +1 -1
  145. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  146. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  147. package/dist/components/fields/Slider/elements.js +1 -1
  148. package/dist/components/fields/Slider/index.js +1 -1
  149. package/dist/components/fields/Switch/Switch.js +1 -1
  150. package/dist/components/fields/TextArea/TextArea.js +1 -1
  151. package/dist/components/fields/TextInput/TextInput.js +1 -1
  152. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  153. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  154. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  155. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  156. package/dist/components/form/Form/Field.js +1 -1
  157. package/dist/components/form/Form/Form.js +1 -1
  158. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  159. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  160. package/dist/components/form/Form/SubmitError.js +1 -1
  161. package/dist/components/form/Form/index.js +1 -1
  162. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  163. package/dist/components/form/Form/use-field/use-field.js +1 -1
  164. package/dist/components/form/Form/use-form.js +1 -1
  165. package/dist/components/form/Form/validation.js +1 -1
  166. package/dist/components/form/Label.js +1 -1
  167. package/dist/components/form/wrapper.js +1 -1
  168. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  169. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  170. package/dist/components/layout/Flex.js +1 -1
  171. package/dist/components/layout/Flow.js +1 -1
  172. package/dist/components/layout/Grid.js +1 -1
  173. package/dist/components/layout/Panel.js +1 -1
  174. package/dist/components/layout/Prefix.js +1 -1
  175. package/dist/components/layout/ResizablePanel.js +1 -1
  176. package/dist/components/layout/Space.js +1 -1
  177. package/dist/components/layout/Suffix.js +1 -1
  178. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  179. package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
  180. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  181. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  182. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  183. package/dist/components/navigation/Tabs/TabPicker.js +1 -2
  184. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  185. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  186. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  187. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  188. package/dist/components/navigation/Tabs/styled.js +1 -1
  189. package/dist/components/navigation/Tabs/types.js +1 -1
  190. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  191. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  192. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  193. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  194. package/dist/components/other/Calendar/Calendar.js +1 -1
  195. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  196. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  197. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  198. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  199. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  200. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  201. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  202. package/dist/components/overlays/Dialog/Dialog.js +12 -5
  203. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  204. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  205. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  206. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  207. package/dist/components/overlays/Dialog/context.js +1 -1
  208. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  209. package/dist/components/overlays/Modal/Modal.js +1 -1
  210. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  211. package/dist/components/overlays/Modal/Overlay.js +1 -1
  212. package/dist/components/overlays/Modal/Popover.js +1 -1
  213. package/dist/components/overlays/Modal/Tray.js +4 -3
  214. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  215. package/dist/components/overlays/Modal/Underlay.js +1 -1
  216. package/dist/components/overlays/Notifications/Notification.js +1 -1
  217. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  218. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  219. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  220. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  221. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  222. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  223. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  224. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  225. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  226. package/dist/components/overlays/Notifications/index.js +1 -1
  227. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  228. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  229. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  230. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  231. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  232. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  233. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  234. package/dist/components/overlays/Toast/index.js +1 -1
  235. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  236. package/dist/components/overlays/Toast/useToast.js +1 -1
  237. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  238. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  239. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  240. package/dist/components/overlays/Tooltip/context.js +1 -1
  241. package/dist/components/portal/Portal.js +1 -1
  242. package/dist/components/portal/PortalProvider.js +1 -1
  243. package/dist/components/portal/usePortal.js +1 -1
  244. package/dist/components/shared/DraggableCollection.js +1 -1
  245. package/dist/components/shared/InvalidIcon.js +1 -1
  246. package/dist/components/shared/ValidIcon.js +1 -1
  247. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  248. package/dist/components/status/Spin/Cube.js +1 -1
  249. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  250. package/dist/components/status/Spin/Spin.js +1 -1
  251. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  252. package/dist/data/item-themes.js +1 -1
  253. package/dist/data/themes.js +1 -1
  254. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  255. package/dist/icons/AdjustmentsIcon.js +1 -1
  256. package/dist/icons/AiIcon.js +1 -1
  257. package/dist/icons/AreaChartIcon.js +1 -1
  258. package/dist/icons/BackwardIcon.js +1 -1
  259. package/dist/icons/BarChartIcon.js +1 -1
  260. package/dist/icons/BellFilledIcon.js +1 -1
  261. package/dist/icons/BellIcon.js +1 -1
  262. package/dist/icons/BooleanIcon.js +1 -1
  263. package/dist/icons/CalendarEditIcon.js +1 -1
  264. package/dist/icons/CalendarIcon.js +1 -1
  265. package/dist/icons/CaretDownIcon.js +1 -1
  266. package/dist/icons/CaretUpIcon.js +1 -1
  267. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  268. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  269. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  270. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  271. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  272. package/dist/icons/ChartBarLineIcon.js +1 -1
  273. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  274. package/dist/icons/ChartBarStackedIcon.js +1 -1
  275. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  276. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  277. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  278. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  279. package/dist/icons/ChartBubbleIcon.js +1 -1
  280. package/dist/icons/ChartDonut2Icon.js +1 -1
  281. package/dist/icons/ChartFunnelIcon.js +1 -1
  282. package/dist/icons/ChartHeatmapIcon.js +1 -1
  283. package/dist/icons/ChartKPIIcon.js +1 -1
  284. package/dist/icons/ChartPie2Icon.js +1 -1
  285. package/dist/icons/ChartScatterIcon.js +1 -1
  286. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  287. package/dist/icons/CheckCircleIcon.js +1 -1
  288. package/dist/icons/CheckIcon.js +1 -1
  289. package/dist/icons/CircleFilledIcon.js +1 -1
  290. package/dist/icons/ClearIcon.js +1 -1
  291. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  292. package/dist/icons/CloseCircleIcon.js +1 -1
  293. package/dist/icons/CloseIcon.js +1 -1
  294. package/dist/icons/CodeIcon.js +1 -1
  295. package/dist/icons/ColumnTotalIcon.js +1 -1
  296. package/dist/icons/CopyIcon.js +1 -1
  297. package/dist/icons/CountIcon.js +1 -1
  298. package/dist/icons/CubeIcon.js +1 -1
  299. package/dist/icons/CubePauseIcon.js +1 -1
  300. package/dist/icons/CubePlayIcon.js +1 -1
  301. package/dist/icons/CurrencyDollarIcon.js +1 -1
  302. package/dist/icons/DangerIcon.js +1 -1
  303. package/dist/icons/DashboardIcon.js +1 -1
  304. package/dist/icons/DatabaseIcon.js +1 -1
  305. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  306. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  307. package/dist/icons/DirectionIcon.js +1 -1
  308. package/dist/icons/DonutIcon.js +1 -1
  309. package/dist/icons/DownIcon.js +1 -1
  310. package/dist/icons/EditIcon.js +1 -1
  311. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  312. package/dist/icons/ExclamationCircleIcon.js +1 -1
  313. package/dist/icons/ExclamationIcon.js +1 -1
  314. package/dist/icons/EyeIcon.js +1 -1
  315. package/dist/icons/EyeInvisibleIcon.js +1 -1
  316. package/dist/icons/FilterIcon.js +1 -1
  317. package/dist/icons/FolderFilledIcon.js +1 -1
  318. package/dist/icons/FolderIcon.js +1 -1
  319. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  320. package/dist/icons/FolderOpenIcon.js +1 -1
  321. package/dist/icons/ForwardIcon.js +1 -1
  322. package/dist/icons/GripVerticalIcon.js +1 -1
  323. package/dist/icons/HierarchyIcon.js +1 -1
  324. package/dist/icons/HierarchyOpenIcon.js +1 -1
  325. package/dist/icons/Icon.js +1 -1
  326. package/dist/icons/InfoCircleIcon.js +1 -1
  327. package/dist/icons/InfoIcon.js +1 -1
  328. package/dist/icons/KeyIcon.js +1 -1
  329. package/dist/icons/LeftIcon.js +1 -1
  330. package/dist/icons/LineChartIcon.js +1 -1
  331. package/dist/icons/LoadingIcon.js +1 -1
  332. package/dist/icons/LockFilledIcon.js +1 -1
  333. package/dist/icons/LockIcon.js +1 -1
  334. package/dist/icons/MoreIcon.js +1 -1
  335. package/dist/icons/NotAllowedIcon.js +1 -1
  336. package/dist/icons/Number123Icon.js +1 -1
  337. package/dist/icons/NumberIcon.js +1 -1
  338. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  339. package/dist/icons/PauseCircleIcon.js +1 -1
  340. package/dist/icons/PauseIcon.js +1 -1
  341. package/dist/icons/PercentageIcon.js +1 -1
  342. package/dist/icons/PieChartIcon.js +1 -1
  343. package/dist/icons/PlayCircleIcon.js +1 -1
  344. package/dist/icons/PlayIcon.js +1 -1
  345. package/dist/icons/PlusIcon.js +1 -1
  346. package/dist/icons/ProgressBarIcon.js +1 -1
  347. package/dist/icons/ReloadIcon.js +1 -1
  348. package/dist/icons/ReportIcon.js +1 -1
  349. package/dist/icons/ReturnIcon.js +1 -1
  350. package/dist/icons/RightIcon.js +1 -1
  351. package/dist/icons/RowTotalsIcon.js +1 -1
  352. package/dist/icons/SchemeIcon.js +1 -1
  353. package/dist/icons/SearchIcon.js +1 -1
  354. package/dist/icons/SemanticQueryIcon.js +1 -1
  355. package/dist/icons/SettingsIcon.js +1 -1
  356. package/dist/icons/ShieldFilledIcon.js +1 -1
  357. package/dist/icons/ShieldIcon.js +1 -1
  358. package/dist/icons/SlashIcon.js +1 -1
  359. package/dist/icons/SparklesIcon.js +1 -1
  360. package/dist/icons/SqlIcon.js +1 -1
  361. package/dist/icons/StatsIcon.js +1 -1
  362. package/dist/icons/StopIcon.js +1 -1
  363. package/dist/icons/StringIcon.js +1 -1
  364. package/dist/icons/SubtotalsIcon.js +1 -1
  365. package/dist/icons/SwitchIcon.js +1 -1
  366. package/dist/icons/TableIcon.js +1 -1
  367. package/dist/icons/ThumbsDownIcon.js +1 -1
  368. package/dist/icons/ThumbsUpIcon.js +1 -1
  369. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  370. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  371. package/dist/icons/ThunderboltIcon.js +1 -1
  372. package/dist/icons/TimeIcon.js +1 -1
  373. package/dist/icons/TrashIcon.js +1 -1
  374. package/dist/icons/UnlockIcon.js +1 -1
  375. package/dist/icons/UpIcon.js +1 -1
  376. package/dist/icons/UserGroupIcon.js +1 -1
  377. package/dist/icons/UserIcon.js +1 -1
  378. package/dist/icons/UserLockIcon.js +1 -1
  379. package/dist/icons/ViewIcon.js +1 -1
  380. package/dist/icons/WarningFilledIcon.js +1 -1
  381. package/dist/icons/WarningIcon.js +1 -1
  382. package/dist/icons/wrap-icon.js +1 -1
  383. package/dist/index.js +1 -1
  384. package/dist/provider.js +1 -1
  385. package/dist/providers/TrackingProvider.js +1 -1
  386. package/dist/providers/navigationAdapter.default.js +1 -1
  387. package/dist/tokens/base.js +1 -1
  388. package/dist/tokens/colors.js +1 -1
  389. package/dist/tokens/index.js +1 -1
  390. package/dist/tokens/layout.js +1 -1
  391. package/dist/tokens/shadows.js +1 -1
  392. package/dist/tokens/sizes.js +1 -1
  393. package/dist/tokens/spacing.js +1 -1
  394. package/dist/tokens/typography.js +1 -1
  395. package/dist/utils/ResizeSensor.js +1 -1
  396. package/dist/utils/is-dev-env.js +1 -1
  397. package/dist/utils/modules.js +1 -1
  398. package/dist/utils/promise.js +1 -1
  399. package/dist/utils/raf.js +1 -1
  400. package/dist/utils/random.js +1 -1
  401. package/dist/utils/range.js +1 -1
  402. package/dist/utils/react/RenderCache.js +1 -1
  403. package/dist/utils/react/Slots.js +1 -1
  404. package/dist/utils/react/chain.js +1 -1
  405. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  406. package/dist/utils/react/index.js +1 -1
  407. package/dist/utils/react/interactions.js +1 -1
  408. package/dist/utils/react/isTextOnly.js +1 -1
  409. package/dist/utils/react/mapProps.js +1 -1
  410. package/dist/utils/react/mergeProps.js +1 -1
  411. package/dist/utils/react/nullableValue.js +1 -1
  412. package/dist/utils/react/resolveIcon.js +1 -1
  413. package/dist/utils/react/sharedStore.js +1 -1
  414. package/dist/utils/react/useCombinedRefs.js +1 -1
  415. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  416. package/dist/utils/react/useEventBus.js +1 -1
  417. package/dist/utils/react/useId.js +1 -1
  418. package/dist/utils/react/useIsDarwin.js +1 -1
  419. package/dist/utils/react/useKeySymbols.js +1 -1
  420. package/dist/utils/react/useLayoutEffect.js +1 -1
  421. package/dist/utils/react/useLocalStorage.js +1 -1
  422. package/dist/utils/react/useMergeStyles.js +1 -1
  423. package/dist/utils/react/usePopoverSync.js +69 -0
  424. package/dist/utils/react/usePopoverSync.js.map +1 -0
  425. package/dist/utils/react/useQaProps.js +1 -1
  426. package/dist/utils/react/useViewportSize.js +1 -1
  427. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  428. package/dist/utils/selection.js +1 -1
  429. package/dist/utils/styles.js +1 -1
  430. package/dist/utils/tree.js +1 -1
  431. package/dist/utils/warnings.js +1 -1
  432. package/dist/version.js +2 -2
  433. package/package.json +2 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import { IconLockOpen2 } from "@tabler/icons-react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import { IconChevronUp } from "@tabler/icons-react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import { IconAlertTriangleFilled } from "@tabler/icons-react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { wrapIcon } from "./wrap-icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import { IconAlertTriangle } from "@tabler/icons-react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { Icon } from "./Icon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { extractStyles } from "./utils/styles.js";
3
3
  import { chain } from "./utils/react/chain.js";
4
4
  import { forwardRefWithGenerics } from "./utils/react/forwardRefWithGenerics.js";
package/dist/provider.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { EventBusProvider } from "./utils/react/useEventBus.js";
3
3
  import { defaultNavigationAdapter } from "./providers/navigationAdapter.default.js";
4
4
  import { createContext, useContext, useMemo } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { createContext, useContext, useMemo } from "react";
3
3
  import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/providers/navigationAdapter.default.ts
3
3
  /**
4
4
  * Converts a Path object to a string URL
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/base.ts
3
3
  /**
4
4
  * Base design system tokens.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/colors.ts
3
3
  const PINK_HUE = 5;
4
4
  const PURPLE_HUE = 280.3;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { BASE_TOKENS } from "./base.js";
3
3
  import { COLOR_TOKENS } from "./colors.js";
4
4
  import { LAYOUT_TOKENS } from "./layout.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/layout.ts
3
3
  /**
4
4
  * Layout-related tokens for common UI dimensions.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/shadows.ts
3
3
  /**
4
4
  * Shadow tokens using tasty shorthand syntax.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/sizes.ts
3
3
  /**
4
4
  * Component size values in pixels.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/spacing.ts
3
3
  /**
4
4
  * Spacing tokens using tasty multiplier syntax.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/tokens/typography.ts
3
3
  /**
4
4
  * Typography presets for headings, text, and special styles.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/ResizeSensor.ts
3
3
  /**
4
4
  * Iterate over each of the provided element(s).
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/is-dev-env.ts
3
3
  function isDevEnv() {
4
4
  if (typeof window !== "undefined" && window.localStorage) try {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/modules.ts
3
3
  function extractModule(promise) {
4
4
  return promise.then((module) => module.default || module);
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/promise.ts
3
3
  function timeout(ms = 30) {
4
4
  return new Promise((resolve) => {
package/dist/utils/raf.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/raf.ts
3
3
  /**
4
4
  * Chains N requestAnimationFrame calls and returns a cancel function.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/random.ts
3
3
  function random(min, max) {
4
4
  const realMin = min < max ? min : max;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/range.ts
3
3
  function range(count) {
4
4
  return Array.from({ length: count }, (_, i) => i);
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useRef } from "react";
3
3
  import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { mergeProps } from "./mergeProps.js";
3
3
  import { Children, cloneElement, createContext, useContext, useMemo } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/chain.ts
3
3
  /**
4
4
  * Calls all functions in the order they were chained with the same arguments.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/forwardRefWithGenerics.tsx
3
3
  /**
4
4
  * A helper for creating forwardRef components with generic types.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { forwardRefWithGenerics } from "./forwardRefWithGenerics.js";
4
4
  import { isTextOnly } from "./isTextOnly.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useState } from "react";
3
3
  import { useFocus, useFocusVisible } from "react-aria";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { Children, isValidElement } from "react";
3
3
 
4
4
  //#region src/utils/react/isTextOnly.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/mapProps.ts
3
3
  /** Converts AriaButtonProps to CubeButtonProps */
4
4
  function ariaToCubeButtonProps(props) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { mergeIds } from "./useId.js";
4
4
  import { mergeStyles } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/nullableValue.ts
3
3
  function castNullableStringValue(props) {
4
4
  return castNullableField(props, ["value", "defaultValue"], "string", (v) => String(v));
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/resolveIcon.ts
3
3
  /**
4
4
  * Resolves a dynamic icon prop to its content and slot state.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useCombinedRefs.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { createSharedStore } from "./sharedStore.js";
3
3
  import { useEffect } from "react";
4
4
  import { useFocusVisible } from "react-aria";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import React, { createContext, useCallback, useContext, useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useEventBus.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "./useLayoutEffect.js";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import { useSSRSafeId } from "@react-aria/ssr";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useIsDarwin.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useIsDarwin } from "./useIsDarwin.js";
3
3
  import { useMemo } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import * as React$1 from "react";
3
3
 
4
4
  //#region src/utils/react/useLayoutEffect.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useCallback, useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { mergeStyles } from "@tenphi/tasty";
3
3
  import { useMemo } from "react";
4
4
 
@@ -0,0 +1,69 @@
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
+ import { useEventBus } from "./useEventBus.js";
3
+ import { useEffect, useRef } from "react";
4
+
5
+ //#region src/utils/react/usePopoverSync.ts
6
+ /**
7
+ * Coordinates the "only one popover open at a time" invariant via the EventBus.
8
+ *
9
+ * - When `isOpen` flips `false -> true`, emits `popover:open` once.
10
+ * - While open, listens for peers' `popover:open` events and calls `onClose`.
11
+ *
12
+ * Implementation notes (ALL of these matter — losing any one re-introduces a
13
+ * race that surfaces only under rapid trigger switching, which is hard to
14
+ * reproduce in tests):
15
+ *
16
+ * 1. `isOpen` and `onClose` are read through refs inside the listener, so the
17
+ * subscription effect's dep array does NOT include `isOpen`/`onClose`. This
18
+ * keeps the listener identity stable across open/close transitions and
19
+ * avoids the unsubscribe-emit-resubscribe window where an emit can be
20
+ * delivered to a stale listener (or no listener).
21
+ * 2. The emit fires only on the `false -> true` transition, gated by
22
+ * `wasOpenRef`. A re-render where `isOpen` is still `true` must NOT
23
+ * re-emit, otherwise it could re-trigger listeners on peers that just
24
+ * opened in the same render flush.
25
+ * 3. The `enabled` flag short-circuits both effects symmetrically. When it
26
+ * flips off, `wasOpenRef` is reset so re-enabling later still emits if
27
+ * `isOpen` is true at that moment.
28
+ */
29
+ function usePopoverSync({ menuId, isOpen, onClose, enabled = true }) {
30
+ const { emit, on } = useEventBus();
31
+ const isOpenRef = useRef(isOpen);
32
+ useEffect(() => {
33
+ isOpenRef.current = isOpen;
34
+ }, [isOpen]);
35
+ const onCloseRef = useRef(onClose);
36
+ useEffect(() => {
37
+ onCloseRef.current = onClose;
38
+ }, [onClose]);
39
+ useEffect(() => {
40
+ if (!enabled) return;
41
+ return on("popover:open", (data) => {
42
+ if (data.menuId !== menuId && isOpenRef.current) onCloseRef.current();
43
+ });
44
+ }, [
45
+ on,
46
+ menuId,
47
+ enabled
48
+ ]);
49
+ const wasOpenRef = useRef(false);
50
+ useEffect(() => {
51
+ if (!enabled) {
52
+ wasOpenRef.current = false;
53
+ return;
54
+ }
55
+ if (isOpen && !wasOpenRef.current) {
56
+ wasOpenRef.current = true;
57
+ emit("popover:open", { menuId });
58
+ } else if (!isOpen) wasOpenRef.current = false;
59
+ }, [
60
+ isOpen,
61
+ emit,
62
+ menuId,
63
+ enabled
64
+ ]);
65
+ }
66
+
67
+ //#endregion
68
+ export { usePopoverSync };
69
+ //# sourceMappingURL=usePopoverSync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePopoverSync.js","names":[],"sources":["../../../src/utils/react/usePopoverSync.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport { useEventBus } from './useEventBus';\n\nexport interface UsePopoverSyncOptions {\n /** Stable identifier for this popover instance (typically a generateRandomId() memo). */\n menuId: string;\n /** Current open state of this popover. */\n isOpen: boolean;\n /** Called when another popover opens while this one is open. */\n onClose: () => void;\n /**\n * When `false`, this popover does not participate in the sync (no listening,\n * no emitting). Useful for \"dummy\" triggers that proxy a real one (see\n * `MenuTrigger`'s `isDummy`). Defaults to `true`.\n */\n enabled?: boolean;\n}\n\n/**\n * Coordinates the \"only one popover open at a time\" invariant via the EventBus.\n *\n * - When `isOpen` flips `false -> true`, emits `popover:open` once.\n * - While open, listens for peers' `popover:open` events and calls `onClose`.\n *\n * Implementation notes (ALL of these matter — losing any one re-introduces a\n * race that surfaces only under rapid trigger switching, which is hard to\n * reproduce in tests):\n *\n * 1. `isOpen` and `onClose` are read through refs inside the listener, so the\n * subscription effect's dep array does NOT include `isOpen`/`onClose`. This\n * keeps the listener identity stable across open/close transitions and\n * avoids the unsubscribe-emit-resubscribe window where an emit can be\n * delivered to a stale listener (or no listener).\n * 2. The emit fires only on the `false -> true` transition, gated by\n * `wasOpenRef`. A re-render where `isOpen` is still `true` must NOT\n * re-emit, otherwise it could re-trigger listeners on peers that just\n * opened in the same render flush.\n * 3. The `enabled` flag short-circuits both effects symmetrically. When it\n * flips off, `wasOpenRef` is reset so re-enabling later still emits if\n * `isOpen` is true at that moment.\n */\nexport function usePopoverSync({\n menuId,\n isOpen,\n onClose,\n enabled = true,\n}: UsePopoverSyncOptions): void {\n const { emit, on } = useEventBus();\n\n const isOpenRef = useRef(isOpen);\n useEffect(() => {\n isOpenRef.current = isOpen;\n }, [isOpen]);\n\n const onCloseRef = useRef(onClose);\n useEffect(() => {\n onCloseRef.current = onClose;\n }, [onClose]);\n\n useEffect(() => {\n if (!enabled) return;\n return on('popover:open', (data: { menuId: string }) => {\n if (data.menuId !== menuId && isOpenRef.current) {\n onCloseRef.current();\n }\n });\n }, [on, menuId, enabled]);\n\n const wasOpenRef = useRef(false);\n useEffect(() => {\n if (!enabled) {\n wasOpenRef.current = false;\n return;\n }\n if (isOpen && !wasOpenRef.current) {\n wasOpenRef.current = true;\n emit('popover:open', { menuId });\n } else if (!isOpen) {\n wasOpenRef.current = false;\n }\n }, [isOpen, emit, menuId, enabled]);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,SAAgB,eAAe,EAC7B,QACA,QACA,SACA,UAAU,QACoB;CAC9B,MAAM,EAAE,MAAM,OAAO,aAAa;CAElC,MAAM,YAAY,OAAO,OAAO;AAChC,iBAAgB;AACd,YAAU,UAAU;IACnB,CAAC,OAAO,CAAC;CAEZ,MAAM,aAAa,OAAO,QAAQ;AAClC,iBAAgB;AACd,aAAW,UAAU;IACpB,CAAC,QAAQ,CAAC;AAEb,iBAAgB;AACd,MAAI,CAAC,QAAS;AACd,SAAO,GAAG,iBAAiB,SAA6B;AACtD,OAAI,KAAK,WAAW,UAAU,UAAU,QACtC,YAAW,SAAS;IAEtB;IACD;EAAC;EAAI;EAAQ;EAAQ,CAAC;CAEzB,MAAM,aAAa,OAAO,MAAM;AAChC,iBAAgB;AACd,MAAI,CAAC,SAAS;AACZ,cAAW,UAAU;AACrB;;AAEF,MAAI,UAAU,CAAC,WAAW,SAAS;AACjC,cAAW,UAAU;AACrB,QAAK,gBAAgB,EAAE,QAAQ,CAAC;aACvB,CAAC,OACV,YAAW,UAAU;IAEtB;EAAC;EAAQ;EAAM;EAAQ;EAAQ,CAAC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/react/useQaProps.ts
3
3
  /**
4
4
  * Processes QA props.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useViewportSize.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  import { isValidElement } from "react";
3
3
  import { isFragment } from "react-is";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/selection.ts
3
3
  /**
4
4
  * Deduplicate/toggle keys in a selection: if a key appears twice it is
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/styles.ts
3
3
  /**
4
4
  * Split properties into style and non-style properties.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/tree.ts
3
3
  function toFlatTree(tree, includingFolders) {
4
4
  return tree.reduce((result, node) => {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/utils/warnings.ts
3
3
  const SUGGESTED_PROP_MAP = {
4
4
  disabled: "isDisabled",
package/dist/version.js CHANGED
@@ -1,6 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.135.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.136.1 | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.135.1";
3
+ const VERSION = "0.136.1";
4
4
  if (typeof window !== "undefined") {
5
5
  const version = VERSION;
6
6
  window.CubeUIKit = window.CubeUIKit || { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.135.1",
3
+ "version": "0.136.1",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {
@@ -113,6 +113,7 @@
113
113
  "eslint-plugin-storybook": "^10.2.3",
114
114
  "globals": "^16.0.0",
115
115
  "husky": "^6.0.0",
116
+ "jsdom": "^29.1.1",
116
117
  "lint-staged": "^10.0.0",
117
118
  "markdown-table": "^3.0.3",
118
119
  "npm-run-all": "^4.1.5",