@cube-dev/ui-kit 0.0.0-canary-266381a → 0.0.0-canary-367446a

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 (583) 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/MenuCollectionItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuItem.js +1 -1
  31. package/dist/components/actions/Menu/MenuSection.js +1 -1
  32. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  34. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  35. package/dist/components/actions/Menu/context.js +1 -1
  36. package/dist/components/actions/Menu/styled.js +1 -1
  37. package/dist/components/actions/actions-run.js +1 -1
  38. package/dist/components/actions/index.js +1 -1
  39. package/dist/components/actions/use-action.js +1 -1
  40. package/dist/components/actions/use-anchored-menu.js +1 -1
  41. package/dist/components/actions/use-context-menu.js +1 -1
  42. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  43. package/dist/components/content/Alert/Alert.js +1 -1
  44. package/dist/components/content/Alert/use-alert.js +1 -1
  45. package/dist/components/content/Avatar/Avatar.js +1 -1
  46. package/dist/components/content/Badge/Badge.js +1 -1
  47. package/dist/components/content/Card/Card.js +1 -1
  48. package/dist/components/content/Content.js +1 -1
  49. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  50. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  51. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  52. package/dist/components/content/Divider.js +1 -1
  53. package/dist/components/content/Footer.js +1 -1
  54. package/dist/components/content/Header.js +1 -1
  55. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  56. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  57. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  58. package/dist/components/content/Item/Item.js +1 -1
  59. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  60. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  61. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  62. package/dist/components/content/Layout/GridLayout.js +1 -1
  63. package/dist/components/content/Layout/Layout.js +1 -1
  64. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  65. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  66. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  67. package/dist/components/content/Layout/LayoutContent.js +1 -1
  68. package/dist/components/content/Layout/LayoutContext.js +1 -1
  69. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  70. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  71. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  72. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  73. package/dist/components/content/Layout/LayoutPane.js +1 -1
  74. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  75. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  76. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  77. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  78. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  79. package/dist/components/content/Layout/index.js +1 -1
  80. package/dist/components/content/Layout/utils.js +1 -1
  81. package/dist/components/content/Paragraph.js +1 -1
  82. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  83. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  84. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  85. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  86. package/dist/components/content/Result/Result.js +1 -1
  87. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  88. package/dist/components/content/Tag/Tag.js +1 -1
  89. package/dist/components/content/Text.js +1 -1
  90. package/dist/components/content/TextItem/TextItem.js +1 -1
  91. package/dist/components/content/Title.js +1 -1
  92. package/dist/components/content/Tree/Tree.js +1 -1
  93. package/dist/components/content/Tree/TreeNode.js +1 -1
  94. package/dist/components/content/Tree/styled.js +1 -1
  95. package/dist/components/content/Tree/tree-index.js +1 -1
  96. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  97. package/dist/components/content/Tree/use-load-data.js +1 -1
  98. package/dist/components/content/highlightText.js +1 -1
  99. package/dist/components/content/use-auto-tooltip.js +1 -1
  100. package/dist/components/data/DataTable/DataTable.js +1 -1
  101. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  102. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  103. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  104. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  105. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  106. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  107. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  108. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  109. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  110. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  111. package/dist/components/data/ItemTable/use-item-table-tree-model.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/TreeGridTable.js +1 -1
  118. package/dist/components/data/TableBase/column-header.js +1 -1
  119. package/dist/components/data/TableBase/column-menu.js +1 -1
  120. package/dist/components/data/TableBase/column-styles.js +1 -1
  121. package/dist/components/data/TableBase/column-tint.js +1 -1
  122. package/dist/components/data/TableBase/row-menu.js +1 -1
  123. package/dist/components/data/TableBase/styled.js +1 -1
  124. package/dist/components/data/TableBase/table-tree.js +1 -1
  125. package/dist/components/data/TableBase/types.js +1 -1
  126. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  127. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  128. package/dist/components/data/TableBase/use-column-order.js +1 -1
  129. package/dist/components/data/TableBase/use-column-window.js +1 -1
  130. package/dist/components/data/TableBase/use-container-width.js +1 -1
  131. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  132. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  133. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  134. package/dist/components/data/TableBase/use-table-search.js +1 -1
  135. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  136. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  137. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  138. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  139. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  140. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  141. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  142. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  143. package/dist/components/fields/Checkbox/context.js +1 -1
  144. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  145. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  146. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  147. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  148. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  149. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  150. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  151. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  152. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  153. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  154. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  155. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  156. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  157. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  158. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  159. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  160. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  161. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  162. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  163. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  164. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  165. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  166. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  167. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  168. package/dist/components/fields/DatePicker/period.js +1 -1
  169. package/dist/components/fields/DatePicker/props.js +1 -1
  170. package/dist/components/fields/DatePicker/utils.js +1 -1
  171. package/dist/components/fields/FileInput/FileInput.js +1 -1
  172. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  173. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  174. package/dist/components/fields/Input/Input.js +1 -1
  175. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  176. package/dist/components/fields/ListBox/ListBox.js +1 -1
  177. package/dist/components/fields/ListBox/optionId.js +1 -1
  178. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  179. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  180. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  181. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  182. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  183. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  184. package/dist/components/fields/Picker/Picker.js +1 -1
  185. package/dist/components/fields/RadioGroup/Radio.d.ts +4 -4
  186. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  187. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  188. package/dist/components/fields/RadioGroup/context.js +1 -1
  189. package/dist/components/fields/SearchComboBox/SearchComboBox.js +2 -2
  190. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  191. package/dist/components/fields/SearchInput/SearchInput.js +2 -2
  192. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  193. package/dist/components/fields/Select/Select.js +1 -1
  194. package/dist/components/fields/Slider/Gradation.js +1 -1
  195. package/dist/components/fields/Slider/HueSlider.js +1 -1
  196. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  197. package/dist/components/fields/Slider/Slider.js +1 -1
  198. package/dist/components/fields/Slider/SliderBase.js +1 -1
  199. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  200. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  201. package/dist/components/fields/Slider/elements.js +1 -1
  202. package/dist/components/fields/Slider/index.js +1 -1
  203. package/dist/components/fields/Switch/Switch.js +1 -1
  204. package/dist/components/fields/TagInput/TagInput.js +335 -329
  205. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  206. package/dist/components/fields/TagInput/TagList.js +1 -1
  207. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  208. package/dist/components/fields/TagInput/useTagError.js +1 -1
  209. package/dist/components/fields/TextArea/TextArea.js +1 -1
  210. package/dist/components/fields/TextInput/TextInput.js +1 -1
  211. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  212. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  213. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  214. package/dist/components/fields/TriggerActions.js +1 -1
  215. package/dist/components/fields/color/ColorPanel.js +1 -1
  216. package/dist/components/fields/color/channels.js +1 -1
  217. package/dist/components/fields/color/color.js +1 -1
  218. package/dist/components/fields/color/context.js +1 -1
  219. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  220. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  221. package/dist/components/form/Form/Field.js +1 -1
  222. package/dist/components/form/Form/Form.js +1 -1
  223. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  224. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  225. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  226. package/dist/components/form/Form/SubmitError.js +1 -1
  227. package/dist/components/form/Form/backend.js +1 -1
  228. package/dist/components/form/Form/index.js +1 -1
  229. package/dist/components/form/Form/modern/actions.js +1 -1
  230. package/dist/components/form/Form/modern/context.js +1 -1
  231. package/dist/components/form/Form/modern/controller.js +1 -1
  232. package/dist/components/form/Form/modern/field-binding.js +1 -1
  233. package/dist/components/form/Form/modern/field.js +1 -1
  234. package/dist/components/form/Form/modern/react.js +1 -1
  235. package/dist/components/form/Form/modern/store.js +1 -1
  236. package/dist/components/form/Form/modern/validation.js +1 -1
  237. package/dist/components/form/Form/modern/values.js +1 -1
  238. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  239. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  240. package/dist/components/form/Form/use-field/use-field-props.js +26 -22
  241. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  242. package/dist/components/form/Form/use-field/use-field.js +1 -1
  243. package/dist/components/form/Form/use-form.js +1 -1
  244. package/dist/components/form/Form/validation.js +1 -1
  245. package/dist/components/form/Label.js +1 -1
  246. package/dist/components/form/field-chrome.js +30 -10
  247. package/dist/components/form/field-chrome.js.map +1 -1
  248. package/dist/components/form/index.d.ts +1 -1
  249. package/dist/components/form/legacy-tooltip.js +1 -1
  250. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  251. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  252. package/dist/components/form/validation/use-validation-props.js +1 -1
  253. package/dist/components/form/wrapper.d.ts +15 -4
  254. package/dist/components/form/wrapper.js +16 -6
  255. package/dist/components/form/wrapper.js.map +1 -1
  256. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  257. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  258. package/dist/components/layout/Flex.js +1 -1
  259. package/dist/components/layout/Flow.js +1 -1
  260. package/dist/components/layout/Grid.js +1 -1
  261. package/dist/components/layout/Panel.js +1 -1
  262. package/dist/components/layout/Prefix.js +1 -1
  263. package/dist/components/layout/ResizablePanel.js +1 -1
  264. package/dist/components/layout/Space.js +1 -1
  265. package/dist/components/layout/Suffix.js +1 -1
  266. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  267. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  268. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  269. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  270. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  271. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  272. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  273. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  274. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  275. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  276. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  277. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  278. package/dist/components/navigation/Tabs/styled.js +1 -1
  279. package/dist/components/navigation/Tabs/types.js +1 -1
  280. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  281. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  282. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  283. package/dist/components/other/Calendar/Calendar.js +1 -1
  284. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  285. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  286. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  287. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  288. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  289. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  290. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  291. package/dist/components/other/Calendar/styled.js +1 -1
  292. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  293. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  294. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  295. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +15 -4
  296. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +83 -14
  297. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  298. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  299. package/dist/components/overlays/AlertDialog/types.d.ts +2 -1
  300. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  301. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  302. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  303. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  304. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  305. package/dist/components/overlays/Dialog/context.js +1 -1
  306. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  307. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  308. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  309. package/dist/components/overlays/Modal/Modal.js +1 -1
  310. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  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/modal-containment.js +1 -1
  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.js +1 -1
  320. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  321. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  322. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  323. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  324. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  325. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  326. package/dist/components/overlays/Notifications/index.js +1 -1
  327. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  328. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  329. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  330. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  331. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  332. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  333. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  334. package/dist/components/overlays/Toast/index.js +1 -1
  335. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  336. package/dist/components/overlays/Toast/useToast.js +1 -1
  337. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  338. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  339. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  340. package/dist/components/overlays/Tooltip/context.js +1 -1
  341. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  342. package/dist/components/portal/Portal.js +1 -1
  343. package/dist/components/portal/PortalProvider.js +1 -1
  344. package/dist/components/portal/usePortal.js +1 -1
  345. package/dist/components/shared/DraggableCollection.js +1 -1
  346. package/dist/components/shared/InvalidIcon.js +1 -1
  347. package/dist/components/shared/ValidIcon.js +1 -1
  348. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  349. package/dist/components/status/Spin/Cube.js +1 -1
  350. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  351. package/dist/components/status/Spin/Spin.js +1 -1
  352. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  353. package/dist/data/item-themes.js +1 -1
  354. package/dist/data/themes.js +1 -1
  355. package/dist/eslint-plugin/defaults.generated.js +1 -1
  356. package/dist/eslint-plugin/index.js +1 -1
  357. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  358. package/dist/i18n/I18nProvider.js +1 -1
  359. package/dist/i18n/createFormatter.js +1 -1
  360. package/dist/i18n/index.js +1 -1
  361. package/dist/i18n/instance.js +1 -1
  362. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  363. package/dist/i18n/locales/en-US/uikit.js +1 -1
  364. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  365. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  366. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  367. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  368. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  369. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  370. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  371. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  372. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  373. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  374. package/dist/i18n/locales.js +1 -1
  375. package/dist/i18n/namespace.js +1 -1
  376. package/dist/i18n/useFormatter.js +1 -1
  377. package/dist/i18n/useI18n.js +1 -1
  378. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  379. package/dist/icons/AdjustmentsIcon.js +1 -1
  380. package/dist/icons/AiIcon.js +1 -1
  381. package/dist/icons/AreaChartIcon.js +1 -1
  382. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  383. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  384. package/dist/icons/BackwardIcon.js +1 -1
  385. package/dist/icons/BarChartIcon.js +1 -1
  386. package/dist/icons/BellFilledIcon.js +1 -1
  387. package/dist/icons/BellIcon.js +1 -1
  388. package/dist/icons/BooleanIcon.js +1 -1
  389. package/dist/icons/CalendarEditIcon.js +1 -1
  390. package/dist/icons/CalendarIcon.js +1 -1
  391. package/dist/icons/CaretDownIcon.js +1 -1
  392. package/dist/icons/CaretUpIcon.js +1 -1
  393. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  394. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  395. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  396. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  397. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  398. package/dist/icons/ChartBarLineIcon.js +1 -1
  399. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  400. package/dist/icons/ChartBarStackedIcon.js +1 -1
  401. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  402. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  403. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  404. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  405. package/dist/icons/ChartBubbleIcon.js +1 -1
  406. package/dist/icons/ChartDonut2Icon.js +1 -1
  407. package/dist/icons/ChartFunnelIcon.js +1 -1
  408. package/dist/icons/ChartHeatmapIcon.js +1 -1
  409. package/dist/icons/ChartKPIIcon.js +1 -1
  410. package/dist/icons/ChartPie2Icon.js +1 -1
  411. package/dist/icons/ChartScatterIcon.js +1 -1
  412. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  413. package/dist/icons/CheckCircleIcon.js +1 -1
  414. package/dist/icons/CheckIcon.js +1 -1
  415. package/dist/icons/CircleFilledIcon.js +1 -1
  416. package/dist/icons/ClearIcon.js +1 -1
  417. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  418. package/dist/icons/CloseCircleIcon.js +1 -1
  419. package/dist/icons/CloseIcon.js +1 -1
  420. package/dist/icons/CodeIcon.js +1 -1
  421. package/dist/icons/ColumnTotalIcon.js +1 -1
  422. package/dist/icons/CopyIcon.js +1 -1
  423. package/dist/icons/CountIcon.js +1 -1
  424. package/dist/icons/CubeIcon.js +1 -1
  425. package/dist/icons/CubePauseIcon.js +1 -1
  426. package/dist/icons/CubePlayIcon.js +1 -1
  427. package/dist/icons/CurrencyDollarIcon.js +1 -1
  428. package/dist/icons/DangerIcon.js +1 -1
  429. package/dist/icons/DashboardIcon.js +1 -1
  430. package/dist/icons/DatabaseIcon.js +1 -1
  431. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  432. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  433. package/dist/icons/DirectionIcon.js +1 -1
  434. package/dist/icons/DonutIcon.js +1 -1
  435. package/dist/icons/DownIcon.js +1 -1
  436. package/dist/icons/EditIcon.js +1 -1
  437. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  438. package/dist/icons/ExclamationCircleIcon.js +1 -1
  439. package/dist/icons/ExclamationIcon.js +1 -1
  440. package/dist/icons/EyeIcon.js +1 -1
  441. package/dist/icons/EyeInvisibleIcon.js +1 -1
  442. package/dist/icons/FilterIcon.js +1 -1
  443. package/dist/icons/FolderFilledIcon.js +1 -1
  444. package/dist/icons/FolderIcon.js +1 -1
  445. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  446. package/dist/icons/FolderOpenIcon.js +1 -1
  447. package/dist/icons/ForwardIcon.js +1 -1
  448. package/dist/icons/GripVerticalIcon.js +1 -1
  449. package/dist/icons/HierarchyIcon.js +1 -1
  450. package/dist/icons/HierarchyOpenIcon.js +1 -1
  451. package/dist/icons/Icon.js +1 -1
  452. package/dist/icons/InfoCircleIcon.js +1 -1
  453. package/dist/icons/InfoIcon.js +1 -1
  454. package/dist/icons/KeyIcon.js +1 -1
  455. package/dist/icons/LeftIcon.js +1 -1
  456. package/dist/icons/LineChartIcon.js +1 -1
  457. package/dist/icons/LoadingIcon.js +1 -1
  458. package/dist/icons/LockFilledIcon.js +1 -1
  459. package/dist/icons/LockIcon.js +1 -1
  460. package/dist/icons/MoreIcon.js +1 -1
  461. package/dist/icons/NotAllowedIcon.js +1 -1
  462. package/dist/icons/Number123Icon.js +1 -1
  463. package/dist/icons/NumberIcon.js +1 -1
  464. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  465. package/dist/icons/PauseCircleIcon.js +1 -1
  466. package/dist/icons/PauseIcon.js +1 -1
  467. package/dist/icons/PercentageIcon.js +1 -1
  468. package/dist/icons/PieChartIcon.js +1 -1
  469. package/dist/icons/PipetteIcon.js +1 -1
  470. package/dist/icons/PlayCircleIcon.js +1 -1
  471. package/dist/icons/PlayIcon.js +1 -1
  472. package/dist/icons/PlusIcon.js +1 -1
  473. package/dist/icons/ProgressBarIcon.js +1 -1
  474. package/dist/icons/ReloadIcon.js +1 -1
  475. package/dist/icons/ReportIcon.js +1 -1
  476. package/dist/icons/ReturnIcon.js +1 -1
  477. package/dist/icons/RightIcon.js +1 -1
  478. package/dist/icons/RowTotalsIcon.js +1 -1
  479. package/dist/icons/SchemeIcon.js +1 -1
  480. package/dist/icons/SearchIcon.js +1 -1
  481. package/dist/icons/SemanticQueryIcon.js +1 -1
  482. package/dist/icons/SettingsIcon.js +1 -1
  483. package/dist/icons/ShieldFilledIcon.js +1 -1
  484. package/dist/icons/ShieldIcon.js +1 -1
  485. package/dist/icons/SlashIcon.js +1 -1
  486. package/dist/icons/SparklesIcon.js +1 -1
  487. package/dist/icons/SqlIcon.js +1 -1
  488. package/dist/icons/StatsIcon.js +1 -1
  489. package/dist/icons/StopIcon.js +1 -1
  490. package/dist/icons/StringIcon.js +1 -1
  491. package/dist/icons/SubtotalsIcon.js +1 -1
  492. package/dist/icons/SwitchIcon.js +1 -1
  493. package/dist/icons/TableIcon.js +1 -1
  494. package/dist/icons/ThumbsDownIcon.js +1 -1
  495. package/dist/icons/ThumbsUpIcon.js +1 -1
  496. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  497. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  498. package/dist/icons/ThunderboltIcon.js +1 -1
  499. package/dist/icons/TimeIcon.js +1 -1
  500. package/dist/icons/TrashIcon.js +1 -1
  501. package/dist/icons/UnlockIcon.js +1 -1
  502. package/dist/icons/UpIcon.js +1 -1
  503. package/dist/icons/UserGroupIcon.js +1 -1
  504. package/dist/icons/UserIcon.js +1 -1
  505. package/dist/icons/UserLockIcon.js +1 -1
  506. package/dist/icons/ViewIcon.js +1 -1
  507. package/dist/icons/WarningFilledIcon.js +1 -1
  508. package/dist/icons/WarningIcon.js +1 -1
  509. package/dist/icons/wrap-icon.js +1 -1
  510. package/dist/index.d.ts +2 -2
  511. package/dist/index.js +3 -3
  512. package/dist/probe/canonicalize.js +1 -1
  513. package/dist/probe/css.js +1 -1
  514. package/dist/probe/index.js +1 -1
  515. package/dist/provider.js +1 -1
  516. package/dist/providers/TrackingProvider.js +1 -1
  517. package/dist/providers/navigation-url.js +1 -1
  518. package/dist/providers/navigationAdapter.default.js +1 -1
  519. package/dist/providers/use-navigation.js +1 -1
  520. package/dist/shared/form.d.ts +13 -11
  521. package/dist/tokens/all-tokens.js +1 -1
  522. package/dist/tokens/base.js +1 -1
  523. package/dist/tokens/color-seed.js +1 -1
  524. package/dist/tokens/color-theme.js +1 -1
  525. package/dist/tokens/colors.js +1 -1
  526. package/dist/tokens/layout.js +1 -1
  527. package/dist/tokens/lazy-styles.js +1 -1
  528. package/dist/tokens/legacy-color.js +1 -1
  529. package/dist/tokens/palette-config.js +1 -1
  530. package/dist/tokens/palette.js +1 -1
  531. package/dist/tokens/resolve.js +1 -1
  532. package/dist/tokens/shadows.js +1 -1
  533. package/dist/tokens/sizes.js +1 -1
  534. package/dist/tokens/spacing.js +1 -1
  535. package/dist/tokens/typography.js +1 -1
  536. package/dist/utils/ResizeSensor.js +1 -1
  537. package/dist/utils/colors.js +1 -1
  538. package/dist/utils/dotize.js +1 -1
  539. package/dist/utils/is-dev-env.js +1 -1
  540. package/dist/utils/modules.js +1 -1
  541. package/dist/utils/promise.js +1 -1
  542. package/dist/utils/raf.js +1 -1
  543. package/dist/utils/random.js +1 -1
  544. package/dist/utils/range.js +1 -1
  545. package/dist/utils/react/RenderCache.js +1 -1
  546. package/dist/utils/react/Slots.js +1 -1
  547. package/dist/utils/react/chain.js +1 -1
  548. package/dist/utils/react/disabledProps.js +1 -1
  549. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  550. package/dist/utils/react/index.js +1 -1
  551. package/dist/utils/react/interactions.js +1 -1
  552. package/dist/utils/react/isTextOnly.js +1 -1
  553. package/dist/utils/react/mapProps.js +1 -1
  554. package/dist/utils/react/mergeProps.js +1 -1
  555. package/dist/utils/react/nullableValue.js +1 -1
  556. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  557. package/dist/utils/react/programmaticFocus.js +1 -1
  558. package/dist/utils/react/resolveIcon.js +1 -1
  559. package/dist/utils/react/sharedStore.js +1 -1
  560. package/dist/utils/react/useBufferedValue.js +1 -1
  561. package/dist/utils/react/useCombinedRefs.js +1 -1
  562. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  563. package/dist/utils/react/useEventBus.js +1 -1
  564. package/dist/utils/react/useId.js +1 -1
  565. package/dist/utils/react/useIsDarwin.js +1 -1
  566. package/dist/utils/react/useKeySymbols.js +1 -1
  567. package/dist/utils/react/useLayoutEffect.js +1 -1
  568. package/dist/utils/react/useLocalStorage.js +1 -1
  569. package/dist/utils/react/useMergeStyles.js +1 -1
  570. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  571. package/dist/utils/react/usePopoverSync.js +1 -1
  572. package/dist/utils/react/useQaProps.js +1 -1
  573. package/dist/utils/react/useScheme.js +1 -1
  574. package/dist/utils/react/useViewportSize.js +1 -1
  575. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  576. package/dist/utils/selection.js +1 -1
  577. package/dist/utils/styles.js +1 -1
  578. package/dist/utils/tree.js +1 -1
  579. package/dist/utils/warnings.js +1 -1
  580. package/dist/version.js +2 -2
  581. package/docs/FieldProperties.md +3 -3
  582. package/docs/components/overlays/AlertDialog.md +38 -4
  583. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { ItemActionIcon } from "../actions/ItemActionsWrapper.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { Fragment, jsxs } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { formatColor, getContrastingColor, toHex } from "./color.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { maxChroma, normalizeHue, oklchToOkhsl } from "../../../utils/colors.js";
