@cube-dev/ui-kit 0.165.0 → 0.167.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 (664) hide show
  1. package/README.md +4 -7
  2. package/dist/CHANGELOG.md +48 -0
  3. package/dist/README.md +4 -7
  4. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  5. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  6. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  7. package/dist/_internal/hooks/use-event.js +1 -1
  8. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  9. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  10. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  11. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  12. package/dist/_internal/hooks/use-warn.js +1 -1
  13. package/dist/components/Block.js +1 -1
  14. package/dist/components/CollectionItem.js +1 -1
  15. package/dist/components/GlobalStyles.js +4 -4
  16. package/dist/components/GlobalStyles.js.map +1 -1
  17. package/dist/components/GridProvider.js +1 -1
  18. package/dist/components/HiddenInput.js +1 -1
  19. package/dist/components/Root.js +1 -2
  20. package/dist/components/Root.js.map +1 -1
  21. package/dist/components/actions/Action/Action.js +1 -1
  22. package/dist/components/actions/Banner/Banner.js +1 -1
  23. package/dist/components/actions/Button/Button.d.ts +1 -0
  24. package/dist/components/actions/Button/Button.js +1 -1
  25. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  26. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  27. package/dist/components/actions/ButtonSplit/context.js +1 -1
  28. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  29. package/dist/components/actions/CommandMenu/styled.js +1 -1
  30. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  31. package/dist/components/actions/ItemActionContext.js +1 -1
  32. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  33. package/dist/components/actions/Link/Link.js +1 -1
  34. package/dist/components/actions/Menu/Menu.js +1 -1
  35. package/dist/components/actions/Menu/MenuItem.js +1 -1
  36. package/dist/components/actions/Menu/MenuSection.js +1 -1
  37. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  38. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  39. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  40. package/dist/components/actions/Menu/context.js +1 -1
  41. package/dist/components/actions/Menu/styled.js +1 -1
  42. package/dist/components/actions/index.js +1 -1
  43. package/dist/components/actions/use-action.js +1 -1
  44. package/dist/components/actions/use-anchored-menu.d.ts +7 -3
  45. package/dist/components/actions/use-anchored-menu.js +17 -12
  46. package/dist/components/actions/use-anchored-menu.js.map +1 -1
  47. package/dist/components/actions/use-context-menu.d.ts +6 -3
  48. package/dist/components/actions/use-context-menu.js +25 -13
  49. package/dist/components/actions/use-context-menu.js.map +1 -1
  50. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  51. package/dist/components/content/Alert/Alert.js +1 -1
  52. package/dist/components/content/Alert/use-alert.js +1 -1
  53. package/dist/components/content/Avatar/Avatar.js +1 -1
  54. package/dist/components/content/Badge/Badge.js +1 -1
  55. package/dist/components/content/Card/Card.js +1 -1
  56. package/dist/components/content/Content.js +1 -1
  57. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  58. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  59. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  60. package/dist/components/content/Divider.js +1 -1
  61. package/dist/components/content/Footer.js +1 -1
  62. package/dist/components/content/Header.js +1 -1
  63. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  64. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  65. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  66. package/dist/components/content/Item/Item.js +1 -1
  67. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  68. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  69. package/dist/components/content/Layout/GridLayout.js +1 -1
  70. package/dist/components/content/Layout/Layout.js +1 -1
  71. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  72. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  73. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  74. package/dist/components/content/Layout/LayoutContent.js +1 -1
  75. package/dist/components/content/Layout/LayoutContext.js +1 -1
  76. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  77. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  78. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  79. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  80. package/dist/components/content/Layout/LayoutPane.js +1 -1
  81. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  82. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  83. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  84. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  85. package/dist/components/content/Layout/index.js +1 -1
  86. package/dist/components/content/Layout/utils.js +1 -1
  87. package/dist/components/content/Paragraph.js +1 -1
  88. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  89. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  90. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  91. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  92. package/dist/components/content/Result/Result.js +1 -1
  93. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  94. package/dist/components/content/Tag/Tag.js +1 -1
  95. package/dist/components/content/Text.js +1 -1
  96. package/dist/components/content/TextItem/TextItem.js +1 -1
  97. package/dist/components/content/Title.js +1 -1
  98. package/dist/components/content/Tree/Tree.js +1 -1
  99. package/dist/components/content/Tree/TreeNode.js +1 -1
  100. package/dist/components/content/Tree/styled.js +1 -1
  101. package/dist/components/content/Tree/tree-index.js +1 -1
  102. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  103. package/dist/components/content/Tree/use-load-data.js +1 -1
  104. package/dist/components/content/highlightText.js +1 -1
  105. package/dist/components/content/use-auto-tooltip.js +1 -1
  106. package/dist/components/data/DataTable/DataTable.js +1 -1
  107. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  108. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  109. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  110. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  111. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  112. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  113. package/dist/components/data/TableBase/RowCollection.js +1 -1
  114. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  115. package/dist/components/data/TableBase/TableRow.js +1 -1
  116. package/dist/components/data/TableBase/TableView.js +1 -1
  117. package/dist/components/data/TableBase/column-menu.js +1 -1
  118. package/dist/components/data/TableBase/column-tint.js +1 -1
  119. package/dist/components/data/TableBase/row-menu.js +1 -1
  120. package/dist/components/data/TableBase/styled.d.ts +2 -1
  121. package/dist/components/data/TableBase/styled.js +1 -1
  122. package/dist/components/data/TableBase/table-tree.js +1 -1
  123. package/dist/components/data/TableBase/types.js +1 -1
  124. package/dist/components/data/TableBase/use-cell-selection.d.ts +1 -0
  125. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  126. package/dist/components/data/TableBase/use-column-order.js +1 -1
  127. package/dist/components/data/TableBase/use-container-width.js +1 -1
  128. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  129. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  130. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  131. package/dist/components/data/TableBase/use-table-search.js +1 -1
  132. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  133. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  134. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  135. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  136. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  137. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  138. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  139. package/dist/components/fields/Checkbox/context.js +1 -1
  140. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  141. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  142. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  143. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  144. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  145. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  146. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  147. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  148. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  149. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  150. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  151. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  152. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  153. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  154. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  155. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  156. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  157. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  158. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  159. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  160. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  161. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  162. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  163. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  164. package/dist/components/fields/DatePicker/period.js +1 -1
  165. package/dist/components/fields/DatePicker/props.js +1 -1
  166. package/dist/components/fields/DatePicker/utils.js +1 -1
  167. package/dist/components/fields/FileInput/FileInput.js +1 -1
  168. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  169. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  170. package/dist/components/fields/Input/Input.js +1 -1
  171. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  172. package/dist/components/fields/ListBox/ListBox.js +1 -1
  173. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  174. package/dist/components/fields/ListBoxPopover/index.d.ts +1 -0
  175. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  176. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +2 -0
  177. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  178. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  179. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  180. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  181. package/dist/components/fields/Picker/Picker.js +1 -1
  182. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  183. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  184. package/dist/components/fields/RadioGroup/context.js +1 -1
  185. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  186. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  187. package/dist/components/fields/Select/Select.js +1 -1
  188. package/dist/components/fields/Slider/Gradation.js +1 -1
  189. package/dist/components/fields/Slider/HueSlider.js +1 -1
  190. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  191. package/dist/components/fields/Slider/Slider.js +1 -1
  192. package/dist/components/fields/Slider/SliderBase.js +1 -1
  193. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  194. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  195. package/dist/components/fields/Slider/elements.js +1 -1
  196. package/dist/components/fields/Slider/index.js +1 -1
  197. package/dist/components/fields/Switch/Switch.js +1 -1
  198. package/dist/components/fields/TextArea/TextArea.js +1 -1
  199. package/dist/components/fields/TextInput/TextInput.js +1 -1
  200. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  201. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  202. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  203. package/dist/components/fields/color/ColorPanel.js +1 -1
  204. package/dist/components/fields/color/channels.js +1 -1
  205. package/dist/components/fields/color/color.js +1 -1
  206. package/dist/components/fields/color/context.js +1 -1
  207. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  208. package/dist/components/form/Form/Field.js +1 -1
  209. package/dist/components/form/Form/Form.js +1 -1
  210. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  211. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  212. package/dist/components/form/Form/SubmitError.js +1 -1
  213. package/dist/components/form/Form/index.js +1 -1
  214. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  215. package/dist/components/form/Form/use-field/use-field.js +1 -1
  216. package/dist/components/form/Form/use-form.js +1 -1
  217. package/dist/components/form/Form/validation.js +1 -1
  218. package/dist/components/form/Label.js +1 -1
  219. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  220. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  221. package/dist/components/form/validation/use-validation-props.js +1 -1
  222. package/dist/components/form/wrapper.js +1 -1
  223. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  224. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  225. package/dist/components/layout/Board/Board.d.ts +33 -7
  226. package/dist/components/layout/Board/Board.js +29 -11
  227. package/dist/components/layout/Board/Board.js.map +1 -1
  228. package/dist/components/layout/Board/BoardProvider.js +1 -1
  229. package/dist/components/layout/Board/BoardResponsive.d.ts +6 -3
  230. package/dist/components/layout/Board/BoardResponsive.js +3 -3
  231. package/dist/components/layout/Board/BoardResponsive.js.map +1 -1
  232. package/dist/components/layout/Board/Widget.d.ts +38 -1
  233. package/dist/components/layout/Board/Widget.js +6 -2
  234. package/dist/components/layout/Board/Widget.js.map +1 -1
  235. package/dist/components/layout/Board/WidgetHost.js +69 -18
  236. package/dist/components/layout/Board/WidgetHost.js.map +1 -1
  237. package/dist/components/layout/Board/board-context.js +1 -1
  238. package/dist/components/layout/Board/board-context.js.map +1 -1
  239. package/dist/components/layout/Board/board-store.js +2 -2
  240. package/dist/components/layout/Board/board-store.js.map +1 -1
  241. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  242. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  243. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  244. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  245. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  246. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  247. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  248. package/dist/components/layout/Board/grid-core/placement.d.ts +58 -0
  249. package/dist/components/layout/Board/grid-core/placement.js +153 -0
  250. package/dist/components/layout/Board/grid-core/placement.js.map +1 -0
  251. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  252. package/dist/components/layout/Board/index.d.ts +3 -1
  253. package/dist/components/layout/Board/index.js +2 -1
  254. package/dist/components/layout/Board/index.js.map +1 -1
  255. package/dist/components/layout/Board/responsive-utils.js +1 -1
  256. package/dist/components/layout/Board/use-board-layout.d.ts +26 -0
  257. package/dist/components/layout/Board/use-board-layout.js +4 -4
  258. package/dist/components/layout/Board/use-board-layout.js.map +1 -1
  259. package/dist/components/layout/Board/use-board-registry.js +5 -56
  260. package/dist/components/layout/Board/use-board-registry.js.map +1 -1
  261. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  262. package/dist/components/layout/Board/use-board-selection.js +1 -1
  263. package/dist/components/layout/Flex.js +1 -1
  264. package/dist/components/layout/Flow.js +1 -1
  265. package/dist/components/layout/Grid.js +1 -1
  266. package/dist/components/layout/Panel.js +1 -1
  267. package/dist/components/layout/Prefix.js +1 -1
  268. package/dist/components/layout/ResizablePanel.js +1 -1
  269. package/dist/components/layout/Space.js +1 -1
  270. package/dist/components/layout/Suffix.js +1 -1
  271. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  272. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  273. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  274. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  275. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  276. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  277. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  278. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  279. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  280. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  281. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  282. package/dist/components/navigation/Tabs/styled.js +1 -1
  283. package/dist/components/navigation/Tabs/types.js +1 -1
  284. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  285. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  286. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  287. package/dist/components/other/Calendar/Calendar.js +1 -1
  288. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  289. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  290. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  291. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  292. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  293. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  294. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  295. package/dist/components/other/Calendar/styled.js +1 -1
  296. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  297. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  298. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  299. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  300. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  301. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  302. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  303. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  304. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  305. package/dist/components/overlays/Dialog/context.js +1 -1
  306. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  307. package/dist/components/overlays/Modal/Modal.d.ts +2 -1
  308. package/dist/components/overlays/Modal/Modal.js +1 -1
  309. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  310. package/dist/components/overlays/Modal/Overlay.d.ts +1 -0
  311. package/dist/components/overlays/Modal/Overlay.js +1 -1
  312. package/dist/components/overlays/Modal/Popover.js +1 -1
  313. package/dist/components/overlays/Modal/Tray.js +1 -1
  314. package/dist/components/overlays/Modal/Underlay.js +1 -1
  315. package/dist/components/overlays/Modal/types.d.ts +1 -0
  316. package/dist/components/overlays/Notifications/Notification.js +1 -1
  317. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  318. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  319. package/dist/components/overlays/Notifications/NotificationContext.d.ts +2 -0
  320. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  321. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  322. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  323. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  324. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  325. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  326. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  327. package/dist/components/overlays/Notifications/index.js +1 -1
  328. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  329. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  330. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  331. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  332. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  333. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  334. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  335. package/dist/components/overlays/Toast/index.js +1 -1
  336. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  337. package/dist/components/overlays/Toast/useToast.js +1 -1
  338. package/dist/components/overlays/Tooltip/Tooltip.js +2 -1
  339. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  340. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  341. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  342. package/dist/components/overlays/Tooltip/context.js +1 -1
  343. package/dist/components/portal/Portal.js +1 -1
  344. package/dist/components/portal/PortalProvider.d.ts +2 -0
  345. package/dist/components/portal/PortalProvider.js +1 -1
  346. package/dist/components/portal/index.d.ts +1 -0
  347. package/dist/components/portal/usePortal.js +1 -1
  348. package/dist/components/shared/DraggableCollection.js +1 -1
  349. package/dist/components/shared/InvalidIcon.js +1 -1
  350. package/dist/components/shared/ValidIcon.js +1 -1
  351. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  352. package/dist/components/status/Spin/Cube.js +1 -1
  353. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  354. package/dist/components/status/Spin/Spin.js +1 -1
  355. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  356. package/dist/data/item-themes.js +1 -1
  357. package/dist/data/themes.js +1 -1
  358. package/dist/eslint-plugin/defaults.generated.js +25 -1
  359. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  360. package/dist/eslint-plugin/index.js +1 -1
  361. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  362. package/dist/i18n/I18nProvider.js +1 -1
  363. package/dist/i18n/createFormatter.js +1 -1
  364. package/dist/i18n/index.js +1 -1
  365. package/dist/i18n/instance.js +1 -1
  366. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  367. package/dist/i18n/locales/en-US/uikit.js +1 -1
  368. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  369. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  370. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  371. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  372. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  373. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  374. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  375. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  376. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  377. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  378. package/dist/i18n/locales.js +1 -1
  379. package/dist/i18n/useFormatter.js +1 -1
  380. package/dist/i18n/useI18n.js +1 -1
  381. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  382. package/dist/icons/AdjustmentsIcon.js +1 -1
  383. package/dist/icons/AiIcon.js +1 -1
  384. package/dist/icons/AreaChartIcon.js +1 -1
  385. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  386. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  387. package/dist/icons/BackwardIcon.js +1 -1
  388. package/dist/icons/BarChartIcon.js +1 -1
  389. package/dist/icons/BellFilledIcon.js +1 -1
  390. package/dist/icons/BellIcon.js +1 -1
  391. package/dist/icons/BooleanIcon.js +1 -1
  392. package/dist/icons/CalendarEditIcon.js +1 -1
  393. package/dist/icons/CalendarIcon.js +1 -1
  394. package/dist/icons/CaretDownIcon.js +1 -1
  395. package/dist/icons/CaretUpIcon.js +1 -1
  396. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  397. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  398. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  399. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  400. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  401. package/dist/icons/ChartBarLineIcon.js +1 -1
  402. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  403. package/dist/icons/ChartBarStackedIcon.js +1 -1
  404. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  405. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  406. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  407. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  408. package/dist/icons/ChartBubbleIcon.js +1 -1
  409. package/dist/icons/ChartDonut2Icon.js +1 -1
  410. package/dist/icons/ChartFunnelIcon.js +1 -1
  411. package/dist/icons/ChartHeatmapIcon.js +1 -1
  412. package/dist/icons/ChartKPIIcon.js +1 -1
  413. package/dist/icons/ChartPie2Icon.js +1 -1
  414. package/dist/icons/ChartScatterIcon.js +1 -1
  415. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  416. package/dist/icons/CheckCircleIcon.js +1 -1
  417. package/dist/icons/CheckIcon.js +1 -1
  418. package/dist/icons/CircleFilledIcon.js +1 -1
  419. package/dist/icons/ClearIcon.js +1 -1
  420. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  421. package/dist/icons/CloseCircleIcon.js +1 -1
  422. package/dist/icons/CloseIcon.js +1 -1
  423. package/dist/icons/CodeIcon.js +1 -1
  424. package/dist/icons/ColumnTotalIcon.js +1 -1
  425. package/dist/icons/CopyIcon.js +1 -1
  426. package/dist/icons/CountIcon.js +1 -1
  427. package/dist/icons/CubeIcon.js +1 -1
  428. package/dist/icons/CubePauseIcon.js +1 -1
  429. package/dist/icons/CubePlayIcon.js +1 -1
  430. package/dist/icons/CurrencyDollarIcon.js +1 -1
  431. package/dist/icons/DangerIcon.js +1 -1
  432. package/dist/icons/DashboardIcon.js +1 -1
  433. package/dist/icons/DatabaseIcon.js +1 -1
  434. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  435. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  436. package/dist/icons/DirectionIcon.js +1 -1
  437. package/dist/icons/DonutIcon.js +1 -1
  438. package/dist/icons/DownIcon.js +1 -1
  439. package/dist/icons/EditIcon.js +1 -1
  440. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  441. package/dist/icons/ExclamationCircleIcon.js +1 -1
  442. package/dist/icons/ExclamationIcon.js +1 -1
  443. package/dist/icons/EyeIcon.js +1 -1
  444. package/dist/icons/EyeInvisibleIcon.js +1 -1
  445. package/dist/icons/FilterIcon.js +1 -1
  446. package/dist/icons/FolderFilledIcon.js +1 -1
  447. package/dist/icons/FolderIcon.js +1 -1
  448. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  449. package/dist/icons/FolderOpenIcon.js +1 -1
  450. package/dist/icons/ForwardIcon.js +1 -1
  451. package/dist/icons/GripVerticalIcon.js +1 -1
  452. package/dist/icons/HierarchyIcon.js +1 -1
  453. package/dist/icons/HierarchyOpenIcon.js +1 -1
  454. package/dist/icons/Icon.js +1 -1
  455. package/dist/icons/InfoCircleIcon.js +1 -1
  456. package/dist/icons/InfoIcon.js +1 -1
  457. package/dist/icons/KeyIcon.js +1 -1
  458. package/dist/icons/LeftIcon.js +1 -1
  459. package/dist/icons/LineChartIcon.js +1 -1
  460. package/dist/icons/LoadingIcon.js +1 -1
  461. package/dist/icons/LockFilledIcon.js +1 -1
  462. package/dist/icons/LockIcon.js +1 -1
  463. package/dist/icons/MoreIcon.js +1 -1
  464. package/dist/icons/NotAllowedIcon.js +1 -1
  465. package/dist/icons/Number123Icon.js +1 -1
  466. package/dist/icons/NumberIcon.js +1 -1
  467. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  468. package/dist/icons/PauseCircleIcon.js +1 -1
  469. package/dist/icons/PauseIcon.js +1 -1
  470. package/dist/icons/PercentageIcon.js +1 -1
  471. package/dist/icons/PieChartIcon.js +1 -1
  472. package/dist/icons/PipetteIcon.js +1 -1
  473. package/dist/icons/PlayCircleIcon.js +1 -1
  474. package/dist/icons/PlayIcon.js +1 -1
  475. package/dist/icons/PlusIcon.js +1 -1
  476. package/dist/icons/ProgressBarIcon.js +1 -1
  477. package/dist/icons/ReloadIcon.js +1 -1
  478. package/dist/icons/ReportIcon.js +1 -1
  479. package/dist/icons/ReturnIcon.js +1 -1
  480. package/dist/icons/RightIcon.js +1 -1
  481. package/dist/icons/RowTotalsIcon.js +1 -1
  482. package/dist/icons/SchemeIcon.js +1 -1
  483. package/dist/icons/SearchIcon.js +1 -1
  484. package/dist/icons/SemanticQueryIcon.js +1 -1
  485. package/dist/icons/SettingsIcon.js +1 -1
  486. package/dist/icons/ShieldFilledIcon.js +1 -1
  487. package/dist/icons/ShieldIcon.js +1 -1
  488. package/dist/icons/SlashIcon.js +1 -1
  489. package/dist/icons/SparklesIcon.js +1 -1
  490. package/dist/icons/SqlIcon.js +1 -1
  491. package/dist/icons/StatsIcon.js +1 -1
  492. package/dist/icons/StopIcon.js +1 -1
  493. package/dist/icons/StringIcon.js +1 -1
  494. package/dist/icons/SubtotalsIcon.js +1 -1
  495. package/dist/icons/SwitchIcon.js +1 -1
  496. package/dist/icons/TableIcon.js +1 -1
  497. package/dist/icons/ThumbsDownIcon.js +1 -1
  498. package/dist/icons/ThumbsUpIcon.js +1 -1
  499. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  500. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  501. package/dist/icons/ThunderboltIcon.js +1 -1
  502. package/dist/icons/TimeIcon.js +1 -1
  503. package/dist/icons/TrashIcon.js +1 -1
  504. package/dist/icons/UnlockIcon.js +1 -1
  505. package/dist/icons/UpIcon.js +1 -1
  506. package/dist/icons/UserGroupIcon.js +1 -1
  507. package/dist/icons/UserIcon.js +1 -1
  508. package/dist/icons/UserLockIcon.js +1 -1
  509. package/dist/icons/ViewIcon.js +1 -1
  510. package/dist/icons/WarningFilledIcon.js +1 -1
  511. package/dist/icons/WarningIcon.js +1 -1
  512. package/dist/icons/wrap-icon.js +1 -1
  513. package/dist/index.d.ts +7 -3
  514. package/dist/index.js +5 -3
  515. package/dist/index.js.map +1 -1
  516. package/dist/probe/canonicalize.js +1 -1
  517. package/dist/probe/css.js +1 -1
  518. package/dist/probe/index.js +1 -1
  519. package/dist/provider.js +1 -1
  520. package/dist/providers/TrackingProvider.js +1 -1
  521. package/dist/providers/navigationAdapter.default.js +1 -1
  522. package/dist/tokens/all-tokens.d.ts +10 -0
  523. package/dist/tokens/{index.js → all-tokens.js} +7 -25
  524. package/dist/tokens/all-tokens.js.map +1 -0
  525. package/dist/tokens/base.js +2 -1
  526. package/dist/tokens/base.js.map +1 -1
  527. package/dist/tokens/color-seed.js +1 -1
  528. package/dist/tokens/color-theme.js +1 -1
  529. package/dist/tokens/colors.js +1 -1
  530. package/dist/tokens/index.d.ts +3 -10
  531. package/dist/tokens/layout.js +1 -1
  532. package/dist/tokens/lazy-styles.js +1 -1
  533. package/dist/tokens/palette-config.js +1 -1
  534. package/dist/tokens/palette.js +1 -1
  535. package/dist/tokens/resolve.d.ts +113 -0
  536. package/dist/tokens/resolve.js +403 -0
  537. package/dist/tokens/resolve.js.map +1 -0
  538. package/dist/tokens/shadows.js +1 -1
  539. package/dist/tokens/sizes.js +1 -1
  540. package/dist/tokens/spacing.js +1 -1
  541. package/dist/tokens/typography.js +1 -1
  542. package/dist/utils/ResizeSensor.js +1 -1
  543. package/dist/utils/is-dev-env.js +1 -1
  544. package/dist/utils/modules.js +1 -1
  545. package/dist/utils/promise.js +1 -1
  546. package/dist/utils/raf.js +1 -1
  547. package/dist/utils/random.js +1 -1
  548. package/dist/utils/range.js +1 -1
  549. package/dist/utils/react/RenderCache.js +1 -1
  550. package/dist/utils/react/Slots.js +1 -1
  551. package/dist/utils/react/chain.js +1 -1
  552. package/dist/utils/react/disabledProps.js +1 -1
  553. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  554. package/dist/utils/react/index.js +1 -1
  555. package/dist/utils/react/interactions.js +1 -1
  556. package/dist/utils/react/isTextOnly.js +1 -1
  557. package/dist/utils/react/mapProps.js +1 -1
  558. package/dist/utils/react/mergeProps.js +1 -1
  559. package/dist/utils/react/nullableValue.js +1 -1
  560. package/dist/utils/react/resolveIcon.js +1 -1
  561. package/dist/utils/react/sharedStore.js +1 -1
  562. package/dist/utils/react/useBufferedValue.js +1 -1
  563. package/dist/utils/react/useCombinedRefs.js +1 -1
  564. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  565. package/dist/utils/react/useEventBus.js +1 -1
  566. package/dist/utils/react/useId.js +1 -1
  567. package/dist/utils/react/useIsDarwin.js +1 -1
  568. package/dist/utils/react/useKeySymbols.js +1 -1
  569. package/dist/utils/react/useLayoutEffect.d.ts +1 -1
  570. package/dist/utils/react/useLayoutEffect.js +1 -1
  571. package/dist/utils/react/useLocalStorage.js +1 -1
  572. package/dist/utils/react/useMergeStyles.js +1 -1
  573. package/dist/utils/react/usePopoverSync.js +1 -1
  574. package/dist/utils/react/useQaProps.js +1 -1
  575. package/dist/utils/react/useViewportSize.js +1 -1
  576. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  577. package/dist/utils/selection.js +1 -1
  578. package/dist/utils/styles.js +1 -1
  579. package/dist/utils/tree.js +1 -1
  580. package/dist/utils/warnings.js +1 -1
  581. package/dist/version.js +3 -3
  582. package/docs/Colors.md +16 -40
  583. package/docs/ComplexLayout.md +8 -0
  584. package/docs/CreateComponent.md +15 -8
  585. package/docs/Introduction.md +15 -36
  586. package/docs/RenderCache.md +8 -6
  587. package/docs/Theming.md +164 -497
  588. package/docs/Usage.md +129 -138
  589. package/docs/Utilities.md +2 -2
  590. package/docs/components/CollectionItem.md +1 -0
  591. package/docs/components/actions/Banner.md +1 -0
  592. package/docs/components/actions/Button.md +8 -36
  593. package/docs/components/actions/ButtonSplit.md +2 -0
  594. package/docs/components/actions/CommandMenu.md +8 -8
  595. package/docs/components/actions/ItemButton.md +6 -20
  596. package/docs/components/actions/Link.md +10 -5
  597. package/docs/components/actions/Menu.md +24 -11
  598. package/docs/components/actions/MenuTrigger.md +3 -12
  599. package/docs/components/actions/use-anchored-menu.md +5 -5
  600. package/docs/components/actions/use-context-menu.md +11 -7
  601. package/docs/components/content/Badge.md +3 -0
  602. package/docs/components/content/HotKeys.md +21 -14
  603. package/docs/components/content/InlineInput.md +14 -14
  604. package/docs/components/content/Item.md +25 -17
  605. package/docs/components/content/ItemCard.md +1 -0
  606. package/docs/components/content/Layout.md +12 -1
  607. package/docs/components/content/PrismCode.md +13 -18
  608. package/docs/components/content/Tag.md +1 -1
  609. package/docs/components/content/TextItem.md +5 -3
  610. package/docs/components/content/Tree.md +69 -154
  611. package/docs/components/data/DataTable.md +56 -168
  612. package/docs/components/data/ItemTable.md +182 -485
  613. package/docs/components/fields/Checkbox.md +2 -0
  614. package/docs/components/fields/ColorInput.md +38 -79
  615. package/docs/components/fields/ColorPicker.md +17 -39
  616. package/docs/components/fields/ColorSwatch.md +11 -30
  617. package/docs/components/fields/ColorSwatchGroup.md +18 -42
  618. package/docs/components/fields/ComboBox.md +13 -1
  619. package/docs/components/fields/CommandTextArea.md +10 -37
  620. package/docs/components/fields/DatePicker.md +3 -0
  621. package/docs/components/fields/FileInput.md +3 -0
  622. package/docs/components/fields/FilterListBox.md +34 -14
  623. package/docs/components/fields/FilterPicker.md +33 -16
  624. package/docs/components/fields/HueSlider.md +5 -5
  625. package/docs/components/fields/ListBox.md +35 -9
  626. package/docs/components/fields/NumberInput.md +3 -0
  627. package/docs/components/fields/PasswordInput.md +3 -0
  628. package/docs/components/fields/PeriodPicker.md +7 -17
  629. package/docs/components/fields/Picker.md +54 -29
  630. package/docs/components/fields/RadioGroup.md +13 -5
  631. package/docs/components/fields/SearchComboBox.md +3 -0
  632. package/docs/components/fields/SearchInput.md +4 -2
  633. package/docs/components/fields/Select.md +23 -13
  634. package/docs/components/fields/Switch.md +3 -0
  635. package/docs/components/fields/TextInput.md +3 -0
  636. package/docs/components/fields/TextInputMapper.md +1 -2
  637. package/docs/components/form/Field.md +5 -2
  638. package/docs/components/form/Form.md +5 -0
  639. package/docs/components/form/FormInstance.md +1 -1
  640. package/docs/components/helpers/DisplayTransition.md +10 -6
  641. package/docs/components/helpers/IconSwitch.md +1 -0
  642. package/docs/components/layout/Board.md +89 -193
  643. package/docs/components/navigation/Pagination.md +36 -75
  644. package/docs/components/navigation/Tabs.md +3 -15
  645. package/docs/components/other/Calendar.md +22 -39
  646. package/docs/components/other/CubeLogo.md +1 -1
  647. package/docs/components/overlays/Dialog.md +3 -0
  648. package/docs/components/overlays/DialogContainer.md +2 -0
  649. package/docs/components/overlays/DialogForm.md +6 -2
  650. package/docs/components/overlays/DialogTrigger.md +4 -2
  651. package/docs/components/overlays/Notifications.md +7 -0
  652. package/docs/components/overlays/Toast.md +12 -8
  653. package/docs/components/overlays/Tooltip.md +16 -0
  654. package/docs/components/overlays/UseDialogContainer.md +16 -10
  655. package/docs/components/status/LoadingAnimation.md +3 -9
  656. package/docs/tasty/configuration.md +195 -15
  657. package/docs/tasty/dsl.md +40 -5
  658. package/docs/tasty/injector.md +11 -0
  659. package/docs/tasty/methodology.md +1 -1
  660. package/docs/tasty/pipeline.md +1 -4
  661. package/docs/tasty/react-api.md +1 -1
  662. package/docs/tasty/styles.md +8 -1
  663. package/package.json +4 -4
  664. package/dist/tokens/index.js.map +0 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { DisplayTransition } from "../../helpers/DisplayTransition/DisplayTransition.js";
