@carbon/react 1.27.0 → 1.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/es/_virtual/_rollupPluginBabelHelpers.js +1 -313
  2. package/es/components/Accordion/Accordion.Skeleton.js +28 -30
  3. package/es/components/Accordion/Accordion.js +18 -21
  4. package/es/components/Accordion/AccordionItem.js +37 -49
  5. package/es/components/AspectRatio/AspectRatio.js +10 -12
  6. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +10 -11
  7. package/es/components/Breadcrumb/Breadcrumb.js +14 -13
  8. package/es/components/Breadcrumb/BreadcrumbItem.js +24 -22
  9. package/es/components/Button/Button.Skeleton.js +25 -23
  10. package/es/components/Button/Button.js +77 -72
  11. package/es/components/ButtonSet/ButtonSet.js +12 -10
  12. package/es/components/Checkbox/Checkbox.Skeleton.js +10 -11
  13. package/es/components/Checkbox/Checkbox.js +55 -52
  14. package/es/components/CheckboxGroup/CheckboxGroup.js +33 -31
  15. package/es/components/ClassPrefix/index.js +4 -2
  16. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +15 -14
  17. package/es/components/CodeSnippet/CodeSnippet.js +199 -102
  18. package/es/components/ComboBox/ComboBox.js +349 -178
  19. package/es/components/ComboBox/tools/filter.js +6 -4
  20. package/es/components/ComboButton/index.js +38 -43
  21. package/es/components/ComposedModal/ComposedModal.js +187 -85
  22. package/es/components/ComposedModal/ModalFooter.js +54 -49
  23. package/es/components/ComposedModal/ModalHeader.js +39 -26
  24. package/es/components/ContainedList/ContainedList.js +66 -20
  25. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  26. package/es/components/ContentSwitcher/ContentSwitcher.js +83 -98
  27. package/es/components/ContentSwitcher/index.js +1 -1
  28. package/es/components/ContextMenu/useContextMenu.js +12 -21
  29. package/es/components/Copy/Copy.js +24 -29
  30. package/es/components/CopyButton/CopyButton.js +10 -10
  31. package/es/components/DangerButton/DangerButton.js +3 -5
  32. package/es/components/DataTable/DataTable.js +333 -359
  33. package/es/components/DataTable/Table.js +29 -26
  34. package/es/components/DataTable/TableActionList.js +2 -4
  35. package/es/components/DataTable/TableBatchAction.js +2 -4
  36. package/es/components/DataTable/TableBatchActions.js +29 -30
  37. package/es/components/DataTable/TableBody.js +7 -8
  38. package/es/components/DataTable/TableCell.js +1 -1
  39. package/es/components/DataTable/TableContainer.js +23 -23
  40. package/es/components/DataTable/TableContext.js +1 -1
  41. package/es/components/DataTable/TableExpandHeader.js +19 -21
  42. package/es/components/DataTable/TableExpandRow.js +23 -23
  43. package/es/components/DataTable/TableExpandedRow.js +18 -23
  44. package/es/components/DataTable/TableHead.js +1 -1
  45. package/es/components/DataTable/TableHeader.js +45 -41
  46. package/es/components/DataTable/TableRow.js +7 -8
  47. package/es/components/DataTable/TableSelectAll.js +13 -11
  48. package/es/components/DataTable/TableSelectRow.js +29 -21
  49. package/es/components/DataTable/TableToolbar.js +19 -14
  50. package/es/components/DataTable/TableToolbarAction.js +6 -6
  51. package/es/components/DataTable/TableToolbarContent.js +2 -4
  52. package/es/components/DataTable/TableToolbarMenu.js +11 -12
  53. package/es/components/DataTable/TableToolbarSearch.js +52 -71
  54. package/es/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  55. package/es/components/DataTable/state/sortStates.js +1 -1
  56. package/es/components/DataTable/state/sorting.js +28 -20
  57. package/es/components/DataTable/tools/cells.js +1 -3
  58. package/es/components/DataTable/tools/denormalize.js +4 -17
  59. package/es/components/DataTable/tools/filter.js +18 -16
  60. package/es/components/DataTable/tools/instanceId.js +2 -2
  61. package/es/components/DataTable/tools/normalize.js +28 -25
  62. package/es/components/DataTable/tools/sorting.js +28 -25
  63. package/es/components/DataTableSkeleton/DataTableSkeleton.js +36 -38
  64. package/es/components/DatePicker/DatePicker.Skeleton.d.ts +30 -0
  65. package/es/components/DatePicker/DatePicker.Skeleton.js +18 -20
  66. package/es/components/DatePicker/DatePicker.d.ts +131 -0
  67. package/es/components/DatePicker/DatePicker.js +215 -200
  68. package/es/components/DatePicker/index.d.ts +10 -0
  69. package/es/components/DatePicker/index.js +1 -0
  70. package/es/components/DatePicker/plugins/appendToPlugin.js +45 -43
  71. package/es/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  72. package/es/components/DatePicker/plugins/rangePlugin.js +19 -11
  73. package/es/components/DatePickerInput/DatePickerInput.d.ts +93 -0
  74. package/es/components/DatePickerInput/DatePickerInput.js +83 -74
  75. package/es/components/Dropdown/Dropdown.Skeleton.js +13 -12
  76. package/es/components/Dropdown/Dropdown.js +266 -109
  77. package/es/components/ErrorBoundary/ErrorBoundary.js +27 -48
  78. package/es/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  79. package/es/components/ExpandableSearch/ExpandableSearch.d.ts +14 -0
  80. package/es/components/ExpandableSearch/ExpandableSearch.js +19 -25
  81. package/es/components/FeatureFlags/index.js +25 -43
  82. package/es/components/FileUploader/FileUploader.Skeleton.js +8 -9
  83. package/es/components/FileUploader/FileUploader.js +120 -147
  84. package/es/components/FileUploader/FileUploaderButton.js +36 -48
  85. package/es/components/FileUploader/FileUploaderDropContainer.js +49 -53
  86. package/es/components/FileUploader/FileUploaderItem.js +30 -30
  87. package/es/components/FileUploader/Filename.js +13 -14
  88. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +11 -12
  89. package/es/components/FluidComboBox/FluidComboBox.js +11 -9
  90. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +18 -18
  91. package/es/components/FluidDatePicker/FluidDatePicker.js +20 -16
  92. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  93. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +11 -12
  94. package/es/components/FluidDropdown/FluidDropdown.js +11 -9
  95. package/es/components/FluidForm/FluidForm.js +9 -10
  96. package/es/components/FluidForm/FormContext.js +1 -1
  97. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +11 -12
  98. package/es/components/FluidMultiSelect/FluidMultiSelect.js +12 -10
  99. package/es/components/FluidSelect/FluidSelect.Skeleton.js +11 -12
  100. package/es/components/FluidSelect/FluidSelect.js +9 -9
  101. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
  102. package/es/components/FluidTextArea/FluidTextArea.js +7 -8
  103. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
  104. package/es/components/FluidTextInput/FluidTextInput.js +10 -9
  105. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +11 -10
  106. package/es/components/FluidTimePicker/FluidTimePicker.js +30 -26
  107. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -7
  108. package/es/components/Form/Form.js +9 -10
  109. package/es/components/FormGroup/FormGroup.js +16 -17
  110. package/es/components/FormItem/FormItem.js +8 -9
  111. package/es/components/FormLabel/FormLabel.js +11 -10
  112. package/es/components/Grid/CSSGrid.js +38 -39
  113. package/es/components/Grid/Column.js +86 -79
  114. package/es/components/Grid/ColumnHang.js +12 -14
  115. package/es/components/Grid/FlexGrid.js +19 -21
  116. package/es/components/Grid/Grid.js +2 -2
  117. package/es/components/Grid/GridContext.js +12 -11
  118. package/es/components/Grid/Row.js +16 -18
  119. package/es/components/Heading/index.js +11 -13
  120. package/es/components/Icon/Icon.Skeleton.js +10 -12
  121. package/es/components/IconButton/index.js +19 -22
  122. package/es/components/IdPrefix/index.js +4 -2
  123. package/es/components/InlineCheckbox/InlineCheckbox.js +89 -36
  124. package/es/components/InlineLoading/InlineLoading.js +23 -25
  125. package/es/components/Layer/LayerContext.js +1 -1
  126. package/es/components/Layer/index.js +17 -18
  127. package/es/components/Layout/LayoutDirection.js +8 -10
  128. package/es/components/Layout/LayoutDirectionContext.js +1 -1
  129. package/es/components/Link/Link.js +25 -25
  130. package/es/components/ListBox/ListBox.js +38 -31
  131. package/es/components/ListBox/ListBoxField.js +9 -10
  132. package/es/components/ListBox/ListBoxMenu.js +9 -10
  133. package/es/components/ListBox/ListBoxMenuIcon.js +16 -14
  134. package/es/components/ListBox/ListBoxMenuItem.js +23 -26
  135. package/es/components/ListBox/ListBoxPropTypes.js +4 -4
  136. package/es/components/ListBox/ListBoxSelection.js +30 -25
  137. package/es/components/ListBox/index.js +1 -1
  138. package/es/components/ListBox/next/ListBoxSelection.js +27 -24
  139. package/es/components/ListBox/next/ListBoxTrigger.js +20 -19
  140. package/es/components/ListItem/ListItem.js +9 -10
  141. package/es/components/Loading/Loading.js +24 -24
  142. package/es/components/Menu/Menu.js +67 -80
  143. package/es/components/Menu/MenuContext.js +9 -12
  144. package/es/components/Menu/MenuItem.js +104 -128
  145. package/es/components/MenuButton/index.js +37 -41
  146. package/es/components/Modal/Modal.js +281 -120
  147. package/es/components/ModalWrapper/ModalWrapper.js +72 -96
  148. package/es/components/MultiSelect/FilterableMultiSelect.js +299 -163
  149. package/es/components/MultiSelect/MultiSelect.js +162 -174
  150. package/es/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  151. package/es/components/MultiSelect/tools/itemToString.js +3 -4
  152. package/es/components/MultiSelect/tools/sorting.js +15 -13
  153. package/es/components/Notification/Notification.js +436 -164
  154. package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
  155. package/es/components/NumberInput/NumberInput.js +140 -139
  156. package/es/components/OrderedList/OrderedList.js +17 -15
  157. package/es/components/OverflowMenu/OverflowMenu.js +360 -227
  158. package/es/components/OverflowMenu/index.js +1 -1
  159. package/es/components/OverflowMenuItem/OverflowMenuItem.js +32 -37
  160. package/es/components/OverflowMenuV2/index.js +26 -28
  161. package/es/components/Pagination/Pagination.Skeleton.js +9 -10
  162. package/es/components/Pagination/Pagination.js +98 -140
  163. package/es/components/Pagination/experimental/PageSelector.js +16 -16
  164. package/es/components/Pagination/experimental/Pagination.js +73 -94
  165. package/es/components/PaginationNav/PaginationNav.js +98 -117
  166. package/es/components/Popover/index.js +74 -80
  167. package/es/components/PrimaryButton/PrimaryButton.js +3 -5
  168. package/es/components/ProgressBar/ProgressBar.js +39 -37
  169. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +15 -14
  170. package/es/components/ProgressIndicator/ProgressIndicator.js +71 -71
  171. package/es/components/RadioButton/RadioButton.Skeleton.js +9 -10
  172. package/es/components/RadioButton/RadioButton.js +27 -27
  173. package/es/components/RadioButtonGroup/RadioButtonGroup.js +55 -65
  174. package/es/components/RadioTile/RadioTile.js +27 -25
  175. package/es/components/Search/Search.Skeleton.js +16 -16
  176. package/es/components/Search/Search.d.ts +83 -0
  177. package/es/components/Search/Search.js +65 -72
  178. package/es/components/Search/index.d.ts +11 -0
  179. package/es/components/SecondaryButton/SecondaryButton.js +3 -5
  180. package/es/components/Select/Select.Skeleton.js +12 -13
  181. package/es/components/Select/Select.js +79 -73
  182. package/es/components/SelectItem/SelectItem.js +17 -13
  183. package/es/components/SelectItemGroup/SelectItemGroup.js +11 -12
  184. package/es/components/SkeletonIcon/SkeletonIcon.js +11 -11
  185. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +11 -11
  186. package/es/components/SkeletonText/SkeletonText.js +29 -29
  187. package/es/components/Slider/Slider.Skeleton.js +17 -18
  188. package/es/components/Slider/Slider.js +306 -329
  189. package/es/components/Slider/index.js +1 -1
  190. package/es/components/Stack/Stack.js +19 -20
  191. package/es/components/Stack/index.js +2 -2
  192. package/es/components/StructuredList/StructuredList.Skeleton.js +25 -24
  193. package/es/components/StructuredList/StructuredList.js +134 -106
  194. package/es/components/Switch/IconSwitch.js +48 -54
  195. package/es/components/Switch/Switch.js +33 -31
  196. package/es/components/Tab/Tab.js +77 -83
  197. package/es/components/Tab/index.js +1 -1
  198. package/es/components/TabContent/TabContent.js +16 -18
  199. package/es/components/Tabs/Tabs.Skeleton.js +14 -13
  200. package/es/components/Tabs/Tabs.js +195 -206
  201. package/es/components/Tabs/usePressable.js +27 -36
  202. package/es/components/Tag/Tag.Skeleton.js +10 -9
  203. package/es/components/Tag/Tag.js +34 -31
  204. package/es/components/Text/Text.js +20 -20
  205. package/es/components/Text/TextDirection.js +8 -7
  206. package/es/components/Text/TextDirectionContext.js +1 -1
  207. package/es/components/Text/index.js +1 -1
  208. package/es/components/TextArea/TextArea.Skeleton.js +11 -12
  209. package/es/components/TextArea/TextArea.js +89 -83
  210. package/es/components/TextInput/ControlledPasswordInput.js +79 -73
  211. package/es/components/TextInput/PasswordInput.js +101 -91
  212. package/es/components/TextInput/TextInput.Skeleton.js +11 -12
  213. package/es/components/TextInput/TextInput.js +104 -92
  214. package/es/components/TextInput/util.js +26 -28
  215. package/es/components/Theme/index.js +25 -20
  216. package/es/components/Tile/Tile.js +135 -176
  217. package/es/components/TileGroup/TileGroup.js +55 -70
  218. package/es/components/TileGroup/index.js +1 -1
  219. package/es/components/TimePicker/TimePicker.js +60 -67
  220. package/es/components/TimePickerSelect/TimePickerSelect.js +20 -18
  221. package/es/components/TimePickerSelect/index.js +1 -1
  222. package/es/components/Toggle/Toggle.Skeleton.js +63 -52
  223. package/es/components/Toggle/Toggle.js +44 -48
  224. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +56 -50
  225. package/es/components/Toggletip/index.js +52 -48
  226. package/es/components/Tooltip/DefinitionTooltip.js +24 -31
  227. package/es/components/Tooltip/Tooltip.js +35 -50
  228. package/es/components/TreeView/TreeNode.js +94 -74
  229. package/es/components/TreeView/TreeView.js +72 -83
  230. package/es/components/UIShell/Content.js +12 -14
  231. package/es/components/UIShell/Header.js +16 -12
  232. package/es/components/UIShell/HeaderContainer.js +8 -14
  233. package/es/components/UIShell/HeaderGlobalAction.js +26 -19
  234. package/es/components/UIShell/HeaderGlobalBar.js +1 -3
  235. package/es/components/UIShell/HeaderMenu.js +114 -129
  236. package/es/components/UIShell/HeaderMenuButton.js +31 -22
  237. package/es/components/UIShell/HeaderMenuItem.js +28 -20
  238. package/es/components/UIShell/HeaderName.js +19 -14
  239. package/es/components/UIShell/HeaderNavigation.js +19 -15
  240. package/es/components/UIShell/HeaderPanel.js +23 -17
  241. package/es/components/UIShell/HeaderSideNavItems.js +11 -9
  242. package/es/components/UIShell/Link.js +11 -11
  243. package/es/components/UIShell/SideNav.js +66 -62
  244. package/es/components/UIShell/SideNavDetails.js +11 -12
  245. package/es/components/UIShell/SideNavDivider.js +5 -3
  246. package/es/components/UIShell/SideNavFooter.js +13 -12
  247. package/es/components/UIShell/SideNavHeader.js +9 -6
  248. package/es/components/UIShell/SideNavIcon.js +11 -8
  249. package/es/components/UIShell/SideNavItem.js +11 -9
  250. package/es/components/UIShell/SideNavItems.js +14 -11
  251. package/es/components/UIShell/SideNavLink.js +19 -17
  252. package/es/components/UIShell/SideNavLinkText.js +8 -9
  253. package/es/components/UIShell/SideNavMenu.js +29 -35
  254. package/es/components/UIShell/SideNavMenuItem.js +14 -14
  255. package/es/components/UIShell/SideNavSwitcher.js +19 -19
  256. package/es/components/UIShell/SkipToContent.js +10 -11
  257. package/es/components/UIShell/Switcher.js +20 -11
  258. package/es/components/UIShell/SwitcherDivider.js +10 -9
  259. package/es/components/UIShell/SwitcherItem.js +26 -19
  260. package/es/components/UIShell/_utils.js +1 -1
  261. package/es/components/UnorderedList/UnorderedList.js +14 -14
  262. package/es/index.js +7 -7
  263. package/es/internal/ClickListener.js +49 -65
  264. package/es/internal/FloatingMenu.js +193 -200
  265. package/es/internal/OptimizedResize.js +9 -8
  266. package/es/internal/Selection.js +92 -111
  267. package/es/internal/createClassWrapper.js +2 -2
  268. package/es/internal/deprecateFieldOnObject.js +5 -3
  269. package/es/internal/environment.js +1 -1
  270. package/es/internal/focus/index.js +1 -1
  271. package/es/internal/keyboard/keys.js +11 -11
  272. package/es/internal/keyboard/match.js +7 -6
  273. package/es/internal/keyboard/navigation.js +15 -5
  274. package/es/internal/useAnnouncer.js +2 -2
  275. package/es/internal/useAttachedMenu.js +12 -20
  276. package/es/internal/useControllableState.js +11 -16
  277. package/es/internal/useDelayedState.js +9 -18
  278. package/es/internal/useEffectOnce.js +4 -4
  279. package/es/internal/useEvent.js +4 -4
  280. package/es/internal/useId.js +15 -19
  281. package/es/internal/useIdPrefix.js +1 -1
  282. package/es/internal/useIsomorphicEffect.js +1 -1
  283. package/es/internal/useMergedRefs.js +3 -3
  284. package/es/internal/useNoInteractiveChildren.js +8 -19
  285. package/es/internal/useNormalizedInputProps.js +16 -14
  286. package/es/internal/usePrefix.js +1 -1
  287. package/es/internal/useSavedCallback.js +3 -3
  288. package/es/internal/warning.js +4 -4
  289. package/es/internal/wrapFocus.js +16 -21
  290. package/es/prop-types/AriaPropTypes.js +1 -1
  291. package/es/prop-types/deprecate.js +6 -5
  292. package/es/prop-types/isRequiredOneOf.js +12 -25
  293. package/es/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  294. package/es/prop-types/types.js +1 -1
  295. package/es/tools/array.js +1 -1
  296. package/es/tools/events.js +21 -14
  297. package/es/tools/mergeRefs.js +3 -3
  298. package/es/tools/setupGetInstanceId.js +1 -1
  299. package/es/tools/uniqueId.js +3 -3
  300. package/es/tools/wrapComponent.js +14 -13
  301. package/lib/_virtual/_rollupPluginBabelHelpers.js +0 -336
  302. package/lib/components/Accordion/Accordion.Skeleton.js +27 -29
  303. package/lib/components/Accordion/Accordion.js +17 -20
  304. package/lib/components/Accordion/AccordionItem.js +36 -48
  305. package/lib/components/AspectRatio/AspectRatio.js +9 -11
  306. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
  307. package/lib/components/Breadcrumb/Breadcrumb.js +13 -12
  308. package/lib/components/Breadcrumb/BreadcrumbItem.js +23 -21
  309. package/lib/components/Button/Button.Skeleton.js +24 -22
  310. package/lib/components/Button/Button.js +76 -71
  311. package/lib/components/ButtonSet/ButtonSet.js +11 -9
  312. package/lib/components/Checkbox/Checkbox.Skeleton.js +9 -10
  313. package/lib/components/Checkbox/Checkbox.js +54 -51
  314. package/lib/components/CheckboxGroup/CheckboxGroup.js +32 -30
  315. package/lib/components/ClassPrefix/index.js +4 -2
  316. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +14 -13
  317. package/lib/components/CodeSnippet/CodeSnippet.js +198 -101
  318. package/lib/components/ComboBox/ComboBox.js +348 -177
  319. package/lib/components/ComboBox/tools/filter.js +6 -4
  320. package/lib/components/ComboButton/index.js +37 -42
  321. package/lib/components/ComposedModal/ComposedModal.js +187 -85
  322. package/lib/components/ComposedModal/ModalFooter.js +53 -48
  323. package/lib/components/ComposedModal/ModalHeader.js +38 -25
  324. package/lib/components/ContainedList/ContainedList.js +66 -20
  325. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +20 -18
  326. package/lib/components/ContentSwitcher/ContentSwitcher.js +82 -97
  327. package/lib/components/ContentSwitcher/index.js +1 -1
  328. package/lib/components/ContextMenu/useContextMenu.js +12 -21
  329. package/lib/components/Copy/Copy.js +23 -28
  330. package/lib/components/CopyButton/CopyButton.js +9 -9
  331. package/lib/components/DangerButton/DangerButton.js +3 -5
  332. package/lib/components/DataTable/DataTable.js +331 -357
  333. package/lib/components/DataTable/Table.js +28 -25
  334. package/lib/components/DataTable/TableActionList.js +2 -4
  335. package/lib/components/DataTable/TableBatchAction.js +2 -4
  336. package/lib/components/DataTable/TableBatchActions.js +28 -29
  337. package/lib/components/DataTable/TableBody.js +6 -7
  338. package/lib/components/DataTable/TableCell.js +1 -1
  339. package/lib/components/DataTable/TableContainer.js +22 -22
  340. package/lib/components/DataTable/TableContext.js +1 -1
  341. package/lib/components/DataTable/TableExpandHeader.js +18 -20
  342. package/lib/components/DataTable/TableExpandRow.js +22 -22
  343. package/lib/components/DataTable/TableExpandedRow.js +17 -22
  344. package/lib/components/DataTable/TableHead.js +1 -1
  345. package/lib/components/DataTable/TableHeader.js +43 -39
  346. package/lib/components/DataTable/TableRow.js +7 -8
  347. package/lib/components/DataTable/TableSelectAll.js +13 -11
  348. package/lib/components/DataTable/TableSelectRow.js +28 -20
  349. package/lib/components/DataTable/TableToolbar.js +18 -13
  350. package/lib/components/DataTable/TableToolbarAction.js +5 -5
  351. package/lib/components/DataTable/TableToolbarContent.js +2 -4
  352. package/lib/components/DataTable/TableToolbarMenu.js +10 -11
  353. package/lib/components/DataTable/TableToolbarSearch.js +51 -70
  354. package/lib/components/DataTable/state/getDerivedStateFromProps.js +15 -15
  355. package/lib/components/DataTable/state/sortStates.js +1 -1
  356. package/lib/components/DataTable/state/sorting.js +28 -20
  357. package/lib/components/DataTable/tools/cells.js +1 -3
  358. package/lib/components/DataTable/tools/denormalize.js +4 -17
  359. package/lib/components/DataTable/tools/filter.js +18 -16
  360. package/lib/components/DataTable/tools/instanceId.js +2 -2
  361. package/lib/components/DataTable/tools/normalize.js +28 -25
  362. package/lib/components/DataTable/tools/sorting.js +27 -24
  363. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +35 -37
  364. package/lib/components/DatePicker/DatePicker.Skeleton.d.ts +30 -0
  365. package/lib/components/DatePicker/DatePicker.Skeleton.js +17 -19
  366. package/lib/components/DatePicker/DatePicker.d.ts +131 -0
  367. package/lib/components/DatePicker/DatePicker.js +214 -199
  368. package/lib/components/DatePicker/index.d.ts +10 -0
  369. package/lib/components/DatePicker/index.js +2 -0
  370. package/lib/components/DatePicker/plugins/appendToPlugin.js +45 -43
  371. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +117 -107
  372. package/lib/components/DatePicker/plugins/rangePlugin.js +19 -11
  373. package/lib/components/DatePickerInput/DatePickerInput.d.ts +93 -0
  374. package/lib/components/DatePickerInput/DatePickerInput.js +83 -74
  375. package/lib/components/Dropdown/Dropdown.Skeleton.js +12 -11
  376. package/lib/components/Dropdown/Dropdown.js +265 -108
  377. package/lib/components/ErrorBoundary/ErrorBoundary.js +27 -48
  378. package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +3 -2
  379. package/lib/components/ExpandableSearch/ExpandableSearch.d.ts +14 -0
  380. package/lib/components/ExpandableSearch/ExpandableSearch.js +18 -24
  381. package/lib/components/FeatureFlags/index.js +25 -43
  382. package/lib/components/FileUploader/FileUploader.Skeleton.js +7 -8
  383. package/lib/components/FileUploader/FileUploader.js +119 -146
  384. package/lib/components/FileUploader/FileUploaderButton.js +35 -47
  385. package/lib/components/FileUploader/FileUploaderDropContainer.js +48 -52
  386. package/lib/components/FileUploader/FileUploaderItem.js +29 -29
  387. package/lib/components/FileUploader/Filename.js +12 -13
  388. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +10 -11
  389. package/lib/components/FluidComboBox/FluidComboBox.js +10 -8
  390. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +17 -17
  391. package/lib/components/FluidDatePicker/FluidDatePicker.js +19 -15
  392. package/lib/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  393. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +10 -11
  394. package/lib/components/FluidDropdown/FluidDropdown.js +10 -8
  395. package/lib/components/FluidForm/FluidForm.js +8 -9
  396. package/lib/components/FluidForm/FormContext.js +1 -1
  397. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +10 -11
  398. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +11 -9
  399. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +10 -11
  400. package/lib/components/FluidSelect/FluidSelect.js +8 -8
  401. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +8 -9
  402. package/lib/components/FluidTextArea/FluidTextArea.js +6 -7
  403. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +8 -9
  404. package/lib/components/FluidTextInput/FluidTextInput.js +9 -8
  405. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +10 -9
  406. package/lib/components/FluidTimePicker/FluidTimePicker.js +30 -26
  407. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +6 -6
  408. package/lib/components/Form/Form.js +8 -9
  409. package/lib/components/FormGroup/FormGroup.js +15 -16
  410. package/lib/components/FormItem/FormItem.js +7 -8
  411. package/lib/components/FormLabel/FormLabel.js +10 -9
  412. package/lib/components/Grid/CSSGrid.js +37 -38
  413. package/lib/components/Grid/Column.js +85 -78
  414. package/lib/components/Grid/ColumnHang.js +11 -13
  415. package/lib/components/Grid/FlexGrid.js +19 -21
  416. package/lib/components/Grid/Grid.js +2 -2
  417. package/lib/components/Grid/GridContext.js +12 -11
  418. package/lib/components/Grid/Row.js +16 -18
  419. package/lib/components/Heading/index.js +11 -13
  420. package/lib/components/Icon/Icon.Skeleton.js +9 -11
  421. package/lib/components/IconButton/index.js +18 -21
  422. package/lib/components/IdPrefix/index.js +4 -2
  423. package/lib/components/InlineCheckbox/InlineCheckbox.js +89 -36
  424. package/lib/components/InlineLoading/InlineLoading.js +22 -24
  425. package/lib/components/Layer/LayerContext.js +1 -1
  426. package/lib/components/Layer/index.js +16 -17
  427. package/lib/components/Layout/LayoutDirection.js +7 -9
  428. package/lib/components/Layout/LayoutDirectionContext.js +1 -1
  429. package/lib/components/Link/Link.js +24 -24
  430. package/lib/components/ListBox/ListBox.js +37 -30
  431. package/lib/components/ListBox/ListBoxField.js +8 -9
  432. package/lib/components/ListBox/ListBoxMenu.js +8 -9
  433. package/lib/components/ListBox/ListBoxMenuIcon.js +16 -14
  434. package/lib/components/ListBox/ListBoxMenuItem.js +22 -25
  435. package/lib/components/ListBox/ListBoxPropTypes.js +4 -4
  436. package/lib/components/ListBox/ListBoxSelection.js +30 -25
  437. package/lib/components/ListBox/index.js +1 -1
  438. package/lib/components/ListBox/next/ListBoxSelection.js +26 -23
  439. package/lib/components/ListBox/next/ListBoxTrigger.js +19 -18
  440. package/lib/components/ListItem/ListItem.js +8 -9
  441. package/lib/components/Loading/Loading.js +23 -23
  442. package/lib/components/Menu/Menu.js +66 -79
  443. package/lib/components/Menu/MenuContext.js +9 -12
  444. package/lib/components/Menu/MenuItem.js +103 -127
  445. package/lib/components/MenuButton/index.js +36 -40
  446. package/lib/components/Modal/Modal.js +280 -119
  447. package/lib/components/ModalWrapper/ModalWrapper.js +71 -95
  448. package/lib/components/MultiSelect/FilterableMultiSelect.js +298 -162
  449. package/lib/components/MultiSelect/MultiSelect.js +163 -175
  450. package/lib/components/MultiSelect/MultiSelectPropTypes.js +1 -1
  451. package/lib/components/MultiSelect/tools/itemToString.js +3 -4
  452. package/lib/components/MultiSelect/tools/sorting.js +15 -13
  453. package/lib/components/Notification/Notification.js +434 -162
  454. package/lib/components/NumberInput/NumberInput.Skeleton.js +9 -10
  455. package/lib/components/NumberInput/NumberInput.js +139 -138
  456. package/lib/components/OrderedList/OrderedList.js +16 -14
  457. package/lib/components/OverflowMenu/OverflowMenu.js +359 -226
  458. package/lib/components/OverflowMenu/index.js +1 -1
  459. package/lib/components/OverflowMenuItem/OverflowMenuItem.js +31 -36
  460. package/lib/components/OverflowMenuV2/index.js +25 -27
  461. package/lib/components/Pagination/Pagination.Skeleton.js +8 -9
  462. package/lib/components/Pagination/Pagination.js +97 -139
  463. package/lib/components/Pagination/experimental/PageSelector.js +17 -17
  464. package/lib/components/Pagination/experimental/Pagination.js +72 -93
  465. package/lib/components/PaginationNav/PaginationNav.js +97 -116
  466. package/lib/components/Popover/index.js +73 -79
  467. package/lib/components/PrimaryButton/PrimaryButton.js +3 -5
  468. package/lib/components/ProgressBar/ProgressBar.js +38 -36
  469. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +14 -13
  470. package/lib/components/ProgressIndicator/ProgressIndicator.js +70 -70
  471. package/lib/components/RadioButton/RadioButton.Skeleton.js +8 -9
  472. package/lib/components/RadioButton/RadioButton.js +26 -26
  473. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +54 -64
  474. package/lib/components/RadioTile/RadioTile.js +26 -24
  475. package/lib/components/Search/Search.Skeleton.js +15 -15
  476. package/lib/components/Search/Search.d.ts +83 -0
  477. package/lib/components/Search/Search.js +62 -69
  478. package/lib/components/Search/index.d.ts +11 -0
  479. package/lib/components/SecondaryButton/SecondaryButton.js +3 -5
  480. package/lib/components/Select/Select.Skeleton.js +11 -12
  481. package/lib/components/Select/Select.js +78 -72
  482. package/lib/components/SelectItem/SelectItem.js +16 -12
  483. package/lib/components/SelectItemGroup/SelectItemGroup.js +10 -11
  484. package/lib/components/SkeletonIcon/SkeletonIcon.js +10 -10
  485. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +10 -10
  486. package/lib/components/SkeletonText/SkeletonText.js +28 -28
  487. package/lib/components/Slider/Slider.Skeleton.js +16 -17
  488. package/lib/components/Slider/Slider.js +305 -328
  489. package/lib/components/Slider/index.js +1 -1
  490. package/lib/components/Stack/Stack.js +18 -19
  491. package/lib/components/Stack/index.js +2 -2
  492. package/lib/components/StructuredList/StructuredList.Skeleton.js +24 -23
  493. package/lib/components/StructuredList/StructuredList.js +133 -105
  494. package/lib/components/Switch/IconSwitch.js +45 -51
  495. package/lib/components/Switch/Switch.js +33 -31
  496. package/lib/components/Tab/Tab.js +76 -82
  497. package/lib/components/Tab/index.js +1 -1
  498. package/lib/components/TabContent/TabContent.js +15 -17
  499. package/lib/components/Tabs/Tabs.Skeleton.js +13 -12
  500. package/lib/components/Tabs/Tabs.js +194 -205
  501. package/lib/components/Tabs/usePressable.js +27 -36
  502. package/lib/components/Tag/Tag.Skeleton.js +9 -8
  503. package/lib/components/Tag/Tag.js +33 -30
  504. package/lib/components/Text/Text.js +19 -19
  505. package/lib/components/Text/TextDirection.js +8 -7
  506. package/lib/components/Text/TextDirectionContext.js +1 -1
  507. package/lib/components/Text/index.js +1 -1
  508. package/lib/components/TextArea/TextArea.Skeleton.js +10 -11
  509. package/lib/components/TextArea/TextArea.js +88 -82
  510. package/lib/components/TextInput/ControlledPasswordInput.js +78 -72
  511. package/lib/components/TextInput/PasswordInput.js +100 -90
  512. package/lib/components/TextInput/TextInput.Skeleton.js +10 -11
  513. package/lib/components/TextInput/TextInput.js +104 -92
  514. package/lib/components/TextInput/util.js +28 -30
  515. package/lib/components/Theme/index.js +24 -19
  516. package/lib/components/Tile/Tile.js +134 -175
  517. package/lib/components/TileGroup/TileGroup.js +54 -69
  518. package/lib/components/TileGroup/index.js +1 -1
  519. package/lib/components/TimePicker/TimePicker.js +59 -66
  520. package/lib/components/TimePickerSelect/TimePickerSelect.js +19 -17
  521. package/lib/components/TimePickerSelect/index.js +1 -1
  522. package/lib/components/Toggle/Toggle.Skeleton.js +68 -57
  523. package/lib/components/Toggle/Toggle.js +43 -47
  524. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +60 -54
  525. package/lib/components/Toggletip/index.js +51 -47
  526. package/lib/components/Tooltip/DefinitionTooltip.js +23 -30
  527. package/lib/components/Tooltip/Tooltip.js +34 -49
  528. package/lib/components/TreeView/TreeNode.js +93 -73
  529. package/lib/components/TreeView/TreeView.js +71 -82
  530. package/lib/components/UIShell/Content.js +12 -14
  531. package/lib/components/UIShell/Header.js +15 -11
  532. package/lib/components/UIShell/HeaderContainer.js +8 -14
  533. package/lib/components/UIShell/HeaderGlobalAction.js +25 -18
  534. package/lib/components/UIShell/HeaderGlobalBar.js +1 -3
  535. package/lib/components/UIShell/HeaderMenu.js +113 -128
  536. package/lib/components/UIShell/HeaderMenuButton.js +30 -21
  537. package/lib/components/UIShell/HeaderMenuItem.js +27 -19
  538. package/lib/components/UIShell/HeaderName.js +18 -13
  539. package/lib/components/UIShell/HeaderNavigation.js +18 -14
  540. package/lib/components/UIShell/HeaderPanel.js +22 -16
  541. package/lib/components/UIShell/HeaderSideNavItems.js +11 -9
  542. package/lib/components/UIShell/Link.js +11 -11
  543. package/lib/components/UIShell/SideNav.js +65 -61
  544. package/lib/components/UIShell/SideNavDetails.js +10 -11
  545. package/lib/components/UIShell/SideNavDivider.js +5 -3
  546. package/lib/components/UIShell/SideNavFooter.js +13 -12
  547. package/lib/components/UIShell/SideNavHeader.js +9 -6
  548. package/lib/components/UIShell/SideNavIcon.js +11 -8
  549. package/lib/components/UIShell/SideNavItem.js +11 -9
  550. package/lib/components/UIShell/SideNavItems.js +14 -11
  551. package/lib/components/UIShell/SideNavLink.js +18 -16
  552. package/lib/components/UIShell/SideNavLinkText.js +7 -8
  553. package/lib/components/UIShell/SideNavMenu.js +29 -35
  554. package/lib/components/UIShell/SideNavMenuItem.js +13 -13
  555. package/lib/components/UIShell/SideNavSwitcher.js +19 -19
  556. package/lib/components/UIShell/SkipToContent.js +9 -10
  557. package/lib/components/UIShell/Switcher.js +19 -10
  558. package/lib/components/UIShell/SwitcherDivider.js +9 -8
  559. package/lib/components/UIShell/SwitcherItem.js +25 -18
  560. package/lib/components/UIShell/_utils.js +1 -1
  561. package/lib/components/UnorderedList/UnorderedList.js +13 -13
  562. package/lib/index.js +14 -14
  563. package/lib/internal/ClickListener.js +49 -65
  564. package/lib/internal/FloatingMenu.js +192 -199
  565. package/lib/internal/OptimizedResize.js +9 -8
  566. package/lib/internal/Selection.js +91 -110
  567. package/lib/internal/createClassWrapper.js +2 -2
  568. package/lib/internal/deprecateFieldOnObject.js +5 -3
  569. package/lib/internal/environment.js +1 -1
  570. package/lib/internal/focus/index.js +1 -1
  571. package/lib/internal/keyboard/keys.js +11 -11
  572. package/lib/internal/keyboard/match.js +7 -6
  573. package/lib/internal/keyboard/navigation.js +15 -5
  574. package/lib/internal/useAnnouncer.js +2 -2
  575. package/lib/internal/useAttachedMenu.js +12 -20
  576. package/lib/internal/useControllableState.js +11 -16
  577. package/lib/internal/useDelayedState.js +9 -18
  578. package/lib/internal/useEffectOnce.js +4 -4
  579. package/lib/internal/useEvent.js +4 -4
  580. package/lib/internal/useId.js +14 -18
  581. package/lib/internal/useIdPrefix.js +1 -1
  582. package/lib/internal/useIsomorphicEffect.js +1 -1
  583. package/lib/internal/useMergedRefs.js +3 -3
  584. package/lib/internal/useNoInteractiveChildren.js +8 -19
  585. package/lib/internal/useNormalizedInputProps.js +16 -14
  586. package/lib/internal/usePrefix.js +1 -1
  587. package/lib/internal/useSavedCallback.js +3 -3
  588. package/lib/internal/warning.js +4 -4
  589. package/lib/internal/wrapFocus.js +16 -21
  590. package/lib/prop-types/AriaPropTypes.js +1 -1
  591. package/lib/prop-types/deprecate.js +6 -5
  592. package/lib/prop-types/isRequiredOneOf.js +15 -28
  593. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +2 -2
  594. package/lib/prop-types/types.js +1 -1
  595. package/lib/tools/array.js +1 -1
  596. package/lib/tools/events.js +21 -14
  597. package/lib/tools/mergeRefs.js +3 -3
  598. package/lib/tools/setupGetInstanceId.js +1 -1
  599. package/lib/tools/uniqueId.js +3 -3
  600. package/lib/tools/wrapComponent.js +14 -13
  601. package/package.json +6 -6
