@cube-dev/ui-kit 0.202.0 → 0.204.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. package/dist/CHANGELOG.md +24 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.js +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  25. package/dist/components/actions/ItemActionContext.js +1 -1
  26. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  27. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  28. package/dist/components/actions/Link/Link.js +1 -1
  29. package/dist/components/actions/Menu/Menu.js +1 -1
  30. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  31. package/dist/components/actions/Menu/MenuItem.js +1 -1
  32. package/dist/components/actions/Menu/MenuSection.js +1 -1
  33. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  34. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  35. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  36. package/dist/components/actions/Menu/context.js +1 -1
  37. package/dist/components/actions/Menu/styled.js +1 -1
  38. package/dist/components/actions/actions-run.js +1 -1
  39. package/dist/components/actions/index.js +1 -1
  40. package/dist/components/actions/use-action.js +1 -1
  41. package/dist/components/actions/use-anchored-menu.js +1 -1
  42. package/dist/components/actions/use-context-menu.js +1 -1
  43. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  44. package/dist/components/content/Alert/Alert.js +1 -1
  45. package/dist/components/content/Alert/use-alert.js +1 -1
  46. package/dist/components/content/Avatar/Avatar.js +1 -1
  47. package/dist/components/content/Badge/Badge.js +1 -1
  48. package/dist/components/content/Card/Card.js +1 -1
  49. package/dist/components/content/Content.js +1 -1
  50. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  51. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  52. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  53. package/dist/components/content/Divider/Divider.js +1 -1
  54. package/dist/components/content/Footer.js +1 -1
  55. package/dist/components/content/Header.js +1 -1
  56. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  57. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  58. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  59. package/dist/components/content/Item/Item.js +1 -1
  60. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  61. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  62. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  63. package/dist/components/content/Layout/GridLayout.js +1 -1
  64. package/dist/components/content/Layout/Layout.js +1 -1
  65. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  66. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  67. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  68. package/dist/components/content/Layout/LayoutContent.js +1 -1
  69. package/dist/components/content/Layout/LayoutContext.js +1 -1
  70. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  71. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  72. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  73. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  74. package/dist/components/content/Layout/LayoutPane.js +1 -1
  75. package/dist/components/content/Layout/LayoutPanel.js +2 -2
  76. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  77. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  78. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  79. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  80. package/dist/components/content/Layout/index.js +1 -1
  81. package/dist/components/content/Layout/utils.js +1 -1
  82. package/dist/components/content/Paragraph.js +1 -1
  83. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  84. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  85. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  86. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  87. package/dist/components/content/Result/Result.js +1 -1
  88. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  89. package/dist/components/content/Tag/Tag.js +1 -1
  90. package/dist/components/content/Text.js +1 -1
  91. package/dist/components/content/TextItem/TextItem.js +1 -1
  92. package/dist/components/content/Title.js +1 -1
  93. package/dist/components/content/Tree/Tree.js +1 -1
  94. package/dist/components/content/Tree/TreeNode.js +1 -1
  95. package/dist/components/content/Tree/checked-keys.js +1 -1
  96. package/dist/components/content/Tree/rowId.js +1 -1
  97. package/dist/components/content/Tree/styled.js +1 -1
  98. package/dist/components/content/Tree/tree-index.js +1 -1
  99. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  100. package/dist/components/content/Tree/use-load-data.js +1 -1
  101. package/dist/components/content/highlightText.js +1 -1
  102. package/dist/components/content/use-auto-tooltip.js +1 -1
  103. package/dist/components/data/DataTable/DataTable.js +1 -1
  104. package/dist/components/data/ItemTable/ItemTable.js +233 -178
  105. package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
  106. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  107. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  108. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  109. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  110. package/dist/components/data/ItemTable/index.d.ts +2 -2
  111. package/dist/components/data/ItemTable/item-table-sections.js +68 -0
  112. package/dist/components/data/ItemTable/item-table-sections.js.map +1 -0
  113. package/dist/components/data/ItemTable/types.d.ts +12 -0
  114. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  115. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  116. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  117. package/dist/components/data/ItemTable/use-item-table-selection.js +31 -27
  118. package/dist/components/data/ItemTable/use-item-table-selection.js.map +1 -1
  119. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  120. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  121. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  122. package/dist/components/data/TableBase/RowCollection.js +1 -1
  123. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  124. package/dist/components/data/TableBase/TableRow.js +1 -1
  125. package/dist/components/data/TableBase/TableRowLink.js +1 -1
  126. package/dist/components/data/TableBase/TableView.d.ts +1 -0
  127. package/dist/components/data/TableBase/TableView.js +86 -21
  128. package/dist/components/data/TableBase/TableView.js.map +1 -1
  129. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  130. package/dist/components/data/TableBase/column-header.js +1 -1
  131. package/dist/components/data/TableBase/column-menu.js +1 -1
  132. package/dist/components/data/TableBase/column-styles.js +1 -1
  133. package/dist/components/data/TableBase/column-tint.js +1 -1
  134. package/dist/components/data/TableBase/row-menu.js +1 -1
  135. package/dist/components/data/TableBase/styled.js +25 -1
  136. package/dist/components/data/TableBase/styled.js.map +1 -1
  137. package/dist/components/data/TableBase/table-body-sections.d.ts +3 -0
  138. package/dist/components/data/TableBase/table-body-sections.js +30 -0
  139. package/dist/components/data/TableBase/table-body-sections.js.map +1 -0
  140. package/dist/components/data/TableBase/table-tree.js +1 -1
  141. package/dist/components/data/TableBase/types.js +1 -1
  142. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  143. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  144. package/dist/components/data/TableBase/use-column-order.js +1 -1
  145. package/dist/components/data/TableBase/use-column-window.js +1 -1
  146. package/dist/components/data/TableBase/use-container-width.js +1 -1
  147. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  148. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  149. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  150. package/dist/components/data/TableBase/use-table-search.js +1 -1
  151. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  152. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  153. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  154. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  155. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  156. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  157. package/dist/components/data/index.d.ts +2 -2
  158. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  159. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  160. package/dist/components/fields/Checkbox/context.js +1 -1
  161. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  162. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  163. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  164. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  165. package/dist/components/fields/ComboBox/ComboBox.d.ts +1 -1
  166. package/dist/components/fields/ComboBox/ComboBox.js +382 -344
  167. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  168. package/dist/components/fields/ComboBox/comboBoxOptions.js +1 -1
  169. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  170. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  171. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  172. package/dist/components/fields/DatePicker/DateInput.js +3 -4
  173. package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
  174. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  175. package/dist/components/fields/DatePicker/DatePicker.js +3 -4
  176. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  177. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  178. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  179. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  180. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  181. package/dist/components/fields/DatePicker/DateRangePicker.js +3 -4
  182. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  183. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +3 -4
  184. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  185. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  186. package/dist/components/fields/DatePicker/PeriodPicker.js +3 -3
  187. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  188. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  189. package/dist/components/fields/DatePicker/TimeInput.js +4 -5
  190. package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
  191. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  192. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  193. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  194. package/dist/components/fields/DatePicker/period.js +1 -1
  195. package/dist/components/fields/DatePicker/props.js +1 -1
  196. package/dist/components/fields/DatePicker/utils.js +1 -1
  197. package/dist/components/fields/FileInput/FileInput.js +77 -79
  198. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  199. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  200. package/dist/components/fields/FilterListBox/styled.js +1 -1
  201. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  202. package/dist/components/fields/FilterPicker/FilterTree.js +1 -1
  203. package/dist/components/fields/Input/Input.js +1 -1
  204. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  205. package/dist/components/fields/ListBox/ListBox.js +1 -1
  206. package/dist/components/fields/ListBox/optionId.js +1 -1
  207. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  208. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  209. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  210. package/dist/components/fields/NumberInput/NumberInput.js +36 -19
  211. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  212. package/dist/components/fields/NumberInput/StepButton.js +52 -37
  213. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  214. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  215. package/dist/components/fields/Picker/Picker.js +1 -1
  216. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  217. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  218. package/dist/components/fields/RadioGroup/context.js +1 -1
  219. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  220. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  221. package/dist/components/fields/Select/Select.js +1 -1
  222. package/dist/components/fields/Slider/Gradation.js +1 -1
  223. package/dist/components/fields/Slider/HueSlider.js +1 -1
  224. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  225. package/dist/components/fields/Slider/Slider.js +1 -1
  226. package/dist/components/fields/Slider/SliderBase.js +1 -1
  227. package/dist/components/fields/Slider/SliderBase.js.map +1 -1
  228. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  229. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  230. package/dist/components/fields/Slider/elements.js +1 -1
  231. package/dist/components/fields/Slider/index.js +1 -1
  232. package/dist/components/fields/Slider/types.d.ts +0 -1
  233. package/dist/components/fields/Switch/Switch.js +1 -1
  234. package/dist/components/fields/TagInput/TagInput.js +1 -1
  235. package/dist/components/fields/TagInput/TagList.js +1 -1
  236. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  237. package/dist/components/fields/TagInput/useTagError.js +1 -1
  238. package/dist/components/fields/TextArea/TextArea.js +1 -1
  239. package/dist/components/fields/TextInput/TextInput.js +1 -1
  240. package/dist/components/fields/TextInput/TextInputBase.d.ts +10 -0
  241. package/dist/components/fields/TextInput/TextInputBase.js +67 -55
  242. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  243. package/dist/components/fields/TextInput/displayed-validation.js +1 -1
  244. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  245. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  246. package/dist/components/fields/TriggerActions.js +1 -1
  247. package/dist/components/fields/color/ColorPanel.js +1 -1
  248. package/dist/components/fields/color/channels.js +1 -1
  249. package/dist/components/fields/color/color.js +1 -1
  250. package/dist/components/fields/color/context.js +1 -1
  251. package/dist/components/fields/option-origin-press.js +1 -1
  252. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  253. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  254. package/dist/components/form/Form/Field.js +1 -1
  255. package/dist/components/form/Form/Form.js +1 -1
  256. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  257. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  258. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  259. package/dist/components/form/Form/SubmitError.js +1 -1
  260. package/dist/components/form/Form/backend.js +1 -1
  261. package/dist/components/form/Form/index.js +1 -1
  262. package/dist/components/form/Form/modern/actions.js +1 -1
  263. package/dist/components/form/Form/modern/context.js +1 -1
  264. package/dist/components/form/Form/modern/controller.js +1 -1
  265. package/dist/components/form/Form/modern/field-binding.js +1 -1
  266. package/dist/components/form/Form/modern/field.js +1 -1
  267. package/dist/components/form/Form/modern/react.js +1 -1
  268. package/dist/components/form/Form/modern/store.js +18 -2
  269. package/dist/components/form/Form/modern/store.js.map +1 -1
  270. package/dist/components/form/Form/modern/types.d.ts +5 -0
  271. package/dist/components/form/Form/modern/validation.js +1 -1
  272. package/dist/components/form/Form/modern/values.js +1 -1
  273. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  274. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  275. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  276. package/dist/components/form/Form/use-field/use-field.js +1 -1
  277. package/dist/components/form/Form/use-form.js +1 -1
  278. package/dist/components/form/Form/validation.js +1 -1
  279. package/dist/components/form/Label.js +1 -1
  280. package/dist/components/form/field-chrome.js +1 -1
  281. package/dist/components/form/field-layout.d.ts +12 -2
  282. package/dist/components/form/field-layout.js +29 -11
  283. package/dist/components/form/field-layout.js.map +1 -1
  284. package/dist/components/form/legacy-tooltip.js +1 -1
  285. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  286. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  287. package/dist/components/form/validation/use-validation-props.js +1 -1
  288. package/dist/components/form/wrapper.js +1 -1
  289. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  290. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  291. package/dist/components/layout/Flex.js +1 -1
  292. package/dist/components/layout/Flow.js +1 -1
  293. package/dist/components/layout/Grid.js +1 -1
  294. package/dist/components/layout/Panel.js +1 -1
  295. package/dist/components/layout/Prefix.js +1 -1
  296. package/dist/components/layout/ResizablePanel.js +1 -1
  297. package/dist/components/layout/Space.js +1 -1
  298. package/dist/components/layout/Suffix.js +1 -1
  299. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  300. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  301. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  302. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  303. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  304. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  305. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  306. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  307. package/dist/components/navigation/Tabs/Tabs.js +7 -3
  308. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  309. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  310. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  311. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  312. package/dist/components/navigation/Tabs/styled.js +18 -18
  313. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  314. package/dist/components/navigation/Tabs/types.js +1 -1
  315. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  316. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  317. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  318. package/dist/components/other/Calendar/Calendar.js +1 -1
  319. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  320. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  321. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  322. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  323. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  324. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  325. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  326. package/dist/components/other/Calendar/styled.js +1 -1
  327. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  328. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  329. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  330. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  331. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +2 -2
  332. package/dist/components/overlays/AlertDialog/types.d.ts +1 -1
  333. package/dist/components/overlays/Dialog/Dialog.js +9 -4
  334. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  335. package/dist/components/overlays/Dialog/DialogContainer.d.ts +7 -0
  336. package/dist/components/overlays/Dialog/DialogContainer.js +61 -32
  337. package/dist/components/overlays/Dialog/DialogContainer.js.map +1 -1
  338. package/dist/components/overlays/Dialog/DialogForm.d.ts +7 -0
  339. package/dist/components/overlays/Dialog/DialogForm.js +10 -3
  340. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  341. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +8 -0
  342. package/dist/components/overlays/Dialog/DialogTrigger.js +24 -11
  343. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  344. package/dist/components/overlays/Dialog/ModernDialogForm.js +213 -185
  345. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  346. package/dist/components/overlays/Dialog/context.js +1 -1
  347. package/dist/components/overlays/Dialog/context.js.map +1 -1
  348. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  349. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  350. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  351. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +1 -1
  352. package/dist/components/overlays/Dialog/use-dismiss-confirmation.js +211 -0
  353. package/dist/components/overlays/Dialog/use-dismiss-confirmation.js.map +1 -0
  354. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +1 -1
  355. package/dist/components/overlays/Modal/Modal.js +1 -1
  356. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  357. package/dist/components/overlays/Modal/Overlay.js +1 -1
  358. package/dist/components/overlays/Modal/Popover.js +1 -1
  359. package/dist/components/overlays/Modal/Tray.js +1 -1
  360. package/dist/components/overlays/Modal/Underlay.js +1 -1
  361. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  362. package/dist/components/overlays/Notifications/Notification.js +1 -1
  363. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  364. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  365. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  366. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  367. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  368. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  369. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  370. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  371. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  372. package/dist/components/overlays/Notifications/index.js +1 -1
  373. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  374. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  375. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  376. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  377. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  378. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  379. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  380. package/dist/components/overlays/Toast/index.js +1 -1
  381. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  382. package/dist/components/overlays/Toast/useToast.js +1 -1
  383. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  384. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  385. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  386. package/dist/components/overlays/Tooltip/context.js +1 -1
  387. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  388. package/dist/components/portal/Portal.js +1 -1
  389. package/dist/components/portal/PortalProvider.js +1 -1
  390. package/dist/components/portal/usePortal.js +1 -1
  391. package/dist/components/shared/DraggableCollection.js +1 -1
  392. package/dist/components/shared/InvalidIcon.js +1 -1
  393. package/dist/components/shared/ValidIcon.js +1 -1
  394. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  395. package/dist/components/status/Spin/Cube.js +1 -1
  396. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  397. package/dist/components/status/Spin/Spin.js +1 -1
  398. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  399. package/dist/data/item-themes.js +1 -1
  400. package/dist/data/themes.js +1 -1
  401. package/dist/eslint-plugin/defaults.generated.js +25 -1
  402. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  403. package/dist/eslint-plugin/index.js +1 -1
  404. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  405. package/dist/i18n/I18nProvider.js +1 -1
  406. package/dist/i18n/createFormatter.js +1 -1
  407. package/dist/i18n/index.js +1 -1
  408. package/dist/i18n/instance.js +1 -1
  409. package/dist/i18n/locales/de-DE/uikit.js +10 -2
  410. package/dist/i18n/locales/en-US/uikit.js +10 -2
  411. package/dist/i18n/locales/en-US/uikit.json.d.ts +11 -4
  412. package/dist/i18n/locales/es-ES/uikit.js +10 -2
  413. package/dist/i18n/locales/es-MX/uikit.js +10 -2
  414. package/dist/i18n/locales/fr-FR/uikit.js +10 -2
  415. package/dist/i18n/locales/it-IT/uikit.js +10 -2
  416. package/dist/i18n/locales/ja-JP/uikit.js +10 -2
  417. package/dist/i18n/locales/nb-NO/uikit.js +10 -2
  418. package/dist/i18n/locales/pt-BR/uikit.js +10 -2
  419. package/dist/i18n/locales/pt-PT/uikit.js +10 -2
  420. package/dist/i18n/locales/sv-SE/uikit.js +10 -2
  421. package/dist/i18n/locales/vi-VN/uikit.js +10 -2
  422. package/dist/i18n/locales.js +1 -1
  423. package/dist/i18n/namespace.js +1 -1
  424. package/dist/i18n/useFormatter.js +1 -1
  425. package/dist/i18n/useI18n.js +1 -1
  426. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  427. package/dist/icons/AdjustmentsIcon.js +1 -1
  428. package/dist/icons/AiIcon.js +1 -1
  429. package/dist/icons/AreaChartIcon.js +1 -1
  430. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  431. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  432. package/dist/icons/BackwardIcon.js +1 -1
  433. package/dist/icons/BarChartIcon.js +1 -1
  434. package/dist/icons/BellFilledIcon.js +1 -1
  435. package/dist/icons/BellIcon.js +1 -1
  436. package/dist/icons/BooleanIcon.js +1 -1
  437. package/dist/icons/CalendarEditIcon.js +1 -1
  438. package/dist/icons/CalendarIcon.js +1 -1
  439. package/dist/icons/CaretDownIcon.js +1 -1
  440. package/dist/icons/CaretUpIcon.js +1 -1
  441. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  442. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  443. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  444. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  445. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  446. package/dist/icons/ChartBarLineIcon.js +1 -1
  447. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  448. package/dist/icons/ChartBarStackedIcon.js +1 -1
  449. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  450. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  451. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  452. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  453. package/dist/icons/ChartBubbleIcon.js +1 -1
  454. package/dist/icons/ChartDonut2Icon.js +1 -1
  455. package/dist/icons/ChartFunnelIcon.js +1 -1
  456. package/dist/icons/ChartHeatmapIcon.js +1 -1
  457. package/dist/icons/ChartKPIIcon.js +1 -1
  458. package/dist/icons/ChartPie2Icon.js +1 -1
  459. package/dist/icons/ChartScatterIcon.js +1 -1
  460. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  461. package/dist/icons/CheckCircleIcon.js +1 -1
  462. package/dist/icons/CheckIcon.js +1 -1
  463. package/dist/icons/CircleFilledIcon.js +1 -1
  464. package/dist/icons/ClearIcon.js +1 -1
  465. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  466. package/dist/icons/CloseCircleIcon.js +1 -1
  467. package/dist/icons/CloseIcon.js +1 -1
  468. package/dist/icons/CodeIcon.js +1 -1
  469. package/dist/icons/ColumnTotalIcon.js +1 -1
  470. package/dist/icons/CopyIcon.js +1 -1
  471. package/dist/icons/CountIcon.js +1 -1
  472. package/dist/icons/CubeIcon.js +1 -1
  473. package/dist/icons/CubePauseIcon.js +1 -1
  474. package/dist/icons/CubePlayIcon.js +1 -1
  475. package/dist/icons/CurrencyDollarIcon.js +1 -1
  476. package/dist/icons/DangerIcon.js +1 -1
  477. package/dist/icons/DashboardIcon.js +1 -1
  478. package/dist/icons/DatabaseIcon.js +1 -1
  479. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  480. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  481. package/dist/icons/DirectionIcon.js +1 -1
  482. package/dist/icons/DonutIcon.js +1 -1
  483. package/dist/icons/DownIcon.js +1 -1
  484. package/dist/icons/EditIcon.js +1 -1
  485. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  486. package/dist/icons/ExclamationCircleIcon.js +1 -1
  487. package/dist/icons/ExclamationIcon.js +1 -1
  488. package/dist/icons/EyeIcon.js +1 -1
  489. package/dist/icons/EyeInvisibleIcon.js +1 -1
  490. package/dist/icons/FilterIcon.js +1 -1
  491. package/dist/icons/FolderFilledIcon.js +1 -1
  492. package/dist/icons/FolderIcon.js +1 -1
  493. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  494. package/dist/icons/FolderOpenIcon.js +1 -1
  495. package/dist/icons/ForwardIcon.js +1 -1
  496. package/dist/icons/GripVerticalIcon.js +1 -1
  497. package/dist/icons/HierarchyIcon.js +1 -1
  498. package/dist/icons/HierarchyOpenIcon.js +1 -1
  499. package/dist/icons/Icon.js +1 -1
  500. package/dist/icons/InfoCircleIcon.js +1 -1
  501. package/dist/icons/InfoIcon.js +1 -1
  502. package/dist/icons/KeyIcon.js +1 -1
  503. package/dist/icons/LeftIcon.js +1 -1
  504. package/dist/icons/LineChartIcon.js +1 -1
  505. package/dist/icons/LoadingIcon.js +1 -1
  506. package/dist/icons/LockFilledIcon.js +1 -1
  507. package/dist/icons/LockIcon.js +1 -1
  508. package/dist/icons/MoreIcon.js +1 -1
  509. package/dist/icons/NotAllowedIcon.js +1 -1
  510. package/dist/icons/Number123Icon.js +1 -1
  511. package/dist/icons/NumberIcon.js +1 -1
  512. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  513. package/dist/icons/PauseCircleIcon.js +1 -1
  514. package/dist/icons/PauseIcon.js +1 -1
  515. package/dist/icons/PercentageIcon.js +1 -1
  516. package/dist/icons/PieChartIcon.js +1 -1
  517. package/dist/icons/PipetteIcon.js +1 -1
  518. package/dist/icons/PlayCircleIcon.js +1 -1
  519. package/dist/icons/PlayIcon.js +1 -1
  520. package/dist/icons/PlusIcon.js +1 -1
  521. package/dist/icons/ProgressBarIcon.js +1 -1
  522. package/dist/icons/ReloadIcon.js +1 -1
  523. package/dist/icons/ReportIcon.js +1 -1
  524. package/dist/icons/ReturnIcon.js +1 -1
  525. package/dist/icons/RightIcon.js +1 -1
  526. package/dist/icons/RowTotalsIcon.js +1 -1
  527. package/dist/icons/SchemeIcon.js +1 -1
  528. package/dist/icons/SearchIcon.js +1 -1
  529. package/dist/icons/SemanticQueryIcon.js +1 -1
  530. package/dist/icons/SettingsIcon.js +1 -1
  531. package/dist/icons/ShieldFilledIcon.js +1 -1
  532. package/dist/icons/ShieldIcon.js +1 -1
  533. package/dist/icons/SlashIcon.js +1 -1
  534. package/dist/icons/SparklesIcon.js +1 -1
  535. package/dist/icons/SqlIcon.js +1 -1
  536. package/dist/icons/StatsIcon.js +1 -1
  537. package/dist/icons/StopIcon.js +1 -1
  538. package/dist/icons/StringIcon.js +1 -1
  539. package/dist/icons/SubtotalsIcon.js +1 -1
  540. package/dist/icons/SwitchIcon.js +1 -1
  541. package/dist/icons/TableIcon.js +1 -1
  542. package/dist/icons/ThumbsDownIcon.js +1 -1
  543. package/dist/icons/ThumbsUpIcon.js +1 -1
  544. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  545. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  546. package/dist/icons/ThunderboltIcon.js +1 -1
  547. package/dist/icons/TimeIcon.js +1 -1
  548. package/dist/icons/TrashIcon.js +1 -1
  549. package/dist/icons/UnlockIcon.js +1 -1
  550. package/dist/icons/UpIcon.js +1 -1
  551. package/dist/icons/UserGroupIcon.js +1 -1
  552. package/dist/icons/UserIcon.js +1 -1
  553. package/dist/icons/UserLockIcon.js +1 -1
  554. package/dist/icons/ViewIcon.js +1 -1
  555. package/dist/icons/WarningFilledIcon.js +1 -1
  556. package/dist/icons/WarningIcon.js +1 -1
  557. package/dist/icons/wrap-icon.js +1 -1
  558. package/dist/index.d.ts +2 -2
  559. package/dist/index.js +2 -2
  560. package/dist/probe/canonicalize.js +1 -1
  561. package/dist/probe/css.js +1 -1
  562. package/dist/probe/index.js +1 -1
  563. package/dist/provider.js +1 -1
  564. package/dist/providers/TrackingProvider.js +1 -1
  565. package/dist/providers/navigation-url.js +1 -1
  566. package/dist/providers/navigationAdapter.default.js +1 -1
  567. package/dist/providers/use-navigation.js +1 -1
  568. package/dist/tokens/all-tokens.js +1 -1
  569. package/dist/tokens/base.js +1 -1
  570. package/dist/tokens/color-seed.js +1 -1
  571. package/dist/tokens/color-theme.js +1 -1
  572. package/dist/tokens/colors.js +1 -1
  573. package/dist/tokens/layout.js +1 -1
  574. package/dist/tokens/lazy-styles.js +1 -1
  575. package/dist/tokens/legacy-color.js +1 -1
  576. package/dist/tokens/palette-config.js +1 -1
  577. package/dist/tokens/palette.js +1 -1
  578. package/dist/tokens/resolve.js +1 -1
  579. package/dist/tokens/shadows.js +1 -1
  580. package/dist/tokens/sizes.js +1 -1
  581. package/dist/tokens/spacing.js +1 -1
  582. package/dist/tokens/typography.js +1 -1
  583. package/dist/utils/ResizeSensor.js +1 -1
  584. package/dist/utils/colors.js +1 -1
  585. package/dist/utils/dotize.js +1 -1
  586. package/dist/utils/is-dev-env.js +1 -1
  587. package/dist/utils/modules.js +1 -1
  588. package/dist/utils/promise.js +1 -1
  589. package/dist/utils/raf.js +1 -1
  590. package/dist/utils/random.js +1 -1
  591. package/dist/utils/range.js +1 -1
  592. package/dist/utils/react/RenderCache.js +1 -1
  593. package/dist/utils/react/Slots.js +1 -1
  594. package/dist/utils/react/chain.js +1 -1
  595. package/dist/utils/react/disabledProps.js +1 -1
  596. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  597. package/dist/utils/react/index.js +1 -1
  598. package/dist/utils/react/interactions.js +1 -1
  599. package/dist/utils/react/isTextOnly.js +1 -1
  600. package/dist/utils/react/mapProps.js +1 -1
  601. package/dist/utils/react/mergeProps.js +1 -1
  602. package/dist/utils/react/nullableValue.js +1 -1
  603. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  604. package/dist/utils/react/programmaticFocus.js +1 -1
  605. package/dist/utils/react/resolveIcon.js +1 -1
  606. package/dist/utils/react/sharedStore.js +1 -1
  607. package/dist/utils/react/useBufferedValue.js +1 -1
  608. package/dist/utils/react/useCombinedRefs.js +1 -1
  609. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  610. package/dist/utils/react/useEventBus.js +1 -1
  611. package/dist/utils/react/useId.js +1 -1
  612. package/dist/utils/react/useIsDarwin.js +1 -1
  613. package/dist/utils/react/useKeySymbols.js +1 -1
  614. package/dist/utils/react/useLayoutEffect.js +1 -1
  615. package/dist/utils/react/useLocalStorage.js +1 -1
  616. package/dist/utils/react/useMergeStyles.js +1 -1
  617. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  618. package/dist/utils/react/usePopoverSync.js +1 -1
  619. package/dist/utils/react/useQaProps.js +1 -1
  620. package/dist/utils/react/useScheme.js +1 -1
  621. package/dist/utils/react/useViewportSize.js +1 -1
  622. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  623. package/dist/utils/selection.js +1 -1
  624. package/dist/utils/styles.js +1 -1
  625. package/dist/utils/tree.js +1 -1
  626. package/dist/utils/warnings.js +1 -1
  627. package/dist/version.js +2 -2
  628. package/docs/FieldProperties.md +16 -4
  629. package/docs/Usage.md +1 -1
  630. package/docs/components/data/ItemTable.md +25 -0
  631. package/docs/components/fields/ComboBox.md +8 -4
  632. package/docs/components/fields/CommandTextArea.md +1 -0
  633. package/docs/components/fields/HueSlider.md +0 -1
  634. package/docs/components/fields/NumberInput.md +4 -0
  635. package/docs/components/fields/PasswordInput.md +2 -0
  636. package/docs/components/fields/SearchInput.md +13 -0
  637. package/docs/components/fields/Slider.md +0 -1
  638. package/docs/components/fields/TextArea.md +1 -0
  639. package/docs/components/fields/TextInput.md +14 -1
  640. package/docs/components/navigation/Tabs.md +47 -0
  641. package/docs/components/overlays/Dialog.md +2 -2
  642. package/docs/components/overlays/DialogContainer.md +1 -0
  643. package/docs/components/overlays/DialogForm.md +3 -1
  644. package/docs/components/overlays/DialogTrigger.md +31 -1
  645. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | 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 { Title as _Title } from "../../content/Title.js";