4
4
  import { Portal } from "../../portal/Portal.js";
@@ -1,3 +1,4 @@
1
1
 
2
2
  import "./ListBoxPopover.js";
3
+ import "./useCompositeFocus.js";
3
4
  import { ListStateLike, TextFilterFn } from "./listNavigation.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  //#region src/components/fields/ListBoxPopover/listNavigation.ts
3
3
  /**
4
4
  * Walks a collection (possibly nested under sections) and collects the keys of
@@ -0,0 +1,2 @@
1
+
2
+ import React, { RefObject } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useCallback, useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/components/fields/ListBoxPopover/useCompositeFocus.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
4
4
  import { castNullableNumberValue } from "../../../utils/react/nullableValue.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useI18n } from "../../../i18n/useI18n.js";
3
3
  import { DirectionIcon } from "../../../icons/DirectionIcon.js";
4
4
  import { Button } from "../../actions/index.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useBufferedValue } from "../../../utils/react/useBufferedValue.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { _Text } from "../../content/Text.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useFocus as useFocus$1 } from "../../../utils/react/interactions.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { FormContext } from "../../form/Form/Form.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/fields/RadioGroup/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { usePopoverSync } from "../../../utils/react/usePopoverSync.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useBufferedValue } from "../../../utils/react/useBufferedValue.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { forwardRefWithGenerics } from "../../../utils/react/forwardRefWithGenerics.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { SliderGradationElement, SliderGradeElement } from "./elements.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { __Slider } from "./Slider.js";
3
3
  import { forwardRef, useCallback, useMemo, useState } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { Gradation } from "./Gradation.js";
3
3
  import { _SliderBase } from "./SliderBase.js";
4
4
  import { SliderThumb } from "./SliderThumb.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps } from "../../../utils/react/mergeProps.js";
4
4
  import { Gradation } from "./Gradation.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { forwardRefWithGenerics } from "../../../utils/react/forwardRefWithGenerics.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { getValidationMods } from "../../form/validation/resolve-validation-props.js";
4
4
  import { SliderThumbElement } from "./elements.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { getValidationMods } from "../../form/validation/resolve-validation-props.js";
3
3
  import { SliderTrackContainerElement } from "./elements.js";
4
4
  import { useMemo } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
 
4
4
  //#region src/components/fields/Slider/elements.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { __RangeSlider } from "./RangeSlider.js";
3
3
  import { __Slider } from "./Slider.js";
4
4
  import { __HueSlider } from "./HueSlider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useId as useId$2 } from "../../../utils/react/useId.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useBufferedValue } from "../../../utils/react/useBufferedValue.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useBufferedValue } from "../../../utils/react/useBufferedValue.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useEffect, useLayoutEffect, useRef } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { formatColor, getContrastingColor, toHex } from "./color.js";
4
4
  import { CHANNELS, COLOR_SPACES, COLOR_SPACE_HINTS, COLOR_SPACE_LABELS } from "./channels.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { fromOkhst, fromOklch, fromRgb, isAchromatic, maxChroma, normalizeHue, toHex, toOkhst, toOklch, toRgb } from "./color.js";
3
3
 
4
4
  //#region src/components/fields/color/channels.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { contrastRatioFromLuminance, formatHsl, formatOkhsl, formatOkhst, formatOklch, formatRgb, hslToSrgb, okhslToLinearSrgb, okhslToOkhst, okhslToOklch, okhslToSrgb, okhstToOkhsl, oklabToOkhsl, parseHexAlpha, relativeLuminanceFromLinearRgb, srgbToHex, srgbToOkhsl } from "@tenphi/glaze";
3
3
 
4
4
  //#region src/components/fields/color/color.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/fields/color/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { wrapNodeIfPlain } from "../../../utils/react/wrapNodeIfPlain.js";
4
4
  import { _Text } from "../../content/Text.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { warn } from "../../../utils/warnings.js";
4
4
  import { useValidationProps } from "../validation/use-validation-props.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { Provider, useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../../../_internal/hooks/use-event.js";
4
4
  import { useProviderProps } from "../../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useProviderProps } from "../../../../provider.js";
3
3
  import { Button } from "../../../actions/Button/Button.js";
4
4
  import { useFormProps } from "../Form.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useI18n } from "../../../i18n/useI18n.js";
3
3
  import { FormContext } from "./Form.js";
4
4
  import { Alert } from "../../content/Alert/Alert.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useForm } from "./use-form.js";
3
3
  import { FormContext, _Form, useFormProps } from "./Form.js";
4
4
  import { useField } from "./use-field/use-field.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../../../_internal/hooks/use-event.js";
4
4
  import { warn } from "../../../../utils/warnings.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../../../_internal/hooks/use-event.js";
3
3
  import { useIsFirstRender } from "../../../../_internal/hooks/use-is-first-render.js";
4
4
  import { resolveValidationProps } from "../../validation/resolve-validation-props.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { applyRules } from "./validation.js";
3
3
  import { dotize } from "@tenphi/tasty";
4
4
  import { useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { validate } from "email-validator";
3
3
  import validUrl from "valid-url";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { useProviderProps } from "../../provider.js";
4
4
  import { useI18n } from "../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { LoadingIcon } from "../../../icons/LoadingIcon.js";
3
3
  import { hasValidationState } from "./resolve-validation-props.js";
4
4
  import { InvalidIcon } from "../../shared/InvalidIcon.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  //#region src/components/form/validation/resolve-validation-props.ts
3
3
  /**
4
4
  * Normalizes the validation props of a field into a pair of booleans.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useWarn } from "../../../_internal/hooks/use-warn.js";
3
3
  import { resolveValidationProps } from "./resolve-validation-props.js";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../utils/react/mergeProps.js";
3
3
  import { FieldWrapper } from "./FieldWrapper/FieldWrapper.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { useCallback, useLayoutEffect, useRef, useState } from "react";
3
3
 
4
4
  //#region src/components/helpers/DisplayTransition/DisplayTransition.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { DisplayTransition } from "../DisplayTransition/DisplayTransition.js";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { isValidElement, useCallback, useLayoutEffect, useRef, useState } from "react";
@@ -1,6 +1,7 @@
1
1
 
2
2
  import { CollisionMode, LayoutConstraint, LayoutItem, ResizeHandleAxis } from "./grid-core/types.js";
3
3
  import { BoardSelectionMode } from "./use-board-selection.js";
4
+ import { BoardLayoutChangeInfo } from "./use-board-layout.js";
4
5
  import { BoardResizeGripPlacement, CubeBoardWidgetProps } from "./Widget.js";
5
6
  import { AllBaseProps, ContainerStyleProps } from "@tenphi/tasty";
6
7
  import { ReactNode } from "react";
@@ -46,7 +47,7 @@ interface CubeBoardProps extends Omit<AllBaseProps, 'children' | 'onDragStart' |
46
47
  layout?: LayoutItem[];
47
48
  /** Initial layout for uncontrolled usage. */
