@cube-dev/ui-kit 0.0.0-canary-f671590 → 0.0.0-canary-356f952

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 (639) hide show
  1. package/dist/CHANGELOG.md +22 -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-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +6 -6
  18. package/dist/components/actions/Banner/Banner.js.map +1 -1
  19. package/dist/components/actions/Button/Button.js +2 -2
  20. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  21. package/dist/components/actions/ButtonSplit/ButtonSplit.js +28 -25
  22. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  23. package/dist/components/actions/ButtonSplit/context.js +1 -1
  24. package/dist/components/actions/CommandMenu/CommandMenu.js +102 -82
  25. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  26. package/dist/components/actions/CommandMenu/styled.js +1 -1
  27. package/dist/components/actions/ItemAction/ItemAction.js +2 -2
  28. package/dist/components/actions/ItemActionContext.js +1 -1
  29. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  30. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  31. package/dist/components/actions/Link/Link.js +1 -1
  32. package/dist/components/actions/Menu/Menu.js +3 -2
  33. package/dist/components/actions/Menu/Menu.js.map +1 -1
  34. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  35. package/dist/components/actions/Menu/MenuItem.d.ts +5 -1
  36. package/dist/components/actions/Menu/MenuItem.js +3 -3
  37. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  38. package/dist/components/actions/Menu/MenuSection.d.ts +1 -1
  39. package/dist/components/actions/Menu/MenuSection.js +1 -1
  40. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  41. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  42. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  43. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  44. package/dist/components/actions/Menu/context.js +1 -1
  45. package/dist/components/actions/Menu/styled.js +1 -1
  46. package/dist/components/actions/actions-run.js +1 -1
  47. package/dist/components/actions/index.js +1 -1
  48. package/dist/components/actions/use-action.js +1 -1
  49. package/dist/components/actions/use-anchored-menu.js +1 -1
  50. package/dist/components/actions/use-context-menu.js +2 -2
  51. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  52. package/dist/components/content/Alert/Alert.js +1 -1
  53. package/dist/components/content/Alert/use-alert.js +1 -1
  54. package/dist/components/content/Avatar/Avatar.js +1 -1
  55. package/dist/components/content/Badge/Badge.js +1 -1
  56. package/dist/components/content/Card/Card.js +1 -1
  57. package/dist/components/content/Content.js +1 -1
  58. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  59. package/dist/components/content/CopySnippet/CopySnippet.d.ts +26 -26
  60. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  61. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  62. package/dist/components/content/Divider.js +1 -1
  63. package/dist/components/content/Footer.js +1 -1
  64. package/dist/components/content/Header.js +1 -1
  65. package/dist/components/content/HotKeys/HotKeys.js +44 -33
  66. package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
  67. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  68. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  69. package/dist/components/content/Item/Item.js +3 -3
  70. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  71. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  72. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  73. package/dist/components/content/Layout/GridLayout.js +1 -1
  74. package/dist/components/content/Layout/Layout.js +1 -1
  75. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  76. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  77. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  78. package/dist/components/content/Layout/LayoutContent.js +1 -1
  79. package/dist/components/content/Layout/LayoutContext.js +1 -1
  80. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  81. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  82. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  83. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  84. package/dist/components/content/Layout/LayoutPane.js +18 -15
  85. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  86. package/dist/components/content/Layout/LayoutPanel.js +42 -47
  87. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  88. package/dist/components/content/Layout/LayoutPanelHeader.js +2 -2
  89. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  90. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  91. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  92. package/dist/components/content/Layout/index.js +1 -1
  93. package/dist/components/content/Layout/utils.js +1 -1
  94. package/dist/components/content/Paragraph.js +1 -1
  95. package/dist/components/content/Placeholder/Placeholder.js +77 -70
  96. package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
  97. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  98. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  99. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  100. package/dist/components/content/Result/Result.js +5 -5
  101. package/dist/components/content/Result/Result.js.map +1 -1
  102. package/dist/components/content/Skeleton/Skeleton.js +18 -19
  103. package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
  104. package/dist/components/content/Tag/Tag.js +2 -2
  105. package/dist/components/content/Text.d.ts +57 -57
  106. package/dist/components/content/Text.js +61 -77
  107. package/dist/components/content/Text.js.map +1 -1
  108. package/dist/components/content/TextItem/TextItem.js +158 -29
  109. package/dist/components/content/TextItem/TextItem.js.map +1 -1
  110. package/dist/components/content/Title.js +66 -48
  111. package/dist/components/content/Title.js.map +1 -1
  112. package/dist/components/content/Tree/Tree.js +6 -3
  113. package/dist/components/content/Tree/Tree.js.map +1 -1
  114. package/dist/components/content/Tree/TreeNode.js +1 -1
  115. package/dist/components/content/Tree/styled.js +1 -1
  116. package/dist/components/content/Tree/tree-index.js +1 -1
  117. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  118. package/dist/components/content/Tree/use-load-data.js +1 -1
  119. package/dist/components/content/highlightText.js +1 -1
  120. package/dist/components/content/use-auto-tooltip.js +3 -2
  121. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  122. package/dist/components/data/DataTable/DataTable.js +1 -1
  123. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  124. package/dist/components/data/ItemTable/ItemTableBulkBar.js +2 -2
  125. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  126. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  127. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  128. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  129. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  130. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  131. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  132. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  133. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  134. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  135. package/dist/components/data/TableBase/RowCollection.js +1 -1
  136. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  137. package/dist/components/data/TableBase/TableRow.js +1 -1
  138. package/dist/components/data/TableBase/TableView.js +6 -3
  139. package/dist/components/data/TableBase/TableView.js.map +1 -1
  140. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  141. package/dist/components/data/TableBase/column-header.js +1 -1
  142. package/dist/components/data/TableBase/column-menu.js +1 -1
  143. package/dist/components/data/TableBase/column-styles.js +1 -1
  144. package/dist/components/data/TableBase/column-tint.js +1 -1
  145. package/dist/components/data/TableBase/row-menu.js +1 -1
  146. package/dist/components/data/TableBase/styled.js +1 -1
  147. package/dist/components/data/TableBase/table-tree.js +1 -1
  148. package/dist/components/data/TableBase/types.js +1 -1
  149. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  150. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  151. package/dist/components/data/TableBase/use-column-order.js +1 -1
  152. package/dist/components/data/TableBase/use-column-window.js +1 -1
  153. package/dist/components/data/TableBase/use-container-width.js +1 -1
  154. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  155. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  156. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  157. package/dist/components/data/TableBase/use-table-search.js +1 -1
  158. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  159. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  160. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  161. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  162. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  163. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  164. package/dist/components/fields/Checkbox/Checkbox.js +3 -1
  165. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  166. package/dist/components/fields/Checkbox/CheckboxGroup.js +13 -13
  167. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  168. package/dist/components/fields/Checkbox/context.js +1 -1
  169. package/dist/components/fields/ColorInput/ColorInput.js +32 -29
  170. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  171. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +2 -0
  172. package/dist/components/fields/ColorPicker/ColorPicker.js +9 -6
  173. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  174. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  175. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +6 -3
  176. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  177. package/dist/components/fields/ComboBox/ComboBox.js +41 -30
  178. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  179. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  180. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  181. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  182. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  183. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  184. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  185. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  186. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  187. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  188. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  189. package/dist/components/fields/DatePicker/DateRangePicker.js +2 -2
  190. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +246 -238
  191. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  192. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  193. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  194. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  195. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  196. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  197. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  198. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  199. package/dist/components/fields/DatePicker/period.js +1 -1
  200. package/dist/components/fields/DatePicker/props.js +1 -1
  201. package/dist/components/fields/DatePicker/utils.js +1 -1
  202. package/dist/components/fields/FileInput/FileInput.js +22 -2
  203. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  204. package/dist/components/fields/FilterListBox/FilterListBox.js +5 -1
  205. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  206. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +2 -0
  207. package/dist/components/fields/FilterPicker/FilterPicker.js +4 -3
  208. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  209. package/dist/components/fields/Input/Input.js +1 -1
  210. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  211. package/dist/components/fields/ListBox/ListBox.js +4 -3
  212. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  213. package/dist/components/fields/ListBox/optionId.js +1 -1
  214. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +36 -32
  215. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  216. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  217. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  218. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  219. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  220. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  221. package/dist/components/fields/Picker/Picker.d.ts +2 -0
  222. package/dist/components/fields/Picker/Picker.js +4 -3
  223. package/dist/components/fields/Picker/Picker.js.map +1 -1
  224. package/dist/components/fields/RadioGroup/Radio.d.ts +28 -28
  225. package/dist/components/fields/RadioGroup/Radio.js +2 -2
  226. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  227. package/dist/components/fields/RadioGroup/context.js +1 -1
  228. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  229. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  230. package/dist/components/fields/Select/Select.js +31 -28
  231. package/dist/components/fields/Select/Select.js.map +1 -1
  232. package/dist/components/fields/Slider/Gradation.js +1 -1
  233. package/dist/components/fields/Slider/HueSlider.js +1 -1
  234. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  235. package/dist/components/fields/Slider/Slider.js +1 -1
  236. package/dist/components/fields/Slider/SliderBase.js +1 -1
  237. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  238. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  239. package/dist/components/fields/Slider/elements.js +1 -1
  240. package/dist/components/fields/Slider/index.js +1 -1
  241. package/dist/components/fields/Switch/Switch.js +1 -1
  242. package/dist/components/fields/TagInput/TagInput.js +1 -1
  243. package/dist/components/fields/TagInput/TagList.js +1 -1
  244. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  245. package/dist/components/fields/TagInput/useTagError.js +1 -1
  246. package/dist/components/fields/TextArea/TextArea.js +1 -1
  247. package/dist/components/fields/TextInput/TextInput.js +1 -1
  248. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  249. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  250. package/dist/components/fields/TextInputMapper/TextInputMapper.js +13 -5
  251. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  252. package/dist/components/fields/TriggerActions.js +1 -1
  253. package/dist/components/fields/color/ColorPanel.js +62 -53
  254. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  255. package/dist/components/fields/color/channels.js +1 -1
  256. package/dist/components/fields/color/color.js +1 -1
  257. package/dist/components/fields/color/context.js +1 -1
  258. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +1 -0
  259. package/dist/components/form/FieldWrapper/FieldWrapper.js +134 -110
  260. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  261. package/dist/components/form/FieldWrapper/field-description.js +102 -0
  262. package/dist/components/form/FieldWrapper/field-description.js.map +1 -0
  263. package/dist/components/form/FieldWrapper/types.d.ts +6 -1
  264. package/dist/components/form/Form/Field.js +1 -1
  265. package/dist/components/form/Form/Form.js +1 -1
  266. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  267. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  268. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  269. package/dist/components/form/Form/SubmitError.js +1 -1
  270. package/dist/components/form/Form/backend.js +1 -1
  271. package/dist/components/form/Form/index.js +1 -1
  272. package/dist/components/form/Form/modern/actions.js +1 -1
  273. package/dist/components/form/Form/modern/context.js +1 -1
  274. package/dist/components/form/Form/modern/controller.js +1 -1
  275. package/dist/components/form/Form/modern/field-binding.js +1 -1
  276. package/dist/components/form/Form/modern/field.js +1 -1
  277. package/dist/components/form/Form/modern/react.js +1 -1
  278. package/dist/components/form/Form/modern/store.js +1 -1
  279. package/dist/components/form/Form/modern/validation.js +1 -1
  280. package/dist/components/form/Form/modern/values.js +1 -1
  281. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  282. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field-props.js +17 -4
  284. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  285. package/dist/components/form/Form/use-field/use-field.js +1 -1
  286. package/dist/components/form/Form/use-form.js +1 -1
  287. package/dist/components/form/Form/validation.js +1 -1
  288. package/dist/components/form/Label.js +27 -24
  289. package/dist/components/form/Label.js.map +1 -1
  290. package/dist/components/form/legacy-tooltip.js +1 -1
  291. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  292. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  293. package/dist/components/form/validation/use-validation-props.js +1 -1
  294. package/dist/components/form/wrapper.js +2 -1
  295. package/dist/components/form/wrapper.js.map +1 -1
  296. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  297. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  298. package/dist/components/layout/Flex.js +1 -1
  299. package/dist/components/layout/Flow.js +1 -1
  300. package/dist/components/layout/Grid.js +1 -1
  301. package/dist/components/layout/Panel.js +1 -1
  302. package/dist/components/layout/Prefix.js +1 -1
  303. package/dist/components/layout/ResizablePanel.js +1 -1
  304. package/dist/components/layout/Space.js +1 -1
  305. package/dist/components/layout/Suffix.js +1 -1
  306. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  307. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  308. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  309. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  310. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  311. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  312. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  313. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  314. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  315. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  316. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  317. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  318. package/dist/components/navigation/Tabs/styled.js +1 -1
  319. package/dist/components/navigation/Tabs/types.js +1 -1
  320. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  321. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  322. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  323. package/dist/components/other/Calendar/Calendar.js +1 -1
  324. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  325. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  326. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  327. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  328. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  329. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  330. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  331. package/dist/components/other/Calendar/styled.js +1 -1
  332. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  333. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  334. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  335. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  336. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  337. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  338. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  339. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  340. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  341. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  342. package/dist/components/overlays/Dialog/context.js +1 -1
  343. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  344. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  345. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  346. package/dist/components/overlays/Modal/Modal.js +44 -24
  347. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  348. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  349. package/dist/components/overlays/Modal/Overlay.js +1 -1
  350. package/dist/components/overlays/Modal/Popover.js +34 -24
  351. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  352. package/dist/components/overlays/Modal/Tray.js +45 -25
  353. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  354. package/dist/components/overlays/Modal/Underlay.js +1 -1
  355. package/dist/components/overlays/Modal/modal-containment.js +145 -0
  356. package/dist/components/overlays/Modal/modal-containment.js.map +1 -0
  357. package/dist/components/overlays/Notifications/Notification.js +1 -1
  358. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  359. package/dist/components/overlays/Notifications/NotificationCard.js +2 -2
  360. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  361. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  362. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  363. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  364. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +2 -2
  365. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  366. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  367. package/dist/components/overlays/Notifications/index.js +1 -1
  368. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  369. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  370. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  371. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  372. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  373. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  374. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  375. package/dist/components/overlays/Toast/index.js +1 -1
  376. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  377. package/dist/components/overlays/Toast/useToast.js +1 -1
  378. package/dist/components/overlays/Tooltip/Tooltip.js +50 -47
  379. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  380. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  381. package/dist/components/overlays/Tooltip/TooltipTrigger.js +95 -100
  382. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  383. package/dist/components/overlays/Tooltip/context.js +1 -1
  384. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  385. package/dist/components/portal/Portal.js +1 -1
  386. package/dist/components/portal/PortalProvider.js +1 -1
  387. package/dist/components/portal/usePortal.js +1 -1
  388. package/dist/components/shared/DraggableCollection.js +1 -1
  389. package/dist/components/shared/InvalidIcon.js +1 -1
  390. package/dist/components/shared/ValidIcon.js +1 -1
  391. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  392. package/dist/components/status/Spin/Cube.js +1 -1
  393. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  394. package/dist/components/status/Spin/Spin.js +1 -1
  395. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  396. package/dist/data/item-themes.js +1 -1
  397. package/dist/data/themes.js +1 -1
  398. package/dist/eslint-plugin/defaults.generated.js +1 -1
  399. package/dist/eslint-plugin/index.js +1 -1
  400. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  401. package/dist/i18n/I18nProvider.js +3 -2
  402. package/dist/i18n/I18nProvider.js.map +1 -1
  403. package/dist/i18n/createFormatter.js +1 -1
  404. package/dist/i18n/index.d.ts +2 -1
  405. package/dist/i18n/index.js +3 -2
  406. package/dist/i18n/index.js.map +1 -1
  407. package/dist/i18n/instance.d.ts +2 -3
  408. package/dist/i18n/instance.js +3 -4
  409. package/dist/i18n/instance.js.map +1 -1
  410. package/dist/i18n/locales/de-DE/uikit.js +36 -5
  411. package/dist/i18n/locales/en-US/uikit.js +36 -5
  412. package/dist/i18n/locales/en-US/uikit.json.d.ts +41 -4
  413. package/dist/i18n/locales/es-ES/uikit.js +36 -5
  414. package/dist/i18n/locales/es-MX/uikit.js +36 -5
  415. package/dist/i18n/locales/fr-FR/uikit.js +36 -5
  416. package/dist/i18n/locales/it-IT/uikit.js +36 -5
  417. package/dist/i18n/locales/ja-JP/uikit.js +36 -5
  418. package/dist/i18n/locales/nb-NO/uikit.js +36 -5
  419. package/dist/i18n/locales/pt-BR/uikit.js +36 -5
  420. package/dist/i18n/locales/pt-PT/uikit.js +36 -5
  421. package/dist/i18n/locales/sv-SE/uikit.js +36 -5
  422. package/dist/i18n/locales/vi-VN/uikit.js +36 -5
  423. package/dist/i18n/locales.js +1 -1
  424. package/dist/i18n/namespace.d.ts +11 -0
  425. package/dist/i18n/namespace.js +12 -0
  426. package/dist/i18n/namespace.js.map +1 -0
  427. package/dist/i18n/useFormatter.js +1 -1
  428. package/dist/i18n/useI18n.js +5 -3
  429. package/dist/i18n/useI18n.js.map +1 -1
  430. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  431. package/dist/icons/AdjustmentsIcon.js +1 -1
  432. package/dist/icons/AiIcon.js +1 -1
  433. package/dist/icons/AreaChartIcon.js +1 -1
  434. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  435. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  436. package/dist/icons/BackwardIcon.js +1 -1
  437. package/dist/icons/BarChartIcon.js +1 -1
  438. package/dist/icons/BellFilledIcon.js +1 -1
  439. package/dist/icons/BellIcon.js +1 -1
  440. package/dist/icons/BooleanIcon.js +1 -1
  441. package/dist/icons/CalendarEditIcon.js +1 -1
  442. package/dist/icons/CalendarIcon.js +1 -1
  443. package/dist/icons/CaretDownIcon.js +1 -1
  444. package/dist/icons/CaretUpIcon.js +1 -1
  445. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  446. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  447. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  448. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  449. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  450. package/dist/icons/ChartBarLineIcon.js +1 -1
  451. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  452. package/dist/icons/ChartBarStackedIcon.js +1 -1
  453. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  454. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  455. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  456. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  457. package/dist/icons/ChartBubbleIcon.js +1 -1
  458. package/dist/icons/ChartDonut2Icon.js +1 -1
  459. package/dist/icons/ChartFunnelIcon.js +1 -1
  460. package/dist/icons/ChartHeatmapIcon.js +1 -1
  461. package/dist/icons/ChartKPIIcon.js +1 -1
  462. package/dist/icons/ChartPie2Icon.js +1 -1
  463. package/dist/icons/ChartScatterIcon.js +1 -1
  464. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  465. package/dist/icons/CheckCircleIcon.js +1 -1
  466. package/dist/icons/CheckIcon.js +1 -1
  467. package/dist/icons/CircleFilledIcon.js +1 -1
  468. package/dist/icons/ClearIcon.js +1 -1
  469. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  470. package/dist/icons/CloseCircleIcon.js +1 -1
  471. package/dist/icons/CloseIcon.js +1 -1
  472. package/dist/icons/CodeIcon.js +1 -1
  473. package/dist/icons/ColumnTotalIcon.js +1 -1
  474. package/dist/icons/CopyIcon.js +1 -1
  475. package/dist/icons/CountIcon.js +1 -1
  476. package/dist/icons/CubeIcon.js +1 -1
  477. package/dist/icons/CubePauseIcon.js +1 -1
  478. package/dist/icons/CubePlayIcon.js +1 -1
  479. package/dist/icons/CurrencyDollarIcon.js +1 -1
  480. package/dist/icons/DangerIcon.js +1 -1
  481. package/dist/icons/DashboardIcon.js +1 -1
  482. package/dist/icons/DatabaseIcon.js +1 -1
  483. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  484. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  485. package/dist/icons/DirectionIcon.js +1 -1
  486. package/dist/icons/DonutIcon.js +1 -1
  487. package/dist/icons/DownIcon.js +1 -1
  488. package/dist/icons/EditIcon.js +1 -1
  489. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  490. package/dist/icons/ExclamationCircleIcon.js +1 -1
  491. package/dist/icons/ExclamationIcon.js +1 -1
  492. package/dist/icons/EyeIcon.js +1 -1
  493. package/dist/icons/EyeInvisibleIcon.js +1 -1
  494. package/dist/icons/FilterIcon.js +1 -1
  495. package/dist/icons/FolderFilledIcon.js +1 -1
  496. package/dist/icons/FolderIcon.js +1 -1
  497. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  498. package/dist/icons/FolderOpenIcon.js +1 -1
  499. package/dist/icons/ForwardIcon.js +1 -1
  500. package/dist/icons/GripVerticalIcon.js +1 -1
  501. package/dist/icons/HierarchyIcon.js +1 -1
  502. package/dist/icons/HierarchyOpenIcon.js +1 -1
  503. package/dist/icons/Icon.js +1 -1
  504. package/dist/icons/InfoCircleIcon.js +1 -1
  505. package/dist/icons/InfoIcon.js +1 -1
  506. package/dist/icons/KeyIcon.js +1 -1
  507. package/dist/icons/LeftIcon.js +1 -1
  508. package/dist/icons/LineChartIcon.js +1 -1
  509. package/dist/icons/LoadingIcon.js +1 -1
  510. package/dist/icons/LockFilledIcon.js +1 -1
  511. package/dist/icons/LockIcon.js +1 -1
  512. package/dist/icons/MoreIcon.js +1 -1
  513. package/dist/icons/NotAllowedIcon.js +1 -1
  514. package/dist/icons/Number123Icon.js +1 -1
  515. package/dist/icons/NumberIcon.js +1 -1
  516. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  517. package/dist/icons/PauseCircleIcon.js +1 -1
  518. package/dist/icons/PauseIcon.js +1 -1
  519. package/dist/icons/PercentageIcon.js +1 -1
  520. package/dist/icons/PieChartIcon.js +1 -1
  521. package/dist/icons/PipetteIcon.js +1 -1
  522. package/dist/icons/PlayCircleIcon.js +1 -1
  523. package/dist/icons/PlayIcon.js +1 -1
  524. package/dist/icons/PlusIcon.js +1 -1
  525. package/dist/icons/ProgressBarIcon.js +1 -1
  526. package/dist/icons/ReloadIcon.js +1 -1
  527. package/dist/icons/ReportIcon.js +1 -1
  528. package/dist/icons/ReturnIcon.js +1 -1
  529. package/dist/icons/RightIcon.js +1 -1
  530. package/dist/icons/RowTotalsIcon.js +1 -1
  531. package/dist/icons/SchemeIcon.js +1 -1
  532. package/dist/icons/SearchIcon.js +1 -1
  533. package/dist/icons/SemanticQueryIcon.js +1 -1
  534. package/dist/icons/SettingsIcon.js +1 -1
  535. package/dist/icons/ShieldFilledIcon.js +1 -1
  536. package/dist/icons/ShieldIcon.js +1 -1
  537. package/dist/icons/SlashIcon.js +1 -1
  538. package/dist/icons/SparklesIcon.js +1 -1
  539. package/dist/icons/SqlIcon.js +1 -1
  540. package/dist/icons/StatsIcon.js +1 -1
  541. package/dist/icons/StopIcon.js +1 -1
  542. package/dist/icons/StringIcon.js +1 -1
  543. package/dist/icons/SubtotalsIcon.js +1 -1
  544. package/dist/icons/SwitchIcon.js +1 -1
  545. package/dist/icons/TableIcon.js +1 -1
  546. package/dist/icons/ThumbsDownIcon.js +1 -1
  547. package/dist/icons/ThumbsUpIcon.js +1 -1
  548. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  549. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  550. package/dist/icons/ThunderboltIcon.js +1 -1
  551. package/dist/icons/TimeIcon.js +1 -1
  552. package/dist/icons/TrashIcon.js +1 -1
  553. package/dist/icons/UnlockIcon.js +1 -1
  554. package/dist/icons/UpIcon.js +1 -1
  555. package/dist/icons/UserGroupIcon.js +1 -1
  556. package/dist/icons/UserIcon.js +1 -1
  557. package/dist/icons/UserLockIcon.js +1 -1
  558. package/dist/icons/ViewIcon.js +1 -1
  559. package/dist/icons/WarningFilledIcon.js +1 -1
  560. package/dist/icons/WarningIcon.js +1 -1
  561. package/dist/icons/wrap-icon.js +1 -1
  562. package/dist/index.d.ts +2 -1
  563. package/dist/index.js +12 -11
  564. package/dist/index.js.map +1 -1
  565. package/dist/probe/canonicalize.js +1 -1
  566. package/dist/probe/css.js +1 -1
  567. package/dist/probe/index.js +1 -1
  568. package/dist/provider.js +1 -1
  569. package/dist/providers/TrackingProvider.js +1 -1
  570. package/dist/providers/navigation-url.js +1 -1
  571. package/dist/providers/navigationAdapter.default.js +1 -1
  572. package/dist/providers/use-navigation.js +1 -1
  573. package/dist/tokens/all-tokens.js +1 -1
  574. package/dist/tokens/base.js +1 -1
  575. package/dist/tokens/color-seed.js +1 -1
  576. package/dist/tokens/color-theme.js +1 -1
  577. package/dist/tokens/colors.js +1 -1
  578. package/dist/tokens/layout.js +1 -1
  579. package/dist/tokens/lazy-styles.js +1 -1
  580. package/dist/tokens/legacy-color.js +1 -1
  581. package/dist/tokens/palette-config.js +1 -1
  582. package/dist/tokens/palette.js +1 -1
  583. package/dist/tokens/resolve.js +1 -1
  584. package/dist/tokens/shadows.js +1 -1
  585. package/dist/tokens/sizes.js +1 -1
  586. package/dist/tokens/spacing.js +1 -1
  587. package/dist/tokens/typography.js +1 -1
  588. package/dist/utils/ResizeSensor.js +1 -1
  589. package/dist/utils/colors.js +1 -1
  590. package/dist/utils/dotize.js +1 -1
  591. package/dist/utils/is-dev-env.js +1 -1
  592. package/dist/utils/modules.js +1 -1
  593. package/dist/utils/promise.js +1 -1
  594. package/dist/utils/raf.js +1 -1
  595. package/dist/utils/random.js +1 -1
  596. package/dist/utils/range.js +1 -1
  597. package/dist/utils/react/RenderCache.js +1 -1
  598. package/dist/utils/react/Slots.js +1 -1
  599. package/dist/utils/react/chain.js +1 -1
  600. package/dist/utils/react/disabledProps.js +1 -1
  601. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  602. package/dist/utils/react/index.js +4 -4
  603. package/dist/utils/react/interactions.js +1 -1
  604. package/dist/utils/react/isTextOnly.js +1 -1
  605. package/dist/utils/react/mapProps.js +1 -1
  606. package/dist/utils/react/mergeProps.js +1 -1
  607. package/dist/utils/react/nullableValue.js +1 -1
  608. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  609. package/dist/utils/react/programmaticFocus.js +1 -1
  610. package/dist/utils/react/resolveIcon.js +1 -1
  611. package/dist/utils/react/sharedStore.js +1 -1
  612. package/dist/utils/react/useBufferedValue.js +1 -1
  613. package/dist/utils/react/useCombinedRefs.js +1 -1
  614. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  615. package/dist/utils/react/useEventBus.js +1 -1
  616. package/dist/utils/react/useId.js +1 -1
  617. package/dist/utils/react/useIsDarwin.js +1 -1
  618. package/dist/utils/react/useKeySymbols.js +1 -1
  619. package/dist/utils/react/useLayoutEffect.js +1 -1
  620. package/dist/utils/react/useLocalStorage.js +1 -1
  621. package/dist/utils/react/useMergeStyles.js +1 -1
  622. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  623. package/dist/utils/react/usePopoverSync.js +1 -1
  624. package/dist/utils/react/useQaProps.js +1 -1
  625. package/dist/utils/react/useScheme.js +1 -1
  626. package/dist/utils/react/useViewportSize.js +1 -1
  627. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  628. package/dist/utils/selection.js +1 -1
  629. package/dist/utils/styles.js +1 -1
  630. package/dist/utils/tree.js +1 -1
  631. package/dist/utils/warnings.js +1 -1
  632. package/dist/version.js +2 -2
  633. package/docs/components/actions/CommandMenu.md +1 -1
  634. package/docs/components/content/Placeholder.md +2 -0
  635. package/docs/components/content/Skeleton.md +2 -0
  636. package/docs/components/overlays/Dialog.md +1 -1
  637. package/docs/components/overlays/DialogContainer.md +1 -2
  638. package/docs/components/overlays/DialogTrigger.md +1 -0
  639. package/package.json +2 -1
