@cube-dev/ui-kit 0.206.3 → 0.208.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (858) hide show
  1. package/dist/CHANGELOG.md +18 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-sync-ref.js.map +1 -1
  8. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  9. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  10. package/dist/_internal/hooks/use-warn.js +1 -1
  11. package/dist/components/Block.js +1 -1
  12. package/dist/components/CollectionItem.d.ts +0 -2
  13. package/dist/components/CollectionItem.js +1 -1
  14. package/dist/components/CollectionItem.js.map +1 -1
  15. package/dist/components/GlobalStyles.js +1 -1
  16. package/dist/components/GlobalStyles.js.map +1 -1
  17. package/dist/components/GridProvider.js +1 -1
  18. package/dist/components/GridProvider.js.map +1 -1
  19. package/dist/components/HiddenInput.js +1 -1
  20. package/dist/components/Root.js +3 -3
  21. package/dist/components/Root.js.map +1 -1
  22. package/dist/components/actions/Action/Action.js +1 -1
  23. package/dist/components/actions/Banner/Banner.js +1 -1
  24. package/dist/components/actions/Banner/Banner.js.map +1 -1
  25. package/dist/components/actions/Button/Button.d.ts +10 -1
  26. package/dist/components/actions/Button/Button.js +13 -8
  27. package/dist/components/actions/Button/Button.js.map +1 -1
  28. package/dist/components/actions/Button/index.d.ts +16 -1
  29. package/dist/components/actions/Button/index.js +13 -0
  30. package/dist/components/actions/Button/index.js.map +1 -0
  31. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  32. package/dist/components/actions/ButtonGroup/ButtonGroup.js.map +1 -1
  33. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  34. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  35. package/dist/components/actions/ButtonSplit/context.js +1 -1
  36. package/dist/components/actions/CommandMenu/CommandMenu.d.ts +1 -1
  37. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  38. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  39. package/dist/components/actions/CommandMenu/styled.js +1 -1
  40. package/dist/components/actions/ItemAction/ItemAction.js +2 -2
  41. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  42. package/dist/components/actions/ItemActionContext.js +1 -1
  43. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  44. package/dist/components/actions/ItemButton/ItemButton.d.ts +0 -2
  45. package/dist/components/actions/ItemButton/ItemButton.js +2 -2
  46. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  47. package/dist/components/actions/Link/Link.js +1 -1
  48. package/dist/components/actions/Menu/Menu.d.ts +1 -1
  49. package/dist/components/actions/Menu/Menu.js +1 -1
  50. package/dist/components/actions/Menu/Menu.js.map +1 -1
  51. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  52. package/dist/components/actions/Menu/MenuItem.js +2 -2
  53. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  54. package/dist/components/actions/Menu/MenuSection.js +1 -1
  55. package/dist/components/actions/Menu/MenuTrigger.js +3 -3
  56. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  57. package/dist/components/actions/Menu/SubMenuTrigger.js +2 -2
  58. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  59. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  60. package/dist/components/actions/Menu/context.js +1 -1
  61. package/dist/components/actions/Menu/index.d.ts +1 -1
  62. package/dist/components/actions/Menu/styled.js +1 -1
  63. package/dist/components/actions/actions-run.js +1 -1
  64. package/dist/components/actions/index.d.ts +6 -18
  65. package/dist/components/actions/use-action.js +2 -2
  66. package/dist/components/actions/use-action.js.map +1 -1
  67. package/dist/components/actions/use-anchored-menu.d.ts +0 -1
  68. package/dist/components/actions/use-anchored-menu.js +2 -2
  69. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  70. package/dist/components/actions/use-context-menu.d.ts +0 -1
  71. package/dist/components/actions/use-context-menu.js +2 -2
  72. package/dist/components/actions/use-context-menu.js.map +1 -1
  73. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  74. package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
  75. package/dist/components/content/Alert/Alert.js +1 -1
  76. package/dist/components/content/Alert/use-alert.js +1 -1
  77. package/dist/components/content/Alert/use-alert.js.map +1 -1
  78. package/dist/components/content/Avatar/Avatar.js +1 -1
  79. package/dist/components/content/Badge/Badge.d.ts +0 -1
  80. package/dist/components/content/Badge/Badge.js +1 -1
  81. package/dist/components/content/Badge/Badge.js.map +1 -1
  82. package/dist/components/content/Card/Card.js +1 -1
  83. package/dist/components/content/Content.js +1 -1
  84. package/dist/components/content/Content.js.map +1 -1
  85. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +3 -3
  86. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js.map +1 -1
  87. package/dist/components/content/CopySnippet/CopySnippet.d.ts +2 -18
  88. package/dist/components/content/CopySnippet/CopySnippet.js +2 -2
  89. package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
  90. package/dist/components/content/Disclosure/Disclosure.d.ts +0 -1
  91. package/dist/components/content/Disclosure/Disclosure.js +2 -2
  92. package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
  93. package/dist/components/content/Divider/Divider.js +1 -1
  94. package/dist/components/content/Divider/Divider.js.map +1 -1
  95. package/dist/components/content/Footer.js +1 -1
  96. package/dist/components/content/Footer.js.map +1 -1
  97. package/dist/components/content/Header.js +1 -1
  98. package/dist/components/content/Header.js.map +1 -1
  99. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  100. package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
  101. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  102. package/dist/components/content/InfoBadge/InfoBadge.js.map +1 -1
  103. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  104. package/dist/components/content/InlineInput/InlineInput.js.map +1 -1
  105. package/dist/components/content/Item/Item.d.ts +1 -2
  106. package/dist/components/content/Item/Item.js +4 -4
  107. package/dist/components/content/Item/Item.js.map +1 -1
  108. package/dist/components/content/Item/ItemWithNativeLinks.js +2 -2
  109. package/dist/components/content/Item/index.d.ts +1 -1
  110. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  111. package/dist/components/content/ItemBadge/index.d.ts +1 -2
  112. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  113. package/dist/components/content/Layout/GridLayout.js +1 -1
  114. package/dist/components/content/Layout/Layout.js +1 -1
  115. package/dist/components/content/Layout/Layout.js.map +1 -1
  116. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  117. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  118. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  119. package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
  120. package/dist/components/content/Layout/LayoutContent.js +1 -1
  121. package/dist/components/content/Layout/LayoutContent.js.map +1 -1
  122. package/dist/components/content/Layout/LayoutContext.js +1 -1
  123. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  124. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  125. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  126. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  127. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  128. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  129. package/dist/components/content/Layout/LayoutPane.js +2 -2
  130. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  131. package/dist/components/content/Layout/LayoutPanel.js +3 -3
  132. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  133. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  134. package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
  135. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  136. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  137. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  138. package/dist/components/content/Layout/index.js +1 -1
  139. package/dist/components/content/Layout/utils.js +1 -1
  140. package/dist/components/content/Paragraph.js +1 -1
  141. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  142. package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
  143. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  144. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  145. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  146. package/dist/components/content/Result/Result.js +2 -2
  147. package/dist/components/content/Result/Result.js.map +1 -1
  148. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  149. package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
  150. package/dist/components/content/Tag/Tag.d.ts +0 -1
  151. package/dist/components/content/Tag/Tag.js +1 -1
  152. package/dist/components/content/Tag/Tag.js.map +1 -1
  153. package/dist/components/content/Text.js +1 -1
  154. package/dist/components/content/TextItem/TextItem.js +1 -1
  155. package/dist/components/content/Title.js +1 -1
  156. package/dist/components/content/Title.js.map +1 -1
  157. package/dist/components/content/Tree/Tree.js +1 -1
  158. package/dist/components/content/Tree/Tree.js.map +1 -1
  159. package/dist/components/content/Tree/TreeNode.js +5 -5
  160. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  161. package/dist/components/content/Tree/checked-keys.js +1 -1
  162. package/dist/components/content/Tree/rowId.js +1 -1
  163. package/dist/components/content/Tree/styled.js +1 -1
  164. package/dist/components/content/Tree/styled.js.map +1 -1
  165. package/dist/components/content/Tree/tree-index.js +1 -1
  166. package/dist/components/content/Tree/types.d.ts +1 -1
  167. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  168. package/dist/components/content/Tree/use-checkbox-tree.js.map +1 -1
  169. package/dist/components/content/Tree/use-load-data.js +1 -1
  170. package/dist/components/content/Tree/use-load-data.js.map +1 -1
  171. package/dist/components/content/highlightText.js +1 -1
  172. package/dist/components/content/use-auto-tooltip.js +1 -1
  173. package/dist/components/data/DataTable/DataTable.js +1 -1
  174. package/dist/components/data/DataTable/DataTable.js.map +1 -1
  175. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  176. package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
  177. package/dist/components/data/ItemTable/ItemTableBulkBar.js +2 -2
  178. package/dist/components/data/ItemTable/ItemTableBulkBar.js.map +1 -1
  179. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  180. package/dist/components/data/ItemTable/ItemTableDragPreview.js.map +1 -1
  181. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  182. package/dist/components/data/ItemTable/ItemTableFooter.js.map +1 -1
  183. package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -2
  184. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  185. package/dist/components/data/ItemTable/item-table-sections.js +1 -1
  186. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  187. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  188. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  189. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  190. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  191. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  192. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  193. package/dist/components/data/TableBase/ColumnResizer.js.map +1 -1
  194. package/dist/components/data/TableBase/RowCollection.js +1 -1
  195. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  196. package/dist/components/data/TableBase/TableHeaderCell.js.map +1 -1
  197. package/dist/components/data/TableBase/TableRow.js +1 -1
  198. package/dist/components/data/TableBase/TableRow.js.map +1 -1
  199. package/dist/components/data/TableBase/TableRowLink.js +1 -1
  200. package/dist/components/data/TableBase/TableView.js +6 -6
  201. package/dist/components/data/TableBase/TableView.js.map +1 -1
  202. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  203. package/dist/components/data/TableBase/column-header.js +1 -1
  204. package/dist/components/data/TableBase/column-menu.js +1 -1
  205. package/dist/components/data/TableBase/column-menu.js.map +1 -1
  206. package/dist/components/data/TableBase/column-styles.js +1 -1
  207. package/dist/components/data/TableBase/column-tint.js +1 -1
  208. package/dist/components/data/TableBase/row-menu.js +1 -1
  209. package/dist/components/data/TableBase/styled.js +1 -1
  210. package/dist/components/data/TableBase/styled.js.map +1 -1
  211. package/dist/components/data/TableBase/table-body-sections.js +1 -1
  212. package/dist/components/data/TableBase/table-tree.js +1 -1
  213. package/dist/components/data/TableBase/types.js +1 -1
  214. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  215. package/dist/components/data/TableBase/use-cell-selection.js.map +1 -1
  216. package/dist/components/data/TableBase/use-column-menu.js +2 -2
  217. package/dist/components/data/TableBase/use-column-order.js +1 -1
  218. package/dist/components/data/TableBase/use-column-order.js.map +1 -1
  219. package/dist/components/data/TableBase/use-column-window.js +1 -1
  220. package/dist/components/data/TableBase/use-container-width.js +1 -1
  221. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  222. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  223. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  224. package/dist/components/data/TableBase/use-table-search.js +1 -1
  225. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  226. package/dist/components/data/TableBase/use-table-selection.js.map +1 -1
  227. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  228. package/dist/components/data/TableBase/use-table-sort.js.map +1 -1
  229. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  230. package/dist/components/data/TableBase/use-table-sorts.js.map +1 -1
  231. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  232. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  233. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  234. package/dist/components/data/TableBase/use-table-tree-state.js.map +1 -1
  235. package/dist/components/fields/Checkbox/Checkbox.d.ts +0 -1
  236. package/dist/components/fields/Checkbox/Checkbox.js +3 -3
  237. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  238. package/dist/components/fields/Checkbox/CheckboxGroup.d.ts +0 -1
  239. package/dist/components/fields/Checkbox/CheckboxGroup.js +3 -3
  240. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  241. package/dist/components/fields/Checkbox/context.js +1 -1
  242. package/dist/components/fields/ColorInput/ColorInput.d.ts +0 -1
  243. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  244. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  245. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +0 -3
  246. package/dist/components/fields/ColorPicker/ColorPicker.js +3 -3
  247. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  248. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  249. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.d.ts +0 -1
  250. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +2 -2
  251. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  252. package/dist/components/fields/ComboBox/ComboBox.d.ts +0 -1
  253. package/dist/components/fields/ComboBox/ComboBox.js +6 -6
  254. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  255. package/dist/components/fields/ComboBox/comboBoxOptions.js +1 -1
  256. package/dist/components/fields/CommandTextArea/CommandTextArea.d.ts +1 -2
  257. package/dist/components/fields/CommandTextArea/CommandTextArea.js +2 -2
  258. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  259. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  260. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  261. package/dist/components/fields/DatePicker/CalendarPopover.js +1 -1
  262. package/dist/components/fields/DatePicker/DateInput.d.ts +0 -1
  263. package/dist/components/fields/DatePicker/DateInput.js +2 -2
  264. package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
  265. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  266. package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
  267. package/dist/components/fields/DatePicker/DatePicker.d.ts +0 -1
  268. package/dist/components/fields/DatePicker/DatePicker.js +2 -2
  269. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  270. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  271. package/dist/components/fields/DatePicker/DatePickerButton.js.map +1 -1
  272. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  273. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  274. package/dist/components/fields/DatePicker/DatePickerInput.js.map +1 -1
  275. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  276. package/dist/components/fields/DatePicker/DateRangePicker.d.ts +0 -1
  277. package/dist/components/fields/DatePicker/DateRangePicker.js +2 -2
  278. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  279. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +0 -1
  280. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +2 -2
  281. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  282. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  283. package/dist/components/fields/DatePicker/PeriodPicker.d.ts +0 -1
  284. package/dist/components/fields/DatePicker/PeriodPicker.js +2 -2
  285. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  286. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  287. package/dist/components/fields/DatePicker/TimeInput.d.ts +0 -1
  288. package/dist/components/fields/DatePicker/TimeInput.js +2 -2
  289. package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
  290. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  291. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  292. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  293. package/dist/components/fields/DatePicker/period.js +1 -1
  294. package/dist/components/fields/DatePicker/props.js +1 -1
  295. package/dist/components/fields/DatePicker/utils.js +1 -1
  296. package/dist/components/fields/FileInput/FileInput.d.ts +0 -1
  297. package/dist/components/fields/FileInput/FileInput.js +3 -3
  298. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  299. package/dist/components/fields/FilterListBox/FilterListBox.js +3 -3
  300. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  301. package/dist/components/fields/FilterListBox/styled.js +1 -1
  302. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +0 -3
  303. package/dist/components/fields/FilterPicker/FilterPicker.js +8 -8
  304. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  305. package/dist/components/fields/FilterPicker/FilterTree.js +2 -2
  306. package/dist/components/fields/FilterPicker/FilterTree.js.map +1 -1
  307. package/dist/components/fields/Input/Input.d.ts +0 -1
  308. package/dist/components/fields/Input/Input.js +1 -1
  309. package/dist/components/fields/Input/Input.js.map +1 -1
  310. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  311. package/dist/components/fields/ListBox/ListBox.js +4 -4
  312. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  313. package/dist/components/fields/ListBox/optionId.js +1 -1
  314. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +2 -2
  315. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  316. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  317. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  318. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  319. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  320. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  321. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  322. package/dist/components/fields/PasswordInput/PasswordInput.js +2 -2
  323. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  324. package/dist/components/fields/Picker/Picker.d.ts +0 -2
  325. package/dist/components/fields/Picker/Picker.js +8 -8
  326. package/dist/components/fields/Picker/Picker.js.map +1 -1
  327. package/dist/components/fields/RadioGroup/Radio.d.ts +0 -1
  328. package/dist/components/fields/RadioGroup/Radio.js +2 -2
  329. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  330. package/dist/components/fields/RadioGroup/RadioGroup.d.ts +0 -1
  331. package/dist/components/fields/RadioGroup/RadioGroup.js +3 -3
  332. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  333. package/dist/components/fields/RadioGroup/context.js +1 -1
  334. package/dist/components/fields/SearchComboBox/SearchComboBox.d.ts +0 -1
  335. package/dist/components/fields/SearchComboBox/SearchComboBox.js +6 -6
  336. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  337. package/dist/components/fields/SearchInput/SearchInput.js +2 -2
  338. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  339. package/dist/components/fields/Select/Select.d.ts +1 -2
  340. package/dist/components/fields/Select/Select.js +7 -7
  341. package/dist/components/fields/Select/Select.js.map +1 -1
  342. package/dist/components/fields/Slider/Gradation.js +1 -1
  343. package/dist/components/fields/Slider/HueSlider.js +1 -1
  344. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  345. package/dist/components/fields/Slider/Slider.js +1 -1
  346. package/dist/components/fields/Slider/Slider.js.map +1 -1
  347. package/dist/components/fields/Slider/SliderBase.js +2 -2
  348. package/dist/components/fields/Slider/SliderBase.js.map +1 -1
  349. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  350. package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
  351. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  352. package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
  353. package/dist/components/fields/Slider/elements.js +1 -1
  354. package/dist/components/fields/Slider/index.js +2 -2
  355. package/dist/components/fields/Slider/types.d.ts +0 -1
  356. package/dist/components/fields/Switch/Switch.d.ts +0 -1
  357. package/dist/components/fields/Switch/Switch.js +3 -3
  358. package/dist/components/fields/Switch/Switch.js.map +1 -1
  359. package/dist/components/fields/TagInput/TagInput.js +5 -5
  360. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  361. package/dist/components/fields/TagInput/TagList.js +1 -1
  362. package/dist/components/fields/TagInput/TagList.js.map +1 -1
  363. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  364. package/dist/components/fields/TagInput/useTagError.js +1 -1
  365. package/dist/components/fields/TextArea/TextArea.js +2 -2
  366. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  367. package/dist/components/fields/TextInput/TextInput.js +2 -2
  368. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  369. package/dist/components/fields/TextInput/TextInputBase.d.ts +0 -1
  370. package/dist/components/fields/TextInput/TextInputBase.js +3 -3
  371. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  372. package/dist/components/fields/TextInput/displayed-validation.js +1 -1
  373. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  374. package/dist/components/fields/TextInput/useAutoSizeTextArea.js.map +1 -1
  375. package/dist/components/fields/TextInputMapper/TextInputMapper.d.ts +0 -1
  376. package/dist/components/fields/TextInputMapper/TextInputMapper.js +3 -3
  377. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  378. package/dist/components/fields/TriggerActions.js +1 -1
  379. package/dist/components/fields/color/ColorPanel.js +1 -1
  380. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  381. package/dist/components/fields/color/channels.js +1 -1
  382. package/dist/components/fields/color/color.js +1 -1
  383. package/dist/components/fields/color/context.js +1 -1
  384. package/dist/components/fields/index.d.ts +2 -2
  385. package/dist/components/fields/option-origin-press.js +1 -1
  386. package/dist/components/form/FieldWrapper/FieldWrapper.js +2 -2
  387. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  388. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  389. package/dist/components/form/FieldWrapper/types.d.ts +0 -1
  390. package/dist/components/form/Form/Field.d.ts +0 -1
  391. package/dist/components/form/Form/Field.js +3 -3
  392. package/dist/components/form/Form/Field.js.map +1 -1
  393. package/dist/components/form/Form/Form.d.ts +1 -26
  394. package/dist/components/form/Form/Form.js +7 -116
  395. package/dist/components/form/Form/Form.js.map +1 -1
  396. package/dist/components/form/Form/FormContext.d.ts +30 -0
  397. package/dist/components/form/Form/FormContext.js +79 -0
  398. package/dist/components/form/Form/FormContext.js.map +1 -0
  399. package/dist/components/form/Form/FormElement.js +49 -0
  400. package/dist/components/form/Form/FormElement.js.map +1 -0
  401. package/dist/components/form/Form/ModernFormRoot.js +3 -2
  402. package/dist/components/form/Form/ModernFormRoot.js.map +1 -1
  403. package/dist/components/form/Form/ResetButton/ResetButton.js +2 -2
  404. package/dist/components/form/Form/ResetButton/ResetButton.js.map +1 -1
  405. package/dist/components/form/Form/SubmitButton/SubmitButton.js +2 -2
  406. package/dist/components/form/Form/SubmitButton/SubmitButton.js.map +1 -1
  407. package/dist/components/form/Form/SubmitError.d.ts +0 -1
  408. package/dist/components/form/Form/SubmitError.js +3 -3
  409. package/dist/components/form/Form/SubmitError.js.map +1 -1
  410. package/dist/components/form/Form/backend.js +1 -1
  411. package/dist/components/form/Form/index.d.ts +2 -1
  412. package/dist/components/form/Form/index.js +6 -5
  413. package/dist/components/form/Form/index.js.map +1 -1
  414. package/dist/components/form/Form/modern/actions.js +1 -1
  415. package/dist/components/form/Form/modern/context.js +1 -1
  416. package/dist/components/form/Form/modern/controller.js +1 -1
  417. package/dist/components/form/Form/modern/field-binding.js +1 -1
  418. package/dist/components/form/Form/modern/field.js +1 -1
  419. package/dist/components/form/Form/modern/react.js +1 -1
  420. package/dist/components/form/Form/modern/store.js +1 -1
  421. package/dist/components/form/Form/modern/validation.js +1 -1
  422. package/dist/components/form/Form/modern/values.js +1 -1
  423. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  424. package/dist/components/form/Form/use-field/types.d.ts +0 -1
  425. package/dist/components/form/Form/use-field/use-field-binding.js +2 -2
  426. package/dist/components/form/Form/use-field/use-field-props.js +4 -4
  427. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  428. package/dist/components/form/Form/use-field/use-field.d.ts +0 -1
  429. package/dist/components/form/Form/use-field/use-field.js +2 -2
  430. package/dist/components/form/Form/use-field/use-field.js.map +1 -1
  431. package/dist/components/form/Form/use-form.js +1 -1
  432. package/dist/components/form/Form/validation.js +1 -1
  433. package/dist/components/form/Label.d.ts +0 -1
  434. package/dist/components/form/Label.js +1 -1
  435. package/dist/components/form/Label.js.map +1 -1
  436. package/dist/components/form/field-chrome.js +1 -1
  437. package/dist/components/form/field-layout.js +1 -1
  438. package/dist/components/form/field-layout.js.map +1 -1
  439. package/dist/components/form/index.d.ts +2 -1
  440. package/dist/components/form/legacy-tooltip.js +1 -1
  441. package/dist/components/form/validation/ValidationIndicator.d.ts +0 -1
  442. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  443. package/dist/components/form/validation/ValidationIndicator.js.map +1 -1
  444. package/dist/components/form/validation/resolve-validation-props.d.ts +0 -1
  445. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  446. package/dist/components/form/validation/resolve-validation-props.js.map +1 -1
  447. package/dist/components/form/validation/use-validation-props.js +1 -1
  448. package/dist/components/form/validation/use-validation-props.js.map +1 -1
  449. package/dist/components/form/wrapper.d.ts +0 -1
  450. package/dist/components/form/wrapper.js +1 -1
  451. package/dist/components/form/wrapper.js.map +1 -1
  452. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  453. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  454. package/dist/components/layout/Flex.js +1 -1
  455. package/dist/components/layout/Flow.js +1 -1
  456. package/dist/components/layout/Grid.js +1 -1
  457. package/dist/components/layout/Panel.js +1 -1
  458. package/dist/components/layout/Prefix.js +1 -1
  459. package/dist/components/layout/Prefix.js.map +1 -1
  460. package/dist/components/layout/ResizablePanel.js +2 -2
  461. package/dist/components/layout/Space.js +1 -1
  462. package/dist/components/layout/Suffix.js +1 -1
  463. package/dist/components/layout/Suffix.js.map +1 -1
  464. package/dist/components/navigation/Pagination/Pagination.js +3 -3
  465. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  466. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  467. package/dist/components/navigation/Pagination/use-pagination.js.map +1 -1
  468. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  469. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  470. package/dist/components/navigation/Tabs/TabButton.js +4 -4
  471. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  472. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  473. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  474. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  475. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  476. package/dist/components/navigation/Tabs/Tabs.js +2 -2
  477. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  478. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  479. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  480. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  481. package/dist/components/navigation/Tabs/segmented-styles.js +1 -1
  482. package/dist/components/navigation/Tabs/styled.js +1 -1
  483. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  484. package/dist/components/navigation/Tabs/types.d.ts +2 -2
  485. package/dist/components/navigation/Tabs/types.js +1 -1
  486. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  487. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  488. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  489. package/dist/components/other/Calendar/Calendar.js +1 -1
  490. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  491. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  492. package/dist/components/other/Calendar/CalendarHeader.js +2 -2
  493. package/dist/components/other/Calendar/CalendarHeader.js.map +1 -1
  494. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  495. package/dist/components/other/Calendar/CalendarPanel.js.map +1 -1
  496. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  497. package/dist/components/other/Calendar/PeriodCalendar.js.map +1 -1
  498. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  499. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  500. package/dist/components/other/Calendar/styled.js +1 -1
  501. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  502. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  503. package/dist/components/overlays/AlertDialog/AlertDialog.js +2 -2
  504. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  505. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  506. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  507. package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
  508. package/dist/components/overlays/AlertDialog/types.d.ts +0 -1
  509. package/dist/components/overlays/Dialog/Dialog.js +2 -2
  510. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  511. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  512. package/dist/components/overlays/Dialog/DialogForm.js +2 -2
  513. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  514. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +0 -1
  515. package/dist/components/overlays/Dialog/DialogTrigger.js +5 -5
  516. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  517. package/dist/components/overlays/Dialog/ModernDialogForm.js +2 -2
  518. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  519. package/dist/components/overlays/Dialog/context.js +1 -1
  520. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  521. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  522. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  523. package/dist/components/overlays/Dialog/use-dialog-container.js.map +1 -1
  524. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +1 -1
  525. package/dist/components/overlays/Dialog/use-dismiss-confirmation.js +1 -1
  526. package/dist/components/overlays/Dialog/use-dismiss-confirmation.js.map +1 -1
  527. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +1 -1
  528. package/dist/components/overlays/Modal/Modal.js +2 -2
  529. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  530. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  531. package/dist/components/overlays/Modal/OpenTransitionContext.js.map +1 -1
  532. package/dist/components/overlays/Modal/Overlay.js +1 -1
  533. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  534. package/dist/components/overlays/Modal/Popover.js +2 -2
  535. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  536. package/dist/components/overlays/Modal/Tray.js +2 -2
  537. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  538. package/dist/components/overlays/Modal/Underlay.js +1 -1
  539. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  540. package/dist/components/overlays/Notifications/Notification.js +1 -1
  541. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  542. package/dist/components/overlays/Notifications/NotificationAction.js.map +1 -1
  543. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  544. package/dist/components/overlays/Notifications/NotificationCard.js.map +1 -1
  545. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  546. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  547. package/dist/components/overlays/Notifications/NotificationItem.js.map +1 -1
  548. package/dist/components/overlays/Notifications/OverlayContainer.js +2 -2
  549. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  550. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  551. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  552. package/dist/components/overlays/Notifications/PersistentNotificationsList.js.map +1 -1
  553. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  554. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  555. package/dist/components/overlays/Notifications/index.js +1 -1
  556. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  557. package/dist/components/overlays/Notifications/use-notification-state.js.map +1 -1
  558. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  559. package/dist/components/overlays/Notifications/use-notifications.js.map +1 -1
  560. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  561. package/dist/components/overlays/Notifications/use-overlay-timers.js.map +1 -1
  562. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  563. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  564. package/dist/components/overlays/Notifications/use-persistent-state.js.map +1 -1
  565. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  566. package/dist/components/overlays/Notifications/use-toast-state.js.map +1 -1
  567. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  568. package/dist/components/overlays/Toast/index.js +2 -2
  569. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  570. package/dist/components/overlays/Toast/useProgressToast.js.map +1 -1
  571. package/dist/components/overlays/Toast/useToast.js +2 -2
  572. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  573. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  574. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  575. package/dist/components/overlays/Tooltip/TooltipTrigger.js +3 -3
  576. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  577. package/dist/components/overlays/Tooltip/context.js +1 -1
  578. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  579. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  580. package/dist/components/portal/Portal.js +1 -1
  581. package/dist/components/portal/PortalProvider.js +1 -1
  582. package/dist/components/portal/usePortal.js +1 -1
  583. package/dist/components/shared/DraggableCollection.js +1 -1
  584. package/dist/components/shared/InvalidIcon.js +1 -1
  585. package/dist/components/shared/ValidIcon.js +1 -1
  586. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  587. package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
  588. package/dist/components/status/Spin/Cube.js +1 -1
  589. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  590. package/dist/components/status/Spin/Spin.js +1 -1
  591. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  592. package/dist/data/item-themes.js +8 -32
  593. package/dist/data/item-themes.js.map +1 -1
  594. package/dist/data/themes.js +1 -1
  595. package/dist/eslint-plugin/defaults.generated.js +5 -1
  596. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  597. package/dist/eslint-plugin/index.js +1 -1
  598. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  599. package/dist/i18n/I18nProvider.js +1 -1
  600. package/dist/i18n/createFormatter.js +1 -1
  601. package/dist/i18n/index.js +4 -4
  602. package/dist/i18n/instance.js +3 -3
  603. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  604. package/dist/i18n/locales/en-US/uikit.js +1 -1
  605. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  606. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  607. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  608. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  609. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  610. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  611. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  612. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  613. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  614. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  615. package/dist/i18n/locales.js +1 -1
  616. package/dist/i18n/namespace.js +1 -1
  617. package/dist/i18n/useFormatter.js +1 -1
  618. package/dist/i18n/useI18n.js +1 -1
  619. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  620. package/dist/icons/AdjustmentsIcon.js +1 -1
  621. package/dist/icons/AiIcon.js +1 -1
  622. package/dist/icons/AreaChartIcon.js +1 -1
  623. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  624. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  625. package/dist/icons/BackwardIcon.js +1 -1
  626. package/dist/icons/BarChartIcon.js +1 -1
  627. package/dist/icons/BellFilledIcon.js +1 -1
  628. package/dist/icons/BellIcon.js +1 -1
  629. package/dist/icons/BooleanIcon.js +1 -1
  630. package/dist/icons/CalendarEditIcon.js +1 -1
  631. package/dist/icons/CalendarIcon.js +1 -1
  632. package/dist/icons/CaretDownIcon.js +1 -1
  633. package/dist/icons/CaretUpIcon.js +1 -1
  634. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  635. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  636. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  637. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  638. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  639. package/dist/icons/ChartBarLineIcon.js +1 -1
  640. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  641. package/dist/icons/ChartBarStackedIcon.js +1 -1
  642. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  643. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  644. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  645. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  646. package/dist/icons/ChartBubbleIcon.js +1 -1
  647. package/dist/icons/ChartDonut2Icon.js +1 -1
  648. package/dist/icons/ChartFunnelIcon.js +1 -1
  649. package/dist/icons/ChartHeatmapIcon.js +1 -1
  650. package/dist/icons/ChartKPIIcon.js +1 -1
  651. package/dist/icons/ChartPie2Icon.js +1 -1
  652. package/dist/icons/ChartScatterIcon.js +1 -1
  653. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  654. package/dist/icons/CheckCircleIcon.js +1 -1
  655. package/dist/icons/CheckIcon.js +1 -1
  656. package/dist/icons/CircleFilledIcon.js +1 -1
  657. package/dist/icons/ClearIcon.js +1 -1
  658. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  659. package/dist/icons/CloseCircleIcon.js +1 -1
  660. package/dist/icons/CloseIcon.js +1 -1
  661. package/dist/icons/CodeIcon.js +1 -1
  662. package/dist/icons/ColumnTotalIcon.js +1 -1
  663. package/dist/icons/CopyIcon.js +1 -1
  664. package/dist/icons/CountIcon.js +1 -1
  665. package/dist/icons/CubeIcon.js +1 -1
  666. package/dist/icons/CubePauseIcon.js +1 -1
  667. package/dist/icons/CubePlayIcon.js +1 -1
  668. package/dist/icons/CurrencyDollarIcon.js +1 -1
  669. package/dist/icons/DangerIcon.js +1 -1
  670. package/dist/icons/DashboardIcon.js +1 -1
  671. package/dist/icons/DatabaseIcon.js +1 -1
  672. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  673. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  674. package/dist/icons/DirectionIcon.js +1 -1
  675. package/dist/icons/DonutIcon.js +1 -1
  676. package/dist/icons/DownIcon.js +1 -1
  677. package/dist/icons/EditIcon.js +1 -1
  678. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  679. package/dist/icons/ExclamationCircleIcon.js +1 -1
  680. package/dist/icons/ExclamationIcon.js +1 -1
  681. package/dist/icons/EyeIcon.js +1 -1
  682. package/dist/icons/EyeInvisibleIcon.js +1 -1
  683. package/dist/icons/FilterIcon.js +1 -1
  684. package/dist/icons/FolderFilledIcon.js +1 -1
  685. package/dist/icons/FolderIcon.js +1 -1
  686. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  687. package/dist/icons/FolderOpenIcon.js +1 -1
  688. package/dist/icons/ForwardIcon.js +1 -1
  689. package/dist/icons/GripVerticalIcon.js +1 -1
  690. package/dist/icons/HierarchyIcon.js +1 -1
  691. package/dist/icons/HierarchyOpenIcon.js +1 -1
  692. package/dist/icons/Icon.js +1 -1
  693. package/dist/icons/InfoCircleIcon.js +1 -1
  694. package/dist/icons/InfoIcon.js +1 -1
  695. package/dist/icons/KeyIcon.js +1 -1
  696. package/dist/icons/LeftIcon.js +1 -1
  697. package/dist/icons/LineChartIcon.js +1 -1
  698. package/dist/icons/LoadingIcon.js +1 -1
  699. package/dist/icons/LockFilledIcon.js +1 -1
  700. package/dist/icons/LockIcon.js +1 -1
  701. package/dist/icons/MoreIcon.js +1 -1
  702. package/dist/icons/NotAllowedIcon.js +1 -1
  703. package/dist/icons/Number123Icon.js +1 -1
  704. package/dist/icons/NumberIcon.js +1 -1
  705. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  706. package/dist/icons/PauseCircleIcon.js +1 -1
  707. package/dist/icons/PauseIcon.js +1 -1
  708. package/dist/icons/PercentageIcon.js +1 -1
  709. package/dist/icons/PieChartIcon.js +1 -1
  710. package/dist/icons/PipetteIcon.js +1 -1
  711. package/dist/icons/PlayCircleIcon.js +1 -1
  712. package/dist/icons/PlayIcon.js +1 -1
  713. package/dist/icons/PlusIcon.js +1 -1
  714. package/dist/icons/ProgressBarIcon.js +1 -1
  715. package/dist/icons/ReloadIcon.js +1 -1
  716. package/dist/icons/ReportIcon.js +1 -1
  717. package/dist/icons/ReturnIcon.js +1 -1
  718. package/dist/icons/RightIcon.js +1 -1
  719. package/dist/icons/RowTotalsIcon.js +1 -1
  720. package/dist/icons/SchemeIcon.js +1 -1
  721. package/dist/icons/SearchIcon.js +1 -1
  722. package/dist/icons/SemanticQueryIcon.js +1 -1
  723. package/dist/icons/SettingsIcon.js +1 -1
  724. package/dist/icons/ShieldFilledIcon.js +1 -1
  725. package/dist/icons/ShieldIcon.js +1 -1
  726. package/dist/icons/SlashIcon.js +1 -1
  727. package/dist/icons/SparklesIcon.js +1 -1
  728. package/dist/icons/SqlIcon.js +1 -1
  729. package/dist/icons/StatsIcon.js +1 -1
  730. package/dist/icons/StopIcon.js +1 -1
  731. package/dist/icons/StringIcon.js +1 -1
  732. package/dist/icons/SubtotalsIcon.js +1 -1
  733. package/dist/icons/SwitchIcon.js +1 -1
  734. package/dist/icons/TableIcon.js +1 -1
  735. package/dist/icons/ThumbsDownIcon.js +1 -1
  736. package/dist/icons/ThumbsUpIcon.js +1 -1
  737. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  738. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  739. package/dist/icons/ThunderboltIcon.js +1 -1
  740. package/dist/icons/TimeIcon.js +1 -1
  741. package/dist/icons/TrashIcon.js +1 -1
  742. package/dist/icons/UnlockIcon.js +1 -1
  743. package/dist/icons/UpIcon.js +1 -1
  744. package/dist/icons/UserGroupIcon.js +1 -1
  745. package/dist/icons/UserIcon.js +1 -1
  746. package/dist/icons/UserLockIcon.js +1 -1
  747. package/dist/icons/ViewIcon.js +1 -1
  748. package/dist/icons/WarningFilledIcon.js +1 -1
  749. package/dist/icons/WarningIcon.js +1 -1
  750. package/dist/icons/wrap-icon.js +1 -1
  751. package/dist/index.d.ts +29 -27
  752. package/dist/index.js +69 -69
  753. package/dist/probe/canonicalize.js +1 -1
  754. package/dist/probe/css.js +1 -1
  755. package/dist/probe/index.js +1 -1
  756. package/dist/provider.js +2 -2
  757. package/dist/providers/TrackingProvider.js +1 -1
  758. package/dist/providers/navigation-url.js +1 -1
  759. package/dist/providers/navigationAdapter.default.js +1 -1
  760. package/dist/providers/use-navigation.js +1 -1
  761. package/dist/tokens/all-tokens.js +1 -1
  762. package/dist/tokens/base.js +1 -1
  763. package/dist/tokens/color-seed.js +1 -1
  764. package/dist/tokens/color-theme.js +1 -1
  765. package/dist/tokens/colors.js +1 -1
  766. package/dist/tokens/layout.js +1 -1
  767. package/dist/tokens/lazy-styles.js +1 -1
  768. package/dist/tokens/legacy-color.js +1 -1
  769. package/dist/tokens/palette-config.js +1 -1
  770. package/dist/tokens/palette.js +23 -11
  771. package/dist/tokens/palette.js.map +1 -1
  772. package/dist/tokens/resolve.js +2 -2
  773. package/dist/tokens/shadows.js +1 -1
  774. package/dist/tokens/sizes.js +1 -1
  775. package/dist/tokens/spacing.js +1 -1
  776. package/dist/tokens/typography.js +1 -1
  777. package/dist/utils/ResizeSensor.js +1 -1
  778. package/dist/utils/colors.js +1 -1
  779. package/dist/utils/dotize.js +1 -1
  780. package/dist/utils/index.d.ts +1 -1
  781. package/dist/utils/is-dev-env.js +1 -1
  782. package/dist/utils/modules.js +1 -1
  783. package/dist/utils/promise.js +1 -1
  784. package/dist/utils/raf.js +1 -1
  785. package/dist/utils/random.js +1 -1
  786. package/dist/utils/range.js +1 -1
  787. package/dist/utils/react/RenderCache.js +1 -1
  788. package/dist/utils/react/Slots.js +1 -1
  789. package/dist/utils/react/chain.js +1 -1
  790. package/dist/utils/react/disabledProps.js +1 -1
  791. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  792. package/dist/utils/react/index.d.ts +3 -3
  793. package/dist/utils/react/index.js +13 -13
  794. package/dist/utils/react/interactions.js +1 -1
  795. package/dist/utils/react/isTextOnly.js +1 -1
  796. package/dist/utils/react/mapProps.js +1 -1
  797. package/dist/utils/react/mergeProps.js +1 -1
  798. package/dist/utils/react/nullableValue.js +1 -1
  799. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  800. package/dist/utils/react/programmaticFocus.js +1 -1
  801. package/dist/utils/react/resolveIcon.js +1 -1
  802. package/dist/utils/react/sharedStore.js +1 -1
  803. package/dist/utils/react/useBufferedValue.js +1 -1
  804. package/dist/utils/react/useCombinedRefs.js +1 -1
  805. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  806. package/dist/utils/react/useEventBus.js +1 -1
  807. package/dist/utils/react/useId.js +1 -1
  808. package/dist/utils/react/useIsDarwin.js +1 -1
  809. package/dist/utils/react/useKeySymbols.js +1 -1
  810. package/dist/utils/react/useLayoutEffect.js +1 -1
  811. package/dist/utils/react/useLocalStorage.js +1 -1
  812. package/dist/utils/react/useMergeStyles.js +1 -1
  813. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  814. package/dist/utils/react/useOverlayEscapeGuard.js.map +1 -1
  815. package/dist/utils/react/usePopoverSync.js +1 -1
  816. package/dist/utils/react/useQaProps.js +1 -1
  817. package/dist/utils/react/useScheme.js +1 -1
  818. package/dist/utils/react/useViewportSize.js +1 -1
  819. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  820. package/dist/utils/selection.js +1 -1
  821. package/dist/utils/styles.js +1 -1
  822. package/dist/utils/tree.js +1 -1
  823. package/dist/utils/warnings.js +1 -1
  824. package/dist/version.js +2 -2
  825. package/docs/components/actions/Button.md +10 -0
  826. package/docs/components/actions/ButtonSplit.md +1 -1
  827. package/docs/glaze/contrast.mdx +751 -0
  828. package/docs/glaze/exporting.mdx +635 -0
  829. package/docs/glaze/getting-started.mdx +487 -0
  830. package/docs/glaze/hdr.mdx +523 -0
  831. package/docs/glaze/methodology.mdx +979 -0
  832. package/docs/glaze/migration.md +476 -285
  833. package/docs/glaze/mixes.mdx +348 -0
  834. package/docs/glaze/okhst.mdx +692 -0
  835. package/docs/glaze/reference/color-definitions.md +552 -0
  836. package/docs/glaze/reference/color-tokens.md +421 -0
  837. package/docs/glaze/reference/configuration.md +532 -0
  838. package/docs/glaze/reference/contrast.md +279 -0
  839. package/docs/glaze/reference/index.md +225 -0
  840. package/docs/glaze/reference/output.md +714 -0
  841. package/docs/glaze/reference/palette.md +435 -0
  842. package/docs/glaze/reference/theme.md +332 -0
  843. package/docs/glaze/reference/utilities.md +646 -0
  844. package/docs/glaze/schemes.mdx +644 -0
  845. package/docs/glaze/shadows-and-glows.mdx +550 -0
  846. package/package.json +4 -4
  847. package/dist/components/actions/index.js +0 -29
  848. package/dist/components/actions/index.js.map +0 -1
  849. package/dist/components/fields/ListBoxPopover/ListBoxPopover.d.ts +0 -4
  850. package/dist/components/fields/ListBoxPopover/index.d.ts +0 -5
  851. package/dist/components/overlays/Modal/Modal.d.ts +0 -3
  852. package/dist/components/overlays/Modal/Popover.d.ts +0 -7
  853. package/dist/components/overlays/Modal/Tray.d.ts +0 -5
  854. package/dist/components/overlays/Modal/Underlay.d.ts +0 -3
  855. package/dist/components/overlays/Modal/index.d.ts +0 -8
  856. package/docs/glaze/api.md +0 -2021
  857. package/docs/glaze/methodology.md +0 -686
  858. package/docs/glaze/okhst.md +0 -207
