@cube-dev/ui-kit 0.0.0-canary-ac46c4b → 0.0.0-canary-9bde021

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 (621) hide show
  1. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  2. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  3. package/dist/_internal/hooks/use-event.js +1 -1
  4. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  5. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  6. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  7. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  8. package/dist/_internal/hooks/use-warn.js +1 -1
  9. package/dist/components/Block.js +1 -1
  10. package/dist/components/CollectionItem.js +1 -1
  11. package/dist/components/GlobalStyles.js +1 -1
  12. package/dist/components/GridProvider.js +1 -1
  13. package/dist/components/HiddenInput.js +1 -1
  14. package/dist/components/Root.js +1 -1
  15. package/dist/components/actions/Action/Action.js +1 -1
  16. package/dist/components/actions/Banner/Banner.js +1 -1
  17. package/dist/components/actions/Button/Button.js +1 -1
  18. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  19. package/dist/components/actions/ButtonSplit/ButtonSplit.js +2 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -8
  23. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  24. package/dist/components/actions/CommandMenu/styled.js +1 -1
  25. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  26. package/dist/components/actions/ItemActionContext.js +1 -1
  27. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  28. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  29. package/dist/components/actions/Link/Link.js +1 -1
  30. package/dist/components/actions/Menu/Menu.js +1 -1
  31. package/dist/components/actions/Menu/Menu.js.map +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +19 -15
  33. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  34. package/dist/components/actions/Menu/MenuSection.js +1 -8
  35. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  36. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  37. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -7
  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/actions-run.js +1 -1
  43. package/dist/components/actions/index.js +1 -1
  44. package/dist/components/actions/use-action.js +1 -1
  45. package/dist/components/actions/use-anchored-menu.js +1 -1
  46. package/dist/components/actions/use-context-menu.js +1 -1
  47. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  48. package/dist/components/content/Alert/Alert.js +1 -1
  49. package/dist/components/content/Alert/use-alert.js +1 -1
  50. package/dist/components/content/Avatar/Avatar.js +1 -1
  51. package/dist/components/content/Badge/Badge.js +1 -1
  52. package/dist/components/content/Card/Card.js +1 -1
  53. package/dist/components/content/Content.js +1 -2
  54. package/dist/components/content/Content.js.map +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/InfoBadge/InfoBadge.js +1 -1
  63. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  64. package/dist/components/content/Item/Item.d.ts +27 -2
  65. package/dist/components/content/Item/Item.js +240 -231
  66. package/dist/components/content/Item/Item.js.map +1 -1
  67. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  68. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  69. package/dist/components/content/Layout/GridLayout.js +1 -1
  70. package/dist/components/content/Layout/Layout.js +1 -1
  71. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  72. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  73. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  74. package/dist/components/content/Layout/LayoutContent.js +1 -1
  75. package/dist/components/content/Layout/LayoutContext.js +1 -1
  76. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  77. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  78. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  79. package/dist/components/content/Layout/LayoutHeader.js +123 -118
  80. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  81. package/dist/components/content/Layout/LayoutPane.js +1 -1
  82. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  83. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  84. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  85. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  86. package/dist/components/content/Layout/index.js +1 -1
  87. package/dist/components/content/Layout/utils.js +1 -1
  88. package/dist/components/content/Paragraph.js +1 -1
  89. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  90. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  91. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  92. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  93. package/dist/components/content/Result/Result.js +1 -1
  94. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  95. package/dist/components/content/Tag/Tag.js +1 -1
  96. package/dist/components/content/Text.d.ts +14 -14
  97. package/dist/components/content/Text.js +1 -1
  98. package/dist/components/content/TextItem/TextItem.js +1 -1
  99. package/dist/components/content/Title.js +1 -1
  100. package/dist/components/content/Tree/Tree.js +1 -1
  101. package/dist/components/content/Tree/TreeNode.js +1 -1
  102. package/dist/components/content/Tree/styled.js +1 -1
  103. package/dist/components/content/Tree/tree-index.js +1 -1
  104. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  105. package/dist/components/content/Tree/use-load-data.js +1 -1
  106. package/dist/components/content/highlightText.js +1 -1
  107. package/dist/components/content/use-auto-tooltip.d.ts +1 -1
  108. package/dist/components/content/use-auto-tooltip.js +231 -125
  109. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  110. package/dist/components/data/DataTable/DataTable.js +1 -1
  111. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  112. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  113. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  114. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  115. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  116. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  117. package/dist/components/data/TableBase/RowCollection.js +1 -1
  118. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  119. package/dist/components/data/TableBase/TableRow.js +1 -1
  120. package/dist/components/data/TableBase/TableView.js +1 -1
  121. package/dist/components/data/TableBase/column-menu.js +1 -1
  122. package/dist/components/data/TableBase/column-tint.js +1 -1
  123. package/dist/components/data/TableBase/row-menu.js +1 -1
  124. package/dist/components/data/TableBase/styled.d.ts +1 -0
  125. package/dist/components/data/TableBase/styled.js +1 -1
  126. package/dist/components/data/TableBase/table-tree.js +1 -1
  127. package/dist/components/data/TableBase/types.js +1 -1
  128. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  129. package/dist/components/data/TableBase/use-column-order.js +1 -1
  130. package/dist/components/data/TableBase/use-container-width.js +1 -1
  131. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  132. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  133. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  134. package/dist/components/data/TableBase/use-table-search.js +1 -1
  135. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  136. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  137. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  138. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  139. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  140. package/dist/components/fields/Checkbox/Checkbox.d.ts +8 -0
  141. package/dist/components/fields/Checkbox/Checkbox.js +58 -39
  142. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  143. package/dist/components/fields/Checkbox/CheckboxGroup.js +2 -2
  144. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  145. package/dist/components/fields/Checkbox/context.js +1 -1
  146. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  147. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +1 -1
  148. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  149. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  150. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  151. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  152. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  153. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  154. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  155. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  156. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  157. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  158. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  159. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  160. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  161. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  162. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  163. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  164. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  165. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  166. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  167. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  168. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  169. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  170. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  171. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  172. package/dist/components/fields/DatePicker/period.js +1 -1
  173. package/dist/components/fields/DatePicker/props.js +1 -1
  174. package/dist/components/fields/DatePicker/utils.js +1 -1
  175. package/dist/components/fields/FileInput/FileInput.js +1 -1
  176. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  177. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +2 -2
  178. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  179. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  180. package/dist/components/fields/Input/Input.js +1 -1
  181. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  182. package/dist/components/fields/ListBox/ListBox.js +1 -1
  183. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  184. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  185. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  186. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  187. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  188. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  189. package/dist/components/fields/Picker/Picker.d.ts +2 -2
  190. package/dist/components/fields/Picker/Picker.js +1 -1
  191. package/dist/components/fields/Picker/Picker.js.map +1 -1
  192. package/dist/components/fields/RadioGroup/Radio.d.ts +10 -2
  193. package/dist/components/fields/RadioGroup/Radio.js +215 -213
  194. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  195. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  196. package/dist/components/fields/RadioGroup/context.js +1 -1
  197. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  198. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  199. package/dist/components/fields/Select/Select.d.ts +3 -2
  200. package/dist/components/fields/Select/Select.js +5 -2
  201. package/dist/components/fields/Select/Select.js.map +1 -1
  202. package/dist/components/fields/Slider/Gradation.js +1 -1
  203. package/dist/components/fields/Slider/HueSlider.js +1 -1
  204. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  205. package/dist/components/fields/Slider/Slider.js +1 -1
  206. package/dist/components/fields/Slider/SliderBase.js +1 -1
  207. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  208. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  209. package/dist/components/fields/Slider/elements.js +1 -1
  210. package/dist/components/fields/Slider/index.js +1 -1
  211. package/dist/components/fields/Switch/Switch.js +1 -1
  212. package/dist/components/fields/TextArea/TextArea.js +1 -1
  213. package/dist/components/fields/TextInput/TextInput.js +1 -1
  214. package/dist/components/fields/TextInput/TextInputBase.js +2 -2
  215. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  216. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  217. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  218. package/dist/components/fields/TriggerActions.js +1 -1
  219. package/dist/components/fields/color/ColorPanel.js +1 -1
  220. package/dist/components/fields/color/channels.js +1 -1
  221. package/dist/components/fields/color/color.js +1 -1
  222. package/dist/components/fields/color/context.js +1 -1
  223. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +1 -1
  224. package/dist/components/form/FieldWrapper/FieldWrapper.js +11 -9
  225. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  226. package/dist/components/form/FieldWrapper/types.d.ts +1 -1
  227. package/dist/components/form/Form/Field.js +6 -4
  228. package/dist/components/form/Form/Field.js.map +1 -1
  229. package/dist/components/form/Form/Form.js +5 -20
  230. package/dist/components/form/Form/Form.js.map +1 -1
  231. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  232. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  233. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  234. package/dist/components/form/Form/SubmitError.js +1 -1
  235. package/dist/components/form/Form/backend.js +1 -1
  236. package/dist/components/form/Form/index.js +1 -1
  237. package/dist/components/form/Form/modern/actions.js +1 -1
  238. package/dist/components/form/Form/modern/context.js +1 -1
  239. package/dist/components/form/Form/modern/controller.js +1 -1
  240. package/dist/components/form/Form/modern/field-binding.js +1 -1
  241. package/dist/components/form/Form/modern/field.js +1 -1
  242. package/dist/components/form/Form/modern/react.js +1 -1
  243. package/dist/components/form/Form/modern/store.js +1 -1
  244. package/dist/components/form/Form/modern/validation.js +1 -1
  245. package/dist/components/form/Form/modern/values.js +1 -1
  246. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  247. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  248. package/dist/components/form/Form/use-field/use-field.js +1 -1
  249. package/dist/components/form/Form/use-form.js +1 -1
  250. package/dist/components/form/Form/validation.js +1 -1
  251. package/dist/components/form/Label.js +1 -1
  252. package/dist/components/form/legacy-tooltip.js +28 -0
  253. package/dist/components/form/legacy-tooltip.js.map +1 -0
  254. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  255. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  256. package/dist/components/form/validation/use-validation-props.js +1 -1
  257. package/dist/components/form/wrapper.js +5 -3
  258. package/dist/components/form/wrapper.js.map +1 -1
  259. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  260. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  261. package/dist/components/layout/Board/Board.js +1 -1
  262. package/dist/components/layout/Board/BoardProvider.js +1 -1
  263. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  264. package/dist/components/layout/Board/Widget.js +1 -1
  265. package/dist/components/layout/Board/WidgetHost.js +1 -1
  266. package/dist/components/layout/Board/board-context.js +1 -1
  267. package/dist/components/layout/Board/board-store.js +1 -1
  268. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  269. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  270. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  271. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  272. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  273. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  274. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  275. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  276. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  277. package/dist/components/layout/Board/index.js +1 -1
  278. package/dist/components/layout/Board/responsive-utils.js +1 -1
  279. package/dist/components/layout/Board/use-board-layout.js +1 -1
  280. package/dist/components/layout/Board/use-board-registry.js +1 -1
  281. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  282. package/dist/components/layout/Board/use-board-selection.js +1 -1
  283. package/dist/components/layout/Flex.js +1 -1
  284. package/dist/components/layout/Flow.js +1 -1
  285. package/dist/components/layout/Grid.js +1 -1
  286. package/dist/components/layout/Panel.js +1 -1
  287. package/dist/components/layout/Prefix.js +1 -1
  288. package/dist/components/layout/ResizablePanel.js +1 -1
  289. package/dist/components/layout/Space.js +1 -1
  290. package/dist/components/layout/Suffix.js +1 -1
  291. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  292. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  293. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  294. package/dist/components/navigation/Tabs/TabButton.js +131 -110
  295. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  296. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  297. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  298. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  299. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  300. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  301. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  302. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  303. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  304. package/dist/components/navigation/Tabs/styled.js +2 -2
  305. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  306. package/dist/components/navigation/Tabs/types.js +1 -1
  307. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  308. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  309. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  310. package/dist/components/other/Calendar/Calendar.js +1 -1
  311. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  312. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  313. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  314. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  315. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  316. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  317. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  318. package/dist/components/other/Calendar/styled.js +1 -1
  319. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  320. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  321. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  322. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  323. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  324. package/dist/components/overlays/Dialog/Dialog.js +9 -18
  325. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  326. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  327. package/dist/components/overlays/Dialog/DialogForm.js +5 -6
  328. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  329. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  330. package/dist/components/overlays/Dialog/ModernDialogForm.js +64 -71
  331. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  332. package/dist/components/overlays/Dialog/context.js +1 -1
  333. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  334. package/dist/components/overlays/Modal/Modal.js +1 -1
  335. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  336. package/dist/components/overlays/Modal/Overlay.js +1 -1
  337. package/dist/components/overlays/Modal/Popover.js +1 -1
  338. package/dist/components/overlays/Modal/Tray.js +1 -1
  339. package/dist/components/overlays/Modal/Underlay.js +1 -1
  340. package/dist/components/overlays/Notifications/Notification.js +1 -1
  341. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  342. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  343. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  344. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  345. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  346. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  347. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  348. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  349. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  350. package/dist/components/overlays/Notifications/index.js +1 -1
  351. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  352. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  353. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  354. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  355. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  356. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  357. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  358. package/dist/components/overlays/Toast/index.js +1 -1
  359. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  360. package/dist/components/overlays/Toast/useToast.js +1 -1
  361. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  362. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  363. package/dist/components/overlays/Tooltip/TooltipTrigger.js +72 -69
  364. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  365. package/dist/components/overlays/Tooltip/context.js +1 -1
  366. package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +16 -0
  367. package/dist/components/overlays/Tooltip/split-trigger-props.js +54 -0
  368. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -0
  369. package/dist/components/portal/Portal.js +1 -1
  370. package/dist/components/portal/PortalProvider.js +1 -1
  371. package/dist/components/portal/usePortal.js +1 -1
  372. package/dist/components/shared/DraggableCollection.js +1 -1
  373. package/dist/components/shared/InvalidIcon.js +1 -1
  374. package/dist/components/shared/ValidIcon.js +1 -1
  375. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  376. package/dist/components/status/Spin/Cube.js +1 -1
  377. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  378. package/dist/components/status/Spin/Spin.js +1 -1
  379. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  380. package/dist/data/item-themes.js +1 -1
  381. package/dist/data/themes.js +1 -1
  382. package/dist/eslint-plugin/defaults.generated.js +1 -1
  383. package/dist/eslint-plugin/index.js +1 -1
  384. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  385. package/dist/i18n/I18nProvider.js +1 -1
  386. package/dist/i18n/createFormatter.js +1 -1
  387. package/dist/i18n/index.js +1 -1
  388. package/dist/i18n/instance.js +1 -1
  389. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  390. package/dist/i18n/locales/en-US/uikit.js +1 -1
  391. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  392. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  393. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  394. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  395. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  396. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  397. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  398. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  399. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  400. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  401. package/dist/i18n/locales.js +1 -1
  402. package/dist/i18n/useFormatter.js +1 -1
  403. package/dist/i18n/useI18n.js +1 -1
  404. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  405. package/dist/icons/AdjustmentsIcon.js +1 -1
  406. package/dist/icons/AiIcon.js +1 -1
  407. package/dist/icons/AreaChartIcon.js +1 -1
  408. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  409. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  410. package/dist/icons/BackwardIcon.js +1 -1
  411. package/dist/icons/BarChartIcon.js +1 -1
  412. package/dist/icons/BellFilledIcon.js +1 -1
  413. package/dist/icons/BellIcon.js +1 -1
  414. package/dist/icons/BooleanIcon.js +1 -1
  415. package/dist/icons/CalendarEditIcon.js +1 -1
  416. package/dist/icons/CalendarIcon.js +1 -1
  417. package/dist/icons/CaretDownIcon.js +1 -1
  418. package/dist/icons/CaretUpIcon.js +1 -1
  419. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  420. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  421. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  422. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  423. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  424. package/dist/icons/ChartBarLineIcon.js +1 -1
  425. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  426. package/dist/icons/ChartBarStackedIcon.js +1 -1
  427. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  428. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  429. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  430. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  431. package/dist/icons/ChartBubbleIcon.js +1 -1
  432. package/dist/icons/ChartDonut2Icon.js +1 -1
  433. package/dist/icons/ChartFunnelIcon.js +1 -1
  434. package/dist/icons/ChartHeatmapIcon.js +1 -1
  435. package/dist/icons/ChartKPIIcon.js +1 -1
  436. package/dist/icons/ChartPie2Icon.js +1 -1
  437. package/dist/icons/ChartScatterIcon.js +1 -1
  438. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  439. package/dist/icons/CheckCircleIcon.js +1 -1
  440. package/dist/icons/CheckIcon.js +1 -1
  441. package/dist/icons/CircleFilledIcon.js +1 -1
  442. package/dist/icons/ClearIcon.js +1 -1
  443. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  444. package/dist/icons/CloseCircleIcon.js +1 -1
  445. package/dist/icons/CloseIcon.js +1 -1
  446. package/dist/icons/CodeIcon.js +1 -1
  447. package/dist/icons/ColumnTotalIcon.js +1 -1
  448. package/dist/icons/CopyIcon.js +1 -1
  449. package/dist/icons/CountIcon.js +1 -1
  450. package/dist/icons/CubeIcon.js +1 -1
  451. package/dist/icons/CubePauseIcon.js +1 -1
  452. package/dist/icons/CubePlayIcon.js +1 -1
  453. package/dist/icons/CurrencyDollarIcon.js +1 -1
  454. package/dist/icons/DangerIcon.js +1 -1
  455. package/dist/icons/DashboardIcon.js +1 -1
  456. package/dist/icons/DatabaseIcon.js +1 -1
  457. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  458. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  459. package/dist/icons/DirectionIcon.js +1 -1
  460. package/dist/icons/DonutIcon.js +1 -1
  461. package/dist/icons/DownIcon.js +1 -1
  462. package/dist/icons/EditIcon.js +1 -1
  463. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  464. package/dist/icons/ExclamationCircleIcon.js +1 -1
  465. package/dist/icons/ExclamationIcon.js +1 -1
  466. package/dist/icons/EyeIcon.js +1 -1
  467. package/dist/icons/EyeInvisibleIcon.js +1 -1
  468. package/dist/icons/FilterIcon.js +1 -1
  469. package/dist/icons/FolderFilledIcon.js +1 -1
  470. package/dist/icons/FolderIcon.js +1 -1
  471. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  472. package/dist/icons/FolderOpenIcon.js +1 -1
  473. package/dist/icons/ForwardIcon.js +1 -1
  474. package/dist/icons/GripVerticalIcon.js +1 -1
  475. package/dist/icons/HierarchyIcon.js +1 -1
  476. package/dist/icons/HierarchyOpenIcon.js +1 -1
  477. package/dist/icons/Icon.js +1 -1
  478. package/dist/icons/InfoCircleIcon.js +1 -1
  479. package/dist/icons/InfoIcon.js +1 -1
  480. package/dist/icons/KeyIcon.js +1 -1
  481. package/dist/icons/LeftIcon.js +1 -1
  482. package/dist/icons/LineChartIcon.js +1 -1
  483. package/dist/icons/LoadingIcon.js +1 -1
  484. package/dist/icons/LockFilledIcon.js +1 -1
  485. package/dist/icons/LockIcon.js +1 -1
  486. package/dist/icons/MoreIcon.js +1 -1
  487. package/dist/icons/NotAllowedIcon.js +1 -1
  488. package/dist/icons/Number123Icon.js +1 -1
  489. package/dist/icons/NumberIcon.js +1 -1
  490. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  491. package/dist/icons/PauseCircleIcon.js +1 -1
  492. package/dist/icons/PauseIcon.js +1 -1
  493. package/dist/icons/PercentageIcon.js +1 -1
  494. package/dist/icons/PieChartIcon.js +1 -1
  495. package/dist/icons/PipetteIcon.js +1 -1
  496. package/dist/icons/PlayCircleIcon.js +1 -1
  497. package/dist/icons/PlayIcon.js +1 -1
  498. package/dist/icons/PlusIcon.js +1 -1
  499. package/dist/icons/ProgressBarIcon.js +1 -1
  500. package/dist/icons/ReloadIcon.js +1 -1
  501. package/dist/icons/ReportIcon.js +1 -1
  502. package/dist/icons/ReturnIcon.js +1 -1
  503. package/dist/icons/RightIcon.js +1 -1
  504. package/dist/icons/RowTotalsIcon.js +1 -1
  505. package/dist/icons/SchemeIcon.js +1 -1
  506. package/dist/icons/SearchIcon.js +1 -1
  507. package/dist/icons/SemanticQueryIcon.js +1 -1
  508. package/dist/icons/SettingsIcon.js +1 -1
  509. package/dist/icons/ShieldFilledIcon.js +1 -1
  510. package/dist/icons/ShieldIcon.js +1 -1
  511. package/dist/icons/SlashIcon.js +1 -1
  512. package/dist/icons/SparklesIcon.js +1 -1
  513. package/dist/icons/SqlIcon.js +1 -1
  514. package/dist/icons/StatsIcon.js +1 -1
  515. package/dist/icons/StopIcon.js +1 -1
  516. package/dist/icons/StringIcon.js +1 -1
  517. package/dist/icons/SubtotalsIcon.js +1 -1
  518. package/dist/icons/SwitchIcon.js +1 -1
  519. package/dist/icons/TableIcon.js +1 -1
  520. package/dist/icons/ThumbsDownIcon.js +1 -1
  521. package/dist/icons/ThumbsUpIcon.js +1 -1
  522. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  523. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  524. package/dist/icons/ThunderboltIcon.js +1 -1
  525. package/dist/icons/TimeIcon.js +1 -1
  526. package/dist/icons/TrashIcon.js +1 -1
  527. package/dist/icons/UnlockIcon.js +1 -1
  528. package/dist/icons/UpIcon.js +1 -1
  529. package/dist/icons/UserGroupIcon.js +1 -1
  530. package/dist/icons/UserIcon.js +1 -1
  531. package/dist/icons/UserLockIcon.js +1 -1
  532. package/dist/icons/ViewIcon.js +1 -1
  533. package/dist/icons/WarningFilledIcon.js +1 -1
  534. package/dist/icons/WarningIcon.js +1 -1
  535. package/dist/icons/wrap-icon.js +1 -1
  536. package/dist/index.js +1 -1
  537. package/dist/probe/canonicalize.js +1 -1
  538. package/dist/probe/css.js +1 -1
  539. package/dist/probe/index.js +1 -1
  540. package/dist/provider.js +1 -1
  541. package/dist/providers/TrackingProvider.js +1 -1
  542. package/dist/providers/navigationAdapter.default.js +1 -1
  543. package/dist/shared/form.d.ts +9 -2
  544. package/dist/tokens/all-tokens.js +1 -1
  545. package/dist/tokens/base.js +1 -1
  546. package/dist/tokens/color-seed.js +1 -1
  547. package/dist/tokens/color-theme.js +1 -1
  548. package/dist/tokens/colors.js +1 -1
  549. package/dist/tokens/layout.js +1 -1
  550. package/dist/tokens/lazy-styles.js +1 -1
  551. package/dist/tokens/legacy-color.js +1 -1
  552. package/dist/tokens/palette-config.js +1 -1
  553. package/dist/tokens/palette.js +1 -1
  554. package/dist/tokens/resolve.js +1 -1
  555. package/dist/tokens/shadows.js +1 -1
  556. package/dist/tokens/sizes.js +1 -1
  557. package/dist/tokens/spacing.js +1 -1
  558. package/dist/tokens/typography.js +1 -1
  559. package/dist/utils/ResizeSensor.js +1 -1
  560. package/dist/utils/colors.js +1 -1
  561. package/dist/utils/dotize.js +1 -1
  562. package/dist/utils/is-dev-env.js +1 -1
  563. package/dist/utils/modules.js +1 -1
  564. package/dist/utils/promise.js +1 -1
  565. package/dist/utils/raf.js +1 -1
  566. package/dist/utils/random.js +1 -1
  567. package/dist/utils/range.js +1 -1
  568. package/dist/utils/react/RenderCache.js +1 -1
  569. package/dist/utils/react/Slots.js +1 -1
  570. package/dist/utils/react/chain.js +1 -1
  571. package/dist/utils/react/disabledProps.js +1 -1
  572. package/dist/utils/react/escapePropagation.js +1 -1
  573. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  574. package/dist/utils/react/index.js +1 -1
  575. package/dist/utils/react/interactions.js +1 -1
  576. package/dist/utils/react/isTextOnly.js +1 -1
  577. package/dist/utils/react/mapProps.js +1 -1
  578. package/dist/utils/react/mergeProps.js +1 -1
  579. package/dist/utils/react/nullableValue.js +1 -1
  580. package/dist/utils/react/programmaticFocus.js +1 -1
  581. package/dist/utils/react/resolveIcon.js +1 -1
  582. package/dist/utils/react/sharedStore.js +1 -1
  583. package/dist/utils/react/useBufferedValue.js +1 -1
  584. package/dist/utils/react/useCombinedRefs.js +1 -1
  585. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  586. package/dist/utils/react/useEventBus.js +1 -1
  587. package/dist/utils/react/useId.js +1 -1
  588. package/dist/utils/react/useIsDarwin.js +1 -1
  589. package/dist/utils/react/useKeySymbols.js +1 -1
  590. package/dist/utils/react/useLayoutEffect.js +1 -1
  591. package/dist/utils/react/useLocalStorage.js +1 -1
  592. package/dist/utils/react/useMergeStyles.js +1 -1
  593. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  594. package/dist/utils/react/usePopoverSync.js +1 -1
  595. package/dist/utils/react/useQaProps.js +1 -1
  596. package/dist/utils/react/useScheme.js +1 -1
  597. package/dist/utils/react/useViewportSize.js +1 -1
  598. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  599. package/dist/utils/selection.js +1 -1
  600. package/dist/utils/styles.js +1 -1
  601. package/dist/utils/tree.js +1 -1
  602. package/dist/utils/warnings.js +1 -1
  603. package/dist/version.js +2 -2
  604. package/docs/FieldProperties.md +2 -2
  605. package/docs/components/actions/ButtonSplit.md +2 -0
  606. package/docs/components/content/InfoBadge.md +1 -1
  607. package/docs/components/content/Layout.md +1 -1
  608. package/docs/components/fields/Checkbox.md +11 -0
  609. package/docs/components/fields/ColorPicker.md +1 -1
  610. package/docs/components/fields/FilterPicker.md +1 -1
  611. package/docs/components/fields/Picker.md +1 -1
  612. package/docs/components/fields/RadioGroup.md +2 -2
  613. package/docs/components/fields/Select.md +3 -0
  614. package/docs/components/form/Field.md +2 -2
  615. package/docs/components/form/Form.md +0 -2
  616. package/docs/components/navigation/Tabs.md +3 -3
  617. package/docs/components/overlays/Dialog.md +3 -30
  618. package/docs/components/overlays/DialogForm.md +0 -1
  619. package/package.json +1 -1
  620. package/dist/components/overlays/Dialog/use-content-overflow.js +0 -68
  621. package/dist/components/overlays/Dialog/use-content-overflow.js.map +0 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { isDevEnv } from "../../../utils/is-dev-env.js";
