@carbon/react 1.99.0 → 1.100.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 (277) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +978 -978
  2. package/es/components/BadgeIndicator/index.d.ts +1 -1
  3. package/es/components/BadgeIndicator/index.js +8 -6
  4. package/es/components/Breadcrumb/BreadcrumbItem.d.ts +1 -1
  5. package/es/components/Breadcrumb/BreadcrumbItem.js +6 -7
  6. package/es/components/Button/Button.Skeleton.d.ts +28 -2
  7. package/es/components/Button/Button.js +3 -2
  8. package/es/components/ChatButton/ChatButton.d.ts +3 -2
  9. package/es/components/CheckboxGroup/CheckboxGroup.d.ts +60 -2
  10. package/es/components/ComboBox/ComboBox.d.ts +6 -7
  11. package/es/components/ComboBox/ComboBox.js +22 -10
  12. package/es/components/ComposedModal/ComposedModal.d.ts +2 -2
  13. package/es/components/ContainedList/ContainedList.d.ts +35 -6
  14. package/es/components/ContainedList/ContainedList.js +3 -1
  15. package/es/components/ContainedList/ContainedListItem/ContainedListItem.d.ts +32 -3
  16. package/es/components/ContainedList/index.d.ts +1 -1
  17. package/es/components/ContainedList/index.js +4 -1
  18. package/es/components/DangerButton/DangerButton.d.ts +1 -1
  19. package/es/components/DataTable/DataTable.d.ts +22 -5
  20. package/es/components/DataTable/DataTable.js +1 -1
  21. package/es/components/DataTable/TableExpandRow.d.ts +1 -1
  22. package/es/components/DataTable/TableExpandRow.js +2 -2
  23. package/es/components/DataTable/TableHeader.d.ts +1 -1
  24. package/es/components/DataTable/TableHeader.js +18 -16
  25. package/es/components/DataTable/TableToolbar.d.ts +25 -1
  26. package/es/components/DataTable/TableToolbarMenu.d.ts +25 -5
  27. package/es/components/DataTable/TableToolbarMenu.js +0 -3
  28. package/es/components/DataTableSkeleton/DataTableSkeleton.d.ts +51 -2
  29. package/es/components/DataTableSkeleton/DataTableSkeleton.js +6 -0
  30. package/es/components/DatePicker/DatePicker.d.ts +2 -2
  31. package/es/components/DatePicker/DatePicker.js +38 -53
  32. package/es/components/DatePicker/plugins/fixEventsPlugin.js +28 -2
  33. package/es/components/DatePickerInput/DatePickerInput.d.ts +1 -1
  34. package/es/components/DatePickerInput/DatePickerInput.js +3 -2
  35. package/es/components/Dialog/Dialog.d.ts +1 -1
  36. package/es/components/Dropdown/Dropdown.Skeleton.d.ts +19 -2
  37. package/es/components/Dropdown/Dropdown.d.ts +3 -4
  38. package/es/components/Dropdown/Dropdown.js +16 -13
  39. package/es/components/ExpandableSearch/ExpandableSearch.d.ts +1 -1
  40. package/es/components/ExpandableSearch/ExpandableSearch.js +14 -12
  41. package/es/components/FileUploader/FileUploader.d.ts +1 -1
  42. package/es/components/FileUploader/FileUploader.js +2 -2
  43. package/es/components/FileUploader/FileUploaderDropContainer.d.ts +1 -1
  44. package/es/components/FileUploader/FileUploaderDropContainer.js +28 -10
  45. package/es/components/FluidComboBox/FluidComboBox.Skeleton.d.ts +11 -3
  46. package/es/components/FluidComboBox/FluidComboBox.d.ts +2 -7
  47. package/es/components/FluidComboBox/FluidComboBox.js +1 -2
  48. package/es/components/FluidDatePicker/FluidDatePicker.Skeleton.d.ts +15 -3
  49. package/es/components/FluidDatePicker/FluidDatePicker.d.ts +2 -2
  50. package/es/components/FluidDropdown/FluidDropdown.Skeleton.d.ts +11 -3
  51. package/es/components/FluidDropdown/FluidDropdown.d.ts +1 -6
  52. package/es/components/FluidDropdown/FluidDropdown.js +1 -2
  53. package/es/components/FluidForm/FluidForm.d.ts +15 -2
  54. package/es/components/FluidMultiSelect/FluidFilterableMultiSelect.d.ts +2 -2
  55. package/es/components/FluidMultiSelect/FluidMultiSelect.Skeleton.d.ts +11 -3
  56. package/es/components/FluidMultiSelect/FluidMultiSelect.d.ts +1 -6
  57. package/es/components/FluidMultiSelect/FluidMultiSelect.js +1 -2
  58. package/es/components/FluidNumberInput/FluidNumberInput.Skeleton.d.ts +11 -3
  59. package/es/components/FluidNumberInput/FluidNumberInput.d.ts +1 -1
  60. package/es/components/FluidSearch/FluidSearch.Skeleton.d.ts +11 -3
  61. package/es/components/FluidSearch/FluidSearch.d.ts +1 -1
  62. package/es/components/FluidSearch/FluidSearch.js +3 -3
  63. package/es/components/FluidSelect/FluidSelect.Skeleton.d.ts +11 -3
  64. package/es/components/FluidTextArea/FluidTextArea.Skeleton.d.ts +11 -3
  65. package/es/components/FluidTextArea/FluidTextArea.d.ts +95 -1
  66. package/es/components/FluidTextInput/FluidPasswordInput.d.ts +83 -2
  67. package/es/components/FluidTextInput/FluidTextInput.Skeleton.d.ts +11 -3
  68. package/es/components/Grid/GridContext.d.ts +19 -1
  69. package/es/components/IconButton/index.d.ts +1 -1
  70. package/es/components/IconButton/index.js +2 -2
  71. package/es/components/InlineLoading/InlineLoading.js +5 -11
  72. package/es/components/Link/Link.js +3 -0
  73. package/es/components/ListBox/ListBoxField.d.ts +35 -2
  74. package/es/components/ListBox/ListBoxMenuIcon.d.ts +16 -3
  75. package/es/components/ListBox/ListBoxMenuItem.d.ts +1 -1
  76. package/es/components/ListBox/ListBoxSelection.d.ts +34 -3
  77. package/es/components/Menu/MenuItem.d.ts +2 -2
  78. package/es/components/MultiSelect/FilterableMultiSelect.d.ts +2 -2
  79. package/es/components/MultiSelect/FilterableMultiSelect.js +22 -13
  80. package/es/components/MultiSelect/MultiSelect.d.ts +3 -4
  81. package/es/components/MultiSelect/MultiSelect.js +24 -22
  82. package/es/components/Notification/Notification.d.ts +8 -7
  83. package/es/components/Notification/Notification.js +4 -4
  84. package/es/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  85. package/es/components/OverflowMenu/OverflowMenu.js +0 -1
  86. package/es/components/OverflowMenu/index.d.ts +1 -1
  87. package/es/components/PageHeader/PageHeader.d.ts +3 -3
  88. package/es/components/Popover/index.js +21 -12
  89. package/es/components/Search/Search.d.ts +2 -2
  90. package/es/components/Select/Select.d.ts +1 -1
  91. package/es/components/Select/Select.js +2 -2
  92. package/es/components/SkeletonIcon/SkeletonIcon.d.ts +16 -2
  93. package/es/components/SkeletonText/SkeletonText.d.ts +1 -1
  94. package/es/components/Tag/Tag.d.ts +1 -1
  95. package/es/components/Tag/Tag.js +2 -0
  96. package/es/components/Text/Text.d.ts +1 -1
  97. package/es/components/Text/Text.js +4 -3
  98. package/es/components/Text/TextDirection.d.ts +1 -1
  99. package/es/components/Text/TextDirection.js +1 -3
  100. package/es/components/Text/TextDirectionContext.d.ts +3 -3
  101. package/es/components/TextArea/TextArea.js +1 -3
  102. package/es/components/TextInput/ControlledPasswordInput.d.ts +1 -1
  103. package/es/components/TextInput/ControlledPasswordInput.js +2 -2
  104. package/es/components/TextInput/PasswordInput.d.ts +1 -1
  105. package/es/components/TextInput/PasswordInput.js +2 -2
  106. package/es/components/TextInput/TextInput.d.ts +1 -1
  107. package/es/components/TextInput/TextInput.js +2 -2
  108. package/es/components/Tile/Tile.d.ts +1 -1
  109. package/es/components/Tile/Tile.js +37 -69
  110. package/es/components/Toggle/Toggle.Skeleton.d.ts +9 -3
  111. package/es/components/Toggletip/index.d.ts +1 -1
  112. package/es/components/Toggletip/index.js +9 -7
  113. package/es/components/Tooltip/DefinitionTooltip.d.ts +52 -1
  114. package/es/components/Tooltip/Tooltip.js +2 -0
  115. package/es/components/TreeView/TreeNode.d.ts +4 -4
  116. package/es/components/UIShell/Header.d.ts +20 -3
  117. package/es/components/UIShell/HeaderGlobalAction.d.ts +2 -2
  118. package/es/components/UIShell/HeaderName.js +1 -1
  119. package/es/components/UIShell/Link.d.ts +1 -1
  120. package/es/components/UIShell/Link.js +14 -14
  121. package/es/components/UIShell/SideNav.d.ts +3 -4
  122. package/es/components/UIShell/SideNav.js +37 -27
  123. package/es/components/UIShell/SideNavDivider.d.ts +11 -3
  124. package/es/components/UIShell/SideNavHeader.d.ts +24 -1
  125. package/es/components/UIShell/SideNavIcon.d.ts +20 -2
  126. package/es/components/UIShell/SideNavItem.d.ts +20 -2
  127. package/es/components/UIShell/SideNavItems.d.ts +22 -2
  128. package/es/components/UIShell/SideNavLink.d.ts +1 -1
  129. package/es/components/UIShell/SideNavLink.js +14 -14
  130. package/es/components/UIShell/SideNavMenu.d.ts +1 -1
  131. package/es/components/UIShell/SideNavMenu.js +2 -2
  132. package/es/components/UIShell/SideNavMenuItem.d.ts +2 -2
  133. package/es/components/UIShell/SideNavMenuItem.js +2 -2
  134. package/es/components/UIShell/SwitcherDivider.d.ts +10 -2
  135. package/es/internal/FloatingMenu.d.ts +1 -1
  136. package/es/internal/FloatingMenu.js +0 -2
  137. package/es/internal/PolymorphicProps.d.ts +3 -3
  138. package/es/internal/useNoInteractiveChildren.d.ts +1 -1
  139. package/es/internal/useNoInteractiveChildren.js +8 -10
  140. package/es/internal/useOutsideClick.d.ts +1 -1
  141. package/es/internal/useOutsideClick.js +0 -4
  142. package/lib/components/BadgeIndicator/index.d.ts +1 -1
  143. package/lib/components/BadgeIndicator/index.js +7 -5
  144. package/lib/components/Breadcrumb/BreadcrumbItem.d.ts +1 -1
  145. package/lib/components/Breadcrumb/BreadcrumbItem.js +5 -6
  146. package/lib/components/Button/Button.Skeleton.d.ts +28 -2
  147. package/lib/components/Button/Button.js +3 -2
  148. package/lib/components/ChatButton/ChatButton.d.ts +3 -2
  149. package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +60 -2
  150. package/lib/components/ComboBox/ComboBox.d.ts +6 -7
  151. package/lib/components/ComboBox/ComboBox.js +22 -10
  152. package/lib/components/ComposedModal/ComposedModal.d.ts +2 -2
  153. package/lib/components/ContainedList/ContainedList.d.ts +35 -6
  154. package/lib/components/ContainedList/ContainedList.js +3 -1
  155. package/lib/components/ContainedList/ContainedListItem/ContainedListItem.d.ts +32 -3
  156. package/lib/components/ContainedList/index.d.ts +1 -1
  157. package/lib/components/ContainedList/index.js +4 -1
  158. package/lib/components/DangerButton/DangerButton.d.ts +1 -1
  159. package/lib/components/DataTable/DataTable.d.ts +22 -5
  160. package/lib/components/DataTable/DataTable.js +1 -1
  161. package/lib/components/DataTable/TableExpandRow.d.ts +1 -1
  162. package/lib/components/DataTable/TableHeader.d.ts +1 -1
  163. package/lib/components/DataTable/TableHeader.js +17 -15
  164. package/lib/components/DataTable/TableToolbar.d.ts +25 -1
  165. package/lib/components/DataTable/TableToolbarMenu.d.ts +25 -5
  166. package/lib/components/DataTable/TableToolbarMenu.js +0 -3
  167. package/lib/components/DataTableSkeleton/DataTableSkeleton.d.ts +51 -2
  168. package/lib/components/DataTableSkeleton/DataTableSkeleton.js +6 -0
  169. package/lib/components/DatePicker/DatePicker.d.ts +2 -2
  170. package/lib/components/DatePicker/DatePicker.js +37 -52
  171. package/lib/components/DatePicker/plugins/fixEventsPlugin.js +28 -2
  172. package/lib/components/DatePickerInput/DatePickerInput.d.ts +1 -1
  173. package/lib/components/DatePickerInput/DatePickerInput.js +2 -1
  174. package/lib/components/Dialog/Dialog.d.ts +1 -1
  175. package/lib/components/Dropdown/Dropdown.Skeleton.d.ts +19 -2
  176. package/lib/components/Dropdown/Dropdown.d.ts +3 -4
  177. package/lib/components/Dropdown/Dropdown.js +16 -13
  178. package/lib/components/ExpandableSearch/ExpandableSearch.d.ts +1 -1
  179. package/lib/components/ExpandableSearch/ExpandableSearch.js +13 -11
  180. package/lib/components/FileUploader/FileUploader.d.ts +1 -1
  181. package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +1 -1
  182. package/lib/components/FileUploader/FileUploaderDropContainer.js +28 -10
  183. package/lib/components/FluidComboBox/FluidComboBox.Skeleton.d.ts +11 -3
  184. package/lib/components/FluidComboBox/FluidComboBox.d.ts +2 -7
  185. package/lib/components/FluidComboBox/FluidComboBox.js +1 -2
  186. package/lib/components/FluidDatePicker/FluidDatePicker.Skeleton.d.ts +15 -3
  187. package/lib/components/FluidDatePicker/FluidDatePicker.d.ts +2 -2
  188. package/lib/components/FluidDropdown/FluidDropdown.Skeleton.d.ts +11 -3
  189. package/lib/components/FluidDropdown/FluidDropdown.d.ts +1 -6
  190. package/lib/components/FluidDropdown/FluidDropdown.js +1 -2
  191. package/lib/components/FluidForm/FluidForm.d.ts +15 -2
  192. package/lib/components/FluidMultiSelect/FluidFilterableMultiSelect.d.ts +2 -2
  193. package/lib/components/FluidMultiSelect/FluidMultiSelect.Skeleton.d.ts +11 -3
  194. package/lib/components/FluidMultiSelect/FluidMultiSelect.d.ts +1 -6
  195. package/lib/components/FluidMultiSelect/FluidMultiSelect.js +1 -2
  196. package/lib/components/FluidNumberInput/FluidNumberInput.Skeleton.d.ts +11 -3
  197. package/lib/components/FluidNumberInput/FluidNumberInput.d.ts +1 -1
  198. package/lib/components/FluidSearch/FluidSearch.Skeleton.d.ts +11 -3
  199. package/lib/components/FluidSearch/FluidSearch.d.ts +1 -1
  200. package/lib/components/FluidSearch/FluidSearch.js +2 -2
  201. package/lib/components/FluidSelect/FluidSelect.Skeleton.d.ts +11 -3
  202. package/lib/components/FluidTextArea/FluidTextArea.Skeleton.d.ts +11 -3
  203. package/lib/components/FluidTextArea/FluidTextArea.d.ts +95 -1
  204. package/lib/components/FluidTextInput/FluidPasswordInput.d.ts +83 -2
  205. package/lib/components/FluidTextInput/FluidTextInput.Skeleton.d.ts +11 -3
  206. package/lib/components/Grid/GridContext.d.ts +19 -1
  207. package/lib/components/IconButton/index.d.ts +1 -1
  208. package/lib/components/InlineLoading/InlineLoading.js +5 -11
  209. package/lib/components/Link/Link.js +3 -0
  210. package/lib/components/ListBox/ListBoxField.d.ts +35 -2
  211. package/lib/components/ListBox/ListBoxMenuIcon.d.ts +16 -3
  212. package/lib/components/ListBox/ListBoxMenuItem.d.ts +1 -1
  213. package/lib/components/ListBox/ListBoxSelection.d.ts +34 -3
  214. package/lib/components/Menu/MenuItem.d.ts +2 -2
  215. package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +2 -2
  216. package/lib/components/MultiSelect/FilterableMultiSelect.js +22 -13
  217. package/lib/components/MultiSelect/MultiSelect.d.ts +3 -4
  218. package/lib/components/MultiSelect/MultiSelect.js +24 -22
  219. package/lib/components/Notification/Notification.d.ts +8 -7
  220. package/lib/components/Notification/Notification.js +4 -4
  221. package/lib/components/OverflowMenu/OverflowMenu.d.ts +1 -1
  222. package/lib/components/OverflowMenu/OverflowMenu.js +0 -1
  223. package/lib/components/OverflowMenu/index.d.ts +1 -1
  224. package/lib/components/PageHeader/PageHeader.d.ts +3 -3
  225. package/lib/components/Popover/index.js +19 -10
  226. package/lib/components/Search/Search.d.ts +2 -2
  227. package/lib/components/Select/Select.d.ts +1 -1
  228. package/lib/components/SkeletonIcon/SkeletonIcon.d.ts +16 -2
  229. package/lib/components/SkeletonText/SkeletonText.d.ts +1 -1
  230. package/lib/components/Tag/Tag.d.ts +1 -1
  231. package/lib/components/Tag/Tag.js +2 -0
  232. package/lib/components/Text/Text.d.ts +1 -1
  233. package/lib/components/Text/Text.js +3 -2
  234. package/lib/components/Text/TextDirection.d.ts +1 -1
  235. package/lib/components/Text/TextDirection.js +1 -3
  236. package/lib/components/Text/TextDirectionContext.d.ts +3 -3
  237. package/lib/components/TextArea/TextArea.js +1 -3
  238. package/lib/components/TextInput/ControlledPasswordInput.d.ts +1 -1
  239. package/lib/components/TextInput/PasswordInput.d.ts +1 -1
  240. package/lib/components/TextInput/TextInput.d.ts +1 -1
  241. package/lib/components/Tile/Tile.d.ts +1 -1
  242. package/lib/components/Tile/Tile.js +35 -67
  243. package/lib/components/Toggle/Toggle.Skeleton.d.ts +9 -3
  244. package/lib/components/Toggletip/index.d.ts +1 -1
  245. package/lib/components/Toggletip/index.js +7 -5
  246. package/lib/components/Tooltip/DefinitionTooltip.d.ts +52 -1
  247. package/lib/components/Tooltip/Tooltip.js +2 -0
  248. package/lib/components/TreeView/TreeNode.d.ts +4 -4
  249. package/lib/components/UIShell/Header.d.ts +20 -3
  250. package/lib/components/UIShell/HeaderGlobalAction.d.ts +2 -2
  251. package/lib/components/UIShell/HeaderName.js +1 -1
  252. package/lib/components/UIShell/Link.d.ts +1 -1
  253. package/lib/components/UIShell/Link.js +13 -13
  254. package/lib/components/UIShell/SideNav.d.ts +3 -4
  255. package/lib/components/UIShell/SideNav.js +36 -26
  256. package/lib/components/UIShell/SideNavDivider.d.ts +11 -3
  257. package/lib/components/UIShell/SideNavHeader.d.ts +24 -1
  258. package/lib/components/UIShell/SideNavIcon.d.ts +20 -2
  259. package/lib/components/UIShell/SideNavItem.d.ts +20 -2
  260. package/lib/components/UIShell/SideNavItems.d.ts +22 -2
  261. package/lib/components/UIShell/SideNavLink.d.ts +1 -1
  262. package/lib/components/UIShell/SideNavLink.js +14 -14
  263. package/lib/components/UIShell/SideNavMenu.d.ts +1 -1
  264. package/lib/components/UIShell/SideNavMenuItem.d.ts +2 -2
  265. package/lib/components/UIShell/SwitcherDivider.d.ts +10 -2
  266. package/lib/internal/FloatingMenu.d.ts +1 -1
  267. package/lib/internal/FloatingMenu.js +0 -2
  268. package/lib/internal/PolymorphicProps.d.ts +3 -3
  269. package/lib/internal/useNoInteractiveChildren.d.ts +1 -1
  270. package/lib/internal/useNoInteractiveChildren.js +8 -10
  271. package/lib/internal/useOutsideClick.d.ts +1 -1
  272. package/lib/internal/useOutsideClick.js +0 -4
  273. package/package.json +7 -7
  274. package/scss/_carbon-utilities.scss +9 -0
  275. package/telemetry.yml +0 -1
  276. package/es/internal/createClassWrapper.d.ts +0 -12
  277. package/lib/internal/createClassWrapper.d.ts +0 -12
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2023
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -7,15 +7,17 @@
7
7
 
