@cube-dev/ui-kit 0.194.1 → 0.196.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 (708) hide show
  1. package/dist/CHANGELOG.md +190 -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.d.ts +6 -0
  16. package/dist/components/Root.js +125 -102
  17. package/dist/components/Root.js.map +1 -1
  18. package/dist/components/actions/Action/Action.js +1 -1
  19. package/dist/components/actions/Banner/Banner.js +1 -1
  20. package/dist/components/actions/Button/Button.js +11 -5
  21. package/dist/components/actions/Button/Button.js.map +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.d.ts +9 -4
  24. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  25. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  26. package/dist/components/actions/ButtonSplit/context.js +1 -1
  27. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  28. package/dist/components/actions/CommandMenu/styled.js +1 -1
  29. package/dist/components/actions/ItemAction/ItemAction.js +27 -25
  30. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  31. package/dist/components/actions/ItemActionContext.js +1 -1
  32. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  33. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +1 -1
  36. package/dist/components/actions/Menu/MenuCollectionItem.js +7 -4
  37. package/dist/components/actions/Menu/MenuCollectionItem.js.map +1 -1
  38. package/dist/components/actions/Menu/MenuItem.js +69 -60
  39. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  40. package/dist/components/actions/Menu/MenuSection.js +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 -4
  46. package/dist/components/actions/Menu/styled.js.map +1 -1
  47. package/dist/components/actions/actions-run.js +1 -1
  48. package/dist/components/actions/index.js +1 -1
  49. package/dist/components/actions/use-action.js +15 -14
  50. package/dist/components/actions/use-action.js.map +1 -1
  51. package/dist/components/actions/use-anchored-menu.js +1 -1
  52. package/dist/components/actions/use-context-menu.js +1 -1
  53. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  54. package/dist/components/content/Alert/Alert.js +1 -1
  55. package/dist/components/content/Alert/use-alert.js +1 -1
  56. package/dist/components/content/Avatar/Avatar.js +1 -1
  57. package/dist/components/content/Badge/Badge.js +1 -1
  58. package/dist/components/content/Card/Card.js +1 -1
  59. package/dist/components/content/Content.js +1 -1
  60. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  61. package/dist/components/content/CopySnippet/CopySnippet.d.ts +14 -14
  62. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  63. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  64. package/dist/components/content/Divider.js +1 -1
  65. package/dist/components/content/Footer.js +1 -1
  66. package/dist/components/content/Header.js +1 -1
  67. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  68. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  69. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  70. package/dist/components/content/Item/Item.js +16 -4
  71. package/dist/components/content/Item/Item.js.map +1 -1
  72. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  73. package/dist/components/content/ItemBadge/ItemBadge.js +7 -3
  74. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  75. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  76. package/dist/components/content/Layout/GridLayout.js +1 -1
  77. package/dist/components/content/Layout/Layout.js +29 -15
  78. package/dist/components/content/Layout/Layout.js.map +1 -1
  79. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  80. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  81. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  82. package/dist/components/content/Layout/LayoutContent.js +1 -1
  83. package/dist/components/content/Layout/LayoutContext.js +20 -10
  84. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  85. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  86. package/dist/components/content/Layout/LayoutFooter.js +12 -9
  87. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  88. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  89. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  90. package/dist/components/content/Layout/LayoutPane.d.ts +5 -1
  91. package/dist/components/content/Layout/LayoutPane.js +323 -149
  92. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  93. package/dist/components/content/Layout/LayoutPanel.d.ts +4 -2
  94. package/dist/components/content/Layout/LayoutPanel.js +73 -2
  95. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  96. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  97. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  98. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  99. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  100. package/dist/components/content/Layout/index.js +1 -1
  101. package/dist/components/content/Layout/utils.js +1 -1
  102. package/dist/components/content/Paragraph.js +1 -1
  103. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  104. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  105. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  106. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  107. package/dist/components/content/Result/Result.js +1 -1
  108. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  109. package/dist/components/content/Tag/Tag.js +1 -1
  110. package/dist/components/content/Text.js +1 -1
  111. package/dist/components/content/TextItem/TextItem.js +1 -1
  112. package/dist/components/content/Title.js +1 -1
  113. package/dist/components/content/Tree/Tree.js +1 -1
  114. package/dist/components/content/Tree/TreeNode.js +2 -1
  115. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  116. package/dist/components/content/Tree/styled.js +1 -1
  117. package/dist/components/content/Tree/tree-index.js +1 -1
  118. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  119. package/dist/components/content/Tree/use-load-data.js +1 -1
  120. package/dist/components/content/highlightText.js +1 -1
  121. package/dist/components/content/use-auto-tooltip.js +3 -3
  122. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  123. package/dist/components/data/DataTable/DataTable.js +1 -1
  124. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  125. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  126. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  127. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  128. package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -1
  129. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  130. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  131. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  132. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  133. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  134. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  135. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  136. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  137. package/dist/components/data/TableBase/RowCollection.js +1 -1
  138. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  139. package/dist/components/data/TableBase/TableRow.js +1 -1
  140. package/dist/components/data/TableBase/TableView.js +3 -1
  141. package/dist/components/data/TableBase/TableView.js.map +1 -1
  142. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  143. package/dist/components/data/TableBase/column-header.js +1 -1
  144. package/dist/components/data/TableBase/column-menu.js +1 -1
  145. package/dist/components/data/TableBase/column-styles.js +1 -1
  146. package/dist/components/data/TableBase/column-tint.js +1 -1
  147. package/dist/components/data/TableBase/row-menu.js +1 -1
  148. package/dist/components/data/TableBase/styled.js +1 -1
  149. package/dist/components/data/TableBase/table-tree.js +1 -1
  150. package/dist/components/data/TableBase/types.js +1 -1
  151. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  152. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  153. package/dist/components/data/TableBase/use-column-order.js +1 -1
  154. package/dist/components/data/TableBase/use-column-window.js +1 -1
  155. package/dist/components/data/TableBase/use-container-width.js +1 -1
  156. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  157. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  158. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  159. package/dist/components/data/TableBase/use-table-search.js +1 -1
  160. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  161. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  162. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  163. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  164. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  165. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  166. package/dist/components/fields/Checkbox/Checkbox.js +28 -17
  167. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  168. package/dist/components/fields/Checkbox/CheckboxGroup.d.ts +1 -1
  169. package/dist/components/fields/Checkbox/CheckboxGroup.js +6 -6
  170. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  171. package/dist/components/fields/Checkbox/context.js +1 -1
  172. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  173. package/dist/components/fields/ColorPicker/ColorPicker.js +3 -1
  174. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  175. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  176. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +2 -1
  177. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  178. package/dist/components/fields/ComboBox/ComboBox.d.ts +27 -7
  179. package/dist/components/fields/ComboBox/ComboBox.js +1095 -619
  180. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  181. package/dist/components/fields/ComboBox/comboBoxOptions.js +84 -0
  182. package/dist/components/fields/ComboBox/comboBoxOptions.js.map +1 -0
  183. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  184. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  185. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  186. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  187. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  188. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  189. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  190. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  191. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  192. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  193. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  194. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  195. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  196. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  197. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  198. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  199. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  200. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  201. package/dist/components/fields/DatePicker/parseDate.d.ts +7 -0
  202. package/dist/components/fields/DatePicker/parseDate.js +17 -3
  203. package/dist/components/fields/DatePicker/parseDate.js.map +1 -1
  204. package/dist/components/fields/DatePicker/period.js +1 -1
  205. package/dist/components/fields/DatePicker/props.js +1 -1
  206. package/dist/components/fields/DatePicker/utils.js +1 -1
  207. package/dist/components/fields/FileInput/FileInput.js +1 -1
  208. package/dist/components/fields/FilterListBox/FilterListBox.js +2 -1
  209. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  210. package/dist/components/fields/FilterPicker/FilterPicker.js +15 -6
  211. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  212. package/dist/components/fields/Input/Input.d.ts +2 -2
  213. package/dist/components/fields/Input/Input.js +2 -2
  214. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  215. package/dist/components/fields/ListBox/ListBox.d.ts +10 -4
  216. package/dist/components/fields/ListBox/ListBox.js +298 -146
  217. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  218. package/dist/components/fields/ListBox/optionId.js +1 -1
  219. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +150 -139
  220. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  221. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  222. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  223. package/dist/components/fields/NumberInput/NumberInput.d.ts +6 -1
  224. package/dist/components/fields/NumberInput/NumberInput.js +136 -128
  225. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  226. package/dist/components/fields/NumberInput/StepButton.js +38 -48
  227. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  228. package/dist/components/fields/PasswordInput/PasswordInput.d.ts +1 -2
  229. package/dist/components/fields/PasswordInput/PasswordInput.js +77 -111
  230. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  231. package/dist/components/fields/Picker/Picker.d.ts +1 -1
  232. package/dist/components/fields/Picker/Picker.js +22 -8
  233. package/dist/components/fields/Picker/Picker.js.map +1 -1
  234. package/dist/components/fields/RadioGroup/Radio.d.ts +12 -8
  235. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  236. package/dist/components/fields/RadioGroup/RadioGroup.js +2 -2
  237. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  238. package/dist/components/fields/RadioGroup/context.js +1 -1
  239. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  240. package/dist/components/fields/SearchInput/SearchInput.d.ts +8 -3
  241. package/dist/components/fields/SearchInput/SearchInput.js +22 -29
  242. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  243. package/dist/components/fields/Select/Select.d.ts +12 -1
  244. package/dist/components/fields/Select/Select.js +365 -207
  245. package/dist/components/fields/Select/Select.js.map +1 -1
  246. package/dist/components/fields/Slider/Gradation.js +1 -1
  247. package/dist/components/fields/Slider/HueSlider.js +1 -1
  248. package/dist/components/fields/Slider/RangeSlider.js +3 -4
  249. package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
  250. package/dist/components/fields/Slider/Slider.js +1 -1
  251. package/dist/components/fields/Slider/SliderBase.js +1 -1
  252. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  253. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  254. package/dist/components/fields/Slider/elements.js +1 -1
  255. package/dist/components/fields/Slider/index.js +1 -1
  256. package/dist/components/fields/Switch/Switch.js +101 -101
  257. package/dist/components/fields/Switch/Switch.js.map +1 -1
  258. package/dist/components/fields/TagInput/TagInput.js +336 -330
  259. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  260. package/dist/components/fields/TagInput/TagList.js +1 -1
  261. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  262. package/dist/components/fields/TagInput/useTagError.js +1 -1
  263. package/dist/components/fields/TextArea/TextArea.d.ts +0 -1
  264. package/dist/components/fields/TextArea/TextArea.js +49 -63
  265. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  266. package/dist/components/fields/TextInput/TextInput.d.ts +1 -1
  267. package/dist/components/fields/TextInput/TextInput.js +42 -46
  268. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  269. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -2
  270. package/dist/components/fields/TextInput/TextInputBase.js +32 -10
  271. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  272. package/dist/components/fields/TextInput/displayed-validation.js +50 -0
  273. package/dist/components/fields/TextInput/displayed-validation.js.map +1 -0
  274. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  275. package/dist/components/fields/TextInputMapper/TextInputMapper.js +20 -17
  276. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  277. package/dist/components/fields/TriggerActions.js +1 -1
  278. package/dist/components/fields/color/ColorPanel.js +3 -1
  279. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  280. package/dist/components/fields/color/channels.js +1 -1
  281. package/dist/components/fields/color/color.js +1 -1
  282. package/dist/components/fields/color/context.js +1 -1
  283. package/dist/components/fields/index.d.ts +2 -2
  284. package/dist/components/fields/option-origin-press.js +78 -0
  285. package/dist/components/fields/option-origin-press.js.map +1 -0
  286. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +10 -8
  287. package/dist/components/form/FieldWrapper/FieldWrapper.js +214 -158
  288. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  289. package/dist/components/form/FieldWrapper/field-description.js +3 -3
  290. package/dist/components/form/FieldWrapper/field-description.js.map +1 -1
  291. package/dist/components/form/FieldWrapper/types.d.ts +4 -3
  292. package/dist/components/form/Form/Field.js +1 -1
  293. package/dist/components/form/Form/Form.js +1 -1
  294. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  295. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  296. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  297. package/dist/components/form/Form/SubmitError.js +1 -1
  298. package/dist/components/form/Form/backend.js +1 -1
  299. package/dist/components/form/Form/index.js +1 -1
  300. package/dist/components/form/Form/modern/actions.js +1 -1
  301. package/dist/components/form/Form/modern/context.js +1 -1
  302. package/dist/components/form/Form/modern/controller.js +1 -1
  303. package/dist/components/form/Form/modern/field-binding.js +1 -1
  304. package/dist/components/form/Form/modern/field.js +1 -1
  305. package/dist/components/form/Form/modern/react.js +1 -1
  306. package/dist/components/form/Form/modern/store.js +1 -1
  307. package/dist/components/form/Form/modern/validation.js +1 -1
  308. package/dist/components/form/Form/modern/values.js +1 -1
  309. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  310. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  311. package/dist/components/form/Form/use-field/use-field-props.js +34 -22
  312. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  313. package/dist/components/form/Form/use-field/use-field.js +1 -1
  314. package/dist/components/form/Form/use-form.js +1 -1
  315. package/dist/components/form/Form/validation.js +1 -1
  316. package/dist/components/form/Label.js +1 -1
  317. package/dist/components/form/field-chrome.js +15 -0
  318. package/dist/components/form/field-chrome.js.map +1 -0
  319. package/dist/components/form/index.d.ts +1 -1
  320. package/dist/components/form/legacy-tooltip.js +1 -1
  321. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  322. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  323. package/dist/components/form/validation/use-validation-props.js +1 -1
  324. package/dist/components/form/wrapper.d.ts +6 -5
  325. package/dist/components/form/wrapper.js +11 -8
  326. package/dist/components/form/wrapper.js.map +1 -1
  327. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  328. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  329. package/dist/components/layout/Flex.js +1 -1
  330. package/dist/components/layout/Flow.js +1 -1
  331. package/dist/components/layout/Grid.js +1 -1
  332. package/dist/components/layout/Panel.js +1 -1
  333. package/dist/components/layout/Prefix.js +1 -1
  334. package/dist/components/layout/ResizablePanel.js +1 -1
  335. package/dist/components/layout/Space.js +1 -1
  336. package/dist/components/layout/Suffix.js +1 -1
  337. package/dist/components/navigation/Pagination/Pagination.js +3 -1
  338. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  339. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  340. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  341. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  342. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  343. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  344. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  345. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  346. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  347. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  348. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  349. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  350. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  351. package/dist/components/navigation/Tabs/styled.js +1 -1
  352. package/dist/components/navigation/Tabs/types.js +1 -1
  353. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  354. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  355. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  356. package/dist/components/other/Calendar/Calendar.js +1 -1
  357. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  358. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  359. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  360. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  361. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  362. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  363. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  364. package/dist/components/other/Calendar/styled.js +1 -1
  365. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  366. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  367. package/dist/components/overlays/AlertDialog/AlertDialog.d.ts +6 -1
  368. package/dist/components/overlays/AlertDialog/AlertDialog.js +3 -2
  369. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  370. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +15 -4
  371. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +85 -15
  372. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  373. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  374. package/dist/components/overlays/AlertDialog/types.d.ts +2 -1
  375. package/dist/components/overlays/Dialog/Dialog.js +28 -14
  376. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  377. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  378. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  379. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +7 -3
  380. package/dist/components/overlays/Dialog/DialogTrigger.js +149 -132
  381. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  382. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  383. package/dist/components/overlays/Dialog/context.js +1 -1
  384. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  385. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  386. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  387. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +83 -0
  388. package/dist/components/overlays/Dialog/use-dialog-open-sync.js.map +1 -0
  389. package/dist/components/overlays/Modal/Modal.js +1 -1
  390. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  391. package/dist/components/overlays/Modal/Overlay.js +9 -3
  392. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  393. package/dist/components/overlays/Modal/Popover.js +31 -29
  394. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  395. package/dist/components/overlays/Modal/Tray.js +2 -1
  396. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  397. package/dist/components/overlays/Modal/Underlay.js +1 -1
  398. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  399. package/dist/components/overlays/Notifications/Notification.js +1 -1
  400. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  401. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  402. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  403. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  404. package/dist/components/overlays/Notifications/OverlayContainer.js +18 -32
  405. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  406. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  407. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  408. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  409. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  410. package/dist/components/overlays/Notifications/index.js +1 -1
  411. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  412. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  413. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  414. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  415. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  416. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  417. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  418. package/dist/components/overlays/Toast/index.js +1 -1
  419. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  420. package/dist/components/overlays/Toast/useToast.js +1 -1
  421. package/dist/components/overlays/Tooltip/Tooltip.d.ts +8 -0
  422. package/dist/components/overlays/Tooltip/Tooltip.js +16 -22
  423. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  424. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  425. package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +1 -1
  426. package/dist/components/overlays/Tooltip/TooltipTrigger.js +163 -113
  427. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  428. package/dist/components/overlays/Tooltip/context.js +1 -1
  429. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  430. package/dist/components/overlays/Tooltip/split-trigger-props.js +6 -5
  431. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -1
  432. package/dist/components/portal/Portal.js +1 -1
  433. package/dist/components/portal/PortalProvider.js +1 -1
  434. package/dist/components/portal/usePortal.js +1 -1
  435. package/dist/components/shared/DraggableCollection.js +1 -1
  436. package/dist/components/shared/InvalidIcon.js +1 -1
  437. package/dist/components/shared/ValidIcon.js +1 -1
  438. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  439. package/dist/components/status/Spin/Cube.js +1 -1
  440. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  441. package/dist/components/status/Spin/Spin.js +1 -1
  442. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  443. package/dist/data/item-themes.js +1 -1
  444. package/dist/data/themes.js +1 -1
  445. package/dist/eslint-plugin/defaults.generated.js +11 -17
  446. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  447. package/dist/eslint-plugin/index.js +1 -1
  448. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  449. package/dist/i18n/I18nProvider.js +1 -1
  450. package/dist/i18n/createFormatter.js +1 -1
  451. package/dist/i18n/index.js +1 -1
  452. package/dist/i18n/instance.js +1 -1
  453. package/dist/i18n/locales/de-DE/uikit.js +6 -4
  454. package/dist/i18n/locales/en-US/uikit.js +6 -4
  455. package/dist/i18n/locales/en-US/uikit.json.d.ts +3 -1
  456. package/dist/i18n/locales/es-ES/uikit.js +6 -4
  457. package/dist/i18n/locales/es-MX/uikit.js +6 -4
  458. package/dist/i18n/locales/fr-FR/uikit.js +6 -4
  459. package/dist/i18n/locales/it-IT/uikit.js +6 -4
  460. package/dist/i18n/locales/ja-JP/uikit.js +6 -4
  461. package/dist/i18n/locales/nb-NO/uikit.js +6 -4
  462. package/dist/i18n/locales/pt-BR/uikit.js +6 -4
  463. package/dist/i18n/locales/pt-PT/uikit.js +6 -4
  464. package/dist/i18n/locales/sv-SE/uikit.js +6 -4
  465. package/dist/i18n/locales/vi-VN/uikit.js +6 -4
  466. package/dist/i18n/locales.js +1 -1
  467. package/dist/i18n/namespace.js +1 -1
  468. package/dist/i18n/useFormatter.js +1 -1
  469. package/dist/i18n/useI18n.js +1 -1
  470. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  471. package/dist/icons/AdjustmentsIcon.js +1 -1
  472. package/dist/icons/AiIcon.js +1 -1
  473. package/dist/icons/AreaChartIcon.js +1 -1
  474. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  475. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  476. package/dist/icons/BackwardIcon.js +1 -1
  477. package/dist/icons/BarChartIcon.js +1 -1
  478. package/dist/icons/BellFilledIcon.js +1 -1
  479. package/dist/icons/BellIcon.js +1 -1
  480. package/dist/icons/BooleanIcon.js +1 -1
  481. package/dist/icons/CalendarEditIcon.js +1 -1
  482. package/dist/icons/CalendarIcon.js +1 -1
  483. package/dist/icons/CaretDownIcon.js +1 -1
  484. package/dist/icons/CaretUpIcon.js +1 -1
  485. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  486. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  487. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  488. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  489. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  490. package/dist/icons/ChartBarLineIcon.js +1 -1
  491. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  492. package/dist/icons/ChartBarStackedIcon.js +1 -1
  493. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  494. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  495. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  496. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  497. package/dist/icons/ChartBubbleIcon.js +1 -1
  498. package/dist/icons/ChartDonut2Icon.js +1 -1
  499. package/dist/icons/ChartFunnelIcon.js +1 -1
  500. package/dist/icons/ChartHeatmapIcon.js +1 -1
  501. package/dist/icons/ChartKPIIcon.js +1 -1
  502. package/dist/icons/ChartPie2Icon.js +1 -1
  503. package/dist/icons/ChartScatterIcon.js +1 -1
  504. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  505. package/dist/icons/CheckCircleIcon.js +1 -1
  506. package/dist/icons/CheckIcon.js +1 -1
  507. package/dist/icons/CircleFilledIcon.js +1 -1
  508. package/dist/icons/ClearIcon.js +1 -1
  509. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  510. package/dist/icons/CloseCircleIcon.js +1 -1
  511. package/dist/icons/CloseIcon.js +1 -1
  512. package/dist/icons/CodeIcon.js +1 -1
  513. package/dist/icons/ColumnTotalIcon.js +1 -1
  514. package/dist/icons/CopyIcon.js +1 -1
  515. package/dist/icons/CountIcon.js +1 -1
  516. package/dist/icons/CubeIcon.js +1 -1
  517. package/dist/icons/CubePauseIcon.js +1 -1
  518. package/dist/icons/CubePlayIcon.js +1 -1
  519. package/dist/icons/CurrencyDollarIcon.js +1 -1
  520. package/dist/icons/DangerIcon.js +1 -1
  521. package/dist/icons/DashboardIcon.js +1 -1
  522. package/dist/icons/DatabaseIcon.js +1 -1
  523. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  524. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  525. package/dist/icons/DirectionIcon.js +1 -1
  526. package/dist/icons/DonutIcon.js +1 -1
  527. package/dist/icons/DownIcon.js +1 -1
  528. package/dist/icons/EditIcon.js +1 -1
  529. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  530. package/dist/icons/ExclamationCircleIcon.js +1 -1
  531. package/dist/icons/ExclamationIcon.js +1 -1
  532. package/dist/icons/EyeIcon.js +1 -1
  533. package/dist/icons/EyeInvisibleIcon.js +1 -1
  534. package/dist/icons/FilterIcon.js +1 -1
  535. package/dist/icons/FolderFilledIcon.js +1 -1
  536. package/dist/icons/FolderIcon.js +1 -1
  537. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  538. package/dist/icons/FolderOpenIcon.js +1 -1
  539. package/dist/icons/ForwardIcon.js +1 -1
  540. package/dist/icons/GripVerticalIcon.js +1 -1
  541. package/dist/icons/HierarchyIcon.js +1 -1
  542. package/dist/icons/HierarchyOpenIcon.js +1 -1
  543. package/dist/icons/Icon.js +1 -1
  544. package/dist/icons/InfoCircleIcon.js +1 -1
  545. package/dist/icons/InfoIcon.js +1 -1
  546. package/dist/icons/KeyIcon.js +1 -1
  547. package/dist/icons/LeftIcon.js +1 -1
  548. package/dist/icons/LineChartIcon.js +1 -1
  549. package/dist/icons/LoadingIcon.js +1 -1
  550. package/dist/icons/LockFilledIcon.js +1 -1
  551. package/dist/icons/LockIcon.js +1 -1
  552. package/dist/icons/MoreIcon.js +1 -1
  553. package/dist/icons/NotAllowedIcon.js +1 -1
  554. package/dist/icons/Number123Icon.js +1 -1
  555. package/dist/icons/NumberIcon.js +1 -1
  556. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  557. package/dist/icons/PauseCircleIcon.js +1 -1
  558. package/dist/icons/PauseIcon.js +1 -1
  559. package/dist/icons/PercentageIcon.js +1 -1
  560. package/dist/icons/PieChartIcon.js +1 -1
  561. package/dist/icons/PipetteIcon.js +1 -1
  562. package/dist/icons/PlayCircleIcon.js +1 -1
  563. package/dist/icons/PlayIcon.js +1 -1
  564. package/dist/icons/PlusIcon.js +1 -1
  565. package/dist/icons/ProgressBarIcon.js +1 -1
  566. package/dist/icons/ReloadIcon.js +1 -1
  567. package/dist/icons/ReportIcon.js +1 -1
  568. package/dist/icons/ReturnIcon.js +1 -1
  569. package/dist/icons/RightIcon.js +1 -1
  570. package/dist/icons/RowTotalsIcon.js +1 -1
  571. package/dist/icons/SchemeIcon.js +1 -1
  572. package/dist/icons/SearchIcon.js +1 -1
  573. package/dist/icons/SemanticQueryIcon.js +1 -1
  574. package/dist/icons/SettingsIcon.js +1 -1
  575. package/dist/icons/ShieldFilledIcon.js +1 -1
  576. package/dist/icons/ShieldIcon.js +1 -1
  577. package/dist/icons/SlashIcon.js +1 -1
  578. package/dist/icons/SparklesIcon.js +1 -1
  579. package/dist/icons/SqlIcon.js +1 -1
  580. package/dist/icons/StatsIcon.js +1 -1
  581. package/dist/icons/StopIcon.js +1 -1
  582. package/dist/icons/StringIcon.js +1 -1
  583. package/dist/icons/SubtotalsIcon.js +1 -1
  584. package/dist/icons/SwitchIcon.js +1 -1
  585. package/dist/icons/TableIcon.js +1 -1
  586. package/dist/icons/ThumbsDownIcon.js +1 -1
  587. package/dist/icons/ThumbsUpIcon.js +1 -1
  588. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  589. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  590. package/dist/icons/ThunderboltIcon.js +1 -1
  591. package/dist/icons/TimeIcon.js +1 -1
  592. package/dist/icons/TrashIcon.js +1 -1
  593. package/dist/icons/UnlockIcon.js +1 -1
  594. package/dist/icons/UpIcon.js +1 -1
  595. package/dist/icons/UserGroupIcon.js +1 -1
  596. package/dist/icons/UserIcon.js +1 -1
  597. package/dist/icons/UserLockIcon.js +1 -1
  598. package/dist/icons/ViewIcon.js +1 -1
  599. package/dist/icons/WarningFilledIcon.js +1 -1
  600. package/dist/icons/WarningIcon.js +1 -1
  601. package/dist/icons/wrap-icon.js +1 -1
  602. package/dist/index.d.ts +3 -3
  603. package/dist/index.js +4 -4
  604. package/dist/probe/canonicalize.js +1 -1
  605. package/dist/probe/css.js +1 -1
  606. package/dist/probe/index.js +1 -1
  607. package/dist/provider.js +1 -1
  608. package/dist/providers/TrackingProvider.js +1 -1
  609. package/dist/providers/navigation-url.js +15 -3
  610. package/dist/providers/navigation-url.js.map +1 -1
  611. package/dist/providers/navigationAdapter.default.js +1 -1
  612. package/dist/providers/use-navigation.js +1 -1
  613. package/dist/shared/form.d.ts +17 -4
  614. package/dist/tokens/all-tokens.js +1 -1
  615. package/dist/tokens/base.js +1 -1
  616. package/dist/tokens/color-seed.js +1 -1
  617. package/dist/tokens/color-theme.js +1 -1
  618. package/dist/tokens/colors.js +1 -1
  619. package/dist/tokens/layout.js +1 -1
  620. package/dist/tokens/lazy-styles.js +1 -1
  621. package/dist/tokens/legacy-color.js +1 -1
  622. package/dist/tokens/palette-config.js +1 -1
  623. package/dist/tokens/palette.js +1 -1
  624. package/dist/tokens/resolve.js +1 -1
  625. package/dist/tokens/shadows.js +1 -1
  626. package/dist/tokens/sizes.js +1 -1
  627. package/dist/tokens/spacing.js +1 -1
  628. package/dist/tokens/typography.js +1 -1
  629. package/dist/utils/ResizeSensor.js +1 -1
  630. package/dist/utils/colors.js +1 -1
  631. package/dist/utils/dotize.js +1 -1
  632. package/dist/utils/is-dev-env.js +1 -1
  633. package/dist/utils/modules.js +1 -1
  634. package/dist/utils/promise.js +1 -1
  635. package/dist/utils/raf.js +1 -1
  636. package/dist/utils/random.js +1 -1
  637. package/dist/utils/range.js +1 -1
  638. package/dist/utils/react/RenderCache.js +1 -1
  639. package/dist/utils/react/Slots.js +1 -1
  640. package/dist/utils/react/chain.js +1 -1
  641. package/dist/utils/react/disabledProps.js +1 -1
  642. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  643. package/dist/utils/react/index.js +1 -1
  644. package/dist/utils/react/interactions.js +1 -1
  645. package/dist/utils/react/isTextOnly.js +1 -1
  646. package/dist/utils/react/mapProps.js +1 -1
  647. package/dist/utils/react/mergeProps.js +1 -1
  648. package/dist/utils/react/nullableValue.js +18 -9
  649. package/dist/utils/react/nullableValue.js.map +1 -1
  650. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  651. package/dist/utils/react/programmaticFocus.js +1 -1
  652. package/dist/utils/react/resolveIcon.js +1 -1
  653. package/dist/utils/react/sharedStore.js +1 -1
  654. package/dist/utils/react/useBufferedValue.js +1 -1
  655. package/dist/utils/react/useCombinedRefs.js +1 -1
  656. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  657. package/dist/utils/react/useEventBus.js +1 -1
  658. package/dist/utils/react/useId.js +1 -1
  659. package/dist/utils/react/useIsDarwin.js +1 -1
  660. package/dist/utils/react/useKeySymbols.js +1 -1
  661. package/dist/utils/react/useLayoutEffect.js +1 -1
  662. package/dist/utils/react/useLocalStorage.js +1 -1
  663. package/dist/utils/react/useMergeStyles.js +1 -1
  664. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  665. package/dist/utils/react/usePopoverSync.js +1 -1
  666. package/dist/utils/react/useQaProps.js +1 -1
  667. package/dist/utils/react/useScheme.js +1 -1
  668. package/dist/utils/react/useViewportSize.js +1 -1
  669. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  670. package/dist/utils/selection.js +1 -1
  671. package/dist/utils/styles.js +1 -1
  672. package/dist/utils/tree.js +1 -1
  673. package/dist/utils/warnings.js +1 -1
  674. package/dist/version.js +2 -2
  675. package/docs/ComplexLayout.md +1 -1
  676. package/docs/CreateComponent.md +2 -0
  677. package/docs/FieldProperties.md +32 -5
  678. package/docs/Theming.md +2 -1
  679. package/docs/Usage.md +2 -0
  680. package/docs/components/Root.md +1 -1
  681. package/docs/components/actions/Button.md +8 -2
  682. package/docs/components/actions/ButtonSplit.md +27 -1
  683. package/docs/components/actions/Link.md +1 -1
  684. package/docs/components/actions/Menu.md +4 -2
  685. package/docs/components/content/InfoBadge.md +2 -0
  686. package/docs/components/content/ItemBadge.md +4 -0
  687. package/docs/components/content/Layout.md +41 -6
  688. package/docs/components/fields/Checkbox.md +4 -3
  689. package/docs/components/fields/ComboBox.md +30 -19
  690. package/docs/components/fields/FilterListBox.md +2 -2
  691. package/docs/components/fields/FilterPicker.md +2 -2
  692. package/docs/components/fields/ListBox.md +14 -10
  693. package/docs/components/fields/NumberInput.md +20 -11
  694. package/docs/components/fields/PasswordInput.md +6 -7
  695. package/docs/components/fields/Picker.md +6 -5
  696. package/docs/components/fields/RadioGroup.md +1 -1
  697. package/docs/components/fields/SearchInput.md +7 -6
  698. package/docs/components/fields/Select.md +14 -8
  699. package/docs/components/fields/Switch.md +4 -3
  700. package/docs/components/fields/TagInput.md +8 -1
  701. package/docs/components/fields/TextArea.md +4 -3
  702. package/docs/components/fields/TextInput.md +13 -6
  703. package/docs/components/overlays/AlertDialog.md +45 -5
  704. package/docs/components/overlays/Dialog.md +5 -5
  705. package/docs/components/overlays/DialogTrigger.md +6 -6
  706. package/docs/components/overlays/Tooltip.md +17 -6
  707. package/docs/components/overlays/TooltipTrigger.md +2 -0
  708. package/package.json +1 -1
