@cube-dev/ui-kit 0.183.0 → 0.185.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (681) hide show
  1. package/README.md +1 -1
  2. package/dist/CHANGELOG.md +64 -0
  3. package/dist/README.md +1 -1
  4. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  5. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/dist/_internal/hooks/use-event.js +1 -1
  7. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  8. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  9. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  10. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  11. package/dist/_internal/hooks/use-warn.js +1 -1
  12. package/dist/components/Block.js +1 -1
  13. package/dist/components/CollectionItem.js +1 -1
  14. package/dist/components/GlobalStyles.js +19 -18
  15. package/dist/components/GlobalStyles.js.map +1 -1
  16. package/dist/components/GridProvider.js +1 -1
  17. package/dist/components/HiddenInput.js +1 -1
  18. package/dist/components/Root.js +1 -1
  19. package/dist/components/actions/Action/Action.js +1 -1
  20. package/dist/components/actions/Banner/Banner.js +1 -1
  21. package/dist/components/actions/Button/Button.js +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.js +2 -1
  24. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  25. package/dist/components/actions/ButtonSplit/context.js +1 -1
  26. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -8
  27. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  28. package/dist/components/actions/CommandMenu/styled.js +1 -1
  29. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  30. package/dist/components/actions/ItemActionContext.js +1 -1
  31. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  32. package/dist/components/actions/ItemButton/ItemButton.js +3 -1
  33. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +1 -1
  36. package/dist/components/actions/Menu/Menu.js.map +1 -1
  37. package/dist/components/actions/Menu/MenuItem.js +19 -15
  38. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  39. package/dist/components/actions/Menu/MenuSection.js +1 -8
  40. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  41. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  42. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -7
  43. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  44. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  45. package/dist/components/actions/Menu/context.js +1 -1
  46. package/dist/components/actions/Menu/styled.js +1 -1
  47. package/dist/components/actions/actions-run.js +1 -1
  48. package/dist/components/actions/index.js +1 -1
  49. package/dist/components/actions/use-action.js +3 -5
  50. package/dist/components/actions/use-action.js.map +1 -1
  51. package/dist/components/actions/use-anchored-menu.js +1 -1
  52. package/dist/components/actions/use-context-menu.js +1 -1
  53. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  54. package/dist/components/content/Alert/Alert.js +1 -1
  55. package/dist/components/content/Alert/use-alert.js +1 -1
  56. package/dist/components/content/Avatar/Avatar.js +1 -1
  57. package/dist/components/content/Badge/Badge.js +1 -1
  58. package/dist/components/content/Card/Card.js +1 -1
  59. package/dist/components/content/Content.js +2 -1
  60. package/dist/components/content/Content.js.map +1 -1
  61. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  62. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  63. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  64. package/dist/components/content/Divider.js +1 -1
  65. package/dist/components/content/Footer.js +1 -1
  66. package/dist/components/content/Header.js +1 -1
  67. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  68. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  69. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  70. package/dist/components/content/Item/Item.d.ts +27 -2
  71. package/dist/components/content/Item/Item.js +242 -233
  72. package/dist/components/content/Item/Item.js.map +1 -1
  73. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  74. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  75. package/dist/components/content/Layout/GridLayout.js +1 -1
  76. package/dist/components/content/Layout/Layout.js +1 -1
  77. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  78. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  79. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  80. package/dist/components/content/Layout/LayoutContent.js +1 -1
  81. package/dist/components/content/Layout/LayoutContext.js +1 -1
  82. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  83. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  84. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  85. package/dist/components/content/Layout/LayoutHeader.js +123 -118
  86. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  87. package/dist/components/content/Layout/LayoutPane.js +1 -1
  88. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  89. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  90. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  91. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  92. package/dist/components/content/Layout/index.js +1 -1
  93. package/dist/components/content/Layout/utils.js +1 -1
  94. package/dist/components/content/Paragraph.js +1 -1
  95. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  96. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  97. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  98. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  99. package/dist/components/content/Result/Result.js +1 -1
  100. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  101. package/dist/components/content/Tag/Tag.d.ts +6 -1
  102. package/dist/components/content/Tag/Tag.js +1 -1
  103. package/dist/components/content/Tag/Tag.js.map +1 -1
  104. package/dist/components/content/Text.d.ts +14 -14
  105. package/dist/components/content/Text.js +1 -1
  106. package/dist/components/content/TextItem/TextItem.js +1 -1
  107. package/dist/components/content/Title.js +1 -1
  108. package/dist/components/content/Tree/Tree.js +1 -1
  109. package/dist/components/content/Tree/TreeNode.js +1 -1
  110. package/dist/components/content/Tree/styled.js +1 -1
  111. package/dist/components/content/Tree/tree-index.js +1 -1
  112. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  113. package/dist/components/content/Tree/use-load-data.js +1 -1
  114. package/dist/components/content/highlightText.js +1 -1
  115. package/dist/components/content/use-auto-tooltip.d.ts +1 -1
  116. package/dist/components/content/use-auto-tooltip.js +248 -128
  117. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  118. package/dist/components/data/DataTable/DataTable.js +1 -1
  119. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  120. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  121. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  122. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  123. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  124. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  125. package/dist/components/data/TableBase/RowCollection.js +1 -1
  126. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  127. package/dist/components/data/TableBase/TableRow.js +1 -1
  128. package/dist/components/data/TableBase/TableView.js +1 -1
  129. package/dist/components/data/TableBase/column-menu.js +1 -1
  130. package/dist/components/data/TableBase/column-tint.js +1 -1
  131. package/dist/components/data/TableBase/row-menu.js +1 -1
  132. package/dist/components/data/TableBase/styled.d.ts +1 -0
  133. package/dist/components/data/TableBase/styled.js +1 -1
  134. package/dist/components/data/TableBase/table-tree.js +1 -1
  135. package/dist/components/data/TableBase/types.js +1 -1
  136. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  137. package/dist/components/data/TableBase/use-column-order.js +1 -1
  138. package/dist/components/data/TableBase/use-container-width.js +1 -1
  139. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  140. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  141. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  142. package/dist/components/data/TableBase/use-table-search.js +1 -1
  143. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  144. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  145. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  146. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  147. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  148. package/dist/components/fields/Checkbox/Checkbox.d.ts +8 -0
  149. package/dist/components/fields/Checkbox/Checkbox.js +58 -39
  150. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  151. package/dist/components/fields/Checkbox/CheckboxGroup.js +2 -2
  152. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  153. package/dist/components/fields/Checkbox/context.js +1 -1
  154. package/dist/components/fields/ColorInput/ColorInput.d.ts +17 -1
  155. package/dist/components/fields/ColorInput/ColorInput.js +137 -134
  156. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  157. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +18 -2
  158. package/dist/components/fields/ColorPicker/ColorPicker.js +4 -3
  159. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  160. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  161. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  162. package/dist/components/fields/ComboBox/ComboBox.js +90 -43
  163. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  164. package/dist/components/fields/CommandTextArea/CommandTextArea.js +3 -2
  165. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  166. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  167. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  168. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  169. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  170. package/dist/components/fields/DatePicker/DatePicker.d.ts +17 -1
  171. package/dist/components/fields/DatePicker/DatePicker.js +81 -77
  172. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  173. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  174. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  175. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  176. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  177. package/dist/components/fields/DatePicker/DateRangePicker.d.ts +17 -2
  178. package/dist/components/fields/DatePicker/DateRangePicker.js +109 -105
  179. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  180. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +17 -2
  181. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +228 -220
  182. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  183. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  184. package/dist/components/fields/DatePicker/PeriodPicker.d.ts +17 -1
  185. package/dist/components/fields/DatePicker/PeriodPicker.js +89 -85
  186. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  187. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  188. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  189. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  190. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  191. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  192. package/dist/components/fields/DatePicker/period.js +1 -1
  193. package/dist/components/fields/DatePicker/props.js +1 -1
  194. package/dist/components/fields/DatePicker/utils.js +1 -1
  195. package/dist/components/fields/FileInput/FileInput.js +1 -1
  196. package/dist/components/fields/FilterListBox/FilterListBox.js +28 -18
  197. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  198. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +11 -2
  199. package/dist/components/fields/FilterPicker/FilterPicker.js +3 -2
  200. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  201. package/dist/components/fields/Input/Input.js +1 -1
  202. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  203. package/dist/components/fields/ListBox/ListBox.d.ts +2 -2
  204. package/dist/components/fields/ListBox/ListBox.js +1 -2
  205. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  206. package/dist/components/fields/ListBox/optionId.js +16 -0
  207. package/dist/components/fields/ListBox/optionId.js.map +1 -0
  208. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +120 -110
  209. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  210. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  211. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +44 -22
  212. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  213. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  214. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  215. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  216. package/dist/components/fields/Picker/Picker.d.ts +20 -3
  217. package/dist/components/fields/Picker/Picker.js +4 -3
  218. package/dist/components/fields/Picker/Picker.js.map +1 -1
  219. package/dist/components/fields/RadioGroup/Radio.d.ts +10 -2
  220. package/dist/components/fields/RadioGroup/Radio.js +215 -213
  221. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  222. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  223. package/dist/components/fields/RadioGroup/context.js +1 -1
  224. package/dist/components/fields/SearchComboBox/SearchComboBox.js +3 -2
  225. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  226. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  227. package/dist/components/fields/Select/Select.d.ts +24 -3
  228. package/dist/components/fields/Select/Select.js +8 -5
  229. package/dist/components/fields/Select/Select.js.map +1 -1
  230. package/dist/components/fields/Slider/Gradation.js +1 -1
  231. package/dist/components/fields/Slider/HueSlider.js +1 -1
  232. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  233. package/dist/components/fields/Slider/Slider.js +1 -1
  234. package/dist/components/fields/Slider/SliderBase.js +1 -1
  235. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  236. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  237. package/dist/components/fields/Slider/elements.js +1 -1
  238. package/dist/components/fields/Slider/index.js +1 -1
  239. package/dist/components/fields/Switch/Switch.js +1 -1
  240. package/dist/components/fields/TagInput/TagInput.d.ts +182 -0
  241. package/dist/components/fields/TagInput/TagInput.js +1856 -0
  242. package/dist/components/fields/TagInput/TagInput.js.map +1 -0
  243. package/dist/components/fields/TagInput/TagList.js +355 -0
  244. package/dist/components/fields/TagInput/TagList.js.map +1 -0
  245. package/dist/components/fields/TagInput/index.d.ts +2 -0
  246. package/dist/components/fields/TextArea/TextArea.js +1 -1
  247. package/dist/components/fields/TextInput/TextInput.js +1 -1
  248. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -0
  249. package/dist/components/fields/TextInput/TextInputBase.js +8 -6
  250. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  251. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  252. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  253. package/dist/components/fields/TriggerActions.js +1 -1
  254. package/dist/components/fields/color/ColorPanel.js +1 -1
  255. package/dist/components/fields/color/channels.js +1 -1
  256. package/dist/components/fields/color/color.js +1 -1
  257. package/dist/components/fields/color/context.js +1 -1
  258. package/dist/components/fields/index.d.ts +2 -0
  259. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +1 -1
  260. package/dist/components/form/FieldWrapper/FieldWrapper.js +23 -10
  261. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  262. package/dist/components/form/FieldWrapper/types.d.ts +1 -1
  263. package/dist/components/form/Form/Field.js +6 -4
  264. package/dist/components/form/Form/Field.js.map +1 -1
  265. package/dist/components/form/Form/Form.js +20 -5
  266. package/dist/components/form/Form/Form.js.map +1 -1
  267. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  268. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  269. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  270. package/dist/components/form/Form/SubmitError.js +1 -1
  271. package/dist/components/form/Form/backend.js +1 -1
  272. package/dist/components/form/Form/index.js +1 -1
  273. package/dist/components/form/Form/modern/actions.js +1 -1
  274. package/dist/components/form/Form/modern/context.js +1 -1
  275. package/dist/components/form/Form/modern/controller.js +1 -1
  276. package/dist/components/form/Form/modern/field-binding.js +1 -1
  277. package/dist/components/form/Form/modern/field.js +1 -1
  278. package/dist/components/form/Form/modern/react.js +1 -1
  279. package/dist/components/form/Form/modern/store.js +1 -1
  280. package/dist/components/form/Form/modern/validation.js +1 -1
  281. package/dist/components/form/Form/modern/values.js +1 -1
  282. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  284. package/dist/components/form/Form/use-field/use-field.js +1 -1
  285. package/dist/components/form/Form/use-form.js +1 -1
  286. package/dist/components/form/Form/validation.js +1 -1
  287. package/dist/components/form/Label.js +1 -1
  288. package/dist/components/form/legacy-tooltip.js +28 -0
  289. package/dist/components/form/legacy-tooltip.js.map +1 -0
  290. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  291. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  292. package/dist/components/form/validation/use-validation-props.js +1 -1
  293. package/dist/components/form/wrapper.js +5 -3
  294. package/dist/components/form/wrapper.js.map +1 -1
  295. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  296. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  297. package/dist/components/layout/Board/Board.js +1 -1
  298. package/dist/components/layout/Board/BoardProvider.js +1 -1
  299. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  300. package/dist/components/layout/Board/Widget.js +1 -1
  301. package/dist/components/layout/Board/WidgetHost.js +1 -1
  302. package/dist/components/layout/Board/board-context.js +1 -1
  303. package/dist/components/layout/Board/board-store.js +1 -1
  304. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  305. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  306. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  307. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  308. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  309. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  310. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  311. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  312. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  313. package/dist/components/layout/Board/index.js +1 -1
  314. package/dist/components/layout/Board/responsive-utils.js +1 -1
  315. package/dist/components/layout/Board/use-board-layout.js +1 -1
  316. package/dist/components/layout/Board/use-board-registry.js +1 -1
  317. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  318. package/dist/components/layout/Board/use-board-selection.js +1 -1
  319. package/dist/components/layout/Flex.js +1 -1
  320. package/dist/components/layout/Flow.js +1 -1
  321. package/dist/components/layout/Grid.js +1 -1
  322. package/dist/components/layout/Panel.js +1 -1
  323. package/dist/components/layout/Prefix.js +1 -1
  324. package/dist/components/layout/ResizablePanel.js +1 -1
  325. package/dist/components/layout/Space.js +1 -1
  326. package/dist/components/layout/Suffix.js +1 -1
  327. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  328. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  329. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  330. package/dist/components/navigation/Tabs/TabButton.js +131 -110
  331. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  332. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  333. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  334. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  335. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  336. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  337. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  338. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  339. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  340. package/dist/components/navigation/Tabs/styled.js +2 -2
  341. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  342. package/dist/components/navigation/Tabs/types.js +1 -1
  343. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  344. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  345. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  346. package/dist/components/other/Calendar/Calendar.js +1 -1
  347. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  348. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  349. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  350. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  351. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  352. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  353. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  354. package/dist/components/other/Calendar/styled.js +1 -1
  355. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  356. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  357. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  358. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  359. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  360. package/dist/components/overlays/Dialog/Dialog.js +18 -9
  361. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  362. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  363. package/dist/components/overlays/Dialog/DialogForm.js +6 -5
  364. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  365. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  366. package/dist/components/overlays/Dialog/ModernDialogForm.js +71 -64
  367. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  368. package/dist/components/overlays/Dialog/context.js +1 -1
  369. package/dist/components/overlays/Dialog/use-content-overflow.js +68 -0
  370. package/dist/components/overlays/Dialog/use-content-overflow.js.map +1 -0
  371. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  372. package/dist/components/overlays/Modal/Modal.js +1 -1
  373. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  374. package/dist/components/overlays/Modal/Overlay.js +1 -1
  375. package/dist/components/overlays/Modal/Popover.js +1 -1
  376. package/dist/components/overlays/Modal/Tray.js +1 -1
  377. package/dist/components/overlays/Modal/Underlay.js +1 -1
  378. package/dist/components/overlays/Notifications/Notification.js +1 -1
  379. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  380. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  381. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  382. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  383. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  384. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  385. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  386. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  387. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  388. package/dist/components/overlays/Notifications/index.js +1 -1
  389. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  390. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  391. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  392. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  393. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  394. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  395. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  396. package/dist/components/overlays/Toast/index.js +1 -1
  397. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  398. package/dist/components/overlays/Toast/useToast.js +1 -1
  399. package/dist/components/overlays/Tooltip/Tooltip.js +14 -12
  400. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  401. package/dist/components/overlays/Tooltip/TooltipProvider.d.ts +6 -0
  402. package/dist/components/overlays/Tooltip/TooltipProvider.js +43 -38
  403. package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
  404. package/dist/components/overlays/Tooltip/TooltipTrigger.js +72 -69
  405. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  406. package/dist/components/overlays/Tooltip/context.js +1 -1
  407. package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +16 -0
  408. package/dist/components/overlays/Tooltip/split-trigger-props.js +54 -0
  409. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -0
  410. package/dist/components/portal/Portal.js +1 -1
  411. package/dist/components/portal/PortalProvider.js +1 -1
  412. package/dist/components/portal/usePortal.js +1 -1
  413. package/dist/components/shared/DraggableCollection.js +1 -1
  414. package/dist/components/shared/InvalidIcon.js +1 -1
  415. package/dist/components/shared/ValidIcon.js +1 -1
  416. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  417. package/dist/components/status/Spin/Cube.js +1 -1
  418. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  419. package/dist/components/status/Spin/Spin.js +1 -1
  420. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  421. package/dist/data/item-themes.d.ts +1 -1
  422. package/dist/data/item-themes.js +7 -1
  423. package/dist/data/item-themes.js.map +1 -1
  424. package/dist/data/themes.js +1 -1
  425. package/dist/eslint-plugin/defaults.generated.js +47 -1
  426. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  427. package/dist/eslint-plugin/index.js +1 -1
  428. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  429. package/dist/i18n/I18nProvider.js +1 -1
  430. package/dist/i18n/createFormatter.js +1 -1
  431. package/dist/i18n/index.js +1 -1
  432. package/dist/i18n/instance.js +1 -1
  433. package/dist/i18n/locales/de-DE/uikit.js +18 -1
  434. package/dist/i18n/locales/en-US/uikit.js +18 -1
  435. package/dist/i18n/locales/en-US/uikit.json.d.ts +22 -2
  436. package/dist/i18n/locales/es-ES/uikit.js +18 -1
  437. package/dist/i18n/locales/es-MX/uikit.js +18 -1
  438. package/dist/i18n/locales/fr-FR/uikit.js +18 -1
  439. package/dist/i18n/locales/it-IT/uikit.js +18 -1
  440. package/dist/i18n/locales/ja-JP/uikit.js +18 -1
  441. package/dist/i18n/locales/nb-NO/uikit.js +18 -1
  442. package/dist/i18n/locales/pt-BR/uikit.js +18 -1
  443. package/dist/i18n/locales/pt-PT/uikit.js +18 -1
  444. package/dist/i18n/locales/sv-SE/uikit.js +18 -1
  445. package/dist/i18n/locales/vi-VN/uikit.js +18 -1
  446. package/dist/i18n/locales.js +1 -1
  447. package/dist/i18n/useFormatter.js +1 -1
  448. package/dist/i18n/useI18n.js +1 -1
  449. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  450. package/dist/icons/AdjustmentsIcon.js +1 -1
  451. package/dist/icons/AiIcon.js +1 -1
  452. package/dist/icons/AreaChartIcon.js +1 -1
  453. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  454. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  455. package/dist/icons/BackwardIcon.js +1 -1
  456. package/dist/icons/BarChartIcon.js +1 -1
  457. package/dist/icons/BellFilledIcon.js +1 -1
  458. package/dist/icons/BellIcon.js +1 -1
  459. package/dist/icons/BooleanIcon.js +1 -1
  460. package/dist/icons/CalendarEditIcon.js +1 -1
  461. package/dist/icons/CalendarIcon.js +1 -1
  462. package/dist/icons/CaretDownIcon.js +1 -1
  463. package/dist/icons/CaretUpIcon.js +1 -1
  464. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  465. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  466. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  467. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  468. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  469. package/dist/icons/ChartBarLineIcon.js +1 -1
  470. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  471. package/dist/icons/ChartBarStackedIcon.js +1 -1
  472. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  473. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  474. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  475. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  476. package/dist/icons/ChartBubbleIcon.js +1 -1
  477. package/dist/icons/ChartDonut2Icon.js +1 -1
  478. package/dist/icons/ChartFunnelIcon.js +1 -1
  479. package/dist/icons/ChartHeatmapIcon.js +1 -1
  480. package/dist/icons/ChartKPIIcon.js +1 -1
  481. package/dist/icons/ChartPie2Icon.js +1 -1
  482. package/dist/icons/ChartScatterIcon.js +1 -1
  483. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  484. package/dist/icons/CheckCircleIcon.js +1 -1
  485. package/dist/icons/CheckIcon.js +1 -1
  486. package/dist/icons/CircleFilledIcon.js +1 -1
  487. package/dist/icons/ClearIcon.js +1 -1
  488. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  489. package/dist/icons/CloseCircleIcon.js +1 -1
  490. package/dist/icons/CloseIcon.js +1 -1
  491. package/dist/icons/CodeIcon.js +1 -1
  492. package/dist/icons/ColumnTotalIcon.js +1 -1
  493. package/dist/icons/CopyIcon.js +1 -1
  494. package/dist/icons/CountIcon.js +1 -1
  495. package/dist/icons/CubeIcon.js +1 -1
  496. package/dist/icons/CubePauseIcon.js +1 -1
  497. package/dist/icons/CubePlayIcon.js +1 -1
  498. package/dist/icons/CurrencyDollarIcon.js +1 -1
  499. package/dist/icons/DangerIcon.js +1 -1
  500. package/dist/icons/DashboardIcon.js +1 -1
  501. package/dist/icons/DatabaseIcon.js +1 -1
  502. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  503. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  504. package/dist/icons/DirectionIcon.js +1 -1
  505. package/dist/icons/DonutIcon.js +1 -1
  506. package/dist/icons/DownIcon.js +1 -1
  507. package/dist/icons/EditIcon.js +1 -1
  508. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  509. package/dist/icons/ExclamationCircleIcon.js +1 -1
  510. package/dist/icons/ExclamationIcon.js +1 -1
  511. package/dist/icons/EyeIcon.js +1 -1
  512. package/dist/icons/EyeInvisibleIcon.js +1 -1
  513. package/dist/icons/FilterIcon.js +1 -1
  514. package/dist/icons/FolderFilledIcon.js +1 -1
  515. package/dist/icons/FolderIcon.js +1 -1
  516. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  517. package/dist/icons/FolderOpenIcon.js +1 -1
  518. package/dist/icons/ForwardIcon.js +1 -1
  519. package/dist/icons/GripVerticalIcon.js +1 -1
  520. package/dist/icons/HierarchyIcon.js +1 -1
  521. package/dist/icons/HierarchyOpenIcon.js +1 -1
  522. package/dist/icons/Icon.js +1 -1
  523. package/dist/icons/InfoCircleIcon.js +1 -1
  524. package/dist/icons/InfoIcon.js +1 -1
  525. package/dist/icons/KeyIcon.js +1 -1
  526. package/dist/icons/LeftIcon.js +1 -1
  527. package/dist/icons/LineChartIcon.js +1 -1
  528. package/dist/icons/LoadingIcon.js +1 -1
  529. package/dist/icons/LockFilledIcon.js +1 -1
  530. package/dist/icons/LockIcon.js +1 -1
  531. package/dist/icons/MoreIcon.js +1 -1
  532. package/dist/icons/NotAllowedIcon.js +1 -1
  533. package/dist/icons/Number123Icon.js +1 -1
  534. package/dist/icons/NumberIcon.js +1 -1
  535. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  536. package/dist/icons/PauseCircleIcon.js +1 -1
  537. package/dist/icons/PauseIcon.js +1 -1
  538. package/dist/icons/PercentageIcon.js +1 -1
  539. package/dist/icons/PieChartIcon.js +1 -1
  540. package/dist/icons/PipetteIcon.js +1 -1
  541. package/dist/icons/PlayCircleIcon.js +1 -1
  542. package/dist/icons/PlayIcon.js +1 -1
  543. package/dist/icons/PlusIcon.js +1 -1
  544. package/dist/icons/ProgressBarIcon.js +1 -1
  545. package/dist/icons/ReloadIcon.js +1 -1
  546. package/dist/icons/ReportIcon.js +1 -1
  547. package/dist/icons/ReturnIcon.js +1 -1
  548. package/dist/icons/RightIcon.js +1 -1
  549. package/dist/icons/RowTotalsIcon.js +1 -1
  550. package/dist/icons/SchemeIcon.js +1 -1
  551. package/dist/icons/SearchIcon.js +1 -1
  552. package/dist/icons/SemanticQueryIcon.js +1 -1
  553. package/dist/icons/SettingsIcon.js +1 -1
  554. package/dist/icons/ShieldFilledIcon.js +1 -1
  555. package/dist/icons/ShieldIcon.js +1 -1
  556. package/dist/icons/SlashIcon.js +1 -1
  557. package/dist/icons/SparklesIcon.js +1 -1
  558. package/dist/icons/SqlIcon.js +1 -1
  559. package/dist/icons/StatsIcon.js +1 -1
  560. package/dist/icons/StopIcon.js +1 -1
  561. package/dist/icons/StringIcon.js +1 -1
  562. package/dist/icons/SubtotalsIcon.js +1 -1
  563. package/dist/icons/SwitchIcon.js +1 -1
  564. package/dist/icons/TableIcon.js +1 -1
  565. package/dist/icons/ThumbsDownIcon.js +1 -1
  566. package/dist/icons/ThumbsUpIcon.js +1 -1
  567. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  568. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  569. package/dist/icons/ThunderboltIcon.js +1 -1
  570. package/dist/icons/TimeIcon.js +1 -1
  571. package/dist/icons/TrashIcon.js +1 -1
  572. package/dist/icons/UnlockIcon.js +1 -1
  573. package/dist/icons/UpIcon.js +1 -1
  574. package/dist/icons/UserGroupIcon.js +1 -1
  575. package/dist/icons/UserIcon.js +1 -1
  576. package/dist/icons/UserLockIcon.js +1 -1
  577. package/dist/icons/ViewIcon.js +1 -1
  578. package/dist/icons/WarningFilledIcon.js +1 -1
  579. package/dist/icons/WarningIcon.js +1 -1
  580. package/dist/icons/wrap-icon.js +1 -1
  581. package/dist/index.d.ts +2 -1
  582. package/dist/index.js +3 -2
  583. package/dist/index.js.map +1 -1
  584. package/dist/probe/canonicalize.js +1 -1
  585. package/dist/probe/css.js +1 -1
  586. package/dist/probe/index.js +1 -1
  587. package/dist/provider.js +1 -1
  588. package/dist/providers/TrackingProvider.js +1 -1
  589. package/dist/providers/navigationAdapter.default.js +1 -1
  590. package/dist/shared/form.d.ts +9 -2
  591. package/dist/tokens/all-tokens.js +1 -1
  592. package/dist/tokens/base.js +1 -1
  593. package/dist/tokens/color-seed.js +1 -1
  594. package/dist/tokens/color-theme.js +4 -5
  595. package/dist/tokens/color-theme.js.map +1 -1
  596. package/dist/tokens/colors.js +1 -1
  597. package/dist/tokens/layout.js +1 -1
  598. package/dist/tokens/lazy-styles.js +1 -1
  599. package/dist/tokens/legacy-color.js +1 -1
  600. package/dist/tokens/palette-config.d.ts +5 -0
  601. package/dist/tokens/palette-config.js +30 -7
  602. package/dist/tokens/palette-config.js.map +1 -1
  603. package/dist/tokens/palette.js +1 -1
  604. package/dist/tokens/resolve.js +1 -1
  605. package/dist/tokens/shadows.js +1 -1
  606. package/dist/tokens/sizes.js +1 -1
  607. package/dist/tokens/spacing.js +1 -1
  608. package/dist/tokens/typography.d.ts +1 -0
  609. package/dist/tokens/typography.js +10 -1
  610. package/dist/tokens/typography.js.map +1 -1
  611. package/dist/utils/ResizeSensor.js +1 -1
  612. package/dist/utils/colors.js +1 -1
  613. package/dist/utils/dotize.js +1 -1
  614. package/dist/utils/is-dev-env.js +1 -1
  615. package/dist/utils/modules.js +1 -1
  616. package/dist/utils/promise.js +1 -1
  617. package/dist/utils/raf.js +1 -1
  618. package/dist/utils/random.js +1 -1
  619. package/dist/utils/range.js +1 -1
  620. package/dist/utils/react/RenderCache.js +1 -1
  621. package/dist/utils/react/Slots.js +1 -1
  622. package/dist/utils/react/chain.js +1 -1
  623. package/dist/utils/react/disabledProps.js +1 -1
  624. package/dist/utils/react/escapePropagation.js +1 -1
  625. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  626. package/dist/utils/react/index.js +1 -1
  627. package/dist/utils/react/interactions.js +1 -1
  628. package/dist/utils/react/isTextOnly.js +1 -1
  629. package/dist/utils/react/mapProps.js +1 -1
  630. package/dist/utils/react/mergeProps.js +1 -1
  631. package/dist/utils/react/nullableValue.js +1 -1
  632. package/dist/utils/react/programmaticFocus.js +1 -1
  633. package/dist/utils/react/resolveIcon.js +1 -1
  634. package/dist/utils/react/sharedStore.js +1 -1
  635. package/dist/utils/react/useBufferedValue.js +1 -1
  636. package/dist/utils/react/useCombinedRefs.js +1 -1
  637. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  638. package/dist/utils/react/useEventBus.js +1 -1
  639. package/dist/utils/react/useId.js +1 -1
  640. package/dist/utils/react/useIsDarwin.js +1 -1
  641. package/dist/utils/react/useKeySymbols.js +1 -1
  642. package/dist/utils/react/useLayoutEffect.js +1 -1
  643. package/dist/utils/react/useLocalStorage.js +1 -1
  644. package/dist/utils/react/useMergeStyles.js +1 -1
  645. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  646. package/dist/utils/react/usePopoverSync.js +1 -1
  647. package/dist/utils/react/useQaProps.js +1 -1
  648. package/dist/utils/react/useScheme.js +1 -1
  649. package/dist/utils/react/useViewportSize.js +1 -1
  650. package/dist/utils/react/wrapNodeIfPlain.js +3 -4
  651. package/dist/utils/react/wrapNodeIfPlain.js.map +1 -1
  652. package/dist/utils/selection.js +1 -1
  653. package/dist/utils/styles.js +1 -1
  654. package/dist/utils/tree.js +1 -1
  655. package/dist/utils/warnings.js +1 -1
  656. package/dist/version.js +2 -2
  657. package/docs/FieldProperties.md +2 -2
  658. package/docs/Usage.md +10 -9
  659. package/docs/components/actions/ButtonSplit.md +2 -0
  660. package/docs/components/actions/ItemButton.md +2 -2
  661. package/docs/components/content/InfoBadge.md +1 -1
  662. package/docs/components/content/Layout.md +1 -1
  663. package/docs/components/content/Tag.md +10 -2
  664. package/docs/components/fields/Checkbox.md +11 -0
  665. package/docs/components/fields/ColorInput.md +2 -0
  666. package/docs/components/fields/ColorPicker.md +3 -1
  667. package/docs/components/fields/DatePicker.md +2 -0
  668. package/docs/components/fields/FilterPicker.md +3 -1
  669. package/docs/components/fields/PeriodPicker.md +2 -0
  670. package/docs/components/fields/Picker.md +3 -1
  671. package/docs/components/fields/RadioGroup.md +2 -2
  672. package/docs/components/fields/Select.md +5 -0
  673. package/docs/components/fields/TagInput.md +429 -0
  674. package/docs/components/form/Field.md +2 -2
  675. package/docs/components/form/Form.md +2 -0
  676. package/docs/components/navigation/Tabs.md +3 -3
  677. package/docs/components/overlays/Dialog.md +30 -3
  678. package/docs/components/overlays/DialogForm.md +1 -0
  679. package/docs/components/overlays/TooltipProvider.md +1 -0
  680. package/package.json +1 -1
  681. package/tasty.config.ts +2 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -102,7 +102,7 @@ const TooltipTipElement = tasty({ styles: {
102
102
  transition: "theme"
103
103
  } });
