@carbon/react 1.84.0 → 1.85.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +784 -784
  2. package/es/components/AILabel/index.js +6 -1
  3. package/es/components/Checkbox/Checkbox.d.ts +2 -2
  4. package/es/components/Checkbox/Checkbox.js +8 -8
  5. package/es/components/CheckboxGroup/CheckboxGroup.d.ts +2 -2
  6. package/es/components/CheckboxGroup/CheckboxGroup.js +9 -8
  7. package/es/components/CodeSnippet/CodeSnippet.js +2 -4
  8. package/es/components/ComboBox/ComboBox.d.ts +1 -1
  9. package/es/components/ComboBox/ComboBox.js +8 -7
  10. package/es/components/ComposedModal/ComposedModal.d.ts +1 -1
  11. package/es/components/ComposedModal/ComposedModal.js +15 -10
  12. package/es/components/ContainedList/ContainedList.d.ts +1 -1
  13. package/es/components/ContainedList/ContainedList.js +4 -2
  14. package/es/components/ContentSwitcher/ContentSwitcher.js +6 -5
  15. package/es/components/DataTable/DataTable.js +3 -0
  16. package/es/components/DataTable/TableDecoratorRow.d.ts +2 -2
  17. package/es/components/DataTable/TableDecoratorRow.js +8 -8
  18. package/es/components/DataTable/TableExpandRow.d.ts +1 -1
  19. package/es/components/DataTable/TableExpandRow.js +15 -6
  20. package/es/components/DataTable/TableHeader.js +10 -10
  21. package/es/components/DataTable/TableRow.js +12 -4
  22. package/es/components/DataTable/tools/normalize.js +2 -1
  23. package/es/components/DatePickerInput/DatePickerInput.js +8 -7
  24. package/es/components/Dialog/index.d.ts +5 -1
  25. package/es/components/Dialog/index.js +20 -0
  26. package/es/components/Dropdown/Dropdown.d.ts +1 -1
  27. package/es/components/Dropdown/Dropdown.js +8 -10
  28. package/es/components/FileUploader/FileUploaderButton.js +2 -2
  29. package/es/components/FileUploader/FileUploaderDropContainer.js +2 -2
  30. package/es/components/FileUploader/FileUploaderItem.js +2 -2
  31. package/es/components/Layer/index.d.ts +1 -3
  32. package/es/components/Layer/index.js +9 -8
  33. package/es/components/Menu/Menu.js +0 -6
  34. package/es/components/Modal/Modal.d.ts +2 -2
  35. package/es/components/Modal/Modal.js +20 -9
  36. package/es/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
  37. package/es/components/MultiSelect/FilterableMultiSelect.js +8 -7
  38. package/es/components/MultiSelect/MultiSelect.d.ts +1 -1
  39. package/es/components/MultiSelect/MultiSelect.js +8 -7
  40. package/es/components/NumberInput/NumberInput.d.ts +1 -1
  41. package/es/components/NumberInput/NumberInput.js +9 -8
  42. package/es/components/PageHeader/PageHeader.js +2 -2
  43. package/es/components/Popover/index.js +2 -1
  44. package/es/components/RadioButton/RadioButton.d.ts +2 -2
  45. package/es/components/RadioButton/RadioButton.js +8 -8
  46. package/es/components/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
  47. package/es/components/RadioButtonGroup/RadioButtonGroup.js +9 -8
  48. package/es/components/RadioTile/RadioTile.d.ts +1 -1
  49. package/es/components/RadioTile/RadioTile.js +8 -7
  50. package/es/components/Select/Select.d.ts +2 -2
  51. package/es/components/Select/Select.js +8 -7
  52. package/es/components/Tag/DismissibleTag.d.ts +1 -1
  53. package/es/components/Tag/DismissibleTag.js +9 -8
  54. package/es/components/Tag/Tag.d.ts +1 -1
  55. package/es/components/Tag/Tag.js +9 -8
  56. package/es/components/TextArea/TextArea.js +8 -7
  57. package/es/components/TextInput/TextInput.d.ts +1 -1
  58. package/es/components/TextInput/TextInput.js +20 -9
  59. package/es/components/Tile/Tile.d.ts +2 -2
  60. package/es/components/Tile/Tile.js +30 -36
  61. package/es/components/Toggletip/index.js +2 -2
  62. package/es/components/Tooltip/DefinitionTooltip.js +1 -0
  63. package/es/components/TreeView/TreeNode.js +3 -3
  64. package/es/components/TreeView/TreeView.js +3 -3
  65. package/es/components/UIShell/Content.d.ts +5 -3
  66. package/es/components/UIShell/HeaderPanel.d.ts +2 -2
  67. package/es/components/UIShell/HeaderPanel.js +9 -5
  68. package/es/internal/Selection.js +8 -3
  69. package/es/internal/environment.js +1 -12
  70. package/es/internal/{__mocks__/mockHTMLElement.d.ts → index.d.ts} +2 -4
  71. package/es/internal/useResizeObserver.d.ts +1 -1
  72. package/es/internal/utils.d.ts +14 -0
  73. package/es/internal/utils.js +18 -0
  74. package/es/tools/uniqueId.d.ts +1 -6
  75. package/lib/components/AILabel/index.js +6 -1
  76. package/lib/components/Checkbox/Checkbox.d.ts +2 -2
  77. package/lib/components/Checkbox/Checkbox.js +7 -7
  78. package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +2 -2
  79. package/lib/components/CheckboxGroup/CheckboxGroup.js +8 -7
  80. package/lib/components/CodeSnippet/CodeSnippet.js +2 -4
  81. package/lib/components/ComboBox/ComboBox.d.ts +1 -1
  82. package/lib/components/ComboBox/ComboBox.js +11 -10
  83. package/lib/components/ComposedModal/ComposedModal.d.ts +1 -1
  84. package/lib/components/ComposedModal/ComposedModal.js +16 -11
  85. package/lib/components/ContainedList/ContainedList.d.ts +1 -1
  86. package/lib/components/ContainedList/ContainedList.js +4 -2
  87. package/lib/components/ContentSwitcher/ContentSwitcher.js +5 -4
  88. package/lib/components/DataTable/DataTable.js +3 -0
  89. package/lib/components/DataTable/TableDecoratorRow.d.ts +2 -2
  90. package/lib/components/DataTable/TableDecoratorRow.js +8 -8
  91. package/lib/components/DataTable/TableExpandRow.d.ts +1 -1
  92. package/lib/components/DataTable/TableExpandRow.js +14 -5
  93. package/lib/components/DataTable/TableHeader.js +9 -9
  94. package/lib/components/DataTable/TableRow.js +11 -3
  95. package/lib/components/DataTable/tools/normalize.js +2 -1
  96. package/lib/components/DatePickerInput/DatePickerInput.js +7 -6
  97. package/lib/components/Dialog/index.d.ts +5 -1
  98. package/lib/components/Dialog/index.js +20 -0
  99. package/lib/components/Dropdown/Dropdown.d.ts +1 -1
  100. package/lib/components/Dropdown/Dropdown.js +12 -14
  101. package/lib/components/FileUploader/FileUploaderButton.js +2 -2
  102. package/lib/components/FileUploader/FileUploaderDropContainer.js +2 -2
  103. package/lib/components/FileUploader/FileUploaderItem.js +2 -2
  104. package/lib/components/Layer/index.d.ts +1 -3
  105. package/lib/components/Layer/index.js +9 -8
  106. package/lib/components/Menu/Menu.js +0 -6
  107. package/lib/components/Modal/Modal.d.ts +2 -2
  108. package/lib/components/Modal/Modal.js +28 -17
  109. package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
  110. package/lib/components/MultiSelect/FilterableMultiSelect.js +12 -11
  111. package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
  112. package/lib/components/MultiSelect/MultiSelect.js +13 -12
  113. package/lib/components/NumberInput/NumberInput.d.ts +1 -1
  114. package/lib/components/NumberInput/NumberInput.js +8 -7
  115. package/lib/components/PageHeader/PageHeader.js +2 -2
  116. package/lib/components/Popover/index.js +2 -1
  117. package/lib/components/RadioButton/RadioButton.d.ts +2 -2
  118. package/lib/components/RadioButton/RadioButton.js +7 -7
  119. package/lib/components/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
  120. package/lib/components/RadioButtonGroup/RadioButtonGroup.js +10 -9
  121. package/lib/components/RadioTile/RadioTile.d.ts +1 -1
  122. package/lib/components/RadioTile/RadioTile.js +7 -6
  123. package/lib/components/Select/Select.d.ts +2 -2
  124. package/lib/components/Select/Select.js +7 -6
  125. package/lib/components/Tag/DismissibleTag.d.ts +1 -1
  126. package/lib/components/Tag/DismissibleTag.js +8 -7
  127. package/lib/components/Tag/Tag.d.ts +1 -1
  128. package/lib/components/Tag/Tag.js +8 -7
  129. package/lib/components/TextArea/TextArea.js +7 -6
  130. package/lib/components/TextInput/TextInput.d.ts +1 -1
  131. package/lib/components/TextInput/TextInput.js +19 -8
  132. package/lib/components/Tile/Tile.d.ts +2 -2
  133. package/lib/components/Tile/Tile.js +29 -35
  134. package/lib/components/Toggletip/index.js +2 -2
  135. package/lib/components/Tooltip/DefinitionTooltip.js +1 -0
  136. package/lib/components/TreeView/TreeNode.js +3 -3
  137. package/lib/components/TreeView/TreeView.js +3 -3
  138. package/lib/components/UIShell/Content.d.ts +5 -3
  139. package/lib/components/UIShell/HeaderPanel.d.ts +2 -2
  140. package/lib/components/UIShell/HeaderPanel.js +8 -4
  141. package/lib/internal/Selection.js +8 -3
  142. package/lib/internal/environment.js +1 -12
  143. package/lib/internal/{__mocks__/mockHTMLElement.d.ts → index.d.ts} +2 -4
  144. package/lib/internal/useResizeObserver.d.ts +1 -1
  145. package/lib/internal/utils.d.ts +14 -0
  146. package/lib/internal/utils.js +22 -0
  147. package/lib/tools/uniqueId.d.ts +1 -6
  148. package/package.json +11 -20
  149. package/telemetry.yml +1 -0
  150. package/es/tools/uniqueId.js +0 -14
  151. package/lib/tools/uniqueId.js +0 -18
