@carbon/react 1.106.0 → 1.107.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 +1017 -982
- package/es/components/Accordion/AccordionItem.d.ts +2 -2
- package/es/components/Button/Button.d.ts +2 -2
- package/es/components/Button/Button.js +1 -1
- package/es/components/Checkbox/Checkbox.js +2 -1
- package/es/components/CheckboxGroup/CheckboxGroup.js +2 -1
- package/es/components/ComboBox/ComboBox.d.ts +1 -1
- package/es/components/ComboBox/ComboBox.js +1 -1
- package/es/components/ComboButton/index.js +2 -2
- package/es/components/ContentSwitcher/ContentSwitcher.d.ts +1 -1
- package/es/components/ContentSwitcher/ContentSwitcher.js +24 -15
- package/es/components/DataTable/DataTable.d.ts +3 -3
- package/es/components/DataTable/TableActionList.d.ts +1 -1
- package/es/components/DataTable/TableHead.d.ts +1 -1
- package/es/components/DataTable/TableSlugRow.d.ts +2 -2
- package/es/components/DataTable/TableSlugRow.js +8 -11
- package/es/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/es/components/DataTable/TableToolbarSearch.d.ts +5 -1
- package/es/components/DatePicker/DatePicker.js +15 -13
- package/es/components/DatePicker/plugins/fixEventsPlugin.js +2 -3
- package/es/components/Dropdown/Dropdown.d.ts +1 -1
- package/es/components/FluidTimePicker/FluidTimePicker.d.ts +1 -1
- package/es/components/FluidTimePicker/FluidTimePicker.js +6 -4
- package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.d.ts +4 -0
- package/es/components/FluidTimePickerSelect/FluidTimePickerSelect.js +2 -1
- package/es/components/FluidTimePickerSelect/index.js +18 -0
- package/es/components/Grid/CSSGrid.js +11 -6
- package/es/components/Grid/Column.d.ts +2 -2
- package/es/components/Grid/ColumnHang.d.ts +3 -3
- package/es/components/Grid/ColumnHang.js +1 -1
- package/es/components/Grid/FlexGrid.js +5 -3
- package/es/components/Grid/Grid.js +2 -1
- package/es/components/Grid/GridTypes.d.ts +5 -0
- package/es/components/Grid/Row.d.ts +3 -3
- package/es/components/Grid/Row.js +1 -1
- package/es/components/Menu/Menu.js +1 -1
- package/es/components/Menu/MenuItem.js +4 -0
- package/es/components/Modal/Modal.d.ts +1 -1
- package/es/components/Modal/Modal.js +20 -6
- package/es/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
- package/es/components/MultiSelect/FilterableMultiSelect.js +3 -2
- package/es/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/es/components/NumberInput/NumberInput.js +4 -2
- package/es/components/OverflowMenu/OverflowMenu.js +11 -12
- package/es/components/Pagination/Pagination.d.ts +1 -1
- package/es/components/Pagination/Pagination.js +2 -0
- package/es/components/Popover/index.js +14 -1
- package/es/components/RadioButtonGroup/RadioButtonGroup.d.ts +1 -1
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +8 -6
- package/es/components/Search/Search.Skeleton.d.ts +12 -3
- package/es/components/Search/Search.Skeleton.js +16 -8
- package/es/components/Search/Search.d.ts +1 -1
- package/es/components/Search/Search.js +4 -4
- package/es/components/Select/Select.d.ts +1 -1
- package/es/components/Select/Select.js +7 -6
- package/es/components/Slider/Slider.js +58 -76
- package/es/components/Tabs/Tabs.js +2 -2
- package/es/components/TextArea/TextArea.js +5 -2
- package/es/components/TextInput/ControlledPasswordInput.js +2 -1
- package/es/components/TextInput/PasswordInput.d.ts +2 -2
- package/es/components/TextInput/PasswordInput.js +33 -21
- package/es/components/TextInput/TextInput.Skeleton.d.ts +10 -2
- package/es/components/TextInput/TextInput.Skeleton.js +10 -4
- package/es/components/TextInput/TextInput.d.ts +1 -1
- package/es/components/TextInput/TextInput.js +39 -30
- package/es/components/TextInput/util.d.ts +1 -0
- package/es/components/TextInput/util.js +1 -1
- package/es/components/Theme/index.d.ts +2 -2
- package/es/components/Theme/index.js +3 -3
- package/es/components/TimePicker/TimePicker.js +5 -2
- package/es/components/TreeView/TreeNode.js +2 -2
- package/es/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/es/components/UIShell/HeaderMenu.d.ts +1 -1
- package/es/components/UIShell/HeaderMenu.js +5 -3
- package/es/index.js +2 -2
- package/es/internal/FloatingMenu.d.ts +5 -1
- package/es/internal/hasHelperText.d.ts +8 -0
- package/es/internal/hasHelperText.js +11 -0
- package/es/tools/wrapComponent.d.ts +3 -3
- package/es/tools/wrapComponent.js +1 -1
- package/lib/components/Accordion/AccordionItem.d.ts +2 -2
- package/lib/components/Button/Button.d.ts +2 -2
- package/lib/components/Button/Button.js +1 -1
- package/lib/components/Checkbox/Checkbox.js +2 -1
- package/lib/components/CheckboxGroup/CheckboxGroup.js +2 -1
- package/lib/components/ComboBox/ComboBox.d.ts +1 -1
- package/lib/components/ComboBox/ComboBox.js +1 -1
- package/lib/components/ComboButton/index.js +2 -2
- package/lib/components/ContentSwitcher/ContentSwitcher.d.ts +1 -1
- package/lib/components/ContentSwitcher/ContentSwitcher.js +22 -13
- package/lib/components/DataTable/DataTable.d.ts +3 -3
- package/lib/components/DataTable/TableActionList.d.ts +1 -1
- package/lib/components/DataTable/TableHead.d.ts +1 -1
- package/lib/components/DataTable/TableSlugRow.d.ts +2 -2
- package/lib/components/DataTable/TableSlugRow.js +7 -10
- package/lib/components/DataTable/TableToolbarContent.d.ts +1 -1
- package/lib/components/DataTable/TableToolbarSearch.d.ts +5 -1
- package/lib/components/DatePicker/DatePicker.js +15 -13
- package/lib/components/DatePicker/plugins/fixEventsPlugin.js +1 -2
- package/lib/components/Dropdown/Dropdown.d.ts +1 -1
- package/lib/components/FluidTimePicker/FluidTimePicker.d.ts +1 -1
- package/lib/components/FluidTimePicker/FluidTimePicker.js +5 -3
- package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.d.ts +4 -0
- package/lib/components/FluidTimePickerSelect/FluidTimePickerSelect.js +2 -1
- package/lib/components/FluidTimePickerSelect/index.js +17 -0
- package/lib/components/Grid/CSSGrid.js +11 -6
- package/lib/components/Grid/Column.d.ts +2 -2
- package/lib/components/Grid/ColumnHang.d.ts +3 -3
- package/lib/components/Grid/ColumnHang.js +1 -1
- package/lib/components/Grid/FlexGrid.js +5 -3
- package/lib/components/Grid/Grid.js +2 -1
- package/lib/components/Grid/GridTypes.d.ts +5 -0
- package/lib/components/Grid/Row.d.ts +3 -3
- package/lib/components/Grid/Row.js +1 -1
- package/lib/components/Menu/Menu.js +1 -1
- package/lib/components/Menu/MenuItem.js +4 -0
- package/lib/components/Modal/Modal.d.ts +1 -1
- package/lib/components/Modal/Modal.js +19 -5
- package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
- package/lib/components/MultiSelect/FilterableMultiSelect.js +3 -2
- package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/lib/components/NumberInput/NumberInput.js +4 -2
- package/lib/components/OverflowMenu/OverflowMenu.js +10 -11
- package/lib/components/Pagination/Pagination.d.ts +1 -1
- package/lib/components/Pagination/Pagination.js +2 -0
- package/lib/components/Popover/index.js +14 -1
- package/lib/components/RadioButtonGroup/RadioButtonGroup.d.ts +1 -1
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +7 -5
- package/lib/components/Search/Search.Skeleton.d.ts +12 -3
- package/lib/components/Search/Search.Skeleton.js +15 -7
- package/lib/components/Search/Search.d.ts +1 -1
- package/lib/components/Search/Search.js +4 -4
- package/lib/components/Select/Select.d.ts +1 -1
- package/lib/components/Select/Select.js +7 -6
- package/lib/components/Slider/Slider.js +58 -76
- package/lib/components/Tabs/Tabs.js +2 -2
- package/lib/components/TextArea/TextArea.js +5 -2
- package/lib/components/TextInput/ControlledPasswordInput.js +2 -1
- package/lib/components/TextInput/PasswordInput.d.ts +2 -2
- package/lib/components/TextInput/PasswordInput.js +33 -21
- package/lib/components/TextInput/TextInput.Skeleton.d.ts +10 -2
- package/lib/components/TextInput/TextInput.Skeleton.js +10 -4
- package/lib/components/TextInput/TextInput.d.ts +1 -1
- package/lib/components/TextInput/TextInput.js +39 -30
- package/lib/components/TextInput/util.d.ts +1 -0
- package/lib/components/TextInput/util.js +1 -1
- package/lib/components/Theme/index.d.ts +2 -2
- package/lib/components/Theme/index.js +2 -2
- package/lib/components/TimePicker/TimePicker.js +5 -2
- package/lib/components/TreeView/TreeNode.js +1 -1
- package/lib/components/UIShell/HeaderGlobalBar.d.ts +1 -1
- package/lib/components/UIShell/HeaderMenu.d.ts +1 -1
- package/lib/components/UIShell/HeaderMenu.js +5 -3
- package/lib/index.js +2 -2
- package/lib/internal/FloatingMenu.d.ts +5 -1
- package/lib/internal/hasHelperText.d.ts +8 -0
- package/lib/internal/hasHelperText.js +11 -0
- package/lib/tools/wrapComponent.d.ts +3 -3
- package/lib/tools/wrapComponent.js +1 -1
- package/package.json +11 -11
- package/telemetry.yml +1 -0
|
@@ -13,9 +13,11 @@ const require_setupGetInstanceId = require("../../tools/setupGetInstanceId.js");
|
|
|
13
13
|
const require_noopFn = require("../../internal/noopFn.js");
|
|
14
14
|
const require_deprecate = require("../../prop-types/deprecate.js");
|
|
15
15
|
const require_deprecateValuesWithin = require("../../prop-types/deprecateValuesWithin.js");
|
|
16
|
+
const require_utils = require("../../internal/utils.js");
|
|
16
17
|
const require_mapPopoverAlign = require("../../tools/mapPopoverAlign.js");
|
|
17
18
|
const require_index = require("../IconButton/index.js");
|
|
18
19
|
const require_mergeRefs = require("../../tools/mergeRefs.js");
|
|
20
|
+
const require_OverflowMenuItem = require("../OverflowMenuItem/OverflowMenuItem.js");
|
|
19
21
|
const require_FloatingMenu = require("../../internal/FloatingMenu.js");
|
|
20
22
|
const require_useOutsideClick = require("../../internal/useOutsideClick.js");
|
|
21
23
|
let classnames = require("classnames");
|
|
@@ -227,17 +229,14 @@ const OverflowMenu = (0, react.forwardRef)(({ align, ["aria-label"]: ariaLabel =
|
|
|
227
229
|
});
|
|
228
230
|
const overflowMenuIconClasses = (0, classnames.default)(`${prefix}--overflow-menu__icon`, iconClass);
|
|
229
231
|
const childrenWithProps = react.Children.toArray(children).map((child, index) => {
|
|
230
|
-
if ((0, react.
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
index
|
|
239
|
-
});
|
|
240
|
-
}
|
|
232
|
+
if (require_utils.isComponentElement(child, require_OverflowMenuItem.default)) return (0, react.cloneElement)(child, {
|
|
233
|
+
closeMenu: child.props.closeMenu || closeMenuAndFocus,
|
|
234
|
+
handleOverflowMenuItemFocus,
|
|
235
|
+
ref: (el) => {
|
|
236
|
+
menuItemRefs.current[index] = el;
|
|
237
|
+
},
|
|
238
|
+
index
|
|
239
|
+
});
|
|
241
240
|
return null;
|
|
242
241
|
});
|
|
243
242
|
const wrappedMenuBody = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_FloatingMenu.FloatingMenu, {
|
|
@@ -75,6 +75,7 @@ const Pagination = react.default.forwardRef(({ backwardText = "Previous page", c
|
|
|
75
75
|
const className = (0, classnames.default)({
|
|
76
76
|
[`${prefix}--pagination`]: true,
|
|
77
77
|
[`${prefix}--pagination--${size}`]: size,
|
|
78
|
+
[`${prefix}--layout--size-${size}`]: size,
|
|
78
79
|
[customClassName]: !!customClassName
|
|
79
80
|
});
|
|
80
81
|
const totalPages = totalItems ? Math.max(Math.ceil(totalItems / pageSize), 1) : 1;
|
|
@@ -292,6 +293,7 @@ Pagination.propTypes = {
|
|
|
292
293
|
pageText: prop_types.default.func,
|
|
293
294
|
pagesUnknown: prop_types.default.bool,
|
|
294
295
|
size: prop_types.default.oneOf([
|
|
296
|
+
"xs",
|
|
295
297
|
"sm",
|
|
296
298
|
"md",
|
|
297
299
|
"lg"
|
|
@@ -41,6 +41,18 @@ const Popover = react.default.forwardRef(function PopoverRenderFunction({ isTabT
|
|
|
41
41
|
const popover = (0, react.useRef)(null);
|
|
42
42
|
const enableFloatingStyles = require_index.useFeatureFlag("enable-v12-dynamic-floating-styles") || autoAlign;
|
|
43
43
|
const lastClickWasInsidePopoverContent = (0, react.useRef)(false);
|
|
44
|
+
const isTargetInDatePickerInsidePopover = (target) => {
|
|
45
|
+
if (!popover.current) return false;
|
|
46
|
+
const calendar = target instanceof Element && target.closest(".flatpickr-calendar");
|
|
47
|
+
if (!calendar) return false;
|
|
48
|
+
const inputs = popover.current.querySelectorAll("input");
|
|
49
|
+
for (const input of inputs) {
|
|
50
|
+
if (!("_flatpickr" in input)) continue;
|
|
51
|
+
const fp = input._flatpickr;
|
|
52
|
+
if (fp && typeof fp === "object" && "calendarContainer" in fp && fp.calendarContainer === calendar) return true;
|
|
53
|
+
}
|
|
54
|
+
return false;
|
|
55
|
+
};
|
|
44
56
|
let align = require_mapPopoverAlign.mapPopoverAlign(initialAlign);
|
|
45
57
|
require_useEvent.useEvent(popover, "mousedown", (event) => {
|
|
46
58
|
const target = event.target;
|
|
@@ -58,13 +70,14 @@ const Popover = react.default.forwardRef(function PopoverRenderFunction({ isTabT
|
|
|
58
70
|
}
|
|
59
71
|
onRequestClose?.();
|
|
60
72
|
} else if (relatedTarget && !popover.current?.contains(relatedTarget)) {
|
|
73
|
+
if (isTargetInDatePickerInsidePopover(relatedTarget)) return;
|
|
61
74
|
const isOutsideFloating = enableFloatingStyles && refs.floating.current ? !refs.floating.current.contains(relatedTarget) : true;
|
|
62
75
|
const isFocusableWrapper = relatedTarget && popover.current && relatedTarget.contains(popover.current);
|
|
63
76
|
if (isOutsideFloating && !isFocusableWrapper) onRequestClose?.();
|
|
64
77
|
}
|
|
65
78
|
});
|
|
66
79
|
require_useEvent.useWindowEvent("click", ({ target }) => {
|
|
67
|
-
if (open && target instanceof Node && !popover.current?.contains(target)) onRequestClose?.();
|
|
80
|
+
if (open && target instanceof Node && !popover.current?.contains(target) && !isTargetInDatePickerInsidePopover(target)) onRequestClose?.();
|
|
68
81
|
});
|
|
69
82
|
const popoverDimensions = (0, react.useRef)({
|
|
70
83
|
offset: 10,
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import React, { type ReactNode } from 'react';
|
|
8
|
-
import type
|
|
8
|
+
import { type RadioButtonProps } from '../RadioButton';
|
|
9
9
|
export declare const RadioButtonGroupContext: React.Context<null>;
|
|
10
10
|
type ExcludedAttributes = 'onChange';
|
|
11
11
|
export interface RadioButtonGroupProps extends Omit<React.InputHTMLAttributes<HTMLFieldSetElement>, ExcludedAttributes> {
|
|
@@ -10,8 +10,10 @@ const require_usePrefix = require("../../internal/usePrefix.js");
|
|
|
10
10
|
const require_useId = require("../../internal/useId.js");
|
|
11
11
|
const require_deprecate = require("../../prop-types/deprecate.js");
|
|
12
12
|
const require_utils = require("../../internal/utils.js");
|
|
13
|
+
const require_hasHelperText = require("../../internal/hasHelperText.js");
|
|
13
14
|
const require_index = require("../AILabel/index.js");
|
|
14
15
|
const require_mergeRefs = require("../../tools/mergeRefs.js");
|
|
16
|
+
const require_index$1 = require("../RadioButton/index.js");
|
|
15
17
|
const require_createTextComponent = require("../Text/createTextComponent.js");
|
|
16
18
|
let classnames = require("classnames");
|
|
17
19
|
classnames = require_runtime.__toESM(classnames);
|
|
@@ -35,8 +37,8 @@ const RadioButtonGroup = react.default.forwardRef((props, ref) => {
|
|
|
35
37
|
}
|
|
36
38
|
}, [valueSelected]);
|
|
37
39
|
function getRadioButtons() {
|
|
38
|
-
return react.
|
|
39
|
-
if (!radioButton) return;
|
|
40
|
+
return react.Children.map(children, (radioButton) => {
|
|
41
|
+
if (!require_utils.isComponentElement(radioButton, require_index$1.default)) return radioButton;
|
|
40
42
|
const newProps = {
|
|
41
43
|
name,
|
|
42
44
|
key: radioButton.props.value,
|
|
@@ -46,7 +48,7 @@ const RadioButtonGroup = react.default.forwardRef((props, ref) => {
|
|
|
46
48
|
required
|
|
47
49
|
};
|
|
48
50
|
if (!selected && radioButton.props.checked) newProps.checked = true;
|
|
49
|
-
return react.
|
|
51
|
+
return (0, react.cloneElement)(radioButton, newProps);
|
|
50
52
|
});
|
|
51
53
|
}
|
|
52
54
|
function handleOnChange(newSelection, value, evt) {
|
|
@@ -70,7 +72,7 @@ const RadioButtonGroup = react.default.forwardRef((props, ref) => {
|
|
|
70
72
|
[`${prefix}--radio-button-group--decorator`]: decorator
|
|
71
73
|
});
|
|
72
74
|
const helperClasses = (0, classnames.default)(`${prefix}--form__helper-text`, { [`${prefix}--form__helper-text--disabled`]: disabled });
|
|
73
|
-
const hasHelper =
|
|
75
|
+
const hasHelper = require_hasHelperText.hasHelperText(helperText);
|
|
74
76
|
const helperId = !hasHelper ? void 0 : `radio-button-group-helper-text-${radioButtonGroupInstanceId}`;
|
|
75
77
|
const helper = hasHelper && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
76
78
|
id: helperId,
|
|
@@ -91,7 +93,7 @@ const RadioButtonGroup = react.default.forwardRef((props, ref) => {
|
|
|
91
93
|
className: fieldsetClasses,
|
|
92
94
|
disabled,
|
|
93
95
|
"data-invalid": invalid ? true : void 0,
|
|
94
|
-
"aria-describedby": showHelper &&
|
|
96
|
+
"aria-describedby": showHelper && hasHelper ? helperId : void 0,
|
|
95
97
|
...rest,
|
|
96
98
|
children: [legendText && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_createTextComponent.Legend, {
|
|
97
99
|
className: `${prefix}--label`,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2016,
|
|
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.
|
|
@@ -11,22 +11,31 @@ export interface SearchSkeletonProps extends React.HTMLAttributes<HTMLDivElement
|
|
|
11
11
|
* Specify an optional className to add.
|
|
12
12
|
*/
|
|
13
13
|
className?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Specify the size of the SearchSkeleton
|
|
16
|
+
*/
|
|
17
|
+
size?: 'xs' | 'sm' | 'md' | 'lg';
|
|
14
18
|
/**
|
|
15
19
|
* Specify whether the Search should be a small variant.
|
|
20
|
+
* @deprecated Use `size` prop instead. This prop will be removed in the next major release.
|
|
16
21
|
*/
|
|
17
22
|
small?: boolean;
|
|
18
23
|
}
|
|
19
24
|
declare const SearchSkeleton: {
|
|
20
|
-
({ small, className, ...rest }: SearchSkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
({ small, size, className, ...rest }: SearchSkeletonProps): import("react/jsx-runtime").JSX.Element;
|
|
21
26
|
propTypes: {
|
|
22
27
|
/**
|
|
23
28
|
* Specify an optional className to add.
|
|
24
29
|
*/
|
|
25
30
|
className: PropTypes.Requireable<string>;
|
|
31
|
+
/**
|
|
32
|
+
* Specify the size of the SearchSkeleton
|
|
33
|
+
*/
|
|
34
|
+
size: PropTypes.Requireable<string>;
|
|
26
35
|
/**
|
|
27
36
|
* Specify whether the Search should be a small variant
|
|
28
37
|
*/
|
|
29
|
-
small:
|
|
38
|
+
small: (props: Record<string, any>, propName: string, componentName: string, ...rest: any[]) => any;
|
|
30
39
|
};
|
|
31
40
|
};
|
|
32
41
|
export default SearchSkeleton;
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
const require_runtime = require("../../_virtual/_rolldown/runtime.js");
|
|
9
9
|
const require_usePrefix = require("../../internal/usePrefix.js");
|
|
10
|
+
const require_deprecate = require("../../prop-types/deprecate.js");
|
|
10
11
|
let classnames = require("classnames");
|
|
11
12
|
classnames = require_runtime.__toESM(classnames);
|
|
12
13
|
let react = require("react");
|
|
@@ -16,26 +17,33 @@ prop_types = require_runtime.__toESM(prop_types);
|
|
|
16
17
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
17
18
|
//#region src/components/Search/Search.Skeleton.tsx
|
|
18
19
|
/**
|
|
19
|
-
* Copyright IBM Corp. 2016,
|
|
20
|
+
* Copyright IBM Corp. 2016, 2026
|
|
20
21
|
*
|
|
21
22
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
22
23
|
* LICENSE file in the root directory of this source tree.
|
|
23
24
|
*/
|
|
24
|
-
const SearchSkeleton = ({ small = false, className, ...rest }) => {
|
|
25
|
+
const SearchSkeleton = ({ small = false, size, className, ...rest }) => {
|
|
25
26
|
const prefix = require_usePrefix.usePrefix();
|
|
26
|
-
|
|
27
|
+
const normalizedSize = small ? "sm" : size;
|
|
28
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
27
29
|
className: (0, classnames.default)(className, {
|
|
28
30
|
[`${prefix}--skeleton`]: true,
|
|
29
|
-
[`${prefix}--search--
|
|
30
|
-
[`${prefix}--
|
|
31
|
+
[`${prefix}--search--sm`]: small,
|
|
32
|
+
[`${prefix}--layout--size-${normalizedSize}`]: normalizedSize
|
|
31
33
|
}),
|
|
32
34
|
...rest,
|
|
33
|
-
children:
|
|
35
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { className: `${prefix}--search-input` })
|
|
34
36
|
});
|
|
35
37
|
};
|
|
36
38
|
SearchSkeleton.propTypes = {
|
|
37
39
|
className: prop_types.default.string,
|
|
38
|
-
|
|
40
|
+
size: prop_types.default.oneOf([
|
|
41
|
+
"xs",
|
|
42
|
+
"sm",
|
|
43
|
+
"md",
|
|
44
|
+
"lg"
|
|
45
|
+
]),
|
|
46
|
+
small: require_deprecate.deprecate(prop_types.default.bool, "The `small` prop has been deprecated and will be removed in the next major release. Please use the `size` prop instead.")
|
|
39
47
|
};
|
|
40
48
|
//#endregion
|
|
41
49
|
exports.default = SearchSkeleton;
|
|
@@ -32,7 +32,7 @@ let _carbon_icons_react = require("@carbon/icons-react");
|
|
|
32
32
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
33
33
|
* LICENSE file in the root directory of this source tree.
|
|
34
34
|
*/
|
|
35
|
-
const Search = react.default.forwardRef(({ autoComplete = "off", className, closeButtonLabelText = "Clear search input", defaultValue, disabled, isExpanded = true, id, labelText, light, onChange = () => {}, onClear = () => {}, onKeyDown, onExpand, placeholder = "Search", renderIcon, role, size
|
|
35
|
+
const Search = react.default.forwardRef(({ autoComplete = "off", className, closeButtonLabelText = "Clear search input", defaultValue, disabled, isExpanded = true, id, labelText, light, onChange = () => {}, onClear = () => {}, onKeyDown, onExpand, placeholder = "Search", renderIcon, role, size, type = "search", value, ...rest }, forwardRef) => {
|
|
36
36
|
const hasPropValue = require_utils.isSearchValuePresent(value) || require_utils.isSearchValuePresent(defaultValue);
|
|
37
37
|
const prefix = require_usePrefix.usePrefix();
|
|
38
38
|
const { isFluid } = (0, react.useContext)(require_FormContext.FormContext);
|
|
@@ -45,9 +45,8 @@ const Search = react.default.forwardRef(({ autoComplete = "off", className, clos
|
|
|
45
45
|
const [hasContent, setHasContent] = (0, react.useState)(hasPropValue || false);
|
|
46
46
|
const searchClasses = (0, classnames.default)({
|
|
47
47
|
[`${prefix}--search`]: true,
|
|
48
|
-
[`${prefix}--search
|
|
49
|
-
[`${prefix}--
|
|
50
|
-
[`${prefix}--search--lg`]: size === "lg",
|
|
48
|
+
[`${prefix}--search--${size}`]: size,
|
|
49
|
+
[`${prefix}--layout--size-${size}`]: size,
|
|
51
50
|
[`${prefix}--search--light`]: light,
|
|
52
51
|
[`${prefix}--search--disabled`]: disabled,
|
|
53
52
|
[`${prefix}--search--fluid`]: isFluid
|
|
@@ -177,6 +176,7 @@ Search.propTypes = {
|
|
|
177
176
|
renderIcon: prop_types.default.oneOfType([prop_types.default.func, prop_types.default.object]),
|
|
178
177
|
role: require_deprecate.deprecate(prop_types.default.string, "The `role` prop has been deprecated since <input type=\"search\"> already provides correct semantics. It will be removed in the next major release of Carbon."),
|
|
179
178
|
size: prop_types.default.oneOf([
|
|
179
|
+
"xs",
|
|
180
180
|
"sm",
|
|
181
181
|
"md",
|
|
182
182
|
"lg"
|
|
@@ -79,7 +79,7 @@ export interface SelectProps extends Omit<ComponentPropsWithRef<'select'>, Exclu
|
|
|
79
79
|
/**
|
|
80
80
|
* Specify the size of the Select Input.
|
|
81
81
|
*/
|
|
82
|
-
size?: 'sm' | 'md' | 'lg';
|
|
82
|
+
size?: 'xs' | 'sm' | 'md' | 'lg';
|
|
83
83
|
/**
|
|
84
84
|
* @deprecated please use decorator instead.
|
|
85
85
|
* **Experimental**: Provide a `Slug` component to be rendered inside the `Dropdown` component
|
|
@@ -10,6 +10,7 @@ const require_usePrefix = require("../../internal/usePrefix.js");
|
|
|
10
10
|
const require_Text = require("../Text/Text.js");
|
|
11
11
|
const require_deprecate = require("../../prop-types/deprecate.js");
|
|
12
12
|
const require_utils = require("../../internal/utils.js");
|
|
13
|
+
const require_hasHelperText = require("../../internal/hasHelperText.js");
|
|
13
14
|
const require_useNormalizedInputProps = require("../../internal/useNormalizedInputProps.js");
|
|
14
15
|
const require_index = require("../AILabel/index.js");
|
|
15
16
|
const require_events = require("../../tools/events.js");
|
|
@@ -57,19 +58,18 @@ const Select = (0, react.forwardRef)(({ className, decorator, id, inline = false
|
|
|
57
58
|
[`${prefix}--select--fluid--invalid`]: isFluid && normalizedProps.invalid,
|
|
58
59
|
[`${prefix}--select--fluid--focus`]: isFluid && isFocused,
|
|
59
60
|
[`${prefix}--select--slug`]: slug,
|
|
60
|
-
[`${prefix}--select--decorator`]: decorator
|
|
61
|
+
[`${prefix}--select--decorator`]: decorator,
|
|
62
|
+
[`${prefix}--select--${size}`]: size,
|
|
63
|
+
[`${prefix}--layout--size-${size}`]: size
|
|
61
64
|
});
|
|
62
65
|
const labelClasses = (0, classnames.default)(`${prefix}--label`, {
|
|
63
66
|
[`${prefix}--visually-hidden`]: hideLabel,
|
|
64
67
|
[`${prefix}--label--disabled`]: normalizedProps.disabled
|
|
65
68
|
});
|
|
66
|
-
const inputClasses = (0, classnames.default)({
|
|
67
|
-
[`${prefix}--select-input`]: true,
|
|
68
|
-
[`${prefix}--select-input--${size}`]: size
|
|
69
|
-
});
|
|
69
|
+
const inputClasses = (0, classnames.default)({ [`${prefix}--select-input`]: true });
|
|
70
70
|
const error = normalizedProps.validation;
|
|
71
71
|
const helperTextClasses = (0, classnames.default)(`${prefix}--form__helper-text`, { [`${prefix}--form__helper-text--disabled`]: normalizedProps.disabled });
|
|
72
|
-
const helper =
|
|
72
|
+
const helper = require_hasHelperText.hasHelperText(helperText) ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Text.Text, {
|
|
73
73
|
as: "div",
|
|
74
74
|
id: normalizedProps.helperId,
|
|
75
75
|
className: helperTextClasses,
|
|
@@ -179,6 +179,7 @@ Select.propTypes = {
|
|
|
179
179
|
onChange: prop_types.default.func,
|
|
180
180
|
readOnly: prop_types.default.bool,
|
|
181
181
|
size: prop_types.default.oneOf([
|
|
182
|
+
"xs",
|
|
182
183
|
"sm",
|
|
183
184
|
"md",
|
|
184
185
|
"lg"
|