104
104
  function Tooltip(props, ref) {
105
- const $ = c(29);
105
+ const $ = c(30);
106
106
  let { ref: overlayRef, transitionRef, arrowProps, state, overlayProps, minOffset, minScale, isMaterial: isMaterialContext, isLight: isLightContext, phase, isShown, updatePosition, ...tooltipProviderProps } = useContext(TooltipContext);
107
107
  const defaultRef = useRef(null);
108
108
  const t0 = overlayRef ?? defaultRef;
@@ -178,11 +178,12 @@ function Tooltip(props, ref) {
178
178
  $[16] = t10;
179
179
  } else t10 = $[16];
180
180
  let t11;
181
- if ($[17] !== combinedRef || $[18] !== minOffset || $[19] !== minScale || $[20] !== mods || $[21] !== overlayProps || $[22] !== phase || $[23] !== placementDirection || $[24] !== props.children || $[25] !== styles || $[26] !== t10 || $[27] !== tooltipProps) {
181
+ if ($[17] !== combinedRef || $[18] !== minOffset || $[19] !== minScale || $[20] !== mods || $[21] !== otherProps.qa || $[22] !== overlayProps || $[23] !== phase || $[24] !== placementDirection || $[25] !== props.children || $[26] !== styles || $[27] !== t10 || $[28] !== tooltipProps) {
182
182
  t11 = /* @__PURE__ */ jsxs(TooltipElement, {
183
183
  ...tooltipProps,
184
184
  ...overlayProps,
185
185
  ref: combinedRef,
186
+ qa: otherProps.qa,
186
187
  styles,
187
188
  mods,
188
189
  "data-min-offset": minOffset,
@@ -195,15 +196,16 @@ function Tooltip(props, ref) {
195
196
  $[18] = minOffset;
196
197
  $[19] = minScale;
197
198
  $[20] = mods;
198
- $[21] = overlayProps;
199
- $[22] = phase;
200
- $[23] = placementDirection;
201
- $[24] = props.children;
202
- $[25] = styles;
203
- $[26] = t10;
204
- $[27] = tooltipProps;
205
- $[28] = t11;
206
- } else t11 = $[28];
199
+ $[21] = otherProps.qa;
200
+ $[22] = overlayProps;
201
+ $[23] = phase;
202
+ $[24] = placementDirection;
203
+ $[25] = props.children;
204
+ $[26] = styles;
205
+ $[27] = t10;
206
+ $[28] = tooltipProps;
207
+ $[29] = t11;
208
+ } else t11 = $[29];
207
209
  return t11;
208
210
  }
209
211
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","names":["createDOMRef","DOMRefValue","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","ForwardedRef","forwardRef","useContext","useImperativeHandle","useMemo","useRef","AriaTooltipProps","useTooltip","PlacementAxis","mergeProps","mergeRefs","useLayoutEffect","extractStyles","TooltipContext","TooltipElement","styles","display","fill","light","color","width","radius","padding","preset","backdropFilter","whiteSpace","overflowWrap","pointerEvents","material","filter","transition","translate","transformOrigin","scale","opacity","TooltipTipElement","position","height","border","borderTop","borderBottom","top","left","right","bottom","transform","CubeTooltipProps","tipStyles","showIcon","placement","isMaterial","isOpen","isLight","onOpenChange","defaultOpen","shouldFlip","Tooltip","props","ref","$","_c","overlayRef","transitionRef","arrowProps","state","overlayProps","minOffset","minScale","isMaterialContext","isLightContext","phase","isShown","updatePosition","tooltipProviderProps","defaultRef","t0","t1","combinedRef","finalOverlayRef","t2","t3","t4","otherProps","undefined","tooltipProps","isDismissable","t5","String","placementDirection","split","t6","t7","open","mods","t8","t9","Symbol","for","t10","t11","children","_Tooltip","displayName"],"sources":["../../../../src/components/overlays/Tooltip/Tooltip.tsx"],"sourcesContent":["import { createDOMRef } from '@react-spectrum/utils';\nimport { DOMRefValue } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n ForwardedRef,\n forwardRef,\n useContext,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react';\nimport { AriaTooltipProps, useTooltip } from 'react-aria';\n\nimport { PlacementAxis } from '../../../shared';\nimport { mergeProps, mergeRefs, useLayoutEffect } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\n\nimport { TooltipContext } from './context';\n\nexport type { AriaTooltipProps };\n\nconst TooltipElement = tasty({\n styles: {\n display: 'block',\n // The DEFAULT (dark) tooltip is intentionally scheme-invariant:\n // `#surface-inverse.85` + `#white` keep it the \"always dark\" tooltip in\n // light, dark, and high-contrast schemes — matching the legacy `#dark.85`\n // + `#white` design.\n //\n // The `light` variant uses the adaptive surface tokens (`#surface` +\n // `#surface-text-soft`) so it follows the page scheme. This restores the\n // softer legacy `#dark-02` look in light mode (cr≈9.2) and stays AA-safe\n // in dark mode (the previous fixed `#surface-inverse` was much darker\n // than the legacy `#dark-02`, and pairing the fixed `#white` fill with\n // the adaptive `#surface-text-soft` text — the LEGACY_ALIASES port of\n // `#dark-02` — would collapse to cr≈1.8 in dark schemes; using `#surface`\n // for the fill keeps both ends of the pair adapting together).\n fill: {\n '': '#surface-inverse.85',\n light: '#surface',\n },\n color: {\n '': '#white',\n light: '#surface-text-soft',\n },\n width: 'initial min(36x, (100dvw - 4x)) max-content',\n radius: true,\n padding: '.75x 1x',\n preset: 't4',\n backdropFilter: 'blur(.5x)',\n whiteSpace: 'pre-line',\n // The tooltip is width-capped (`min(36x, …)`) with `max-width: max-content`,\n // so a run with no spaces — a URL, a token, an identifier, an error string —\n // stays on one line and spills straight out of the bubble. `anywhere` breaks\n // it at the cap instead. It inherits, so tooltip children wrap too.\n overflowWrap: 'anywhere',\n pointerEvents: {\n '': 'none',\n material: 'auto',\n },\n filter: {\n '': false,\n light: 'drop-shadow(0 0 1px #surface-text-soft.2)',\n },\n transition:\n 'translate $transition ease-out, scale $transition ease-out, theme $transition ease-out',\n translate: {\n '': '0 0',\n 'open & [data-placement=\"top\"]': '0 0',\n '!open & [data-placement=\"top\"]': '0 1x',\n 'open & [data-placement=\"bottom\"]': '0 0',\n '!open & [data-placement=\"bottom\"]': '0 -1x',\n 'open & [data-placement=\"left\"]': '0 0',\n '!open & [data-placement=\"left\"]': '1x 0',\n 'open & [data-placement=\"right\"]': '0 0',\n '!open & [data-placement=\"right\"]': '-1x 0',\n },\n transformOrigin: {\n '': 'top center',\n '[data-placement=\"top\"]': 'bottom center',\n '[data-placement=\"left\"]': 'right center',\n '[data-placement=\"right\"]': 'left center',\n },\n scale: {\n '': '1 1',\n '!open': '1 .8',\n '!open & ([data-placement=\"left\"] | [data-placement=\"right\"])': '.8 1',\n },\n opacity: {\n '': 1,\n '!open': 0.001,\n },\n },\n});\n\nconst TooltipTipElement = tasty({\n styles: {\n position: 'absolute',\n width: '1px',\n height: '1px',\n border: '.5x #clear',\n borderTop: {\n '': '.5x solid #surface-inverse.85',\n light: '.5x solid #surface',\n },\n borderBottom: '0',\n top: {\n '': 'initial',\n '[data-placement=\"left\"] | [data-placement=\"right\"]': '50%',\n '[data-placement=\"top\"]': '100%',\n },\n left: {\n '': 'initial',\n '[data-placement=\"top\"] | [data-placement=\"bottom\"]': '50%',\n '[data-placement=\"left\"]': '100%',\n },\n right: {\n '': 'initial',\n '[data-placement=\"right\"]': '100%',\n },\n bottom: {\n '': 'initial',\n '[data-placement=\"bottom\"]': '100%',\n },\n transform: {\n '': 'translate((-.375x - 1px), 0)',\n '[data-placement=\"bottom\"]':\n 'translate((-.375x - 1px), 0) rotate(180deg)',\n '[data-placement=\"left\"]': 'translate(-.25x, -.25x) rotate(270deg)',\n '[data-placement=\"right\"]': 'translate(.25x, -.25x) rotate(90deg)',\n },\n transition: 'theme',\n },\n});\n\nexport interface CubeTooltipProps\n extends BaseProps,\n ContainerStyleProps,\n AriaTooltipProps {\n tipStyles?: Styles;\n showIcon?: boolean;\n placement?: PlacementAxis;\n isMaterial?: boolean;\n isOpen?: boolean;\n isLight?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n shouldFlip?: boolean;\n}\n\nfunction Tooltip(\n props: CubeTooltipProps,\n ref: ForwardedRef<DOMRefValue<HTMLDivElement>>,\n) {\n let {\n ref: overlayRef,\n transitionRef,\n arrowProps,\n state,\n overlayProps,\n minOffset,\n minScale,\n isMaterial: isMaterialContext,\n isLight: isLightContext,\n phase,\n isShown,\n updatePosition,\n ...tooltipProviderProps\n } = useContext(TooltipContext);\n\n const defaultRef = useRef<HTMLDivElement>(null);\n const combinedRef = mergeRefs(transitionRef, overlayRef ?? defaultRef);\n const finalOverlayRef = overlayRef ?? defaultRef;\n\n props = mergeProps(props, tooltipProviderProps);\n\n let {\n placement = 'top',\n isOpen,\n tipStyles,\n showIcon,\n isMaterial = isMaterialContext,\n isLight = isLightContext,\n ...otherProps\n } = props;\n\n const styles = extractStyles(otherProps, CONTAINER_STYLES);\n\n let { tooltipProps } = useTooltip({ ...props, isDismissable: false }, state);\n\n // Sync ref with overlayRef from context.\n useImperativeHandle(ref, () => createDOMRef(finalOverlayRef));\n\n if (typeof minOffset === 'number') {\n minOffset = `${minOffset}px`;\n }\n\n if (typeof minScale === 'number') {\n minScale = String(minScale);\n }\n\n // Extract primary placement direction for consistent styling\n const placementDirection = placement?.split(' ')[0] || placement || 'top';\n\n const mods = useMemo(() => {\n return {\n material: isMaterial,\n light: isLight,\n open: isShown ?? isOpen,\n };\n }, [isMaterial, isShown, isOpen, isLight]);\n\n // Update position when tooltip becomes visible\n useLayoutEffect(() => {\n updatePosition?.();\n }, []);\n\n return (\n <TooltipElement\n {...tooltipProps}\n {...overlayProps}\n ref={combinedRef}\n styles={styles}\n mods={mods}\n data-min-offset={minOffset}\n data-min-scale={minScale}\n data-placement={placementDirection}\n data-phase={phase}\n >\n {props.children}\n <TooltipTipElement\n data-placement={placementDirection}\n styles={tipStyles}\n mods={mods}\n {...arrowProps}\n />\n </TooltipElement>\n );\n}\n\n/**\n * Display container for Tooltip content. Has a directional arrow dependent on its placement.\n */\nlet _Tooltip = forwardRef(Tooltip);\n\n_Tooltip.displayName = 'Tooltip';\n\nexport { _Tooltip as Tooltip };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tooltip.js","names":["createDOMRef","DOMRefValue","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","ForwardedRef","forwardRef","useContext","useImperativeHandle","useMemo","useRef","AriaTooltipProps","useTooltip","PlacementAxis","mergeProps","mergeRefs","useLayoutEffect","extractStyles","TooltipContext","TooltipElement","styles","display","fill","light","color","width","radius","padding","preset","backdropFilter","whiteSpace","overflowWrap","pointerEvents","material","filter","transition","translate","transformOrigin","scale","opacity","TooltipTipElement","position","height","border","borderTop","borderBottom","top","left","right","bottom","transform","CubeTooltipProps","tipStyles","showIcon","placement","isMaterial","isOpen","isLight","onOpenChange","defaultOpen","shouldFlip","Tooltip","props","ref","$","_c","overlayRef","transitionRef","arrowProps","state","overlayProps","minOffset","minScale","isMaterialContext","isLightContext","phase","isShown","updatePosition","tooltipProviderProps","defaultRef","t0","t1","combinedRef","finalOverlayRef","t2","t3","t4","otherProps","undefined","tooltipProps","isDismissable","t5","String","placementDirection","split","t6","t7","open","mods","t8","t9","Symbol","for","t10","t11","qa","children","_Tooltip","displayName"],"sources":["../../../../src/components/overlays/Tooltip/Tooltip.tsx"],"sourcesContent":["import { createDOMRef } from '@react-spectrum/utils';\nimport { DOMRefValue } from '@react-types/shared';\nimport {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n ForwardedRef,\n forwardRef,\n useContext,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react';\nimport { AriaTooltipProps, useTooltip } from 'react-aria';\n\nimport { PlacementAxis } from '../../../shared';\nimport { mergeProps, mergeRefs, useLayoutEffect } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\n\nimport { TooltipContext } from './context';\n\nexport type { AriaTooltipProps };\n\nconst TooltipElement = tasty({\n styles: {\n display: 'block',\n // The DEFAULT (dark) tooltip is intentionally scheme-invariant:\n // `#surface-inverse.85` + `#white` keep it the \"always dark\" tooltip in\n // light, dark, and high-contrast schemes — matching the legacy `#dark.85`\n // + `#white` design.\n //\n // The `light` variant uses the adaptive surface tokens (`#surface` +\n // `#surface-text-soft`) so it follows the page scheme. This restores the\n // softer legacy `#dark-02` look in light mode (cr≈9.2) and stays AA-safe\n // in dark mode (the previous fixed `#surface-inverse` was much darker\n // than the legacy `#dark-02`, and pairing the fixed `#white` fill with\n // the adaptive `#surface-text-soft` text — the LEGACY_ALIASES port of\n // `#dark-02` — would collapse to cr≈1.8 in dark schemes; using `#surface`\n // for the fill keeps both ends of the pair adapting together).\n fill: {\n '': '#surface-inverse.85',\n light: '#surface',\n },\n color: {\n '': '#white',\n light: '#surface-text-soft',\n },\n width: 'initial min(36x, (100dvw - 4x)) max-content',\n radius: true,\n padding: '.75x 1x',\n preset: 't4',\n backdropFilter: 'blur(.5x)',\n whiteSpace: 'pre-line',\n // The tooltip is width-capped (`min(36x, …)`) with `max-width: max-content`,\n // so a run with no spaces — a URL, a token, an identifier, an error string —\n // stays on one line and spills straight out of the bubble. `anywhere` breaks\n // it at the cap instead. It inherits, so tooltip children wrap too.\n overflowWrap: 'anywhere',\n pointerEvents: {\n '': 'none',\n material: 'auto',\n },\n filter: {\n '': false,\n light: 'drop-shadow(0 0 1px #surface-text-soft.2)',\n },\n transition:\n 'translate $transition ease-out, scale $transition ease-out, theme $transition ease-out',\n translate: {\n '': '0 0',\n 'open & [data-placement=\"top\"]': '0 0',\n '!open & [data-placement=\"top\"]': '0 1x',\n 'open & [data-placement=\"bottom\"]': '0 0',\n '!open & [data-placement=\"bottom\"]': '0 -1x',\n 'open & [data-placement=\"left\"]': '0 0',\n '!open & [data-placement=\"left\"]': '1x 0',\n 'open & [data-placement=\"right\"]': '0 0',\n '!open & [data-placement=\"right\"]': '-1x 0',\n },\n transformOrigin: {\n '': 'top center',\n '[data-placement=\"top\"]': 'bottom center',\n '[data-placement=\"left\"]': 'right center',\n '[data-placement=\"right\"]': 'left center',\n },\n scale: {\n '': '1 1',\n '!open': '1 .8',\n '!open & ([data-placement=\"left\"] | [data-placement=\"right\"])': '.8 1',\n },\n opacity: {\n '': 1,\n '!open': 0.001,\n },\n },\n});\n\nconst TooltipTipElement = tasty({\n styles: {\n position: 'absolute',\n width: '1px',\n height: '1px',\n border: '.5x #clear',\n borderTop: {\n '': '.5x solid #surface-inverse.85',\n light: '.5x solid #surface',\n },\n borderBottom: '0',\n top: {\n '': 'initial',\n '[data-placement=\"left\"] | [data-placement=\"right\"]': '50%',\n '[data-placement=\"top\"]': '100%',\n },\n left: {\n '': 'initial',\n '[data-placement=\"top\"] | [data-placement=\"bottom\"]': '50%',\n '[data-placement=\"left\"]': '100%',\n },\n right: {\n '': 'initial',\n '[data-placement=\"right\"]': '100%',\n },\n bottom: {\n '': 'initial',\n '[data-placement=\"bottom\"]': '100%',\n },\n transform: {\n '': 'translate((-.375x - 1px), 0)',\n '[data-placement=\"bottom\"]':\n 'translate((-.375x - 1px), 0) rotate(180deg)',\n '[data-placement=\"left\"]': 'translate(-.25x, -.25x) rotate(270deg)',\n '[data-placement=\"right\"]': 'translate(.25x, -.25x) rotate(90deg)',\n },\n transition: 'theme',\n },\n});\n\nexport interface CubeTooltipProps\n extends BaseProps,\n ContainerStyleProps,\n AriaTooltipProps {\n tipStyles?: Styles;\n showIcon?: boolean;\n placement?: PlacementAxis;\n isMaterial?: boolean;\n isOpen?: boolean;\n isLight?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n shouldFlip?: boolean;\n}\n\nfunction Tooltip(\n props: CubeTooltipProps,\n ref: ForwardedRef<DOMRefValue<HTMLDivElement>>,\n) {\n let {\n ref: overlayRef,\n transitionRef,\n arrowProps,\n state,\n overlayProps,\n minOffset,\n minScale,\n isMaterial: isMaterialContext,\n isLight: isLightContext,\n phase,\n isShown,\n updatePosition,\n ...tooltipProviderProps\n } = useContext(TooltipContext);\n\n const defaultRef = useRef<HTMLDivElement>(null);\n const combinedRef = mergeRefs(transitionRef, overlayRef ?? defaultRef);\n const finalOverlayRef = overlayRef ?? defaultRef;\n\n props = mergeProps(props, tooltipProviderProps);\n\n let {\n placement = 'top',\n isOpen,\n tipStyles,\n showIcon,\n isMaterial = isMaterialContext,\n isLight = isLightContext,\n ...otherProps\n } = props;\n\n const styles = extractStyles(otherProps, CONTAINER_STYLES);\n\n let { tooltipProps } = useTooltip({ ...props, isDismissable: false }, state);\n\n // Sync ref with overlayRef from context.\n useImperativeHandle(ref, () => createDOMRef(finalOverlayRef));\n\n if (typeof minOffset === 'number') {\n minOffset = `${minOffset}px`;\n }\n\n if (typeof minScale === 'number') {\n minScale = String(minScale);\n }\n\n // Extract primary placement direction for consistent styling\n const placementDirection = placement?.split(' ')[0] || placement || 'top';\n\n const mods = useMemo(() => {\n return {\n material: isMaterial,\n light: isLight,\n open: isShown ?? isOpen,\n };\n }, [isMaterial, isShown, isOpen, isLight]);\n\n // Update position when tooltip becomes visible\n useLayoutEffect(() => {\n updatePosition?.();\n }, []);\n\n return (\n <TooltipElement\n {...tooltipProps}\n {...overlayProps}\n ref={combinedRef}\n // `qa` is typed through `BaseProps` but nothing forwarded it, so a test\n // had no way to tell one control's tooltip from another's.\n qa={otherProps.qa}\n styles={styles}\n mods={mods}\n data-min-offset={minOffset}\n data-min-scale={minScale}\n data-placement={placementDirection}\n data-phase={phase}\n >\n {props.children}\n <TooltipTipElement\n data-placement={placementDirection}\n styles={tipStyles}\n mods={mods}\n {...arrowProps}\n />\n </TooltipElement>\n );\n}\n\n/**\n * Display container for Tooltip content. Has a directional arrow dependent on its placement.\n */\nlet _Tooltip = forwardRef(Tooltip);\n\n_Tooltip.displayName = 'Tooltip';\n\nexport { _Tooltip as Tooltip };\n"],"mappings":"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"}
@@ -10,6 +10,12 @@ interface CubeTooltipProviderProps extends Omit<CubeTooltipTriggerProps, 'childr
10
10
  title?: ReactNode;
11
11
  tooltipStyles?: Styles;
12
12
  width?: CubeTooltipProps['width'];
13
+ /**
14
+ * `data-qa` for the rendered tooltip, so a test can pick out this control's
15
+ * tooltip rather than whichever one is open. Also accepted in the `tooltip`
16
+ * object of components that build a provider from it.
17
+ */
18
+ qa?: string;
13
19
  }
14
20
  declare function TooltipProvider(props: CubeTooltipProviderProps): ReactElement;
15
21
  //#endregion
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import { _Tooltip } from "./Tooltip.js";
3
3
  import { TooltipTrigger } from "./TooltipTrigger.js";
4
4
  import { c } from "react-compiler-runtime";
@@ -8,83 +8,88 @@ import { useIsSSR } from "react-aria";
8
8
 
9
9
  //#region src/components/overlays/Tooltip/TooltipProvider.tsx
10
10
  function TooltipProvider(props) {
11
- const $ = c(26);
11
+ const $ = c(28);
12
12
  const isSSR = useIsSSR();
13
13
  let children;
14
14
  let isDisabled;
15
15
  let otherProps;
16
+ let qa;
16
17
  let title;
17
18
  let tooltipStyles;
18
19
  let width;
19
20
  if ($[0] !== props) {
20
- ({title, children, tooltipStyles, width, isDisabled, ...otherProps} = props);
21
+ ({title, children, tooltipStyles, width, qa, isDisabled, ...otherProps} = props);
21
22
  $[0] = props;
22
23
  $[1] = children;
23
24
  $[2] = isDisabled;
24
25
  $[3] = otherProps;
25
- $[4] = title;
26
- $[5] = tooltipStyles;
27
- $[6] = width;
26
+ $[4] = qa;
27
+ $[5] = title;
28
+ $[6] = tooltipStyles;
29
+ $[7] = width;
28
30
  } else {
29
31
  children = $[1];
30
32
  isDisabled = $[2];
31
33
  otherProps = $[3];
32
- title = $[4];
33
- tooltipStyles = $[5];
34
- width = $[6];
34
+ qa = $[4];
35
+ title = $[5];
36
+ tooltipStyles = $[6];
37
+ width = $[7];
35
38
  }
36
39
  const isFunction = typeof children === "function";
37
40
  if (isSSR) {
38
41
  let t0;
39
- if ($[7] !== children || $[8] !== isFunction) {
42
+ if ($[8] !== children || $[9] !== isFunction) {
40
43
  t0 = isFunction ? children({}, { current: null }) : children;
41
- $[7] = children;
42
- $[8] = isFunction;
43
- $[9] = t0;
44
- } else t0 = $[9];
44
+ $[8] = children;
45
+ $[9] = isFunction;
46
+ $[10] = t0;
47
+ } else t0 = $[10];
45
48
  let t1;
46
- if ($[10] !== t0) {
49
+ if ($[11] !== t0) {
47
50
  t1 = /* @__PURE__ */ jsx(Fragment$1, { children: t0 });
48
- $[10] = t0;
49
- $[11] = t1;
50
- } else t1 = $[11];
51
+ $[11] = t0;
52
+ $[12] = t1;
53
+ } else t1 = $[12];
51
54
  return t1;
52
55
  }
53
56
  let t0;
54
- if ($[12] !== children || $[13] !== isFunction) {
57
+ if ($[13] !== children || $[14] !== isFunction) {
55
58
  t0 = isFunction || isValidElement(children) || typeof children === "string" ? children : /* @__PURE__ */ jsx(Fragment$1, { children });
56
- $[12] = children;
57
- $[13] = isFunction;
58
- $[14] = t0;
59
- } else t0 = $[14];
59
+ $[13] = children;
60
+ $[14] = isFunction;
61
+ $[15] = t0;
62
+ } else t0 = $[15];
60
63
  let t1;
61
- if ($[15] !== isDisabled || $[16] !== title || $[17] !== tooltipStyles || $[18] !== width) {
64
+ if ($[16] !== isDisabled || $[17] !== qa || $[18] !== title || $[19] !== tooltipStyles || $[20] !== width) {
62
65
  t1 = isDisabled ? /* @__PURE__ */ jsx("div", {}) : /* @__PURE__ */ jsx(_Tooltip, {
63
66
  styles: tooltipStyles,
64
67
  ...width ? { width } : null,
68
+ ...qa ? { qa } : null,
65
69
  children: title
66
70
  });
67
- $[15] = isDisabled;
68
- $[16] = title;
69
- $[17] = tooltipStyles;
70
- $[18] = width;
71
- $[19] = t1;
72
- } else t1 = $[19];
71
+ $[16] = isDisabled;
72
+ $[17] = qa;
73
+ $[18] = title;
74
+ $[19] = tooltipStyles;
75
+ $[20] = width;
76
+ $[21] = t1;
77
+ } else t1 = $[21];
73
78
  let t2;
74
- if ($[20] !== isDisabled || $[21] !== isFunction || $[22] !== otherProps || $[23] !== t0 || $[24] !== t1) {
79
+ if ($[22] !== isDisabled || $[23] !== isFunction || $[24] !== otherProps || $[25] !== t0 || $[26] !== t1) {
75
80
  t2 = /* @__PURE__ */ jsxs(TooltipTrigger, {
76
81
  ...otherProps,
77
82
  isDisabled,
78
83
  disableFocusableProvider: isFunction,
79
84
  children: [t0, t1]
80
85
  });
81
- $[20] = isDisabled;
82
- $[21] = isFunction;
83
- $[22] = otherProps;
84
- $[23] = t0;
85
- $[24] = t1;
86
- $[25] = t2;
87
- } else t2 = $[25];
86
+ $[22] = isDisabled;
87
+ $[23] = isFunction;
88
+ $[24] = otherProps;
89
+ $[25] = t0;
90
+ $[26] = t1;
91
+ $[27] = t2;
92
+ } else t2 = $[27];
88
93
  return t2;
89
94
  }
90
95
 
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipProvider.js","names":["Styles","isValidElement","ReactElement","ReactNode","RefObject","useIsSSR","CubeTooltipProps","Tooltip","CubeTooltipTriggerProps","TooltipTrigger","TooltipTriggerFunction","CubeTooltipProviderProps","Omit","children","title","tooltipStyles","width","TooltipProvider","props","$","_c","isSSR","isDisabled","otherProps","isFunction","t0","current","HTMLElement","t1","t2"],"sources":["../../../../src/components/overlays/Tooltip/TooltipProvider.tsx"],"sourcesContent":["import { Styles } from '@tenphi/tasty';\nimport { isValidElement, ReactElement, ReactNode, RefObject } from 'react';\nimport { useIsSSR } from 'react-aria';\n\nimport { CubeTooltipProps, Tooltip } from './Tooltip';\nimport {\n CubeTooltipTriggerProps,\n TooltipTrigger,\n TooltipTriggerFunction,\n} from './TooltipTrigger';\n\nexport interface CubeTooltipProviderProps\n extends Omit<CubeTooltipTriggerProps, 'children'> {\n children: ReactNode | TooltipTriggerFunction;\n title?: ReactNode;\n tooltipStyles?: Styles;\n width?: CubeTooltipProps['width'];\n}\n\nexport function TooltipProvider(props: CubeTooltipProviderProps): ReactElement {\n const isSSR = useIsSSR();\n const { title, children, tooltipStyles, width, isDisabled, ...otherProps } =\n props;\n\n const isFunction = typeof children === 'function';\n\n // Render without the tooltip on the server, and while hydrating it.\n //\n // `useIsSSR` rather than a `rendered` state flipped from an effect: the\n // state version answered `false` on the first client render too, so every\n // client-rendered tree paid a second commit — and its trigger a remount —\n // one task after everything watching the mount had called it finished.\n if (isSSR) {\n return (\n <>\n {isFunction\n ? children({}, { current: null } as unknown as RefObject<HTMLElement>)\n : children}\n </>\n ) as ReactElement;\n }\n\n // Both patterns pass through to TooltipTrigger\n // The difference is whether we pass function or element as first child\n return (\n <TooltipTrigger\n {...otherProps}\n isDisabled={isDisabled}\n disableFocusableProvider={isFunction}\n >\n {isFunction ||\n isValidElement(children) ||\n typeof children === 'string' ? (\n children\n ) : (\n <>{children}</>\n )}\n {isDisabled ? (\n <div />\n ) : (\n <Tooltip styles={tooltipStyles} {...(width ? { width } : null)}>\n {title}\n </Tooltip>\n )}\n </TooltipTrigger>\n );\n}\n"],"mappings":";;;;;;;;;AAmBA,SAAOiB,gBAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAAC,QAAchB,UAAU;CAAC,IAAAQ;CAAA,IAAAS;CAAA,IAAAC;CAAA,IAAAT;CAAA,IAAAC;CAAA,IAAAC;AAAA,KAAAG,EAAA,OAAAD,OAAA;AACzB,GAAA,CAAAJ,OAAAD,UAAAE,eAAAC,OAAAM,eAAAC,cACEL;AAAMC,IAAA,KAAAD;AAAAC,IAAA,KAAAN;AAAAM,IAAA,KAAAG;AAAAH,IAAA,KAAAI;AAAAJ,IAAA,KAAAL;AAAAK,IAAA,KAAAJ;AAAAI,IAAA,KAAAH;QAAA;AAAAH,aAAAM,EAAA;AAAAG,eAAAH,EAAA;AAAAI,eAAAJ,EAAA;AAAAL,UAAAK,EAAA;AAAAJ,kBAAAI,EAAA;AAAAH,UAAAG,EAAA;;CAER,MAAAK,aAAmB,OAAOX,aAAa;AAQvC,KAAIQ,OAAK;EAAA,IAAAI;AAAA,MAAAN,EAAA,OAAAN,YAAAM,EAAA,OAAAK,YAAA;AAGFC,QAAAD,aACGX,SAAS,EAAE,EAAE,EAAAa,SAAW,MAAM,CACtB,GAFXb;AAEWM,KAAA,KAAAN;AAAAM,KAAA,KAAAK;AAAAL,KAAA,KAAAM;QAAAA,MAAAN,EAAA;EAAA,IAAAS;AAAA,MAAAT,EAAA,QAAAM,IAAA;AAHdG,QAAA,4CACGH,KAGA;AAAAN,KAAA,MAAAM;AAAAN,KAAA,MAAAS;QAAAA,MAAAT,EAAA;AAAA,SAJHS;;CAMH,IAAAH;AAAA,KAAAN,EAAA,QAAAN,YAAAM,EAAA,QAAAK,YAAA;AAUIC,OAAAD,cACDvB,eAAeY,SACa,IAA5B,OAAOA,aAAa,WAFnBA,WAAA,kCAKIA,WACJ;AAAAM,IAAA,MAAAN;AAAAM,IAAA,MAAAK;AAAAL,IAAA,MAAAM;OAAAA,MAAAN,EAAA;CAAA,IAAAS;AAAA,KAAAT,EAAA,QAAAG,cAAAH,EAAA,QAAAL,SAAAK,EAAA,QAAAJ,iBAAAI,EAAA,QAAAH,OAAA;AACAY,OAAAN,aACC,oBAAA,UAKD,GAHC,oBAAC;GAAgBP,QAAAA;GAAa,GAAOC,QAAA,EAAAA,OAAwB,GAAxB;aAClCF;IAEJ;AAAAK,IAAA,MAAAG;AAAAH,IAAA,MAAAL;AAAAK,IAAA,MAAAJ;AAAAI,IAAA,MAAAH;AAAAG,IAAA,MAAAS;OAAAA,MAAAT,EAAA;CAAA,IAAAU;AAAA,KAAAV,EAAA,QAAAG,cAAAH,EAAA,QAAAK,cAAAL,EAAA,QAAAI,cAAAJ,EAAA,QAAAM,MAAAN,EAAA,QAAAS,IAAA;AAlBHC,OAAA,qBAAC;GAAc,GACTN;GACQD;GACcE,0BAAAA;cAEzBC,IAOAG;IAOc;AAAAT,IAAA,MAAAG;AAAAH,IAAA,MAAAK;AAAAL,IAAA,MAAAI;AAAAJ,IAAA,MAAAM;AAAAN,IAAA,MAAAS;AAAAT,IAAA,MAAAU;OAAAA,MAAAV,EAAA;AAAA,QAnBjBU"}
1
+ {"version":3,"file":"TooltipProvider.js","names":["Styles","isValidElement","ReactElement","ReactNode","RefObject","useIsSSR","CubeTooltipProps","Tooltip","CubeTooltipTriggerProps","TooltipTrigger","TooltipTriggerFunction","CubeTooltipProviderProps","Omit","children","title","tooltipStyles","width","qa","TooltipProvider","props","$","_c","isSSR","isDisabled","otherProps","isFunction","t0","current","HTMLElement","t1","t2"],"sources":["../../../../src/components/overlays/Tooltip/TooltipProvider.tsx"],"sourcesContent":["import { Styles } from '@tenphi/tasty';\nimport { isValidElement, ReactElement, ReactNode, RefObject } from 'react';\nimport { useIsSSR } from 'react-aria';\n\nimport { CubeTooltipProps, Tooltip } from './Tooltip';\nimport {\n CubeTooltipTriggerProps,\n TooltipTrigger,\n TooltipTriggerFunction,\n} from './TooltipTrigger';\n\nexport interface CubeTooltipProviderProps\n extends Omit<CubeTooltipTriggerProps, 'children'> {\n children: ReactNode | TooltipTriggerFunction;\n title?: ReactNode;\n tooltipStyles?: Styles;\n width?: CubeTooltipProps['width'];\n /**\n * `data-qa` for the rendered tooltip, so a test can pick out this control's\n * tooltip rather than whichever one is open. Also accepted in the `tooltip`\n * object of components that build a provider from it.\n */\n qa?: string;\n}\n\nexport function TooltipProvider(props: CubeTooltipProviderProps): ReactElement {\n const isSSR = useIsSSR();\n const {\n title,\n children,\n tooltipStyles,\n width,\n qa,\n isDisabled,\n ...otherProps\n } = props;\n\n const isFunction = typeof children === 'function';\n\n // Render without the tooltip on the server, and while hydrating it.\n //\n // `useIsSSR` rather than a `rendered` state flipped from an effect: the\n // state version answered `false` on the first client render too, so every\n // client-rendered tree paid a second commit — and its trigger a remount —\n // one task after everything watching the mount had called it finished.\n if (isSSR) {\n return (\n <>\n {isFunction\n ? children({}, { current: null } as unknown as RefObject<HTMLElement>)\n : children}\n </>\n ) as ReactElement;\n }\n\n // Both patterns pass through to TooltipTrigger\n // The difference is whether we pass function or element as first child\n return (\n <TooltipTrigger\n {...otherProps}\n isDisabled={isDisabled}\n disableFocusableProvider={isFunction}\n >\n {isFunction ||\n isValidElement(children) ||\n typeof children === 'string' ? (\n children\n ) : (\n <>{children}</>\n )}\n {isDisabled ? (\n <div />\n ) : (\n <Tooltip\n styles={tooltipStyles}\n {...(width ? { width } : null)}\n {...(qa ? { qa } : null)}\n >\n {title}\n </Tooltip>\n )}\n </TooltipTrigger>\n );\n}\n"],"mappings":";;;;;;;;;AAyBA,SAAOkB,gBAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAAC,QAAcjB,UAAU;CAAC,IAAAQ;CAAA,IAAAU;CAAA,IAAAC;CAAA,IAAAP;CAAA,IAAAH;CAAA,IAAAC;CAAA,IAAAC;AAAA,KAAAI,EAAA,OAAAD,OAAA;AACzB,GAAA,CAAAL,OAAAD,UAAAE,eAAAC,OAAAC,IAAAM,eAAAC,cAQIL;AAAMC,IAAA,KAAAD;AAAAC,IAAA,KAAAP;AAAAO,IAAA,KAAAG;AAAAH,IAAA,KAAAI;AAAAJ,IAAA,KAAAH;AAAAG,IAAA,KAAAN;AAAAM,IAAA,KAAAL;AAAAK,IAAA,KAAAJ;QAAA;AAAAH,aAAAO,EAAA;AAAAG,eAAAH,EAAA;AAAAI,eAAAJ,EAAA;AAAAH,OAAAG,EAAA;AAAAN,UAAAM,EAAA;AAAAL,kBAAAK,EAAA;AAAAJ,UAAAI,EAAA;;CAEV,MAAAK,aAAmB,OAAOZ,aAAa;AAQvC,KAAIS,OAAK;EAAA,IAAAI;AAAA,MAAAN,EAAA,OAAAP,YAAAO,EAAA,OAAAK,YAAA;AAGFC,QAAAD,aACGZ,SAAS,EAAE,EAAE,EAAAc,SAAW,MAAM,CACtB,GAFXd;AAEWO,KAAA,KAAAP;AAAAO,KAAA,KAAAK;AAAAL,KAAA,MAAAM;QAAAA,MAAAN,EAAA;EAAA,IAAAS;AAAA,MAAAT,EAAA,QAAAM,IAAA;AAHdG,QAAA,4CACGH,KAGA;AAAAN,KAAA,MAAAM;AAAAN,KAAA,MAAAS;QAAAA,MAAAT,EAAA;AAAA,SAJHS;;CAMH,IAAAH;AAAA,KAAAN,EAAA,QAAAP,YAAAO,EAAA,QAAAK,YAAA;AAUIC,OAAAD,cACDxB,eAAeY,SACa,IAA5B,OAAOA,aAAa,WAFnBA,WAAA,kCAKIA,WACJ;AAAAO,IAAA,MAAAP;AAAAO,IAAA,MAAAK;AAAAL,IAAA,MAAAM;OAAAA,MAAAN,EAAA;CAAA,IAAAS;AAAA,KAAAT,EAAA,QAAAG,cAAAH,EAAA,QAAAH,MAAAG,EAAA,QAAAN,SAAAM,EAAA,QAAAL,iBAAAK,EAAA,QAAAJ,OAAA;AACAa,OAAAN,aACC,oBAAA,UASD,GAPC,oBAAC;GACSR,QAAAA;GAAa,GAChBC,QAAA,EAAAA,OAAwB,GAAxB;GAAwB,GACxBC,KAAA,EAAAA,IAAkB,GAAlB;aAEJH;IAEJ;AAAAM,IAAA,MAAAG;AAAAH,IAAA,MAAAH;AAAAG,IAAA,MAAAN;AAAAM,IAAA,MAAAL;AAAAK,IAAA,MAAAJ;AAAAI,IAAA,MAAAS;OAAAA,MAAAT,EAAA;CAAA,IAAAU;AAAA,KAAAV,EAAA,QAAAG,cAAAH,EAAA,QAAAK,cAAAL,EAAA,QAAAI,cAAAJ,EAAA,QAAAM,MAAAN,EAAA,QAAAS,IAAA;AAtBHC,OAAA,qBAAC;GAAc,GACTN;GACQD;GACcE,0BAAAA;cAEzBC,IAOAG;IAWc;AAAAT,IAAA,MAAAG;AAAAH,IAAA,MAAAK;AAAAL,IAAA,MAAAI;AAAAJ,IAAA,MAAAM;AAAAN,IAAA,MAAAS;AAAAT,IAAA,MAAAU;OAAAA,MAAAV,EAAA;AAAA,QAvBjBU"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | 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.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import React from "react";
3
3
 
4
4
  //#region src/components/overlays/Tooltip/context.ts