4
4
  import { TooltipContext } from "./context.js";
@@ -29,7 +29,7 @@ function isReactElement(value) {
29
29
  * relative to the trigger.
30
30
  */
31
31
  function TooltipTrigger(props) {
32
- const $ = c(44);
32
+ const $ = c(45);
33
33
  const { children, activeWrap, targetRef: externalRef, crossOffset: t0, isDisabled, isMaterial, isLight, offset: t1, trigger: triggerAction, delay: t2, isOpen, onOpenChange, defaultOpen, disableFocusableProvider } = props;
34
34
  const crossOffset = t0 === void 0 ? DEFAULT_CROSS_OFFSET : t0;
35
35
  const offset = t1 === void 0 ? DEFAULT_OFFSET : t1;
@@ -54,8 +54,9 @@ function TooltipTrigger(props) {
54
54
  } else t3 = $[2];
55
55
  const state = useTooltipTriggerState(t3);
56
56
  let t4;
57
- if ($[3] !== defaultOpen || $[4] !== delay || $[5] !== isOpen || $[6] !== onOpenChange || $[7] !== triggerAction) {
57
+ if ($[3] !== defaultOpen || $[4] !== delay || $[5] !== isDisabled || $[6] !== isOpen || $[7] !== onOpenChange || $[8] !== triggerAction) {
58
58
  t4 = {
59
+ isDisabled,
59
60
  trigger: triggerAction,
60
61
  delay,
61
62
  isOpen,
@@ -65,21 +66,22 @@ function TooltipTrigger(props) {
65
66
  };
66
67
  $[3] = defaultOpen;
67
68
  $[4] = delay;
68
- $[5] = isOpen;
69
- $[6] = onOpenChange;
70
- $[7] = triggerAction;
71
- $[8] = t4;
72
- } else t4 = $[8];
69
+ $[5] = isDisabled;
70
+ $[6] = isOpen;
71
+ $[7] = onOpenChange;
72
+ $[8] = triggerAction;
73
+ $[9] = t4;
74
+ } else t4 = $[9];
73
75
  const { triggerProps: rawTriggerProps, tooltipProps } = useTooltipTrigger(t4, state, tooltipTriggerRef);
74
76
  let t5;
75
- if ($[9] !== rawTriggerProps) {
77
+ if ($[10] !== rawTriggerProps) {
76
78
  t5 = (event) => {
77
79
  if (isFocusRestoration()) return;
78
80
  rawTriggerProps.onFocus?.(event);
79
81
  };
80
- $[9] = rawTriggerProps;
81
- $[10] = t5;
82
- } else t5 = $[10];
82
+ $[10] = rawTriggerProps;
83
+ $[11] = t5;
84
+ } else t5 = $[11];
83
85
  const onFocus = useEvent(t5);
84
86
  const triggerProps = {
85
87
  ...rawTriggerProps,
@@ -87,7 +89,7 @@ function TooltipTrigger(props) {
87
89
  };
88
90
  const t6 = props.placement || "top";
89
91
  let t7;
90
- if ($[11] !== crossOffset || $[12] !== offset || $[13] !== state.isOpen || $[14] !== t6 || $[15] !== tooltipTriggerRef) {
92
+ if ($[12] !== crossOffset || $[13] !== offset || $[14] !== state.isOpen || $[15] !== t6 || $[16] !== tooltipTriggerRef) {
91
93
  t7 = {
92
94
  placement: t6,
93
95
  targetRef: tooltipTriggerRef,
@@ -97,17 +99,17 @@ function TooltipTrigger(props) {
97
99
  isDismissable: false,
98
100
  isOpen: state.isOpen
99
101
  };
100
- $[11] = crossOffset;
101
- $[12] = offset;
102
- $[13] = state.isOpen;
103
- $[14] = t6;
104
- $[15] = tooltipTriggerRef;
105
- $[16] = t7;
106
- } else t7 = $[16];
102
+ $[12] = crossOffset;
103
+ $[13] = offset;
104
+ $[14] = state.isOpen;
105
+ $[15] = t6;
106
+ $[16] = tooltipTriggerRef;
107
+ $[17] = t7;
108
+ } else t7 = $[17];
107
109
  const { overlayProps, arrowProps, placement, updatePosition } = useOverlayPosition(t7);
108
110
  const t8 = placement || props.placement || "top";
109
111
  let t9;
110
- if ($[17] !== arrowProps || $[18] !== isLight || $[19] !== isMaterial || $[20] !== overlayProps || $[21] !== state || $[22] !== t8 || $[23] !== tooltipProps || $[24] !== updatePosition) {
112
+ if ($[18] !== arrowProps || $[19] !== isLight || $[20] !== isMaterial || $[21] !== overlayProps || $[22] !== state || $[23] !== t8 || $[24] !== tooltipProps || $[25] !== updatePosition) {
111
113
  t9 = {
112
114
  state,
113
115
  placement: t8,
@@ -121,20 +123,21 @@ function TooltipTrigger(props) {
121
123
  updatePosition,
122
124
  ...tooltipProps
123
125
  };
124
- $[17] = arrowProps;
125
- $[18] = isLight;
126
- $[19] = isMaterial;
127
- $[20] = overlayProps;
128
- $[21] = state;
129
- $[22] = t8;
130
- $[23] = tooltipProps;
131
- $[24] = updatePosition;
132
- $[25] = t9;
133
- } else t9 = $[25];
126
+ $[18] = arrowProps;
127
+ $[19] = isLight;
128
+ $[20] = isMaterial;
129
+ $[21] = overlayProps;
130
+ $[22] = state;
131
+ $[23] = t8;
132
+ $[24] = tooltipProps;
133
+ $[25] = updatePosition;
134
+ $[26] = t9;
135
+ } else t9 = $[26];
134
136
  const tooltipContextValue = t9;
135
137
  if (isTriggerFunction(trigger)) {
136
- const t10 = (t11) => {
137
- const { phase, isShown, ref: transitionRef } = t11;
138
+ const t10 = state.isOpen && !isDisabled;
139
+ const t11 = (t12) => {
140
+ const { phase, isShown, ref: transitionRef } = t12;
138
141
  return /* @__PURE__ */ jsx(TooltipContext.Provider, {
139
142
  value: {
140
143
  ...tooltipContextValue,
@@ -146,49 +149,49 @@ function TooltipTrigger(props) {
146
149
  children: /* @__PURE__ */ jsx(Portal, { children: tooltip })
147
150
  });
148
151
  };
149
- let t12;
150
- if ($[26] !== state.isOpen || $[27] !== t10) {
151
- t12 = /* @__PURE__ */ jsx(DisplayTransition, {
152
- isShown: state.isOpen,
153
- children: t10
152
+ let t13;
153
+ if ($[27] !== t10 || $[28] !== t11) {
154
+ t13 = /* @__PURE__ */ jsx(DisplayTransition, {
155
+ isShown: t10,
156
+ children: t11
154
157
  });
155
- $[26] = state.isOpen;
156
158
  $[27] = t10;
157
- $[28] = t12;
158
- } else t12 = $[28];
159
- return /* @__PURE__ */ jsxs(Fragment$1, { children: [trigger(triggerProps, tooltipTriggerRef), t12] });
159
+ $[28] = t11;
160
+ $[29] = t13;
161
+ } else t13 = $[29];
162
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [trigger(triggerProps, tooltipTriggerRef), t13] });
160
163
  }
161
164
  if (!activeWrap && typeof trigger === "string") {
162
165
  console.warn("CubeUIKit: Tooltips are only supported on elements that are both focusable and hoverable. To solve this issue you can: 1) Use active element as a trigger (`Button`, `Link`, etc); 2) Use function-as-first-child pattern to manually apply trigger props; 3) Use `ActiveZone` component to manually wrap the content.");
163
166
  let t10;
164
- if ($[29] !== trigger) {
167
+ if ($[30] !== trigger) {
165
168
  t10 = /* @__PURE__ */ jsx(Block, { children: trigger });
166
- $[29] = trigger;
167
- $[30] = t10;
168
- } else t10 = $[30];
169
+ $[30] = trigger;
170
+ $[31] = t10;
171
+ } else t10 = $[31];
169
172
  return t10;
170
173
  }
171
174
  let t10;
172
- if ($[31] === Symbol.for("react.memo_cache_sentinel")) {
175
+ if ($[32] === Symbol.for("react.memo_cache_sentinel")) {
173
176
  t10 = function onClick(e) {
174
177
  e?.currentTarget?.parentNode.click();
175
178
  };
176
- $[31] = t10;
177
- } else t10 = $[31];
179
+ $[32] = t10;
180
+ } else t10 = $[32];
178
181
  const onClick = t10;
179
182
  let t11;
180
- if ($[32] !== activeWrap || $[33] !== trigger) {
183
+ if ($[33] !== activeWrap || $[34] !== trigger) {
181
184
  t11 = activeWrap ? /* @__PURE__ */ jsx(_ActiveZone, {
182
185
  onClick,
183
186
  children: trigger
184
187
  }) : trigger;
185
- $[32] = activeWrap;
186
- $[33] = trigger;
187
- $[34] = t11;
188
- } else t11 = $[34];
188
+ $[33] = activeWrap;
189
+ $[34] = trigger;
190
+ $[35] = t11;
191
+ } else t11 = $[35];
189
192
  const t12 = state.isOpen && !isDisabled;
190
193
  let t13;
191
- if ($[35] !== tooltip || $[36] !== tooltipContextValue) {
194
+ if ($[36] !== tooltip || $[37] !== tooltipContextValue) {
192
195
  t13 = (t14) => {
193
196
  const { phase: phase_0, isShown: isShown_0, ref: transitionRef_0 } = t14;
194
197
  return /* @__PURE__ */ jsx(TooltipContext.Provider, {
@@ -202,27 +205,27 @@ function TooltipTrigger(props) {
202
205
  children: /* @__PURE__ */ jsx(Portal, { children: tooltip })
203
206
  });
204
207
  };
205
- $[35] = tooltip;
206
- $[36] = tooltipContextValue;
207
- $[37] = t13;
208
- } else t13 = $[37];
208
+ $[36] = tooltip;
209
+ $[37] = tooltipContextValue;
210
+ $[38] = t13;
211
+ } else t13 = $[38];
209
212
  let t14;
210
- if ($[38] !== t12 || $[39] !== t13) {
213
+ if ($[39] !== t12 || $[40] !== t13) {
211
214
  t14 = /* @__PURE__ */ jsx(DisplayTransition, {
212
215
  isShown: t12,
213
216
  children: t13
214
217
  });
215
- $[38] = t12;
216
- $[39] = t13;
217
- $[40] = t14;
218
- } else t14 = $[40];
218
+ $[39] = t12;
219
+ $[40] = t13;
220
+ $[41] = t14;
221
+ } else t14 = $[41];
219
222
  let t15;
220
- if ($[41] !== t11 || $[42] !== t14) {
223
+ if ($[42] !== t11 || $[43] !== t14) {
221
224
  t15 = /* @__PURE__ */ jsxs(Fragment$1, { children: [t11, t14] });
222
- $[41] = t11;
223
- $[42] = t14;
224
- $[43] = t15;
225
- } else t15 = $[43];
225
+ $[42] = t11;
226
+ $[43] = t14;
227
+ $[44] = t15;
228
+ } else t15 = $[44];
226
229
  const triggerContent = t15;
227
230
  if (disableFocusableProvider) return triggerContent;
228
231
  return /* @__PURE__ */ jsx(FocusableProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipTrigger.js","names":["FocusableProvider","FocusEvent","HTMLAttributes","isValidElement","ReactElement","ReactNode","RefObject","useRef","Placement","TooltipTriggerProps","useOverlayPosition","useTooltipTrigger","useTooltipTriggerState","useEvent","isDevEnv","isFocusRestoration","Block","ActiveZone","DisplayTransition","Portal","TooltipContext","DEFAULT_OFFSET","DEFAULT_CROSS_OFFSET","isTriggerFunction","value","TooltipTriggerFunction","isReactElement","triggerProps","HTMLElement","ref","CubeTooltipTriggerProps","children","crossOffset","offset","placement","isMaterial","isLight","activeWrap","targetRef","isOpen","onOpenChange","defaultOpen","isDisabled","delay","closeDelay","trigger","disableFocusableProvider","TooltipTrigger","props","$","_c","externalRef","t0","t1","triggerAction","t2","undefined","rawChildrenArray","Array","isArray","tooltip","Error","console","warn","internalRef","tooltipTriggerRef","overlayRef","t3","isDismissable","state","t4","rawTriggerProps","tooltipProps","t5","event","onFocus","t6","t7","overlayProps","arrowProps","updatePosition","t8","t9","minOffset","minScale","tooltipContextValue","t10","t11","phase","isShown","transitionRef","t12","Symbol","for","onClick","e","currentTarget","parentNode","click","t13","t14","phase_0","isShown_0","transitionRef_0","t15","triggerContent"],"sources":["../../../../src/components/overlays/Tooltip/TooltipTrigger.tsx"],"sourcesContent":["import { FocusableProvider } from '@react-aria/focus';\nimport {\n FocusEvent,\n HTMLAttributes,\n isValidElement,\n ReactElement,\n ReactNode,\n RefObject,\n useRef,\n} from 'react';\nimport {\n Placement,\n TooltipTriggerProps,\n useOverlayPosition,\n useTooltipTrigger,\n} from 'react-aria';\nimport { useTooltipTriggerState } from 'react-stately';\n\nimport { useEvent } from '../../../_internal';\nimport { isDevEnv } from '../../../utils/is-dev-env';\nimport { isFocusRestoration } from '../../../utils/react/programmaticFocus';\nimport { Block } from '../../Block';\nimport { ActiveZone } from '../../content/ActiveZone/ActiveZone';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\nimport { Portal } from '../../portal';\n\nimport { TooltipContext } from './context';\n\nconst DEFAULT_OFFSET = 8; // Offset needed to reach 4px/5px (med/large) distance between tooltip and trigger button\nconst DEFAULT_CROSS_OFFSET = 0;\n\n// Type guards\nfunction isTriggerFunction(value: unknown): value is TooltipTriggerFunction {\n return typeof value === 'function';\n}\n\nfunction isReactElement(value: unknown): value is ReactElement {\n return isValidElement(value);\n}\n\nexport type TooltipTriggerFunction = (\n triggerProps: HTMLAttributes<HTMLElement>,\n ref: RefObject<HTMLElement>,\n) => ReactNode;\n\nexport interface CubeTooltipTriggerProps extends TooltipTriggerProps {\n children: [ReactElement | string | TooltipTriggerFunction, ReactElement];\n crossOffset?: number;\n offset?: number;\n placement?: Placement;\n isMaterial?: boolean;\n isLight?: boolean;\n /**\n * @deprecated Use function-as-first-child pattern instead.\n * Whether the trigger should have an ActiveZone wrap to make sure it's focusable and hoverable.\n * Otherwise, tooltip won't work.\n */\n activeWrap?: boolean;\n /**\n * External ref to use instead of internal ref (optional).\n */\n targetRef?: RefObject<HTMLElement>;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n /**\n * Whether the tooltip should be disabled, independent of the trigger.\n */\n isDisabled?: boolean;\n /**\n * The delay time for the tooltip to show up.\n * @default 1500\n */\n delay?: number;\n /**\n * The delay time for the tooltip to close.\n * @default 500\n */\n closeDelay?: number;\n /**\n * By default, opens for both focus and hover. Can be made to open only for focus.\n */\n trigger?: 'focus';\n /**\n * When true, FocusableProvider won't be applied to the trigger.\n * Useful when trigger already handles focus or uses render props pattern.\n */\n disableFocusableProvider?: boolean;\n}\n\n/**\n * TooltipTrigger wraps around a trigger element and a Tooltip. It handles opening and closing\n * the Tooltip when the user hovers over or focuses the trigger, and positioning the Tooltip\n * relative to the trigger.\n */\nexport function TooltipTrigger(props: CubeTooltipTriggerProps) {\n let {\n children,\n activeWrap,\n targetRef: externalRef,\n crossOffset = DEFAULT_CROSS_OFFSET,\n isDisabled,\n isMaterial,\n isLight,\n offset = DEFAULT_OFFSET,\n trigger: triggerAction,\n delay = 250,\n isOpen,\n onOpenChange,\n defaultOpen,\n disableFocusableProvider,\n } = props;\n\n // Extract both children without using React.Children.toArray so we don't lose\n // function-as-child (render-prop) which React.Children filters out.\n const rawChildrenArray = Array.isArray(children)\n ? (children as unknown[])\n : ([children] as unknown[]);\n\n const [trigger, tooltip] = rawChildrenArray;\n\n // Type guard the tooltip\n if (!isReactElement(tooltip)) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the second child to be a valid React element (Tooltip component).',\n );\n }\n\n // Type guard the trigger\n if (\n !isTriggerFunction(trigger) &&\n !isReactElement(trigger) &&\n typeof trigger !== 'string'\n ) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the first child to be a function, React element, or string.',\n );\n }\n\n // Show deprecation warning for activeWrap\n if (activeWrap && isDevEnv()) {\n console.warn(\n 'CubeUIKit: The `activeWrap` prop is deprecated. Use function-as-first-child pattern instead.',\n );\n }\n\n let internalRef = useRef<HTMLElement>(null!);\n let tooltipTriggerRef = externalRef ?? internalRef;\n let overlayRef = useRef<HTMLElement | null>(null);\n\n let state = useTooltipTriggerState({ delay, ...props, isDismissable: false });\n\n let { triggerProps: rawTriggerProps, tooltipProps } = useTooltipTrigger(\n {\n trigger: triggerAction,\n delay,\n isOpen,\n onOpenChange,\n isDismissable: false,\n defaultOpen,\n },\n state,\n tooltipTriggerRef,\n );\n\n // A tooltip answers a user arriving at the trigger. Focus handed back by a\n // component — a popup returning it to the trigger it came from — is not that\n // arrival, but the DOM event is identical and the modality is still\n // \"keyboard\", so React Aria would show the tooltip anyway. It then absorbs\n // the user's next `Escape` from its own document-level listener, which is\n // how a Dialog ended up needing two presses to close (CUB-4839).\n //\n // Dropping the focus handler rather than closing after the fact: React Aria\n // decides to show inside it, so this never starts and nothing flashes.\n //\n // Covers both restore paths — ours and a `FocusScope`'s — see\n // `programmaticFocus`.\n const onFocus = useEvent((event: FocusEvent<HTMLElement>) => {\n if (isFocusRestoration()) return;\n\n rawTriggerProps.onFocus?.(event);\n });\n\n const triggerProps = { ...rawTriggerProps, onFocus };\n\n let { overlayProps, arrowProps, placement, updatePosition } =\n useOverlayPosition({\n placement: props.placement || 'top',\n targetRef: tooltipTriggerRef,\n overlayRef,\n offset,\n crossOffset,\n isDismissable: false,\n isOpen: state.isOpen,\n });\n\n const tooltipContextValue = {\n state,\n placement: placement || props.placement || 'top',\n ref: overlayRef,\n overlayProps,\n arrowProps,\n minOffset: 'var(--gap)',\n minScale: '1',\n isMaterial,\n isLight,\n updatePosition,\n ...tooltipProps,\n };\n\n // Function trigger pattern (new)\n if (isTriggerFunction(trigger)) {\n return (\n <>\n {trigger(triggerProps, tooltipTriggerRef)}\n <DisplayTransition isShown={state.isOpen}>\n {({ phase, isShown, ref: transitionRef }) => (\n <TooltipContext.Provider\n value={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n >\n <Portal>{tooltip}</Portal>\n </TooltipContext.Provider>\n )}\n </DisplayTransition>\n </>\n );\n }\n\n // Legacy element/string trigger pattern\n if (!activeWrap && typeof trigger === 'string') {\n console.warn(\n 'CubeUIKit: Tooltips are only supported on elements that are both focusable and hoverable. To solve this issue you can: 1) Use active element as a trigger (`Button`, `Link`, etc); 2) Use function-as-first-child pattern to manually apply trigger props; 3) Use `ActiveZone` component to manually wrap the content.',\n );\n\n return <Block>{trigger}</Block>;\n }\n\n function onClick(e) {\n e?.currentTarget?.parentNode.click();\n }\n\n const triggerContent = (\n <>\n {activeWrap ? (\n <ActiveZone onClick={onClick}>{trigger}</ActiveZone>\n ) : (\n trigger\n )}\n <DisplayTransition isShown={state.isOpen && !isDisabled}>\n {({ phase, isShown, ref: transitionRef }) => (\n <TooltipContext.Provider\n value={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n >\n <Portal>{tooltip}</Portal>\n </TooltipContext.Provider>\n )}\n </DisplayTransition>\n </>\n );\n\n if (disableFocusableProvider) {\n return triggerContent;\n }\n\n return (\n <FocusableProvider {...triggerProps} ref={tooltipTriggerRef}>\n {triggerContent}\n </FocusableProvider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TooltipTrigger.js","names":["FocusableProvider","FocusEvent","HTMLAttributes","isValidElement","ReactElement","ReactNode","RefObject","useRef","Placement","TooltipTriggerProps","useOverlayPosition","useTooltipTrigger","useTooltipTriggerState","useEvent","isDevEnv","isFocusRestoration","Block","ActiveZone","DisplayTransition","Portal","TooltipContext","DEFAULT_OFFSET","DEFAULT_CROSS_OFFSET","isTriggerFunction","value","TooltipTriggerFunction","isReactElement","triggerProps","HTMLElement","ref","CubeTooltipTriggerProps","children","crossOffset","offset","placement","isMaterial","isLight","activeWrap","targetRef","isOpen","onOpenChange","defaultOpen","isDisabled","delay","closeDelay","trigger","disableFocusableProvider","TooltipTrigger","props","$","_c","externalRef","t0","t1","triggerAction","t2","undefined","rawChildrenArray","Array","isArray","tooltip","Error","console","warn","internalRef","tooltipTriggerRef","overlayRef","t3","isDismissable","state","t4","rawTriggerProps","tooltipProps","t5","event","onFocus","t6","t7","overlayProps","arrowProps","updatePosition","t8","t9","minOffset","minScale","tooltipContextValue","t10","t11","t12","phase","isShown","transitionRef","t13","Symbol","for","onClick","e","currentTarget","parentNode","click","t14","phase_0","isShown_0","transitionRef_0","t15","triggerContent"],"sources":["../../../../src/components/overlays/Tooltip/TooltipTrigger.tsx"],"sourcesContent":["import { FocusableProvider } from '@react-aria/focus';\nimport {\n FocusEvent,\n HTMLAttributes,\n isValidElement,\n ReactElement,\n ReactNode,\n RefObject,\n useRef,\n} from 'react';\nimport {\n Placement,\n TooltipTriggerProps,\n useOverlayPosition,\n useTooltipTrigger,\n} from 'react-aria';\nimport { useTooltipTriggerState } from 'react-stately';\n\nimport { useEvent } from '../../../_internal';\nimport { isDevEnv } from '../../../utils/is-dev-env';\nimport { isFocusRestoration } from '../../../utils/react/programmaticFocus';\nimport { Block } from '../../Block';\nimport { ActiveZone } from '../../content/ActiveZone/ActiveZone';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\nimport { Portal } from '../../portal';\n\nimport { TooltipContext } from './context';\n\nconst DEFAULT_OFFSET = 8; // Offset needed to reach 4px/5px (med/large) distance between tooltip and trigger button\nconst DEFAULT_CROSS_OFFSET = 0;\n\n// Type guards\nfunction isTriggerFunction(value: unknown): value is TooltipTriggerFunction {\n return typeof value === 'function';\n}\n\nfunction isReactElement(value: unknown): value is ReactElement {\n return isValidElement(value);\n}\n\nexport type TooltipTriggerFunction = (\n triggerProps: HTMLAttributes<HTMLElement>,\n ref: RefObject<HTMLElement>,\n) => ReactNode;\n\nexport interface CubeTooltipTriggerProps extends TooltipTriggerProps {\n children: [ReactElement | string | TooltipTriggerFunction, ReactElement];\n crossOffset?: number;\n offset?: number;\n placement?: Placement;\n isMaterial?: boolean;\n isLight?: boolean;\n /**\n * @deprecated Use function-as-first-child pattern instead.\n * Whether the trigger should have an ActiveZone wrap to make sure it's focusable and hoverable.\n * Otherwise, tooltip won't work.\n */\n activeWrap?: boolean;\n /**\n * External ref to use instead of internal ref (optional).\n */\n targetRef?: RefObject<HTMLElement>;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n /**\n * Whether the tooltip should be disabled, independent of the trigger.\n */\n isDisabled?: boolean;\n /**\n * The delay time for the tooltip to show up.\n * @default 1500\n */\n delay?: number;\n /**\n * The delay time for the tooltip to close.\n * @default 500\n */\n closeDelay?: number;\n /**\n * By default, opens for both focus and hover. Can be made to open only for focus.\n */\n trigger?: 'focus';\n /**\n * When true, FocusableProvider won't be applied to the trigger.\n * Useful when trigger already handles focus or uses render props pattern.\n */\n disableFocusableProvider?: boolean;\n}\n\n/**\n * TooltipTrigger wraps around a trigger element and a Tooltip. It handles opening and closing\n * the Tooltip when the user hovers over or focuses the trigger, and positioning the Tooltip\n * relative to the trigger.\n */\nexport function TooltipTrigger(props: CubeTooltipTriggerProps) {\n let {\n children,\n activeWrap,\n targetRef: externalRef,\n crossOffset = DEFAULT_CROSS_OFFSET,\n isDisabled,\n isMaterial,\n isLight,\n offset = DEFAULT_OFFSET,\n trigger: triggerAction,\n delay = 250,\n isOpen,\n onOpenChange,\n defaultOpen,\n disableFocusableProvider,\n } = props;\n\n // Extract both children without using React.Children.toArray so we don't lose\n // function-as-child (render-prop) which React.Children filters out.\n const rawChildrenArray = Array.isArray(children)\n ? (children as unknown[])\n : ([children] as unknown[]);\n\n const [trigger, tooltip] = rawChildrenArray;\n\n // Type guard the tooltip\n if (!isReactElement(tooltip)) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the second child to be a valid React element (Tooltip component).',\n );\n }\n\n // Type guard the trigger\n if (\n !isTriggerFunction(trigger) &&\n !isReactElement(trigger) &&\n typeof trigger !== 'string'\n ) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the first child to be a function, React element, or string.',\n );\n }\n\n // Show deprecation warning for activeWrap\n if (activeWrap && isDevEnv()) {\n console.warn(\n 'CubeUIKit: The `activeWrap` prop is deprecated. Use function-as-first-child pattern instead.',\n );\n }\n\n let internalRef = useRef<HTMLElement>(null!);\n let tooltipTriggerRef = externalRef ?? internalRef;\n let overlayRef = useRef<HTMLElement | null>(null);\n\n let state = useTooltipTriggerState({ delay, ...props, isDismissable: false });\n\n let { triggerProps: rawTriggerProps, tooltipProps } = useTooltipTrigger(\n {\n // Without it a disabled tooltip still opened — invisibly, since nothing\n // renders it — and while open React Aria's document-level listener eats\n // every `Escape`, so a Dialog under the pointer would not close.\n isDisabled,\n trigger: triggerAction,\n delay,\n isOpen,\n onOpenChange,\n isDismissable: false,\n defaultOpen,\n },\n state,\n tooltipTriggerRef,\n );\n\n // A tooltip answers a user arriving at the trigger. Focus handed back by a\n // component — a popup returning it to the trigger it came from — is not that\n // arrival, but the DOM event is identical and the modality is still\n // \"keyboard\", so React Aria would show the tooltip anyway. It then absorbs\n // the user's next `Escape` from its own document-level listener, which is\n // how a Dialog ended up needing two presses to close (CUB-4839).\n //\n // Dropping the focus handler rather than closing after the fact: React Aria\n // decides to show inside it, so this never starts and nothing flashes.\n //\n // Covers both restore paths — ours and a `FocusScope`'s — see\n // `programmaticFocus`.\n const onFocus = useEvent((event: FocusEvent<HTMLElement>) => {\n if (isFocusRestoration()) return;\n\n rawTriggerProps.onFocus?.(event);\n });\n\n const triggerProps = { ...rawTriggerProps, onFocus };\n\n let { overlayProps, arrowProps, placement, updatePosition } =\n useOverlayPosition({\n placement: props.placement || 'top',\n targetRef: tooltipTriggerRef,\n overlayRef,\n offset,\n crossOffset,\n isDismissable: false,\n isOpen: state.isOpen,\n });\n\n const tooltipContextValue = {\n state,\n placement: placement || props.placement || 'top',\n ref: overlayRef,\n overlayProps,\n arrowProps,\n minOffset: 'var(--gap)',\n minScale: '1',\n isMaterial,\n isLight,\n updatePosition,\n ...tooltipProps,\n };\n\n // Function trigger pattern (new)\n if (isTriggerFunction(trigger)) {\n return (\n <>\n {trigger(triggerProps, tooltipTriggerRef)}\n <DisplayTransition isShown={state.isOpen && !isDisabled}>\n {({ phase, isShown, ref: transitionRef }) => (\n <TooltipContext.Provider\n value={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n >\n <Portal>{tooltip}</Portal>\n </TooltipContext.Provider>\n )}\n </DisplayTransition>\n </>\n );\n }\n\n // Legacy element/string trigger pattern\n if (!activeWrap && typeof trigger === 'string') {\n console.warn(\n 'CubeUIKit: Tooltips are only supported on elements that are both focusable and hoverable. To solve this issue you can: 1) Use active element as a trigger (`Button`, `Link`, etc); 2) Use function-as-first-child pattern to manually apply trigger props; 3) Use `ActiveZone` component to manually wrap the content.',\n );\n\n return <Block>{trigger}</Block>;\n }\n\n function onClick(e) {\n e?.currentTarget?.parentNode.click();\n }\n\n const triggerContent = (\n <>\n {activeWrap ? (\n <ActiveZone onClick={onClick}>{trigger}</ActiveZone>\n ) : (\n trigger\n )}\n <DisplayTransition isShown={state.isOpen && !isDisabled}>\n {({ phase, isShown, ref: transitionRef }) => (\n <TooltipContext.Provider\n value={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n >\n <Portal>{tooltip}</Portal>\n </TooltipContext.Provider>\n )}\n </DisplayTransition>\n </>\n );\n\n if (disableFocusableProvider) {\n return triggerContent;\n }\n\n return (\n <FocusableProvider {...triggerProps} ref={tooltipTriggerRef}>\n {triggerContent}\n </FocusableProvider>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import React from "react";
3
3
 
4
4
  //#region src/components/overlays/Tooltip/context.ts
@@ -0,0 +1,16 @@
1
+
2
+ import { HTMLAttributes } from "react";
3
+
4
+ //#region src/components/overlays/Tooltip/split-trigger-props.d.ts
5
+ /**
6
+ * The tooltip trigger props that only work on the element that takes focus.
7
+ * React Aria's `useFocus` ignores focus that bubbles up from a child, so on a
8
+ * wrapper around a native input — a radio's or a checkbox's `<label>` — the
9
+ * tooltip never opened from the keyboard, and `aria-describedby` described the
10
+ * wrapper instead of the control a screen reader announces.
11
+ */
12
+ declare const FOCUS_TRIGGER_PROPS: readonly ["onFocus", "onBlur", "onKeyDown", "onKeyUp", "aria-describedby"];
13
+ type TooltipFocusProps = Pick<HTMLAttributes<HTMLElement>, (typeof FOCUS_TRIGGER_PROPS)[number]>;
14
+ //#endregion
15
+ export { TooltipFocusProps };
16
+ //# sourceMappingURL=split-trigger-props.d.ts.map
@@ -0,0 +1,54 @@
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
+ import { mergeProps } from "../../../utils/react/mergeProps.js";
3
+
4
+ //#region src/components/overlays/Tooltip/split-trigger-props.ts
5
+ /**
6
+ * The tooltip trigger props that only work on the element that takes focus.
7
+ * React Aria's `useFocus` ignores focus that bubbles up from a child, so on a
8
+ * wrapper around a native input — a radio's or a checkbox's `<label>` — the
9
+ * tooltip never opened from the keyboard, and `aria-describedby` described the
10
+ * wrapper instead of the control a screen reader announces.
11
+ */
12
+ const FOCUS_TRIGGER_PROPS = [
13
+ "onFocus",
14
+ "onBlur",
15
+ "onKeyDown",
16
+ "onKeyUp",
17
+ "aria-describedby"
18
+ ];
19
+ /**
20
+ * Splits a tooltip's trigger props between the element it is positioned
21
+ * against and hovered on (`pointerProps`) and the focusable element inside it
22
+ * (`focusProps`).
23
+ */
24
+ function splitTooltipTriggerProps(triggerProps = {}) {
25
+ const pointerProps = { ...triggerProps };
26
+ const focusProps = {};
27
+ for (const key of FOCUS_TRIGGER_PROPS) if (key in pointerProps) {
28
+ focusProps[key] = pointerProps[key];
29
+ delete pointerProps[key];
30
+ }
31
+ return {
32
+ pointerProps,
33
+ focusProps
34
+ };
35
+ }
36
+ /**
37
+ * Adds a tooltip's focus-side trigger props to a focusable element's own:
38
+ * handlers are chained, and the tooltip joins any description the element
39
+ * already has rather than replacing it. `tabIndex` is never touched — a radio
40
+ * group's roving tab index owns it.
41
+ */
42
+ function mergeTooltipFocusProps(props, tooltipProps) {
43
+ if (!tooltipProps) return props;
44
+ const { "aria-describedby": tooltipDescribedBy, ...handlers } = tooltipProps;
45
+ const ownDescribedBy = props["aria-describedby"];
46
+ return {
47
+ ...mergeProps(props, handlers),
48
+ "aria-describedby": [ownDescribedBy, tooltipDescribedBy].filter(Boolean).join(" ") || void 0
49
+ };
50
+ }
51
+
52
+ //#endregion
53
+ export { mergeTooltipFocusProps, splitTooltipTriggerProps };
54
+ //# sourceMappingURL=split-trigger-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"split-trigger-props.js","names":["mergeProps","HTMLAttributes","FOCUS_TRIGGER_PROPS","const","TooltipFocusProps","Pick","HTMLElement","splitTooltipTriggerProps","triggerProps","pointerProps","focusProps","key","Record","mergeTooltipFocusProps","props","P","tooltipProps","tooltipDescribedBy","handlers","ownDescribedBy","filter","Boolean","join","undefined"],"sources":["../../../../src/components/overlays/Tooltip/split-trigger-props.ts"],"sourcesContent":["import { mergeProps } from '../../../utils/react/mergeProps';\n\nimport type { HTMLAttributes } from 'react';\n\n/**\n * The tooltip trigger props that only work on the element that takes focus.\n * React Aria's `useFocus` ignores focus that bubbles up from a child, so on a\n * wrapper around a native input — a radio's or a checkbox's `<label>` — the\n * tooltip never opened from the keyboard, and `aria-describedby` described the\n * wrapper instead of the control a screen reader announces.\n */\nconst FOCUS_TRIGGER_PROPS = [\n 'onFocus',\n 'onBlur',\n 'onKeyDown',\n 'onKeyUp',\n 'aria-describedby',\n] as const;\n\nexport type TooltipFocusProps = Pick<\n HTMLAttributes<HTMLElement>,\n (typeof FOCUS_TRIGGER_PROPS)[number]\n>;\n\n/**\n * Splits a tooltip's trigger props between the element it is positioned\n * against and hovered on (`pointerProps`) and the focusable element inside it\n * (`focusProps`).\n */\nexport function splitTooltipTriggerProps(\n triggerProps: HTMLAttributes<HTMLElement> = {},\n) {\n const pointerProps: HTMLAttributes<HTMLElement> = { ...triggerProps };\n const focusProps: TooltipFocusProps = {};\n\n for (const key of FOCUS_TRIGGER_PROPS) {\n if (key in pointerProps) {\n (focusProps as Record<string, unknown>)[key] = pointerProps[key];\n delete pointerProps[key];\n }\n }\n\n return { pointerProps, focusProps };\n}\n\n/**\n * Adds a tooltip's focus-side trigger props to a focusable element's own:\n * handlers are chained, and the tooltip joins any description the element\n * already has rather than replacing it. `tabIndex` is never touched — a radio\n * group's roving tab index owns it.\n */\nexport function mergeTooltipFocusProps<P extends object>(\n props: P,\n tooltipProps?: TooltipFocusProps,\n): P {\n if (!tooltipProps) return props;\n\n const { 'aria-describedby': tooltipDescribedBy, ...handlers } = tooltipProps;\n const ownDescribedBy = (props as { 'aria-describedby'?: string })[\n 'aria-describedby'\n ];\n\n return {\n ...mergeProps(props, handlers),\n 'aria-describedby':\n [ownDescribedBy, tooltipDescribedBy].filter(Boolean).join(' ') ||\n undefined,\n } as P;\n}\n"],"mappings":";;;;;;;;;;;AAWA,MAAME,sBAAsB;CAC1B;CACA;CACA;CACA;CACA;CACD;;;;;;AAYD,SAAgBK,yBACdC,eAA4C,EAAE,EAC9C;CACA,MAAMC,eAA4C,EAAE,GAAGD,cAAc;CACrE,MAAME,aAAgC,EAAE;AAExC,MAAK,MAAMC,OAAOT,oBAChB,KAAIS,OAAOF,cAAc;AACvB,EAACC,WAAuCC,OAAOF,aAAaE;AAC5D,SAAOF,aAAaE;;AAIxB,QAAO;EAAEF;EAAcC;EAAY;;;;;;;;AASrC,SAAgBG,uBACdC,OACAE,cACG;AACH,KAAI,CAACA,aAAc,QAAOF;CAE1B,MAAM,EAAE,oBAAoBG,oBAAoB,GAAGC,aAAaF;CAChE,MAAMG,iBAAkBL,MACtB;AAGF,QAAO;EACL,GAAGd,WAAWc,OAAOI,SAAS;EAC9B,oBACE,CAACC,gBAAgBF,mBAAmB,CAACG,OAAOC,QAAQ,CAACC,KAAK,IAAI,IAC9DC;EACH"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { usePortal } from "./usePortal.js";
3
3
  import { c } from "react-compiler-runtime";
4
4
  import { TastyBatchProvider } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { c } from "react-compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { usePortalContext } from "./PortalProvider.js";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import invariant from "tiny-invariant";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useCallback, useEffect, useMemo, useRef } from "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { WarningIcon } from "../../icons/WarningIcon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { CheckIcon } from "../../icons/CheckIcon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { Block } from "../../Block.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { c } from "react-compiler-runtime";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { memo } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { Cube } from "./Cube.js";
3
3
  import { SpinsContainer } from "./SpinsContainer.js";
4
4
  import { c } from "react-compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { Block } from "../../Block.js";
3
3
  import { InternalSpinner } from "./InternalSpinner.js";
4
4
  import { c } from "react-compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { c } from "react-compiler-runtime";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/data/item-themes.ts
3
3
  const VALIDATION_STYLES = { border: {
4
4
  invalid: "#danger-accent-text",
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/data/themes.ts
3
3
  var themes_default = {
4
4
  special: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/eslint-plugin/defaults.generated.ts
3
3
  const DEFAULTS = {
4
4
  components: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { DEFAULTS } from "./defaults.generated.js";
3
3
  import { createRule, noRedundantDefaultProp } from "./rules/no-redundant-default-prop.js";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { DEFAULTS } from "../defaults.generated.js";
3
3
 
4
4
  //#region src/eslint-plugin/rules/no-redundant-default-prop.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { UIKIT_I18N_NAMESPACE, getI18n } from "./instance.js";
3
3
  import { c } from "react-compiler-runtime";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/createFormatter.ts
3
3
  const cache = /* @__PURE__ */ new Map();
4
4
  function getIntl(kind, Ctor, locale, options) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { LOCALE_LABELS, SUPPORTED_LOCALES, isSupportedLocale } from "./locales.js";
3
3
  import { UIKIT_I18N_NAMESPACE, createUIKitI18n, getI18n } from "./instance.js";
4
4
  import { useI18n } from "./useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  import { SUPPORTED_LOCALES } from "./locales.js";
3
3
  import uikit_default from "./locales/de-DE/uikit.js";
4
4
  import uikit_default$1 from "./locales/en-US/uikit.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/de-DE/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/en-US/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/es-ES/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/es-MX/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/fr-FR/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/it-IT/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/ja-JP/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/nb-NO/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/pt-BR/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ac46c4b | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-9bde021 | Cube Dev Team */
2
2
  //#region src/i18n/locales/pt-PT/uikit.json
3
3
  var uikit_default = {
4
4
  alertDialog: {