@salutejs/plasma-core 1.226.1-next-sbcom.0 → 1.227.0-dev.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/__helpers/IconPlaceholder.js +6 -9
- package/__helpers/index.js +1 -1
- package/collectPackageInfo.js +4 -4
- package/components/Badge/Badge.js +30 -103
- package/components/Badge/index.js +1 -1
- package/components/Basebox/Basebox.js +33 -42
- package/components/Basebox/index.js +1 -1
- package/components/Button/Button.js +28 -67
- package/components/Button/Button.mixins.js +22 -76
- package/components/Button/Button.props.js +5 -5
- package/components/Button/createButton.js +14 -145
- package/components/Button/index.js +4 -4
- package/components/Card/Card.js +34 -162
- package/components/Card/CardBody.js +4 -4
- package/components/Card/CardContent.js +14 -23
- package/components/Card/CardMedia.js +20 -91
- package/components/Card/CardPrice.js +18 -60
- package/components/Card/CardTypography.js +43 -52
- package/components/Card/index.js +5 -5
- package/components/Carousel/Carousel.js +46 -64
- package/components/Carousel/CarouselItem.js +21 -93
- package/components/Carousel/hooks.js +62 -121
- package/components/Carousel/index.js +3 -3
- package/components/Carousel/utils.js +59 -73
- package/components/Fade/Fade.js +6 -9
- package/components/Fade/index.js +1 -1
- package/components/Field/Field.js +48 -63
- package/components/Field/Field.statuses.js +3 -3
- package/components/Field/index.js +2 -2
- package/components/Image/Image.js +34 -115
- package/components/Image/index.js +1 -1
- package/components/Input/Input.js +7 -7
- package/components/Input/Input.mixins.js +9 -12
- package/components/Input/index.js +1 -1
- package/components/ModalBase/ModalBase.js +22 -100
- package/components/ModalBase/ModalBaseContext.js +6 -9
- package/components/ModalBase/ModalOverlay.js +28 -111
- package/components/ModalBase/hooks.js +15 -43
- package/components/ModalBase/index.js +2 -2
- package/components/PaginationDots/PaginationDot.js +11 -17
- package/components/PaginationDots/PaginationDots.js +4 -7
- package/components/PaginationDots/index.js +3 -3
- package/components/PaginationDots/usePaginationDots.js +10 -11
- package/components/Popup/Popup.js +52 -205
- package/components/Popup/index.js +1 -1
- package/components/PopupBase/PopupBase.js +35 -169
- package/components/PopupBase/PopupBaseContext.js +26 -86
- package/components/PopupBase/PopupBaseRoot.js +31 -169
- package/components/PopupBase/hooks.js +23 -97
- package/components/PopupBase/index.js +3 -3
- package/components/PopupBase/utils.js +32 -78
- package/components/Price/Price.js +15 -90
- package/components/Price/index.js +1 -1
- package/components/RadioGroup/RadioGroup.js +6 -127
- package/components/RadioGroup/index.js +1 -1
- package/components/SSRProvider/SSRProvider.js +4 -5
- package/components/SSRProvider/index.js +1 -1
- package/components/Skeleton/LineSkeleton.js +23 -95
- package/components/Skeleton/RectSkeleton.js +20 -93
- package/components/Skeleton/Skeleton.js +2 -2
- package/components/Skeleton/TextSkeleton.js +11 -55
- package/components/Skeleton/index.js +3 -3
- package/components/Slider/Double.js +52 -203
- package/components/Slider/Handle.js +28 -158
- package/components/Slider/Single.js +29 -177
- package/components/Slider/Slider.js +5 -7
- package/components/Slider/SliderBase.js +39 -48
- package/components/Slider/ThumbBase.js +19 -95
- package/components/Slider/index.js +3 -3
- package/components/Slider/utils.js +2 -2
- package/components/Spinner/Spinner.js +28 -100
- package/components/Spinner/SpinnerSvg.js +9 -78
- package/components/Spinner/index.js +1 -1
- package/components/Switch/Switch.js +49 -220
- package/components/Switch/index.js +1 -1
- package/components/Tabs/TabItem.js +33 -168
- package/components/Tabs/Tabs.js +32 -170
- package/components/Tabs/TabsContext.js +12 -42
- package/components/Tabs/createTabsController.js +33 -168
- package/components/Tabs/index.js +4 -4
- package/components/TextArea/TextArea.js +20 -30
- package/components/TextArea/index.js +1 -1
- package/components/TextField/index.js +3 -3
- package/components/Toast/Toast.js +15 -16
- package/components/Toast/ToastContext.js +4 -8
- package/components/Toast/ToastController.js +44 -101
- package/components/Toast/ToastProvider.js +37 -142
- package/components/Toast/index.js +3 -3
- package/components/Toast/useToast.js +6 -6
- package/components/Typography/Body.js +18 -18
- package/components/Typography/Button.js +13 -13
- package/components/Typography/Caption.js +8 -8
- package/components/Typography/Display.js +18 -18
- package/components/Typography/Footnote.js +13 -13
- package/components/Typography/Headline.js +43 -43
- package/components/Typography/Paragraph.js +24 -24
- package/components/Typography/Underline.js +8 -8
- package/es/__helpers/IconPlaceholder.js +5 -8
- package/es/collectPackageInfo.js +3 -3
- package/es/components/Badge/Badge.js +27 -100
- package/es/components/Basebox/Basebox.js +28 -37
- package/es/components/Button/Button.js +24 -63
- package/es/components/Button/Button.mixins.js +19 -73
- package/es/components/Button/Button.props.js +3 -3
- package/es/components/Button/createButton.js +12 -143
- package/es/components/Card/Card.js +29 -157
- package/es/components/Card/CardBody.js +2 -2
- package/es/components/Card/CardContent.js +12 -21
- package/es/components/Card/CardMedia.js +17 -88
- package/es/components/Card/CardPrice.js +13 -55
- package/es/components/Card/CardTypography.js +43 -52
- package/es/components/Carousel/Carousel.js +45 -63
- package/es/components/Carousel/CarouselItem.js +18 -90
- package/es/components/Carousel/hooks.js +58 -117
- package/es/components/Carousel/utils.js +58 -72
- package/es/components/Fade/Fade.js +5 -8
- package/es/components/Field/Field.js +44 -59
- package/es/components/Field/Field.statuses.js +4 -4
- package/es/components/Image/Image.js +31 -112
- package/es/components/Input/Input.js +4 -4
- package/es/components/Input/Input.mixins.js +6 -9
- package/es/components/ModalBase/ModalBase.js +16 -94
- package/es/components/ModalBase/ModalBaseContext.js +6 -9
- package/es/components/ModalBase/ModalOverlay.js +23 -106
- package/es/components/ModalBase/hooks.js +12 -40
- package/es/components/PaginationDots/PaginationDot.js +9 -15
- package/es/components/PaginationDots/PaginationDots.js +3 -6
- package/es/components/PaginationDots/usePaginationDots.js +9 -10
- package/es/components/Popup/Popup.js +48 -201
- package/es/components/PopupBase/PopupBase.js +27 -161
- package/es/components/PopupBase/PopupBaseContext.js +25 -85
- package/es/components/PopupBase/PopupBaseRoot.js +26 -164
- package/es/components/PopupBase/hooks.js +21 -95
- package/es/components/PopupBase/utils.js +31 -77
- package/es/components/Price/Price.js +12 -87
- package/es/components/RadioGroup/RadioGroup.js +5 -126
- package/es/components/SSRProvider/SSRProvider.js +3 -4
- package/es/components/Skeleton/LineSkeleton.js +18 -90
- package/es/components/Skeleton/RectSkeleton.js +16 -89
- package/es/components/Skeleton/Skeleton.js +2 -2
- package/es/components/Skeleton/TextSkeleton.js +7 -51
- package/es/components/Slider/Double.js +49 -200
- package/es/components/Slider/Handle.js +23 -153
- package/es/components/Slider/Single.js +26 -174
- package/es/components/Slider/Slider.js +2 -4
- package/es/components/Slider/SliderBase.js +36 -45
- package/es/components/Slider/ThumbBase.js +16 -92
- package/es/components/Slider/index.js +1 -1
- package/es/components/Slider/utils.js +2 -2
- package/es/components/Spinner/Spinner.js +23 -95
- package/es/components/Spinner/SpinnerSvg.js +8 -77
- package/es/components/Switch/Switch.js +45 -216
- package/es/components/Tabs/TabItem.js +28 -163
- package/es/components/Tabs/Tabs.js +28 -166
- package/es/components/Tabs/TabsContext.js +11 -41
- package/es/components/Tabs/createTabsController.js +28 -163
- package/es/components/TextArea/TextArea.js +18 -28
- package/es/components/Toast/Toast.js +10 -11
- package/es/components/Toast/ToastContext.js +3 -7
- package/es/components/Toast/ToastController.js +38 -95
- package/es/components/Toast/ToastProvider.js +34 -139
- package/es/components/Toast/useToast.js +4 -4
- package/es/components/Typography/Body.js +15 -15
- package/es/components/Typography/Button.js +10 -10
- package/es/components/Typography/Caption.js +5 -5
- package/es/components/Typography/Display.js +15 -15
- package/es/components/Typography/Footnote.js +10 -10
- package/es/components/Typography/Headline.js +40 -40
- package/es/components/Typography/Paragraph.js +21 -21
- package/es/components/Typography/Underline.js +5 -5
- package/es/hocs/withAutoFocus.js +8 -78
- package/es/hocs/withSkeleton.js +5 -10
- package/es/hooks/useDebouncedFunction.js +4 -36
- package/es/hooks/useFocusTrap.js +18 -21
- package/es/hooks/useForkRef.js +3 -3
- package/es/hooks/useIsomorphicLayoutEffect.js +1 -1
- package/es/hooks/useResizeObserver.js +8 -8
- package/es/hooks/useUniqId.js +6 -52
- package/es/mixins/addFocus.js +17 -22
- package/es/mixins/applyDisabled.js +6 -9
- package/es/mixins/applyEllipsis.js +2 -4
- package/es/mixins/applyMaxLines.js +3 -6
- package/es/mixins/applyNoSelect.js +2 -4
- package/es/mixins/applyOutline.js +2 -4
- package/es/mixins/applyRoundness.js +4 -7
- package/es/mixins/applyScrollSnap.js +4 -7
- package/es/mixins/applySkeletonGradient.js +6 -9
- package/es/mixins/applyView.js +2 -5
- package/es/mixins/blur.js +2 -5
- package/es/mixins/shadows.js +1 -1
- package/es/tokens/colors.js +48 -48
- package/es/tokens/typography.js +18 -18
- package/es/utils/__tests__/formatters.test.js +2 -2
- package/es/utils/animatedScrollTo.js +24 -34
- package/es/utils/canUseDOM.js +1 -1
- package/es/utils/extractTextFrom.js +3 -7
- package/es/utils/focusManager.js +40 -47
- package/es/utils/formatCurrency.js +4 -4
- package/es/utils/formatters.js +6 -14
- package/es/utils/react.js +4 -4
- package/es/utils/roundness.js +2 -4
- package/es/utils/scopeTab.js +5 -5
- package/es/utils/setRef.js +1 -1
- package/es/utils/tabbable.js +16 -25
- package/es/utils/toCssSize.js +1 -3
- package/es/utils/transformStyles.js +5 -60
- package/hocs/index.js +2 -2
- package/hocs/withAutoFocus.js +9 -79
- package/hocs/withSkeleton.js +8 -13
- package/hooks/index.js +6 -6
- package/hooks/useDebouncedFunction.js +5 -37
- package/hooks/useFocusTrap.js +22 -25
- package/hooks/useForkRef.js +5 -5
- package/hooks/useIsomorphicLayoutEffect.js +3 -3
- package/hooks/useResizeObserver.js +9 -9
- package/hooks/useUniqId.js +8 -54
- package/mixins/addFocus.js +19 -24
- package/mixins/applyDisabled.js +7 -10
- package/mixins/applyEllipsis.js +3 -5
- package/mixins/applyMaxLines.js +4 -7
- package/mixins/applyNoSelect.js +3 -5
- package/mixins/applyOutline.js +3 -5
- package/mixins/applyRoundness.js +5 -8
- package/mixins/applyScrollSnap.js +5 -8
- package/mixins/applySkeletonGradient.js +8 -11
- package/mixins/applyView.js +3 -6
- package/mixins/blur.js +2 -5
- package/mixins/index.js +11 -11
- package/mixins/shadows.js +1 -1
- package/package.json +13 -18
- package/tokens/colors.js +48 -48
- package/tokens/typography.js +18 -18
- package/utils/__tests__/formatters.test.js +3 -3
- package/utils/animatedScrollTo.js +24 -34
- package/utils/canUseDOM.js +1 -1
- package/utils/extractTextFrom.js +4 -8
- package/utils/focusManager.js +41 -48
- package/utils/formatCurrency.js +4 -4
- package/utils/formatters.js +6 -14
- package/utils/index.js +10 -10
- package/utils/react.js +7 -7
- package/utils/roundness.js +2 -4
- package/utils/scopeTab.js +6 -6
- package/utils/setRef.js +1 -1
- package/utils/tabbable.js +16 -25
- package/utils/toCssSize.js +1 -3
- package/utils/transformStyles.js +5 -60
|
@@ -1,98 +1,25 @@
|
|
|
1
|
-
function _define_property(obj, key, value) {
|
|
2
|
-
if (key in obj) {
|
|
3
|
-
Object.defineProperty(obj, key, {
|
|
4
|
-
value: value,
|
|
5
|
-
enumerable: true,
|
|
6
|
-
configurable: true,
|
|
7
|
-
writable: true
|
|
8
|
-
});
|
|
9
|
-
} else {
|
|
10
|
-
obj[key] = value;
|
|
11
|
-
}
|
|
12
|
-
return obj;
|
|
13
|
-
}
|
|
14
|
-
function _object_spread(target) {
|
|
15
|
-
for(var i = 1; i < arguments.length; i++){
|
|
16
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
17
|
-
var ownKeys = Object.keys(source);
|
|
18
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
19
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
20
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
21
|
-
}));
|
|
22
|
-
}
|
|
23
|
-
ownKeys.forEach(function(key) {
|
|
24
|
-
_define_property(target, key, source[key]);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
return target;
|
|
28
|
-
}
|
|
29
|
-
function _object_without_properties(source, excluded) {
|
|
30
|
-
if (source == null) return {};
|
|
31
|
-
var target = {}, sourceKeys, key, i;
|
|
32
|
-
if (typeof Reflect !== "undefined" && Reflect.ownKeys) {
|
|
33
|
-
sourceKeys = Reflect.ownKeys(source);
|
|
34
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
35
|
-
key = sourceKeys[i];
|
|
36
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
37
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
38
|
-
target[key] = source[key];
|
|
39
|
-
}
|
|
40
|
-
return target;
|
|
41
|
-
}
|
|
42
|
-
target = _object_without_properties_loose(source, excluded);
|
|
43
|
-
if (Object.getOwnPropertySymbols) {
|
|
44
|
-
sourceKeys = Object.getOwnPropertySymbols(source);
|
|
45
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
46
|
-
key = sourceKeys[i];
|
|
47
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
48
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
49
|
-
target[key] = source[key];
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
return target;
|
|
53
|
-
}
|
|
54
|
-
function _object_without_properties_loose(source, excluded) {
|
|
55
|
-
if (source == null) return {};
|
|
56
|
-
var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
|
|
57
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
58
|
-
key = sourceKeys[i];
|
|
59
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
60
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
61
|
-
target[key] = source[key];
|
|
62
|
-
}
|
|
63
|
-
return target;
|
|
64
|
-
}
|
|
65
1
|
import React from 'react';
|
|
66
2
|
import styled, { css } from 'styled-components';
|
|
67
3
|
import { applySkeletonGradient, applyRoundness } from '../../mixins';
|
|
68
4
|
import { DEFAULT_ROUNDNESS } from './Skeleton';
|
|
69
|
-
|
|
5
|
+
const StyledRectSkeleton = styled.div.withConfig({
|
|
70
6
|
displayName: "RectSkeleton__StyledRectSkeleton",
|
|
71
7
|
componentId: "sc-b64b4dbc-0"
|
|
72
8
|
})([
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
], applyRoundness, applySkeletonGradient,
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
";"
|
|
83
|
-
], $width, $height);
|
|
84
|
-
});
|
|
9
|
+
``,
|
|
10
|
+
`;`,
|
|
11
|
+
`;position:relative;overflow:hidden;`,
|
|
12
|
+
``
|
|
13
|
+
], applyRoundness, applySkeletonGradient, ({ $width, $height })=>css([
|
|
14
|
+
`width:`,
|
|
15
|
+
`;height:`,
|
|
16
|
+
`;`
|
|
17
|
+
], $width, $height));
|
|
85
18
|
/**
|
|
86
19
|
* Компонент для создания прямоугольного плейсхолдера.
|
|
87
|
-
*/ export
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
return /*#__PURE__*/ React.createElement(StyledRectSkeleton, _object_spread({
|
|
94
|
-
$width: typeof width === 'string' ? width : "".concat(width, "px"),
|
|
95
|
-
$height: typeof height === 'string' ? height : "".concat(height, "px"),
|
|
96
|
-
roundness: roundness
|
|
97
|
-
}, rest));
|
|
98
|
-
};
|
|
20
|
+
*/ export const RectSkeleton = ({ width, height, roundness = DEFAULT_ROUNDNESS, ...rest })=>/*#__PURE__*/ React.createElement(StyledRectSkeleton, {
|
|
21
|
+
$width: typeof width === 'string' ? width : `${width}px`,
|
|
22
|
+
$height: typeof height === 'string' ? height : `${height}px`,
|
|
23
|
+
roundness: roundness,
|
|
24
|
+
...rest
|
|
25
|
+
});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export const DEFAULT_TEXT_SIZE = 'body1';
|
|
2
|
+
export const DEFAULT_ROUNDNESS = 16;
|
|
@@ -1,44 +1,8 @@
|
|
|
1
|
-
function _object_without_properties(source, excluded) {
|
|
2
|
-
if (source == null) return {};
|
|
3
|
-
var target = {}, sourceKeys, key, i;
|
|
4
|
-
if (typeof Reflect !== "undefined" && Reflect.ownKeys) {
|
|
5
|
-
sourceKeys = Reflect.ownKeys(source);
|
|
6
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
7
|
-
key = sourceKeys[i];
|
|
8
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
9
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
10
|
-
target[key] = source[key];
|
|
11
|
-
}
|
|
12
|
-
return target;
|
|
13
|
-
}
|
|
14
|
-
target = _object_without_properties_loose(source, excluded);
|
|
15
|
-
if (Object.getOwnPropertySymbols) {
|
|
16
|
-
sourceKeys = Object.getOwnPropertySymbols(source);
|
|
17
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
18
|
-
key = sourceKeys[i];
|
|
19
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
20
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
21
|
-
target[key] = source[key];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return target;
|
|
25
|
-
}
|
|
26
|
-
function _object_without_properties_loose(source, excluded) {
|
|
27
|
-
if (source == null) return {};
|
|
28
|
-
var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
|
|
29
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
30
|
-
key = sourceKeys[i];
|
|
31
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
32
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
33
|
-
target[key] = source[key];
|
|
34
|
-
}
|
|
35
|
-
return target;
|
|
36
|
-
}
|
|
37
1
|
import React from 'react';
|
|
38
2
|
import styled from 'styled-components';
|
|
39
3
|
import { DEFAULT_TEXT_SIZE } from './Skeleton';
|
|
40
4
|
import { LineSkeleton } from './LineSkeleton';
|
|
41
|
-
|
|
5
|
+
const variousWidth = [
|
|
42
6
|
7.58,
|
|
43
7
|
5.27,
|
|
44
8
|
13.54,
|
|
@@ -55,24 +19,17 @@ var variousWidth = [
|
|
|
55
19
|
3.34,
|
|
56
20
|
7.96
|
|
57
21
|
];
|
|
58
|
-
|
|
22
|
+
const StyledTextSkeleton = styled.div.withConfig({
|
|
59
23
|
displayName: "TextSkeleton__StyledTextSkeleton",
|
|
60
24
|
componentId: "sc-90ee6487-0"
|
|
61
25
|
})([
|
|
62
|
-
|
|
26
|
+
`display:flex;flex-direction:column;width:100%;`
|
|
63
27
|
]);
|
|
64
28
|
/**
|
|
65
29
|
* Компонент для создания плейсхолдера нескольких строк текста.
|
|
66
30
|
* Размеры компонента задаются с помощью констант и соответствуют размерам [типографических элементов](/?path=/docs/).
|
|
67
|
-
*/ export
|
|
68
|
-
|
|
69
|
-
"lines",
|
|
70
|
-
"width",
|
|
71
|
-
"roundness",
|
|
72
|
-
"size"
|
|
73
|
-
]);
|
|
74
|
-
return /*#__PURE__*/ React.createElement(StyledTextSkeleton, props, Array.from(Array(lines), function(_, i) {
|
|
75
|
-
var w;
|
|
31
|
+
*/ export const TextSkeleton = ({ lines, width, roundness, size = DEFAULT_TEXT_SIZE, ...props })=>/*#__PURE__*/ React.createElement(StyledTextSkeleton, props, Array.from(Array(lines), (_, i)=>{
|
|
32
|
+
let w;
|
|
76
33
|
if (width) {
|
|
77
34
|
// TODO; https://github.com/salute-developers/plasma/issues/230
|
|
78
35
|
w = width;
|
|
@@ -91,12 +48,11 @@ var StyledTextSkeleton = styled.div.withConfig({
|
|
|
91
48
|
}
|
|
92
49
|
}
|
|
93
50
|
return /*#__PURE__*/ React.createElement(LineSkeleton, {
|
|
94
|
-
key:
|
|
51
|
+
key: `line:${i}`,
|
|
95
52
|
size: size,
|
|
96
53
|
roundness: roundness,
|
|
97
54
|
style: {
|
|
98
|
-
width:
|
|
55
|
+
width: `${w}%`
|
|
99
56
|
}
|
|
100
57
|
});
|
|
101
58
|
}));
|
|
102
|
-
};
|
|
@@ -1,160 +1,14 @@
|
|
|
1
|
-
function _array_like_to_array(arr, len) {
|
|
2
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
3
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
4
|
-
return arr2;
|
|
5
|
-
}
|
|
6
|
-
function _array_with_holes(arr) {
|
|
7
|
-
if (Array.isArray(arr)) return arr;
|
|
8
|
-
}
|
|
9
|
-
function _define_property(obj, key, value) {
|
|
10
|
-
if (key in obj) {
|
|
11
|
-
Object.defineProperty(obj, key, {
|
|
12
|
-
value: value,
|
|
13
|
-
enumerable: true,
|
|
14
|
-
configurable: true,
|
|
15
|
-
writable: true
|
|
16
|
-
});
|
|
17
|
-
} else {
|
|
18
|
-
obj[key] = value;
|
|
19
|
-
}
|
|
20
|
-
return obj;
|
|
21
|
-
}
|
|
22
|
-
function _iterable_to_array_limit(arr, i) {
|
|
23
|
-
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
24
|
-
if (_i == null) return;
|
|
25
|
-
var _arr = [];
|
|
26
|
-
var _n = true;
|
|
27
|
-
var _d = false;
|
|
28
|
-
var _s, _e;
|
|
29
|
-
try {
|
|
30
|
-
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
31
|
-
_arr.push(_s.value);
|
|
32
|
-
if (i && _arr.length === i) break;
|
|
33
|
-
}
|
|
34
|
-
} catch (err) {
|
|
35
|
-
_d = true;
|
|
36
|
-
_e = err;
|
|
37
|
-
} finally{
|
|
38
|
-
try {
|
|
39
|
-
if (!_n && _i["return"] != null) _i["return"]();
|
|
40
|
-
} finally{
|
|
41
|
-
if (_d) throw _e;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return _arr;
|
|
45
|
-
}
|
|
46
|
-
function _non_iterable_rest() {
|
|
47
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
48
|
-
}
|
|
49
|
-
function _object_spread(target) {
|
|
50
|
-
for(var i = 1; i < arguments.length; i++){
|
|
51
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
52
|
-
var ownKeys = Object.keys(source);
|
|
53
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
54
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
55
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
58
|
-
ownKeys.forEach(function(key) {
|
|
59
|
-
_define_property(target, key, source[key]);
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
return target;
|
|
63
|
-
}
|
|
64
|
-
function ownKeys(object, enumerableOnly) {
|
|
65
|
-
var keys = Object.keys(object);
|
|
66
|
-
if (Object.getOwnPropertySymbols) {
|
|
67
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
68
|
-
if (enumerableOnly) {
|
|
69
|
-
symbols = symbols.filter(function(sym) {
|
|
70
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
keys.push.apply(keys, symbols);
|
|
74
|
-
}
|
|
75
|
-
return keys;
|
|
76
|
-
}
|
|
77
|
-
function _object_spread_props(target, source) {
|
|
78
|
-
source = source != null ? source : {};
|
|
79
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
80
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
81
|
-
} else {
|
|
82
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
83
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
return target;
|
|
87
|
-
}
|
|
88
|
-
function _object_without_properties(source, excluded) {
|
|
89
|
-
if (source == null) return {};
|
|
90
|
-
var target = {}, sourceKeys, key, i;
|
|
91
|
-
if (typeof Reflect !== "undefined" && Reflect.ownKeys) {
|
|
92
|
-
sourceKeys = Reflect.ownKeys(source);
|
|
93
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
94
|
-
key = sourceKeys[i];
|
|
95
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
96
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
97
|
-
target[key] = source[key];
|
|
98
|
-
}
|
|
99
|
-
return target;
|
|
100
|
-
}
|
|
101
|
-
target = _object_without_properties_loose(source, excluded);
|
|
102
|
-
if (Object.getOwnPropertySymbols) {
|
|
103
|
-
sourceKeys = Object.getOwnPropertySymbols(source);
|
|
104
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
105
|
-
key = sourceKeys[i];
|
|
106
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
107
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
108
|
-
target[key] = source[key];
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return target;
|
|
112
|
-
}
|
|
113
|
-
function _object_without_properties_loose(source, excluded) {
|
|
114
|
-
if (source == null) return {};
|
|
115
|
-
var target = {}, sourceKeys = Object.getOwnPropertyNames(source), key, i;
|
|
116
|
-
for(i = 0; i < sourceKeys.length; i++){
|
|
117
|
-
key = sourceKeys[i];
|
|
118
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
119
|
-
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
120
|
-
target[key] = source[key];
|
|
121
|
-
}
|
|
122
|
-
return target;
|
|
123
|
-
}
|
|
124
|
-
function _sliced_to_array(arr, i) {
|
|
125
|
-
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
126
|
-
}
|
|
127
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
128
|
-
if (!o) return;
|
|
129
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
130
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
131
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
132
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
133
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
134
|
-
}
|
|
135
1
|
import React from 'react';
|
|
136
2
|
import { SliderBase } from './SliderBase';
|
|
137
3
|
import { Handle } from './Handle';
|
|
138
4
|
function getXCenterHandle(handle) {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
var handlePosition = handleRect.x;
|
|
5
|
+
const containerX = handle.parentElement?.getBoundingClientRect()?.x || 0;
|
|
6
|
+
const handleRect = handle.getBoundingClientRect();
|
|
7
|
+
const handlePosition = handleRect.x;
|
|
143
8
|
return handlePosition - containerX;
|
|
144
9
|
}
|
|
145
|
-
export
|
|
146
|
-
|
|
147
|
-
"min",
|
|
148
|
-
"max",
|
|
149
|
-
"value",
|
|
150
|
-
"disabled",
|
|
151
|
-
"onChangeCommitted",
|
|
152
|
-
"onChange",
|
|
153
|
-
"ariaLabel",
|
|
154
|
-
"multipleStepSize",
|
|
155
|
-
"thumb"
|
|
156
|
-
]);
|
|
157
|
-
var _React_useState = _sliced_to_array(React.useState({
|
|
10
|
+
export const Slider = ({ min, max, value, disabled, onChangeCommitted, onChange, ariaLabel, multipleStepSize = 10, thumb, ...rest })=>{
|
|
11
|
+
const [state, setState] = React.useState({
|
|
158
12
|
stepSize: 0,
|
|
159
13
|
railFillWidth: 0,
|
|
160
14
|
railFillXPosition: 0,
|
|
@@ -164,47 +18,44 @@ export var Slider = function Slider(_0) {
|
|
|
164
18
|
secondHandleZIndex: 101,
|
|
165
19
|
firstValue: value[0],
|
|
166
20
|
secondValue: value[1]
|
|
167
|
-
})
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
React.useEffect(
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
setState(
|
|
175
|
-
|
|
21
|
+
});
|
|
22
|
+
const firstHandleRef = React.useRef(null);
|
|
23
|
+
const secondHandleRef = React.useRef(null);
|
|
24
|
+
const { stepSize } = state;
|
|
25
|
+
React.useEffect(()=>{
|
|
26
|
+
const firstLocalValue = Math.min(Math.max(value[0], min), max) - min;
|
|
27
|
+
const secondLocalValue = Math.min(Math.max(value[1], min), max) - min;
|
|
28
|
+
setState((prevState)=>({
|
|
29
|
+
...prevState,
|
|
176
30
|
railFillXPosition: stepSize * firstLocalValue,
|
|
177
31
|
railFillWidth: stepSize * secondLocalValue - stepSize * firstLocalValue,
|
|
178
32
|
xFirstHandle: stepSize * firstLocalValue,
|
|
179
33
|
xSecondHandle: stepSize * secondLocalValue
|
|
180
|
-
});
|
|
181
|
-
});
|
|
34
|
+
}));
|
|
182
35
|
}, [
|
|
183
36
|
value,
|
|
184
37
|
stepSize,
|
|
185
38
|
min,
|
|
186
39
|
max
|
|
187
40
|
]);
|
|
188
|
-
|
|
189
|
-
setState(
|
|
190
|
-
|
|
41
|
+
const setStepSize = React.useCallback((newStepSize)=>{
|
|
42
|
+
setState((prevState)=>({
|
|
43
|
+
...prevState,
|
|
191
44
|
stepSize: newStepSize
|
|
192
|
-
});
|
|
193
|
-
});
|
|
45
|
+
}));
|
|
194
46
|
}, []);
|
|
195
|
-
|
|
196
|
-
if (secondHandleRef
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
setState(
|
|
201
|
-
|
|
47
|
+
const onFirstHandleChange = React.useCallback((handleValue, data)=>{
|
|
48
|
+
if (secondHandleRef?.current) {
|
|
49
|
+
const newHandleXPosition = data.x;
|
|
50
|
+
const secondHandleXPosition = getXCenterHandle(secondHandleRef.current);
|
|
51
|
+
const fillWidth = secondHandleXPosition - newHandleXPosition;
|
|
52
|
+
setState((prevState)=>({
|
|
53
|
+
...prevState,
|
|
202
54
|
firstHandleZIndex: 101,
|
|
203
55
|
secondHandleZIndex: 100,
|
|
204
56
|
railFillWidth: fillWidth < 0 ? 0 : fillWidth,
|
|
205
57
|
railFillXPosition: newHandleXPosition
|
|
206
|
-
});
|
|
207
|
-
});
|
|
58
|
+
}));
|
|
208
59
|
if (onChange) {
|
|
209
60
|
onChange([
|
|
210
61
|
handleValue,
|
|
@@ -216,34 +67,32 @@ export var Slider = function Slider(_0) {
|
|
|
216
67
|
onChange,
|
|
217
68
|
value
|
|
218
69
|
]);
|
|
219
|
-
|
|
70
|
+
const onFirstHandleChangeCommitted = React.useCallback((handleValue, data)=>{
|
|
220
71
|
onChangeCommitted([
|
|
221
72
|
handleValue,
|
|
222
73
|
value[1]
|
|
223
74
|
]);
|
|
224
|
-
setState(
|
|
225
|
-
|
|
75
|
+
setState((prevState)=>({
|
|
76
|
+
...prevState,
|
|
226
77
|
firstValue: handleValue,
|
|
227
78
|
xFirstHandle: data.lastX
|
|
228
|
-
});
|
|
229
|
-
});
|
|
79
|
+
}));
|
|
230
80
|
}, [
|
|
231
81
|
onChangeCommitted,
|
|
232
82
|
value
|
|
233
83
|
]);
|
|
234
|
-
|
|
235
|
-
if (firstHandleRef
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
setState(
|
|
240
|
-
|
|
84
|
+
const onSecondHandleChange = React.useCallback((handleValue, data)=>{
|
|
85
|
+
if (firstHandleRef?.current) {
|
|
86
|
+
const firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);
|
|
87
|
+
const newHandleXPosition = data.x;
|
|
88
|
+
const fillWidth = newHandleXPosition - firstXHandleXPosition;
|
|
89
|
+
setState((prevState)=>({
|
|
90
|
+
...prevState,
|
|
241
91
|
firstHandleZIndex: 100,
|
|
242
92
|
secondHandleZIndex: 101,
|
|
243
93
|
railFillWidth: fillWidth < 0 ? 0 : fillWidth,
|
|
244
94
|
railFillXPosition: firstXHandleXPosition
|
|
245
|
-
});
|
|
246
|
-
});
|
|
95
|
+
}));
|
|
247
96
|
if (onChange) {
|
|
248
97
|
onChange([
|
|
249
98
|
value[0],
|
|
@@ -255,31 +104,31 @@ export var Slider = function Slider(_0) {
|
|
|
255
104
|
onChange,
|
|
256
105
|
value
|
|
257
106
|
]);
|
|
258
|
-
|
|
107
|
+
const onSecondHandleChangeCommitted = React.useCallback((handleValue, data)=>{
|
|
259
108
|
onChangeCommitted([
|
|
260
109
|
value[0],
|
|
261
110
|
handleValue
|
|
262
111
|
]);
|
|
263
|
-
setState(
|
|
264
|
-
|
|
112
|
+
setState((prevState)=>({
|
|
113
|
+
...prevState,
|
|
265
114
|
secondValue: handleValue,
|
|
266
115
|
xSecondHandle: data.lastX
|
|
267
|
-
});
|
|
268
|
-
});
|
|
116
|
+
}));
|
|
269
117
|
}, [
|
|
270
118
|
onChangeCommitted,
|
|
271
119
|
value
|
|
272
120
|
]);
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
return /*#__PURE__*/ React.createElement(SliderBase,
|
|
121
|
+
const [ariaLabelLeft, ariaLabelRight] = ariaLabel || [];
|
|
122
|
+
const currentFirstSliderValue = Math.max(state.firstValue, min);
|
|
123
|
+
return /*#__PURE__*/ React.createElement(SliderBase, {
|
|
276
124
|
min: min,
|
|
277
125
|
max: max,
|
|
278
126
|
disabled: disabled,
|
|
279
127
|
setStepSize: setStepSize,
|
|
280
128
|
railFillWidth: state.railFillWidth,
|
|
281
|
-
railFillXPosition: state.railFillXPosition
|
|
282
|
-
|
|
129
|
+
railFillXPosition: state.railFillXPosition,
|
|
130
|
+
...rest
|
|
131
|
+
}, /*#__PURE__*/ React.createElement(Handle, {
|
|
283
132
|
ref: firstHandleRef,
|
|
284
133
|
stepSize: state.stepSize,
|
|
285
134
|
multipleStepSize: multipleStepSize,
|