@@ -14,17 +14,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
14
14
  *
15
15
  * @see https://github.com/facebook/fbjs/blob/4d1751311d3f67af2dcce2e40df8512a23c7b9c6/packages/fbjs/src/core/ExecutionEnvironment.js#L12
16
16
  */
17
- const canUseDOM = !!(typeof window !== 'undefined' &&
18
- // TODO: `ssr-friendly` doesn't support ESLint v9.
19
- // https://github.com/kopiro/eslint-plugin-ssr-friendly/issues/30
20
- // https://github.com/carbon-design-system/carbon/issues/18991
21
- /*
22
- // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope
23
- */
24
- window.document &&
25
- /*
26
- // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope
27
- */
28
- window.document.createElement);
17
+ const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
29
18
 
30
19
  exports.canUseDOM = canUseDOM;
@@ -1,9 +1,7 @@
1
1
  /**
2
- * Copyright IBM Corp. 2025, 2025
2
+ * Copyright IBM Corp. 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
- export declare const mockHTMLElement: (options: HTMLElement) => {
8
- mockRestore: () => void;
9
- };
7
+ export * from './utils';
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { RefObject } from 'react';
8
8
  export declare const useResizeObserver: ({ ref, onResize, }: {
9
- ref: RefObject<HTMLElement>;
9
+ ref: RefObject<HTMLElement | null>;
10
10
  onResize?: (rect: DOMRectReadOnly) => void;
11
11
  }) => {
12
12
  width: number;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Copyright IBM Corp. 2025
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { type ComponentType, type ReactElement, type ReactNode } from 'react';
8
+ /**
9
+ * Checks if an element is a valid React element of a given component type.
10
+ *
11
+ * @param element - The element to test.
12
+ * @param component - The component to match.
13
+ */
14
+ export declare const isComponentElement: <P>(element: ReactNode, component: ComponentType<P>) => element is ReactElement<P>;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Copyright IBM Corp. 2016, 2023
3
+ *
4
+ * This source code is licensed under the Apache-2.0 license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ 'use strict';
9
+
10
+ Object.defineProperty(exports, '__esModule', { value: true });
11
+
12
+ var React = require('react');
13
+
14
+ /**
15
+ * Checks if an element is a valid React element of a given component type.
16
+ *
17
+ * @param element - The element to test.
18
+ * @param component - The component to match.
19
+ */
20
+ const isComponentElement = (element, component) => /*#__PURE__*/React.isValidElement(element) && element.type === component;
21
+
22
+ exports.isComponentElement = isComponentElement;
@@ -1,7 +1,2 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 2025
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
1
+ export declare const uniqueIdDeprecationMessage = "The `uniqueId()` helper function from @carbon/react was called. This function should no longer be used.\n\n@carbon/react components should use the internal/useId.js hook instead. Other projects can use React's `useId()` hook: https://react.dev/reference/react/useId";
7
2
  export declare const uniqueId: (prefix?: string) => string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/react",
