@cube-dev/ui-kit 0.0.0-canary-bef9600 → 0.0.0-canary-e3f8a1a

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 (654) hide show
  1. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  2. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  3. package/dist/_internal/hooks/use-event.js +1 -1
  4. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  5. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  6. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  7. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  8. package/dist/_internal/hooks/use-warn.js +1 -1
  9. package/dist/components/Block.js +1 -1
  10. package/dist/components/CollectionItem.js +1 -1
  11. package/dist/components/GlobalStyles.js +1 -1
  12. package/dist/components/GridProvider.js +1 -1
  13. package/dist/components/HiddenInput.js +1 -1
  14. package/dist/components/Root.js +1 -1
  15. package/dist/components/actions/Action/Action.js +1 -1
  16. package/dist/components/actions/Banner/Banner.js +1 -1
  17. package/dist/components/actions/Button/Button.js +11 -5
  18. package/dist/components/actions/Button/Button.js.map +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +27 -25
  25. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  26. package/dist/components/actions/ItemActionContext.js +1 -1
  27. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  28. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  29. package/dist/components/actions/Link/Link.js +1 -1
  30. package/dist/components/actions/Menu/Menu.js +1 -1
  31. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +1 -1
  33. package/dist/components/actions/Menu/MenuSection.js +1 -1
  34. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  35. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  36. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  37. package/dist/components/actions/Menu/context.js +1 -1
  38. package/dist/components/actions/Menu/styled.js +1 -4
  39. package/dist/components/actions/Menu/styled.js.map +1 -1
  40. package/dist/components/actions/actions-run.js +1 -1
  41. package/dist/components/actions/index.js +1 -1
  42. package/dist/components/actions/use-action.js +1 -1
  43. package/dist/components/actions/use-anchored-menu.js +1 -1
  44. package/dist/components/actions/use-context-menu.js +1 -1
  45. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  46. package/dist/components/content/Alert/Alert.js +1 -1
  47. package/dist/components/content/Alert/use-alert.js +1 -1
  48. package/dist/components/content/Avatar/Avatar.js +1 -1
  49. package/dist/components/content/Badge/Badge.js +1 -1
  50. package/dist/components/content/Card/Card.js +1 -1
  51. package/dist/components/content/Content.js +1 -1
  52. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  53. package/dist/components/content/CopySnippet/CopySnippet.d.ts +4 -4
  54. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  55. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  56. package/dist/components/content/Divider.js +1 -1
  57. package/dist/components/content/Footer.js +1 -1
  58. package/dist/components/content/Header.js +1 -1
  59. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  60. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  61. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  62. package/dist/components/content/Item/Item.js +3 -3
  63. package/dist/components/content/Item/Item.js.map +1 -1
  64. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  65. package/dist/components/content/ItemBadge/ItemBadge.js +7 -3
  66. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  67. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  68. package/dist/components/content/Layout/GridLayout.js +1 -1
  69. package/dist/components/content/Layout/Layout.js +28 -15
  70. package/dist/components/content/Layout/Layout.js.map +1 -1
  71. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  72. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  73. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  74. package/dist/components/content/Layout/LayoutContent.js +1 -1
  75. package/dist/components/content/Layout/LayoutContext.js +20 -10
  76. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  77. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  78. package/dist/components/content/Layout/LayoutFooter.js +12 -9
  79. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  80. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  81. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  82. package/dist/components/content/Layout/LayoutPane.js +1 -1
  83. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  84. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  85. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  86. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  87. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  88. package/dist/components/content/Layout/index.js +1 -1
  89. package/dist/components/content/Layout/utils.js +1 -1
  90. package/dist/components/content/Paragraph.js +1 -1
  91. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  92. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  93. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  94. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  95. package/dist/components/content/Result/Result.js +1 -1
  96. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  97. package/dist/components/content/Tag/Tag.js +1 -1
  98. package/dist/components/content/Text.d.ts +14 -14
  99. package/dist/components/content/Text.js +1 -1
  100. package/dist/components/content/TextItem/TextItem.js +1 -1
  101. package/dist/components/content/Title.js +1 -1
  102. package/dist/components/content/Tree/Tree.js +1 -1
  103. package/dist/components/content/Tree/TreeNode.js +1 -1
  104. package/dist/components/content/Tree/styled.js +1 -1
  105. package/dist/components/content/Tree/tree-index.js +1 -1
  106. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  107. package/dist/components/content/Tree/use-load-data.js +1 -1
  108. package/dist/components/content/highlightText.js +1 -1
  109. package/dist/components/content/use-auto-tooltip.js +3 -3
  110. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  111. package/dist/components/data/DataTable/DataTable.js +1 -1
  112. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  113. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  114. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  115. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  116. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  117. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  118. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  119. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  120. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  121. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  122. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  123. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  124. package/dist/components/data/TableBase/RowCollection.js +1 -1
  125. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  126. package/dist/components/data/TableBase/TableRow.js +1 -1
  127. package/dist/components/data/TableBase/TableView.js +1 -1
  128. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  129. package/dist/components/data/TableBase/column-header.js +1 -1
  130. package/dist/components/data/TableBase/column-menu.js +1 -1
  131. package/dist/components/data/TableBase/column-styles.js +1 -1
  132. package/dist/components/data/TableBase/column-tint.js +1 -1
  133. package/dist/components/data/TableBase/row-menu.js +1 -1
  134. package/dist/components/data/TableBase/styled.js +1 -1
  135. package/dist/components/data/TableBase/table-tree.js +1 -1
  136. package/dist/components/data/TableBase/types.js +1 -1
  137. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  138. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  139. package/dist/components/data/TableBase/use-column-order.js +1 -1
  140. package/dist/components/data/TableBase/use-column-window.js +1 -1
  141. package/dist/components/data/TableBase/use-container-width.js +1 -1
  142. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  143. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  144. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  145. package/dist/components/data/TableBase/use-table-search.js +1 -1
  146. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  147. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  148. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  149. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  150. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  151. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  152. package/dist/components/fields/Checkbox/Checkbox.js +2 -2
  153. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  154. package/dist/components/fields/Checkbox/CheckboxGroup.js +5 -5
  155. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  156. package/dist/components/fields/Checkbox/context.js +1 -1
  157. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  158. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  159. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  160. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  161. package/dist/components/fields/ComboBox/ComboBox.d.ts +26 -6
  162. package/dist/components/fields/ComboBox/ComboBox.js +1095 -619
  163. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  164. package/dist/components/fields/ComboBox/comboBoxOptions.js +84 -0
  165. package/dist/components/fields/ComboBox/comboBoxOptions.js.map +1 -0
  166. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  167. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  168. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  169. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  170. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  171. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  172. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  173. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  174. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  175. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  176. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  177. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  178. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  179. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  180. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  181. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  182. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  183. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  184. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  185. package/dist/components/fields/DatePicker/period.js +1 -1
  186. package/dist/components/fields/DatePicker/props.js +1 -1
  187. package/dist/components/fields/DatePicker/utils.js +1 -1
  188. package/dist/components/fields/FileInput/FileInput.js +1 -1
  189. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  190. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  191. package/dist/components/fields/Input/Input.d.ts +2 -2
  192. package/dist/components/fields/Input/Input.js +2 -2
  193. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  194. package/dist/components/fields/ListBox/ListBox.d.ts +10 -4
  195. package/dist/components/fields/ListBox/ListBox.js +293 -143
  196. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  197. package/dist/components/fields/ListBox/optionId.js +1 -1
  198. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +15 -12
  199. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  200. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  201. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  202. package/dist/components/fields/NumberInput/NumberInput.d.ts +0 -1
  203. package/dist/components/fields/NumberInput/NumberInput.js +136 -128
  204. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  205. package/dist/components/fields/NumberInput/StepButton.js +38 -48
  206. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  207. package/dist/components/fields/PasswordInput/PasswordInput.d.ts +1 -2
  208. package/dist/components/fields/PasswordInput/PasswordInput.js +77 -111
  209. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  210. package/dist/components/fields/Picker/Picker.d.ts +1 -1
  211. package/dist/components/fields/Picker/Picker.js +8 -3
  212. package/dist/components/fields/Picker/Picker.js.map +1 -1
  213. package/dist/components/fields/RadioGroup/Radio.d.ts +8 -8
  214. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  215. package/dist/components/fields/RadioGroup/RadioGroup.js +2 -2
  216. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  217. package/dist/components/fields/RadioGroup/context.js +1 -1
  218. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  219. package/dist/components/fields/SearchInput/SearchInput.d.ts +8 -3
  220. package/dist/components/fields/SearchInput/SearchInput.js +22 -29
  221. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  222. package/dist/components/fields/Select/Select.d.ts +12 -1
  223. package/dist/components/fields/Select/Select.js +365 -207
  224. package/dist/components/fields/Select/Select.js.map +1 -1
  225. package/dist/components/fields/Slider/Gradation.js +1 -1
  226. package/dist/components/fields/Slider/HueSlider.js +1 -1
  227. package/dist/components/fields/Slider/RangeSlider.js +3 -4
  228. package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
  229. package/dist/components/fields/Slider/Slider.js +1 -1
  230. package/dist/components/fields/Slider/SliderBase.js +1 -1
  231. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  232. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  233. package/dist/components/fields/Slider/elements.js +1 -1
  234. package/dist/components/fields/Slider/index.js +1 -1
  235. package/dist/components/fields/Switch/Switch.js +1 -1
  236. package/dist/components/fields/TagInput/TagInput.js +1 -1
  237. package/dist/components/fields/TagInput/TagList.js +1 -1
  238. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  239. package/dist/components/fields/TagInput/useTagError.js +1 -1
  240. package/dist/components/fields/TextArea/TextArea.d.ts +0 -1
  241. package/dist/components/fields/TextArea/TextArea.js +49 -63
  242. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  243. package/dist/components/fields/TextInput/TextInput.d.ts +1 -1
  244. package/dist/components/fields/TextInput/TextInput.js +42 -46
  245. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  246. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -2
  247. package/dist/components/fields/TextInput/TextInputBase.js +32 -10
  248. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  249. package/dist/components/fields/TextInput/displayed-validation.js +50 -0
  250. package/dist/components/fields/TextInput/displayed-validation.js.map +1 -0
  251. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  252. package/dist/components/fields/TextInputMapper/TextInputMapper.js +2 -2
  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 -2
  259. package/dist/components/fields/option-origin-press.js +78 -0
  260. package/dist/components/fields/option-origin-press.js.map +1 -0
  261. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  262. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  263. package/dist/components/form/Form/Field.js +1 -1
  264. package/dist/components/form/Form/Form.js +1 -1
  265. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  266. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  267. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  268. package/dist/components/form/Form/SubmitError.js +1 -1
  269. package/dist/components/form/Form/backend.js +1 -1
  270. package/dist/components/form/Form/index.js +1 -1
  271. package/dist/components/form/Form/modern/actions.js +1 -1
  272. package/dist/components/form/Form/modern/context.js +1 -1
  273. package/dist/components/form/Form/modern/controller.js +1 -1
  274. package/dist/components/form/Form/modern/field-binding.js +1 -1
  275. package/dist/components/form/Form/modern/field.js +1 -1
  276. package/dist/components/form/Form/modern/react.js +1 -1
  277. package/dist/components/form/Form/modern/store.js +1 -1
  278. package/dist/components/form/Form/modern/validation.js +1 -1
  279. package/dist/components/form/Form/modern/values.js +1 -1
  280. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  281. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  282. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field.js +1 -1
  284. package/dist/components/form/Form/use-form.js +1 -1
  285. package/dist/components/form/Form/validation.js +1 -1
  286. package/dist/components/form/Label.js +1 -1
  287. package/dist/components/form/field-chrome.js +1 -1
  288. package/dist/components/form/legacy-tooltip.js +1 -1
  289. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  290. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  291. package/dist/components/form/validation/use-validation-props.js +1 -1
  292. package/dist/components/form/wrapper.js +1 -1
  293. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  294. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  295. package/dist/components/layout/Flex.js +1 -1
  296. package/dist/components/layout/Flow.js +1 -1
  297. package/dist/components/layout/Grid.js +1 -1
  298. package/dist/components/layout/Panel.js +1 -1
  299. package/dist/components/layout/Prefix.js +1 -1
  300. package/dist/components/layout/ResizablePanel.js +1 -1
  301. package/dist/components/layout/Space.js +1 -1
  302. package/dist/components/layout/Suffix.js +1 -1
  303. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  304. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  305. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  306. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  307. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  308. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  309. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  310. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  311. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  312. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  313. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  314. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  315. package/dist/components/navigation/Tabs/styled.js +1 -1
  316. package/dist/components/navigation/Tabs/types.js +1 -1
  317. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  318. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  319. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  320. package/dist/components/other/Calendar/Calendar.js +1 -1
  321. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  322. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  323. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  324. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  325. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  326. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  327. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  328. package/dist/components/other/Calendar/styled.js +1 -1
  329. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  330. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  331. package/dist/components/overlays/AlertDialog/AlertDialog.d.ts +6 -1
  332. package/dist/components/overlays/AlertDialog/AlertDialog.js +3 -2
  333. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  334. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +3 -2
  335. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  336. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  337. package/dist/components/overlays/Dialog/Dialog.js +28 -14
  338. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  339. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  340. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  341. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +7 -3
  342. package/dist/components/overlays/Dialog/DialogTrigger.js +149 -132
  343. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  344. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  345. package/dist/components/overlays/Dialog/context.js +1 -1
  346. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  347. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  348. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  349. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +83 -0
  350. package/dist/components/overlays/Dialog/use-dialog-open-sync.js.map +1 -0
  351. package/dist/components/overlays/Modal/Modal.js +1 -1
  352. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  353. package/dist/components/overlays/Modal/Overlay.js +3 -2
  354. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  355. package/dist/components/overlays/Modal/Popover.js +1 -1
  356. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  357. package/dist/components/overlays/Modal/Tray.js +1 -1
  358. package/dist/components/overlays/Modal/Underlay.js +1 -1
  359. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  360. package/dist/components/overlays/Notifications/Notification.js +1 -1
  361. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  362. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  363. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  364. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  365. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  366. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  367. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  368. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  369. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  370. package/dist/components/overlays/Notifications/index.js +1 -1
  371. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  372. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  373. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  374. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  375. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  376. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  377. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  378. package/dist/components/overlays/Toast/index.js +1 -1
  379. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  380. package/dist/components/overlays/Toast/useToast.js +1 -1
  381. package/dist/components/overlays/Tooltip/Tooltip.d.ts +8 -0
  382. package/dist/components/overlays/Tooltip/Tooltip.js +16 -22
  383. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  384. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  385. package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +1 -1
  386. package/dist/components/overlays/Tooltip/TooltipTrigger.js +163 -113
  387. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  388. package/dist/components/overlays/Tooltip/context.js +1 -1
  389. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  390. package/dist/components/overlays/Tooltip/split-trigger-props.js +6 -5
  391. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -1
  392. package/dist/components/portal/Portal.js +1 -1
  393. package/dist/components/portal/PortalProvider.js +1 -1
  394. package/dist/components/portal/usePortal.js +1 -1
  395. package/dist/components/shared/DraggableCollection.js +1 -1
  396. package/dist/components/shared/InvalidIcon.js +1 -1
  397. package/dist/components/shared/ValidIcon.js +1 -1
  398. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  399. package/dist/components/status/Spin/Cube.js +1 -1
  400. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  401. package/dist/components/status/Spin/Spin.js +1 -1
  402. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  403. package/dist/data/item-themes.js +1 -1
  404. package/dist/data/themes.js +1 -1
  405. package/dist/eslint-plugin/defaults.generated.js +11 -17
  406. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  407. package/dist/eslint-plugin/index.js +1 -1
  408. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  409. package/dist/i18n/I18nProvider.js +1 -1
  410. package/dist/i18n/createFormatter.js +1 -1
  411. package/dist/i18n/index.js +1 -1
  412. package/dist/i18n/instance.js +1 -1
  413. package/dist/i18n/locales/de-DE/uikit.js +6 -4
  414. package/dist/i18n/locales/en-US/uikit.js +6 -4
  415. package/dist/i18n/locales/en-US/uikit.json.d.ts +3 -1
  416. package/dist/i18n/locales/es-ES/uikit.js +6 -4
  417. package/dist/i18n/locales/es-MX/uikit.js +6 -4
  418. package/dist/i18n/locales/fr-FR/uikit.js +6 -4
  419. package/dist/i18n/locales/it-IT/uikit.js +6 -4
  420. package/dist/i18n/locales/ja-JP/uikit.js +6 -4
  421. package/dist/i18n/locales/nb-NO/uikit.js +6 -4
  422. package/dist/i18n/locales/pt-BR/uikit.js +6 -4
  423. package/dist/i18n/locales/pt-PT/uikit.js +6 -4
  424. package/dist/i18n/locales/sv-SE/uikit.js +6 -4
  425. package/dist/i18n/locales/vi-VN/uikit.js +6 -4
  426. package/dist/i18n/locales.js +1 -1
  427. package/dist/i18n/namespace.js +1 -1
  428. package/dist/i18n/useFormatter.js +1 -1
  429. package/dist/i18n/useI18n.js +1 -1
  430. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  431. package/dist/icons/AdjustmentsIcon.js +1 -1
  432. package/dist/icons/AiIcon.js +1 -1
  433. package/dist/icons/AreaChartIcon.js +1 -1
  434. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  435. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  436. package/dist/icons/BackwardIcon.js +1 -1
  437. package/dist/icons/BarChartIcon.js +1 -1
  438. package/dist/icons/BellFilledIcon.js +1 -1
  439. package/dist/icons/BellIcon.js +1 -1
  440. package/dist/icons/BooleanIcon.js +1 -1
  441. package/dist/icons/CalendarEditIcon.js +1 -1
  442. package/dist/icons/CalendarIcon.js +1 -1
  443. package/dist/icons/CaretDownIcon.js +1 -1
  444. package/dist/icons/CaretUpIcon.js +1 -1
  445. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  446. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  447. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  448. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  449. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  450. package/dist/icons/ChartBarLineIcon.js +1 -1
  451. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  452. package/dist/icons/ChartBarStackedIcon.js +1 -1
  453. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  454. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  455. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  456. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  457. package/dist/icons/ChartBubbleIcon.js +1 -1
  458. package/dist/icons/ChartDonut2Icon.js +1 -1
  459. package/dist/icons/ChartFunnelIcon.js +1 -1
  460. package/dist/icons/ChartHeatmapIcon.js +1 -1
  461. package/dist/icons/ChartKPIIcon.js +1 -1
  462. package/dist/icons/ChartPie2Icon.js +1 -1
  463. package/dist/icons/ChartScatterIcon.js +1 -1
  464. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  465. package/dist/icons/CheckCircleIcon.js +1 -1
  466. package/dist/icons/CheckIcon.js +1 -1
  467. package/dist/icons/CircleFilledIcon.js +1 -1
  468. package/dist/icons/ClearIcon.js +1 -1
  469. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  470. package/dist/icons/CloseCircleIcon.js +1 -1
  471. package/dist/icons/CloseIcon.js +1 -1
  472. package/dist/icons/CodeIcon.js +1 -1
  473. package/dist/icons/ColumnTotalIcon.js +1 -1
  474. package/dist/icons/CopyIcon.js +1 -1
  475. package/dist/icons/CountIcon.js +1 -1
  476. package/dist/icons/CubeIcon.js +1 -1
  477. package/dist/icons/CubePauseIcon.js +1 -1
  478. package/dist/icons/CubePlayIcon.js +1 -1
  479. package/dist/icons/CurrencyDollarIcon.js +1 -1
  480. package/dist/icons/DangerIcon.js +1 -1
  481. package/dist/icons/DashboardIcon.js +1 -1
  482. package/dist/icons/DatabaseIcon.js +1 -1
  483. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  484. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  485. package/dist/icons/DirectionIcon.js +1 -1
  486. package/dist/icons/DonutIcon.js +1 -1
  487. package/dist/icons/DownIcon.js +1 -1
  488. package/dist/icons/EditIcon.js +1 -1
  489. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  490. package/dist/icons/ExclamationCircleIcon.js +1 -1
  491. package/dist/icons/ExclamationIcon.js +1 -1
  492. package/dist/icons/EyeIcon.js +1 -1
  493. package/dist/icons/EyeInvisibleIcon.js +1 -1
  494. package/dist/icons/FilterIcon.js +1 -1
  495. package/dist/icons/FolderFilledIcon.js +1 -1
  496. package/dist/icons/FolderIcon.js +1 -1
  497. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  498. package/dist/icons/FolderOpenIcon.js +1 -1
  499. package/dist/icons/ForwardIcon.js +1 -1
  500. package/dist/icons/GripVerticalIcon.js +1 -1
  501. package/dist/icons/HierarchyIcon.js +1 -1
  502. package/dist/icons/HierarchyOpenIcon.js +1 -1
  503. package/dist/icons/Icon.js +1 -1
  504. package/dist/icons/InfoCircleIcon.js +1 -1
  505. package/dist/icons/InfoIcon.js +1 -1
  506. package/dist/icons/KeyIcon.js +1 -1
  507. package/dist/icons/LeftIcon.js +1 -1
  508. package/dist/icons/LineChartIcon.js +1 -1
  509. package/dist/icons/LoadingIcon.js +1 -1
  510. package/dist/icons/LockFilledIcon.js +1 -1
  511. package/dist/icons/LockIcon.js +1 -1
  512. package/dist/icons/MoreIcon.js +1 -1
  513. package/dist/icons/NotAllowedIcon.js +1 -1
  514. package/dist/icons/Number123Icon.js +1 -1
  515. package/dist/icons/NumberIcon.js +1 -1
  516. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  517. package/dist/icons/PauseCircleIcon.js +1 -1
  518. package/dist/icons/PauseIcon.js +1 -1
  519. package/dist/icons/PercentageIcon.js +1 -1
  520. package/dist/icons/PieChartIcon.js +1 -1
  521. package/dist/icons/PipetteIcon.js +1 -1
  522. package/dist/icons/PlayCircleIcon.js +1 -1
  523. package/dist/icons/PlayIcon.js +1 -1
  524. package/dist/icons/PlusIcon.js +1 -1
  525. package/dist/icons/ProgressBarIcon.js +1 -1
  526. package/dist/icons/ReloadIcon.js +1 -1
  527. package/dist/icons/ReportIcon.js +1 -1
  528. package/dist/icons/ReturnIcon.js +1 -1
  529. package/dist/icons/RightIcon.js +1 -1
  530. package/dist/icons/RowTotalsIcon.js +1 -1
  531. package/dist/icons/SchemeIcon.js +1 -1
  532. package/dist/icons/SearchIcon.js +1 -1
  533. package/dist/icons/SemanticQueryIcon.js +1 -1
  534. package/dist/icons/SettingsIcon.js +1 -1
  535. package/dist/icons/ShieldFilledIcon.js +1 -1
  536. package/dist/icons/ShieldIcon.js +1 -1
  537. package/dist/icons/SlashIcon.js +1 -1
  538. package/dist/icons/SparklesIcon.js +1 -1
  539. package/dist/icons/SqlIcon.js +1 -1
  540. package/dist/icons/StatsIcon.js +1 -1
  541. package/dist/icons/StopIcon.js +1 -1
  542. package/dist/icons/StringIcon.js +1 -1
  543. package/dist/icons/SubtotalsIcon.js +1 -1
  544. package/dist/icons/SwitchIcon.js +1 -1
  545. package/dist/icons/TableIcon.js +1 -1
  546. package/dist/icons/ThumbsDownIcon.js +1 -1
  547. package/dist/icons/ThumbsUpIcon.js +1 -1
  548. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  549. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  550. package/dist/icons/ThunderboltIcon.js +1 -1
  551. package/dist/icons/TimeIcon.js +1 -1
  552. package/dist/icons/TrashIcon.js +1 -1
  553. package/dist/icons/UnlockIcon.js +1 -1
  554. package/dist/icons/UpIcon.js +1 -1
  555. package/dist/icons/UserGroupIcon.js +1 -1
  556. package/dist/icons/UserIcon.js +1 -1
  557. package/dist/icons/UserLockIcon.js +1 -1
  558. package/dist/icons/ViewIcon.js +1 -1
  559. package/dist/icons/WarningFilledIcon.js +1 -1
  560. package/dist/icons/WarningIcon.js +1 -1
  561. package/dist/icons/wrap-icon.js +1 -1
  562. package/dist/index.d.ts +1 -1
  563. package/dist/index.js +2 -2
  564. package/dist/probe/canonicalize.js +1 -1
  565. package/dist/probe/css.js +1 -1
  566. package/dist/probe/index.js +1 -1
  567. package/dist/provider.js +1 -1
  568. package/dist/providers/TrackingProvider.js +1 -1
  569. package/dist/providers/navigation-url.js +1 -1
  570. package/dist/providers/navigationAdapter.default.js +1 -1
  571. package/dist/providers/use-navigation.js +1 -1
  572. package/dist/tokens/all-tokens.js +1 -1
  573. package/dist/tokens/base.js +1 -1
  574. package/dist/tokens/color-seed.js +1 -1
  575. package/dist/tokens/color-theme.js +1 -1
  576. package/dist/tokens/colors.js +1 -1
  577. package/dist/tokens/layout.js +1 -1
  578. package/dist/tokens/lazy-styles.js +1 -1
  579. package/dist/tokens/legacy-color.js +1 -1
  580. package/dist/tokens/palette-config.js +1 -1
  581. package/dist/tokens/palette.js +1 -1
  582. package/dist/tokens/resolve.js +1 -1
  583. package/dist/tokens/shadows.js +1 -1
  584. package/dist/tokens/sizes.js +1 -1
  585. package/dist/tokens/spacing.js +1 -1
  586. package/dist/tokens/typography.js +1 -1
  587. package/dist/utils/ResizeSensor.js +1 -1
  588. package/dist/utils/colors.js +1 -1
  589. package/dist/utils/dotize.js +1 -1
  590. package/dist/utils/is-dev-env.js +1 -1
  591. package/dist/utils/modules.js +1 -1
  592. package/dist/utils/promise.js +1 -1
  593. package/dist/utils/raf.js +1 -1
  594. package/dist/utils/random.js +1 -1
  595. package/dist/utils/range.js +1 -1
  596. package/dist/utils/react/RenderCache.js +1 -1
  597. package/dist/utils/react/Slots.js +1 -1
  598. package/dist/utils/react/chain.js +1 -1
  599. package/dist/utils/react/disabledProps.js +1 -1
  600. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  601. package/dist/utils/react/index.js +1 -1
  602. package/dist/utils/react/interactions.js +1 -1
  603. package/dist/utils/react/isTextOnly.js +1 -1
  604. package/dist/utils/react/mapProps.js +1 -1
  605. package/dist/utils/react/mergeProps.js +1 -1
  606. package/dist/utils/react/nullableValue.js +18 -9
  607. package/dist/utils/react/nullableValue.js.map +1 -1
  608. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  609. package/dist/utils/react/programmaticFocus.js +1 -1
  610. package/dist/utils/react/resolveIcon.js +1 -1
  611. package/dist/utils/react/sharedStore.js +1 -1
  612. package/dist/utils/react/useBufferedValue.js +1 -1
  613. package/dist/utils/react/useCombinedRefs.js +1 -1
  614. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  615. package/dist/utils/react/useEventBus.js +1 -1
  616. package/dist/utils/react/useId.js +1 -1
  617. package/dist/utils/react/useIsDarwin.js +1 -1
  618. package/dist/utils/react/useKeySymbols.js +1 -1
  619. package/dist/utils/react/useLayoutEffect.js +1 -1
  620. package/dist/utils/react/useLocalStorage.js +1 -1
  621. package/dist/utils/react/useMergeStyles.js +1 -1
  622. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  623. package/dist/utils/react/usePopoverSync.js +1 -1
  624. package/dist/utils/react/useQaProps.js +1 -1
  625. package/dist/utils/react/useScheme.js +1 -1
  626. package/dist/utils/react/useViewportSize.js +1 -1
  627. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  628. package/dist/utils/selection.js +1 -1
  629. package/dist/utils/styles.js +1 -1
  630. package/dist/utils/tree.js +1 -1
  631. package/dist/utils/warnings.js +1 -1
  632. package/dist/version.js +2 -2
  633. package/docs/components/actions/Button.md +8 -2
  634. package/docs/components/content/InfoBadge.md +2 -0
  635. package/docs/components/content/ItemBadge.md +4 -0
  636. package/docs/components/content/Layout.md +2 -1
  637. package/docs/components/fields/ComboBox.md +25 -18
  638. package/docs/components/fields/FilterListBox.md +2 -2
  639. package/docs/components/fields/FilterPicker.md +2 -2
  640. package/docs/components/fields/ListBox.md +14 -10
  641. package/docs/components/fields/NumberInput.md +10 -10
  642. package/docs/components/fields/PasswordInput.md +6 -7
  643. package/docs/components/fields/Picker.md +6 -5
  644. package/docs/components/fields/RadioGroup.md +1 -1
  645. package/docs/components/fields/SearchInput.md +7 -6
  646. package/docs/components/fields/Select.md +14 -8
  647. package/docs/components/fields/TextArea.md +4 -3
  648. package/docs/components/fields/TextInput.md +13 -6
  649. package/docs/components/overlays/AlertDialog.md +7 -1
  650. package/docs/components/overlays/Dialog.md +5 -5
  651. package/docs/components/overlays/DialogTrigger.md +6 -6
  652. package/docs/components/overlays/Tooltip.md +17 -6
  653. package/docs/components/overlays/TooltipTrigger.md +2 -0
  654. package/package.json +1 -1