@@ -5,7 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- import { slicedToArray as _slicedToArray, objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
8
+ import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import { ChevronLeft, ChevronRight } from '@carbon/icons-react';
10
10
  import cx from 'classnames';
11
11
  import debounce from 'lodash.debounce';
@@ -27,53 +27,41 @@ import { ArrowRight, ArrowLeft, Home, End } from '../../internal/keyboard/keys.j
27
27
 
28
28
  var _ChevronLeft, _ChevronRight;
29
29
 
30
- var _excluded = ["activation", "aria-label", "children", "className", "contained", "iconSize", "leftOverflowButtonProps", "light", "rightOverflowButtonProps", "scrollDebounceWait", "scrollIntoView"],
31
- _excluded2 = ["as", "children", "className", "disabled", "onClick", "onKeyDown", "secondaryLabel", "renderIcon"],
32
- _excluded3 = ["children", "className", "defaultOpen", "enterDelayMs", "leaveDelayMs", "label"],
33
- _excluded4 = ["children", "className"];
30
+ const TabsContext = /*#__PURE__*/React__default.createContext(); // Used to keep track of position in a tablist
34
31
 
35
- var TabsContext = /*#__PURE__*/React__default.createContext(); // Used to keep track of position in a tablist
32
+ const TabContext = /*#__PURE__*/React__default.createContext(); // Used to keep track of position in a list of tab panels
36
33
 
37
- var TabContext = /*#__PURE__*/React__default.createContext(); // Used to keep track of position in a list of tab panels
38
-
39
- var TabPanelContext = /*#__PURE__*/React__default.createContext();
34
+ const TabPanelContext = /*#__PURE__*/React__default.createContext();
40
35
 
41
36
  function Tabs(_ref) {
42
- var children = _ref.children,
43
- _ref$defaultSelectedI = _ref.defaultSelectedIndex,
44
- defaultSelectedIndex = _ref$defaultSelectedI === void 0 ? 0 : _ref$defaultSelectedI,
45
- _onChange = _ref.onChange,
46
- controlledSelectedIndex = _ref.selectedIndex;
47
- var baseId = useId('ccs'); // The active index is used to track the element which has focus in our tablist
48
-
49
- var _useState = useState(defaultSelectedIndex),
50
- _useState2 = _slicedToArray(_useState, 2),
51
- activeIndex = _useState2[0],
52
- setActiveIndex = _useState2[1]; // The selected index is used for the tab/panel pairing which is "visible"
37
+ let {
38
+ children,
39
+ defaultSelectedIndex = 0,
40
+ onChange,
41
+ selectedIndex: controlledSelectedIndex
42
+ } = _ref;
43
+ const baseId = useId('ccs'); // The active index is used to track the element which has focus in our tablist
53
44
 
45
+ const [activeIndex, setActiveIndex] = useState(defaultSelectedIndex); // The selected index is used for the tab/panel pairing which is "visible"
54
46
 
55
- var _useControllableState = useControllableState({
47
+ const [selectedIndex, setSelectedIndex] = useControllableState({
56
48
  value: controlledSelectedIndex,
57
49
  defaultValue: defaultSelectedIndex,
58
- onChange: function onChange(value) {
59
- if (_onChange) {
60
- _onChange({
50
+ onChange: value => {
51
+ if (onChange) {
52
+ onChange({
61
53
  selectedIndex: value
62
54
  });
63
55
  }
64
56
  }
65
- }),
66
- _useControllableState2 = _slicedToArray(_useControllableState, 2),
67
- selectedIndex = _useControllableState2[0],
68
- setSelectedIndex = _useControllableState2[1];
69
-
70
- var value = {
71
- baseId: baseId,
72
- activeIndex: activeIndex,
73
- defaultSelectedIndex: defaultSelectedIndex,
74
- setActiveIndex: setActiveIndex,
75
- selectedIndex: selectedIndex,
76
- setSelectedIndex: setSelectedIndex
57
+ });
58
+ const value = {
59
+ baseId,
60
+ activeIndex,
61
+ defaultSelectedIndex,
62
+ setActiveIndex,
63
+ selectedIndex,
64
+ setSelectedIndex
77
65
  };
78
66
  return /*#__PURE__*/React__default.createElement(TabsContext.Provider, {
79
67
  value: value
@@ -127,65 +115,60 @@ function getNextIndex(event, total, index) {
127
115
  }
128
116
 
129
117
  function TabList(_ref2) {
130
- var _cx;
131
-
132
- var _ref2$activation = _ref2.activation,
133
- activation = _ref2$activation === void 0 ? 'automatic' : _ref2$activation,
134
- label = _ref2['aria-label'],
135
- children = _ref2.children,
136
- customClassName = _ref2.className,
137
- _ref2$contained = _ref2.contained,
138
- contained = _ref2$contained === void 0 ? false : _ref2$contained,
139
- iconSize = _ref2.iconSize,
140
- leftOverflowButtonProps = _ref2.leftOverflowButtonProps,
141
- light = _ref2.light,
142
- rightOverflowButtonProps = _ref2.rightOverflowButtonProps,
143
- _ref2$scrollDebounceW = _ref2.scrollDebounceWait,
144
- scrollDebounceWait = _ref2$scrollDebounceW === void 0 ? 200 : _ref2$scrollDebounceW,
145
- scrollIntoView = _ref2.scrollIntoView,
146
- rest = _objectWithoutProperties(_ref2, _excluded);
147
-
148
- var _React$useContext = React__default.useContext(TabsContext),
149
- activeIndex = _React$useContext.activeIndex,
150
- selectedIndex = _React$useContext.selectedIndex,
151
- setSelectedIndex = _React$useContext.setSelectedIndex,
152
- setActiveIndex = _React$useContext.setActiveIndex;
153
-
154
- var prefix = usePrefix();
155
- var ref = useRef(null);
156
- var previousButton = useRef(null);
157
- var nextButton = useRef(null);
158
-
159
- var _useState3 = useState(false),
160
- _useState4 = _slicedToArray(_useState3, 2),
161
- isScrollable = _useState4[0],
162
- setIsScrollable = _useState4[1];
163
-
164
- var _useState5 = useState(null),
165
- _useState6 = _slicedToArray(_useState5, 2),
166
- scrollLeft = _useState6[0],
167
- setScrollLeft = _useState6[1];
168
-
169
- var hasSecondaryLabelTabs = contained && !!React__default.Children.toArray(children).filter(function (child) {
170
- return child.props.secondaryLabel;
171
- }).length;
172
- var className = cx("".concat(prefix, "--tabs"), customClassName, (_cx = {}, _defineProperty(_cx, "".concat(prefix, "--tabs--contained"), contained), _defineProperty(_cx, "".concat(prefix, "--tabs--light"), light), _defineProperty(_cx, "".concat(prefix, "--tabs__icon--default"), iconSize === 'default'), _defineProperty(_cx, "".concat(prefix, "--tabs__icon--lg"), iconSize === 'lg'), _defineProperty(_cx, "".concat(prefix, "--tabs--tall"), hasSecondaryLabelTabs), _cx)); // Previous Button
118
+ let {
119
+ activation = 'automatic',
120
+ 'aria-label': label,
121
+ children,
122
+ className: customClassName,
123
+ contained = false,
124
+ iconSize,
125
+ leftOverflowButtonProps,
126
+ light,
127
+ rightOverflowButtonProps,
128
+ scrollDebounceWait = 200,
129
+ scrollIntoView,
130
+ ...rest
131
+ } = _ref2;
132
+ const {
133
+ activeIndex,
134
+ selectedIndex,
135
+ setSelectedIndex,
136
+ setActiveIndex
137
+ } = React__default.useContext(TabsContext);
138
+ const prefix = usePrefix();
139
+ const ref = useRef(null);
140
+ const previousButton = useRef(null);
141
+ const nextButton = useRef(null);
142
+ const [isScrollable, setIsScrollable] = useState(false);
143
+ const [scrollLeft, setScrollLeft] = useState(null);
144
+ const hasSecondaryLabelTabs = contained && !!React__default.Children.toArray(children).filter(child => child.props.secondaryLabel).length;
145
+ const className = cx(`${prefix}--tabs`, customClassName, {
146
+ [`${prefix}--tabs--contained`]: contained,
147
+ [`${prefix}--tabs--light`]: light,
148
+ [`${prefix}--tabs__icon--default`]: iconSize === 'default',
149
+ [`${prefix}--tabs__icon--lg`]: iconSize === 'lg',
150
+ [`${prefix}--tabs--tall`]: hasSecondaryLabelTabs
151
+ }); // Previous Button
173
152
  // VISIBLE IF:
174
153
  // SCROLLABLE
175
154
  // AND SCROLL_LEFT > 0
176
155
 
177
- var buttonWidth = 44;
178
- var isPreviousButtonVisible = ref.current ? isScrollable && scrollLeft > 0 : false; // Next Button
156
+ const buttonWidth = 44;
157
+ const isPreviousButtonVisible = ref.current ? isScrollable && scrollLeft > 0 : false; // Next Button
179
158
  // VISIBLE IF:
180
159
  // SCROLLABLE
181
160
  // AND SCROLL_LEFT + CLIENT_WIDTH < SCROLL_WIDTH
182
161
 
183
- var isNextButtonVisible = ref.current ? scrollLeft + buttonWidth + ref.current.clientWidth < ref.current.scrollWidth : false;
184
- var previousButtonClasses = cx("".concat(prefix, "--tab--overflow-nav-button"), "".concat(prefix, "--tab--overflow-nav-button--previous"), _defineProperty({}, "".concat(prefix, "--tab--overflow-nav-button--hidden"), !isPreviousButtonVisible));
185
- var nextButtonClasses = cx("".concat(prefix, "--tab--overflow-nav-button"), "".concat(prefix, "--tab--overflow-nav-button--next"), _defineProperty({}, "".concat(prefix, "--tab--overflow-nav-button--hidden"), !isNextButtonVisible));
186
- var tabs = useRef([]);
187
- var debouncedOnScroll = useCallback(function () {
188
- return debounce(function (event) {
162
+ const isNextButtonVisible = ref.current ? scrollLeft + buttonWidth + ref.current.clientWidth < ref.current.scrollWidth : false;
163
+ const previousButtonClasses = cx(`${prefix}--tab--overflow-nav-button`, `${prefix}--tab--overflow-nav-button--previous`, {
164
+ [`${prefix}--tab--overflow-nav-button--hidden`]: !isPreviousButtonVisible
165
+ });
166
+ const nextButtonClasses = cx(`${prefix}--tab--overflow-nav-button`, `${prefix}--tab--overflow-nav-button--next`, {
167
+ [`${prefix}--tab--overflow-nav-button--hidden`]: !isNextButtonVisible
168
+ });
169
+ const tabs = useRef([]);
170
+ const debouncedOnScroll = useCallback(() => {
171
+ return debounce(event => {
189
172
  setScrollLeft(event.target.scrollLeft);
190
173
  }, scrollDebounceWait);
191
174
  }, [scrollDebounceWait]);
@@ -193,11 +176,11 @@ function TabList(_ref2) {
193
176
  function onKeyDown(event) {
194
177
  if (matches(event, [ArrowRight, ArrowLeft, Home, End])) {
195
178
  event.preventDefault();
196
- var activeTabs = tabs.current.filter(function (tab) {
179
+ const activeTabs = tabs.current.filter(tab => {
197
180
  return !tab.disabled;
198
181
  });
199
- var currentIndex = activeTabs.indexOf(tabs.current[activation === 'automatic' ? selectedIndex : activeIndex]);
200
- var nextIndex = tabs.current.indexOf(activeTabs[getNextIndex(event, activeTabs.length, currentIndex)]);
182
+ const currentIndex = activeTabs.indexOf(tabs.current[activation === 'automatic' ? selectedIndex : activeIndex]);
183
+ const nextIndex = tabs.current.indexOf(activeTabs[getNextIndex(event, activeTabs.length, currentIndex)]);
201
184
 
202
185
  if (activation === 'automatic') {
203
186
  setSelectedIndex(nextIndex);
@@ -209,8 +192,8 @@ function TabList(_ref2) {
209
192
  }
210
193
  }
211
194
 
212
- useEffectOnce(function () {
213
- var tab = tabs.current[selectedIndex];
195
+ useEffectOnce(() => {
196
+ const tab = tabs.current[selectedIndex];
214
197
 
215
198
  if (scrollIntoView && tab) {
216
199
  tab.scrollIntoView({
@@ -219,19 +202,19 @@ function TabList(_ref2) {
219
202
  });
220
203
  }
221
204
  });
222
- useEffectOnce(function () {
205
+ useEffectOnce(() => {
223
206
  if (tabs.current[selectedIndex].disabled) {
224
- var activeTabs = tabs.current.filter(function (tab) {
207
+ const activeTabs = tabs.current.filter(tab => {
225
208
  return !tab.disabled;
226
209
  });
227
210
 
228
211
  if (activeTabs.length > 0) {
229
- var tab = activeTabs[0];
212
+ const tab = activeTabs[0];
230
213
  setSelectedIndex(tabs.current.indexOf(tab));
231
214
  }
232
215
  }
233
216
  });
234
- useIsomorphicEffect(function () {
217
+ useIsomorphicEffect(() => {
235
218
  if (ref.current) {
236
219
  setIsScrollable(ref.current.scrollWidth > ref.current.clientWidth);
237
220
  }
@@ -242,37 +225,37 @@ function TabList(_ref2) {
242
225
  }
243
226
  }
244
227
 
245
- var debouncedHandler = debounce(handler, 200);
228
+ const debouncedHandler = debounce(handler, 200);
246
229
  window.addEventListener('resize', debouncedHandler);
247
- return function () {
230
+ return () => {
248
231
  debouncedHandler.cancel();
249
232
  window.removeEventListener('resize', debouncedHandler);
250
233
  };
251
234
  }, []); // updates scroll location for all scroll behavior.
252
235
 
253
- useIsomorphicEffect(function () {
236
+ useIsomorphicEffect(() => {
254
237
  if (scrollLeft !== null) {
255
238
  ref.current.scrollLeft = scrollLeft;
256
239
  }
257
240
  }, [scrollLeft]);
258
- useIsomorphicEffect(function () {
241
+ useIsomorphicEffect(() => {
259
242
  if (!isScrollable) {
260
243
  return;
261
244
  }
262
245
 
263
- var tab = activation === 'manual' ? tabs.current[activeIndex] : tabs.current[selectedIndex];
246
+ const tab = activation === 'manual' ? tabs.current[activeIndex] : tabs.current[selectedIndex];
264
247
 
265
248
  if (tab) {
266
249
  // The width of the "scroll buttons"
267
250
  // The start and end position of the selected tab
268
- var _tab$getBoundingClien = tab.getBoundingClientRect(),
269
- tabWidth = _tab$getBoundingClien.width;
270
-
271
- var start = tab.offsetLeft;
272
- var end = tab.offsetLeft + tabWidth; // The start and end of the visible area for the tabs
251
+ const {
252
+ width: tabWidth
253
+ } = tab.getBoundingClientRect();
254
+ const start = tab.offsetLeft;
255
+ const end = tab.offsetLeft + tabWidth; // The start and end of the visible area for the tabs
273
256
 
274
- var visibleStart = ref.current.scrollLeft + buttonWidth;
275
- var visibleEnd = ref.current.scrollLeft + ref.current.clientWidth - buttonWidth; // The beginning of the tab is clipped and not visible
257
+ const visibleStart = ref.current.scrollLeft + buttonWidth;
258
+ const visibleEnd = ref.current.scrollLeft + ref.current.clientWidth - buttonWidth; // The beginning of the tab is clipped and not visible
276
259
 
277
260
  if (start < visibleStart) {
278
261
  setScrollLeft(start - buttonWidth);
@@ -285,28 +268,36 @@ function TabList(_ref2) {
285
268
  }
286
269
  }, [activation, activeIndex, selectedIndex, isScrollable]);
287
270
  usePressable(previousButton, {
288
- onPress: function onPress(_ref3) {
289
- var longPress = _ref3.longPress;
271
+ onPress(_ref3) {
272
+ let {
273
+ longPress
274
+ } = _ref3;
290
275
 
291
276
  if (!longPress) {
292
277
  setScrollLeft(Math.max(scrollLeft - ref.current.scrollWidth / tabs.current.length * 1.5, 0));
293
278
  }
294
279
  },
295
- onLongPress: function onLongPress() {
280
+
281
+ onLongPress() {
296
282
  return createLongPressBehavior(ref, 'backward', setScrollLeft);
297
283
  }
284
+
298
285
  });
299
286
  usePressable(nextButton, {
300
- onPress: function onPress(_ref4) {
301
- var longPress = _ref4.longPress;
287
+ onPress(_ref4) {
288
+ let {
289
+ longPress
290
+ } = _ref4;
302
291
 
303
292
  if (!longPress) {
304
293
  setScrollLeft(Math.min(scrollLeft + ref.current.scrollWidth / tabs.current.length * 1.5, ref.current.scrollWidth - ref.current.clientWidth));
305
294
  }
306
295
  },
307
- onLongPress: function onLongPress() {
296
+
297
+ onLongPress() {
308
298
  return createLongPressBehavior(ref, 'forward', setScrollLeft);
309
299
  }
300
+
310
301
  });
311
302
  return /*#__PURE__*/React__default.createElement("div", {
312
303
  className: className
@@ -320,17 +311,17 @@ function TabList(_ref2) {
320
311
  "aria-label": label,
321
312
  ref: ref,
322
313
  role: "tablist",
323
- className: "".concat(prefix, "--tab--list"),
314
+ className: `${prefix}--tab--list`,
324
315
  onScroll: debouncedOnScroll,
325
316
  onKeyDown: onKeyDown
326
- }), React__default.Children.map(children, function (child, index) {
317
+ }), React__default.Children.map(children, (child, index) => {
327
318
  return /*#__PURE__*/React__default.createElement(TabContext.Provider, {
328
319
  value: {
329
- index: index,
320
+ index,
330
321
  hasSecondaryLabel: hasSecondaryLabelTabs
331
322
  }
332
323
  }, /*#__PURE__*/React__default.cloneElement(child, {
333
- ref: function ref(node) {
324
+ ref: node => {
334
325
  tabs.current[index] = node;
335
326
  }
336
327
  }));
@@ -423,10 +414,10 @@ TabList.propTypes = {
423
414
  function createLongPressBehavior(ref, direction, setScrollLeft) {
424
415
  // We manually override the scroll behavior to be "auto". If it is set as
425
416
  // smooth, this animation does not update correctly
426
- var defaultScrollBehavior = ref.current.style['scroll-behavior'];
417
+ let defaultScrollBehavior = ref.current.style['scroll-behavior'];
427
418
  ref.current.style['scroll-behavior'] = 'auto';
428
- var scrollDelta = direction === 'forward' ? 5 : -5;
429
- var frameId = null;
419
+ const scrollDelta = direction === 'forward' ? 5 : -5;
420
+ let frameId = null;
430
421
 
431
422
  function tick() {
432
423
  ref.current.scrollLeft = ref.current.scrollLeft + scrollDelta;
@@ -434,7 +425,7 @@ function createLongPressBehavior(ref, direction, setScrollLeft) {
434
425
  }
435
426
 
436
427
  frameId = requestAnimationFrame(tick);
437
- return function () {
428
+ return () => {
438
429
  // Restore the previous scroll behavior
439
430
  ref.current.style['scroll-behavior'] = defaultScrollBehavior; // Make sure that our `scrollLeft` value is in sync with the existing
440
431
  // `ref` after our requestAnimationFrame loop above
@@ -447,34 +438,34 @@ function createLongPressBehavior(ref, direction, setScrollLeft) {
447
438
  };
448
439
  }
449
440
 
450
- var Tab = /*#__PURE__*/React__default.forwardRef(function Tab(_ref5, ref) {
451
- var _cx4;
452
-
453
- var _ref5$as = _ref5.as,
454
- BaseComponent = _ref5$as === void 0 ? 'button' : _ref5$as,
455
- children = _ref5.children,
456
- customClassName = _ref5.className,
457
- disabled = _ref5.disabled,
458
- _onClick = _ref5.onClick,
459
- onKeyDown = _ref5.onKeyDown,
460
- secondaryLabel = _ref5.secondaryLabel,
461
- Icon = _ref5.renderIcon,
462
- rest = _objectWithoutProperties(_ref5, _excluded2);
463
-
464
- var prefix = usePrefix();
465
-
466
- var _React$useContext2 = React__default.useContext(TabsContext),
467
- selectedIndex = _React$useContext2.selectedIndex,
468
- setSelectedIndex = _React$useContext2.setSelectedIndex,
469
- baseId = _React$useContext2.baseId;
470
-
471
- var _React$useContext3 = React__default.useContext(TabContext),
472
- index = _React$useContext3.index,
473
- hasSecondaryLabel = _React$useContext3.hasSecondaryLabel;
474
-
475
- var id = "".concat(baseId, "-tab-").concat(index);
476
- var panelId = "".concat(baseId, "-tabpanel-").concat(index);
477
- var className = cx("".concat(prefix, "--tabs__nav-item"), "".concat(prefix, "--tabs__nav-link"), customClassName, (_cx4 = {}, _defineProperty(_cx4, "".concat(prefix, "--tabs__nav-item--selected"), selectedIndex === index), _defineProperty(_cx4, "".concat(prefix, "--tabs__nav-item--disabled"), disabled), _cx4));
441
+ const Tab = /*#__PURE__*/React__default.forwardRef(function Tab(_ref5, ref) {
442
+ let {
443
+ as: BaseComponent = 'button',
444
+ children,
445
+ className: customClassName,
446
+ disabled,
447
+ onClick,
448
+ onKeyDown,
449
+ secondaryLabel,
450
+ renderIcon: Icon,
451
+ ...rest
452
+ } = _ref5;
453
+ const prefix = usePrefix();
454
+ const {
455
+ selectedIndex,
456
+ setSelectedIndex,
457
+ baseId
458
+ } = React__default.useContext(TabsContext);
459
+ const {
460
+ index,
461
+ hasSecondaryLabel
462
+ } = React__default.useContext(TabContext);
463
+ const id = `${baseId}-tab-${index}`;
464
+ const panelId = `${baseId}-tabpanel-${index}`;
465
+ const className = cx(`${prefix}--tabs__nav-item`, `${prefix}--tabs__nav-link`, customClassName, {
466
+ [`${prefix}--tabs__nav-item--selected`]: selectedIndex === index,
467
+ [`${prefix}--tabs__nav-item--disabled`]: disabled
468
+ });
478
469
  return /*#__PURE__*/React__default.createElement(BaseComponent, _extends({}, rest, {
479
470
  "aria-controls": panelId,
480
471
  "aria-disabled": disabled,
@@ -484,30 +475,30 @@ var Tab = /*#__PURE__*/React__default.forwardRef(function Tab(_ref5, ref) {
484
475
  role: "tab",
485
476
  className: className,
486
477
  disabled: disabled,
487
- onClick: function onClick(evt) {
478
+ onClick: evt => {
488
479
  if (disabled) {
489
480
  return;
490
481
  }
491
482
 
492
483
  setSelectedIndex(index);
493
484
 
494
- if (_onClick) {
495
- _onClick(evt);
485
+ if (onClick) {
486
+ onClick(evt);
496
487
  }
497
488
  },
498
489
  onKeyDown: onKeyDown,
499
490
  tabIndex: selectedIndex === index ? '0' : '-1',
500
491
  type: "button"
501
492
  }), /*#__PURE__*/React__default.createElement("div", {
502
- className: "".concat(prefix, "--tabs__nav-item-label-wrapper")
493
+ className: `${prefix}--tabs__nav-item-label-wrapper`
503
494
  }, /*#__PURE__*/React__default.createElement("span", {
504
- className: "".concat(prefix, "--tabs__nav-item-label")
495
+ className: `${prefix}--tabs__nav-item-label`
505
496
  }, children), Icon && /*#__PURE__*/React__default.createElement("div", {
506
- className: "".concat(prefix, "--tabs__nav-item--icon")
497
+ className: `${prefix}--tabs__nav-item--icon`
507
498
  }, /*#__PURE__*/React__default.createElement(Icon, {
508
499
  size: 16
509
500
  }))), hasSecondaryLabel && /*#__PURE__*/React__default.createElement("div", {
510
- className: "".concat(prefix, "--tabs__nav-item-secondary-label")
501
+ className: `${prefix}--tabs__nav-item-secondary-label`
511
502
  }, secondaryLabel));
512
503
  });
513
504
  Tab.propTypes = {
@@ -560,22 +551,22 @@ Tab.propTypes = {
560
551
  **/
561
552
  secondaryLabel: PropTypes.string
562
553
  };
563
- var IconTab = /*#__PURE__*/React__default.forwardRef(function IconTab(_ref6, ref) {
564
- var children = _ref6.children,
565
- customClassName = _ref6.className,
566
- _ref6$defaultOpen = _ref6.defaultOpen,
567
- defaultOpen = _ref6$defaultOpen === void 0 ? false : _ref6$defaultOpen,
568
- enterDelayMs = _ref6.enterDelayMs,
569
- leaveDelayMs = _ref6.leaveDelayMs,
570
- label = _ref6.label,
571
- rest = _objectWithoutProperties(_ref6, _excluded3);
572
-
573
- var prefix = usePrefix();
574
- var classNames = cx("".concat(prefix, "--tabs__nav-item--icon-only"), customClassName);
554
+ const IconTab = /*#__PURE__*/React__default.forwardRef(function IconTab(_ref6, ref) {
555
+ let {
556
+ children,
557
+ className: customClassName,
558
+ defaultOpen = false,
559
+ enterDelayMs,
560
+ leaveDelayMs,
561
+ label,
562
+ ...rest
563
+ } = _ref6;
564
+ const prefix = usePrefix();
565
+ const classNames = cx(`${prefix}--tabs__nav-item--icon-only`, customClassName);
575
566
  return /*#__PURE__*/React__default.createElement(Tooltip, {
576
567
  align: "bottom",
577
568
  defaultOpen: defaultOpen,
578
- className: "".concat(prefix, "--icon-tooltip"),
569
+ className: `${prefix}--icon-tooltip`,
579
570
  enterDelayMs: enterDelayMs,
580
571
  label: label,
581
572
  leaveDelayMs: leaveDelayMs
@@ -618,39 +609,33 @@ IconTab.propTypes = {
618
609
  */
619
610
  leaveDelayMs: PropTypes.number
620
611
  };
621
- var TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref7, forwardRef) {
622
- var children = _ref7.children,
623
- customClassName = _ref7.className,
624
- rest = _objectWithoutProperties(_ref7, _excluded4);
625
-
626
- var prefix = usePrefix();
627
- var panel = useRef(null);
628
- var ref = useMergedRefs([forwardRef, panel]);
629
-
630
- var _useState7 = useState('0'),
631
- _useState8 = _slicedToArray(_useState7, 2),
632
- tabIndex = _useState8[0],
633
- setTabIndex = _useState8[1];
634
-
635
- var _useState9 = useState(false),
636
- _useState10 = _slicedToArray(_useState9, 2),
637
- interactiveContent = _useState10[0],
638
- setInteractiveContent = _useState10[1];
639
-
640
- var _React$useContext4 = React__default.useContext(TabsContext),
641
- selectedIndex = _React$useContext4.selectedIndex,
642
- baseId = _React$useContext4.baseId;
643
-
644
- var index = React__default.useContext(TabPanelContext);
645
- var id = "".concat(baseId, "-tabpanel-").concat(index);
646
- var tabId = "".concat(baseId, "-tab-").concat(index);
647
- var className = cx("".concat(prefix, "--tab-content"), customClassName, _defineProperty({}, "".concat(prefix, "--tab-content--interactive"), interactiveContent));
648
- useEffectOnce(function () {
612
+ const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref7, forwardRef) {
613
+ let {
614
+ children,
615
+ className: customClassName,
616
+ ...rest
617
+ } = _ref7;
618
+ const prefix = usePrefix();
619
+ const panel = useRef(null);
620
+ const ref = useMergedRefs([forwardRef, panel]);
621
+ const [tabIndex, setTabIndex] = useState('0');
622
+ const [interactiveContent, setInteractiveContent] = useState(false);
623
+ const {
624
+ selectedIndex,
625
+ baseId
626
+ } = React__default.useContext(TabsContext);
627
+ const index = React__default.useContext(TabPanelContext);
628
+ const id = `${baseId}-tabpanel-${index}`;
629
+ const tabId = `${baseId}-tab-${index}`;
630
+ const className = cx(`${prefix}--tab-content`, customClassName, {
631
+ [`${prefix}--tab-content--interactive`]: interactiveContent
632
+ });
633
+ useEffectOnce(() => {
649
634
  if (!panel.current) {
650
635
  return;
651
636
  }
652
637
 
653
- var content = getInteractiveContent(panel.current);
638
+ const content = getInteractiveContent(panel.current);
654
639
 
655
640
  if (content) {
656
641
  setInteractiveContent(true);
@@ -658,15 +643,17 @@ var TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref7, f
658
643
  }
659
644
  }); // tabindex should only be 0 if no interactive content in children
660
645
 
661
- useEffect(function () {
646
+ useEffect(() => {
662
647
  if (!panel.current) {
663
648
  return;
664
649
  }
665
650
 
666
- var node = panel.current;
651
+ const {
652
+ current: node
653
+ } = panel;
667
654
 
668
655
  function callback() {
669
- var content = getInteractiveContent(node);
656
+ const content = getInteractiveContent(node);
670
657
 
671
658
  if (content) {
672
659
  setInteractiveContent(true);
@@ -677,12 +664,12 @@ var TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref7, f
677
664
  }
678
665
  }
679
666
 
680
- var observer = new MutationObserver(callback);
667
+ const observer = new MutationObserver(callback);
681
668
  observer.observe(node, {
682
669
  childList: true,
683
670
  subtree: true
684
671
  });
685
- return function () {
672
+ return () => {
686
673
  observer.disconnect(node);
687
674
  };
688
675
  }, []);
@@ -709,8 +696,10 @@ TabPanel.propTypes = {
709
696
  };
710
697
 
711
698
  function TabPanels(_ref8) {
712
- var children = _ref8.children;
713
- return React__default.Children.map(children, function (child, index) {
699
+ let {
700
+ children
701
+ } = _ref8;
702
+ return React__default.Children.map(children, (child, index) => {
714
703
  return /*#__PURE__*/React__default.createElement(TabPanelContext.Provider, {
715
704
  value: index
716
705
  }, child);