@carbon/react 1.83.0-rc.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 (635) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +895 -790
  2. package/README.md +1 -1
  3. package/es/components/AILabel/index.js +37 -40
  4. package/es/components/AISkeleton/AISkeletonIcon.js +6 -7
  5. package/es/components/AISkeleton/AISkeletonPlaceholder.js +6 -7
  6. package/es/components/AISkeleton/AISkeletonText.js +6 -7
  7. package/es/components/Accordion/Accordion.Skeleton.js +24 -25
  8. package/es/components/Accordion/Accordion.js +13 -14
  9. package/es/components/Accordion/AccordionItem.js +22 -23
  10. package/es/components/Accordion/AccordionProvider.js +6 -7
  11. package/es/components/AspectRatio/AspectRatio.js +9 -10
  12. package/es/components/BadgeIndicator/index.js +7 -8
  13. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +9 -10
  14. package/es/components/Breadcrumb/Breadcrumb.js +3 -3
  15. package/es/components/Breadcrumb/BreadcrumbItem.js +9 -9
  16. package/es/components/Button/Button.Skeleton.js +10 -11
  17. package/es/components/Button/Button.js +5 -5
  18. package/es/components/Button/ButtonBase.js +27 -28
  19. package/es/components/ButtonSet/ButtonSet.js +2 -2
  20. package/es/components/ChatButton/ChatButton.Skeleton.js +7 -8
  21. package/es/components/ChatButton/ChatButton.js +13 -14
  22. package/es/components/Checkbox/Checkbox.Skeleton.js +8 -9
  23. package/es/components/Checkbox/Checkbox.js +33 -34
  24. package/es/components/CheckboxGroup/CheckboxGroup.js +28 -29
  25. package/es/components/ClassPrefix/index.js +6 -7
  26. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +12 -13
  27. package/es/components/CodeSnippet/CodeSnippet.js +41 -42
  28. package/es/components/ComboBox/ComboBox.js +42 -48
  29. package/es/components/ComboBox/tools/filter.js +9 -12
  30. package/es/components/ComboButton/index.js +22 -24
  31. package/es/components/ComposedModal/ComposedModal.js +49 -52
  32. package/es/components/ComposedModal/ModalFooter.js +42 -47
  33. package/es/components/ComposedModal/ModalHeader.js +21 -22
  34. package/es/components/ContainedList/ContainedList.js +17 -18
  35. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +16 -17
  36. package/es/components/ContentSwitcher/ContentSwitcher.d.ts +17 -29
  37. package/es/components/ContentSwitcher/ContentSwitcher.js +100 -126
  38. package/es/components/ContentSwitcher/index.d.ts +3 -4
  39. package/es/components/ContextMenu/useContextMenu.js +1 -2
  40. package/es/components/Copy/Copy.js +13 -14
  41. package/es/components/CopyButton/CopyButton.js +14 -15
  42. package/es/components/DangerButton/DangerButton.js +2 -2
  43. package/es/components/DataTable/DataTable.d.ts +81 -283
  44. package/es/components/DataTable/DataTable.js +124 -172
  45. package/es/components/DataTable/Table.d.ts +2 -2
  46. package/es/components/DataTable/Table.js +19 -22
  47. package/es/components/DataTable/TableActionList.d.ts +1 -1
  48. package/es/components/DataTable/TableBatchAction.js +9 -12
  49. package/es/components/DataTable/TableBatchActions.js +27 -29
  50. package/es/components/DataTable/TableBody.d.ts +3 -3
  51. package/es/components/DataTable/TableBody.js +9 -12
  52. package/es/components/DataTable/TableCell.d.ts +3 -4
  53. package/es/components/DataTable/TableCell.js +2 -2
  54. package/es/components/DataTable/TableContainer.d.ts +2 -3
  55. package/es/components/DataTable/TableContainer.js +15 -16
  56. package/es/components/DataTable/TableDecoratorRow.js +8 -9
  57. package/es/components/DataTable/TableExpandHeader.d.ts +2 -3
  58. package/es/components/DataTable/TableExpandHeader.js +18 -19
  59. package/es/components/DataTable/TableExpandRow.js +20 -21
  60. package/es/components/DataTable/TableExpandedRow.d.ts +3 -3
  61. package/es/components/DataTable/TableExpandedRow.js +10 -11
  62. package/es/components/DataTable/TableHead.d.ts +1 -1
  63. package/es/components/DataTable/TableHeader.d.ts +4 -4
  64. package/es/components/DataTable/TableHeader.js +29 -30
  65. package/es/components/DataTable/TableRow.d.ts +3 -4
  66. package/es/components/DataTable/TableRow.js +4 -4
  67. package/es/components/DataTable/TableSelectAll.js +14 -15
  68. package/es/components/DataTable/TableSelectRow.js +16 -17
  69. package/es/components/DataTable/TableSlugRow.js +7 -8
  70. package/es/components/DataTable/TableToolbar.js +9 -10
  71. package/es/components/DataTable/TableToolbarAction.js +2 -2
  72. package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
  73. package/es/components/DataTable/TableToolbarMenu.js +10 -11
  74. package/es/components/DataTable/TableToolbarSearch.js +24 -26
  75. package/es/components/DataTable/index.d.ts +1 -1
  76. package/es/components/DataTable/state/sorting.js +3 -4
  77. package/es/components/DataTable/tools/filter.js +10 -12
  78. package/es/components/DataTable/tools/normalize.js +6 -8
  79. package/es/components/DataTable/tools/sorting.js +24 -30
  80. package/es/components/DataTableSkeleton/DataTableSkeleton.js +26 -27
  81. package/es/components/DatePicker/DatePicker.Skeleton.js +15 -16
  82. package/es/components/DatePicker/DatePicker.js +104 -81
  83. package/es/components/DatePickerInput/DatePickerInput.d.ts +3 -4
  84. package/es/components/DatePickerInput/DatePickerInput.js +24 -25
  85. package/es/components/Dialog/index.d.ts +194 -10
  86. package/es/components/Dialog/index.js +458 -39
  87. package/es/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
  88. package/es/components/Dropdown/Dropdown.Skeleton.js +10 -11
  89. package/es/components/Dropdown/Dropdown.d.ts +3 -3
  90. package/es/components/Dropdown/Dropdown.js +57 -60
  91. package/es/components/ErrorBoundary/ErrorBoundary.js +4 -4
  92. package/es/components/ExpandableSearch/ExpandableSearch.js +11 -12
  93. package/es/components/FeatureFlags/index.js +13 -14
  94. package/es/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
  95. package/es/components/FileUploader/FileUploader.Skeleton.js +9 -10
  96. package/es/components/FileUploader/FileUploader.d.ts +2 -3
  97. package/es/components/FileUploader/FileUploader.js +33 -35
  98. package/es/components/FileUploader/FileUploaderButton.d.ts +2 -3
  99. package/es/components/FileUploader/FileUploaderButton.js +20 -21
  100. package/es/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
  101. package/es/components/FileUploader/FileUploaderDropContainer.js +20 -21
  102. package/es/components/FileUploader/FileUploaderItem.d.ts +2 -3
  103. package/es/components/FileUploader/FileUploaderItem.js +26 -27
  104. package/es/components/FileUploader/Filename.d.ts +3 -4
  105. package/es/components/FileUploader/Filename.js +16 -17
  106. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +9 -10
  107. package/es/components/FluidComboBox/FluidComboBox.js +8 -9
  108. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +16 -17
  109. package/es/components/FluidDatePicker/FluidDatePicker.js +13 -14
  110. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  111. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +9 -10
  112. package/es/components/FluidDropdown/FluidDropdown.js +8 -9
  113. package/es/components/FluidForm/FluidForm.d.ts +3 -4
  114. package/es/components/FluidForm/FluidForm.js +8 -9
  115. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +9 -10
  116. package/es/components/FluidMultiSelect/FluidMultiSelect.js +10 -11
  117. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +9 -10
  118. package/es/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  119. package/es/components/FluidNumberInput/FluidNumberInput.js +41 -8
  120. package/es/components/FluidSearch/FluidSearch.Skeleton.js +9 -10
  121. package/es/components/FluidSearch/FluidSearch.js +7 -8
  122. package/es/components/FluidSelect/FluidSelect.Skeleton.js +9 -10
  123. package/es/components/FluidSelect/FluidSelect.js +8 -9
  124. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +9 -10
  125. package/es/components/FluidTextArea/FluidTextArea.js +7 -8
  126. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +9 -10
  127. package/es/components/FluidTextInput/FluidTextInput.js +9 -10
  128. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +8 -9
  129. package/es/components/FluidTimePicker/FluidTimePicker.js +23 -24
  130. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +7 -8
  131. package/es/components/Form/Form.js +7 -8
  132. package/es/components/FormGroup/FormGroup.d.ts +3 -4
  133. package/es/components/FormGroup/FormGroup.js +15 -16
  134. package/es/components/FormItem/FormItem.js +7 -8
  135. package/es/components/FormLabel/FormLabel.js +8 -9
  136. package/es/components/Grid/CSSGrid.js +23 -25
  137. package/es/components/Grid/Column.js +32 -31
  138. package/es/components/Grid/ColumnHang.js +8 -9
  139. package/es/components/Grid/FlexGrid.js +12 -13
  140. package/es/components/Grid/Grid.js +3 -3
  141. package/es/components/Grid/GridContext.d.ts +2 -2
  142. package/es/components/Grid/GridContext.js +6 -7
  143. package/es/components/Grid/Row.js +10 -11
  144. package/es/components/Heading/index.js +13 -14
  145. package/es/components/Icon/Icon.Skeleton.js +6 -7
  146. package/es/components/IconButton/index.js +30 -26
  147. package/es/components/IconIndicator/index.js +10 -11
  148. package/es/components/IdPrefix/index.js +6 -7
  149. package/es/components/InlineCheckbox/InlineCheckbox.js +6 -6
  150. package/es/components/InlineLoading/InlineLoading.js +19 -20
  151. package/es/components/Layer/LayerContext.js +2 -2
  152. package/es/components/Layer/index.d.ts +4 -0
  153. package/es/components/Layer/index.js +21 -15
  154. package/es/components/Layout/index.js +24 -29
  155. package/es/components/LayoutDirection/LayoutDirection.js +10 -11
  156. package/es/components/LayoutDirection/LayoutDirectionContext.js +2 -2
  157. package/es/components/Link/Link.d.ts +1 -1
  158. package/es/components/Link/Link.js +19 -20
  159. package/es/components/ListBox/ListBox.d.ts +2 -3
  160. package/es/components/ListBox/ListBox.js +5 -5
  161. package/es/components/ListBox/ListBoxField.d.ts +3 -4
  162. package/es/components/ListBox/ListBoxField.js +8 -9
  163. package/es/components/ListBox/ListBoxMenu.d.ts +2 -3
  164. package/es/components/ListBox/ListBoxMenu.js +7 -8
  165. package/es/components/ListBox/ListBoxMenuIcon.js +8 -9
  166. package/es/components/ListBox/ListBoxMenuItem.d.ts +2 -3
  167. package/es/components/ListBox/ListBoxMenuItem.js +11 -13
  168. package/es/components/ListBox/ListBoxSelection.js +14 -15
  169. package/es/components/ListBox/next/ListBoxSelection.js +16 -17
  170. package/es/components/ListBox/next/ListBoxTrigger.js +8 -9
  171. package/es/components/ListItem/ListItem.js +7 -8
  172. package/es/components/Loading/Loading.d.ts +3 -3
  173. package/es/components/Loading/Loading.js +14 -15
  174. package/es/components/Menu/Menu.js +26 -27
  175. package/es/components/Menu/MenuItem.js +55 -60
  176. package/es/components/MenuButton/index.js +20 -22
  177. package/es/components/Modal/Modal.d.ts +2 -3
  178. package/es/components/Modal/Modal.js +85 -93
  179. package/es/components/ModalWrapper/ModalWrapper.js +9 -9
  180. package/es/components/MultiSelect/FilterableMultiSelect.js +68 -74
  181. package/es/components/MultiSelect/MultiSelect.js +65 -67
  182. package/es/components/MultiSelect/tools/sorting.js +11 -15
  183. package/es/components/Notification/Notification.js +137 -146
  184. package/es/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  185. package/es/components/NumberInput/NumberFormatPropTypes.js +40 -0
  186. package/es/components/NumberInput/NumberInput.Skeleton.js +10 -11
  187. package/es/components/NumberInput/NumberInput.d.ts +39 -3
  188. package/es/components/NumberInput/NumberInput.js +195 -65
  189. package/es/components/OrderedList/OrderedList.js +9 -10
  190. package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  191. package/es/components/OverflowMenu/OverflowMenu.js +42 -48
  192. package/es/components/OverflowMenu/index.js +3 -3
  193. package/es/components/OverflowMenu/next/index.js +17 -18
  194. package/es/components/OverflowMenuItem/OverflowMenuItem.js +4 -4
  195. package/es/components/OverflowMenuV2/index.js +3 -3
  196. package/es/components/PageHeader/PageHeader.d.ts +29 -5
  197. package/es/components/PageHeader/PageHeader.js +136 -90
  198. package/es/components/Pagination/Pagination.Skeleton.js +12 -13
  199. package/es/components/Pagination/Pagination.js +40 -41
  200. package/es/components/Pagination/experimental/PageSelector.js +11 -12
  201. package/es/components/Pagination/experimental/Pagination.js +34 -35
  202. package/es/components/PaginationNav/PaginationNav.js +63 -68
  203. package/es/components/Popover/index.js +40 -42
  204. package/es/components/PrimaryButton/PrimaryButton.js +2 -2
  205. package/es/components/ProgressBar/ProgressBar.js +24 -25
  206. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +12 -13
  207. package/es/components/ProgressIndicator/ProgressIndicator.js +49 -52
  208. package/es/components/RadioButton/RadioButton.Skeleton.js +4 -4
  209. package/es/components/RadioButton/RadioButton.js +10 -10
  210. package/es/components/RadioButtonGroup/RadioButtonGroup.js +16 -16
  211. package/es/components/RadioTile/RadioTile.js +28 -29
  212. package/es/components/Search/Search.Skeleton.js +9 -10
  213. package/es/components/Search/Search.js +36 -38
  214. package/es/components/SecondaryButton/SecondaryButton.js +2 -2
  215. package/es/components/Select/Select.Skeleton.js +10 -11
  216. package/es/components/Select/Select.js +42 -43
  217. package/es/components/SelectItem/SelectItem.js +10 -11
  218. package/es/components/SelectItemGroup/SelectItemGroup.js +9 -10
  219. package/es/components/ShapeIndicator/index.js +13 -14
  220. package/es/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
  221. package/es/components/SkeletonIcon/SkeletonIcon.js +7 -12
  222. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +6 -7
  223. package/es/components/SkeletonText/SkeletonText.js +12 -13
  224. package/es/components/Slider/Slider.Skeleton.js +25 -26
  225. package/es/components/Slider/Slider.js +99 -113
  226. package/es/components/Slider/SliderHandles.js +20 -20
  227. package/es/components/Stack/HStack.js +2 -2
  228. package/es/components/Stack/Stack.js +2 -2
  229. package/es/components/Stack/VStack.js +2 -2
  230. package/es/components/StructuredList/StructuredList.Skeleton.js +17 -18
  231. package/es/components/StructuredList/StructuredList.js +24 -24
  232. package/es/components/Switch/IconSwitch.js +3 -3
  233. package/es/components/Switch/Switch.js +4 -4
  234. package/es/components/TabContent/TabContent.js +2 -2
  235. package/es/components/Tabs/Tabs.Skeleton.js +12 -13
  236. package/es/components/Tabs/Tabs.js +141 -156
  237. package/es/components/Tabs/usePressable.js +7 -8
  238. package/es/components/Tag/DismissibleTag.js +26 -27
  239. package/es/components/Tag/OperationalTag.js +16 -17
  240. package/es/components/Tag/SelectableTag.js +19 -20
  241. package/es/components/Tag/Tag.Skeleton.js +7 -8
  242. package/es/components/Tag/Tag.js +33 -34
  243. package/es/components/Text/Text.js +9 -10
  244. package/es/components/Text/TextDirection.js +7 -8
  245. package/es/components/Text/createTextComponent.js +2 -2
  246. package/es/components/TextArea/TextArea.Skeleton.js +4 -4
  247. package/es/components/TextArea/TextArea.js +22 -22
  248. package/es/components/TextInput/ControlledPasswordInput.d.ts +2 -3
  249. package/es/components/TextInput/ControlledPasswordInput.js +36 -37
  250. package/es/components/TextInput/PasswordInput.js +40 -41
  251. package/es/components/TextInput/TextInput.Skeleton.js +9 -10
  252. package/es/components/TextInput/TextInput.js +43 -44
  253. package/es/components/TextInput/util.js +14 -17
  254. package/es/components/Theme/index.js +19 -21
  255. package/es/components/Tile/Tile.js +98 -104
  256. package/es/components/TileGroup/TileGroup.d.ts +3 -4
  257. package/es/components/TileGroup/TileGroup.js +8 -8
  258. package/es/components/TimePicker/TimePicker.d.ts +2 -3
  259. package/es/components/TimePicker/TimePicker.js +14 -14
  260. package/es/components/TimePickerSelect/TimePickerSelect.js +4 -4
  261. package/es/components/Toggle/Toggle.Skeleton.js +8 -9
  262. package/es/components/Toggle/Toggle.js +27 -28
  263. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +14 -15
  264. package/es/components/Toggletip/index.js +43 -49
  265. package/es/components/Tooltip/DefinitionTooltip.js +17 -18
  266. package/es/components/Tooltip/Tooltip.d.ts +3 -0
  267. package/es/components/Tooltip/Tooltip.js +39 -28
  268. package/es/components/TreeView/TreeNode.js +64 -56
  269. package/es/components/TreeView/TreeView.js +44 -37
  270. package/es/components/UIShell/Content.js +8 -9
  271. package/es/components/UIShell/Header.js +7 -8
  272. package/es/components/UIShell/HeaderContainer.js +7 -8
  273. package/es/components/UIShell/HeaderGlobalAction.js +14 -15
  274. package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  275. package/es/components/UIShell/HeaderMenu.d.ts +10 -112
  276. package/es/components/UIShell/HeaderMenu.js +154 -201
  277. package/es/components/UIShell/HeaderMenuButton.js +14 -15
  278. package/es/components/UIShell/HeaderMenuItem.js +21 -20
  279. package/es/components/UIShell/HeaderName.js +9 -10
  280. package/es/components/UIShell/HeaderNavigation.js +10 -11
  281. package/es/components/UIShell/HeaderPanel.js +11 -12
  282. package/es/components/UIShell/HeaderSideNavItems.js +7 -8
  283. package/es/components/UIShell/Link.js +11 -12
  284. package/es/components/UIShell/SideNav.js +30 -32
  285. package/es/components/UIShell/SideNavDetails.js +9 -10
  286. package/es/components/UIShell/SideNavDivider.js +6 -7
  287. package/es/components/UIShell/SideNavFooter.js +13 -14
  288. package/es/components/UIShell/SideNavHeader.js +8 -9
  289. package/es/components/UIShell/SideNavIcon.js +7 -8
  290. package/es/components/UIShell/SideNavItem.js +7 -8
  291. package/es/components/UIShell/SideNavItems.js +10 -11
  292. package/es/components/UIShell/SideNavLink.js +15 -16
  293. package/es/components/UIShell/SideNavLinkText.js +7 -8
  294. package/es/components/UIShell/SideNavMenu.js +20 -21
  295. package/es/components/UIShell/SideNavMenuItem.js +5 -5
  296. package/es/components/UIShell/SideNavSwitcher.js +8 -8
  297. package/es/components/UIShell/SkipToContent.js +9 -10
  298. package/es/components/UIShell/Switcher.js +12 -13
  299. package/es/components/UIShell/SwitcherDivider.js +6 -7
  300. package/es/components/UIShell/SwitcherItem.js +3 -3
  301. package/es/components/UnorderedList/UnorderedList.js +8 -9
  302. package/es/index.js +25 -26
  303. package/es/internal/FloatingMenu.js +30 -32
  304. package/es/internal/Selection.js +15 -17
  305. package/{lib/feature-flags.d.ts → es/internal/__mocks__/mockHTMLElement.d.ts} +4 -2
  306. package/es/internal/createClassWrapper.js +2 -2
  307. package/es/internal/getAnnouncement.d.ts +8 -0
  308. package/es/internal/getAnnouncement.js +22 -0
  309. package/es/internal/keyboard/match.js +6 -7
  310. package/es/internal/useControllableState.d.ts +1 -1
  311. package/es/internal/useControllableState.js +8 -9
  312. package/es/internal/useDelayedState.js +1 -2
  313. package/es/internal/useDocumentLang.d.ts +12 -0
  314. package/es/internal/useId.js +4 -6
  315. package/es/internal/useIdPrefix.js +3 -3
  316. package/es/internal/useMatchMedia.js +1 -2
  317. package/es/internal/useMergedRefs.d.ts +1 -1
  318. package/es/internal/useNoInteractiveChildren.js +2 -4
  319. package/es/internal/useNormalizedInputProps.js +12 -13
  320. package/es/internal/usePrefix.js +3 -3
  321. package/es/internal/useResizeObserver.d.ts +14 -0
  322. package/es/internal/useResizeObserver.js +73 -0
  323. package/es/internal/useSavedCallback.js +1 -3
  324. package/es/internal/wrapFocus.js +23 -35
  325. package/es/prop-types/deprecate.js +1 -4
  326. package/es/prop-types/deprecateValuesWithin.js +1 -4
  327. package/es/prop-types/isRequiredOneOf.js +1 -4
  328. package/es/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  329. package/es/tools/events.js +1 -4
  330. package/es/tools/mergeRefs.js +9 -14
  331. package/es/tools/uniqueId.js +1 -2
  332. package/es/tools/wrapComponent.d.ts +3 -4
  333. package/es/tools/wrapComponent.js +11 -13
  334. package/es/types/common.d.ts +0 -2
  335. package/lib/components/AILabel/index.js +27 -30
  336. package/lib/components/AISkeleton/AISkeletonIcon.js +4 -5
  337. package/lib/components/AISkeleton/AISkeletonPlaceholder.js +4 -5
  338. package/lib/components/AISkeleton/AISkeletonText.js +4 -5
  339. package/lib/components/Accordion/Accordion.Skeleton.js +9 -10
  340. package/lib/components/Accordion/Accordion.js +10 -11
  341. package/lib/components/Accordion/AccordionItem.js +13 -14
  342. package/lib/components/Accordion/AccordionProvider.js +4 -5
  343. package/lib/components/AspectRatio/AspectRatio.js +7 -8
  344. package/lib/components/BadgeIndicator/index.js +5 -6
  345. package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +4 -5
  346. package/lib/components/Button/Button.Skeleton.js +7 -8
  347. package/lib/components/Button/ButtonBase.js +23 -24
  348. package/lib/components/ChatButton/ChatButton.Skeleton.js +5 -6
  349. package/lib/components/ChatButton/ChatButton.js +11 -12
  350. package/lib/components/Checkbox/Checkbox.Skeleton.js +4 -5
  351. package/lib/components/Checkbox/Checkbox.js +19 -20
  352. package/lib/components/CheckboxGroup/CheckboxGroup.js +16 -17
  353. package/lib/components/ClassPrefix/index.js +4 -5
  354. package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +5 -6
  355. package/lib/components/CodeSnippet/CodeSnippet.js +27 -29
  356. package/lib/components/ComboBox/ComboBox.js +24 -30
  357. package/lib/components/ComboBox/tools/filter.js +9 -12
  358. package/lib/components/ComboButton/index.js +16 -18
  359. package/lib/components/ComposedModal/ComposedModal.js +31 -34
  360. package/lib/components/ComposedModal/ModalFooter.js +37 -42
  361. package/lib/components/ComposedModal/ModalHeader.js +14 -15
  362. package/lib/components/ContainedList/ContainedList.js +10 -11
  363. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.js +9 -10
  364. package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +17 -29
  365. package/lib/components/ContentSwitcher/ContentSwitcher.js +98 -124
  366. package/lib/components/ContentSwitcher/index.d.ts +3 -4
  367. package/lib/components/ContextMenu/useContextMenu.js +1 -2
  368. package/lib/components/Copy/Copy.js +11 -12
  369. package/lib/components/CopyButton/CopyButton.js +10 -11
  370. package/lib/components/DataTable/DataTable.d.ts +81 -283
  371. package/lib/components/DataTable/DataTable.js +123 -172
  372. package/lib/components/DataTable/Table.d.ts +2 -2
  373. package/lib/components/DataTable/Table.js +15 -18
  374. package/lib/components/DataTable/TableActionList.d.ts +1 -1
  375. package/lib/components/DataTable/TableBatchAction.js +8 -11
  376. package/lib/components/DataTable/TableBatchActions.js +18 -20
  377. package/lib/components/DataTable/TableBody.d.ts +3 -3
  378. package/lib/components/DataTable/TableBody.js +8 -11
  379. package/lib/components/DataTable/TableCell.d.ts +3 -4
  380. package/lib/components/DataTable/TableContainer.d.ts +2 -3
  381. package/lib/components/DataTable/TableContainer.js +9 -10
  382. package/lib/components/DataTable/TableDecoratorRow.js +4 -5
  383. package/lib/components/DataTable/TableExpandHeader.d.ts +2 -3
  384. package/lib/components/DataTable/TableExpandHeader.js +14 -15
  385. package/lib/components/DataTable/TableExpandRow.js +13 -14
  386. package/lib/components/DataTable/TableExpandedRow.d.ts +3 -3
  387. package/lib/components/DataTable/TableExpandedRow.js +6 -7
  388. package/lib/components/DataTable/TableHead.d.ts +1 -1
  389. package/lib/components/DataTable/TableHeader.d.ts +4 -4
  390. package/lib/components/DataTable/TableHeader.js +15 -16
  391. package/lib/components/DataTable/TableRow.d.ts +3 -4
  392. package/lib/components/DataTable/TableSelectAll.js +11 -12
  393. package/lib/components/DataTable/TableSelectRow.js +12 -13
  394. package/lib/components/DataTable/TableSlugRow.js +4 -5
  395. package/lib/components/DataTable/TableToolbar.js +7 -8
  396. package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
  397. package/lib/components/DataTable/TableToolbarMenu.js +8 -9
  398. package/lib/components/DataTable/TableToolbarSearch.js +22 -24
  399. package/lib/components/DataTable/index.d.ts +1 -1
  400. package/lib/components/DataTable/state/sorting.js +3 -4
  401. package/lib/components/DataTable/tools/filter.js +10 -12
  402. package/lib/components/DataTable/tools/normalize.js +6 -8
  403. package/lib/components/DataTable/tools/sorting.js +24 -30
  404. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +11 -12
  405. package/lib/components/DatePicker/DatePicker.Skeleton.js +7 -8
  406. package/lib/components/DatePicker/DatePicker.js +87 -64
  407. package/lib/components/DatePickerInput/DatePickerInput.d.ts +3 -4
  408. package/lib/components/DatePickerInput/DatePickerInput.js +5 -6
  409. package/lib/components/Dialog/index.d.ts +194 -10
  410. package/lib/components/Dialog/index.js +457 -33
  411. package/lib/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
  412. package/lib/components/Dropdown/Dropdown.Skeleton.js +6 -7
  413. package/lib/components/Dropdown/Dropdown.d.ts +3 -3
  414. package/lib/components/Dropdown/Dropdown.js +40 -43
  415. package/lib/components/ErrorBoundary/ErrorBoundary.js +2 -2
  416. package/lib/components/ExpandableSearch/ExpandableSearch.js +9 -10
  417. package/lib/components/FeatureFlags/index.js +11 -12
  418. package/lib/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
  419. package/lib/components/FileUploader/FileUploader.Skeleton.js +4 -5
  420. package/lib/components/FileUploader/FileUploader.d.ts +2 -3
  421. package/lib/components/FileUploader/FileUploader.js +22 -24
  422. package/lib/components/FileUploader/FileUploaderButton.d.ts +2 -3
  423. package/lib/components/FileUploader/FileUploaderButton.js +16 -17
  424. package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
  425. package/lib/components/FileUploader/FileUploaderDropContainer.js +15 -16
  426. package/lib/components/FileUploader/FileUploaderItem.d.ts +2 -3
  427. package/lib/components/FileUploader/FileUploaderItem.js +13 -14
  428. package/lib/components/FileUploader/Filename.d.ts +3 -4
  429. package/lib/components/FileUploader/Filename.js +9 -10
  430. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.js +4 -5
  431. package/lib/components/FluidComboBox/FluidComboBox.js +5 -6
  432. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.js +5 -6
  433. package/lib/components/FluidDatePicker/FluidDatePicker.js +10 -11
  434. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.js +4 -5
  435. package/lib/components/FluidDropdown/FluidDropdown.js +5 -6
  436. package/lib/components/FluidForm/FluidForm.d.ts +3 -4
  437. package/lib/components/FluidForm/FluidForm.js +5 -6
  438. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +4 -5
  439. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +6 -7
  440. package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.js +4 -5
  441. package/lib/components/FluidNumberInput/FluidNumberInput.d.ts +40 -1
  442. package/lib/components/FluidNumberInput/FluidNumberInput.js +38 -5
  443. package/lib/components/FluidSearch/FluidSearch.Skeleton.js +4 -5
  444. package/lib/components/FluidSearch/FluidSearch.js +4 -5
  445. package/lib/components/FluidSelect/FluidSelect.Skeleton.js +4 -5
  446. package/lib/components/FluidSelect/FluidSelect.js +5 -6
  447. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.js +4 -5
  448. package/lib/components/FluidTextArea/FluidTextArea.js +4 -5
  449. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.js +4 -5
  450. package/lib/components/FluidTextInput/FluidTextInput.js +5 -6
  451. package/lib/components/FluidTimePicker/FluidTimePicker.Skeleton.js +5 -6
  452. package/lib/components/FluidTimePicker/FluidTimePicker.js +11 -12
  453. package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +5 -6
  454. package/lib/components/Form/Form.js +5 -6
  455. package/lib/components/FormGroup/FormGroup.d.ts +3 -4
  456. package/lib/components/FormGroup/FormGroup.js +11 -12
  457. package/lib/components/FormItem/FormItem.js +5 -6
  458. package/lib/components/FormLabel/FormLabel.js +6 -7
  459. package/lib/components/Grid/CSSGrid.js +17 -19
  460. package/lib/components/Grid/Column.js +28 -27
  461. package/lib/components/Grid/ColumnHang.js +6 -7
  462. package/lib/components/Grid/FlexGrid.js +9 -10
  463. package/lib/components/Grid/GridContext.d.ts +2 -2
  464. package/lib/components/Grid/GridContext.js +10 -29
  465. package/lib/components/Grid/Row.js +8 -9
  466. package/lib/components/Heading/index.js +5 -6
  467. package/lib/components/Icon/Icon.Skeleton.js +4 -5
  468. package/lib/components/IconButton/index.js +26 -22
  469. package/lib/components/IconIndicator/index.js +7 -8
  470. package/lib/components/IdPrefix/index.js +4 -5
  471. package/lib/components/InlineLoading/InlineLoading.js +9 -10
  472. package/lib/components/Layer/index.d.ts +4 -0
  473. package/lib/components/Layer/index.js +16 -10
  474. package/lib/components/Layout/index.js +21 -26
  475. package/lib/components/LayoutDirection/LayoutDirection.js +6 -7
  476. package/lib/components/Link/Link.d.ts +1 -1
  477. package/lib/components/Link/Link.js +15 -16
  478. package/lib/components/ListBox/ListBox.d.ts +2 -3
  479. package/lib/components/ListBox/ListBoxField.d.ts +3 -4
  480. package/lib/components/ListBox/ListBoxField.js +6 -7
  481. package/lib/components/ListBox/ListBoxMenu.d.ts +2 -3
  482. package/lib/components/ListBox/ListBoxMenu.js +5 -6
  483. package/lib/components/ListBox/ListBoxMenuIcon.js +4 -5
  484. package/lib/components/ListBox/ListBoxMenuItem.d.ts +2 -3
  485. package/lib/components/ListBox/ListBoxMenuItem.js +8 -10
  486. package/lib/components/ListBox/ListBoxSelection.js +8 -9
  487. package/lib/components/ListBox/next/ListBoxSelection.js +9 -10
  488. package/lib/components/ListBox/next/ListBoxTrigger.js +5 -6
  489. package/lib/components/ListItem/ListItem.js +5 -6
  490. package/lib/components/Loading/Loading.d.ts +3 -3
  491. package/lib/components/Loading/Loading.js +8 -9
  492. package/lib/components/Menu/Menu.js +23 -24
  493. package/lib/components/Menu/MenuItem.js +39 -44
  494. package/lib/components/MenuButton/index.js +16 -18
  495. package/lib/components/Modal/Modal.d.ts +2 -3
  496. package/lib/components/Modal/Modal.js +55 -63
  497. package/lib/components/ModalWrapper/ModalWrapper.js +2 -2
  498. package/lib/components/MultiSelect/FilterableMultiSelect.js +46 -52
  499. package/lib/components/MultiSelect/MultiSelect.js +43 -45
  500. package/lib/components/MultiSelect/tools/sorting.js +11 -15
  501. package/lib/components/Notification/Notification.js +96 -105
  502. package/lib/components/NumberInput/NumberFormatPropTypes.d.ts +29 -0
  503. package/lib/components/NumberInput/NumberFormatPropTypes.js +48 -0
  504. package/lib/components/NumberInput/NumberInput.Skeleton.js +6 -7
  505. package/lib/components/NumberInput/NumberInput.d.ts +39 -3
  506. package/lib/components/NumberInput/NumberInput.js +173 -43
  507. package/lib/components/OrderedList/OrderedList.js +7 -8
  508. package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  509. package/lib/components/OverflowMenu/OverflowMenu.js +35 -41
  510. package/lib/components/OverflowMenu/next/index.js +12 -13
  511. package/lib/components/PageHeader/PageHeader.d.ts +29 -5
  512. package/lib/components/PageHeader/PageHeader.js +119 -73
  513. package/lib/components/Pagination/Pagination.Skeleton.js +4 -5
  514. package/lib/components/Pagination/Pagination.js +24 -25
  515. package/lib/components/Pagination/experimental/PageSelector.js +8 -9
  516. package/lib/components/Pagination/experimental/Pagination.js +20 -21
  517. package/lib/components/PaginationNav/PaginationNav.js +33 -38
  518. package/lib/components/Popover/index.js +26 -28
  519. package/lib/components/ProgressBar/ProgressBar.js +11 -12
  520. package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +5 -6
  521. package/lib/components/ProgressIndicator/ProgressIndicator.js +29 -32
  522. package/lib/components/RadioTile/RadioTile.js +17 -18
  523. package/lib/components/Search/Search.Skeleton.js +5 -6
  524. package/lib/components/Search/Search.js +26 -28
  525. package/lib/components/Select/Select.Skeleton.js +5 -6
  526. package/lib/components/Select/Select.js +24 -25
  527. package/lib/components/SelectItem/SelectItem.js +8 -9
  528. package/lib/components/SelectItemGroup/SelectItemGroup.js +7 -8
  529. package/lib/components/ShapeIndicator/index.js +7 -8
  530. package/lib/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
  531. package/lib/components/SkeletonIcon/SkeletonIcon.js +5 -10
  532. package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +4 -5
  533. package/lib/components/SkeletonText/SkeletonText.js +8 -9
  534. package/lib/components/Slider/Slider.Skeleton.js +8 -9
  535. package/lib/components/Slider/Slider.js +69 -83
  536. package/lib/components/Slider/SliderHandles.js +6 -6
  537. package/lib/components/StructuredList/StructuredList.Skeleton.js +5 -6
  538. package/lib/components/Tabs/Tabs.Skeleton.js +5 -6
  539. package/lib/components/Tabs/Tabs.js +83 -98
  540. package/lib/components/Tabs/usePressable.js +7 -8
  541. package/lib/components/Tag/DismissibleTag.js +16 -17
  542. package/lib/components/Tag/OperationalTag.js +10 -11
  543. package/lib/components/Tag/SelectableTag.js +13 -14
  544. package/lib/components/Tag/Tag.Skeleton.js +5 -6
  545. package/lib/components/Tag/Tag.js +19 -20
  546. package/lib/components/Text/Text.js +6 -7
  547. package/lib/components/Text/TextDirection.js +5 -6
  548. package/lib/components/TextArea/TextArea.js +3 -3
  549. package/lib/components/TextInput/ControlledPasswordInput.d.ts +2 -3
  550. package/lib/components/TextInput/ControlledPasswordInput.js +24 -25
  551. package/lib/components/TextInput/PasswordInput.js +26 -27
  552. package/lib/components/TextInput/TextInput.Skeleton.js +5 -6
  553. package/lib/components/TextInput/TextInput.js +27 -28
  554. package/lib/components/TextInput/util.js +14 -17
  555. package/lib/components/Theme/index.js +10 -12
  556. package/lib/components/Tile/Tile.js +68 -74
  557. package/lib/components/TileGroup/TileGroup.d.ts +3 -4
  558. package/lib/components/TimePicker/TimePicker.d.ts +2 -3
  559. package/lib/components/Toggle/Toggle.Skeleton.js +4 -5
  560. package/lib/components/Toggle/Toggle.js +17 -18
  561. package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +6 -7
  562. package/lib/components/Toggletip/index.js +33 -39
  563. package/lib/components/Tooltip/DefinitionTooltip.js +13 -14
  564. package/lib/components/Tooltip/Tooltip.d.ts +3 -0
  565. package/lib/components/Tooltip/Tooltip.js +33 -22
  566. package/lib/components/TreeView/TreeNode.js +40 -32
  567. package/lib/components/TreeView/TreeView.js +41 -34
  568. package/lib/components/UIShell/Content.js +6 -7
  569. package/lib/components/UIShell/Header.js +5 -6
  570. package/lib/components/UIShell/HeaderContainer.js +5 -6
  571. package/lib/components/UIShell/HeaderGlobalAction.js +12 -13
  572. package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  573. package/lib/components/UIShell/HeaderMenu.d.ts +10 -112
  574. package/lib/components/UIShell/HeaderMenu.js +152 -199
  575. package/lib/components/UIShell/HeaderMenuButton.js +10 -11
  576. package/lib/components/UIShell/HeaderMenuItem.js +17 -16
  577. package/lib/components/UIShell/HeaderName.js +6 -7
  578. package/lib/components/UIShell/HeaderNavigation.js +7 -8
  579. package/lib/components/UIShell/HeaderPanel.js +9 -10
  580. package/lib/components/UIShell/HeaderSideNavItems.js +5 -6
  581. package/lib/components/UIShell/Link.js +8 -9
  582. package/lib/components/UIShell/SideNav.js +23 -25
  583. package/lib/components/UIShell/SideNavDetails.js +6 -7
  584. package/lib/components/UIShell/SideNavDivider.js +3 -4
  585. package/lib/components/UIShell/SideNavFooter.js +6 -7
  586. package/lib/components/UIShell/SideNavHeader.js +5 -6
  587. package/lib/components/UIShell/SideNavIcon.js +5 -6
  588. package/lib/components/UIShell/SideNavItem.js +5 -6
  589. package/lib/components/UIShell/SideNavItems.js +5 -6
  590. package/lib/components/UIShell/SideNavLink.js +10 -11
  591. package/lib/components/UIShell/SideNavLinkText.js +5 -6
  592. package/lib/components/UIShell/SideNavMenu.js +11 -12
  593. package/lib/components/UIShell/SkipToContent.js +7 -8
  594. package/lib/components/UIShell/Switcher.js +4 -5
  595. package/lib/components/UIShell/SwitcherDivider.js +4 -5
  596. package/lib/components/UnorderedList/UnorderedList.js +6 -7
  597. package/lib/index.js +81 -82
  598. package/lib/internal/FloatingMenu.js +26 -28
  599. package/lib/internal/Selection.js +15 -17
  600. package/{es/feature-flags.d.ts → lib/internal/__mocks__/mockHTMLElement.d.ts} +4 -2
  601. package/lib/internal/getAnnouncement.d.ts +8 -0
  602. package/lib/internal/getAnnouncement.js +26 -0
  603. package/lib/internal/keyboard/match.js +6 -7
  604. package/lib/internal/useControllableState.d.ts +1 -1
  605. package/lib/internal/useControllableState.js +8 -9
  606. package/lib/internal/useDelayedState.js +1 -2
  607. package/lib/internal/useDocumentLang.d.ts +12 -0
  608. package/lib/internal/useId.js +2 -4
  609. package/lib/internal/useMatchMedia.js +1 -2
  610. package/lib/internal/useMergedRefs.d.ts +1 -1
  611. package/lib/internal/useNoInteractiveChildren.js +2 -4
  612. package/lib/internal/useNormalizedInputProps.js +9 -10
  613. package/lib/internal/useResizeObserver.d.ts +14 -0
  614. package/lib/internal/useResizeObserver.js +77 -0
  615. package/lib/internal/useSavedCallback.js +1 -3
  616. package/lib/internal/wrapFocus.js +23 -35
  617. package/lib/prop-types/deprecate.js +1 -4
  618. package/lib/prop-types/deprecateValuesWithin.js +1 -4
  619. package/lib/prop-types/isRequiredOneOf.js +1 -4
  620. package/lib/prop-types/requiredIfGivenPropIsTruthy.js +1 -4
  621. package/lib/tools/events.js +1 -4
  622. package/lib/tools/mergeRefs.js +9 -14
  623. package/lib/tools/uniqueId.js +1 -2
  624. package/lib/tools/wrapComponent.d.ts +3 -4
  625. package/lib/tools/wrapComponent.js +9 -11
  626. package/lib/types/common.d.ts +0 -2
  627. package/package.json +21 -20
  628. package/scss/components/content-switcher/_tokens.scss +9 -0
  629. package/telemetry.yml +27 -2
  630. package/es/components/ContentSwitcher/index.js +0 -13
  631. package/es/components/DataTable/index.js +0 -76
  632. package/es/internal/useAnnouncer.js +0 -21
  633. package/lib/components/ContentSwitcher/index.js +0 -18
  634. package/lib/components/DataTable/index.js +0 -82
  635. package/lib/internal/useAnnouncer.js +0 -25