@@ -0,0 +1,83 @@
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
+ import { useEventBus } from "../../../utils/react/useEventBus.js";
3
+ import { c } from "react/compiler-runtime";
4
+ import { useEffect, useEffectEvent } from "react";
5
+
6
+ //#region src/components/overlays/Dialog/use-dialog-open-sync.ts
7
+ /**
8
+ * Emitted, besides `popover:open`, when a modal, tray, fullscreen or panel
9
+ * `DialogTrigger` opens. A popover that is not dismissable ignores
10
+ * `popover:open`, but such a dialog takes over the page: left open, the popover
11
+ * would sit over it, hidden from screen readers by it, and take its focus
12
+ * restore. So it closes on this.
13
+ */
14
+ const DIALOG_OPEN_EVENT = "dialog:open";
15
+ /**
16
+ * For `DialogTrigger`: a modal, tray, fullscreen or panel dialog announces that
17
+ * it opened (`emits`), and a popover that is not dismissable closes when one
18
+ * does (`closes`), unless it opened from inside the popover.
19
+ */
20
+ function useDialogOpenSync(options) {
21
+ const $ = c(16);
22
+ const { emits, closes, state, triggerRef, overlayRef } = options;
23
+ const { emit, on } = useEventBus();
24
+ const { isOpen } = state;
25
+ let t0;
26
+ let t1;
27
+ if ($[0] !== emit || $[1] !== emits || $[2] !== isOpen || $[3] !== triggerRef) {
28
+ t0 = () => {
29
+ if (!emits || !isOpen) return;
30
+ emit(DIALOG_OPEN_EVENT, { triggerEl: triggerRef.current });
31
+ };
32
+ t1 = [
33
+ emits,
34
+ isOpen,
35
+ emit,
36
+ triggerRef
37
+ ];
38
+ $[0] = emit;
39
+ $[1] = emits;
40
+ $[2] = isOpen;
41
+ $[3] = triggerRef;
42
+ $[4] = t0;
43
+ $[5] = t1;
44
+ } else {
45
+ t0 = $[4];
46
+ t1 = $[5];
47
+ }
48
+ useEffect(t0, t1);
49
+ let t2;
50
+ if ($[6] !== overlayRef || $[7] !== state) {
51
+ t2 = (triggerEl) => {
52
+ if (!state.isOpen || overlayRef.current?.contains(triggerEl)) return;
53
+ state.close();
54
+ };
55
+ $[6] = overlayRef;
56
+ $[7] = state;
57
+ $[8] = t2;
58
+ } else t2 = $[8];
59
+ const onDialogOpen = useEffectEvent(t2);
60
+ let t3;
61
+ if ($[9] !== closes || $[10] !== on || $[11] !== onDialogOpen) {
62
+ t3 = () => {
63
+ if (!closes) return;
64
+ return on(DIALOG_OPEN_EVENT, (data) => onDialogOpen(data.triggerEl));
65
+ };
66
+ $[9] = closes;
67
+ $[10] = on;
68
+ $[11] = onDialogOpen;
69
+ $[12] = t3;
70
+ } else t3 = $[12];
71
+ let t4;
72
+ if ($[13] !== closes || $[14] !== on) {
73
+ t4 = [closes, on];
74
+ $[13] = closes;
75
+ $[14] = on;
76
+ $[15] = t4;
77
+ } else t4 = $[15];
78
+ useEffect(t3, t4);
79
+ }
80
+
81
+ //#endregion
82
+ export { useDialogOpenSync };
83
+ //# sourceMappingURL=use-dialog-open-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-dialog-open-sync.js","names":["RefObject","useEffect","useEffectEvent","OverlayTriggerState","useEventBus","DIALOG_OPEN_EVENT","DialogOpenPayload","triggerEl","Element","DialogOpenSyncOptions","emits","closes","state","triggerRef","HTMLElement","overlayRef","useDialogOpenSync","options","$","_c","emit","on","isOpen","t0","t1","current","t2","contains","close","onDialogOpen","t3","data","t4"],"sources":["../../../../src/components/overlays/Dialog/use-dialog-open-sync.ts"],"sourcesContent":["import { RefObject, useEffect, useEffectEvent } from 'react';\nimport { OverlayTriggerState } from 'react-stately';\n\nimport { useEventBus } from '../../../utils/react/useEventBus';\n\n/**\n * Emitted, besides `popover:open`, when a modal, tray, fullscreen or panel\n * `DialogTrigger` opens. A popover that is not dismissable ignores\n * `popover:open`, but such a dialog takes over the page: left open, the popover\n * would sit over it, hidden from screen readers by it, and take its focus\n * restore. So it closes on this.\n */\nconst DIALOG_OPEN_EVENT = 'dialog:open';\n\ninterface DialogOpenPayload {\n triggerEl: Element | null;\n}\n\ninterface DialogOpenSyncOptions {\n /** Emits `dialog:open` on opening: a dialog that is not a popover. */\n emits: boolean;\n /** Closes on another dialog's `dialog:open`: a popover that is not dismissable. */\n closes: boolean;\n state: OverlayTriggerState;\n triggerRef: RefObject<HTMLElement | null>;\n overlayRef: RefObject<HTMLElement | null>;\n}\n\n/**\n * For `DialogTrigger`: a modal, tray, fullscreen or panel dialog announces that\n * it opened (`emits`), and a popover that is not dismissable closes when one\n * does (`closes`), unless it opened from inside the popover.\n */\nexport function useDialogOpenSync(options: DialogOpenSyncOptions) {\n const { emits, closes, state, triggerRef, overlayRef } = options;\n const { emit, on } = useEventBus();\n const { isOpen } = state;\n\n useEffect(() => {\n if (!emits || !isOpen) return;\n\n emit<DialogOpenPayload>(DIALOG_OPEN_EVENT, {\n triggerEl: triggerRef.current,\n });\n }, [emits, isOpen, emit, triggerRef]);\n\n const onDialogOpen = useEffectEvent((triggerEl: Element | null) => {\n // A dialog opened from inside this popover belongs to it, and would be\n // unmounted with it.\n if (!state.isOpen || overlayRef.current?.contains(triggerEl)) return;\n\n state.close();\n });\n\n useEffect(() => {\n if (!closes) return;\n\n return on<DialogOpenPayload>(DIALOG_OPEN_EVENT, (data) =>\n onDialogOpen(data.triggerEl),\n );\n }, [closes, on]);\n}\n"],"mappings":";;;;;;;;;;;;;AAYA,MAAMK,oBAAoB;;;;;;AAqB1B,SAAOW,kBAAAC,SAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAA,EAAAT,OAAAC,QAAAC,OAAAC,YAAAE,eAAyDE;CACzD,MAAA,EAAAG,MAAAC,OAAqBjB,aAAa;CAClC,MAAA,EAAAkB,WAAmBV;CAAM,IAAAW;CAAA,IAAAC;AAAA,KAAAN,EAAA,OAAAE,QAAAF,EAAA,OAAAR,SAAAQ,EAAA,OAAAI,UAAAJ,EAAA,OAAAL,YAAA;AAEfU,aAAA;AACR,OAAI,CAACb,SAAD,CAAWY,OAAM;AAErBF,QAAwBf,mBAAmB,EAAAE,WAC9BM,WAAUY,SACtB,CAAC;;AACDD,OAAA;GAACd;GAAOY;GAAQF;GAAMP;GAAW;AAAAK,IAAA,KAAAE;AAAAF,IAAA,KAAAR;AAAAQ,IAAA,KAAAI;AAAAJ,IAAA,KAAAL;AAAAK,IAAA,KAAAK;AAAAL,IAAA,KAAAM;QAAA;AAAAD,OAAAL,EAAA;AAAAM,OAAAN,EAAA;;AANpCjB,WAAUsB,IAMPC,GAAkC;CAAA,IAAAE;AAAA,KAAAR,EAAA,OAAAH,cAAAG,EAAA,OAAAN,OAAA;AAEDc,QAAAnB,cAAA;AAGlC,OAAI,CAACK,MAAKU,UAAWP,WAAUU,SAAkBE,SAACpB,UAAU,CAAA;AAE5DK,SAAKgB,OAAQ;;AACdV,IAAA,KAAAH;AAAAG,IAAA,KAAAN;AAAAM,IAAA,KAAAQ;OAAAA,MAAAR,EAAA;CAND,MAAAW,eAAqB3B,eAAewB,GAMlC;CAAC,IAAAI;AAAA,KAAAZ,EAAA,OAAAP,UAAAO,EAAA,QAAAG,MAAAH,EAAA,QAAAW,cAAA;AAEOC,aAAA;AACR,OAAI,CAACnB,OAAM;AAAS,UAEbU,GAAsBhB,oBAAmB0B,SAC9CF,aAAaE,KAAIxB,UACnB,CAAC;;AACFW,IAAA,KAAAP;AAAAO,IAAA,MAAAG;AAAAH,IAAA,MAAAW;AAAAX,IAAA,MAAAY;OAAAA,MAAAZ,EAAA;CAAA,IAAAc;AAAA,KAAAd,EAAA,QAAAP,UAAAO,EAAA,QAAAG,IAAA;AAAEW,OAAA,CAACrB,QAAQU,GAAG;AAAAH,IAAA,MAAAP;AAAAO,IAAA,MAAAG;AAAAH,IAAA,MAAAc;OAAAA,MAAAd,EAAA;AANfjB,WAAU6B,IAMPE,GAAa"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { mergeRefs as mergeRefs$1 } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { ModalContainmentProvider, useModalContainment } from "./modal-containment.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/overlays/Modal/OpenTransitionContext.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { markFocusRestoreWindow } from "../../../utils/react/programmaticFocus.js";
3
3
  import { DisplayTransition } from "../../helpers/DisplayTransition/DisplayTransition.js";
