@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
@@ -7,22 +7,21 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default from 'react';
10
+ import React from 'react';
11
11
  import cx from 'classnames';
12
12
  import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
- const ToggleSkeleton = _ref => {
15
- let {
16
- className,
17
- ...rest
18
- } = _ref;
14
+ const ToggleSkeleton = ({
15
+ className,
16
+ ...rest
17
+ }) => {
19
18
  const prefix = usePrefix();
20
19
  const skeletonClassNames = cx(`${prefix}--toggle ${prefix}--toggle--skeleton`, className);
21
- return /*#__PURE__*/React__default.createElement("div", _extends({
20
+ return /*#__PURE__*/React.createElement("div", _extends({
22
21
  className: skeletonClassNames
23
- }, rest), /*#__PURE__*/React__default.createElement("div", {
22
+ }, rest), /*#__PURE__*/React.createElement("div", {
24
23
  className: `${prefix}--toggle__skeleton-circle`
25
- }), /*#__PURE__*/React__default.createElement("div", {
24
+ }), /*#__PURE__*/React.createElement("div", {
26
25
  className: `${prefix}--toggle__skeleton-rectangle`
27
26
  }));
28
27
  };
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
- import React__default, { useRef } from 'react';
9
+ import React, { useRef } from 'react';
10
10
  import PropTypes from 'prop-types';
11
11
  import cx from 'classnames';
12
12
  import { useControllableState } from '../../internal/useControllableState.js';
@@ -15,24 +15,23 @@ import '../Text/index.js';
15
15
  import { Text } from '../Text/Text.js';
16
16
 
17
17
  var _path;
18
- function Toggle(_ref) {
19
- let {
20
- 'aria-labelledby': ariaLabelledby,
21
- className,
22
- defaultToggled = false,
23
- disabled = false,
24
- hideLabel = false,
25
- id,
26
- labelA = 'Off',
27
- labelB = 'On',
28
- labelText,
29
- onClick,
30
- onToggle,
31
- readOnly,
32
- size = 'md',
33
- toggled,
34
- ...other
35
- } = _ref;
18
+ function Toggle({
19
+ 'aria-labelledby': ariaLabelledby,
20
+ className,
21
+ defaultToggled = false,
22
+ disabled = false,
23
+ hideLabel = false,
24
+ id,
25
+ labelA = 'Off',
26
+ labelB = 'On',
27
+ labelText,
28
+ onClick,
29
+ onToggle,
30
+ readOnly,
31
+ size = 'md',
32
+ toggled,
33
+ ...other
34
+ }) {
36
35
  const prefix = usePrefix();
37
36
  const buttonElement = useRef(null);
38
37
  const [checked, setChecked] = useControllableState({
@@ -69,7 +68,7 @@ function Toggle(_ref) {
69
68
  return (
70
69
  /*#__PURE__*/
71
70
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
72
- React__default.createElement("div", {
71
+ React.createElement("div", {
73
72
  className: wrapperClasses,
74
73
  onClick: !labelText ? e => {
75
74
  // the underlying <button> can only be activated by keyboard as it is visually hidden;
@@ -82,7 +81,7 @@ function Toggle(_ref) {
82
81
  buttonElement.current.focus();
83
82
  }
84
83
  } : undefined
85
- }, /*#__PURE__*/React__default.createElement("button", _extends({}, other, {
84
+ }, /*#__PURE__*/React.createElement("button", _extends({}, other, {
86
85
  ref: buttonElement,
87
86
  id: id,
88
87
  className: `${prefix}--toggle__button`,
@@ -92,26 +91,26 @@ function Toggle(_ref) {
92
91
  "aria-labelledby": ariaLabelledby ?? (labelText ? labelId : undefined),
93
92
  disabled: disabled,
94
93
  onClick: handleClick
95
- })), /*#__PURE__*/React__default.createElement(LabelComponent, {
94
+ })), /*#__PURE__*/React.createElement(LabelComponent, {
96
95
  id: labelId,
97
96
  htmlFor: ariaLabelledby ? undefined : id,
98
97
  className: `${prefix}--toggle__label`
99
- }, labelText && /*#__PURE__*/React__default.createElement(Text, {
98
+ }, labelText && /*#__PURE__*/React.createElement(Text, {
100
99
  className: labelTextClasses
101
- }, labelText), /*#__PURE__*/React__default.createElement("div", {
100
+ }, labelText), /*#__PURE__*/React.createElement("div", {
102
101
  className: appearanceClasses
103
- }, /*#__PURE__*/React__default.createElement("div", {
102
+ }, /*#__PURE__*/React.createElement("div", {
104
103
  className: switchClasses
105
- }, isSm && /*#__PURE__*/React__default.createElement("svg", {
104
+ }, isSm && /*#__PURE__*/React.createElement("svg", {
106
105
  "aria-hidden": "true",
107
106
  focusable: "false",
108
107
  className: `${prefix}--toggle__check`,
109
108
  width: "6px",
110
109
  height: "5px",
111
110
  viewBox: "0 0 6 5"
112
- }, _path || (_path = /*#__PURE__*/React__default.createElement("path", {
111
+ }, _path || (_path = /*#__PURE__*/React.createElement("path", {
113
112
  d: "M2.2 2.7L5 0 6 1 2.2 5 0 2.7 1 1.5z"
114
- })))), renderSideLabel && /*#__PURE__*/React__default.createElement(Text, {
113
+ })))), renderSideLabel && /*#__PURE__*/React.createElement(Text, {
115
114
  className: `${prefix}--toggle__text`,
116
115
  "aria-hidden": "true"
117
116
  }, sideLabel))))
@@ -7,38 +7,37 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default, { useContext } from 'react';
10
+ import React, { useContext } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { PrefixContext } from '../../internal/usePrefix.js';
13
13
 
14
14
  var _path;
15
- const ToggleSmallSkeleton = _ref => {
16
- let {
17
- id,
18
- labelText,
19
- className,
20
- ...rest
21
- } = _ref;
15
+ const ToggleSmallSkeleton = ({
16
+ id,
17
+ labelText,
18
+ className,
19
+ ...rest
20
+ }) => {
22
21
  const prefix = useContext(PrefixContext);
23
- return /*#__PURE__*/React__default.createElement("div", _extends({
22
+ return /*#__PURE__*/React.createElement("div", _extends({
24
23
  className: cx(`${prefix}--form-item`, className)
25
- }, rest), /*#__PURE__*/React__default.createElement("input", {
24
+ }, rest), /*#__PURE__*/React.createElement("input", {
26
25
  type: "checkbox",
27
26
  id: id,
28
27
  className: `${prefix}--toggle ${prefix}--toggle--small ${prefix}--skeleton`
29
- }), /*#__PURE__*/React__default.createElement("label", {
28
+ }), /*#__PURE__*/React.createElement("label", {
30
29
  className: `${prefix}--toggle__label ${prefix}--skeleton`,
31
30
  htmlFor: id
32
- }, labelText && /*#__PURE__*/React__default.createElement("span", {
31
+ }, labelText && /*#__PURE__*/React.createElement("span", {
33
32
  className: `${prefix}--toggle__label-text`
34
- }, labelText), /*#__PURE__*/React__default.createElement("span", {
33
+ }, labelText), /*#__PURE__*/React.createElement("span", {
35
34
  className: `${prefix}--toggle__appearance`
36
- }, /*#__PURE__*/React__default.createElement("svg", {
35
+ }, /*#__PURE__*/React.createElement("svg", {
37
36
  className: `${prefix}--toggle__check`,
38
37
  width: "6px",
39
38
  height: "5px",
40
39
  viewBox: "0 0 6 5"
41
- }, _path || (_path = /*#__PURE__*/React__default.createElement("path", {
40
+ }, _path || (_path = /*#__PURE__*/React.createElement("path", {
42
41
  d: "M2.2403 2.7299L4.9245 0 6 1.1117 2.2384 5 0 2.6863 1.0612 1.511z"
43
42
  }))))));
44
43
  };
@@ -8,7 +8,7 @@
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import cx from 'classnames';
10
10
  import PropTypes from 'prop-types';
11
- import React__default, { useRef, useState, useContext } from 'react';
11
+ import React, { useRef, useState, useContext } from 'react';
12
12
  import { Popover, PopoverContent } from '../Popover/index.js';
13
13
  import { Escape } from '../../internal/keyboard/keys.js';
14
14
  import { match } from '../../internal/keyboard/match.js';
@@ -19,17 +19,16 @@ import { usePrefix } from '../../internal/usePrefix.js';
19
19
  /**
20
20
  * Used to render the label for a Toggletip
21
21
  */
22
- function ToggletipLabel(_ref) {
23
- let {
24
- as: BaseComponent = 'span',
25
- children,
26
- className: customClassName,
27
- ...rest
28
- } = _ref;
22
+ function ToggletipLabel({
23
+ as: BaseComponent = 'span',
24
+ children,
25
+ className: customClassName,
26
+ ...rest
27
+ }) {
29
28
  const prefix = usePrefix();
30
29
  const className = cx(`${prefix}--toggletip-label`, customClassName);
31
30
  const BaseComponentAsAny = BaseComponent;
32
- return /*#__PURE__*/React__default.createElement(BaseComponentAsAny, _extends({
31
+ return /*#__PURE__*/React.createElement(BaseComponentAsAny, _extends({
33
32
  className: className
34
33
  }, rest), children);
35
34
  }
@@ -51,7 +50,7 @@ ToggletipLabel.propTypes = {
51
50
  };
52
51
  // Used to coordinate accessibility props between button and content along with
53
52
  // the actions to open and close the toggletip
54
- const ToggletipContext = /*#__PURE__*/React__default.createContext(undefined);
53
+ const ToggletipContext = /*#__PURE__*/React.createContext(undefined);
55
54
  function useToggletip() {
56
55
  return useContext(ToggletipContext);
57
56
  }
@@ -60,16 +59,15 @@ function useToggletip() {
60
59
  * is responsible for coordinating between interactions with the button and the
61
60
  * visibility of the content
62
61
  */
63
- function Toggletip(_ref2) {
64
- let {
65
- align,
66
- as,
67
- autoAlign,
68
- className: customClassName,
69
- children,
70
- defaultOpen = false,
71
- ...rest
72
- } = _ref2;
62
+ function Toggletip({
63
+ align,
64
+ as,
65
+ autoAlign,
66
+ className: customClassName,
67
+ children,
68
+ defaultOpen = false,
69
+ ...rest
70
+ }) {
73
71
  const ref = useRef(null);
74
72
  const [open, setOpen] = useState(defaultOpen);
75
73
  const prefix = usePrefix();
@@ -127,17 +125,16 @@ function Toggletip(_ref2) {
127
125
  actions.close();
128
126
  }
129
127
  });
130
- useWindowEvent('click', _ref3 => {
131
- let {
132
- target
133
- } = _ref3;
128
+ useWindowEvent('click', ({
129
+ target
130
+ }) => {
134
131
  if (open && target instanceof Node && !ref.current?.contains(target)) {
135
132
  actions.close();
136
133
  }
137
134
  });
138
- return /*#__PURE__*/React__default.createElement(ToggletipContext.Provider, {
135
+ return /*#__PURE__*/React.createElement(ToggletipContext.Provider, {
139
136
  value: value
140
- }, /*#__PURE__*/React__default.createElement(Popover, _extends({
137
+ }, /*#__PURE__*/React.createElement(Popover, _extends({
141
138
  align: align,
142
139
  as: as,
143
140
  caret: true,
@@ -209,24 +206,23 @@ Toggletip.propTypes = {
209
206
  * clicks and keyboard interactions.
210
207
  */
211
208
 
212
- const ToggletipButton = /*#__PURE__*/React__default.forwardRef(function ToggletipButton(_ref4, ref) {
213
- let {
214
- children,
215
- className: customClassName,
216
- label = 'Show information',
217
- as: BaseComponent,
218
- ...rest
219
- } = _ref4;
209
+ const ToggletipButton = /*#__PURE__*/React.forwardRef(function ToggletipButton({
210
+ children,
211
+ className: customClassName,
212
+ label = 'Show information',
213
+ as: BaseComponent,
214
+ ...rest
215
+ }, ref) {
220
216
  const toggletip = useToggletip();
221
217
  const prefix = usePrefix();
222
218
  const className = cx(`${prefix}--toggletip-button`, customClassName);
223
219
  const ComponentToggle = BaseComponent ?? 'button';
224
220
  if (ComponentToggle !== 'button') {
225
- return /*#__PURE__*/React__default.createElement(ComponentToggle, _extends({}, toggletip?.onClick, {
221
+ return /*#__PURE__*/React.createElement(ComponentToggle, _extends({}, toggletip?.onClick, {
226
222
  className: className
227
223
  }, rest), children);
228
224
  }
229
- return /*#__PURE__*/React__default.createElement("button", _extends({}, toggletip?.buttonProps, {
225
+ return /*#__PURE__*/React.createElement("button", _extends({}, toggletip?.buttonProps, {
230
226
  "aria-label": label,
231
227
  type: "button",
232
228
  className: className,
@@ -254,19 +250,18 @@ ToggletipButton.displayName = 'ToggletipButton';
254
250
  * `children` passed in as a prop inside of `PopoverContent` so that they will
255
251
  * be rendered inside of the popover for this component.
256
252
  */
257
- const ToggletipContent = /*#__PURE__*/React__default.forwardRef(function ToggletipContent(_ref5, ref) {
258
- let {
259
- children,
260
- className: customClassName
261
- } = _ref5;
253
+ const ToggletipContent = /*#__PURE__*/React.forwardRef(function ToggletipContent({
254
+ children,
255
+ className: customClassName
256
+ }, ref) {
262
257
  const toggletip = useToggletip();
263
258
  const prefix = usePrefix();
264
- return /*#__PURE__*/React__default.createElement(PopoverContent, _extends({
259
+ return /*#__PURE__*/React.createElement(PopoverContent, _extends({
265
260
  className: customClassName
266
261
  }, toggletip?.contentProps, {
267
262
  ref: ref,
268
263
  "aria-live": "polite"
269
- }), /*#__PURE__*/React__default.createElement("div", {
264
+ }), /*#__PURE__*/React.createElement("div", {
270
265
  className: `${prefix}--toggletip-content`
271
266
  }, children));
272
267
  });
@@ -286,14 +281,13 @@ ToggletipContent.displayName = 'ToggletipContent';
286
281
  * `ToggletipActions` is a container for one or two actions present at the base
287
282
  * of a toggletip. It is used for layout of these items.
288
283
  */
289
- function ToggletipActions(_ref6) {
290
- let {
291
- children,
292
- className: customClassName
293
- } = _ref6;
284
+ function ToggletipActions({
285
+ children,
286
+ className: customClassName
287
+ }) {
294
288
  const prefix = usePrefix();
295
289
  const className = cx(`${prefix}--toggletip-actions`, customClassName);
296
- return /*#__PURE__*/React__default.createElement("div", {
290
+ return /*#__PURE__*/React.createElement("div", {
297
291
  className: className
298
292
  }, children);
299
293
  }
@@ -8,7 +8,7 @@
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import cx from 'classnames';
10
10
  import PropTypes from 'prop-types';
11
- import React__default, { useState } from 'react';
11
+ import React, { useState } from 'react';
12
12
  import { Popover, PopoverContent } from '../Popover/index.js';
13
13
  import { Escape } from '../../internal/keyboard/keys.js';
14
14
  import { match } from '../../internal/keyboard/match.js';
@@ -16,20 +16,19 @@ import { useFallbackId } from '../../internal/useId.js';
16
16
  import { usePrefix } from '../../internal/usePrefix.js';
17
17
  import deprecate from '../../prop-types/deprecate.js';
18
18
 
19
- const DefinitionTooltip = _ref => {
20
- let {
21
- align = 'bottom',
22
- autoAlign,
23
- className,
24
- children,
25
- definition,
26
- defaultOpen = false,
27
- id,
28
- openOnHover,
29
- tooltipText,
30
- triggerClassName,
31
- ...rest
32
- } = _ref;
19
+ const DefinitionTooltip = ({
20
+ align = 'bottom',
21
+ autoAlign,
22
+ className,
23
+ children,
24
+ definition,
25
+ defaultOpen = false,
26
+ id,
27
+ openOnHover,
28
+ tooltipText,
29
+ triggerClassName,
30
+ ...rest
31
+ }) => {
33
32
  const [isOpen, setOpen] = useState(defaultOpen);
34
33
  const prefix = usePrefix();
35
34
  const tooltipId = useFallbackId(id);
@@ -39,7 +38,7 @@ const DefinitionTooltip = _ref => {
39
38
  setOpen(false);
40
39
  }
41
40
  }
42
- return /*#__PURE__*/React__default.createElement(Popover, {
41
+ return /*#__PURE__*/React.createElement(Popover, {
43
42
  align: align,
44
43
  className: className,
45
44
  autoAlign: autoAlign,
@@ -55,7 +54,7 @@ const DefinitionTooltip = _ref => {
55
54
  setOpen(true);
56
55
  },
57
56
  open: isOpen
58
- }, /*#__PURE__*/React__default.createElement("button", _extends({}, rest, {
57
+ }, /*#__PURE__*/React.createElement("button", _extends({}, rest, {
59
58
  className: cx(`${prefix}--definition-term`, triggerClassName),
60
59
  "aria-controls": tooltipId,
61
60
  "aria-expanded": isOpen,
@@ -69,7 +68,7 @@ const DefinitionTooltip = _ref => {
69
68
  },
70
69
  onKeyDown: onKeyDown,
71
70
  type: "button"
72
- }), children), /*#__PURE__*/React__default.createElement(PopoverContent, {
71
+ }), children), /*#__PURE__*/React.createElement(PopoverContent, {
73
72
  className: `${prefix}--definition-tooltip`,
74
73
  id: tooltipId
75
74
  }, tooltipText ?? definition));
@@ -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
  *
@@ -8,7 +8,7 @@
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import cx from 'classnames';
10
10
  import PropTypes from 'prop-types';
11
- import React__default, { useRef, useState, useCallback, useEffect } from 'react';
11
+ import React, { useRef, useState, useCallback, useEffect } from 'react';
12
12
  import { Popover, PopoverContent } from '../Popover/index.js';
13
13
  import { Escape, Enter, Space } from '../../internal/keyboard/keys.js';
14
14
  import { match } from '../../internal/keyboard/match.js';
@@ -22,22 +22,21 @@ import useIsomorphicEffect from '../../internal/useIsomorphicEffect.js';
22
22
  * Event types that trigger a "drag" to stop.
23
23
  */
24
24
  const DRAG_STOP_EVENT_TYPES = new Set(['mouseup', 'touchend', 'touchcancel']);
25
- const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
26
- let {
27
- as,
28
- align = 'top',
29
- className: customClassName,
30
- children,
31
- label,
32
- description,
33
- enterDelayMs = 100,
34
- leaveDelayMs = 300,
35
- defaultOpen = false,
36
- closeOnActivation = false,
37
- dropShadow = false,
38
- highContrast = true,
39
- ...rest
40
- } = _ref;
25
+ const Tooltip = /*#__PURE__*/React.forwardRef(({
26
+ as,
27
+ align = 'top',
28
+ className: customClassName,
29
+ children,
30
+ label,
31
+ description,
32
+ enterDelayMs = 100,
33
+ leaveDelayMs = 300,
34
+ defaultOpen = false,
35
+ closeOnActivation = false,
36
+ dropShadow = false,
37
+ highContrast = true,
38
+ ...rest
39
+ }, ref) => {
41
40
  const tooltipRef = useRef(null);
42
41
  const [open, setOpen] = useDelayedState(defaultOpen);
43
42
  const [isDragging, setIsDragging] = useState(false);
@@ -45,7 +44,22 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
45
44
  const [isPointerIntersecting, setIsPointerIntersecting] = useState(false);
46
45
  const id = useId('tooltip');
47
46
  const prefix = usePrefix();
48
- const child = React__default.Children.only(children);
47
+ const child = React.Children.only(children);
48
+ const {
49
+ 'aria-label': ariaLabel,
50
+ 'aria-labelledby': ariaLabelledBy,
51
+ 'aria-describedby': ariaDescribedBy
52
+ } = child?.props ?? {};
53
+ const hasLabel = !!label;
54
+ const hasAriaLabel = typeof ariaLabel === 'string' ? ariaLabel.trim() !== '' : false;
55
+
56
+ // An `aria-label` takes precedence over `aria-describedby`, but when it's
57
+ // needed and the user doesn't specify one, the fallback `id` is used.
58
+ const labelledBy = hasAriaLabel ? null : hasLabel ? ariaLabelledBy ?? id : undefined;
59
+
60
+ // If `aria-label` is present, use any provided `aria-describedby`.
61
+ // If not, fallback to child's `aria-describedby` or the tooltip `id` if needed.
62
+ const describedBy = hasAriaLabel ? ariaDescribedBy : ariaDescribedBy ?? (!hasLabel && !ariaLabelledBy ? id : undefined);
49
63
  const triggerProps = {
50
64
  onFocus: () => !focusByMouse && setOpen(true),
51
65
  onBlur: () => {
@@ -58,7 +72,9 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
58
72
  onMouseLeave,
59
73
  onMouseDown,
60
74
  onMouseMove: onMouseMove,
61
- onTouchStart: onDragStart
75
+ onTouchStart: onDragStart,
76
+ 'aria-labelledby': labelledBy,
77
+ 'aria-describedby': describedBy
62
78
  };
63
79
  function getChildEventHandlers(childProps) {
64
80
  const eventHandlerFunctions = Object.keys(triggerProps).filter(prop => prop.startsWith('on'));
@@ -73,11 +89,6 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
73
89
  });
74
90
  return eventHandlers;
75
91
  }
76
- if (label) {
77
- triggerProps['aria-labelledby'] = id;
78
- } else {
79
- triggerProps['aria-describedby'] = id;
80
- }
81
92
  const onKeyDown = useCallback(event => {
82
93
  if (open && match(event, Escape)) {
83
94
  event.stopPropagation();
@@ -151,7 +162,7 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
151
162
  });
152
163
  };
153
164
  }, [isDragging, onDragStop]);
154
- return /*#__PURE__*/React__default.createElement(Popover, _extends({
165
+ return /*#__PURE__*/React.createElement(Popover, _extends({
155
166
  as: as,
156
167
  ref: ref
157
168
  }, rest, {
@@ -162,12 +173,12 @@ const Tooltip = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
162
173
  onKeyDown: onKeyDown,
163
174
  onMouseLeave: onMouseLeave,
164
175
  open: open
165
- }), /*#__PURE__*/React__default.createElement("div", {
176
+ }), /*#__PURE__*/React.createElement("div", {
166
177
  className: `${prefix}--tooltip-trigger__wrapper`
167
- }, child !== undefined ? /*#__PURE__*/React__default.cloneElement(child, {
178
+ }, child !== undefined ? /*#__PURE__*/React.cloneElement(child, {
168
179
  ...triggerProps,
169
180
  ...getChildEventHandlers(child.props)
170
- }) : null), /*#__PURE__*/React__default.createElement(PopoverContent, {
181
+ }) : null), /*#__PURE__*/React.createElement(PopoverContent, {
171
182
  "aria-hidden": open ? 'false' : 'true',
172
183
  className: `${prefix}--tooltip-content`,
173
184
  id: id,