package/dist/CHANGELOG.md CHANGED
@@ -1,5 +1,195 @@
1
1
  # @cube-dev/ui-kit
2
2
 
3
+ ## 0.196.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1526](https://github.com/cube-js/cube-ui-kit/pull/1526) [`ef9cccec`](https://github.com/cube-js/cube-ui-kit/commit/ef9cccecc90817f62de2ca5157b61cf3f170a618) Thanks [@tenphi](https://github.com/tenphi)! - Fields now render stable field chrome by default, including standalone inputs without a label, so generated validation and TagInput refusal messages stay visible and describe the control without sentinel props. Use `isBare` explicitly for inline controls or controls whose parent owns their field layout; it suppresses chrome even with a label or deprecated `forceField`, while preserving a supplied label for accessibility. Move whole-field layout styles to `fieldStyles` when migrating previously bare controls. An explicit empty `errorMessage` now suppresses the deprecated `message` fallback, and label-less fields no longer reserve a side-label column. Internal composite controls retain their compact presentation.
8
+
9
+ ### Patch Changes
10
+
11
+ - [#1529](https://github.com/cube-js/cube-ui-kit/pull/1529) [`be50525c`](https://github.com/cube-js/cube-ui-kit/commit/be50525c6d2ac2f381203f805acda294369f48da) Thanks [@tenphi](https://github.com/tenphi)! - `Button.Split` no longer styles the Buttons inside a popover, dialog or menu opened from it. Its `type`, `theme`, `size` and `isDisabled` used to reach every `Button` in that overlay, so a confirm popover's Cancel button on a primary, small split turned primary and small, and was disabled whenever the split was. The split's own Buttons still inherit them, and a `Button.Split` inside an overlay still styles its own Buttons. A workaround that wraps the overlay in `<ButtonSplitContext.Provider value={null}>` is no longer needed and can be removed.
12
+
13
+ - [#1529](https://github.com/cube-js/cube-ui-kit/pull/1529) [`be50525c`](https://github.com/cube-js/cube-ui-kit/commit/be50525c6d2ac2f381203f805acda294369f48da) Thanks [@tenphi](https://github.com/tenphi)! - `ComboBox` without `allowsCustomValue` no longer selects a disabled item when focus leaves the input. Typing the label of an item in `disabledKeys`, or text that leaves a disabled item as the only match, used to select it on blur and report it through `onSelectionChange`, although it cannot be picked with the pointer or keyboard. Such text now counts as invalid input: the input shows the selected item's label again (or nothing when no item is selected), and with `clearOnBlur` both the selection and the input are cleared. A disabled item that is already selected stays selected when focus leaves. When several items share the typed label, blur now keeps the selected one, or else picks the first enabled one, instead of always taking the first.
14
+
15
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `ComboBox`: a press in the input opens a closed list, also when the input already has focus, for example after `Tab` or after `Escape` closed the list. The list shows the options the typed text leaves, and text that matches nothing keeps it hidden, so a press that moves the caret does not change what `Enter` commits. A click on the field label only focuses the input. With `popoverTrigger="manual"` the list still opens only from the chevron and the arrow keys.
16
+
17
+ `ComboBox`: a press in the input while the list is open moves the caret and keeps the list open. It used to close the list. The chevron still toggles it.
18
+
19
+ `ComboBox` with `isReadOnly` no longer opens its list from the chevron, the arrow keys, a press in the input or `popoverTrigger="focus"`, and `Enter`, `Escape` and blur no longer change its value or text. Read-only used to only hide the clear button.
20
+
21
+ `ComboBox` with `allowsCustomValue` commits the typed text trimmed, on `Enter` and on blur, and empty or whitespace-only text clears the selection with `null` instead of committing `''`.
22
+
23
+ `ComboBox`: picking the option that is already selected, with a click or `Enter`, keeps it selected and closes the list. It used to clear the value.
24
+
25
+ `ComboBox`: the input has `aria-autocomplete="list"`, so screen readers announce that typing filters the options.
26
+
27
+ `ComboBox` lets `Escape` and `Tab` reach its ancestors unless it acts on them. `Escape` with the list closed and nothing to clear now closes a surrounding dialog, and `Tab` reaches a dialog's focus containment. `Escape` that closes the list or clears the value still stops at the input.
28
+
29
+ `ComboBox`: leaving the field without editing it no longer calls `onSelectionChange(null)` or `onInputChange`. Blur reports only what it changes.
30
+
31
+ `ComboBox`: `aria-activedescendant` no longer points at an option the typed text filtered out. It names a shown option or is absent.
32
+
33
+ `ComboBox` with `allowsCustomValue`: `Enter` with the list closed commits the typed text, even when it is part of an option's label, so "app" can be committed next to an "apple" option. With the list open, `Enter` still picks the highlighted option.
34
+
35
+ `ComboBox`: `onOpenChange` is no longer called on mount and reports only the list showing or hiding. Typing text that matches nothing no longer reports an open and a close on every keystroke. `aria-expanded` follows whether the list is shown.
36
+
37
+ `ComboBox` shows the selected option's label once the options load after `selectedKey`, instead of the raw key, and shows the label of `defaultSelectedKey` from the first paint instead of an empty input.
38
+
39
+ `ComboBox`: `Enter` pressed right after typing picks the first match. It used to find nothing highlighted yet, so it picked nothing and could submit an enclosing form instead.
40
+
41
+ `ComboBox`: the chevron and clear buttons are no longer `Tab` stops, `Tab` closes the list as focus moves on, and closing the list with the chevron returns focus to the input.
42
+
43
+ `ComboBox` recognises an exact match with the same locale-aware comparison the filter uses, so text the list shows for an option, such as "ete" for "Été", selects that option on blur.
44
+
45
+ `ComboBox` with a controlled `selectedKey` keeps showing the controlled option's label when the parent rejects a pick. The input used to show the rejected option.
46
+
47
+ `ComboBox` leaves keys pressed during IME composition to the input method, so the `Enter` that confirms a candidate no longer selects an option or commits half-composed text.
48
+
49
+ `ComboBox` with `items` shows items that arrive while its list is open at once. It used to keep showing the previous items until the next keystroke.
50
+
51
+ `ComboBox`, `SearchComboBox` and `TagInput` with `size="large"` open a list of large options, as `Select` does. A small field keeps medium options.
52
+
53
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `AlertDialog` is now described by its message through `aria-describedby`, so a screen reader reads the message together with the title when it opens. A plain `Dialog` still links no description by default, so a form inside it is not read aloud on open; pass `aria-describedby` to link one.
54
+
55
+ `AlertDialog` with `danger` now opens with focus on Cancel, or on the dialog itself when there is no Cancel, instead of on the destructive confirm button, so an Enter pressed out of habit no longer runs it. An explicit `autoFocus` on the confirm action still puts focus there. Dialogs without `danger` still focus the confirm button.
56
+
57
+ `AlertDialog` opened through `useAlertDialogAPI` now stays mounted until its exit animation has finished, instead of being removed 50 ms early.
58
+
59
+ `Dialog` now contains focus from the moment it opens. A Tab pressed while it was still animating in could move focus to the page behind a modal, where it stayed.
60
+
61
+ `DialogTrigger` with `offset={0}` now places a popover flush against its trigger instead of 8px away.
62
+
63
+ `DialogTrigger` popovers with `isDismissable={false}` no longer swallow outside presses: the control pressed receives the press, and a text field outside can take focus and be typed into, because the popover no longer holds focus. They stay open when a `Button` outside them is pressed or another popover opens, and still close when a modal, tray, fullscreen or panel dialog opens from another `DialogTrigger`.
64
+
65
+ `DialogTrigger` popovers anchored with `targetRef` now close when the anchor scrolls, like popovers anchored to their trigger.
66
+
67
+ `DialogTrigger`'s `hideArrow` is deprecated. Popovers have never rendered an arrow, so it has no effect.
68
+
69
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `ItemAction`: `excludeFromTabOrder` now takes the action out of the Tab order. The action used to reset it, so `SearchInput`'s clear button and other field actions that ask to stay pointer-only were Tab stops. An explicit `tabIndex` still wins.
70
+
71
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `ItemAction`, `ItemButton` and other `Item`-based rows: an open tooltip now adds its id to the row's own `aria-describedby` instead of replacing it, so screen readers read both the caller's description and the tooltip.
72
+
73
+ `Item`, `ItemButton`, `TextItem` and other rows with an automatic tooltip: `tooltip={{ title: undefined }}` or `{{ title: null }}` now falls back to the automatic title, like `tooltip={{}}`, instead of opening an empty bubble.
74
+
75
+ - [#1529](https://github.com/cube-js/cube-ui-kit/pull/1529) [`be50525c`](https://github.com/cube-js/cube-ui-kit/commit/be50525c6d2ac2f381203f805acda294369f48da) Thanks [@tenphi](https://github.com/tenphi)! - A `Layout.Panel` in `overlay` mode no longer closes when you focus a control inside it or a popover, menu or dialog opened from it, so its inputs and buttons can be used. Focus moving into the main content, a backdrop click and Escape still close it; focus moving into another `Layout.Panel` of the same Layout keeps it open. Opening an overlay panel now moves focus to its first control, unless focus already moved elsewhere as it opened, such as to a field with `autoFocus`, and closing it returns focus to the element that had it before, unless focus has moved elsewhere; a panel already open when its Layout first renders leaves page focus alone. A panel opened from a menu item now stays open, and a wrapper that focuses the panel's first control and stops its focus events is no longer needed.
76
+
77
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `Select`, `ListBox` and the pickers built on it (`FilterListBox`, `FilterPicker`, `Picker`, `ComboBox`): a mouse press on an option now selects the option it started on when the pointer comes up inside that option's original box, even if the list moved in between, as it does while a popover is still animating in or scrolls while closing. The press used to pick the neighbouring option under the pointer, or nothing. A release over a different option no longer selects that option, and a press interrupted by `Escape` or another key doesn't pick the moved option.
78
+
79
+ - [#1529](https://github.com/cube-js/cube-ui-kit/pull/1529) [`be50525c`](https://github.com/cube-js/cube-ui-kit/commit/be50525c6d2ac2f381203f805acda294369f48da) Thanks [@tenphi](https://github.com/tenphi)! - `ComboBox`, `SearchComboBox` and `CommandTextArea`: while the list is open, the first click on an enabled control outside it now acts on that control and closes the list, as a click on a UI Kit `Button` already did. A control is a checkbox, switch, radio, text field, native button, link or any other focusable element, in the dialog, popover or menu the field sits in, or anywhere on the page when the field is in none of them. Such a click used to only close the list, so a checkbox stayed unchanged and a text field took no focus until a second click. Focus moves to the control, so the field settles its typed text first, as it does on `Tab`. A click anywhere else still only closes the list and leaves the field focused with its text: on blank space, a dialog's surface or backdrop, or a control outside the dialog or popover the field sits in. A click on a disabled control, including a disabled UI Kit `Button`, which used to commit the typed text, keeps the field's focus and text as well. An enabled UI Kit `Button` or `ItemButton` is still reached from anywhere. `TagInput` now treats blank space in a dialog and controls outside the dialog or popover it sits in the same way; a click there used to move focus away and add the typed text as a tag.
80
+
81
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `ListBox` scrolls a long (virtualized) list to the option that receives focus when that option isn't rendered yet: `End`, `Home`, `Page Down`, typeahead, and the selected option when the list takes focus on open or on `Tab`. The option is then focused, and an input pointing `aria-activedescendant` at it (ComboBox) names an element that exists.
82
+
83
+ `ListBox` keeps its `role="listbox"` element when it has no items, described by the empty label, so a label's `aria-labelledby` or a search input's `aria-controls` no longer points at nothing. The empty list is a Tab stop, and the list's card shows focus while it has it.
84
+
85
+ `ListBox` renders "Select All" as a tri-state `checkbox` (`aria-checked` true, false or mixed) above the list instead of an `option` outside it. It is its own Tab stop, reached with `Tab` or `Shift+Tab` and toggled with `Space`, and no list item is left outside a list. Queries for it by role change from `option` to `checkbox`; its name is unchanged.
86
+
87
+ `ListBox` shows "Select All" as checked once every selectable item it shows is selected, including when the items were selected one by one; disabled items don't count. The next press takes the items shown out of the selection, so selected keys that aren't among its items stay selected.
88
+
89
+ `ListBox`, `FilterListBox` and `FilterPicker`: under a search or `filter`, "Select All" selects or deselects only the options shown, and selected options the search hides stay selected. It used to select every option, hidden ones included, and its next press cleared them all.
90
+
91
+ `ListBox` with `disableSelectionToggle` keeps a re-picked option selected also when `selectionMode` is left to its default, single. It used to apply only with an explicit `selectionMode="single"`.
92
+
93
+ `ListBox` reports one `onSelectionChange` call per "Select All" press instead of two, and none when `disallowEmptySelection` keeps the selection.
94
+
95
+ `ListBox` section dividers are presentational, so a listbox holds only options and groups. `Menu`, `CommandMenu`, `ListBox` and `FilterListBox` headers no longer carry `role="heading"`, which read any controls inside as part of a title, and their footers drop the invalid `role="footer"`.
96
+
97
+ - [#1530](https://github.com/cube-js/cube-ui-kit/pull/1530) [`c814fafd`](https://github.com/cube-js/cube-ui-kit/commit/c814fafd11eb9beae65457d04c92dca129e299b6) Thanks [@tenphi](https://github.com/tenphi)! - In `Menu` and `CommandMenu`, the icon, label and description of a navigation item (or of a command item with inline actions) no longer sit on top of the row's `role="menuitem"` anchor as pointer targets. Before, a long label covered the centre of that anchor, so a role-based browser-test click such as Playwright's `getByRole('menuitem', { name }).click()` failed with "intercepts pointer events". Now those slots let presses through to the menuitem anchor, which carries the same `href`, so plain, modified, middle and right clicks anywhere on the row behave as before for users, and inline actions and controls in the prefix, suffix and actions slots stay clickable. Tests that click such an item by its label, description or icon now fail instead: a browser test reports that the anchor "intercepts pointer events", and jsdom's user-event rejects an element with `pointer-events: none`. Click the item by its role instead, as `getByRole('menuitem', { name })`.
98
+
99
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `RangeSlider`: `ref.current.focus()` now focuses the first thumb. It used to do nothing, because the ref targeted an input no thumb rendered.
100
+
101
+ `Layout.Footer`: only the footer of a top-level `Layout` is a `contentinfo` landmark now. A footer inside a `Layout.Panel`, a nested `Layout` or any other Layout region gets `role="none"`, so panel footers no longer add unnamed "content info" landmarks. An explicit `role` still wins.
102
+
103
+ `Picker`: the trigger now describes itself with the value it shows (the selection, the `renderSummary` output or the placeholder), so screen readers announce "Status, button, Open" instead of the label alone, and it sets `aria-haspopup="dialog"` for the popover it opens. Its accessible name is still the label.
104
+
105
+ - [#1530](https://github.com/cube-js/cube-ui-kit/pull/1530) [`c814fafd`](https://github.com/cube-js/cube-ui-kit/commit/c814fafd11eb9beae65457d04c92dca129e299b6) Thanks [@tenphi](https://github.com/tenphi)! - `NumberInput`: a `suffix` now sits next to the number, before the stepper buttons, by default, so a unit reads `40 px ⌃⌄` instead of `40 ⌃⌄ px`. This matches the documented `suffixPosition` default of `before`, which previously behaved like `after`. `suffixPosition="after"` still places the suffix after the steppers; pass it (or move the control to `actions`, which always renders last) to keep the old order for a suffix that is a control rather than a unit. The docs now describe `suffixPosition` as the suffix's position relative to the steppers; the validation and loading icon always comes before both.
106
+
107
+ - [#1529](https://github.com/cube-js/cube-ui-kit/pull/1529) [`be50525c`](https://github.com/cube-js/cube-ui-kit/commit/be50525c6d2ac2f381203f805acda294369f48da) Thanks [@tenphi](https://github.com/tenphi)! - Removing many toasts or notifications when each removal commits synchronously on its own (for example one `flushSync` per removal) no longer ends in React's "Maximum update depth exceeded" error. Each removal used to leave a state update pending after its commit, which React 19 counts as a nested update; the stack now forgets a removed item in the same render that drops its height.
108
+
109
+ - [#1530](https://github.com/cube-js/cube-ui-kit/pull/1530) [`c814fafd`](https://github.com/cube-js/cube-ui-kit/commit/c814fafd11eb9beae65457d04c92dca129e299b6) Thanks [@tenphi](https://github.com/tenphi)! - `parseAbsoluteDate` now returns a UTC `ZonedDateTime` for a string with a zone or offset, such as `2024-01-05T00:00:00Z` or `2024-01-05T00:00:00+02:00`, instead of `undefined`. A `DateInput` given such a string as its value now shows it instead of an empty field. An ISO date-time without a zone, such as `2024-01-05T10:30` or `2024-01-05 10:30:15`, is now read as UTC wall time; it used to be read in the browser's time zone, which moved it by the browser's offset and could show the previous or next day. A malformed day `00` is still rejected. Date-only strings, `Date` objects and other date strings parse as before. A local workaround that parses these strings before passing them in is no longer needed.
110
+
111
+ - [#1530](https://github.com/cube-js/cube-ui-kit/pull/1530) [`c814fafd`](https://github.com/cube-js/cube-ui-kit/commit/c814fafd11eb9beae65457d04c92dca129e299b6) Thanks [@tenphi](https://github.com/tenphi)! - `<Root palette>` no longer writes the palette store while it renders when the prop changes. Before, a new `palette` value notified `GlobalStyles` and every `usePaletteValue` / `usePaletteConfig` reader in the middle of Root's render, and React logged "Cannot update a component while rendering a different component", so hosts had to call `setPaletteConfig()` themselves before changing the prop. The first mount still applies the palette during render, so the first paint and SSR output stay branded; later changes now apply in a layout effect, which still lands before paint. Changing the prop alone is enough. A `<Root>` that mounts while another tree is already rendered with a different palette still applies it during its first render. Because Root's layout effect runs after its descendants', a `setPaletteConfig()` call from a descendant's layout effect in the same commit now loses to the prop; call it from a passive effect or an event handler.
112
+
113
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `Select`: `isReadOnly` now fixes the value. The trigger stays focusable, but the list no longer opens and typeahead and the arrow keys no longer pick another option. Before, only the clear button was hidden.
114
+
115
+ `Select`: `onOpenChange` fires once per open or close, and no longer fires with `false` on mount.
116
+
117
+ `Select`: the options in the list follow the field's `size`, so a `large` Select opens `large` options. A `small` Select still opens `medium` options.
118
+
119
+ `Select`: the divider between sections no longer has `role="separator"`, which a listbox may not contain. It is presentation only and looks the same.
120
+
121
+ `Select`: `autoFocus` focuses the trigger, `inputProps` reach the trigger button and `loadingIndicator` replaces the default loading icon. All three were accepted and ignored. `popoverRef` is typed as `RefObject<HTMLElement | null>`, the popover element it receives; refs to an input element still type-check. `hideTrigger` never had an effect and is deprecated: pass `rightIcon={null}` to hide the caret.
122
+
123
+ `Select`: clearing calls `onSelectionChange(null)` once instead of twice.
124
+
125
+ `Select`: while `isLoading` is set the list no longer opens with nothing in it and typeahead no longer changes the value. Turning on `isDisabled`, `isLoading` or `isReadOnly` while the list is open closes it, so the trigger no longer reports `aria-expanded="true"` with no popup and the list does not reopen when the field is enabled again.
126
+
127
+ `Select`: opening from the keyboard focuses the right option. `ArrowUp` opens on the last option, `ArrowDown`, `Enter` and `Space` on the selected option or the first one, never on an option focused during an earlier opening or on the bare list. The focused option is scrolled into view as the list opens.
128
+
129
+ `Select`: the list is now the element that scrolls and that the popup's height limit applies to, so `PageDown` and `PageUp` move about one visible page instead of jumping to the last or first option. The popup also stays within the space left in the viewport.
130
+
131
+ `Select`: the clear button hands focus back to the trigger without opening the trigger's tooltip, so the next `Escape` closes a surrounding Dialog instead of that tooltip.
132
+
133
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `TextInput`, `TextArea`, `PasswordInput`, `SearchInput`, `NumberInput`: `loadingIndicator` is now rendered in place of the default loading icon while `isLoading` is set. It was accepted and never shown.
134
+
135
+ `TextInput`, `TextArea`, `PasswordInput`, `SearchInput`, `NumberInput`: `inputProps` values for `disabled`, `maxLength`, `minLength` and `autoFocus`, and `rows` on a `multiLine` `TextInput`, are no longer overwritten by the matching explicit props when those are unset. An explicit prop that is set still wins.
136
+
137
+ `TextInput`, `TextArea`, `PasswordInput`, `NumberInput`: errors from `validate` now show the invalid style and the message after the user edits or leaves the field, so an empty field does not open in red. `aria-invalid` still follows `validate` from the start, an explicit `isInvalid` still shows at once, and an explicit `errorMessage` still replaces the returned message.
138
+
139
+ `TextInput`, `TextArea`, `PasswordInput`, `SearchInput`, `NumberInput` and the other fields that share their input box: a press inside the field box but outside the input, such as on the prefix, an icon or a textarea's margins, now focuses the input. Presses on buttons inside the field still go to those buttons.
140
+
141
+ `TextInput`: `multiLine` no longer puts input-only attributes such as `type="text"` on the textarea.
142
+
143
+ `SearchInput`: `onClear` is now called when `Escape` clears the text, not only from the clear button. `Escape` keeps clearing whether or not `isClearable` is set.
144
+
145
+ `SearchInput`: `isInvalid` now sets `aria-invalid` on the input.
146
+
147
+ `SearchInput`: a caller's `inputRef` no longer detaches the field's own ref, so the clear button returns focus to the input again.
148
+
149
+ `PasswordInput`: the show/hide toggle is now named "Show password" and reports whether the password is visible with `aria-pressed`. It was named "Toggle masking" in both states.
150
+
151
+ `TextInput`, `TextArea`, `PasswordInput`, `SearchInput`, `NumberInput`, `RadioGroup`, `CheckboxGroup`, `TagInput`, `CommandTextArea`: `value={null}` now clears a controlled field and keeps it controlled, and so does `isSelected={null}` on `Checkbox` and `Switch`. It used to switch the field to uncontrolled mode, which kept the last value on screen.
152
+
153
+ `NumberInput`: `wrapperProps` now reach the field wrapper, merged with the props React Aria puts there. They were dropped.
154
+
155
+ `NumberInput`: the stepper buttons now use the UI Kit translations. The English names stay "Increase {label}" and "Decrease {label}", or "Increase" and "Decrease" when the label is not text, and other locales now follow the UI Kit's own strings.
156
+
157
+ `NumberInput`: pressing a stepper no longer closes a popover the field sits in.
158
+
159
+ `CheckboxGroup`: style props and `styles` now apply to the group. They were accepted and ignored.
160
+
161
+ - [#1531](https://github.com/cube-js/cube-ui-kit/pull/1531) [`aa0de8ca`](https://github.com/cube-js/cube-ui-kit/commit/aa0de8cadc93e5a9b9512e831ba15f885d687971) Thanks [@tenphi](https://github.com/tenphi)! - `Button`: an open tooltip now joins the button's own `aria-describedby` instead of replacing it, so a screen reader reads both the button's hint or error and the tooltip. `ItemBadge` does the same.
162
+
163
+ `TooltipTrigger`: `shouldCloseOnPress={false}` now keeps the tooltip open when the trigger is pressed, and `Tooltip`'s `shouldFlip={false}` now keeps the requested placement. The `delay` default is documented as 250ms, which is what it always was. `Tooltip`'s `showIcon` never did anything and is now marked deprecated.
164
+
165
+ `Tooltip`: when the page or an element containing the trigger scrolls, an open tooltip now follows its trigger while the trigger stays in view, and closes once it scrolls out of view. It used to stay where it was drawn while the trigger scrolled away.
166
+
167
+ `TooltipProvider` and `TooltipTrigger`: empty tooltip content (a `TooltipProvider` `title` of `null`, `undefined` or `''`, or a `Tooltip` with no content inside a `TooltipTrigger`) no longer opens an empty bubble or adds `aria-describedby` to the trigger.
168
+
169
+ `ItemBadge` and `InfoBadge`: a non-interactive icon badge with a name is now exposed as `role="img"`, so screen readers announce its name. When `aria-label` differs from a plain-text tooltip, the tooltip text becomes the badge's description, so keyboard and screen reader users get it without hovering.
170
+
171
+ `Button`: a disabled button stays natively disabled unless it has a tooltip you passed. The automatic tooltip for a truncated label used to keep it focusable, so whether a disabled button was a Tab stop changed with the window width.
172
+
173
+ `Button`: a button that is only loading (`isLoading` without `isDisabled`) keeps keyboard focus, so pressing Enter on it no longer drops focus to the page. It is marked `aria-disabled` and `aria-busy`, stays inert, and Tab skips it until loading ends. A button that is both loading and disabled, as `SubmitButton` is during a submission, is still natively disabled.
174
+
175
+ - [#1530](https://github.com/cube-js/cube-ui-kit/pull/1530) [`c814fafd`](https://github.com/cube-js/cube-ui-kit/commit/c814fafd11eb9beae65457d04c92dca129e299b6) Thanks [@tenphi](https://github.com/tenphi)! - A `to` or `href` with leading or trailing spaces or control characters (such as `" https://example.com"` from data) is now read the way the browser reads a URL. Before, under a router navigation adapter, `Menu.Item`, `CommandMenu.Item`, `Link`, `Button`, `ItemButton` and `ItemAction` took such an external URL for an app path: they rendered a router-resolved href like `/ https:/example.com` and a plain click navigated in-app. Now those characters are dropped first, so the link renders and opens the external URL, `" /pricing"` goes to `/pricing`, and the `!`, `@` and `#` prefixes are recognised after leading whitespace. A `to` or `href` made only of such characters counts as empty: `Link` and `Button` render a button, and a `Menu.Item` with `href=" "` links to the current document like `href=""`. A no-break space is kept, as the browser keeps it. This is not URL sanitization: keep validating untrusted URLs before passing them, since a whitespace-wrapped `javascript:` URL is now treated as external like an unwrapped one.
176
+
177
+ ## 0.195.0
178
+
179
+ ### Minor Changes
180
+
181
+ - [#1523](https://github.com/cube-js/cube-ui-kit/pull/1523) [`27d221cd`](https://github.com/cube-js/cube-ui-kit/commit/27d221cd9f07a924a327c10d3e2ac470b01563bb) Thanks [@tenphi](https://github.com/tenphi)! - A dialog opened with `useAlertDialogAPI()` now belongs to the component that called the hook and closes, as a cancel, when that component unmounts, so its callbacks no longer run against a component that is gone. `onCancel` runs and the promise rejects with `undefined`, as for an aborted `cancelToken`. A call to `open` after the unmount settles as a cancel without opening. Call the hook in a component that stays mounted while the dialog is open: a dialog opened by a menu item that unmounts when the menu closes now closes with it, so call the hook in the component that renders the menu. When the unmount or an aborted `cancelToken` comes while a confirm or secondary action is running, the action now finishes first: the dialog closes with its result, or as a cancel if it fails.
182
+
183
+ - [#1523](https://github.com/cube-js/cube-ui-kit/pull/1523) [`27d221cd`](https://github.com/cube-js/cube-ui-kit/commit/27d221cd9f07a924a327c10d3e2ac470b01563bb) Thanks [@tenphi](https://github.com/tenphi)! - A field without a `label` now shows its `description`, `errorMessage` and `message` instead of dropping them, and links them to the input, so a screen reader says why it is invalid. A label-less field bound to a form (with a `name`, or as the child of a legacy `Form.Item`) gets the same field wrapper, so its validation errors show under it. `SearchInput` and `SearchComboBox` now show their texts too. Passing one of these props is enough, whatever it holds at the moment (`errorMessage={error}` with `error` still `undefined` or `null`), so the input keeps its place and its focus when the message comes and goes. The field is then laid out by its wrapper, as a labelled one is: layout props such as `flexGrow`, `width` or `gridArea` stay on the input, so move them to `fieldStyles`. For an inline field, the new `isBare` prop keeps the bare control: its texts are not shown, and the control keeps its invalid state. Without a label, a description now goes under the input even with a side or split `labelPosition`, rather than in the empty label column. `forceField` is deprecated: such fields no longer need it. It still forces the wrapper and warns once in development; remove it.
184
+
185
+ ### Patch Changes
186
+
187
+ - [#1523](https://github.com/cube-js/cube-ui-kit/pull/1523) [`27d221cd`](https://github.com/cube-js/cube-ui-kit/commit/27d221cd9f07a924a327c10d3e2ac470b01563bb) Thanks [@tenphi](https://github.com/tenphi)! - `Checkbox` and `Switch` fixes. A standalone `Checkbox` now gets the `hovered` mod, and a grouped one now puts its state mods (`checked`, `disabled`, `invalid`, `hovered`, …) on its wrapper, so `styles` keyed on them work in both. A string `label` no longer replaces the inline text or your `aria-label` in a `Checkbox`'s accessible name: `<Checkbox label="Notifications">Send me emails</Checkbox>` is named "Notifications Send me emails", as a `Switch` already was. A `Checkbox` in a group no longer copies its `id`, `aria-*` and `data-*` props onto its wrapper, so `#id`, `<label for>` and `aria-labelledby` reach the input; both a standalone and a grouped one now pass `className`, `style`, `qaVal` and your own `mods` to the wrapper. A `Switch` label now wraps instead of staying on one line. A `Checkbox` or `Switch` named only by a field `label` no longer logs React Aria's missing `aria-label` warning.
188
+
189
+ - [#1515](https://github.com/cube-js/cube-ui-kit/pull/1515) [`68d2508f`](https://github.com/cube-js/cube-ui-kit/commit/68d2508f2431256152f045ff842d6fd764a7f1ba) Thanks [@tenphi](https://github.com/tenphi)! - `Layout.Pane` with `flexShrink={1}` now resizes correctly when other panes in the same flex container also give way. The edge follows the pointer and moves exactly 10px per arrow key (50px with Shift) instead of losing part of each move to the panes beside it, and the pane stays where it is dropped. The room comes from the panes after the edge, down to their `minSize`, where the resize stops; the panes before the edge keep their size. A pane that gives way keeps the size it was left at and reports it through `onSizeChange`. Beside such panes, a resize that ends where it began, such as an arrow key pressed at the stop, leaves every pane as it was and reports nothing. A drag only across a pane's grip, or a key across it outside a drag, no longer reports a size change.
190
+
191
+ - [#1523](https://github.com/cube-js/cube-ui-kit/pull/1523) [`27d221cd`](https://github.com/cube-js/cube-ui-kit/commit/27d221cd9f07a924a327c10d3e2ac470b01563bb) Thanks [@tenphi](https://github.com/tenphi)! - A form-bound `Checkbox` or `Switch` keeps the `value` you give it. It used to render `value="true"` or `value="false"` as soon as the field had a value, so a native `<Form action>` submission and `FormData` read the boolean instead of `value="yes"`; without a `value`, a checked one now submits the browser default `on`. The same change stops a custom control built on `useFieldProps` from receiving the field value as `value` when its `valuePropsMapper` maps it to another prop.
192
+
3
193
  ## 0.194.1
4
194
 
5
195
  ### Patch Changes
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
 
4
4
  //#region src/components/HiddenInput.tsx
@@ -22,8 +22,14 @@ interface CubeRootProps extends BaseProps {
22
22
  * palette, so `<Root>` with no `palette` cannot clobber a host's imperative
23
23
  * `setPaletteConfig()` call. Pass `{}` to ask for the default.
24
24
  *
25
+ * The first mount applies it during render, so the first paint is already
26
+ * tuned; a later change applies in a layout effect, before paint.
27
+ *
25
28
  * The palette is global process state, so this is a declarative wrapper over
26
29
  * `setPaletteConfig()`; both drive the same store, and the last write wins.
30
+ * Root's layout effect runs after its descendants' in the same commit, so a
31
+ * descendant's `setPaletteConfig()` from a layout effect in that commit loses
32
+ * to the prop; write from a passive effect or an event handler instead.
27
33
  * See `Getting Started/Theming` in Storybook.
28
34
  */
29
35
  palette?: PaletteConfig;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.194.1 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | 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";
@@ -13,7 +13,7 @@ import { AlertDialogApiProvider } from "./overlays/AlertDialog/AlertDialogApiPro
13
13
  import { OverlayProvider } from "./overlays/Notifications/OverlayProvider.js";
14
14
  import { c } from "react/compiler-runtime";
15
15
  import { BASE_STYLES, BLOCK_STYLES, TastyBatchProvider, configure, filterBaseProps, setGlobalPredefinedStates, tasty } from "@tenphi/tasty";
16
- import { useEffect, useRef, useState } from "react";
16
+ import { useEffect, useLayoutEffect, useRef, useState } from "react";
17
17
  import { jsx, jsxs } from "react/jsx-runtime";
18
18
  import { ModalProvider } from "react-aria";
19
19
 
@@ -91,51 +91,74 @@ const RootElement = tasty({
91
91
  });
92
92
  const STYLES = [...BASE_STYLES, ...BLOCK_STYLES];
93
93
  function Root(allProps) {
94
- const $ = c(43);
94
+ const $ = c(48);
95
95
  const { children, bodyStyles, fontDisplay: t0, fonts, publicUrl, navigation, font, monospaceFont, applyLegacyTokens: _applyLegacyTokens, tracking, cursorStrategy: t1, style, tokens, palette, i18n, locale, ...props } = allProps;
96
96
  const fontDisplay = t0 === void 0 ? "swap" : t0;
97
97
  const cursorStrategy = t1 === void 0 ? "web" : t1;
98
- if (palette) setPaletteConfig(palette);
99
- const ref = useRef(null);
100
- const [rootRef, setRootRef] = useState();
101
98
  let t2;
102
- if ($[0] !== rootRef) {
99
+ if ($[0] !== palette) {
103
100
  t2 = () => {
104
- if (!rootRef) setRootRef(ref?.current);
101
+ if (palette) setPaletteConfig(palette);
105
102
  };
106
- $[0] = rootRef;
103
+ $[0] = palette;
107
104
  $[1] = t2;
108
105
  } else t2 = $[1];
106
+ useState(t2);
109
107
  let t3;
110
- if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
111
- t3 = [];
112
- $[2] = t3;
113
- } else t3 = $[2];
114
- useEffect(t2, t3);
108
+ let t4;
109
+ if ($[2] !== palette) {
110
+ t3 = () => {
111
+ if (palette) setPaletteConfig(palette);
112
+ };
113
+ t4 = [palette];
114
+ $[2] = palette;
115
+ $[3] = t3;
116
+ $[4] = t4;
117
+ } else {
118
+ t3 = $[3];
119
+ t4 = $[4];
120
+ }
121
+ useLayoutEffect(t3, t4);
122
+ const ref = useRef(null);
123
+ const [rootRef, setRootRef] = useState();
124
+ let t5;
125
+ if ($[5] !== rootRef) {
126
+ t5 = () => {
127
+ if (!rootRef) setRootRef(ref?.current);
128
+ };
129
+ $[5] = rootRef;
130
+ $[6] = t5;
131
+ } else t5 = $[6];
132
+ let t6;
133
+ if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
134
+ t6 = [];
135
+ $[7] = t6;
136
+ } else t6 = $[7];
137
+ useEffect(t5, t6);
115
138
  const styles = extractStyles(props, STYLES);
116
139
  const T0 = TastyBatchProvider;
117
140
  const T1 = I18nProvider$1;
118
141
  const T2 = Provider;
119
142
  const T3 = TrackingProvider;
120
- const t4 = tracking?.event;
143
+ const t7 = tracking?.event;
121
144
  const T4 = RootElement;
122
- const t5 = VERSION;
123
- const t6 = TASTY_VERSION;
124
- const t7 = filterBaseProps(props, { eventProps: true });
125
- const t8 = cursorStrategy === "web" ? "pointer" : "default";
126
- let t9;
127
- if ($[3] !== style || $[4] !== t8) {
128
- t9 = {
129
- "--pointer": t8,
145
+ const t8 = VERSION;
146
+ const t9 = TASTY_VERSION;
147
+ const t10 = filterBaseProps(props, { eventProps: true });
148
+ const t11 = cursorStrategy === "web" ? "pointer" : "default";
149
+ let t12;
150
+ if ($[8] !== style || $[9] !== t11) {
151
+ t12 = {
152
+ "--pointer": t11,
130
153
  ...style
131
154
  };
132
- $[3] = style;
133
- $[4] = t8;
134
- $[5] = t9;
135
- } else t9 = $[5];
136
- let t10;
137
- if ($[6] !== bodyStyles || $[7] !== font || $[8] !== fontDisplay || $[9] !== fonts || $[10] !== monospaceFont || $[11] !== publicUrl) {
138
- t10 = /* @__PURE__ */ jsx(GlobalStyles, {
155
+ $[8] = style;
156
+ $[9] = t11;
157
+ $[10] = t12;
158
+ } else t12 = $[10];
159
+ let t13;
160
+ if ($[11] !== bodyStyles || $[12] !== font || $[13] !== fontDisplay || $[14] !== fonts || $[15] !== monospaceFont || $[16] !== publicUrl) {
161
+ t13 = /* @__PURE__ */ jsx(GlobalStyles, {
139
162
  bodyStyles,
140
163
  publicUrl,
141
164
  fonts,
@@ -143,93 +166,93 @@ function Root(allProps) {
143
166
  monospaceFont,
144
167
  fontDisplay
145
168
  });
146
- $[6] = bodyStyles;
147
- $[7] = font;
148
- $[8] = fontDisplay;
149
- $[9] = fonts;
150
- $[10] = monospaceFont;
151
- $[11] = publicUrl;
152
- $[12] = t10;
153
- } else t10 = $[12];
154
- let t11;
155
- if ($[13] !== children) {
156
- t11 = /* @__PURE__ */ jsx(ModalProvider, { children: /* @__PURE__ */ jsx(PortalProvider, {
169
+ $[11] = bodyStyles;
170
+ $[12] = font;
171
+ $[13] = fontDisplay;
172
+ $[14] = fonts;
173
+ $[15] = monospaceFont;
174
+ $[16] = publicUrl;
175
+ $[17] = t13;
176
+ } else t13 = $[17];
177
+ let t14;
178
+ if ($[18] !== children) {
179
+ t14 = /* @__PURE__ */ jsx(ModalProvider, { children: /* @__PURE__ */ jsx(PortalProvider, {
157
180
  value: ref,
158
181
  children: /* @__PURE__ */ jsx(EventBusProvider, { children: /* @__PURE__ */ jsx(OverlayProvider, { children: /* @__PURE__ */ jsx(AlertDialogApiProvider, { children }) }) })
159
182
  }) });
160
- $[13] = children;
161
- $[14] = t11;
162
- } else t11 = $[14];
163
- let t12;
164
- if ($[15] !== T4 || $[16] !== fontDisplay || $[17] !== styles || $[18] !== t10 || $[19] !== t11 || $[20] !== t5 || $[21] !== t6 || $[22] !== t7 || $[23] !== t9 || $[24] !== tokens) {
165
- t12 = /* @__PURE__ */ jsxs(T4, {
183
+ $[18] = children;
184
+ $[19] = t14;
185
+ } else t14 = $[19];
186
+ let t15;
187
+ if ($[20] !== T4 || $[21] !== fontDisplay || $[22] !== styles || $[23] !== t10 || $[24] !== t12 || $[25] !== t13 || $[26] !== t14 || $[27] !== t8 || $[28] !== t9 || $[29] !== tokens) {
188
+ t15 = /* @__PURE__ */ jsxs(T4, {
166
189
  ref,
167
- "data-uikit": t5,
168
- "data-tasty": t6,
190
+ "data-uikit": t8,
191
+ "data-tasty": t9,
169
192
  "data-font-display": fontDisplay,
170
- ...t7,
193
+ ...t10,
171
194
  styles,
172
- style: t9,
195
+ style: t12,
173
196
  tokens,
174
- children: [t10, t11]
197
+ children: [t13, t14]
175
198
  });
176
- $[15] = T4;
177
- $[16] = fontDisplay;
178
- $[17] = styles;
179
- $[18] = t10;
180
- $[19] = t11;
181
- $[20] = t5;
182
- $[21] = t6;
183
- $[22] = t7;
184
- $[23] = t9;
185
- $[24] = tokens;
186
- $[25] = t12;
187
- } else t12 = $[25];
188
- let t13;
189
- if ($[26] !== T3 || $[27] !== t12 || $[28] !== t4) {
190
- t13 = /* @__PURE__ */ jsx(T3, {
191
- event: t4,
192
- children: t12
199
+ $[20] = T4;
200
+ $[21] = fontDisplay;
201
+ $[22] = styles;
202
+ $[23] = t10;
203
+ $[24] = t12;
204
+ $[25] = t13;
205
+ $[26] = t14;
206
+ $[27] = t8;
207
+ $[28] = t9;
208
+ $[29] = tokens;
209
+ $[30] = t15;
210
+ } else t15 = $[30];
211
+ let t16;
212
+ if ($[31] !== T3 || $[32] !== t15 || $[33] !== t7) {
213
+ t16 = /* @__PURE__ */ jsx(T3, {
214
+ event: t7,
215
+ children: t15
193
216
  });
194
- $[26] = T3;
195
- $[27] = t12;
196
- $[28] = t4;
197
- $[29] = t13;
198
- } else t13 = $[29];
199
- let t14;
200
- if ($[30] !== T2 || $[31] !== navigation || $[32] !== rootRef || $[33] !== t13) {
201
- t14 = /* @__PURE__ */ jsx(T2, {
217
+ $[31] = T3;
218
+ $[32] = t15;
219
+ $[33] = t7;
220
+ $[34] = t16;
221
+ } else t16 = $[34];
222
+ let t17;
223
+ if ($[35] !== T2 || $[36] !== navigation || $[37] !== rootRef || $[38] !== t16) {
224
+ t17 = /* @__PURE__ */ jsx(T2, {
202
225
  navigation,
203
226
  root: rootRef,
204
- children: t13
227
+ children: t16
205
228
  });
206
- $[30] = T2;
207
- $[31] = navigation;
208
- $[32] = rootRef;
209
- $[33] = t13;
210
- $[34] = t14;
211
- } else t14 = $[34];
212
- let t15;
213
- if ($[35] !== T1 || $[36] !== i18n || $[37] !== locale || $[38] !== t14) {
214
- t15 = /* @__PURE__ */ jsx(T1, {
229
+ $[35] = T2;
230
+ $[36] = navigation;
231
+ $[37] = rootRef;
232
+ $[38] = t16;
233
+ $[39] = t17;
234
+ } else t17 = $[39];
235
+ let t18;
236
+ if ($[40] !== T1 || $[41] !== i18n || $[42] !== locale || $[43] !== t17) {
237
+ t18 = /* @__PURE__ */ jsx(T1, {
215
238
  i18n,
216
239
  locale,
217
- children: t14
240
+ children: t17
218
241
  });
219
- $[35] = T1;
220
- $[36] = i18n;
221
- $[37] = locale;
222
- $[38] = t14;
223
- $[39] = t15;
224
- } else t15 = $[39];
225
- let t16;
226
- if ($[40] !== T0 || $[41] !== t15) {
227
- t16 = /* @__PURE__ */ jsx(T0, { children: t15 });
228
- $[40] = T0;
229
- $[41] = t15;
230
- $[42] = t16;
231
- } else t16 = $[42];
232
- return t16;
242
+ $[40] = T1;
243
+ $[41] = i18n;
244
+ $[42] = locale;
245
+ $[43] = t17;
246
+ $[44] = t18;
247
+ } else t18 = $[44];
248
+ let t19;
249
+ if ($[45] !== T0 || $[46] !== t18) {
250
+ t19 = /* @__PURE__ */ jsx(T0, { children: t18 });
251
+ $[45] = T0;
252
+ $[46] = t18;
253
+ $[47] = t19;
254
+ } else t19 = $[47];
255
+ return t19;
233
256
  }
234
257
 
235
258
  //#endregion