@cube-dev/ui-kit 0.0.0-canary-b59dbf7 → 0.0.0-canary-23d9994

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 (571) hide show
  1. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  2. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  3. package/dist/_internal/hooks/use-event.js +1 -1
  4. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  5. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  6. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  7. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  8. package/dist/_internal/hooks/use-warn.js +1 -1
  9. package/dist/components/Block.js +1 -1
  10. package/dist/components/CollectionItem.js +1 -1
  11. package/dist/components/GlobalStyles.js +1 -1
  12. package/dist/components/GridProvider.js +1 -1
  13. package/dist/components/HiddenInput.js +1 -1
  14. package/dist/components/Root.js +1 -1
  15. package/dist/components/actions/Action/Action.js +1 -1
  16. package/dist/components/actions/Banner/Banner.js +1 -1
  17. package/dist/components/actions/Button/Button.js +1 -1
  18. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  19. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  20. package/dist/components/actions/ButtonSplit/context.js +1 -1
  21. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  22. package/dist/components/actions/CommandMenu/styled.js +1 -1
  23. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  24. package/dist/components/actions/ItemActionContext.js +1 -1
  25. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  26. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  27. package/dist/components/actions/Link/Link.js +1 -1
  28. package/dist/components/actions/Menu/Menu.js +1 -1
  29. package/dist/components/actions/Menu/MenuItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuSection.js +1 -1
  31. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  32. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  34. package/dist/components/actions/Menu/context.js +1 -1
  35. package/dist/components/actions/Menu/styled.js +1 -1
  36. package/dist/components/actions/actions-run.js +1 -1
  37. package/dist/components/actions/index.js +1 -1
  38. package/dist/components/actions/use-action.js +1 -1
  39. package/dist/components/actions/use-anchored-menu.js +1 -1
  40. package/dist/components/actions/use-context-menu.js +1 -1
  41. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  42. package/dist/components/content/Alert/Alert.js +1 -1
  43. package/dist/components/content/Alert/use-alert.js +1 -1
  44. package/dist/components/content/Avatar/Avatar.js +1 -1
  45. package/dist/components/content/Badge/Badge.js +1 -1
  46. package/dist/components/content/Card/Card.js +1 -1
  47. package/dist/components/content/Content.js +1 -1
  48. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  49. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  50. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  51. package/dist/components/content/Divider.js +1 -1
  52. package/dist/components/content/Footer.js +1 -1
  53. package/dist/components/content/Header.js +1 -1
  54. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  55. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  56. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  57. package/dist/components/content/Item/Item.js +1 -1
  58. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  59. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  60. package/dist/components/content/Layout/GridLayout.js +1 -1
  61. package/dist/components/content/Layout/Layout.js +1 -1
  62. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  63. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  64. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  65. package/dist/components/content/Layout/LayoutContent.js +1 -1
  66. package/dist/components/content/Layout/LayoutContext.js +1 -1
  67. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  68. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  69. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  70. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutPane.js +1 -1
  72. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  73. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  74. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  75. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  76. package/dist/components/content/Layout/index.js +1 -1
  77. package/dist/components/content/Layout/utils.js +1 -1
  78. package/dist/components/content/Paragraph.js +1 -1
  79. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  80. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  81. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  82. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  83. package/dist/components/content/Result/Result.js +1 -1
  84. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  85. package/dist/components/content/Tag/Tag.js +1 -1
  86. package/dist/components/content/Text.js +1 -1
  87. package/dist/components/content/TextItem/TextItem.js +1 -1
  88. package/dist/components/content/Title.js +1 -1
  89. package/dist/components/content/Tree/Tree.js +1 -1
  90. package/dist/components/content/Tree/TreeNode.js +1 -1
  91. package/dist/components/content/Tree/styled.js +1 -1
  92. package/dist/components/content/Tree/tree-index.js +1 -1
  93. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  94. package/dist/components/content/Tree/use-load-data.js +1 -1
  95. package/dist/components/content/highlightText.js +1 -1
  96. package/dist/components/content/use-auto-tooltip.js +1 -1
  97. package/dist/components/data/DataTable/DataTable.js +1 -1
  98. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  99. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  100. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  101. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  102. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  103. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  104. package/dist/components/data/TableBase/RowCollection.js +1 -1
  105. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  106. package/dist/components/data/TableBase/TableRow.js +1 -1
  107. package/dist/components/data/TableBase/TableView.js +1 -1
  108. package/dist/components/data/TableBase/column-menu.js +1 -1
  109. package/dist/components/data/TableBase/column-tint.js +1 -1
  110. package/dist/components/data/TableBase/row-menu.js +1 -1
  111. package/dist/components/data/TableBase/styled.js +1 -1
  112. package/dist/components/data/TableBase/table-tree.js +1 -1
  113. package/dist/components/data/TableBase/types.js +1 -1
  114. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  115. package/dist/components/data/TableBase/use-column-order.js +1 -1
  116. package/dist/components/data/TableBase/use-container-width.js +1 -1
  117. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  118. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  119. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  120. package/dist/components/data/TableBase/use-table-search.js +1 -1
  121. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  122. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  123. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  124. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  125. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  126. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  127. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  128. package/dist/components/fields/Checkbox/context.js +1 -1
  129. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  130. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  131. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  132. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  133. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  134. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  135. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  136. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  137. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  138. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  139. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  140. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  141. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  142. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  143. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  144. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  145. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  146. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  147. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  148. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  149. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  150. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  151. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  152. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  153. package/dist/components/fields/DatePicker/period.js +1 -1
  154. package/dist/components/fields/DatePicker/props.js +1 -1
  155. package/dist/components/fields/DatePicker/utils.js +1 -1
  156. package/dist/components/fields/FileInput/FileInput.js +1 -1
  157. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  158. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  159. package/dist/components/fields/Input/Input.js +1 -1
  160. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  161. package/dist/components/fields/ListBox/ListBox.js +1 -1
  162. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  163. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  164. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  165. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  166. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  167. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  168. package/dist/components/fields/Picker/Picker.js +1 -1
  169. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  170. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  171. package/dist/components/fields/RadioGroup/context.js +1 -1
  172. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  173. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  174. package/dist/components/fields/Select/Select.js +1 -1
  175. package/dist/components/fields/Slider/Gradation.js +1 -1
  176. package/dist/components/fields/Slider/HueSlider.js +1 -1
  177. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  178. package/dist/components/fields/Slider/Slider.js +1 -1
  179. package/dist/components/fields/Slider/SliderBase.js +1 -1
  180. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  181. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  182. package/dist/components/fields/Slider/elements.js +1 -1
  183. package/dist/components/fields/Slider/index.js +1 -1
  184. package/dist/components/fields/Switch/Switch.js +1 -1
  185. package/dist/components/fields/TextArea/TextArea.js +1 -1
  186. package/dist/components/fields/TextInput/TextInput.js +1 -1
  187. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  188. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  189. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  190. package/dist/components/fields/TriggerActions.js +1 -1
  191. package/dist/components/fields/color/ColorPanel.js +1 -1
  192. package/dist/components/fields/color/channels.js +1 -1
  193. package/dist/components/fields/color/color.js +1 -1
  194. package/dist/components/fields/color/context.js +1 -1
  195. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  196. package/dist/components/form/Form/Field.js +1 -1
  197. package/dist/components/form/Form/Form.d.ts +2 -1
  198. package/dist/components/form/Form/Form.js +29 -21
  199. package/dist/components/form/Form/Form.js.map +1 -1
  200. package/dist/components/form/Form/ModernFormRoot.d.ts +17 -0
  201. package/dist/components/form/Form/ModernFormRoot.js +71 -11
  202. package/dist/components/form/Form/ModernFormRoot.js.map +1 -1
  203. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  204. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  205. package/dist/components/form/Form/SubmitError.js +1 -1
  206. package/dist/components/form/Form/backend.d.ts +8 -4
  207. package/dist/components/form/Form/backend.js +4 -5
  208. package/dist/components/form/Form/backend.js.map +1 -1
  209. package/dist/components/form/Form/index.d.ts +14 -0
  210. package/dist/components/form/Form/index.js +7 -1
  211. package/dist/components/form/Form/index.js.map +1 -1
  212. package/dist/components/form/Form/modern/context.d.ts +9 -0
  213. package/dist/components/form/Form/modern/context.js +14 -0
  214. package/dist/components/form/Form/modern/context.js.map +1 -0
  215. package/dist/components/form/Form/modern/controller.d.ts +13 -0
  216. package/dist/components/form/Form/modern/controller.js +45 -0
  217. package/dist/components/form/Form/modern/controller.js.map +1 -0
  218. package/dist/components/form/Form/modern/react.d.ts +21 -0
  219. package/dist/components/form/Form/modern/react.js +27 -0
  220. package/dist/components/form/Form/modern/react.js.map +1 -0
  221. package/dist/components/form/Form/modern/store.js +572 -0
  222. package/dist/components/form/Form/modern/store.js.map +1 -0
  223. package/dist/components/form/Form/modern/types.d.ts +115 -0
  224. package/dist/components/form/Form/modern/values.d.ts +7 -0
  225. package/dist/components/form/Form/modern/values.js +144 -0
  226. package/dist/components/form/Form/modern/values.js.map +1 -0
  227. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  228. package/dist/components/form/Form/use-field/use-field.js +1 -1
  229. package/dist/components/form/Form/use-form.js +1 -1
  230. package/dist/components/form/Form/validation.js +1 -1
  231. package/dist/components/form/Label.js +1 -1
  232. package/dist/components/form/index.d.ts +5 -0
  233. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  234. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  235. package/dist/components/form/validation/use-validation-props.js +1 -1
  236. package/dist/components/form/wrapper.js +1 -1
  237. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  238. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  239. package/dist/components/layout/Board/Board.js +1 -1
  240. package/dist/components/layout/Board/BoardProvider.js +1 -1
  241. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  242. package/dist/components/layout/Board/Widget.js +1 -1
  243. package/dist/components/layout/Board/WidgetHost.js +1 -1
  244. package/dist/components/layout/Board/board-context.js +1 -1
  245. package/dist/components/layout/Board/board-store.js +1 -1
  246. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  247. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  248. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  249. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  250. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  251. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  252. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  253. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  254. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  255. package/dist/components/layout/Board/index.js +1 -1
  256. package/dist/components/layout/Board/responsive-utils.js +1 -1
  257. package/dist/components/layout/Board/use-board-layout.js +1 -1
  258. package/dist/components/layout/Board/use-board-registry.js +1 -1
  259. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  260. package/dist/components/layout/Board/use-board-selection.js +1 -1
  261. package/dist/components/layout/Flex.js +1 -1
  262. package/dist/components/layout/Flow.js +1 -1
  263. package/dist/components/layout/Grid.js +1 -1
  264. package/dist/components/layout/Panel.js +1 -1
  265. package/dist/components/layout/Prefix.js +1 -1
  266. package/dist/components/layout/ResizablePanel.js +1 -1
  267. package/dist/components/layout/Space.js +1 -1
  268. package/dist/components/layout/Suffix.js +1 -1
  269. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  270. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  271. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  272. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  273. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  274. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  275. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  276. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  277. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  278. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  279. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  280. package/dist/components/navigation/Tabs/styled.js +1 -1
  281. package/dist/components/navigation/Tabs/types.js +1 -1
  282. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  283. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  284. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  285. package/dist/components/other/Calendar/Calendar.js +1 -1
  286. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  287. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  288. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  289. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  290. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  291. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  292. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  293. package/dist/components/other/Calendar/styled.js +1 -1
  294. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  295. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  296. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  297. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  298. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  299. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  300. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  301. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  302. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  303. package/dist/components/overlays/Dialog/context.js +1 -1
  304. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  305. package/dist/components/overlays/Modal/Modal.js +1 -1
  306. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  307. package/dist/components/overlays/Modal/Overlay.js +1 -1
  308. package/dist/components/overlays/Modal/Popover.js +1 -1
  309. package/dist/components/overlays/Modal/Tray.js +1 -1
  310. package/dist/components/overlays/Modal/Underlay.js +1 -1
  311. package/dist/components/overlays/Notifications/Notification.js +1 -1
  312. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  313. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  314. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  315. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  316. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  317. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  318. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  319. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  320. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  321. package/dist/components/overlays/Notifications/index.js +1 -1
  322. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  323. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  324. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  325. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  326. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  327. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  328. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  329. package/dist/components/overlays/Toast/index.js +1 -1
  330. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  331. package/dist/components/overlays/Toast/useToast.js +1 -1
  332. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  333. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  334. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  335. package/dist/components/overlays/Tooltip/context.js +1 -1
  336. package/dist/components/portal/Portal.js +1 -1
  337. package/dist/components/portal/PortalProvider.js +1 -1
  338. package/dist/components/portal/usePortal.js +1 -1
  339. package/dist/components/shared/DraggableCollection.js +1 -1
  340. package/dist/components/shared/InvalidIcon.js +1 -1
  341. package/dist/components/shared/ValidIcon.js +1 -1
  342. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  343. package/dist/components/status/Spin/Cube.js +1 -1
  344. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  345. package/dist/components/status/Spin/Spin.js +1 -1
  346. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  347. package/dist/data/item-themes.js +1 -1
  348. package/dist/data/themes.js +1 -1
  349. package/dist/eslint-plugin/defaults.generated.js +1 -1
  350. package/dist/eslint-plugin/index.js +1 -1
  351. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  352. package/dist/i18n/I18nProvider.js +1 -1
  353. package/dist/i18n/createFormatter.js +1 -1
  354. package/dist/i18n/index.js +1 -1
  355. package/dist/i18n/instance.js +1 -1
  356. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  357. package/dist/i18n/locales/en-US/uikit.js +1 -1
  358. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  359. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  360. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  361. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  362. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  363. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  364. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  365. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  366. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  367. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  368. package/dist/i18n/locales.js +1 -1
  369. package/dist/i18n/useFormatter.js +1 -1
  370. package/dist/i18n/useI18n.js +1 -1
  371. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  372. package/dist/icons/AdjustmentsIcon.js +1 -1
  373. package/dist/icons/AiIcon.js +1 -1
  374. package/dist/icons/AreaChartIcon.js +1 -1
  375. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  376. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  377. package/dist/icons/BackwardIcon.js +1 -1
  378. package/dist/icons/BarChartIcon.js +1 -1
  379. package/dist/icons/BellFilledIcon.js +1 -1
  380. package/dist/icons/BellIcon.js +1 -1
  381. package/dist/icons/BooleanIcon.js +1 -1
  382. package/dist/icons/CalendarEditIcon.js +1 -1
  383. package/dist/icons/CalendarIcon.js +1 -1
  384. package/dist/icons/CaretDownIcon.js +1 -1
  385. package/dist/icons/CaretUpIcon.js +1 -1
  386. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  387. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  388. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  389. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  390. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  391. package/dist/icons/ChartBarLineIcon.js +1 -1
  392. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  393. package/dist/icons/ChartBarStackedIcon.js +1 -1
  394. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  395. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  396. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  397. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  398. package/dist/icons/ChartBubbleIcon.js +1 -1
  399. package/dist/icons/ChartDonut2Icon.js +1 -1
  400. package/dist/icons/ChartFunnelIcon.js +1 -1
  401. package/dist/icons/ChartHeatmapIcon.js +1 -1
  402. package/dist/icons/ChartKPIIcon.js +1 -1
  403. package/dist/icons/ChartPie2Icon.js +1 -1
  404. package/dist/icons/ChartScatterIcon.js +1 -1
  405. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  406. package/dist/icons/CheckCircleIcon.js +1 -1
  407. package/dist/icons/CheckIcon.js +1 -1
  408. package/dist/icons/CircleFilledIcon.js +1 -1
  409. package/dist/icons/ClearIcon.js +1 -1
  410. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  411. package/dist/icons/CloseCircleIcon.js +1 -1
  412. package/dist/icons/CloseIcon.js +1 -1
  413. package/dist/icons/CodeIcon.js +1 -1
  414. package/dist/icons/ColumnTotalIcon.js +1 -1
  415. package/dist/icons/CopyIcon.js +1 -1
  416. package/dist/icons/CountIcon.js +1 -1
  417. package/dist/icons/CubeIcon.js +1 -1
  418. package/dist/icons/CubePauseIcon.js +1 -1
  419. package/dist/icons/CubePlayIcon.js +1 -1
  420. package/dist/icons/CurrencyDollarIcon.js +1 -1
  421. package/dist/icons/DangerIcon.js +1 -1
  422. package/dist/icons/DashboardIcon.js +1 -1
  423. package/dist/icons/DatabaseIcon.js +1 -1
  424. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  425. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  426. package/dist/icons/DirectionIcon.js +1 -1
  427. package/dist/icons/DonutIcon.js +1 -1
  428. package/dist/icons/DownIcon.js +1 -1
  429. package/dist/icons/EditIcon.js +1 -1
  430. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  431. package/dist/icons/ExclamationCircleIcon.js +1 -1
  432. package/dist/icons/ExclamationIcon.js +1 -1
  433. package/dist/icons/EyeIcon.js +1 -1
  434. package/dist/icons/EyeInvisibleIcon.js +1 -1
  435. package/dist/icons/FilterIcon.js +1 -1
  436. package/dist/icons/FolderFilledIcon.js +1 -1
  437. package/dist/icons/FolderIcon.js +1 -1
  438. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  439. package/dist/icons/FolderOpenIcon.js +1 -1
  440. package/dist/icons/ForwardIcon.js +1 -1
  441. package/dist/icons/GripVerticalIcon.js +1 -1
  442. package/dist/icons/HierarchyIcon.js +1 -1
  443. package/dist/icons/HierarchyOpenIcon.js +1 -1
  444. package/dist/icons/Icon.js +1 -1
  445. package/dist/icons/InfoCircleIcon.js +1 -1
  446. package/dist/icons/InfoIcon.js +1 -1
  447. package/dist/icons/KeyIcon.js +1 -1
  448. package/dist/icons/LeftIcon.js +1 -1
  449. package/dist/icons/LineChartIcon.js +1 -1
  450. package/dist/icons/LoadingIcon.js +1 -1
  451. package/dist/icons/LockFilledIcon.js +1 -1
  452. package/dist/icons/LockIcon.js +1 -1
  453. package/dist/icons/MoreIcon.js +1 -1
  454. package/dist/icons/NotAllowedIcon.js +1 -1
  455. package/dist/icons/Number123Icon.js +1 -1
  456. package/dist/icons/NumberIcon.js +1 -1
  457. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  458. package/dist/icons/PauseCircleIcon.js +1 -1
  459. package/dist/icons/PauseIcon.js +1 -1
  460. package/dist/icons/PercentageIcon.js +1 -1
  461. package/dist/icons/PieChartIcon.js +1 -1
  462. package/dist/icons/PipetteIcon.js +1 -1
  463. package/dist/icons/PlayCircleIcon.js +1 -1
  464. package/dist/icons/PlayIcon.js +1 -1
  465. package/dist/icons/PlusIcon.js +1 -1
  466. package/dist/icons/ProgressBarIcon.js +1 -1
  467. package/dist/icons/ReloadIcon.js +1 -1
  468. package/dist/icons/ReportIcon.js +1 -1
  469. package/dist/icons/ReturnIcon.js +1 -1
  470. package/dist/icons/RightIcon.js +1 -1
  471. package/dist/icons/RowTotalsIcon.js +1 -1
  472. package/dist/icons/SchemeIcon.js +1 -1
  473. package/dist/icons/SearchIcon.js +1 -1
  474. package/dist/icons/SemanticQueryIcon.js +1 -1
  475. package/dist/icons/SettingsIcon.js +1 -1
  476. package/dist/icons/ShieldFilledIcon.js +1 -1
  477. package/dist/icons/ShieldIcon.js +1 -1
  478. package/dist/icons/SlashIcon.js +1 -1
  479. package/dist/icons/SparklesIcon.js +1 -1
  480. package/dist/icons/SqlIcon.js +1 -1
  481. package/dist/icons/StatsIcon.js +1 -1
  482. package/dist/icons/StopIcon.js +1 -1
  483. package/dist/icons/StringIcon.js +1 -1
  484. package/dist/icons/SubtotalsIcon.js +1 -1
  485. package/dist/icons/SwitchIcon.js +1 -1
  486. package/dist/icons/TableIcon.js +1 -1
  487. package/dist/icons/ThumbsDownIcon.js +1 -1
  488. package/dist/icons/ThumbsUpIcon.js +1 -1
  489. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  490. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  491. package/dist/icons/ThunderboltIcon.js +1 -1
  492. package/dist/icons/TimeIcon.js +1 -1
  493. package/dist/icons/TrashIcon.js +1 -1
  494. package/dist/icons/UnlockIcon.js +1 -1
  495. package/dist/icons/UpIcon.js +1 -1
  496. package/dist/icons/UserGroupIcon.js +1 -1
  497. package/dist/icons/UserIcon.js +1 -1
  498. package/dist/icons/UserLockIcon.js +1 -1
  499. package/dist/icons/ViewIcon.js +1 -1
  500. package/dist/icons/WarningFilledIcon.js +1 -1
  501. package/dist/icons/WarningIcon.js +1 -1
  502. package/dist/icons/wrap-icon.js +1 -1
  503. package/dist/index.d.ts +6 -1
  504. package/dist/index.js +1 -1
  505. package/dist/probe/canonicalize.js +1 -1
  506. package/dist/probe/css.js +1 -1
  507. package/dist/probe/index.js +1 -1
  508. package/dist/provider.js +1 -1
  509. package/dist/providers/TrackingProvider.js +1 -1
  510. package/dist/providers/navigationAdapter.default.js +1 -1
  511. package/dist/tokens/all-tokens.js +1 -1
  512. package/dist/tokens/base.js +1 -1
  513. package/dist/tokens/color-seed.js +1 -1
  514. package/dist/tokens/color-theme.js +1 -1
  515. package/dist/tokens/colors.js +1 -1
  516. package/dist/tokens/layout.js +1 -1
  517. package/dist/tokens/lazy-styles.js +1 -1
  518. package/dist/tokens/legacy-color.js +1 -1
  519. package/dist/tokens/palette-config.js +1 -1
  520. package/dist/tokens/palette.js +1 -1
  521. package/dist/tokens/resolve.js +1 -1
  522. package/dist/tokens/shadows.js +1 -1
  523. package/dist/tokens/sizes.js +1 -1
  524. package/dist/tokens/spacing.js +1 -1
  525. package/dist/tokens/typography.js +1 -1
  526. package/dist/utils/ResizeSensor.js +1 -1
  527. package/dist/utils/colors.js +1 -1
  528. package/dist/utils/dotize.js +1 -1
  529. package/dist/utils/is-dev-env.js +1 -1
  530. package/dist/utils/modules.js +1 -1
  531. package/dist/utils/promise.js +1 -1
  532. package/dist/utils/raf.js +1 -1
  533. package/dist/utils/random.js +1 -1
  534. package/dist/utils/range.js +1 -1
  535. package/dist/utils/react/RenderCache.js +1 -1
  536. package/dist/utils/react/Slots.js +1 -1
  537. package/dist/utils/react/chain.js +1 -1
  538. package/dist/utils/react/disabledProps.js +1 -1
  539. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  540. package/dist/utils/react/index.js +1 -1
  541. package/dist/utils/react/interactions.js +1 -1
  542. package/dist/utils/react/isTextOnly.js +1 -1
  543. package/dist/utils/react/mapProps.js +1 -1
  544. package/dist/utils/react/mergeProps.js +1 -1
  545. package/dist/utils/react/nullableValue.js +1 -1
  546. package/dist/utils/react/resolveIcon.js +1 -1
  547. package/dist/utils/react/sharedStore.js +1 -1
  548. package/dist/utils/react/useBufferedValue.js +1 -1
  549. package/dist/utils/react/useCombinedRefs.js +1 -1
  550. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  551. package/dist/utils/react/useEventBus.js +1 -1
  552. package/dist/utils/react/useId.js +1 -1
  553. package/dist/utils/react/useIsDarwin.js +1 -1
  554. package/dist/utils/react/useKeySymbols.js +1 -1
  555. package/dist/utils/react/useLayoutEffect.js +1 -1
  556. package/dist/utils/react/useLocalStorage.js +1 -1
  557. package/dist/utils/react/useMergeStyles.js +1 -1
  558. package/dist/utils/react/usePopoverSync.js +1 -1
  559. package/dist/utils/react/useQaProps.js +1 -1
  560. package/dist/utils/react/useScheme.js +1 -1
  561. package/dist/utils/react/useViewportSize.js +1 -1
  562. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  563. package/dist/utils/selection.js +1 -1
  564. package/dist/utils/styles.js +1 -1
  565. package/dist/utils/tree.js +1 -1
  566. package/dist/utils/warnings.js +1 -1
  567. package/dist/version.js +2 -2
  568. package/docs/CreateComponent.md +2 -0
  569. package/docs/Usage.md +2 -0
  570. package/docs/components/form/Form.md +31 -0
  571. package/package.json +4 -1
