@carbon/react 1.83.0 → 1.84.0-rc.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 (510) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +980 -945
  2. package/README.md +1 -1
  3. package/es/components/AILabel/index.js +27 -30
  4. package/es/components/AISkeleton/AISkeletonIcon.js +4 -5
  5. package/es/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
  6. package/es/components/AISkeleton/AISkeletonText.js +4 -5
  7. package/es/components/Accordion/Accordion.Skeleton.js +9 -10
  8. package/es/components/Accordion/Accordion.js +10 -11
  9. package/es/components/Accordion/AccordionItem.js +13 -14
  10. package/es/components/Accordion/AccordionProvider.js +4 -5
  11. package/es/components/AspectRatio/AspectRatio.js +7 -8
  12. package/es/components/BadgeIndicator/index.js +5 -6
  13. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
  14. package/es/components/Button/Button.Skeleton.js +7 -8
  15. package/es/components/Button/ButtonBase.js +23 -24
  16. package/es/components/ChatButton/ChatButton.Skeleton.js +5 -6
  17. package/es/components/ChatButton/ChatButton.js +11 -12
  18. package/es/components/Checkbox/Checkbox.Skeleton.js +4 -5
  19. package/es/components/Checkbox/Checkbox.js +19 -20
  20. package/es/components/CheckboxGroup/CheckboxGroup.js +16 -17
  21. package/es/components/ClassPrefix/index.js +4 -5
  22. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
  23. package/es/components/CodeSnippet/CodeSnippet.js +25 -26
  24. package/es/components/ComboBox/ComboBox.js +24 -30
  25. package/es/components/ComboBox/tools/filter.js +9 -12
  26. package/es/components/ComboButton/index.js +16 -18
  27. package/es/components/ComposedModal/ComposedModal.js +31 -34
  28. package/es/components/ComposedModal/ModalFooter.js +37 -42
  29. package/es/components/ComposedModal/ModalHeader.js +14 -15
  30. package/es/components/ContainedList/ContainedList.js +10 -11
  31. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
  32. package/es/components/ContentSwitcher/ContentSwitcher.d.ts +9 -29
  33. package/es/components/ContentSwitcher/ContentSwitcher.js +96 -128
  34. package/es/components/ContentSwitcher/index.d.ts +3 -4
  35. package/es/components/ContextMenu/useContextMenu.js +1 -2
  36. package/es/components/Copy/Copy.js +11 -12
  37. package/es/components/CopyButton/CopyButton.js +10 -11
  38. package/es/components/DataTable/DataTable.js +45 -53
  39. package/es/components/DataTable/Table.js +15 -18
  40. package/es/components/DataTable/TableBatchAction.js +8 -11
  41. package/es/components/DataTable/TableBatchActions.js +18 -20
  42. package/es/components/DataTable/TableBody.js +8 -11
  43. package/es/components/DataTable/TableContainer.js +9 -10
  44. package/es/components/DataTable/TableDecoratorRow.js +4 -5
  45. package/es/components/DataTable/TableExpandHeader.js +14 -15
  46. package/es/components/DataTable/TableExpandRow.js +13 -14
  47. package/es/components/DataTable/TableExpandedRow.js +6 -7
  48. package/es/components/DataTable/TableHeader.js +15 -16
  49. package/es/components/DataTable/TableSelectAll.js +11 -12
  50. package/es/components/DataTable/TableSelectRow.js +12 -13
  51. package/es/components/DataTable/TableSlugRow.js +4 -5
  52. package/es/components/DataTable/TableToolbar.js +7 -8
  53. package/es/components/DataTable/TableToolbarMenu.js +8 -9
  54. package/es/components/DataTable/TableToolbarSearch.js +22 -24
  55. package/es/components/DataTable/state/sorting.js +3 -4
  56. package/es/components/DataTable/tools/filter.js +10 -12
  57. package/es/components/DataTable/tools/normalize.js +6 -8
  58. package/es/components/DataTable/tools/sorting.js +24 -30
  59. package/es/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
  60. package/es/components/DatePicker/DatePicker.Skeleton.js +7 -8
  61. package/es/components/DatePicker/DatePicker.js +88 -65
  62. package/es/components/DatePickerInput/DatePickerInput.js +5 -6
  63. package/es/components/Dialog/index.d.ts +193 -8
  64. package/es/components/Dialog/index.js +454 -35
  65. package/es/components/Dropdown/Dropdown.Skeleton.js +6 -7
  66. package/es/components/Dropdown/Dropdown.js +40 -43
  67. package/es/components/ErrorBoundary/ErrorBoundary.js +2 -2
  68. package/es/components/ExpandableSearch/ExpandableSearch.js +9 -10
  69. package/es/components/FeatureFlags/index.js +11 -12
  70. package/es/components/FileUploader/FileUploader.Skeleton.js +4 -5
  71. package/es/components/FileUploader/FileUploader.js +22 -24
  72. package/es/components/FileUploader/FileUploaderButton.js +16 -17
  73. package/es/components/FileUploader/FileUploaderDropContainer.js +15 -16
  74. package/es/components/FileUploader/FileUploaderItem.js +13 -14
  75. package/es/components/FileUploader/Filename.js +9 -10
  76. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
  77. package/es/components/FluidComboBox/FluidComboBox.js +5 -6
  78. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
  79. package/es/components/FluidDatePicker/FluidDatePicker.js +10 -11
  80. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
  81. package/es/components/FluidDropdown/FluidDropdown.js +5 -6
  82. package/es/components/FluidForm/FluidForm.js +5 -6
  83. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
  84. package/es/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
  85. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
  86. package/es/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  87. package/es/components/FluidNumberInput/FluidNumberInput.js +38 -5
  88. package/es/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
  89. package/es/components/FluidSearch/FluidSearch.js +4 -5
  90. package/es/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
  91. package/es/components/FluidSelect/FluidSelect.js +5 -6
  92. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
  93. package/es/components/FluidTextArea/FluidTextArea.js +4 -5
  94. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
  95. package/es/components/FluidTextInput/FluidTextInput.js +5 -6
  96. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
  97. package/es/components/FluidTimePicker/FluidTimePicker.js +11 -12
  98. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
  99. package/es/components/Form/Form.js +5 -6
  100. package/es/components/FormGroup/FormGroup.js +11 -12
  101. package/es/components/FormItem/FormItem.js +5 -6
  102. package/es/components/FormLabel/FormLabel.js +6 -7
  103. package/es/components/Grid/CSSGrid.js +17 -19
  104. package/es/components/Grid/Column.js +28 -27
  105. package/es/components/Grid/ColumnHang.js +6 -7
  106. package/es/components/Grid/FlexGrid.js +9 -10
  107. package/es/components/Grid/GridContext.js +5 -6
  108. package/es/components/Grid/Row.js +8 -9
  109. package/es/components/Heading/index.js +5 -6
  110. package/es/components/Icon/Icon.Skeleton.js +4 -5
  111. package/es/components/IconButton/index.js +20 -21
  112. package/es/components/IconIndicator/index.js +7 -8
  113. package/es/components/IdPrefix/index.js +4 -5
  114. package/es/components/InlineLoading/InlineLoading.js +9 -10
  115. package/es/components/Layer/index.js +8 -9
  116. package/es/components/Layout/index.js +21 -26
  117. package/es/components/LayoutDirection/LayoutDirection.js +6 -7
  118. package/es/components/Link/Link.d.ts +1 -1
  119. package/es/components/Link/Link.js +14 -15
  120. package/es/components/ListBox/ListBoxField.js +6 -7
  121. package/es/components/ListBox/ListBoxMenu.js +5 -6
  122. package/es/components/ListBox/ListBoxMenuIcon.js +4 -5
  123. package/es/components/ListBox/ListBoxMenuItem.js +8 -10
  124. package/es/components/ListBox/ListBoxSelection.js +8 -9
  125. package/es/components/ListBox/next/ListBoxSelection.js +9 -10
  126. package/es/components/ListBox/next/ListBoxTrigger.js +5 -6
  127. package/es/components/ListItem/ListItem.js +5 -6
  128. package/es/components/Loading/Loading.js +8 -9
  129. package/es/components/Menu/Menu.js +23 -24
  130. package/es/components/Menu/MenuItem.js +39 -44
  131. package/es/components/MenuButton/index.js +16 -18
  132. package/es/components/Modal/Modal.js +55 -63
  133. package/es/components/ModalWrapper/ModalWrapper.js +2 -2
  134. package/es/components/MultiSelect/FilterableMultiSelect.js +46 -48
  135. package/es/components/MultiSelect/MultiSelect.js +43 -45
  136. package/es/components/MultiSelect/tools/sorting.js +11 -15
  137. package/es/components/Notification/Notification.js +96 -105
  138. package/es/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  139. package/es/components/NumberInput/NumberFormatPropTypes.js +40 -0
  140. package/es/components/NumberInput/NumberInput.Skeleton.js +6 -7
  141. package/es/components/NumberInput/NumberInput.d.ts +39 -3
  142. package/es/components/NumberInput/NumberInput.js +174 -44
  143. package/es/components/OrderedList/OrderedList.js +7 -8
  144. package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  145. package/es/components/OverflowMenu/OverflowMenu.js +35 -41
  146. package/es/components/OverflowMenu/next/index.js +12 -13
  147. package/es/components/PageHeader/PageHeader.d.ts +29 -5
  148. package/es/components/PageHeader/PageHeader.js +119 -73
  149. package/es/components/Pagination/Pagination.Skeleton.js +4 -5
  150. package/es/components/Pagination/Pagination.js +24 -25
  151. package/es/components/Pagination/experimental/PageSelector.js +8 -9
  152. package/es/components/Pagination/experimental/Pagination.js +20 -21
  153. package/es/components/PaginationNav/PaginationNav.js +33 -38
  154. package/es/components/Popover/index.js +26 -28
  155. package/es/components/ProgressBar/ProgressBar.js +11 -12
  156. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
  157. package/es/components/ProgressIndicator/ProgressIndicator.js +29 -32
  158. package/es/components/RadioTile/RadioTile.js +17 -18
  159. package/es/components/Search/Search.Skeleton.js +5 -6
  160. package/es/components/Search/Search.js +26 -28
  161. package/es/components/Select/Select.Skeleton.js +5 -6
  162. package/es/components/Select/Select.js +24 -25
  163. package/es/components/SelectItem/SelectItem.js +8 -9
  164. package/es/components/SelectItemGroup/SelectItemGroup.js +7 -8
  165. package/es/components/ShapeIndicator/index.js +7 -8
  166. package/es/components/SkeletonIcon/SkeletonIcon.js +4 -5
  167. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
  168. package/es/components/SkeletonText/SkeletonText.js +8 -9
  169. package/es/components/Slider/Slider.Skeleton.js +8 -9
  170. package/es/components/Slider/Slider.js +69 -83
  171. package/es/components/Slider/SliderHandles.js +6 -6
  172. package/es/components/StructuredList/StructuredList.Skeleton.js +5 -6
  173. package/es/components/Tabs/Tabs.Skeleton.js +5 -6
  174. package/es/components/Tabs/Tabs.js +83 -98
  175. package/es/components/Tabs/usePressable.js +7 -8
  176. package/es/components/Tag/DismissibleTag.js +16 -17
  177. package/es/components/Tag/OperationalTag.js +10 -11
  178. package/es/components/Tag/SelectableTag.js +13 -14
  179. package/es/components/Tag/Tag.Skeleton.js +5 -6
  180. package/es/components/Tag/Tag.js +19 -20
  181. package/es/components/Text/Text.js +6 -7
  182. package/es/components/Text/TextDirection.js +5 -6
  183. package/es/components/TextArea/TextArea.js +3 -3
  184. package/es/components/TextInput/ControlledPasswordInput.js +24 -25
  185. package/es/components/TextInput/PasswordInput.js +26 -27
  186. package/es/components/TextInput/TextInput.Skeleton.js +5 -6
  187. package/es/components/TextInput/TextInput.js +27 -28
  188. package/es/components/TextInput/util.js +14 -17
  189. package/es/components/Theme/index.js +10 -12
  190. package/es/components/Tile/Tile.js +68 -74
  191. package/es/components/Toggle/Toggle.Skeleton.js +4 -5
  192. package/es/components/Toggle/Toggle.js +17 -18
  193. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
  194. package/es/components/Toggletip/index.js +33 -39
  195. package/es/components/Tooltip/DefinitionTooltip.js +13 -14
  196. package/es/components/Tooltip/Tooltip.js +15 -16
  197. package/es/components/TreeView/TreeNode.js +20 -21
  198. package/es/components/TreeView/TreeView.js +14 -16
  199. package/es/components/UIShell/Content.js +6 -7
  200. package/es/components/UIShell/Header.js +5 -6
  201. package/es/components/UIShell/HeaderContainer.js +5 -6
  202. package/es/components/UIShell/HeaderGlobalAction.js +12 -13
  203. package/es/components/UIShell/HeaderMenu.d.ts +10 -112
  204. package/es/components/UIShell/HeaderMenu.js +154 -201
  205. package/es/components/UIShell/HeaderMenuButton.js +10 -11
  206. package/es/components/UIShell/HeaderMenuItem.js +10 -11
  207. package/es/components/UIShell/HeaderName.js +6 -7
  208. package/es/components/UIShell/HeaderNavigation.js +7 -8
  209. package/es/components/UIShell/HeaderPanel.js +9 -10
  210. package/es/components/UIShell/HeaderSideNavItems.js +5 -6
  211. package/es/components/UIShell/Link.js +8 -9
  212. package/es/components/UIShell/SideNav.js +23 -25
  213. package/es/components/UIShell/SideNavDetails.js +6 -7
  214. package/es/components/UIShell/SideNavDivider.js +3 -4
  215. package/es/components/UIShell/SideNavFooter.js +6 -7
  216. package/es/components/UIShell/SideNavHeader.js +5 -6
  217. package/es/components/UIShell/SideNavIcon.js +5 -6
  218. package/es/components/UIShell/SideNavItem.js +5 -6
  219. package/es/components/UIShell/SideNavItems.js +5 -6
  220. package/es/components/UIShell/SideNavLink.js +10 -11
  221. package/es/components/UIShell/SideNavLinkText.js +5 -6
  222. package/es/components/UIShell/SideNavMenu.js +11 -12
  223. package/es/components/UIShell/SkipToContent.js +7 -8
  224. package/es/components/UIShell/Switcher.js +4 -5
  225. package/es/components/UIShell/SwitcherDivider.js +4 -5
  226. package/es/components/UnorderedList/UnorderedList.js +6 -7
  227. package/es/index.js +2 -2
  228. package/es/internal/FloatingMenu.js +26 -28
  229. package/es/internal/Selection.js +15 -17
  230. package/es/internal/getAnnouncement.d.ts +8 -0
  231. package/es/internal/getAnnouncement.js +22 -0
  232. package/es/internal/keyboard/match.js +6 -7
  233. package/es/internal/useControllableState.d.ts +1 -1
  234. package/es/internal/useControllableState.js +8 -9
  235. package/es/internal/useDelayedState.js +1 -2
  236. package/es/internal/useDocumentLang.d.ts +12 -0
  237. package/es/internal/useId.js +2 -4
  238. package/es/internal/useMatchMedia.js +1 -2
  239. package/es/internal/useMergedRefs.d.ts +1 -1
  240. package/es/internal/useNoInteractiveChildren.js +2 -4
  241. package/es/internal/useNormalizedInputProps.js +9 -10
  242. package/es/internal/useResizeObserver.js +4 -5
  243. package/es/internal/useSavedCallback.js +1 -3
  244. package/es/internal/wrapFocus.js +20 -29
  245. package/es/prop-types/deprecate.js +1 -4
  246. package/es/prop-types/deprecateValuesWithin.js +1 -4
  247. package/es/prop-types/isRequiredOneOf.js +1 -4
  248. package/es/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  249. package/es/tools/events.js +1 -4
  250. package/es/tools/mergeRefs.js +9 -14
  251. package/es/tools/uniqueId.js +1 -2
  252. package/es/tools/wrapComponent.js +9 -11
  253. package/lib/components/AILabel/index.js +27 -30
  254. package/lib/components/AISkeleton/AISkeletonIcon.js +4 -5
  255. package/lib/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
  256. package/lib/components/AISkeleton/AISkeletonText.js +4 -5
  257. package/lib/components/Accordion/Accordion.Skeleton.js +9 -10
  258. package/lib/components/Accordion/Accordion.js +10 -11
  259. package/lib/components/Accordion/AccordionItem.js +13 -14
  260. package/lib/components/Accordion/AccordionProvider.js +4 -5
  261. package/lib/components/AspectRatio/AspectRatio.js +7 -8
  262. package/lib/components/BadgeIndicator/index.js +5 -6
  263. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
  264. package/lib/components/Button/Button.Skeleton.js +7 -8
  265. package/lib/components/Button/ButtonBase.js +23 -24
  266. package/lib/components/ChatButton/ChatButton.Skeleton.js +5 -6
  267. package/lib/components/ChatButton/ChatButton.js +11 -12
  268. package/lib/components/Checkbox/Checkbox.Skeleton.js +4 -5
  269. package/lib/components/Checkbox/Checkbox.js +19 -20
  270. package/lib/components/CheckboxGroup/CheckboxGroup.js +16 -17
  271. package/lib/components/ClassPrefix/index.js +4 -5
  272. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
  273. package/lib/components/CodeSnippet/CodeSnippet.js +25 -26
  274. package/lib/components/ComboBox/ComboBox.js +24 -30
  275. package/lib/components/ComboBox/tools/filter.js +9 -12
  276. package/lib/components/ComboButton/index.js +16 -18
  277. package/lib/components/ComposedModal/ComposedModal.js +31 -34
  278. package/lib/components/ComposedModal/ModalFooter.js +37 -42
  279. package/lib/components/ComposedModal/ModalHeader.js +14 -15
  280. package/lib/components/ContainedList/ContainedList.js +10 -11
  281. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
  282. package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +9 -29
  283. package/lib/components/ContentSwitcher/ContentSwitcher.js +94 -126
  284. package/lib/components/ContentSwitcher/index.d.ts +3 -4
  285. package/lib/components/ContextMenu/useContextMenu.js +1 -2
  286. package/lib/components/Copy/Copy.js +11 -12
  287. package/lib/components/CopyButton/CopyButton.js +10 -11
  288. package/lib/components/DataTable/DataTable.js +45 -53
  289. package/lib/components/DataTable/Table.js +15 -18
  290. package/lib/components/DataTable/TableBatchAction.js +8 -11
  291. package/lib/components/DataTable/TableBatchActions.js +18 -20
  292. package/lib/components/DataTable/TableBody.js +8 -11
  293. package/lib/components/DataTable/TableContainer.js +9 -10
  294. package/lib/components/DataTable/TableDecoratorRow.js +4 -5
  295. package/lib/components/DataTable/TableExpandHeader.js +14 -15
  296. package/lib/components/DataTable/TableExpandRow.js +13 -14
  297. package/lib/components/DataTable/TableExpandedRow.js +6 -7
  298. package/lib/components/DataTable/TableHeader.js +15 -16
  299. package/lib/components/DataTable/TableSelectAll.js +11 -12
  300. package/lib/components/DataTable/TableSelectRow.js +12 -13
  301. package/lib/components/DataTable/TableSlugRow.js +4 -5
  302. package/lib/components/DataTable/TableToolbar.js +7 -8
  303. package/lib/components/DataTable/TableToolbarMenu.js +8 -9
  304. package/lib/components/DataTable/TableToolbarSearch.js +22 -24
  305. package/lib/components/DataTable/state/sorting.js +3 -4
  306. package/lib/components/DataTable/tools/filter.js +10 -12
  307. package/lib/components/DataTable/tools/normalize.js +6 -8
  308. package/lib/components/DataTable/tools/sorting.js +24 -30
  309. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
  310. package/lib/components/DatePicker/DatePicker.Skeleton.js +7 -8
  311. package/lib/components/DatePicker/DatePicker.js +87 -64
  312. package/lib/components/DatePickerInput/DatePickerInput.js +5 -6
  313. package/lib/components/Dialog/index.d.ts +193 -8
  314. package/lib/components/Dialog/index.js +457 -33
  315. package/lib/components/Dropdown/Dropdown.Skeleton.js +6 -7
  316. package/lib/components/Dropdown/Dropdown.js +40 -43
  317. package/lib/components/ErrorBoundary/ErrorBoundary.js +2 -2
  318. package/lib/components/ExpandableSearch/ExpandableSearch.js +9 -10
  319. package/lib/components/FeatureFlags/index.js +11 -12
  320. package/lib/components/FileUploader/FileUploader.Skeleton.js +4 -5
  321. package/lib/components/FileUploader/FileUploader.js +22 -24
  322. package/lib/components/FileUploader/FileUploaderButton.js +16 -17
  323. package/lib/components/FileUploader/FileUploaderDropContainer.js +15 -16
  324. package/lib/components/FileUploader/FileUploaderItem.js +13 -14
  325. package/lib/components/FileUploader/Filename.js +9 -10
  326. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
  327. package/lib/components/FluidComboBox/FluidComboBox.js +5 -6
  328. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
  329. package/lib/components/FluidDatePicker/FluidDatePicker.js +10 -11
  330. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
  331. package/lib/components/FluidDropdown/FluidDropdown.js +5 -6
  332. package/lib/components/FluidForm/FluidForm.js +5 -6
  333. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
  334. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
  335. package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
  336. package/lib/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  337. package/lib/components/FluidNumberInput/FluidNumberInput.js +38 -5
  338. package/lib/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
  339. package/lib/components/FluidSearch/FluidSearch.js +4 -5
  340. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
  341. package/lib/components/FluidSelect/FluidSelect.js +5 -6
  342. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
  343. package/lib/components/FluidTextArea/FluidTextArea.js +4 -5
  344. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
  345. package/lib/components/FluidTextInput/FluidTextInput.js +5 -6
  346. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
  347. package/lib/components/FluidTimePicker/FluidTimePicker.js +11 -12
  348. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
  349. package/lib/components/Form/Form.js +5 -6
  350. package/lib/components/FormGroup/FormGroup.js +11 -12
  351. package/lib/components/FormItem/FormItem.js +5 -6
  352. package/lib/components/FormLabel/FormLabel.js +6 -7
  353. package/lib/components/Grid/CSSGrid.js +17 -19
  354. package/lib/components/Grid/Column.js +28 -27
  355. package/lib/components/Grid/ColumnHang.js +6 -7
  356. package/lib/components/Grid/FlexGrid.js +9 -10
  357. package/lib/components/Grid/GridContext.js +5 -6
  358. package/lib/components/Grid/Row.js +8 -9
  359. package/lib/components/Heading/index.js +5 -6
  360. package/lib/components/Icon/Icon.Skeleton.js +4 -5
  361. package/lib/components/IconButton/index.js +20 -21
  362. package/lib/components/IconIndicator/index.js +7 -8
  363. package/lib/components/IdPrefix/index.js +4 -5
  364. package/lib/components/InlineLoading/InlineLoading.js +9 -10
  365. package/lib/components/Layer/index.js +8 -9
  366. package/lib/components/Layout/index.js +21 -26
  367. package/lib/components/LayoutDirection/LayoutDirection.js +6 -7
  368. package/lib/components/Link/Link.d.ts +1 -1
  369. package/lib/components/Link/Link.js +14 -15
  370. package/lib/components/ListBox/ListBoxField.js +6 -7
  371. package/lib/components/ListBox/ListBoxMenu.js +5 -6
  372. package/lib/components/ListBox/ListBoxMenuIcon.js +4 -5
  373. package/lib/components/ListBox/ListBoxMenuItem.js +8 -10
  374. package/lib/components/ListBox/ListBoxSelection.js +8 -9
  375. package/lib/components/ListBox/next/ListBoxSelection.js +9 -10
  376. package/lib/components/ListBox/next/ListBoxTrigger.js +5 -6
  377. package/lib/components/ListItem/ListItem.js +5 -6
  378. package/lib/components/Loading/Loading.js +8 -9
  379. package/lib/components/Menu/Menu.js +23 -24
  380. package/lib/components/Menu/MenuItem.js +39 -44
  381. package/lib/components/MenuButton/index.js +16 -18
  382. package/lib/components/Modal/Modal.js +55 -63
  383. package/lib/components/ModalWrapper/ModalWrapper.js +2 -2
  384. package/lib/components/MultiSelect/FilterableMultiSelect.js +45 -47
  385. package/lib/components/MultiSelect/MultiSelect.js +43 -45
  386. package/lib/components/MultiSelect/tools/sorting.js +11 -15
  387. package/lib/components/Notification/Notification.js +96 -105
  388. package/lib/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  389. package/lib/components/NumberInput/NumberFormatPropTypes.js +48 -0
  390. package/lib/components/NumberInput/NumberInput.Skeleton.js +6 -7
  391. package/lib/components/NumberInput/NumberInput.d.ts +39 -3
  392. package/lib/components/NumberInput/NumberInput.js +173 -43
  393. package/lib/components/OrderedList/OrderedList.js +7 -8
  394. package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  395. package/lib/components/OverflowMenu/OverflowMenu.js +35 -41
  396. package/lib/components/OverflowMenu/next/index.js +12 -13
  397. package/lib/components/PageHeader/PageHeader.d.ts +29 -5
  398. package/lib/components/PageHeader/PageHeader.js +119 -73
  399. package/lib/components/Pagination/Pagination.Skeleton.js +4 -5
  400. package/lib/components/Pagination/Pagination.js +24 -25
  401. package/lib/components/Pagination/experimental/PageSelector.js +8 -9
  402. package/lib/components/Pagination/experimental/Pagination.js +20 -21
  403. package/lib/components/PaginationNav/PaginationNav.js +33 -38
  404. package/lib/components/Popover/index.js +26 -28
  405. package/lib/components/ProgressBar/ProgressBar.js +11 -12
  406. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
  407. package/lib/components/ProgressIndicator/ProgressIndicator.js +29 -32
  408. package/lib/components/RadioTile/RadioTile.js +17 -18
  409. package/lib/components/Search/Search.Skeleton.js +5 -6
  410. package/lib/components/Search/Search.js +26 -28
  411. package/lib/components/Select/Select.Skeleton.js +5 -6
  412. package/lib/components/Select/Select.js +24 -25
  413. package/lib/components/SelectItem/SelectItem.js +8 -9
  414. package/lib/components/SelectItemGroup/SelectItemGroup.js +7 -8
  415. package/lib/components/ShapeIndicator/index.js +7 -8
  416. package/lib/components/SkeletonIcon/SkeletonIcon.js +4 -5
  417. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
  418. package/lib/components/SkeletonText/SkeletonText.js +8 -9
  419. package/lib/components/Slider/Slider.Skeleton.js +8 -9
  420. package/lib/components/Slider/Slider.js +69 -83
  421. package/lib/components/Slider/SliderHandles.js +6 -6
  422. package/lib/components/StructuredList/StructuredList.Skeleton.js +5 -6
  423. package/lib/components/Tabs/Tabs.Skeleton.js +5 -6
  424. package/lib/components/Tabs/Tabs.js +83 -98
  425. package/lib/components/Tabs/usePressable.js +7 -8
  426. package/lib/components/Tag/DismissibleTag.js +16 -17
  427. package/lib/components/Tag/OperationalTag.js +10 -11
  428. package/lib/components/Tag/SelectableTag.js +13 -14
  429. package/lib/components/Tag/Tag.Skeleton.js +5 -6
  430. package/lib/components/Tag/Tag.js +19 -20
  431. package/lib/components/Text/Text.js +6 -7
  432. package/lib/components/Text/TextDirection.js +5 -6
  433. package/lib/components/TextArea/TextArea.js +3 -3
  434. package/lib/components/TextInput/ControlledPasswordInput.js +24 -25
  435. package/lib/components/TextInput/PasswordInput.js +26 -27
  436. package/lib/components/TextInput/TextInput.Skeleton.js +5 -6
  437. package/lib/components/TextInput/TextInput.js +27 -28
  438. package/lib/components/TextInput/util.js +14 -17
  439. package/lib/components/Theme/index.js +10 -12
  440. package/lib/components/Tile/Tile.js +68 -74
  441. package/lib/components/Toggle/Toggle.Skeleton.js +4 -5
  442. package/lib/components/Toggle/Toggle.js +17 -18
  443. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
  444. package/lib/components/Toggletip/index.js +33 -39
  445. package/lib/components/Tooltip/DefinitionTooltip.js +13 -14
  446. package/lib/components/Tooltip/Tooltip.js +15 -16
  447. package/lib/components/TreeView/TreeNode.js +20 -21
  448. package/lib/components/TreeView/TreeView.js +14 -16
  449. package/lib/components/UIShell/Content.js +6 -7
  450. package/lib/components/UIShell/Header.js +5 -6
  451. package/lib/components/UIShell/HeaderContainer.js +5 -6
  452. package/lib/components/UIShell/HeaderGlobalAction.js +12 -13
  453. package/lib/components/UIShell/HeaderMenu.d.ts +10 -112
  454. package/lib/components/UIShell/HeaderMenu.js +152 -199
  455. package/lib/components/UIShell/HeaderMenuButton.js +10 -11
  456. package/lib/components/UIShell/HeaderMenuItem.js +10 -11
  457. package/lib/components/UIShell/HeaderName.js +6 -7
  458. package/lib/components/UIShell/HeaderNavigation.js +7 -8
  459. package/lib/components/UIShell/HeaderPanel.js +9 -10
  460. package/lib/components/UIShell/HeaderSideNavItems.js +5 -6
  461. package/lib/components/UIShell/Link.js +8 -9
  462. package/lib/components/UIShell/SideNav.js +23 -25
  463. package/lib/components/UIShell/SideNavDetails.js +6 -7
  464. package/lib/components/UIShell/SideNavDivider.js +3 -4
  465. package/lib/components/UIShell/SideNavFooter.js +6 -7
  466. package/lib/components/UIShell/SideNavHeader.js +5 -6
  467. package/lib/components/UIShell/SideNavIcon.js +5 -6
  468. package/lib/components/UIShell/SideNavItem.js +5 -6
  469. package/lib/components/UIShell/SideNavItems.js +5 -6
  470. package/lib/components/UIShell/SideNavLink.js +10 -11
  471. package/lib/components/UIShell/SideNavLinkText.js +5 -6
  472. package/lib/components/UIShell/SideNavMenu.js +11 -12
  473. package/lib/components/UIShell/SkipToContent.js +7 -8
  474. package/lib/components/UIShell/Switcher.js +4 -5
  475. package/lib/components/UIShell/SwitcherDivider.js +4 -5
  476. package/lib/components/UnorderedList/UnorderedList.js +6 -7
  477. package/lib/index.js +35 -35
  478. package/lib/internal/FloatingMenu.js +26 -28
  479. package/lib/internal/Selection.js +15 -17
  480. package/lib/internal/getAnnouncement.d.ts +8 -0
  481. package/lib/internal/getAnnouncement.js +26 -0
  482. package/lib/internal/keyboard/match.js +6 -7
  483. package/lib/internal/useControllableState.d.ts +1 -1
  484. package/lib/internal/useControllableState.js +8 -9
  485. package/lib/internal/useDelayedState.js +1 -2
  486. package/lib/internal/useDocumentLang.d.ts +12 -0
  487. package/lib/internal/useId.js +2 -4
  488. package/lib/internal/useMatchMedia.js +1 -2
  489. package/lib/internal/useMergedRefs.d.ts +1 -1
  490. package/lib/internal/useNoInteractiveChildren.js +2 -4
  491. package/lib/internal/useNormalizedInputProps.js +9 -10
  492. package/lib/internal/useResizeObserver.js +4 -5
  493. package/lib/internal/useSavedCallback.js +1 -3
  494. package/lib/internal/wrapFocus.js +20 -29
  495. package/lib/prop-types/deprecate.js +1 -4
  496. package/lib/prop-types/deprecateValuesWithin.js +1 -4
  497. package/lib/prop-types/isRequiredOneOf.js +1 -4
  498. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  499. package/lib/tools/events.js +1 -4
  500. package/lib/tools/mergeRefs.js +9 -14
  501. package/lib/tools/uniqueId.js +1 -2
  502. package/lib/tools/wrapComponent.js +9 -11
  503. package/package.json +21 -19
  504. package/telemetry.yml +23 -1
  505. package/es/components/ContentSwitcher/index.js +0 -13
  506. package/es/feature-flags.d.ts +0 -7
  507. package/es/internal/useAnnouncer.js +0 -21
  508. package/lib/components/ContentSwitcher/index.js +0 -18
  509. package/lib/feature-flags.d.ts +0 -7
  510. package/lib/internal/useAnnouncer.js +0 -25