4
4
  import { Provider, useProviderProps } from "../../../provider.js";
@@ -10,6 +10,7 @@ import { jsx } from "react/jsx-runtime";
10
10
  import { createPortal } from "react-dom";
11
11
 
12
12
  //#region src/components/overlays/Modal/Overlay.tsx
13
+ /** How long a closed overlay stays mounted while it plays its exit. */
13
14
  const EXIT_DURATION = 350;
14
15
  function Overlay(props, ref) {
15
16
  let { children, isOpen, container = null, onEnter, onEntering, onEntered, onExit, onExiting, onExited, hideOnClose = false } = props;
@@ -79,5 +80,5 @@ let _Overlay = forwardRef(Overlay);
79
80
  _Overlay.displayName = "Overlay";
80
81
 
81
82
  //#endregion
82
- export { _Overlay };
83
+ export { EXIT_DURATION, _Overlay };
83
84
  //# sourceMappingURL=Overlay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","ReactNode","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","ButtonSplitContext","DisplayTransition","OpenTransitionContext","WithCloseBehavior","Props","ReportedPhase","CubeOverlayProps","children","isOpen","container","HTMLElement","onEnter","onEntering","onEntered","onExit","onExiting","onExited","EXIT_DURATION","Overlay","props","ref","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","isExiting","transitionState","map","child","undefined","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n ReactNode,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { ButtonSplitContext } from '../../actions/ButtonSplit/context';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps extends WithCloseBehavior {\n children?: ReactNode;\n isOpen?: boolean;\n container?: HTMLElement | null;\n onEnter?: () => void;\n onEntering?: () => void;\n onEntered?: () => void;\n onExit?: () => void;\n onExiting?: () => void;\n onExited?: () => void;\n}\n\nconst EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown, isExiting }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n // A closed overlay leaves React Aria's stack of visible\n // overlays at once, but stays on screen, and clickable,\n // while it fades out. A press on it then counts as a\n // press outside whatever overlay is topmost again, so a\n // click on a fading list closed the Dialog under it\n // (CUB-5293). React Aria never treats a press inside a\n // top-layer element as outside.\n 'data-react-aria-top-layer': isExiting || undefined,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n //\n // Overlays also leave the `ButtonSplit` that opened them here: its context\n // crosses the portal and would style every Button inside (CUB-5624). A split\n // rendered inside the overlay still provides its own.\n return createPortal(\n <TastyBatchProvider>\n <ButtonSplitContext.Provider value={null}>\n {contents}\n </ButtonSplitContext.Provider>\n </TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;;AAoCA,MAAM8B,gBAAgB;AAEtB,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFb,UACAC,QACAC,YAAY,MACZE,SACAC,YACAC,WACAC,QACAC,WACAC,UACAK,cAAc,UACZF;CACJ,IAAI,CAACG,QAAQC,aAAa5B,SAAS,CAACa,OAAO;AAE3C,KAAIA,UAAUc,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU9B,OAAO,CAAC,CAACc,OAAO;AAEhC,KAAIgB,QAAQC,YAAY,CAAC,CAACjB,QAAQ;AAChCgB,UAAQC,UAAU,CAAC,CAACjB;AAEpB,MAAI,CAACA,OAAQT,wBAAuBkB,gBAAgB,IAAI;;CAG1D,IAAI,EAAES,SAAS5B,iBAAiB,EAAE,CAAU;CAE5C,IAAI6B,oBAAoBlC,aACrBmC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBZ,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHQ,cAAU,KAAK;AACfP,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeR,UAAU,CAACc,SAG5B;MAAI,CAACD,YACH,QAAO;;CAIX,IAAIS,WACF,oBAAC;EAAcV;YACb,oBAAC;GACC,SAAS,CAAC,CAACZ;GACX,iBAAiBa;GACjB,UAAUJ;GACV,eAAeU;cAEb,EAAEC,OAAAA,SAAOG,SAASC,gBAAgB;AAClC,WACE,oBAAC,sBAAsB;KACrB,OAAO,EAAEC,iBAAiBL,SAAwB;eAEjDxC,SAAS8C,IACR3B,WACC4B,UACCA,SACA9C,aACE8C,OACA;MACE3B,QAAQuB;MACRE,iBAAiBL;MAQjB,6BAA6BI,aAAaI;MAC3C,CAEP,CAAC;MAC8B;;IAGpB;GAEtB;AAaD,QAAOxC,aACL,oBAAC,gCACC,oBAAC,mBAAmB;EAAS,OAAO;YACjCkC;GAC0B,GACV,EACrBrB,aAAaiB,QAAQW,SAASC,KAC/B;;AAGH,IAAIC,WAAWjD,WAAW4B,QAAQ;AAElCqB,SAASC,cAAc"}
1
+ {"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","ReactNode","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","ButtonSplitContext","DisplayTransition","OpenTransitionContext","WithCloseBehavior","Props","ReportedPhase","CubeOverlayProps","children","isOpen","container","HTMLElement","onEnter","onEntering","onEntered","onExit","onExiting","onExited","EXIT_DURATION","Overlay","props","ref","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","isExiting","transitionState","map","child","undefined","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n ReactNode,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { ButtonSplitContext } from '../../actions/ButtonSplit/context';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps extends WithCloseBehavior {\n children?: ReactNode;\n isOpen?: boolean;\n container?: HTMLElement | null;\n onEnter?: () => void;\n onEntering?: () => void;\n onEntered?: () => void;\n onExit?: () => void;\n onExiting?: () => void;\n onExited?: () => void;\n}\n\n/** How long a closed overlay stays mounted while it plays its exit. */\nexport const EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown, isExiting }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n // A closed overlay leaves React Aria's stack of visible\n // overlays at once, but stays on screen, and clickable,\n // while it fades out. A press on it then counts as a\n // press outside whatever overlay is topmost again, so a\n // click on a fading list closed the Dialog under it\n // (CUB-5293). React Aria never treats a press inside a\n // top-layer element as outside.\n 'data-react-aria-top-layer': isExiting || undefined,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n //\n // Overlays also leave the `ButtonSplit` that opened them here: its context\n // crosses the portal and would style every Button inside (CUB-5624). A split\n // rendered inside the overlay still provides its own.\n return createPortal(\n <TastyBatchProvider>\n <ButtonSplitContext.Provider value={null}>\n {contents}\n </ButtonSplitContext.Provider>\n </TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;;;AAqCA,MAAa8B,gBAAgB;AAE7B,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFb,UACAC,QACAC,YAAY,MACZE,SACAC,YACAC,WACAC,QACAC,WACAC,UACAK,cAAc,UACZF;CACJ,IAAI,CAACG,QAAQC,aAAa5B,SAAS,CAACa,OAAO;AAE3C,KAAIA,UAAUc,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU9B,OAAO,CAAC,CAACc,OAAO;AAEhC,KAAIgB,QAAQC,YAAY,CAAC,CAACjB,QAAQ;AAChCgB,UAAQC,UAAU,CAAC,CAACjB;AAEpB,MAAI,CAACA,OAAQT,wBAAuBkB,gBAAgB,IAAI;;CAG1D,IAAI,EAAES,SAAS5B,iBAAiB,EAAE,CAAU;CAE5C,IAAI6B,oBAAoBlC,aACrBmC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBZ,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHQ,cAAU,KAAK;AACfP,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeR,UAAU,CAACc,SAG5B;MAAI,CAACD,YACH,QAAO;;CAIX,IAAIS,WACF,oBAAC;EAAcV;YACb,oBAAC;GACC,SAAS,CAAC,CAACZ;GACX,iBAAiBa;GACjB,UAAUJ;GACV,eAAeU;cAEb,EAAEC,OAAAA,SAAOG,SAASC,gBAAgB;AAClC,WACE,oBAAC,sBAAsB;KACrB,OAAO,EAAEC,iBAAiBL,SAAwB;eAEjDxC,SAAS8C,IACR3B,WACC4B,UACCA,SACA9C,aACE8C,OACA;MACE3B,QAAQuB;MACRE,iBAAiBL;MAQjB,6BAA6BI,aAAaI;MAC3C,CAEP,CAAC;MAC8B;;IAGpB;GAEtB;AAaD,QAAOxC,aACL,oBAAC,gCACC,oBAAC,mBAAmB;EAAS,OAAO;YACjCkC;GAC0B,GACV,EACrBrB,aAAaiB,QAAQW,SAASC,KAC/B;;AAGH,IAAIC,WAAWjD,WAAW4B,QAAQ;AAElCqB,SAASC,cAAc"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { mergeRefs as mergeRefs$1 } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useModalLayerRef } from "./modal-containment.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","names":["useObjectRef","BaseProps","tasty","ForwardedRef","forwardRef","HTMLAttributes","AriaOverlayProps","useModal","useOverlay","PlacementAxis","mergeProps","mergeRefs","useOverlayEscapeGuard","useModalLayerRef","CubeOverlayProps","Overlay","TransitionState","Props","PopoverElement","role","styles","display","hide","exit","unmounted","pointerEvents","position","transition","transform","open","opacity","transformOrigin","CubePopoverProps","container","HTMLElement","placement","arrowProps","hideArrow","isOpen","onClose","shouldCloseOnBlur","isNonModal","isDismissable","shouldCloseOnInteractOutside","element","Element","Popover","props","ref","$","_c","children","otherProps","qa","style","t0","undefined","domRef","t1","t2","overlayProps","rawOverlayProps","layerRef","t3","t4","t5","PopoverWrapperProps","Omit","PopoverWrapper","transitionState","isDisabled","modalProps","T0","t6","t7","t8","t9","enter","entered","t10","_Popover","displayName"],"sources":["../../../../src/components/overlays/Modal/Popover.tsx"],"sourcesContent":["import { useObjectRef } from '@react-aria/utils';\nimport { BaseProps, tasty } from '@tenphi/tasty';\nimport { ForwardedRef, forwardRef, HTMLAttributes } from 'react';\nimport { AriaOverlayProps, useModal, useOverlay } from 'react-aria';\n\nimport { PlacementAxis } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { mergeRefs } from '../../../utils/react/useCombinedRefs';\nimport { useOverlayEscapeGuard } from '../../../utils/react/useOverlayEscapeGuard';\n\nimport { useModalLayerRef } from './modal-containment';\nimport { CubeOverlayProps, Overlay } from './Overlay';\nimport { TransitionState } from './types';\n\nimport type { Props } from '../../../props';\n\nconst PopoverElement = tasty({\n role: 'presentation',\n styles: {\n display: 'initial',\n hide: {\n '': true,\n 'enter | entered': false,\n exit: false,\n unmounted: true,\n },\n pointerEvents: 'auto',\n position: 'absolute',\n transition:\n 'opacity $disclosure-transition linear, visibility 0ms linear, transform $disclosure-transition ease-in-out',\n transform: {\n '': 'scale(1, .9)',\n open: 'initial',\n },\n opacity: {\n '': 0,\n open: '.9999',\n },\n transformOrigin: {\n '': 'top center',\n '[data-placement=\"top\"]': 'bottom center',\n },\n },\n});\n\nexport interface CubePopoverProps\n extends BaseProps,\n AriaOverlayProps,\n CubeOverlayProps,\n TransitionState {\n container?: HTMLElement;\n placement?: PlacementAxis;\n arrowProps?: HTMLAttributes<HTMLElement>;\n hideArrow?: boolean;\n isOpen?: boolean;\n onClose?: () => void;\n shouldCloseOnBlur?: boolean;\n isNonModal?: boolean;\n isDismissable?: boolean;\n shouldCloseOnInteractOutside?: (element: Element) => boolean;\n}\n\nfunction Popover(props: CubePopoverProps, ref: ForwardedRef<HTMLElement>) {\n let {\n qa,\n style,\n styles,\n children,\n placement,\n arrowProps,\n isNonModal,\n isDismissable = true,\n ...otherProps\n } = props;\n\n let domRef = useObjectRef(ref);\n\n // `useOverlay` has to run here rather than inside `PopoverWrapper`, on the\n // *logical* open state — `Overlay` hands its child an `isOpen` that only\n // turns true once the enter animation has settled. Registering the overlay\n // that late leaves it out of React Aria's visible-overlay stack for the first\n // frames, and `Escape` silently does nothing until the popover finishes\n // animating in. `Modal` and `Tray` call it from the same place for the same\n // reason.\n let { overlayProps: rawOverlayProps } = useOverlay(\n { ...props, isDismissable: isDismissable && props.isOpen },\n domRef,\n );\n\n // ...and a popover that has already closed must not answer for `Escape`\n // while it animates out — see `useOverlayEscapeGuard`.\n const overlayProps = useOverlayEscapeGuard(rawOverlayProps, props.isOpen);\n\n // Opened inside a modal, it stays readable while the modal hides the page.\n const layerRef = useModalLayerRef();\n\n return (\n <Overlay {...otherProps}>\n <PopoverWrapper\n ref={mergeRefs(domRef, layerRef)}\n qa={qa}\n style={style}\n styles={styles}\n placement={placement}\n arrowProps={arrowProps}\n isNonModal={isNonModal}\n overlayProps={overlayProps}\n >\n {children}\n </PopoverWrapper>\n </Overlay>\n );\n}\n\ninterface PopoverWrapperProps\n extends Omit<CubePopoverProps, 'isDismissable'>,\n TransitionState {\n overlayProps?: Props;\n}\n\nconst PopoverWrapper = forwardRef(function PopoverWrapper(\n props: PopoverWrapperProps,\n ref,\n) {\n let {\n qa,\n children,\n placement = 'bottom',\n arrowProps,\n // `isOpen` here is the transition's settled state, not the trigger's — it\n // drives the enter/exit styles only.\n isOpen,\n style,\n styles,\n isNonModal,\n transitionState,\n overlayProps,\n ...otherProps\n } = props;\n let { modalProps } = useModal({\n isDisabled: isNonModal,\n });\n\n return (\n <PopoverElement\n qa={qa || 'Popover'}\n data-overlay-layer=\"\"\n {...mergeProps(otherProps, overlayProps, modalProps)}\n ref={ref}\n styles={styles}\n mods={{\n open: isOpen,\n enter: transitionState === 'enter',\n exit: transitionState === 'exit',\n unmounted: transitionState === 'unmounted',\n entered: transitionState === 'entered',\n }}\n data-placement={placement}\n style={style}\n >\n {children}\n </PopoverElement>\n );\n});\n\nconst _Popover = forwardRef(Popover);\n\n_Popover.displayName = 'Popover';\n\nexport { _Popover as Popover };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Popover.js","names":["useObjectRef","BaseProps","tasty","ForwardedRef","forwardRef","HTMLAttributes","AriaOverlayProps","useModal","useOverlay","PlacementAxis","mergeProps","mergeRefs","useOverlayEscapeGuard","useModalLayerRef","CubeOverlayProps","Overlay","TransitionState","Props","PopoverElement","role","styles","display","hide","exit","unmounted","pointerEvents","position","transition","transform","open","opacity","transformOrigin","CubePopoverProps","container","HTMLElement","placement","arrowProps","hideArrow","isOpen","onClose","shouldCloseOnBlur","isNonModal","isDismissable","shouldCloseOnInteractOutside","element","Element","Popover","props","ref","$","_c","children","otherProps","qa","style","t0","undefined","domRef","t1","t2","overlayProps","rawOverlayProps","layerRef","t3","t4","t5","PopoverWrapperProps","Omit","PopoverWrapper","transitionState","isDisabled","modalProps","T0","t6","t7","t8","t9","enter","entered","t10","_Popover","displayName"],"sources":["../../../../src/components/overlays/Modal/Popover.tsx"],"sourcesContent":["import { useObjectRef } from '@react-aria/utils';\nimport { BaseProps, tasty } from '@tenphi/tasty';\nimport { ForwardedRef, forwardRef, HTMLAttributes } from 'react';\nimport { AriaOverlayProps, useModal, useOverlay } from 'react-aria';\n\nimport { PlacementAxis } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { mergeRefs } from '../../../utils/react/useCombinedRefs';\nimport { useOverlayEscapeGuard } from '../../../utils/react/useOverlayEscapeGuard';\n\nimport { useModalLayerRef } from './modal-containment';\nimport { CubeOverlayProps, Overlay } from './Overlay';\nimport { TransitionState } from './types';\n\nimport type { Props } from '../../../props';\n\nconst PopoverElement = tasty({\n role: 'presentation',\n styles: {\n display: 'initial',\n hide: {\n '': true,\n 'enter | entered': false,\n exit: false,\n unmounted: true,\n },\n pointerEvents: 'auto',\n position: 'absolute',\n transition:\n 'opacity $disclosure-transition linear, visibility 0ms linear, transform $disclosure-transition ease-in-out',\n transform: {\n '': 'scale(1, .9)',\n open: 'initial',\n },\n opacity: {\n '': 0,\n open: '.9999',\n },\n transformOrigin: {\n '': 'top center',\n '[data-placement=\"top\"]': 'bottom center',\n },\n },\n});\n\nexport interface CubePopoverProps\n extends BaseProps,\n AriaOverlayProps,\n CubeOverlayProps,\n TransitionState {\n container?: HTMLElement;\n placement?: PlacementAxis;\n arrowProps?: HTMLAttributes<HTMLElement>;\n /** @deprecated Has no effect: the popover renders no arrow. */\n hideArrow?: boolean;\n isOpen?: boolean;\n onClose?: () => void;\n shouldCloseOnBlur?: boolean;\n isNonModal?: boolean;\n isDismissable?: boolean;\n shouldCloseOnInteractOutside?: (element: Element) => boolean;\n}\n\nfunction Popover(props: CubePopoverProps, ref: ForwardedRef<HTMLElement>) {\n let {\n qa,\n style,\n styles,\n children,\n placement,\n arrowProps,\n isNonModal,\n isDismissable = true,\n ...otherProps\n } = props;\n\n let domRef = useObjectRef(ref);\n\n // `useOverlay` has to run here rather than inside `PopoverWrapper`, on the\n // *logical* open state — `Overlay` hands its child an `isOpen` that only\n // turns true once the enter animation has settled. Registering the overlay\n // that late leaves it out of React Aria's visible-overlay stack for the first\n // frames, and `Escape` silently does nothing until the popover finishes\n // animating in. `Modal` and `Tray` call it from the same place for the same\n // reason.\n let { overlayProps: rawOverlayProps } = useOverlay(\n { ...props, isDismissable: isDismissable && props.isOpen },\n domRef,\n );\n\n // ...and a popover that has already closed must not answer for `Escape`\n // while it animates out — see `useOverlayEscapeGuard`.\n const overlayProps = useOverlayEscapeGuard(rawOverlayProps, props.isOpen);\n\n // Opened inside a modal, it stays readable while the modal hides the page.\n const layerRef = useModalLayerRef();\n\n return (\n <Overlay {...otherProps}>\n <PopoverWrapper\n ref={mergeRefs(domRef, layerRef)}\n qa={qa}\n style={style}\n styles={styles}\n placement={placement}\n arrowProps={arrowProps}\n isNonModal={isNonModal}\n overlayProps={overlayProps}\n >\n {children}\n </PopoverWrapper>\n </Overlay>\n );\n}\n\ninterface PopoverWrapperProps\n extends Omit<CubePopoverProps, 'isDismissable'>,\n TransitionState {\n overlayProps?: Props;\n}\n\nconst PopoverWrapper = forwardRef(function PopoverWrapper(\n props: PopoverWrapperProps,\n ref,\n) {\n let {\n qa,\n children,\n placement = 'bottom',\n arrowProps,\n // `isOpen` here is the transition's settled state, not the trigger's — it\n // drives the enter/exit styles only.\n isOpen,\n style,\n styles,\n isNonModal,\n transitionState,\n overlayProps,\n ...otherProps\n } = props;\n let { modalProps } = useModal({\n isDisabled: isNonModal,\n });\n\n return (\n <PopoverElement\n qa={qa || 'Popover'}\n data-overlay-layer=\"\"\n {...mergeProps(otherProps, overlayProps, modalProps)}\n ref={ref}\n styles={styles}\n mods={{\n open: isOpen,\n enter: transitionState === 'enter',\n exit: transitionState === 'exit',\n unmounted: transitionState === 'unmounted',\n entered: transitionState === 'entered',\n }}\n data-placement={placement}\n style={style}\n >\n {children}\n </PopoverElement>\n );\n});\n\nconst _Popover = forwardRef(Popover);\n\n_Popover.displayName = 'Popover';\n\nexport { _Popover as Popover };\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAMkB,iBAAiBhB,MAAM;CAC3BiB,MAAM;CACNC,QAAQ;EACNC,SAAS;EACTC,MAAM;GACJ,IAAI;GACJ,mBAAmB;GACnBC,MAAM;GACNC,WAAW;GACZ;EACDC,eAAe;EACfC,UAAU;EACVC,YACE;EACFC,WAAW;GACT,IAAI;GACJC,MAAM;GACP;EACDC,SAAS;GACP,IAAI;GACJD,MAAM;GACP;EACDE,iBAAiB;GACf,IAAI;GACJ,4BAA0B;GAC5B;EACF;CACD,CAAC;AAoBF,SAAAe,QAAAC,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAd;CAAA,IAAAe;CAAA,IAAAV;CAAA,IAAAW;CAAA,IAAAjB;CAAA,IAAAkB;CAAA,IAAAC;CAAA,IAAAlC;CAAA,IAAAmC;AAAA,KAAAN,EAAA,OAAAF,OAAA;AACE,GAAA,CAAAM,IAAAC,OAAAlC,QAAA+B,UAAAhB,WAAAC,YAAAK,YAAAC,eAAAa,OAAAH,cAUIL;AAAME,IAAA,KAAAF;AAAAE,IAAA,KAAAb;AAAAa,IAAA,KAAAE;AAAAF,IAAA,KAAAR;AAAAQ,IAAA,KAAAG;AAAAH,IAAA,KAAAd;AAAAc,IAAA,KAAAI;AAAAJ,IAAA,KAAAK;AAAAL,IAAA,KAAA7B;AAAA6B,IAAA,KAAAM;QAAA;AAAAnB,eAAAa,EAAA;AAAAE,aAAAF,EAAA;AAAAR,eAAAQ,EAAA;AAAAG,eAAAH,EAAA;AAAAd,cAAAc,EAAA;AAAAI,OAAAJ,EAAA;AAAAK,UAAAL,EAAA;AAAA7B,WAAA6B,EAAA;AAAAM,OAAAN,EAAA;;CAFR,MAAAP,gBAAAa,OAAAC,SAAA,OAAAD;CAIF,MAAAE,SAAazD,aAAagD,IAAI;CAUD,MAAAU,KAAAhB,iBAAiBK,MAAKT;CAAO,IAAAqB;AAAA,KAAAV,EAAA,QAAAF,SAAAE,EAAA,QAAAS,IAAA;AAAxDC,OAAA;GAAA,GAAKZ;GAAKL,eAAiBgB;GAA+B;AAAAT,IAAA,MAAAF;AAAAE,IAAA,MAAAS;AAAAT,IAAA,MAAAU;OAAAA,MAAAV,EAAA;CAD5D,MAAA,EAAAW,cAAAC,oBAAwCrD,WACtCmD,IACAF,OACD;CAID,MAAAG,eAAqBhD,sBAAsBiD,iBAAiBd,MAAKT,OAAQ;CAGzE,MAAAwB,WAAiBjD,kBAAkB;CAAC,IAAAkD;AAAA,KAAAd,EAAA,QAAAQ,UAAAR,EAAA,QAAAa,UAAA;AAKzBC,OAAApD,YAAU8C,QAAQK,SAAS;AAAAb,IAAA,MAAAQ;AAAAR,IAAA,MAAAa;AAAAb,IAAA,MAAAc;OAAAA,MAAAd,EAAA;CAAA,IAAAe;AAAA,KAAAf,EAAA,QAAAb,cAAAa,EAAA,QAAAE,YAAAF,EAAA,QAAAR,cAAAQ,EAAA,QAAAW,gBAAAX,EAAA,QAAAd,aAAAc,EAAA,QAAAI,MAAAJ,EAAA,QAAAK,SAAAL,EAAA,QAAA7B,UAAA6B,EAAA,QAAAc,IAAA;AADlCC,OAAA,oBAAC;GACM,KAAAD;GACDV;GACGC;GACClC;GACGe;GACCC;GACAK;GACEmB;GAEbT;IACc;AAAAF,IAAA,MAAAb;AAAAa,IAAA,MAAAE;AAAAF,IAAA,MAAAR;AAAAQ,IAAA,MAAAW;AAAAX,IAAA,MAAAd;AAAAc,IAAA,MAAAI;AAAAJ,IAAA,MAAAK;AAAAL,IAAA,MAAA7B;AAAA6B,IAAA,MAAAc;AAAAd,IAAA,MAAAe;OAAAA,MAAAf,EAAA;CAAA,IAAAgB;AAAA,KAAAhB,EAAA,QAAAG,cAAAH,EAAA,QAAAe,IAAA;AAZnBC,OAAA,oBAAC;GAAO,GAAKb;aACXY;IAYQ;AAAAf,IAAA,MAAAG;AAAAH,IAAA,MAAAe;AAAAf,IAAA,MAAAgB;OAAAA,MAAAhB,EAAA;AAAA,QAbVgB;;AAuBJ,MAAMG,iBAAiBhE,WAAW,SAAAgE,eAAArB,OAAAC,KAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAIhC,MAAA,EAAAG,IAAAF,UAAAhB,WAAAoB,IAAAnB,YAAAE,QAAAgB,OAAAlC,QAAAqB,YAAA4B,iBAAAT,cAAA,GAAAR,eAcIL;CAXF,MAAAZ,YAAAoB,OAAAC,SAAA,WAAAD;CAAoB,IAAAG;AAAA,KAAAT,EAAA,OAAAR,YAAA;AAYQiB,OAAA,EAAAY,YAChB7B,YACb;AAAAQ,IAAA,KAAAR;AAAAQ,IAAA,KAAAS;OAAAA,MAAAT,EAAA;CAFD,MAAA,EAAAsB,eAAqBhE,SAASmD,GAE5B;CAGC,MAAAc,KAAAtD;CACK,MAAAyC,KAAAN,MAAA;CACe,MAAAU,KAAA;CACf,MAAAC,KAAAtD,aAAW0C,YAAYQ,cAAcW,WAAW;CAK3C,MAAAN,KAAAI,oBAAoB;CACrB,MAAAI,KAAAJ,oBAAoB;CACf,MAAAK,KAAAL,oBAAoB;CACtB,MAAAM,KAAAN,oBAAoB;CAAS,IAAAO;AAAA,KAAA3B,EAAA,OAAAX,UAAAW,EAAA,OAAAgB,MAAAhB,EAAA,OAAAwB,MAAAxB,EAAA,OAAAyB,MAAAzB,EAAA,OAAA0B,IAAA;AALlCC,OAAA;GAAA/C,MACES;GAAMuC,OACLZ;GAA2B1C,MAC5BkD;GAA0BjD,WACrBkD;GAA+BI,SACjCH;GACV;AAAA1B,IAAA,KAAAX;AAAAW,IAAA,KAAAgB;AAAAhB,IAAA,KAAAwB;AAAAxB,IAAA,KAAAyB;AAAAzB,IAAA,KAAA0B;AAAA1B,IAAA,KAAA2B;OAAAA,MAAA3B,EAAA;CAAA,IAAA8B;AAAA,KAAA9B,EAAA,OAAAuB,MAAAvB,EAAA,OAAAE,YAAAF,EAAA,QAAAd,aAAAc,EAAA,QAAAD,OAAAC,EAAA,QAAAK,SAAAL,EAAA,QAAA7B,UAAA6B,EAAA,QAAAU,MAAAV,EAAA,QAAAe,MAAAf,EAAA,QAAA2B,IAAA;AAZHG,QAAA,oBAAC;GACK,IAAApB;GACe,sBAAAI;GAAE,GACjBC;GACChB;GACG5B;GACF,MAAAwD;GAOUzC,kBAAAA;GACTmB;GAENH;IACc;AAAAF,IAAA,KAAAuB;AAAAvB,IAAA,KAAAE;AAAAF,IAAA,MAAAd;AAAAc,IAAA,MAAAD;AAAAC,IAAA,MAAAK;AAAAL,IAAA,MAAA7B;AAAA6B,IAAA,MAAAU;AAAAV,IAAA,MAAAe;AAAAf,IAAA,MAAA2B;AAAA3B,IAAA,MAAA8B;OAAAA,OAAA9B,EAAA;AAAA,QAjBjB8B;EAmBF;AAEF,MAAMC,WAAW5E,WAAW0C,QAAQ;AAEpCkC,SAASC,cAAc"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { mergeRefs as mergeRefs$1 } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { ModalContainmentProvider, useModalContainment } from "./modal-containment.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext, useLayoutEffect, useRef, useState } from "react";
4
4
  import { ariaHideOutside } from "react-aria/private/overlays/ariaHideOutside";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useNotificationContext } from "./NotificationContext.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { Block } from "../../Block.js";
3
3
  import { ItemActionProvider } from "../../actions/ItemActionContext.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/overlays/Notifications/NotificationContext.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { NotificationCard } from "./NotificationCard.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { useViewportSize } from "../../../utils/react/useViewportSize.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { NotificationContext, PersistentNotificationsContext, ToastContext, useNotificationContext, useToastContext } from "./NotificationContext.js";
3
3
  import { OverlayContainer } from "./OverlayContainer.js";
4
4
  import { useNotificationState } from "./use-notification-state.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { _Text } from "../../content/Text.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  //#region src/components/overlays/Notifications/dismissed-storage.ts
3
3
  const STORAGE_KEY = "cube-ui-dismissed-notifications";
4
4
  const TTL_MS = 864e5;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  //#region src/components/overlays/Notifications/format-relative-time.ts
3
3
  /**
4
4
  * Lightweight relative time formatter.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useToastContext } from "./NotificationContext.js";
3
3
  import { NotificationAction } from "./NotificationAction.js";
4
4
  import { NotificationCard } from "./NotificationCard.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useRef, useState } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useWarn } from "../../../_internal/hooks/use-warn.js";
4
4
  import { useNotificationContext } from "./NotificationContext.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useEffect, useRef } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { usePersistentNotificationsContext } from "./NotificationContext.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { cleanupAndGetValidIds, saveDismissedId } from "./dismissed-storage.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useRef, useState } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { _Item } from "../../content/Item/Item.js";
3
3
  import { getThemeIcon } from "./useToast.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useToastContext } from "../Notifications/NotificationContext.js";
3
3
  import { useProgressToast } from "./useProgressToast.js";
4
4
  import { getThemeIcon, useToast } from "./useToast.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | Cube Dev Team */
2
2
  import { CheckIcon } from "../../../icons/CheckIcon.js";
3
3
  import { InfoCircleIcon } from "../../../icons/InfoCircleIcon.js";
4
4
  import { useToastContext } from "../Notifications/NotificationContext.js";
@@ -8,6 +8,9 @@ import { DOMRefValue } from "@react-types/shared";
8
8
  //#region src/components/overlays/Tooltip/Tooltip.d.ts
9
9
  interface CubeTooltipProps extends BaseProps, ContainerStyleProps, AriaTooltipProps {
10
10
  tipStyles?: Styles;
11
+ /**
12
+ * @deprecated Has no effect. No icon is ever rendered.
13
+ */
11
14
  showIcon?: boolean;
12
15
  placement?: PlacementAxis;
13
16
  isMaterial?: boolean;
@@ -15,6 +18,11 @@ interface CubeTooltipProps extends BaseProps, ContainerStyleProps, AriaTooltipPr
15
18
  isLight?: boolean;
16
19
  onOpenChange?: (isOpen: boolean) => void;
17
20
  defaultOpen?: boolean;
21
+ /**
22
+ * Whether the tooltip moves to the opposite side of its trigger when there
23
+ * is not enough room on the requested one.
24
+ * @default true
25
+ */
18
26
  shouldFlip?: boolean;
19
27
  }
20
28
  /**
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | 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";
@@ -109,8 +109,8 @@ const TooltipTipElement = tasty({ styles: {
109
109
  transition: "theme"
110
110
  } });
111
111
  function Tooltip(props, ref) {
112
- const $ = c(31);
113
- let { ref: overlayRef, transitionRef, arrowProps, state, overlayProps, minOffset, minScale, isMaterial: isMaterialContext, isLight: isLightContext, phase, isShown, updatePosition, ...tooltipProviderProps } = useContext(TooltipContext);
112
+ const $ = c(29);
113
+ const { ref: overlayRef, transitionRef, arrowProps, state, overlayProps, isMaterial: isMaterialContext, isLight: isLightContext, phase, isShown, updatePosition, ...tooltipProviderProps } = useContext(TooltipContext);
114
114
  const defaultRef = useRef(null);
115
115
  const layerRef = useModalLayerRef();
116
116
  const t0 = overlayRef ?? defaultRef;
@@ -125,7 +125,7 @@ function Tooltip(props, ref) {
125
125
  const combinedRef = t1;
126
126
  const finalOverlayRef = overlayRef ?? defaultRef;
127
127
  props = mergeProps$1(props, tooltipProviderProps);
128
- const { placement: t2, isOpen, tipStyles, showIcon, isMaterial: t3, isLight: t4, ...otherProps } = props;
128
+ const { placement: t2, isOpen, tipStyles, isMaterial: t3, isLight: t4, ...otherProps } = props;
129
129
  const placement = t2 === void 0 ? "top" : t2;
130
130
  const isMaterial = t3 === void 0 ? isMaterialContext : t3;
131
131
  const isLight = t4 === void 0 ? isLightContext : t4;
@@ -138,8 +138,6 @@ function Tooltip(props, ref) {
138
138
  $[5] = t5;
139
139
  } else t5 = $[5];
140
140
  useImperativeHandle(ref, t5);
141
- if (typeof minOffset === "number") minOffset = `${minOffset}px`;
142
- if (typeof minScale === "number") minScale = String(minScale);
143
141
  const placementDirection = placement?.split(" ")[0] || placement || "top";
144
142
  const t6 = isShown ?? isOpen;
145
143
  let t7;
@@ -184,7 +182,7 @@ function Tooltip(props, ref) {
184
182
  $[17] = t10;
185
183
  } else t10 = $[17];
186
184
  let t11;
187
- if ($[18] !== combinedRef || $[19] !== minOffset || $[20] !== minScale || $[21] !== mods || $[22] !== otherProps.qa || $[23] !== overlayProps || $[24] !== phase || $[25] !== placementDirection || $[26] !== props.children || $[27] !== styles || $[28] !== t10 || $[29] !== tooltipProps) {
185
+ if ($[18] !== combinedRef || $[19] !== mods || $[20] !== otherProps.qa || $[21] !== overlayProps || $[22] !== phase || $[23] !== placementDirection || $[24] !== props.children || $[25] !== styles || $[26] !== t10 || $[27] !== tooltipProps) {
188
186
  t11 = /* @__PURE__ */ jsxs(TooltipElement, {
189
187
  ...tooltipProps,
190
188
  ...overlayProps,
@@ -192,26 +190,22 @@ function Tooltip(props, ref) {
192
190
  qa: otherProps.qa,
193
191
  styles,
194
192
  mods,
195
- "data-min-offset": minOffset,
196
- "data-min-scale": minScale,
197
193
  "data-placement": placementDirection,
198
194
  "data-phase": phase,
199
195
  children: [props.children, t10]
200
196
  });
201
197
  $[18] = combinedRef;
202
- $[19] = minOffset;
203
- $[20] = minScale;
204
- $[21] = mods;
205
- $[22] = otherProps.qa;
206
- $[23] = overlayProps;
207
- $[24] = phase;
208
- $[25] = placementDirection;
209
- $[26] = props.children;
210
- $[27] = styles;
211
- $[28] = t10;
212
- $[29] = tooltipProps;
213
- $[30] = t11;
214
- } else t11 = $[30];
198
+ $[19] = mods;
199
+ $[20] = otherProps.qa;
200
+ $[21] = overlayProps;
201
+ $[22] = phase;
202
+ $[23] = placementDirection;
203
+ $[24] = props.children;
204
+ $[25] = styles;
205
+ $[26] = t10;
206
+ $[27] = tooltipProps;
207
+ $[28] = t11;
208
+ } else t11 = $[28];
215
209
  return t11;
216
210
  }