3
3
  "description": "React components for the Carbon Design System",
4
- "version": "1.84.0",
4
+ "version": "1.85.0-rc.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -53,9 +53,9 @@
53
53
  "dependencies": {
54
54
  "@babel/runtime": "^7.27.3",
55
55
  "@carbon/feature-flags": "^0.27.0",
56
- "@carbon/icons-react": "^11.61.0",
57
- "@carbon/layout": "^11.35.0",
58
- "@carbon/styles": "^1.83.0",
56
+ "@carbon/icons-react": "^11.62.0-rc.0",
57
+ "@carbon/layout": "^11.36.0-rc.0",
58
+ "@carbon/styles": "^1.84.0-rc.0",
59
59
  "@carbon/utilities": "^0.7.0",
60
60
  "@floating-ui/react": "^0.27.4",
61
61
  "@ibm/telemetry-js": "^1.5.0",
@@ -80,24 +80,17 @@
80
80
  "@babel/preset-react": "^7.27.1",
81
81
  "@babel/preset-typescript": "^7.27.1",
82
82
  "@carbon/test-utils": "^10.36.0",
83
- "@carbon/themes": "^11.54.0",
83
+ "@carbon/themes": "^11.55.0-rc.0",
84
84
  "@figma/code-connect": "^1.3.2",
85
85
  "@rollup/plugin-babel": "^6.0.0",
86
86
  "@rollup/plugin-commonjs": "^28.0.0",
87
87
  "@rollup/plugin-node-resolve": "^15.0.0",
88
88
  "@rollup/plugin-typescript": "^11.0.0",
89
89
  "@stackblitz/sdk": "^1.11.0",
90
- "@storybook/addon-a11y": "^8.4.7",
91
- "@storybook/addon-actions": "^8.4.7",
92
- "@storybook/addon-docs": "^8.4.7",
93
- "@storybook/addon-essentials": "^8.4.7",
94
- "@storybook/addon-links": "^8.4.7",
95
- "@storybook/addon-webpack5-compiler-babel": "^3.0.3",
96
- "@storybook/blocks": "^8.4.7",
97
- "@storybook/manager-api": "^8.4.7",
98
- "@storybook/react": "^8.4.7",
99
- "@storybook/react-webpack5": "^8.4.7",
100
- "@storybook/theming": "^8.4.7",
90
+ "@storybook/addon-docs": "^9.0.5",
91
+ "@storybook/addon-links": "^9.0.5",
92
+ "@storybook/addon-webpack5-compiler-babel": "^3.0.6",
93
+ "@storybook/react-webpack5": "^9.0.5",
101
94
  "@types/react-is": "^19.0.0",
102
95
  "@types/use-sync-external-store": "^1",
103
96
  "autoprefixer": "^10.4.0",
@@ -122,14 +115,12 @@
122
115
  "react-dom": "^19.0.0",
123
116
  "react-is": "^16.13.1 || ^17.0.2 || ^18.3.1 || ^19.0.0",
124
117
  "remark-gfm": "^4.0.0",
125
- "requestanimationframe": "^0.0.23",
126
118
  "rimraf": "^6.0.0",
127
119
  "rollup": "^2.79.1",
128
120
  "rollup-plugin-strip-banner": "^3.0.0",
129
121
  "sass": "^1.77.7",
130
122
  "sass-loader": "^16.0.0",
131
- "storybook": "^8.4.7",
132
- "storybook-addon-accessibility-checker": "^3.1.61-rc.3",
123
+ "storybook": "^9.0.5",
133
124
  "stream-browserify": "^3.0.0",
134
125
  "style-loader": "^4.0.0",
135
126
  "typescript-config-carbon": "^0.5.0",
@@ -148,5 +139,5 @@
148
139
  "**/*.scss",
149
140
  "**/*.css"
150
141
  ],
151
- "gitHead": "f6debacbfe06fa5c31f70809e15762dc30096d70"
142
+ "gitHead": "80ee492dc5079b90b8bca04f49497a90b60a366e"
152
143
  }
package/telemetry.yml CHANGED
@@ -326,6 +326,7 @@ collect:
326
326
  # Dialog
327
327
  - ariaDescribedBy
328
328
  - ariaLabelledBy
329
+ - focusAfterCloseRef
329
330
  - modal
330
331
  # DismissibleTag
331
332
  - dismissTooltipLabel
@@ -1,14 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 2023
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- let lastId = 0;
9
- const uniqueId = (prefix = 'id') => {
10
- lastId++;
11
- return `${prefix}${lastId}`;
12
- };
13
-
14
- export { uniqueId };
@@ -1,18 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2016, 2023
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- 'use strict';
9
-
10
- Object.defineProperty(exports, '__esModule', { value: true });
11
-
12
- let lastId = 0;
13
- const uniqueId = (prefix = 'id') => {
14
- lastId++;
15
- return `${prefix}${lastId}`;
16
- };
17
-
18
- exports.uniqueId = uniqueId;