@@ -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","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","_c","mergeProps"],"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 // A one-device-pixel halo outlines the light tooltip.\n '$shadow-blur': '1px',\n filter: {\n '': false,\n light: 'drop-shadow(0 0 $shadow-blur #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 // The arrow is drawn by its borders around a one-device-pixel core.\n '$tip-size': '1px',\n width: '$tip-size',\n height: '$tip-size',\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 - $tip-size), 0)',\n '[data-placement=\"bottom\"]':\n 'translate((-.375x - $tip-size), 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, ContainerStyleProps, 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
+ {"version":3,"file":"Tooltip.js","names":["createDOMRef","DOMRefValue","BaseProps","CONTAINER_STYLES","ContainerStyleProps","Styles","tasty","ForwardedRef","forwardRef","useContext","useImperativeHandle","useRef","AriaTooltipProps","useTooltip","mergeProps","mergeRefs","useLayoutEffect","extractStyles","useModalLayerRef","TooltipContext","PlacementAxis","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","_c","mergeProps"],"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 { mergeProps } from '../../../utils/react/mergeProps';\nimport { mergeRefs } from '../../../utils/react/useCombinedRefs';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { extractStyles } from '../../../utils/styles';\nimport { useModalLayerRef } from '../Modal/modal-containment';\n\nimport { TooltipContext } from './context';\n\nimport type { PlacementAxis } from '../../../shared';\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 // A one-device-pixel halo outlines the light tooltip.\n '$shadow-blur': '1px',\n filter: {\n '': false,\n light: 'drop-shadow(0 0 $shadow-blur #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 // The arrow is drawn by its borders around a one-device-pixel core.\n '$tip-size': '1px',\n width: '$tip-size',\n height: '$tip-size',\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 - $tip-size), 0)',\n '[data-placement=\"bottom\"]':\n 'translate((-.375x - $tip-size), 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, ContainerStyleProps, 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.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { Tooltip as _Tooltip } from "./Tooltip.js";
3
3
  import { TooltipTrigger } from "./TooltipTrigger.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,9 +1,9 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
- import { useEvent } from "../../../_internal/hooks/use-event.js";
4
- import { isDevEnv } from "../../../utils/is-dev-env.js";
5
3
  import { TooltipContext } from "./context.js";
6
4
  import { Tooltip as _Tooltip } from "./Tooltip.js";
5
+ import { useEvent } from "../../../_internal/hooks/use-event.js";
6
+ import { isDevEnv } from "../../../utils/is-dev-env.js";
7
7
  import { isFocusRestoration } from "../../../utils/react/programmaticFocus.js";
8
8
  import { Block } from "../../Block.js";
9
9
  import { ActiveZone as _ActiveZone } from "../../content/ActiveZone/ActiveZone.js";
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipTrigger.js","names":["FocusableProvider","Children","ContextType","createContext","FocusEvent","HTMLAttributes","isValidElement","ReactElement","ReactNode","RefObject","useContext","useEffectEvent","useRef","useState","Placement","TooltipTriggerProps","useOverlayPosition","useTooltipTrigger","useTooltipTriggerState","useEvent","isDevEnv","isFocusRestoration","useLayoutEffect","Block","ActiveZone","DisplayTransition","DisplayTransitionProps","Portal","TooltipContext","CubeTooltipProps","Tooltip","TooltipPositionOptions","Pick","Parameters","onClose","TooltipPositionContext","TooltipTransition","props","$","_c","hasShown","setHasShown","isShown","t0","Box","DOMRect","overlaps","a","b","bottom","top","right","left","isInView","trigger","Element","scrolled","EventTarget","rect","getBoundingClientRect","viewport","window","innerHeight","innerWidth","PositionedTooltip","tooltip","contextValue","t1","options","overlayProps","arrowProps","placement","updatePosition","t2","targetRef","current","event","target","Node","contains","HTMLInputElement","HTMLTextAreaElement","onScroll","t3","isOpen","listener","event_0","addEventListener","removeEventListener","t4","t5","t6","t7","DEFAULT_OFFSET","DEFAULT_CROSS_OFFSET","isTriggerFunction","value","TooltipTriggerFunction","isReactElement","P","isEmptyTooltip","type","toArray","children","every","child","triggerProps","HTMLElement","ref","CubeTooltipTriggerProps","crossOffset","offset","isMaterial","isLight","activeWrap","onOpenChange","defaultOpen","isDisabled","delay","closeDelay","disableFocusableProvider","TooltipTrigger","externalRef","triggerAction","shouldCloseOnPress","undefined","rawChildrenArray","Array","isArray","Error","console","warn","internalRef","tooltipTriggerRef","overlayRef","state","isTooltipDisabled","rawTriggerProps","tooltipProps","onFocus","close","positionOptions","shouldFlip","tooltipContextValue","tooltipContent","phase","transitionRef","Symbol","for","onClick","e","currentTarget","parentNode","click","t8","triggerContent","_c","Tooltip","ActiveZone"],"sources":["../../../../src/components/overlays/Tooltip/TooltipTrigger.tsx"],"sourcesContent":["import { FocusableProvider } from '@react-aria/focus';\nimport {\n Children,\n ContextType,\n createContext,\n FocusEvent,\n HTMLAttributes,\n isValidElement,\n ReactElement,\n ReactNode,\n RefObject,\n useContext,\n useEffectEvent,\n useRef,\n useState,\n} from 'react';\nimport {\n Placement,\n TooltipTriggerProps,\n useOverlayPosition,\n useTooltipTrigger,\n} from 'react-aria';\nimport { useTooltipTriggerState } from 'react-stately';\n\nimport { useEvent } from '../../../_internal';\nimport { isDevEnv } from '../../../utils/is-dev-env';\nimport { isFocusRestoration } from '../../../utils/react/programmaticFocus';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Block } from '../../Block';\nimport { ActiveZone } from '../../content/ActiveZone/ActiveZone';\nimport {\n DisplayTransition,\n DisplayTransitionProps,\n} from '../../helpers/DisplayTransition/DisplayTransition';\nimport { Portal } from '../../portal';\n\nimport { TooltipContext } from './context';\nimport { CubeTooltipProps, Tooltip } from './Tooltip';\n\ntype TooltipPositionOptions = Pick<\n Parameters<typeof useOverlayPosition>[0],\n | 'placement'\n | 'targetRef'\n | 'overlayRef'\n | 'offset'\n | 'crossOffset'\n | 'isOpen'\n | 'shouldFlip'\n> & {\n onClose: () => void;\n};\n\n// DisplayTransition preserves its last shown render prop during exit. Position\n// subscriptions must still see the current target, configuration and open state.\nconst TooltipPositionContext = createContext<TooltipPositionOptions>(null!);\n\nfunction TooltipTransition(\n props: Pick<DisplayTransitionProps, 'children' | 'isShown'>,\n) {\n const [hasShown, setHasShown] = useState(props.isShown);\n\n // Once opened, retain the transition owner through closing and reopening.\n // A never-opened tooltip has no animation resources to maintain.\n if (props.isShown && !hasShown) setHasShown(true);\n if (!hasShown && !props.isShown) return null;\n\n return <DisplayTransition {...props} />;\n}\n\ntype Box = Pick<DOMRect, 'top' | 'right' | 'bottom' | 'left'>;\n\nfunction overlaps(a: Box, b: Box) {\n return (\n a.bottom > b.top && a.top < b.bottom && a.right > b.left && a.left < b.right\n );\n}\n\n/**\n * Whether the trigger is still visible after `scrolled` scrolled: it overlaps\n * the viewport and, when an element scrolled, that element's box.\n */\nfunction isInView(trigger: Element, scrolled: EventTarget | null) {\n const rect = trigger.getBoundingClientRect();\n const viewport = {\n top: 0,\n left: 0,\n bottom: window.innerHeight,\n right: window.innerWidth,\n };\n\n return (\n overlaps(rect, viewport) &&\n (!(scrolled instanceof Element) ||\n overlaps(rect, scrolled.getBoundingClientRect()))\n );\n}\n\nfunction PositionedTooltip({\n tooltip,\n contextValue,\n}: {\n tooltip: ReactElement;\n contextValue: ContextType<typeof TooltipContext>;\n}) {\n const { onClose, ...options } = useContext(TooltipPositionContext);\n const { overlayProps, arrowProps, placement, updatePosition } =\n useOverlayPosition(options);\n\n // A scroll of the page or of an element that contains the trigger moves the\n // trigger. The tooltip follows it while it stays in view, and closes once it\n // is scrolled out. Closing on any scroll, as a popover does, would close the\n // tooltip a keyboard user just opened: focus scrolls a trigger into view —\n // the browser at once, a list a frame later — and the scroll is reported\n // after the tooltip opened.\n const onScroll = useEffectEvent((event: Event) => {\n const trigger = options.targetRef.current;\n const { target } = event;\n\n if (\n !trigger ||\n (target instanceof Node && !target.contains(trigger)) ||\n // A text field scrolls its own text to keep the caret in view.\n target instanceof HTMLInputElement ||\n target instanceof HTMLTextAreaElement\n ) {\n return;\n }\n\n if (isInView(trigger, target)) {\n updatePosition();\n } else {\n onClose();\n }\n });\n\n // Subscribed at commit, with the positioning, so a scroll reported on the\n // next frame is never missed.\n useLayoutEffect(() => {\n if (!options.isOpen) return;\n\n const listener = (event: Event) => onScroll(event);\n\n window.addEventListener('scroll', listener, true);\n\n return () => window.removeEventListener('scroll', listener, true);\n }, [options.isOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n ...contextValue,\n placement: placement || options.placement || 'top',\n overlayProps,\n arrowProps,\n updatePosition,\n }}\n >\n {tooltip}\n </TooltipContext.Provider>\n );\n}\n\nconst DEFAULT_OFFSET = 8; // Offset needed to reach 4px/5px (med/large) distance between tooltip and trigger button\nconst DEFAULT_CROSS_OFFSET = 0;\n\n// Type guards\nfunction isTriggerFunction(value: unknown): value is TooltipTriggerFunction {\n return typeof value === 'function';\n}\n\nfunction isReactElement<P = unknown>(value: unknown): value is ReactElement<P> {\n return isValidElement(value);\n}\n\n/**\n * Whether a `Tooltip` has nothing to show. The docs turn a tooltip off with\n * `title={null}`, and opening it anyway drew an empty bubble and described the\n * trigger by it. Only a `Tooltip` is inspected: another component may render\n * content of its own.\n */\nfunction isEmptyTooltip(tooltip: ReactElement<CubeTooltipProps>): boolean {\n return (\n tooltip.type === Tooltip &&\n Children.toArray(tooltip.props.children).every((child) => child === '')\n );\n}\n\nexport type TooltipTriggerFunction = (\n triggerProps: HTMLAttributes<HTMLElement>,\n ref: RefObject<HTMLElement>,\n) => ReactNode;\n\nexport interface CubeTooltipTriggerProps extends TooltipTriggerProps {\n children: [ReactElement | string | TooltipTriggerFunction, ReactElement];\n crossOffset?: number;\n offset?: number;\n placement?: Placement;\n isMaterial?: boolean;\n isLight?: boolean;\n /**\n * @deprecated Use function-as-first-child pattern instead.\n * Whether the trigger should have an ActiveZone wrap to make sure it's focusable and hoverable.\n * Otherwise, tooltip won't work.\n */\n activeWrap?: boolean;\n /**\n * External ref to use instead of internal ref (optional).\n */\n targetRef?: RefObject<HTMLElement>;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n /**\n * Whether the tooltip should be disabled, independent of the trigger.\n */\n isDisabled?: boolean;\n /**\n * The delay time for the tooltip to show up.\n * @default 250\n */\n delay?: number;\n /**\n * The delay time for the tooltip to close.\n * @default 500\n */\n closeDelay?: number;\n /**\n * By default, opens for both focus and hover. Can be made to open only for focus.\n */\n trigger?: 'focus';\n /**\n * When true, FocusableProvider won't be applied to the trigger.\n * Useful when trigger already handles focus or uses render props pattern.\n */\n disableFocusableProvider?: boolean;\n}\n\n/**\n * TooltipTrigger wraps around a trigger element and a Tooltip. It handles opening and closing\n * the Tooltip when the user hovers over or focuses the trigger, and positioning the Tooltip\n * relative to the trigger.\n */\nexport function TooltipTrigger(props: CubeTooltipTriggerProps) {\n let {\n children,\n activeWrap,\n targetRef: externalRef,\n crossOffset = DEFAULT_CROSS_OFFSET,\n isDisabled,\n isMaterial,\n isLight,\n offset = DEFAULT_OFFSET,\n trigger: triggerAction,\n delay = 250,\n shouldCloseOnPress,\n isOpen,\n onOpenChange,\n defaultOpen,\n disableFocusableProvider,\n } = props;\n\n // Extract both children without using React.Children.toArray so we don't lose\n // function-as-child (render-prop) which React.Children filters out.\n const rawChildrenArray = Array.isArray(children)\n ? (children as unknown[])\n : ([children] as unknown[]);\n\n const [trigger, tooltip] = rawChildrenArray;\n\n // Type guard the tooltip\n if (!isReactElement<CubeTooltipProps>(tooltip)) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the second child to be a valid React element (Tooltip component).',\n );\n }\n\n // Type guard the trigger\n if (\n !isTriggerFunction(trigger) &&\n !isReactElement(trigger) &&\n typeof trigger !== 'string'\n ) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the first child to be a function, React element, or string.',\n );\n }\n\n // Show deprecation warning for activeWrap\n if (activeWrap && isDevEnv()) {\n console.warn(\n 'CubeUIKit: The `activeWrap` prop is deprecated. Use function-as-first-child pattern instead.',\n );\n }\n\n let internalRef = useRef<HTMLElement>(null!);\n let tooltipTriggerRef = externalRef ?? internalRef;\n let overlayRef = useRef<HTMLDivElement>(null);\n\n let state = useTooltipTriggerState({ delay, ...props });\n\n // A tooltip with nothing to show is a disabled one.\n const isTooltipDisabled = isDisabled || isEmptyTooltip(tooltip);\n\n let { triggerProps: rawTriggerProps, tooltipProps } = useTooltipTrigger(\n {\n // Without it a disabled tooltip still opened — invisibly, since nothing\n // renders it — and while open React Aria's document-level listener eats\n // every `Escape`, so a Dialog under the pointer would not close.\n isDisabled: isTooltipDisabled,\n trigger: triggerAction,\n delay,\n isOpen,\n onOpenChange,\n defaultOpen,\n shouldCloseOnPress,\n },\n state,\n tooltipTriggerRef,\n );\n\n // A tooltip answers a user arriving at the trigger. Focus handed back by a\n // component — a popup returning it to the trigger it came from — is not that\n // arrival, but the DOM event is identical and the modality is still\n // \"keyboard\", so React Aria would show the tooltip anyway. It then absorbs\n // the user's next `Escape` from its own document-level listener, which is\n // how a Dialog ended up needing two presses to close (CUB-4839).\n //\n // Dropping the focus handler rather than closing after the fact: React Aria\n // decides to show inside it, so this never starts and nothing flashes.\n //\n // Covers both restore paths — ours and a `FocusScope`'s — see\n // `programmaticFocus`.\n const onFocus = useEvent((event: FocusEvent<HTMLElement>) => {\n if (isFocusRestoration()) return;\n\n rawTriggerProps.onFocus?.(event);\n });\n\n const triggerProps = {\n ...rawTriggerProps,\n onFocus,\n // A controlled `isOpen` still opens a disabled tooltip's state, and nothing\n // is rendered to describe the trigger by.\n 'aria-describedby': isTooltipDisabled\n ? undefined\n : rawTriggerProps['aria-describedby'],\n };\n\n const positionOptions: TooltipPositionOptions = {\n placement: props.placement || 'top',\n targetRef: tooltipTriggerRef,\n overlayRef,\n offset,\n crossOffset,\n isOpen: state.isOpen,\n // Documented on `Tooltip`, which renders inside the positioned layer, so\n // it is read from the element here.\n shouldFlip: tooltip.props.shouldFlip,\n // Called once a scroll carries the trigger out of view.\n onClose: () => state.close(true),\n };\n\n const tooltipContextValue = {\n state,\n ref: overlayRef,\n isMaterial,\n isLight,\n ...tooltipProps,\n };\n\n // Closed triggers retain their interaction state, but positioning resources\n // belong to the overlay's visible/closing lifetime rather than every label.\n const tooltipContent = (\n <TooltipPositionContext.Provider value={positionOptions}>\n <TooltipTransition isShown={state.isOpen && !isTooltipDisabled}>\n {({ phase, isShown, ref: transitionRef }) => (\n <Portal>\n <PositionedTooltip\n tooltip={tooltip}\n contextValue={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n />\n </Portal>\n )}\n </TooltipTransition>\n </TooltipPositionContext.Provider>\n );\n\n // Function trigger pattern (new)\n if (isTriggerFunction(trigger)) {\n return (\n <>\n {trigger(triggerProps, tooltipTriggerRef)}\n {tooltipContent}\n </>\n );\n }\n\n // Legacy element/string trigger pattern\n if (!activeWrap && typeof trigger === 'string') {\n console.warn(\n 'CubeUIKit: Tooltips are only supported on elements that are both focusable and hoverable. To solve this issue you can: 1) Use active element as a trigger (`Button`, `Link`, etc); 2) Use function-as-first-child pattern to manually apply trigger props; 3) Use `ActiveZone` component to manually wrap the content.',\n );\n\n return <Block>{trigger}</Block>;\n }\n\n function onClick(e) {\n e?.currentTarget?.parentNode.click();\n }\n\n const triggerContent = (\n <>\n {activeWrap ? (\n <ActiveZone onClick={onClick}>{trigger}</ActiveZone>\n ) : (\n trigger\n )}\n {tooltipContent}\n </>\n );\n\n if (disableFocusableProvider) {\n return triggerContent;\n }\n\n return (\n <FocusableProvider {...triggerProps} ref={tooltipTriggerRef}>\n {triggerContent}\n </FocusableProvider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TooltipTrigger.js","names":["FocusableProvider","Children","ContextType","createContext","FocusEvent","HTMLAttributes","isValidElement","ReactElement","ReactNode","RefObject","useContext","useEffectEvent","useRef","useState","Placement","TooltipTriggerProps","useOverlayPosition","useTooltipTrigger","useTooltipTriggerState","useEvent","isDevEnv","isFocusRestoration","useLayoutEffect","Block","ActiveZone","DisplayTransition","DisplayTransitionProps","Portal","TooltipContext","CubeTooltipProps","Tooltip","TooltipPositionOptions","Pick","Parameters","onClose","TooltipPositionContext","TooltipTransition","props","$","_c","hasShown","setHasShown","isShown","t0","Box","DOMRect","overlaps","a","b","bottom","top","right","left","isInView","trigger","Element","scrolled","EventTarget","rect","getBoundingClientRect","viewport","window","innerHeight","innerWidth","PositionedTooltip","tooltip","contextValue","t1","options","overlayProps","arrowProps","placement","updatePosition","t2","targetRef","current","event","target","Node","contains","HTMLInputElement","HTMLTextAreaElement","onScroll","t3","isOpen","listener","event_0","addEventListener","removeEventListener","t4","t5","t6","t7","DEFAULT_OFFSET","DEFAULT_CROSS_OFFSET","isTriggerFunction","value","TooltipTriggerFunction","isReactElement","P","isEmptyTooltip","type","toArray","children","every","child","triggerProps","HTMLElement","ref","CubeTooltipTriggerProps","crossOffset","offset","isMaterial","isLight","activeWrap","onOpenChange","defaultOpen","isDisabled","delay","closeDelay","disableFocusableProvider","TooltipTrigger","externalRef","triggerAction","shouldCloseOnPress","undefined","rawChildrenArray","Array","isArray","Error","console","warn","internalRef","tooltipTriggerRef","overlayRef","state","isTooltipDisabled","rawTriggerProps","tooltipProps","onFocus","close","positionOptions","shouldFlip","tooltipContextValue","tooltipContent","phase","transitionRef","Symbol","for","onClick","e","currentTarget","parentNode","click","t8","triggerContent","_c","Tooltip","ActiveZone"],"sources":["../../../../src/components/overlays/Tooltip/TooltipTrigger.tsx"],"sourcesContent":["import { FocusableProvider } from '@react-aria/focus';\nimport {\n Children,\n ContextType,\n createContext,\n FocusEvent,\n HTMLAttributes,\n isValidElement,\n ReactElement,\n ReactNode,\n RefObject,\n useContext,\n useEffectEvent,\n useRef,\n useState,\n} from 'react';\nimport {\n Placement,\n TooltipTriggerProps,\n useOverlayPosition,\n useTooltipTrigger,\n} from 'react-aria';\nimport { useTooltipTriggerState } from 'react-stately';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { isDevEnv } from '../../../utils/is-dev-env';\nimport { isFocusRestoration } from '../../../utils/react/programmaticFocus';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Block } from '../../Block';\nimport { ActiveZone } from '../../content/ActiveZone/ActiveZone';\nimport {\n DisplayTransition,\n DisplayTransitionProps,\n} from '../../helpers/DisplayTransition/DisplayTransition';\nimport { Portal } from '../../portal/Portal';\n\nimport { TooltipContext } from './context';\nimport { CubeTooltipProps, Tooltip } from './Tooltip';\n\ntype TooltipPositionOptions = Pick<\n Parameters<typeof useOverlayPosition>[0],\n | 'placement'\n | 'targetRef'\n | 'overlayRef'\n | 'offset'\n | 'crossOffset'\n | 'isOpen'\n | 'shouldFlip'\n> & {\n onClose: () => void;\n};\n\n// DisplayTransition preserves its last shown render prop during exit. Position\n// subscriptions must still see the current target, configuration and open state.\nconst TooltipPositionContext = createContext<TooltipPositionOptions>(null!);\n\nfunction TooltipTransition(\n props: Pick<DisplayTransitionProps, 'children' | 'isShown'>,\n) {\n const [hasShown, setHasShown] = useState(props.isShown);\n\n // Once opened, retain the transition owner through closing and reopening.\n // A never-opened tooltip has no animation resources to maintain.\n if (props.isShown && !hasShown) setHasShown(true);\n if (!hasShown && !props.isShown) return null;\n\n return <DisplayTransition {...props} />;\n}\n\ntype Box = Pick<DOMRect, 'top' | 'right' | 'bottom' | 'left'>;\n\nfunction overlaps(a: Box, b: Box) {\n return (\n a.bottom > b.top && a.top < b.bottom && a.right > b.left && a.left < b.right\n );\n}\n\n/**\n * Whether the trigger is still visible after `scrolled` scrolled: it overlaps\n * the viewport and, when an element scrolled, that element's box.\n */\nfunction isInView(trigger: Element, scrolled: EventTarget | null) {\n const rect = trigger.getBoundingClientRect();\n const viewport = {\n top: 0,\n left: 0,\n bottom: window.innerHeight,\n right: window.innerWidth,\n };\n\n return (\n overlaps(rect, viewport) &&\n (!(scrolled instanceof Element) ||\n overlaps(rect, scrolled.getBoundingClientRect()))\n );\n}\n\nfunction PositionedTooltip({\n tooltip,\n contextValue,\n}: {\n tooltip: ReactElement;\n contextValue: ContextType<typeof TooltipContext>;\n}) {\n const { onClose, ...options } = useContext(TooltipPositionContext);\n const { overlayProps, arrowProps, placement, updatePosition } =\n useOverlayPosition(options);\n\n // A scroll of the page or of an element that contains the trigger moves the\n // trigger. The tooltip follows it while it stays in view, and closes once it\n // is scrolled out. Closing on any scroll, as a popover does, would close the\n // tooltip a keyboard user just opened: focus scrolls a trigger into view —\n // the browser at once, a list a frame later — and the scroll is reported\n // after the tooltip opened.\n const onScroll = useEffectEvent((event: Event) => {\n const trigger = options.targetRef.current;\n const { target } = event;\n\n if (\n !trigger ||\n (target instanceof Node && !target.contains(trigger)) ||\n // A text field scrolls its own text to keep the caret in view.\n target instanceof HTMLInputElement ||\n target instanceof HTMLTextAreaElement\n ) {\n return;\n }\n\n if (isInView(trigger, target)) {\n updatePosition();\n } else {\n onClose();\n }\n });\n\n // Subscribed at commit, with the positioning, so a scroll reported on the\n // next frame is never missed.\n useLayoutEffect(() => {\n if (!options.isOpen) return;\n\n const listener = (event: Event) => onScroll(event);\n\n window.addEventListener('scroll', listener, true);\n\n return () => window.removeEventListener('scroll', listener, true);\n }, [options.isOpen]);\n\n return (\n <TooltipContext.Provider\n value={{\n ...contextValue,\n placement: placement || options.placement || 'top',\n overlayProps,\n arrowProps,\n updatePosition,\n }}\n >\n {tooltip}\n </TooltipContext.Provider>\n );\n}\n\nconst DEFAULT_OFFSET = 8; // Offset needed to reach 4px/5px (med/large) distance between tooltip and trigger button\nconst DEFAULT_CROSS_OFFSET = 0;\n\n// Type guards\nfunction isTriggerFunction(value: unknown): value is TooltipTriggerFunction {\n return typeof value === 'function';\n}\n\nfunction isReactElement<P = unknown>(value: unknown): value is ReactElement<P> {\n return isValidElement(value);\n}\n\n/**\n * Whether a `Tooltip` has nothing to show. The docs turn a tooltip off with\n * `title={null}`, and opening it anyway drew an empty bubble and described the\n * trigger by it. Only a `Tooltip` is inspected: another component may render\n * content of its own.\n */\nfunction isEmptyTooltip(tooltip: ReactElement<CubeTooltipProps>): boolean {\n return (\n tooltip.type === Tooltip &&\n Children.toArray(tooltip.props.children).every((child) => child === '')\n );\n}\n\nexport type TooltipTriggerFunction = (\n triggerProps: HTMLAttributes<HTMLElement>,\n ref: RefObject<HTMLElement>,\n) => ReactNode;\n\nexport interface CubeTooltipTriggerProps extends TooltipTriggerProps {\n children: [ReactElement | string | TooltipTriggerFunction, ReactElement];\n crossOffset?: number;\n offset?: number;\n placement?: Placement;\n isMaterial?: boolean;\n isLight?: boolean;\n /**\n * @deprecated Use function-as-first-child pattern instead.\n * Whether the trigger should have an ActiveZone wrap to make sure it's focusable and hoverable.\n * Otherwise, tooltip won't work.\n */\n activeWrap?: boolean;\n /**\n * External ref to use instead of internal ref (optional).\n */\n targetRef?: RefObject<HTMLElement>;\n isOpen?: boolean;\n onOpenChange?: (isOpen: boolean) => void;\n defaultOpen?: boolean;\n /**\n * Whether the tooltip should be disabled, independent of the trigger.\n */\n isDisabled?: boolean;\n /**\n * The delay time for the tooltip to show up.\n * @default 250\n */\n delay?: number;\n /**\n * The delay time for the tooltip to close.\n * @default 500\n */\n closeDelay?: number;\n /**\n * By default, opens for both focus and hover. Can be made to open only for focus.\n */\n trigger?: 'focus';\n /**\n * When true, FocusableProvider won't be applied to the trigger.\n * Useful when trigger already handles focus or uses render props pattern.\n */\n disableFocusableProvider?: boolean;\n}\n\n/**\n * TooltipTrigger wraps around a trigger element and a Tooltip. It handles opening and closing\n * the Tooltip when the user hovers over or focuses the trigger, and positioning the Tooltip\n * relative to the trigger.\n */\nexport function TooltipTrigger(props: CubeTooltipTriggerProps) {\n let {\n children,\n activeWrap,\n targetRef: externalRef,\n crossOffset = DEFAULT_CROSS_OFFSET,\n isDisabled,\n isMaterial,\n isLight,\n offset = DEFAULT_OFFSET,\n trigger: triggerAction,\n delay = 250,\n shouldCloseOnPress,\n isOpen,\n onOpenChange,\n defaultOpen,\n disableFocusableProvider,\n } = props;\n\n // Extract both children without using React.Children.toArray so we don't lose\n // function-as-child (render-prop) which React.Children filters out.\n const rawChildrenArray = Array.isArray(children)\n ? (children as unknown[])\n : ([children] as unknown[]);\n\n const [trigger, tooltip] = rawChildrenArray;\n\n // Type guard the tooltip\n if (!isReactElement<CubeTooltipProps>(tooltip)) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the second child to be a valid React element (Tooltip component).',\n );\n }\n\n // Type guard the trigger\n if (\n !isTriggerFunction(trigger) &&\n !isReactElement(trigger) &&\n typeof trigger !== 'string'\n ) {\n throw new Error(\n 'CubeUIKit: TooltipTrigger expects the first child to be a function, React element, or string.',\n );\n }\n\n // Show deprecation warning for activeWrap\n if (activeWrap && isDevEnv()) {\n console.warn(\n 'CubeUIKit: The `activeWrap` prop is deprecated. Use function-as-first-child pattern instead.',\n );\n }\n\n let internalRef = useRef<HTMLElement>(null!);\n let tooltipTriggerRef = externalRef ?? internalRef;\n let overlayRef = useRef<HTMLDivElement>(null);\n\n let state = useTooltipTriggerState({ delay, ...props });\n\n // A tooltip with nothing to show is a disabled one.\n const isTooltipDisabled = isDisabled || isEmptyTooltip(tooltip);\n\n let { triggerProps: rawTriggerProps, tooltipProps } = useTooltipTrigger(\n {\n // Without it a disabled tooltip still opened — invisibly, since nothing\n // renders it — and while open React Aria's document-level listener eats\n // every `Escape`, so a Dialog under the pointer would not close.\n isDisabled: isTooltipDisabled,\n trigger: triggerAction,\n delay,\n isOpen,\n onOpenChange,\n defaultOpen,\n shouldCloseOnPress,\n },\n state,\n tooltipTriggerRef,\n );\n\n // A tooltip answers a user arriving at the trigger. Focus handed back by a\n // component — a popup returning it to the trigger it came from — is not that\n // arrival, but the DOM event is identical and the modality is still\n // \"keyboard\", so React Aria would show the tooltip anyway. It then absorbs\n // the user's next `Escape` from its own document-level listener, which is\n // how a Dialog ended up needing two presses to close (CUB-4839).\n //\n // Dropping the focus handler rather than closing after the fact: React Aria\n // decides to show inside it, so this never starts and nothing flashes.\n //\n // Covers both restore paths — ours and a `FocusScope`'s — see\n // `programmaticFocus`.\n const onFocus = useEvent((event: FocusEvent<HTMLElement>) => {\n if (isFocusRestoration()) return;\n\n rawTriggerProps.onFocus?.(event);\n });\n\n const triggerProps = {\n ...rawTriggerProps,\n onFocus,\n // A controlled `isOpen` still opens a disabled tooltip's state, and nothing\n // is rendered to describe the trigger by.\n 'aria-describedby': isTooltipDisabled\n ? undefined\n : rawTriggerProps['aria-describedby'],\n };\n\n const positionOptions: TooltipPositionOptions = {\n placement: props.placement || 'top',\n targetRef: tooltipTriggerRef,\n overlayRef,\n offset,\n crossOffset,\n isOpen: state.isOpen,\n // Documented on `Tooltip`, which renders inside the positioned layer, so\n // it is read from the element here.\n shouldFlip: tooltip.props.shouldFlip,\n // Called once a scroll carries the trigger out of view.\n onClose: () => state.close(true),\n };\n\n const tooltipContextValue = {\n state,\n ref: overlayRef,\n isMaterial,\n isLight,\n ...tooltipProps,\n };\n\n // Closed triggers retain their interaction state, but positioning resources\n // belong to the overlay's visible/closing lifetime rather than every label.\n const tooltipContent = (\n <TooltipPositionContext.Provider value={positionOptions}>\n <TooltipTransition isShown={state.isOpen && !isTooltipDisabled}>\n {({ phase, isShown, ref: transitionRef }) => (\n <Portal>\n <PositionedTooltip\n tooltip={tooltip}\n contextValue={{\n ...tooltipContextValue,\n phase,\n isShown,\n ref: overlayRef,\n transitionRef,\n }}\n />\n </Portal>\n )}\n </TooltipTransition>\n </TooltipPositionContext.Provider>\n );\n\n // Function trigger pattern (new)\n if (isTriggerFunction(trigger)) {\n return (\n <>\n {trigger(triggerProps, tooltipTriggerRef)}\n {tooltipContent}\n </>\n );\n }\n\n // Legacy element/string trigger pattern\n if (!activeWrap && typeof trigger === 'string') {\n console.warn(\n 'CubeUIKit: Tooltips are only supported on elements that are both focusable and hoverable. To solve this issue you can: 1) Use active element as a trigger (`Button`, `Link`, etc); 2) Use function-as-first-child pattern to manually apply trigger props; 3) Use `ActiveZone` component to manually wrap the content.',\n );\n\n return <Block>{trigger}</Block>;\n }\n\n function onClick(e) {\n e?.currentTarget?.parentNode.click();\n }\n\n const triggerContent = (\n <>\n {activeWrap ? (\n <ActiveZone onClick={onClick}>{trigger}</ActiveZone>\n ) : (\n trigger\n )}\n {tooltipContent}\n </>\n );\n\n if (disableFocusableProvider) {\n return triggerContent;\n }\n\n return (\n <FocusableProvider {...triggerProps} ref={tooltipTriggerRef}>\n {triggerContent}\n </FocusableProvider>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import React from "react";
3
3
  //#region src/components/overlays/Tooltip/context.ts
