@carbon/react 1.27.0 → 1.28.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 (601) hide show
  1. package/es/_virtual/_rollupPluginBabelHelpers.js +1 -313
  2. package/es/components/Accordion/Accordion.Skeleton.js +28 -30
  3. package/es/components/Accordion/Accordion.js +18 -21
  4. package/es/components/Accordion/AccordionItem.js +37 -49
  5. package/es/components/AspectRatio/AspectRatio.js +10 -12
  6. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +10 -11
  7. package/es/components/Breadcrumb/Breadcrumb.js +14 -13
  8. package/es/components/Breadcrumb/BreadcrumbItem.js +24 -22
  9. package/es/components/Button/Button.Skeleton.js +25 -23
  10. package/es/components/Button/Button.js +77 -72
  11. package/es/components/ButtonSet/ButtonSet.js +12 -10
  12. package/es/components/Checkbox/Checkbox.Skeleton.js +10 -11
  13. package/es/components/Checkbox/Checkbox.js +55 -52
  14. package/es/components/CheckboxGroup/CheckboxGroup.js +33 -31
  15. package/es/components/ClassPrefix/index.js +4 -2
  16. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +15 -14
  17. package/es/components/CodeSnippet/CodeSnippet.js +199 -102
  18. package/es/components/ComboBox/ComboBox.js +349 -178
  19. package/es/components/ComboBox/tools/filter.js +6 -4
  20. package/es/components/ComboButton/index.js +38 -43
  21. package/es/components/ComposedModal/ComposedModal.js +187 -85
  22. package/es/components/ComposedModal/ModalFooter.js +54 -49
  23. package/es/components/ComposedModal/ModalHeader.js +39 -26
  24. package/es/components/ContainedList/ContainedList.js +66 -20
  25. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  26. package/es/components/ContentSwitcher/ContentSwitcher.js +83 -98
  27. package/es/components/ContentSwitcher/index.js +1 -1
  28. package/es/components/ContextMenu/useContextMenu.js +12 -21
  29. package/es/components/Copy/Copy.js +24 -29
  30. package/es/components/CopyButton/CopyButton.js +10 -10
  31. package/es/components/DangerButton/DangerButton.js +3 -5
  32. package/es/components/DataTable/DataTable.js +333 -359
  33. package/es/components/DataTable/Table.js +29 -26
  34. package/es/components/DataTable/TableActionList.js +2 -4
  35. package/es/components/DataTable/TableBatchAction.js +2 -4
  36. package/es/components/DataTable/TableBatchActions.js +29 -30
  37. package/es/components/DataTable/TableBody.js +7 -8
  38. package/es/components/DataTable/TableCell.js +1 -1
  39. package/es/components/DataTable/TableContainer.js +23 -23
  40. package/es/components/DataTable/TableContext.js +1 -1
  41. package/es/components/DataTable/TableExpandHeader.js +19 -21
  42. package/es/components/DataTable/TableExpandRow.js +23 -23
  43. package/es/components/DataTable/TableExpandedRow.js +18 -23
  44. package/es/components/DataTable/TableHead.js +1 -1
  45. package/es/components/DataTable/TableHeader.js +45 -41
  46. package/es/components/DataTable/TableRow.js +7 -8
  47. package/es/components/DataTable/TableSelectAll.js +13 -11
  48. package/es/components/DataTable/TableSelectRow.js +29 -21
  49. package/es/components/DataTable/TableToolbar.js +19 -14
  50. package/es/components/DataTable/TableToolbarAction.js +6 -6
  51. package/es/components/DataTable/TableToolbarContent.js +2 -4
  52. package/es/components/DataTable/TableToolbarMenu.js +11 -12
  53. package/es/components/DataTable/TableToolbarSearch.js +52 -71
  54. package/es/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  55. package/es/components/DataTable/state/sortStates.js +1 -1
  56. package/es/components/DataTable/state/sorting.js +28 -20
  57. package/es/components/DataTable/tools/cells.js +1 -3
  58. package/es/components/DataTable/tools/denormalize.js +4 -17
  59. package/es/components/DataTable/tools/filter.js +18 -16
  60. package/es/components/DataTable/tools/instanceId.js +2 -2
  61. package/es/components/DataTable/tools/normalize.js +28 -25
  62. package/es/components/DataTable/tools/sorting.js +28 -25
  63. package/es/components/DataTableSkeleton/DataTableSkeleton.js +36 -38
  64. package/es/components/DatePicker/DatePicker.Skeleton.d.ts +30 -0
  65. package/es/components/DatePicker/DatePicker.Skeleton.js +18 -20
  66. package/es/components/DatePicker/DatePicker.d.ts +131 -0
  67. package/es/components/DatePicker/DatePicker.js +215 -200
  68. package/es/components/DatePicker/index.d.ts +10 -0
  69. package/es/components/DatePicker/index.js +1 -0
  70. package/es/components/DatePicker/plugins/appendToPlugin.js +45 -43
  71. package/es/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  72. package/es/components/DatePicker/plugins/rangePlugin.js +19 -11
  73. package/es/components/DatePickerInput/DatePickerInput.d.ts +93 -0
  74. package/es/components/DatePickerInput/DatePickerInput.js +83 -74
  75. package/es/components/Dropdown/Dropdown.Skeleton.js +13 -12
  76. package/es/components/Dropdown/Dropdown.js +266 -109
  77. package/es/components/ErrorBoundary/ErrorBoundary.js +27 -48
  78. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  79. package/es/components/ExpandableSearch/ExpandableSearch.d.ts +14 -0
  80. package/es/components/ExpandableSearch/ExpandableSearch.js +19 -25
  81. package/es/components/FeatureFlags/index.js +25 -43
  82. package/es/components/FileUploader/FileUploader.Skeleton.js +8 -9
  83. package/es/components/FileUploader/FileUploader.js +120 -147
  84. package/es/components/FileUploader/FileUploaderButton.js +36 -48
  85. package/es/components/FileUploader/FileUploaderDropContainer.js +49 -53
  86. package/es/components/FileUploader/FileUploaderItem.js +30 -30
  87. package/es/components/FileUploader/Filename.js +13 -14
  88. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +11 -12
  89. package/es/components/FluidComboBox/FluidComboBox.js +11 -9
  90. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +18 -18
  91. package/es/components/FluidDatePicker/FluidDatePicker.js +20 -16
  92. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  93. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +11 -12
  94. package/es/components/FluidDropdown/FluidDropdown.js +11 -9
  95. package/es/components/FluidForm/FluidForm.js +9 -10
  96. package/es/components/FluidForm/FormContext.js +1 -1
  97. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +11 -12
  98. package/es/components/FluidMultiSelect/FluidMultiSelect.js +12 -10
  99. package/es/components/FluidSelect/FluidSelect.Skeleton.js +11 -12
  100. package/es/components/FluidSelect/FluidSelect.js +9 -9
  101. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
  102. package/es/components/FluidTextArea/FluidTextArea.js +7 -8
  103. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
  104. package/es/components/FluidTextInput/FluidTextInput.js +10 -9
  105. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +11 -10
  106. package/es/components/FluidTimePicker/FluidTimePicker.js +30 -26
  107. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -7
  108. package/es/components/Form/Form.js +9 -10
  109. package/es/components/FormGroup/FormGroup.js +16 -17
  110. package/es/components/FormItem/FormItem.js +8 -9
  111. package/es/components/FormLabel/FormLabel.js +11 -10
  112. package/es/components/Grid/CSSGrid.js +38 -39
  113. package/es/components/Grid/Column.js +86 -79
  114. package/es/components/Grid/ColumnHang.js +12 -14
  115. package/es/components/Grid/FlexGrid.js +19 -21
  116. package/es/components/Grid/Grid.js +2 -2
  117. package/es/components/Grid/GridContext.js +12 -11
  118. package/es/components/Grid/Row.js +16 -18
  119. package/es/components/Heading/index.js +11 -13
  120. package/es/components/Icon/Icon.Skeleton.js +10 -12
  121. package/es/components/IconButton/index.js +19 -22
  122. package/es/components/IdPrefix/index.js +4 -2
  123. package/es/components/InlineCheckbox/InlineCheckbox.js +89 -36
  124. package/es/components/InlineLoading/InlineLoading.js +23 -25
  125. package/es/components/Layer/LayerContext.js +1 -1
  126. package/es/components/Layer/index.js +17 -18
  127. package/es/components/Layout/LayoutDirection.js +8 -10
  128. package/es/components/Layout/LayoutDirectionContext.js +1 -1
  129. package/es/components/Link/Link.js +25 -25
  130. package/es/components/ListBox/ListBox.js +38 -31
  131. package/es/components/ListBox/ListBoxField.js +9 -10
  132. package/es/components/ListBox/ListBoxMenu.js +9 -10
  133. package/es/components/ListBox/ListBoxMenuIcon.js +16 -14
  134. package/es/components/ListBox/ListBoxMenuItem.js +23 -26
  135. package/es/components/ListBox/ListBoxPropTypes.js +4 -4
  136. package/es/components/ListBox/ListBoxSelection.js +30 -25
  137. package/es/components/ListBox/index.js +1 -1
  138. package/es/components/ListBox/next/ListBoxSelection.js +27 -24
  139. package/es/components/ListBox/next/ListBoxTrigger.js +20 -19
  140. package/es/components/ListItem/ListItem.js +9 -10
  141. package/es/components/Loading/Loading.js +24 -24
  142. package/es/components/Menu/Menu.js +67 -80
  143. package/es/components/Menu/MenuContext.js +9 -12
  144. package/es/components/Menu/MenuItem.js +104 -128
  145. package/es/components/MenuButton/index.js +37 -41
  146. package/es/components/Modal/Modal.js +281 -120
  147. package/es/components/ModalWrapper/ModalWrapper.js +72 -96
  148. package/es/components/MultiSelect/FilterableMultiSelect.js +299 -163
  149. package/es/components/MultiSelect/MultiSelect.js +162 -174
  150. package/es/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  151. package/es/components/MultiSelect/tools/itemToString.js +3 -4
  152. package/es/components/MultiSelect/tools/sorting.js +15 -13
  153. package/es/components/Notification/Notification.js +436 -164
  154. package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
  155. package/es/components/NumberInput/NumberInput.js +140 -139
  156. package/es/components/OrderedList/OrderedList.js +17 -15
  157. package/es/components/OverflowMenu/OverflowMenu.js +360 -227
  158. package/es/components/OverflowMenu/index.js +1 -1
  159. package/es/components/OverflowMenuItem/OverflowMenuItem.js +32 -37
  160. package/es/components/OverflowMenuV2/index.js +26 -28
  161. package/es/components/Pagination/Pagination.Skeleton.js +9 -10
  162. package/es/components/Pagination/Pagination.js +98 -140
  163. package/es/components/Pagination/experimental/PageSelector.js +16 -16
  164. package/es/components/Pagination/experimental/Pagination.js +73 -94
  165. package/es/components/PaginationNav/PaginationNav.js +98 -117
  166. package/es/components/Popover/index.js +74 -80
  167. package/es/components/PrimaryButton/PrimaryButton.js +3 -5
  168. package/es/components/ProgressBar/ProgressBar.js +39 -37
  169. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +15 -14
  170. package/es/components/ProgressIndicator/ProgressIndicator.js +71 -71
  171. package/es/components/RadioButton/RadioButton.Skeleton.js +9 -10
  172. package/es/components/RadioButton/RadioButton.js +27 -27
  173. package/es/components/RadioButtonGroup/RadioButtonGroup.js +55 -65
  174. package/es/components/RadioTile/RadioTile.js +27 -25
  175. package/es/components/Search/Search.Skeleton.js +16 -16
  176. package/es/components/Search/Search.d.ts +83 -0
  177. package/es/components/Search/Search.js +65 -72
  178. package/es/components/Search/index.d.ts +11 -0
  179. package/es/components/SecondaryButton/SecondaryButton.js +3 -5
  180. package/es/components/Select/Select.Skeleton.js +12 -13
  181. package/es/components/Select/Select.js +79 -73
  182. package/es/components/SelectItem/SelectItem.js +17 -13
  183. package/es/components/SelectItemGroup/SelectItemGroup.js +11 -12
  184. package/es/components/SkeletonIcon/SkeletonIcon.js +11 -11
  185. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +11 -11
  186. package/es/components/SkeletonText/SkeletonText.js +29 -29
  187. package/es/components/Slider/Slider.Skeleton.js +17 -18
  188. package/es/components/Slider/Slider.js +306 -329
  189. package/es/components/Slider/index.js +1 -1
  190. package/es/components/Stack/Stack.js +19 -20
  191. package/es/components/Stack/index.js +2 -2
  192. package/es/components/StructuredList/StructuredList.Skeleton.js +25 -24
  193. package/es/components/StructuredList/StructuredList.js +134 -106
  194. package/es/components/Switch/IconSwitch.js +48 -54
  195. package/es/components/Switch/Switch.js +33 -31
  196. package/es/components/Tab/Tab.js +77 -83
  197. package/es/components/Tab/index.js +1 -1
  198. package/es/components/TabContent/TabContent.js +16 -18
  199. package/es/components/Tabs/Tabs.Skeleton.js +14 -13
  200. package/es/components/Tabs/Tabs.js +195 -206
  201. package/es/components/Tabs/usePressable.js +27 -36
  202. package/es/components/Tag/Tag.Skeleton.js +10 -9
  203. package/es/components/Tag/Tag.js +34 -31
  204. package/es/components/Text/Text.js +20 -20
  205. package/es/components/Text/TextDirection.js +8 -7
  206. package/es/components/Text/TextDirectionContext.js +1 -1
  207. package/es/components/Text/index.js +1 -1
  208. package/es/components/TextArea/TextArea.Skeleton.js +11 -12
  209. package/es/components/TextArea/TextArea.js +89 -83
  210. package/es/components/TextInput/ControlledPasswordInput.js +79 -73
  211. package/es/components/TextInput/PasswordInput.js +101 -91
  212. package/es/components/TextInput/TextInput.Skeleton.js +11 -12
  213. package/es/components/TextInput/TextInput.js +104 -92
  214. package/es/components/TextInput/util.js +26 -28
  215. package/es/components/Theme/index.js +25 -20
  216. package/es/components/Tile/Tile.js +135 -176
  217. package/es/components/TileGroup/TileGroup.js +55 -70
  218. package/es/components/TileGroup/index.js +1 -1
  219. package/es/components/TimePicker/TimePicker.js +60 -67
  220. package/es/components/TimePickerSelect/TimePickerSelect.js +20 -18
  221. package/es/components/TimePickerSelect/index.js +1 -1
  222. package/es/components/Toggle/Toggle.Skeleton.js +63 -52
  223. package/es/components/Toggle/Toggle.js +44 -48
  224. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +56 -50
  225. package/es/components/Toggletip/index.js +52 -48
  226. package/es/components/Tooltip/DefinitionTooltip.js +24 -31
  227. package/es/components/Tooltip/Tooltip.js +35 -50
  228. package/es/components/TreeView/TreeNode.js +94 -74
  229. package/es/components/TreeView/TreeView.js +72 -83
  230. package/es/components/UIShell/Content.js +12 -14
  231. package/es/components/UIShell/Header.js +16 -12
  232. package/es/components/UIShell/HeaderContainer.js +8 -14
  233. package/es/components/UIShell/HeaderGlobalAction.js +26 -19
  234. package/es/components/UIShell/HeaderGlobalBar.js +1 -3
  235. package/es/components/UIShell/HeaderMenu.js +114 -129
  236. package/es/components/UIShell/HeaderMenuButton.js +31 -22
  237. package/es/components/UIShell/HeaderMenuItem.js +28 -20
  238. package/es/components/UIShell/HeaderName.js +19 -14
  239. package/es/components/UIShell/HeaderNavigation.js +19 -15
  240. package/es/components/UIShell/HeaderPanel.js +23 -17
  241. package/es/components/UIShell/HeaderSideNavItems.js +11 -9
  242. package/es/components/UIShell/Link.js +11 -11
  243. package/es/components/UIShell/SideNav.js +66 -62
  244. package/es/components/UIShell/SideNavDetails.js +11 -12
  245. package/es/components/UIShell/SideNavDivider.js +5 -3
  246. package/es/components/UIShell/SideNavFooter.js +13 -12
  247. package/es/components/UIShell/SideNavHeader.js +9 -6
  248. package/es/components/UIShell/SideNavIcon.js +11 -8
  249. package/es/components/UIShell/SideNavItem.js +11 -9
  250. package/es/components/UIShell/SideNavItems.js +14 -11
  251. package/es/components/UIShell/SideNavLink.js +19 -17
  252. package/es/components/UIShell/SideNavLinkText.js +8 -9
  253. package/es/components/UIShell/SideNavMenu.js +29 -35
  254. package/es/components/UIShell/SideNavMenuItem.js +14 -14
  255. package/es/components/UIShell/SideNavSwitcher.js +19 -19
  256. package/es/components/UIShell/SkipToContent.js +10 -11
  257. package/es/components/UIShell/Switcher.js +20 -11
  258. package/es/components/UIShell/SwitcherDivider.js +10 -9
  259. package/es/components/UIShell/SwitcherItem.js +26 -19
  260. package/es/components/UIShell/_utils.js +1 -1
  261. package/es/components/UnorderedList/UnorderedList.js +14 -14
  262. package/es/index.js +7 -7
  263. package/es/internal/ClickListener.js +49 -65
  264. package/es/internal/FloatingMenu.js +193 -200
  265. package/es/internal/OptimizedResize.js +9 -8
  266. package/es/internal/Selection.js +92 -111
  267. package/es/internal/createClassWrapper.js +2 -2
  268. package/es/internal/deprecateFieldOnObject.js +5 -3
  269. package/es/internal/environment.js +1 -1
  270. package/es/internal/focus/index.js +1 -1
  271. package/es/internal/keyboard/keys.js +11 -11
  272. package/es/internal/keyboard/match.js +7 -6
  273. package/es/internal/keyboard/navigation.js +15 -5
  274. package/es/internal/useAnnouncer.js +2 -2
  275. package/es/internal/useAttachedMenu.js +12 -20
  276. package/es/internal/useControllableState.js +11 -16
  277. package/es/internal/useDelayedState.js +9 -18
  278. package/es/internal/useEffectOnce.js +4 -4
  279. package/es/internal/useEvent.js +4 -4
  280. package/es/internal/useId.js +15 -19
  281. package/es/internal/useIdPrefix.js +1 -1
  282. package/es/internal/useIsomorphicEffect.js +1 -1
  283. package/es/internal/useMergedRefs.js +3 -3
  284. package/es/internal/useNoInteractiveChildren.js +8 -19
  285. package/es/internal/useNormalizedInputProps.js +16 -14
  286. package/es/internal/usePrefix.js +1 -1
  287. package/es/internal/useSavedCallback.js +3 -3
  288. package/es/internal/warning.js +4 -4
  289. package/es/internal/wrapFocus.js +16 -21
  290. package/es/prop-types/AriaPropTypes.js +1 -1
  291. package/es/prop-types/deprecate.js +6 -5
  292. package/es/prop-types/isRequiredOneOf.js +12 -25
  293. package/es/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  294. package/es/prop-types/types.js +1 -1
  295. package/es/tools/array.js +1 -1
  296. package/es/tools/events.js +21 -14
  297. package/es/tools/mergeRefs.js +3 -3
  298. package/es/tools/setupGetInstanceId.js +1 -1
  299. package/es/tools/uniqueId.js +3 -3
  300. package/es/tools/wrapComponent.js +14 -13
  301. package/lib/_virtual/_rollupPluginBabelHelpers.js +0 -336
  302. package/lib/components/Accordion/Accordion.Skeleton.js +27 -29
  303. package/lib/components/Accordion/Accordion.js +17 -20
  304. package/lib/components/Accordion/AccordionItem.js +36 -48
  305. package/lib/components/AspectRatio/AspectRatio.js +9 -11
  306. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
  307. package/lib/components/Breadcrumb/Breadcrumb.js +13 -12
  308. package/lib/components/Breadcrumb/BreadcrumbItem.js +23 -21
  309. package/lib/components/Button/Button.Skeleton.js +24 -22
  310. package/lib/components/Button/Button.js +76 -71
  311. package/lib/components/ButtonSet/ButtonSet.js +11 -9
  312. package/lib/components/Checkbox/Checkbox.Skeleton.js +9 -10
  313. package/lib/components/Checkbox/Checkbox.js +54 -51
  314. package/lib/components/CheckboxGroup/CheckboxGroup.js +32 -30
  315. package/lib/components/ClassPrefix/index.js +4 -2
  316. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +14 -13
  317. package/lib/components/CodeSnippet/CodeSnippet.js +198 -101
  318. package/lib/components/ComboBox/ComboBox.js +348 -177
  319. package/lib/components/ComboBox/tools/filter.js +6 -4
  320. package/lib/components/ComboButton/index.js +37 -42
  321. package/lib/components/ComposedModal/ComposedModal.js +187 -85
  322. package/lib/components/ComposedModal/ModalFooter.js +53 -48
  323. package/lib/components/ComposedModal/ModalHeader.js +38 -25
  324. package/lib/components/ContainedList/ContainedList.js +66 -20
  325. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  326. package/lib/components/ContentSwitcher/ContentSwitcher.js +82 -97
  327. package/lib/components/ContentSwitcher/index.js +1 -1
  328. package/lib/components/ContextMenu/useContextMenu.js +12 -21
  329. package/lib/components/Copy/Copy.js +23 -28
  330. package/lib/components/CopyButton/CopyButton.js +9 -9
  331. package/lib/components/DangerButton/DangerButton.js +3 -5
  332. package/lib/components/DataTable/DataTable.js +331 -357
  333. package/lib/components/DataTable/Table.js +28 -25
  334. package/lib/components/DataTable/TableActionList.js +2 -4
  335. package/lib/components/DataTable/TableBatchAction.js +2 -4
  336. package/lib/components/DataTable/TableBatchActions.js +28 -29
  337. package/lib/components/DataTable/TableBody.js +6 -7
  338. package/lib/components/DataTable/TableCell.js +1 -1
  339. package/lib/components/DataTable/TableContainer.js +22 -22
  340. package/lib/components/DataTable/TableContext.js +1 -1
  341. package/lib/components/DataTable/TableExpandHeader.js +18 -20
  342. package/lib/components/DataTable/TableExpandRow.js +22 -22
  343. package/lib/components/DataTable/TableExpandedRow.js +17 -22
  344. package/lib/components/DataTable/TableHead.js +1 -1
  345. package/lib/components/DataTable/TableHeader.js +43 -39
  346. package/lib/components/DataTable/TableRow.js +7 -8
  347. package/lib/components/DataTable/TableSelectAll.js +13 -11
  348. package/lib/components/DataTable/TableSelectRow.js +28 -20
  349. package/lib/components/DataTable/TableToolbar.js +18 -13
  350. package/lib/components/DataTable/TableToolbarAction.js +5 -5
  351. package/lib/components/DataTable/TableToolbarContent.js +2 -4
  352. package/lib/components/DataTable/TableToolbarMenu.js +10 -11
  353. package/lib/components/DataTable/TableToolbarSearch.js +51 -70
  354. package/lib/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  355. package/lib/components/DataTable/state/sortStates.js +1 -1
  356. package/lib/components/DataTable/state/sorting.js +28 -20
  357. package/lib/components/DataTable/tools/cells.js +1 -3
  358. package/lib/components/DataTable/tools/denormalize.js +4 -17
  359. package/lib/components/DataTable/tools/filter.js +18 -16
  360. package/lib/components/DataTable/tools/instanceId.js +2 -2
  361. package/lib/components/DataTable/tools/normalize.js +28 -25
  362. package/lib/components/DataTable/tools/sorting.js +27 -24
  363. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +35 -37
  364. package/lib/components/DatePicker/DatePicker.Skeleton.d.ts +30 -0
  365. package/lib/components/DatePicker/DatePicker.Skeleton.js +17 -19
  366. package/lib/components/DatePicker/DatePicker.d.ts +131 -0
  367. package/lib/components/DatePicker/DatePicker.js +214 -199
  368. package/lib/components/DatePicker/index.d.ts +10 -0
  369. package/lib/components/DatePicker/index.js +2 -0
  370. package/lib/components/DatePicker/plugins/appendToPlugin.js +45 -43
  371. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  372. package/lib/components/DatePicker/plugins/rangePlugin.js +19 -11
  373. package/lib/components/DatePickerInput/DatePickerInput.d.ts +93 -0
  374. package/lib/components/DatePickerInput/DatePickerInput.js +83 -74
  375. package/lib/components/Dropdown/Dropdown.Skeleton.js +12 -11
  376. package/lib/components/Dropdown/Dropdown.js +265 -108
  377. package/lib/components/ErrorBoundary/ErrorBoundary.js +27 -48
  378. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  379. package/lib/components/ExpandableSearch/ExpandableSearch.d.ts +14 -0
  380. package/lib/components/ExpandableSearch/ExpandableSearch.js +18 -24
  381. package/lib/components/FeatureFlags/index.js +25 -43
  382. package/lib/components/FileUploader/FileUploader.Skeleton.js +7 -8
  383. package/lib/components/FileUploader/FileUploader.js +119 -146
  384. package/lib/components/FileUploader/FileUploaderButton.js +35 -47
  385. package/lib/components/FileUploader/FileUploaderDropContainer.js +48 -52
  386. package/lib/components/FileUploader/FileUploaderItem.js +29 -29
  387. package/lib/components/FileUploader/Filename.js +12 -13
  388. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +10 -11
  389. package/lib/components/FluidComboBox/FluidComboBox.js +10 -8
  390. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +17 -17
  391. package/lib/components/FluidDatePicker/FluidDatePicker.js +19 -15
  392. package/lib/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  393. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +10 -11
  394. package/lib/components/FluidDropdown/FluidDropdown.js +10 -8
  395. package/lib/components/FluidForm/FluidForm.js +8 -9
  396. package/lib/components/FluidForm/FormContext.js +1 -1
  397. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +10 -11
  398. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +11 -9
  399. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +10 -11
  400. package/lib/components/FluidSelect/FluidSelect.js +8 -8
  401. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +8 -9
  402. package/lib/components/FluidTextArea/FluidTextArea.js +6 -7
  403. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +8 -9
  404. package/lib/components/FluidTextInput/FluidTextInput.js +9 -8
  405. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +10 -9
  406. package/lib/components/FluidTimePicker/FluidTimePicker.js +30 -26
  407. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +6 -6
  408. package/lib/components/Form/Form.js +8 -9
  409. package/lib/components/FormGroup/FormGroup.js +15 -16
  410. package/lib/components/FormItem/FormItem.js +7 -8
  411. package/lib/components/FormLabel/FormLabel.js +10 -9
  412. package/lib/components/Grid/CSSGrid.js +37 -38
  413. package/lib/components/Grid/Column.js +85 -78
  414. package/lib/components/Grid/ColumnHang.js +11 -13
  415. package/lib/components/Grid/FlexGrid.js +19 -21
  416. package/lib/components/Grid/Grid.js +2 -2
  417. package/lib/components/Grid/GridContext.js +12 -11
  418. package/lib/components/Grid/Row.js +16 -18
  419. package/lib/components/Heading/index.js +11 -13
  420. package/lib/components/Icon/Icon.Skeleton.js +9 -11
  421. package/lib/components/IconButton/index.js +18 -21
  422. package/lib/components/IdPrefix/index.js +4 -2
  423. package/lib/components/InlineCheckbox/InlineCheckbox.js +89 -36
  424. package/lib/components/InlineLoading/InlineLoading.js +22 -24
  425. package/lib/components/Layer/LayerContext.js +1 -1
  426. package/lib/components/Layer/index.js +16 -17
  427. package/lib/components/Layout/LayoutDirection.js +7 -9
  428. package/lib/components/Layout/LayoutDirectionContext.js +1 -1
  429. package/lib/components/Link/Link.js +24 -24
  430. package/lib/components/ListBox/ListBox.js +37 -30
  431. package/lib/components/ListBox/ListBoxField.js +8 -9
  432. package/lib/components/ListBox/ListBoxMenu.js +8 -9
  433. package/lib/components/ListBox/ListBoxMenuIcon.js +16 -14
  434. package/lib/components/ListBox/ListBoxMenuItem.js +22 -25
  435. package/lib/components/ListBox/ListBoxPropTypes.js +4 -4
  436. package/lib/components/ListBox/ListBoxSelection.js +30 -25
  437. package/lib/components/ListBox/index.js +1 -1
  438. package/lib/components/ListBox/next/ListBoxSelection.js +26 -23
  439. package/lib/components/ListBox/next/ListBoxTrigger.js +19 -18
  440. package/lib/components/ListItem/ListItem.js +8 -9
  441. package/lib/components/Loading/Loading.js +23 -23
  442. package/lib/components/Menu/Menu.js +66 -79
  443. package/lib/components/Menu/MenuContext.js +9 -12
  444. package/lib/components/Menu/MenuItem.js +103 -127
  445. package/lib/components/MenuButton/index.js +36 -40
  446. package/lib/components/Modal/Modal.js +280 -119
  447. package/lib/components/ModalWrapper/ModalWrapper.js +71 -95
  448. package/lib/components/MultiSelect/FilterableMultiSelect.js +298 -162
  449. package/lib/components/MultiSelect/MultiSelect.js +163 -175
  450. package/lib/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  451. package/lib/components/MultiSelect/tools/itemToString.js +3 -4
  452. package/lib/components/MultiSelect/tools/sorting.js +15 -13
  453. package/lib/components/Notification/Notification.js +434 -162
  454. package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -10
  455. package/lib/components/NumberInput/NumberInput.js +139 -138
  456. package/lib/components/OrderedList/OrderedList.js +16 -14
  457. package/lib/components/OverflowMenu/OverflowMenu.js +359 -226
  458. package/lib/components/OverflowMenu/index.js +1 -1
  459. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +31 -36
  460. package/lib/components/OverflowMenuV2/index.js +25 -27
  461. package/lib/components/Pagination/Pagination.Skeleton.js +8 -9
  462. package/lib/components/Pagination/Pagination.js +97 -139
  463. package/lib/components/Pagination/experimental/PageSelector.js +17 -17
  464. package/lib/components/Pagination/experimental/Pagination.js +72 -93
  465. package/lib/components/PaginationNav/PaginationNav.js +97 -116
  466. package/lib/components/Popover/index.js +73 -79
  467. package/lib/components/PrimaryButton/PrimaryButton.js +3 -5
  468. package/lib/components/ProgressBar/ProgressBar.js +38 -36
  469. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +14 -13
  470. package/lib/components/ProgressIndicator/ProgressIndicator.js +70 -70
  471. package/lib/components/RadioButton/RadioButton.Skeleton.js +8 -9
  472. package/lib/components/RadioButton/RadioButton.js +26 -26
  473. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +54 -64
  474. package/lib/components/RadioTile/RadioTile.js +26 -24
  475. package/lib/components/Search/Search.Skeleton.js +15 -15
  476. package/lib/components/Search/Search.d.ts +83 -0
  477. package/lib/components/Search/Search.js +62 -69
  478. package/lib/components/Search/index.d.ts +11 -0
  479. package/lib/components/SecondaryButton/SecondaryButton.js +3 -5
  480. package/lib/components/Select/Select.Skeleton.js +11 -12
  481. package/lib/components/Select/Select.js +78 -72
  482. package/lib/components/SelectItem/SelectItem.js +16 -12
  483. package/lib/components/SelectItemGroup/SelectItemGroup.js +10 -11
  484. package/lib/components/SkeletonIcon/SkeletonIcon.js +10 -10
  485. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +10 -10
  486. package/lib/components/SkeletonText/SkeletonText.js +28 -28
  487. package/lib/components/Slider/Slider.Skeleton.js +16 -17
  488. package/lib/components/Slider/Slider.js +305 -328
  489. package/lib/components/Slider/index.js +1 -1
  490. package/lib/components/Stack/Stack.js +18 -19
  491. package/lib/components/Stack/index.js +2 -2
  492. package/lib/components/StructuredList/StructuredList.Skeleton.js +24 -23
  493. package/lib/components/StructuredList/StructuredList.js +133 -105
  494. package/lib/components/Switch/IconSwitch.js +45 -51
  495. package/lib/components/Switch/Switch.js +33 -31
  496. package/lib/components/Tab/Tab.js +76 -82
  497. package/lib/components/Tab/index.js +1 -1
  498. package/lib/components/TabContent/TabContent.js +15 -17
  499. package/lib/components/Tabs/Tabs.Skeleton.js +13 -12
  500. package/lib/components/Tabs/Tabs.js +194 -205
  501. package/lib/components/Tabs/usePressable.js +27 -36
  502. package/lib/components/Tag/Tag.Skeleton.js +9 -8
  503. package/lib/components/Tag/Tag.js +33 -30
  504. package/lib/components/Text/Text.js +19 -19
  505. package/lib/components/Text/TextDirection.js +8 -7
  506. package/lib/components/Text/TextDirectionContext.js +1 -1
  507. package/lib/components/Text/index.js +1 -1
  508. package/lib/components/TextArea/TextArea.Skeleton.js +10 -11
  509. package/lib/components/TextArea/TextArea.js +88 -82
  510. package/lib/components/TextInput/ControlledPasswordInput.js +78 -72
  511. package/lib/components/TextInput/PasswordInput.js +100 -90
  512. package/lib/components/TextInput/TextInput.Skeleton.js +10 -11
  513. package/lib/components/TextInput/TextInput.js +104 -92
  514. package/lib/components/TextInput/util.js +28 -30
  515. package/lib/components/Theme/index.js +24 -19
  516. package/lib/components/Tile/Tile.js +134 -175
  517. package/lib/components/TileGroup/TileGroup.js +54 -69
  518. package/lib/components/TileGroup/index.js +1 -1
  519. package/lib/components/TimePicker/TimePicker.js +59 -66
  520. package/lib/components/TimePickerSelect/TimePickerSelect.js +19 -17
  521. package/lib/components/TimePickerSelect/index.js +1 -1
  522. package/lib/components/Toggle/Toggle.Skeleton.js +68 -57
  523. package/lib/components/Toggle/Toggle.js +43 -47
  524. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +60 -54
  525. package/lib/components/Toggletip/index.js +51 -47
  526. package/lib/components/Tooltip/DefinitionTooltip.js +23 -30
  527. package/lib/components/Tooltip/Tooltip.js +34 -49
  528. package/lib/components/TreeView/TreeNode.js +93 -73
  529. package/lib/components/TreeView/TreeView.js +71 -82
  530. package/lib/components/UIShell/Content.js +12 -14
  531. package/lib/components/UIShell/Header.js +15 -11
  532. package/lib/components/UIShell/HeaderContainer.js +8 -14
  533. package/lib/components/UIShell/HeaderGlobalAction.js +25 -18
  534. package/lib/components/UIShell/HeaderGlobalBar.js +1 -3
  535. package/lib/components/UIShell/HeaderMenu.js +113 -128
  536. package/lib/components/UIShell/HeaderMenuButton.js +30 -21
  537. package/lib/components/UIShell/HeaderMenuItem.js +27 -19
  538. package/lib/components/UIShell/HeaderName.js +18 -13
  539. package/lib/components/UIShell/HeaderNavigation.js +18 -14
  540. package/lib/components/UIShell/HeaderPanel.js +22 -16
  541. package/lib/components/UIShell/HeaderSideNavItems.js +11 -9
  542. package/lib/components/UIShell/Link.js +11 -11
  543. package/lib/components/UIShell/SideNav.js +65 -61
  544. package/lib/components/UIShell/SideNavDetails.js +10 -11
  545. package/lib/components/UIShell/SideNavDivider.js +5 -3
  546. package/lib/components/UIShell/SideNavFooter.js +13 -12
  547. package/lib/components/UIShell/SideNavHeader.js +9 -6
  548. package/lib/components/UIShell/SideNavIcon.js +11 -8
  549. package/lib/components/UIShell/SideNavItem.js +11 -9
  550. package/lib/components/UIShell/SideNavItems.js +14 -11
  551. package/lib/components/UIShell/SideNavLink.js +18 -16
  552. package/lib/components/UIShell/SideNavLinkText.js +7 -8
  553. package/lib/components/UIShell/SideNavMenu.js +29 -35
  554. package/lib/components/UIShell/SideNavMenuItem.js +13 -13
  555. package/lib/components/UIShell/SideNavSwitcher.js +19 -19
  556. package/lib/components/UIShell/SkipToContent.js +9 -10
  557. package/lib/components/UIShell/Switcher.js +19 -10
  558. package/lib/components/UIShell/SwitcherDivider.js +9 -8
  559. package/lib/components/UIShell/SwitcherItem.js +25 -18
  560. package/lib/components/UIShell/_utils.js +1 -1
  561. package/lib/components/UnorderedList/UnorderedList.js +13 -13
  562. package/lib/index.js +14 -14
  563. package/lib/internal/ClickListener.js +49 -65
  564. package/lib/internal/FloatingMenu.js +192 -199
  565. package/lib/internal/OptimizedResize.js +9 -8
  566. package/lib/internal/Selection.js +91 -110
  567. package/lib/internal/createClassWrapper.js +2 -2
  568. package/lib/internal/deprecateFieldOnObject.js +5 -3
  569. package/lib/internal/environment.js +1 -1
  570. package/lib/internal/focus/index.js +1 -1
  571. package/lib/internal/keyboard/keys.js +11 -11
  572. package/lib/internal/keyboard/match.js +7 -6
  573. package/lib/internal/keyboard/navigation.js +15 -5
  574. package/lib/internal/useAnnouncer.js +2 -2
  575. package/lib/internal/useAttachedMenu.js +12 -20
  576. package/lib/internal/useControllableState.js +11 -16
  577. package/lib/internal/useDelayedState.js +9 -18
  578. package/lib/internal/useEffectOnce.js +4 -4
  579. package/lib/internal/useEvent.js +4 -4
  580. package/lib/internal/useId.js +14 -18
  581. package/lib/internal/useIdPrefix.js +1 -1
  582. package/lib/internal/useIsomorphicEffect.js +1 -1
  583. package/lib/internal/useMergedRefs.js +3 -3
  584. package/lib/internal/useNoInteractiveChildren.js +8 -19
  585. package/lib/internal/useNormalizedInputProps.js +16 -14
  586. package/lib/internal/usePrefix.js +1 -1
  587. package/lib/internal/useSavedCallback.js +3 -3
  588. package/lib/internal/warning.js +4 -4
  589. package/lib/internal/wrapFocus.js +16 -21
  590. package/lib/prop-types/AriaPropTypes.js +1 -1
  591. package/lib/prop-types/deprecate.js +6 -5
  592. package/lib/prop-types/isRequiredOneOf.js +15 -28
  593. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  594. package/lib/prop-types/types.js +1 -1
  595. package/lib/tools/array.js +1 -1
  596. package/lib/tools/events.js +21 -14
  597. package/lib/tools/mergeRefs.js +3 -3
  598. package/lib/tools/setupGetInstanceId.js +1 -1
  599. package/lib/tools/uniqueId.js +3 -3
  600. package/lib/tools/wrapComponent.js +14 -13
  601. package/package.json +6 -6