@@ -0,0 +1,115 @@
1
+
2
+ import { FormPath } from "./values.js";
3
+ import { ModernFormBrand } from "../backend.js";
4
+
5
+ //#region src/components/form/Form/modern/types.d.ts
6
+ type FieldStatus = 'unvalidated' | 'validating' | 'valid' | 'invalid';
7
+ interface FieldState<ErrorValue = unknown> {
8
+ readonly name: string;
9
+ readonly value: unknown;
10
+ readonly defaultValue: unknown;
11
+ readonly errors: readonly ErrorValue[];
12
+ readonly status: FieldStatus;
13
+ readonly touched: boolean;
14
+ readonly dirty: boolean;
15
+ readonly active: boolean;
16
+ readonly registrationCount: number;
17
+ readonly validationRevision: number;
18
+ }
19
+ interface FormState<T extends object, ErrorValue = unknown> {
20
+ readonly values: Readonly<Partial<T>>;
21
+ readonly activeValues: Readonly<Partial<T>>;
22
+ readonly defaultValues: Readonly<Partial<T>>;
23
+ readonly fields: Readonly<Record<string, FieldState<ErrorValue>>>;
24
+ readonly dirtyFields: ReadonlySet<string>;
25
+ readonly touchedFields: ReadonlySet<string>;
26
+ readonly isDirty: boolean;
27
+ readonly isTouched: boolean;
28
+ readonly isValid: boolean;
29
+ readonly isInvalid: boolean;
30
+ readonly isValidating: boolean;
31
+ readonly isSubmitting: boolean;
32
+ readonly submitError: unknown;
33
+ readonly revision: number;
34
+ }
35
+ interface RegistrationOptions {
36
+ readonly defaultValue?: unknown;
37
+ readonly preserve?: boolean;
38
+ readonly isEqual?: (a: unknown, b: unknown) => boolean;
39
+ }
40
+ interface RegistrationToken {
41
+ readonly name: string;
42
+ readonly released: boolean;
43
+ update(options: RegistrationOptions): void;
44
+ release(): void;
45
+ }
46
+ interface FormChange {
47
+ readonly names: readonly string[];
48
+ readonly source: 'user' | 'program';
49
+ readonly kind: 'set' | 'reset' | 'adopt' | 'defaults';
50
+ }
51
+ interface SetValueOptions {
52
+ readonly source?: FormChange['source'];
53
+ readonly touch?: boolean;
54
+ readonly notify?: boolean;
55
+ }
56
+ interface FormStoreOptions<T extends object> {
57
+ readonly defaultValues?: Partial<T>;
58
+ readonly onValuesChange?: (values: Readonly<Partial<T>>, change: FormChange) => void | Promise<void>;
59
+ readonly onListenerError?: (error: unknown) => void;
60
+ readonly onDevelopmentError?: (message: string) => void;
61
+ }
62
+ /** State transitions for the later validation pipeline; no rules/timers here. */
63
+ interface ValidationToken<ErrorValue> {
64
+ readonly signal: AbortSignal;
65
+ complete(errors: readonly ErrorValue[]): boolean;
66
+ cancel(): void;
67
+ }
68
+ /** A reset/disposal invalidates the token so a late completion cannot publish. */
69
+ interface SubmissionToken {
70
+ readonly signal: AbortSignal;
71
+ complete(result?: {
72
+ error: unknown;
73
+ }): boolean;
74
+ }
75
+ /** Internal until the React/controller API lands in subsequent phases. */
76
+ interface FormStore<T extends object = Record<string, unknown>, ErrorValue = unknown> extends ModernFormBrand {
77
+ getSnapshot(): FormState<T, ErrorValue>;
78
+ getFieldSnapshot(path: FormPath): FieldState<ErrorValue> | undefined;
79
+ getValue<K extends keyof T & string>(name: K): T[K] | undefined;
80
+ getValue(path: FormPath): unknown;
81
+ getValues(): Readonly<Partial<T>>;
82
+ getActiveValues(): Readonly<Partial<T>>;
83
+ subscribe(listener: () => void): () => void;
84
+ subscribeSelector<Selected>(selector: (state: FormState<T, ErrorValue>) => Selected, listener: (value: Selected, previous: Selected) => void, isEqual?: (a: Selected, b: Selected) => boolean): () => void;
85
+ register(path: FormPath, options?: RegistrationOptions): RegistrationToken;
86
+ setValue(path: FormPath, value: unknown, options?: SetValueOptions): void;
87
+ setValues(values: Partial<T>, options?: SetValueOptions): void;
88
+ /** Synchronous notification transaction; completed writes commit even if fn throws. */
89
+ batch(fn: () => void): void;
90
+ setDefaultValues(values: Partial<T>, options?: {
91
+ currentValues?: 'preserve' | 'replace';
92
+ }): void;
93
+ adoptDefaultValues(values: Partial<T>, options?: {
94
+ when?: 'untouched' | 'clean' | 'always';
95
+ preserveDirty?: boolean;
96
+ }): void;
97
+ reset(options?: {
98
+ values?: Partial<T>;
99
+ }): void;
100
+ touch(path: FormPath, touched?: boolean): void;
101
+ setFieldErrors(path: FormPath, errors: readonly ErrorValue[]): void;
102
+ clearFieldErrors(path: FormPath): void;
103
+ startValidation(path: FormPath): ValidationToken<ErrorValue>;
104
+ startSubmission(): SubmissionToken | undefined;
105
+ setSubmitError(error: unknown): void;
106
+ clearSubmitError(): void;
107
+ dispose(): void;
108
+ readonly debug: {
109
+ listenerCount(): number;
110
+ registrationCount(): number;
111
+ };
112
+ }
113
+ //#endregion
114
+ export { FormChange, FormState, FormStore, FormStoreOptions, SetValueOptions };
115
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,7 @@
1
+
2
+ //#region src/components/form/Form/modern/values.d.ts
3
+ /** A string is a literal field name; tuples explicitly address nested values. */
4
+ type FormPath = string | readonly (string | number)[];
5
+ //#endregion
6
+ export { FormPath };
7
+ //# sourceMappingURL=values.d.ts.map
@@ -0,0 +1,144 @@
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
+ //#region src/components/form/Form/modern/values.ts
3
+ const ownedContainers = /* @__PURE__ */ new WeakSet();
4
+ function freezeContainer(value) {
5
+ ownedContainers.add(value);
6
+ return Object.freeze(value);
7
+ }
8
+ function isPlainObject(value) {
9
+ if (!value || typeof value !== "object") return false;
10
+ const prototype = Object.getPrototypeOf(value);
11
+ return prototype === Object.prototype || prototype === null;
12
+ }
13
+ function isContainer(value) {
14
+ return Array.isArray(value) || isPlainObject(value);
15
+ }
16
+ function enumerableKeys(value) {
17
+ return Reflect.ownKeys(value).filter((key) => Object.prototype.propertyIsEnumerable.call(value, key));
18
+ }
19
+ /** Preserve the special non-enumerable descriptor of an array's length. */
20
+ function defineValue(container, key, value) {
21
+ Object.defineProperty(container, key, Array.isArray(container) && key === "length" ? { value } : {
22
+ value,
23
+ enumerable: true,
24
+ writable: true,
25
+ configurable: true
26
+ });
27
+ }
28
+ function emptyCopy(value) {
29
+ return Array.isArray(value) ? new Array(value.length) : Object.create(Object.getPrototypeOf(value));
30
+ }
31
+ function copyContainer(value) {
32
+ const copy = emptyCopy(value);
33
+ for (const key of enumerableKeys(value)) defineValue(copy, key, Reflect.get(value, key));
34
+ return copy;
35
+ }
36
+ /** The ADR's default dirty comparator: Object.is, then one structural level. */
37
+ function formValueEqual(a, b) {
38
+ if (Object.is(a, b)) return true;
39
+ if (!isContainer(a) || !isContainer(b)) return false;
40
+ if (Array.isArray(a) !== Array.isArray(b)) return false;
41
+ if (Array.isArray(a) && Array.isArray(b) && a.length !== b.length) return false;
42
+ const keys = enumerableKeys(a);
43
+ return keys.length === enumerableKeys(b).length && keys.every((key) => Object.hasOwn(b, key) && Object.is(Reflect.get(a, key), Reflect.get(b, key)));
44
+ }
45
+ function normalizePath(path) {
46
+ const parts = typeof path === "string" ? [path] : path;
47
+ if (!parts.length) throw new Error("A form field path must not be empty.");
48
+ return Object.freeze(Array.from(parts, (part) => {
49
+ if (typeof part !== "string" && (!Number.isSafeInteger(part) || part < 0)) throw new Error("A numeric form path segment must be a non-negative safe integer.");
50
+ const key = String(part);
51
+ if (key === "__proto__" || key === "prototype" || key === "constructor") throw new Error(`Unsafe form path segment: ${key}`);
52
+ return key;
53
+ }));
54
+ }
55
+ /** Escaping keeps literal dotted names distinct from nested tuple paths. */
56
+ function getFieldKey(path) {
57
+ return normalizePath(path).map((part) => part.replace(/\\/g, "\\\\").replace(/\./g, "\\.")).join(".");
58
+ }
59
+ function readPath(root, path) {
60
+ let value = root;
61
+ for (const key of path) {
62
+ if (!isContainer(value) || !Object.hasOwn(value, key)) return void 0;
63
+ value = Reflect.get(value, key);
64
+ }
65
+ return value;
66
+ }
67
+ function hasPath(root, path) {
68
+ const parent = readPath(root, path.slice(0, -1));
69
+ return isContainer(parent) && Object.hasOwn(parent, path[path.length - 1]);
70
+ }
71
+ /** Copy just the ancestor chain. Array deletion leaves indices in place. */
72
+ function writePath(root, path, value, remove = false) {
73
+ function write(current, depth) {
74
+ const key = path[depth];
75
+ const container = isContainer(current) ? current : void 0;
76
+ const exists = !!container && Object.hasOwn(container, key);
77
+ const previous = exists ? Reflect.get(container, key) : void 0;
78
+ if (remove && !exists) return current;
79
+ const last = depth === path.length - 1;
80
+ const next = last ? value : write(previous, depth + 1);
81
+ if (!remove && exists && Object.is(previous, next)) return current;
82
+ if (remove && !last && Object.is(previous, next)) return current;
83
+ if (remove && last && Array.isArray(container) && key === "length") return current;
84
+ const copy = container ? copyContainer(container) : depth > 0 && /^(0|[1-9]\d*)$/.test(key) ? [] : {};
85
+ if (remove && last) Reflect.deleteProperty(copy, key);
86
+ else defineValue(copy, key, next);
87
+ return freezeContainer(copy);
88
+ }
89
+ return write(root, 0);
90
+ }
91
+ /**
92
+ * Own plain data without freezing caller-owned objects. Non-plain values (dates,
93
+ * files, ReactNode errors, etc.) are opaque and must be treated as immutable.
94
+ * Reusing an input reference means reusing its value, just like React state.
95
+ */
96
+ function createValueSnapshotter() {
97
+ const copies = /* @__PURE__ */ new WeakMap();
98
+ function snapshot(value) {
99
+ const pending = /* @__PURE__ */ new WeakMap();
100
+ const entries = [];
101
+ function clone(input) {
102
+ if (!isContainer(input) || ownedContainers.has(input)) return input;
103
+ if (copies.has(input)) return copies.get(input);
104
+ if (pending.has(input)) return pending.get(input);
105
+ const copy = emptyCopy(input);
106
+ pending.set(input, copy);
107
+ entries.push([input, copy]);
108
+ for (const key of enumerableKeys(input)) defineValue(copy, key, clone(Reflect.get(input, key)));
109
+ return copy;
110
+ }
111
+ const result = clone(value);
112
+ for (const [input, copy] of entries) {
113
+ freezeContainer(copy);
114
+ copies.set(input, copy);
115
+ }
116
+ return result;
117
+ }
118
+ return snapshot;
119
+ }
120
+ /** Object.freeze(new Set()) still permits add/delete. Hide the writable set. */
121
+ function readonlySet(values) {
122
+ const set = new Set(values);
123
+ const view = Object.freeze({
124
+ get size() {
125
+ return set.size;
126
+ },
127
+ has: (value) => set.has(value),
128
+ entries: () => set.entries(),
129
+ keys: () => set.keys(),
130
+ values: () => set.values(),
131
+ [Symbol.iterator]: () => set[Symbol.iterator](),
132
+ forEach: (callback, thisArg) => {
133
+ set.forEach((value) => callback.call(thisArg, value, value, view));
134
+ }
135
+ });
136
+ return view;
137
+ }
138
+ function sameMembers(a, b) {
139
+ return a.size === b.size && Array.from(a).every((value) => b.has(value));
140
+ }
141
+
142
+ //#endregion
143
+ export { createValueSnapshotter, defineValue, formValueEqual, freezeContainer, getFieldKey, hasPath, isPlainObject, normalizePath, readPath, readonlySet, sameMembers, writePath };
144
+ //# sourceMappingURL=values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.js","names":[],"sources":["../../../../../src/components/form/Form/modern/values.ts"],"sourcesContent":["/** A string is a literal field name; tuples explicitly address nested values. */\nexport type FormPath = string | readonly (string | number)[];\n\ntype Container = Record<string, unknown> | unknown[];\n\n// Path copies and ingress copies share ownership, including across stores.\n// A WeakSet does not keep old snapshots alive after subscribers release them.\nconst ownedContainers = new WeakSet<object>();\n\nexport function freezeContainer<T extends object>(value: T): T {\n ownedContainers.add(value);\n return Object.freeze(value);\n}\n\nexport function isPlainObject(\n value: unknown,\n): value is Record<string, unknown> {\n if (!value || typeof value !== 'object') return false;\n const prototype = Object.getPrototypeOf(value);\n return prototype === Object.prototype || prototype === null;\n}\n\nfunction isContainer(value: unknown): value is Container {\n return Array.isArray(value) || isPlainObject(value);\n}\n\nfunction enumerableKeys(value: object): (string | symbol)[] {\n return Reflect.ownKeys(value).filter((key) =>\n Object.prototype.propertyIsEnumerable.call(value, key),\n );\n}\n\n/** Preserve the special non-enumerable descriptor of an array's length. */\nexport function defineValue(\n container: object,\n key: PropertyKey,\n value: unknown,\n) {\n Object.defineProperty(\n container,\n key,\n Array.isArray(container) && key === 'length'\n ? { value }\n : { value, enumerable: true, writable: true, configurable: true },\n );\n}\n\nfunction emptyCopy(value: Container): Container {\n return Array.isArray(value)\n ? new Array(value.length)\n : Object.create(Object.getPrototypeOf(value));\n}\n\nfunction copyContainer(value: Container): Container {\n const copy = emptyCopy(value);\n for (const key of enumerableKeys(value))\n defineValue(copy, key, Reflect.get(value, key));\n return copy;\n}\n\n/** The ADR's default dirty comparator: Object.is, then one structural level. */\nexport function formValueEqual(a: unknown, b: unknown): boolean {\n if (Object.is(a, b)) return true;\n if (!isContainer(a) || !isContainer(b)) return false;\n if (Array.isArray(a) !== Array.isArray(b)) return false;\n if (Array.isArray(a) && Array.isArray(b) && a.length !== b.length)\n return false;\n const keys = enumerableKeys(a);\n return (\n keys.length === enumerableKeys(b).length &&\n keys.every(\n (key) =>\n Object.hasOwn(b, key) &&\n Object.is(Reflect.get(a, key), Reflect.get(b, key)),\n )\n );\n}\n\nexport function normalizePath(path: FormPath): readonly string[] {\n const parts = typeof path === 'string' ? [path] : path;\n if (!parts.length) throw new Error('A form field path must not be empty.');\n return Object.freeze(\n Array.from(parts, (part) => {\n if (\n typeof part !== 'string' &&\n (!Number.isSafeInteger(part) || part < 0)\n ) {\n throw new Error(\n 'A numeric form path segment must be a non-negative safe integer.',\n );\n }\n const key = String(part);\n if (key === '__proto__' || key === 'prototype' || key === 'constructor') {\n throw new Error(`Unsafe form path segment: ${key}`);\n }\n return key;\n }),\n );\n}\n\n/** Escaping keeps literal dotted names distinct from nested tuple paths. */\nexport function getFieldKey(path: FormPath): string {\n return normalizePath(path)\n .map((part) => part.replace(/\\\\/g, '\\\\\\\\').replace(/\\./g, '\\\\.'))\n .join('.');\n}\n\nexport function readPath(root: unknown, path: readonly string[]): unknown {\n let value = root;\n for (const key of path) {\n if (!isContainer(value) || !Object.hasOwn(value, key)) return undefined;\n value = Reflect.get(value, key);\n }\n return value;\n}\n\nexport function hasPath(root: unknown, path: readonly string[]): boolean {\n const parent = readPath(root, path.slice(0, -1));\n return isContainer(parent) && Object.hasOwn(parent, path[path.length - 1]);\n}\n\n/** Copy just the ancestor chain. Array deletion leaves indices in place. */\nexport function writePath(\n root: object,\n path: readonly string[],\n value: unknown,\n remove = false,\n): object {\n function write(current: unknown, depth: number): unknown {\n const key = path[depth];\n const container = isContainer(current) ? current : undefined;\n const exists = !!container && Object.hasOwn(container, key);\n const previous = exists ? Reflect.get(container!, key) : undefined;\n if (remove && !exists) return current;\n const last = depth === path.length - 1;\n const next = last ? value : write(previous, depth + 1);\n if (!remove && exists && Object.is(previous, next)) return current;\n if (remove && !last && Object.is(previous, next)) return current;\n // Array length cannot be removed, even for preserve:false registrations.\n if (remove && last && Array.isArray(container) && key === 'length')\n return current;\n const copy: Container = container\n ? copyContainer(container)\n : depth > 0 && /^(0|[1-9]\\d*)$/.test(key)\n ? []\n : {};\n if (remove && last) Reflect.deleteProperty(copy, key);\n else defineValue(copy, key, next);\n return freezeContainer(copy);\n }\n return write(root, 0) as object;\n}\n\n/**\n * Own plain data without freezing caller-owned objects. Non-plain values (dates,\n * files, ReactNode errors, etc.) are opaque and must be treated as immutable.\n * Reusing an input reference means reusing its value, just like React state.\n */\nexport function createValueSnapshotter() {\n const copies = new WeakMap<object, unknown>();\n function snapshot<T>(value: T): T {\n // Commit the ownership cache only after the entire graph copied. A throwing\n // getter must not leave an incomplete, mutable snapshot cached for a retry.\n const pending = new WeakMap<object, object>();\n const entries: [object, object][] = [];\n function clone(input: unknown): unknown {\n if (!isContainer(input) || ownedContainers.has(input)) return input;\n if (copies.has(input)) return copies.get(input);\n if (pending.has(input)) return pending.get(input);\n const copy = emptyCopy(input);\n pending.set(input, copy);\n entries.push([input, copy]);\n for (const key of enumerableKeys(input)) {\n defineValue(copy, key, clone(Reflect.get(input, key)));\n }\n return copy;\n }\n const result = clone(value);\n for (const [input, copy] of entries) {\n freezeContainer(copy);\n copies.set(input, copy);\n }\n return result as T;\n }\n return snapshot;\n}\n\n/** Object.freeze(new Set()) still permits add/delete. Hide the writable set. */\nexport function readonlySet<T>(values: Iterable<T>): ReadonlySet<T> {\n const set = new Set(values);\n const view: ReadonlySet<T> = Object.freeze({\n get size() {\n return set.size;\n },\n has: (value: T) => set.has(value),\n entries: () => set.entries(),\n keys: () => set.keys(),\n values: () => set.values(),\n [Symbol.iterator]: () => set[Symbol.iterator](),\n forEach: (\n callback: (value: T, key: T, set: ReadonlySet<T>) => void,\n thisArg?: unknown,\n ) => {\n set.forEach((value) => callback.call(thisArg, value, value, view));\n },\n });\n return view;\n}\n\nexport function sameMembers<T>(a: ReadonlySet<T>, b: ReadonlySet<T>): boolean {\n return a.size === b.size && Array.from(a).every((value) => b.has(value));\n}\n"],"mappings":";;AAOA,MAAM,kCAAkB,IAAI,SAAiB;AAE7C,SAAgB,gBAAkC,OAAa;AAC7D,iBAAgB,IAAI,MAAM;AAC1B,QAAO,OAAO,OAAO,MAAM;;AAG7B,SAAgB,cACd,OACkC;AAClC,KAAI,CAAC,SAAS,OAAO,UAAU,SAAU,QAAO;CAChD,MAAM,YAAY,OAAO,eAAe,MAAM;AAC9C,QAAO,cAAc,OAAO,aAAa,cAAc;;AAGzD,SAAS,YAAY,OAAoC;AACvD,QAAO,MAAM,QAAQ,MAAM,IAAI,cAAc,MAAM;;AAGrD,SAAS,eAAe,OAAoC;AAC1D,QAAO,QAAQ,QAAQ,MAAM,CAAC,QAAQ,QACpC,OAAO,UAAU,qBAAqB,KAAK,OAAO,IAAI,CACvD;;;AAIH,SAAgB,YACd,WACA,KACA,OACA;AACA,QAAO,eACL,WACA,KACA,MAAM,QAAQ,UAAU,IAAI,QAAQ,WAChC,EAAE,OAAO,GACT;EAAE;EAAO,YAAY;EAAM,UAAU;EAAM,cAAc;EAAM,CACpE;;AAGH,SAAS,UAAU,OAA6B;AAC9C,QAAO,MAAM,QAAQ,MAAM,GACvB,IAAI,MAAM,MAAM,OAAO,GACvB,OAAO,OAAO,OAAO,eAAe,MAAM,CAAC;;AAGjD,SAAS,cAAc,OAA6B;CAClD,MAAM,OAAO,UAAU,MAAM;AAC7B,MAAK,MAAM,OAAO,eAAe,MAAM,CACrC,aAAY,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC;AACjD,QAAO;;;AAIT,SAAgB,eAAe,GAAY,GAAqB;AAC9D,KAAI,OAAO,GAAG,GAAG,EAAE,CAAE,QAAO;AAC5B,KAAI,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAE,QAAO;AAC/C,KAAI,MAAM,QAAQ,EAAE,KAAK,MAAM,QAAQ,EAAE,CAAE,QAAO;AAClD,KAAI,MAAM,QAAQ,EAAE,IAAI,MAAM,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OACzD,QAAO;CACT,MAAM,OAAO,eAAe,EAAE;AAC9B,QACE,KAAK,WAAW,eAAe,EAAE,CAAC,UAClC,KAAK,OACF,QACC,OAAO,OAAO,GAAG,IAAI,IACrB,OAAO,GAAG,QAAQ,IAAI,GAAG,IAAI,EAAE,QAAQ,IAAI,GAAG,IAAI,CAAC,CACtD;;AAIL,SAAgB,cAAc,MAAmC;CAC/D,MAAM,QAAQ,OAAO,SAAS,WAAW,CAAC,KAAK,GAAG;AAClD,KAAI,CAAC,MAAM,OAAQ,OAAM,IAAI,MAAM,uCAAuC;AAC1E,QAAO,OAAO,OACZ,MAAM,KAAK,QAAQ,SAAS;AAC1B,MACE,OAAO,SAAS,aACf,CAAC,OAAO,cAAc,KAAK,IAAI,OAAO,GAEvC,OAAM,IAAI,MACR,mEACD;EAEH,MAAM,MAAM,OAAO,KAAK;AACxB,MAAI,QAAQ,eAAe,QAAQ,eAAe,QAAQ,cACxD,OAAM,IAAI,MAAM,6BAA6B,MAAM;AAErD,SAAO;GACP,CACH;;;AAIH,SAAgB,YAAY,MAAwB;AAClD,QAAO,cAAc,KAAK,CACvB,KAAK,SAAS,KAAK,QAAQ,OAAO,OAAO,CAAC,QAAQ,OAAO,MAAM,CAAC,CAChE,KAAK,IAAI;;AAGd,SAAgB,SAAS,MAAe,MAAkC;CACxE,IAAI,QAAQ;AACZ,MAAK,MAAM,OAAO,MAAM;AACtB,MAAI,CAAC,YAAY,MAAM,IAAI,CAAC,OAAO,OAAO,OAAO,IAAI,CAAE,QAAO;AAC9D,UAAQ,QAAQ,IAAI,OAAO,IAAI;;AAEjC,QAAO;;AAGT,SAAgB,QAAQ,MAAe,MAAkC;CACvE,MAAM,SAAS,SAAS,MAAM,KAAK,MAAM,GAAG,GAAG,CAAC;AAChD,QAAO,YAAY,OAAO,IAAI,OAAO,OAAO,QAAQ,KAAK,KAAK,SAAS,GAAG;;;AAI5E,SAAgB,UACd,MACA,MACA,OACA,SAAS,OACD;CACR,SAAS,MAAM,SAAkB,OAAwB;EACvD,MAAM,MAAM,KAAK;EACjB,MAAM,YAAY,YAAY,QAAQ,GAAG,UAAU;EACnD,MAAM,SAAS,CAAC,CAAC,aAAa,OAAO,OAAO,WAAW,IAAI;EAC3D,MAAM,WAAW,SAAS,QAAQ,IAAI,WAAY,IAAI,GAAG;AACzD,MAAI,UAAU,CAAC,OAAQ,QAAO;EAC9B,MAAM,OAAO,UAAU,KAAK,SAAS;EACrC,MAAM,OAAO,OAAO,QAAQ,MAAM,UAAU,QAAQ,EAAE;AACtD,MAAI,CAAC,UAAU,UAAU,OAAO,GAAG,UAAU,KAAK,CAAE,QAAO;AAC3D,MAAI,UAAU,CAAC,QAAQ,OAAO,GAAG,UAAU,KAAK,CAAE,QAAO;AAEzD,MAAI,UAAU,QAAQ,MAAM,QAAQ,UAAU,IAAI,QAAQ,SACxD,QAAO;EACT,MAAM,OAAkB,YACpB,cAAc,UAAU,GACxB,QAAQ,KAAK,iBAAiB,KAAK,IAAI,GACrC,EAAE,GACF,EAAE;AACR,MAAI,UAAU,KAAM,SAAQ,eAAe,MAAM,IAAI;MAChD,aAAY,MAAM,KAAK,KAAK;AACjC,SAAO,gBAAgB,KAAK;;AAE9B,QAAO,MAAM,MAAM,EAAE;;;;;;;AAQvB,SAAgB,yBAAyB;CACvC,MAAM,yBAAS,IAAI,SAA0B;CAC7C,SAAS,SAAY,OAAa;EAGhC,MAAM,0BAAU,IAAI,SAAyB;EAC7C,MAAM,UAA8B,EAAE;EACtC,SAAS,MAAM,OAAyB;AACtC,OAAI,CAAC,YAAY,MAAM,IAAI,gBAAgB,IAAI,MAAM,CAAE,QAAO;AAC9D,OAAI,OAAO,IAAI,MAAM,CAAE,QAAO,OAAO,IAAI,MAAM;AAC/C,OAAI,QAAQ,IAAI,MAAM,CAAE,QAAO,QAAQ,IAAI,MAAM;GACjD,MAAM,OAAO,UAAU,MAAM;AAC7B,WAAQ,IAAI,OAAO,KAAK;AACxB,WAAQ,KAAK,CAAC,OAAO,KAAK,CAAC;AAC3B,QAAK,MAAM,OAAO,eAAe,MAAM,CACrC,aAAY,MAAM,KAAK,MAAM,QAAQ,IAAI,OAAO,IAAI,CAAC,CAAC;AAExD,UAAO;;EAET,MAAM,SAAS,MAAM,MAAM;AAC3B,OAAK,MAAM,CAAC,OAAO,SAAS,SAAS;AACnC,mBAAgB,KAAK;AACrB,UAAO,IAAI,OAAO,KAAK;;AAEzB,SAAO;;AAET,QAAO;;;AAIT,SAAgB,YAAe,QAAqC;CAClE,MAAM,MAAM,IAAI,IAAI,OAAO;CAC3B,MAAM,OAAuB,OAAO,OAAO;EACzC,IAAI,OAAO;AACT,UAAO,IAAI;;EAEb,MAAM,UAAa,IAAI,IAAI,MAAM;EACjC,eAAe,IAAI,SAAS;EAC5B,YAAY,IAAI,MAAM;EACtB,cAAc,IAAI,QAAQ;GACzB,OAAO,iBAAiB,IAAI,OAAO,WAAW;EAC/C,UACE,UACA,YACG;AACH,OAAI,SAAS,UAAU,SAAS,KAAK,SAAS,OAAO,OAAO,KAAK,CAAC;;EAErE,CAAC;AACF,QAAO;;AAGT,SAAgB,YAAe,GAAmB,GAA4B;AAC5E,QAAO,EAAE,SAAS,EAAE,QAAQ,MAAM,KAAK,EAAE,CAAC,OAAO,UAAU,EAAE,IAAI,MAAM,CAAC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../../utils/react/useLayoutEffect.js";
3
3
  import { useEvent } from "../../../../_internal/hooks/use-event.js";