4
4
  const TooltipContext = React.createContext({});
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["React","HTMLAttributes","RefCallback","RefObject","Placement","TooltipTriggerState","PlacementAxis","Props","Phase","TooltipContextProps","state","ref","HTMLDivElement","transitionRef","placement","arrowProps","HTMLElement","overlayProps","isMaterial","isLight","phase","isShown","updatePosition","TooltipContext","createContext"],"sources":["../../../../src/components/overlays/Tooltip/context.ts"],"sourcesContent":["import React, { HTMLAttributes, RefCallback, RefObject } from 'react';\nimport { Placement } from 'react-aria';\nimport { TooltipTriggerState } from 'react-stately';\n\nimport { PlacementAxis } from '../../../shared';\n\nimport type { Props } from '../../../props';\n\ntype Phase = 'enter' | 'entered' | 'exit' | 'unmounted';\n\ninterface TooltipContextProps {\n state?: TooltipTriggerState;\n ref?: RefObject<HTMLDivElement | null>;\n transitionRef?: RefCallback<HTMLDivElement>;\n placement?: Placement | PlacementAxis;\n arrowProps?: HTMLAttributes<HTMLElement>;\n overlayProps?: Props;\n isMaterial?: boolean;\n isLight?: boolean;\n phase?: Phase;\n isShown?: boolean;\n updatePosition?: () => void;\n}\n\nexport const TooltipContext = React.createContext<TooltipContextProps>({});\n"],"mappings":";;;AAwBA,MAAauB,iBAAiBvB,MAAMwB,cAAmC,CAAC,CAAC"}
1
+ {"version":3,"file":"context.js","names":["React","HTMLAttributes","RefCallback","RefObject","Placement","TooltipTriggerState","Props","PlacementAxis","Phase","TooltipContextProps","state","ref","HTMLDivElement","transitionRef","placement","arrowProps","HTMLElement","overlayProps","isMaterial","isLight","phase","isShown","updatePosition","TooltipContext","createContext"],"sources":["../../../../src/components/overlays/Tooltip/context.ts"],"sourcesContent":["import React, { HTMLAttributes, RefCallback, RefObject } from 'react';\nimport { Placement } from 'react-aria';\nimport { TooltipTriggerState } from 'react-stately';\n\nimport type { Props } from '../../../props';\nimport type { PlacementAxis } from '../../../shared';\n\ntype Phase = 'enter' | 'entered' | 'exit' | 'unmounted';\n\ninterface TooltipContextProps {\n state?: TooltipTriggerState;\n ref?: RefObject<HTMLDivElement | null>;\n transitionRef?: RefCallback<HTMLDivElement>;\n placement?: Placement | PlacementAxis;\n arrowProps?: HTMLAttributes<HTMLElement>;\n overlayProps?: Props;\n isMaterial?: boolean;\n isLight?: boolean;\n phase?: Phase;\n isShown?: boolean;\n updatePosition?: () => void;\n}\n\nexport const TooltipContext = React.createContext<TooltipContextProps>({});\n"],"mappings":";;;AAuBA,MAAauB,iBAAiBvB,MAAMwB,cAAmC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  //#region src/components/overlays/Tooltip/split-trigger-props.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { usePortal } from "./usePortal.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { TastyBatchProvider } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  //#region src/components/portal/PortalProvider.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { usePortalContext } from "./PortalProvider.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useEffectEvent, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useEffectEvent, useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { WarningIcon } from "../../icons/WarningIcon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  //#region src/components/shared/InvalidIcon.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { CheckIcon } from "../../icons/CheckIcon.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  //#region src/components/shared/ValidIcon.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { Block } from "../../Block.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1 +1 @@
1
- {"version":3,"file":"LoadingAnimation.js","names":["tasty","RefObject","useRef","useI18n","useLayoutEffect","Block","CubeBlockProps","CubeElement","as","styles","display","position","width","height","animationName","animationDuration","animationIterationCount","animationTimingFunction","zIndex","transform","dice0","from","to","dice1","dice2","useTimelineSyncedAnimation","ref","isAnimated","$","_c","t0","element","current","getAnimations","animation","timeline","ownerDocument","startTime","t1","CubeProps","index","base","Cube","t2","t3","t4","Symbol","for","t5","SIZE_MAP","small","medium","large","CubeLoadingAnimationProps","size","LoadingAnimation","props","undefined","t","numSize","t6","t7","t8","t9","t10","_c"],"sources":["../../../../src/components/status/LoadingAnimation/LoadingAnimation.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { RefObject, useRef } from 'react';\n\nimport { useI18n } from '../../../i18n';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Block, CubeBlockProps } from '../../Block';\n\nconst CubeElement = tasty({\n as: 'svg',\n styles: {\n display: 'block',\n position: 'absolute',\n width: '50%',\n height: '50%',\n\n // The three visible faces of the cube get their colors via the SVG\n // `fill=\"…\"` attribute on each `<path>` (see the JSX below), NOT via a\n // tasty `fill` style. Tasty's `fill` is a typed shorthand for\n // `background-color` — applying it to an SVG `<path>` would inject\n // `background-color: …` which paths simply ignore (this was the\n // \"invisible cube\" bug). Pointing the SVG `fill` attribute at the\n // adaptive `--loading-face-N-color` CSS variables published by Glaze\n // (defined in `src/tokens/palette.ts`) keeps the three faces driven by\n // the design system without going through a style property tasty would\n // re-route to the wrong CSS slot.\n //\n // Those three tokens are the kit's shared isometric-cube ramp — `NoDataIcon`\n // draws its crate from the same ones — and they are pinned by a WCAG floor\n // against `surface` rather than by a tone delta, so the faces hold the same\n // separation in light, dark, and high contrast. See the recipe's comment for\n // why that matters.\n\n animationName: {\n '': 'none',\n 'index=0': 'dice0',\n 'index=1': 'dice1',\n 'index=2': 'dice2',\n },\n animationDuration: {\n '': '0s',\n // oxlint-disable-next-line tasty/no-raw-motion-duration -- the length of one dice loop, tuned with its keyframes; not a UI transition\n 'index=0 | index=1 | index=2': '2s',\n },\n animationIterationCount: {\n '': 1,\n 'index=0 | index=1 | index=2': 'infinite',\n },\n animationTimingFunction: {\n '': 'ease',\n 'index=0 | index=1 | index=2': 'ease',\n },\n zIndex: {\n '': 0,\n 'index=0 | index=1 | index=2': 0,\n },\n // The three cubes of the base row stand still; the animated ones move\n // through the keyframes below.\n transform: {\n '': 'none',\n 'base=left': 'translate(0%, 72.5%)',\n 'base=right': 'translate(98%, 72.5%)',\n 'base=bottom': 'translate(49%, 96.5%)',\n },\n\n '@keyframes': {\n dice0: {\n from: { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n '25%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n '50%': { transform: 'translate(0%, 25%)', zIndex: 0 },\n '51%': { zIndex: 1 },\n '75%': { zIndex: 1 },\n to: { transform: 'translate(0%, 25%)', zIndex: 1 },\n },\n dice1: {\n from: { transform: 'translate(0%, 25%)', zIndex: 3 },\n '25%': { transform: 'translate(49%, 49%)', zIndex: 3 },\n '75%': { transform: 'translate(49%, 49%)', zIndex: 2 },\n to: { transform: 'translate(98%, 25%)', zIndex: 1 },\n },\n dice2: {\n from: { transform: 'translate(98%, 25%)', zIndex: 1 },\n '50%': { transform: 'translate(98%, 25%)', zIndex: 0 },\n '75%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n to: { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n },\n },\n },\n});\n\n/**\n * Phase-lock a cube's `dice*` animation to the document timeline.\n *\n * A page under load mounts these animations at whatever moment each level of\n * the tree resolves — a route shell, then a panel, then the table inside it —\n * and every wrapper that appears around a running `LoadingAnimation` remounts\n * it. A CSS animation is created with its start time at \"now\", so each of\n * those events snapped the cubes back to the first frame: the visible symptom\n * is a loader that keeps stuttering back to the start while the page settles.\n *\n * Moving the start time to 0 puts it at the origin of the document timeline,\n * so the cube's position is a function of the timeline's current reading and\n * nothing else. Two consequences: a remount picks up exactly where the removed\n * element was, and every instance in the document runs in lockstep, because\n * they all read the same clock.\n *\n * Done through the animation object in a layout effect (before the first paint\n * of the new element) rather than through a negative `animation-delay`: the\n * delay would have to be computed during render from `Date.now()`, which is\n * both a different clock than the one the animation runs on — so the phase\n * would be off by the render-to-paint gap — and a value that differs between\n * the server and the client, i.e. a hydration mismatch on every render.\n */\nfunction useTimelineSyncedAnimation(\n ref: RefObject<SVGSVGElement | null>,\n isAnimated: boolean,\n) {\n useLayoutEffect(() => {\n const element = ref.current;\n\n // `getAnimations` is absent in jsdom, where there is nothing to sync.\n if (!isAnimated || !element?.getAnimations) return;\n\n for (const animation of element.getAnimations()) {\n // These elements carry nothing but the `dice*` animation, and it always\n // runs on the document timeline — the one timeline an explicit numeric\n // start time is meaningful against.\n if (animation.timeline === element.ownerDocument.timeline) {\n animation.startTime = 0;\n }\n }\n }, [isAnimated]);\n}\n\ninterface CubeProps {\n index?: 0 | 1 | 2;\n base?: 'left' | 'right' | 'bottom';\n}\n\nfunction Cube({ index, base }: CubeProps) {\n const ref = useRef<SVGSVGElement>(null);\n\n useTimelineSyncedAnimation(ref, index != null);\n\n return (\n <CubeElement\n ref={ref}\n mods={{ index, base }}\n viewBox=\"0 0 36 41\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"presentation\"\n aria-hidden=\"true\"\n >\n <path\n fill=\"var(--loading-face-1-color)\"\n d=\"M35.899 10.351l-18 10.25L.1 10.25l18-10.25L35.9 10.351z\"\n />\n <path\n fill=\"var(--loading-face-2-color)\"\n d=\"M18 41L0 30.75l.101-20.5L18 20.5\"\n />\n <path\n fill=\"var(--loading-face-3-color)\"\n d=\"M36 30.75L18 41V20.6l17.899-10.25L36 30.75z\"\n />\n </CubeElement>\n );\n}\n\nconst SIZE_MAP = {\n small: 32,\n medium: 64,\n large: 96,\n};\n\nexport interface CubeLoadingAnimationProps extends CubeBlockProps {\n size?: 'small' | 'medium' | 'large' | number;\n}\n\nexport function LoadingAnimation({\n size = 'medium',\n ...props\n}: CubeLoadingAnimationProps) {\n const { t } = useI18n();\n const numSize: number = SIZE_MAP[size] || size || SIZE_MAP.medium;\n\n return (\n <Block\n role=\"img\"\n aria-label={t('loadingAnimation.ariaLabel', 'Loading animation')}\n width={numSize}\n height={numSize * 1.1388888889}\n position=\"relative\"\n {...props}\n >\n <Cube base=\"left\" />\n <Cube base=\"right\" />\n <Cube base=\"bottom\" />\n <Cube index={0} />\n <Cube index={1} />\n <Cube index={2} />\n </Block>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"LoadingAnimation.js","names":["tasty","RefObject","useRef","useI18n","useLayoutEffect","Block","CubeBlockProps","CubeElement","as","styles","display","position","width","height","animationName","animationDuration","animationIterationCount","animationTimingFunction","zIndex","transform","dice0","from","to","dice1","dice2","useTimelineSyncedAnimation","ref","isAnimated","$","_c","t0","element","current","getAnimations","animation","timeline","ownerDocument","startTime","t1","CubeProps","index","base","Cube","t2","t3","t4","Symbol","for","t5","SIZE_MAP","small","medium","large","CubeLoadingAnimationProps","size","LoadingAnimation","props","undefined","t","numSize","t6","t7","t8","t9","t10","_c"],"sources":["../../../../src/components/status/LoadingAnimation/LoadingAnimation.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { RefObject, useRef } from 'react';\n\nimport { useI18n } from '../../../i18n/useI18n';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Block, CubeBlockProps } from '../../Block';\n\nconst CubeElement = tasty({\n as: 'svg',\n styles: {\n display: 'block',\n position: 'absolute',\n width: '50%',\n height: '50%',\n\n // The three visible faces of the cube get their colors via the SVG\n // `fill=\"…\"` attribute on each `<path>` (see the JSX below), NOT via a\n // tasty `fill` style. Tasty's `fill` is a typed shorthand for\n // `background-color` — applying it to an SVG `<path>` would inject\n // `background-color: …` which paths simply ignore (this was the\n // \"invisible cube\" bug). Pointing the SVG `fill` attribute at the\n // adaptive `--loading-face-N-color` CSS variables published by Glaze\n // (defined in `src/tokens/palette.ts`) keeps the three faces driven by\n // the design system without going through a style property tasty would\n // re-route to the wrong CSS slot.\n //\n // Those three tokens are the kit's shared isometric-cube ramp — `NoDataIcon`\n // draws its crate from the same ones — and they are pinned by a WCAG floor\n // against `surface` rather than by a tone delta, so the faces hold the same\n // separation in light, dark, and high contrast. See the recipe's comment for\n // why that matters.\n\n animationName: {\n '': 'none',\n 'index=0': 'dice0',\n 'index=1': 'dice1',\n 'index=2': 'dice2',\n },\n animationDuration: {\n '': '0s',\n // oxlint-disable-next-line tasty/no-raw-motion-duration -- the length of one dice loop, tuned with its keyframes; not a UI transition\n 'index=0 | index=1 | index=2': '2s',\n },\n animationIterationCount: {\n '': 1,\n 'index=0 | index=1 | index=2': 'infinite',\n },\n animationTimingFunction: {\n '': 'ease',\n 'index=0 | index=1 | index=2': 'ease',\n },\n zIndex: {\n '': 0,\n 'index=0 | index=1 | index=2': 0,\n },\n // The three cubes of the base row stand still; the animated ones move\n // through the keyframes below.\n transform: {\n '': 'none',\n 'base=left': 'translate(0%, 72.5%)',\n 'base=right': 'translate(98%, 72.5%)',\n 'base=bottom': 'translate(49%, 96.5%)',\n },\n\n '@keyframes': {\n dice0: {\n from: { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n '25%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n '50%': { transform: 'translate(0%, 25%)', zIndex: 0 },\n '51%': { zIndex: 1 },\n '75%': { zIndex: 1 },\n to: { transform: 'translate(0%, 25%)', zIndex: 1 },\n },\n dice1: {\n from: { transform: 'translate(0%, 25%)', zIndex: 3 },\n '25%': { transform: 'translate(49%, 49%)', zIndex: 3 },\n '75%': { transform: 'translate(49%, 49%)', zIndex: 2 },\n to: { transform: 'translate(98%, 25%)', zIndex: 1 },\n },\n dice2: {\n from: { transform: 'translate(98%, 25%)', zIndex: 1 },\n '50%': { transform: 'translate(98%, 25%)', zIndex: 0 },\n '75%': { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n to: { transform: 'translate(49%, 0.5%)', zIndex: 0 },\n },\n },\n },\n});\n\n/**\n * Phase-lock a cube's `dice*` animation to the document timeline.\n *\n * A page under load mounts these animations at whatever moment each level of\n * the tree resolves — a route shell, then a panel, then the table inside it —\n * and every wrapper that appears around a running `LoadingAnimation` remounts\n * it. A CSS animation is created with its start time at \"now\", so each of\n * those events snapped the cubes back to the first frame: the visible symptom\n * is a loader that keeps stuttering back to the start while the page settles.\n *\n * Moving the start time to 0 puts it at the origin of the document timeline,\n * so the cube's position is a function of the timeline's current reading and\n * nothing else. Two consequences: a remount picks up exactly where the removed\n * element was, and every instance in the document runs in lockstep, because\n * they all read the same clock.\n *\n * Done through the animation object in a layout effect (before the first paint\n * of the new element) rather than through a negative `animation-delay`: the\n * delay would have to be computed during render from `Date.now()`, which is\n * both a different clock than the one the animation runs on — so the phase\n * would be off by the render-to-paint gap — and a value that differs between\n * the server and the client, i.e. a hydration mismatch on every render.\n */\nfunction useTimelineSyncedAnimation(\n ref: RefObject<SVGSVGElement | null>,\n isAnimated: boolean,\n) {\n useLayoutEffect(() => {\n const element = ref.current;\n\n // `getAnimations` is absent in jsdom, where there is nothing to sync.\n if (!isAnimated || !element?.getAnimations) return;\n\n for (const animation of element.getAnimations()) {\n // These elements carry nothing but the `dice*` animation, and it always\n // runs on the document timeline — the one timeline an explicit numeric\n // start time is meaningful against.\n if (animation.timeline === element.ownerDocument.timeline) {\n animation.startTime = 0;\n }\n }\n }, [isAnimated]);\n}\n\ninterface CubeProps {\n index?: 0 | 1 | 2;\n base?: 'left' | 'right' | 'bottom';\n}\n\nfunction Cube({ index, base }: CubeProps) {\n const ref = useRef<SVGSVGElement>(null);\n\n useTimelineSyncedAnimation(ref, index != null);\n\n return (\n <CubeElement\n ref={ref}\n mods={{ index, base }}\n viewBox=\"0 0 36 41\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"presentation\"\n aria-hidden=\"true\"\n >\n <path\n fill=\"var(--loading-face-1-color)\"\n d=\"M35.899 10.351l-18 10.25L.1 10.25l18-10.25L35.9 10.351z\"\n />\n <path\n fill=\"var(--loading-face-2-color)\"\n d=\"M18 41L0 30.75l.101-20.5L18 20.5\"\n />\n <path\n fill=\"var(--loading-face-3-color)\"\n d=\"M36 30.75L18 41V20.6l17.899-10.25L36 30.75z\"\n />\n </CubeElement>\n );\n}\n\nconst SIZE_MAP = {\n small: 32,\n medium: 64,\n large: 96,\n};\n\nexport interface CubeLoadingAnimationProps extends CubeBlockProps {\n size?: 'small' | 'medium' | 'large' | number;\n}\n\nexport function LoadingAnimation({\n size = 'medium',\n ...props\n}: CubeLoadingAnimationProps) {\n const { t } = useI18n();\n const numSize: number = SIZE_MAP[size] || size || SIZE_MAP.medium;\n\n return (\n <Block\n role=\"img\"\n aria-label={t('loadingAnimation.ariaLabel', 'Loading animation')}\n width={numSize}\n height={numSize * 1.1388888889}\n position=\"relative\"\n {...props}\n >\n <Cube base=\"left\" />\n <Cube base=\"right\" />\n <Cube base=\"bottom\" />\n <Cube index={0} />\n <Cube index={1} />\n <Cube index={2} />\n </Block>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { memo } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { Cube } from "./Cube.js";
3
3
  import { SpinsContainer } from "./SpinsContainer.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { Block } from "../../Block.js";
3
3
  import { InternalSpinner } from "./InternalSpinner.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.206.3 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.208.0 | Cube Dev Team */
2
2
  import { mergeStyles } from "@tenphi/tasty";
3
3
  //#region src/data/item-themes.ts
4
4
  const VALIDATION_STYLES = { border: {
@@ -54,11 +54,7 @@ const DEFAULT_PRIMARY_STYLES = {
54
54
  "": "0 #primary-accent-text.0",
55
55
  focused: "$ring-width #primary-accent-text"
56
56
  },
57
- border: {
58
- "": "#primary-accent-surface-border",
59
- pressed: "#primary-accent-surface-border",
60
- disabled: "#clear"
61
- },
57
+ border: "#clear",
62
58
  fill: {
63
59
  "": "#primary-accent-surface",
64
60
  hovered: "#primary-accent-surface-2",
@@ -172,11 +168,7 @@ const DANGER_PRIMARY_STYLES = {
172
168
  "": "0 #primary-accent-text.0",
173
169
  focused: "$ring-width #primary-accent-text"
174
170
  },
175
- border: {
176
- "": "#white.2",
177
- pressed: "#danger-accent-text",
178
- disabled: "#clear"
179
- },
171
+ border: "#clear",
180
172
  fill: {
181
173
  "": "#danger-accent-surface",
182
174
  hovered: "#danger-accent-surface-2",
@@ -282,11 +274,7 @@ const SUCCESS_PRIMARY_STYLES = {
282
274
  "": "0 #primary-accent-text.0",
283
275
  focused: "$ring-width #primary-accent-text"
284
276
  },
285
- border: {
286
- "": "#white.2",
287
- pressed: "#success-accent-text",
288
- disabled: "#clear"
289
- },
277
+ border: "#clear",
290
278
  fill: {
291
279
  "": "#success-accent-surface",
292
280
  hovered: "#success-accent-surface-2",
@@ -392,11 +380,7 @@ const WARNING_PRIMARY_STYLES = {
392
380
  "": "0 #primary-accent-text.0",
393
381
  focused: "$ring-width #primary-accent-text"
394
382
  },
395
- border: {
396
- "": "#white.2",
397
- pressed: "#warning-accent-text",
398
- disabled: "#clear"
399
- },
383
+ border: "#clear",
400
384
  fill: {
401
385
  "": "#warning-accent-surface",
402
386
  hovered: "#warning-accent-surface-2",
@@ -502,11 +486,7 @@ const NOTE_PRIMARY_STYLES = {
502
486
  "": "0 #primary-accent-text.0",
503
487
  focused: "$ring-width #primary-accent-text"
504
488
  },
505
- border: {
506
- "": "#white.2",
507
- pressed: "#note-accent-text",
508
- disabled: "#clear"
509
- },
489
+ border: "#clear",
510
490
  fill: {
511
491
  "": "#note-accent-surface",
512
492
  hovered: "#note-accent-surface-2",
@@ -612,11 +592,7 @@ const SPECIAL_PRIMARY_STYLES = {
612
592
  "": "0 #special-accent-text.0",
613
593
  focused: "$ring-width #special-accent-text"
614
594
  },
615
- border: {
616
- "": "#special-accent-surface-border",
617
- pressed: "#special-accent-surface-border",
618
- disabled: "#clear"
619
- },
595
+ border: "#clear",
620
596
  fill: {
621
597
  "": "#special-accent-surface",
622
598
  hovered: "#special-accent-surface-2",
@@ -797,7 +773,7 @@ const CURRENT_OUTLINE_2_STYLES = mergeStyles(CURRENT_FOCUS_RING, {
797
773
  });
798
774
  const CURRENT_PRIMARY_STYLES = mergeStyles(CURRENT_FOCUS_RING, {
799
775
  border: {
800
- "": "#current-fill.25",
776
+ "": "#clear",
801
777
  disabled: "#surface-text.2"
802
778
  },
803
779
  fill: {