@carbon/react 1.27.0 → 1.28.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (591) 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 +18 -17
  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 +334 -361
  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.js +17 -18
  65. package/es/components/DatePicker/DatePicker.js +206 -195
  66. package/es/components/DatePicker/plugins/appendToPlugin.js +45 -43
  67. package/es/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  68. package/es/components/DatePicker/plugins/rangePlugin.js +19 -11
  69. package/es/components/DatePickerInput/DatePickerInput.js +83 -74
  70. package/es/components/Dropdown/Dropdown.Skeleton.js +13 -12
  71. package/es/components/Dropdown/Dropdown.js +266 -109
  72. package/es/components/ErrorBoundary/ErrorBoundary.js +27 -48
  73. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  74. package/es/components/ExpandableSearch/ExpandableSearch.d.ts +13 -0
  75. package/es/components/ExpandableSearch/ExpandableSearch.js +18 -25
  76. package/es/components/FeatureFlags/index.js +25 -43
  77. package/es/components/FileUploader/FileUploader.Skeleton.js +8 -9
  78. package/es/components/FileUploader/FileUploader.js +120 -147
  79. package/es/components/FileUploader/FileUploaderButton.js +36 -48
  80. package/es/components/FileUploader/FileUploaderDropContainer.js +49 -53
  81. package/es/components/FileUploader/FileUploaderItem.js +30 -30
  82. package/es/components/FileUploader/Filename.js +13 -14
  83. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +11 -12
  84. package/es/components/FluidComboBox/FluidComboBox.js +11 -9
  85. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +18 -18
  86. package/es/components/FluidDatePicker/FluidDatePicker.js +19 -16
  87. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  88. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +11 -12
  89. package/es/components/FluidDropdown/FluidDropdown.js +11 -9
  90. package/es/components/FluidForm/FluidForm.js +9 -10
  91. package/es/components/FluidForm/FormContext.js +1 -1
  92. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +11 -12
  93. package/es/components/FluidMultiSelect/FluidMultiSelect.js +12 -10
  94. package/es/components/FluidSelect/FluidSelect.Skeleton.js +11 -12
  95. package/es/components/FluidSelect/FluidSelect.js +9 -9
  96. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
  97. package/es/components/FluidTextArea/FluidTextArea.js +7 -8
  98. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
  99. package/es/components/FluidTextInput/FluidTextInput.js +10 -9
  100. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +11 -10
  101. package/es/components/FluidTimePicker/FluidTimePicker.js +30 -26
  102. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -7
  103. package/es/components/Form/Form.js +9 -10
  104. package/es/components/FormGroup/FormGroup.js +16 -17
  105. package/es/components/FormItem/FormItem.js +8 -9
  106. package/es/components/FormLabel/FormLabel.js +11 -10
  107. package/es/components/Grid/CSSGrid.js +38 -39
  108. package/es/components/Grid/Column.js +86 -79
  109. package/es/components/Grid/ColumnHang.js +12 -14
  110. package/es/components/Grid/FlexGrid.js +19 -21
  111. package/es/components/Grid/Grid.js +2 -2
  112. package/es/components/Grid/GridContext.js +12 -11
  113. package/es/components/Grid/Row.js +16 -18
  114. package/es/components/Heading/index.js +11 -13
  115. package/es/components/Icon/Icon.Skeleton.js +10 -12
  116. package/es/components/IconButton/index.js +19 -22
  117. package/es/components/IdPrefix/index.js +4 -2
  118. package/es/components/InlineCheckbox/InlineCheckbox.js +89 -36
  119. package/es/components/InlineLoading/InlineLoading.js +23 -25
  120. package/es/components/Layer/LayerContext.js +1 -1
  121. package/es/components/Layer/index.js +17 -18
  122. package/es/components/Layout/LayoutDirection.js +8 -10
  123. package/es/components/Layout/LayoutDirectionContext.js +1 -1
  124. package/es/components/Link/Link.js +25 -25
  125. package/es/components/ListBox/ListBox.js +38 -31
  126. package/es/components/ListBox/ListBoxField.js +9 -10
  127. package/es/components/ListBox/ListBoxMenu.js +9 -10
  128. package/es/components/ListBox/ListBoxMenuIcon.js +16 -14
  129. package/es/components/ListBox/ListBoxMenuItem.js +23 -26
  130. package/es/components/ListBox/ListBoxPropTypes.js +4 -4
  131. package/es/components/ListBox/ListBoxSelection.js +30 -25
  132. package/es/components/ListBox/index.js +1 -1
  133. package/es/components/ListBox/next/ListBoxSelection.js +27 -24
  134. package/es/components/ListBox/next/ListBoxTrigger.js +20 -19
  135. package/es/components/ListItem/ListItem.js +9 -10
  136. package/es/components/Loading/Loading.js +24 -24
  137. package/es/components/Menu/Menu.js +67 -80
  138. package/es/components/Menu/MenuContext.js +9 -12
  139. package/es/components/Menu/MenuItem.js +104 -128
  140. package/es/components/MenuButton/index.js +37 -41
  141. package/es/components/Modal/Modal.js +281 -120
  142. package/es/components/ModalWrapper/ModalWrapper.js +72 -96
  143. package/es/components/MultiSelect/FilterableMultiSelect.js +299 -163
  144. package/es/components/MultiSelect/MultiSelect.js +162 -174
  145. package/es/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  146. package/es/components/MultiSelect/tools/itemToString.js +3 -4
  147. package/es/components/MultiSelect/tools/sorting.js +15 -13
  148. package/es/components/Notification/Notification.js +436 -164
  149. package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
  150. package/es/components/NumberInput/NumberInput.js +140 -139
  151. package/es/components/OrderedList/OrderedList.js +17 -15
  152. package/es/components/OverflowMenu/OverflowMenu.js +359 -227
  153. package/es/components/OverflowMenu/index.js +1 -1
  154. package/es/components/OverflowMenuItem/OverflowMenuItem.js +32 -37
  155. package/es/components/OverflowMenuV2/index.js +26 -28
  156. package/es/components/Pagination/Pagination.Skeleton.js +9 -10
  157. package/es/components/Pagination/Pagination.js +98 -140
  158. package/es/components/Pagination/experimental/PageSelector.js +16 -16
  159. package/es/components/Pagination/experimental/Pagination.js +73 -94
  160. package/es/components/PaginationNav/PaginationNav.js +98 -117
  161. package/es/components/Popover/index.js +74 -80
  162. package/es/components/PrimaryButton/PrimaryButton.js +3 -5
  163. package/es/components/ProgressBar/ProgressBar.js +39 -37
  164. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +15 -14
  165. package/es/components/ProgressIndicator/ProgressIndicator.js +71 -71
  166. package/es/components/RadioButton/RadioButton.Skeleton.js +9 -10
  167. package/es/components/RadioButton/RadioButton.js +27 -27
  168. package/es/components/RadioButtonGroup/RadioButtonGroup.js +55 -65
  169. package/es/components/RadioTile/RadioTile.js +27 -25
  170. package/es/components/Search/Search.Skeleton.js +16 -16
  171. package/es/components/Search/Search.d.ts +83 -0
  172. package/es/components/Search/Search.js +65 -72
  173. package/es/components/Search/index.d.ts +11 -0
  174. package/es/components/SecondaryButton/SecondaryButton.js +3 -5
  175. package/es/components/Select/Select.Skeleton.js +12 -13
  176. package/es/components/Select/Select.js +79 -73
  177. package/es/components/SelectItem/SelectItem.js +17 -13
  178. package/es/components/SelectItemGroup/SelectItemGroup.js +11 -12
  179. package/es/components/SkeletonIcon/SkeletonIcon.js +11 -11
  180. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +11 -11
  181. package/es/components/SkeletonText/SkeletonText.js +29 -29
  182. package/es/components/Slider/Slider.Skeleton.js +17 -18
  183. package/es/components/Slider/Slider.js +306 -329
  184. package/es/components/Slider/index.js +1 -1
  185. package/es/components/Stack/Stack.js +19 -20
  186. package/es/components/Stack/index.js +2 -2
  187. package/es/components/StructuredList/StructuredList.Skeleton.js +25 -24
  188. package/es/components/StructuredList/StructuredList.js +134 -106
  189. package/es/components/Switch/IconSwitch.js +48 -54
  190. package/es/components/Switch/Switch.js +33 -31
  191. package/es/components/Tab/Tab.js +77 -83
  192. package/es/components/Tab/index.js +1 -1
  193. package/es/components/TabContent/TabContent.js +16 -18
  194. package/es/components/Tabs/Tabs.Skeleton.js +14 -13
  195. package/es/components/Tabs/Tabs.js +195 -206
  196. package/es/components/Tabs/usePressable.js +27 -36
  197. package/es/components/Tag/Tag.Skeleton.js +10 -9
  198. package/es/components/Tag/Tag.js +34 -31
  199. package/es/components/Text/Text.js +20 -20
  200. package/es/components/Text/TextDirection.js +8 -7
  201. package/es/components/Text/TextDirectionContext.js +1 -1
  202. package/es/components/Text/index.js +1 -1
  203. package/es/components/TextArea/TextArea.Skeleton.js +11 -12
  204. package/es/components/TextArea/TextArea.js +89 -83
  205. package/es/components/TextInput/ControlledPasswordInput.js +79 -73
  206. package/es/components/TextInput/PasswordInput.js +101 -91
  207. package/es/components/TextInput/TextInput.Skeleton.js +11 -12
  208. package/es/components/TextInput/TextInput.js +104 -92
  209. package/es/components/TextInput/util.js +26 -28
  210. package/es/components/Theme/index.js +25 -20
  211. package/es/components/Tile/Tile.js +135 -176
  212. package/es/components/TileGroup/TileGroup.js +55 -70
  213. package/es/components/TileGroup/index.js +1 -1
  214. package/es/components/TimePicker/TimePicker.js +60 -67
  215. package/es/components/TimePickerSelect/TimePickerSelect.js +20 -18
  216. package/es/components/TimePickerSelect/index.js +1 -1
  217. package/es/components/Toggle/Toggle.Skeleton.js +63 -52
  218. package/es/components/Toggle/Toggle.js +44 -48
  219. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +56 -50
  220. package/es/components/Toggletip/index.js +52 -48
  221. package/es/components/Tooltip/DefinitionTooltip.js +24 -31
  222. package/es/components/Tooltip/Tooltip.js +35 -50
  223. package/es/components/TreeView/TreeNode.js +94 -74
  224. package/es/components/TreeView/TreeView.js +72 -83
  225. package/es/components/UIShell/Content.js +12 -14
  226. package/es/components/UIShell/Header.js +16 -12
  227. package/es/components/UIShell/HeaderContainer.js +8 -14
  228. package/es/components/UIShell/HeaderGlobalAction.js +26 -19
  229. package/es/components/UIShell/HeaderGlobalBar.js +1 -3
  230. package/es/components/UIShell/HeaderMenu.js +114 -129
  231. package/es/components/UIShell/HeaderMenuButton.js +31 -22
  232. package/es/components/UIShell/HeaderMenuItem.js +28 -20
  233. package/es/components/UIShell/HeaderName.js +19 -14
  234. package/es/components/UIShell/HeaderNavigation.js +19 -15
  235. package/es/components/UIShell/HeaderPanel.js +23 -17
  236. package/es/components/UIShell/HeaderSideNavItems.js +11 -9
  237. package/es/components/UIShell/Link.js +11 -11
  238. package/es/components/UIShell/SideNav.js +66 -62
  239. package/es/components/UIShell/SideNavDetails.js +11 -12
  240. package/es/components/UIShell/SideNavDivider.js +5 -3
  241. package/es/components/UIShell/SideNavFooter.js +12 -12
  242. package/es/components/UIShell/SideNavHeader.js +8 -6
  243. package/es/components/UIShell/SideNavIcon.js +11 -8
  244. package/es/components/UIShell/SideNavItem.js +11 -9
  245. package/es/components/UIShell/SideNavItems.js +13 -11
  246. package/es/components/UIShell/SideNavLink.js +19 -17
  247. package/es/components/UIShell/SideNavLinkText.js +8 -9
  248. package/es/components/UIShell/SideNavMenu.js +28 -35
  249. package/es/components/UIShell/SideNavMenuItem.js +14 -14
  250. package/es/components/UIShell/SideNavSwitcher.js +19 -19
  251. package/es/components/UIShell/SkipToContent.js +10 -11
  252. package/es/components/UIShell/Switcher.js +20 -11
  253. package/es/components/UIShell/SwitcherDivider.js +10 -9
  254. package/es/components/UIShell/SwitcherItem.js +26 -19
  255. package/es/components/UIShell/_utils.js +1 -1
  256. package/es/components/UnorderedList/UnorderedList.js +14 -14
  257. package/es/index.js +5 -5
  258. package/es/internal/ClickListener.js +49 -65
  259. package/es/internal/FloatingMenu.js +193 -200
  260. package/es/internal/OptimizedResize.js +9 -8
  261. package/es/internal/Selection.js +92 -111
  262. package/es/internal/createClassWrapper.js +2 -2
  263. package/es/internal/deprecateFieldOnObject.js +5 -3
  264. package/es/internal/environment.js +1 -1
  265. package/es/internal/focus/index.js +1 -1
  266. package/es/internal/keyboard/keys.js +11 -11
  267. package/es/internal/keyboard/match.js +7 -6
  268. package/es/internal/keyboard/navigation.js +15 -5
  269. package/es/internal/useAnnouncer.js +2 -2
  270. package/es/internal/useAttachedMenu.js +12 -20
  271. package/es/internal/useControllableState.js +11 -16
  272. package/es/internal/useDelayedState.js +9 -18
  273. package/es/internal/useEffectOnce.js +4 -4
  274. package/es/internal/useEvent.js +4 -4
  275. package/es/internal/useId.js +15 -19
  276. package/es/internal/useIdPrefix.js +1 -1
  277. package/es/internal/useIsomorphicEffect.js +1 -1
  278. package/es/internal/useMergedRefs.js +3 -3
  279. package/es/internal/useNoInteractiveChildren.js +8 -19
  280. package/es/internal/useNormalizedInputProps.js +16 -14
  281. package/es/internal/usePrefix.js +1 -1
  282. package/es/internal/useSavedCallback.js +3 -3
  283. package/es/internal/warning.js +4 -4
  284. package/es/internal/wrapFocus.js +16 -21
  285. package/es/prop-types/AriaPropTypes.js +1 -1
  286. package/es/prop-types/deprecate.js +6 -5
  287. package/es/prop-types/isRequiredOneOf.js +12 -25
  288. package/es/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  289. package/es/prop-types/types.js +1 -1
  290. package/es/tools/array.js +1 -1
  291. package/es/tools/events.js +21 -14
  292. package/es/tools/mergeRefs.js +3 -3
  293. package/es/tools/setupGetInstanceId.js +1 -1
  294. package/es/tools/uniqueId.js +3 -3
  295. package/es/tools/wrapComponent.js +14 -13
  296. package/lib/_virtual/_rollupPluginBabelHelpers.js +0 -336
  297. package/lib/components/Accordion/Accordion.Skeleton.js +27 -29
  298. package/lib/components/Accordion/Accordion.js +17 -20
  299. package/lib/components/Accordion/AccordionItem.js +36 -48
  300. package/lib/components/AspectRatio/AspectRatio.js +9 -11
  301. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
  302. package/lib/components/Breadcrumb/Breadcrumb.js +13 -12
  303. package/lib/components/Breadcrumb/BreadcrumbItem.js +23 -21
  304. package/lib/components/Button/Button.Skeleton.js +24 -22
  305. package/lib/components/Button/Button.js +76 -71
  306. package/lib/components/ButtonSet/ButtonSet.js +11 -9
  307. package/lib/components/Checkbox/Checkbox.Skeleton.js +9 -10
  308. package/lib/components/Checkbox/Checkbox.js +54 -51
  309. package/lib/components/CheckboxGroup/CheckboxGroup.js +32 -30
  310. package/lib/components/ClassPrefix/index.js +4 -2
  311. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +14 -13
  312. package/lib/components/CodeSnippet/CodeSnippet.js +198 -101
  313. package/lib/components/ComboBox/ComboBox.js +348 -177
  314. package/lib/components/ComboBox/tools/filter.js +6 -4
  315. package/lib/components/ComboButton/index.js +37 -42
  316. package/lib/components/ComposedModal/ComposedModal.js +187 -85
  317. package/lib/components/ComposedModal/ModalFooter.js +53 -48
  318. package/lib/components/ComposedModal/ModalHeader.js +38 -25
  319. package/lib/components/ContainedList/ContainedList.js +18 -17
  320. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  321. package/lib/components/ContentSwitcher/ContentSwitcher.js +82 -97
  322. package/lib/components/ContentSwitcher/index.js +1 -1
  323. package/lib/components/ContextMenu/useContextMenu.js +12 -21
  324. package/lib/components/Copy/Copy.js +23 -28
  325. package/lib/components/CopyButton/CopyButton.js +9 -9
  326. package/lib/components/DangerButton/DangerButton.js +3 -5
  327. package/lib/components/DataTable/DataTable.js +332 -359
  328. package/lib/components/DataTable/Table.js +28 -25
  329. package/lib/components/DataTable/TableActionList.js +2 -4
  330. package/lib/components/DataTable/TableBatchAction.js +2 -4
  331. package/lib/components/DataTable/TableBatchActions.js +28 -29
  332. package/lib/components/DataTable/TableBody.js +6 -7
  333. package/lib/components/DataTable/TableCell.js +1 -1
  334. package/lib/components/DataTable/TableContainer.js +22 -22
  335. package/lib/components/DataTable/TableContext.js +1 -1
  336. package/lib/components/DataTable/TableExpandHeader.js +18 -20
  337. package/lib/components/DataTable/TableExpandRow.js +22 -22
  338. package/lib/components/DataTable/TableExpandedRow.js +17 -22
  339. package/lib/components/DataTable/TableHead.js +1 -1
  340. package/lib/components/DataTable/TableHeader.js +43 -39
  341. package/lib/components/DataTable/TableRow.js +7 -8
  342. package/lib/components/DataTable/TableSelectAll.js +13 -11
  343. package/lib/components/DataTable/TableSelectRow.js +28 -20
  344. package/lib/components/DataTable/TableToolbar.js +18 -13
  345. package/lib/components/DataTable/TableToolbarAction.js +5 -5
  346. package/lib/components/DataTable/TableToolbarContent.js +2 -4
  347. package/lib/components/DataTable/TableToolbarMenu.js +10 -11
  348. package/lib/components/DataTable/TableToolbarSearch.js +51 -70
  349. package/lib/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  350. package/lib/components/DataTable/state/sortStates.js +1 -1
  351. package/lib/components/DataTable/state/sorting.js +28 -20
  352. package/lib/components/DataTable/tools/cells.js +1 -3
  353. package/lib/components/DataTable/tools/denormalize.js +4 -17
  354. package/lib/components/DataTable/tools/filter.js +18 -16
  355. package/lib/components/DataTable/tools/instanceId.js +2 -2
  356. package/lib/components/DataTable/tools/normalize.js +28 -25
  357. package/lib/components/DataTable/tools/sorting.js +27 -24
  358. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +35 -37
  359. package/lib/components/DatePicker/DatePicker.Skeleton.js +16 -17
  360. package/lib/components/DatePicker/DatePicker.js +205 -194
  361. package/lib/components/DatePicker/plugins/appendToPlugin.js +45 -43
  362. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  363. package/lib/components/DatePicker/plugins/rangePlugin.js +19 -11
  364. package/lib/components/DatePickerInput/DatePickerInput.js +83 -74
  365. package/lib/components/Dropdown/Dropdown.Skeleton.js +12 -11
  366. package/lib/components/Dropdown/Dropdown.js +265 -108
  367. package/lib/components/ErrorBoundary/ErrorBoundary.js +27 -48
  368. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  369. package/lib/components/ExpandableSearch/ExpandableSearch.d.ts +13 -0
  370. package/lib/components/ExpandableSearch/ExpandableSearch.js +17 -24
  371. package/lib/components/FeatureFlags/index.js +25 -43
  372. package/lib/components/FileUploader/FileUploader.Skeleton.js +7 -8
  373. package/lib/components/FileUploader/FileUploader.js +119 -146
  374. package/lib/components/FileUploader/FileUploaderButton.js +35 -47
  375. package/lib/components/FileUploader/FileUploaderDropContainer.js +48 -52
  376. package/lib/components/FileUploader/FileUploaderItem.js +29 -29
  377. package/lib/components/FileUploader/Filename.js +12 -13
  378. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +10 -11
  379. package/lib/components/FluidComboBox/FluidComboBox.js +10 -8
  380. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +17 -17
  381. package/lib/components/FluidDatePicker/FluidDatePicker.js +18 -15
  382. package/lib/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  383. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +10 -11
  384. package/lib/components/FluidDropdown/FluidDropdown.js +10 -8
  385. package/lib/components/FluidForm/FluidForm.js +8 -9
  386. package/lib/components/FluidForm/FormContext.js +1 -1
  387. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +10 -11
  388. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +11 -9
  389. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +10 -11
  390. package/lib/components/FluidSelect/FluidSelect.js +8 -8
  391. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +8 -9
  392. package/lib/components/FluidTextArea/FluidTextArea.js +6 -7
  393. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +8 -9
  394. package/lib/components/FluidTextInput/FluidTextInput.js +9 -8
  395. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +10 -9
  396. package/lib/components/FluidTimePicker/FluidTimePicker.js +30 -26
  397. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +6 -6
  398. package/lib/components/Form/Form.js +8 -9
  399. package/lib/components/FormGroup/FormGroup.js +15 -16
  400. package/lib/components/FormItem/FormItem.js +7 -8
  401. package/lib/components/FormLabel/FormLabel.js +10 -9
  402. package/lib/components/Grid/CSSGrid.js +37 -38
  403. package/lib/components/Grid/Column.js +85 -78
  404. package/lib/components/Grid/ColumnHang.js +11 -13
  405. package/lib/components/Grid/FlexGrid.js +19 -21
  406. package/lib/components/Grid/Grid.js +2 -2
  407. package/lib/components/Grid/GridContext.js +12 -11
  408. package/lib/components/Grid/Row.js +16 -18
  409. package/lib/components/Heading/index.js +11 -13
  410. package/lib/components/Icon/Icon.Skeleton.js +9 -11
  411. package/lib/components/IconButton/index.js +18 -21
  412. package/lib/components/IdPrefix/index.js +4 -2
  413. package/lib/components/InlineCheckbox/InlineCheckbox.js +89 -36
  414. package/lib/components/InlineLoading/InlineLoading.js +22 -24
  415. package/lib/components/Layer/LayerContext.js +1 -1
  416. package/lib/components/Layer/index.js +16 -17
  417. package/lib/components/Layout/LayoutDirection.js +7 -9
  418. package/lib/components/Layout/LayoutDirectionContext.js +1 -1
  419. package/lib/components/Link/Link.js +24 -24
  420. package/lib/components/ListBox/ListBox.js +37 -30
  421. package/lib/components/ListBox/ListBoxField.js +8 -9
  422. package/lib/components/ListBox/ListBoxMenu.js +8 -9
  423. package/lib/components/ListBox/ListBoxMenuIcon.js +16 -14
  424. package/lib/components/ListBox/ListBoxMenuItem.js +22 -25
  425. package/lib/components/ListBox/ListBoxPropTypes.js +4 -4
  426. package/lib/components/ListBox/ListBoxSelection.js +30 -25
  427. package/lib/components/ListBox/index.js +1 -1
  428. package/lib/components/ListBox/next/ListBoxSelection.js +26 -23
  429. package/lib/components/ListBox/next/ListBoxTrigger.js +19 -18
  430. package/lib/components/ListItem/ListItem.js +8 -9
  431. package/lib/components/Loading/Loading.js +23 -23
  432. package/lib/components/Menu/Menu.js +66 -79
  433. package/lib/components/Menu/MenuContext.js +9 -12
  434. package/lib/components/Menu/MenuItem.js +103 -127
  435. package/lib/components/MenuButton/index.js +36 -40
  436. package/lib/components/Modal/Modal.js +280 -119
  437. package/lib/components/ModalWrapper/ModalWrapper.js +71 -95
  438. package/lib/components/MultiSelect/FilterableMultiSelect.js +298 -162
  439. package/lib/components/MultiSelect/MultiSelect.js +163 -175
  440. package/lib/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  441. package/lib/components/MultiSelect/tools/itemToString.js +3 -4
  442. package/lib/components/MultiSelect/tools/sorting.js +15 -13
  443. package/lib/components/Notification/Notification.js +434 -162
  444. package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -10
  445. package/lib/components/NumberInput/NumberInput.js +139 -138
  446. package/lib/components/OrderedList/OrderedList.js +16 -14
  447. package/lib/components/OverflowMenu/OverflowMenu.js +358 -226
  448. package/lib/components/OverflowMenu/index.js +1 -1
  449. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +31 -36
  450. package/lib/components/OverflowMenuV2/index.js +25 -27
  451. package/lib/components/Pagination/Pagination.Skeleton.js +8 -9
  452. package/lib/components/Pagination/Pagination.js +97 -139
  453. package/lib/components/Pagination/experimental/PageSelector.js +17 -17
  454. package/lib/components/Pagination/experimental/Pagination.js +72 -93
  455. package/lib/components/PaginationNav/PaginationNav.js +97 -116
  456. package/lib/components/Popover/index.js +73 -79
  457. package/lib/components/PrimaryButton/PrimaryButton.js +3 -5
  458. package/lib/components/ProgressBar/ProgressBar.js +38 -36
  459. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +14 -13
  460. package/lib/components/ProgressIndicator/ProgressIndicator.js +70 -70
  461. package/lib/components/RadioButton/RadioButton.Skeleton.js +8 -9
  462. package/lib/components/RadioButton/RadioButton.js +26 -26
  463. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +54 -64
  464. package/lib/components/RadioTile/RadioTile.js +26 -24
  465. package/lib/components/Search/Search.Skeleton.js +15 -15
  466. package/lib/components/Search/Search.d.ts +83 -0
  467. package/lib/components/Search/Search.js +62 -69
  468. package/lib/components/Search/index.d.ts +11 -0
  469. package/lib/components/SecondaryButton/SecondaryButton.js +3 -5
  470. package/lib/components/Select/Select.Skeleton.js +11 -12
  471. package/lib/components/Select/Select.js +78 -72
  472. package/lib/components/SelectItem/SelectItem.js +16 -12
  473. package/lib/components/SelectItemGroup/SelectItemGroup.js +10 -11
  474. package/lib/components/SkeletonIcon/SkeletonIcon.js +10 -10
  475. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +10 -10
  476. package/lib/components/SkeletonText/SkeletonText.js +28 -28
  477. package/lib/components/Slider/Slider.Skeleton.js +16 -17
  478. package/lib/components/Slider/Slider.js +305 -328
  479. package/lib/components/Slider/index.js +1 -1
  480. package/lib/components/Stack/Stack.js +18 -19
  481. package/lib/components/Stack/index.js +2 -2
  482. package/lib/components/StructuredList/StructuredList.Skeleton.js +24 -23
  483. package/lib/components/StructuredList/StructuredList.js +133 -105
  484. package/lib/components/Switch/IconSwitch.js +45 -51
  485. package/lib/components/Switch/Switch.js +33 -31
  486. package/lib/components/Tab/Tab.js +76 -82
  487. package/lib/components/Tab/index.js +1 -1
  488. package/lib/components/TabContent/TabContent.js +15 -17
  489. package/lib/components/Tabs/Tabs.Skeleton.js +13 -12
  490. package/lib/components/Tabs/Tabs.js +194 -205
  491. package/lib/components/Tabs/usePressable.js +27 -36
  492. package/lib/components/Tag/Tag.Skeleton.js +9 -8
  493. package/lib/components/Tag/Tag.js +33 -30
  494. package/lib/components/Text/Text.js +19 -19
  495. package/lib/components/Text/TextDirection.js +8 -7
  496. package/lib/components/Text/TextDirectionContext.js +1 -1
  497. package/lib/components/Text/index.js +1 -1
  498. package/lib/components/TextArea/TextArea.Skeleton.js +10 -11
  499. package/lib/components/TextArea/TextArea.js +88 -82
  500. package/lib/components/TextInput/ControlledPasswordInput.js +78 -72
  501. package/lib/components/TextInput/PasswordInput.js +100 -90
  502. package/lib/components/TextInput/TextInput.Skeleton.js +10 -11
  503. package/lib/components/TextInput/TextInput.js +104 -92
  504. package/lib/components/TextInput/util.js +28 -30
  505. package/lib/components/Theme/index.js +24 -19
  506. package/lib/components/Tile/Tile.js +134 -175
  507. package/lib/components/TileGroup/TileGroup.js +54 -69
  508. package/lib/components/TileGroup/index.js +1 -1
  509. package/lib/components/TimePicker/TimePicker.js +59 -66
  510. package/lib/components/TimePickerSelect/TimePickerSelect.js +19 -17
  511. package/lib/components/TimePickerSelect/index.js +1 -1
  512. package/lib/components/Toggle/Toggle.Skeleton.js +68 -57
  513. package/lib/components/Toggle/Toggle.js +43 -47
  514. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +60 -54
  515. package/lib/components/Toggletip/index.js +51 -47
  516. package/lib/components/Tooltip/DefinitionTooltip.js +23 -30
  517. package/lib/components/Tooltip/Tooltip.js +34 -49
  518. package/lib/components/TreeView/TreeNode.js +93 -73
  519. package/lib/components/TreeView/TreeView.js +71 -82
  520. package/lib/components/UIShell/Content.js +12 -14
  521. package/lib/components/UIShell/Header.js +15 -11
  522. package/lib/components/UIShell/HeaderContainer.js +8 -14
  523. package/lib/components/UIShell/HeaderGlobalAction.js +25 -18
  524. package/lib/components/UIShell/HeaderGlobalBar.js +1 -3
  525. package/lib/components/UIShell/HeaderMenu.js +113 -128
  526. package/lib/components/UIShell/HeaderMenuButton.js +30 -21
  527. package/lib/components/UIShell/HeaderMenuItem.js +27 -19
  528. package/lib/components/UIShell/HeaderName.js +18 -13
  529. package/lib/components/UIShell/HeaderNavigation.js +18 -14
  530. package/lib/components/UIShell/HeaderPanel.js +22 -16
  531. package/lib/components/UIShell/HeaderSideNavItems.js +11 -9
  532. package/lib/components/UIShell/Link.js +11 -11
  533. package/lib/components/UIShell/SideNav.js +65 -61
  534. package/lib/components/UIShell/SideNavDetails.js +10 -11
  535. package/lib/components/UIShell/SideNavDivider.js +5 -3
  536. package/lib/components/UIShell/SideNavFooter.js +12 -12
  537. package/lib/components/UIShell/SideNavHeader.js +8 -6
  538. package/lib/components/UIShell/SideNavIcon.js +11 -8
  539. package/lib/components/UIShell/SideNavItem.js +11 -9
  540. package/lib/components/UIShell/SideNavItems.js +13 -11
  541. package/lib/components/UIShell/SideNavLink.js +18 -16
  542. package/lib/components/UIShell/SideNavLinkText.js +7 -8
  543. package/lib/components/UIShell/SideNavMenu.js +28 -35
  544. package/lib/components/UIShell/SideNavMenuItem.js +13 -13
  545. package/lib/components/UIShell/SideNavSwitcher.js +19 -19
  546. package/lib/components/UIShell/SkipToContent.js +9 -10
  547. package/lib/components/UIShell/Switcher.js +19 -10
  548. package/lib/components/UIShell/SwitcherDivider.js +9 -8
  549. package/lib/components/UIShell/SwitcherItem.js +25 -18
  550. package/lib/components/UIShell/_utils.js +1 -1
  551. package/lib/components/UnorderedList/UnorderedList.js +13 -13
  552. package/lib/index.js +10 -10
  553. package/lib/internal/ClickListener.js +49 -65
  554. package/lib/internal/FloatingMenu.js +192 -199
  555. package/lib/internal/OptimizedResize.js +9 -8
  556. package/lib/internal/Selection.js +91 -110
  557. package/lib/internal/createClassWrapper.js +2 -2
  558. package/lib/internal/deprecateFieldOnObject.js +5 -3
  559. package/lib/internal/environment.js +1 -1
  560. package/lib/internal/focus/index.js +1 -1
  561. package/lib/internal/keyboard/keys.js +11 -11
  562. package/lib/internal/keyboard/match.js +7 -6
  563. package/lib/internal/keyboard/navigation.js +15 -5
  564. package/lib/internal/useAnnouncer.js +2 -2
  565. package/lib/internal/useAttachedMenu.js +12 -20
  566. package/lib/internal/useControllableState.js +11 -16
  567. package/lib/internal/useDelayedState.js +9 -18
  568. package/lib/internal/useEffectOnce.js +4 -4
  569. package/lib/internal/useEvent.js +4 -4
  570. package/lib/internal/useId.js +14 -18
  571. package/lib/internal/useIdPrefix.js +1 -1
  572. package/lib/internal/useIsomorphicEffect.js +1 -1
  573. package/lib/internal/useMergedRefs.js +3 -3
  574. package/lib/internal/useNoInteractiveChildren.js +8 -19
  575. package/lib/internal/useNormalizedInputProps.js +16 -14
  576. package/lib/internal/usePrefix.js +1 -1
  577. package/lib/internal/useSavedCallback.js +3 -3
  578. package/lib/internal/warning.js +4 -4
  579. package/lib/internal/wrapFocus.js +16 -21
  580. package/lib/prop-types/AriaPropTypes.js +1 -1
  581. package/lib/prop-types/deprecate.js +6 -5
  582. package/lib/prop-types/isRequiredOneOf.js +15 -28
  583. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  584. package/lib/prop-types/types.js +1 -1
  585. package/lib/tools/array.js +1 -1
  586. package/lib/tools/events.js +21 -14
  587. package/lib/tools/mergeRefs.js +3 -3
  588. package/lib/tools/setupGetInstanceId.js +1 -1
  589. package/lib/tools/uniqueId.js +3 -3
  590. package/lib/tools/wrapComponent.js +14 -13
  591. package/package.json +6 -6