@@ -5,12 +5,12 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends, slicedToArray as _slicedToArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
10
  import React__default, { useState, useRef, useEffect } from 'react';
11
11
  import deprecate from '../../prop-types/deprecate.js';
12
12
  import cx from 'classnames';
13
- import { Close, WarningAltFilled, InformationFilled, InformationSquareFilled, ErrorFilled, CheckmarkFilled, WarningFilled } from '@carbon/icons-react';
13
+ import { Close, ErrorFilled, CheckmarkFilled, WarningFilled, WarningAltFilled, InformationFilled, InformationSquareFilled } from '@carbon/icons-react';
14
14
  import Button from '../Button/Button.js';
15
15
  import useIsomorphicEffect from '../../internal/useIsomorphicEffect.js';
16
16
  import { useNoInteractiveChildren } from '../../internal/useNoInteractiveChildren.js';
@@ -19,13 +19,6 @@ import { useId } from '../../internal/useId.js';
19
19
  import { matches } from '../../internal/keyboard/match.js';
20
20
  import { Escape } from '../../internal/keyboard/keys.js';
21
21
 
22
- var _NotificationButton$p, _NotificationButton$d, _iconTypes, _ToastNotification$pr, _InlineNotification$p, _ActionableNotificati;
23
-
24
- var _excluded = ["children", "className", "onClick", "inline"],
25
- _excluded2 = ["aria-label", "ariaLabel", "className", "type", "renderIcon", "name", "notificationType"],
26
- _excluded3 = ["aria-label", "ariaLabel", "role", "onClose", "onCloseButtonClick", "statusIconDescription", "className", "children", "kind", "lowContrast", "hideCloseButton", "timeout", "title", "caption", "subtitle"],
27
- _excluded4 = ["aria-label", "children", "title", "subtitle", "role", "onClose", "onCloseButtonClick", "statusIconDescription", "className", "kind", "lowContrast", "hideCloseButton"],
28
- _excluded5 = ["actionButtonLabel", "aria-label", "ariaLabel", "children", "role", "onActionButtonClick", "onClose", "onCloseButtonClick", "statusIconDescription", "className", "inline", "kind", "lowContrast", "hideCloseButton", "hasFocus", "closeOnEscape", "title", "subtitle"];
29
22
  /**
30
23
  * Conditionally call a callback when the escape key is pressed
31
24
  * @param {node} ref - ref of the container element to scope the functionality to
@@ -34,34 +27,35 @@ var _excluded = ["children", "className", "onClick", "inline"],
34
27
  */