48
49
  defaultLayout?: LayoutItem[];
49
- onLayoutChange?: (layout: LayoutItem[]) => void;
50
+ onLayoutChange?: (layout: LayoutItem[], info: BoardLayoutChangeInfo) => void;
50
51
  /** Called when a drag gesture starts. */
51
52
  onDragStart?: (info: BoardInteractionInfo) => void;
52
53
  /** Called on every step of a drag gesture. */
@@ -61,8 +62,28 @@ interface CubeBoardProps extends Omit<AllBaseProps, 'children' | 'onDragStart' |
61
62
  onResizeStop?: (info: BoardInteractionInfo) => void;
62
63
  /** Number of columns. @default 12 */
63
64
  cols?: number;
64
- /** Row height in pixels. @default 100 */
65
- rowHeight?: number;
65
+ /**
66
+ * Render exactly this many rows, whatever the content needs — a fixed
67
+ * `cols × rows` matrix rather than a grid that hugs its widgets. Implies a
68
+ * `maxRows` of the same value, so the grid's own bounds constraint keeps every
69
+ * drag and resize inside the matrix. Pair with `rowHeight="stretch"` for a
70
+ * matrix that fills the box it is given.
71
+ */
72
+ rows?: number;
73
+ /**
74
+ * Row height in pixels, or `'stretch'` to divide the board's own measured
75
+ * height into its rows. `'stretch'` is what makes a fixed `rows × cols` matrix
76
+ * fill its container: the board fills the height it is given and each cell
77
+ * takes an equal share of it, so resizing the container resizes the cells
78
+ * instead of adding or removing them.
79
+ *
80
+ * Requires {@link rows}. Without a declared row count there is no matrix to
81
+ * fill, and dividing by the content extent instead would resize every cell
82
+ * whenever a widget landed on a new row — so the mode does not engage and the
83
+ * board keeps its ordinary content-hugging behaviour at the default height.
84
+ * @default 100
85
+ */
86
+ rowHeight?: number | 'stretch';
66
87
  /** [horizontal, vertical] margin between widgets in pixels. @default [8, 8] */