@@ -39,162 +39,125 @@ var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
39
39
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
40
40
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
41
41
 
42
- var noop = function noop() {};
43
-
44
- var getInstanceId = setupGetInstanceId["default"]();
45
- var _ref = Downshift.useSelect.stateChangeTypes,
46
- ItemClick = _ref.ItemClick,
47
- MenuBlur = _ref.MenuBlur,
48
- MenuKeyDownArrowDown = _ref.MenuKeyDownArrowDown,
49
- MenuKeyDownArrowUp = _ref.MenuKeyDownArrowUp,
50
- MenuKeyDownEscape = _ref.MenuKeyDownEscape,
51
- MenuKeyDownSpaceButton = _ref.MenuKeyDownSpaceButton,
52
- ToggleButtonClick = _ref.ToggleButtonClick;
53
-
54
- var defaultItemToString = function defaultItemToString(item) {
42
+ const noop = () => {};
43
+
44
+ const getInstanceId = setupGetInstanceId["default"]();
45
+ const {
46
+ ItemClick,
47
+ MenuBlur,
48
+ MenuKeyDownArrowDown,
49
+ MenuKeyDownArrowUp,
50
+ MenuKeyDownEscape,
51
+ MenuKeyDownSpaceButton,
52
+ ToggleButtonClick
53
+ } = Downshift.useSelect.stateChangeTypes;
54
+
55
+ const defaultItemToString = item => {
55
56
  if (typeof item === 'string') {
56
57
  return item;
57
58
  }
58
59
 
59
60
  if (typeof item === 'number') {
60
- return "".concat(item);
61
+ return `${item}`;
61
62
  }
62
63
 
63
- if (item !== null && _rollupPluginBabelHelpers["typeof"](item) === 'object' && 'label' in item && typeof item['label'] === 'string') {
64
+ if (item !== null && typeof item === 'object' && 'label' in item && typeof item['label'] === 'string') {
64
65
  return item['label'];
65
66
  }
66
67
 
67
68
  return '';
68
69
  };
69
70
 
70
- var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function MultiSelect(_ref2, ref) {
71
- var _cx, _cx2, _cx4;
72
-
73
- var containerClassName = _ref2.className,
74
- id = _ref2.id,
75
- items = _ref2.items,
76
- itemToElement = _ref2.itemToElement,
77
- _ref2$itemToString = _ref2.itemToString,
78
- itemToString = _ref2$itemToString === void 0 ? defaultItemToString : _ref2$itemToString,
79
- titleText = _ref2.titleText,
80
- hideLabel = _ref2.hideLabel,
81
- helperText = _ref2.helperText,
82
- label = _ref2.label,
83
- type = _ref2.type,
84
- size = _ref2.size,
85
- disabled = _ref2.disabled,
86
- initialSelectedItems = _ref2.initialSelectedItems,
87
- sortItems = _ref2.sortItems,
88
- compareItems = _ref2.compareItems,
89
- clearSelectionText = _ref2.clearSelectionText,
90
- clearSelectionDescription = _ref2.clearSelectionDescription,
91
- light = _ref2.light,
92
- invalid = _ref2.invalid,
93
- invalidText = _ref2.invalidText,
94
- warn = _ref2.warn,
95
- warnText = _ref2.warnText,
96
- useTitleInItem = _ref2.useTitleInItem,
97
- translateWithId = _ref2.translateWithId,
98
- downshiftProps = _ref2.downshiftProps,
99
- open = _ref2.open,
100
- selectionFeedback = _ref2.selectionFeedback,
101
- onChange = _ref2.onChange,
102
- onMenuChange = _ref2.onMenuChange,
103
- direction = _ref2.direction,
104
- selected = _ref2.selectedItems,
105
- readOnly = _ref2.readOnly,
106
- locale = _ref2.locale;
107
- var prefix = usePrefix.usePrefix();
108
-
109
- var _useContext = React.useContext(FormContext.FormContext),
110
- isFluid = _useContext.isFluid;
111
-
112
- var _useRef = React.useRef(getInstanceId()),
113
- multiSelectInstanceId = _useRef.current;
114
-
115
- var _useState = React.useState(),
116
- _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
117
- highlightedIndex = _useState2[0],
118
- setHighlightedIndex = _useState2[1];
119
-
120
- var _useState3 = React.useState(false),
121
- _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
122
- isFocused = _useState4[0],
123
- setIsFocused = _useState4[1];
124
-
125
- var _useState5 = React.useState(false),
126
- _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
127
- inputFocused = _useState6[0],
128
- setInputFocused = _useState6[1];
129
-
130
- var _useState7 = React.useState(open || false),
131
- _useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
132
- isOpen = _useState8[0],
133
- setIsOpen = _useState8[1];
134
-
135
- var _useState9 = React.useState(open),
136
- _useState10 = _rollupPluginBabelHelpers.slicedToArray(_useState9, 2),
137
- prevOpenProp = _useState10[0],
138
- setPrevOpenProp = _useState10[1];
139
-
140
- var _useState11 = React.useState([]),
141
- _useState12 = _rollupPluginBabelHelpers.slicedToArray(_useState11, 2),
142
- topItems = _useState12[0],
143
- setTopItems = _useState12[1];
144
-
145
- var _useSelection = Selection.useSelection({
146
- disabled: disabled,
147
- initialSelectedItems: initialSelectedItems,
148
- onChange: onChange,
71
+ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function MultiSelect(_ref, ref) {
72
+ let {
73
+ className: containerClassName,
74
+ id,
75
+ items,
76
+ itemToElement,
77
+ itemToString = defaultItemToString,
78
+ titleText,
79
+ hideLabel,
80
+ helperText,
81
+ label,
82
+ type,
83
+ size,
84
+ disabled,
85
+ initialSelectedItems,
86
+ sortItems,
87
+ compareItems,
88
+ clearSelectionText,
89
+ clearSelectionDescription,
90
+ light,
91
+ invalid,
92
+ invalidText,
93
+ warn,
94
+ warnText,
95
+ useTitleInItem,
96
+ translateWithId,
97
+ downshiftProps,
98
+ open,
99
+ selectionFeedback,
100
+ onChange,
101
+ onMenuChange,
102
+ direction,
103
+ selectedItems: selected,
104
+ readOnly,
105
+ locale
106
+ } = _ref;
107
+ const prefix = usePrefix.usePrefix();
108
+ const {
109
+ isFluid
110
+ } = React.useContext(FormContext.FormContext);
111
+ const {
112
+ current: multiSelectInstanceId
113
+ } = React.useRef(getInstanceId());
114
+ const [highlightedIndex, setHighlightedIndex] = React.useState();
115
+ const [isFocused, setIsFocused] = React.useState(false);
116
+ const [inputFocused, setInputFocused] = React.useState(false);
117
+ const [isOpen, setIsOpen] = React.useState(open || false);
118
+ const [prevOpenProp, setPrevOpenProp] = React.useState(open);
119
+ const [topItems, setTopItems] = React.useState([]);
120
+ const {
121
+ selectedItems: controlledSelectedItems,
122
+ onItemChange,
123
+ clearSelection
124
+ } = Selection.useSelection({
125
+ disabled,
126
+ initialSelectedItems,
127
+ onChange,
149
128
  selectedItems: selected
150
- }),
151
- controlledSelectedItems = _useSelection.selectedItems,
152
- onItemChange = _useSelection.onItemChange,
153
- clearSelection = _useSelection.clearSelection;
154
-
155
- var _useSelect = Downshift.useSelect(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, downshiftProps), {}, {
156
- highlightedIndex: highlightedIndex,
157
- isOpen: isOpen,
158
- itemToString: function (_itemToString) {
159
- function itemToString(_x) {
160
- return _itemToString.apply(this, arguments);
161
- }
162
-
163
- itemToString.toString = function () {
164
- return _itemToString.toString();
165
- };
166
-
167
- return itemToString;
168
- }(function (items) {
169
- return items.map(function (item) {
170
- return itemToString(item);
171
- }).join(', ');
172
- }),
173
- onStateChange: onStateChange,
129
+ });
130
+ const {
131
+ getToggleButtonProps,
132
+ getLabelProps,
133
+ getMenuProps,
134
+ getItemProps,
135
+ selectedItem
136
+ } = Downshift.useSelect({ ...downshiftProps,
137
+ highlightedIndex,
138
+ isOpen,
139
+ itemToString: items => {
140
+ return items.map(item => itemToString(item)).join(', ');
141
+ },
142
+ onStateChange,
174
143
  selectedItem: controlledSelectedItems,
175
- items: items
176
- })),
177
- getToggleButtonProps = _useSelect.getToggleButtonProps,
178
- getLabelProps = _useSelect.getLabelProps,
179
- getMenuProps = _useSelect.getMenuProps,
180
- getItemProps = _useSelect.getItemProps,
181
- selectedItem = _useSelect.selectedItem;
182
-
183
- var toggleButtonProps = getToggleButtonProps({
184
- onFocus: function onFocus() {
144
+ items
145
+ });
146
+ const toggleButtonProps = getToggleButtonProps({
147
+ onFocus: () => {
185
148
  setInputFocused(true);
186
149
  },
187
- onBlur: function onBlur() {
150
+ onBlur: () => {
188
151
  setInputFocused(false);
189
152
  }
190
153
  });
191
- var mergedRef = mergeRefs["default"](toggleButtonProps.ref, ref);
192
- var selectedItems = selectedItem;
154
+ const mergedRef = mergeRefs["default"](toggleButtonProps.ref, ref);
155
+ const selectedItems = selectedItem;
193
156
  /**
194
157
  * wrapper function to forward changes to consumer
195
158
  */
196
159
 
197
- var setIsOpenWrapper = function setIsOpenWrapper(open) {
160
+ const setIsOpenWrapper = open => {
198
161
  setIsOpen(open);
199
162
 
200
163
  if (onMenuChange) {
@@ -211,23 +174,43 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
211
174
  setPrevOpenProp(open);
212
175
  }
213
176
 
214
- var inline = type === 'inline';
215
- var showWarning = !invalid && warn;
216
- var enabled = index.useFeatureFlag('enable-v11-release');
217
- var wrapperClasses = cx__default["default"]("".concat(prefix, "--multi-select__wrapper"), "".concat(prefix, "--list-box__wrapper"), [enabled ? containerClassName : null], (_cx = {}, _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--multi-select__wrapper--inline"), inline), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--list-box__wrapper--inline"), inline), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--multi-select__wrapper--inline--invalid"), inline && invalid), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--list-box__wrapper--inline--invalid"), inline && invalid), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--list-box__wrapper--fluid--invalid"), isFluid && invalid), _rollupPluginBabelHelpers.defineProperty(_cx, "".concat(prefix, "--list-box__wrapper--fluid--focus"), !isOpen && isFluid && isFocused), _cx));
218
- var titleClasses = cx__default["default"]("".concat(prefix, "--label"), (_cx2 = {}, _rollupPluginBabelHelpers.defineProperty(_cx2, "".concat(prefix, "--label--disabled"), disabled), _rollupPluginBabelHelpers.defineProperty(_cx2, "".concat(prefix, "--visually-hidden"), hideLabel), _cx2));
219
- var helperId = !helperText ? undefined : "multiselect-helper-text-".concat(multiSelectInstanceId);
220
- var fieldLabelId = "multiselect-field-label-".concat(multiSelectInstanceId);
221
- var helperClasses = cx__default["default"]("".concat(prefix, "--form__helper-text"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(prefix, "--form__helper-text--disabled"), disabled));
222
- var className = cx__default["default"]("".concat(prefix, "--multi-select"), [enabled ? null : containerClassName], (_cx4 = {}, _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--invalid"), invalid), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--invalid--focused"), invalid && inputFocused), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--warning"), showWarning), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--inline"), inline), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--selected"), selectedItems && selectedItems.length > 0), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--list-box--up"), direction === 'top'), _rollupPluginBabelHelpers.defineProperty(_cx4, "".concat(prefix, "--multi-select--readonly"), readOnly), _cx4)); // needs to be capitalized for react to render it correctly
177
+ const inline = type === 'inline';
178
+ const showWarning = !invalid && warn;
179
+ const enabled = index.useFeatureFlag('enable-v11-release');
180
+ const wrapperClasses = cx__default["default"](`${prefix}--multi-select__wrapper`, `${prefix}--list-box__wrapper`, [enabled ? containerClassName : null], {
181
+ [`${prefix}--multi-select__wrapper--inline`]: inline,
182
+ [`${prefix}--list-box__wrapper--inline`]: inline,
183
+ [`${prefix}--multi-select__wrapper--inline--invalid`]: inline && invalid,
184
+ [`${prefix}--list-box__wrapper--inline--invalid`]: inline && invalid,
185
+ [`${prefix}--list-box__wrapper--fluid--invalid`]: isFluid && invalid,
186
+ [`${prefix}--list-box__wrapper--fluid--focus`]: !isOpen && isFluid && isFocused
187
+ });
188
+ const titleClasses = cx__default["default"](`${prefix}--label`, {
189
+ [`${prefix}--label--disabled`]: disabled,
190
+ [`${prefix}--visually-hidden`]: hideLabel
191
+ });
192
+ const helperId = !helperText ? undefined : `multiselect-helper-text-${multiSelectInstanceId}`;
193
+ const fieldLabelId = `multiselect-field-label-${multiSelectInstanceId}`;
194
+ const helperClasses = cx__default["default"](`${prefix}--form__helper-text`, {
195
+ [`${prefix}--form__helper-text--disabled`]: disabled
196
+ });
197
+ const className = cx__default["default"](`${prefix}--multi-select`, [enabled ? null : containerClassName], {
198
+ [`${prefix}--multi-select--invalid`]: invalid,
199
+ [`${prefix}--multi-select--invalid--focused`]: invalid && inputFocused,
200
+ [`${prefix}--multi-select--warning`]: showWarning,
201
+ [`${prefix}--multi-select--inline`]: inline,
202
+ [`${prefix}--multi-select--selected`]: selectedItems && selectedItems.length > 0,
203
+ [`${prefix}--list-box--up`]: direction === 'top',
204
+ [`${prefix}--multi-select--readonly`]: readOnly
205
+ }); // needs to be capitalized for react to render it correctly
223
206
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
224
207
 
