@carbon/react 1.44.0 → 1.45.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 +820 -902
- package/es/components/Checkbox/Checkbox.d.ts +1 -1
- package/es/components/Checkbox/Checkbox.js +1 -1
- package/es/components/CheckboxGroup/CheckboxGroup.js +2 -2
- package/es/components/ComboBox/ComboBox.d.ts +1 -1
- package/es/components/ComboBox/ComboBox.js +2 -2
- package/es/components/ComboButton/index.js +1 -1
- package/es/components/ComposedModal/ModalFooter.d.ts +2 -1
- package/es/components/ContentSwitcher/ContentSwitcher.js +1 -1
- package/es/components/DataTable/DataTable.d.ts +2 -0
- package/es/components/DataTable/DataTable.js +3 -0
- package/es/components/DataTable/TableExpandRow.js +20 -3
- package/es/components/DataTable/TableHeader.d.ts +5 -0
- package/es/components/DataTable/TableHeader.js +30 -6
- package/es/components/DataTable/TableSlugRow.d.ts +31 -0
- package/es/components/DataTable/TableSlugRow.js +49 -0
- package/es/components/DataTable/index.d.ts +2 -1
- package/es/components/DataTable/index.js +3 -0
- package/es/components/DatePickerInput/DatePickerInput.d.ts +1 -1
- package/es/components/DatePickerInput/DatePickerInput.js +2 -2
- package/es/components/Dropdown/Dropdown.d.ts +1 -1
- package/es/components/Dropdown/Dropdown.js +2 -2
- package/es/components/InlineLoading/InlineLoading.d.ts +68 -0
- package/es/components/InlineLoading/InlineLoading.js +4 -4
- package/es/components/InlineLoading/index.d.ts +9 -0
- package/es/components/Layer/LayerContext.d.ts +8 -0
- package/es/components/Layer/LayerLevel.d.ts +5 -0
- package/es/components/Layer/LayerLevel.js +12 -0
- package/es/components/Layer/index.d.ts +38 -0
- package/es/components/Layer/index.js +9 -8
- package/es/components/Menu/MenuItem.js +2 -1
- package/es/components/MenuButton/index.js +1 -1
- package/es/components/Modal/Modal.d.ts +3 -2
- package/es/components/MultiSelect/FilterableMultiSelect.js +2 -2
- package/es/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/es/components/MultiSelect/MultiSelect.js +5 -2
- package/es/components/Notification/Notification.js +1 -0
- package/es/components/NumberInput/NumberInput.d.ts +1 -1
- package/es/components/NumberInput/NumberInput.js +3 -3
- package/es/components/ProgressIndicator/ProgressIndicator.js +4 -0
- package/es/components/RadioButton/RadioButton.d.ts +1 -1
- package/es/components/RadioButton/RadioButton.js +1 -1
- package/es/components/RadioButtonGroup/RadioButtonGroup.d.ts +1 -1
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +2 -2
- package/es/components/Select/Select.d.ts +1 -1
- package/es/components/Select/Select.js +2 -2
- package/es/components/Slider/Slider.Skeleton.js +17 -3
- package/es/components/Slider/Slider.js +132 -93
- package/es/components/Slider/SliderHandles.d.ts +4 -0
- package/es/components/Slider/SliderHandles.js +65 -0
- package/es/components/Slug/index.js +1 -0
- package/es/components/Tabs/Tabs.js +1 -1
- package/es/components/Tag/Tag.d.ts +18 -10
- package/es/components/Tag/Tag.js +23 -7
- package/es/components/TextArea/TextArea.d.ts +7 -3
- package/es/components/TextArea/TextArea.js +85 -18
- package/es/components/TextInput/TextInput.d.ts +1 -1
- package/es/components/TextInput/TextInput.js +2 -2
- package/es/components/Tile/Tile.d.ts +8 -8
- package/es/components/Tile/Tile.js +11 -7
- package/es/components/Tooltip/Tooltip.js +48 -2
- package/es/components/UIShell/HeaderPanel.d.ts +36 -0
- package/es/components/UIShell/HeaderPanel.js +6 -6
- package/es/components/UIShell/Switcher.js +1 -1
- package/es/index.js +2 -1
- package/es/internal/useAnnouncer.js +2 -1
- package/es/internal/useNoInteractiveChildren.js +2 -6
- package/lib/components/Checkbox/Checkbox.d.ts +1 -1
- package/lib/components/Checkbox/Checkbox.js +1 -1
- package/lib/components/CheckboxGroup/CheckboxGroup.js +2 -2
- package/lib/components/ComboBox/ComboBox.d.ts +1 -1
- package/lib/components/ComboBox/ComboBox.js +2 -2
- package/lib/components/ComboButton/index.js +1 -1
- package/lib/components/ComposedModal/ModalFooter.d.ts +2 -1
- package/lib/components/ContentSwitcher/ContentSwitcher.js +1 -1
- package/lib/components/DataTable/DataTable.d.ts +2 -0
- package/lib/components/DataTable/DataTable.js +3 -0
- package/lib/components/DataTable/TableExpandRow.js +20 -3
- package/lib/components/DataTable/TableHeader.d.ts +5 -0
- package/lib/components/DataTable/TableHeader.js +29 -5
- package/lib/components/DataTable/TableSlugRow.d.ts +31 -0
- package/lib/components/DataTable/TableSlugRow.js +59 -0
- package/lib/components/DataTable/index.d.ts +2 -1
- package/lib/components/DataTable/index.js +3 -0
- package/lib/components/DatePickerInput/DatePickerInput.d.ts +1 -1
- package/lib/components/DatePickerInput/DatePickerInput.js +2 -2
- package/lib/components/Dropdown/Dropdown.d.ts +1 -1
- package/lib/components/Dropdown/Dropdown.js +2 -2
- package/lib/components/InlineLoading/InlineLoading.d.ts +68 -0
- package/lib/components/InlineLoading/InlineLoading.js +4 -4
- package/lib/components/InlineLoading/index.d.ts +9 -0
- package/lib/components/Layer/LayerContext.d.ts +8 -0
- package/lib/components/Layer/LayerLevel.d.ts +5 -0
- package/lib/components/Layer/LayerLevel.js +18 -0
- package/lib/components/Layer/index.d.ts +38 -0
- package/lib/components/Layer/index.js +10 -9
- package/lib/components/Menu/MenuItem.js +2 -1
- package/lib/components/MenuButton/index.js +1 -1
- package/lib/components/Modal/Modal.d.ts +3 -2
- package/lib/components/MultiSelect/FilterableMultiSelect.js +2 -2
- package/lib/components/MultiSelect/MultiSelect.d.ts +1 -1
- package/lib/components/MultiSelect/MultiSelect.js +5 -2
- package/lib/components/Notification/Notification.js +1 -0
- package/lib/components/NumberInput/NumberInput.d.ts +1 -1
- package/lib/components/NumberInput/NumberInput.js +3 -3
- package/lib/components/ProgressIndicator/ProgressIndicator.js +4 -0
- package/lib/components/RadioButton/RadioButton.d.ts +1 -1
- package/lib/components/RadioButton/RadioButton.js +1 -1
- package/lib/components/RadioButtonGroup/RadioButtonGroup.d.ts +1 -1
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +2 -2
- package/lib/components/Select/Select.d.ts +1 -1
- package/lib/components/Select/Select.js +2 -2
- package/lib/components/Slider/Slider.Skeleton.js +17 -3
- package/lib/components/Slider/Slider.js +132 -93
- package/lib/components/Slider/SliderHandles.d.ts +4 -0
- package/lib/components/Slider/SliderHandles.js +76 -0
- package/lib/components/Slug/index.js +1 -0
- package/lib/components/Tabs/Tabs.js +1 -1
- package/lib/components/Tag/Tag.d.ts +18 -10
- package/lib/components/Tag/Tag.js +23 -7
- package/lib/components/TextArea/TextArea.d.ts +7 -3
- package/lib/components/TextArea/TextArea.js +84 -17
- package/lib/components/TextInput/TextInput.d.ts +1 -1
- package/lib/components/TextInput/TextInput.js +2 -2
- package/lib/components/Tile/Tile.d.ts +8 -8
- package/lib/components/Tile/Tile.js +11 -7
- package/lib/components/Tooltip/Tooltip.js +47 -1
- package/lib/components/UIShell/HeaderPanel.d.ts +36 -0
- package/lib/components/UIShell/HeaderPanel.js +7 -7
- package/lib/components/UIShell/Switcher.js +1 -1
- package/lib/index.js +4 -2
- package/lib/internal/useAnnouncer.js +2 -1
- package/lib/internal/useNoInteractiveChildren.js +2 -6
- package/package.json +4 -7
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2023
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
'use strict';
|
|
9
|
+
|
|
10
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
11
|
+
|
|
12
|
+
const levels = ['one', 'two', 'three'];
|
|
13
|
+
const MIN_LEVEL = 0;
|
|
14
|
+
const MAX_LEVEL = levels.length - 1;
|
|
15
|
+
|
|
16
|
+
exports.MAX_LEVEL = MAX_LEVEL;
|
|
17
|
+
exports.MIN_LEVEL = MIN_LEVEL;
|
|
18
|
+
exports.levels = levels;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2023
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import React from 'react';
|
|
8
|
+
import { LayerLevel } from './LayerLevel';
|
|
9
|
+
import { PolymorphicProps } from '../../types/common';
|
|
10
|
+
/**
|
|
11
|
+
* A custom hook that will return information about the current layer. A common
|
|
12
|
+
* field to pull from this is the `level` for the layer that the component that
|
|
13
|
+
* calls this hook is currently in
|
|
14
|
+
*/
|
|
15
|
+
export declare function useLayer(): {
|
|
16
|
+
level: 0 | 1 | 2;
|
|
17
|
+
};
|
|
18
|
+
interface LayerBaseProps {
|
|
19
|
+
/**
|
|
20
|
+
* Provide child elements to be rendered inside of `Theme`
|
|
21
|
+
*/
|
|
22
|
+
children?: React.ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Provide a custom class name to be used on the outermost element rendered by
|
|
25
|
+
* the component
|
|
26
|
+
*/
|
|
27
|
+
className?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Specify the layer level and override any existing levels based on hierarchy
|
|
30
|
+
*/
|
|
31
|
+
level?: LayerLevel;
|
|
32
|
+
}
|
|
33
|
+
export type LayerProps<T extends React.ElementType> = PolymorphicProps<T, LayerBaseProps>;
|
|
34
|
+
export interface LayerComponent {
|
|
35
|
+
<T extends React.ElementType>(props: LayerProps<T>, context?: any): React.ReactElement<any, any> | null;
|
|
36
|
+
}
|
|
37
|
+
export declare const Layer: LayerComponent;
|
|
38
|
+
export {};
|
|
@@ -15,6 +15,7 @@ var PropTypes = require('prop-types');
|
|
|
15
15
|
var cx = require('classnames');
|
|
16
16
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
17
17
|
var LayerContext = require('./LayerContext.js');
|
|
18
|
+
var LayerLevel = require('./LayerLevel.js');
|
|
18
19
|
|
|
19
20
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
20
21
|
|
|
@@ -22,9 +23,6 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
22
23
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
23
24
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
24
25
|
|
|
25
|
-
const levels = ['one', 'two', 'three'];
|
|
26
|
-
const MAX_LEVEL = levels.length - 1;
|
|
27
|
-
|
|
28
26
|
/**
|
|
29
27
|
* A custom hook that will return information about the current layer. A common
|
|
30
28
|
* field to pull from this is the `level` for the layer that the component that
|
|
@@ -36,9 +34,9 @@ function useLayer() {
|
|
|
36
34
|
level
|
|
37
35
|
};
|
|
38
36
|
}
|
|
39
|
-
const
|
|
37
|
+
const LayerRenderFunction = /*#__PURE__*/React__default["default"].forwardRef(function Layer(_ref, ref) {
|
|
40
38
|
let {
|
|
41
|
-
as
|
|
39
|
+
as = 'div',
|
|
42
40
|
className: customClassName,
|
|
43
41
|
children,
|
|
44
42
|
level: overrideLevel,
|
|
@@ -47,9 +45,10 @@ const Layer = /*#__PURE__*/React__default["default"].forwardRef(function Layer(_
|
|
|
47
45
|
const contextLevel = React__default["default"].useContext(LayerContext.LayerContext);
|
|
48
46
|
const level = overrideLevel ?? contextLevel;
|
|
49
47
|
const prefix = usePrefix.usePrefix();
|
|
50
|
-
const className = cx__default["default"](`${prefix}--layer-${levels[level]}`, customClassName);
|
|
51
|
-
// The level should be between
|
|
52
|
-
const value = Math.max(
|
|
48
|
+
const className = cx__default["default"](`${prefix}--layer-${LayerLevel.levels[level]}`, customClassName);
|
|
49
|
+
// The level should be between MIN_LEVEL and MAX_LEVEL
|
|
50
|
+
const value = Math.max(LayerLevel.MIN_LEVEL, Math.min(level + 1, LayerLevel.MAX_LEVEL));
|
|
51
|
+
const BaseComponent = as;
|
|
53
52
|
return /*#__PURE__*/React__default["default"].createElement(LayerContext.LayerContext.Provider, {
|
|
54
53
|
value: value
|
|
55
54
|
}, /*#__PURE__*/React__default["default"].createElement(BaseComponent, _rollupPluginBabelHelpers["extends"]({
|
|
@@ -58,7 +57,8 @@ const Layer = /*#__PURE__*/React__default["default"].forwardRef(function Layer(_
|
|
|
58
57
|
className: className
|
|
59
58
|
}), children));
|
|
60
59
|
});
|
|
61
|
-
|
|
60
|
+
LayerRenderFunction.displayName = 'Layer';
|
|
61
|
+
LayerRenderFunction.propTypes = {
|
|
62
62
|
/**
|
|
63
63
|
* Specify a custom component or element to be rendered as the top-level
|
|
64
64
|
* element in the component
|
|
@@ -78,6 +78,7 @@ Layer.propTypes = {
|
|
|
78
78
|
*/
|
|
79
79
|
level: PropTypes__default["default"].oneOf([0, 1, 2])
|
|
80
80
|
};
|
|
81
|
+
const Layer = LayerRenderFunction;
|
|
81
82
|
|
|
82
83
|
exports.Layer = Layer;
|
|
83
84
|
exports.useLayer = useLayer;
|
|
@@ -179,7 +179,8 @@ const MenuItem = /*#__PURE__*/React__default["default"].forwardRef(function Menu
|
|
|
179
179
|
className: `${prefix}--menu-item__icon`
|
|
180
180
|
}, iconsAllowed && IconElement && /*#__PURE__*/React__default["default"].createElement(IconElement, null)), /*#__PURE__*/React__default["default"].createElement(Text.Text, {
|
|
181
181
|
as: "div",
|
|
182
|
-
className: `${prefix}--menu-item__label
|
|
182
|
+
className: `${prefix}--menu-item__label`,
|
|
183
|
+
title: label
|
|
183
184
|
}, label), shortcut && !hasChildren && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
184
185
|
className: `${prefix}--menu-item__shortcut`
|
|
185
186
|
}, shortcut), hasChildren && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
@@ -28,7 +28,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
28
28
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
29
29
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
30
30
|
|
|
31
|
-
const spacing =
|
|
31
|
+
const spacing = 0; // top and bottom spacing between the button and the menu. in px
|
|
32
32
|
const validButtonKinds = ['primary', 'tertiary', 'ghost'];
|
|
33
33
|
const defaultButtonKind = 'primary';
|
|
34
34
|
const MenuButton = /*#__PURE__*/React__default["default"].forwardRef(function MenuButton(_ref, forwardRef) {
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import { ReactAttr } from '../../types/common';
|
|
9
|
+
import { InlineLoadingStatus } from '../InlineLoading/InlineLoading';
|
|
9
10
|
export declare const ModalSizes: readonly ["xs", "sm", "md", "lg"];
|
|
10
11
|
export type ModalSize = (typeof ModalSizes)[number];
|
|
11
12
|
export interface ModalSecondaryButton {
|
|
@@ -65,7 +66,7 @@ export interface ModalProps extends ReactAttr<HTMLDivElement> {
|
|
|
65
66
|
/**
|
|
66
67
|
* Specify loading status
|
|
67
68
|
*/
|
|
68
|
-
loadingStatus?:
|
|
69
|
+
loadingStatus?: InlineLoadingStatus;
|
|
69
70
|
/**
|
|
70
71
|
* Specify a label to be read by screen readers on the modal root node
|
|
71
72
|
*/
|
|
@@ -87,7 +88,7 @@ export interface ModalProps extends ReactAttr<HTMLDivElement> {
|
|
|
87
88
|
* Specify an optional handler to be invoked when loading is
|
|
88
89
|
* successful
|
|
89
90
|
*/
|
|
90
|
-
onLoadingSuccess?:
|
|
91
|
+
onLoadingSuccess?: () => void;
|
|
91
92
|
/**
|
|
92
93
|
* Specify a handler for closing modal.
|
|
93
94
|
* The handler should care of closing modal, e.g. changing `open` prop.
|
|
@@ -205,7 +205,7 @@ const FilterableMultiSelect = /*#__PURE__*/React__default["default"].forwardRef(
|
|
|
205
205
|
|
|
206
206
|
// Slug is always size `mini`
|
|
207
207
|
let normalizedSlug;
|
|
208
|
-
if (slug) {
|
|
208
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
209
209
|
normalizedSlug = /*#__PURE__*/React__default["default"].cloneElement(slug, {
|
|
210
210
|
size: 'mini'
|
|
211
211
|
});
|
|
@@ -557,7 +557,7 @@ FilterableMultiSelect.propTypes = {
|
|
|
557
557
|
*/
|
|
558
558
|
size: ListBoxPropTypes.ListBoxSize,
|
|
559
559
|
/**
|
|
560
|
-
* Provide a `Slug` component to be rendered inside the `FilterableMultiSelect` component
|
|
560
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `FilterableMultiSelect` component
|
|
561
561
|
*/
|
|
562
562
|
slug: PropTypes__default["default"].node,
|
|
563
563
|
...MultiSelectPropTypes.sortingPropTypes,
|
|
@@ -164,7 +164,7 @@ export interface MultiSelectProps<ItemType> extends MultiSelectSortingProps<Item
|
|
|
164
164
|
*/
|
|
165
165
|
size?: ListBoxSize;
|
|
166
166
|
/**
|
|
167
|
-
* Provide a `Slug` component to be rendered inside the `MultiSelect` component
|
|
167
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `MultiSelect` component
|
|
168
168
|
*/
|
|
169
169
|
slug?: ReactNodeLike;
|
|
170
170
|
/**
|
|
@@ -248,6 +248,9 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref
|
|
|
248
248
|
if (changes.selectedItem === undefined) {
|
|
249
249
|
break;
|
|
250
250
|
}
|
|
251
|
+
if (Array.isArray(changes.selectedItem)) {
|
|
252
|
+
break;
|
|
253
|
+
}
|
|
251
254
|
onItemChange(changes.selectedItem);
|
|
252
255
|
return {
|
|
253
256
|
...changes,
|
|
@@ -309,7 +312,7 @@ const MultiSelect = /*#__PURE__*/React__default["default"].forwardRef((_ref, ref
|
|
|
309
312
|
|
|
310
313
|
// Slug is always size `mini`
|
|
311
314
|
let normalizedSlug;
|
|
312
|
-
if (slug) {
|
|
315
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
313
316
|
normalizedSlug = /*#__PURE__*/React__default["default"].cloneElement(slug, {
|
|
314
317
|
size: 'mini'
|
|
315
318
|
});
|
|
@@ -518,7 +521,7 @@ MultiSelect.propTypes = {
|
|
|
518
521
|
*/
|
|
519
522
|
size: ListBoxPropTypes.ListBoxSize,
|
|
520
523
|
/**
|
|
521
|
-
* Provide a `Slug` component to be rendered inside the `MultiSelect` component
|
|
524
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `MultiSelect` component
|
|
522
525
|
*/
|
|
523
526
|
slug: PropTypes__default["default"].node,
|
|
524
527
|
/**
|
|
@@ -594,6 +594,7 @@ function ActionableNotification(_ref6) {
|
|
|
594
594
|
className: `${prefix}--actionable-notification__subtitle`,
|
|
595
595
|
id: subtitleId
|
|
596
596
|
}, subtitle), children))), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
597
|
+
className: `${prefix}--actionable-notification__button-wrapper`,
|
|
597
598
|
ref: innerModal
|
|
598
599
|
}, actionButtonLabel && /*#__PURE__*/React__default["default"].createElement(NotificationActionButton, {
|
|
599
600
|
onClick: onActionButtonClick,
|
|
@@ -109,7 +109,7 @@ export interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInp
|
|
|
109
109
|
*/
|
|
110
110
|
size?: 'sm' | 'md' | 'lg';
|
|
111
111
|
/**
|
|
112
|
-
* Provide a `Slug` component to be rendered inside the `TextInput` component
|
|
112
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `TextInput` component
|
|
113
113
|
*/
|
|
114
114
|
slug?: ReactNodeLike;
|
|
115
115
|
/**
|
|
@@ -182,7 +182,7 @@ const NumberInput = /*#__PURE__*/React__default["default"].forwardRef(function N
|
|
|
182
182
|
|
|
183
183
|
// Slug is always size `mini`
|
|
184
184
|
let normalizedSlug;
|
|
185
|
-
if (slug) {
|
|
185
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
186
186
|
normalizedSlug = /*#__PURE__*/React__default["default"].cloneElement(slug, {
|
|
187
187
|
size: 'mini'
|
|
188
188
|
});
|
|
@@ -190,7 +190,7 @@ const NumberInput = /*#__PURE__*/React__default["default"].forwardRef(function N
|
|
|
190
190
|
|
|
191
191
|
// Need to update the internal value when the revert button is clicked
|
|
192
192
|
let isRevertActive;
|
|
193
|
-
if (slug) {
|
|
193
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
194
194
|
isRevertActive = normalizedSlug.props.revertActive;
|
|
195
195
|
}
|
|
196
196
|
React.useEffect(() => {
|
|
@@ -370,7 +370,7 @@ NumberInput.propTypes = {
|
|
|
370
370
|
*/
|
|
371
371
|
size: PropTypes__default["default"].oneOf(['sm', 'md', 'lg']),
|
|
372
372
|
/**
|
|
373
|
-
* Provide a `Slug` component to be rendered inside the `NumberInput` component
|
|
373
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `NumberInput` component
|
|
374
374
|
*/
|
|
375
375
|
slug: PropTypes__default["default"].node,
|
|
376
376
|
/**
|
|
@@ -61,6 +61,10 @@ function ProgressIndicator(_ref) {
|
|
|
61
61
|
return /*#__PURE__*/React__default["default"].createElement("ul", _rollupPluginBabelHelpers["extends"]({
|
|
62
62
|
className: className
|
|
63
63
|
}, rest), React__default["default"].Children.map(children, (child, index) => {
|
|
64
|
+
if (! /*#__PURE__*/React__default["default"].isValidElement(child)) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
|
|
64
68
|
// only setup click handlers if onChange event is passed
|
|
65
69
|
const onClick = onChange ? () => onChange(index) : undefined;
|
|
66
70
|
if (index === currentIndex) {
|
|
@@ -56,7 +56,7 @@ export interface RadioButtonProps extends Omit<React.InputHTMLAttributes<HTMLInp
|
|
|
56
56
|
*/
|
|
57
57
|
onClick?: (evt: React.MouseEvent<HTMLInputElement>) => void;
|
|
58
58
|
/**
|
|
59
|
-
* Provide a `Slug` component to be rendered inside the `RadioButton` component
|
|
59
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `RadioButton` component
|
|
60
60
|
*/
|
|
61
61
|
slug?: ReactNodeLike;
|
|
62
62
|
/**
|
|
@@ -130,7 +130,7 @@ RadioButton.propTypes = {
|
|
|
130
130
|
*/
|
|
131
131
|
onClick: PropTypes__default["default"].func,
|
|
132
132
|
/**
|
|
133
|
-
* Provide a `Slug` component to be rendered inside the `RadioButton` component
|
|
133
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `RadioButton` component
|
|
134
134
|
*/
|
|
135
135
|
slug: PropTypes__default["default"].node,
|
|
136
136
|
/**
|
|
@@ -64,7 +64,7 @@ export interface RadioButtonGroupProps extends Omit<React.InputHTMLAttributes<HT
|
|
|
64
64
|
*/
|
|
65
65
|
readOnly?: boolean;
|
|
66
66
|
/**
|
|
67
|
-
* Provide a `Slug` component to be rendered inside the `RadioButtonGroup` component
|
|
67
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `RadioButtonGroup` component
|
|
68
68
|
*/
|
|
69
69
|
slug?: ReactNodeLike;
|
|
70
70
|
/**
|
|
@@ -114,7 +114,7 @@ const RadioButtonGroup = /*#__PURE__*/React__default["default"].forwardRef((prop
|
|
|
114
114
|
|
|
115
115
|
// Slug is always size `mini`
|
|
116
116
|
let normalizedSlug;
|
|
117
|
-
if (slug) {
|
|
117
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
118
118
|
normalizedSlug = /*#__PURE__*/React__default["default"].cloneElement(slug, {
|
|
119
119
|
size: 'mini',
|
|
120
120
|
kind: 'default'
|
|
@@ -198,7 +198,7 @@ RadioButtonGroup.propTypes = {
|
|
|
198
198
|
*/
|
|
199
199
|
readOnly: PropTypes__default["default"].bool,
|
|
200
200
|
/**
|
|
201
|
-
* Provide a `Slug` component to be rendered inside the `RadioButtonGroup` component
|
|
201
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `RadioButtonGroup` component
|
|
202
202
|
*/
|
|
203
203
|
slug: PropTypes__default["default"].node,
|
|
204
204
|
/**
|
|
@@ -78,7 +78,7 @@ interface SelectProps extends Omit<ComponentPropsWithRef<'select'>, ExcludedAttr
|
|
|
78
78
|
*/
|
|
79
79
|
size?: 'sm' | 'md' | 'lg';
|
|
80
80
|
/**
|
|
81
|
-
* Provide a `Slug` component to be rendered inside the `Dropdown` component
|
|
81
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `Dropdown` component
|
|
82
82
|
*/
|
|
83
83
|
slug?: ReactNodeLike;
|
|
84
84
|
/**
|
|
@@ -138,7 +138,7 @@ const Select = /*#__PURE__*/React__default["default"].forwardRef(function Select
|
|
|
138
138
|
|
|
139
139
|
// Slug is always size `mini`
|
|
140
140
|
let normalizedSlug;
|
|
141
|
-
if (slug) {
|
|
141
|
+
if (slug && slug['type']?.displayName === 'Slug') {
|
|
142
142
|
normalizedSlug = /*#__PURE__*/React__default["default"].cloneElement(slug, {
|
|
143
143
|
size: 'mini'
|
|
144
144
|
});
|
|
@@ -255,7 +255,7 @@ Select.propTypes = {
|
|
|
255
255
|
*/
|
|
256
256
|
size: PropTypes__default["default"].oneOf(['sm', 'md', 'lg']),
|
|
257
257
|
/**
|
|
258
|
-
* Provide a `Slug` component to be rendered inside the `Select` component
|
|
258
|
+
* **Experimental**: Provide a `Slug` component to be rendered inside the `Select` component
|
|
259
259
|
*/
|
|
260
260
|
slug: PropTypes__default["default"].node,
|
|
261
261
|
/**
|
|
@@ -14,6 +14,7 @@ var PropTypes = require('prop-types');
|
|
|
14
14
|
var React = require('react');
|
|
15
15
|
var cx = require('classnames');
|
|
16
16
|
var usePrefix = require('../../internal/usePrefix.js');
|
|
17
|
+
var SliderHandles = require('./SliderHandles.js');
|
|
17
18
|
|
|
18
19
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
19
20
|
|
|
@@ -21,6 +22,7 @@ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
|
21
22
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
22
23
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
23
24
|
|
|
25
|
+
var _LowerHandle, _UpperHandle, _UpperHandle2, _LowerHandle2;
|
|
24
26
|
const SliderSkeleton = _ref => {
|
|
25
27
|
let {
|
|
26
28
|
hideLabel,
|
|
@@ -29,8 +31,10 @@ const SliderSkeleton = _ref => {
|
|
|
29
31
|
...rest
|
|
30
32
|
} = _ref;
|
|
31
33
|
const prefix = usePrefix.usePrefix();
|
|
34
|
+
const isRtl = document?.dir === 'rtl';
|
|
32
35
|
const containerClasses = cx__default["default"](`${prefix}--slider-container`, `${prefix}--skeleton`, {
|
|
33
|
-
[`${prefix}--slider-container--two-handles`]: twoHandles
|
|
36
|
+
[`${prefix}--slider-container--two-handles`]: twoHandles,
|
|
37
|
+
[`${prefix}--slider-container--rtl`]: isRtl
|
|
34
38
|
});
|
|
35
39
|
const lowerThumbClasses = cx__default["default"](`${prefix}--slider__thumb`, {
|
|
36
40
|
[`${prefix}--slider__thumb--lower`]: twoHandles
|
|
@@ -38,6 +42,12 @@ const SliderSkeleton = _ref => {
|
|
|
38
42
|
const upperThumbClasses = cx__default["default"](`${prefix}--slider__thumb`, {
|
|
39
43
|
[`${prefix}--slider__thumb--upper`]: twoHandles
|
|
40
44
|
});
|
|
45
|
+
const lowerThumbWrapperClasses = cx__default["default"](`${prefix}--slider__thumb-wrapper`, {
|
|
46
|
+
[`${prefix}--slider__thumb-wrapper--lower`]: twoHandles
|
|
47
|
+
});
|
|
48
|
+
const upperThumbWrapperClasses = cx__default["default"](`${prefix}--slider__thumb-wrapper`, {
|
|
49
|
+
[`${prefix}--slider__thumb-wrapper--upper`]: twoHandles
|
|
50
|
+
});
|
|
41
51
|
return /*#__PURE__*/React__default["default"].createElement("div", _rollupPluginBabelHelpers["extends"]({
|
|
42
52
|
className: cx__default["default"](`${prefix}--form-item`, className)
|
|
43
53
|
}, rest), !hideLabel && /*#__PURE__*/React__default["default"].createElement("span", {
|
|
@@ -53,10 +63,14 @@ const SliderSkeleton = _ref => {
|
|
|
53
63
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
54
64
|
className: `${prefix}--slider__filled-track`
|
|
55
65
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
66
|
+
className: lowerThumbWrapperClasses
|
|
67
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
56
68
|
className: lowerThumbClasses
|
|
57
|
-
}), twoHandles ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
69
|
+
}, twoHandles && !isRtl ? _LowerHandle || (_LowerHandle = /*#__PURE__*/React__default["default"].createElement(SliderHandles.LowerHandle, null)) : twoHandles && isRtl ? _UpperHandle || (_UpperHandle = /*#__PURE__*/React__default["default"].createElement(SliderHandles.UpperHandle, null)) : undefined)), twoHandles ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
70
|
+
className: upperThumbWrapperClasses
|
|
71
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
58
72
|
className: upperThumbClasses
|
|
59
|
-
}) : undefined), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
73
|
+
}, twoHandles && !isRtl ? _UpperHandle2 || (_UpperHandle2 = /*#__PURE__*/React__default["default"].createElement(SliderHandles.UpperHandle, null)) : twoHandles && isRtl ? _LowerHandle2 || (_LowerHandle2 = /*#__PURE__*/React__default["default"].createElement(SliderHandles.LowerHandle, null)) : undefined)) : undefined), /*#__PURE__*/React__default["default"].createElement("span", {
|
|
60
74
|
className: `${prefix}--slider__range-label`
|
|
61
75
|
})));
|
|
62
76
|
};
|