@carbon/react 1.83.0 → 1.84.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 (510) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +980 -945
  2. package/README.md +1 -1
  3. package/es/components/AILabel/index.js +27 -30
  4. package/es/components/AISkeleton/AISkeletonIcon.js +4 -5
  5. package/es/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
  6. package/es/components/AISkeleton/AISkeletonText.js +4 -5
  7. package/es/components/Accordion/Accordion.Skeleton.js +9 -10
  8. package/es/components/Accordion/Accordion.js +10 -11
  9. package/es/components/Accordion/AccordionItem.js +13 -14
  10. package/es/components/Accordion/AccordionProvider.js +4 -5
  11. package/es/components/AspectRatio/AspectRatio.js +7 -8
  12. package/es/components/BadgeIndicator/index.js +5 -6
  13. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
  14. package/es/components/Button/Button.Skeleton.js +7 -8
  15. package/es/components/Button/ButtonBase.js +23 -24
  16. package/es/components/ChatButton/ChatButton.Skeleton.js +5 -6
  17. package/es/components/ChatButton/ChatButton.js +11 -12
  18. package/es/components/Checkbox/Checkbox.Skeleton.js +4 -5
  19. package/es/components/Checkbox/Checkbox.js +19 -20
  20. package/es/components/CheckboxGroup/CheckboxGroup.js +16 -17
  21. package/es/components/ClassPrefix/index.js +4 -5
  22. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
  23. package/es/components/CodeSnippet/CodeSnippet.js +25 -26
  24. package/es/components/ComboBox/ComboBox.js +24 -30
  25. package/es/components/ComboBox/tools/filter.js +9 -12
  26. package/es/components/ComboButton/index.js +16 -18
  27. package/es/components/ComposedModal/ComposedModal.js +31 -34
  28. package/es/components/ComposedModal/ModalFooter.js +37 -42
  29. package/es/components/ComposedModal/ModalHeader.js +14 -15
  30. package/es/components/ContainedList/ContainedList.js +10 -11
  31. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
  32. package/es/components/ContentSwitcher/ContentSwitcher.d.ts +9 -29
  33. package/es/components/ContentSwitcher/ContentSwitcher.js +96 -128
  34. package/es/components/ContentSwitcher/index.d.ts +3 -4
  35. package/es/components/ContextMenu/useContextMenu.js +1 -2
  36. package/es/components/Copy/Copy.js +11 -12
  37. package/es/components/CopyButton/CopyButton.js +10 -11
  38. package/es/components/DataTable/DataTable.js +45 -53
  39. package/es/components/DataTable/Table.js +15 -18
  40. package/es/components/DataTable/TableBatchAction.js +8 -11
  41. package/es/components/DataTable/TableBatchActions.js +18 -20
  42. package/es/components/DataTable/TableBody.js +8 -11
  43. package/es/components/DataTable/TableContainer.js +9 -10
  44. package/es/components/DataTable/TableDecoratorRow.js +4 -5
  45. package/es/components/DataTable/TableExpandHeader.js +14 -15
  46. package/es/components/DataTable/TableExpandRow.js +13 -14
  47. package/es/components/DataTable/TableExpandedRow.js +6 -7
  48. package/es/components/DataTable/TableHeader.js +15 -16
  49. package/es/components/DataTable/TableSelectAll.js +11 -12
  50. package/es/components/DataTable/TableSelectRow.js +12 -13
  51. package/es/components/DataTable/TableSlugRow.js +4 -5
  52. package/es/components/DataTable/TableToolbar.js +7 -8
  53. package/es/components/DataTable/TableToolbarMenu.js +8 -9
  54. package/es/components/DataTable/TableToolbarSearch.js +22 -24
  55. package/es/components/DataTable/state/sorting.js +3 -4
  56. package/es/components/DataTable/tools/filter.js +10 -12
  57. package/es/components/DataTable/tools/normalize.js +6 -8
  58. package/es/components/DataTable/tools/sorting.js +24 -30
  59. package/es/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
  60. package/es/components/DatePicker/DatePicker.Skeleton.js +7 -8
  61. package/es/components/DatePicker/DatePicker.js +88 -65
  62. package/es/components/DatePickerInput/DatePickerInput.js +5 -6
  63. package/es/components/Dialog/index.d.ts +193 -8
  64. package/es/components/Dialog/index.js +454 -35
  65. package/es/components/Dropdown/Dropdown.Skeleton.js +6 -7
  66. package/es/components/Dropdown/Dropdown.js +40 -43
  67. package/es/components/ErrorBoundary/ErrorBoundary.js +2 -2
  68. package/es/components/ExpandableSearch/ExpandableSearch.js +9 -10
  69. package/es/components/FeatureFlags/index.js +11 -12
  70. package/es/components/FileUploader/FileUploader.Skeleton.js +4 -5
  71. package/es/components/FileUploader/FileUploader.js +22 -24
  72. package/es/components/FileUploader/FileUploaderButton.js +16 -17
  73. package/es/components/FileUploader/FileUploaderDropContainer.js +15 -16
  74. package/es/components/FileUploader/FileUploaderItem.js +13 -14
  75. package/es/components/FileUploader/Filename.js +9 -10
  76. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
  77. package/es/components/FluidComboBox/FluidComboBox.js +5 -6
  78. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
  79. package/es/components/FluidDatePicker/FluidDatePicker.js +10 -11
  80. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
  81. package/es/components/FluidDropdown/FluidDropdown.js +5 -6
  82. package/es/components/FluidForm/FluidForm.js +5 -6
  83. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
  84. package/es/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
  85. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
  86. package/es/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  87. package/es/components/FluidNumberInput/FluidNumberInput.js +38 -5
  88. package/es/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
  89. package/es/components/FluidSearch/FluidSearch.js +4 -5
  90. package/es/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
  91. package/es/components/FluidSelect/FluidSelect.js +5 -6
  92. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
  93. package/es/components/FluidTextArea/FluidTextArea.js +4 -5
  94. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
  95. package/es/components/FluidTextInput/FluidTextInput.js +5 -6
  96. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
  97. package/es/components/FluidTimePicker/FluidTimePicker.js +11 -12
  98. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
  99. package/es/components/Form/Form.js +5 -6
  100. package/es/components/FormGroup/FormGroup.js +11 -12
  101. package/es/components/FormItem/FormItem.js +5 -6
  102. package/es/components/FormLabel/FormLabel.js +6 -7
  103. package/es/components/Grid/CSSGrid.js +17 -19
  104. package/es/components/Grid/Column.js +28 -27
  105. package/es/components/Grid/ColumnHang.js +6 -7
  106. package/es/components/Grid/FlexGrid.js +9 -10
  107. package/es/components/Grid/GridContext.js +5 -6
  108. package/es/components/Grid/Row.js +8 -9
  109. package/es/components/Heading/index.js +5 -6
  110. package/es/components/Icon/Icon.Skeleton.js +4 -5
  111. package/es/components/IconButton/index.js +20 -21
  112. package/es/components/IconIndicator/index.js +7 -8
  113. package/es/components/IdPrefix/index.js +4 -5
  114. package/es/components/InlineLoading/InlineLoading.js +9 -10
  115. package/es/components/Layer/index.js +8 -9
  116. package/es/components/Layout/index.js +21 -26
  117. package/es/components/LayoutDirection/LayoutDirection.js +6 -7
  118. package/es/components/Link/Link.d.ts +1 -1
  119. package/es/components/Link/Link.js +14 -15
  120. package/es/components/ListBox/ListBoxField.js +6 -7
  121. package/es/components/ListBox/ListBoxMenu.js +5 -6
  122. package/es/components/ListBox/ListBoxMenuIcon.js +4 -5
  123. package/es/components/ListBox/ListBoxMenuItem.js +8 -10
  124. package/es/components/ListBox/ListBoxSelection.js +8 -9
  125. package/es/components/ListBox/next/ListBoxSelection.js +9 -10
  126. package/es/components/ListBox/next/ListBoxTrigger.js +5 -6
  127. package/es/components/ListItem/ListItem.js +5 -6
  128. package/es/components/Loading/Loading.js +8 -9
  129. package/es/components/Menu/Menu.js +23 -24
  130. package/es/components/Menu/MenuItem.js +39 -44
  131. package/es/components/MenuButton/index.js +16 -18
  132. package/es/components/Modal/Modal.js +55 -63
  133. package/es/components/ModalWrapper/ModalWrapper.js +2 -2
  134. package/es/components/MultiSelect/FilterableMultiSelect.js +46 -48
  135. package/es/components/MultiSelect/MultiSelect.js +43 -45
  136. package/es/components/MultiSelect/tools/sorting.js +11 -15
  137. package/es/components/Notification/Notification.js +96 -105
  138. package/es/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  139. package/es/components/NumberInput/NumberFormatPropTypes.js +40 -0
  140. package/es/components/NumberInput/NumberInput.Skeleton.js +6 -7
  141. package/es/components/NumberInput/NumberInput.d.ts +39 -3
  142. package/es/components/NumberInput/NumberInput.js +174 -44
  143. package/es/components/OrderedList/OrderedList.js +7 -8
  144. package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  145. package/es/components/OverflowMenu/OverflowMenu.js +35 -41
  146. package/es/components/OverflowMenu/next/index.js +12 -13
  147. package/es/components/PageHeader/PageHeader.d.ts +29 -5
  148. package/es/components/PageHeader/PageHeader.js +119 -73
  149. package/es/components/Pagination/Pagination.Skeleton.js +4 -5
  150. package/es/components/Pagination/Pagination.js +24 -25
  151. package/es/components/Pagination/experimental/PageSelector.js +8 -9
  152. package/es/components/Pagination/experimental/Pagination.js +20 -21
  153. package/es/components/PaginationNav/PaginationNav.js +33 -38
  154. package/es/components/Popover/index.js +26 -28
  155. package/es/components/ProgressBar/ProgressBar.js +11 -12
  156. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
  157. package/es/components/ProgressIndicator/ProgressIndicator.js +29 -32
  158. package/es/components/RadioTile/RadioTile.js +17 -18
  159. package/es/components/Search/Search.Skeleton.js +5 -6
  160. package/es/components/Search/Search.js +26 -28
  161. package/es/components/Select/Select.Skeleton.js +5 -6
  162. package/es/components/Select/Select.js +24 -25
  163. package/es/components/SelectItem/SelectItem.js +8 -9
  164. package/es/components/SelectItemGroup/SelectItemGroup.js +7 -8
  165. package/es/components/ShapeIndicator/index.js +7 -8
  166. package/es/components/SkeletonIcon/SkeletonIcon.js +4 -5
  167. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
  168. package/es/components/SkeletonText/SkeletonText.js +8 -9
  169. package/es/components/Slider/Slider.Skeleton.js +8 -9
  170. package/es/components/Slider/Slider.js +69 -83
  171. package/es/components/Slider/SliderHandles.js +6 -6
  172. package/es/components/StructuredList/StructuredList.Skeleton.js +5 -6
  173. package/es/components/Tabs/Tabs.Skeleton.js +5 -6
  174. package/es/components/Tabs/Tabs.js +83 -98
  175. package/es/components/Tabs/usePressable.js +7 -8
  176. package/es/components/Tag/DismissibleTag.js +16 -17
  177. package/es/components/Tag/OperationalTag.js +10 -11
  178. package/es/components/Tag/SelectableTag.js +13 -14
  179. package/es/components/Tag/Tag.Skeleton.js +5 -6
  180. package/es/components/Tag/Tag.js +19 -20
  181. package/es/components/Text/Text.js +6 -7
  182. package/es/components/Text/TextDirection.js +5 -6
  183. package/es/components/TextArea/TextArea.js +3 -3
  184. package/es/components/TextInput/ControlledPasswordInput.js +24 -25
  185. package/es/components/TextInput/PasswordInput.js +26 -27
  186. package/es/components/TextInput/TextInput.Skeleton.js +5 -6
  187. package/es/components/TextInput/TextInput.js +27 -28
  188. package/es/components/TextInput/util.js +14 -17
  189. package/es/components/Theme/index.js +10 -12
  190. package/es/components/Tile/Tile.js +68 -74
  191. package/es/components/Toggle/Toggle.Skeleton.js +4 -5
  192. package/es/components/Toggle/Toggle.js +17 -18
  193. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
  194. package/es/components/Toggletip/index.js +33 -39
  195. package/es/components/Tooltip/DefinitionTooltip.js +13 -14
  196. package/es/components/Tooltip/Tooltip.js +15 -16
  197. package/es/components/TreeView/TreeNode.js +20 -21
  198. package/es/components/TreeView/TreeView.js +14 -16
  199. package/es/components/UIShell/Content.js +6 -7
  200. package/es/components/UIShell/Header.js +5 -6
  201. package/es/components/UIShell/HeaderContainer.js +5 -6
  202. package/es/components/UIShell/HeaderGlobalAction.js +12 -13
  203. package/es/components/UIShell/HeaderMenu.d.ts +10 -112
  204. package/es/components/UIShell/HeaderMenu.js +154 -201
  205. package/es/components/UIShell/HeaderMenuButton.js +10 -11
  206. package/es/components/UIShell/HeaderMenuItem.js +10 -11
  207. package/es/components/UIShell/HeaderName.js +6 -7
  208. package/es/components/UIShell/HeaderNavigation.js +7 -8
  209. package/es/components/UIShell/HeaderPanel.js +9 -10
  210. package/es/components/UIShell/HeaderSideNavItems.js +5 -6
  211. package/es/components/UIShell/Link.js +8 -9
  212. package/es/components/UIShell/SideNav.js +23 -25
  213. package/es/components/UIShell/SideNavDetails.js +6 -7
  214. package/es/components/UIShell/SideNavDivider.js +3 -4
  215. package/es/components/UIShell/SideNavFooter.js +6 -7
  216. package/es/components/UIShell/SideNavHeader.js +5 -6
  217. package/es/components/UIShell/SideNavIcon.js +5 -6
  218. package/es/components/UIShell/SideNavItem.js +5 -6
  219. package/es/components/UIShell/SideNavItems.js +5 -6
  220. package/es/components/UIShell/SideNavLink.js +10 -11
  221. package/es/components/UIShell/SideNavLinkText.js +5 -6
  222. package/es/components/UIShell/SideNavMenu.js +11 -12
  223. package/es/components/UIShell/SkipToContent.js +7 -8
  224. package/es/components/UIShell/Switcher.js +4 -5
  225. package/es/components/UIShell/SwitcherDivider.js +4 -5
  226. package/es/components/UnorderedList/UnorderedList.js +6 -7
  227. package/es/index.js +2 -2
  228. package/es/internal/FloatingMenu.js +26 -28
  229. package/es/internal/Selection.js +15 -17
  230. package/es/internal/getAnnouncement.d.ts +8 -0
  231. package/es/internal/getAnnouncement.js +22 -0
  232. package/es/internal/keyboard/match.js +6 -7
  233. package/es/internal/useControllableState.d.ts +1 -1
  234. package/es/internal/useControllableState.js +8 -9
  235. package/es/internal/useDelayedState.js +1 -2
  236. package/es/internal/useDocumentLang.d.ts +12 -0
  237. package/es/internal/useId.js +2 -4
  238. package/es/internal/useMatchMedia.js +1 -2
  239. package/es/internal/useMergedRefs.d.ts +1 -1
  240. package/es/internal/useNoInteractiveChildren.js +2 -4
  241. package/es/internal/useNormalizedInputProps.js +9 -10
  242. package/es/internal/useResizeObserver.js +4 -5
  243. package/es/internal/useSavedCallback.js +1 -3
  244. package/es/internal/wrapFocus.js +20 -29
  245. package/es/prop-types/deprecate.js +1 -4
  246. package/es/prop-types/deprecateValuesWithin.js +1 -4
  247. package/es/prop-types/isRequiredOneOf.js +1 -4
  248. package/es/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  249. package/es/tools/events.js +1 -4
  250. package/es/tools/mergeRefs.js +9 -14
  251. package/es/tools/uniqueId.js +1 -2
  252. package/es/tools/wrapComponent.js +9 -11
  253. package/lib/components/AILabel/index.js +27 -30
  254. package/lib/components/AISkeleton/AISkeletonIcon.js +4 -5
  255. package/lib/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
  256. package/lib/components/AISkeleton/AISkeletonText.js +4 -5
  257. package/lib/components/Accordion/Accordion.Skeleton.js +9 -10
  258. package/lib/components/Accordion/Accordion.js +10 -11
  259. package/lib/components/Accordion/AccordionItem.js +13 -14
  260. package/lib/components/Accordion/AccordionProvider.js +4 -5
  261. package/lib/components/AspectRatio/AspectRatio.js +7 -8
  262. package/lib/components/BadgeIndicator/index.js +5 -6
  263. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
  264. package/lib/components/Button/Button.Skeleton.js +7 -8
  265. package/lib/components/Button/ButtonBase.js +23 -24
  266. package/lib/components/ChatButton/ChatButton.Skeleton.js +5 -6
  267. package/lib/components/ChatButton/ChatButton.js +11 -12
  268. package/lib/components/Checkbox/Checkbox.Skeleton.js +4 -5
  269. package/lib/components/Checkbox/Checkbox.js +19 -20
  270. package/lib/components/CheckboxGroup/CheckboxGroup.js +16 -17
  271. package/lib/components/ClassPrefix/index.js +4 -5
  272. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
  273. package/lib/components/CodeSnippet/CodeSnippet.js +25 -26
  274. package/lib/components/ComboBox/ComboBox.js +24 -30
  275. package/lib/components/ComboBox/tools/filter.js +9 -12
  276. package/lib/components/ComboButton/index.js +16 -18
  277. package/lib/components/ComposedModal/ComposedModal.js +31 -34
  278. package/lib/components/ComposedModal/ModalFooter.js +37 -42
  279. package/lib/components/ComposedModal/ModalHeader.js +14 -15
  280. package/lib/components/ContainedList/ContainedList.js +10 -11
  281. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
  282. package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +9 -29
  283. package/lib/components/ContentSwitcher/ContentSwitcher.js +94 -126
  284. package/lib/components/ContentSwitcher/index.d.ts +3 -4
  285. package/lib/components/ContextMenu/useContextMenu.js +1 -2
  286. package/lib/components/Copy/Copy.js +11 -12
  287. package/lib/components/CopyButton/CopyButton.js +10 -11
  288. package/lib/components/DataTable/DataTable.js +45 -53
  289. package/lib/components/DataTable/Table.js +15 -18
  290. package/lib/components/DataTable/TableBatchAction.js +8 -11
  291. package/lib/components/DataTable/TableBatchActions.js +18 -20
  292. package/lib/components/DataTable/TableBody.js +8 -11
  293. package/lib/components/DataTable/TableContainer.js +9 -10
  294. package/lib/components/DataTable/TableDecoratorRow.js +4 -5
  295. package/lib/components/DataTable/TableExpandHeader.js +14 -15
  296. package/lib/components/DataTable/TableExpandRow.js +13 -14
  297. package/lib/components/DataTable/TableExpandedRow.js +6 -7
  298. package/lib/components/DataTable/TableHeader.js +15 -16
  299. package/lib/components/DataTable/TableSelectAll.js +11 -12
  300. package/lib/components/DataTable/TableSelectRow.js +12 -13
  301. package/lib/components/DataTable/TableSlugRow.js +4 -5
  302. package/lib/components/DataTable/TableToolbar.js +7 -8
  303. package/lib/components/DataTable/TableToolbarMenu.js +8 -9
  304. package/lib/components/DataTable/TableToolbarSearch.js +22 -24
  305. package/lib/components/DataTable/state/sorting.js +3 -4
  306. package/lib/components/DataTable/tools/filter.js +10 -12
  307. package/lib/components/DataTable/tools/normalize.js +6 -8
  308. package/lib/components/DataTable/tools/sorting.js +24 -30
  309. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
  310. package/lib/components/DatePicker/DatePicker.Skeleton.js +7 -8
  311. package/lib/components/DatePicker/DatePicker.js +87 -64
  312. package/lib/components/DatePickerInput/DatePickerInput.js +5 -6
  313. package/lib/components/Dialog/index.d.ts +193 -8
  314. package/lib/components/Dialog/index.js +457 -33
  315. package/lib/components/Dropdown/Dropdown.Skeleton.js +6 -7
  316. package/lib/components/Dropdown/Dropdown.js +40 -43
  317. package/lib/components/ErrorBoundary/ErrorBoundary.js +2 -2
  318. package/lib/components/ExpandableSearch/ExpandableSearch.js +9 -10
  319. package/lib/components/FeatureFlags/index.js +11 -12
  320. package/lib/components/FileUploader/FileUploader.Skeleton.js +4 -5
  321. package/lib/components/FileUploader/FileUploader.js +22 -24
  322. package/lib/components/FileUploader/FileUploaderButton.js +16 -17
  323. package/lib/components/FileUploader/FileUploaderDropContainer.js +15 -16
  324. package/lib/components/FileUploader/FileUploaderItem.js +13 -14
  325. package/lib/components/FileUploader/Filename.js +9 -10
  326. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
  327. package/lib/components/FluidComboBox/FluidComboBox.js +5 -6
  328. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
  329. package/lib/components/FluidDatePicker/FluidDatePicker.js +10 -11
  330. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
  331. package/lib/components/FluidDropdown/FluidDropdown.js +5 -6
  332. package/lib/components/FluidForm/FluidForm.js +5 -6
  333. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
  334. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
  335. package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
  336. package/lib/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  337. package/lib/components/FluidNumberInput/FluidNumberInput.js +38 -5
  338. package/lib/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
  339. package/lib/components/FluidSearch/FluidSearch.js +4 -5
  340. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
  341. package/lib/components/FluidSelect/FluidSelect.js +5 -6
  342. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
  343. package/lib/components/FluidTextArea/FluidTextArea.js +4 -5
  344. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
  345. package/lib/components/FluidTextInput/FluidTextInput.js +5 -6
  346. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
  347. package/lib/components/FluidTimePicker/FluidTimePicker.js +11 -12
  348. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
  349. package/lib/components/Form/Form.js +5 -6
  350. package/lib/components/FormGroup/FormGroup.js +11 -12
  351. package/lib/components/FormItem/FormItem.js +5 -6
  352. package/lib/components/FormLabel/FormLabel.js +6 -7
  353. package/lib/components/Grid/CSSGrid.js +17 -19
  354. package/lib/components/Grid/Column.js +28 -27
  355. package/lib/components/Grid/ColumnHang.js +6 -7
  356. package/lib/components/Grid/FlexGrid.js +9 -10
  357. package/lib/components/Grid/GridContext.js +5 -6
  358. package/lib/components/Grid/Row.js +8 -9
  359. package/lib/components/Heading/index.js +5 -6
  360. package/lib/components/Icon/Icon.Skeleton.js +4 -5
  361. package/lib/components/IconButton/index.js +20 -21
  362. package/lib/components/IconIndicator/index.js +7 -8
  363. package/lib/components/IdPrefix/index.js +4 -5
  364. package/lib/components/InlineLoading/InlineLoading.js +9 -10
  365. package/lib/components/Layer/index.js +8 -9
  366. package/lib/components/Layout/index.js +21 -26
  367. package/lib/components/LayoutDirection/LayoutDirection.js +6 -7
  368. package/lib/components/Link/Link.d.ts +1 -1
  369. package/lib/components/Link/Link.js +14 -15
  370. package/lib/components/ListBox/ListBoxField.js +6 -7
  371. package/lib/components/ListBox/ListBoxMenu.js +5 -6
  372. package/lib/components/ListBox/ListBoxMenuIcon.js +4 -5
  373. package/lib/components/ListBox/ListBoxMenuItem.js +8 -10
  374. package/lib/components/ListBox/ListBoxSelection.js +8 -9
  375. package/lib/components/ListBox/next/ListBoxSelection.js +9 -10
  376. package/lib/components/ListBox/next/ListBoxTrigger.js +5 -6
  377. package/lib/components/ListItem/ListItem.js +5 -6
  378. package/lib/components/Loading/Loading.js +8 -9
  379. package/lib/components/Menu/Menu.js +23 -24
  380. package/lib/components/Menu/MenuItem.js +39 -44
  381. package/lib/components/MenuButton/index.js +16 -18
  382. package/lib/components/Modal/Modal.js +55 -63
  383. package/lib/components/ModalWrapper/ModalWrapper.js +2 -2
  384. package/lib/components/MultiSelect/FilterableMultiSelect.js +45 -47
  385. package/lib/components/MultiSelect/MultiSelect.js +43 -45
  386. package/lib/components/MultiSelect/tools/sorting.js +11 -15
  387. package/lib/components/Notification/Notification.js +96 -105
  388. package/lib/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  389. package/lib/components/NumberInput/NumberFormatPropTypes.js +48 -0
  390. package/lib/components/NumberInput/NumberInput.Skeleton.js +6 -7
  391. package/lib/components/NumberInput/NumberInput.d.ts +39 -3
  392. package/lib/components/NumberInput/NumberInput.js +173 -43
  393. package/lib/components/OrderedList/OrderedList.js +7 -8
  394. package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  395. package/lib/components/OverflowMenu/OverflowMenu.js +35 -41
  396. package/lib/components/OverflowMenu/next/index.js +12 -13
  397. package/lib/components/PageHeader/PageHeader.d.ts +29 -5
  398. package/lib/components/PageHeader/PageHeader.js +119 -73
  399. package/lib/components/Pagination/Pagination.Skeleton.js +4 -5
  400. package/lib/components/Pagination/Pagination.js +24 -25
  401. package/lib/components/Pagination/experimental/PageSelector.js +8 -9
  402. package/lib/components/Pagination/experimental/Pagination.js +20 -21
  403. package/lib/components/PaginationNav/PaginationNav.js +33 -38
  404. package/lib/components/Popover/index.js +26 -28
  405. package/lib/components/ProgressBar/ProgressBar.js +11 -12
  406. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
  407. package/lib/components/ProgressIndicator/ProgressIndicator.js +29 -32
  408. package/lib/components/RadioTile/RadioTile.js +17 -18
  409. package/lib/components/Search/Search.Skeleton.js +5 -6
  410. package/lib/components/Search/Search.js +26 -28
  411. package/lib/components/Select/Select.Skeleton.js +5 -6
  412. package/lib/components/Select/Select.js +24 -25
  413. package/lib/components/SelectItem/SelectItem.js +8 -9
  414. package/lib/components/SelectItemGroup/SelectItemGroup.js +7 -8
  415. package/lib/components/ShapeIndicator/index.js +7 -8
  416. package/lib/components/SkeletonIcon/SkeletonIcon.js +4 -5
  417. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
  418. package/lib/components/SkeletonText/SkeletonText.js +8 -9
  419. package/lib/components/Slider/Slider.Skeleton.js +8 -9
  420. package/lib/components/Slider/Slider.js +69 -83
  421. package/lib/components/Slider/SliderHandles.js +6 -6
  422. package/lib/components/StructuredList/StructuredList.Skeleton.js +5 -6
  423. package/lib/components/Tabs/Tabs.Skeleton.js +5 -6
  424. package/lib/components/Tabs/Tabs.js +83 -98
  425. package/lib/components/Tabs/usePressable.js +7 -8
  426. package/lib/components/Tag/DismissibleTag.js +16 -17
  427. package/lib/components/Tag/OperationalTag.js +10 -11
  428. package/lib/components/Tag/SelectableTag.js +13 -14
  429. package/lib/components/Tag/Tag.Skeleton.js +5 -6
  430. package/lib/components/Tag/Tag.js +19 -20
  431. package/lib/components/Text/Text.js +6 -7
  432. package/lib/components/Text/TextDirection.js +5 -6
  433. package/lib/components/TextArea/TextArea.js +3 -3
  434. package/lib/components/TextInput/ControlledPasswordInput.js +24 -25
  435. package/lib/components/TextInput/PasswordInput.js +26 -27
  436. package/lib/components/TextInput/TextInput.Skeleton.js +5 -6
  437. package/lib/components/TextInput/TextInput.js +27 -28
  438. package/lib/components/TextInput/util.js +14 -17
  439. package/lib/components/Theme/index.js +10 -12
  440. package/lib/components/Tile/Tile.js +68 -74
  441. package/lib/components/Toggle/Toggle.Skeleton.js +4 -5
  442. package/lib/components/Toggle/Toggle.js +17 -18
  443. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
  444. package/lib/components/Toggletip/index.js +33 -39
  445. package/lib/components/Tooltip/DefinitionTooltip.js +13 -14
  446. package/lib/components/Tooltip/Tooltip.js +15 -16
  447. package/lib/components/TreeView/TreeNode.js +20 -21
  448. package/lib/components/TreeView/TreeView.js +14 -16
  449. package/lib/components/UIShell/Content.js +6 -7
  450. package/lib/components/UIShell/Header.js +5 -6
  451. package/lib/components/UIShell/HeaderContainer.js +5 -6
  452. package/lib/components/UIShell/HeaderGlobalAction.js +12 -13
  453. package/lib/components/UIShell/HeaderMenu.d.ts +10 -112
  454. package/lib/components/UIShell/HeaderMenu.js +152 -199
  455. package/lib/components/UIShell/HeaderMenuButton.js +10 -11
  456. package/lib/components/UIShell/HeaderMenuItem.js +10 -11
  457. package/lib/components/UIShell/HeaderName.js +6 -7
  458. package/lib/components/UIShell/HeaderNavigation.js +7 -8
  459. package/lib/components/UIShell/HeaderPanel.js +9 -10
  460. package/lib/components/UIShell/HeaderSideNavItems.js +5 -6
  461. package/lib/components/UIShell/Link.js +8 -9
  462. package/lib/components/UIShell/SideNav.js +23 -25
  463. package/lib/components/UIShell/SideNavDetails.js +6 -7
  464. package/lib/components/UIShell/SideNavDivider.js +3 -4
  465. package/lib/components/UIShell/SideNavFooter.js +6 -7
  466. package/lib/components/UIShell/SideNavHeader.js +5 -6
  467. package/lib/components/UIShell/SideNavIcon.js +5 -6
  468. package/lib/components/UIShell/SideNavItem.js +5 -6
  469. package/lib/components/UIShell/SideNavItems.js +5 -6
  470. package/lib/components/UIShell/SideNavLink.js +10 -11
  471. package/lib/components/UIShell/SideNavLinkText.js +5 -6
  472. package/lib/components/UIShell/SideNavMenu.js +11 -12
  473. package/lib/components/UIShell/SkipToContent.js +7 -8
  474. package/lib/components/UIShell/Switcher.js +4 -5
  475. package/lib/components/UIShell/SwitcherDivider.js +4 -5
  476. package/lib/components/UnorderedList/UnorderedList.js +6 -7
  477. package/lib/index.js +35 -35
  478. package/lib/internal/FloatingMenu.js +26 -28
  479. package/lib/internal/Selection.js +15 -17
  480. package/lib/internal/getAnnouncement.d.ts +8 -0
  481. package/lib/internal/getAnnouncement.js +26 -0
  482. package/lib/internal/keyboard/match.js +6 -7
  483. package/lib/internal/useControllableState.d.ts +1 -1
  484. package/lib/internal/useControllableState.js +8 -9
  485. package/lib/internal/useDelayedState.js +1 -2
  486. package/lib/internal/useDocumentLang.d.ts +12 -0
  487. package/lib/internal/useId.js +2 -4
  488. package/lib/internal/useMatchMedia.js +1 -2
  489. package/lib/internal/useMergedRefs.d.ts +1 -1
  490. package/lib/internal/useNoInteractiveChildren.js +2 -4
  491. package/lib/internal/useNormalizedInputProps.js +9 -10
  492. package/lib/internal/useResizeObserver.js +4 -5
  493. package/lib/internal/useSavedCallback.js +1 -3
  494. package/lib/internal/wrapFocus.js +20 -29
  495. package/lib/prop-types/deprecate.js +1 -4
  496. package/lib/prop-types/deprecateValuesWithin.js +1 -4
  497. package/lib/prop-types/isRequiredOneOf.js +1 -4
  498. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  499. package/lib/tools/events.js +1 -4
  500. package/lib/tools/mergeRefs.js +9 -14
  501. package/lib/tools/uniqueId.js +1 -2
  502. package/lib/tools/wrapComponent.js +9 -11
  503. package/package.json +21 -19
  504. package/telemetry.yml +23 -1
  505. package/es/components/ContentSwitcher/index.js +0 -13
  506. package/es/feature-flags.d.ts +0 -7
  507. package/es/internal/useAnnouncer.js +0 -21
  508. package/lib/components/ContentSwitcher/index.js +0 -18
  509. package/lib/feature-flags.d.ts +0 -7
  510. package/lib/internal/useAnnouncer.js +0 -25
