@carbon/react 1.82.1 → 1.83.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 (402) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +943 -828
  2. package/es/components/AILabel/index.js +13 -13
  3. package/es/components/AISkeleton/AISkeletonIcon.js +2 -2
  4. package/es/components/AISkeleton/AISkeletonPlaceholder.js +2 -2
  5. package/es/components/AISkeleton/AISkeletonText.js +2 -2
  6. package/es/components/Accordion/Accordion.Skeleton.js +15 -15
  7. package/es/components/Accordion/Accordion.js +3 -3
  8. package/es/components/Accordion/AccordionItem.js +9 -9
  9. package/es/components/Accordion/AccordionProvider.js +2 -2
  10. package/es/components/AccordionItem/index.d.ts +9 -0
  11. package/es/components/AspectRatio/AspectRatio.js +2 -2
  12. package/es/components/BadgeIndicator/index.js +3 -3
  13. package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +5 -5
  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 +3 -3
  17. package/es/components/Button/Button.js +5 -5
  18. package/es/components/Button/ButtonBase.js +5 -5
  19. package/es/components/ButtonSet/ButtonSet.js +2 -2
  20. package/es/components/ChatButton/ChatButton.Skeleton.js +2 -2
  21. package/es/components/ChatButton/ChatButton.js +3 -3
  22. package/es/components/Checkbox/Checkbox.Skeleton.js +4 -4
  23. package/es/components/Checkbox/Checkbox.js +15 -15
  24. package/es/components/CheckboxGroup/CheckboxGroup.js +12 -12
  25. package/es/components/ClassPrefix/index.js +2 -2
  26. package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +7 -7
  27. package/es/components/CodeSnippet/CodeSnippet.js +16 -16
  28. package/es/components/ComboBox/ComboBox.js +18 -18
  29. package/es/components/ComboButton/index.js +7 -7
  30. package/es/components/ComposedModal/ComposedModal.js +20 -20
  31. package/es/components/ComposedModal/ModalFooter.js +8 -8
  32. package/es/components/ComposedModal/ModalHeader.js +8 -8
  33. package/es/components/ContainedList/ContainedList.js +7 -7
  34. package/es/components/ContainedList/ContainedListItem/ContainedListItem.js +7 -7
  35. package/es/components/ContentSwitcher/ContentSwitcher.d.ts +8 -0
  36. package/es/components/ContentSwitcher/ContentSwitcher.js +13 -7
  37. package/es/components/Copy/Copy.js +2 -2
  38. package/es/components/CopyButton/CopyButton.js +4 -4
  39. package/es/components/DangerButton/DangerButton.js +2 -2
  40. package/es/components/DataTable/DataTable.d.ts +81 -283
  41. package/es/components/DataTable/DataTable.js +83 -123
  42. package/es/components/DataTable/Table.d.ts +2 -2
  43. package/es/components/DataTable/Table.js +4 -4
  44. package/es/components/DataTable/TableActionList.d.ts +1 -1
  45. package/es/components/DataTable/TableBatchAction.js +2 -2
  46. package/es/components/DataTable/TableBatchActions.js +9 -9
  47. package/es/components/DataTable/TableBody.d.ts +3 -3
  48. package/es/components/DataTable/TableBody.js +2 -2
  49. package/es/components/DataTable/TableCell.d.ts +3 -4
  50. package/es/components/DataTable/TableCell.js +2 -2
  51. package/es/components/DataTable/TableContainer.d.ts +2 -3
  52. package/es/components/DataTable/TableContainer.js +6 -6
  53. package/es/components/DataTable/TableDecoratorRow.js +4 -4
  54. package/es/components/DataTable/TableExpandHeader.d.ts +2 -3
  55. package/es/components/DataTable/TableExpandHeader.js +4 -4
  56. package/es/components/DataTable/TableExpandRow.js +8 -8
  57. package/es/components/DataTable/TableExpandedRow.d.ts +3 -3
  58. package/es/components/DataTable/TableExpandedRow.js +4 -4
  59. package/es/components/DataTable/TableHead.d.ts +1 -1
  60. package/es/components/DataTable/TableHeader.d.ts +4 -4
  61. package/es/components/DataTable/TableHeader.js +15 -15
  62. package/es/components/DataTable/TableRow.d.ts +3 -4
  63. package/es/components/DataTable/TableRow.js +4 -4
  64. package/es/components/DataTable/TableSelectAll.js +3 -3
  65. package/es/components/DataTable/TableSelectRow.js +4 -4
  66. package/es/components/DataTable/TableSlugRow.js +3 -3
  67. package/es/components/DataTable/TableToolbar.js +2 -2
  68. package/es/components/DataTable/TableToolbarAction.js +2 -2
  69. package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
  70. package/es/components/DataTable/TableToolbarMenu.js +2 -2
  71. package/es/components/DataTable/TableToolbarSearch.js +2 -2
  72. package/es/components/DataTable/index.d.ts +1 -1
  73. package/es/components/DataTableSkeleton/DataTableSkeleton.js +15 -15
  74. package/es/components/DatePicker/DatePicker.Skeleton.js +8 -8
  75. package/es/components/DatePicker/DatePicker.d.ts +1 -1
  76. package/es/components/DatePicker/DatePicker.js +23 -20
  77. package/es/components/DatePickerInput/DatePickerInput.d.ts +3 -4
  78. package/es/components/DatePickerInput/DatePickerInput.js +19 -19
  79. package/es/components/Dialog/index.d.ts +5 -6
  80. package/es/components/Dialog/index.js +10 -10
  81. package/es/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
  82. package/es/components/Dropdown/Dropdown.Skeleton.js +4 -4
  83. package/es/components/Dropdown/Dropdown.d.ts +3 -3
  84. package/es/components/Dropdown/Dropdown.js +18 -18
  85. package/es/components/ErrorBoundary/ErrorBoundary.js +2 -2
  86. package/es/components/ExpandableSearch/ExpandableSearch.js +3 -3
  87. package/es/components/FeatureFlags/index.js +2 -2
  88. package/es/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
  89. package/es/components/FileUploader/FileUploader.Skeleton.js +5 -5
  90. package/es/components/FileUploader/FileUploader.d.ts +2 -3
  91. package/es/components/FileUploader/FileUploader.js +12 -12
  92. package/es/components/FileUploader/FileUploaderButton.d.ts +3 -4
  93. package/es/components/FileUploader/FileUploaderButton.js +6 -5
  94. package/es/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
  95. package/es/components/FileUploader/FileUploaderDropContainer.js +5 -5
  96. package/es/components/FileUploader/FileUploaderItem.d.ts +2 -3
  97. package/es/components/FileUploader/FileUploaderItem.js +13 -13
  98. package/es/components/FileUploader/Filename.d.ts +3 -4
  99. package/es/components/FileUploader/Filename.js +7 -7
  100. package/es/components/FluidComboBox/FluidComboBox.Skeleton.js +5 -5
  101. package/es/components/FluidComboBox/FluidComboBox.js +4 -4
  102. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.js +11 -11
  103. package/es/components/FluidDatePicker/FluidDatePicker.js +4 -4
  104. package/es/components/FluidDatePickerInput/FluidDatePickerInput.js +3 -3
  105. package/es/components/FluidDropdown/FluidDropdown.Skeleton.js +5 -5
  106. package/es/components/FluidDropdown/FluidDropdown.js +4 -4
  107. package/es/components/FluidForm/FluidForm.d.ts +3 -4
  108. package/es/components/FluidForm/FluidForm.js +3 -3
  109. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.js +5 -5
  110. package/es/components/FluidMultiSelect/FluidMultiSelect.js +5 -5
  111. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.js +5 -5
  112. package/es/components/FluidNumberInput/FluidNumberInput.js +4 -4
  113. package/es/components/FluidSearch/FluidSearch.Skeleton.js +5 -5
  114. package/es/components/FluidSearch/FluidSearch.js +4 -4
  115. package/es/components/FluidSelect/FluidSelect.Skeleton.js +5 -5
  116. package/es/components/FluidSelect/FluidSelect.js +4 -4
  117. package/es/components/FluidTextArea/FluidTextArea.Skeleton.js +5 -5
  118. package/es/components/FluidTextArea/FluidTextArea.js +3 -3
  119. package/es/components/FluidTextInput/FluidTextInput.Skeleton.js +5 -5
  120. package/es/components/FluidTextInput/FluidTextInput.js +5 -5
  121. package/es/components/FluidTimePicker/FluidTimePicker.Skeleton.js +3 -3
  122. package/es/components/FluidTimePicker/FluidTimePicker.js +13 -13
  123. package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +3 -3
  124. package/es/components/Form/Form.js +2 -2
  125. package/es/components/FormGroup/FormGroup.d.ts +3 -4
  126. package/es/components/FormGroup/FormGroup.js +4 -4
  127. package/es/components/FormItem/FormItem.js +2 -2
  128. package/es/components/FormLabel/FormLabel.js +2 -2
  129. package/es/components/Grid/CSSGrid.js +8 -8
  130. package/es/components/Grid/Column.d.ts +5 -5
  131. package/es/components/Grid/Column.js +15 -15
  132. package/es/components/Grid/ColumnHang.js +2 -2
  133. package/es/components/Grid/FlexGrid.js +4 -4
  134. package/es/components/Grid/Grid.js +3 -3
  135. package/es/components/Grid/GridContext.d.ts +2 -2
  136. package/es/components/Grid/GridContext.js +1 -1
  137. package/es/components/Grid/Row.js +2 -2
  138. package/es/components/Heading/index.js +9 -9
  139. package/es/components/Icon/Icon.Skeleton.js +2 -2
  140. package/es/components/IconButton/index.js +11 -6
  141. package/es/components/IconIndicator/index.js +4 -4
  142. package/es/components/IdPrefix/index.js +2 -2
  143. package/es/components/InlineCheckbox/InlineCheckbox.js +6 -6
  144. package/es/components/InlineLoading/InlineLoading.js +10 -10
  145. package/es/components/Layer/LayerContext.js +2 -2
  146. package/es/components/Layer/index.d.ts +4 -0
  147. package/es/components/Layer/index.js +15 -8
  148. package/es/components/Layout/index.js +5 -5
  149. package/es/components/LayoutDirection/LayoutDirection.js +4 -4
  150. package/es/components/LayoutDirection/LayoutDirectionContext.js +2 -2
  151. package/es/components/LayoutDirection/index.d.ts +8 -0
  152. package/es/components/Link/Link.js +6 -6
  153. package/es/components/ListBox/ListBox.d.ts +2 -3
  154. package/es/components/ListBox/ListBox.js +5 -5
  155. package/es/components/ListBox/ListBoxField.d.ts +3 -4
  156. package/es/components/ListBox/ListBoxField.js +2 -2
  157. package/es/components/ListBox/ListBoxMenu.d.ts +2 -3
  158. package/es/components/ListBox/ListBoxMenu.js +2 -2
  159. package/es/components/ListBox/ListBoxMenuIcon.js +4 -4
  160. package/es/components/ListBox/ListBoxMenuItem.d.ts +2 -3
  161. package/es/components/ListBox/ListBoxMenuItem.js +3 -3
  162. package/es/components/ListBox/ListBoxSelection.js +6 -6
  163. package/es/components/ListBox/next/ListBoxSelection.js +7 -7
  164. package/es/components/ListBox/next/ListBoxTrigger.js +4 -4
  165. package/es/components/ListItem/ListItem.js +2 -2
  166. package/es/components/Loading/Loading.d.ts +3 -3
  167. package/es/components/Loading/Loading.js +6 -6
  168. package/es/components/Menu/Menu.js +5 -4
  169. package/es/components/Menu/MenuItem.js +18 -17
  170. package/es/components/MenuButton/index.js +4 -4
  171. package/es/components/Modal/Modal.d.ts +3 -4
  172. package/es/components/Modal/Modal.js +40 -38
  173. package/es/components/ModalWrapper/ModalWrapper.js +7 -7
  174. package/es/components/MultiSelect/FilterableMultiSelect.js +22 -26
  175. package/es/components/MultiSelect/MultiSelect.js +23 -23
  176. package/es/components/Notification/Notification.js +41 -41
  177. package/es/components/NumberInput/NumberInput.Skeleton.js +4 -4
  178. package/es/components/NumberInput/NumberInput.js +22 -22
  179. package/es/components/OrderedList/OrderedList.js +2 -2
  180. package/es/components/OverflowMenu/OverflowMenu.js +7 -7
  181. package/es/components/OverflowMenu/index.js +3 -3
  182. package/es/components/OverflowMenu/next/index.js +6 -6
  183. package/es/components/OverflowMenuItem/OverflowMenuItem.js +4 -4
  184. package/es/components/OverflowMenuV2/index.js +3 -3
  185. package/es/components/PageHeader/PageHeader.js +29 -29
  186. package/es/components/Pagination/Pagination.Skeleton.js +8 -8
  187. package/es/components/Pagination/Pagination.js +17 -17
  188. package/es/components/Pagination/experimental/PageSelector.js +3 -3
  189. package/es/components/Pagination/experimental/Pagination.js +14 -14
  190. package/es/components/PaginationNav/PaginationNav.js +31 -31
  191. package/es/components/Popover/index.js +15 -15
  192. package/es/components/PrimaryButton/PrimaryButton.js +2 -2
  193. package/es/components/ProgressBar/ProgressBar.js +13 -13
  194. package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +7 -7
  195. package/es/components/ProgressIndicator/ProgressIndicator.js +20 -20
  196. package/es/components/RadioButton/RadioButton.Skeleton.js +4 -4
  197. package/es/components/RadioButton/RadioButton.js +10 -10
  198. package/es/components/RadioButtonGroup/RadioButtonGroup.js +16 -16
  199. package/es/components/RadioTile/RadioTile.js +12 -12
  200. package/es/components/Search/Search.Skeleton.js +4 -4
  201. package/es/components/Search/Search.js +11 -11
  202. package/es/components/SecondaryButton/SecondaryButton.js +2 -2
  203. package/es/components/Select/Select.Skeleton.js +5 -5
  204. package/es/components/Select/Select.js +19 -19
  205. package/es/components/SelectItem/SelectItem.js +2 -2
  206. package/es/components/SelectItemGroup/SelectItemGroup.js +2 -2
  207. package/es/components/ShapeIndicator/index.js +7 -7
  208. package/es/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
  209. package/es/components/SkeletonIcon/SkeletonIcon.js +3 -7
  210. package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +2 -2
  211. package/es/components/SkeletonText/SkeletonText.js +4 -4
  212. package/es/components/Slider/Slider.Skeleton.js +17 -17
  213. package/es/components/Slider/Slider.d.ts +8 -0
  214. package/es/components/Slider/Slider.js +44 -38
  215. package/es/components/Slider/SliderHandles.js +19 -19
  216. package/es/components/Stack/HStack.js +2 -2
  217. package/es/components/Stack/Stack.js +2 -2
  218. package/es/components/Stack/VStack.js +2 -2
  219. package/es/components/StructuredList/StructuredList.Skeleton.js +12 -12
  220. package/es/components/StructuredList/StructuredList.js +24 -24
  221. package/es/components/Switch/IconSwitch.js +3 -3
  222. package/es/components/Switch/Switch.js +4 -4
  223. package/es/components/TabContent/TabContent.js +2 -2
  224. package/es/components/Tabs/Tabs.Skeleton.js +7 -7
  225. package/es/components/Tabs/Tabs.js +65 -62
  226. package/es/components/Tag/DismissibleTag.d.ts +4 -0
  227. package/es/components/Tag/DismissibleTag.js +18 -13
  228. package/es/components/Tag/OperationalTag.js +6 -6
  229. package/es/components/Tag/SelectableTag.d.ts +4 -0
  230. package/es/components/Tag/SelectableTag.js +18 -9
  231. package/es/components/Tag/Tag.Skeleton.js +2 -2
  232. package/es/components/Tag/Tag.js +15 -15
  233. package/es/components/Text/Text.js +4 -4
  234. package/es/components/Text/TextDirection.js +2 -2
  235. package/es/components/Text/createTextComponent.js +2 -2
  236. package/es/components/TextArea/TextArea.Skeleton.js +4 -4
  237. package/es/components/TextArea/TextArea.js +19 -19
  238. package/es/components/TextInput/ControlledPasswordInput.d.ts +2 -3
  239. package/es/components/TextInput/ControlledPasswordInput.js +13 -13
  240. package/es/components/TextInput/PasswordInput.js +15 -15
  241. package/es/components/TextInput/TextInput.Skeleton.js +4 -4
  242. package/es/components/TextInput/TextInput.js +17 -17
  243. package/es/components/Theme/index.js +10 -10
  244. package/es/components/Tile/Tile.js +36 -36
  245. package/es/components/TileGroup/TileGroup.d.ts +3 -4
  246. package/es/components/TileGroup/TileGroup.js +8 -8
  247. package/es/components/TimePicker/TimePicker.d.ts +2 -3
  248. package/es/components/TimePicker/TimePicker.js +14 -14
  249. package/es/components/TimePickerSelect/TimePickerSelect.js +4 -4
  250. package/es/components/Toggle/Toggle.Skeleton.js +4 -4
  251. package/es/components/Toggle/Toggle.js +10 -10
  252. package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +8 -8
  253. package/es/components/Toggletip/index.js +12 -12
  254. package/es/components/Tooltip/DefinitionTooltip.js +4 -4
  255. package/es/components/Tooltip/Tooltip.d.ts +3 -0
  256. package/es/components/Tooltip/Tooltip.js +25 -13
  257. package/es/components/TreeView/TreeNode.js +45 -36
  258. package/es/components/TreeView/TreeView.js +30 -21
  259. package/es/components/UIShell/Content.js +2 -2
  260. package/es/components/UIShell/Header.js +2 -2
  261. package/es/components/UIShell/HeaderContainer.js +2 -2
  262. package/es/components/UIShell/HeaderGlobalAction.js +3 -3
  263. package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  264. package/es/components/UIShell/HeaderMenu.js +14 -14
  265. package/es/components/UIShell/HeaderMenuButton.js +4 -4
  266. package/es/components/UIShell/HeaderMenuItem.js +11 -9
  267. package/es/components/UIShell/HeaderName.js +3 -3
  268. package/es/components/UIShell/HeaderNavigation.js +3 -3
  269. package/es/components/UIShell/HeaderPanel.js +3 -3
  270. package/es/components/UIShell/HeaderSideNavItems.js +2 -2
  271. package/es/components/UIShell/Link.js +3 -3
  272. package/es/components/UIShell/SideNav.js +7 -7
  273. package/es/components/UIShell/SideNavDetails.js +3 -3
  274. package/es/components/UIShell/SideNavDivider.js +3 -3
  275. package/es/components/UIShell/SideNavFooter.js +7 -7
  276. package/es/components/UIShell/SideNavHeader.js +3 -3
  277. package/es/components/UIShell/SideNavIcon.js +2 -2
  278. package/es/components/UIShell/SideNavItem.js +2 -2
  279. package/es/components/UIShell/SideNavItems.js +5 -5
  280. package/es/components/UIShell/SideNavLink.js +5 -5
  281. package/es/components/UIShell/SideNavLinkText.js +2 -2
  282. package/es/components/UIShell/SideNavMenu.js +10 -10
  283. package/es/components/UIShell/SideNavMenuItem.js +5 -5
  284. package/es/components/UIShell/SideNavSwitcher.js +8 -8
  285. package/es/components/UIShell/SkipToContent.js +2 -2
  286. package/es/components/UIShell/Switcher.js +9 -9
  287. package/es/components/UIShell/SwitcherDivider.js +2 -2
  288. package/es/components/UIShell/SwitcherItem.js +3 -3
  289. package/es/components/UnorderedList/UnorderedList.js +2 -2
  290. package/es/feature-flags.d.ts +7 -0
  291. package/es/index.js +25 -26
  292. package/es/internal/FloatingMenu.js +4 -4
  293. package/es/internal/__mocks__/mockHTMLElement.d.ts +9 -0
  294. package/es/internal/createClassWrapper.js +2 -2
  295. package/es/internal/debounce.d.ts +8 -0
  296. package/es/internal/environment.d.ts +12 -0
  297. package/es/internal/useId.js +2 -2
  298. package/es/internal/useIdPrefix.js +3 -3
  299. package/es/internal/useNormalizedInputProps.js +3 -3
  300. package/es/internal/usePrefix.js +3 -3
  301. package/es/internal/usePreviousValue.d.ts +17 -0
  302. package/es/internal/usePreviousValue.js +28 -0
  303. package/es/internal/useResizeObserver.d.ts +14 -0
  304. package/es/internal/useResizeObserver.js +74 -0
  305. package/es/internal/wrapFocus.js +3 -6
  306. package/es/prop-types/AriaPropTypes.d.ts +8 -0
  307. package/es/tools/wrapComponent.d.ts +3 -4
  308. package/es/tools/wrapComponent.js +2 -2
  309. package/es/types/common.d.ts +0 -2
  310. package/lib/components/AccordionItem/index.d.ts +9 -0
  311. package/lib/components/CodeSnippet/CodeSnippet.js +2 -3
  312. package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +8 -0
  313. package/lib/components/ContentSwitcher/ContentSwitcher.js +7 -1
  314. package/lib/components/DataTable/DataTable.d.ts +81 -283
  315. package/lib/components/DataTable/DataTable.js +82 -123
  316. package/lib/components/DataTable/Table.d.ts +2 -2
  317. package/lib/components/DataTable/TableActionList.d.ts +1 -1
  318. package/lib/components/DataTable/TableBody.d.ts +3 -3
  319. package/lib/components/DataTable/TableCell.d.ts +3 -4
  320. package/lib/components/DataTable/TableContainer.d.ts +2 -3
  321. package/lib/components/DataTable/TableExpandHeader.d.ts +2 -3
  322. package/lib/components/DataTable/TableExpandedRow.d.ts +3 -3
  323. package/lib/components/DataTable/TableHead.d.ts +1 -1
  324. package/lib/components/DataTable/TableHeader.d.ts +4 -4
  325. package/lib/components/DataTable/TableRow.d.ts +3 -4
  326. package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
  327. package/lib/components/DataTable/index.d.ts +1 -1
  328. package/lib/components/DatePicker/DatePicker.d.ts +1 -1
  329. package/lib/components/DatePicker/DatePicker.js +6 -3
  330. package/lib/components/DatePickerInput/DatePickerInput.d.ts +3 -4
  331. package/lib/components/Dialog/index.d.ts +5 -6
  332. package/lib/components/Dropdown/Dropdown.Skeleton.d.ts +2 -3
  333. package/lib/components/Dropdown/Dropdown.d.ts +3 -3
  334. package/lib/components/FileUploader/FileUploader.Skeleton.d.ts +3 -3
  335. package/lib/components/FileUploader/FileUploader.d.ts +2 -3
  336. package/lib/components/FileUploader/FileUploaderButton.d.ts +3 -4
  337. package/lib/components/FileUploader/FileUploaderButton.js +3 -2
  338. package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +2 -3
  339. package/lib/components/FileUploader/FileUploaderItem.d.ts +2 -3
  340. package/lib/components/FileUploader/Filename.d.ts +3 -4
  341. package/lib/components/FluidForm/FluidForm.d.ts +3 -4
  342. package/lib/components/FormGroup/FormGroup.d.ts +3 -4
  343. package/lib/components/Grid/Column.d.ts +5 -5
  344. package/lib/components/Grid/Column.js +10 -10
  345. package/lib/components/Grid/GridContext.d.ts +2 -2
  346. package/lib/components/Grid/GridContext.js +5 -23
  347. package/lib/components/IconButton/index.js +6 -1
  348. package/lib/components/Layer/index.d.ts +4 -0
  349. package/lib/components/Layer/index.js +9 -2
  350. package/lib/components/LayoutDirection/index.d.ts +8 -0
  351. package/lib/components/Link/Link.js +1 -1
  352. package/lib/components/ListBox/ListBox.d.ts +2 -3
  353. package/lib/components/ListBox/ListBoxField.d.ts +3 -4
  354. package/lib/components/ListBox/ListBoxMenu.d.ts +2 -3
  355. package/lib/components/ListBox/ListBoxMenuItem.d.ts +2 -3
  356. package/lib/components/Loading/Loading.d.ts +3 -3
  357. package/lib/components/Menu/Menu.js +2 -1
  358. package/lib/components/Menu/MenuItem.js +2 -1
  359. package/lib/components/Modal/Modal.d.ts +3 -4
  360. package/lib/components/Modal/Modal.js +5 -3
  361. package/lib/components/MultiSelect/FilterableMultiSelect.js +1 -5
  362. package/lib/components/SkeletonIcon/SkeletonIcon.d.ts +0 -4
  363. package/lib/components/SkeletonIcon/SkeletonIcon.js +1 -5
  364. package/lib/components/Slider/Slider.d.ts +8 -0
  365. package/lib/components/Slider/Slider.js +6 -0
  366. package/lib/components/Tabs/Tabs.js +5 -2
  367. package/lib/components/Tag/DismissibleTag.d.ts +4 -0
  368. package/lib/components/Tag/DismissibleTag.js +8 -3
  369. package/lib/components/Tag/SelectableTag.d.ts +4 -0
  370. package/lib/components/Tag/SelectableTag.js +12 -3
  371. package/lib/components/TextInput/ControlledPasswordInput.d.ts +2 -3
  372. package/lib/components/TileGroup/TileGroup.d.ts +3 -4
  373. package/lib/components/TimePicker/TimePicker.d.ts +2 -3
  374. package/lib/components/Tooltip/Tooltip.d.ts +3 -0
  375. package/lib/components/Tooltip/Tooltip.js +18 -6
  376. package/lib/components/TreeView/TreeNode.js +20 -11
  377. package/lib/components/TreeView/TreeView.js +27 -18
  378. package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
  379. package/lib/components/UIShell/HeaderMenuItem.js +7 -5
  380. package/lib/components/UIShell/Switcher.js +3 -3
  381. package/lib/feature-flags.d.ts +7 -0
  382. package/lib/index.js +50 -51
  383. package/lib/internal/__mocks__/mockHTMLElement.d.ts +9 -0
  384. package/lib/internal/debounce.d.ts +8 -0
  385. package/lib/internal/environment.d.ts +12 -0
  386. package/lib/internal/usePreviousValue.d.ts +17 -0
  387. package/lib/internal/usePreviousValue.js +32 -0
  388. package/lib/internal/useResizeObserver.d.ts +14 -0
  389. package/lib/internal/useResizeObserver.js +78 -0
  390. package/lib/internal/wrapFocus.js +3 -6
  391. package/lib/prop-types/AriaPropTypes.d.ts +8 -0
  392. package/lib/tools/wrapComponent.d.ts +3 -4
  393. package/lib/types/common.d.ts +0 -2
  394. package/package.json +5 -6
  395. package/scss/components/content-switcher/_tokens.scss +9 -0
  396. package/telemetry.yml +5 -1
  397. package/es/components/DataTable/index.js +0 -76
  398. package/es/prop-types/tools/getDisplayName.js +0 -34
  399. package/es/prop-types/types.js +0 -13
  400. package/lib/components/DataTable/index.js +0 -82
  401. package/lib/prop-types/tools/getDisplayName.js +0 -38
  402. package/lib/prop-types/types.js +0 -17
