@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.
- package/.playwright/INTERNAL_AVT_REPORT_DO_NOT_USE.json +784 -784
- package/es/components/AILabel/index.js +6 -1
- package/es/components/Checkbox/Checkbox.d.ts +2 -2
- package/es/components/Checkbox/Checkbox.js +8 -8
- package/es/components/CheckboxGroup/CheckboxGroup.d.ts +2 -2
- package/es/components/CheckboxGroup/CheckboxGroup.js +9 -8
- package/es/components/CodeSnippet/CodeSnippet.js +2 -4
- package/es/components/ComboBox/ComboBox.d.ts +1 -1
- package/es/components/ComboBox/ComboBox.js +8 -7
- package/es/components/ComposedModal/ComposedModal.d.ts +1 -1
- package/es/components/ComposedModal/ComposedModal.js +15 -10
- package/es/components/ContainedList/ContainedList.d.ts +1 -1
- package/es/components/ContainedList/ContainedList.js +4 -2
- package/es/components/ContentSwitcher/ContentSwitcher.js +6 -5
- package/es/components/DataTable/DataTable.js +3 -0
- package/es/components/DataTable/TableDecoratorRow.d.ts +2 -2
- package/es/components/DataTable/TableDecoratorRow.js +8 -8
- package/es/components/DataTable/TableExpandRow.d.ts +1 -1
- package/es/components/DataTable/TableExpandRow.js +15 -6
- package/es/components/DataTable/TableHeader.js +10 -10
- package/es/components/DataTable/TableRow.js +12 -4
- package/es/components/DataTable/tools/normalize.js +2 -1
- package/es/components/DatePickerInput/DatePickerInput.js +8 -7
- package/es/components/Dialog/index.d.ts +5 -1
- package/es/components/Dialog/index.js +20 -0
- package/es/components/Dropdown/Dropdown.d.ts +1 -1
- package/es/components/Dropdown/Dropdown.js +8 -10
- package/es/components/FileUploader/FileUploaderButton.js +2 -2
- package/es/components/FileUploader/FileUploaderDropContainer.js +2 -2
- package/es/components/FileUploader/FileUploaderItem.js +2 -2
- package/es/components/Layer/index.d.ts +1 -3
- package/es/components/Layer/index.js +9 -8
- package/es/components/Menu/Menu.js +0 -6
- package/es/components/Modal/Modal.d.ts +2 -2
- package/es/components/Modal/Modal.js +20 -9
- package/es/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
- package/es/components/MultiSelect/FilterableMultiSelect.js +8 -7
- package/es/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/es/components/MultiSelect/MultiSelect.js +8 -7
- package/es/components/NumberInput/NumberInput.d.ts +1 -1
- package/es/components/NumberInput/NumberInput.js +9 -8
- package/es/components/PageHeader/PageHeader.js +2 -2
- package/es/components/Popover/index.js +2 -1
- package/es/components/RadioButton/RadioButton.d.ts +2 -2
- package/es/components/RadioButton/RadioButton.js +8 -8
- package/es/components/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +9 -8
- package/es/components/RadioTile/RadioTile.d.ts +1 -1
- package/es/components/RadioTile/RadioTile.js +8 -7
- package/es/components/Select/Select.d.ts +2 -2
- package/es/components/Select/Select.js +8 -7
- package/es/components/Tag/DismissibleTag.d.ts +1 -1
- package/es/components/Tag/DismissibleTag.js +9 -8
- package/es/components/Tag/Tag.d.ts +1 -1
- package/es/components/Tag/Tag.js +9 -8
- package/es/components/TextArea/TextArea.js +8 -7
- package/es/components/TextInput/TextInput.d.ts +1 -1
- package/es/components/TextInput/TextInput.js +20 -9
- package/es/components/Tile/Tile.d.ts +2 -2
- package/es/components/Tile/Tile.js +30 -36
- package/es/components/Toggletip/index.js +2 -2
- package/es/components/Tooltip/DefinitionTooltip.js +1 -0
- package/es/components/TreeView/TreeNode.js +3 -3
- package/es/components/TreeView/TreeView.js +3 -3
- package/es/components/UIShell/Content.d.ts +5 -3
- package/es/components/UIShell/HeaderPanel.d.ts +2 -2
- package/es/components/UIShell/HeaderPanel.js +9 -5
- package/es/internal/Selection.js +8 -3
- package/es/internal/environment.js +1 -12
- package/es/internal/{__mocks__/mockHTMLElement.d.ts → index.d.ts} +2 -4
- package/es/internal/useResizeObserver.d.ts +1 -1
- package/es/internal/utils.d.ts +14 -0
- package/es/internal/utils.js +18 -0
- package/es/tools/uniqueId.d.ts +1 -6
- package/lib/components/AILabel/index.js +6 -1
- package/lib/components/Checkbox/Checkbox.d.ts +2 -2
- package/lib/components/Checkbox/Checkbox.js +7 -7
- package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +2 -2
- package/lib/components/CheckboxGroup/CheckboxGroup.js +8 -7
- package/lib/components/CodeSnippet/CodeSnippet.js +2 -4
- package/lib/components/ComboBox/ComboBox.d.ts +1 -1
- package/lib/components/ComboBox/ComboBox.js +11 -10
- package/lib/components/ComposedModal/ComposedModal.d.ts +1 -1
- package/lib/components/ComposedModal/ComposedModal.js +16 -11
- package/lib/components/ContainedList/ContainedList.d.ts +1 -1
- package/lib/components/ContainedList/ContainedList.js +4 -2
- package/lib/components/ContentSwitcher/ContentSwitcher.js +5 -4
- package/lib/components/DataTable/DataTable.js +3 -0
- package/lib/components/DataTable/TableDecoratorRow.d.ts +2 -2
- package/lib/components/DataTable/TableDecoratorRow.js +8 -8
- package/lib/components/DataTable/TableExpandRow.d.ts +1 -1
- package/lib/components/DataTable/TableExpandRow.js +14 -5
- package/lib/components/DataTable/TableHeader.js +9 -9
- package/lib/components/DataTable/TableRow.js +11 -3
- package/lib/components/DataTable/tools/normalize.js +2 -1
- package/lib/components/DatePickerInput/DatePickerInput.js +7 -6
- package/lib/components/Dialog/index.d.ts +5 -1
- package/lib/components/Dialog/index.js +20 -0
- package/lib/components/Dropdown/Dropdown.d.ts +1 -1
- package/lib/components/Dropdown/Dropdown.js +12 -14
- package/lib/components/FileUploader/FileUploaderButton.js +2 -2
- package/lib/components/FileUploader/FileUploaderDropContainer.js +2 -2
- package/lib/components/FileUploader/FileUploaderItem.js +2 -2
- package/lib/components/Layer/index.d.ts +1 -3
- package/lib/components/Layer/index.js +9 -8
- package/lib/components/Menu/Menu.js +0 -6
- package/lib/components/Modal/Modal.d.ts +2 -2
- package/lib/components/Modal/Modal.js +28 -17
- package/lib/components/MultiSelect/FilterableMultiSelect.d.ts +1 -1
- package/lib/components/MultiSelect/FilterableMultiSelect.js +12 -11
- package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/lib/components/MultiSelect/MultiSelect.js +13 -12
- package/lib/components/NumberInput/NumberInput.d.ts +1 -1
- package/lib/components/NumberInput/NumberInput.js +8 -7
- package/lib/components/PageHeader/PageHeader.js +2 -2
- package/lib/components/Popover/index.js +2 -1
- package/lib/components/RadioButton/RadioButton.d.ts +2 -2
- package/lib/components/RadioButton/RadioButton.js +7 -7
- package/lib/components/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +10 -9
- package/lib/components/RadioTile/RadioTile.d.ts +1 -1
- package/lib/components/RadioTile/RadioTile.js +7 -6
- package/lib/components/Select/Select.d.ts +2 -2
- package/lib/components/Select/Select.js +7 -6
- package/lib/components/Tag/DismissibleTag.d.ts +1 -1
- package/lib/components/Tag/DismissibleTag.js +8 -7
- package/lib/components/Tag/Tag.d.ts +1 -1
- package/lib/components/Tag/Tag.js +8 -7
- package/lib/components/TextArea/TextArea.js +7 -6
- package/lib/components/TextInput/TextInput.d.ts +1 -1
- package/lib/components/TextInput/TextInput.js +19 -8
- package/lib/components/Tile/Tile.d.ts +2 -2
- package/lib/components/Tile/Tile.js +29 -35
- package/lib/components/Toggletip/index.js +2 -2
- package/lib/components/Tooltip/DefinitionTooltip.js +1 -0
- package/lib/components/TreeView/TreeNode.js +3 -3
- package/lib/components/TreeView/TreeView.js +3 -3
- package/lib/components/UIShell/Content.d.ts +5 -3
- package/lib/components/UIShell/HeaderPanel.d.ts +2 -2
- package/lib/components/UIShell/HeaderPanel.js +8 -4
- package/lib/internal/Selection.js +8 -3
- package/lib/internal/environment.js +1 -12
- package/lib/internal/{__mocks__/mockHTMLElement.d.ts → index.d.ts} +2 -4
- package/lib/internal/useResizeObserver.d.ts +1 -1
- package/lib/internal/utils.d.ts +14 -0
- package/lib/internal/utils.js +22 -0
- package/lib/tools/uniqueId.d.ts +1 -6
- package/package.json +11 -20
- package/telemetry.yml +1 -0
- package/es/tools/uniqueId.js +0 -14
- package/lib/tools/uniqueId.js +0 -18
|
@@ -15,7 +15,7 @@ var Downshift = require('downshift');
|
|
|
15
15
|
var cx = require('classnames');
|
|
16
16
|
var PropTypes = require('prop-types');
|
|
17
17
|
var iconsReact = require('@carbon/icons-react');
|
|
18
|
-
var index$
|
|
18
|
+
var index$2 = require('../ListBox/index.js');
|
|
19
19
|
var mergeRefs = require('../../tools/mergeRefs.js');
|
|
20
20
|
var deprecate = require('../../prop-types/deprecate.js');
|
|
21
21
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
@@ -24,6 +24,8 @@ var FormContext = require('../FluidForm/FormContext.js');
|
|
|
24
24
|
var useId = require('../../internal/useId.js');
|
|
25
25
|
var react = require('@floating-ui/react');
|
|
26
26
|
var index = require('../FeatureFlags/index.js');
|
|
27
|
+
var index$1 = require('../AILabel/index.js');
|
|
28
|
+
var utils = require('../../internal/utils.js');
|
|
27
29
|
var ListBoxPropTypes = require('../ListBox/ListBoxPropTypes.js');
|
|
28
30
|
|
|
29
31
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -318,15 +320,11 @@ const Dropdown = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
318
320
|
}), [autoAlign, getMenuProps, refs.setFloating, enableFloatingStyles]);
|
|
319
321
|
|
|
320
322
|
// AILabel is always size `mini`
|
|
321
|
-
const
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
});
|
|
327
|
-
}
|
|
328
|
-
return /*#__PURE__*/React__default["default"].isValidElement(element) ? element : null;
|
|
329
|
-
}, [slug, decorator]);
|
|
323
|
+
const candidate = slug ?? decorator;
|
|
324
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index$1.AILabel);
|
|
325
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
326
|
+
size: 'mini'
|
|
327
|
+
}) : null;
|
|
330
328
|
const allLabelProps = getLabelProps();
|
|
331
329
|
const labelProps = /*#__PURE__*/React.isValidElement(titleText) ? {
|
|
332
330
|
id: allLabelProps.id
|
|
@@ -335,7 +333,7 @@ const Dropdown = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
335
333
|
className: wrapperClasses
|
|
336
334
|
}, other), titleText && /*#__PURE__*/React__default["default"].createElement("label", _rollupPluginBabelHelpers["extends"]({
|
|
337
335
|
className: titleClasses
|
|
338
|
-
}, labelProps), titleText), /*#__PURE__*/React__default["default"].createElement(index$
|
|
336
|
+
}, labelProps), titleText), /*#__PURE__*/React__default["default"].createElement(index$2["default"], {
|
|
339
337
|
onFocus: handleFocus,
|
|
340
338
|
onBlur: handleFocus,
|
|
341
339
|
size: size,
|
|
@@ -366,19 +364,19 @@ const Dropdown = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
366
364
|
ref: mergedRef
|
|
367
365
|
}), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
368
366
|
className: `${prefix}--list-box__label`
|
|
369
|
-
}, selectedItem ? renderSelectedItem ? renderSelectedItem(selectedItem) : itemToString(selectedItem) : label), /*#__PURE__*/React__default["default"].createElement(index$
|
|
367
|
+
}, selectedItem ? renderSelectedItem ? renderSelectedItem(selectedItem) : itemToString(selectedItem) : label), /*#__PURE__*/React__default["default"].createElement(index$2["default"].MenuIcon, {
|
|
370
368
|
isOpen: isOpen,
|
|
371
369
|
translateWithId: translateWithId
|
|
372
370
|
})), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
373
371
|
className: `${prefix}--list-box__inner-wrapper--decorator`
|
|
374
|
-
}, normalizedDecorator) : '', /*#__PURE__*/React__default["default"].createElement(index$
|
|
372
|
+
}, normalizedDecorator) : '', /*#__PURE__*/React__default["default"].createElement(index$2["default"].Menu, menuProps, isOpen && items.map((item, index) => {
|
|
375
373
|
const isObject = item !== null && typeof item === 'object';
|
|
376
374
|
const itemProps = getItemProps({
|
|
377
375
|
item,
|
|
378
376
|
index
|
|
379
377
|
});
|
|
380
378
|
const title = isObject && 'text' in item && itemToElement ? item.text : itemToString(item);
|
|
381
|
-
return /*#__PURE__*/React__default["default"].createElement(index$
|
|
379
|
+
return /*#__PURE__*/React__default["default"].createElement(index$2["default"].MenuItem, _rollupPluginBabelHelpers["extends"]({
|
|
382
380
|
key: itemProps.id,
|
|
383
381
|
isActive: selectedItem === item,
|
|
384
382
|
isHighlighted: highlightedIndex === index,
|
|
@@ -15,7 +15,7 @@ var PropTypes = require('prop-types');
|
|
|
15
15
|
var React = require('react');
|
|
16
16
|
var keys = require('../../internal/keyboard/keys.js');
|
|
17
17
|
var match = require('../../internal/keyboard/match.js');
|
|
18
|
-
var
|
|
18
|
+
var useId = require('../../internal/useId.js');
|
|
19
19
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
20
20
|
var deprecate = require('../../prop-types/deprecate.js');
|
|
21
21
|
var noopFn = require('../../internal/noopFn.js');
|
|
@@ -49,7 +49,7 @@ function FileUploaderButton({
|
|
|
49
49
|
const [prevOwnerLabelText, setPrevOwnerLabelText] = React.useState(ownerLabelText);
|
|
50
50
|
const {
|
|
51
51
|
current: inputId
|
|
52
|
-
} = React.useRef(id ||
|
|
52
|
+
} = React.useRef(id || useId.useId());
|
|
53
53
|
const inputNode = React.useRef(null);
|
|
54
54
|
const classes = cx__default["default"](`${prefix}--btn`, className, {
|
|
55
55
|
[`${prefix}--btn--${buttonKind}`]: buttonKind,
|
|
@@ -15,7 +15,7 @@ var PropTypes = require('prop-types');
|
|
|
15
15
|
var cx = require('classnames');
|
|
16
16
|
var keys = require('../../internal/keyboard/keys.js');
|
|
17
17
|
var match = require('../../internal/keyboard/match.js');
|
|
18
|
-
var
|
|
18
|
+
var useId = require('../../internal/useId.js');
|
|
19
19
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
20
20
|
var events = require('../../tools/events.js');
|
|
21
21
|
var deprecate = require('../../prop-types/deprecate.js');
|
|
@@ -46,7 +46,7 @@ function FileUploaderDropContainer({
|
|
|
46
46
|
const inputRef = React.useRef(null);
|
|
47
47
|
const {
|
|
48
48
|
current: uid
|
|
49
|
-
} = React.useRef(id ||
|
|
49
|
+
} = React.useRef(id || useId.useId());
|
|
50
50
|
const [isActive, setActive] = React.useState(false);
|
|
51
51
|
const dropareaClasses = cx__default["default"](`${prefix}--file__drop-container`, `${prefix}--file-browse-btn`, {
|
|
52
52
|
[`${prefix}--file__drop-container--drag-over`]: isActive,
|
|
@@ -16,7 +16,7 @@ var React = require('react');
|
|
|
16
16
|
var Filename = require('./Filename.js');
|
|
17
17
|
var keys = require('../../internal/keyboard/keys.js');
|
|
18
18
|
var match = require('../../internal/keyboard/match.js');
|
|
19
|
-
var
|
|
19
|
+
var useId = require('../../internal/useId.js');
|
|
20
20
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
21
21
|
var noopFn = require('../../internal/noopFn.js');
|
|
22
22
|
require('../Text/index.js');
|
|
@@ -48,7 +48,7 @@ function FileUploaderItem({
|
|
|
48
48
|
const prefix = usePrefix.usePrefix();
|
|
49
49
|
const {
|
|
50
50
|
current: id
|
|
51
|
-
} = React.useRef(uuid ||
|
|
51
|
+
} = React.useRef(uuid || useId.useId());
|
|
52
52
|
const classes = cx__default["default"](`${prefix}--file__selected-file`, className, {
|
|
53
53
|
[`${prefix}--file__selected-file--invalid`]: invalid,
|
|
54
54
|
[`${prefix}--file__selected-file--md`]: size === 'md',
|
|
@@ -35,7 +35,5 @@ export interface LayerBaseProps {
|
|
|
35
35
|
withBackground?: boolean;
|
|
36
36
|
}
|
|
37
37
|
export type LayerProps<T extends React.ElementType> = PolymorphicComponentPropWithRef<T, LayerBaseProps>;
|
|
38
|
-
declare const Layer: React.ForwardRefExoticComponent<
|
|
39
|
-
as?: React.ElementType;
|
|
40
|
-
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<any>>;
|
|
38
|
+
declare const Layer: React.ForwardRefExoticComponent<Omit<LayerProps<React.ElementType<any, keyof React.JSX.IntrinsicElements>>, "ref"> & React.RefAttributes<unknown>>;
|
|
41
39
|
export { Layer };
|
|
@@ -35,14 +35,15 @@ function useLayer() {
|
|
|
35
35
|
level
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
const Layer = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
38
|
+
const Layer = /*#__PURE__*/React__default["default"].forwardRef((props, ref) => {
|
|
39
|
+
const {
|
|
40
|
+
as,
|
|
41
|
+
className: customClassName,
|
|
42
|
+
children,
|
|
43
|
+
level: overrideLevel,
|
|
44
|
+
withBackground = false,
|
|
45
|
+
...rest
|
|
46
|
+
} = props;
|
|
46
47
|
const contextLevel = React__default["default"].useContext(LayerContext.LayerContext);
|
|
47
48
|
const level = overrideLevel ?? contextLevel;
|
|
48
49
|
const prefix = usePrefix.usePrefix();
|
|
@@ -44,12 +44,6 @@ const Menu = /*#__PURE__*/React.forwardRef(function Menu({
|
|
|
44
44
|
open,
|
|
45
45
|
size = 'sm',
|
|
46
46
|
legacyAutoalign = 'true',
|
|
47
|
-
// TODO: `ssr-friendly` doesn't support ESLint v9.
|
|
48
|
-
// https://github.com/kopiro/eslint-plugin-ssr-friendly/issues/30
|
|
49
|
-
// https://github.com/carbon-design-system/carbon/issues/18991
|
|
50
|
-
/*
|
|
51
|
-
// eslint-disable-next-line ssr-friendly/no-dom-globals-in-react-fc
|
|
52
|
-
*/
|
|
53
47
|
target = environment.canUseDOM && document.body,
|
|
54
48
|
x = 0,
|
|
55
49
|
y = 0,
|
|
@@ -4,7 +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 React, { type HTMLAttributes, type ReactNode, type
|
|
7
|
+
import React, { type HTMLAttributes, type ReactNode, type RefObject } from 'react';
|
|
8
8
|
import { InlineLoadingStatus } from '../InlineLoading/InlineLoading';
|
|
9
9
|
export declare const ModalSizes: readonly ["xs", "sm", "md", "lg"];
|
|
10
10
|
export type ModalSize = (typeof ModalSizes)[number];
|
|
@@ -57,7 +57,7 @@ export interface ModalProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
57
57
|
/**
|
|
58
58
|
* Provide a ref to return focus to once the modal is closed.
|
|
59
59
|
*/
|
|
60
|
-
launcherButtonRef?:
|
|
60
|
+
launcherButtonRef?: RefObject<HTMLButtonElement | null>;
|
|
61
61
|
/**
|
|
62
62
|
* Specify the description for the loading text
|
|
63
63
|
*/
|
|
@@ -19,7 +19,7 @@ var Button = require('../Button/Button.js');
|
|
|
19
19
|
require('../Button/Button.Skeleton.js');
|
|
20
20
|
var ButtonSet = require('../ButtonSet/ButtonSet.js');
|
|
21
21
|
var InlineLoading = require('../InlineLoading/InlineLoading.js');
|
|
22
|
-
var index$
|
|
22
|
+
var index$4 = require('../Layer/index.js');
|
|
23
23
|
var requiredIfGivenPropIsTruthy = require('../../prop-types/requiredIfGivenPropIsTruthy.js');
|
|
24
24
|
var wrapFocus = require('../../internal/wrapFocus.js');
|
|
25
25
|
var useIsomorphicEffect = require('../../internal/useIsomorphicEffect.js');
|
|
@@ -28,13 +28,15 @@ var usePrefix = require('../../internal/usePrefix.js');
|
|
|
28
28
|
var usePreviousValue = require('../../internal/usePreviousValue.js');
|
|
29
29
|
var keys = require('../../internal/keyboard/keys.js');
|
|
30
30
|
var match = require('../../internal/keyboard/match.js');
|
|
31
|
-
var index$
|
|
31
|
+
var index$3 = require('../IconButton/index.js');
|
|
32
32
|
var noopFn = require('../../internal/noopFn.js');
|
|
33
33
|
require('../Text/index.js');
|
|
34
34
|
var index = require('../FeatureFlags/index.js');
|
|
35
35
|
var events = require('../../tools/events.js');
|
|
36
36
|
var deprecate = require('../../prop-types/deprecate.js');
|
|
37
|
-
var index$
|
|
37
|
+
var index$2 = require('../Dialog/index.js');
|
|
38
|
+
var index$1 = require('../AILabel/index.js');
|
|
39
|
+
var utils = require('../../internal/utils.js');
|
|
38
40
|
var warning = require('../../internal/warning.js');
|
|
39
41
|
var debounce = require('../../node_modules/es-toolkit/dist/compat/function/debounce.mjs.js');
|
|
40
42
|
var Text = require('../Text/Text.js');
|
|
@@ -46,6 +48,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
46
48
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
47
49
|
|
|
48
50
|
const ModalSizes = ['xs', 'sm', 'md', 'lg'];
|
|
51
|
+
const invalidOutsideClickMessage = '`Modal`: `preventCloseOnClickOutside` should not be `false` when `passiveModal` is `false`. Non-passive `Modal`s should not be dismissible by clicking outside.';
|
|
49
52
|
const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
50
53
|
'aria-label': ariaLabelProp,
|
|
51
54
|
children,
|
|
@@ -71,7 +74,7 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
71
74
|
size,
|
|
72
75
|
hasScrollingContent = false,
|
|
73
76
|
closeButtonLabel = 'Close',
|
|
74
|
-
preventCloseOnClickOutside =
|
|
77
|
+
preventCloseOnClickOutside = !passiveModal,
|
|
75
78
|
isFullWidth,
|
|
76
79
|
launcherButtonRef,
|
|
77
80
|
loadingStatus = 'inactive',
|
|
@@ -102,6 +105,9 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
102
105
|
const focusTrapWithoutSentinels = index.useFeatureFlag('enable-experimental-focus-wrap-without-sentinels');
|
|
103
106
|
const enableDialogElement = index.useFeatureFlag('enable-dialog-element');
|
|
104
107
|
process.env.NODE_ENV !== "production" ? warning.warning(!(focusTrapWithoutSentinels && enableDialogElement), '`<Modal>` detected both `focusTrapWithoutSentinels` and ' + '`enableDialogElement` feature flags are enabled. The native dialog ' + 'element handles focus, so `enableDialogElement` must be off for ' + '`focusTrapWithoutSentinels` to have any effect.') : void 0;
|
|
108
|
+
if (!passiveModal && preventCloseOnClickOutside === false) {
|
|
109
|
+
console.error(invalidOutsideClickMessage);
|
|
110
|
+
}
|
|
105
111
|
function isCloseButton(element) {
|
|
106
112
|
return !onSecondarySubmit && element === secondaryButton.current || element.classList.contains(modalCloseButtonClass);
|
|
107
113
|
}
|
|
@@ -275,15 +281,14 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
275
281
|
}, []);
|
|
276
282
|
|
|
277
283
|
// AILabel always size `sm`
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
}
|
|
284
|
+
const candidate = slug ?? decorator;
|
|
285
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index$1.AILabel);
|
|
286
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
287
|
+
size: 'sm'
|
|
288
|
+
}) : null;
|
|
284
289
|
const modalButton = /*#__PURE__*/React__default["default"].createElement("div", {
|
|
285
290
|
className: `${prefix}--modal-close-button`
|
|
286
|
-
}, /*#__PURE__*/React__default["default"].createElement(index$
|
|
291
|
+
}, /*#__PURE__*/React__default["default"].createElement(index$3.IconButton, {
|
|
287
292
|
className: modalCloseButtonClass,
|
|
288
293
|
label: closeButtonLabel,
|
|
289
294
|
onClick: onRequestClose,
|
|
@@ -300,8 +305,9 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
300
305
|
// alertdialog is the only permitted aria role for a native dialog element
|
|
301
306
|
// https://www.w3.org/TR/html-aria/#docconformance:~:text=Role%3A-,alertdialog,-.%20(dialog%20is
|
|
302
307
|
const isAlertDialog = alert && !passiveModal;
|
|
303
|
-
const modalBody = enableDialogElement ? /*#__PURE__*/React__default["default"].createElement(index$
|
|
308
|
+
const modalBody = enableDialogElement ? /*#__PURE__*/React__default["default"].createElement(index$2.unstable__Dialog, {
|
|
304
309
|
open: open,
|
|
310
|
+
focusAfterCloseRef: launcherButtonRef,
|
|
305
311
|
modal: true,
|
|
306
312
|
ref: innerModal,
|
|
307
313
|
role: isAlertDialog ? 'alertdialog' : '',
|
|
@@ -322,7 +328,7 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
322
328
|
className: `${prefix}--modal--inner__decorator`
|
|
323
329
|
}, normalizedDecorator) : '', /*#__PURE__*/React__default["default"].createElement("div", {
|
|
324
330
|
className: `${prefix}--modal-close-button`
|
|
325
|
-
}, /*#__PURE__*/React__default["default"].createElement(index$
|
|
331
|
+
}, /*#__PURE__*/React__default["default"].createElement(index$3.IconButton, {
|
|
326
332
|
className: modalCloseButtonClass,
|
|
327
333
|
label: closeButtonLabel,
|
|
328
334
|
onClick: onRequestClose,
|
|
@@ -334,7 +340,7 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
334
340
|
"aria-hidden": "true",
|
|
335
341
|
tabIndex: "-1",
|
|
336
342
|
className: `${modalCloseButtonClass}__icon`
|
|
337
|
-
})))), /*#__PURE__*/React__default["default"].createElement(index$
|
|
343
|
+
})))), /*#__PURE__*/React__default["default"].createElement(index$4.Layer, _rollupPluginBabelHelpers["extends"]({
|
|
338
344
|
ref: contentRef,
|
|
339
345
|
id: modalBodyId,
|
|
340
346
|
className: contentClasses
|
|
@@ -390,7 +396,7 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
390
396
|
className: `${prefix}--modal-header__heading`
|
|
391
397
|
}, modalHeading), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
392
398
|
className: `${prefix}--modal--inner__decorator`
|
|
393
|
-
}, normalizedDecorator) : '', !passiveModal && modalButton), /*#__PURE__*/React__default["default"].createElement(index$
|
|
399
|
+
}, normalizedDecorator) : '', !passiveModal && modalButton), /*#__PURE__*/React__default["default"].createElement(index$4.Layer, _rollupPluginBabelHelpers["extends"]({
|
|
394
400
|
ref: contentRef,
|
|
395
401
|
id: modalBodyId,
|
|
396
402
|
className: contentClasses
|
|
@@ -427,7 +433,7 @@ const Modal = /*#__PURE__*/React__default["default"].forwardRef(function Modal({
|
|
|
427
433
|
role: "link",
|
|
428
434
|
className: `${prefix}--visually-hidden`
|
|
429
435
|
}, "Focus sentinel"));
|
|
430
|
-
return /*#__PURE__*/React__default["default"].createElement(index$
|
|
436
|
+
return /*#__PURE__*/React__default["default"].createElement(index$4.Layer, _rollupPluginBabelHelpers["extends"]({}, rest, {
|
|
431
437
|
level: 0,
|
|
432
438
|
onKeyDown: handleKeyDown,
|
|
433
439
|
onClick: events.composeEventHandlers([rest?.onClick, handleOnClick]),
|
|
@@ -548,7 +554,12 @@ Modal.propTypes = {
|
|
|
548
554
|
/**
|
|
549
555
|
* Prevent closing on click outside of modal
|
|
550
556
|
*/
|
|
551
|
-
preventCloseOnClickOutside:
|
|
557
|
+
preventCloseOnClickOutside: (props, propName) => {
|
|
558
|
+
if (!props.passiveModal && props[propName] === false) {
|
|
559
|
+
return new Error(invalidOutsideClickMessage);
|
|
560
|
+
}
|
|
561
|
+
return null;
|
|
562
|
+
},
|
|
552
563
|
/**
|
|
553
564
|
* Specify whether the Button should be disabled, or not
|
|
554
565
|
*/
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import { type UseComboboxProps, type UseMultipleSelectionProps } from 'downshift';
|
|
8
|
-
import React, {
|
|
8
|
+
import React, { type FunctionComponent, type ReactElement, type ReactNode } from 'react';
|
|
9
9
|
import { type MultiSelectSortingProps } from './MultiSelectPropTypes';
|
|
10
10
|
import { type ListBoxSize, type ListBoxType } from '../ListBox';
|
|
11
11
|
import { TranslateWithId } from '../../types/common';
|
|
@@ -18,7 +18,7 @@ var PropTypes = require('prop-types');
|
|
|
18
18
|
var React = require('react');
|
|
19
19
|
var filter = require('../ComboBox/tools/filter.js');
|
|
20
20
|
var MultiSelectPropTypes = require('./MultiSelectPropTypes.js');
|
|
21
|
-
var index = require('../ListBox/index.js');
|
|
21
|
+
var index$1 = require('../ListBox/index.js');
|
|
22
22
|
var ListBoxSelection = require('../ListBox/next/ListBoxSelection.js');
|
|
23
23
|
var ListBoxTrigger = require('../ListBox/next/ListBoxTrigger.js');
|
|
24
24
|
var keys = require('../../internal/keyboard/keys.js');
|
|
@@ -33,6 +33,8 @@ require('../FluidForm/FluidForm.js');
|
|
|
33
33
|
var FormContext = require('../FluidForm/FormContext.js');
|
|
34
34
|
var Selection = require('../../internal/Selection.js');
|
|
35
35
|
var react = require('@floating-ui/react');
|
|
36
|
+
var index = require('../AILabel/index.js');
|
|
37
|
+
var utils = require('../../internal/utils.js');
|
|
36
38
|
var ListBoxPropTypes = require('../ListBox/ListBoxPropTypes.js');
|
|
37
39
|
|
|
38
40
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -456,12 +458,11 @@ const FilterableMultiSelect = /*#__PURE__*/React.forwardRef(function FilterableM
|
|
|
456
458
|
}
|
|
457
459
|
|
|
458
460
|
// AILabel always size `mini`
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
}
|
|
461
|
+
const candidate = slug ?? decorator;
|
|
462
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index.AILabel);
|
|
463
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
464
|
+
size: 'mini'
|
|
465
|
+
}) : null;
|
|
465
466
|
const className = cx__default["default"](`${prefix}--multi-select`, `${prefix}--combo-box`, `${prefix}--multi-select--filterable`, {
|
|
466
467
|
[`${prefix}--multi-select--invalid`]: invalid,
|
|
467
468
|
[`${prefix}--multi-select--invalid--focused`]: invalid && inputFocused,
|
|
@@ -581,7 +582,7 @@ const FilterableMultiSelect = /*#__PURE__*/React.forwardRef(function FilterableM
|
|
|
581
582
|
className: titleClasses
|
|
582
583
|
}, labelProps), titleText, /*#__PURE__*/React__default["default"].createElement("span", {
|
|
583
584
|
className: `${prefix}--visually-hidden`
|
|
584
|
-
}, clearSelectionContent)) : null, /*#__PURE__*/React__default["default"].createElement(index["default"], {
|
|
585
|
+
}, clearSelectionContent)) : null, /*#__PURE__*/React__default["default"].createElement(index$1["default"], {
|
|
585
586
|
onFocus: isFluid ? handleFocus : undefined,
|
|
586
587
|
onBlur: isFluid ? handleFocus : undefined,
|
|
587
588
|
className: className,
|
|
@@ -637,7 +638,7 @@ const FilterableMultiSelect = /*#__PURE__*/React.forwardRef(function FilterableM
|
|
|
637
638
|
translateWithId: translateWithId
|
|
638
639
|
}))), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
639
640
|
className: `${prefix}--list-box__inner-wrapper--decorator`
|
|
640
|
-
}, normalizedDecorator) : '', /*#__PURE__*/React__default["default"].createElement(index["default"].Menu, menuProps, isOpen ? sortedItems.map((item, index
|
|
641
|
+
}, normalizedDecorator) : '', /*#__PURE__*/React__default["default"].createElement(index$1["default"].Menu, menuProps, isOpen ? sortedItems.map((item, index) => {
|
|
641
642
|
const isChecked = controlledSelectedItems.filter(selected => isEqual__default["default"](selected, item)).length > 0;
|
|
642
643
|
const itemProps = getItemProps({
|
|
643
644
|
item,
|
|
@@ -655,11 +656,11 @@ const FilterableMultiSelect = /*#__PURE__*/React.forwardRef(function FilterableM
|
|
|
655
656
|
// eslint-disable-line @typescript-eslint/no-unused-vars
|
|
656
657
|
...modifiedItemProps
|
|
657
658
|
} = itemProps;
|
|
658
|
-
return /*#__PURE__*/React__default["default"].createElement(index["default"].MenuItem, _rollupPluginBabelHelpers["extends"]({
|
|
659
|
+
return /*#__PURE__*/React__default["default"].createElement(index$1["default"].MenuItem, _rollupPluginBabelHelpers["extends"]({
|
|
659
660
|
key: itemProps.id,
|
|
660
661
|
"aria-label": itemText,
|
|
661
662
|
isActive: isChecked,
|
|
662
|
-
isHighlighted: highlightedIndex === index
|
|
663
|
+
isHighlighted: highlightedIndex === index,
|
|
663
664
|
title: itemText,
|
|
664
665
|
disabled: disabled
|
|
665
666
|
}, modifiedItemProps), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import { UseSelectProps } from 'downshift';
|
|
8
|
-
import React, { ReactNode } from 'react';
|
|
8
|
+
import React, { type ReactNode } from 'react';
|
|
9
9
|
import { type ListBoxSize, type ListBoxType } from '../ListBox';
|
|
10
10
|
import { MultiSelectSortingProps } from './MultiSelectPropTypes';
|
|
11
11
|
import { ListBoxProps } from '../ListBox/ListBox';
|
|
@@ -16,7 +16,7 @@ var Downshift = require('downshift');
|
|
|
16
16
|
var isEqual = require('react-fast-compare');
|
|
17
17
|
var PropTypes = require('prop-types');
|
|
18
18
|
var React = require('react');
|
|
19
|
-
var index$
|
|
19
|
+
var index$2 = require('../ListBox/index.js');
|
|
20
20
|
var MultiSelectPropTypes = require('./MultiSelectPropTypes.js');
|
|
21
21
|
var sorting = require('./tools/sorting.js');
|
|
22
22
|
var Selection = require('../../internal/Selection.js');
|
|
@@ -33,6 +33,8 @@ require('../Checkbox/Checkbox.Skeleton.js');
|
|
|
33
33
|
var noopFn = require('../../internal/noopFn.js');
|
|
34
34
|
var react = require('@floating-ui/react');
|
|
35
35
|
var index = require('../FeatureFlags/index.js');
|
|
36
|
+
var index$1 = require('../AILabel/index.js');
|
|
37
|
+
var utils = require('../../internal/utils.js');
|
|
36
38
|
var ListBoxPropTypes = require('../ListBox/ListBoxPropTypes.js');
|
|
37
39
|
|
|
38
40
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -420,12 +422,11 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
420
422
|
} : {};
|
|
421
423
|
|
|
422
424
|
// AILabel always size `mini`
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
}
|
|
425
|
+
const candidate = slug ?? decorator;
|
|
426
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index$1.AILabel);
|
|
427
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
428
|
+
size: 'mini'
|
|
429
|
+
}) : null;
|
|
429
430
|
const itemsSelectedText = selectedItems.length > 0 && selectedItems.map(item => item?.text);
|
|
430
431
|
const selectedItemsLength = selectAll ? selectedItems.filter(item => !item.isSelectAll).length : selectedItems.length;
|
|
431
432
|
|
|
@@ -453,7 +454,7 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
453
454
|
className: titleClasses
|
|
454
455
|
}, labelProps), titleText && titleText, selectedItems.length > 0 && /*#__PURE__*/React__default["default"].createElement("span", {
|
|
455
456
|
className: `${prefix}--visually-hidden`
|
|
456
|
-
}, clearSelectionDescription, " ", selectedItems.length, ' ', itemsSelectedText, ",", clearSelectionText)), /*#__PURE__*/React__default["default"].createElement(index$
|
|
457
|
+
}, clearSelectionDescription, " ", selectedItems.length, ' ', itemsSelectedText, ",", clearSelectionText)), /*#__PURE__*/React__default["default"].createElement(index$2["default"], {
|
|
457
458
|
onFocus: isFluid ? handleFocus : undefined,
|
|
458
459
|
onBlur: isFluid ? handleFocus : undefined,
|
|
459
460
|
type: type,
|
|
@@ -474,7 +475,7 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
474
475
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
475
476
|
className: multiSelectFieldWrapperClasses,
|
|
476
477
|
ref: enableFloatingStyles ? refs.setReference : null
|
|
477
|
-
}, selectedItems.length > 0 && /*#__PURE__*/React__default["default"].createElement(index$
|
|
478
|
+
}, selectedItems.length > 0 && /*#__PURE__*/React__default["default"].createElement(index$2["default"].Selection, {
|
|
478
479
|
readOnly: readOnly,
|
|
479
480
|
clearSelection: !disabled && !readOnly ? clearSelection : noopFn.noopFn,
|
|
480
481
|
selectionCount: selectedItemsLength
|
|
@@ -493,12 +494,12 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
493
494
|
}, readOnlyEventHandlers), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
494
495
|
id: fieldLabelId,
|
|
495
496
|
className: `${prefix}--list-box__label`
|
|
496
|
-
}, label), /*#__PURE__*/React__default["default"].createElement(index$
|
|
497
|
+
}, label), /*#__PURE__*/React__default["default"].createElement(index$2["default"].MenuIcon, {
|
|
497
498
|
isOpen: isOpen,
|
|
498
499
|
translateWithId: translateWithId
|
|
499
500
|
})), slug ? normalizedDecorator : decorator ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
500
501
|
className: `${prefix}--list-box__inner-wrapper--decorator`
|
|
501
|
-
}, normalizedDecorator) : ''), /*#__PURE__*/React__default["default"].createElement(index$
|
|
502
|
+
}, normalizedDecorator) : ''), /*#__PURE__*/React__default["default"].createElement(index$2["default"].Menu, menuProps, isOpen && sortItems(filteredItems, sortOptions).map((item, index) => {
|
|
502
503
|
const isChecked = selectedItems.filter(selected => isEqual__default["default"](selected, item)).length > 0;
|
|
503
504
|
const {
|
|
504
505
|
hasIndividualSelections,
|
|
@@ -513,7 +514,7 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef(({
|
|
|
513
514
|
['aria-selected']: isChecked
|
|
514
515
|
});
|
|
515
516
|
const itemText = itemToString(item);
|
|
516
|
-
return /*#__PURE__*/React__default["default"].createElement(index$
|
|
517
|
+
return /*#__PURE__*/React__default["default"].createElement(index$2["default"].MenuItem, _rollupPluginBabelHelpers["extends"]({
|
|
517
518
|
key: itemProps.id,
|
|
518
519
|
isActive: isChecked && !item['isSelectAll'],
|
|
519
520
|
"aria-label": itemText,
|
|
@@ -4,7 +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 React, { ReactNode } from 'react';
|
|
7
|
+
import React, { type ReactNode } from 'react';
|
|
8
8
|
import { TranslateWithId } from '../../types/common';
|
|
9
9
|
import { type NumberFormatOptions } from '@carbon/utilities';
|
|
10
10
|
export declare const translationIds: {
|
|
@@ -27,6 +27,8 @@ var utilities = require('@carbon/utilities');
|
|
|
27
27
|
var keys = require('../../internal/keyboard/keys.js');
|
|
28
28
|
var match = require('../../internal/keyboard/match.js');
|
|
29
29
|
var NumberFormatPropTypes = require('./NumberFormatPropTypes.js');
|
|
30
|
+
var index = require('../AILabel/index.js');
|
|
31
|
+
var utils = require('../../internal/utils.js');
|
|
30
32
|
var Text = require('../Text/Text.js');
|
|
31
33
|
|
|
32
34
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -272,16 +274,15 @@ const NumberInput = /*#__PURE__*/React__default["default"].forwardRef(function N
|
|
|
272
274
|
};
|
|
273
275
|
|
|
274
276
|
// AILabel always size `mini`
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
}
|
|
277
|
+
const candidate = slug ?? decorator;
|
|
278
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index.AILabel);
|
|
279
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
280
|
+
size: 'mini'
|
|
281
|
+
}) : null;
|
|
281
282
|
|
|
282
283
|
// Need to update the internal value when the revert button is clicked
|
|
283
284
|
let isRevertActive;
|
|
284
|
-
if (normalizedDecorator
|
|
285
|
+
if (normalizedDecorator?.type === index.AILabel) {
|
|
285
286
|
isRevertActive = normalizedDecorator.props.revertActive;
|
|
286
287
|
}
|
|
287
288
|
React.useEffect(() => {
|
|
@@ -480,9 +480,9 @@ BreadcrumbBar.displayName = 'PageHeaderBreadcrumbBar';
|
|
|
480
480
|
const Content = PageHeaderContent;
|
|
481
481
|
Content.displayName = 'PageHeaderContent';
|
|
482
482
|
const ContentPageActions = PageHeaderContentPageActions;
|
|
483
|
-
|
|
483
|
+
ContentPageActions.displayName = 'PageHeaderContentPageActions';
|
|
484
484
|
const ContentText = PageHeaderContentText;
|
|
485
|
-
|
|
485
|
+
ContentText.displayName = 'PageHeaderContentText';
|
|
486
486
|
const HeroImage = PageHeaderHeroImage;
|
|
487
487
|
HeroImage.displayName = 'PageHeaderHeroImage';
|
|
488
488
|
const TabBar = PageHeaderTabBar;
|
|
@@ -21,6 +21,7 @@ var useEvent = require('../../internal/useEvent.js');
|
|
|
21
21
|
var mapPopoverAlign = require('../../tools/mapPopoverAlign.js');
|
|
22
22
|
var react = require('@floating-ui/react');
|
|
23
23
|
var index = require('../FeatureFlags/index.js');
|
|
24
|
+
var index$1 = require('../Toggletip/index.js');
|
|
24
25
|
|
|
25
26
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
26
27
|
|
|
@@ -236,7 +237,7 @@ forwardRef) {
|
|
|
236
237
|
// For a toggletip there is a specific trigger component, ToggletipButton.
|
|
237
238
|
// In either of these cases we want to set this as the reference node for floating-ui autoAlign
|
|
238
239
|
// positioning.
|
|
239
|
-
if (enableFloatingStyles && item?.type
|
|
240
|
+
if (enableFloatingStyles && item?.type !== PopoverContent || enableFloatingStyles && item?.type === index$1.ToggletipButton) {
|
|
240
241
|
// Set the reference element for floating-ui
|
|
241
242
|
refs.setReference(node);
|
|
242
243
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2016,
|
|
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 React, { ReactNode } from 'react';
|
|
7
|
+
import React, { type ReactNode } from 'react';
|
|
8
8
|
type ExcludedAttributes = 'onChange';
|
|
9
9
|
export interface RadioButtonProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, ExcludedAttributes> {
|
|
10
10
|
/**
|
|
@@ -18,6 +18,8 @@ var deprecate = require('../../prop-types/deprecate.js');
|
|
|
18
18
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
19
19
|
var useId = require('../../internal/useId.js');
|
|
20
20
|
var mergeRefs = require('../../tools/mergeRefs.js');
|
|
21
|
+
var index = require('../AILabel/index.js');
|
|
22
|
+
var utils = require('../../internal/utils.js');
|
|
21
23
|
var Text = require('../Text/Text.js');
|
|
22
24
|
|
|
23
25
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -57,13 +59,11 @@ const RadioButton = /*#__PURE__*/React__default["default"].forwardRef((props, re
|
|
|
57
59
|
[`${prefix}--radio-button-wrapper--decorator`]: decorator
|
|
58
60
|
});
|
|
59
61
|
const inputRef = React.useRef(null);
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
66
|
-
}
|
|
62
|
+
const candidate = slug ?? decorator;
|
|
63
|
+
const candidateIsAILabel = utils.isComponentElement(candidate, index.AILabel);
|
|
64
|
+
const normalizedDecorator = candidateIsAILabel ? /*#__PURE__*/React.cloneElement(candidate, {
|
|
65
|
+
size: candidate.props?.['kind'] === 'inline' ? 'md' : 'mini'
|
|
66
|
+
}) : null;
|
|
67
67
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
68
68
|
className: wrapperClasses
|
|
69
69
|
}, /*#__PURE__*/React__default["default"].createElement("input", _rollupPluginBabelHelpers["extends"]({}, rest, {
|