35
28
 
36
29
  function useEscapeToClose(ref, callback) {
37
- var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
30
+ let override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
38
31
 
39
- var handleKeyDown = function handleKeyDown(event) {
32
+ const handleKeyDown = event => {
40
33
  // The callback should only be called when focus is on or within the container
41
- var elementContainsFocus = ref.current && document.activeElement === ref.current || ref.current.contains(document.activeElement);
34
+ const elementContainsFocus = ref.current && document.activeElement === ref.current || ref.current.contains(document.activeElement);
42
35
 
43
36
  if (matches(event, [Escape]) && override && elementContainsFocus) {
44
37
  callback(event);
45
38
  }
46
39
  };
47
40
 
48
- useIsomorphicEffect(function () {
41
+ useIsomorphicEffect(() => {
49
42
  document.addEventListener('keydown', handleKeyDown, false);
50
- return function () {
51
- return document.removeEventListener('keydown', handleKeyDown, false);
52
- };
43
+ return () => document.removeEventListener('keydown', handleKeyDown, false);
53
44
  });
54
45
  }
55
46
 
56
47
  function NotificationActionButton(_ref) {
57
- var children = _ref.children,
58
- customClassName = _ref.className,
59
- onClick = _ref.onClick,
60
- inline = _ref.inline,
61
- rest = _objectWithoutProperties(_ref, _excluded);
62
-
63
- var prefix = usePrefix();
64
- var className = cx(customClassName, _defineProperty({}, "".concat(prefix, "--actionable-notification__action-button"), true));
48
+ let {
49
+ children,
50
+ className: customClassName,
51
+ onClick,
52
+ inline,
53
+ ...rest
54
+ } = _ref;
55
+ const prefix = usePrefix();
56
+ const className = cx(customClassName, {
57
+ [`${prefix}--actionable-notification__action-button`]: true
58
+ });
65
59
  return /*#__PURE__*/React__default.createElement(Button, _extends({
66
60
  className: className,
67
61
  kind: inline ? 'ghost' : 'tertiary',
@@ -91,18 +85,23 @@ NotificationActionButton.propTypes = {
91
85
  onClick: PropTypes.func
92
86
  };
93
87
  function NotificationButton(_ref2) {
94
- var ariaLabel = _ref2['aria-label'],
95
- deprecatedAriaLabel = _ref2.ariaLabel,
96
- className = _ref2.className,
97
- type = _ref2.type,
98
- IconTag = _ref2.renderIcon,
99
- name = _ref2.name,
100
- notificationType = _ref2.notificationType,
101
- rest = _objectWithoutProperties(_ref2, _excluded2);
102
-
103
- var prefix = usePrefix();
104
- var buttonClassName = cx(className, _defineProperty({}, "".concat(prefix, "--").concat(notificationType, "-notification__close-button"), notificationType));
105
- var iconClassName = cx(_defineProperty({}, "".concat(prefix, "--").concat(notificationType, "-notification__close-icon"), notificationType));
88
+ let {
89
+ ['aria-label']: ariaLabel,
90
+ ariaLabel: deprecatedAriaLabel,
91
+ className,
92
+ type,
93
+ renderIcon: IconTag,
94
+ name,
95
+ notificationType,
96
+ ...rest
97
+ } = _ref2;
98
+ const prefix = usePrefix();
99
+ const buttonClassName = cx(className, {
100
+ [`${prefix}--${notificationType}-notification__close-button`]: notificationType
101
+ });
102
+ const iconClassName = cx({
103
+ [`${prefix}--${notificationType}-notification__close-icon`]: notificationType
104
+ });
106
105
  return /*#__PURE__*/React__default.createElement("button", _extends({}, rest, {
107
106
  // eslint-disable-next-line react/button-has-type
108
107
  type: type,
@@ -114,27 +113,75 @@ function NotificationButton(_ref2) {
114
113
  name: name
115
114
  }));
116
115
  }
117
- NotificationButton.propTypes = (_NotificationButton$p = {}, _defineProperty(_NotificationButton$p, 'aria-label', PropTypes.string), _defineProperty(_NotificationButton$p, "ariaLabel", deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.')), _defineProperty(_NotificationButton$p, "className", PropTypes.string), _defineProperty(_NotificationButton$p, "name", PropTypes.string), _defineProperty(_NotificationButton$p, "notificationType", PropTypes.oneOf(['toast', 'inline', 'actionable'])), _defineProperty(_NotificationButton$p, "renderIcon", PropTypes.oneOfType([PropTypes.func, PropTypes.object])), _defineProperty(_NotificationButton$p, "type", PropTypes.string), _NotificationButton$p);
118
- NotificationButton.defaultProps = (_NotificationButton$d = {}, _defineProperty(_NotificationButton$d, 'aria-label', 'close notification'), _defineProperty(_NotificationButton$d, "notificationType", 'toast'), _defineProperty(_NotificationButton$d, "type", 'button'), _defineProperty(_NotificationButton$d, "renderIcon", Close), _NotificationButton$d);
119
- var iconTypes = (_iconTypes = {
116
+ NotificationButton.propTypes = {
117
+ /**
118
+ * Specify a label to be read by screen readers on the container node
119
+ */
120
+ ['aria-label']: PropTypes.string,
121
+
122
+ /**
123
+ * Deprecated, please use `aria-label` instead.
124
+ * Specify a label to be read by screen readers on the container note.
125
+ */
126
+ ariaLabel: deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.'),
127
+
128
+ /**
129
+ * Specify an optional className to be applied to the notification button
130
+ */
131
+ className: PropTypes.string,
132
+
133
+ /**
134
+ * Specify an optional icon for the Button through a string,
135
+ * if something but regular "close" icon is desirable
136
+ */
137
+ name: PropTypes.string,
138
+
139
+ /**
140
+ * Specify the notification type
141
+ */
142
+ notificationType: PropTypes.oneOf(['toast', 'inline', 'actionable']),
143
+
144
+ /**
145
+ * Optional prop to allow overriding the icon rendering.
146
+ * Can be a React component class
147
+ */
148
+ renderIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
149
+
150
+ /**
151
+ * Optional prop to specify the type of the Button
152
+ */
153
+ type: PropTypes.string
154
+ };
155
+ NotificationButton.defaultProps = {
156
+ ['aria-label']: 'close notification',
157
+ notificationType: 'toast',
158
+ type: 'button',
159
+ renderIcon: Close
160
+ };
161
+ const iconTypes = {
120
162
  error: ErrorFilled,
121
163
  success: CheckmarkFilled,
122
- warning: WarningFilled
123
- }, _defineProperty(_iconTypes, 'warning-alt', WarningAltFilled), _defineProperty(_iconTypes, "info", InformationFilled), _defineProperty(_iconTypes, 'info-square', InformationSquareFilled), _iconTypes);
164
+ warning: WarningFilled,
165
+ ['warning-alt']: WarningAltFilled,
166
+ info: InformationFilled,
167
+ ['info-square']: InformationSquareFilled
168
+ };
124
169
 
125
170
  function NotificationIcon(_ref3) {
126
- var iconDescription = _ref3.iconDescription,
127
- kind = _ref3.kind,
128
- notificationType = _ref3.notificationType;
129
- var prefix = usePrefix();
130
- var IconForKind = iconTypes[kind];
171
+ let {
172
+ iconDescription,
173
+ kind,
174
+ notificationType
175
+ } = _ref3;
176
+ const prefix = usePrefix();
177
+ const IconForKind = iconTypes[kind];
131
178
 
132
179
  if (!IconForKind) {
133
180
  return null;
134
181
  }
135
182
 
136
183
  return /*#__PURE__*/React__default.createElement(IconForKind, {
137
- className: "".concat(prefix, "--").concat(notificationType, "-notification__icon"),
184
+ className: `${prefix}--${notificationType}-notification__icon`,
138
185
  size: 20
139
186
  }, /*#__PURE__*/React__default.createElement("title", null, iconDescription));
140
187
  }
@@ -145,65 +192,64 @@ NotificationIcon.propTypes = {
145
192
  notificationType: PropTypes.oneOf(['inline', 'toast']).isRequired
146
193
  };
147
194
  function ToastNotification(_ref4) {
148
- var _cx4;
149
-
150
- var ariaLabel = _ref4['aria-label'],
151
- deprecatedAriaLabel = _ref4.ariaLabel,
152
- role = _ref4.role,
153
- onClose = _ref4.onClose,
154
- onCloseButtonClick = _ref4.onCloseButtonClick,
155
- statusIconDescription = _ref4.statusIconDescription,
156
- className = _ref4.className,
157
- children = _ref4.children,
158
- kind = _ref4.kind,
159
- lowContrast = _ref4.lowContrast,
160
- hideCloseButton = _ref4.hideCloseButton,
161
- timeout = _ref4.timeout,
162
- title = _ref4.title,
163
- caption = _ref4.caption,
164
- subtitle = _ref4.subtitle,
165
- rest = _objectWithoutProperties(_ref4, _excluded3);
166
-
167
- var _useState = useState(true),
168
- _useState2 = _slicedToArray(_useState, 2),
169
- isOpen = _useState2[0],
170
- setIsOpen = _useState2[1];
171
-
172
- var prefix = usePrefix();
173
- var containerClassName = cx(className, (_cx4 = {}, _defineProperty(_cx4, "".concat(prefix, "--toast-notification"), true), _defineProperty(_cx4, "".concat(prefix, "--toast-notification--low-contrast"), lowContrast), _defineProperty(_cx4, "".concat(prefix, "--toast-notification--").concat(kind), kind), _cx4));
174
- var contentRef = useRef(null);
195
+ let {
196
+ ['aria-label']: ariaLabel,
197
+ ariaLabel: deprecatedAriaLabel,
198
+ role,
199
+ onClose,
200
+ onCloseButtonClick,
201
+ statusIconDescription,
202
+ className,
203
+ children,
204
+ kind,
205
+ lowContrast,
206
+ hideCloseButton,
207
+ timeout,
208
+ title,
209
+ caption,
210
+ subtitle,
211
+ ...rest
212
+ } = _ref4;
213
+ const [isOpen, setIsOpen] = useState(true);
214
+ const prefix = usePrefix();
215
+ const containerClassName = cx(className, {
216
+ [`${prefix}--toast-notification`]: true,
217
+ [`${prefix}--toast-notification--low-contrast`]: lowContrast,
218
+ [`${prefix}--toast-notification--${kind}`]: kind
219
+ });
220
+ const contentRef = useRef(null);
175
221
  useNoInteractiveChildren(contentRef);
176
222
 
177
- var handleClose = function handleClose(evt) {
223
+ const handleClose = evt => {
178
224
  if (!onClose || onClose(evt) !== false) {
179
225
  setIsOpen(false);
180
226
  }
181
227
  };
182
228
 
183
- var ref = useRef(null);
229
+ const ref = useRef(null);
184
230
 
185
231
  function handleCloseButtonClick(event) {
186
232
  onCloseButtonClick(event);
187
233
  handleClose(event);
188
234
  }
189
235
 
190
- var savedOnClose = useRef(onClose);
191
- useEffect(function () {
236
+ const savedOnClose = useRef(onClose);
237
+ useEffect(() => {
192
238
  savedOnClose.current = onClose;
193
239
  });
194
- useEffect(function () {
240
+ useEffect(() => {
195
241
  if (!timeout) {
196
242
  return;
197
243
  }
198
244
 
199
- var timeoutId = window.setTimeout(function (event) {
245
+ const timeoutId = window.setTimeout(event => {
200
246
  setIsOpen(false);
201
247
 
202
248
  if (savedOnClose.current) {
203
249
  savedOnClose.current(event);
204
250
  }
205
251
  }, timeout);
206
- return function () {
252
+ return () => {
207
253
  window.clearTimeout(timeoutId);
208
254
  };
209
255
  }, [timeout]);
@@ -220,16 +266,16 @@ function ToastNotification(_ref4) {
220
266
  }), /*#__PURE__*/React__default.createElement(NotificationIcon, {
221
267
  notificationType: "toast",
222
268
  kind: kind,
223
- iconDescription: statusIconDescription || "".concat(kind, " icon")
269
+ iconDescription: statusIconDescription || `${kind} icon`
224
270
  }), /*#__PURE__*/React__default.createElement("div", {
225
271
  ref: contentRef,
226
- className: "".concat(prefix, "--toast-notification__details")
272
+ className: `${prefix}--toast-notification__details`
227
273
  }, title && /*#__PURE__*/React__default.createElement("div", {
228
- className: "".concat(prefix, "--toast-notification__title")
274
+ className: `${prefix}--toast-notification__title`
229
275
  }, title), subtitle && /*#__PURE__*/React__default.createElement("div", {
230
- className: "".concat(prefix, "--toast-notification__subtitle")
276
+ className: `${prefix}--toast-notification__subtitle`
231
277
  }, subtitle), caption && /*#__PURE__*/React__default.createElement("div", {
232
- className: "".concat(prefix, "--toast-notification__caption")
278
+ className: `${prefix}--toast-notification__caption`
233
279
  }, caption), children), !hideCloseButton && /*#__PURE__*/React__default.createElement(NotificationButton, {
234
280
  notificationType: "toast",
235
281
  onClick: handleCloseButtonClick,
@@ -238,48 +284,125 @@ function ToastNotification(_ref4) {
238
284
  tabIndex: "-1"
239
285
  }));
240
286
  }
241
- ToastNotification.propTypes = (_ToastNotification$pr = {}, _defineProperty(_ToastNotification$pr, 'aria-label', PropTypes.string), _defineProperty(_ToastNotification$pr, "ariaLabel", deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.')), _defineProperty(_ToastNotification$pr, "caption", PropTypes.string), _defineProperty(_ToastNotification$pr, "children", PropTypes.node), _defineProperty(_ToastNotification$pr, "className", PropTypes.string), _defineProperty(_ToastNotification$pr, "hideCloseButton", PropTypes.bool), _defineProperty(_ToastNotification$pr, "kind", PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt'])), _defineProperty(_ToastNotification$pr, "lowContrast", PropTypes.bool), _defineProperty(_ToastNotification$pr, "onClose", PropTypes.func), _defineProperty(_ToastNotification$pr, "onCloseButtonClick", PropTypes.func), _defineProperty(_ToastNotification$pr, "role", PropTypes.oneOf(['alert', 'log', 'status'])), _defineProperty(_ToastNotification$pr, "statusIconDescription", PropTypes.string), _defineProperty(_ToastNotification$pr, "subtitle", PropTypes.string), _defineProperty(_ToastNotification$pr, "timeout", PropTypes.number), _defineProperty(_ToastNotification$pr, "title", PropTypes.string), _ToastNotification$pr);
287
+ ToastNotification.propTypes = {
288
+ /**
289
+ * Provide a description for "close" icon button that can be read by screen readers
290
+ */
291
+ ['aria-label']: PropTypes.string,
292
+
293
+ /**
294
+ * Deprecated, please use `aria-label` instead.
295
+ * Provide a description for "close" icon button that can be read by screen readers
296
+ */
297
+ ariaLabel: deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.'),
298
+
299
+ /**
300
+ * Specify the caption
301
+ */
302
+ caption: PropTypes.string,
303
+
304
+ /**
305
+ * Specify the content
306
+ */
307
+ children: PropTypes.node,
308
+
309
+ /**
310
+ * Specify an optional className to be applied to the notification box
311
+ */
312
+ className: PropTypes.string,
313
+
314
+ /**
315
+ * Specify the close button should be disabled, or not
316
+ */
317
+ hideCloseButton: PropTypes.bool,
318
+
319
+ /**
320
+ * Specify what state the notification represents
321
+ */
322
+ kind: PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt']),
323
+
324
+ /**
325
+ * Specify whether you are using the low contrast variant of the ToastNotification.
326
+ */
327
+ lowContrast: PropTypes.bool,
328
+
329
+ /**
330
+ * Provide a function that is called when menu is closed
331
+ */
332
+ onClose: PropTypes.func,
333
+
334
+ /**
335
+ * Provide a function that is called when the close button is clicked
336
+ */
337
+ onCloseButtonClick: PropTypes.func,
338
+
339
+ /**
340
+ * By default, this value is "status". You can also provide an alternate
341
+ * role if it makes sense from the accessibility-side
342
+ */
343
+ role: PropTypes.oneOf(['alert', 'log', 'status']),
344
+
345
+ /**
346
+ * Provide a description for "status" icon that can be read by screen readers
347
+ */
348
+ statusIconDescription: PropTypes.string,
349
+
350
+ /**
351
+ * Specify the sub-title
352
+ */
353
+ subtitle: PropTypes.string,
354
+
355
+ /**
356
+ * Specify an optional duration the notification should be closed in
357
+ */
358
+ timeout: PropTypes.number,
359
+
360
+ /**
361
+ * Specify the title
362
+ */
363
+ title: PropTypes.string
364
+ };
242
365
  ToastNotification.defaultProps = {
243
366
  kind: 'error',
244
367
  role: 'status',
245
- onCloseButtonClick: function onCloseButtonClick() {},
368
+ onCloseButtonClick: () => {},
246
369
  hideCloseButton: false,
247
370
  timeout: 0
248
371
  };
249
372
  function InlineNotification(_ref5) {
250
- var _cx5;
251
-
252
- var ariaLabel = _ref5['aria-label'],
253
- children = _ref5.children,
254
- title = _ref5.title,
255
- subtitle = _ref5.subtitle,
256
- role = _ref5.role,
257
- onClose = _ref5.onClose,
258
- onCloseButtonClick = _ref5.onCloseButtonClick,
259
- statusIconDescription = _ref5.statusIconDescription,
260
- className = _ref5.className,
261
- kind = _ref5.kind,
262
- lowContrast = _ref5.lowContrast,
263
- hideCloseButton = _ref5.hideCloseButton,
264
- rest = _objectWithoutProperties(_ref5, _excluded4);
265
-
266
- var _useState3 = useState(true),
267
- _useState4 = _slicedToArray(_useState3, 2),
268
- isOpen = _useState4[0],
269
- setIsOpen = _useState4[1];
270
-
271
- var prefix = usePrefix();
272
- var containerClassName = cx(className, (_cx5 = {}, _defineProperty(_cx5, "".concat(prefix, "--inline-notification"), true), _defineProperty(_cx5, "".concat(prefix, "--inline-notification--low-contrast"), lowContrast), _defineProperty(_cx5, "".concat(prefix, "--inline-notification--").concat(kind), kind), _defineProperty(_cx5, "".concat(prefix, "--inline-notification--hide-close-button"), hideCloseButton), _cx5));
273
- var contentRef = useRef(null);
373
+ let {
374
+ ['aria-label']: ariaLabel,
375
+ children,
376
+ title,
377
+ subtitle,
378
+ role,
379
+ onClose,
380
+ onCloseButtonClick,
381
+ statusIconDescription,
382
+ className,
383
+ kind,
384
+ lowContrast,
385
+ hideCloseButton,
386
+ ...rest
387
+ } = _ref5;
388
+ const [isOpen, setIsOpen] = useState(true);
389
+ const prefix = usePrefix();
390
+ const containerClassName = cx(className, {
391
+ [`${prefix}--inline-notification`]: true,
392
+ [`${prefix}--inline-notification--low-contrast`]: lowContrast,
393
+ [`${prefix}--inline-notification--${kind}`]: kind,
394
+ [`${prefix}--inline-notification--hide-close-button`]: hideCloseButton
395
+ });
396
+ const contentRef = useRef(null);
274
397
  useNoInteractiveChildren(contentRef);
275
398
 
276
- var handleClose = function handleClose(evt) {
399
+ const handleClose = evt => {
277
400
  if (!onClose || onClose(evt) !== false) {
278
401
  setIsOpen(false);
279
402
  }
280
403
  };
281
404
 
282
- var ref = useRef(null);
405
+ const ref = useRef(null);
283
406
 
284
407
  function handleCloseButtonClick(event) {
285
408
  onCloseButtonClick(event);
@@ -296,18 +419,18 @@ function InlineNotification(_ref5) {
296
419
  role: role,
297
420
  className: containerClassName
298
421
  }), /*#__PURE__*/React__default.createElement("div", {
299
- className: "".concat(prefix, "--inline-notification__details")
422
+ className: `${prefix}--inline-notification__details`
300
423
  }, /*#__PURE__*/React__default.createElement(NotificationIcon, {
301
424
  notificationType: "inline",
302
425
  kind: kind,
303
- iconDescription: statusIconDescription || "".concat(kind, " icon")
426
+ iconDescription: statusIconDescription || `${kind} icon`
304
427
  }), /*#__PURE__*/React__default.createElement("div", {
305
428
  ref: contentRef,
306
- className: "".concat(prefix, "--inline-notification__text-wrapper")
429
+ className: `${prefix}--inline-notification__text-wrapper`
307
430
  }, title && /*#__PURE__*/React__default.createElement("div", {
308
- className: "".concat(prefix, "--inline-notification__title")
431
+ className: `${prefix}--inline-notification__title`
309
432
  }, title), subtitle && /*#__PURE__*/React__default.createElement("div", {
310
- className: "".concat(prefix, "--inline-notification__subtitle")
433
+ className: `${prefix}--inline-notification__subtitle`
311
434
  }, subtitle), children)), !hideCloseButton && /*#__PURE__*/React__default.createElement(NotificationButton, {
312
435
  notificationType: "inline",
313
436
  onClick: handleCloseButtonClick,
@@ -316,52 +439,114 @@ function InlineNotification(_ref5) {
316
439
  tabIndex: "-1"
317
440
  }));
318
441
  }
319
- InlineNotification.propTypes = (_InlineNotification$p = {}, _defineProperty(_InlineNotification$p, 'aria-label', PropTypes.string), _defineProperty(_InlineNotification$p, "children", PropTypes.node), _defineProperty(_InlineNotification$p, "className", PropTypes.string), _defineProperty(_InlineNotification$p, "hideCloseButton", PropTypes.bool), _defineProperty(_InlineNotification$p, "kind", PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt'])), _defineProperty(_InlineNotification$p, "lowContrast", PropTypes.bool), _defineProperty(_InlineNotification$p, "onClose", PropTypes.func), _defineProperty(_InlineNotification$p, "onCloseButtonClick", PropTypes.func), _defineProperty(_InlineNotification$p, "role", PropTypes.oneOf(['alert', 'log', 'status'])), _defineProperty(_InlineNotification$p, "statusIconDescription", PropTypes.string), _defineProperty(_InlineNotification$p, "subtitle", PropTypes.string), _defineProperty(_InlineNotification$p, "title", PropTypes.string), _InlineNotification$p);
442
+ InlineNotification.propTypes = {
443
+ /**
444
+ * Provide a description for "close" icon button that can be read by screen readers
445
+ */
446
+ ['aria-label']: PropTypes.string,
447
+
448
+ /**
449
+ * Specify the content
450
+ */
451
+ children: PropTypes.node,
452
+
453
+ /**
454
+ * Specify an optional className to be applied to the notification box
455
+ */
456
+ className: PropTypes.string,
457
+
458
+ /**
459
+ * Specify the close button should be disabled, or not
460
+ */
461
+ hideCloseButton: PropTypes.bool,
462
+
463
+ /**
464
+ * Specify what state the notification represents
465
+ */
466
+ kind: PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt']),
467
+
468
+ /**
469
+ * Specify whether you are using the low contrast variant of the InlineNotification.
470
+ */
471
+ lowContrast: PropTypes.bool,
472
+
473
+ /**
474
+ * Provide a function that is called when menu is closed
475
+ */
476
+ onClose: PropTypes.func,
477
+
478
+ /**
479
+ * Provide a function that is called when the close button is clicked
480
+ */
481
+ onCloseButtonClick: PropTypes.func,
482
+
483
+ /**
484
+ * By default, this value is "status". You can also provide an alternate
485
+ * role if it makes sense from the accessibility-side.
486
+ */
487
+ role: PropTypes.oneOf(['alert', 'log', 'status']),
488
+
489
+ /**
490
+ * Provide a description for "status" icon that can be read by screen readers
491
+ */
492
+ statusIconDescription: PropTypes.string,
493
+
494
+ /**
495
+ * Specify the sub-title
496
+ */
497
+ subtitle: PropTypes.string,
498
+
499
+ /**
500
+ * Specify the title
501
+ */
502
+ title: PropTypes.string
503
+ };
320
504
  InlineNotification.defaultProps = {
321
505
  kind: 'error',
322
506
  role: 'status',
323
- onCloseButtonClick: function onCloseButtonClick() {},
507
+ onCloseButtonClick: () => {},
324
508
  hideCloseButton: false
325
509
  };
326
510
  function ActionableNotification(_ref6) {
327
- var _cx6;
328
-
329
- var actionButtonLabel = _ref6.actionButtonLabel,
330
- ariaLabel = _ref6['aria-label'],
331
- deprecatedAriaLabel = _ref6.ariaLabel,
332
- children = _ref6.children,
333
- role = _ref6.role,
334
- onActionButtonClick = _ref6.onActionButtonClick,
335
- onClose = _ref6.onClose,
336
- onCloseButtonClick = _ref6.onCloseButtonClick,
337
- statusIconDescription = _ref6.statusIconDescription,
338
- className = _ref6.className,
339
- inline = _ref6.inline,
340
- kind = _ref6.kind,
341
- lowContrast = _ref6.lowContrast,
342
- hideCloseButton = _ref6.hideCloseButton,
343
- hasFocus = _ref6.hasFocus,
344
- closeOnEscape = _ref6.closeOnEscape,
345
- title = _ref6.title,
346
- subtitle = _ref6.subtitle,
347
- rest = _objectWithoutProperties(_ref6, _excluded5);
348
-
349
- var _useState5 = useState(true),
350
- _useState6 = _slicedToArray(_useState5, 2),
351
- isOpen = _useState6[0],
352
- setIsOpen = _useState6[1];
353
-
354
- var prefix = usePrefix();
355
- var id = useId('actionable-notification');
356
- var containerClassName = cx(className, (_cx6 = {}, _defineProperty(_cx6, "".concat(prefix, "--actionable-notification"), true), _defineProperty(_cx6, "".concat(prefix, "--actionable-notification--toast"), !inline), _defineProperty(_cx6, "".concat(prefix, "--actionable-notification--low-contrast"), lowContrast), _defineProperty(_cx6, "".concat(prefix, "--actionable-notification--").concat(kind), kind), _defineProperty(_cx6, "".concat(prefix, "--actionable-notification--hide-close-button"), hideCloseButton), _cx6));
357
- var ref = useRef(null);
358
- useIsomorphicEffect(function () {
511
+ let {
512
+ actionButtonLabel,
513
+ ['aria-label']: ariaLabel,
514
+ ariaLabel: deprecatedAriaLabel,
515
+ children,
516
+ role,
517
+ onActionButtonClick,
518
+ onClose,
519
+ onCloseButtonClick,
520
+ statusIconDescription,
521
+ className,
522
+ inline,
523
+ kind,
524
+ lowContrast,
525
+ hideCloseButton,
526
+ hasFocus,
527
+ closeOnEscape,
528
+ title,
529
+ subtitle,
530
+ ...rest
531
+ } = _ref6;
532
+ const [isOpen, setIsOpen] = useState(true);
533
+ const prefix = usePrefix();
534
+ const id = useId('actionable-notification');
535
+ const containerClassName = cx(className, {
536
+ [`${prefix}--actionable-notification`]: true,
537
+ [`${prefix}--actionable-notification--toast`]: !inline,
538
+ [`${prefix}--actionable-notification--low-contrast`]: lowContrast,
539
+ [`${prefix}--actionable-notification--${kind}`]: kind,
540
+ [`${prefix}--actionable-notification--hide-close-button`]: hideCloseButton
541
+ });
542
+ const ref = useRef(null);
543
+ useIsomorphicEffect(() => {
359
544
  if (ref.current && hasFocus) {
360
545
  ref.current.focus();
361
546
  }
362
547
  });
363
548
 
364
- var handleClose = function handleClose(evt) {
549
+ const handleClose = evt => {
365
550
  if (!onClose || onClose(evt) !== false) {
366
551
  setIsOpen(false);
367
552
  }
@@ -384,20 +569,20 @@ function ActionableNotification(_ref6) {
384
569
  className: containerClassName,
385
570
  "aria-labelledby": title ? id : undefined
386
571
  }), /*#__PURE__*/React__default.createElement("div", {
387
- className: "".concat(prefix, "--actionable-notification__details")
572
+ className: `${prefix}--actionable-notification__details`
388
573
  }, /*#__PURE__*/React__default.createElement(NotificationIcon, {
389
574
  notificationType: inline ? 'inline' : 'toast',
390
575
  kind: kind,
391
- iconDescription: statusIconDescription || "".concat(kind, " icon")
576
+ iconDescription: statusIconDescription || `${kind} icon`
392
577
  }), /*#__PURE__*/React__default.createElement("div", {
393
- className: "".concat(prefix, "--actionable-notification__text-wrapper")
578
+ className: `${prefix}--actionable-notification__text-wrapper`
394
579
  }, /*#__PURE__*/React__default.createElement("div", {
395
- className: "".concat(prefix, "--actionable-notification__content")
580
+ className: `${prefix}--actionable-notification__content`
396
581
  }, title && /*#__PURE__*/React__default.createElement("div", {
397
- className: "".concat(prefix, "--actionable-notification__title"),
582
+ className: `${prefix}--actionable-notification__title`,
398
583
  id: id
399
584
  }, title), subtitle && /*#__PURE__*/React__default.createElement("div", {
400
- className: "".concat(prefix, "--actionable-notification__subtitle")
585
+ className: `${prefix}--actionable-notification__subtitle`
401
586
  }, subtitle), children))), /*#__PURE__*/React__default.createElement(NotificationActionButton, {
402
587
  onClick: onActionButtonClick,
403
588
  inline: inline
@@ -407,16 +592,103 @@ function ActionableNotification(_ref6) {
407
592
  onClick: handleCloseButtonClick
408
593
  }));
409
594
  }
410
- ActionableNotification.propTypes = (_ActionableNotificati = {
595
+ ActionableNotification.propTypes = {
411
596
  /**
412
597
  * Pass in the action button label that will be rendered within the ActionableNotification.
413
598
  */
414
- actionButtonLabel: PropTypes.string.isRequired
415
- }, _defineProperty(_ActionableNotificati, 'aria-label', PropTypes.string), _defineProperty(_ActionableNotificati, "ariaLabel", deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.')), _defineProperty(_ActionableNotificati, "children", PropTypes.node), _defineProperty(_ActionableNotificati, "className", PropTypes.string), _defineProperty(_ActionableNotificati, "closeOnEscape", PropTypes.bool), _defineProperty(_ActionableNotificati, "hasFocus", PropTypes.bool), _defineProperty(_ActionableNotificati, "hideCloseButton", PropTypes.bool), _defineProperty(_ActionableNotificati, "inline", PropTypes.bool), _defineProperty(_ActionableNotificati, "kind", PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt']).isRequired), _defineProperty(_ActionableNotificati, "lowContrast", PropTypes.bool), _defineProperty(_ActionableNotificati, "onActionButtonClick", PropTypes.func), _defineProperty(_ActionableNotificati, "onClose", PropTypes.func), _defineProperty(_ActionableNotificati, "onCloseButtonClick", PropTypes.func), _defineProperty(_ActionableNotificati, "role", PropTypes.string), _defineProperty(_ActionableNotificati, "statusIconDescription", PropTypes.string), _defineProperty(_ActionableNotificati, "subtitle", PropTypes.string), _defineProperty(_ActionableNotificati, "title", PropTypes.string), _ActionableNotificati);
599
+ actionButtonLabel: PropTypes.string.isRequired,
600
+
601
+ /**
602
+ * Provide a description for "close" icon button that can be read by screen readers
603
+ */
604
+ ['aria-label']: PropTypes.string,
605
+
606
+ /**
607
+ * Deprecated, please use `aria-label` instead.
608
+ * Provide a description for "close" icon button that can be read by screen readers
609
+ */
610
+ ariaLabel: deprecate(PropTypes.string, 'This prop syntax has been deprecated. Please use the new `aria-label`.'),
611
+
612
+ /**
613
+ * Specify the content
614
+ */
615
+ children: PropTypes.node,
616
+
617
+ /**
618
+ * Specify an optional className to be applied to the notification box
619
+ */
620
+ className: PropTypes.string,
621
+
622
+ /**
623
+ * Specify if pressing the escape key should close notifications
624
+ */
625
+ closeOnEscape: PropTypes.bool,
626
+
627
+ /**
628
+ * Specify if focus should be moved to the component when the notification contains actions
629
+ */
630
+ hasFocus: PropTypes.bool,
631
+
632
+ /**
633
+ * Specify the close button should be disabled, or not
634
+ */
635
+ hideCloseButton: PropTypes.bool,
636
+
637
+ /*
638
+ * Specify if the notification should have inline styling applied instead of toast
639
+ */
640
+ inline: PropTypes.bool,
641
+
642
+ /**
643
+ * Specify what state the notification represents
644
+ */
645
+ kind: PropTypes.oneOf(['error', 'info', 'info-square', 'success', 'warning', 'warning-alt']).isRequired,
646
+
647
+ /**
648
+ * Specify whether you are using the low contrast variant of the ActionableNotification.
649
+ */
650
+ lowContrast: PropTypes.bool,
651
+
652
+ /**
653
+ * Provide a function that is called when the action is clicked
654
+ */
655
+ onActionButtonClick: PropTypes.func,
656
+
657
+ /**
658
+ * Provide a function that is called when menu is closed
659
+ */
660
+ onClose: PropTypes.func,
661
+
662
+ /**
663
+ * Provide a function that is called when the close button is clicked
664
+ */
665
+ onCloseButtonClick: PropTypes.func,
666
+
667
+ /**
668
+ * By default, this value is "alertdialog". You can also provide an alternate
669
+ * role if it makes sense from the accessibility-side.
670
+ */
671
+ role: PropTypes.string,
672
+
673
+ /**
674
+ * Provide a description for "status" icon that can be read by screen readers
675
+ */
676
+ statusIconDescription: PropTypes.string,
677
+
678
+ /**
679
+ * Specify the sub-title
680
+ */
681
+ subtitle: PropTypes.string,
682
+
683
+ /**
684
+ * Specify the title
685
+ */
686
+ title: PropTypes.string
687
+ };
416
688
  ActionableNotification.defaultProps = {
417
689
  kind: 'error',
418
690
  role: 'alertdialog',
419
- onCloseButtonClick: function onCloseButtonClick() {},
691
+ onCloseButtonClick: () => {},
420
692
  hideCloseButton: false,
421
693
  hasFocus: true,
422
694
  closeOnEscape: true,