8
8
  import { extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
9
9
  import PropTypes from 'prop-types';
10
- import React from 'react';
10
+ import React, { forwardRef } from 'react';
11
11
  import cx from 'classnames';
12
12
  import { usePrefix } from '../../internal/usePrefix.js';
13
13
 
14
- const BadgeIndicator = /*#__PURE__*/React.forwardRef(function BadgeIndicatorContent({
15
- className: customClassName,
16
- count,
17
- ...rest
18
- }, ref) {
14
+ const frFn = forwardRef;
15
+ const BadgeIndicator = frFn((props, ref) => {
16
+ const {
17
+ className: customClassName,
18
+ count,
19
+ ...rest
20
+ } = props;
19
21
  const prefix = usePrefix();
20
22
  const classNames = cx(`${prefix}--badge-indicator`, customClassName, {
21
23
  [`${prefix}--badge-indicator--count`]: count
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2025
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -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, { forwardRef } from 'react';
10
+ import React, { forwardRef, cloneElement, isValidElement } from 'react';
11
11
  import cx from 'classnames';
12
12
  import Link from '../Link/Link.js';
13
13
  import { OverflowMenuHorizontal } from '@carbon/icons-react';
@@ -33,10 +33,9 @@ const BreadcrumbItem = frFn((props, ref) => {
33
33
  [`${prefix}--breadcrumb-item--current`]: isCurrentPage && ariaCurrent !== 'page',
34
34
  [customClassName]: !!customClassName
35
35
  });
36
-
37
- // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452
38
- const child = children;
39
- if (child.type && child.type.displayName !== undefined && child.type.displayName.includes('OverflowMenu')) {
36
+ const child = /*#__PURE__*/isValidElement(children) ? children : null;
37
+ const childType = child?.type;
38
+ if (child && typeof child.type !== 'string' && childType?.displayName?.includes('OverflowMenu')) {
40
39
  const horizontalOverflowIcon = /*#__PURE__*/React.createElement(OverflowMenuHorizontal, {
41
40
  className: `${prefix}--overflow-menu__icon`
42
41
  });
@@ -66,10 +65,10 @@ const BreadcrumbItem = frFn((props, ref) => {
66
65
  return /*#__PURE__*/React.createElement("li", _extends({
67
66
  className: className,
68
67
  ref: ref
69
- }, rest), /*#__PURE__*/React.cloneElement(child, {
68
+ }, rest), child ? /*#__PURE__*/cloneElement(child, {
70
69
  'aria-current': ariaCurrent,
71
70
  className: cx(`${prefix}--link`, child.props.className)
72
- }));
71
+ }) : children);
73
72
  });
74
73
  BreadcrumbItem.displayName = 'BreadcrumbItem';
75
74
  BreadcrumbItem.propTypes = {
@@ -1,9 +1,10 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2023
2
+ * Copyright IBM Corp. 2016, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
+ import PropTypes from 'prop-types';
7
8
  import React from 'react';
8
9
  import { ButtonSize } from './Button';
9
10
  export interface ButtonSkeletonProps extends React.HTMLAttributes<HTMLElement> {
@@ -23,6 +24,31 @@ export interface ButtonSkeletonProps extends React.HTMLAttributes<HTMLElement> {
23
24
  */
24
25
  small?: boolean;
25
26
  }
26
- declare const ButtonSkeleton: React.FC<ButtonSkeletonProps>;
27
+ declare const ButtonSkeleton: {
28
+ ({ className, small, href, size, ...rest }: ButtonSkeletonProps): import("react/jsx-runtime").JSX.Element;
29
+ propTypes: {
30
+ /**
31
+ * Specify an optional className to add.
32
+ */
33
+ className: PropTypes.Requireable<string>;
34
+ /**
35
+ * Optionally specify an href for your Button to become an `<a>` element
36
+ */
37
+ href: PropTypes.Requireable<string>;
38
+ /**
39
+ * Specify the size of the button, from a list of available sizes.
40
+ * For `default` buttons, this prop can remain unspecified or use `default`.
41
+ * In the next major release of Carbon, `default`, `field`, and `small` will be removed
42
+ */
43
+ size: PropTypes.Requireable<string>;
44
+ /**
45
+ * @deprecated This property will be removed in the next major Carbon version,
46
+ * use size={sm} instead.
47
+ *
48
+ * Specify whether the Button should be a small variant
49
+ */
50
+ small: PropTypes.Requireable<boolean>;
51
+ };
52
+ };
27
53
  export default ButtonSkeleton;
28
54
  export { ButtonSkeleton };
@@ -21,8 +21,6 @@ function isIconOnlyButton(hasIconOnly, _kind) {
21
21
  }
22
22
  return false;
23
23
  }
24
-
25
- // eslint-disable-next-line react/display-name -- https://github.com/carbon-design-system/carbon/issues/20452
26
24
  const Button = /*#__PURE__*/React.forwardRef((props, ref) => {
27
25
  const {
28
26
  as,
@@ -104,7 +102,10 @@ const Button = /*#__PURE__*/React.forwardRef((props, ref) => {
104
102
  );
105
103
  }
106
104
  });
105
+
106
+ // @ts-expect-error - `displayName` isn't typed.
107
107
  Button.displayName = 'Button';
108
+ // @ts-expect-error - `propTypes` isn't typed.
108
109
  Button.propTypes = {
109
110
  /**
110
111
  * Specify how the button itself should be rendered.
@@ -4,7 +4,8 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, { type ComponentType, type FunctionComponent } from 'react';
7
+ import React, { type ComponentProps } from 'react';
8
+ import Button from '../Button';
8
9
  export type ChatButtonKind = 'primary' | 'secondary' | 'danger' | 'ghost' | 'tertiary';
9
10
  export type ChatButtonSize = 'sm' | 'md' | 'lg';
10
11
  export interface ChatButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
@@ -35,7 +36,7 @@ export interface ChatButtonProps extends React.ButtonHTMLAttributes<HTMLButtonEl
35
36
  /**
36
37
  * A component used to render an icon.
37
38
  */
38
- renderIcon?: ComponentType | FunctionComponent;
39
+ renderIcon?: ComponentProps<typeof Button>['renderIcon'];
39
40
  /**
40
41
  * Specify the size of the `ChatButton`, from the following list of sizes:
41
42
  */
@@ -4,7 +4,8 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, { type ReactNode } from 'react';
7
+ import PropTypes from 'prop-types';
8
+ import { type ReactNode } from 'react';
8
9
  export interface CheckboxGroupProps {
9
10
  children?: ReactNode;
10
11
  className?: string;
@@ -28,5 +29,62 @@ export interface CustomType {
28
29
  size: string;
29
30
  kind: string;
30
31
  }
31
- declare const CheckboxGroup: React.FC<CheckboxGroupProps>;
32
+ declare const CheckboxGroup: {
33
+ ({ children, className, decorator, helperText, invalid, invalidText, legendId, legendText, readOnly, warn, warnText, slug, orientation, ...rest }: CheckboxGroupProps): import("react/jsx-runtime").JSX.Element;
34
+ propTypes: {
35
+ /**
36
+ * Provide the children form elements to be rendered inside of the <fieldset>
37
+ */
38
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
39
+ /**
40
+ * Provide a custom className to be applied to the containing <fieldset> node
41
+ */
42
+ className: PropTypes.Requireable<string>;
43
+ /**
44
+ * **Experimental**: Provide a decorator component to be rendered inside the `CheckboxGroup` component
45
+ */
46
+ decorator: PropTypes.Requireable<PropTypes.ReactNodeLike>;
47
+ /**
48
+ * Provide text for the form group for additional help
49
+ */
50
+ helperText: PropTypes.Requireable<PropTypes.ReactNodeLike>;
51
+ /**
52
+ * Specify whether the form group is currently invalid
53
+ */
54
+ invalid: PropTypes.Requireable<boolean>;
55
+ /**
56
+ * Provide the text that is displayed when the form group is in an invalid state
57
+ */
58
+ invalidText: PropTypes.Requireable<PropTypes.ReactNodeLike>;
59
+ /**
60
+ * Provide id for the fieldset <legend> which corresponds to the fieldset
61
+ * `aria-labelledby`
62
+ */
63
+ legendId: PropTypes.Requireable<PropTypes.ReactNodeLike>;
64
+ /**
65
+ * Provide the text to be rendered inside of the fieldset <legend>
66
+ */
67
+ legendText: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
68
+ /**
69
+ * Provide the orientation for how the checkbox should be displayed
70
+ */
71
+ orientation: PropTypes.Requireable<string>;
72
+ /**
73
+ * Whether the CheckboxGroup should be read-only
74
+ */
75
+ readOnly: PropTypes.Requireable<boolean>;
76
+ /**
77
+ * **Experimental**: Provide a `Slug` component to be rendered inside the `CheckboxGroup` component
78
+ */
79
+ slug: (props: Record<string, any>, propName: string, componentName: string, ...rest: any[]) => any;
80
+ /**
81
+ * Specify whether the form group is currently in warning state
82
+ */
83
+ warn: PropTypes.Requireable<boolean>;
84
+ /**
85
+ * Provide the text that is displayed when the form group is in warning state
86
+ */
87
+ warnText: PropTypes.Requireable<PropTypes.ReactNodeLike>;
88
+ };
89
+ };
32
90
  export default CheckboxGroup;
@@ -1,11 +1,11 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2025
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
  import { UseComboboxProps, UseComboboxActions } from 'downshift';
8
- import React, { type ComponentType, type InputHTMLAttributes, type MouseEvent, type PropsWithChildren, type PropsWithRef, type ReactElement, type ReactNode, type RefAttributes } from 'react';
8
+ import { type InputHTMLAttributes, type MouseEvent, type PropsWithChildren, type ReactElement, type ReactNode, type RefAttributes, type RefObject } from 'react';
9
9
  import { type ListBoxMenuIconTranslationKey, type ListBoxSelectionTranslationKey, type ListBoxSize } from '../ListBox';
10
10
  import type { TranslateWithId } from '../../types/common';
11
11
  type ExcludedAttributes = 'id' | 'onChange' | 'onClick' | 'type' | 'size';
@@ -74,7 +74,7 @@ export interface ComboBoxProps<ItemType> extends Omit<InputHTMLAttributes<HTMLIn
74
74
  * cases they can not be shimmed by Carbon to shield you from potentially breaking
75
75
  * changes.
76
76
  */
77
- downshiftActions?: React.MutableRefObject<UseComboboxActions<ItemType> | undefined>;
77
+ downshiftActions?: RefObject<UseComboboxActions<ItemType> | undefined>;
78
78
  /**
79
79
  * Provide helper text that is used alongside the control label for
80
80
  * additional help
@@ -98,10 +98,9 @@ export interface ComboBoxProps<ItemType> extends Omit<InputHTMLAttributes<HTMLIn
98
98
  */
99
99
  invalidText?: ReactNode;
100
100
  /**
101
- * Optional function to render items as custom components instead of strings.
102
- * Defaults to null and is overridden by a getter
101
+ * Renders an item as a custom React node instead of a string.
103
102
  */
104
- itemToElement?: ComponentType<ItemType> | null;
103
+ itemToElement?: ((item: ItemType) => ReactNode) | null;
105
104
  /**
106
105
  * Helper function passed to downshift that allows the library to render a
107
106
  * given item to a string label. By default, it extracts the `label` field
@@ -196,7 +195,7 @@ export interface ComboBoxProps<ItemType> extends Omit<InputHTMLAttributes<HTMLIn
196
195
  */
197
196
  inputProps?: InputHTMLAttributes<HTMLInputElement>;
198
197
  }
199
- type ComboboxComponentProps<ItemType> = PropsWithRef<PropsWithChildren<ComboBoxProps<ItemType>> & RefAttributes<HTMLInputElement>>;
198
+ type ComboboxComponentProps<ItemType> = PropsWithChildren<ComboBoxProps<ItemType>> & RefAttributes<HTMLInputElement>;
200
199
  export interface ComboBoxComponent {
201
200
  <ItemType>(props: ComboboxComponentProps<ItemType>): ReactElement<any> | null;
202
201
  }
@@ -193,6 +193,7 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
193
193
  // eslint-disable-next-line react-hooks/exhaustive-deps -- https://github.com/carbon-design-system/carbon/issues/20452
194
194
  }, [typeahead, inputValue, items, itemToString, autocompleteCustomFilter]);
195
195
  const isManualClearingRef = useRef(false);
196
+ const committedCustomValueRef = useRef('');
196
197
  const [isClearing, setIsClearing] = useState(false);
197
198
  const prefix = usePrefix();
198
199
  const {
@@ -282,11 +283,13 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
282
283
  return changes;
283
284
  }
284
285
  const nextSelectedItem = items.find(item => itemToString(item) === inputValue) ?? inputValue;
286
+ const isCustomSelection = typeof nextSelectedItem === 'string' && !items.some(item => isEqual(item, nextSelectedItem));
285
287
  if (!isEqual(currentSelectedItem, nextSelectedItem) && onChange) {
286
288
  onChange({
287
289
  selectedItem: nextSelectedItem,
288
290
  inputValue
289
291
  });
292
+ committedCustomValueRef.current = isCustomSelection ? inputValue : '';
290
293
  }
291
294
  return {
292
295
  ...changes,
@@ -447,9 +450,6 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
447
450
  [`${prefix}--combo-box--input--focus`]: isFocused
448
451
  });
449
452
 
450
- // needs to be Capitalized for react to render it correctly
451
- const ItemToElement = itemToElement;
452
-
453
453
  // AILabel always size `mini`
454
454
  const candidate = slug ?? decorator;
455
455
  const candidateIsAILabel = isComponentElement(candidate, AILabel);
@@ -525,6 +525,9 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
525
525
  return;
526
526
  }
527
527
  if ((type === ItemClick || type === FunctionSelectItem || type === InputKeyDownEnter) && typeof newSelectedItem !== 'undefined' && !isEqual(selectedItemProp, newSelectedItem)) {
528
+ if (items.some(item => isEqual(item, newSelectedItem))) {
529
+ committedCustomValueRef.current = '';
530
+ }
528
531
  onChange({
529
532
  selectedItem: newSelectedItem
530
533
  });
@@ -534,7 +537,7 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
534
537
 
535
538
  // Keep the dropdown highlight in sync with either the controlled value or
536
539
  // Downshift's own selection when uncontrolled.
537
- const menuSelectedItem = typeof selectedItemProp !== 'undefined' ? selectedItemProp : selectedItem;
540
+ const currentSelectedItem = typeof selectedItemProp !== 'undefined' ? selectedItemProp : selectedItem;
538
541
  useEffect(() => {
539
542
  // Used to expose the downshift actions to consumers for use with downshiftProps
540
543
  // An odd pattern, here we mutate the value stored in the ref provided from the consumer.
@@ -649,8 +652,18 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
649
652
  ...inputProps,
650
653
  onChange: e => {
651
654
  const newValue = e.target.value;
655
+ const shouldClearSelection = allowCustomValue && committedCustomValueRef.current && inputValue === committedCustomValueRef.current && newValue === '';
652
656
  setInputValue(newValue);
653
657
  downshiftSetInputValue(newValue);
658
+ if (shouldClearSelection) {
659
+ setIsClearing(true);
660
+ onChange({
661
+ selectedItem: null,
662
+ inputValue: ''
663
+ });
664
+ selectItem(null);
665
+ committedCustomValueRef.current = '';
666
+ }
654
667
  },
655
668
  ref: mergeRefs(textInput, ref, inputRef),
656
669
  onKeyDown: event => {
@@ -667,6 +680,7 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
667
680
  // manually fire it when `allowCustomValue` is provided, the menu is closing,
668
681
  // and there is a value.
669
682
  if (allowCustomValue && isOpen && inputValue && highlightedIndex === -1) {
683
+ committedCustomValueRef.current = inputValue;
670
684
  onChange({
671
685
  selectedItem: null,
672
686
  inputValue
@@ -731,6 +745,7 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
731
745
  selectedItem: null
732
746
  });
733
747
  selectItem(null);
748
+ committedCustomValueRef.current = '';
734
749
  handleSelectionClear();
735
750
  },
736
751
  translateWithId: translateWithId,
@@ -762,13 +777,11 @@ const ComboBox = /*#__PURE__*/forwardRef((props, ref) => {
762
777
  } = itemProps;
763
778
  return /*#__PURE__*/React.createElement(ListBox.MenuItem, _extends({
764
779
  key: itemProps.id,
765
- isActive: isEqual(menuSelectedItem, item),
780
+ isActive: isEqual(currentSelectedItem, item),
766
781
  isHighlighted: highlightedIndex === index,
767
782
  title: title,
768
783
  disabled: disabled
769
- }, modifiedItemProps), ItemToElement ? /*#__PURE__*/React.createElement(ItemToElement, _extends({
770
- key: itemProps.id
771
- }, item)) : itemToString(item), isEqual(menuSelectedItem, item) && /*#__PURE__*/React.createElement(Checkmark, {
784
+ }, modifiedItemProps), itemToElement ? itemToElement(item) : itemToString(item), isEqual(currentSelectedItem, item) && /*#__PURE__*/React.createElement(Checkmark, {
772
785
  className: `${prefix}--list-box__menu-item__selected-icon`
773
786
  }));
774
787
  }) : null)), helperText && !invalid && !warn && !isFluid && /*#__PURE__*/React.createElement(Text, {
@@ -864,8 +877,7 @@ ComboBox.propTypes = {
864
877
  */
865
878
  invalidText: PropTypes.node,
866
879
  /**
867
- * Optional function to render items as custom components instead of strings.
868
- * Defaults to null and is overridden by a getter
880
+ * Renders an item as a custom React node instead of a string.
869
881
  */
870
882
  itemToElement: PropTypes.func,
871
883
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2023, 2025
2
+ * Copyright IBM Corp. 2023, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -61,7 +61,7 @@ export interface ComposedModalProps extends HTMLAttributes<HTMLDivElement> {
61
61
  * Specify an optional handler for closing modal.
62
62
  * Returning `false` here prevents closing modal.
63
63
  */
64
- onClose?(event: MouseEvent): void | boolean;
64
+ onClose?: ((event: MouseEvent) => boolean) | ((event: MouseEvent) => void);
65
65
  /**
66
66
  * Called for all `onKeyDown` events that do not close the modal
67
67
  */
@@ -4,12 +4,9 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, { ReactNode } from 'react';
8
- import ContainedListItem from './ContainedListItem';
7
+ import { ReactNode } from 'react';
8
+ import PropTypes from 'prop-types';
9
9
  declare const variants: readonly ["on-page", "disclosed"];
10
- export type ContainedListType = React.FC<ContainedListProps> & {
11
- ContainedListItem: typeof ContainedListItem;
12
- };
13
10
  export type Variants = (typeof variants)[number];
14
11
  export interface ContainedListProps {
15
12
  /**
@@ -41,5 +38,37 @@ export interface ContainedListProps {
41
38
  */
42
39
  size?: 'sm' | 'md' | 'lg' | 'xl';
43
40
  }
44
- declare const ContainedList: ContainedListType;
41
+ declare const ContainedList: {
42
+ ({ action, children, className, isInset, kind, label, size, ...rest }: ContainedListProps): import("react/jsx-runtime").JSX.Element;
43
+ propTypes: {
44
+ /**
45
+ * A slot for a possible interactive element to render.
46
+ */
47
+ action: PropTypes.Requireable<PropTypes.ReactNodeLike>;
48
+ /**
49
+ * A collection of ContainedListItems to be rendered in the ContainedList
50
+ */
51
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
52
+ /**
53
+ * Additional CSS class names.
54
+ */
55
+ className: PropTypes.Requireable<string>;
56
+ /**
57
+ * Specify whether the dividing lines in between list items should be inset.
58
+ */
59
+ isInset: PropTypes.Requireable<boolean>;
60
+ /**
61
+ * The kind of ContainedList you want to display
62
+ */
63
+ kind: PropTypes.Requireable<"on-page" | "disclosed">;
64
+ /**
65
+ * A label describing the contained list.
66
+ */
67
+ label: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
68
+ /**
69
+ * Specify the size of the contained list.
70
+ */
71
+ size: PropTypes.Requireable<string>;
72
+ };
73
+ };
45
74
  export default ContainedList;
@@ -132,6 +132,8 @@ ContainedList.propTypes = {
132
132
  */
133
133
  size: PropTypes.oneOf(['sm', 'md', 'lg', 'xl'])
134
134
  };
135
- ContainedList.ContainedListItem = ContainedListItem;
135
+ Object.assign(ContainedList, {
136
+ ContainedListItem
137
+ });
136
138
 
137
139
  export { ContainedList as default };
@@ -4,7 +4,8 @@
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import React, { type ComponentType, type FunctionComponent, ReactNode } from 'react';
7
+ import { type ElementType, type ReactNode } from 'react';
8
+ import PropTypes from 'prop-types';
8
9
  interface ContainedListItemProps {
9
10
  /**
10
11
  * A slot for a possible interactive element to render within the item.
@@ -29,7 +30,35 @@ interface ContainedListItemProps {
29
30
  /**
30
31
  * A component used to render an icon.
31
32
  */
32
- renderIcon?: ComponentType | FunctionComponent;
33
+ renderIcon?: ElementType;
33
34
  }
34
- declare const ContainedListItem: React.FC<ContainedListItemProps>;
35
+ declare const ContainedListItem: {
36
+ ({ action, children, className, disabled, onClick, renderIcon: IconElement, ...rest }: ContainedListItemProps): import("react/jsx-runtime").JSX.Element;
37
+ propTypes: {
38
+ /**
39
+ * A slot for a possible interactive element to render within the item.
40
+ */
41
+ action: PropTypes.Requireable<PropTypes.ReactNodeLike>;
42
+ /**
43
+ * The content of this item. Must not contain any interactive elements. Use props.action to include those.
44
+ */
45
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
46
+ /**
47
+ * Additional CSS class names.
48
+ */
49
+ className: PropTypes.Requireable<string>;
50
+ /**
51
+ * Whether this item is disabled.
52
+ */
53
+ disabled: PropTypes.Requireable<boolean>;
54
+ /**
55
+ * Provide an optional function to be called when the item is clicked.
56
+ */
57
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
58
+ /**
59
+ * A component used to render an icon.
60
+ */
61
+ renderIcon: PropTypes.Requireable<object>;
62
+ };
63
+ };
35
64
  export default ContainedListItem;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2022
2
+ * Copyright IBM Corp. 2022, 2025
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -9,8 +9,11 @@ import { deprecateFieldOnObject } from '../../internal/deprecateFieldOnObject.js
9
9
  import ContainedList from './ContainedList.js';
10
10
  import ContainedListItem from './ContainedListItem/ContainedListItem.js';
11
11
 
12
- ContainedList.ContainedListItem = ContainedListItem;
13
12
  if (process.env.NODE_ENV !== 'production') {
13
+ // @ts-expect-error - This component did not have a `displayName` before it
14
+ // was properly typed. After adding proper typing, a type error appears here.
15
+ // The warning logged to the console includes `undefined` because no
16
+ // `displayName` is set.
14
17
  deprecateFieldOnObject(ContainedList, 'ContainedListItem', ContainedListItem);
15
18
  }
16
19
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2023
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2025
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -140,7 +140,7 @@ export interface DataTableRenderProps<RowType, ColTypes extends any[]> {
140
140
  [key: string]: unknown;
141
141
  }) => {
142
142
  onCancel: () => void;
143
- onSelectAll?: () => void | undefined;
143
+ onSelectAll?: () => void;
144
144
  shouldShowBatchActions: boolean;
145
145
  totalCount: number;
146
146
  totalSelected: number;
@@ -367,7 +367,15 @@ export declare const DataTable: {
367
367
  slug: PropTypes.Requireable<PropTypes.ReactNodeLike>;
368
368
  };
369
369
  };
370
- TableToolbar: React.FC<import("./TableToolbar").TableToolbarProps>;
370
+ TableToolbar: {
371
+ ({ ["aria-label"]: ariaLabel, ariaLabel: deprecatedAriaLabel, children, size, ...rest }: import("./TableToolbar").TableToolbarProps): import("react/jsx-runtime").JSX.Element;
372
+ propTypes: {
373
+ "aria-label": PropTypes.Requireable<string>;
374
+ ariaLabel: (props: Record<string, any>, propName: string, componentName: string, ...rest: any[]) => any;
375
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
376
+ size: PropTypes.Requireable<string>;
377
+ };
378
+ };
371
379
  TableToolbarAction: React.ForwardRefExoticComponent<import("./TableToolbarAction").TableToolbarActionProps & React.RefAttributes<HTMLDivElement>>;
372
380
  TableToolbarContent: (props: React.HTMLAttributes<"div">) => React.ReactElement<any>;
373
381
  TableToolbarSearch: {
@@ -394,12 +402,21 @@ export declare const DataTable: {
394
402
  translateWithId: PropTypes.Requireable<(...args: any[]) => any>;
395
403
  };
396
404
  };
397
- TableToolbarMenu: React.FC<import("./TableToolbarMenu").TableToolbarMenuProps>;
405
+ TableToolbarMenu: {
406
+ ({ className, renderIcon, iconDescription, children, menuOptionsClass, ...rest }: import("./TableToolbarMenu").TableToolbarMenuProps): import("react/jsx-runtime").JSX.Element;
407
+ propTypes: {
408
+ children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
409
+ className: PropTypes.Requireable<string>;
410
+ iconDescription: PropTypes.Requireable<string>;
411
+ menuOptionsClass: PropTypes.Requireable<string>;
412
+ renderIcon: PropTypes.Requireable<object>;
413
+ };
414
+ };
398
415
  propTypes: {
399
416
  /**
400
417
  * Pass in the children that will be rendered within the Table
401
418
  */
402
- children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
419
+ children: PropTypes.Requireable<(...args: any[]) => any>;
403
420
  /**
404
421
  * Experimental property. Allows table to align cell contents to the top if there is text wrapping in the content. Might have performance issues, intended for smaller tables
405
422
  */
@@ -582,7 +582,7 @@ DataTable.propTypes = {
582
582
  /**
583
583
  * Pass in the children that will be rendered within the Table
584
584
  */
585
- children: PropTypes.node,
585
+ children: PropTypes.func,
586
586
  /**
587
587
  * Experimental property. Allows table to align cell contents to the top if there is text wrapping in the content. Might have performance issues, intended for smaller tables
588
588
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2025
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -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, { Children, isValidElement } from 'react';
11
+ import React, { forwardRef, Children, isValidElement } from 'react';
12
12
  import { ChevronRight } from '@carbon/icons-react';
13
13
  import TableCell from './TableCell.js';
14
14
  import { usePrefix } from '../../internal/usePrefix.js';
@@ -19,7 +19,7 @@ import { isComponentElement } from '../../internal/utils.js';
19
19
 
20
20
  /** Props shared between `TableRow` and `TableExpandRow`. */
21
21
 
22
- const TableExpandRow = /*#__PURE__*/React.forwardRef(({
22
+ const TableExpandRow = /*#__PURE__*/forwardRef(({
23
23
  ['aria-controls']: ariaControls,
24
24
  ['aria-label']: ariaLabel,
25
25
  ariaLabel: deprecatedAriaLabel,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2016, 2025
2
+ * Copyright IBM Corp. 2016, 2026
3
3
  *
4
4
  * This source code is licensed under the Apache-2.0 license found in the
5
5
  * LICENSE file in the root directory of this source tree.