217
211
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","names":["createDOMRef","DOMRefValue","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","ForwardedRef","forwardRef","useContext","useImperativeHandle","useRef","AriaTooltipProps","useTooltip","PlacementAxis","mergeProps","mergeRefs","useLayoutEffect","extractStyles","useModalLayerRef","TooltipContext","TooltipElement","styles","display","fill","light","color","width","radius","padding","preset","backdropFilter","whiteSpace","overflowWrap","pointerEvents","material","filter","transition","translate","transformOrigin","scale","opacity","Description","$","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","layerRef","t0","t1","combinedRef","finalOverlayRef","t2","t3","t4","otherProps","undefined","tooltipProps","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 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';\nimport { useModalLayerRef } from '../Modal/modal-containment';\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 // A secondary line under the title — the description an auto tooltip\n // shows when a row's label and description are both cut off. Lighter and\n // dimmed like the row's own description, from the tooltip's own color, so\n // it follows the `light` variant. Direct children only: a tooltip whose\n // body is an `Item` keeps that item's description as it is.\n Description: {\n $: '>',\n display: 'block',\n preset: 't4n',\n opacity: 0.75,\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 // Opened inside a modal, the tooltip stays readable while the modal hides\n // the page.\n const layerRef = useModalLayerRef();\n const combinedRef = mergeRefs(\n transitionRef,\n overlayRef ?? defaultRef,\n layerRef,\n );\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, 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 = {\n material: isMaterial,\n light: isLight,\n open: isShown ?? isOpen,\n };\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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"}
1
+ {"version":3,"file":"Tooltip.js","names":["createDOMRef","DOMRefValue","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","ForwardedRef","forwardRef","useContext","useImperativeHandle","useRef","AriaTooltipProps","useTooltip","PlacementAxis","mergeProps","mergeRefs","useLayoutEffect","extractStyles","useModalLayerRef","TooltipContext","TooltipElement","styles","display","fill","light","color","width","radius","padding","preset","backdropFilter","whiteSpace","overflowWrap","pointerEvents","material","filter","transition","translate","transformOrigin","scale","opacity","Description","$","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","isMaterialContext","isLightContext","phase","isShown","updatePosition","tooltipProviderProps","defaultRef","layerRef","t0","t1","combinedRef","finalOverlayRef","t2","t3","t4","otherProps","undefined","tooltipProps","t5","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 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';\nimport { useModalLayerRef } from '../Modal/modal-containment';\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 // A secondary line under the title — the description an auto tooltip\n // shows when a row's label and description are both cut off. Lighter and\n // dimmed like the row's own description, from the tooltip's own color, so\n // it follows the `light` variant. Direct children only: a tooltip whose\n // body is an `Item` keeps that item's description as it is.\n Description: {\n $: '>',\n display: 'block',\n preset: 't4n',\n opacity: 0.75,\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 /**\n * @deprecated Has no effect. No icon is ever rendered.\n */\n showIcon?: boolean;\n placement?: PlacementAxis;\n isMaterial?: boolean;\n isOpen?: boolean;\n isLight?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n /**\n * Whether the tooltip moves to the opposite side of its trigger when there\n * is not enough room on the requested one.\n * @default true\n */\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 isMaterial: isMaterialContext,\n isLight: isLightContext,\n phase,\n isShown,\n updatePosition,\n ...tooltipProviderProps\n } = useContext(TooltipContext);\n\n const defaultRef = useRef<HTMLDivElement>(null);\n // Opened inside a modal, the tooltip stays readable while the modal hides\n // the page.\n const layerRef = useModalLayerRef();\n const combinedRef = mergeRefs(\n transitionRef,\n overlayRef ?? defaultRef,\n layerRef,\n );\n const finalOverlayRef = overlayRef ?? defaultRef;\n\n props = mergeProps(props, tooltipProviderProps);\n\n let {\n placement = 'top',\n isOpen,\n tipStyles,\n isMaterial = isMaterialContext,\n isLight = isLightContext,\n ...otherProps\n } = props;\n\n const styles = extractStyles(otherProps, CONTAINER_STYLES);\n\n let { tooltipProps } = useTooltip(props, state);\n\n // Sync ref with overlayRef from context.\n useImperativeHandle(ref, () => createDOMRef(finalOverlayRef));\n\n // Extract primary placement direction for consistent styling\n const placementDirection = placement?.split(' ')[0] || placement || 'top';\n\n const mods = {\n material: isMaterial,\n light: isLight,\n open: isShown ?? isOpen,\n };\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-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,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-bef9600 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-e3f8a1a | 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";