67
88
  margin?: [number, number];
68
89
  /**
@@ -131,10 +152,15 @@ interface CubeBoardProps extends Omit<AllBaseProps, 'children' | 'onDragStart' |
131
152
  */
132
153
  resizeGripPlacement?: BoardResizeGripPlacement;
133
154
  /**
134
- * CSS selector for elements that must not start a pointer drag (e.g. form
135
- * controls inside a widget: `"input,textarea,button,a,.no-drag"`). Does not
136
- * affect keyboard movesthose only run when the widget host itself is
137
- * focused. Can be overridden per widget on `Board.Widget`.
155
+ * CSS selector for elements that must not start a pointer drag.
156
+ *
157
+ * Defaults to {@link BOARD_SELECTION_CANCEL} — the same set `selectionCancel`
158
+ * uses because a control inside a widget has to keep its own press whether
159
+ * or not the board happens to support selection. Pass a selector of your own
160
+ * to narrow or widen it, or `''` to let a drag start from anywhere.
161
+ *
162
+ * Does not affect keyboard moves — those only run when the widget host itself
163
+ * is focused. Can be overridden per widget on `Board.Widget`.
138
164
  */
139
165
  dragCancel?: string;
140
166
  /**
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.165.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.167.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -100,6 +100,11 @@ const GridOverlayElement = tasty({
100
100
  * custom controls.
101
101
  */