@@ -22,16 +22,15 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
22
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
23
23
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
24
24
 
25
- const ContainedListItem = _ref => {
26
- let {
27
- action,
28
- children,
29
- className,
30
- disabled = false,
31
- onClick,
32
- renderIcon: IconElement,
33
- ...rest
34
- } = _ref;
25
+ const ContainedListItem = ({
26
+ action,
27
+ children,
28
+ className,
29
+ disabled = false,
30
+ onClick,
31
+ renderIcon: IconElement,
32
+ ...rest
33
+ }) => {
35
34
  const prefix = usePrefix.usePrefix();
36
35
  const isClickable = onClick !== undefined;
37
36
  const classes = cx__default["default"](`${prefix}--contained-list-item`, className, {
@@ -1,11 +1,11 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2023
2
+ * Copyright IBM Corp. 2016, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import PropTypes from 'prop-types';
8
- import React, { HTMLAttributes, ReactElement } from 'react';
8
+ import { type HTMLAttributes, type ReactElement } from 'react';
9
9
  export interface SwitchEventHandlersParams {
10
10
  index?: number;
11
11
  name?: string | number;
@@ -46,24 +46,14 @@ export interface ContentSwitcherProps extends Omit<HTMLAttributes<HTMLElement>,
46
46
  */
47
47
  selectionMode?: 'automatic' | 'manual';
48
48
  /**
49
- * Specify the size of the Content Switcher. Currently supports either `sm`, 'md' (default) or 'lg` as an option.
49
+ * Specify the size of the Content Switcher. Currently supports either `sm`, `md` (default) or `lg` as an option.
50
50
  */
51
51
  size: 'sm' | 'md' | 'lg';
52
52
  }
53
- export interface ContentSwitcherState {
54
- selectedIndex?: number;
55
- }
56
- export default class ContentSwitcher extends React.Component<ContentSwitcherProps, ContentSwitcherState> {
57
- /**
58
- * The DOM references of child `<Switch>`.
59
- * @type {Array<Element>}
60
- * @private
61
- */
62
- _switchRefs: HTMLButtonElement[];
63
- state: {
64
- selectedIndex: undefined;
65
- };
66
- static propTypes: {
53
+ export declare const ContentSwitcher: {
54
+ ({ children, className, light, lowContrast, selectedIndex: selectedIndexProp, selectionMode, size, onChange, ...other }: ContentSwitcherProps): import("react/jsx-runtime").JSX.Element;
55
+ displayName: string;
56
+ propTypes: {
67
57
  /**
68
58
  * Pass in Switch components to be rendered in the ContentSwitcher
69
59
  */
@@ -94,18 +84,8 @@ export default class ContentSwitcher extends React.Component<ContentSwitcherProp
94
84
  */
95
85
  selectionMode: PropTypes.Requireable<string>;
96
86
  /**
97
- * Specify the size of the Content Switcher. Currently supports either `sm`, 'md' (default) or 'lg` as an option.
87
+ * Specify the size of the Content Switcher. Currently supports either `sm`, `md` (default) or `lg` as an option.
98
88
  */
99
89
  size: PropTypes.Requireable<string>;
100
90
  };
101
- static contextType: React.Context<string>;
102
- static getDerivedStateFromProps({ selectedIndex }: {
103
- selectedIndex?: number | undefined;
104
- }, state: any): {
105
- selectedIndex: number;
106
- prevSelectedIndex: number;
107
- } | null;
108
- handleItemRef: (index: any) => (ref: any) => void;
109
- handleChildChange: (data: any) => void;
110
- render(): import("react/jsx-runtime").JSX.Element;
111
- }
91
+ };
@@ -28,131 +28,100 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
28
28
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
29
29
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
30
30
 
31
- class ContentSwitcher extends React__default["default"].Component {
32
- constructor() {
33
- super(...arguments);
34
- /**
35
- * The DOM references of child `<Switch>`.
36
- * @type {Array<Element>}
37
- * @private
38
- */
39
- _rollupPluginBabelHelpers.defineProperty(this, "_switchRefs", []);
40
- _rollupPluginBabelHelpers.defineProperty(this, "state", {
41
- selectedIndex: undefined
42
- });
43
- _rollupPluginBabelHelpers.defineProperty(this, "handleItemRef", index => ref => {
44
- this._switchRefs[index] = ref;
45
- });
46
- _rollupPluginBabelHelpers.defineProperty(this, "handleChildChange", data => {
47
- const {
48
- selectionMode = 'automatic'
49
- } = this.props;
50
- // the currently selected child index
51
- const {
52
- selectedIndex
53
- } = this.state;
54
- // the newly selected child index
55
- const {
56
- index
57
- } = data;
58
- const {
59
- key
60
- } = data;
61
- if (match.matches(data, [keys.ArrowRight, keys.ArrowLeft])) {
62
- const nextIndex = navigation.getNextIndex(key, index, this.props.children?.length);
63
- const children = React__default["default"].Children.toArray(this.props.children);
64
- if (selectionMode === 'manual') {
65
- const switchRef = this._switchRefs[nextIndex];
66
- switchRef && switchRef.focus();
67
- } else {
68
- this.setState({
69
- selectedIndex: nextIndex
70
- }, () => {
71
- if (typeof this.state.selectedIndex !== 'number') {
72
- return;
73
- }
74
- const child = children[this.state.selectedIndex];
75
- const switchRef = this._switchRefs[this.state.selectedIndex];
76
- switchRef && switchRef.focus();
77
- this.props.onChange({
78
- ...data,
79
- index: this.state.selectedIndex,
80
- name: child.props.name,
81
- text: child.props.text
82
- });
31
+ const ContentSwitcher = ({
32
+ children,
33
+ className,
34
+ light,
35
+ lowContrast,
36
+ selectedIndex: selectedIndexProp = 0,
37
+ selectionMode = 'automatic',
38
+ size,
39
+ onChange = noopFn.noopFn,
40
+ ...other
41
+ }) => {
42
+ const prefix = React.useContext(usePrefix.PrefixContext);
43
+ const [selectedIndex, setSelectedIndex] = React.useState(selectedIndexProp);
44
+ const prevSelectedIndexRef = React.useRef(selectedIndexProp);
45
+ const switchRefs = React.useRef([]);
46
+ const childrenArray = React.Children.toArray(children);
47
+ React.useEffect(() => {
48
+ if (prevSelectedIndexRef.current !== selectedIndexProp) {
49
+ setSelectedIndex(selectedIndexProp);
50
+ prevSelectedIndexRef.current = selectedIndexProp;
51
+ }
52
+ }, [selectedIndexProp]);
53
+ const handleItemRef = index => ref => {
54
+ if (ref) {
55
+ switchRefs.current[index] = ref;
56
+ }
57
+ };
58
+ const focusSwitch = index => {
59
+ const ref = switchRefs.current[index];
60
+ if (ref) {
61
+ ref.focus();
62
+ }
63
+ };
64
+ const isKeyboardEvent = event => event && typeof event === 'object' && 'key' in event;
65
+ const handleChildChange = event => {
66
+ if (typeof event.index === 'undefined') return;
67
+ const {
68
+ index
69
+ } = event;
70
+ if (isKeyboardEvent(event) && match.matches(event, [keys.ArrowRight, keys.ArrowLeft])) {
71
+ const nextIndex = navigation.getNextIndex(event.key, index, childrenArray.length);
72
+ if (typeof nextIndex !== 'number') return;
73
+ focusSwitch(nextIndex);
74
+ if (selectionMode !== 'manual') {
75
+ const child = childrenArray[nextIndex];
76
+ setSelectedIndex(nextIndex);
77
+ if (/*#__PURE__*/React.isValidElement(child)) {
78
+ onChange({
79
+ ...event,
80
+ index: nextIndex,
81
+ name: child.props.name,
82
+ text: child.props.text
83
83
  });
84
84
  }
85
- } else if (selectedIndex !== index) {
86
- this.setState({
87
- selectedIndex: index
88
- }, () => {
89
- const switchRef = this._switchRefs[index];
90
- switchRef && switchRef.focus();
91
- this.props.onChange(data);
92
- });
93
- }
94
- });
95
- }
96
- static getDerivedStateFromProps(_ref, state) {
97
- let {
98
- selectedIndex = 0
99
- } = _ref;
100
- const {
101
- prevSelectedIndex
102
- } = state;
103
- return prevSelectedIndex === selectedIndex ? null : {
104
- selectedIndex,
105
- prevSelectedIndex: selectedIndex
106
- };
107
- }
108
- render() {
109
- const prefix = this.context;
110
- const {
111
- children,
112
- className,
113
- light,
114
- lowContrast,
115
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
116
- selectedIndex = 0,
117
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
118
- selectionMode = 'automatic',
119
- size,
120
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
121
- onChange = noopFn.noopFn,
122
- ...other
123
- } = this.props;
124
- const isIconOnly = React__default["default"].Children?.map(children, child => {
125
- return child.type.displayName === 'IconSwitch';
126
- })?.every(val => val === true);
127
- const classes = cx__default["default"](`${prefix}--content-switcher`, className, {
128
- [`${prefix}--content-switcher--light`]: light,
129
- [`${prefix}--content-switcher--${size}`]: size,
130
- // TODO: V12 - Remove this class
131
- [`${prefix}--layout--size-${size}`]: size,
132
- [`${prefix}--content-switcher--icon-only`]: isIconOnly,
133
- [`${prefix}--content-switcher--low-contrast`]: lowContrast
134
- });
135
- return /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, _rollupPluginBabelHelpers["extends"]({
136
- size: {
137
- default: 'md',
138
- min: 'sm',
139
- max: 'lg'
140
85
  }
141
- }, other, {
142
- className: classes,
143
- role: "tablist",
144
- onChange: undefined
145
- }), children && React__default["default"].Children.toArray(children).map((child, index) => /*#__PURE__*/React__default["default"].cloneElement(child, {
146
- index,
147
- onClick: events.composeEventHandlers([this.handleChildChange, child.props.onClick]),
148
- onKeyDown: this.handleChildChange,
149
- selected: index === this.state.selectedIndex,
150
- ref: this.handleItemRef(index),
151
- size
152
- })));
153
- }
154
- }
155
- _rollupPluginBabelHelpers.defineProperty(ContentSwitcher, "propTypes", {
86
+ } else if (selectedIndex !== index) {
87
+ setSelectedIndex(index);
88
+ focusSwitch(index);
89
+ onChange(event);
90
+ }
91
+ };
92
+ const isIconOnly = childrenArray.every(
93
+ // TODO: Update this code when
94
+ // https://github.com/carbon-design-system/carbon/pull/18971 is merged.
95
+ child => child.type.displayName === 'IconSwitch');
96
+ const classes = cx__default["default"](`${prefix}--content-switcher`, className, {
97
+ [`${prefix}--content-switcher--light`]: light,
98
+ [`${prefix}--content-switcher--${size}`]: size,
99
+ // TODO: V12 - Remove this class
100
+ [`${prefix}--layout--size-${size}`]: size,
101
+ [`${prefix}--content-switcher--icon-only`]: isIconOnly,
102
+ [`${prefix}--content-switcher--low-contrast`]: lowContrast
103
+ });
104
+ return /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, _rollupPluginBabelHelpers["extends"]({
105
+ size: {
106
+ default: 'md',
107
+ min: 'sm',
108
+ max: 'lg'
109
+ }
110
+ }, other, {
111
+ className: classes,
112
+ role: "tablist",
113
+ onChange: undefined
114
+ }), children && React.Children.map(children, (child, index) => /*#__PURE__*/React.cloneElement(child, {
115
+ index,
116
+ onClick: events.composeEventHandlers([handleChildChange, child.props.onClick]),
117
+ onKeyDown: events.composeEventHandlers([handleChildChange, child.props.onKeyDown]),
118
+ selected: index === selectedIndex,
119
+ ref: handleItemRef(index),
120
+ size
121
+ })));
122
+ };
123
+ ContentSwitcher.displayName = 'ContentSwitcher';
124
+ ContentSwitcher.propTypes = {
156
125
  /**
157
126
  * Pass in Switch components to be rendered in the ContentSwitcher
158
127
  */
@@ -183,10 +152,9 @@ _rollupPluginBabelHelpers.defineProperty(ContentSwitcher, "propTypes", {
183
152
  */
184
153
  selectionMode: PropTypes__default["default"].oneOf(['automatic', 'manual']),
185
154
  /**
186
- * Specify the size of the Content Switcher. Currently supports either `sm`, 'md' (default) or 'lg` as an option.
155
+ * Specify the size of the Content Switcher. Currently supports either `sm`, `md` (default) or `lg` as an option.
187
156
  */
188
157
  size: PropTypes__default["default"].oneOf(['sm', 'md', 'lg'])
189
- });
190
- _rollupPluginBabelHelpers.defineProperty(ContentSwitcher, "contextType", usePrefix.PrefixContext);
158
+ };
191
159
 
192
- exports["default"] = ContentSwitcher;
160
+ exports.ContentSwitcher = ContentSwitcher;
@@ -1,10 +1,9 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2023
2
+ * Copyright IBM Corp. 2016, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import { ContentSwitcherProps } from './ContentSwitcher';
8
- declare const ContentSwitcher: import("react").FunctionComponent<ContentSwitcherProps>;
7
+ import { ContentSwitcher } from './ContentSwitcher';
9
8
  export default ContentSwitcher;
10
- export { ContentSwitcher };
9
+ export * from './ContentSwitcher';
@@ -15,8 +15,7 @@ var React = require('react');
15
15
  * @param {TriggerType} [trigger=document] The element or ref which should trigger the Menu on right-click
16
16
  * @returns {ContextMenuProps} Props object to pass onto Menu component
17
17
  */
18
- function useContextMenu() {
19
- let trigger = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : document;
18
+ function useContextMenu(trigger = document) {
20
19
  const [open, setOpen] = React.useState(false);
21
20
  const [position, setPosition] = React.useState([0, 0]);
22
21
  function openContextMenu(e) {
@@ -27,18 +27,17 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
27
27
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
28
28
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
29
29
 
30
- function Copy(_ref) {
31
- let {
32
- align = 'bottom',
33
- autoAlign = false,
34
- children,
35
- className,
36
- feedback = 'Copied!',
37
- feedbackTimeout = 2000,
38
- onAnimationEnd,
39
- onClick = noopFn.noopFn,
40
- ...other
41
- } = _ref;
30
+ function Copy({
31
+ align = 'bottom',
32
+ autoAlign = false,
33
+ children,
34
+ className,
35
+ feedback = 'Copied!',
36
+ feedbackTimeout = 2000,
37
+ onAnimationEnd,
38
+ onClick = noopFn.noopFn,
39
+ ...other
40
+ }) {
42
41
  const [animation, setAnimation] = React.useState('');
43
42
  const prefix = usePrefix.usePrefix();
44
43
  const classNames = cx__default["default"](className, `${prefix}--copy`, {
@@ -27,17 +27,16 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
27
27
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
28
28
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
29
29
 
30
- function CopyButton(_ref) {
31
- let {
32
- align = 'bottom',
33
- autoAlign = false,
34
- feedback = 'Copied!',
35
- feedbackTimeout = 2000,
36
- iconDescription = 'Copy to clipboard',
37
- className,
38
- onClick = noopFn.noopFn,
39
- ...other
40
- } = _ref;
30
+ function CopyButton({
31
+ align = 'bottom',
32
+ autoAlign = false,
33
+ feedback = 'Copied!',
34
+ feedbackTimeout = 2000,
35
+ iconDescription = 'Copy to clipboard',
36
+ className,
37
+ onClick = noopFn.noopFn,
38
+ ...other
39
+ }) {
41
40
  const prefix = usePrefix.usePrefix();
42
41
  return /*#__PURE__*/React__default["default"].createElement(index.LayoutConstraint, {
43
42
  size: {
@@ -87,9 +87,7 @@ const translateWithId = id => defaultTranslations[id];
87
87
  */
88
88
  class DataTable extends React.Component {
89
89
  constructor(_props) {
90
- var _this;
91
90
  super(_props);
92
- _this = this;
93
91
  _rollupPluginBabelHelpers.defineProperty(this, "instanceId", void 0);
94
92
  // TODO: Replace with a `type` when this component is converted to a
95
93
  // functional component.
@@ -98,13 +96,12 @@ class DataTable extends React.Component {
98
96
  * Get the props associated with the given header. Mostly used for adding in
99
97
  * sorting behavior.
100
98
  */
101
- _rollupPluginBabelHelpers.defineProperty(this, "getHeaderProps", _ref => {
102
- let {
103
- header,
104
- onClick,
105
- isSortable = this.props.isSortable,
106
- ...rest
107
- } = _ref;
99
+ _rollupPluginBabelHelpers.defineProperty(this, "getHeaderProps", ({
100
+ header,
101
+ onClick,
102
+ isSortable = this.props.isSortable,
103
+ ...rest
104
+ }) => {
108
105
  const {
109
106
  sortDirection,
110
107
  sortHeaderKey
@@ -133,20 +130,19 @@ class DataTable extends React.Component {
133
130
  /**
134
131
  * Get the props associated with the given expand header.
135
132
  */
136
- _rollupPluginBabelHelpers.defineProperty(this, "getExpandHeaderProps", function () {
137
- let {
138
- onClick,
139
- onExpand,
140
- ...rest
141
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
133
+ _rollupPluginBabelHelpers.defineProperty(this, "getExpandHeaderProps", ({
134
+ onClick,
135
+ onExpand,
136
+ ...rest
137
+ } = {}) => {
142
138
  const {
143
139
  translateWithId: t = translateWithId
144
- } = _this.props;
140
+ } = this.props;
145
141
  const {
146
142
  isExpandedAll,
147
143
  rowIds,
148
144
  rowsById
149
- } = _this.state;
145
+ } = this.state;
150
146
  const isExpanded = isExpandedAll || rowIds.every(id => rowsById[id].isExpanded);
151
147
  const translationKey = isExpanded ? translationKeys.collapseAll : translationKeys.expandAll;
152
148
  return {
@@ -157,7 +153,7 @@ class DataTable extends React.Component {
157
153
  isExpanded,
158
154
  // Compose the event handlers so we don't overwrite a consumer's `onClick`
159
155
  // handler
160
- onExpand: events.composeEventHandlers([_this.handleOnExpandAll, onExpand, onClick && _this.handleOnExpandHeaderClick(onClick, {
156
+ onExpand: events.composeEventHandlers([this.handleOnExpandAll, onExpand, onClick && this.handleOnExpandHeaderClick(onClick, {
161
157
  isExpanded
162
158
  })])
163
159
  };
@@ -177,12 +173,11 @@ class DataTable extends React.Component {
177
173
  /**
178
174
  * Get the props associated with the given row. Mostly used for expansion.
179
175
  */
180
- _rollupPluginBabelHelpers.defineProperty(this, "getRowProps", _ref2 => {
181
- let {
182
- row,
183
- onClick,
184
- ...rest
185
- } = _ref2;
176
+ _rollupPluginBabelHelpers.defineProperty(this, "getRowProps", ({
177
+ row,
178
+ onClick,
179
+ ...rest
180
+ }) => {
186
181
  const {
187
182
  translateWithId: t = translateWithId
188
183
  } = this.props;
@@ -203,11 +198,10 @@ class DataTable extends React.Component {
203
198
  /**
204
199
  * Get the props associated with an expanded row
205
200
  */
206
- _rollupPluginBabelHelpers.defineProperty(this, "getExpandedRowProps", _ref3 => {
207
- let {
208
- row,
209
- ...rest
210
- } = _ref3;
201
+ _rollupPluginBabelHelpers.defineProperty(this, "getExpandedRowProps", ({
202
+ row,
203
+ ...rest
204
+ }) => {
211
205
  return {
212
206
  ...rest,
213
207
  id: `expanded-row-${row.id}`
@@ -218,15 +212,14 @@ class DataTable extends React.Component {
218
212
  * applicable. Most often used to indicate selection status of the table or
219
213
  * for a specific row.
220
214
  */
221
- _rollupPluginBabelHelpers.defineProperty(this, "getSelectionProps", function () {
222
- let {
223
- onClick,
224
- row,
225
- ...rest
226
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
215
+ _rollupPluginBabelHelpers.defineProperty(this, "getSelectionProps", ({
216
+ onClick,
217
+ row,
218
+ ...rest
219
+ } = {}) => {
227
220
  const {
228
221
  translateWithId: t = translateWithId
229
- } = _this.props;
222
+ } = this.props;
230
223
 
231
224
  // If we're given a row, return the selection state values for that row
232
225
  if (row) {
@@ -234,19 +227,19 @@ class DataTable extends React.Component {
234
227
  return {
235
228
  ...rest,
236
229
  checked: row.isSelected,
237
- onSelect: events.composeEventHandlers([_this.handleOnSelectRow(row.id), onClick]),
238
- id: `${_this.getTablePrefix()}__select-row-${row.id}`,
239
- name: `select-row-${_this.instanceId}`,
230
+ onSelect: events.composeEventHandlers([this.handleOnSelectRow(row.id), onClick]),
231
+ id: `${this.getTablePrefix()}__select-row-${row.id}`,
232
+ name: `select-row-${this.instanceId}`,
240
233
  'aria-label': t(translationKey),
241
234
  disabled: row.disabled,
242
- radio: _this.props.radio
235
+ radio: this.props.radio
243
236
  };
244
237
  }
245
238
 
246
239
  // Otherwise, we're working on `TableSelectAll` which handles toggling the
247
240
  // selection state of all rows.
248
- const rowCount = _this.state.rowIds.length;
249
- const selectedRowCount = _this.getSelectedRows().length;
241
+ const rowCount = this.state.rowIds.length;
242
+ const selectedRowCount = this.getSelectedRows().length;
250
243
  const checked = rowCount > 0 && selectedRowCount === rowCount;
251
244
  const indeterminate = rowCount > 0 && selectedRowCount > 0 && selectedRowCount !== rowCount;
252
245
  const translationKey = checked || indeterminate ? translationKeys.unselectAll : translationKeys.selectAll;
@@ -254,10 +247,10 @@ class DataTable extends React.Component {
254
247
  ...rest,
255
248
  'aria-label': t(translationKey),
256
249
  checked,
257
- id: `${_this.getTablePrefix()}__select-all`,
250
+ id: `${this.getTablePrefix()}__select-all`,
258
251
  indeterminate,
259
- name: `select-all-${_this.instanceId}`,
260
- onSelect: events.composeEventHandlers([_this.handleSelectAll, onClick])
252
+ name: `select-all-${this.instanceId}`,
253
+ onSelect: events.composeEventHandlers([this.handleSelectAll, onClick])
261
254
  };
262
255
  });
263
256
  _rollupPluginBabelHelpers.defineProperty(this, "getToolbarProps", props => {
@@ -317,14 +310,13 @@ class DataTable extends React.Component {
317
310
  /**
318
311
  * Get the props associated with the given table cell.
319
312
  */
320
- _rollupPluginBabelHelpers.defineProperty(this, "getCellProps", _ref4 => {
321
- let {
322
- cell: {
323
- hasAILabelHeader,
324
- hasDecoratorHeader
325
- },
326
- ...rest
327
- } = _ref4;
313
+ _rollupPluginBabelHelpers.defineProperty(this, "getCellProps", ({
314
+ cell: {
315
+ hasAILabelHeader,
316
+ hasDecoratorHeader
317
+ },
318
+ ...rest
319
+ }) => {
328
320
  return {
329
321
  ...rest,
330
322
  hasAILabelHeader,
@@ -53,20 +53,19 @@ const isElementWrappingContent = (element, context) => {
53
53
  }
54
54
  return false;
55
55
  };
56
- const Table = _ref => {
57
- let {
58
- className,
59
- children,
60
- useZebraStyles,
61
- size = 'lg',
62
- isSortable = false,
63
- useStaticWidth,
64
- stickyHeader,
65
- overflowMenuOnHover = true,
66
- experimentalAutoAlign = false,
67
- tabIndex,
68
- ...other
69
- } = _ref;
56
+ const Table = ({
57
+ className,
58
+ children,
59
+ useZebraStyles,
60
+ size = 'lg',
61
+ isSortable = false,
62
+ useStaticWidth,
63
+ stickyHeader,
64
+ overflowMenuOnHover = true,
65
+ experimentalAutoAlign = false,
66
+ tabIndex,
67
+ ...other
68
+ }) => {
70
69
  const {
71
70
  titleId,
72
71
  descriptionId
@@ -82,12 +81,10 @@ const Table = _ref => {
82
81
  [`${prefix}--data-table--sticky-header`]: stickyHeader,
83
82
  [`${prefix}--data-table--visible-overflow-menu`]: !overflowMenuOnHover
84
83
  });
85
- const toggleTableBodyAlignmentClass = React.useCallback(function () {
86
- let alignTop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
84
+ const toggleTableBodyAlignmentClass = React.useCallback((alignTop = false) => {
87
85
  alignTop ? tableRef.current?.classList.add(`${prefix}--data-table--top-aligned-body`) : tableRef.current?.classList.remove(`${prefix}--data-table--top-aligned-body`);
88
86
  }, [prefix]);
89
- const toggleTableHeaderAlignmentClass = React.useCallback(function () {
90
- let alignTop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
87
+ const toggleTableHeaderAlignmentClass = React.useCallback((alignTop = false) => {
91
88
  alignTop ? tableRef.current?.classList.add(`${prefix}--data-table--top-aligned-header`) : tableRef.current?.classList.remove(`${prefix}--data-table--top-aligned-header`);
92
89
  }, [prefix]);
93
90
  const setTableAlignment = React.useCallback(() => {