@@ -16,7 +16,7 @@ import { getControllerInternals } from "../../form/Form/modern/controller.js";
16
16
  import { ModernFormRoot as _ModernFormRoot } from "../../form/Form/ModernFormRoot.js";
17
17
  import { SubmitButton as _SubmitButton } from "../../form/Form/SubmitButton/SubmitButton.js";
18
18
  import { c } from "react/compiler-runtime";
19
- import { useRef } from "react";
19
+ import { useEffect, useRef } from "react";
20
20
  import { jsx, jsxs } from "react/jsx-runtime";
21
21
  //#region src/components/overlays/Dialog/ModernDialogForm.tsx
22
22
  function finishSession(session) {
@@ -27,11 +27,12 @@ function finishSession(session) {
27
27
  }
28
28
  /** Modern dialogs own the editing session, including retained/hidden roots. */
29
29
  function ModernDialogForm(props) {
30
- const $ = c(107);
30
+ const $ = c(114);
31
31
  let action;
32
32
  let autoComplete;
33
33
  let cancelProps;
34
34
  let children;
35
+ let confirmDismiss;
35
36
  let danger;
36
37
  let defaultValues;
37
38
  let dialogProps;
@@ -66,120 +67,122 @@ function ModernDialogForm(props) {
66
67
  let validateTrigger;
67
68
  let validationState;
68
69
  if ($[0] !== props) {
69
- ({form, qa, title, danger, submitProps, cancelProps, noActions, preserve, children, onDismiss, name, defaultValues, onSubmit, onSubmitFailed, onValuesChange, onReset, onResetCapture, submitValues, labelStyles, labelPosition, labelWidth, orientation, requiredMark, necessityIndicator, isDisabled, isReadOnly, isInvalid, isValid, validationState, validateTrigger, showValid, action, method, target, encType, autoComplete, ...dialogProps} = props);
70
+ ({form, qa, title, danger, submitProps, cancelProps, noActions, preserve, confirmDismiss, children, onDismiss, name, defaultValues, onSubmit, onSubmitFailed, onValuesChange, onReset, onResetCapture, submitValues, labelStyles, labelPosition, labelWidth, orientation, requiredMark, necessityIndicator, isDisabled, isReadOnly, isInvalid, isValid, validationState, validateTrigger, showValid, action, method, target, encType, autoComplete, ...dialogProps} = props);
70
71
  $[0] = props;
71
72
  $[1] = action;
72
73
  $[2] = autoComplete;
73
74
  $[3] = cancelProps;
74
75
  $[4] = children;
75
- $[5] = danger;
76
- $[6] = defaultValues;
77
- $[7] = dialogProps;
78
- $[8] = encType;
79
- $[9] = form;
80
- $[10] = isDisabled;
81
- $[11] = isInvalid;
82
- $[12] = isReadOnly;
83
- $[13] = isValid;
84
- $[14] = labelPosition;
85
- $[15] = labelStyles;
86
- $[16] = labelWidth;
87
- $[17] = method;
88
- $[18] = name;
89
- $[19] = necessityIndicator;
90
- $[20] = noActions;
91
- $[21] = onDismiss;
92
- $[22] = onReset;
93
- $[23] = onResetCapture;
94
- $[24] = onSubmit;
95
- $[25] = onSubmitFailed;
96
- $[26] = onValuesChange;
97
- $[27] = orientation;
98
- $[28] = preserve;
99
- $[29] = qa;
100
- $[30] = requiredMark;
101
- $[31] = showValid;
102
- $[32] = submitProps;
103
- $[33] = submitValues;
104
- $[34] = target;
105
- $[35] = title;
106
- $[36] = validateTrigger;
107
- $[37] = validationState;
76
+ $[5] = confirmDismiss;
77
+ $[6] = danger;
78
+ $[7] = defaultValues;
79
+ $[8] = dialogProps;
80
+ $[9] = encType;
81
+ $[10] = form;
82
+ $[11] = isDisabled;
83
+ $[12] = isInvalid;
84
+ $[13] = isReadOnly;
85
+ $[14] = isValid;
86
+ $[15] = labelPosition;
87
+ $[16] = labelStyles;
88
+ $[17] = labelWidth;
89
+ $[18] = method;
90
+ $[19] = name;
91
+ $[20] = necessityIndicator;
92
+ $[21] = noActions;
93
+ $[22] = onDismiss;
94
+ $[23] = onReset;
95
+ $[24] = onResetCapture;
96
+ $[25] = onSubmit;
97
+ $[26] = onSubmitFailed;
98
+ $[27] = onValuesChange;
99
+ $[28] = orientation;
100
+ $[29] = preserve;
101
+ $[30] = qa;
102
+ $[31] = requiredMark;
103
+ $[32] = showValid;
104
+ $[33] = submitProps;
105
+ $[34] = submitValues;
106
+ $[35] = target;
107
+ $[36] = title;
108
+ $[37] = validateTrigger;
109
+ $[38] = validationState;
108
110
  } else {
109
111
  action = $[1];
110
112
  autoComplete = $[2];
111
113
  cancelProps = $[3];
112
114
  children = $[4];
113
- danger = $[5];
114
- defaultValues = $[6];
115
- dialogProps = $[7];
116
- encType = $[8];
117
- form = $[9];
118
- isDisabled = $[10];
119
- isInvalid = $[11];
120
- isReadOnly = $[12];
121
- isValid = $[13];
122
- labelPosition = $[14];
123
- labelStyles = $[15];
124
- labelWidth = $[16];
125
- method = $[17];
126
- name = $[18];
127
- necessityIndicator = $[19];
128
- noActions = $[20];
129
- onDismiss = $[21];
130
- onReset = $[22];
131
- onResetCapture = $[23];
132
- onSubmit = $[24];
133
- onSubmitFailed = $[25];
134
- onValuesChange = $[26];
135
- orientation = $[27];
136
- preserve = $[28];
137
- qa = $[29];
138
- requiredMark = $[30];
139
- showValid = $[31];
140
- submitProps = $[32];
141
- submitValues = $[33];
142
- target = $[34];
143
- title = $[35];
144
- validateTrigger = $[36];
145
- validationState = $[37];
115
+ confirmDismiss = $[5];
116
+ danger = $[6];
117
+ defaultValues = $[7];
118
+ dialogProps = $[8];
119
+ encType = $[9];
120
+ form = $[10];
121
+ isDisabled = $[11];
122
+ isInvalid = $[12];
123
+ isReadOnly = $[13];
124
+ isValid = $[14];
125
+ labelPosition = $[15];
126
+ labelStyles = $[16];
127
+ labelWidth = $[17];
128
+ method = $[18];
129
+ name = $[19];
130
+ necessityIndicator = $[20];
131
+ noActions = $[21];
132
+ onDismiss = $[22];
133
+ onReset = $[23];
134
+ onResetCapture = $[24];
135
+ onSubmit = $[25];
136
+ onSubmitFailed = $[26];
137
+ onValuesChange = $[27];
138
+ orientation = $[28];
139
+ preserve = $[29];
140
+ qa = $[30];
141
+ requiredMark = $[31];
142
+ showValid = $[32];
143
+ submitProps = $[33];
144
+ submitValues = $[34];
145
+ target = $[35];
146
+ title = $[36];
147
+ validateTrigger = $[37];
148
+ validationState = $[38];
146
149
  }
147
150
  const { t } = useI18n();
148
- const { onClose, isOpen } = useDialogContext();
151
+ const { onClose, isOpen, registerUnsavedChanges } = useDialogContext();
149
152
  let t0;
150
- if ($[38] !== form) {
153
+ if ($[39] !== form) {
151
154
  t0 = getControllerInternals(form, "<DialogForm>");
152
- $[38] = form;
153
- $[39] = t0;
154
- } else t0 = $[39];
155
+ $[39] = form;
156
+ $[40] = t0;
157
+ } else t0 = $[40];
155
158
  const internals = t0;
156
159
  const transition = useOpenTransitionContext();
157
160
  const isClosing = isOpen === void 0 ? transition?.transitionState === "exit" || transition?.transitionState === "unmounted" : !isOpen;
158
161
  const session = useRef(void 0);
159
162
  let t1;
160
- if ($[40] !== onClose || $[41] !== onDismiss) {
163
+ if ($[41] !== onClose || $[42] !== onDismiss) {
161
164
  t1 = () => {
162
165
  finishSession(session.current);
163
166
  onClose?.();
164
167
  onDismiss?.();
165
168
  };
166
- $[40] = onClose;
167
- $[41] = onDismiss;
168
- $[42] = t1;
169
- } else t1 = $[42];
169
+ $[41] = onClose;
170
+ $[42] = onDismiss;
171
+ $[43] = t1;
172
+ } else t1 = $[43];
170
173
  const dismiss = useEvent(t1);
171
174
  let t2;
172
- if ($[43] !== onClose) {
175
+ if ($[44] !== onClose) {
173
176
  t2 = () => {
174
177
  finishSession(session.current);
175
178
  onClose?.();
176
179
  };
177
- $[43] = onClose;
178
- $[44] = t2;
179
- } else t2 = $[44];
180
+ $[44] = onClose;
181
+ $[45] = t2;
182
+ } else t2 = $[45];
180
183
  const submitted = useEvent(t2);
181
184
  let t3;
182
- if ($[45] !== form || $[46] !== isClosing || $[47] !== preserve) {
185
+ if ($[46] !== form || $[47] !== isClosing || $[48] !== preserve) {
183
186
  t3 = () => {
184
187
  if (session.current?.form !== form) session.current = {
185
188
  form,
@@ -193,15 +196,40 @@ function ModernDialogForm(props) {
193
196
  if (!isClosing && !current.wasOpen) current.ended = false;
194
197
  current.wasOpen = !isClosing;
195
198
  };
196
- $[45] = form;
197
- $[46] = isClosing;
198
- $[47] = preserve;
199
- $[48] = t3;
200
- } else t3 = $[48];
199
+ $[46] = form;
200
+ $[47] = isClosing;
201
+ $[48] = preserve;
202
+ $[49] = t3;
203
+ } else t3 = $[49];
201
204
  useLayoutEffect$1(t3);
202
205
  let t4;
203
- if ($[49] !== internals) {
204
- t4 = () => {
206
+ let t5;
207
+ if ($[50] !== confirmDismiss || $[51] !== internals || $[52] !== preserve || $[53] !== registerUnsavedChanges) {
208
+ t4 = () => registerUnsavedChanges?.(() => {
209
+ if (confirmDismiss !== void 0) return confirmDismiss;
210
+ if (preserve) return false;
211
+ return internals.store.hasUserEdits?.() ?? false;
212
+ });
213
+ t5 = [
214
+ registerUnsavedChanges,
215
+ internals,
216
+ preserve,
217
+ confirmDismiss
218
+ ];
219
+ $[50] = confirmDismiss;
220
+ $[51] = internals;
221
+ $[52] = preserve;
222
+ $[53] = registerUnsavedChanges;
223
+ $[54] = t4;
224
+ $[55] = t5;
225
+ } else {
226
+ t4 = $[54];
227
+ t5 = $[55];
228
+ }
229
+ useEffect(t4, t5);
230
+ let t6;
231
+ if ($[56] !== internals) {
232
+ t6 = () => {
205
233
  const own = session.current;
206
234
  return () => {
207
235
  queueMicrotask(() => {
@@ -209,44 +237,44 @@ function ModernDialogForm(props) {
209
237
  });
210
238
  };
211
239
  };
212
- $[49] = internals;
213
- $[50] = t4;
214
- } else t4 = $[50];
215
- let t5;
216
- if ($[51] !== form || $[52] !== internals) {
217
- t5 = [form, internals];
218
- $[51] = form;
219
- $[52] = internals;
220
- $[53] = t5;
221
- } else t5 = $[53];
222
- useLayoutEffect$1(t4, t5);
223
- const t6 = `${qa || ""}Dialog`;
240
+ $[56] = internals;
241
+ $[57] = t6;
242
+ } else t6 = $[57];
224
243
  let t7;
225
- if ($[54] !== title) {
226
- t7 = /* @__PURE__ */ jsx(Header, { children: /* @__PURE__ */ jsx(_Title, {
244
+ if ($[58] !== form || $[59] !== internals) {
245
+ t7 = [form, internals];
246
+ $[58] = form;
247
+ $[59] = internals;
248
+ $[60] = t7;
249
+ } else t7 = $[60];
250
+ useLayoutEffect$1(t6, t7);
251
+ const t8 = `${qa || ""}Dialog`;
252
+ let t9;
253
+ if ($[61] !== title) {
254
+ t9 = /* @__PURE__ */ jsx(Header, { children: /* @__PURE__ */ jsx(_Title, {
227
255
  ellipsis: true,
228
256
  children: title
229
257
  }) });
230
- $[54] = title;
231
- $[55] = t7;
232
- } else t7 = $[55];
233
- const t8 = qa || "DialogForm";
234
- let t9;
235
- if ($[56] !== children || $[57] !== dismiss) {
236
- t9 = typeof children === "function" ? children(dismiss) : children;
237
- $[56] = children;
238
- $[57] = dismiss;
239
- $[58] = t9;
240
- } else t9 = $[58];
241
- let t10;
242
- if ($[59] !== t9) {
243
- t10 = /* @__PURE__ */ jsx(Content, { children: t9 });
244
- $[59] = t9;
245
- $[60] = t10;
246
- } else t10 = $[60];
258
+ $[61] = title;
259
+ $[62] = t9;
260
+ } else t9 = $[62];
261
+ const t10 = qa || "DialogForm";
247
262
  let t11;
248
- if ($[61] !== cancelProps || $[62] !== danger || $[63] !== dismiss || $[64] !== noActions || $[65] !== qa || $[66] !== submitProps || $[67] !== t) {
249
- t11 = !noActions && /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsxs(ButtonGroup, { children: [/* @__PURE__ */ jsx(_SubmitButton, {
263
+ if ($[63] !== children || $[64] !== dismiss) {
264
+ t11 = typeof children === "function" ? children(dismiss) : children;
265
+ $[63] = children;
266
+ $[64] = dismiss;
267
+ $[65] = t11;
268
+ } else t11 = $[65];
269
+ let t12;
270
+ if ($[66] !== t11) {
271
+ t12 = /* @__PURE__ */ jsx(Content, { children: t11 });
272
+ $[66] = t11;
273
+ $[67] = t12;
274
+ } else t12 = $[67];
275
+ let t13;
276
+ if ($[68] !== cancelProps || $[69] !== danger || $[70] !== dismiss || $[71] !== noActions || $[72] !== qa || $[73] !== submitProps || $[74] !== t) {
277
+ t13 = !noActions && /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsxs(ButtonGroup, { children: [/* @__PURE__ */ jsx(_SubmitButton, {
250
278
  qa: `${qa || ""}SubmitButton`,
251
279
  theme: danger ? "danger" : void 0,
252
280
  ...withDefaultButtonText(submitProps, t("dialogForm.submit", "Submit"))
@@ -255,21 +283,21 @@ function ModernDialogForm(props) {
255
283
  onPress: dismiss,
256
284
  ...withDefaultButtonText(cancelProps, t("dialogForm.cancel", "Cancel"))
257
285
  })] }) });
258
- $[61] = cancelProps;
259
- $[62] = danger;
260
- $[63] = dismiss;
261
- $[64] = noActions;
262
- $[65] = qa;
263
- $[66] = submitProps;
264
- $[67] = t;
265
- $[68] = t11;
266
- } else t11 = $[68];
267
- let t12;
268
- if ($[69] !== action || $[70] !== autoComplete || $[71] !== defaultValues || $[72] !== encType || $[73] !== form || $[74] !== isDisabled || $[75] !== isInvalid || $[76] !== isReadOnly || $[77] !== isValid || $[78] !== labelPosition || $[79] !== labelStyles || $[80] !== labelWidth || $[81] !== method || $[82] !== name || $[83] !== necessityIndicator || $[84] !== onReset || $[85] !== onResetCapture || $[86] !== onSubmit || $[87] !== onSubmitFailed || $[88] !== onValuesChange || $[89] !== orientation || $[90] !== requiredMark || $[91] !== showValid || $[92] !== submitValues || $[93] !== submitted || $[94] !== t10 || $[95] !== t11 || $[96] !== t8 || $[97] !== target || $[98] !== validateTrigger || $[99] !== validationState) {
269
- t12 = /* @__PURE__ */ jsxs(_ModernFormRoot, {
286
+ $[68] = cancelProps;
287
+ $[69] = danger;
288
+ $[70] = dismiss;
289
+ $[71] = noActions;
290
+ $[72] = qa;
291
+ $[73] = submitProps;
292
+ $[74] = t;
293
+ $[75] = t13;
294
+ } else t13 = $[75];
295
+ let t14;
296
+ if ($[76] !== action || $[77] !== autoComplete || $[78] !== defaultValues || $[79] !== encType || $[80] !== form || $[81] !== isDisabled || $[82] !== isInvalid || $[83] !== isReadOnly || $[84] !== isValid || $[85] !== labelPosition || $[86] !== labelStyles || $[87] !== labelWidth || $[88] !== method || $[89] !== name || $[90] !== necessityIndicator || $[91] !== onReset || $[92] !== onResetCapture || $[93] !== onSubmit || $[94] !== onSubmitFailed || $[95] !== onValuesChange || $[96] !== orientation || $[97] !== requiredMark || $[98] !== showValid || $[99] !== submitValues || $[100] !== submitted || $[101] !== t10 || $[102] !== t12 || $[103] !== t13 || $[104] !== target || $[105] !== validateTrigger || $[106] !== validationState) {
297
+ t14 = /* @__PURE__ */ jsxs(_ModernFormRoot, {
270
298
  "data-popover-keep-on-press": true,
271
299
  form,
272
- qa: t8,
300
+ qa: t10,
273
301
  name,
274
302
  defaultValues,
275
303
  onSubmit,
@@ -297,57 +325,57 @@ function ModernDialogForm(props) {
297
325
  target,
298
326
  encType,
299
327
  autoComplete,
300
- children: [t10, t11]
328
+ children: [t12, t13]
301
329
  });
302
- $[69] = action;
303
- $[70] = autoComplete;
304
- $[71] = defaultValues;
305
- $[72] = encType;
306
- $[73] = form;
307
- $[74] = isDisabled;
308
- $[75] = isInvalid;
309
- $[76] = isReadOnly;
310
- $[77] = isValid;
311
- $[78] = labelPosition;
312
- $[79] = labelStyles;
313
- $[80] = labelWidth;
314
- $[81] = method;
315
- $[82] = name;
316
- $[83] = necessityIndicator;
317
- $[84] = onReset;
318
- $[85] = onResetCapture;
319
- $[86] = onSubmit;
320
- $[87] = onSubmitFailed;
321
- $[88] = onValuesChange;
322
- $[89] = orientation;
323
- $[90] = requiredMark;
324
- $[91] = showValid;
325
- $[92] = submitValues;
326
- $[93] = submitted;
327
- $[94] = t10;
328
- $[95] = t11;
329
- $[96] = t8;
330
- $[97] = target;
331
- $[98] = validateTrigger;
332
- $[99] = validationState;
333
- $[100] = t12;
334
- } else t12 = $[100];
335
- let t13;
336
- if ($[101] !== dialogProps || $[102] !== dismiss || $[103] !== t12 || $[104] !== t6 || $[105] !== t7) {
337
- t13 = /* @__PURE__ */ jsxs(Dialog, {
330
+ $[76] = action;
331
+ $[77] = autoComplete;
332
+ $[78] = defaultValues;
333
+ $[79] = encType;
334
+ $[80] = form;
335
+ $[81] = isDisabled;
336
+ $[82] = isInvalid;
337
+ $[83] = isReadOnly;
338
+ $[84] = isValid;
339
+ $[85] = labelPosition;
340
+ $[86] = labelStyles;
341
+ $[87] = labelWidth;
342
+ $[88] = method;
343
+ $[89] = name;
344
+ $[90] = necessityIndicator;
345
+ $[91] = onReset;
346
+ $[92] = onResetCapture;
347
+ $[93] = onSubmit;
348
+ $[94] = onSubmitFailed;
349
+ $[95] = onValuesChange;
350
+ $[96] = orientation;
351
+ $[97] = requiredMark;
352
+ $[98] = showValid;
353
+ $[99] = submitValues;
354
+ $[100] = submitted;
355
+ $[101] = t10;
356
+ $[102] = t12;
357
+ $[103] = t13;
358
+ $[104] = target;
359
+ $[105] = validateTrigger;
360
+ $[106] = validationState;
361
+ $[107] = t14;
362
+ } else t14 = $[107];
363
+ let t15;
364
+ if ($[108] !== dialogProps || $[109] !== dismiss || $[110] !== t14 || $[111] !== t8 || $[112] !== t9) {
365
+ t15 = /* @__PURE__ */ jsxs(Dialog, {
338
366
  ...dialogProps,
339
- qa: t6,
367
+ qa: t8,
340
368
  onDismiss: dismiss,
341
- children: [t7, t12]
369
+ children: [t9, t14]
342
370
  });
343
- $[101] = dialogProps;
344
- $[102] = dismiss;
345
- $[103] = t12;
346
- $[104] = t6;
347
- $[105] = t7;
348
- $[106] = t13;
349
- } else t13 = $[106];
350
- return t13;
371
+ $[108] = dialogProps;
372
+ $[109] = dismiss;
373
+ $[110] = t14;
374
+ $[111] = t8;
375
+ $[112] = t9;
376
+ $[113] = t15;
377
+ } else t15 = $[113];
378
+ return t15;
351
379
  }
352
380
  //#endregion
353
381
  export { ModernDialogForm };
@@ -1 +1 @@
1
- {"version":3,"file":"ModernDialogForm.js","names":["useRef","useEvent","useI18n","useLayoutEffect","Button","ButtonGroup","Content","Footer","Header","Title","getControllerInternals","ModernFormRoot","SubmitButton","useOpenTransitionContext","useDialogContext","withDefaultButtonText","Dialog","FormController","ModernDialogFormProps","DialogSession","form","T","preserve","ended","wasOpen","finishSession","session","store","cancelSubmission","reset","ModernDialogForm","props","$","_c","action","autoComplete","cancelProps","children","danger","defaultValues","dialogProps","encType","isDisabled","isInvalid","isReadOnly","isValid","labelPosition","labelStyles","labelWidth","method","name","necessityIndicator","noActions","onDismiss","onReset","onResetCapture","onSubmit","onSubmitFailed","onValuesChange","orientation","qa","requiredMark","showValid","submitProps","submitValues","target","title","validateTrigger","validationState","t","onClose","isOpen","t0","internals","transition","isClosing","undefined","transitionState","t1","current","dismiss","t2","submitted","t3","t4","own","queueMicrotask","getRootElement","t5","t6","t7","t8","t9","t10","t11","t12","t13","_c","Title","SubmitButton","ModernFormRoot"],"sources":["../../../../src/components/overlays/Dialog/ModernDialogForm.tsx"],"sourcesContent":["import { useRef } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Button } from '../../actions/Button/Button';\nimport { ButtonGroup } from '../../actions/ButtonGroup/ButtonGroup';\nimport { Content } from '../../content/Content';\nimport { Footer } from '../../content/Footer';\nimport { Header } from '../../content/Header';\nimport { Title } from '../../content/Title';\nimport { getControllerInternals } from '../../form/Form/modern/controller';\nimport { ModernFormRoot } from '../../form/Form/ModernFormRoot';\nimport { SubmitButton } from '../../form/Form/SubmitButton/SubmitButton';\nimport { useOpenTransitionContext } from '../Modal/OpenTransitionContext';\n\nimport { useDialogContext } from './context';\nimport { withDefaultButtonText } from './default-button-text';\nimport { Dialog } from './Dialog';\n\nimport type { FormController } from '../../form/Form/modern/controller';\nimport type { ModernDialogFormProps } from './DialogForm';\n\ninterface DialogSession<T extends object> {\n form: FormController<T>;\n preserve?: boolean;\n ended: boolean;\n wasOpen: boolean;\n}\n\nfunction finishSession<T extends object>(session?: DialogSession<T>) {\n if (!session || session.ended) return;\n session.ended = true;\n getControllerInternals(session.form, '<DialogForm>').store.cancelSubmission();\n if (!session.preserve) session.form.reset();\n}\n\n/** Modern dialogs own the editing session, including retained/hidden roots. */\nexport function ModernDialogForm<T extends object>(\n props: ModernDialogFormProps<T>,\n) {\n const {\n form,\n qa,\n title,\n danger,\n submitProps,\n cancelProps,\n noActions,\n preserve,\n children,\n onDismiss,\n name,\n defaultValues,\n onSubmit,\n onSubmitFailed,\n onValuesChange,\n onReset,\n onResetCapture,\n submitValues,\n labelStyles,\n labelPosition,\n labelWidth,\n orientation,\n requiredMark,\n necessityIndicator,\n isDisabled,\n isReadOnly,\n isInvalid,\n isValid,\n validationState,\n validateTrigger,\n showValid,\n action,\n method,\n target,\n encType,\n autoComplete,\n ...dialogProps\n } = props;\n const { t } = useI18n();\n const { onClose, isOpen } = useDialogContext();\n const internals = getControllerInternals(form, '<DialogForm>');\n const transition = useOpenTransitionContext();\n const isClosing =\n isOpen === undefined\n ? transition?.transitionState === 'exit' ||\n transition?.transitionState === 'unmounted'\n : !isOpen;\n const session = useRef<DialogSession<T> | undefined>(undefined);\n const dismiss = useEvent(() => {\n finishSession(session.current);\n onClose?.();\n onDismiss?.();\n });\n const submitted = useEvent(() => {\n finishSession(session.current);\n onClose?.();\n });\n\n // Escape, outside clicks, and controlled closing belong to the container.\n // Only an open -> closed transition ends a session; hidden initial mounts\n // must not discard a controller that the caller has already populated.\n useLayoutEffect(() => {\n if (session.current?.form !== form) {\n session.current = { form, preserve, ended: false, wasOpen: !isClosing };\n }\n const current = session.current;\n current.preserve = preserve;\n if (isClosing && current.wasOpen) finishSession(current);\n if (!isClosing && !current.wasOpen) current.ended = false;\n current.wasOpen = !isClosing;\n });\n\n // Portals may relocate (remounting this component) and Strict Mode reconnects\n // effects. A replacement root owns the same session; only a detached\n // controller should reset after real removal. Capture that controller's\n // session, so replacing it cannot apply the new controller's preserve policy.\n useLayoutEffect(() => {\n const own = session.current;\n return () => {\n queueMicrotask(() => {\n if (!internals.getRootElement()) finishSession(own);\n });\n };\n }, [form, internals]);\n\n return (\n <Dialog {...dialogProps} qa={`${qa || ''}Dialog`} onDismiss={dismiss}>\n <Header>\n <Title ellipsis>{title}</Title>\n </Header>\n {/*\n The form wraps BOTH slots rather than sitting inside `Content`, so the\n actions can live in a pinned `Footer` while the body scrolls. They still\n have to be inside the `<form>` for submit to work, which is why the form\n is the outer one of the two (CUB-4920). A form placed directly in a\n `Dialog` lays itself out as the dialog's column (see `FormElement`).\n\n A press on any of its buttons, custom actions included, must not\n dismiss a popover the dialog lives in: a save has to survive\n validation and a slow request. Only presses, though. The broader\n `data-popover-keep` also tells a field's open listbox that a click\n anywhere in the form is not outside it, so the listbox stayed open\n (CUB-5251).\n */}\n <ModernFormRoot\n data-popover-keep-on-press\n form={form}\n qa={qa || 'DialogForm'}\n name={name}\n defaultValues={defaultValues}\n onSubmit={onSubmit}\n onSubmitted={submitted}\n onSubmitFailed={onSubmitFailed}\n onValuesChange={onValuesChange}\n onReset={onReset}\n onResetCapture={onResetCapture}\n submitValues={submitValues}\n labelStyles={labelStyles}\n labelPosition={labelPosition}\n labelWidth={labelWidth}\n orientation={orientation}\n requiredMark={requiredMark}\n necessityIndicator={necessityIndicator}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isInvalid={isInvalid}\n isValid={isValid}\n validationState={validationState}\n validateTrigger={validateTrigger}\n showValid={showValid}\n action={action}\n method={method}\n target={target}\n encType={encType}\n autoComplete={autoComplete}\n >\n <Content>\n {typeof children === 'function' ? children(dismiss) : children}\n </Content>\n\n {!noActions && (\n <Footer>\n <ButtonGroup>\n <SubmitButton\n qa={`${qa || ''}SubmitButton`}\n theme={danger ? 'danger' : undefined}\n {...withDefaultButtonText(\n submitProps,\n t('dialogForm.submit', 'Submit'),\n )}\n />\n <Button\n qa={`${qa || ''}CancelButton`}\n onPress={dismiss}\n {...withDefaultButtonText(\n cancelProps,\n t('dialogForm.cancel', 'Cancel'),\n )}\n />\n </ButtonGroup>\n </Footer>\n )}\n </ModernFormRoot>\n </Dialog>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ModernDialogForm.js","names":["useEffect","useRef","useEvent","useI18n","useLayoutEffect","Button","ButtonGroup","Content","Footer","Header","Title","getControllerInternals","ModernFormRoot","SubmitButton","useOpenTransitionContext","useDialogContext","withDefaultButtonText","Dialog","FormController","ModernDialogFormProps","DialogSession","form","T","preserve","ended","wasOpen","finishSession","session","store","cancelSubmission","reset","ModernDialogForm","props","$","_c","action","autoComplete","cancelProps","children","confirmDismiss","danger","defaultValues","dialogProps","encType","isDisabled","isInvalid","isReadOnly","isValid","labelPosition","labelStyles","labelWidth","method","name","necessityIndicator","noActions","onDismiss","onReset","onResetCapture","onSubmit","onSubmitFailed","onValuesChange","orientation","qa","requiredMark","showValid","submitProps","submitValues","target","title","validateTrigger","validationState","t","onClose","isOpen","registerUnsavedChanges","t0","internals","transition","isClosing","undefined","transitionState","t1","current","dismiss","t2","submitted","t3","t4","t5","hasUserEdits","t6","own","queueMicrotask","getRootElement","t7","t8","t9","t10","t11","t12","t13","t14","t15","_c","Title","SubmitButton","ModernFormRoot"],"sources":["../../../../src/components/overlays/Dialog/ModernDialogForm.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks/use-event';\nimport { useI18n } from '../../../i18n';\nimport { useLayoutEffect } from '../../../utils/react/useLayoutEffect';\nimport { Button } from '../../actions/Button/Button';\nimport { ButtonGroup } from '../../actions/ButtonGroup/ButtonGroup';\nimport { Content } from '../../content/Content';\nimport { Footer } from '../../content/Footer';\nimport { Header } from '../../content/Header';\nimport { Title } from '../../content/Title';\nimport { getControllerInternals } from '../../form/Form/modern/controller';\nimport { ModernFormRoot } from '../../form/Form/ModernFormRoot';\nimport { SubmitButton } from '../../form/Form/SubmitButton/SubmitButton';\nimport { useOpenTransitionContext } from '../Modal/OpenTransitionContext';\n\nimport { useDialogContext } from './context';\nimport { withDefaultButtonText } from './default-button-text';\nimport { Dialog } from './Dialog';\n\nimport type { FormController } from '../../form/Form/modern/controller';\nimport type { ModernDialogFormProps } from './DialogForm';\n\ninterface DialogSession<T extends object> {\n form: FormController<T>;\n preserve?: boolean;\n ended: boolean;\n wasOpen: boolean;\n}\n\nfunction finishSession<T extends object>(session?: DialogSession<T>) {\n if (!session || session.ended) return;\n session.ended = true;\n getControllerInternals(session.form, '<DialogForm>').store.cancelSubmission();\n if (!session.preserve) session.form.reset();\n}\n\n/** Modern dialogs own the editing session, including retained/hidden roots. */\nexport function ModernDialogForm<T extends object>(\n props: ModernDialogFormProps<T>,\n) {\n const {\n form,\n qa,\n title,\n danger,\n submitProps,\n cancelProps,\n noActions,\n preserve,\n confirmDismiss,\n children,\n onDismiss,\n name,\n defaultValues,\n onSubmit,\n onSubmitFailed,\n onValuesChange,\n onReset,\n onResetCapture,\n submitValues,\n labelStyles,\n labelPosition,\n labelWidth,\n orientation,\n requiredMark,\n necessityIndicator,\n isDisabled,\n isReadOnly,\n isInvalid,\n isValid,\n validationState,\n validateTrigger,\n showValid,\n action,\n method,\n target,\n encType,\n autoComplete,\n ...dialogProps\n } = props;\n const { t } = useI18n();\n const { onClose, isOpen, registerUnsavedChanges } = useDialogContext();\n const internals = getControllerInternals(form, '<DialogForm>');\n const transition = useOpenTransitionContext();\n const isClosing =\n isOpen === undefined\n ? transition?.transitionState === 'exit' ||\n transition?.transitionState === 'unmounted'\n : !isOpen;\n const session = useRef<DialogSession<T> | undefined>(undefined);\n const dismiss = useEvent(() => {\n finishSession(session.current);\n onClose?.();\n onDismiss?.();\n });\n const submitted = useEvent(() => {\n finishSession(session.current);\n onClose?.();\n });\n\n // Escape, outside clicks, and controlled closing belong to the container.\n // Only an open -> closed transition ends a session; hidden initial mounts\n // must not discard a controller that the caller has already populated.\n useLayoutEffect(() => {\n if (session.current?.form !== form) {\n session.current = { form, preserve, ended: false, wasOpen: !isClosing };\n }\n const current = session.current;\n current.preserve = preserve;\n if (isClosing && current.wasOpen) finishSession(current);\n if (!isClosing && !current.wasOpen) current.ended = false;\n current.wasOpen = !isClosing;\n });\n\n // Escape, an outside click and the close button ask before they discard\n // what the user typed: fields they edited away from their defaults. A value\n // set from code, even in a field the user then visited, is not an edit.\n // `preserve` keeps the values anyway.\n useEffect(\n () =>\n registerUnsavedChanges?.(() => {\n if (confirmDismiss !== undefined) return confirmDismiss;\n if (preserve) return false;\n\n // A controller from an older copy of the kit can't tell; it never asks.\n return internals.store.hasUserEdits?.() ?? false;\n }),\n [registerUnsavedChanges, internals, preserve, confirmDismiss],\n );\n\n // Portals may relocate (remounting this component) and Strict Mode reconnects\n // effects. A replacement root owns the same session; only a detached\n // controller should reset after real removal. Capture that controller's\n // session, so replacing it cannot apply the new controller's preserve policy.\n useLayoutEffect(() => {\n const own = session.current;\n return () => {\n queueMicrotask(() => {\n if (!internals.getRootElement()) finishSession(own);\n });\n };\n }, [form, internals]);\n\n return (\n <Dialog {...dialogProps} qa={`${qa || ''}Dialog`} onDismiss={dismiss}>\n <Header>\n <Title ellipsis>{title}</Title>\n </Header>\n {/*\n The form wraps BOTH slots rather than sitting inside `Content`, so the\n actions can live in a pinned `Footer` while the body scrolls. They still\n have to be inside the `<form>` for submit to work, which is why the form\n is the outer one of the two (CUB-4920). A form placed directly in a\n `Dialog` lays itself out as the dialog's column (see `FormElement`).\n\n A press on any of its buttons, custom actions included, must not\n dismiss a popover the dialog lives in: a save has to survive\n validation and a slow request. Only presses, though. The broader\n `data-popover-keep` also tells a field's open listbox that a click\n anywhere in the form is not outside it, so the listbox stayed open\n (CUB-5251).\n */}\n <ModernFormRoot\n data-popover-keep-on-press\n form={form}\n qa={qa || 'DialogForm'}\n name={name}\n defaultValues={defaultValues}\n onSubmit={onSubmit}\n onSubmitted={submitted}\n onSubmitFailed={onSubmitFailed}\n onValuesChange={onValuesChange}\n onReset={onReset}\n onResetCapture={onResetCapture}\n submitValues={submitValues}\n labelStyles={labelStyles}\n labelPosition={labelPosition}\n labelWidth={labelWidth}\n orientation={orientation}\n requiredMark={requiredMark}\n necessityIndicator={necessityIndicator}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isInvalid={isInvalid}\n isValid={isValid}\n validationState={validationState}\n validateTrigger={validateTrigger}\n showValid={showValid}\n action={action}\n method={method}\n target={target}\n encType={encType}\n autoComplete={autoComplete}\n >\n <Content>\n {typeof children === 'function' ? children(dismiss) : children}\n </Content>\n\n {!noActions && (\n <Footer>\n <ButtonGroup>\n <SubmitButton\n qa={`${qa || ''}SubmitButton`}\n theme={danger ? 'danger' : undefined}\n {...withDefaultButtonText(\n submitProps,\n t('dialogForm.submit', 'Submit'),\n )}\n />\n <Button\n qa={`${qa || ''}CancelButton`}\n onPress={dismiss}\n {...withDefaultButtonText(\n cancelProps,\n t('dialogForm.cancel', 'Cancel'),\n )}\n />\n </ButtonGroup>\n </Footer>\n )}\n </ModernFormRoot>\n </Dialog>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
  import invariant from "tiny-invariant";
4
4
  //#region src/components/overlays/Dialog/context.tsx
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["createContext","HTMLAttributes","useContext","invariant","DialogContextValue","HTMLElement","type","isDismissable","onClose","arg","isOpen","shouldRestoreFocus","trapsFocus","DialogContext","useDialogContext","dialogContext"],"sources":["../../../../src/components/overlays/Dialog/context.tsx"],"sourcesContent":["import { createContext, HTMLAttributes, useContext } from 'react';\nimport invariant from 'tiny-invariant';\n\nexport interface DialogContextValue extends HTMLAttributes<HTMLElement> {\n type?:\n | 'modal'\n | 'popover'\n | 'tray'\n | 'fullscreen'\n | 'fullscreenTakeover'\n | 'panel';\n isDismissable?: boolean;\n onClose?: (arg?: string) => void;\n isOpen?: boolean;\n /**\n * Whether closing the dialog restores focus to its trigger. Set by\n * `DialogTrigger`'s `shouldRestoreFocus` prop; consumed by `Dialog`'s\n * `FocusScope` (which owns the restore for popover-type dialogs) and by its\n * restore for a retained (`hideOnClose`) dialog. Defaults\n * to `true` when absent, so a `Dialog` rendered outside a trigger keeps\n * restoring focus.\n */\n shouldRestoreFocus?: boolean;\n}\n\n/**\n * Whether the dialog keeps Tab inside it while open. A panel leaves the page\n * usable, and so does a popover that is not dismissable: an outside press\n * reaches its control, and focus has to follow it there, into a text field\n * too.\n */\nexport function trapsFocus({ type, isDismissable }: DialogContextValue) {\n return type !== 'panel' && !(type === 'popover' && isDismissable === false);\n}\n\nexport const DialogContext = createContext<DialogContextValue | null>({});\n\nexport function useDialogContext() {\n const dialogContext = useContext(DialogContext);\n\n invariant(dialogContext !== null, '');\n\n return dialogContext;\n}\n"],"mappings":";;;;;;;;;;AA+BA,SAAgBY,WAAW,EAAEN,MAAMC,iBAAqC;CACtE,OAAOD,SAAS,WAAW,EAAEA,SAAS,aAAaC,kBAAkB;AACvE;AAEA,MAAaM,gBAAgBb,cAAyC,CAAC,CAAC;AAExE,SAAOc,mBAAA;CACL,MAAAC,gBAAsBb,WAAWW,aAAa;CAE9CV,UAAUY,kBAAkB,MAAM,EAAE;CAAC,OAE9BA;AAAa"}
1
+ {"version":3,"file":"context.js","names":["createContext","HTMLAttributes","useContext","invariant","DialogContextValue","HTMLElement","type","isDismissable","onClose","arg","isOpen","shouldRestoreFocus","requestDismiss","dismiss","registerUnsavedChanges","hasUnsavedChanges","trapsFocus","DialogContext","useDialogContext","dialogContext"],"sources":["../../../../src/components/overlays/Dialog/context.tsx"],"sourcesContent":["import { createContext, HTMLAttributes, useContext } from 'react';\nimport invariant from 'tiny-invariant';\n\nexport interface DialogContextValue extends HTMLAttributes<HTMLElement> {\n type?:\n | 'modal'\n | 'popover'\n | 'tray'\n | 'fullscreen'\n | 'fullscreenTakeover'\n | 'panel';\n isDismissable?: boolean;\n onClose?: (arg?: string) => void;\n isOpen?: boolean;\n /**\n * Whether closing the dialog restores focus to its trigger. Set by\n * `DialogTrigger`'s `shouldRestoreFocus` prop; consumed by `Dialog`'s\n * `FocusScope` (which owns the restore for popover-type dialogs) and by its\n * restore for a retained (`hideOnClose`) dialog. Defaults\n * to `true` when absent, so a `Dialog` rendered outside a trigger keeps\n * restoring focus.\n */\n shouldRestoreFocus?: boolean;\n /**\n * Runs a passive dismissal, such as the close button's: at once, or after\n * the user confirms discarding unsaved edits. See `useDismissConfirmation`.\n */\n requestDismiss?: (dismiss: () => void) => void;\n /**\n * How a `DialogForm` reports unsaved edits to its trigger or container.\n * Returns the unregister.\n */\n registerUnsavedChanges?: (hasUnsavedChanges: () => boolean) => () => void;\n}\n\n/**\n * Whether the dialog keeps Tab inside it while open. A panel leaves the page\n * usable, and so does a popover that is not dismissable: an outside press\n * reaches its control, and focus has to follow it there, into a text field\n * too.\n */\nexport function trapsFocus({ type, isDismissable }: DialogContextValue) {\n return type !== 'panel' && !(type === 'popover' && isDismissable === false);\n}\n\nexport const DialogContext = createContext<DialogContextValue | null>({});\n\nexport function useDialogContext() {\n const dialogContext = useContext(DialogContext);\n\n invariant(dialogContext !== null, '');\n\n return dialogContext;\n}\n"],"mappings":";;;;;;;;;;AAyCA,SAAgBgB,WAAW,EAAEV,MAAMC,iBAAqC;CACtE,OAAOD,SAAS,WAAW,EAAEA,SAAS,aAAaC,kBAAkB;AACvE;AAEA,MAAaU,gBAAgBjB,cAAyC,CAAC,CAAC;AAExE,SAAOkB,mBAAA;CACL,MAAAC,gBAAsBjB,WAAWe,aAAa;CAE9Cd,UAAUgB,kBAAkB,MAAM,EAAE;CAAC,OAE9BA;AAAa"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | Cube Dev Team */
2
2
  //#region src/components/overlays/Dialog/default-button-text.ts
3
3
  /**
4
4
  * Gives a dialog's built-in button its default text without overriding the
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { DialogContainer } from "./DialogContainer.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.202.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.204.0 | Cube Dev Team */
2
2
  import { useEventBus } from "../../../utils/react/useEventBus.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useEffectEvent } from "react";