4
4
  import { useIsFirstRender } from "../../../../_internal/hooks/use-is-first-render.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { FORM_BACKEND, isModernFormController, modernBackendUnavailableError } from "./backend.js";
3
3
  import { dotizeConvert } from "../../../utils/dotize.js";
4
4
  import { applyRules } from "./validation.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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,11 +1,16 @@
1
1
 
2
2
  import { FieldTypes, Fields } from "./Form/types.js";
3
+ import { FormPath } from "./Form/modern/values.js";
4
+ import { FormChange, SetValueOptions } from "./Form/modern/types.js";
5
+ import { FormController, ModernFormState, UseFormControllerOptions } from "./Form/modern/controller.js";
3
6
  import { CubeFormInstance, useForm } from "./Form/use-form.js";
7
+ import { ModernFormProps } from "./Form/ModernFormRoot.js";
4
8
  import { CubeFormProps, FormContext, FormScopeMask, useFormProps } from "./Form/Form.js";
5
9
  import { CubeSubmitButtonProps, _SubmitButton } from "./Form/SubmitButton/SubmitButton.js";
6
10
  import { CubeResetButtonProps, _ResetButton } from "./Form/ResetButton/ResetButton.js";
7
11
  import { CubeAlertProps } from "../content/Alert/types.js";