@@ -35,16 +35,15 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
35
35
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
36
36
 
37
37
  var _CheckboxCheckedFille, _Checkbox, _ChevronDown, _ChevronDown2;
38
- const Tile = /*#__PURE__*/React__default["default"].forwardRef(function Tile(_ref, ref) {
39
- let {
40
- children,
41
- className,
42
- decorator,
43
- light = false,
44
- slug,
45
- hasRoundedCorners = false,
46
- ...rest
47
- } = _ref;
38
+ const Tile = /*#__PURE__*/React__default["default"].forwardRef(function Tile({
39
+ children,
40
+ className,
41
+ decorator,
42
+ light = false,
43
+ slug,
44
+ hasRoundedCorners = false,
45
+ ...rest
46
+ }, ref) {
48
47
  const prefix = usePrefix.usePrefix();
49
48
  const tileClasses = cx__default["default"](`${prefix}--tile`, {
50
49
  [`${prefix}--tile--light`]: light,
@@ -91,22 +90,21 @@ Tile.propTypes = {
91
90
  */
92
91
  slug: deprecate["default"](PropTypes__default["default"].node, 'The `slug` prop for `Tile` has ' + 'been deprecated in favor of the new `decorator` prop. It will be removed in the next major release.')
93
92
  };
94
- const ClickableTile = /*#__PURE__*/React__default["default"].forwardRef(function ClickableTile(_ref2, ref) {
95
- let {
96
- children,
97
- className,
98
- clicked = false,
99
- decorator,
100
- disabled,
101
- href,
102
- light,
103
- onClick = () => {},
104
- onKeyDown = () => {},
105
- renderIcon: Icon,
106
- hasRoundedCorners,
107
- slug,
108
- ...rest
109
- } = _ref2;
93
+ const ClickableTile = /*#__PURE__*/React__default["default"].forwardRef(function ClickableTile({
94
+ children,
95
+ className,
96
+ clicked = false,
97
+ decorator,
98
+ disabled,
99
+ href,
100
+ light,
101
+ onClick = () => {},
102
+ onKeyDown = () => {},
103
+ renderIcon: Icon,
104
+ hasRoundedCorners,
105
+ slug,
106
+ ...rest
107
+ }, ref) {
110
108
  const prefix = usePrefix.usePrefix();
111
109
  const classes = cx__default["default"](`${prefix}--tile`, `${prefix}--tile--clickable`, {
112
110
  [`${prefix}--tile--is-clicked`]: clicked,
@@ -215,24 +213,23 @@ ClickableTile.propTypes = {
215
213
  */
216
214
  renderIcon: PropTypes__default["default"].oneOfType([PropTypes__default["default"].func, PropTypes__default["default"].object])
217
215
  };
218
- const SelectableTile = /*#__PURE__*/React__default["default"].forwardRef(function SelectableTile(_ref3, ref) {
219
- let {
220
- children,
221
- className,
222
- decorator,
223
- disabled,
224
- id,
225
- light,
226
- onClick = () => {},
227
- onChange = () => {},
228
- onKeyDown = () => {},
229
- selected = false,
230
- tabIndex = 0,
231
- title = 'title',
232
- slug,
233
- hasRoundedCorners,
234
- ...rest
235
- } = _ref3;
216
+ const SelectableTile = /*#__PURE__*/React__default["default"].forwardRef(function SelectableTile({
217
+ children,
218
+ className,
219
+ decorator,
220
+ disabled,
221
+ id,
222
+ light,
223
+ onClick = () => {},
224
+ onChange = () => {},
225
+ onKeyDown = () => {},
226
+ selected = false,
227
+ tabIndex = 0,
228
+ title = 'title',
229
+ slug,
230
+ hasRoundedCorners,
231
+ ...rest
232
+ }, ref) {
236
233
  const prefix = usePrefix.usePrefix();
237
234
  const clickHandler = onClick;
238
235
  const keyDownHandler = onKeyDown;
@@ -382,28 +379,27 @@ SelectableTile.propTypes = {
382
379
  */
383
380
  value: deprecate["default"](PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]), 'The `value` property is no longer used. It will be removed in the next major release.`')
384
381
  };
385
- const ExpandableTile = /*#__PURE__*/React__default["default"].forwardRef(function ExpandableTile(_ref4, forwardRef) {
386
- let {
387
- tabIndex = 0,
388
- className,
389
- children,
390
- decorator,
391
- expanded = false,
392
- tileMaxHeight = 0,
393
- // eslint-disable-line
394
- tilePadding = 0,
395
- // eslint-disable-line
396
- onClick,
397
- onKeyUp,
398
- tileCollapsedIconText = 'Interact to expand Tile',
399
- tileExpandedIconText = 'Interact to collapse Tile',
400
- tileCollapsedLabel,
401
- tileExpandedLabel,
402
- light,
403
- slug,
404
- hasRoundedCorners,
405
- ...rest
406
- } = _ref4;
382
+ const ExpandableTile = /*#__PURE__*/React__default["default"].forwardRef(function ExpandableTile({
383
+ tabIndex = 0,
384
+ className,
385
+ children,
386
+ decorator,
387
+ expanded = false,
388
+ tileMaxHeight = 0,
389
+ // eslint-disable-line
390
+ tilePadding = 0,
391
+ // eslint-disable-line
392
+ onClick,
393
+ onKeyUp,
394
+ tileCollapsedIconText = 'Interact to expand Tile',
395
+ tileExpandedIconText = 'Interact to collapse Tile',
396
+ tileCollapsedLabel,
397
+ tileExpandedLabel,
398
+ light,
399
+ slug,
400
+ hasRoundedCorners,
401
+ ...rest
402
+ }, forwardRef) {
407
403
  const [isTileMaxHeight, setIsTileMaxHeight] = React.useState(tileMaxHeight);
408
404
  const [isTilePadding, setIsTilePadding] = React.useState(tilePadding);
409
405
  const [prevExpanded, setPrevExpanded] = React.useState(expanded);
@@ -629,10 +625,9 @@ ExpandableTile.propTypes = {
629
625
  tileExpandedLabel: PropTypes__default["default"].string
630
626
  };
631
627
  ExpandableTile.displayName = 'ExpandableTile';
632
- const TileAboveTheFoldContent = /*#__PURE__*/React__default["default"].forwardRef(function TilAboveTheFoldContent(_ref5, ref) {
633
- let {
634
- children
635
- } = _ref5;
628
+ const TileAboveTheFoldContent = /*#__PURE__*/React__default["default"].forwardRef(function TilAboveTheFoldContent({
629
+ children
630
+ }, ref) {
636
631
  const prefix = usePrefix.usePrefix();
637
632
  return /*#__PURE__*/React__default["default"].createElement("div", {
638
633
  ref: ref,
@@ -646,10 +641,9 @@ TileAboveTheFoldContent.propTypes = {
646
641
  children: PropTypes__default["default"].node
647
642
  };
648
643
  TileAboveTheFoldContent.displayName = 'TileAboveTheFoldContent';
649
- const TileBelowTheFoldContent = /*#__PURE__*/React__default["default"].forwardRef(function TileBelowTheFoldContent(_ref6, ref) {
650
- let {
651
- children
652
- } = _ref6;
644
+ const TileBelowTheFoldContent = /*#__PURE__*/React__default["default"].forwardRef(function TileBelowTheFoldContent({
645
+ children
646
+ }, ref) {
653
647
  const prefix = usePrefix.usePrefix();
654
648
  return /*#__PURE__*/React__default["default"].createElement("div", {
655
649
  ref: ref,
@@ -1,14 +1,13 @@
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 { ReactNode } from 'react';
9
- import { ReactAttr } from '../../types/common';
8
+ import { type HTMLAttributes, type ReactNode } from 'react';
10
9
  type ExcludedAttributes = 'onChange';
11
- export interface TileGroupProps extends Omit<ReactAttr<HTMLFieldSetElement>, ExcludedAttributes> {
10
+ export interface TileGroupProps extends Omit<HTMLAttributes<HTMLFieldSetElement>, ExcludedAttributes> {
12
11
  /**
13
12
  * Provide a collection of <RadioTile> components to render in the group
14
13
  */
@@ -4,10 +4,9 @@
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 React from 'react';
8
- import { ReactAttr } from '../../types/common';
7
+ import React, { type HTMLAttributes } from 'react';
9
8
  type ExcludedAttributes = 'id' | 'value';
10
- export interface TimePickerProps extends Omit<ReactAttr<HTMLInputElement>, ExcludedAttributes> {
9
+ export interface TimePickerProps extends Omit<HTMLAttributes<HTMLInputElement>, ExcludedAttributes> {
11
10
  /**
12
11
  * Pass in the children that will be rendered next to the form control
13
12
  */
@@ -21,11 +21,10 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
21
21
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
22
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
23
23
 
24
- const ToggleSkeleton = _ref => {
25
- let {
26
- className,
27
- ...rest
28
- } = _ref;
24
+ const ToggleSkeleton = ({
25
+ className,
26
+ ...rest
27
+ }) => {
29
28
  const prefix = usePrefix.usePrefix();
30
29
  const skeletonClassNames = cx__default["default"](`${prefix}--toggle ${prefix}--toggle--skeleton`, className);
31
30
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
@@ -25,24 +25,23 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
25
25
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
26
26
 
27
27
  var _path;
28
- function Toggle(_ref) {
29
- let {
30
- 'aria-labelledby': ariaLabelledby,
31
- className,
32
- defaultToggled = false,
33
- disabled = false,
34
- hideLabel = false,
35
- id,
36
- labelA = 'Off',
37
- labelB = 'On',
38
- labelText,
39
- onClick,
40
- onToggle,
41
- readOnly,
42
- size = 'md',
43
- toggled,
44
- ...other
45
- } = _ref;
28
+ function Toggle({
29
+ 'aria-labelledby': ariaLabelledby,
30
+ className,
31
+ defaultToggled = false,
32
+ disabled = false,
33
+ hideLabel = false,
34
+ id,
35
+ labelA = 'Off',
36
+ labelB = 'On',
37
+ labelText,
38
+ onClick,
39
+ onToggle,
40
+ readOnly,
41
+ size = 'md',
42
+ toggled,
43
+ ...other
44
+ }) {
46
45
  const prefix = usePrefix.usePrefix();
47
46
  const buttonElement = React.useRef(null);
48
47
  const [checked, setChecked] = useControllableState.useControllableState({
@@ -22,13 +22,12 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
22
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
23
23
 
24
24
  var _path;
25
- const ToggleSmallSkeleton = _ref => {
26
- let {
27
- id,
28
- labelText,
29
- className,
30
- ...rest
31
- } = _ref;
25
+ const ToggleSmallSkeleton = ({
26
+ id,
27
+ labelText,
28
+ className,
29
+ ...rest
30
+ }) => {
32
31
  const prefix = React.useContext(usePrefix.PrefixContext);
33
32
  return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
34
33
  className: cx__default["default"](`${prefix}--form-item`, className)
@@ -29,13 +29,12 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
29
29
  /**
30
30
  * Used to render the label for a Toggletip
31
31
  */
32
- function ToggletipLabel(_ref) {
33
- let {
34
- as: BaseComponent = 'span',
35
- children,
36
- className: customClassName,
37
- ...rest
38
- } = _ref;
32
+ function ToggletipLabel({
33
+ as: BaseComponent = 'span',
34
+ children,
35
+ className: customClassName,
36
+ ...rest
37
+ }) {
39
38
  const prefix = usePrefix.usePrefix();
40
39
  const className = cx__default["default"](`${prefix}--toggletip-label`, customClassName);
41
40
  const BaseComponentAsAny = BaseComponent;
@@ -70,16 +69,15 @@ function useToggletip() {
70
69
  * is responsible for coordinating between interactions with the button and the
71
70
  * visibility of the content
72
71
  */
73
- function Toggletip(_ref2) {
74
- let {
75
- align,
76
- as,
77
- autoAlign,
78
- className: customClassName,
79
- children,
80
- defaultOpen = false,
81
- ...rest
82
- } = _ref2;
72
+ function Toggletip({
73
+ align,
74
+ as,
75
+ autoAlign,
76
+ className: customClassName,
77
+ children,
78
+ defaultOpen = false,
79
+ ...rest
80
+ }) {
83
81
  const ref = React.useRef(null);
84
82
  const [open, setOpen] = React.useState(defaultOpen);
85
83
  const prefix = usePrefix.usePrefix();
@@ -137,10 +135,9 @@ function Toggletip(_ref2) {
137
135
  actions.close();
138
136
  }
139
137
  });
140
- useEvent.useWindowEvent('click', _ref3 => {
141
- let {
142
- target
143
- } = _ref3;
138
+ useEvent.useWindowEvent('click', ({
139
+ target
140
+ }) => {
144
141
  if (open && target instanceof Node && !ref.current?.contains(target)) {
145
142
  actions.close();
146
143
  }
@@ -219,14 +216,13 @@ Toggletip.propTypes = {
219
216
  * clicks and keyboard interactions.
220
217
  */
221
218
 
222
- const ToggletipButton = /*#__PURE__*/React__default["default"].forwardRef(function ToggletipButton(_ref4, ref) {
223
- let {
224
- children,
225
- className: customClassName,
226
- label = 'Show information',
227
- as: BaseComponent,
228
- ...rest
229
- } = _ref4;
219
+ const ToggletipButton = /*#__PURE__*/React__default["default"].forwardRef(function ToggletipButton({
220
+ children,
221
+ className: customClassName,
222
+ label = 'Show information',
223
+ as: BaseComponent,
224
+ ...rest
225
+ }, ref) {
230
226
  const toggletip = useToggletip();
231
227
  const prefix = usePrefix.usePrefix();
232
228
  const className = cx__default["default"](`${prefix}--toggletip-button`, customClassName);
@@ -264,11 +260,10 @@ ToggletipButton.displayName = 'ToggletipButton';
264
260
  * `children` passed in as a prop inside of `PopoverContent` so that they will
265
261
  * be rendered inside of the popover for this component.
266
262
  */
267
- const ToggletipContent = /*#__PURE__*/React__default["default"].forwardRef(function ToggletipContent(_ref5, ref) {
268
- let {
269
- children,
270
- className: customClassName
271
- } = _ref5;
263
+ const ToggletipContent = /*#__PURE__*/React__default["default"].forwardRef(function ToggletipContent({
264
+ children,
265
+ className: customClassName
266
+ }, ref) {
272
267
  const toggletip = useToggletip();
273
268
  const prefix = usePrefix.usePrefix();
274
269
  return /*#__PURE__*/React__default["default"].createElement(index.PopoverContent, _rollupPluginBabelHelpers["extends"]({
@@ -296,11 +291,10 @@ ToggletipContent.displayName = 'ToggletipContent';
296
291
  * `ToggletipActions` is a container for one or two actions present at the base
297
292
  * of a toggletip. It is used for layout of these items.
298
293
  */
299
- function ToggletipActions(_ref6) {
300
- let {
301
- children,
302
- className: customClassName
303
- } = _ref6;
294
+ function ToggletipActions({
295
+ children,
296
+ className: customClassName
297
+ }) {
304
298
  const prefix = usePrefix.usePrefix();
305
299
  const className = cx__default["default"](`${prefix}--toggletip-actions`, customClassName);
306
300
  return /*#__PURE__*/React__default["default"].createElement("div", {
@@ -26,20 +26,19 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
26
26
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
27
27
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
28
28
 
29
- const DefinitionTooltip = _ref => {
30
- let {
31
- align = 'bottom',
32
- autoAlign,
33
- className,
34
- children,
35
- definition,
36
- defaultOpen = false,
37
- id,
38
- openOnHover,
39
- tooltipText,
40
- triggerClassName,
41
- ...rest
42
- } = _ref;
29
+ const DefinitionTooltip = ({
30
+ align = 'bottom',
31
+ autoAlign,
32
+ className,
33
+ children,
34
+ definition,
35
+ defaultOpen = false,
36
+ id,
37
+ openOnHover,
38
+ tooltipText,
39
+ triggerClassName,
40
+ ...rest
41
+ }) => {
43
42
  const [isOpen, setOpen] = React.useState(defaultOpen);
44
43
  const prefix = usePrefix.usePrefix();
45
44
  const tooltipId = useId.useFallbackId(id);
@@ -54,6 +54,9 @@ interface TooltipBaseProps {
54
54
  /**
55
55
  * Provide the label to be rendered inside of the Tooltip. The label will use
56
56
  * `aria-labelledby` and will fully describe the child node that is provided.
57
+ * If the child already has an `aria-label`, the tooltip will not apply
58
+ * `aria-labelledby`. If the child has its own `aria-labelledby`, that value
59
+ * will be kept. Otherwise, the tooltip will use its own ID to label the child.
57
60
  * This means that if you have text in the child node, that it will not be
58
61
  * announced to the screen reader.
59
62
  *
@@ -32,22 +32,21 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
32
32
  * Event types that trigger a "drag" to stop.
33
33
  */
34
34
  const DRAG_STOP_EVENT_TYPES = new Set(['mouseup', 'touchend', 'touchcancel']);
35
- const Tooltip = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) => {
36
- let {
37
- as,
38
- align = 'top',
39
- className: customClassName,
40
- children,
41
- label,
42
- description,
43
- enterDelayMs = 100,
44
- leaveDelayMs = 300,
45
- defaultOpen = false,
46
- closeOnActivation = false,
47
- dropShadow = false,
48
- highContrast = true,
49
- ...rest
50
- } = _ref;
35
+ const Tooltip = /*#__PURE__*/React__default["default"].forwardRef(({
36
+ as,
37
+ align = 'top',
38
+ className: customClassName,
39
+ children,
40
+ label,
41
+ description,
42
+ enterDelayMs = 100,
43
+ leaveDelayMs = 300,
44
+ defaultOpen = false,
45
+ closeOnActivation = false,
46
+ dropShadow = false,
47
+ highContrast = true,
48
+ ...rest
49
+ }, ref) => {
51
50
  const tooltipRef = React.useRef(null);
52
51
  const [open, setOpen] = useDelayedState.useDelayedState(defaultOpen);
53
52
  const [isDragging, setIsDragging] = React.useState(false);
@@ -56,6 +55,21 @@ const Tooltip = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) =>
56
55
  const id = useId.useId('tooltip');
57
56
  const prefix = usePrefix.usePrefix();
58
57
  const child = React__default["default"].Children.only(children);
58
+ const {
59
+ 'aria-label': ariaLabel,
60
+ 'aria-labelledby': ariaLabelledBy,
61
+ 'aria-describedby': ariaDescribedBy
62
+ } = child?.props ?? {};
63
+ const hasLabel = !!label;
64
+ const hasAriaLabel = typeof ariaLabel === 'string' ? ariaLabel.trim() !== '' : false;
65
+
66
+ // An `aria-label` takes precedence over `aria-describedby`, but when it's
67
+ // needed and the user doesn't specify one, the fallback `id` is used.
68
+ const labelledBy = hasAriaLabel ? null : hasLabel ? ariaLabelledBy ?? id : undefined;
69
+
70
+ // If `aria-label` is present, use any provided `aria-describedby`.
71
+ // If not, fallback to child's `aria-describedby` or the tooltip `id` if needed.
72
+ const describedBy = hasAriaLabel ? ariaDescribedBy : ariaDescribedBy ?? (!hasLabel && !ariaLabelledBy ? id : undefined);
59
73
  const triggerProps = {
60
74
  onFocus: () => !focusByMouse && setOpen(true),
61
75
  onBlur: () => {
@@ -68,7 +82,9 @@ const Tooltip = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) =>
68
82
  onMouseLeave,
69
83
  onMouseDown,
70
84
  onMouseMove: onMouseMove,
71
- onTouchStart: onDragStart
85
+ onTouchStart: onDragStart,
86
+ 'aria-labelledby': labelledBy,
87
+ 'aria-describedby': describedBy
72
88
  };
73
89
  function getChildEventHandlers(childProps) {
74
90
  const eventHandlerFunctions = Object.keys(triggerProps).filter(prop => prop.startsWith('on'));
@@ -83,11 +99,6 @@ const Tooltip = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref) =>
83
99
  });
84
100
  return eventHandlers;
85
101
  }
86
- if (label) {
87
- triggerProps['aria-labelledby'] = id;
88
- } else {
89
- triggerProps['aria-describedby'] = id;
90
- }
91
102
  const onKeyDown = React.useCallback(event => {
92
103
  if (open && match.match(event, keys.Escape)) {
93
104
  event.stopPropagation();
@@ -27,27 +27,26 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
27
27
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
28
28
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
29
29
 
30
- const TreeNode = /*#__PURE__*/React__default["default"].forwardRef((_ref, forwardedRef) => {
31
- let {
32
- active,
33
- children,
34
- className,
35
- depth: propDepth,
36
- disabled,
37
- id: nodeId,
38
- isExpanded,
39
- defaultIsExpanded,
40
- label,
41
- onNodeFocusEvent,
42
- onSelect: onNodeSelect,
43
- onToggle,
44
- onTreeSelect,
45
- renderIcon: Icon,
46
- selected: propSelected,
47
- value,
48
- href,
49
- ...rest
50
- } = _ref;
30
+ const TreeNode = /*#__PURE__*/React__default["default"].forwardRef(({
31
+ active,
32
+ children,
33
+ className,
34
+ depth: propDepth,
35
+ disabled,
36
+ id: nodeId,
37
+ isExpanded,
38
+ defaultIsExpanded,
39
+ label,
40
+ onNodeFocusEvent,
41
+ onSelect: onNodeSelect,
42
+ onToggle,
43
+ onTreeSelect,
44
+ renderIcon: Icon,
45
+ selected: propSelected,
46
+ value,
47
+ href,
48
+ ...rest
49
+ }, forwardedRef) => {
51
50
  // These are provided by the parent TreeView component
52
51
  const depth = propDepth;
53
52
  const selected = propSelected;
@@ -80,19 +79,28 @@ const TreeNode = /*#__PURE__*/React__default["default"].forwardRef((_ref, forwar
80
79
  forwardedRef.current = element;
81
80
  }
82
81
  };
83
- const nodesWithProps = React__default["default"].Children.map(children, node => {
84
- if (/*#__PURE__*/React__default["default"].isValidElement(node)) {
82
+ function enhanceTreeNodes(children) {
83
+ return React__default["default"].Children.map(children, node => {
84
+ if (! /*#__PURE__*/React__default["default"].isValidElement(node)) return node;
85
+ const isTreeNode = node.type.displayName === 'TreeNode';
86
+ if (isTreeNode) {
87
+ return /*#__PURE__*/React__default["default"].cloneElement(node, {
88
+ active,
89
+ depth: depth + 1,
90
+ disabled: disabled || node.props.disabled,
91
+ onTreeSelect,
92
+ onNodeFocusEvent,
93
+ selected,
94
+ tabIndex: node.props.disabled ? null : -1
95
+ });
96
+ }
97
+ const newChildren = enhanceTreeNodes(node.props.children);
85
98
  return /*#__PURE__*/React__default["default"].cloneElement(node, {
86
- active,
87
- depth: depth + 1,
88
- disabled: disabled || node.props.disabled,
89
- onTreeSelect,
90
- onNodeFocusEvent,
91
- selected,
92
- tabIndex: !node.props.disabled && -1 || null
99
+ children: newChildren
93
100
  });
94
- }
95
- });
101
+ });
102
+ }
103
+ const nodesWithProps = enhanceTreeNodes(children);
96
104
  const isActive = active === id;
97
105
  const isSelected = selected.includes(id);
98
106
  const treeNodeClasses = cx__default["default"](className, `${prefix}--tree-node`, {