@@ -7,13 +7,13 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default, { useState } from 'react';
10
+ import React, { useState } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { IconButton } from '../IconButton/index.js';
13
13
  import { usePrefix } from '../../internal/usePrefix.js';
14
14
 
15
15
  const noopFn = () => {};
16
- const IconSwitch = /*#__PURE__*/React__default.forwardRef(function Switch(props, tabRef) {
16
+ const IconSwitch = /*#__PURE__*/React.forwardRef(function Switch(props, tabRef) {
17
17
  const {
18
18
  align,
19
19
  children,
@@ -72,7 +72,7 @@ const IconSwitch = /*#__PURE__*/React__default.forwardRef(function Switch(props,
72
72
  leaveDelayMs,
73
73
  size
74
74
  };
75
- return /*#__PURE__*/React__default.createElement(IconButton, _extends({
75
+ return /*#__PURE__*/React.createElement(IconButton, _extends({
76
76
  label: text,
77
77
  type: "button",
78
78
  ref: tabRef,
@@ -7,12 +7,12 @@
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
  import { noopFn } from '../../internal/noopFn.js';
14
14
 
15
- const Switch = /*#__PURE__*/React__default.forwardRef(function Switch(props, tabRef) {
15
+ const Switch = /*#__PURE__*/React.forwardRef(function Switch(props, tabRef) {
16
16
  const {
17
17
  children,
18
18
  className,
@@ -52,13 +52,13 @@ const Switch = /*#__PURE__*/React__default.forwardRef(function Switch(props, tab
52
52
  className: classes,
53
53
  disabled
54
54
  };
55
- return /*#__PURE__*/React__default.createElement("button", _extends({
55
+ return /*#__PURE__*/React.createElement("button", _extends({
56
56
  type: "button",
57
57
  ref: tabRef,
58
58
  role: "tab",
59
59
  tabIndex: selected ? 0 : -1,
60
60
  "aria-selected": selected
61
- }, other, commonProps), /*#__PURE__*/React__default.createElement("span", {
61
+ }, other, commonProps), /*#__PURE__*/React.createElement("span", {
62
62
  className: `${prefix}--content-switcher__label`,
63
63
  title: text
64
64
  }, text !== undefined ? text : children));
@@ -7,7 +7,7 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default, { useRef, useState } from 'react';
10
+ import React, { useRef, useState } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { selectorTabbable } from '../../internal/keyboard/navigation.js';
13
13
  import useIsomorphicEffect from '../../internal/useIsomorphicEffect.js';
@@ -38,7 +38,7 @@ function TabContent(props) {
38
38
  const tabContentClasses = cx(`${prefix}--tab-content`, className);
39
39
  const ref = useRef(null);
40
40
  const hasTabbableContent = useTabbableContent(ref);
41
- return /*#__PURE__*/React__default.createElement("div", _extends({
41
+ return /*#__PURE__*/React.createElement("div", _extends({
42
42
  role: "tabpanel"
43
43
  }, other, {
44
44
  className: tabContentClasses,
@@ -7,18 +7,18 @@
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
14
  var _span, _Tab, _Tab2, _Tab3, _Tab4, _Tab5;
15
15
  function Tab() {
16
16
  const prefix = usePrefix();
17
- return /*#__PURE__*/React__default.createElement("li", {
17
+ return /*#__PURE__*/React.createElement("li", {
18
18
  className: `${prefix}--tabs__nav-item`
19
- }, /*#__PURE__*/React__default.createElement("div", {
19
+ }, /*#__PURE__*/React.createElement("div", {
20
20
  className: `${prefix}--tabs__nav-link`
21
- }, _span || (_span = /*#__PURE__*/React__default.createElement("span", null))));
21
+ }, _span || (_span = /*#__PURE__*/React.createElement("span", null))));
22
22
  }
23
23
  function TabsSkeleton(_ref) {
24
24
  let {
@@ -30,11 +30,11 @@ function TabsSkeleton(_ref) {
30
30
  const tabClasses = cx(className, `${prefix}--tabs`, `${prefix}--skeleton`, {
31
31
  [`${prefix}--tabs--contained`]: contained
32
32
  });
33
- return /*#__PURE__*/React__default.createElement("div", _extends({
33
+ return /*#__PURE__*/React.createElement("div", _extends({
34
34
  className: tabClasses
35
- }, rest), /*#__PURE__*/React__default.createElement("ul", {
35
+ }, rest), /*#__PURE__*/React.createElement("ul", {
36
36
  className: `${prefix}--tabs__nav`
37
- }, _Tab || (_Tab = /*#__PURE__*/React__default.createElement(Tab, null)), _Tab2 || (_Tab2 = /*#__PURE__*/React__default.createElement(Tab, null)), _Tab3 || (_Tab3 = /*#__PURE__*/React__default.createElement(Tab, null)), _Tab4 || (_Tab4 = /*#__PURE__*/React__default.createElement(Tab, null)), _Tab5 || (_Tab5 = /*#__PURE__*/React__default.createElement(Tab, null))));
37
+ }, _Tab || (_Tab = /*#__PURE__*/React.createElement(Tab, null)), _Tab2 || (_Tab2 = /*#__PURE__*/React.createElement(Tab, null)), _Tab3 || (_Tab3 = /*#__PURE__*/React.createElement(Tab, null)), _Tab4 || (_Tab4 = /*#__PURE__*/React.createElement(Tab, null)), _Tab5 || (_Tab5 = /*#__PURE__*/React.createElement(Tab, null))));
38
38
  }
39
39
  TabsSkeleton.propTypes = {
40
40
  /**
@@ -10,7 +10,7 @@ import { ChevronLeft, ChevronRight, Close } from '@carbon/icons-react';
10
10
  import { breakpoints } from '@carbon/layout';
11
11
  import cx from 'classnames';
12
12
  import PropTypes from 'prop-types';
13
- import React__default, { useState, useRef, useCallback, useEffect, forwardRef, createContext, useMemo, isValidElement } from 'react';
13
+ import React, { useState, useRef, useCallback, useEffect, forwardRef, createContext, useMemo, isValidElement } from 'react';
14
14
  import '../Grid/FlexGrid.js';
15
15
  import { Grid as GridAsGridComponent } from '../Grid/Grid.js';
16
16
  import '../Grid/Row.js';
@@ -42,7 +42,7 @@ const verticalTabHeight = 64;
42
42
 
43
43
  // Used to manage the overall state of the Tabs
44
44
 
45
- const TabsContext = /*#__PURE__*/React__default.createContext({
45
+ const TabsContext = /*#__PURE__*/React.createContext({
46
46
  baseId: '',
47
47
  activeIndex: 0,
48
48
  defaultSelectedIndex: 0,
@@ -54,7 +54,7 @@ const TabsContext = /*#__PURE__*/React__default.createContext({
54
54
  });
55
55
 
56
56
  // Used to keep track of position in a tablist
57
- const TabContext = /*#__PURE__*/React__default.createContext({
57
+ const TabContext = /*#__PURE__*/React.createContext({
58
58
  index: 0,
59
59
  hasSecondaryLabel: false
60
60
  });
@@ -62,7 +62,7 @@ const lgMediaQuery = `(min-width: ${breakpoints.lg.width})`;
62
62
  const smMediaQuery = `(max-width: ${breakpoints.md.width})`;
63
63
 
64
64
  // Used to keep track of position in a list of tab panels
65
- const TabPanelContext = /*#__PURE__*/React__default.createContext(0);
65
+ const TabPanelContext = /*#__PURE__*/React.createContext(0);
66
66
 
67
67
  /**
68
68
  * Tabs
@@ -101,7 +101,7 @@ function Tabs(_ref) {
101
101
  selectedIndex,
102
102
  setSelectedIndex
103
103
  };
104
- return /*#__PURE__*/React__default.createElement(TabsContext.Provider, {
104
+ return /*#__PURE__*/React.createElement(TabsContext.Provider, {
105
105
  value: value
106
106
  }, children);
107
107
  }
@@ -172,14 +172,14 @@ function TabsVertical(_ref2) {
172
172
  return (
173
173
  /*#__PURE__*/
174
174
  // eslint-disable-next-line react/forbid-component-props
175
- React__default.createElement(GridAsGridComponent, {
175
+ React.createElement(GridAsGridComponent, {
176
176
  style: {
177
177
  height: height
178
178
  }
179
- }, /*#__PURE__*/React__default.createElement(Tabs, props, children))
179
+ }, /*#__PURE__*/React.createElement(Tabs, props, children))
180
180
  );
181
181
  }
182
- return /*#__PURE__*/React__default.createElement(Tabs, props, children);
182
+ return /*#__PURE__*/React.createElement(Tabs, props, children);
183
183
  }
184
184
  TabsVertical.propTypes = {
185
185
  /**
@@ -272,7 +272,7 @@ function TabList(_ref4) {
272
272
  setSelectedIndex,
273
273
  setActiveIndex,
274
274
  dismissable
275
- } = React__default.useContext(TabsContext);
275
+ } = React.useContext(TabsContext);
276
276
  const prefix = usePrefix();
277
277
  const ref = useRef(null);
278
278
  const previousButton = useRef(null);
@@ -281,13 +281,13 @@ function TabList(_ref4) {
281
281
  const [scrollLeft, setScrollLeft] = useState(0);
282
282
  let hasSecondaryLabelTabs = false;
283
283
  if (contained) {
284
- hasSecondaryLabelTabs = React__default.Children.toArray(children).some(child => {
284
+ hasSecondaryLabelTabs = React.Children.toArray(children).some(child => {
285
285
  const _child = child;
286
- return /*#__PURE__*/React__default.isValidElement(child) && !!_child.props.secondaryLabel;
286
+ return /*#__PURE__*/React.isValidElement(child) && !!_child.props.secondaryLabel;
287
287
  });
288
288
  }
289
289
  const isLg = useMatchMedia(lgMediaQuery);
290
- const distributeWidth = fullWidth && contained && isLg && React__default.Children.toArray(children).length < 9;
290
+ const distributeWidth = fullWidth && contained && isLg && React.Children.toArray(children).length < 9;
291
291
  const className = cx(`${prefix}--tabs`, {
292
292
  [`${prefix}--tabs--contained`]: contained,
293
293
  [`${prefix}--tabs--light`]: light,
@@ -319,9 +319,12 @@ function TabList(_ref4) {
319
319
  });
320
320
  const tabs = useRef([]);
321
321
  const debouncedOnScroll = useCallback(() => {
322
- return debounce(event => {
323
- setScrollLeft(event.target.scrollLeft);
322
+ const updateScroll = debounce(() => {
323
+ if (ref.current) {
324
+ setScrollLeft(ref.current.scrollLeft);
325
+ }
324
326
  }, scrollDebounceWait);
327
+ updateScroll();
325
328
  }, [scrollDebounceWait]);
326
329
  function onKeyDown(event) {
327
330
  if (matches(event, [ArrowRight, ArrowLeft, Home, End])) {
@@ -477,16 +480,16 @@ function TabList(_ref4) {
477
480
  return createLongPressBehavior(ref, 'forward', setScrollLeft);
478
481
  }
479
482
  });
480
- return /*#__PURE__*/React__default.createElement("div", {
483
+ return /*#__PURE__*/React.createElement("div", {
481
484
  className: className
482
- }, /*#__PURE__*/React__default.createElement("button", _extends({
485
+ }, /*#__PURE__*/React.createElement("button", _extends({
483
486
  "aria-hidden": "true",
484
487
  tabIndex: -1,
485
488
  "aria-label": "Scroll left",
486
489
  ref: previousButton,
487
490
  className: previousButtonClasses,
488
491
  type: "button"
489
- }, leftOverflowButtonProps), _ChevronLeft || (_ChevronLeft = /*#__PURE__*/React__default.createElement(ChevronLeft, null))), /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
492
+ }, leftOverflowButtonProps), _ChevronLeft || (_ChevronLeft = /*#__PURE__*/React.createElement(ChevronLeft, null))), /*#__PURE__*/React.createElement("div", _extends({}, rest, {
490
493
  "aria-label": label,
491
494
  ref: ref,
492
495
  role: "tablist",
@@ -494,26 +497,26 @@ function TabList(_ref4) {
494
497
  onScroll: debouncedOnScroll,
495
498
  onKeyDown: onKeyDown,
496
499
  onBlur: handleBlur
497
- }), React__default.Children.map(children, (child, index) => {
498
- return !isElement(child) ? null : /*#__PURE__*/React__default.createElement(TabContext.Provider, {
500
+ }), React.Children.map(children, (child, index) => {
501
+ return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabContext.Provider, {
499
502
  value: {
500
503
  index,
501
504
  hasSecondaryLabel: hasSecondaryLabelTabs,
502
505
  contained
503
506
  }
504
- }, /*#__PURE__*/React__default.cloneElement(child, {
507
+ }, /*#__PURE__*/React.cloneElement(child, {
505
508
  ref: node => {
506
509
  tabs.current[index] = node;
507
510
  }
508
511
  }));
509
- })), /*#__PURE__*/React__default.createElement("button", _extends({
512
+ })), /*#__PURE__*/React.createElement("button", _extends({
510
513
  "aria-hidden": "true",
511
514
  tabIndex: -1,
512
515
  "aria-label": "Scroll right",
513
516
  ref: nextButton,
514
517
  className: nextButtonClasses,
515
518
  type: "button"
516
- }, rightOverflowButtonProps), _ChevronRight || (_ChevronRight = /*#__PURE__*/React__default.createElement(ChevronRight, null))));
519
+ }, rightOverflowButtonProps), _ChevronRight || (_ChevronRight = /*#__PURE__*/React.createElement(ChevronRight, null))));
517
520
  }
518
521
  TabList.propTypes = {
519
522
  /**
@@ -592,7 +595,7 @@ function TabListVertical(_ref8) {
592
595
  selectedIndex,
593
596
  setSelectedIndex,
594
597
  setActiveIndex
595
- } = React__default.useContext(TabsContext);
598
+ } = React.useContext(TabsContext);
596
599
  const prefix = usePrefix();
597
600
  const ref = useRef(null);
598
601
  const [isOverflowingBottom, setIsOverflowingBottom] = useState(false);
@@ -679,34 +682,34 @@ function TabListVertical(_ref8) {
679
682
  };
680
683
  });
681
684
  if (isSm) {
682
- return /*#__PURE__*/React__default.createElement(TabList, _extends({}, rest, {
685
+ return /*#__PURE__*/React.createElement(TabList, _extends({}, rest, {
683
686
  "aria-label": label,
684
687
  contained: true
685
688
  }), children);
686
689
  }
687
- return /*#__PURE__*/React__default.createElement("div", {
690
+ return /*#__PURE__*/React.createElement("div", {
688
691
  className: className
689
- }, isOverflowingTop && /*#__PURE__*/React__default.createElement("div", {
692
+ }, isOverflowingTop && /*#__PURE__*/React.createElement("div", {
690
693
  className: `${prefix}--tab--list-gradient_top`
691
- }), /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
694
+ }), /*#__PURE__*/React.createElement("div", _extends({}, rest, {
692
695
  "aria-label": label,
693
696
  ref: ref,
694
697
  role: "tablist",
695
698
  className: `${prefix}--tab--list`,
696
699
  onKeyDown: onKeyDown,
697
700
  onBlur: handleBlur
698
- }), React__default.Children.map(children, (child, index) => {
699
- return !isElement(child) ? null : /*#__PURE__*/React__default.createElement(TabContext.Provider, {
701
+ }), React.Children.map(children, (child, index) => {
702
+ return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabContext.Provider, {
700
703
  value: {
701
704
  index,
702
705
  hasSecondaryLabel: false
703
706
  }
704
- }, /*#__PURE__*/React__default.cloneElement(child, {
707
+ }, /*#__PURE__*/React.cloneElement(child, {
705
708
  ref: node => {
706
709
  tabs.current[index] = node;
707
710
  }
708
711
  }));
709
- })), isOverflowingBottom && /*#__PURE__*/React__default.createElement("div", {
712
+ })), isOverflowingBottom && /*#__PURE__*/React.createElement("div", {
710
713
  className: `${prefix}--tab--list-gradient_bottom`
711
714
  }));
712
715
  }
@@ -796,15 +799,15 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
796
799
  baseId,
797
800
  dismissable,
798
801
  onTabCloseRequest
799
- } = React__default.useContext(TabsContext);
802
+ } = React.useContext(TabsContext);
800
803
  const {
801
804
  index,
802
805
  hasSecondaryLabel,
803
806
  contained
804
- } = React__default.useContext(TabContext);
807
+ } = React.useContext(TabContext);
805
808
  const {
806
809
  badgeIndicator
807
- } = React__default.useContext(IconTabContext) || {};
810
+ } = React.useContext(IconTabContext) || {};
808
811
  const dismissIconRef = useRef(null);
809
812
  const tabRef = useRef(null);
810
813
  const ref = useMergedRefs([forwardRef, tabRef]);
@@ -880,12 +883,12 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
880
883
  }
881
884
  onKeyDown?.(event);
882
885
  };
883
- const DismissIcon = /*#__PURE__*/React__default.createElement("div", {
886
+ const DismissIcon = /*#__PURE__*/React.createElement("div", {
884
887
  className: cx({
885
888
  [`${prefix}--tabs__nav-item--close`]: dismissable,
886
889
  [`${prefix}--tabs__nav-item--close--hidden`]: !dismissable
887
890
  })
888
- }, /*#__PURE__*/React__default.createElement("button", {
891
+ }, /*#__PURE__*/React.createElement("button", {
889
892
  type: "button",
890
893
  tabIndex: selectedIndex === index && dismissable ? 0 : -1,
891
894
  "aria-disabled": disabled,
@@ -900,7 +903,7 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
900
903
  onClick: handleClose,
901
904
  title: `Remove ${typeof children === 'string' ? children : ''} tab`,
902
905
  ref: dismissIconRef
903
- }, /*#__PURE__*/React__default.createElement(Close, {
906
+ }, /*#__PURE__*/React.createElement(Close, {
904
907
  "aria-hidden": selectedIndex === index && dismissable ? 'false' : 'true',
905
908
  "aria-label": `Press delete to remove ${typeof children === 'string' ? children : ''} tab`
906
909
  })));
@@ -908,14 +911,14 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
908
911
 
909
912
  // should only happen for vertical variation, so no dismissable icon is needed here
910
913
  if (isEllipsisApplied) {
911
- return /*#__PURE__*/React__default.createElement(Tooltip, {
914
+ return /*#__PURE__*/React.createElement(Tooltip, {
912
915
  label: children,
913
916
  align: "top",
914
917
  leaveDelayMs: 0,
915
918
  autoAlign: true,
916
919
  onMouseEnter: () => false,
917
920
  closeOnActivation: true
918
- }, /*#__PURE__*/React__default.createElement(BaseComponent, _extends({}, rest, {
921
+ }, /*#__PURE__*/React.createElement(BaseComponent, _extends({}, rest, {
919
922
  "aria-controls": panelId,
920
923
  "aria-disabled": disabled,
921
924
  "aria-selected": selectedIndex === index,
@@ -935,17 +938,17 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
935
938
  onKeyDown: handleKeyDown,
936
939
  tabIndex: selectedIndex === index ? '0' : '-1',
937
940
  type: "button"
938
- }), /*#__PURE__*/React__default.createElement("div", {
941
+ }), /*#__PURE__*/React.createElement("div", {
939
942
  className: `${prefix}--tabs__nav-item-label-wrapper`
940
- }, /*#__PURE__*/React__default.createElement(Text, {
943
+ }, /*#__PURE__*/React.createElement(Text, {
941
944
  className: `${prefix}--tabs__nav-item-label`
942
- }, children)), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React__default.createElement(Text, {
945
+ }, children)), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React.createElement(Text, {
943
946
  as: "div",
944
947
  className: `${prefix}--tabs__nav-item-secondary-label`,
945
948
  title: secondaryLabel
946
949
  }, secondaryLabel)));
947
950
  }
948
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(BaseComponent, _extends({}, rest, {
951
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BaseComponent, _extends({}, rest, {
949
952
  "aria-controls": panelId,
950
953
  "aria-disabled": disabled,
951
954
  "aria-selected": selectedIndex === index,
@@ -964,25 +967,25 @@ const Tab = /*#__PURE__*/forwardRef(function Tab(_ref10, forwardRef) {
964
967
  onKeyDown: handleKeyDown,
965
968
  tabIndex: selectedIndex === index ? '0' : '-1',
966
969
  type: "button"
967
- }), /*#__PURE__*/React__default.createElement("div", {
970
+ }), /*#__PURE__*/React.createElement("div", {
968
971
  className: `${prefix}--tabs__nav-item-label-wrapper`
969
- }, dismissable && Icon && /*#__PURE__*/React__default.createElement("div", {
972
+ }, dismissable && Icon && /*#__PURE__*/React.createElement("div", {
970
973
  className: `${prefix}--tabs__nav-item--icon-left`
971
- }, /*#__PURE__*/React__default.createElement(Icon, {
974
+ }, /*#__PURE__*/React.createElement(Icon, {
972
975
  size: 16
973
- })), /*#__PURE__*/React__default.createElement(Text, {
976
+ })), /*#__PURE__*/React.createElement(Text, {
974
977
  className: `${prefix}--tabs__nav-item-label`
975
- }, children), !dismissable && Icon && /*#__PURE__*/React__default.createElement("div", {
978
+ }, children), !dismissable && Icon && /*#__PURE__*/React.createElement("div", {
976
979
  className: cx(`${prefix}--tabs__nav-item--icon`, {
977
980
  [`${prefix}--visually-hidden`]: !hasIcon
978
981
  })
979
- }, !dismissable && Icon && /*#__PURE__*/React__default.createElement(Icon, {
982
+ }, !dismissable && Icon && /*#__PURE__*/React.createElement(Icon, {
980
983
  size: 16
981
- }))), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React__default.createElement(Text, {
984
+ }))), hasSecondaryLabel && secondaryLabel && /*#__PURE__*/React.createElement(Text, {
982
985
  as: "div",
983
986
  className: `${prefix}--tabs__nav-item-secondary-label`,
984
987
  title: secondaryLabel
985
- }, secondaryLabel), !disabled && badgeIndicator && (_BadgeIndicator || (_BadgeIndicator = /*#__PURE__*/React__default.createElement(BadgeIndicator, null)))), DismissIcon);
988
+ }, secondaryLabel), !disabled && badgeIndicator && (_BadgeIndicator || (_BadgeIndicator = /*#__PURE__*/React.createElement(BadgeIndicator, null)))), DismissIcon);
986
989
  });
987
990
  Tab.propTypes = {
988
991
  /**
@@ -1031,7 +1034,7 @@ Tab.propTypes = {
1031
1034
  */
1032
1035
 
1033
1036
  const IconTabContext = /*#__PURE__*/createContext(false);
1034
- const IconTab = /*#__PURE__*/React__default.forwardRef(function IconTab(_ref11, ref) {
1037
+ const IconTab = /*#__PURE__*/React.forwardRef(function IconTab(_ref11, ref) {
1035
1038
  let {
1036
1039
  badgeIndicator,
1037
1040
  children,
@@ -1050,16 +1053,16 @@ const IconTab = /*#__PURE__*/React__default.forwardRef(function IconTab(_ref11,
1050
1053
  const classNames = cx(`${prefix}--tabs__nav-item--icon-only`, customClassName, {
1051
1054
  [`${prefix}--tabs__nav-item--icon-only__20`]: hasSize20
1052
1055
  });
1053
- return /*#__PURE__*/React__default.createElement(IconTabContext.Provider, {
1056
+ return /*#__PURE__*/React.createElement(IconTabContext.Provider, {
1054
1057
  value: value
1055
- }, /*#__PURE__*/React__default.createElement(Tooltip, {
1058
+ }, /*#__PURE__*/React.createElement(Tooltip, {
1056
1059
  align: "bottom",
1057
1060
  defaultOpen: defaultOpen,
1058
1061
  className: `${prefix}--icon-tooltip`,
1059
1062
  enterDelayMs: enterDelayMs,
1060
1063
  label: label,
1061
1064
  leaveDelayMs: leaveDelayMs
1062
- }, /*#__PURE__*/React__default.createElement(Tab, _extends({
1065
+ }, /*#__PURE__*/React.createElement(Tab, _extends({
1063
1066
  className: classNames,
1064
1067
  ref: ref
1065
1068
  }, rest), children)));
@@ -1103,7 +1106,7 @@ IconTab.propTypes = {
1103
1106
  * TabPanel
1104
1107
  */
1105
1108
 
1106
- const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref12, forwardRef) {
1109
+ const TabPanel = /*#__PURE__*/React.forwardRef(function TabPanel(_ref12, forwardRef) {
1107
1110
  let {
1108
1111
  children,
1109
1112
  className: customClassName,
@@ -1117,8 +1120,8 @@ const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref12
1117
1120
  const {
1118
1121
  selectedIndex,
1119
1122
  baseId
1120
- } = React__default.useContext(TabsContext);
1121
- const index = React__default.useContext(TabPanelContext);
1123
+ } = React.useContext(TabsContext);
1124
+ const index = React.useContext(TabPanelContext);
1122
1125
  const id = `${baseId}-tabpanel-${index}`;
1123
1126
  const tabId = `${baseId}-tab-${index}`;
1124
1127
  const className = cx(`${prefix}--tab-content`, customClassName, {
@@ -1158,7 +1161,7 @@ const TabPanel = /*#__PURE__*/React__default.forwardRef(function TabPanel(_ref12
1158
1161
  });
1159
1162
  return () => observer.disconnect();
1160
1163
  }, []);
1161
- return /*#__PURE__*/React__default.createElement("div", _extends({}, rest, {
1164
+ return /*#__PURE__*/React.createElement("div", _extends({}, rest, {
1162
1165
  "aria-labelledby": tabId,
1163
1166
  id: id,
1164
1167
  className: className,
@@ -1219,10 +1222,10 @@ function TabPanels(_ref13) {
1219
1222
  });
1220
1223
  }
1221
1224
  });
1222
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, React__default.Children.map(children, (child, index) => {
1223
- return !isElement(child) ? null : /*#__PURE__*/React__default.createElement(TabPanelContext.Provider, {
1225
+ return /*#__PURE__*/React.createElement(React.Fragment, null, React.Children.map(children, (child, index) => {
1226
+ return !isElement(child) ? null : /*#__PURE__*/React.createElement(TabPanelContext.Provider, {
1224
1227
  value: index
1225
- }, /*#__PURE__*/React__default.cloneElement(child, {
1228
+ }, /*#__PURE__*/React.cloneElement(child, {
1226
1229
  ref: element => {
1227
1230
  refs.current[index] = element;
1228
1231
  }
@@ -20,6 +20,10 @@ export interface DismissibleTagBaseProps {
20
20
  * Specify if the `DismissibleTag` is disabled
21
21
  */
22
22
  disabled?: boolean;
23
+ /**
24
+ * Provide a custom tooltip label for the dismiss button
25
+ */
26
+ dismissTooltipLabel?: string;
23
27
  /**
24
28
  * Specify the id for the selectable tag.
25
29
  */
@@ -7,7 +7,7 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default, { forwardRef, useRef, useState, useLayoutEffect } from 'react';
10
+ import React, { forwardRef, useRef, useState, useLayoutEffect } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { useId } from '../../internal/useId.js';
13
13
  import { usePrefix } from '../../internal/usePrefix.js';
@@ -36,6 +36,7 @@ const DismissibleTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
36
36
  text,
37
37
  tagTitle,
38
38
  type,
39
+ dismissTooltipLabel = 'Dismiss tag',
39
40
  ...other
40
41
  } = _ref;
41
42
  const prefix = usePrefix();
@@ -54,9 +55,9 @@ const DismissibleTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
54
55
  onClose(event);
55
56
  }
56
57
  };
57
- let normalizedDecorator = /*#__PURE__*/React__default.isValidElement(slug ?? decorator) ? slug ?? decorator : null;
58
+ let normalizedDecorator = /*#__PURE__*/React.isValidElement(slug ?? decorator) ? slug ?? decorator : null;
58
59
  if (normalizedDecorator && normalizedDecorator['type']?.displayName === 'AILabel') {
59
- normalizedDecorator = /*#__PURE__*/React__default.cloneElement(normalizedDecorator, {
60
+ normalizedDecorator = /*#__PURE__*/React.cloneElement(normalizedDecorator, {
60
61
  size: 'sm',
61
62
  kind: 'inline'
62
63
  });
@@ -69,8 +70,8 @@ const DismissibleTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
69
70
  onClick,
70
71
  ...otherProps
71
72
  } = other;
72
- const dismissLabel = `Dismiss "${text}"`;
73
- return /*#__PURE__*/React__default.createElement(Tag, _extends({
73
+ const dismissActionLabel = isEllipsisApplied ? dismissTooltipLabel : title;
74
+ return /*#__PURE__*/React.createElement(Tag, _extends({
74
75
  ref: combinedRef,
75
76
  type: type,
76
77
  size: size,
@@ -78,26 +79,26 @@ const DismissibleTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
78
79
  disabled: disabled,
79
80
  className: tagClasses,
80
81
  id: tagId
81
- }, otherProps), /*#__PURE__*/React__default.createElement("div", {
82
+ }, otherProps), /*#__PURE__*/React.createElement("div", {
82
83
  className: `${prefix}--interactive--tag-children`
83
- }, /*#__PURE__*/React__default.createElement(Text, {
84
+ }, /*#__PURE__*/React.createElement(Text, {
84
85
  title: tagTitle ? tagTitle : text,
85
86
  className: `${prefix}--tag__label`
86
- }, text), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React__default.createElement("div", {
87
+ }, text), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React.createElement("div", {
87
88
  className: `${prefix}--tag__decorator`
88
- }, normalizedDecorator) : '', /*#__PURE__*/React__default.createElement(Tooltip, {
89
- label: isEllipsisApplied ? dismissLabel : title,
89
+ }, normalizedDecorator) : '', /*#__PURE__*/React.createElement(Tooltip, {
90
+ label: dismissActionLabel,
90
91
  align: "bottom",
91
92
  className: tooltipClasses,
92
93
  leaveDelayMs: 0,
93
94
  closeOnActivation: true
94
- }, /*#__PURE__*/React__default.createElement("button", {
95
+ }, /*#__PURE__*/React.createElement("button", {
95
96
  type: "button",
96
97
  className: `${prefix}--tag__close-icon`,
97
98
  onClick: handleClose,
98
99
  disabled: disabled,
99
- "aria-label": title
100
- }, _Close || (_Close = /*#__PURE__*/React__default.createElement(Close, null))))));
100
+ "aria-label": dismissActionLabel
101
+ }, _Close || (_Close = /*#__PURE__*/React.createElement(Close, null))))));
101
102
  });
102
103
  DismissibleTag.propTypes = {
103
104
  /**
@@ -112,6 +113,10 @@ DismissibleTag.propTypes = {
112
113
  * Specify if the `DismissibleTag` is disabled
113
114
  */
114
115
  disabled: PropTypes.bool,
116
+ /**
117
+ * Provide a custom tooltip label for the dismiss button
118
+ */
119
+ dismissTooltipLabel: PropTypes.string,
115
120
  /**
116
121
  * Specify the id for the tag.
117
122
  */
@@ -7,7 +7,7 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React__default, { forwardRef, useRef, useState, useLayoutEffect } from 'react';
10
+ import React, { forwardRef, useRef, useState, useLayoutEffect } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { useId } from '../../internal/useId.js';
13
13
  import { usePrefix } from '../../internal/usePrefix.js';
@@ -54,14 +54,14 @@ const OperationalTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
54
54
  const tooltipClasses = cx(`${prefix}--icon-tooltip`, `${prefix}--tag-label-tooltip`);
55
55
  const combinedRef = mergeRefs(tagRef, forwardRef);
56
56
  if (isEllipsisApplied) {
57
- return /*#__PURE__*/React__default.createElement(Tooltip, {
57
+ return /*#__PURE__*/React.createElement(Tooltip, {
58
58
  label: text,
59
59
  align: "bottom",
60
60
  className: tooltipClasses,
61
61
  leaveDelayMs: 0,
62
62
  onMouseEnter: () => false,
63
63
  closeOnActivation: true
64
- }, /*#__PURE__*/React__default.createElement(Tag, _extends({
64
+ }, /*#__PURE__*/React.createElement(Tag, _extends({
65
65
  ref: combinedRef,
66
66
  type: type,
67
67
  size: size,
@@ -69,12 +69,12 @@ const OperationalTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
69
69
  disabled: disabled,
70
70
  className: tagClasses,
71
71
  id: tagId
72
- }, other), /*#__PURE__*/React__default.createElement(Text, {
72
+ }, other), /*#__PURE__*/React.createElement(Text, {
73
73
  title: text,
74
74
  className: `${prefix}--tag__label`
75
75
  }, text)));
76
76
  }
77
- return /*#__PURE__*/React__default.createElement(Tag, _extends({
77
+ return /*#__PURE__*/React.createElement(Tag, _extends({
78
78
  ref: combinedRef,
79
79
  type: type,
80
80
  size: size,
@@ -82,7 +82,7 @@ const OperationalTag = /*#__PURE__*/forwardRef((_ref, forwardRef) => {
82
82
  disabled: disabled,
83
83
  className: tagClasses,
84
84
  id: tagId
85
- }, other), /*#__PURE__*/React__default.createElement(Text, {
85
+ }, other), /*#__PURE__*/React.createElement(Text, {
86
86
  title: text,
87
87
  className: `${prefix}--tag__label`
88
88
  }, text));
@@ -36,6 +36,10 @@ export interface SelectableTagBaseProps {
36
36
  * Specify the state of the selectable tag.
37
37
  */
38
38
  selected?: boolean;
39
+ /**
40
+ * Specify the default state of the selectable tag.
41
+ */
42
+ defaultSelected?: boolean;
39
43
  /**
40
44
  * Specify the size of the Tag. Currently supports either `sm`,
41
45
  * `md` (default) or `lg` sizes.