3
3
  import { fromOkhst, fromRgb, isAchromatic, toHex, toOkhst, toOklch, toRgb } from "./color.js";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { anyNaN, clamp, maxChroma, normalizeHue, oklchToOkhsl, parseColorFunction, readComponent, readHue, rgbFromSrgb } from "../../../utils/colors.js";
3
3
  import { contrastRatioFromLuminance, formatHsl, formatOkhsl, formatOkhst, formatOklch, formatRgb, hslToSrgb, okhslToLinearSrgb, okhslToOkhst, okhslToOklch, okhslToSrgb, okhstToOkhsl, parseHexAlpha, relativeLuminanceFromLinearRgb, srgbToHex, srgbToOkhsl } from "@tenphi/glaze";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { _Text } from "../../content/Text.js";
4
4
  import { wrapNodeIfPlain } from "../../../utils/react/wrapNodeIfPlain.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useSyncExternalStore } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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 { mergeRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useProviderProps } from "../../../../provider.js";
3
3
  import { Button } from "../../../actions/Button/Button.js";
4
4
  import { isModernFormController } from "../backend.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useI18n } from "../../../i18n/useI18n.js";
3
3
  import { ModernControllerContext } from "./modern/context.js";
4
4
  import { FormContext } from "./Form.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  //#region src/components/form/Form/backend.ts