8
12
  import { Field } from "./Form/Field.js";
13
+ import { FormSelectorOptions, FormSubscribeProps } from "./Form/modern/react.js";
9
14
  import { _SubmitError } from "./Form/SubmitError.js";
10
15
  import { FieldReturnValue, UseFieldProps } from "./Form/use-field/types.js";
11
16
  import { UseFieldParams, useField } from "./Form/use-field/use-field.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { BoardDragActiveProvider, BoardRegistryContext } from "./board-context.js";
3
3
  import { useBoardRegistry } from "./use-board-registry.js";
4
4
  import { tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { getCompactor } from "./grid-core/compactors.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
4
4
  import { useBoardRegistry } from "./board-context.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { isDevEnv } from "../../../utils/is-dev-env.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/board-store.ts
3
3
  /**
4
4
  * A tiny external store mapping widget id -> registration.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/grid-core/calculate.ts
3
3
  /** Calculate the width of a single grid column in pixels. */
4
4
  function calcGridColWidth(positionParams) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/grid-core/collision-modes.ts
3
3
  /** Whether a single grid cell is free of every item in `others`. */
4
4
  function cellFree(others, x, y) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/grid-core/collision.ts
3
3
  /**
4
4
  * Check if two layout items collide (overlap).
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { collides, getFirstCollision } from "./collision.js";
3
3
  import { sortLayoutItemsByColRow, sortLayoutItemsByRowCol } from "./sort.js";
4
4
  import { bottom, cloneLayout, cloneLayoutItem, getStatics } from "./layout.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/grid-core/constraints.ts
3
3
  function clamp(value, min, max) {
4
4
  return Math.max(min, Math.min(max, value));
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { collides, getFirstCollision } from "./collision.js";
3
3
  import { sortLayoutItemsByColRow, sortLayoutItemsByRowCol } from "./sort.js";
4
4
  import { bottom, cloneLayout, cloneLayoutItem, getStatics } from "./layout.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { getAllCollisions, getFirstCollision } from "./collision.js";
3
3
  import { sortLayoutItems } from "./sort.js";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { collides } from "./collision.js";
3
3
 
4
4
  //#region src/components/layout/Board/grid-core/placement.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  //#region src/components/layout/Board/grid-core/sort.ts
3
3
  /**
4
4
  * Sort layout items based on the compaction type.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { BoardDragActiveProvider } from "./board-context.js";
3
3
  import { distributeEvenly, placeInFreeSlot } from "./grid-core/placement.js";
4
4
  import { getCompactor, horizontalCompactor, noCompactor, verticalCompactor } from "./grid-core/compactors.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { cloneLayout, correctBounds } from "./grid-core/layout.js";
3
3
 
4
4
  //#region src/components/layout/Board/responsive-utils.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { cloneLayout } from "./grid-core/layout.js";
4
4
  import { useCallback, useEffect, useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { BoardWidgetStore } from "./board-store.js";
4
4
  import { collides } from "./grid-core/collision.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useIsDarwin } from "../../../utils/react/useIsDarwin.js";
3
3
 
4
4
  //#region src/components/layout/Board/use-board-select-modifier-key.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { useEffect, useMemo, useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { BASE_STYLES, BLOCK_STYLES, COLOR_STYLES, DIMENSION_STYLES, OUTER_STYLES, tasty } from "@tenphi/tasty";
3
3
  import { forwardRef, useMemo } from "react";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { useLayoutEffect as useLayoutEffect$1 } from "../../utils/react/useLayoutEffect.js";
4
4
  import { useCombinedRefs } from "../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } 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.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-b59dbf7 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-23d9994 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { useCombinedRefs } from "../../utils/react/useCombinedRefs.js";
4
4
  import { CONTAINER_STYLES, filterBaseProps, parseStyle, tasty } from "@tenphi/tasty";