package/dist/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # @cube-dev/ui-kit
2
2
 
3
+ ## 0.194.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1505](https://github.com/cube-js/cube-ui-kit/pull/1505) [`e972167f`](https://github.com/cube-js/cube-ui-kit/commit/e972167f6c081ef2cc617f97ff38c3bdc378ebc8) Thanks [@tenphi](https://github.com/tenphi)! - Render Menu navigation items as native links, supporting `to`, path objects, navigation options and native `href` attributes. Ordinary activation uses the application router once; browser link gestures remain native and disabled destinations stay inert. Preserve the navigation adapter through nested providers and overlays. Submenu triggers open their submenu without invoking item or Menu command callbacks, including pointer and hotkey activation.
8
+
9
+ Support the same destinations and composed item/Menu callbacks in CommandMenu. Cover complete navigation rows with native link targets, including whitespace and padding. Give mixed command/link menus semantic focus targets and separately accessible inline actions while preserving item layout. Correct CommandMenu's searchbox-to-menu active descendant relationship. Use the `focused` modifier and `data-menuitem` for layout-row selectors that previously relied on LI focus or role adjacency. Selection controls reject and ignore destination props so listbox and combobox options cannot navigate.
10
+
11
+ - [#1509](https://github.com/cube-js/cube-ui-kit/pull/1509) [`5acedc3e`](https://github.com/cube-js/cube-ui-kit/commit/5acedc3e3488f6f0523cdee592ac8b420242d158) Thanks [@tenphi](https://github.com/tenphi)! - A modal, fullscreen or tray `Dialog` now hides the page behind it from screen readers while it is open, so their reading cursor stays in the dialog. Lists, menus, popovers, tooltips and dialogs opened from inside it stay readable, and so do toasts; popover and panel dialogs leave the page readable. Content you portal out of a dialog yourself, with `Portal` or `createPortal`, is hidden with the page, so render it inside the dialog. In tests, the page behind an open modal is now `aria-hidden`: role queries skip it, and with `{ hidden: true }` they find its elements but not by name, so query them by text or `qa` instead.
12
+
13
+ ### Patch Changes
14
+
15
+ - [#1509](https://github.com/cube-js/cube-ui-kit/pull/1509) [`5acedc3e`](https://github.com/cube-js/cube-ui-kit/commit/5acedc3e3488f6f0523cdee592ac8b420242d158) Thanks [@tenphi](https://github.com/tenphi)! - A `Title` inside a `Dialog` is now the `h2` the dialog asks for rather than an `h1`, unless it sets its own `level`; it looks the same. `Menu` keeps its id and accessible name on the menu list only, so a trigger's `aria-controls` no longer finds a wrapper with the same id. `CommandMenu` names its search input with its `aria-label`, and its `aria-activedescendant` now points at the highlighted command rather than at an id no element has; item ids are unique to each menu.
16
+
17
+ - [#1509](https://github.com/cube-js/cube-ui-kit/pull/1509) [`5acedc3e`](https://github.com/cube-js/cube-ui-kit/commit/5acedc3e3488f6f0523cdee592ac8b420242d158) Thanks [@tenphi](https://github.com/tenphi)! - Link every form input's `description` and error message to its control with `aria-describedby`, so a screen reader reads them with the field instead of announcing it invalid without saying why. `aria-label` alone now names the inputs of `ComboBox` and `FilterListBox`, and `FileInput`, `TextInputMapper` and `CheckboxGroup`; `CheckboxGroup`'s `group` role, name and description move from the field wrapper to the element around its checkboxes, so `fieldProps` reach the wrapper again; `ComboBox`, `FilterListBox`, `ListBox` and `ColorSwatchGroup` mark an invalid field `aria-invalid`, which a screen reader announces; and `Picker`, `FilterPicker` and `ColorPicker` accept `aria-describedby`. The required asterisk and the check marks of `Checkbox` and `ListBox` are hidden from screen readers rather than read as unnamed graphics; with `includeNecessityIndicatorInAccessibilityName`, the asterisk is read as "(required)". The two calendar buttons of `DateRangeSeparatedPicker` are named for the start and end date, where both were "Calendar".
18
+
19
+ - [#1509](https://github.com/cube-js/cube-ui-kit/pull/1509) [`5acedc3e`](https://github.com/cube-js/cube-ui-kit/commit/5acedc3e3488f6f0523cdee592ac8b420242d158) Thanks [@tenphi](https://github.com/tenphi)! - Make a `Skeleton` one "Content is loading" region rather than one per bar, and hide the placeholders inside it, and in a table's loading rows, from screen readers. A standalone `Placeholder` is still that region, and is no longer an empty `aria-live` region. `Result` and `Banner` hide their status icons from screen readers rather than letting them be read as unnamed graphics.
20
+
21
+ - [#1508](https://github.com/cube-js/cube-ui-kit/pull/1508) [`d91cd10d`](https://github.com/cube-js/cube-ui-kit/commit/d91cd10d4ded0d3d970d3125506e5ffb23bd74a7) Thanks [@tenphi](https://github.com/tenphi)! - Reduce wide ItemTable and DataTable horizontal scrolling work by reusing the mounted column buffer between refills. Keep the existing ahead coverage, tooltips, headers and custom-cell behavior, release extra buffer cells when scrolling settles or vertical movement starts, and skip range tracking when every column is already retained.
22
+
23
+ - [#1509](https://github.com/cube-js/cube-ui-kit/pull/1509) [`5acedc3e`](https://github.com/cube-js/cube-ui-kit/commit/5acedc3e3488f6f0523cdee592ac8b420242d158) Thanks [@tenphi](https://github.com/tenphi)! - Translate the accessible names components set themselves, which were English in every language: `ButtonSplit`'s menu button, `CommandMenu`'s list and loading indicator, the dialog, value input, palette and color-space tabs of `ColorPicker` and `ColorInput`, `ColorSwatchGroup`'s default and custom-color names, `HotKeys` (and the "or" between combinations), the resize handles of `Layout.Panel` and `Layout.Pane`, `Tree`'s default name and `TextInputMapper`'s add button. English text is unchanged.
24
+
3
25
  ## 0.193.2
4
26
 
5
27
  ### Patch Changes
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { deprecationWarning } from "../../utils/warnings.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import React, { useEffect } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useSyncRef } from "./use-sync-ref.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useRef } from "react";
3
3
 
4
4
  //#region src/_internal/hooks/use-is-first-render.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../utils/react/useLayoutEffect.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  //#region src/_internal/hooks/use-timer/timer.ts
3
3
  var Timer = class {
4
4
  callback;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useEvent } from "../use-event.js";
3
3
  import { Timer } from "./timer.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useEvent } from "./use-event.js";
3
3
  import { warn } from "../../utils/warnings.js";
4
4
  import { useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { extractStyles } from "../utils/styles.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { ItemAction } from "./actions/ItemAction/ItemAction.js";
3
3
  import { ItemBadge } from "./content/ItemBadge/ItemBadge.js";
4
4
  import { Item } from "react-stately";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { mergeStyleLayers } from "../utils/styles.js";
3
3
  import { usePaletteValue } from "../tokens/palette-config.js";
4
4
  import { getTokens } from "../tokens/all-tokens.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useCombinedRefs } from "../utils/react/useCombinedRefs.js";
3
3
  import { filterBaseProps, tasty } from "@tenphi/tasty";
4
4
  import { forwardRef, useCallback, useEffect, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
 
4
4
  //#region src/components/HiddenInput.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { extractStyles } from "../utils/styles.js";
3
3
  import { AMBIENT_PREDEFINED_STATES } from "../utils/react/useScheme.js";
4
4
  import { EventBusProvider } from "../utils/react/useEventBus.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useAction } from "../use-action.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,7 +1,7 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
- import { _Item } from "../../content/Item/Item.js";
4
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
+ import { _Item } from "../../content/Item/Item.js";
5
5
  import { Button } from "../Button/Button.js";
6
6
  import { c } from "react/compiler-runtime";
7
7
  import { tasty } from "@tenphi/tasty";
@@ -10,10 +10,10 @@ import { IconAlertTriangle, IconCircleCheck, IconExclamationCircle, IconInfoCirc
10
10
 
11
11
  //#region src/components/actions/Banner/Banner.tsx
12
12
  const DEFAULT_ICONS = {
13
- danger: /* @__PURE__ */ jsx(IconExclamationCircle, {}),
14
- warning: /* @__PURE__ */ jsx(IconAlertTriangle, {}),
15
- note: /* @__PURE__ */ jsx(IconInfoCircle, {}),
16
- success: /* @__PURE__ */ jsx(IconCircleCheck, {})
13
+ danger: /* @__PURE__ */ jsx(IconExclamationCircle, { "aria-hidden": "true" }),
14
+ warning: /* @__PURE__ */ jsx(IconAlertTriangle, { "aria-hidden": "true" }),
15
+ note: /* @__PURE__ */ jsx(IconInfoCircle, { "aria-hidden": "true" }),
16
+ success: /* @__PURE__ */ jsx(IconCircleCheck, { "aria-hidden": "true" })
17
17
  };
18
18
  const BannerElement = tasty(_Item, { styles: {
19
19
  width: "100%",
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.js","names":["IconAlertTriangle","IconCircleCheck","IconExclamationCircle","IconInfoCircle","IconX","tasty","ReactNode","useEvent","useI18n","CubeItemProps","Item","Button","CubeButtonProps","CubeItemActionProps","BannerTheme","BannerProps","Omit","theme","isDismissable","onDismiss","BannerActionProps","BannerLinkProps","DEFAULT_ICONS","Record","danger","warning","note","success","BannerElement","styles","width","Description","textOverflow","whiteSpace","Actions","gap","BannerActionElement","Action","type","preset","BannerLinkElement","size","color","textDecoration","BannerAction","props","$","_c","t0","BannerLink","Banner","t","actions","children","icon","rest","t1","undefined","t2","onDismissEvent","defaultIcon","hasActions","t3","t4","t5","Link"],"sources":["../../../../src/components/actions/Banner/Banner.tsx"],"sourcesContent":["import {\n IconAlertTriangle,\n IconCircleCheck,\n IconExclamationCircle,\n IconInfoCircle,\n IconX,\n} from '@tabler/icons-react';\nimport { tasty } from '@tenphi/tasty';\nimport { ReactNode } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { CubeItemProps, Item } from '../../content/Item/Item';\nimport { Button, CubeButtonProps } from '../Button/Button';\nimport { CubeItemActionProps } from '../ItemAction/ItemAction';\n\nexport type BannerTheme = 'danger' | 'warning' | 'note' | 'success';\n\nexport type BannerProps = Omit<CubeItemProps, 'type' | 'size' | 'theme'> & {\n /**\n * The visual theme of the banner.\n * @default 'note'\n */\n theme?: BannerTheme;\n /**\n * Controls whether the banner can be dismissed by the user.\n * @default false\n */\n isDismissable?: boolean;\n /**\n * Callback fired when the dismiss button is clicked.\n */\n onDismiss?: () => void;\n};\n\nexport type BannerActionProps = Omit<CubeItemActionProps, 'preset' | 'type'>;\n\nexport type BannerLinkProps = Omit<CubeButtonProps, 'type' | 'size' | 'color'>;\n\nconst DEFAULT_ICONS: Record<BannerTheme, ReactNode> = {\n danger: <IconExclamationCircle />,\n warning: <IconAlertTriangle />,\n note: <IconInfoCircle />,\n success: <IconCircleCheck />,\n};\n\nconst BannerElement = tasty(Item, {\n styles: {\n width: '100%',\n\n Description: {\n textOverflow: 'ellipsis / 2',\n whiteSpace: 'normal',\n },\n\n Actions: {\n gap: '1x',\n },\n },\n});\n\n// `current.outline` — the `current` theme on `Item.Action`, given the outlined\n// shape rather than the borderless default.\n//\n// `current` is the right color source: a banner labels itself `#white` in both\n// schemes (see `BannerLinkElement` and `*_PRIMARY_STYLES`), so the action mixes\n// its chip, border and label from that white — label cr 4.3-5.0 against every\n// banner theme, with the chip a subtle 1.06 off the banner. That is what an\n// action on a saturated surface should be: the banner carries the emphasis, the\n// button just has to be findable.\n//\n// `outline` rather than `Item.Action`'s `clear` default because a banner action\n// is a call to action, and `clear` paints nothing at rest — on a busy banner it\n// reads as body text until hovered. The `#current.08` border is what makes it a\n// button, which is why the old `border: '#clear'` override had to go: it was\n// written when `outline` meant `note.outline` and friends, whose border is the\n// opaque `#note-border` — a pale line built for a `#surface-2` chip on a light\n// page and plainly wrong on a saturated banner. On the `current` theme the\n// border IS the chip, and the 3% fill cannot carry one alone.\n//\n// `type=\"primary\"` is deliberately not used. It would fill with the inherited\n// white and punch `#current-fill` out of it, which defaults to `#surface` —\n// white in light mode, so the label would collapse into its own chip. A banner\n// that wants a filled action has to set `#current-fill` to its own surface\n// color; see `CURRENT_PRIMARY_STYLES` in `item-themes`.\nconst BannerActionElement = tasty(Item.Action, {\n type: 'outline',\n styles: {\n preset: 't3m',\n },\n});\n\nconst BannerLinkElement = tasty(Button, {\n type: 'link',\n size: 'inline',\n styles: {\n color: '#white',\n textDecoration: 'underline',\n },\n});\n\n/**\n * Sub-component for action buttons within a Banner.\n * Automatically styled to match the banner's theme.\n */\nexport function BannerAction(props: BannerActionProps) {\n return <BannerActionElement {...props} />;\n}\n\n/**\n * Sub-component for inline links within Banner content.\n * Styled with white color and underline to stand out against the banner background.\n */\nexport function BannerLink(props: BannerLinkProps) {\n return <BannerLinkElement {...props} />;\n}\n\n/**\n * Banner displays prominent messages and notifications to users.\n * Supports different themes (danger, warning, note, success) with appropriate icons.\n * Use Banner.Action for action buttons and Banner.Link for inline links.\n */\nexport function Banner(props: BannerProps) {\n const { t } = useI18n();\n\n const {\n theme = 'note',\n actions,\n isDismissable = false,\n onDismiss,\n children,\n icon,\n ...rest\n } = props;\n\n const onDismissEvent = useEvent(() => {\n onDismiss?.();\n });\n\n const defaultIcon = DEFAULT_ICONS[theme];\n\n const hasActions = !!(actions || isDismissable);\n\n return (\n <BannerElement\n qa=\"Banner\"\n role=\"status\"\n type=\"primary\"\n theme={theme}\n size=\"large\"\n icon={icon ?? defaultIcon}\n {...rest}\n actions={\n hasActions ? (\n <>\n {actions}\n {isDismissable && (\n <Item.Action\n icon={<IconX />}\n tooltip={t('banner.hideBanner', 'Hide banner')}\n onPress={onDismissEvent}\n />\n )}\n </>\n ) : undefined\n }\n >\n {children}\n </BannerElement>\n );\n}\n\nBanner.Action = BannerAction;\nBanner.Link = BannerLink;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Banner.js","names":["IconAlertTriangle","IconCircleCheck","IconExclamationCircle","IconInfoCircle","IconX","tasty","ReactNode","useEvent","useI18n","CubeItemProps","Item","Button","CubeButtonProps","CubeItemActionProps","BannerTheme","BannerProps","Omit","theme","isDismissable","onDismiss","BannerActionProps","BannerLinkProps","DEFAULT_ICONS","Record","danger","warning","note","success","BannerElement","styles","width","Description","textOverflow","whiteSpace","Actions","gap","BannerActionElement","Action","type","preset","BannerLinkElement","size","color","textDecoration","BannerAction","props","$","_c","t0","BannerLink","Banner","t","actions","children","icon","rest","t1","undefined","t2","onDismissEvent","defaultIcon","hasActions","t3","t4","t5","Link"],"sources":["../../../../src/components/actions/Banner/Banner.tsx"],"sourcesContent":["import {\n IconAlertTriangle,\n IconCircleCheck,\n IconExclamationCircle,\n IconInfoCircle,\n IconX,\n} from '@tabler/icons-react';\nimport { tasty } from '@tenphi/tasty';\nimport { ReactNode } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { CubeItemProps, Item } from '../../content/Item/Item';\nimport { Button, CubeButtonProps } from '../Button/Button';\nimport { CubeItemActionProps } from '../ItemAction/ItemAction';\n\nexport type BannerTheme = 'danger' | 'warning' | 'note' | 'success';\n\nexport type BannerProps = Omit<CubeItemProps, 'type' | 'size' | 'theme'> & {\n /**\n * The visual theme of the banner.\n * @default 'note'\n */\n theme?: BannerTheme;\n /**\n * Controls whether the banner can be dismissed by the user.\n * @default false\n */\n isDismissable?: boolean;\n /**\n * Callback fired when the dismiss button is clicked.\n */\n onDismiss?: () => void;\n};\n\nexport type BannerActionProps = Omit<CubeItemActionProps, 'preset' | 'type'>;\n\nexport type BannerLinkProps = Omit<CubeButtonProps, 'type' | 'size' | 'color'>;\n\nconst DEFAULT_ICONS: Record<BannerTheme, ReactNode> = {\n // Decorative: the banner's text carries the message.\n danger: <IconExclamationCircle aria-hidden=\"true\" />,\n warning: <IconAlertTriangle aria-hidden=\"true\" />,\n note: <IconInfoCircle aria-hidden=\"true\" />,\n success: <IconCircleCheck aria-hidden=\"true\" />,\n};\n\nconst BannerElement = tasty(Item, {\n styles: {\n width: '100%',\n\n Description: {\n textOverflow: 'ellipsis / 2',\n whiteSpace: 'normal',\n },\n\n Actions: {\n gap: '1x',\n },\n },\n});\n\n// `current.outline` — the `current` theme on `Item.Action`, given the outlined\n// shape rather than the borderless default.\n//\n// `current` is the right color source: a banner labels itself `#white` in both\n// schemes (see `BannerLinkElement` and `*_PRIMARY_STYLES`), so the action mixes\n// its chip, border and label from that white — label cr 4.3-5.0 against every\n// banner theme, with the chip a subtle 1.06 off the banner. That is what an\n// action on a saturated surface should be: the banner carries the emphasis, the\n// button just has to be findable.\n//\n// `outline` rather than `Item.Action`'s `clear` default because a banner action\n// is a call to action, and `clear` paints nothing at rest — on a busy banner it\n// reads as body text until hovered. The `#current.08` border is what makes it a\n// button, which is why the old `border: '#clear'` override had to go: it was\n// written when `outline` meant `note.outline` and friends, whose border is the\n// opaque `#note-border` — a pale line built for a `#surface-2` chip on a light\n// page and plainly wrong on a saturated banner. On the `current` theme the\n// border IS the chip, and the 3% fill cannot carry one alone.\n//\n// `type=\"primary\"` is deliberately not used. It would fill with the inherited\n// white and punch `#current-fill` out of it, which defaults to `#surface` —\n// white in light mode, so the label would collapse into its own chip. A banner\n// that wants a filled action has to set `#current-fill` to its own surface\n// color; see `CURRENT_PRIMARY_STYLES` in `item-themes`.\nconst BannerActionElement = tasty(Item.Action, {\n type: 'outline',\n styles: {\n preset: 't3m',\n },\n});\n\nconst BannerLinkElement = tasty(Button, {\n type: 'link',\n size: 'inline',\n styles: {\n color: '#white',\n textDecoration: 'underline',\n },\n});\n\n/**\n * Sub-component for action buttons within a Banner.\n * Automatically styled to match the banner's theme.\n */\nexport function BannerAction(props: BannerActionProps) {\n return <BannerActionElement {...props} />;\n}\n\n/**\n * Sub-component for inline links within Banner content.\n * Styled with white color and underline to stand out against the banner background.\n */\nexport function BannerLink(props: BannerLinkProps) {\n return <BannerLinkElement {...props} />;\n}\n\n/**\n * Banner displays prominent messages and notifications to users.\n * Supports different themes (danger, warning, note, success) with appropriate icons.\n * Use Banner.Action for action buttons and Banner.Link for inline links.\n */\nexport function Banner(props: BannerProps) {\n const { t } = useI18n();\n\n const {\n theme = 'note',\n actions,\n isDismissable = false,\n onDismiss,\n children,\n icon,\n ...rest\n } = props;\n\n const onDismissEvent = useEvent(() => {\n onDismiss?.();\n });\n\n const defaultIcon = DEFAULT_ICONS[theme];\n\n const hasActions = !!(actions || isDismissable);\n\n return (\n <BannerElement\n qa=\"Banner\"\n role=\"status\"\n type=\"primary\"\n theme={theme}\n size=\"large\"\n icon={icon ?? defaultIcon}\n {...rest}\n actions={\n hasActions ? (\n <>\n {actions}\n {isDismissable && (\n <Item.Action\n icon={<IconX />}\n tooltip={t('banner.hideBanner', 'Hide banner')}\n onPress={onDismissEvent}\n />\n )}\n </>\n ) : undefined\n }\n >\n {children}\n </BannerElement>\n );\n}\n\nBanner.Action = BannerAction;\nBanner.Link = BannerLink;\n"],"mappings":";;;;;;;;;;;AAuCA,MAAMsB,gBAAgD;CAEpDE,QAAQ,oBAAC,yBAAsB,eAAY,SAAS;CACpDC,SAAS,oBAAC,qBAAkB,eAAY,SAAS;CACjDC,MAAM,oBAAC,kBAAe,eAAY,SAAS;CAC3CC,SAAS,oBAAC,mBAAgB,eAAY,SAAM;CAC7C;AAED,MAAMC,gBAAgBvB,MAAMK,OAAM,EAChCmB,QAAQ;CACNC,OAAO;CAEPC,aAAa;EACXC,cAAc;EACdC,YAAY;EACb;CAEDC,SAAS,EACPC,KAAK,MACP;CACF,EACD,CAAC;AA0BF,MAAMC,sBAAsB/B,MAAMK,MAAK2B,QAAQ;CAC7CC,MAAM;CACNT,QAAQ,EACNU,QAAQ,OACV;CACD,CAAC;AAEF,MAAMC,oBAAoBnC,MAAMM,QAAQ;CACtC2B,MAAM;CACNG,MAAM;CACNZ,QAAQ;EACNa,OAAO;EACPC,gBAAgB;EAClB;CACD,CAAC;;;;;AAMF,SAAOC,aAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAD,OAAA;AACEG,OAAA,oBAAC,uBAAmB,GAAKH,QAAS;AAAAC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAlCE;;;;;;AAOT,SAAOC,WAAAJ,OAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAD,OAAA;AACEG,OAAA,oBAAC,qBAAiB,GAAKH,QAAS;AAAAC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAhCE;;;;;;;AAQT,SAAOE,OAAAL,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAA,EAAAI,MAAc3C,SAAS;CAAC,IAAA4C;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAnC;CAAA,IAAAoC;CAAA,IAAAP;CAAA,IAAAQ;AAAA,KAAAV,EAAA,OAAAD,OAAA;AAExB,GAAA,CAAA5B,OAAA+B,IAAAI,SAAAlC,eAAAsC,IAAArC,WAAAkC,UAAAC,SAAAC,QAQIV;AAAMC,IAAA,KAAAD;AAAAC,IAAA,KAAAM;AAAAN,IAAA,KAAAO;AAAAP,IAAA,KAAAQ;AAAAR,IAAA,KAAA3B;AAAA2B,IAAA,KAAAS;AAAAT,IAAA,KAAAE;AAAAF,IAAA,KAAAU;QAAA;AAAAJ,YAAAN,EAAA;AAAAO,aAAAP,EAAA;AAAAQ,SAAAR,EAAA;AAAA3B,cAAA2B,EAAA;AAAAS,SAAAT,EAAA;AAAAE,OAAAF,EAAA;AAAAU,OAAAV,EAAA;;CAPR,MAAA7B,QAAA+B,OAAAS,SAAA,SAAAT;CAEA,MAAA9B,gBAAAsC,OAAAC,SAAA,QAAAD;CAAqB,IAAAE;AAAA,KAAAZ,EAAA,OAAA3B,WAAA;AAOSuC,aAAA;AAC9BvC,gBAAa;;AACd2B,IAAA,KAAA3B;AAAA2B,IAAA,KAAAY;OAAAA,MAAAZ,EAAA;CAFD,MAAAa,iBAAuBpD,SAASmD,GAE9B;CAEF,MAAAE,cAAoBtC,cAAcL;CAElC,MAAA4C,aAAmB,CAAC,EAAET,WAAAlC;CASZ,MAAA4C,KAAAR,QAAAM;CAAmB,IAAAG;AAAA,KAAAjB,EAAA,QAAAM,WAAAN,EAAA,QAAAe,cAAAf,EAAA,QAAA5B,iBAAA4B,EAAA,QAAAa,kBAAAb,EAAA,QAAAK,GAAA;AAGvBY,OAAAF,aAAA,4CAEKT,SACAlC,iBACC,oBAAA,MAAA;GACQ,MAAA,oBAAC,UAAO;GACL,SAAAiC,EAAE,qBAAqB,cAAa;GACpCQ,SAAAA;IAEb,IAES,GAXbF;AAWaX,IAAA,MAAAM;AAAAN,IAAA,MAAAe;AAAAf,IAAA,MAAA5B;AAAA4B,IAAA,MAAAa;AAAAb,IAAA,MAAAK;AAAAL,IAAA,MAAAiB;OAAAA,MAAAjB,EAAA;CAAA,IAAAkB;AAAA,KAAAlB,EAAA,QAAAO,YAAAP,EAAA,QAAAS,QAAAT,EAAA,QAAAgB,MAAAhB,EAAA,QAAAiB,MAAAjB,EAAA,QAAA7B,OAAA;AApBjB+C,OAAA,oBAAC;GACI,IAAA;GACE,MAAA;GACA,MAAA;GACE/C;GACF,MAAA;GACC,MAAA6C;GAAmB,GACrBP;GAEF,SAAAQ;GAcDV;IACa;AAAAP,IAAA,MAAAO;AAAAP,IAAA,MAAAS;AAAAT,IAAA,MAAAgB;AAAAhB,IAAA,MAAAiB;AAAAjB,IAAA,MAAA7B;AAAA6B,IAAA,MAAAkB;OAAAA,MAAAlB,EAAA;AAAA,QAxBhBkB;;AA4BJd,OAAOb,SAASO;AAChBM,OAAOe,OAAOhB"}
@@ -1,7 +1,7 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
- import { getDisabledElementProps, omitActivationEventProps } from "../../../utils/react/disabledProps.js";
4
3
  import { mergeProps } from "../../../utils/react/mergeProps.js";
4
+ import { getDisabledElementProps, omitActivationEventProps } from "../../../utils/react/disabledProps.js";
5
5
  import { useDismissParentPopover } from "../../../utils/react/usePopoverSync.js";
6
6
  import { useEvent } from "../../../_internal/hooks/use-event.js";
7
7
  import { resolveIcon } from "../../../utils/react/resolveIcon.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { useSlotProps } from "../../../utils/react/Slots.js";
3
3
  import { Space } from "../../layout/Space.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,6 +1,7 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { extractStyles, mergeStyleLayers } from "../../../utils/styles.js";
3
3
  import { mergeProps } from "../../../utils/react/mergeProps.js";
4
+ import { useI18n } from "../../../i18n/useI18n.js";
4
5
  import { ButtonSplitContext } from "./context.js";
5
6
  import { Button } from "../Button/Button.js";
6
7
  import { DirectionIcon } from "../../../icons/DirectionIcon.js";
@@ -22,8 +23,9 @@ const ButtonSplitElement = tasty({
22
23
  }
23
24
  });
24
25
  const ButtonSplit = forwardRef(function ButtonSplit(props, ref) {
25
- const $ = c(49);
26
+ const $ = c(50);
26
27
  const { actions, actionKey: controlledActionKey, defaultActionKey, onAction, onActionChange, type, theme, size, isDisabled, actionProps, triggerProps, menuProps, styles, children, role, ...rest } = props;
28
+ const { t } = useI18n();
27
29
  const isControlled = controlledActionKey !== void 0;
28
30
  let t0;
29
31
  if ($[0] !== actions?.[0]?.key || $[1] !== defaultActionKey) {
@@ -94,7 +96,7 @@ const ButtonSplit = forwardRef(function ButtonSplit(props, ref) {
94
96
  const t6 = filterBaseProps(rest, { eventProps: true });
95
97
  const t7 = role ?? (isCustomMode ? "group" : void 0);
96
98
  let t8;
97
- if ($[20] !== actionProps || $[21] !== actions || $[22] !== children || $[23] !== currentAction?.icon || $[24] !== currentAction?.label || $[25] !== currentAction?.tooltip || $[26] !== currentKey || $[27] !== handleActionPress || $[28] !== handleSelectionChange || $[29] !== isCustomMode || $[30] !== isDisabled || $[31] !== menuProps || $[32] !== size || $[33] !== theme || $[34] !== triggerProps || $[35] !== type) {
99
+ if ($[20] !== actionProps || $[21] !== actions || $[22] !== children || $[23] !== currentAction?.icon || $[24] !== currentAction?.label || $[25] !== currentAction?.tooltip || $[26] !== currentKey || $[27] !== handleActionPress || $[28] !== handleSelectionChange || $[29] !== isCustomMode || $[30] !== isDisabled || $[31] !== menuProps || $[32] !== size || $[33] !== t || $[34] !== theme || $[35] !== triggerProps || $[36] !== type) {
98
100
  t8 = isCustomMode ? children : actions ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Button, {
99
101
  type,
100
102
  theme,
@@ -111,7 +113,7 @@ const ButtonSplit = forwardRef(function ButtonSplit(props, ref) {
111
113
  theme,
112
114
  size,
113
115
  isDisabled,
114
- "aria-label": "More options",
116
+ "aria-label": t("buttonSplit.moreOptions", "More options"),
115
117
  icon: _temp,
116
118
  ...triggerProps
117
119
  }), /* @__PURE__ */ jsx(__Menu, {
@@ -135,13 +137,14 @@ const ButtonSplit = forwardRef(function ButtonSplit(props, ref) {
135
137
  $[30] = isDisabled;
136
138
  $[31] = menuProps;
137
139
  $[32] = size;
138
- $[33] = theme;
139
- $[34] = triggerProps;
140
- $[35] = type;
141
- $[36] = t8;
142
- } else t8 = $[36];
140
+ $[33] = t;
141
+ $[34] = theme;
142
+ $[35] = triggerProps;
143
+ $[36] = type;
144
+ $[37] = t8;
145
+ } else t8 = $[37];
143
146
  let t9;
144
- if ($[37] !== T0 || $[38] !== mergedStyles || $[39] !== ref || $[40] !== rest.qa || $[41] !== t6 || $[42] !== t7 || $[43] !== t8) {
147
+ if ($[38] !== T0 || $[39] !== mergedStyles || $[40] !== ref || $[41] !== rest.qa || $[42] !== t6 || $[43] !== t7 || $[44] !== t8) {
145
148
  t9 = /* @__PURE__ */ jsx(T0, {
146
149
  ...t6,
147
150
  ref,
@@ -151,26 +154,26 @@ const ButtonSplit = forwardRef(function ButtonSplit(props, ref) {
151
154
  role: t7,
152
155
  children: t8
153
156
  });
154
- $[37] = T0;
155
- $[38] = mergedStyles;
156
- $[39] = ref;
157
- $[40] = rest.qa;
158
- $[41] = t6;
159
- $[42] = t7;
160
- $[43] = t8;
161
- $[44] = t9;
162
- } else t9 = $[44];
157
+ $[38] = T0;
158
+ $[39] = mergedStyles;
159
+ $[40] = ref;
160
+ $[41] = rest.qa;
161
+ $[42] = t6;
162
+ $[43] = t7;
163
+ $[44] = t8;
164
+ $[45] = t9;
165
+ } else t9 = $[45];
163
166
  let t10;
164
- if ($[45] !== contextValue || $[46] !== t5.Provider || $[47] !== t9) {
167
+ if ($[46] !== contextValue || $[47] !== t5.Provider || $[48] !== t9) {
165
168
  t10 = /* @__PURE__ */ jsx(t5.Provider, {
166
169
  value: contextValue,
167
170
  children: t9
168
171
  });
169
- $[45] = contextValue;
170
- $[46] = t5.Provider;
171
- $[47] = t9;
172
- $[48] = t10;
173
- } else t10 = $[48];
172
+ $[46] = contextValue;
173
+ $[47] = t5.Provider;
174
+ $[48] = t9;
175
+ $[49] = t10;
176
+ } else t10 = $[49];
174
177
  return t10;
175
178
  });
176
179
  ButtonSplit.displayName = "ButtonSplit";
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonSplit.js","names":["CONTAINER_STYLES","filterBaseProps","tasty","forwardRef","ReactNode","useMemo","useState","DirectionIcon","mergeProps","extractStyles","mergeStyleLayers","Button","Menu","ButtonSplitContext","BaseProps","ContainerStyleProps","Styles","CubeCollectionItemProps","CubeButtonProps","CubeMenuProps","ButtonSplitAction","Omit","key","label","CubeButtonSplitProps","actions","actionKey","defaultActionKey","onAction","onActionChange","type","theme","size","isDisabled","actionProps","Partial","triggerProps","menuProps","styles","children","STYLE_PROPS","ButtonSplitElement","as","qa","display","position","verticalAlign","ButtonSplit","HTMLDivElement","props","ref","$","_c","controlledActionKey","role","rest","isControlled","undefined","t0","uncontrolledKey","setUncontrolledKey","currentKey","t1","find","a","currentAction","t2","handleActionPress","t3","keys","newKey","handleSelectionChange","containerStyles","mergedStyles","t4","contextValue","isCustomMode","t5","T0","t6","eventProps","t7","t8","icon","tooltip","onPress","_temp","map","_temp2","t9","t10","Provider","displayName","pressed","textValue","itemProps"],"sources":["../../../../src/components/actions/ButtonSplit/ButtonSplit.tsx"],"sourcesContent":["import { CONTAINER_STYLES, filterBaseProps, tasty } from '@tenphi/tasty';\nimport { forwardRef, ReactNode, useMemo, useState } from 'react';\n\nimport { DirectionIcon } from '../../../icons/DirectionIcon';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles, mergeStyleLayers } from '../../../utils/styles';\nimport { Button } from '../Button/Button';\nimport { Menu } from '../Menu/Menu';\n\nimport { ButtonSplitContext } from './context';\n\nimport type { BaseProps, ContainerStyleProps, Styles } from '@tenphi/tasty';\nimport type { CubeCollectionItemProps } from '../../CollectionItem';\nimport type { CubeButtonProps } from '../Button/Button';\nimport type { CubeMenuProps } from '../Menu/Menu';\n\nexport interface ButtonSplitAction\n extends Omit<\n CubeCollectionItemProps<object>,\n 'children' | 'onAction' | 'wrapper'\n > {\n key: string;\n label: ReactNode;\n}\n\nexport interface CubeButtonSplitProps extends BaseProps, ContainerStyleProps {\n /** Actions for strict mode. When provided, renders action + trigger buttons automatically. */\n actions?: ButtonSplitAction[];\n /** Currently selected action key (controlled). */\n actionKey?: string;\n /** Initially selected action key (uncontrolled). */\n defaultActionKey?: string;\n /** Called when the action button is pressed. Receives the current action key. */\n onAction?: (key: string) => void;\n /** Called when the selected action changes via the trigger menu. */\n onActionChange?: (key: string) => void;\n\n /** Button type applied to both action and trigger buttons in strict mode. */\n type?: CubeButtonProps['type'];\n /** Button theme applied to both action and trigger buttons in strict mode. */\n theme?: CubeButtonProps['theme'];\n /** Button size applied to both action and trigger buttons in strict mode. */\n size?: CubeButtonProps['size'];\n /** Disables both buttons in strict mode. */\n isDisabled?: boolean;\n\n /** Additional props for the action button in strict mode. */\n actionProps?: Partial<CubeButtonProps>;\n /** Additional props for the trigger button in strict mode. */\n triggerProps?: Partial<CubeButtonProps>;\n /** Additional props for the dropdown menu in strict mode. */\n menuProps?: Partial<CubeMenuProps<object>>;\n\n /** Custom styles for the wrapper element. */\n styles?: Styles;\n\n /** Custom mode: render arbitrary Button children. */\n children?: ReactNode;\n}\n\nconst STYLE_PROPS = CONTAINER_STYLES;\n\nconst ButtonSplitElement = tasty({\n as: 'div',\n qa: 'ButtonSplit',\n styles: {\n display: 'inline-flex',\n position: 'relative',\n verticalAlign: 'bottom',\n },\n});\n\nexport const ButtonSplit = forwardRef<HTMLDivElement, CubeButtonSplitProps>(\n function ButtonSplit(props, ref) {\n const {\n actions,\n actionKey: controlledActionKey,\n defaultActionKey,\n onAction,\n onActionChange,\n type,\n theme,\n size,\n isDisabled,\n actionProps,\n triggerProps,\n menuProps,\n styles,\n children,\n role,\n ...rest\n } = props;\n\n const isControlled = controlledActionKey !== undefined;\n const [uncontrolledKey, setUncontrolledKey] = useState(\n () => defaultActionKey ?? actions?.[0]?.key,\n );\n\n const currentKey = isControlled ? controlledActionKey : uncontrolledKey;\n\n const currentAction =\n actions?.find((a) => a.key === currentKey) ?? actions?.[0];\n\n const handleActionPress = () => {\n if (currentKey) {\n onAction?.(currentKey);\n }\n };\n\n const handleSelectionChange = (keys: string[]) => {\n const newKey = keys[0];\n\n if (newKey) {\n if (!isControlled) {\n setUncontrolledKey(newKey);\n }\n\n onActionChange?.(newKey);\n }\n };\n\n const containerStyles = extractStyles(rest, STYLE_PROPS);\n\n const mergedStyles = mergeStyleLayers(containerStyles, styles);\n\n const contextValue = useMemo(\n () => ({\n currentKey,\n onAction,\n onActionChange,\n type,\n theme,\n size,\n isDisabled,\n }),\n [currentKey, onAction, onActionChange, type, theme, size, isDisabled],\n );\n\n const isCustomMode = children != null;\n\n return (\n <ButtonSplitContext.Provider value={contextValue}>\n <ButtonSplitElement\n {...filterBaseProps(rest, { eventProps: true })}\n ref={ref}\n data-button-split\n styles={mergedStyles}\n qa={rest.qa}\n // Custom mode renders peer buttons with no visible group label, which\n // is exactly when a caller needs `aria-label` to land on something the\n // AT will announce. `role` comes from `BaseProps`, so a caller that\n // wants something else — including `presentation` to opt out — just\n // passes it. Strict mode keeps its previous shape.\n role={role ?? (isCustomMode ? 'group' : undefined)}\n >\n {isCustomMode ? (\n children\n ) : actions ? (\n <>\n <Button\n type={type}\n theme={theme}\n size={size}\n isDisabled={isDisabled}\n icon={currentAction?.icon}\n tooltip={currentAction?.tooltip}\n {...mergeProps(actionProps, { onPress: handleActionPress })}\n >\n {currentAction?.label}\n </Button>\n <Menu.Trigger placement=\"bottom end\">\n <Button\n type={type}\n theme={theme}\n size={size}\n isDisabled={isDisabled}\n aria-label=\"More options\"\n icon={({ pressed }) => (\n <DirectionIcon to={pressed ? 'up' : 'down'} />\n )}\n {...triggerProps}\n />\n <Menu\n selectionMode=\"single\"\n selectedKeys={currentKey ? [currentKey] : []}\n onSelectionChange={handleSelectionChange}\n {...menuProps}\n >\n {actions.map(({ key, label, textValue, ...itemProps }) => (\n <Menu.Item\n key={key}\n textValue={\n textValue ?? (typeof label === 'string' ? label : key)\n }\n {...itemProps}\n >\n {label}\n </Menu.Item>\n ))}\n </Menu>\n </Menu.Trigger>\n </>\n ) : null}\n </ButtonSplitElement>\n </ButtonSplitContext.Provider>\n );\n },\n);\n\nButtonSplit.displayName = 'ButtonSplit';\n"],"mappings":"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"}
1
+ {"version":3,"file":"ButtonSplit.js","names":["CONTAINER_STYLES","filterBaseProps","tasty","forwardRef","ReactNode","useMemo","useState","useI18n","DirectionIcon","mergeProps","extractStyles","mergeStyleLayers","Button","Menu","ButtonSplitContext","BaseProps","ContainerStyleProps","Styles","CubeCollectionItemProps","CubeButtonProps","CubeMenuProps","ButtonSplitAction","Omit","key","label","CubeButtonSplitProps","actions","actionKey","defaultActionKey","onAction","onActionChange","type","theme","size","isDisabled","actionProps","Partial","triggerProps","menuProps","styles","children","STYLE_PROPS","ButtonSplitElement","as","qa","display","position","verticalAlign","ButtonSplit","HTMLDivElement","props","ref","$","_c","controlledActionKey","role","rest","t","isControlled","undefined","t0","uncontrolledKey","setUncontrolledKey","currentKey","t1","find","a","currentAction","t2","handleActionPress","t3","keys","newKey","handleSelectionChange","containerStyles","mergedStyles","t4","contextValue","isCustomMode","t5","T0","t6","eventProps","t7","t8","icon","tooltip","onPress","_temp","map","_temp2","t9","t10","Provider","displayName","pressed","textValue","itemProps"],"sources":["../../../../src/components/actions/ButtonSplit/ButtonSplit.tsx"],"sourcesContent":["import { CONTAINER_STYLES, filterBaseProps, tasty } from '@tenphi/tasty';\nimport { forwardRef, ReactNode, useMemo, useState } from 'react';\n\nimport { useI18n } from '../../../i18n';\nimport { DirectionIcon } from '../../../icons/DirectionIcon';\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles, mergeStyleLayers } from '../../../utils/styles';\nimport { Button } from '../Button/Button';\nimport { Menu } from '../Menu/Menu';\n\nimport { ButtonSplitContext } from './context';\n\nimport type { BaseProps, ContainerStyleProps, Styles } from '@tenphi/tasty';\nimport type { CubeCollectionItemProps } from '../../CollectionItem';\nimport type { CubeButtonProps } from '../Button/Button';\nimport type { CubeMenuProps } from '../Menu/Menu';\n\nexport interface ButtonSplitAction\n extends Omit<\n CubeCollectionItemProps<object>,\n 'children' | 'onAction' | 'wrapper'\n > {\n key: string;\n label: ReactNode;\n}\n\nexport interface CubeButtonSplitProps extends BaseProps, ContainerStyleProps {\n /** Actions for strict mode. When provided, renders action + trigger buttons automatically. */\n actions?: ButtonSplitAction[];\n /** Currently selected action key (controlled). */\n actionKey?: string;\n /** Initially selected action key (uncontrolled). */\n defaultActionKey?: string;\n /** Called when the action button is pressed. Receives the current action key. */\n onAction?: (key: string) => void;\n /** Called when the selected action changes via the trigger menu. */\n onActionChange?: (key: string) => void;\n\n /** Button type applied to both action and trigger buttons in strict mode. */\n type?: CubeButtonProps['type'];\n /** Button theme applied to both action and trigger buttons in strict mode. */\n theme?: CubeButtonProps['theme'];\n /** Button size applied to both action and trigger buttons in strict mode. */\n size?: CubeButtonProps['size'];\n /** Disables both buttons in strict mode. */\n isDisabled?: boolean;\n\n /** Additional props for the action button in strict mode. */\n actionProps?: Partial<CubeButtonProps>;\n /** Additional props for the trigger button in strict mode. */\n triggerProps?: Partial<CubeButtonProps>;\n /** Additional props for the dropdown menu in strict mode. */\n menuProps?: Partial<CubeMenuProps<object>>;\n\n /** Custom styles for the wrapper element. */\n styles?: Styles;\n\n /** Custom mode: render arbitrary Button children. */\n children?: ReactNode;\n}\n\nconst STYLE_PROPS = CONTAINER_STYLES;\n\nconst ButtonSplitElement = tasty({\n as: 'div',\n qa: 'ButtonSplit',\n styles: {\n display: 'inline-flex',\n position: 'relative',\n verticalAlign: 'bottom',\n },\n});\n\nexport const ButtonSplit = forwardRef<HTMLDivElement, CubeButtonSplitProps>(\n function ButtonSplit(props, ref) {\n const {\n actions,\n actionKey: controlledActionKey,\n defaultActionKey,\n onAction,\n onActionChange,\n type,\n theme,\n size,\n isDisabled,\n actionProps,\n triggerProps,\n menuProps,\n styles,\n children,\n role,\n ...rest\n } = props;\n\n const { t } = useI18n();\n const isControlled = controlledActionKey !== undefined;\n const [uncontrolledKey, setUncontrolledKey] = useState(\n () => defaultActionKey ?? actions?.[0]?.key,\n );\n\n const currentKey = isControlled ? controlledActionKey : uncontrolledKey;\n\n const currentAction =\n actions?.find((a) => a.key === currentKey) ?? actions?.[0];\n\n const handleActionPress = () => {\n if (currentKey) {\n onAction?.(currentKey);\n }\n };\n\n const handleSelectionChange = (keys: string[]) => {\n const newKey = keys[0];\n\n if (newKey) {\n if (!isControlled) {\n setUncontrolledKey(newKey);\n }\n\n onActionChange?.(newKey);\n }\n };\n\n const containerStyles = extractStyles(rest, STYLE_PROPS);\n\n const mergedStyles = mergeStyleLayers(containerStyles, styles);\n\n const contextValue = useMemo(\n () => ({\n currentKey,\n onAction,\n onActionChange,\n type,\n theme,\n size,\n isDisabled,\n }),\n [currentKey, onAction, onActionChange, type, theme, size, isDisabled],\n );\n\n const isCustomMode = children != null;\n\n return (\n <ButtonSplitContext.Provider value={contextValue}>\n <ButtonSplitElement\n {...filterBaseProps(rest, { eventProps: true })}\n ref={ref}\n data-button-split\n styles={mergedStyles}\n qa={rest.qa}\n // Custom mode renders peer buttons with no visible group label, which\n // is exactly when a caller needs `aria-label` to land on something the\n // AT will announce. `role` comes from `BaseProps`, so a caller that\n // wants something else — including `presentation` to opt out — just\n // passes it. Strict mode keeps its previous shape.\n role={role ?? (isCustomMode ? 'group' : undefined)}\n >\n {isCustomMode ? (\n children\n ) : actions ? (\n <>\n <Button\n type={type}\n theme={theme}\n size={size}\n isDisabled={isDisabled}\n icon={currentAction?.icon}\n tooltip={currentAction?.tooltip}\n {...mergeProps(actionProps, { onPress: handleActionPress })}\n >\n {currentAction?.label}\n </Button>\n <Menu.Trigger placement=\"bottom end\">\n <Button\n type={type}\n theme={theme}\n size={size}\n isDisabled={isDisabled}\n aria-label={t('buttonSplit.moreOptions', 'More options')}\n icon={({ pressed }) => (\n <DirectionIcon to={pressed ? 'up' : 'down'} />\n )}\n {...triggerProps}\n />\n <Menu\n selectionMode=\"single\"\n selectedKeys={currentKey ? [currentKey] : []}\n onSelectionChange={handleSelectionChange}\n {...menuProps}\n >\n {actions.map(({ key, label, textValue, ...itemProps }) => (\n <Menu.Item\n key={key}\n textValue={\n textValue ?? (typeof label === 'string' ? label : key)\n }\n {...itemProps}\n >\n {label}\n </Menu.Item>\n ))}\n </Menu>\n </Menu.Trigger>\n </>\n ) : null}\n </ButtonSplitElement>\n </ButtonSplitContext.Provider>\n );\n },\n);\n\nButtonSplit.displayName = 'ButtonSplit';\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-f671590 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-356f952 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/actions/ButtonSplit/context.ts