3
3
  /**
4
4
  * Nominal branding for the two Form backends (modernization plan §5.1).
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useFormControllerContext } from "./modern/context.js";
3
3
  import { useForm } from "./use-form.js";
4
4
  import { FormContext, FormScopeMask, _Form, useFormProps } from "./Form.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useEvent } from "../../../../_internal/hooks/use-event.js";
3
3
  import { useProviderProps } from "../../../../provider.js";
4
4
  import { Button } from "../../../actions/Button/Button.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/form/Form/modern/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { FORM_BACKEND, isModernFormController } from "../backend.js";
3
3
  import { createFormField } from "./field.js";
4
4
  import { createFormStore } from "./store.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { getFieldKey, hasPath, normalizePath, readPath } from "./values.js";
3
3
  import { getControllerInternals } from "./controller.js";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { normalizePath } from "./values.js";
3
3
 
4
4
  //#region src/components/form/Form/modern/field.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../../utils/react/useLayoutEffect.js";
3
3
  import { ModernControllerContext } from "./context.js";
4
4
  import { getFieldKey, normalizePath, readPath } from "./values.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { FORM_BACKEND } from "../backend.js";
3
3
  import { createValueSnapshotter, defineValue, formValueEqual, freezeContainer, getFieldKey, hasPath, isPlainObject, normalizePath, pathValueChanged, readPath, readonlySet, sameMembers, writePath } from "./values.js";
4
4
  import { rulesSignature, runRules } from "./validation.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { applyRule } from "../validation.js";
3
3
 
4
4
  //#region src/components/form/Form/modern/validation.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  //#region src/components/form/Form/modern/values.ts
3
3
  const ownedContainers = /* @__PURE__ */ new WeakSet();
