@carbon/react 1.97.0 → 1.99.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.
- package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +1002 -967
- package/es/components/ButtonSet/ButtonSet.d.ts +5 -0
- package/es/components/ButtonSet/ButtonSet.js +68 -4
- package/es/components/CodeSnippet/CodeSnippet.d.ts +1 -1
- package/es/components/Copy/Copy.d.ts +1 -1
- package/es/components/CopyButton/CopyButton.d.ts +1 -1
- package/es/components/DataTable/DataTable.d.ts +2 -1
- package/es/components/DataTable/TableContainer.d.ts +10 -2
- package/es/components/DataTable/TableContainer.js +15 -3
- package/es/components/DataTable/state/sorting.d.ts +2 -4
- package/es/components/DatePicker/DatePicker.d.ts +3 -2
- package/es/components/DatePicker/DatePicker.js +18 -135
- package/es/components/DatePicker/DatePickerLocales.d.ts +12 -0
- package/es/components/DatePicker/DatePickerLocales.js +135 -0
- package/es/components/DatePickerInput/DatePickerInput.js +50 -28
- package/es/components/Dropdown/Dropdown.js +13 -1
- package/es/components/FileUploader/FileUploader.d.ts +23 -8
- package/es/components/FileUploader/FileUploader.js +53 -33
- package/es/components/FileUploader/FileUploaderButton.js +2 -2
- package/es/components/FileUploader/FileUploaderDropContainer.d.ts +13 -2
- package/es/components/FileUploader/FileUploaderDropContainer.js +15 -6
- package/es/components/FileUploader/FileUploaderItem.js +9 -6
- package/es/components/Link/Link.js +1 -1
- package/es/components/Menu/index.d.ts +4 -3
- package/es/components/MultiSelect/FilterableMultiSelect.js +1 -0
- package/es/components/MultiSelect/MultiSelect.js +1 -0
- package/es/components/NumberInput/NumberInput.d.ts +6 -2
- package/es/components/NumberInput/NumberInput.js +17 -5
- package/es/components/Pagination/Pagination.js +5 -5
- package/es/components/Popover/index.d.ts +1 -1
- package/es/components/Popover/index.js +27 -13
- package/es/components/Select/Select.js +27 -33
- package/es/components/Tabs/Tabs.js +1 -1
- package/es/components/TextArea/TextArea.js +14 -4
- package/es/components/TextInput/PasswordInput.js +3 -2
- package/es/components/Toggletip/index.d.ts +1 -0
- package/es/components/Toggletip/index.js +1 -1
- package/es/components/Tooltip/index.d.ts +3 -2
- package/es/internal/FloatingMenu.js +6 -5
- package/es/internal/OptimizedResize.js +4 -5
- package/es/tools/events.d.ts +1 -1
- package/lib/components/ButtonSet/ButtonSet.d.ts +5 -0
- package/lib/components/ButtonSet/ButtonSet.js +67 -3
- package/lib/components/CodeSnippet/CodeSnippet.d.ts +1 -1
- package/lib/components/Copy/Copy.d.ts +1 -1
- package/lib/components/CopyButton/CopyButton.d.ts +1 -1
- package/lib/components/DataTable/DataTable.d.ts +2 -1
- package/lib/components/DataTable/TableContainer.d.ts +10 -2
- package/lib/components/DataTable/TableContainer.js +15 -3
- package/lib/components/DataTable/state/sorting.d.ts +2 -4
- package/lib/components/DatePicker/DatePicker.d.ts +3 -2
- package/lib/components/DatePicker/DatePicker.js +18 -135
- package/lib/components/DatePicker/DatePickerLocales.d.ts +12 -0
- package/lib/components/DatePicker/DatePickerLocales.js +137 -0
- package/lib/components/DatePickerInput/DatePickerInput.js +49 -27
- package/lib/components/Dropdown/Dropdown.js +13 -1
- package/lib/components/FileUploader/FileUploader.d.ts +23 -8
- package/lib/components/FileUploader/FileUploader.js +53 -33
- package/lib/components/FileUploader/FileUploaderButton.js +2 -2
- package/lib/components/FileUploader/FileUploaderDropContainer.d.ts +13 -2
- package/lib/components/FileUploader/FileUploaderDropContainer.js +15 -6
- package/lib/components/FileUploader/FileUploaderItem.js +9 -6
- package/lib/components/Link/Link.js +1 -1
- package/lib/components/Menu/index.d.ts +4 -3
- package/lib/components/MultiSelect/FilterableMultiSelect.js +1 -0
- package/lib/components/MultiSelect/MultiSelect.js +1 -0
- package/lib/components/NumberInput/NumberInput.d.ts +6 -2
- package/lib/components/NumberInput/NumberInput.js +17 -5
- package/lib/components/Pagination/Pagination.js +5 -5
- package/lib/components/Popover/index.d.ts +1 -1
- package/lib/components/Popover/index.js +27 -13
- package/lib/components/Select/Select.js +27 -33
- package/lib/components/Tabs/Tabs.js +1 -1
- package/lib/components/TextArea/TextArea.js +14 -4
- package/lib/components/TextInput/PasswordInput.js +3 -2
- package/lib/components/Toggletip/index.d.ts +1 -0
- package/lib/components/Toggletip/index.js +3 -0
- package/lib/components/Tooltip/index.d.ts +3 -2
- package/lib/internal/FloatingMenu.js +6 -5
- package/lib/internal/OptimizedResize.js +4 -5
- package/lib/tools/events.d.ts +1 -1
- package/package.json +21 -29
- package/telemetry.yml +3 -0
|
@@ -18,12 +18,12 @@ var deprecate = require('../../prop-types/deprecate.js');
|
|
|
18
18
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
19
19
|
require('../FluidForm/FluidForm.js');
|
|
20
20
|
var FormContext = require('../FluidForm/FormContext.js');
|
|
21
|
-
var useId = require('../../internal/useId.js');
|
|
22
21
|
var events = require('../../tools/events.js');
|
|
23
22
|
var Text = require('../Text/Text.js');
|
|
24
23
|
require('../Text/TextDirection.js');
|
|
25
24
|
var index = require('../AILabel/index.js');
|
|
26
25
|
var utils = require('../../internal/utils.js');
|
|
26
|
+
var useNormalizedInputProps = require('../../internal/useNormalizedInputProps.js');
|
|
27
27
|
|
|
28
28
|
const Select = /*#__PURE__*/React.forwardRef(({
|
|
29
29
|
className,
|
|
@@ -53,7 +53,6 @@ const Select = /*#__PURE__*/React.forwardRef(({
|
|
|
53
53
|
isFluid
|
|
54
54
|
} = React.useContext(FormContext.FormContext);
|
|
55
55
|
const [isFocused, setIsFocused] = React.useState(false);
|
|
56
|
-
const selectInstanceId = useId.useId();
|
|
57
56
|
// Convert children to an array of valid elements once using type narrowing
|
|
58
57
|
const validChildren = React.Children.toArray(children).filter(child => /*#__PURE__*/React.isValidElement(child));
|
|
59
58
|
|
|
@@ -65,55 +64,50 @@ const Select = /*#__PURE__*/React.forwardRef(({
|
|
|
65
64
|
// otherwise, fallback to the first option's text
|
|
66
65
|
const initialTitle = other?.title || selectedOption?.props?.text || validChildren[0]?.props?.text || '';
|
|
67
66
|
const [title, setTitle] = React.useState(initialTitle);
|
|
67
|
+
const normalizedProps = useNormalizedInputProps.useNormalizedInputProps({
|
|
68
|
+
id,
|
|
69
|
+
disabled,
|
|
70
|
+
readOnly,
|
|
71
|
+
invalid,
|
|
72
|
+
invalidText,
|
|
73
|
+
warn,
|
|
74
|
+
warnText
|
|
75
|
+
});
|
|
68
76
|
const selectClasses = cx({
|
|
69
77
|
[`${prefix}--select`]: true,
|
|
70
78
|
[`${prefix}--select--inline`]: inline,
|
|
71
79
|
[`${prefix}--select--light`]: light,
|
|
72
|
-
[`${prefix}--select--invalid`]: invalid,
|
|
73
|
-
[`${prefix}--select--disabled`]: disabled,
|
|
80
|
+
[`${prefix}--select--invalid`]: normalizedProps.invalid,
|
|
81
|
+
[`${prefix}--select--disabled`]: normalizedProps.disabled,
|
|
74
82
|
[`${prefix}--select--readonly`]: readOnly,
|
|
75
|
-
[`${prefix}--select--warning`]: warn,
|
|
76
|
-
[`${prefix}--select--fluid--invalid`]: isFluid && invalid,
|
|
83
|
+
[`${prefix}--select--warning`]: normalizedProps.warn,
|
|
84
|
+
[`${prefix}--select--fluid--invalid`]: isFluid && normalizedProps.invalid,
|
|
77
85
|
[`${prefix}--select--fluid--focus`]: isFluid && isFocused,
|
|
78
86
|
[`${prefix}--select--slug`]: slug,
|
|
79
87
|
[`${prefix}--select--decorator`]: decorator
|
|
80
88
|
});
|
|
81
89
|
const labelClasses = cx(`${prefix}--label`, {
|
|
82
90
|
[`${prefix}--visually-hidden`]: hideLabel,
|
|
83
|
-
[`${prefix}--label--disabled`]: disabled
|
|
91
|
+
[`${prefix}--label--disabled`]: normalizedProps.disabled
|
|
84
92
|
});
|
|
85
93
|
const inputClasses = cx({
|
|
86
94
|
[`${prefix}--select-input`]: true,
|
|
87
95
|
[`${prefix}--select-input--${size}`]: size
|
|
88
96
|
});
|
|
89
|
-
const
|
|
90
|
-
const errorText = (() => {
|
|
91
|
-
if (invalid) {
|
|
92
|
-
return invalidText;
|
|
93
|
-
}
|
|
94
|
-
if (warn) {
|
|
95
|
-
return warnText;
|
|
96
|
-
}
|
|
97
|
-
})();
|
|
98
|
-
const error = invalid || warn ? /*#__PURE__*/React.createElement(Text.Text, {
|
|
99
|
-
as: "div",
|
|
100
|
-
className: `${prefix}--form-requirement`,
|
|
101
|
-
id: errorId
|
|
102
|
-
}, errorText) : null;
|
|
97
|
+
const error = normalizedProps.validation;
|
|
103
98
|
const helperTextClasses = cx(`${prefix}--form__helper-text`, {
|
|
104
|
-
[`${prefix}--form__helper-text--disabled`]: disabled
|
|
99
|
+
[`${prefix}--form__helper-text--disabled`]: normalizedProps.disabled
|
|
105
100
|
});
|
|
106
|
-
const helperId = !helperText ? undefined : `select-helper-text-${selectInstanceId}`;
|
|
107
101
|
const helper = helperText ? /*#__PURE__*/React.createElement(Text.Text, {
|
|
108
102
|
as: "div",
|
|
109
|
-
id: helperId,
|
|
103
|
+
id: normalizedProps.helperId,
|
|
110
104
|
className: helperTextClasses
|
|
111
105
|
}, helperText) : null;
|
|
112
106
|
const ariaProps = {};
|
|
113
|
-
if (invalid) {
|
|
114
|
-
ariaProps['aria-describedby'] =
|
|
107
|
+
if (normalizedProps.invalid) {
|
|
108
|
+
ariaProps['aria-describedby'] = normalizedProps.invalidId;
|
|
115
109
|
} else if (!inline && !isFluid) {
|
|
116
|
-
ariaProps['aria-describedby'] = helper ? helperId : undefined;
|
|
110
|
+
ariaProps['aria-describedby'] = helper ? normalizedProps.helperId : undefined;
|
|
117
111
|
}
|
|
118
112
|
const handleFocus = evt => {
|
|
119
113
|
setIsFocused(evt.type === 'focus' ? true : false);
|
|
@@ -150,8 +144,8 @@ const Select = /*#__PURE__*/React.forwardRef(({
|
|
|
150
144
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("select", _rollupPluginBabelHelpers.extends({}, other, ariaProps, {
|
|
151
145
|
id: id,
|
|
152
146
|
className: inputClasses,
|
|
153
|
-
disabled: disabled || undefined,
|
|
154
|
-
"aria-invalid": invalid || undefined,
|
|
147
|
+
disabled: normalizedProps.disabled || undefined,
|
|
148
|
+
"aria-invalid": normalizedProps.invalid || undefined,
|
|
155
149
|
"aria-readonly": readOnly || undefined,
|
|
156
150
|
title: title,
|
|
157
151
|
onChange: events.composeEventHandlers([onChange, handleChange])
|
|
@@ -159,9 +153,9 @@ const Select = /*#__PURE__*/React.forwardRef(({
|
|
|
159
153
|
ref: ref
|
|
160
154
|
}), children), /*#__PURE__*/React.createElement(iconsReact.ChevronDown, {
|
|
161
155
|
className: `${prefix}--select__arrow`
|
|
162
|
-
}), invalid && /*#__PURE__*/React.createElement(iconsReact.WarningFilled, {
|
|
156
|
+
}), normalizedProps.invalid && /*#__PURE__*/React.createElement(iconsReact.WarningFilled, {
|
|
163
157
|
className: `${prefix}--select__invalid-icon`
|
|
164
|
-
}), !invalid && warn && /*#__PURE__*/React.createElement(iconsReact.WarningAltFilled, {
|
|
158
|
+
}), !normalizedProps.invalid && normalizedProps.warn && /*#__PURE__*/React.createElement(iconsReact.WarningAltFilled, {
|
|
165
159
|
className: `${prefix}--select__invalid-icon ${prefix}--select__invalid-icon--warning`
|
|
166
160
|
}));
|
|
167
161
|
})();
|
|
@@ -177,10 +171,10 @@ const Select = /*#__PURE__*/React.forwardRef(({
|
|
|
177
171
|
className: `${prefix}--select-input--inline__wrapper`
|
|
178
172
|
}, /*#__PURE__*/React.createElement("div", {
|
|
179
173
|
className: `${prefix}--select-input__wrapper`,
|
|
180
|
-
"data-invalid": invalid || null
|
|
174
|
+
"data-invalid": normalizedProps.invalid || null
|
|
181
175
|
}, input), error), !inline && /*#__PURE__*/React.createElement("div", {
|
|
182
176
|
className: `${prefix}--select-input__wrapper`,
|
|
183
|
-
"data-invalid": invalid || null,
|
|
177
|
+
"data-invalid": normalizedProps.invalid || null,
|
|
184
178
|
onFocus: handleFocus,
|
|
185
179
|
onBlur: handleFocus
|
|
186
180
|
}, input, slug ? normalizedDecorator : decorator ? /*#__PURE__*/React.createElement("div", {
|
|
@@ -888,7 +888,7 @@ const Tab = /*#__PURE__*/React.forwardRef(({
|
|
|
888
888
|
})
|
|
889
889
|
}, /*#__PURE__*/React.createElement("button", {
|
|
890
890
|
type: "button",
|
|
891
|
-
tabIndex:
|
|
891
|
+
tabIndex: -1,
|
|
892
892
|
"aria-disabled": disabled,
|
|
893
893
|
"aria-hidden": selectedIndex === index$1 && dismissable ? 'false' : 'true',
|
|
894
894
|
disabled: disabled,
|
|
@@ -206,8 +206,10 @@ const TextArea = frFn((props, forwardRef) => {
|
|
|
206
206
|
}, labelText) : null;
|
|
207
207
|
const counter = enableCounter && maxCount && (counterMode === 'character' || counterMode === 'word') ? /*#__PURE__*/React.createElement(Text.Text, {
|
|
208
208
|
as: "div",
|
|
209
|
-
className: counterClasses
|
|
209
|
+
className: counterClasses,
|
|
210
|
+
"aria-hidden": "true"
|
|
210
211
|
}, `${textCount}/${maxCount}`) : null;
|
|
212
|
+
const counterDescriptionId = enableCounter && maxCount ? `${id}-counter-desc` : undefined;
|
|
211
213
|
const helperId = !helperText ? undefined : `text-area-helper-text-${textAreaInstanceId}`;
|
|
212
214
|
const helper = helperText ? /*#__PURE__*/React.createElement(Text.Text, {
|
|
213
215
|
as: "div",
|
|
@@ -238,8 +240,13 @@ const TextArea = frFn((props, forwardRef) => {
|
|
|
238
240
|
let ariaDescribedBy;
|
|
239
241
|
if (invalid) {
|
|
240
242
|
ariaDescribedBy = errorId;
|
|
241
|
-
} else if (
|
|
242
|
-
ariaDescribedBy =
|
|
243
|
+
} else if (warn && !isFluid) {
|
|
244
|
+
ariaDescribedBy = warnId;
|
|
245
|
+
} else {
|
|
246
|
+
const ids = [];
|
|
247
|
+
if (!isFluid && helperText && helperId) ids.push(helperId);
|
|
248
|
+
if (counterDescriptionId) ids.push(counterDescriptionId);
|
|
249
|
+
ariaDescribedBy = ids.length > 0 ? ids.join(' ') : undefined;
|
|
243
250
|
}
|
|
244
251
|
if (enableCounter) {
|
|
245
252
|
// handle different counter mode
|
|
@@ -296,7 +303,10 @@ const TextArea = frFn((props, forwardRef) => {
|
|
|
296
303
|
className: formItemClasses
|
|
297
304
|
}, /*#__PURE__*/React.createElement("div", {
|
|
298
305
|
className: `${prefix}--text-area__label-wrapper`
|
|
299
|
-
}, label, counter), /*#__PURE__*/React.createElement("
|
|
306
|
+
}, label, counter), enableCounter && maxCount && /*#__PURE__*/React.createElement("span", {
|
|
307
|
+
id: counterDescriptionId,
|
|
308
|
+
className: `${prefix}--visually-hidden`
|
|
309
|
+
}, counterMode === 'word' ? `Word limit ${maxCount}` : `Character limit ${maxCount}`), /*#__PURE__*/React.createElement("div", {
|
|
300
310
|
ref: wrapperRef,
|
|
301
311
|
className: textAreaWrapperClasses,
|
|
302
312
|
"data-invalid": invalid || null
|
|
@@ -139,6 +139,7 @@ const PasswordInput = /*#__PURE__*/React.forwardRef(({
|
|
|
139
139
|
[`${prefix}--tooltip--${tooltipPosition}`]: tooltipPosition,
|
|
140
140
|
[`${prefix}--tooltip--align-${tooltipAlignment}`]: tooltipAlignment
|
|
141
141
|
});
|
|
142
|
+
const tooltipClasses = cx(`${prefix}--toggle-password-tooltip`, `${prefix}--icon-tooltip`);
|
|
142
143
|
let align = undefined;
|
|
143
144
|
if (tooltipPosition === 'top' || tooltipPosition === 'bottom') {
|
|
144
145
|
if (tooltipAlignment === 'center') {
|
|
@@ -176,12 +177,12 @@ const PasswordInput = /*#__PURE__*/React.forwardRef(({
|
|
|
176
177
|
className: `${prefix}--text-input__divider`
|
|
177
178
|
}), /*#__PURE__*/React.createElement(Tooltip.Tooltip, {
|
|
178
179
|
align: align,
|
|
179
|
-
className:
|
|
180
|
+
className: tooltipClasses,
|
|
180
181
|
label: passwordIsVisible ? hidePasswordLabel : showPasswordLabel
|
|
181
182
|
}, /*#__PURE__*/React.createElement("button", {
|
|
182
183
|
type: "button",
|
|
183
184
|
className: passwordVisibilityToggleClasses,
|
|
184
|
-
disabled: disabled
|
|
185
|
+
disabled: disabled,
|
|
185
186
|
onClick: handleTogglePasswordVisibility
|
|
186
187
|
}, passwordVisibilityIcon)));
|
|
187
188
|
React.useEffect(() => {
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
'use strict';
|
|
9
9
|
|
|
10
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
11
|
+
|
|
10
12
|
var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
|
|
11
13
|
var cx = require('classnames');
|
|
12
14
|
var PropTypes = require('prop-types');
|
|
@@ -289,3 +291,4 @@ exports.ToggletipActions = ToggletipActions;
|
|
|
289
291
|
exports.ToggletipButton = ToggletipButton;
|
|
290
292
|
exports.ToggletipContent = ToggletipContent;
|
|
291
293
|
exports.ToggletipLabel = ToggletipLabel;
|
|
294
|
+
exports.default = Toggletip;
|
|
@@ -4,6 +4,7 @@
|
|
|
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 { DefinitionTooltip } from './DefinitionTooltip';
|
|
7
|
+
import { DefinitionTooltip, type DefinitionTooltipProps } from './DefinitionTooltip';
|
|
8
8
|
import { Tooltip, type TooltipProps } from './Tooltip';
|
|
9
|
-
export { DefinitionTooltip, Tooltip, type TooltipProps };
|
|
9
|
+
export { DefinitionTooltip, Tooltip, type DefinitionTooltipProps, type TooltipProps, };
|
|
10
|
+
export default Tooltip;
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
var React = require('react');
|
|
11
11
|
var FeatureFlags = require('@carbon/feature-flags');
|
|
12
12
|
var ReactDOM = require('react-dom');
|
|
13
|
-
var window = require('window-or-global');
|
|
14
13
|
var keys = require('./keyboard/keys.js');
|
|
15
14
|
var match = require('./keyboard/match.js');
|
|
16
15
|
var navigation = require('./keyboard/navigation.js');
|
|
@@ -130,14 +129,16 @@ const FloatingMenu = ({
|
|
|
130
129
|
const menuSize = menuBody.getBoundingClientRect();
|
|
131
130
|
const refPosition = triggerEl ? triggerEl.getBoundingClientRect() : undefined;
|
|
132
131
|
const offsetValue = typeof menuOffset === 'function' ? menuOffset(menuBody, menuDirection, triggerEl, flipped) : menuOffset;
|
|
132
|
+
const scrollX = globalThis.scrollX ?? 0;
|
|
133
|
+
const scrollY = globalThis.scrollY ?? 0;
|
|
133
134
|
if (updateOrientation) {
|
|
134
135
|
updateOrientation({
|
|
135
136
|
menuSize,
|
|
136
137
|
refPosition,
|
|
137
138
|
direction: menuDirection,
|
|
138
139
|
offset: offsetValue,
|
|
139
|
-
scrollX
|
|
140
|
-
scrollY
|
|
140
|
+
scrollX,
|
|
141
|
+
scrollY,
|
|
141
142
|
container: {
|
|
142
143
|
rect: target().getBoundingClientRect(),
|
|
143
144
|
position: getComputedStyle(target()).position
|
|
@@ -157,8 +158,8 @@ const FloatingMenu = ({
|
|
|
157
158
|
},
|
|
158
159
|
offset: offsetValue,
|
|
159
160
|
direction: menuDirection,
|
|
160
|
-
scrollX
|
|
161
|
-
scrollY
|
|
161
|
+
scrollX,
|
|
162
|
+
scrollY,
|
|
162
163
|
container: {
|
|
163
164
|
rect: target().getBoundingClientRect(),
|
|
164
165
|
position: getComputedStyle(target()).position
|
|
@@ -7,9 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
'use strict';
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
// mdn resize function
|
|
10
|
+
// Use `globalThis` for universal access to global object (browser, workers, Node).
|
|
11
|
+
const win = globalThis;
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* A callback function to be executed on `resize`.
|
|
@@ -27,7 +26,7 @@ const OptimizedResize = (() => {
|
|
|
27
26
|
const handleResize = () => {
|
|
28
27
|
if (!running) {
|
|
29
28
|
running = true;
|
|
30
|
-
|
|
29
|
+
win.requestAnimationFrame(runCallbacks);
|
|
31
30
|
}
|
|
32
31
|
};
|
|
33
32
|
const addCallback = callback => {
|
|
@@ -40,7 +39,7 @@ const OptimizedResize = (() => {
|
|
|
40
39
|
/** Adds a callback function to be executed on window `resize`. */
|
|
41
40
|
add: callback => {
|
|
42
41
|
if (!callbacks.length) {
|
|
43
|
-
|
|
42
|
+
win.addEventListener('resize', handleResize);
|
|
44
43
|
}
|
|
45
44
|
addCallback(callback);
|
|
46
45
|
return {
|
package/lib/tools/events.d.ts
CHANGED
|
@@ -14,4 +14,4 @@ import type { SyntheticEvent } from 'react';
|
|
|
14
14
|
* @param handlers - An array of event handler functions.
|
|
15
15
|
* @returns A composite event handler.
|
|
16
16
|
*/
|
|
17
|
-
export declare const composeEventHandlers: <E extends SyntheticEvent = SyntheticEvent
|
|
17
|
+
export declare const composeEventHandlers: <E extends SyntheticEvent = SyntheticEvent<Element, Event>>(handlers: (((event: E, ...args: any[]) => void) | undefined)[]) => (event: E, ...args: any[]) => void;
|
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.
|
|
4
|
+
"version": "1.99.0-rc.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -53,10 +53,10 @@
|
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@babel/runtime": "^7.27.3",
|
|
55
55
|
"@carbon/feature-flags": ">=0.32.0",
|
|
56
|
-
"@carbon/icons-react": "^11.
|
|
57
|
-
"@carbon/layout": "^11.
|
|
58
|
-
"@carbon/styles": "^1.
|
|
59
|
-
"@carbon/utilities": "^0.
|
|
56
|
+
"@carbon/icons-react": "^11.73.0-rc.0",
|
|
57
|
+
"@carbon/layout": "^11.46.0-rc.0",
|
|
58
|
+
"@carbon/styles": "^1.98.0-rc.0",
|
|
59
|
+
"@carbon/utilities": "^0.14.0",
|
|
60
60
|
"@floating-ui/react": "^0.27.4",
|
|
61
61
|
"@ibm/telemetry-js": "^1.5.0",
|
|
62
62
|
"classnames": "2.5.1",
|
|
@@ -67,8 +67,7 @@
|
|
|
67
67
|
"invariant": "^2.2.3",
|
|
68
68
|
"prop-types": "^15.8.1",
|
|
69
69
|
"react-fast-compare": "^3.2.2",
|
|
70
|
-
"tabbable": "^6.2.0"
|
|
71
|
-
"window-or-global": "^1.0.1"
|
|
70
|
+
"tabbable": "^6.2.0"
|
|
72
71
|
},
|
|
73
72
|
"devDependencies": {
|
|
74
73
|
"@babel/core": "^7.27.3",
|
|
@@ -79,39 +78,34 @@
|
|
|
79
78
|
"@babel/preset-env": "^7.27.2",
|
|
80
79
|
"@babel/preset-react": "^7.27.1",
|
|
81
80
|
"@babel/preset-typescript": "^7.27.1",
|
|
82
|
-
"@carbon/test-utils": "^10.
|
|
83
|
-
"@carbon/themes": "^11.
|
|
81
|
+
"@carbon/test-utils": "^10.39.0-rc.0",
|
|
82
|
+
"@carbon/themes": "^11.66.0-rc.0",
|
|
84
83
|
"@figma/code-connect": "^1.3.5",
|
|
85
84
|
"@rollup/plugin-babel": "^6.0.0",
|
|
86
85
|
"@rollup/plugin-commonjs": "^28.0.3",
|
|
87
86
|
"@rollup/plugin-node-resolve": "^16.0.1",
|
|
88
87
|
"@rollup/plugin-typescript": "^12.1.4",
|
|
89
88
|
"@stackblitz/sdk": "^1.11.0",
|
|
90
|
-
"@storybook/addon-
|
|
91
|
-
"@storybook/addon-
|
|
92
|
-
"@storybook/addon-
|
|
93
|
-
"@storybook/
|
|
89
|
+
"@storybook/addon-a11y": "^9.1.8",
|
|
90
|
+
"@storybook/addon-docs": "^9.1.8",
|
|
91
|
+
"@storybook/addon-links": "^9.1.8",
|
|
92
|
+
"@storybook/builder-vite": "^9.1.8",
|
|
93
|
+
"@storybook/react-vite": "^9.1.8",
|
|
94
94
|
"@types/react-is": "^19.0.0",
|
|
95
95
|
"@types/use-sync-external-store": "^1",
|
|
96
|
-
"
|
|
97
|
-
"babel-loader": "^10.0.0",
|
|
96
|
+
"@vitejs/plugin-react": "^5.0.0",
|
|
98
97
|
"babel-plugin-dev-expression": "^0.2.3",
|
|
99
98
|
"babel-preset-carbon": "^0.8.0",
|
|
100
99
|
"browserify-zlib": "^0.2.0",
|
|
101
100
|
"browserslist-config-carbon": "^11.2.0",
|
|
102
101
|
"clipboardy": "^4.0.0",
|
|
103
|
-
"css-loader": "^7.0.0",
|
|
104
102
|
"enquirer": "^2.3.6",
|
|
105
103
|
"fast-glob": "^3.3.3",
|
|
106
104
|
"fs-extra": "^11.0.0",
|
|
107
|
-
"html-webpack-plugin": "^5.5.0",
|
|
108
|
-
"mini-css-extract-plugin": "^2.4.5",
|
|
109
|
-
"postcss": "^8.5.6",
|
|
110
|
-
"postcss-loader": "^8.1.1",
|
|
111
105
|
"process": "^0.11.10",
|
|
112
106
|
"prop-types": "^15.8.1",
|
|
113
|
-
"react": "^19.
|
|
114
|
-
"react-dom": "^19.
|
|
107
|
+
"react": "^19.2.3",
|
|
108
|
+
"react-dom": "^19.2.3",
|
|
115
109
|
"react-is": "^16.13.1 || ^17.0.2 || ^18.3.1 || ^19.0.0",
|
|
116
110
|
"remark-gfm": "^4.0.0",
|
|
117
111
|
"rimraf": "^6.0.1",
|
|
@@ -119,14 +113,12 @@
|
|
|
119
113
|
"rollup-plugin-preserve-directives": "^0.4.0",
|
|
120
114
|
"rollup-plugin-strip-banner": "^3.0.0",
|
|
121
115
|
"sass": "^1.93.2",
|
|
122
|
-
"
|
|
123
|
-
"storybook": "
|
|
116
|
+
"storybook": "^9.1.8",
|
|
117
|
+
"storybook-addon-accessibility-checker": ">=9.2.0-rc.3",
|
|
124
118
|
"stream-browserify": "^3.0.0",
|
|
125
|
-
"
|
|
126
|
-
"typescript-config-carbon": "^0.8.0",
|
|
119
|
+
"typescript-config-carbon": "^0.9.0",
|
|
127
120
|
"use-sync-external-store": "^1.5.0",
|
|
128
|
-
"
|
|
129
|
-
"webpack-dev-server": "^5.0.0"
|
|
121
|
+
"vite": "^7.1.2"
|
|
130
122
|
},
|
|
131
123
|
"sideEffects": [
|
|
132
124
|
"es/index.js",
|
|
@@ -139,5 +131,5 @@
|
|
|
139
131
|
"**/*.scss",
|
|
140
132
|
"**/*.css"
|
|
141
133
|
],
|
|
142
|
-
"gitHead": "
|
|
134
|
+
"gitHead": "8263c72357fc43c00e66c9030698f759ef7977ce"
|
|
143
135
|
}
|
package/telemetry.yml
CHANGED
|
@@ -138,6 +138,7 @@ collect:
|
|
|
138
138
|
- lowContrast
|
|
139
139
|
- max
|
|
140
140
|
- maxCount
|
|
141
|
+
- maxFileSize
|
|
141
142
|
- menuAlignment
|
|
142
143
|
- menuOffset
|
|
143
144
|
- menuOffsetFlip
|
|
@@ -271,6 +272,7 @@ collect:
|
|
|
271
272
|
# AspectRatio
|
|
272
273
|
- ratio
|
|
273
274
|
# ButtonSet
|
|
275
|
+
- fluid
|
|
274
276
|
- stacked
|
|
275
277
|
# ChatButton
|
|
276
278
|
- isQuickAction
|
|
@@ -463,6 +465,7 @@ collect:
|
|
|
463
465
|
- notificationType
|
|
464
466
|
# NumberInput
|
|
465
467
|
- hideSteppers
|
|
468
|
+
- onStepperBlur
|
|
466
469
|
- stepStartValue
|
|
467
470
|
- validate
|
|
468
471
|
# OrderedList
|