@carbon/react 1.27.0-rc.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 +28 -26
  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 +211 -210
  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 +27 -25
  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 +210 -209
  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 +9 -9
@@ -23,83 +23,67 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
23
  * given `children` element.
24
24
  */
25
25
 
26
- var ClickListener = /*#__PURE__*/function (_React$Component) {
27
- _rollupPluginBabelHelpers.inherits(ClickListener, _React$Component);
26
+ class ClickListener extends React__default["default"].Component {
27
+ static getEventTarget(evt) {
28
+ // support Shadow DOM
29
+ if (evt.composed && typeof evt.composedPath === 'function') {
30
+ return evt.composedPath()[0];
31
+ }
28
32
 
29
- var _super = _rollupPluginBabelHelpers.createSuper(ClickListener);
33
+ return evt.target;
34
+ }
30
35
 
31
- function ClickListener(props) {
32
- var _this;
36
+ constructor(props) {
37
+ super(props); // We manually bind handlers in this Component, versus using class
38
+ // properties, so that we can properly test the `handleRef` handler.
33
39
 
34
- _rollupPluginBabelHelpers.classCallCheck(this, ClickListener);
40
+ this.handleRef = this.handleRef.bind(this);
41
+ this.handleDocumentClick = this.handleDocumentClick.bind(this);
42
+ }
35
43
 
36
- _this = _super.call(this, props); // We manually bind handlers in this Component, versus using class
37
- // properties, so that we can properly test the `handleRef` handler.
44
+ componentDidMount() {
45
+ document.addEventListener('click', this.handleDocumentClick);
46
+ }
38
47
 
39
- _this.handleRef = _this.handleRef.bind(_rollupPluginBabelHelpers.assertThisInitialized(_this));
40
- _this.handleDocumentClick = _this.handleDocumentClick.bind(_rollupPluginBabelHelpers.assertThisInitialized(_this));
41
- return _this;
48
+ componentWillUnmount() {
49
+ document.removeEventListener('click', this.handleDocumentClick);
42
50
  }
43
51
 
44
- _rollupPluginBabelHelpers.createClass(ClickListener, [{
45
- key: "componentDidMount",
46
- value: function componentDidMount() {
47
- document.addEventListener('click', this.handleDocumentClick);
48
- }
49
- }, {
50
- key: "componentWillUnmount",
51
- value: function componentWillUnmount() {
52
- document.removeEventListener('click', this.handleDocumentClick);
53
- }
54
- }, {
55
- key: "handleDocumentClick",
56
- value: function handleDocumentClick(evt) {
57
- if (this.element) {
58
- if (this.element.contains && !this.element.contains(ClickListener.getEventTarget(evt))) {
59
- this.props.onClickOutside(evt);
60
- }
52
+ handleDocumentClick(evt) {
53
+ if (this.element) {
54
+ if (this.element.contains && !this.element.contains(ClickListener.getEventTarget(evt))) {
55
+ this.props.onClickOutside(evt);
61
56
  }
62
57
  }
63
- }, {
64
- key: "handleRef",
65
- value: function handleRef(el) {
66
- var children = this.props.children;
67
- this.element = el;
68
- /**
69
- * One important note, `children.ref` corresponds to a `ref` prop passed in
70
- * directly to the child, not necessarily a `ref` defined in the component.
71
- * This means that here we target the following `ref` location:
72
- *
73
- * <ClickListener onClickOutside={() => {}}>
74
- * <Child ref={targetedRefHere} />
75
- * </ClickListener>
76
- */
77
-
78
- if (children.ref && typeof children.ref === 'function') {
79
- children.ref(el);
80
- }
81
- }
82
- }, {
83
- key: "render",
84
- value: function render() {
85
- return /*#__PURE__*/React__default["default"].cloneElement(this.props.children, {
86
- ref: this.handleRef
87
- });
88
- }
89
- }], [{
90
- key: "getEventTarget",
91
- value: function getEventTarget(evt) {
92
- // support Shadow DOM
93
- if (evt.composed && typeof evt.composedPath === 'function') {
94
- return evt.composedPath()[0];
95
- }
58
+ }
96
59
 
97
- return evt.target;
60
+ handleRef(el) {
61
+ const {
62
+ children
63
+ } = this.props;
64
+ this.element = el;
65
+ /**
66
+ * One important note, `children.ref` corresponds to a `ref` prop passed in
67
+ * directly to the child, not necessarily a `ref` defined in the component.
68
+ * This means that here we target the following `ref` location:
69
+ *
70
+ * <ClickListener onClickOutside={() => {}}>
71
+ * <Child ref={targetedRefHere} />
72
+ * </ClickListener>
73
+ */
74
+
75
+ if (children.ref && typeof children.ref === 'function') {
76
+ children.ref(el);
98
77
  }
99
- }]);
78
+ }
79
+
80
+ render() {
81
+ return /*#__PURE__*/React__default["default"].cloneElement(this.props.children, {
82
+ ref: this.handleRef
83
+ });
84
+ }
100
85
 
101
- return ClickListener;
102
- }(React__default["default"].Component);
86
+ }
103
87
 
104
88
  _rollupPluginBabelHelpers.defineProperty(ClickListener, "propTypes", {
105
89
  children: PropTypes__default["default"].element.isRequired,
@@ -57,10 +57,10 @@ var window__default = /*#__PURE__*/_interopDefaultLegacy(window);
57
57
  * @property {string} position Position style (static, absolute, relative...)
58
58
  */
59
59
 
60
- var DIRECTION_LEFT = 'left';
61
- var DIRECTION_TOP = 'top';
62
- var DIRECTION_RIGHT = 'right';
63
- var DIRECTION_BOTTOM = 'bottom';
60
+ const DIRECTION_LEFT = 'left';
61
+ const DIRECTION_TOP = 'top';
62
+ const DIRECTION_RIGHT = 'right';
63
+ const DIRECTION_BOTTOM = 'bottom';
64
64
  /**
65
65
  * @param {FloatingMenu~offset} [oldMenuOffset={}] The old value.
66
66
  * @param {FloatingMenu~offset} [menuOffset={}] The new value.
@@ -68,11 +68,11 @@ var DIRECTION_BOTTOM = 'bottom';
68
68
  * @private
69
69
  */
70
70
 
71
- var hasChangeInOffset = function hasChangeInOffset() {
72
- var oldMenuOffset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
73
- var menuOffset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
71
+ const hasChangeInOffset = function () {
72
+ let oldMenuOffset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
73
+ let menuOffset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
74
74
 
75
- if (_rollupPluginBabelHelpers["typeof"](oldMenuOffset) !== _rollupPluginBabelHelpers["typeof"](menuOffset)) {
75
+ if (typeof oldMenuOffset !== typeof menuOffset) {
76
76
  return true;
77
77
  }
78
78
 
@@ -96,64 +96,56 @@ var hasChangeInOffset = function hasChangeInOffset() {
96
96
  */
97
97
 
98
98
 
99
- var getFloatingPosition = function getFloatingPosition(_ref) {
100
- var _DIRECTION_LEFT$DIREC;
101
-
102
- var menuSize = _ref.menuSize,
103
- _ref$refPosition = _ref.refPosition,
104
- refPosition = _ref$refPosition === void 0 ? {} : _ref$refPosition,
105
- _ref$offset = _ref.offset,
106
- offset = _ref$offset === void 0 ? {} : _ref$offset,
107
- _ref$direction = _ref.direction,
108
- direction = _ref$direction === void 0 ? DIRECTION_BOTTOM : _ref$direction,
109
- _ref$scrollX = _ref.scrollX,
110
- pageXOffset = _ref$scrollX === void 0 ? 0 : _ref$scrollX,
111
- _ref$scrollY = _ref.scrollY,
112
- pageYOffset = _ref$scrollY === void 0 ? 0 : _ref$scrollY,
113
- container = _ref.container;
114
- var _refPosition$left = refPosition.left,
115
- refLeft = _refPosition$left === void 0 ? 0 : _refPosition$left,
116
- _refPosition$top = refPosition.top,
117
- refTop = _refPosition$top === void 0 ? 0 : _refPosition$top,
118
- _refPosition$right = refPosition.right,
119
- refRight = _refPosition$right === void 0 ? 0 : _refPosition$right,
120
- _refPosition$bottom = refPosition.bottom,
121
- refBottom = _refPosition$bottom === void 0 ? 0 : _refPosition$bottom;
122
- var scrollX = container.position !== 'static' ? 0 : pageXOffset;
123
- var scrollY = container.position !== 'static' ? 0 : pageYOffset;
124
- var relativeDiff = {
99
+ const getFloatingPosition = _ref => {
100
+ let {
101
+ menuSize,
102
+ refPosition = {},
103
+ offset = {},
104
+ direction = DIRECTION_BOTTOM,
105
+ scrollX: pageXOffset = 0,
106
+ scrollY: pageYOffset = 0,
107
+ container
108
+ } = _ref;
109
+ const {
110
+ left: refLeft = 0,
111
+ top: refTop = 0,
112
+ right: refRight = 0,
113
+ bottom: refBottom = 0
114
+ } = refPosition;
115
+ const scrollX = container.position !== 'static' ? 0 : pageXOffset;
116
+ const scrollY = container.position !== 'static' ? 0 : pageYOffset;
117
+ const relativeDiff = {
125
118
  top: container.position !== 'static' ? container.rect.top : 0,
126
119
  left: container.position !== 'static' ? container.rect.left : 0
127
120
  };
128
- var width = menuSize.width,
129
- height = menuSize.height;
130
- var _offset$top = offset.top,
131
- top = _offset$top === void 0 ? 0 : _offset$top,
132
- _offset$left = offset.left,
133
- left = _offset$left === void 0 ? 0 : _offset$left;
134
- var refCenterHorizontal = (refLeft + refRight) / 2;
135
- var refCenterVertical = (refTop + refBottom) / 2;
136
- return (_DIRECTION_LEFT$DIREC = {}, _rollupPluginBabelHelpers.defineProperty(_DIRECTION_LEFT$DIREC, DIRECTION_LEFT, function () {
137
- return {
121
+ const {
122
+ width,
123
+ height
124
+ } = menuSize;
125
+ const {
126
+ top = 0,
127
+ left = 0
128
+ } = offset;
129
+ const refCenterHorizontal = (refLeft + refRight) / 2;
130
+ const refCenterVertical = (refTop + refBottom) / 2;
131
+ return {
132
+ [DIRECTION_LEFT]: () => ({
138
133
  left: refLeft - width + scrollX - left - relativeDiff.left,
139
134
  top: refCenterVertical - height / 2 + scrollY + top - 9 - relativeDiff.top
140
- };
141
- }), _rollupPluginBabelHelpers.defineProperty(_DIRECTION_LEFT$DIREC, DIRECTION_TOP, function () {
142
- return {
135
+ }),
136
+ [DIRECTION_TOP]: () => ({
143
137
  left: refCenterHorizontal - width / 2 + scrollX + left - relativeDiff.left,
144
138
  top: refTop - height + scrollY - top - relativeDiff.top
145
- };
146
- }), _rollupPluginBabelHelpers.defineProperty(_DIRECTION_LEFT$DIREC, DIRECTION_RIGHT, function () {
147
- return {
139
+ }),
140
+ [DIRECTION_RIGHT]: () => ({
148
141
  left: refRight + scrollX + left - relativeDiff.left,
149
142
  top: refCenterVertical - height / 2 + scrollY + top + 3 - relativeDiff.top
150
- };
151
- }), _rollupPluginBabelHelpers.defineProperty(_DIRECTION_LEFT$DIREC, DIRECTION_BOTTOM, function () {
152
- return {
143
+ }),
144
+ [DIRECTION_BOTTOM]: () => ({
153
145
  left: refCenterHorizontal - width / 2 + scrollX + left - relativeDiff.left,
154
146
  top: refBottom + scrollY + top - relativeDiff.top
155
- };
156
- }), _DIRECTION_LEFT$DIREC)[direction]();
147
+ })
148
+ }[direction]();
157
149
  };
158
150
  /**
159
151
  * A menu that is detached from the triggering element.
@@ -161,25 +153,16 @@ var getFloatingPosition = function getFloatingPosition(_ref) {
161
153
  */
162
154
 
163
155
 
164
- var FloatingMenu = /*#__PURE__*/function (_React$Component) {
165
- _rollupPluginBabelHelpers.inherits(FloatingMenu, _React$Component);
166
-
167
- var _super = _rollupPluginBabelHelpers.createSuper(FloatingMenu);
168
-
169
- function FloatingMenu() {
156
+ class FloatingMenu extends React__default["default"].Component {
157
+ constructor() {
170
158
  var _this;
171
159
 
172
- _rollupPluginBabelHelpers.classCallCheck(this, FloatingMenu);
173
-
174
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
175
- args[_key] = arguments[_key];
176
- }
160
+ super(...arguments);
161
+ _this = this;
177
162
 
178
- _this = _super.call.apply(_super, [this].concat(args));
163
+ _rollupPluginBabelHelpers.defineProperty(this, "_placeInProgress", false);
179
164
 
180
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_placeInProgress", false);
181
-
182
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "state", {
165
+ _rollupPluginBabelHelpers.defineProperty(this, "state", {
183
166
  /**
184
167
  * The position of the menu, relative to the top-left corner of the viewport.
185
168
  * @type {FloatingMenu~offset}
@@ -187,49 +170,53 @@ var FloatingMenu = /*#__PURE__*/function (_React$Component) {
187
170
  floatingPosition: undefined
188
171
  });
189
172
 
190
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_menuContainer", null);
173
+ _rollupPluginBabelHelpers.defineProperty(this, "_menuContainer", null);
191
174
 
192
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_menuBody", null);
175
+ _rollupPluginBabelHelpers.defineProperty(this, "_menuBody", null);
193
176
 
194
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "startSentinel", /*#__PURE__*/React__default["default"].createRef());
177
+ _rollupPluginBabelHelpers.defineProperty(this, "startSentinel", /*#__PURE__*/React__default["default"].createRef());
195
178
 
196
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "endSentinel", /*#__PURE__*/React__default["default"].createRef());
179
+ _rollupPluginBabelHelpers.defineProperty(this, "endSentinel", /*#__PURE__*/React__default["default"].createRef());
197
180
 
198
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_updateMenuSize", function () {
199
- var prevProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
200
- var isAdjustment = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
201
- var menuBody = _this._menuBody;
181
+ _rollupPluginBabelHelpers.defineProperty(this, "_updateMenuSize", function () {
182
+ let prevProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
183
+ let isAdjustment = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
184
+ const menuBody = _this._menuBody;
202
185
  process.env.NODE_ENV !== "production" ? warning.warning(menuBody, 'The DOM node for menu body for calculating its position is not available. Skipping...') : void 0;
203
186
 
204
187
  if (!menuBody) {
205
188
  return;
206
189
  }
207
190
 
208
- var _prevProps$menuOffset = prevProps.menuOffset,
209
- oldMenuOffset = _prevProps$menuOffset === void 0 ? {} : _prevProps$menuOffset,
210
- oldMenuDirection = prevProps.menuDirection;
211
- var _this$props = _this.props,
212
- _this$props$menuOffse = _this$props.menuOffset,
213
- menuOffset = _this$props$menuOffse === void 0 ? {} : _this$props$menuOffse,
214
- menuDirection = _this$props.menuDirection;
191
+ const {
192
+ menuOffset: oldMenuOffset = {},
193
+ menuDirection: oldMenuDirection
194
+ } = prevProps;
195
+ const {
196
+ menuOffset = {},
197
+ menuDirection
198
+ } = _this.props;
215
199
 
216
200
  if (hasChangeInOffset(oldMenuOffset, menuOffset) || oldMenuDirection !== menuDirection || isAdjustment) {
217
- var _this$props2 = _this.props,
218
- flipped = _this$props2.flipped,
219
- triggerRef = _this$props2.triggerRef,
220
- updateOrientation = _this$props2.updateOrientation;
221
- var triggerEl = triggerRef.current;
222
- var menuSize = menuBody.getBoundingClientRect();
223
- var refPosition = triggerEl && triggerEl.getBoundingClientRect();
224
- var offset = typeof menuOffset !== 'function' ? menuOffset : menuOffset(menuBody, menuDirection, triggerEl, flipped); // Optional function to allow parent component to check
201
+ const {
202
+ flipped,
203
+ triggerRef,
204
+ updateOrientation
205
+ } = _this.props;
206
+ const {
207
+ current: triggerEl
208
+ } = triggerRef;
209
+ const menuSize = menuBody.getBoundingClientRect();
210
+ const refPosition = triggerEl && triggerEl.getBoundingClientRect();
211
+ const offset = typeof menuOffset !== 'function' ? menuOffset : menuOffset(menuBody, menuDirection, triggerEl, flipped); // Optional function to allow parent component to check
225
212
  // if the orientation needs to be changed based on params
226
213
 
227
214
  if (updateOrientation) {
228
215
  updateOrientation({
229
- menuSize: menuSize,
230
- refPosition: refPosition,
216
+ menuSize,
217
+ refPosition,
231
218
  direction: menuDirection,
232
- offset: offset,
219
+ offset,
233
220
  scrollX: window__default["default"].pageXOffset,
234
221
  scrollY: window__default["default"].pageYOffset,
235
222
  container: {
@@ -245,10 +232,10 @@ var FloatingMenu = /*#__PURE__*/function (_React$Component) {
245
232
  if (menuSize.width > 0 && menuSize.height > 0 || !offset) {
246
233
  _this.setState({
247
234
  floatingPosition: getFloatingPosition({
248
- menuSize: menuSize,
249
- refPosition: refPosition,
235
+ menuSize,
236
+ refPosition,
250
237
  direction: menuDirection,
251
- offset: offset,
238
+ offset,
252
239
  scrollX: window__default["default"].pageXOffset,
253
240
  scrollY: window__default["default"].pageYOffset,
254
241
  container: {
@@ -256,9 +243,9 @@ var FloatingMenu = /*#__PURE__*/function (_React$Component) {
256
243
  position: getComputedStyle(_this.props.target()).position
257
244
  }
258
245
  })
259
- }, function () {
246
+ }, () => {
260
247
  if (!isAdjustment) {
261
- var newMenuSize = menuBody.getBoundingClientRect();
248
+ const newMenuSize = menuBody.getBoundingClientRect();
262
249
 
263
250
  if (newMenuSize !== menuSize) {
264
251
  _this._updateMenuSize(_this.props, true);
@@ -269,11 +256,11 @@ var FloatingMenu = /*#__PURE__*/function (_React$Component) {
269
256
  }
270
257
  });
271
258
 
272
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_focusMenuContent", function (menuBody) {
273
- var primaryFocusNode = menuBody.querySelector(_this.props.selectorPrimaryFocus || null);
274
- var tabbableNode = menuBody.querySelector(navigation.selectorTabbable);
275
- var focusableNode = menuBody.querySelector(navigation.selectorFocusable);
276
- var focusTarget = primaryFocusNode || // User defined focusable node
259
+ _rollupPluginBabelHelpers.defineProperty(this, "_focusMenuContent", menuBody => {
260
+ const primaryFocusNode = menuBody.querySelector(this.props.selectorPrimaryFocus || null);
261
+ const tabbableNode = menuBody.querySelector(navigation.selectorTabbable);
262
+ const focusableNode = menuBody.querySelector(navigation.selectorFocusable);
263
+ const focusTarget = primaryFocusNode || // User defined focusable node
277
264
  tabbableNode || // First sequentially focusable node
278
265
  focusableNode || // First programmatic focusable node
279
266
  menuBody;
@@ -284,133 +271,139 @@ var FloatingMenu = /*#__PURE__*/function (_React$Component) {
284
271
  }
285
272
  });
286
273
 
287
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_menuRef", function (menuBody) {
288
- var menuRef = _this.props.menuRef;
289
- _this._placeInProgress = !!menuBody;
290
- menuRef && menuRef(_this._menuBody = menuBody);
274
+ _rollupPluginBabelHelpers.defineProperty(this, "_menuRef", menuBody => {
275
+ const {
276
+ menuRef
277
+ } = this.props;
278
+ this._placeInProgress = !!menuBody;
279
+ menuRef && menuRef(this._menuBody = menuBody);
291
280
 
292
281
  if (menuBody) {
293
- _this._updateMenuSize();
282
+ this._updateMenuSize();
294
283
  }
295
284
  });
296
285
 
297
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "_getChildrenWithProps", function () {
298
- var _this$props3 = _this.props,
299
- styles = _this$props3.styles,
300
- children = _this$props3.children;
301
- var pos = _this.state.floatingPosition; // If no pos available, we need to hide the element (offscreen to the left)
286
+ _rollupPluginBabelHelpers.defineProperty(this, "_getChildrenWithProps", () => {
287
+ const {
288
+ styles,
289
+ children
290
+ } = this.props;
291
+ const {
292
+ floatingPosition: pos
293
+ } = this.state; // If no pos available, we need to hide the element (offscreen to the left)
302
294
  // This is done so we can measure the content before positioning it correctly.
303
295
 
304
- var positioningStyle = pos ? {
305
- left: "".concat(pos.left, "px"),
306
- top: "".concat(pos.top, "px"),
296
+ const positioningStyle = pos ? {
297
+ left: `${pos.left}px`,
298
+ top: `${pos.top}px`,
307
299
  right: 'auto'
308
300
  } : {
309
301
  visibility: 'hidden',
310
302
  top: '0px'
311
303
  };
312
304
  return /*#__PURE__*/React__default["default"].cloneElement(children, {
313
- ref: _this._menuRef,
314
- style: _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, styles), positioningStyle), {}, {
305
+ ref: this._menuRef,
306
+ style: { ...styles,
307
+ ...positioningStyle,
315
308
  position: 'absolute',
316
309
  opacity: 1
317
- })
310
+ }
318
311
  });
319
312
  });
320
313
 
321
- _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.assertThisInitialized(_this), "handleBlur", function (_ref2) {
322
- var oldActiveNode = _ref2.target,
323
- currentActiveNode = _ref2.relatedTarget;
314
+ _rollupPluginBabelHelpers.defineProperty(this, "handleBlur", _ref2 => {
315
+ let {
316
+ target: oldActiveNode,
317
+ relatedTarget: currentActiveNode
318
+ } = _ref2;
324
319
 
325
320
  if (currentActiveNode && oldActiveNode) {
326
- var startSentinelNode = _this.startSentinel.current;
327
- var endSentinelNode = _this.endSentinel.current;
321
+ const {
322
+ current: startSentinelNode
323
+ } = this.startSentinel;
324
+ const {
325
+ current: endSentinelNode
326
+ } = this.endSentinel;
328
327
  wrapFocus["default"]({
329
- bodyNode: _this._menuBody,
330
- startSentinelNode: startSentinelNode,
331
- endSentinelNode: endSentinelNode,
332
- currentActiveNode: currentActiveNode,
333
- oldActiveNode: oldActiveNode
328
+ bodyNode: this._menuBody,
329
+ startSentinelNode,
330
+ endSentinelNode,
331
+ currentActiveNode,
332
+ oldActiveNode
334
333
  });
335
334
  }
336
335
  });
336
+ }
337
337
 
338
- return _this;
338
+ componentWillUnmount() {
339
+ this.hResize.release();
339
340
  }
340
341
 
341
- _rollupPluginBabelHelpers.createClass(FloatingMenu, [{
342
- key: "componentWillUnmount",
343
- value: function componentWillUnmount() {
344
- this.hResize.release();
345
- }
346
- }, {
347
- key: "componentDidMount",
348
- value: function componentDidMount() {
349
- var _this2 = this;
342
+ componentDidMount() {
343
+ this.hResize = OptimizedResize["default"].add(() => {
344
+ this._updateMenuSize();
345
+ });
346
+ }
347
+ /**
348
+ * Set focus on floating menu content after menu placement.
349
+ * @param {Element} menuBody The DOM element of the menu body.
350
+ * @private
351
+ */
350
352
 
351
- this.hResize = OptimizedResize["default"].add(function () {
352
- _this2._updateMenuSize();
353
- });
354
- }
355
- /**
356
- * Set focus on floating menu content after menu placement.
357
- * @param {Element} menuBody The DOM element of the menu body.
358
- * @private
359
- */
360
-
361
- }, {
362
- key: "componentDidUpdate",
363
- value: function componentDidUpdate(prevProps) {
364
- this._updateMenuSize(prevProps);
365
-
366
- var onPlace = this.props.onPlace;
367
-
368
- if (this._placeInProgress && this.state.floatingPosition) {
369
- if (this._menuBody && !this._menuBody.contains(document.activeElement)) {
370
- this._focusMenuContent(this._menuBody);
371
- }
372
353
 
373
- if (typeof onPlace === 'function') {
374
- onPlace(this._menuBody);
375
- this._placeInProgress = false;
376
- }
354
+ componentDidUpdate(prevProps) {
355
+ this._updateMenuSize(prevProps);
356
+
357
+ const {
358
+ onPlace
359
+ } = this.props;
360
+
361
+ if (this._placeInProgress && this.state.floatingPosition) {
362
+ if (this._menuBody && !this._menuBody.contains(document.activeElement)) {
363
+ this._focusMenuContent(this._menuBody);
377
364
  }
378
- }
379
- /**
380
- * A callback for called when menu body is mounted or unmounted.
381
- * @param {Element} menuBody The menu body being mounted. `null` if the menu body is being unmounted.
382
- */
383
-
384
- }, {
385
- key: "render",
386
- value: function render() {
387
- var prefix = this.context;
388
-
389
- if (typeof document !== 'undefined') {
390
- var _this$props4 = this.props,
391
- focusTrap = _this$props4.focusTrap,
392
- target = _this$props4.target;
393
- return /*#__PURE__*/ReactDOM__default["default"].createPortal( /*#__PURE__*/React__default["default"].createElement("div", {
394
- onBlur: focusTrap ? this.handleBlur : null
395
- }, /*#__PURE__*/React__default["default"].createElement("span", {
396
- ref: this.startSentinel,
397
- tabIndex: "0",
398
- role: "link",
399
- className: "".concat(prefix, "--visually-hidden")
400
- }, "Focus sentinel"), this._getChildrenWithProps(), /*#__PURE__*/React__default["default"].createElement("span", {
401
- ref: this.endSentinel,
402
- tabIndex: "0",
403
- role: "link",
404
- className: "".concat(prefix, "--visually-hidden")
405
- }, "Focus sentinel")), !target ? document.body : target());
365
+
366
+ if (typeof onPlace === 'function') {
367
+ onPlace(this._menuBody);
368
+ this._placeInProgress = false;
406
369
  }
370
+ }
371
+ }
372
+ /**
373
+ * A callback for called when menu body is mounted or unmounted.
374
+ * @param {Element} menuBody The menu body being mounted. `null` if the menu body is being unmounted.
375
+ */
407
376
 
408
- return null;
377
+
378
+ render() {
379
+ const {
380
+ context: prefix
381
+ } = this;
382
+
383
+ if (typeof document !== 'undefined') {
384
+ const {
385
+ focusTrap,
386
+ target
387
+ } = this.props;
388
+ return /*#__PURE__*/ReactDOM__default["default"].createPortal( /*#__PURE__*/React__default["default"].createElement("div", {
389
+ onBlur: focusTrap ? this.handleBlur : null
390
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
391
+ ref: this.startSentinel,
392
+ tabIndex: "0",
393
+ role: "link",
394
+ className: `${prefix}--visually-hidden`
395
+ }, "Focus sentinel"), this._getChildrenWithProps(), /*#__PURE__*/React__default["default"].createElement("span", {
396
+ ref: this.endSentinel,
397
+ tabIndex: "0",
398
+ role: "link",
399
+ className: `${prefix}--visually-hidden`
400
+ }, "Focus sentinel")), !target ? document.body : target());
409
401
  }
410
- }]);
411
402
 
412
- return FloatingMenu;
413
- }(React__default["default"].Component);
403
+ return null;
404
+ }
405
+
406
+ }
414
407
 
415
408
  _rollupPluginBabelHelpers.defineProperty(FloatingMenu, "contextType", usePrefix.PrefixContext);
416
409