102
102
  const BOARD_SELECTION_CANCEL = "input,textarea,select,button,a,[role=\"button\"],[role=\"menuitem\"],[role=\"checkbox\"],[role=\"switch\"],[role=\"tab\"],[contenteditable=\"true\"],[data-no-select]";
103
+ /**
104
+ * Row height when none is given, and the fallback a `rowHeight="stretch"` board
105
+ * uses until it has both a bounded row count and a measured height to divide.
106
+ */
107
+ const DEFAULT_ROW_HEIGHT = 100;
103
108
  /** Manhattan distance a pointer must travel before a press becomes a marquee. */
104
109
  const MARQUEE_THRESHOLD = 4;
105
110
  /** Shared empty set, so "no pre-selection" is a stable reference. */
@@ -120,7 +125,8 @@ function compactTypeToCore(compact) {
120
125
  return compact;
121
126
  }
122
127
  function BoardInner(props, ref) {
123
- const { id: providedId, layout: controlledLayout, defaultLayout, onLayoutChange, onDragStart, onDrag, onDragStop, onResizeStart, onResize: onResizeProp, onResizeStop, cols = 12, rowHeight = 100, margin = [8, 8], containerPadding, maxRows = Infinity, extraRows = 0, compact = "vertical", allowOverlap = false, preventCollision = false, collisionMode = "revert", isDraggable = true, isResizable = true, isDroppable = true, resizeHandles = ["se"], resizeGripPlacement = "inside", dragCancel, dragHandle, showGridLines, isAligned = false, selectionMode = "none", selectedKeys, defaultSelectedKeys, onSelectionChange, selectionCancel = BOARD_SELECTION_CANCEL, allowMarqueeSelection = selectionMode === "multiple", onWidgetsDelete, constraints, width: providedWidth, widgetProps, children, ...otherProps } = props;
128
+ const { id: providedId, layout: controlledLayout, defaultLayout, onLayoutChange, onDragStart, onDrag, onDragStop, onResizeStart, onResize: onResizeProp, onResizeStop, cols = 12, rows: fixedRows, rowHeight = DEFAULT_ROW_HEIGHT, margin = [8, 8], containerPadding, maxRows: maxRowsProp, extraRows = 0, compact = "vertical", allowOverlap = false, preventCollision = false, collisionMode = "revert", isDraggable = true, isResizable = true, isDroppable = true, resizeHandles = ["se"], resizeGripPlacement = "inside", dragCancel = BOARD_SELECTION_CANCEL, dragHandle, showGridLines, isAligned = false, selectionMode = "none", selectedKeys, defaultSelectedKeys, onSelectionChange, selectionCancel = BOARD_SELECTION_CANCEL, allowMarqueeSelection = selectionMode === "multiple", onWidgetsDelete, constraints, width: providedWidth, widgetProps, children, ...otherProps } = props;
129
+ const maxRows = maxRowsProp ?? (fixedRows != null ? Math.max(1, fixedRows) : Infinity);
124
130
  const registry = useBoardRegistry();
125
131
  const parentMetrics = useBoardMetrics();
126
132
  const host = useBoardHost();
@@ -179,12 +185,14 @@ function BoardInner(props, ref) {
179
185
  const effectiveMargin = aligned ? parentMetrics.margin : margin;
180
186
  const resolvedPadding = containerPadding ?? (aligned ? [0, 0] : effectiveMargin);
181
187
  const rows = Math.max(bottom(layout), ...placeholders.map((p) => p.y + p.h), 0);
182
- const renderedRows = Math.min(rows + Math.max(0, extraRows), maxRows);
188
+ const renderedRows = fixedRows != null ? Math.max(1, fixedRows) : Math.min(rows + Math.max(0, extraRows), maxRows);
183
189
  const parentColWidth = aligned ? parentMetrics.colWidth : 0;
184
190
  const alignedCols = aligned && width > 0 ? Math.max(1, Math.floor((width - resolvedPadding[0] * 2 + effectiveMargin[0] + 2) / (parentColWidth + effectiveMargin[0]))) : cols;
185
191
  const effectiveCols = aligned ? alignedCols : cols;
186
192
  const effectiveContainerWidth = aligned ? parentColWidth * effectiveCols + effectiveMargin[0] * Math.max(0, effectiveCols - 1) + resolvedPadding[0] * 2 : width;
187
- const effectiveRowHeight = aligned ? parentMetrics.rowHeight : rowHeight;
193
+ const isStretching = rowHeight === "stretch" && fixedRows != null;
194
+ const stretchedRowHeight = isStretching && measuredHeight > 0 ? Math.max(1, (measuredHeight - Math.max(0, renderedRows - 1) * effectiveMargin[1] - resolvedPadding[1] * 2) / renderedRows) : DEFAULT_ROW_HEIGHT;
195
+ const effectiveRowHeight = aligned ? parentMetrics.rowHeight : rowHeight === "stretch" ? stretchedRowHeight : rowHeight;
188
196
  const positionParams = useMemo(() => ({
189
197
  margin: effectiveMargin,
190
198
  containerPadding: resolvedPadding,
@@ -209,7 +217,7 @@ function BoardInner(props, ref) {
209
217
  ]);
210
218
  const resolvedConstraints = constraints ?? defaultConstraints;
211
219
  const computedHeight = renderedRows > 0 ? renderedRows * effectiveRowHeight + Math.max(0, renderedRows - 1) * effectiveMargin[1] + resolvedPadding[1] * 2 : effectiveRowHeight;
212
- const containerHeight = aligned && measuredHeight > 0 ? measuredHeight : computedHeight;
220
+ const containerHeight = (aligned || isStretching) && measuredHeight > 0 ? measuredHeight : computedHeight;
213
221
  const liveRef = useRef({
214
222
  positionParams,
215
223
  compactor,
@@ -243,7 +251,7 @@ function BoardInner(props, ref) {
243
251
  getContainerHeight: () => liveRef.current.containerHeight,
244
252
  getLayout: () => layoutRef.current,
245
253
  getSelectedKeys: () => selectedKeysRef.current.size > 0 ? selectedKeysRef.current : null,
246
- applyLayout: (next, commit) => applyLayoutEvent(next, commit),
254
+ applyLayout: (next, commit, reason) => applyLayoutEvent(next, commit, reason),
247
255
  setPlaceholders: (items) => setPlaceholdersEvent(items),
248
256
  isDroppable: () => liveRef.current.isDroppable
249
257
  };
@@ -254,7 +262,7 @@ function BoardInner(props, ref) {
254
262
  }, [boardId]);
255
263
  const recompactForCols = useEvent((nextCols) => {
256
264
  const corrected = correctBounds(cloneLayout(layoutRef.current), { cols: nextCols });
257
- applyLayoutEvent([...liveRef.current.compactor.compact(corrected, nextCols)], true);
265
+ applyLayoutEvent([...liveRef.current.compactor.compact(corrected, nextCols)], true, "normalize");
258
266
  });
259
267
  const prevAlignedColsRef = useRef(null);
260
268
  useEffect(() => {
@@ -329,7 +337,7 @@ function BoardInner(props, ref) {
329
337
  if (!rs) return;
330
338
  if (phase === "end") {
331
339
  const finalLayout = [...layoutRef.current];
332
- applyLayout(finalLayout, true);
340
+ applyLayout(finalLayout, true, "resize");
333
341
  setPlaceholders([]);
334
342
  const resizedItem = getLayoutItem(finalLayout, id) ?? rs.item;
335
343
  onResizeStop?.({
@@ -414,7 +422,7 @@ function BoardInner(props, ref) {
414
422
  ...current,
415
423
  h: neededRows
416
424
  });
417
- applyLayout([...liveRef.current.compactor.compact(working, pp.cols)], true);
425
+ applyLayout([...liveRef.current.compactor.compact(working, pp.cols)], true, "normalize");
418
426
  });
419
427
  const dragOldItemRef = useRef(null);
420
428
  const dragOldItemsRef = useRef([]);
@@ -623,7 +631,7 @@ function BoardInner(props, ref) {
623
631
  styles,
624
632
  tabIndex: selectionMode !== "none" ? -1 : void 0,
625
633
  "data-board-id": boardId,
626
- style: aligned ? void 0 : { minHeight: `${containerHeight}px` },
634
+ style: aligned ? void 0 : isStretching ? { height: "100%" } : { minHeight: `${containerHeight}px` },
627
635
  mods: {
628
636
  dragging: !!dragState,
629
637
  "drop-target": dragState?.currentBoardId === boardId,
@@ -647,17 +655,27 @@ function BoardInner(props, ref) {
647
655
  const widgetDragCancel = registration?.dragCancel ?? widgetProps?.dragCancel ?? dragCancel;
648
656
  const widgetDragHandle = registration?.dragHandle ?? widgetProps?.dragHandle ?? dragHandle;
649
657
  const widgetIsCard = registration?.isCard ?? widgetProps?.isCard ?? false;
658
+ const widgetHoverRing = registration?.hoverRing ?? widgetProps?.hoverRing ?? true;
659
+ const widgetMods = registration?.mods && widgetProps?.mods ? {
660
+ ...widgetProps.mods,
661
+ ...registration.mods
662
+ } : registration?.mods ?? widgetProps?.mods;
650
663
  const widgetIsAutoHeight = registration?.isAutoHeight ?? widgetProps?.isAutoHeight ?? false;
651
664
  const widgetQa = registration?.qa ?? widgetProps?.qa;
652
665
  const widgetSelectable = selectionMode !== "none" && isWidgetSelectable(item.i);
653
666
  const widgetSelectionCancel = registration?.selectionCancel ?? widgetProps?.selectionCancel ?? selectionCancel;
667
+ const widgetStyles = registration?.styles && widgetPropsStyles ? mergeStyles(widgetPropsStyles, registration.styles) : registration?.styles ?? widgetPropsStyles;
654
668
  return /* @__PURE__ */ jsx(WidgetHost, {
655
669
  boardId,
656
670
  item,
657
671
  positionParams,
658
672
  registration,
659
673
  isCard: widgetIsCard,
660
- styles: registration?.styles && widgetPropsStyles ? mergeStyles(widgetPropsStyles, registration.styles) : registration?.styles ?? widgetPropsStyles,
674
+ hoverRing: widgetHoverRing,
675
+ cornerChrome: registration?.cornerChrome ?? widgetProps?.cornerChrome,
676
+ cornerChromePlacement: registration?.cornerChromePlacement ?? widgetProps?.cornerChromePlacement,
677
+ mods: widgetMods,
678
+ styles: widgetStyles,
661
679
  isDraggable: widgetDraggable,
662
680
  isResizable: widgetResizable,
663
681
  resizeHandles: handles,