@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,7 +5,6 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { slicedToArray as _slicedToArray } from '../_virtual/_rollupPluginBabelHelpers.js';
9
8
  import { useState, useRef, useCallback, useEffect } from 'react';
10
9
 
11
10
  /**
@@ -20,19 +19,13 @@ import { useState, useRef, useCallback, useEffect } from 'react';
20
19
  */
21
20
 
22
21
  function useDelayedState(initialState) {
23
- var _useState = useState(initialState),
24
- _useState2 = _slicedToArray(_useState, 2),
25
- state = _useState2[0],
26
- setState = _useState2[1];
27
-
28
- var timeoutId = useRef(null); // We use `useCallback` to match the signature of React's `useState` which will
22
+ const [state, setState] = useState(initialState);
23
+ const timeoutId = useRef(null); // We use `useCallback` to match the signature of React's `useState` which will
29
24
  // always return the same reference for the `setState` updater
30
25
 
31
- var setStateWithDelay = useCallback(function (stateToSet) {
32
- var _timeoutId$current;
33
-
34
- var delayMs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
35
- window.clearTimeout((_timeoutId$current = timeoutId.current) !== null && _timeoutId$current !== void 0 ? _timeoutId$current : undefined);
26
+ const setStateWithDelay = useCallback(function (stateToSet) {
27
+ let delayMs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
28
+ window.clearTimeout(timeoutId.current ?? undefined);
36
29
  timeoutId.current = null;
37
30
 
38
31
  if (delayMs === 0) {
@@ -40,16 +33,14 @@ function useDelayedState(initialState) {
40
33
  return;
41
34
  }
42
35
 
43
- timeoutId.current = window.setTimeout(function () {
36
+ timeoutId.current = window.setTimeout(() => {
44
37
  setState(stateToSet);
45
38
  timeoutId.current = null;
46
39
  }, delayMs);
47
40
  }, []);
48
- useEffect(function () {
49
- return function () {
50
- var _timeoutId$current2;
51
-
52
- window.clearTimeout((_timeoutId$current2 = timeoutId.current) !== null && _timeoutId$current2 !== void 0 ? _timeoutId$current2 : undefined);
41
+ useEffect(() => {
42
+ return () => {
43
+ window.clearTimeout(timeoutId.current ?? undefined);
53
44
  };
54
45
  }, []);
55
46
  return [state, setStateWithDelay];
@@ -15,12 +15,12 @@ import { useRef, useEffect } from 'react';
15
15
  */
16
16
 
17
17
  function useEffectOnce(callback) {
18
- var savedCallback = useRef(callback);
19
- var effectGuard = useRef(false);
20
- useEffect(function () {
18
+ const savedCallback = useRef(callback);
19
+ const effectGuard = useRef(false);
20
+ useEffect(() => {
21
21
  savedCallback.current = callback;
22
22
  });
23
- useEffect(function () {
23
+ useEffect(() => {
24
24
  if (effectGuard.current !== true) {
25
25
  effectGuard.current = true;
26
26
  savedCallback.current();
@@ -8,11 +8,11 @@
8
8
  import { useRef, useEffect } from 'react';
9
9
 
10
10
  function useWindowEvent(eventName, callback) {
11
- var savedCallback = useRef(null);
12
- useEffect(function () {
11
+ const savedCallback = useRef(null);
12
+ useEffect(() => {
13
13
  savedCallback.current = callback;
14
14
  });
15
- useEffect(function () {
15
+ useEffect(() => {
16
16
  function handler(event) {
17
17
  if (savedCallback.current) {
18
18
  savedCallback.current(event);
@@ -20,7 +20,7 @@ function useWindowEvent(eventName, callback) {
20
20
  }
21
21
 
22
22
  window.addEventListener(eventName, handler);
23
- return function () {
23
+ return () => {
24
24
  window.removeEventListener(eventName, handler);
25
25
  };
26
26
  }, [eventName]);
@@ -5,15 +5,15 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { slicedToArray as _slicedToArray } from '../_virtual/_rollupPluginBabelHelpers.js';
9
- import { useState, useEffect, useLayoutEffect } from 'react';
8
+ import { useLayoutEffect, useEffect, useState } from 'react';
10
9
  import setupGetInstanceId from '../tools/setupGetInstanceId.js';
11
10
  import { canUseDOM } from './environment.js';
12
11
  import { useIdPrefix } from './useIdPrefix.js';
13
12
 
14
- var getId = setupGetInstanceId();
15
- var useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;
16
- var serverHandoffCompleted = false;
13
+ // This file was heavily inspired by Reach UI and their work on their auto-id
14
+ const getId = setupGetInstanceId();
15
+ const useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;
16
+ let serverHandoffCompleted = false;
17
17
  /**
18
18
  * Generate a unique ID with an optional prefix prepended to it
19
19
  * @param {string} [prefix]
@@ -21,27 +21,23 @@ var serverHandoffCompleted = false;
21
21
  */
22
22
 
23
23
  function useId() {
24
- var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'id';
24
+ let prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'id';
25
25
 
26
- var _prefix = useIdPrefix();
26
+ const _prefix = useIdPrefix();
27
27
 
28
- var _useState = useState(function () {
28
+ const [id, setId] = useState(() => {
29
29
  if (serverHandoffCompleted) {
30
- return "".concat(_prefix ? "".concat(_prefix, "-") : "").concat(prefix, "-").concat(getId());
30
+ return `${_prefix ? `${_prefix}-` : ``}${prefix}-${getId()}`;
31
31
  }
32
32
 
33
33
  return null;
34
- }),
35
- _useState2 = _slicedToArray(_useState, 2),
36
- id = _useState2[0],
37
- setId = _useState2[1];
38
-
39
- useIsomorphicLayoutEffect(function () {
34
+ });
35
+ useIsomorphicLayoutEffect(() => {
40
36
  if (id === null) {
41
- setId("".concat(_prefix ? "".concat(_prefix, "-") : "").concat(prefix, "-").concat(getId()));
37
+ setId(`${_prefix ? `${_prefix}-` : ``}${prefix}-${getId()}`);
42
38
  }
43
39
  }, [getId]);
44
- useEffect(function () {
40
+ useEffect(() => {
45
41
  if (serverHandoffCompleted === false) {
46
42
  serverHandoffCompleted = true;
47
43
  }
@@ -55,8 +51,8 @@ function useId() {
55
51
  */
56
52
 
57
53
  function useFallbackId(id) {
58
- var fallback = useId();
59
- return id !== null && id !== void 0 ? id : fallback;
54
+ const fallback = useId();
55
+ return id ?? fallback;
60
56
  }
61
57
 
62
58
  export { useFallbackId, useId };
@@ -7,7 +7,7 @@
7
7
 
8
8
  import React__default from 'react';
9
9
 
10
- var IdPrefixContext = /*#__PURE__*/React__default.createContext(null);
10
+ const IdPrefixContext = /*#__PURE__*/React__default.createContext(null);
11
11
  function useIdPrefix() {
12
12
  return React__default.useContext(IdPrefixContext);
13
13
  }
@@ -7,7 +7,7 @@
7
7
 
8
8
  import { useLayoutEffect, useEffect } from 'react';
9
9
 
10
- var useIsomorphicEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;
10
+ const useIsomorphicEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;
11
11
  var useIsomorphicEffect$1 = useIsomorphicEffect;
12
12
 
13
13
  export { useIsomorphicEffect$1 as default };
@@ -13,9 +13,9 @@ import { useCallback } from 'react';
13
13
  * the same node.
14
14
  */
15
15
 
16
- var useMergedRefs = function useMergedRefs(refs) {
17
- return useCallback(function (node) {
18
- refs.forEach(function (ref) {
16
+ const useMergedRefs = refs => {
17
+ return useCallback(node => {
18
+ refs.forEach(ref => {
19
19
  if (typeof ref === 'function') {
20
20
  ref(node);
21
21
  } else if (ref !== null && ref !== undefined) {
@@ -5,19 +5,18 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { createForOfIteratorHelper as _createForOfIteratorHelper } from '../_virtual/_rollupPluginBabelHelpers.js';
9
8
  import { useEffect } from 'react';
10
9
 
11
10
  function useNoInteractiveChildren(ref) {
12
- var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'component should have no interactive child nodes';
11
+ let message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'component should have no interactive child nodes';
13
12
 
14
13
  if (process.env.NODE_ENV !== "production") {
15
14
  // eslint-disable-next-line react-hooks/rules-of-hooks
16
- useEffect(function () {
17
- var node = ref.current ? getInteractiveContent(ref.current) : false;
15
+ useEffect(() => {
16
+ const node = ref.current ? getInteractiveContent(ref.current) : false;
18
17
 
19
18
  if (node) {
20
- throw new Error("Error: ".concat(message, ".\n\nInstead found: ").concat(node.outerHTML));
19
+ throw new Error(`Error: ${message}.\n\nInstead found: ${node.outerHTML}`);
21
20
  }
22
21
  });
23
22
  }
@@ -39,22 +38,12 @@ function getInteractiveContent(node) {
39
38
  return node;
40
39
  }
41
40
 
42
- var _iterator = _createForOfIteratorHelper(node.childNodes),
43
- _step;
41
+ for (const childNode of node.childNodes) {
42
+ const interactiveNode = getInteractiveContent(childNode);
44
43
 
45
- try {
46
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
47
- var childNode = _step.value;
48
- var interactiveNode = getInteractiveContent(childNode);
49
-
50
- if (interactiveNode) {
51
- return interactiveNode;
52
- }
44
+ if (interactiveNode) {
45
+ return interactiveNode;
53
46
  }
54
- } catch (err) {
55
- _iterator.e(err);
56
- } finally {
57
- _iterator.f();
58
47
  }
59
48
 
60
49
  return null;
@@ -47,35 +47,37 @@ import { usePrefix } from './usePrefix.js';
47
47
  */
48
48
 
49
49
  function useNormalizedInputProps(_ref) {
50
- var id = _ref.id,
51
- readOnly = _ref.readOnly,
52
- disabled = _ref.disabled,
53
- invalid = _ref.invalid,
54
- invalidText = _ref.invalidText,
55
- warn = _ref.warn,
56
- warnText = _ref.warnText;
57
- var prefix = usePrefix();
58
- var normalizedProps = {
50
+ let {
51
+ id,
52
+ readOnly,
53
+ disabled,
54
+ invalid,
55
+ invalidText,
56
+ warn,
57
+ warnText
58
+ } = _ref;
59
+ const prefix = usePrefix();
60
+ const normalizedProps = {
59
61
  disabled: !readOnly && disabled,
60
62
  invalid: !readOnly && invalid,
61
- invalidId: "".concat(id, "-error-msg"),
63
+ invalidId: `${id}-error-msg`,
62
64
  warn: !readOnly && !invalid && warn,
63
- warnId: "".concat(id, "-warn-msg"),
65
+ warnId: `${id}-warn-msg`,
64
66
  validation: null,
65
67
  icon: null,
66
- helperId: "".concat(id, "-helper-text")
68
+ helperId: `${id}-helper-text`
67
69
  };
68
70
 
69
71
  if (normalizedProps.invalid) {
70
72
  normalizedProps.icon = WarningFilled;
71
73
  normalizedProps.validation = /*#__PURE__*/React__default.createElement("div", {
72
- className: "".concat(prefix, "--form-requirement"),
74
+ className: `${prefix}--form-requirement`,
73
75
  id: normalizedProps.invalidId
74
76
  }, invalidText);
75
77
  } else if (normalizedProps.warn) {
76
78
  normalizedProps.icon = WarningAltFilled;
77
79
  normalizedProps.validation = /*#__PURE__*/React__default.createElement("div", {
78
- className: "".concat(prefix, "--form-requirement"),
80
+ className: `${prefix}--form-requirement`,
79
81
  id: normalizedProps.warnId
80
82
  }, warnText);
81
83
  }
@@ -7,7 +7,7 @@
7
7
 
8
8
  import React__default from 'react';
9
9
 
10
- var PrefixContext = /*#__PURE__*/React__default.createContext('cds');
10
+ const PrefixContext = /*#__PURE__*/React__default.createContext('cds');
11
11
  function usePrefix() {
12
12
  return React__default.useContext(PrefixContext);
13
13
  }
@@ -18,13 +18,13 @@ import { useRef, useEffect, useCallback } from 'react';
18
18
  */
19
19
 
20
20
  function useSavedCallback(callback) {
21
- var savedCallback = useRef(callback);
22
- useEffect(function () {
21
+ const savedCallback = useRef(callback);
22
+ useEffect(() => {
23
23
  savedCallback.current = callback;
24
24
  });
25
25
  return useCallback(function () {
26
26
  if (savedCallback.current) {
27
- return savedCallback.current.apply(savedCallback, arguments);
27
+ return savedCallback.current(...arguments);
28
28
  }
29
29
  }, []);
30
30
  }
@@ -5,9 +5,9 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- var emptyFunction = function emptyFunction() {};
8
+ const emptyFunction = function () {};
9
9
 
10
- var warning = process.env.NODE_ENV !== "production" ? function warning(condition, format) {
10
+ const warning = process.env.NODE_ENV !== "production" ? function warning(condition, format) {
11
11
  for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
12
12
  args[_key - 2] = arguments[_key];
13
13
  }
@@ -17,8 +17,8 @@ var warning = process.env.NODE_ENV !== "production" ? function warning(condition
17
17
  }
18
18
 
19
19
  if (!condition) {
20
- var index = 0;
21
- var message = format.replace(/%s/g, function () {
20
+ let index = 0;
21
+ const message = format.replace(/%s/g, () => {
22
22
  return args[index++];
23
23
  });
24
24
  console.warn('Warning: ' + message);
@@ -5,7 +5,6 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { toConsumableArray as _toConsumableArray } from '../_virtual/_rollupPluginBabelHelpers.js';
9
8
  import findLast from 'lodash.findlast';
10
9
  import { DOCUMENT_POSITION_BROAD_PRECEDING, selectorTabbable, DOCUMENT_POSITION_BROAD_FOLLOWING } from './keyboard/navigation.js';
11
10
 
@@ -16,13 +15,11 @@ import { DOCUMENT_POSITION_BROAD_PRECEDING, selectorTabbable, DOCUMENT_POSITION_
16
15
  */
17
16
 
18
17
  function elementOrParentIsFloatingMenu(node) {
19
- var selectorsFloatingMenus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
18
+ let selectorsFloatingMenus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
20
19
 
21
20
  if (node && typeof node.closest === 'function') {
22
- var allSelectorsFloatingMenus = [".cds--overflow-menu-options", ".cds--tooltip", '.flatpickr-calendar'].concat(_toConsumableArray(selectorsFloatingMenus));
23
- return allSelectorsFloatingMenus.some(function (selector) {
24
- return node.closest(selector);
25
- });
21
+ const allSelectorsFloatingMenus = [`.cds--overflow-menu-options`, `.cds--tooltip`, '.flatpickr-calendar', ...selectorsFloatingMenus];
22
+ return allSelectorsFloatingMenus.some(selector => node.closest(selector));
26
23
  }
27
24
  }
28
25
  /**
@@ -38,20 +35,20 @@ function elementOrParentIsFloatingMenu(node) {
38
35
 
39
36
 
40
37
  function wrapFocus(_ref) {
41
- var bodyNode = _ref.bodyNode,
42
- startTrapNode = _ref.startTrapNode,
43
- endTrapNode = _ref.endTrapNode,
44
- currentActiveNode = _ref.currentActiveNode,
45
- oldActiveNode = _ref.oldActiveNode,
46
- selectorsFloatingMenus = _ref.selectorsFloatingMenus;
38
+ let {
39
+ bodyNode,
40
+ startTrapNode,
41
+ endTrapNode,
42
+ currentActiveNode,
43
+ oldActiveNode,
44
+ selectorsFloatingMenus
45
+ } = _ref;
47
46
 
48
47
  if (bodyNode && currentActiveNode && oldActiveNode && !bodyNode.contains(currentActiveNode) && !elementOrParentIsFloatingMenu(currentActiveNode, selectorsFloatingMenus)) {
49
- var comparisonResult = oldActiveNode.compareDocumentPosition(currentActiveNode);
48
+ const comparisonResult = oldActiveNode.compareDocumentPosition(currentActiveNode);
50
49
 
51
50
  if (currentActiveNode === startTrapNode || comparisonResult & DOCUMENT_POSITION_BROAD_PRECEDING) {
52
- var tabbable = findLast(bodyNode.querySelectorAll(selectorTabbable), function (elem) {
53
- return Boolean(elem.offsetParent);
54
- });
51
+ const tabbable = findLast(bodyNode.querySelectorAll(selectorTabbable), elem => Boolean(elem.offsetParent));
55
52
 
56
53
  if (tabbable) {
57
54
  tabbable.focus();
@@ -59,12 +56,10 @@ function wrapFocus(_ref) {
59
56
  bodyNode.focus();
60
57
  }
61
58
  } else if (currentActiveNode === endTrapNode || comparisonResult & DOCUMENT_POSITION_BROAD_FOLLOWING) {
62
- var _tabbable = Array.prototype.find.call(bodyNode.querySelectorAll(selectorTabbable), function (elem) {
63
- return Boolean(elem.offsetParent);
64
- });
59
+ const tabbable = Array.prototype.find.call(bodyNode.querySelectorAll(selectorTabbable), elem => Boolean(elem.offsetParent));
65
60
 
66
- if (_tabbable) {
67
- _tabbable.focus();
61
+ if (tabbable) {
62
+ tabbable.focus();
68
63
  } else if (bodyNode !== oldActiveNode) {
69
64
  bodyNode.focus();
70
65
  }
@@ -8,7 +8,7 @@
8
8
  import PropTypes from 'prop-types';
9
9
  import isRequiredOneOf from './isRequiredOneOf.js';
10
10
 
11
- var AriaLabelPropType = isRequiredOneOf({
11
+ const AriaLabelPropType = isRequiredOneOf({
12
12
  'aria-label': PropTypes.string,
13
13
  'aria-labelledby': PropTypes.string
14
14
  });
@@ -5,10 +5,9 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { objectSpread2 as _objectSpread2, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
9
8
  import { warning } from '../internal/warning.js';
10
9
 
11
- var didWarnAboutDeprecation = {};
10
+ const didWarnAboutDeprecation = {};
12
11
  function deprecate(propType, message) {
13
12
  function checker(props, propName, componentName) {
14
13
  if (props[propName] === undefined) {
@@ -16,15 +15,17 @@ function deprecate(propType, message) {
16
15
  }
17
16
 
18
17
  if (!didWarnAboutDeprecation[componentName] || !didWarnAboutDeprecation[componentName][propName]) {
19
- didWarnAboutDeprecation[componentName] = _objectSpread2(_objectSpread2({}, didWarnAboutDeprecation[componentName]), {}, _defineProperty({}, propName, true));
20
- process.env.NODE_ENV !== "production" ? warning(false, message || "The prop `".concat(propName, "` has been deprecated for the ") + "".concat(componentName, " component. It will be removed in the next major ") + "release") : void 0;
18
+ didWarnAboutDeprecation[componentName] = { ...didWarnAboutDeprecation[componentName],
19
+ [propName]: true
20
+ };
21
+ process.env.NODE_ENV !== "production" ? warning(false, message || `The prop \`${propName}\` has been deprecated for the ` + `${componentName} component. It will be removed in the next major ` + `release`) : void 0;
21
22
  }
22
23
 
23
24
  for (var _len = arguments.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
24
25
  rest[_key - 3] = arguments[_key];
25
26
  }
26
27
 
27
- return propType.apply(void 0, [props, propName, componentName].concat(rest));
28
+ return propType(props, propName, componentName, ...rest);
28
29
  }
29
30
 
30
31
  return checker;
@@ -1,12 +1,3 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 2023
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- import { objectSpread2 as _objectSpread2, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
9
-
10
1
  /**
11
2
  * Copyright IBM Corp. 2016, 2023
12
3
  *
@@ -21,27 +12,23 @@ import { objectSpread2 as _objectSpread2, defineProperty as _defineProperty } fr
21
12
  * in addition to the original type checkings.
22
13
  */
23
14
  function isRequiredOneOf(propTypes) {
24
- var names = Object.keys(propTypes);
15
+ const names = Object.keys(propTypes);
25
16
 
26
- var checker = function checker(propType) {
27
- return function (props, propName, componentName) {
28
- if (process.env.NODE_ENV !== "production" && names.every(function (name) {
29
- return typeof props[name] === 'undefined';
30
- })) {
31
- return new Error("".concat(componentName, " requires one of the following props: ").concat(names.join(', ')));
32
- }
17
+ const checker = propType => function (props, propName, componentName) {
18
+ if (process.env.NODE_ENV !== "production" && names.every(name => typeof props[name] === 'undefined')) {
19
+ return new Error(`${componentName} requires one of the following props: ${names.join(', ')}`);
20
+ }
33
21
 
34
- for (var _len = arguments.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
35
- rest[_key - 3] = arguments[_key];
36
- }
22
+ for (var _len = arguments.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
23
+ rest[_key - 3] = arguments[_key];
24
+ }
37
25
 
38
- return propType.apply(void 0, [props, propName, componentName].concat(rest));
39
- };
26
+ return propType(props, propName, componentName, ...rest);
40
27
  };
41
28
 
42
- return names.reduce(function (o, name) {
43
- return _objectSpread2(_objectSpread2({}, o), {}, _defineProperty({}, name, checker(propTypes[name])));
44
- }, {});
29
+ return names.reduce((o, name) => ({ ...o,
30
+ [name]: checker(propTypes[name])
31
+ }), {});
45
32
  }
46
33
 
47
34
  export { isRequiredOneOf as default };
@@ -15,14 +15,14 @@
15
15
  function requiredIfGivenPropIsTruthy(name, propType) {
16
16
  return function check(props, propName, componentName) {
17
17
  if (process.env.NODE_ENV !== "production" && props[name] == true && props[propName] == null) {
18
- return new Error("You must provide a value for `".concat(propName, "` in `").concat(componentName, "` if `").concat(name, "` exists."));
18
+ return new Error(`You must provide a value for \`${propName}\` in \`${componentName}\` if \`${name}\` exists.`);
19
19
  }
20
20
 
21
21
  for (var _len = arguments.length, rest = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
22
22
  rest[_key - 3] = arguments[_key];
23
23
  }
24
24
 
25
- return propType.apply(void 0, [props, propName, componentName].concat(rest));
25
+ return propType(props, propName, componentName, ...rest);
26
26
  };
27
27
  }
28
28
 
@@ -5,6 +5,6 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- var ButtonKinds = ['primary', 'secondary', 'danger', 'ghost', 'danger--primary', 'danger--ghost', 'danger--tertiary', 'tertiary'];
8
+ const ButtonKinds = ['primary', 'secondary', 'danger', 'ghost', 'danger--primary', 'danger--ghost', 'danger--tertiary', 'tertiary'];
9
9
 
10
10
  export { ButtonKinds };
package/es/tools/array.js CHANGED
@@ -20,7 +20,7 @@ function equals(arr1, arr2) {
20
20
  return true;
21
21
  }
22
22
 
23
- for (var i = 0; i < arr1.length; i++) {
23
+ for (let i = 0; i < arr1.length; i++) {
24
24
  if (arr1[i] !== arr2[i]) {
25
25
  return false;
26
26
  }
@@ -5,31 +5,38 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ /**
9
+ * Copyright IBM Corp. 2016, 2023
10
+ *
11
+ * This source code is licensed under the Apache-2.0 license found in the
12
+ * LICENSE file in the root directory of this source tree.
13
+ */
14
+
8
15
  /**
9
16
  * Generic utility to compose event handlers so that consumers can supply their
10
17
  * own event listeners on table components. The default heuristic here is to
11
18
  * iterate through the given functions until `preventDefault` is called on the
12
19
  * given event.
13
20
  *
14
- * @param {Array<Function>} fns array of functions to apply to the event
15
- * @returns {Function}
21
+ * @param {Array<Function|undefined>} fns array of functions to apply to the event
22
+ * @returns {any}
16
23
  */
17
- var composeEventHandlers = function composeEventHandlers(fns) {
18
- return function (event) {
19
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
20
- args[_key - 1] = arguments[_key];
24
+ const composeEventHandlers = fns => function (event) {
25
+ for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
26
+ args[_key - 1] = arguments[_key];
27
+ }
28
+
29
+ for (let i = 0; i < fns.length; i++) {
30
+ if (event.defaultPrevented) {
31
+ break;
21
32
  }
22
33
 
23
- for (var i = 0; i < fns.length; i++) {
24
- if (event.defaultPrevented) {
25
- break;
26
- }
34
+ const fn = fns[i];
27
35
 
28
- if (typeof fns[i] === 'function') {
29
- fns[i].apply(fns, [event].concat(args));
30
- }
36
+ if (typeof fn === 'function') {
37
+ fn(event, ...args);
31
38
  }
32
- };
39
+ }
33
40
  };
34
41
 
35
42
  export { composeEventHandlers };
@@ -9,13 +9,13 @@
9
9
  * @param {...Ref<Element>} refs List of React refs to merge.
10
10
  * @returns {Ref<Element>} Merged React ref.
11
11
  */
12
- var mergeRefs = function mergeRefs() {
12
+ const mergeRefs = function () {
13
13
  for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
14
14
  refs[_key] = arguments[_key];
15
15
  }
16
16
 
17
- return function (el) {
18
- refs.forEach(function (ref) {
17
+ return el => {
18
+ refs.forEach(ref => {
19
19
  // https://github.com/facebook/react/issues/13029#issuecomment-410002316
20
20
  if (typeof ref === 'function') {
21
21
  ref(el);
@@ -10,7 +10,7 @@
10
10
  * for a component.
11
11
  */
12
12
  function setupGetInstanceId() {
13
- var instanceId = 0;
13
+ let instanceId = 0;
14
14
  return function getInstanceId() {
15
15
  return ++instanceId;
16
16
  };