225
- var ItemToElement = itemToElement;
226
- var sortOptions = {
208
+ const ItemToElement = itemToElement;
209
+ const sortOptions = {
227
210
  selectedItems: controlledSelectedItems,
228
- itemToString: itemToString,
229
- compareItems: compareItems,
230
- locale: locale
211
+ itemToString,
212
+ compareItems,
213
+ locale
231
214
  };
232
215
 
233
216
  if (selectionFeedback === 'fixed') {
@@ -241,7 +224,9 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
241
224
  setTopItems(controlledSelectedItems);
242
225
  }
243
226
 
244
- var type = changes.type;
227
+ const {
228
+ type
229
+ } = changes;
245
230
 
246
231
  switch (type) {
247
232
  case ItemClick:
@@ -271,7 +256,7 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
271
256
  }
272
257
  }
273
258
 
274
- var onKeyDown = function onKeyDown(e) {
259
+ const onKeyDown = e => {
275
260
  if (!disabled) {
276
261
  if (match.match(e, keys.Delete) || match.match(e, keys.Escape)) {
277
262
  clearSelection();
@@ -284,14 +269,16 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
284
269
  }
285
270
  };
286
271
 
287
- var multiSelectFieldWrapperClasses = cx__default["default"]("".concat(prefix, "--list-box__field--wrapper"), _rollupPluginBabelHelpers.defineProperty({}, "".concat(prefix, "--list-box__field--wrapper--input-focused"), inputFocused));
272
+ const multiSelectFieldWrapperClasses = cx__default["default"](`${prefix}--list-box__field--wrapper`, {
273
+ [`${prefix}--list-box__field--wrapper--input-focused`]: inputFocused
274
+ });
288
275
 
289
- var handleFocus = function handleFocus(evt) {
290
- evt.target.classList.contains("".concat(prefix, "--tag__close-icon")) ? setIsFocused(false) : setIsFocused(evt.type === 'focus' ? true : false);
276
+ const handleFocus = evt => {
277
+ evt.target.classList.contains(`${prefix}--tag__close-icon`) ? setIsFocused(false) : setIsFocused(evt.type === 'focus' ? true : false);
291
278
  };
292
279
 
293
- var readOnlyEventHandlers = readOnly ? {
294
- onClick: function onClick(evt) {
280
+ const readOnlyEventHandlers = readOnly ? {
281
+ onClick: evt => {
295
282
  // NOTE: does not prevent click
296
283
  evt.preventDefault(); // focus on the element as per readonly input behavior
297
284
 
@@ -299,8 +286,8 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
299
286
  mergedRef.current.focus();
300
287
  }
301
288
  },
302
- onKeyDown: function onKeyDown(evt) {
303
- var selectAccessKeys = ['ArrowDown', 'ArrowUp', ' ', 'Enter']; // This prevents the select from opening for the above keys
289
+ onKeyDown: evt => {
290
+ const selectAccessKeys = ['ArrowDown', 'ArrowUp', ' ', 'Enter']; // This prevents the select from opening for the above keys
304
291
 
305
292
  if (selectAccessKeys.includes(evt.key)) {
306
293
  evt.preventDefault();
@@ -312,7 +299,7 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
312
299
  }, /*#__PURE__*/React__default["default"].createElement("label", _rollupPluginBabelHelpers["extends"]({
313
300
  className: titleClasses
314
301
  }, getLabelProps()), titleText && titleText, selectedItems.length > 0 && /*#__PURE__*/React__default["default"].createElement("span", {
315
- className: "".concat(prefix, "--visually-hidden")
302
+ className: `${prefix}--visually-hidden`
316
303
  }, clearSelectionDescription, " ", selectedItems.length, ",", clearSelectionText)), /*#__PURE__*/React__default["default"].createElement(index$1["default"], {
317
304
  onFocus: isFluid ? handleFocus : undefined,
318
305
  onBlur: isFluid ? handleFocus : undefined,
@@ -328,9 +315,9 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
328
315
  isOpen: isOpen,
329
316
  id: id
330
317
  }, invalid && /*#__PURE__*/React__default["default"].createElement(iconsReact.WarningFilled, {
331
- className: "".concat(prefix, "--list-box__invalid-icon")
318
+ className: `${prefix}--list-box__invalid-icon`
332
319
  }), showWarning && /*#__PURE__*/React__default["default"].createElement(iconsReact.WarningAltFilled, {
333
- className: "".concat(prefix, "--list-box__invalid-icon ").concat(prefix, "--list-box__invalid-icon--warning")
320
+ className: `${prefix}--list-box__invalid-icon ${prefix}--list-box__invalid-icon--warning`
334
321
  }), /*#__PURE__*/React__default["default"].createElement("div", {
335
322
  className: multiSelectFieldWrapperClasses
336
323
  }, selectedItems.length > 0 && /*#__PURE__*/React__default["default"].createElement(index$1["default"].Selection, {
@@ -342,7 +329,7 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
342
329
  disabled: disabled
343
330
  }), /*#__PURE__*/React__default["default"].createElement("button", _rollupPluginBabelHelpers["extends"]({
344
331
  type: "button",
345
- className: "".concat(prefix, "--list-box__field"),
332
+ className: `${prefix}--list-box__field`,
346
333
  disabled: disabled,
347
334
  "aria-disabled": disabled || readOnly,
348
335
  "aria-describedby": !inline && !invalid && !warn && helperText ? helperId : undefined
@@ -351,23 +338,23 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
351
338
  onKeyDown: onKeyDown
352
339
  }, readOnlyEventHandlers), /*#__PURE__*/React__default["default"].createElement("span", {
353
340
  id: fieldLabelId,
354
- className: "".concat(prefix, "--list-box__label")
341
+ className: `${prefix}--list-box__label`
355
342
  }, label), /*#__PURE__*/React__default["default"].createElement(index$1["default"].MenuIcon, {
356
343
  isOpen: isOpen,
357
344
  translateWithId: translateWithId
358
345
  }))), /*#__PURE__*/React__default["default"].createElement(index$1["default"].Menu, _rollupPluginBabelHelpers["extends"]({
359
346
  "aria-multiselectable": "true"
360
347
  }, getMenuProps()), isOpen && // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
361
- sortItems(items, sortOptions).map(function (item, index) {
362
- var _getItemProps;
363
-
364
- var isChecked = selectedItems.filter(function (selected) {
365
- return isEqual__default["default"](selected, item);
366
- }).length > 0;
367
- var itemProps = getItemProps((_getItemProps = {
368
- item: item
369
- }, _rollupPluginBabelHelpers.defineProperty(_getItemProps, 'aria-selected', isChecked ? true : undefined), _rollupPluginBabelHelpers.defineProperty(_getItemProps, "disabled", item.disabled), _getItemProps));
370
- var itemText = itemToString(item);
348
+ sortItems(items, sortOptions).map((item, index) => {
349
+ const isChecked = selectedItems.filter(selected => isEqual__default["default"](selected, item)).length > 0;
350
+ const itemProps = getItemProps({
351
+ item,
352
+ // we don't want Downshift to set aria-selected for us
353
+ // we also don't want to set 'false' for reader verbosity's sake
354
+ ['aria-selected']: isChecked ? true : undefined,
355
+ disabled: item.disabled
356
+ });
357
+ const itemText = itemToString(item);
371
358
  return /*#__PURE__*/React__default["default"].createElement(index$1["default"].MenuItem, _rollupPluginBabelHelpers["extends"]({
372
359
  key: itemProps.id,
373
360
  isActive: isChecked,
@@ -375,12 +362,12 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
375
362
  isHighlighted: highlightedIndex === index,
376
363
  title: itemText
377
364
  }, itemProps), /*#__PURE__*/React__default["default"].createElement("div", {
378
- className: "".concat(prefix, "--checkbox-wrapper")
365
+ className: `${prefix}--checkbox-wrapper`
379
366
  }, /*#__PURE__*/React__default["default"].createElement("span", {
380
367
  title: useTitleInItem ? itemText : undefined,
381
- className: "".concat(prefix, "--checkbox-label"),
368
+ className: `${prefix}--checkbox-label`,
382
369
  "data-contained-checkbox-state": isChecked,
383
- id: "".concat(itemProps.id, "__checkbox")
370
+ id: `${itemProps.id}__checkbox`
384
371
  }, itemToElement ? /*#__PURE__*/React__default["default"].createElement(ItemToElement, _rollupPluginBabelHelpers["extends"]({
385
372
  key: itemProps.id
386
373
  }, item)) : itemText)));
@@ -390,7 +377,8 @@ var MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(function Mul
390
377
  }, helperText));
391
378
  });
392
379
  MultiSelect.displayName = 'MultiSelect';
393
- MultiSelect.propTypes = _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, MultiSelectPropTypes.sortingPropTypes), {}, {
380
+ MultiSelect.propTypes = { ...MultiSelectPropTypes.sortingPropTypes,
381
+
394
382
  /**
395
383
  * Provide a custom class name to be added to the outermost node in the
396
384
  * component
@@ -561,7 +549,7 @@ MultiSelect.propTypes = _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBab
561
549
  * Provide the text that is displayed when the control is in warning state
562
550
  */
563
551
  warnText: PropTypes__default["default"].node
564
- });
552
+ };
565
553
  MultiSelect.defaultProps = {
566
554
  compareItems: sorting.defaultCompareItems,
567
555
  disabled: false,
@@ -15,7 +15,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
15
15
 
16
16
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
17
17
 
18
- var sortingPropTypes = {
18
+ const sortingPropTypes = {
19
19
  /**
20
20
  * Provide a compare function that is used to determine the ordering of
21
21
  * options. `compareItems` has the following function signature:
@@ -9,19 +9,18 @@
9
9
 
10
10
  Object.defineProperty(exports, '__esModule', { value: true });
11
11
 
12
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
13
12
  var invariant = require('invariant');
14
13
 
15
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
15
 
17
16
  var invariant__default = /*#__PURE__*/_interopDefaultLegacy(invariant);
18
17
 
19
- var itemToString = function itemToString(item) {
20
- !(typeof item.label === 'string') ? process.env.NODE_ENV !== "production" ? invariant__default["default"](false, '[MultiSelect] the default `itemToString` method expected to receive ' + 'an item with a `label` field of type `string`. Instead received: `%s`', _rollupPluginBabelHelpers["typeof"](item.label)) : invariant__default["default"](false) : void 0;
18
+ const itemToString = item => {
19
+ !(typeof item.label === 'string') ? process.env.NODE_ENV !== "production" ? invariant__default["default"](false, '[MultiSelect] the default `itemToString` method expected to receive ' + 'an item with a `label` field of type `string`. Instead received: `%s`', typeof item.label) : invariant__default["default"](false) : void 0;
21
20
  return item.label || '';
22
21
  };
23
22
 
24
- var defaultItemToString = function defaultItemToString(item) {
23
+ const defaultItemToString = item => {
25
24
  if (Array.isArray(item)) {
26
25
  return item.map(itemToString);
27
26
  }
@@ -19,8 +19,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
19
19
  * @param {string} options.locale
20
20
  * @returns {number}
21
21
  */
22
- var defaultCompareItems = function defaultCompareItems(itemA, itemB, _ref) {
23
- var locale = _ref.locale;
22
+ const defaultCompareItems = (itemA, itemB, _ref) => {
23
+ let {
24
+ locale
25
+ } = _ref;
24
26
  return itemA.localeCompare(itemB, locale, {
25
27
  numeric: true
26
28
  });
@@ -29,16 +31,16 @@ var defaultCompareItems = function defaultCompareItems(itemA, itemB, _ref) {
29
31
  * Default sorting algorithm for options in a selection control
30
32
  */
31
33
 
32
- var defaultSortItems = function defaultSortItems(items, _ref2) {
33
- var _ref2$selectedItems = _ref2.selectedItems,
34
- selectedItems = _ref2$selectedItems === void 0 ? [] : _ref2$selectedItems,
35
- itemToString = _ref2.itemToString,
36
- compareItems = _ref2.compareItems,
37
- _ref2$locale = _ref2.locale,
38
- locale = _ref2$locale === void 0 ? 'en' : _ref2$locale;
39
- return items.sort(function (itemA, itemB) {
40
- var hasItemA = selectedItems.includes(itemA);
41
- var hasItemB = selectedItems.includes(itemB); // Prefer whichever item is in the `selectedItems` array first
34
+ const defaultSortItems = (items, _ref2) => {
35
+ let {
36
+ selectedItems = [],
37
+ itemToString,
38
+ compareItems,
39
+ locale = 'en'
40
+ } = _ref2;
41
+ return items.sort((itemA, itemB) => {
42
+ const hasItemA = selectedItems.includes(itemA);
43
+ const hasItemB = selectedItems.includes(itemB); // Prefer whichever item is in the `selectedItems` array first
42
44
 
43
45
  if (hasItemA && !hasItemB) {
44
46
  return -1;
@@ -49,7 +51,7 @@ var defaultSortItems = function defaultSortItems(items, _ref2) {
49
51
  }
50
52
 
51
53
  return compareItems(itemToString(itemA), itemToString(itemB), {
52
- locale: locale
54
+ locale
53
55
  });
54
56
  });
55
57
  };