@@ -21,14 +21,13 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
21
21
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
22
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
23
23
 
24
- const DatePickerSkeleton = _ref => {
25
- let {
26
- range,
27
- id,
28
- hideLabel,
29
- className,
30
- ...rest
31
- } = _ref;
24
+ const DatePickerSkeleton = ({
25
+ range,
26
+ id,
27
+ hideLabel,
28
+ className,
29
+ ...rest
30
+ }) => {
32
31
  const prefix = usePrefix.usePrefix();
33
32
  const dateInput = /*#__PURE__*/React__default["default"].createElement("div", {
34
33
  className: `${prefix}--date-picker-container`
@@ -144,35 +144,34 @@ function updateClassNames(calendar, prefix) {
144
144
  });
145
145
  }
146
146
  }
147
- const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function DatePicker(_ref, ref) {
148
- let {
149
- allowInput,
150
- appendTo,
151
- children,
152
- className,
153
- closeOnSelect = true,
154
- dateFormat = 'm/d/Y',
155
- datePickerType,
156
- disable,
157
- enable,
158
- inline,
159
- invalid,
160
- invalidText,
161
- warn,
162
- warnText,
163
- light = false,
164
- locale = 'en',
165
- maxDate,
166
- minDate,
167
- onChange,
168
- onClose,
169
- onOpen,
170
- readOnly = false,
171
- short = false,
172
- value,
173
- parseDate: parseDateProp,
174
- ...rest
175
- } = _ref;
147
+ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function DatePicker({
148
+ allowInput,
149
+ appendTo,
150
+ children,
151
+ className,
152
+ closeOnSelect = true,
153
+ dateFormat = 'm/d/Y',
154
+ datePickerType,
155
+ disable,
156
+ enable,
157
+ inline,
158
+ invalid,
159
+ invalidText,
160
+ warn,
161
+ warnText,
162
+ light = false,
163
+ locale = 'en',
164
+ maxDate,
165
+ minDate,
166
+ onChange,
167
+ onClose,
168
+ onOpen,
169
+ readOnly = false,
170
+ short = false,
171
+ value,
172
+ parseDate: parseDateProp,
173
+ ...rest
174
+ }, ref) {
176
175
  const prefix = usePrefix.usePrefix();
177
176
  const {
178
177
  isFluid
@@ -220,6 +219,7 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
220
219
  }
221
220
  }, [calendarCloseEvent, handleCalendarClose]);
222
221
  const endInputField = React.useRef(null);
222
+ const lastFocusedField = React.useRef(null);
223
223
  const savedOnChange = useSavedCallback.useSavedCallback(onChange);
224
224
  const savedOnOpen = useSavedCallback.useSavedCallback(onOpen);
225
225
  const datePickerClasses = cx__default["default"](`${prefix}--date-picker`, {
@@ -368,40 +368,68 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
368
368
  noCalendar: readOnly,
369
369
  nextArrow: rightArrowHTML,
370
370
  prevArrow: leftArrowHTML,
371
- onChange: function () {
371
+ onChange: (...args) => {
372
372
  if (!readOnly) {
373
- savedOnChange(...arguments);
373
+ savedOnChange(...args);
374
374
  }
375
375
  },
376
376
  onReady: onHook,
377
377
  onMonthChange: onHook,
378
378
  onYearChange: onHook,
379
- onOpen: function () {
380
- onHook(...arguments);
381
- savedOnOpen(...arguments);
379
+ onOpen: (...args) => {
380
+ onHook(...args);
381
+ savedOnOpen(...args);
382
382
  },
383
383
  onValueUpdate: onHook
384
384
  };
385
385
  const calendar = flatpickr__default["default"](start, flatpickerConfig);
386
386
  calendarRef.current = calendar;
387
- function handleArrowDown(event) {
387
+ const handleInputFieldKeyDown = event => {
388
+ const {
389
+ calendarContainer,
390
+ selectedDateElem: fpSelectedDateElem,
391
+ todayDateElem: fpTodayDateElem
392
+ } = calendar;
388
393
  if (match.match(event, keys.Escape)) {
389
- calendar?.calendarContainer?.classList.remove('open');
394
+ calendarContainer.classList.remove('open');
390
395
  }
391
- if (match.match(event, keys.ArrowDown)) {
392
- if (event.target == endInputField.current) {
393
- calendar?.calendarContainer?.classList.add('open');
396
+ if (match.match(event, keys.Tab)) {
397
+ if (!event.shiftKey) {
398
+ event.preventDefault();
399
+ calendarContainer.classList.add('open');
400
+ const selectedDateElem = calendarContainer.querySelector('.selected') && fpSelectedDateElem;
401
+ const todayDateElem = calendarContainer.querySelector('.today') && fpTodayDateElem;
402
+ (selectedDateElem || todayDateElem || calendarContainer.querySelector('.flatpickr-day[tabindex]') || calendarContainer).focus();
403
+ if (event.target === startInputField.current) {
404
+ lastFocusedField.current = startInputField.current;
405
+ } else if (event.target === endInputField.current) {
406
+ lastFocusedField.current = endInputField.current;
407
+ }
408
+ } else if (calendarRef.current?.isOpen && event.target === startInputField.current) {
409
+ calendarRef.current.close();
410
+ onCalendarClose(calendarRef.current.selectedDates, '', calendarRef.current, event);
394
411
  }
395
- const {
396
- calendarContainer,
397
- selectedDateElem: fpSelectedDateElem,
398
- todayDateElem: fpTodayDateElem
399
- } = calendar;
400
- const selectedDateElem = calendarContainer.querySelector('.selected') && fpSelectedDateElem;
401
- const todayDateElem = calendarContainer.querySelector('.today') && fpTodayDateElem;
402
- (selectedDateElem || todayDateElem || calendarContainer.querySelector('.flatpickr-day[tabindex]') || calendarContainer).focus();
403
412
  }
404
- }
413
+ };
414
+ const handleCalendarKeyDown = event => {
415
+ if (!calendarRef.current || !startInputField.current) return;
416
+ const lastInputField = datePickerType == 'range' ? endInputField.current : startInputField.current;
417
+ if (match.match(event, keys.Tab)) {
418
+ if (!event.shiftKey) {
419
+ if (lastFocusedField.current === lastInputField) {
420
+ lastInputField.focus();
421
+ calendarRef.current.close();
422
+ onCalendarClose(calendarRef.current.selectedDates, '', calendarRef.current, event);
423
+ } else {
424
+ event.preventDefault();
425
+ lastInputField.focus();
426
+ }
427
+ } else {
428
+ event.preventDefault();
429
+ (lastFocusedField.current || startInputField.current).focus();
430
+ }
431
+ }
432
+ };
405
433
  function handleOnChange(event) {
406
434
  const {
407
435
  target
@@ -425,7 +453,7 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
425
453
  }
426
454
  }
427
455
  if (start) {
428
- start.addEventListener('keydown', handleArrowDown);
456
+ start.addEventListener('keydown', handleInputFieldKeyDown);
429
457
  start.addEventListener('change', handleOnChange);
430
458
  start.addEventListener('keypress', handleKeyPress);
431
459
  if (calendar && calendar.calendarContainer) {
@@ -438,10 +466,13 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
438
466
  }
439
467
  }
440
468
  if (end) {
441
- end.addEventListener('keydown', handleArrowDown);
469
+ end.addEventListener('keydown', handleInputFieldKeyDown);
442
470
  end.addEventListener('change', handleOnChange);
443
471
  end.addEventListener('keypress', handleKeyPress);
444
472
  }
473
+ if (calendar.calendarContainer) {
474
+ calendar.calendarContainer.addEventListener('keydown', handleCalendarKeyDown);
475
+ }
445
476
 
446
477
  //component did unmount equivalent
447
478
  return () => {
@@ -462,14 +493,17 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
462
493
  }
463
494
  }
464
495
  if (start) {
465
- start.removeEventListener('keydown', handleArrowDown);
496
+ start.removeEventListener('keydown', handleInputFieldKeyDown);
466
497
  start.removeEventListener('change', handleOnChange);
467
498
  start.removeEventListener('keypress', handleKeyPress);
468
499
  }
469
500
  if (end) {
470
- end.removeEventListener('keydown', handleArrowDown);
501
+ end.removeEventListener('keydown', handleInputFieldKeyDown);
471
502
  end.removeEventListener('change', handleOnChange);
472
- end.removeEventListener('change', handleKeyPress);
503
+ end.removeEventListener('keypress', handleKeyPress);
504
+ }
505
+ if (calendar.calendarContainer) {
506
+ calendar.calendarContainer.removeEventListener('keydown', handleCalendarKeyDown);
473
507
  }
474
508
  };
475
509
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -566,17 +600,6 @@ const DatePicker = /*#__PURE__*/React__default["default"].forwardRef(function Da
566
600
  }
567
601
  }, [value, prefix]); //eslint-disable-line react-hooks/exhaustive-deps
568
602
 
569
- React.useEffect(() => {
570
- if (!calendarRef.current || !startInputField.current) return;
571
- const handleKeyDown = event => {
572
- if (match.match(event, keys.Tab) && !event.shiftKey && document.activeElement === endInputField.current && calendarRef.current?.isOpen) {
573
- calendarRef.current.close();
574
- onCalendarClose(calendarRef.current.selectedDates, '', calendarRef.current, event);
575
- }
576
- };
577
- document.addEventListener('keydown', handleKeyDown, true);
578
- return () => document.removeEventListener('keydown', handleKeyDown, true);
579
- }, [calendarRef, startInputField, endInputField, onCalendarClose]);
580
603
  let fluidError;
581
604
  if (isFluid) {
582
605
  if (invalid) {
@@ -237,12 +237,11 @@ DatePickerInput.propTypes = {
237
237
  */
238
238
  warnText: PropTypes__default["default"].node
239
239
  };
240
- function DatePickerIcon(_ref) {
241
- let {
242
- datePickerType,
243
- invalid,
244
- warn
245
- } = _ref;
240
+ function DatePickerIcon({
241
+ datePickerType,
242
+ invalid,
243
+ warn
244
+ }) {
246
245
  const prefix = usePrefix.usePrefix();
247
246
  const {
248
247
  isFluid
@@ -5,7 +5,13 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import React, { type HTMLAttributes } from 'react';
8
- export interface DialogProps extends HTMLAttributes<HTMLDialogElement> {
8
+ import { InlineLoadingStatus } from '../InlineLoading/InlineLoading';
9
+ /**
10
+ * ----------
11
+ * Dialog
12
+ * ----------
13
+ */
14
+ interface DialogProps extends HTMLAttributes<HTMLDialogElement> {
9
15
  /**
10
16
  * Provide the contents of the Dialog
11
17
  */
@@ -42,26 +48,205 @@ export interface DialogProps extends HTMLAttributes<HTMLDialogElement> {
42
48
  * Specify whether the Dialog is currently open
43
49
  */
44
50
  open?: boolean;
51
+ /**
52
+ * Specify the role of the dialog for accessibility
53
+ * 'dialog' is the default, but 'alertdialog' can be used for important messages requiring user attention
54
+ */
55
+ role?: '' | 'alertdialog';
56
+ /**
57
+ * Specify a label for screen readers
58
+ */
59
+ ariaLabel?: string;
60
+ /**
61
+ * Specify the ID of an element that labels this dialog
62
+ */
63
+ ariaLabelledBy?: string;
64
+ /**
65
+ * Specify the ID of an element that describes this dialog
66
+ */
67
+ ariaDescribedBy?: string;
45
68
  }
46
- export declare const unstable__Dialog: React.ForwardRefExoticComponent<DialogProps & React.RefAttributes<unknown>>;
47
- export interface DialogHeaderProps extends HTMLAttributes<HTMLDivElement> {
69
+ declare const unstable__Dialog: React.ForwardRefExoticComponent<DialogProps & React.RefAttributes<unknown>>;
70
+ /**
71
+ * -------------
72
+ * DialogHeader
73
+ * -------------
74
+ */
75
+ interface DialogHeaderProps extends HTMLAttributes<HTMLDivElement> {
48
76
  /**
49
77
  * Provide the contents to be rendered inside of this component
50
78
  */
51
79
  children?: React.ReactNode;
52
80
  }
53
- export declare const DialogHeader: React.ForwardRefExoticComponent<DialogHeaderProps & React.RefAttributes<HTMLDivElement>>;
54
- export interface DialogControlsProps extends HTMLAttributes<HTMLDivElement> {
81
+ declare const DialogHeader: React.ForwardRefExoticComponent<DialogHeaderProps & React.RefAttributes<HTMLDivElement>>;
82
+ /**
83
+ * ---------------
84
+ * DialogControls
85
+ * ---------------
86
+ */
87
+ interface DialogControlsProps extends HTMLAttributes<HTMLDivElement> {
55
88
  /**
56
89
  * Provide the contents to be rendered inside of this component
57
90
  */
58
91
  children?: React.ReactNode;
59
92
  }
60
- export declare const DialogControls: React.ForwardRefExoticComponent<DialogControlsProps & React.RefAttributes<HTMLDivElement>>;
61
- export interface DialogCloseButtonProps extends HTMLAttributes<HTMLDivElement> {
93
+ declare const DialogControls: React.ForwardRefExoticComponent<DialogControlsProps & React.RefAttributes<HTMLDivElement>>;
94
+ /**
95
+ * -------------------
96
+ * DialogCloseButton
97
+ * -------------------
98
+ */
99
+ interface DialogCloseButtonProps extends HTMLAttributes<HTMLDivElement> {
62
100
  /**
63
101
  * Specify a click handler applied to the IconButton
64
102
  */
65
103
  onClick?: React.MouseEventHandler;
66
104
  }
67
- export declare const DialogCloseButton: React.ForwardRefExoticComponent<DialogCloseButtonProps & React.RefAttributes<HTMLDivElement>>;
105
+ declare const DialogCloseButton: React.ForwardRefExoticComponent<DialogCloseButtonProps & React.RefAttributes<HTMLDivElement>>;
106
+ /**
107
+ * ------------
108
+ * DialogTitle
109
+ * ------------
110
+ */
111
+ interface DialogTitleProps extends HTMLAttributes<HTMLHeadingElement> {
112
+ /**
113
+ * Provide the contents of the DialogTitle
114
+ */
115
+ children?: React.ReactNode;
116
+ /**
117
+ * Specify an optional className to be applied to the title node
118
+ */
119
+ className?: string;
120
+ /**
121
+ * Specify an optional id for the title element
122
+ */
123
+ id?: string;
124
+ }
125
+ declare const DialogTitle: React.ForwardRefExoticComponent<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>>;
126
+ /**
127
+ * ---------------
128
+ * DialogSubtitle
129
+ * ---------------
130
+ */
131
+ interface DialogSubtitleProps extends HTMLAttributes<HTMLParagraphElement> {
132
+ /**
133
+ * Provide the contents of the DialogSubtitle
134
+ */
135
+ children?: React.ReactNode;
136
+ /**
137
+ * Specify an optional className to be applied to the subtitle node
138
+ */
139
+ className?: string;
140
+ /**
141
+ * Specify an optional id for the subtitle element
142
+ */
143
+ id?: string;
144
+ }
145
+ declare const DialogSubtitle: React.ForwardRefExoticComponent<DialogSubtitleProps & React.RefAttributes<HTMLParagraphElement>>;
146
+ /**
147
+ * -----------
148
+ * DialogBody
149
+ * -----------
150
+ */
151
+ interface DialogBodyProps extends HTMLAttributes<HTMLDivElement> {
152
+ /**
153
+ * Provide the contents of the DialogBody
154
+ */
155
+ children?: React.ReactNode;
156
+ /**
157
+ * Specify an optional className to be applied to the body node
158
+ */
159
+ className?: string;
160
+ /**
161
+ * Specify whether the content has overflow that should be scrollable
162
+ */
163
+ hasScrollingContent?: boolean;
164
+ }
165
+ declare const DialogBody: React.ForwardRefExoticComponent<DialogBodyProps & React.RefAttributes<HTMLDivElement>>;
166
+ /**
167
+ * -------------
168
+ * DialogFooter
169
+ * -------------
170
+ */
171
+ interface DialogFooterProps extends HTMLAttributes<HTMLDivElement> {
172
+ /**
173
+ * Provide the contents of the DialogFooter
174
+ */
175
+ children?: React.ReactNode;
176
+ /**
177
+ * Specify an optional className to be applied to the footer node
178
+ */
179
+ className?: string;
180
+ /**
181
+ * Specify a handler for closing dialog (secondary button)
182
+ */
183
+ onRequestClose?: React.ReactEventHandler<HTMLElement>;
184
+ /**
185
+ * Specify a handler for the secondary button.
186
+ * Useful if separate handler from `onRequestClose` is desirable
187
+ */
188
+ onSecondarySubmit?: React.ReactEventHandler<HTMLElement>;
189
+ /**
190
+ * Specify a handler for submitting dialog (primary button)
191
+ */
192
+ onRequestSubmit?: React.ReactEventHandler<HTMLElement>;
193
+ /**
194
+ * Specify the text for the primary button
195
+ */
196
+ primaryButtonText?: React.ReactNode;
197
+ /**
198
+ * Specify whether the Button should be disabled, or not
199
+ */
200
+ primaryButtonDisabled?: boolean;
201
+ /**
202
+ * Specify the text for the secondary button
203
+ */
204
+ secondaryButtonText?: React.ReactNode;
205
+ /**
206
+ * Specify an array of config objects for secondary buttons
207
+ */
208
+ secondaryButtons?: Array<{
209
+ buttonText: React.ReactNode;
210
+ onClick: React.MouseEventHandler<HTMLButtonElement>;
211
+ }>;
212
+ /**
213
+ * Specify whether the Dialog is for dangerous actions
214
+ */
215
+ danger?: boolean;
216
+ /**
217
+ * Specify loading status
218
+ */
219
+ loadingStatus?: InlineLoadingStatus;
220
+ /**
221
+ * Specify the description for the loading text
222
+ */
223
+ loadingDescription?: string;
224
+ /**
225
+ * Specify the description for the loading icon
226
+ */
227
+ loadingIconDescription?: string;
228
+ /**
229
+ * Specify an optional handler to be invoked when loading is
230
+ * successful
231
+ */
232
+ onLoadingSuccess?: () => void;
233
+ }
234
+ declare const DialogFooter: React.ForwardRefExoticComponent<DialogFooterProps & React.RefAttributes<HTMLDivElement>>;
235
+ /**
236
+ * -------
237
+ * Exports
238
+ * -------
239
+ */
240
+ type DialogComponentType = typeof unstable__Dialog & {
241
+ Root: typeof unstable__Dialog;
242
+ Header: typeof DialogHeader;
243
+ Controls: typeof DialogControls;
244
+ CloseButton: typeof DialogCloseButton;
245
+ Title: typeof DialogTitle;
246
+ Subtitle: typeof DialogSubtitle;
247
+ Body: typeof DialogBody;
248
+ Footer: typeof DialogFooter;
249
+ };
250
+ declare const Dialog: DialogComponentType;
251
+ export { Dialog, unstable__Dialog, DialogHeader, DialogControls, DialogCloseButton, DialogTitle, DialogSubtitle, DialogBody, DialogFooter, };
252
+ export type { DialogProps, DialogHeaderProps, DialogControlsProps, DialogCloseButtonProps, DialogTitleProps, DialogSubtitleProps, DialogBodyProps, DialogFooterProps, };