4
4
  function freezeContainer(value) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  //#region src/components/form/Form/reset-unbound-controls.ts
3
3
  /**
4
4
  * Both form roots cancel a native reset, because the browser would put a bound
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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 { isModernFormController } from "../backend.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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";
@@ -31,7 +31,7 @@ const defaultValuePropsMapper = ({ value, onChange }) => ({
31
31
  * legacy backend's adapter and is inert when the field is not bound to it.
32
32
  */
33
33
  function useFieldProps(inputProps, t0) {
34
- const $ = c(30);
34
+ const $ = c(33);
35
35
  let t1;
36
36
  if ($[0] !== t0) {
37
37
  t1 = t0 === void 0 ? {} : t0;
@@ -60,7 +60,8 @@ function useFieldProps(inputProps, t0) {
60
60
  if (props.rules && !props.name) warn("The \"rules\" prop is not suitable for fields that are not part of a form. Use \"name\" prop to link the field to a form.");
61
61
  const hasName = props.name != null;
62
62
  const generatedId = useId();
63
- const t5 = !(hasName && !isInsideLegacyField && !isDisabled);
63
+ const isBound = hasName && !isInsideLegacyField && !isDisabled;
64
+ const t5 = !isBound;
64
65
  let t6;
65
66
  if ($[4] !== params.defaultValidationTrigger || $[5] !== t5) {
66
67
  t6 = {
@@ -134,18 +135,21 @@ function useFieldProps(inputProps, t0) {
134
135
  } else t8 = $[20];
135
136
  const resolveResult = t8;
136
137
  let t9;
137
- if ($[21] !== inputProps || $[22] !== isInsideLegacyField) {
138
- t9 = !isInsideLegacyField && asksForFieldChrome(inputProps);
139
- $[21] = inputProps;
140
- $[22] = isInsideLegacyField;
141
- $[23] = t9;
142
- } else t9 = $[23];
143
- const asksForFieldText = t9;
138
+ if ($[21] !== hasName || $[22] !== inputProps || $[23] !== isBound || $[24] !== isInsideLegacyField || $[25] !== isOutsideOfForm) {
139
+ t9 = isInsideLegacyField ? hasName && asksForFieldChrome(inputProps, true) : asksForFieldChrome(inputProps, isBound && !isOutsideOfForm);
140
+ $[21] = hasName;
141
+ $[22] = inputProps;
142
+ $[23] = isBound;
143
+ $[24] = isInsideLegacyField;
144
+ $[25] = isOutsideOfForm;
145
+ $[26] = t9;
146
+ } else t9 = $[26];
147
+ const hasFieldChrome = t9;
144
148
  let t10;
145
- if ($[24] !== asksForFieldText || $[25] !== resolveResult) {
146
- const resolved = asksForFieldText ? {
149
+ if ($[27] !== hasFieldChrome || $[28] !== resolveResult) {
150
+ const resolved = hasFieldChrome ? {
147
151
  ...resolveResult(),
148
- forceField: true
152
+ hasFieldChrome: true
149
153
  } : resolveResult();
150
154
  const { field: _descriptor, dependsOn: _dependsOn, deps: _deps, ...domProps } = isModernFormController(resolved.form) ? {
151
155
  ...resolved,
@@ -155,22 +159,22 @@ function useFieldProps(inputProps, t0) {
155
159
  ...domProps,
156
160
  name: getFieldKey(domProps.name)
157
161
  } : domProps;
158
- $[24] = asksForFieldText;
159
- $[25] = resolveResult;
160
- $[26] = t10;
161
- } else t10 = $[26];
162
+ $[27] = hasFieldChrome;
163
+ $[28] = resolveResult;
164
+ $[29] = t10;
165
+ } else t10 = $[29];
162
166
  const namedProps = t10;
163
167
  const describedBy = useFieldDescribedBy(namedProps.id, namedProps["aria-describedby"]);
164
168
  let t11;
165
- if ($[27] !== describedBy || $[28] !== namedProps) {
169
+ if ($[30] !== describedBy || $[31] !== namedProps) {
166
170
  t11 = describedBy === namedProps["aria-describedby"] ? namedProps : {
167
171
  ...namedProps,
168
172
  "aria-describedby": describedBy
169
173
  };
170
- $[27] = describedBy;
171
- $[28] = namedProps;
172
- $[29] = t11;
173
- } else t11 = $[29];
174
+ $[30] = describedBy;
175
+ $[31] = namedProps;
176
+ $[32] = t11;
177
+ } else t11 = $[32];
174
178
  const describedProps = t11;
175
179
  useDebugValue(describedProps);
176
180
  return describedProps;
@@ -1 +1 @@
1
- {"version":3,"file":"use-field-props.js","names":["useDebugValue","useId","useState","useEvent","useProviderProps","mergeProps","warn","asksForFieldChrome","useFieldDescribedBy","useValidationProps","isModernFormController","useInsideLegacyField","useFormProps","getFieldKey","useFieldBinding","ValidateTrigger","ModernFormBrand","FieldTypes","UseFieldProps","UseFieldPropsParams","valuePropsMapper","value","onChange","defaultValidationTrigger","unsafe__isDisabled","defaultValuePropsMapper","StrippedFieldKey","ResolvedFieldForm","Form","ResolvedFieldProps","Props","Key","useFieldProps","inputProps","t0","$","_c","t1","undefined","params","provided","t2","field","options","form","name","path","props","isDisabled","t3","t4","isInsideLegacyField","rules","hasName","generatedId","isBound","t5","t6","unbound","isOutsideOfForm","t7","dontTouch","validateTrigger","onChangeEvent","t8","resolveResult","id","result","labelProps","for","valueProps","_form","_fieldValue","_fieldOnChange","onBlur","_fieldOnBlur","fieldRest","result_0","t9","asksForFieldText","t10","resolved","forceField","result_1","_descriptor","dependsOn","_dependsOn","deps","_deps","domProps","namedProps","describedBy","t11","describedProps"],"sources":["../../../../../src/components/form/Form/use-field/use-field-props.tsx"],"sourcesContent":["import { useDebugValue, useId, useState } from 'react';\n\nimport { useEvent } from '../../../../_internal/index';\nimport { useProviderProps } from '../../../../provider';\nimport { mergeProps } from '../../../../utils/react/index';\nimport { warn } from '../../../../utils/warnings';\nimport { asksForFieldChrome } from '../../field-chrome';\nimport { useFieldDescribedBy } from '../../FieldWrapper/field-description';\nimport { useValidationProps } from '../../validation/index';\nimport { isModernFormController } from '../backend';\nimport { useInsideLegacyField } from '../Field';\nimport { useFormProps } from '../Form';\nimport { getFieldKey } from '../modern/values';\n\nimport { useFieldBinding } from './use-field-binding';\n\nimport type { ValidateTrigger } from '../../../../shared/index';\nimport type { ModernFormBrand } from '../backend';\nimport type { FieldTypes } from '../types';\nimport type { UseFieldProps } from './types';\n\nexport type UseFieldPropsParams = {\n valuePropsMapper?: ({ value, onChange }) => any;\n /**\n * @default 'onBlur'\n */\n defaultValidationTrigger?: ValidateTrigger;\n /**\n * prop helps to prevent calling hook conditionally, but changing this prop during render is unsafe and forbidden\n * If you want to change this prop after mount, remount the component with a new value.\n */\n unsafe__isDisabled?: boolean;\n};\n\nconst defaultValuePropsMapper = ({ value, onChange }) => ({\n value: value ?? null,\n onChange,\n});\n\n/** Binding inputs `useFieldProps` always strips before it returns. */\ntype StrippedFieldKey = 'field' | 'dependsOn' | 'deps';\n\n/**\n * A modern controller is stripped at runtime, so each member of `form` that is\n * one becomes `undefined`; a legacy instance survives, and `any` stays `any`.\n * Distributive, so it still applies when `Props` is a type parameter.\n */\ntype ResolvedFieldForm<Form> = Form extends ModernFormBrand ? undefined : Form;\n\n/**\n * The input's declared prop shape minus what the hook always strips: a DOM-safe\n * name, no binding inputs, and no modern controller in `form`.\n */\ntype ResolvedFieldProps<Props> = {\n [Key in keyof Props as Key extends StrippedFieldKey\n ? never\n : Key]: Key extends 'name'\n ? string | undefined\n : Key extends 'form'\n ? ResolvedFieldForm<Props[Key]>\n : Props[Key];\n};\n\n/**\n * The single entry point for input components (see\n * `docs/rules/input-components.md`).\n *\n * Every hook below runs on every render, whatever the mode: standalone (no\n * `name`), inside the deprecated `<Field>`, disabled through\n * `unsafe__isDisabled`, or bound to a form. The mode only decides which props\n * come back, so an input can gain or lose a `name`, or move between forms,\n * without changing its hook order. The legacy binding (`useField`) is the\n * legacy backend's adapter and is inert when the field is not bound to it.\n */\nexport function useFieldProps<\n T extends FieldTypes,\n Props extends UseFieldProps<T>,\n>(\n inputProps: Props,\n params: UseFieldPropsParams = {},\n): ResolvedFieldProps<Props> {\n // Provider defaults, then form context, then the normalization of the\n // deprecated `validationState` prop into `isInvalid`/`isValid`.\n const provided = useProviderProps(inputProps);\n const props: Props = useValidationProps(\n useFormProps(\n provided.field\n ? {\n ...provided,\n ...provided.field.options,\n form: provided.field.form,\n name:\n typeof provided.field.path === 'string'\n ? provided.field.path\n : getFieldKey(provided.field.path),\n }\n : provided,\n ),\n );\n\n // The initial value is what counts: changing it after mount is unsupported.\n const [isDisabled] = useState(params.unsafe__isDisabled ?? false);\n\n const {\n valuePropsMapper = defaultValuePropsMapper,\n defaultValidationTrigger = 'onBlur',\n } = params;\n\n const isInsideLegacyField = useInsideLegacyField();\n\n if (props.rules && !props.name) {\n warn(\n `The \"rules\" prop is not suitable for fields that are not part of a form. Use \"name\" prop to link the field to a form.`,\n );\n }\n\n const hasName = props.name != null;\n const generatedId = useId();\n const isBound = hasName && !isInsideLegacyField && !isDisabled;\n\n const field = useFieldBinding<T, Props>(\n props,\n {\n defaultValidationTrigger: params.defaultValidationTrigger,\n unbound: !isBound,\n },\n generatedId,\n );\n\n const isOutsideOfForm = field?.form == null;\n\n const onChangeEvent = useEvent((value, dontTouch: boolean) => {\n field?.onChange?.(\n value,\n dontTouch,\n field?.validateTrigger ?? defaultValidationTrigger,\n );\n });\n\n function resolveResult(): Props {\n if (isInsideLegacyField || isDisabled) {\n return props;\n }\n\n if (!hasName) {\n // Standalone field - just add generated ID if not provided\n if (!props.id) {\n const result = { ...props, id: generatedId };\n\n if (result.id && !result.labelProps) {\n result.labelProps = { for: result.id };\n } else if (result.id && result.labelProps && !result.labelProps.for) {\n result.labelProps = { ...result.labelProps, for: result.id };\n }\n\n return result as Props;\n }\n return props;\n }\n\n if (props.rules && isOutsideOfForm) {\n warn(\n `The \"rules\" prop is not supported for fields that are not part of a form. The \"${props.name}\" field is placed outside the form.`,\n );\n }\n\n const valueProps = !isOutsideOfForm\n ? valuePropsMapper({\n value: field.value,\n onChange: onChangeEvent,\n })\n : {};\n\n // Exclude `form` (it must never reach a DOM node) and the field's own\n // value and handlers: `valueProps` already maps the value and routes the\n // component's change event into `field.onChange` under the names the\n // component reads, and `onBlur` is added once below. `mergeProps` chains\n // same-named handlers, so merging them here as well made every user change\n // and every blur run the field handler twice — and onChange/onBlur-triggered\n // validation validate twice. A raw `value` replaced the caller's own on\n // controls that map it elsewhere: a `Checkbox` bound as `isSelected`\n // rendered and submitted `value=\"true\"` instead of its `value=\"yes\"`.\n const {\n form: _form,\n value: _fieldValue,\n onChange: _fieldOnChange,\n onBlur: _fieldOnBlur,\n ...fieldRest\n } = field ?? {};\n\n const result: Props = isOutsideOfForm\n ? props\n : mergeProps(props, fieldRest, valueProps, {\n validateTrigger: field.validateTrigger ?? defaultValidationTrigger,\n // Chained after the caller's own `onBlur` by `mergeProps`.\n onBlur: field.onBlur,\n });\n\n return result.id\n ? { ...result, labelProps: { ...result.labelProps, for: result.id } }\n : result;\n }\n\n // Without a `label`, `wrapWithField` renders a description or message only\n // with `forceField`, so passing one sets it unless the caller asks for the\n // bare control with `isBare` — see `asksForFieldChrome`.\n // Inside the legacy `<Field>`, the message props come and go with the error\n // and the props are the wrapper's, so they decide nothing.\n const asksForFieldText =\n !isInsideLegacyField && asksForFieldChrome(inputProps);\n const resolved = asksForFieldText\n ? { ...resolveResult(), forceField: true }\n : resolveResult();\n // React Aria forwards `form` to native inputs. A modern controller is a\n // binding source, never an HTML form id, including in standalone/group mode.\n const result = isModernFormController(resolved.form)\n ? { ...resolved, form: undefined }\n : resolved;\n\n const {\n field: _descriptor,\n dependsOn: _dependsOn,\n deps: _deps,\n ...domProps\n } = result;\n // Standalone and group-scoped inputs do not merge a bound field's props.\n // Their tuple must still become a string before React Aria or DOM forwarding.\n const namedProps =\n domProps.name != null && typeof domProps.name !== 'string'\n ? { ...domProps, name: getFieldKey(domProps.name) }\n : domProps;\n // Every input forwards `aria-describedby` to its control, so pointing it at\n // the field's description and message here reaches all of them.\n const describedBy = useFieldDescribedBy(\n namedProps.id,\n namedProps['aria-describedby'],\n );\n const describedProps =\n describedBy === namedProps['aria-describedby']\n ? namedProps\n : { ...namedProps, 'aria-describedby': describedBy };\n useDebugValue(describedProps);\n\n return describedProps as unknown as ResolvedFieldProps<Props>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-field-props.js","names":["useDebugValue","useId","useState","useEvent","useProviderProps","mergeProps","warn","asksForFieldChrome","useFieldDescribedBy","useValidationProps","isModernFormController","useInsideLegacyField","useFormProps","getFieldKey","useFieldBinding","ValidateTrigger","ModernFormBrand","FieldTypes","UseFieldProps","UseFieldPropsParams","valuePropsMapper","value","onChange","defaultValidationTrigger","unsafe__isDisabled","defaultValuePropsMapper","StrippedFieldKey","ResolvedFieldForm","Form","ResolvedFieldProps","Props","Key","useFieldProps","inputProps","t0","$","_c","t1","undefined","params","provided","t2","field","options","form","name","path","props","isDisabled","t3","t4","isInsideLegacyField","rules","hasName","generatedId","isBound","t5","t6","unbound","isOutsideOfForm","t7","dontTouch","validateTrigger","onChangeEvent","t8","resolveResult","id","result","labelProps","for","valueProps","_form","_fieldValue","_fieldOnChange","onBlur","_fieldOnBlur","fieldRest","result_0","t9","hasFieldChrome","t10","resolved","result_1","_descriptor","dependsOn","_dependsOn","deps","_deps","domProps","namedProps","describedBy","t11","describedProps"],"sources":["../../../../../src/components/form/Form/use-field/use-field-props.tsx"],"sourcesContent":["import { useDebugValue, useId, useState } from 'react';\n\nimport { useEvent } from '../../../../_internal/index';\nimport { useProviderProps } from '../../../../provider';\nimport { mergeProps } from '../../../../utils/react/index';\nimport { warn } from '../../../../utils/warnings';\nimport { asksForFieldChrome } from '../../field-chrome';\nimport { useFieldDescribedBy } from '../../FieldWrapper/field-description';\nimport { useValidationProps } from '../../validation/index';\nimport { isModernFormController } from '../backend';\nimport { useInsideLegacyField } from '../Field';\nimport { useFormProps } from '../Form';\nimport { getFieldKey } from '../modern/values';\n\nimport { useFieldBinding } from './use-field-binding';\n\nimport type { ValidateTrigger } from '../../../../shared/index';\nimport type { ModernFormBrand } from '../backend';\nimport type { FieldTypes } from '../types';\nimport type { UseFieldProps } from './types';\n\nexport type UseFieldPropsParams = {\n valuePropsMapper?: ({ value, onChange }) => any;\n /**\n * @default 'onBlur'\n */\n defaultValidationTrigger?: ValidateTrigger;\n /**\n * prop helps to prevent calling hook conditionally, but changing this prop during render is unsafe and forbidden\n * If you want to change this prop after mount, remount the component with a new value.\n */\n unsafe__isDisabled?: boolean;\n};\n\nconst defaultValuePropsMapper = ({ value, onChange }) => ({\n value: value ?? null,\n onChange,\n});\n\n/** Binding inputs `useFieldProps` always strips before it returns. */\ntype StrippedFieldKey = 'field' | 'dependsOn' | 'deps';\n\n/**\n * A modern controller is stripped at runtime, so each member of `form` that is\n * one becomes `undefined`; a legacy instance survives, and `any` stays `any`.\n * Distributive, so it still applies when `Props` is a type parameter.\n */\ntype ResolvedFieldForm<Form> = Form extends ModernFormBrand ? undefined : Form;\n\n/**\n * The input's declared prop shape minus what the hook always strips: a DOM-safe\n * name, no binding inputs, and no modern controller in `form`.\n */\ntype ResolvedFieldProps<Props> = {\n [Key in keyof Props as Key extends StrippedFieldKey\n ? never\n : Key]: Key extends 'name'\n ? string | undefined\n : Key extends 'form'\n ? ResolvedFieldForm<Props[Key]>\n : Props[Key];\n};\n\n/**\n * The single entry point for input components (see\n * `docs/rules/input-components.md`).\n *\n * Every hook below runs on every render, whatever the mode: standalone (no\n * `name`), inside the deprecated `<Field>`, disabled through\n * `unsafe__isDisabled`, or bound to a form. The mode only decides which props\n * come back, so an input can gain or lose a `name`, or move between forms,\n * without changing its hook order. The legacy binding (`useField`) is the\n * legacy backend's adapter and is inert when the field is not bound to it.\n */\nexport function useFieldProps<\n T extends FieldTypes,\n Props extends UseFieldProps<T>,\n>(\n inputProps: Props,\n params: UseFieldPropsParams = {},\n): ResolvedFieldProps<Props> {\n // Provider defaults, then form context, then the normalization of the\n // deprecated `validationState` prop into `isInvalid`/`isValid`.\n const provided = useProviderProps(inputProps);\n const props: Props = useValidationProps(\n useFormProps(\n provided.field\n ? {\n ...provided,\n ...provided.field.options,\n form: provided.field.form,\n name:\n typeof provided.field.path === 'string'\n ? provided.field.path\n : getFieldKey(provided.field.path),\n }\n : provided,\n ),\n );\n\n // The initial value is what counts: changing it after mount is unsupported.\n const [isDisabled] = useState(params.unsafe__isDisabled ?? false);\n\n const {\n valuePropsMapper = defaultValuePropsMapper,\n defaultValidationTrigger = 'onBlur',\n } = params;\n\n const isInsideLegacyField = useInsideLegacyField();\n\n if (props.rules && !props.name) {\n warn(\n `The \"rules\" prop is not suitable for fields that are not part of a form. Use \"name\" prop to link the field to a form.`,\n );\n }\n\n const hasName = props.name != null;\n const generatedId = useId();\n const isBound = hasName && !isInsideLegacyField && !isDisabled;\n\n const field = useFieldBinding<T, Props>(\n props,\n {\n defaultValidationTrigger: params.defaultValidationTrigger,\n unbound: !isBound,\n },\n generatedId,\n );\n\n const isOutsideOfForm = field?.form == null;\n\n const onChangeEvent = useEvent((value, dontTouch: boolean) => {\n field?.onChange?.(\n value,\n dontTouch,\n field?.validateTrigger ?? defaultValidationTrigger,\n );\n });\n\n function resolveResult(): Props {\n if (isInsideLegacyField || isDisabled) {\n return props;\n }\n\n if (!hasName) {\n // Standalone field - just add generated ID if not provided\n if (!props.id) {\n const result = { ...props, id: generatedId };\n\n if (result.id && !result.labelProps) {\n result.labelProps = { for: result.id };\n } else if (result.id && result.labelProps && !result.labelProps.for) {\n result.labelProps = { ...result.labelProps, for: result.id };\n }\n\n return result as Props;\n }\n return props;\n }\n\n if (props.rules && isOutsideOfForm) {\n warn(\n `The \"rules\" prop is not supported for fields that are not part of a form. The \"${props.name}\" field is placed outside the form.`,\n );\n }\n\n const valueProps = !isOutsideOfForm\n ? valuePropsMapper({\n value: field.value,\n onChange: onChangeEvent,\n })\n : {};\n\n // Exclude `form` (it must never reach a DOM node) and the field's own\n // value and handlers: `valueProps` already maps the value and routes the\n // component's change event into `field.onChange` under the names the\n // component reads, and `onBlur` is added once below. `mergeProps` chains\n // same-named handlers, so merging them here as well made every user change\n // and every blur run the field handler twice — and onChange/onBlur-triggered\n // validation validate twice. A raw `value` replaced the caller's own on\n // controls that map it elsewhere: a `Checkbox` bound as `isSelected`\n // rendered and submitted `value=\"true\"` instead of its `value=\"yes\"`.\n const {\n form: _form,\n value: _fieldValue,\n onChange: _fieldOnChange,\n onBlur: _fieldOnBlur,\n ...fieldRest\n } = field ?? {};\n\n const result: Props = isOutsideOfForm\n ? props\n : mergeProps(props, fieldRest, valueProps, {\n validateTrigger: field.validateTrigger ?? defaultValidationTrigger,\n // Chained after the caller's own `onBlur` by `mergeProps`.\n onBlur: field.onBlur,\n });\n\n return result.id\n ? { ...result, labelProps: { ...result.labelProps, for: result.id } }\n : result;\n }\n\n // A field without a `label` still renders the field chrome when it is bound\n // to a form or its caller passes a description or a message, unless it is\n // `isBare` — see `asksForFieldChrome`. Inside the legacy `<Field>`, the\n // message props come and go with the error and are the wrapper's, so they\n // decide nothing; its child is bound through it, and the `<Field>` gives it\n // the `name`.\n const hasFieldChrome = isInsideLegacyField\n ? hasName && asksForFieldChrome(inputProps, true)\n : asksForFieldChrome(inputProps, isBound && !isOutsideOfForm);\n const resolved = hasFieldChrome\n ? { ...resolveResult(), hasFieldChrome: true }\n : resolveResult();\n // React Aria forwards `form` to native inputs. A modern controller is a\n // binding source, never an HTML form id, including in standalone/group mode.\n const result = isModernFormController(resolved.form)\n ? { ...resolved, form: undefined }\n : resolved;\n\n const {\n field: _descriptor,\n dependsOn: _dependsOn,\n deps: _deps,\n ...domProps\n } = result;\n // Standalone and group-scoped inputs do not merge a bound field's props.\n // Their tuple must still become a string before React Aria or DOM forwarding.\n const namedProps =\n domProps.name != null && typeof domProps.name !== 'string'\n ? { ...domProps, name: getFieldKey(domProps.name) }\n : domProps;\n // Every input forwards `aria-describedby` to its control, so pointing it at\n // the field's description and message here reaches all of them.\n const describedBy = useFieldDescribedBy(\n namedProps.id,\n namedProps['aria-describedby'],\n );\n const describedProps =\n describedBy === namedProps['aria-describedby']\n ? namedProps\n : { ...namedProps, 'aria-describedby': describedBy };\n useDebugValue(describedProps);\n\n return describedProps as unknown as ResolvedFieldProps<Props>;\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { FORM_BACKEND, isModernFormController, modernBackendUnavailableError } from "./backend.js";
3
3
  import { applyRules } from "./validation.js";
4
4
  import { dotizeConvert } from "../../../utils/dotize.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
+ import { warn } from "../../utils/warnings.js";
3
+
2
4
  //#region src/components/form/field-chrome.ts
3
5
  /** The props that give a field text to show under its control. */
4
6
  const FIELD_TEXT_PROPS = [
@@ -7,19 +9,37 @@ const FIELD_TEXT_PROPS = [
7
9
  "message"
8
10
  ];
9
11
  /**
10
- * Whether a field without a `label` should still render the field chrome
11
- * (`forceField`): its caller passes a description or a message and does not
12
- * ask for the bare control with `isBare`. The prop decides, whatever it holds
13
- * — `undefined`, `null` and `''` too — because a decision taken from the text
14
- * would move the control in and out of the wrapper as an error comes and goes,
15
- * and React would remount it and drop its focus mid-keystroke.
12
+ * Whether a field without a `label` should still render the field chrome: it
13
+ * is bound to a form, whose validation errors need a place under it, or its
14
+ * caller passes a description or a message — unless it asks for the bare
15
+ * control with `isBare`.
16
+ *
17
+ * Neither depends on what the field shows at the moment. A text prop counts
18
+ * whatever it holds — `undefined`, `null` and `''` too — because a decision
19
+ * taken from the text would move the control in and out of the wrapper as an
20
+ * error comes and goes, and React would remount it and drop its focus
21
+ * mid-keystroke.
16
22
  *
17
23
  * Read the caller's own props: a form binding adds message props of its own.
18
24
  */
19
- function asksForFieldChrome(props) {
20
- return !props.isBare && FIELD_TEXT_PROPS.some((key) => key in props);
25
+ function asksForFieldChrome(props, isBound = false) {
26
+ return !props.isBare && (isBound || FIELD_TEXT_PROPS.some((key) => key in props));
27
+ }
28
+ let hasWarnedAboutForceField = false;
29
+ /**
30
+ * `forceField` used to be the only way to show the texts of a field without a
31
+ * `label`. Such a field now shows them by itself when it is bound to a form or
32
+ * is passed one, so the prop is deprecated. It still forces the wrapper; say so
33
+ * once.
34
+ *
35
+ * A migration aid; remove with `forceField`.
36
+ */
37
+ function warnAboutForceField(props) {
38
+ if (hasWarnedAboutForceField || props.forceField == null) return;
39
+ hasWarnedAboutForceField = true;
40
+ warn("A field received `forceField`, which is deprecated. A field without a `label` now renders its description and messages when it is bound to a form or is passed `description`, `errorMessage` or `message`. Remove `forceField`, or pass `isBare` to render the bare control.");
21
41
  }
22
42
 
23
43
  //#endregion
24
- export { asksForFieldChrome };
44
+ export { asksForFieldChrome, warnAboutForceField };
25
45
  //# sourceMappingURL=field-chrome.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"field-chrome.js","names":["FIELD_TEXT_PROPS","const","FieldChromeProps","Partial","Record","isBare","asksForFieldChrome","props","some","key"],"sources":["../../../src/components/form/field-chrome.ts"],"sourcesContent":["/** The props that give a field text to show under its control. */\nconst FIELD_TEXT_PROPS = ['description', 'errorMessage', 'message'] as const;\n\ntype FieldChromeProps = Partial<\n Record<(typeof FIELD_TEXT_PROPS)[number], unknown>\n> & { isBare?: boolean };\n\n/**\n * Whether a field without a `label` should still render the field chrome\n * (`forceField`): its caller passes a description or a message and does not\n * ask for the bare control with `isBare`. The prop decides, whatever it holds\n * — `undefined`, `null` and `''` too — because a decision taken from the text\n * would move the control in and out of the wrapper as an error comes and goes,\n * and React would remount it and drop its focus mid-keystroke.\n *\n * Read the caller's own props: a form binding adds message props of its own.\n */\nexport function asksForFieldChrome(props: FieldChromeProps) {\n return !props.isBare && FIELD_TEXT_PROPS.some((key) => key in props);\n}\n"],"mappings":";;;AACA,MAAMA,mBAAmB;CAAC;CAAe;CAAgB;CAAU;;;;;;;;;;;AAgBnE,SAAgBM,mBAAmBC,OAAyB;AAC1D,QAAO,CAACA,MAAMF,UAAUL,iBAAiBQ,MAAMC,QAAQA,OAAOF,MAAM"}
1
+ {"version":3,"file":"field-chrome.js","names":["warn","FIELD_TEXT_PROPS","const","FieldChromeProps","Partial","Record","isBare","asksForFieldChrome","props","isBound","some","key","hasWarnedAboutForceField","warnAboutForceField","forceField"],"sources":["../../../src/components/form/field-chrome.ts"],"sourcesContent":["import { warn } from '../../utils/warnings';\n\n/** The props that give a field text to show under its control. */\nconst FIELD_TEXT_PROPS = ['description', 'errorMessage', 'message'] as const;\n\ntype FieldChromeProps = Partial<\n Record<(typeof FIELD_TEXT_PROPS)[number], unknown>\n> & { isBare?: boolean };\n\n/**\n * Whether a field without a `label` should still render the field chrome: it\n * is bound to a form, whose validation errors need a place under it, or its\n * caller passes a description or a message — unless it asks for the bare\n * control with `isBare`.\n *\n * Neither depends on what the field shows at the moment. A text prop counts\n * whatever it holds — `undefined`, `null` and `''` too — because a decision\n * taken from the text would move the control in and out of the wrapper as an\n * error comes and goes, and React would remount it and drop its focus\n * mid-keystroke.\n *\n * Read the caller's own props: a form binding adds message props of its own.\n */\nexport function asksForFieldChrome(props: FieldChromeProps, isBound = false) {\n return (\n !props.isBare && (isBound || FIELD_TEXT_PROPS.some((key) => key in props))\n );\n}\n\nlet hasWarnedAboutForceField = false;\n\n/**\n * `forceField` used to be the only way to show the texts of a field without a\n * `label`. Such a field now shows them by itself when it is bound to a form or\n * is passed one, so the prop is deprecated. It still forces the wrapper; say so\n * once.\n *\n * A migration aid; remove with `forceField`.\n */\nexport function warnAboutForceField(props: { forceField?: boolean }) {\n if (hasWarnedAboutForceField || props.forceField == null) return;\n\n hasWarnedAboutForceField = true;\n\n warn(\n 'A field received `forceField`, which is deprecated. A field without a `label` now renders its description and messages when it is bound to a form or is passed `description`, `errorMessage` or `message`. Remove `forceField`, or pass `isBare` to render the bare control.',\n );\n}\n"],"mappings":";;;;;AAGA,MAAMC,mBAAmB;CAAC;CAAe;CAAgB;CAAU;;;;;;;;;;;;;;;AAoBnE,SAAgBM,mBAAmBC,OAAyBC,UAAU,OAAO;AAC3E,QACE,CAACD,MAAMF,WAAWG,WAAWR,iBAAiBS,MAAMC,QAAQA,OAAOH,MAAM;;AAI7E,IAAII,2BAA2B;;;;;;;;;AAU/B,SAAgBC,oBAAoBL,OAAiC;AACnE,KAAII,4BAA4BJ,MAAMM,cAAc,KAAM;AAE1DF,4BAA2B;AAE3BZ,MACE,+QACD"}
@@ -19,7 +19,7 @@ import { FieldReturnValue, UseFieldProps } from "./Form/use-field/types.js";
19
19
  import { UseFieldParams, useField } from "./Form/use-field/use-field.js";
20
20
  import { UseFieldPropsParams, useFieldProps } from "./Form/use-field/use-field-props.js";
21
21
  import { Form } from "./Form/index.js";
22
- import { wrapWithField } from "./wrapper.js";
22
+ import { rendersFieldChrome, wrapWithField } from "./wrapper.js";
23
23
  import { CubeLabelProps, CubeNecessityIndicatorProps, INLINE_LABEL_STYLES, LABEL_STYLES, NecessityIndicatorMark, _Label } from "./Label.js";
24
24
  import { FieldWrapper } from "./FieldWrapper/FieldWrapper.js";
25
25
  import { CubeFieldWrapperProps } from "./FieldWrapper/types.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { warn } from "../../utils/warnings.js";
3
3
 
4
4
  //#region src/components/form/legacy-tooltip.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | 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-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { useWarn } from "../../../_internal/hooks/use-warn.js";
3
3
  import { resolveValidationProps } from "./resolve-validation-props.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -7,13 +7,24 @@ import { ReactElement, RefObject } from "react";
7
7
  import { DOMRef, FocusableRef } from "@react-types/shared";
8
8
 
9
9
  //#region src/components/form/wrapper.d.ts
10
- interface WrapWithFieldProps extends FieldBaseProps, Omit<BaseProps, 'children'>, FormBaseProps {}
10
+ interface WrapWithFieldProps extends FieldBaseProps, Omit<BaseProps, 'children'>, FormBaseProps {
11
+ /**
12
+ * Set by `useFieldProps` for a field without a `label` that still renders
13
+ * the field chrome — see `asksForFieldChrome`. Not a prop of any input.
14
+ */
15
+ hasFieldChrome?: boolean;
16
+ }
11
17
  /**
12
- * Wraps an input with the field chrome (label, description, message) when it has a `label` or `forceField`.
13
- * `useFieldProps` sets `forceField` for a field without a label that is passed a description or a message, unless it is `isBare`.
18
+ * Whether `wrapWithField` renders the field chrome for these props: a `label`,
19
+ * the chrome `useFieldProps` asked for, or the deprecated `forceField`.
20
+ */
21
+ declare function rendersFieldChrome(props: object): boolean;
22
+ /**
23
+ * Wraps an input with the field chrome (label, description, message) when it has a `label`, or when `useFieldProps` asks
24
+ * for it on a field without one (`hasFieldChrome`): one bound to a form, or passed a description or a message, and not `isBare`.
14
25
  * Only the field wrapper props are forwarded, so callers can pass their whole props object as is.
15
26
  */
16
27
  declare function wrapWithField<T extends WrapWithFieldProps>(component: ReactElement, ref: RefObject<unknown> | FocusableRef<HTMLElement> | DOMRef<HTMLElement>, props: T): react.JSX.Element;
17
28
  //#endregion
18
- export { wrapWithField };
29
+ export { rendersFieldChrome, wrapWithField };
19
30
  //# sourceMappingURL=wrapper.d.ts.map
@@ -1,18 +1,28 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-266381a | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-367446a | Cube Dev Team */
2
2
  import { mergeProps } from "../../utils/react/mergeProps.js";
3
3
  import { warnAboutLegacyTooltip } from "./legacy-tooltip.js";
4
4
  import { FieldWrapper } from "./FieldWrapper/FieldWrapper.js";
5
+ import { warnAboutForceField } from "./field-chrome.js";
5
6
  import { jsx } from "react/jsx-runtime";
6
7
 
7
8
  //#region src/components/form/wrapper.tsx
8
9
  /**
9
- * Wraps an input with the field chrome (label, description, message) when it has a `label` or `forceField`.
10
- * `useFieldProps` sets `forceField` for a field without a label that is passed a description or a message, unless it is `isBare`.
10
+ * Whether `wrapWithField` renders the field chrome for these props: a `label`,
11
+ * the chrome `useFieldProps` asked for, or the deprecated `forceField`.
12
+ */
13
+ function rendersFieldChrome(props) {
14
+ const { label, hasFieldChrome, forceField } = props;
15
+ return !!label || !!hasFieldChrome || !!forceField;
16
+ }
17
+ /**
18
+ * Wraps an input with the field chrome (label, description, message) when it has a `label`, or when `useFieldProps` asks
19
+ * for it on a field without one (`hasFieldChrome`): one bound to a form, or passed a description or a message, and not `isBare`.
11
20
  * Only the field wrapper props are forwarded, so callers can pass their whole props object as is.
12
21
  */
13
22
  function wrapWithField(component, ref, props) {
14
- let { forceField, label, extra, labelPosition = "top", labelStyles, isRequired, isOptional, isDisabled, necessityIndicator, message, messageStyles, description, errorMessage, isInvalid, isValid, labelProps, fieldProps, fieldStyles, requiredMark = true, labelTooltip, isHidden, labelSuffix } = props;
15
- if (!label && !forceField) return component;
23
+ let { label, extra, labelPosition = "top", labelStyles, isRequired, isOptional, isDisabled, necessityIndicator, message, messageStyles, description, errorMessage, isInvalid, isValid, labelProps, fieldProps, fieldStyles, requiredMark = true, labelTooltip, isHidden, labelSuffix } = props;
24
+ warnAboutForceField(props);
25
+ if (!rendersFieldChrome(props)) return component;
16
26
  warnAboutLegacyTooltip(props);
17
27
  const mergedFieldProps = fieldStyles ? mergeProps(fieldProps, { styles: fieldStyles }) : fieldProps;
18
28
  const mergedLabelProps = labelStyles ? mergeProps(labelProps, { styles: labelStyles }) : labelProps;
@@ -44,5 +54,5 @@ function wrapWithField(component, ref, props) {
44
54
  }
45
55
 
46
56
  //#endregion
47
- export { wrapWithField };
57
+ export { rendersFieldChrome, wrapWithField };
48
58
  //# sourceMappingURL=wrapper.js.map