@salutejs/plasma-new-hope 0.171.0-dev.0 → 0.172.0-canary.1452.11439149903.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Slider/Slider.css +15 -13
- package/cjs/components/Slider/Slider.js +11 -3
- package/cjs/components/Slider/Slider.js.map +1 -1
- package/cjs/components/Slider/Slider.tokens.js +23 -17
- package/cjs/components/Slider/Slider.tokens.js.map +1 -1
- package/cjs/components/Slider/components/Double/Double.css +8 -8
- package/cjs/components/Slider/components/Double/Double.js +58 -23
- package/cjs/components/Slider/components/Double/Double.js.map +1 -1
- package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +77 -0
- package/cjs/components/Slider/components/Single/Single.css +14 -14
- package/cjs/components/Slider/components/Single/Single.js +63 -33
- package/cjs/components/Slider/components/Single/Single.js.map +1 -1
- package/cjs/components/Slider/components/Single/Single.styles.js +4 -4
- package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -1
- package/cjs/components/Slider/components/Single/Single.styles_14wadfy.css +6 -0
- package/cjs/components/Slider/components/SliderBase/SliderBase.css +5 -5
- package/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/cjs/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
- package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
- package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
- package/cjs/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
- package/cjs/components/Slider/ui/Handler/Handler.css +3 -3
- package/cjs/components/Slider/ui/Handler/Handler.js +49 -88
- package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -1
- package/cjs/components/Slider/ui/Handler/Handler.styles.js +17 -7
- package/cjs/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
- package/cjs/components/Slider/ui/Handler/Handler.styles_irtcgm.css +2 -0
- package/cjs/components/Slider/ui/Handler/computeKeyPressData.js +122 -0
- package/cjs/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
- package/cjs/components/Slider/ui/Thumb/Thumb.css +1 -1
- package/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/cjs/components/Slider/ui/Thumb/Thumb.js.map +1 -1
- package/cjs/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
- package/cjs/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
- package/cjs/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
- package/cjs/components/Slider/utils/index.js +28 -10
- package/cjs/components/Slider/utils/index.js.map +1 -1
- package/cjs/components/Slider/variations/_view/base.js +1 -1
- package/cjs/components/Slider/variations/_view/base.js.map +1 -1
- package/cjs/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
- package/cjs/index.css +15 -13
- package/cjs/utils/index.js.map +1 -1
- package/emotion/cjs/components/Slider/Slider.js +10 -2
- package/emotion/cjs/components/Slider/Slider.tokens.js +23 -17
- package/emotion/cjs/components/Slider/components/Double/Double.js +54 -19
- package/emotion/cjs/components/Slider/components/Single/Single.js +63 -33
- package/emotion/cjs/components/Slider/components/Single/Single.styles.js +18 -9
- package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +10 -10
- package/emotion/cjs/components/Slider/ui/Handler/Handler.js +52 -88
- package/emotion/cjs/components/Slider/ui/Handler/Handler.styles.js +9 -15
- package/emotion/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
- package/emotion/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/emotion/cjs/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
- package/emotion/cjs/components/Slider/utils/index.js +28 -10
- package/emotion/cjs/components/Slider/variations/_view/base.js +2 -1
- package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
- package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
- package/emotion/cjs/examples/plasma_web/components/Slider/Slider.config.js +7 -7
- package/emotion/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
- package/emotion/es/components/Slider/Slider.js +11 -2
- package/emotion/es/components/Slider/Slider.tokens.js +23 -17
- package/emotion/es/components/Slider/components/Double/Double.js +54 -19
- package/emotion/es/components/Slider/components/Single/Single.js +64 -34
- package/emotion/es/components/Slider/components/Single/Single.styles.js +17 -8
- package/emotion/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/emotion/es/components/Slider/components/SliderBase/SliderBase.styles.js +11 -11
- package/emotion/es/components/Slider/ui/Handler/Handler.js +51 -86
- package/emotion/es/components/Slider/ui/Handler/Handler.styles.js +10 -16
- package/emotion/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
- package/emotion/es/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/emotion/es/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
- package/emotion/es/components/Slider/utils/index.js +28 -10
- package/emotion/es/components/Slider/variations/_view/base.js +2 -1
- package/emotion/es/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
- package/emotion/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
- package/emotion/es/examples/plasma_web/components/Slider/Slider.config.js +7 -7
- package/emotion/es/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
- package/es/components/Slider/Slider.css +15 -13
- package/es/components/Slider/Slider.js +11 -3
- package/es/components/Slider/Slider.js.map +1 -1
- package/es/components/Slider/Slider.tokens.js +23 -17
- package/es/components/Slider/Slider.tokens.js.map +1 -1
- package/es/components/Slider/components/Double/Double.css +8 -8
- package/es/components/Slider/components/Double/Double.js +54 -19
- package/es/components/Slider/components/Double/Double.js.map +1 -1
- package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +77 -0
- package/es/components/Slider/components/Single/Single.css +14 -14
- package/es/components/Slider/components/Single/Single.js +64 -34
- package/es/components/Slider/components/Single/Single.js.map +1 -1
- package/es/components/Slider/components/Single/Single.styles.js +4 -4
- package/es/components/Slider/components/Single/Single.styles.js.map +1 -1
- package/es/components/Slider/components/Single/Single.styles_14wadfy.css +6 -0
- package/es/components/Slider/components/SliderBase/SliderBase.css +5 -5
- package/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/es/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
- package/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
- package/es/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
- package/es/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
- package/es/components/Slider/ui/Handler/Handler.css +3 -3
- package/es/components/Slider/ui/Handler/Handler.js +48 -87
- package/es/components/Slider/ui/Handler/Handler.js.map +1 -1
- package/es/components/Slider/ui/Handler/Handler.styles.js +17 -7
- package/es/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
- package/es/components/Slider/ui/Handler/Handler.styles_irtcgm.css +2 -0
- package/es/components/Slider/ui/Handler/computeKeyPressData.js +118 -0
- package/es/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
- package/es/components/Slider/ui/Thumb/Thumb.css +1 -1
- package/es/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/es/components/Slider/ui/Thumb/Thumb.js.map +1 -1
- package/es/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
- package/es/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
- package/es/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
- package/es/components/Slider/utils/index.js +28 -10
- package/es/components/Slider/utils/index.js.map +1 -1
- package/es/components/Slider/variations/_view/base.js +1 -1
- package/es/components/Slider/variations/_view/base.js.map +1 -1
- package/es/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
- package/es/index.css +15 -13
- package/es/utils/index.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Slider/Slider.js +10 -2
- package/styled-components/cjs/components/Slider/Slider.tokens.js +23 -17
- package/styled-components/cjs/components/Slider/components/Double/Double.js +54 -19
- package/styled-components/cjs/components/Slider/components/Single/Single.js +63 -33
- package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +6 -6
- package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +6 -6
- package/styled-components/cjs/components/Slider/ui/Handler/Handler.js +52 -88
- package/styled-components/cjs/components/Slider/ui/Handler/Handler.styles.js +7 -4
- package/styled-components/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
- package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
- package/styled-components/cjs/components/Slider/utils/index.js +28 -10
- package/styled-components/cjs/components/Slider/variations/_view/base.js +2 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
- package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.config.js +3 -3
- package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
- package/styled-components/es/components/Slider/Slider.js +11 -2
- package/styled-components/es/components/Slider/Slider.tokens.js +23 -17
- package/styled-components/es/components/Slider/components/Double/Double.js +54 -19
- package/styled-components/es/components/Slider/components/Single/Single.js +64 -34
- package/styled-components/es/components/Slider/components/Single/Single.styles.js +5 -5
- package/styled-components/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
- package/styled-components/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
- package/styled-components/es/components/Slider/ui/Handler/Handler.js +51 -86
- package/styled-components/es/components/Slider/ui/Handler/Handler.styles.js +8 -5
- package/styled-components/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
- package/styled-components/es/components/Slider/ui/Thumb/Thumb.js +3 -2
- package/styled-components/es/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
- package/styled-components/es/components/Slider/utils/index.js +28 -10
- package/styled-components/es/components/Slider/variations/_view/base.js +2 -1
- package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
- package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
- package/styled-components/es/examples/plasma_web/components/Slider/Slider.config.js +3 -3
- package/styled-components/es/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
- package/types/components/Slider/Slider.d.ts.map +1 -1
- package/types/components/Slider/Slider.tokens.d.ts +22 -16
- package/types/components/Slider/Slider.tokens.d.ts.map +1 -1
- package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
- package/types/components/Slider/components/Double/Double.types.d.ts +1 -0
- package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
- package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
- package/types/components/Slider/components/Single/Single.styles.d.ts +1 -1
- package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -1
- package/types/components/Slider/components/Single/Single.types.d.ts +75 -7
- package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
- package/types/components/Slider/components/SliderBase/SliderBase.d.ts.map +1 -1
- package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts +1 -1
- package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts.map +1 -1
- package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts +3 -0
- package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts.map +1 -1
- package/types/components/Slider/ui/Handler/Handler.d.ts.map +1 -1
- package/types/components/Slider/ui/Handler/Handler.styles.d.ts +6 -2
- package/types/components/Slider/ui/Handler/Handler.styles.d.ts.map +1 -1
- package/types/components/Slider/ui/Handler/Handler.types.d.ts +5 -1
- package/types/components/Slider/ui/Handler/Handler.types.d.ts.map +1 -1
- package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts +12 -0
- package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts.map +1 -0
- package/types/components/Slider/ui/Thumb/Thumb.d.ts +1 -1
- package/types/components/Slider/ui/Thumb/Thumb.d.ts.map +1 -1
- package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts.map +1 -1
- package/types/components/Slider/ui/Thumb/Thumb.types.d.ts +1 -0
- package/types/components/Slider/ui/Thumb/Thumb.types.d.ts.map +1 -1
- package/types/components/Slider/utils/index.d.ts +26 -8
- package/types/components/Slider/utils/index.d.ts.map +1 -1
- package/types/components/Slider/variations/_view/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +80 -2
- package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Slider/Slider.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Slider/Slider.d.ts +80 -2
- package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
- package/types/utils/index.d.ts +1 -1
- package/types/utils/index.d.ts.map +1 -1
- package/cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
- package/cjs/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
- package/cjs/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
- package/cjs/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
- package/cjs/components/Slider/variations/_view/base_x642ct.css +0 -1
- package/es/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
- package/es/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
- package/es/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
- package/es/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
- package/es/components/Slider/variations/_view/base_x642ct.css +0 -1
@@ -3,18 +3,18 @@ import { classes, tokens } from '../../Slider.tokens';
|
|
3
3
|
export var LabelWrapper = /*#__PURE__*/styled.div.withConfig({
|
4
4
|
componentId: "plasma-new-hope__sc-1qm4elt-0"
|
5
5
|
})(["color:var(", ");display:flex;gap:var(", ");"], tokens.labelColor, tokens.labelWrapperGap);
|
6
|
-
export var
|
6
|
+
export var LabelContent = /*#__PURE__*/styled.div.withConfig({
|
7
7
|
componentId: "plasma-new-hope__sc-1qm4elt-1"
|
8
|
-
})([""]);
|
8
|
+
})(["display:inline-flex;"]);
|
9
9
|
export var Label = /*#__PURE__*/styled.label.withConfig({
|
10
10
|
componentId: "plasma-new-hope__sc-1qm4elt-2"
|
11
11
|
})(["font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight);
|
12
12
|
export var StyledRangeValue = /*#__PURE__*/styled.span.withConfig({
|
13
13
|
componentId: "plasma-new-hope__sc-1qm4elt-3"
|
14
|
-
})(["color:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");transition:opacity 0.1s ease-in-out;&.", ",&.", "{opacity:0;}&.", "{color:var(", ");}"], tokens.rangeValueColor, tokens.
|
14
|
+
})(["color:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");transition:opacity 0.1s ease-in-out;&.", ",&.", "{opacity:0;}&.", "{color:var(", ");}"], tokens.rangeValueColor, tokens.valueFontFamily, tokens.valueFontSize, tokens.valueFontStyle, tokens.valueFontWeight, tokens.valueLetterSpacing, tokens.valueLineHeight, classes.hideMinValue, classes.hideMaxValue, classes.activeRangeValue, tokens.labelColor);
|
15
15
|
export var SliderBaseWrapper = /*#__PURE__*/styled.div.withConfig({
|
16
16
|
componentId: "plasma-new-hope__sc-1qm4elt-4"
|
17
|
-
})(["position:relative;display:flex;flex:1;&.", "{", "{position:absolute;bottom:var(", ");left:0;&.", "{left:unset;right:0;}}}&.", "{align-items:center;", "{margin-right:var(", ");&.", "{margin-right:0;margin-left:var(", ");}}}"], classes.rangeValuesPlacementOuter, StyledRangeValue, tokens.rangeValueBottomOffset, classes.maxRangeValue, classes.rangeValuesPlacementInner, StyledRangeValue, tokens.
|
17
|
+
})(["position:relative;display:flex;flex:1;&.", "{", "{position:absolute;bottom:calc(var(", ") * -1.5 - var(", "));left:0;&.", "{left:unset;right:0;}}}&.", "{align-items:center;", "{margin-right:var(", ");&.", "{margin-right:0;margin-left:var(", ");}}}"], classes.rangeValuesPlacementOuter, StyledRangeValue, tokens.railThickness, tokens.rangeValueBottomOffset, classes.maxRangeValue, classes.rangeValuesPlacementInner, StyledRangeValue, tokens.rangeValueHorizontalMargin, classes.maxRangeValue, tokens.rangeValueHorizontalMargin);
|
18
18
|
export var SingleWrapper = /*#__PURE__*/styled.div.withConfig({
|
19
19
|
componentId: "plasma-new-hope__sc-1qm4elt-5"
|
20
|
-
})(["display:flex;opacity:var(", ");&.", "{flex-direction:column;", "{margin-bottom:var(", ");}}&.", "{", "{margin-right:var(", ");}}"], tokens.disabledOpacity, classes.labelPlacementOuter, LabelWrapper, tokens.labelWrapperMarginBottom, classes.labelPlacementInner, LabelWrapper, tokens.labelWrapperMarginRight);
|
20
|
+
})(["display:flex;opacity:var(", ");&.", "{flex-direction:column;", "{margin-bottom:var(", ");}}&.", "{", "{margin-right:var(", ");}}&.", "{flex-direction:column;align-items:center;&.", "{", "{flex-direction:column-reverse;}&.", "{", "{flex-direction:column;}&.", "{", "{flex-direction:column-reverse;}}}&.", "{", "{flex-direction:column;}}}", "{align-items:center;}", "{width:var(", ");}&.", "{", "{margin-right:0;margin-bottom:var(", ");}}&.", "{align-items:flex-end;", "{flex-direction:row-reverse;}}&.", "{align-items:flex-start;}&.", "{flex-direction:column-reverse;", "{margin-top:var(", ");margin-right:0;margin-bottom:0;}}}&.", "{flex-direction:column;align-items:center;justify-content:center;", "{flex-direction:column;align-items:center;justify-content:center;}&.", "{", "{position:static;bottom:0;left:0;margin-bottom:var(", ");&.", "{left:0;right:0;bottom:0;margin-top:var(", ");margin-bottom:0;}}}&.", ",&.", "{", "{margin-right:0;margin-bottom:0;position:absolute;top:0;right:calc( var(", ") / 2 + var(", ") / 2 + var(", ") );&.", "{margin-right:0;margin-left:0;top:auto;bottom:0;}}}&.", "{", "{left:calc(var(", ") + var(", "));}}}"], tokens.disabledOpacity, classes.labelPlacementOuter, LabelWrapper, tokens.labelWrapperMarginBottom, classes.labelPlacementInner, LabelWrapper, tokens.labelWrapperMarginRight, classes.verticalOrientation, classes.labelAlignCenter, LabelWrapper, classes.labelPlacementBottom, LabelWrapper, classes.labelContentReversed, LabelWrapper, classes.labelContentReversed, LabelWrapper, LabelWrapper, SliderBaseWrapper, tokens.size, classes.labelPlacementInner, LabelWrapper, tokens.labelWrapperVerticalMargin, classes.labelAlignLeft, LabelWrapper, classes.labelAlignRight, classes.labelPlacementBottom, LabelWrapper, tokens.labelWrapperVerticalMargin, classes.verticalOrientation, SliderBaseWrapper, classes.labelAlignCenter, StyledRangeValue, tokens.rangeValueVerticalMargin, classes.maxRangeValue, tokens.rangeValueVerticalMargin, classes.labelAlignLeft, classes.labelAlignRight, StyledRangeValue, tokens.railThickness, tokens.size, tokens.rangeValueLeftRightMargin, classes.maxRangeValue, classes.labelAlignRight, StyledRangeValue, tokens.size, tokens.railThickness);
|
@@ -1,5 +1,7 @@
|
|
1
1
|
import React, { useRef, useEffect } from 'react';
|
2
2
|
import { useIsomorphicLayoutEffect } from '../../../../hooks';
|
3
|
+
import { classes } from '../../Slider.tokens';
|
4
|
+
import { cx } from '../../../../utils';
|
3
5
|
import { Fill, Rail, RailWrap, Slider } from './SliderBase.styles';
|
4
6
|
export var SliderBase = function SliderBase(_ref) {
|
5
7
|
var max = _ref.max,
|
@@ -13,6 +15,9 @@ export var SliderBase = function SliderBase(_ref) {
|
|
13
15
|
labelPlacement = _ref.labelPlacement,
|
14
16
|
rangeValuesPlacement = _ref.rangeValuesPlacement,
|
15
17
|
onChange = _ref.onChange,
|
18
|
+
orientation = _ref.orientation,
|
19
|
+
size = _ref.size,
|
20
|
+
sliderAlign = _ref.sliderAlign,
|
16
21
|
_ref$settings = _ref.settings,
|
17
22
|
settings = _ref$settings === void 0 ? {} : _ref$settings;
|
18
23
|
var _settings$indent = settings.indent,
|
@@ -21,34 +26,43 @@ export var SliderBase = function SliderBase(_ref) {
|
|
21
26
|
fontSizeMultiplier = _settings$fontSizeMul === void 0 ? 16 : _settings$fontSizeMul;
|
22
27
|
var ref = useRef(null);
|
23
28
|
var gap = indent * fontSizeMultiplier * 2;
|
29
|
+
var isVertical = orientation === 'vertical';
|
24
30
|
useEffect(function () {
|
25
31
|
var resizeHandler = function resizeHandler() {
|
26
32
|
if (ref.current) {
|
27
|
-
var railSize = ref.current.offsetWidth - gap;
|
33
|
+
var railSize = isVertical ? ref.current.offsetHeight - gap : ref.current.offsetWidth - gap;
|
28
34
|
var totalSteps = max - min;
|
29
35
|
setStepSize(railSize / totalSteps);
|
30
36
|
}
|
31
37
|
};
|
32
38
|
resizeHandler();
|
33
|
-
}, [labelPlacement, rangeValuesPlacement
|
39
|
+
}, [labelPlacement, rangeValuesPlacement, gap, isVertical,
|
40
|
+
// для перерасчета размеров
|
41
|
+
size, sliderAlign]);
|
34
42
|
var onHandleChange = function onHandleChange(e) {
|
35
43
|
if (!onChange || disabled) {
|
36
44
|
return;
|
37
45
|
}
|
38
46
|
var _e$currentTarget$getB = e.currentTarget.getBoundingClientRect(),
|
39
47
|
x = _e$currentTarget$getB.x,
|
40
|
-
width = _e$currentTarget$getB.width
|
41
|
-
|
42
|
-
|
48
|
+
width = _e$currentTarget$getB.width,
|
49
|
+
y = _e$currentTarget$getB.y,
|
50
|
+
height = _e$currentTarget$getB.height;
|
51
|
+
var lastPos = isVertical ? e.clientY - y : e.clientX - x;
|
52
|
+
var sliderWidth = isVertical ? height : width;
|
53
|
+
var position = min + lastPos / (sliderWidth - gap) * (max - min);
|
43
54
|
var result = Math.max(min, Math.min(max, position));
|
44
|
-
|
45
|
-
|
46
|
-
}
|
55
|
+
var data = isVertical ? {
|
56
|
+
lastY: lastPos
|
57
|
+
} : {
|
58
|
+
lastX: lastPos
|
59
|
+
};
|
60
|
+
onChange(result, data);
|
47
61
|
};
|
48
62
|
useIsomorphicLayoutEffect(function () {
|
49
63
|
var resizeHandler = function resizeHandler() {
|
50
64
|
if (ref.current) {
|
51
|
-
var railSize = ref.current.offsetWidth - gap;
|
65
|
+
var railSize = isVertical ? ref.current.offsetHeight - gap : ref.current.offsetWidth - gap;
|
52
66
|
var totalSteps = max - min;
|
53
67
|
setStepSize(railSize / totalSteps);
|
54
68
|
}
|
@@ -58,13 +72,18 @@ export var SliderBase = function SliderBase(_ref) {
|
|
58
72
|
return function () {
|
59
73
|
return window.removeEventListener('resize', resizeHandler);
|
60
74
|
};
|
61
|
-
}, [min, max, setStepSize, gap, labelPlacement, rangeValuesPlacement]);
|
62
|
-
var fillStyle = {
|
75
|
+
}, [min, max, setStepSize, gap, labelPlacement, rangeValuesPlacement, isVertical]);
|
76
|
+
var fillStyle = isVertical ? {
|
77
|
+
top: "".concat(railFillXPosition, "px"),
|
78
|
+
height: "".concat(railFillWidth, "px"),
|
79
|
+
width: '100%'
|
80
|
+
} : {
|
63
81
|
left: "".concat(railFillXPosition, "px"),
|
64
82
|
width: "".concat(railFillWidth, "px")
|
65
83
|
};
|
66
84
|
return /*#__PURE__*/React.createElement(Slider, {
|
67
|
-
ref: ref
|
85
|
+
ref: ref,
|
86
|
+
className: cx(orientation === 'vertical' && classes.verticalOrientation)
|
68
87
|
}, /*#__PURE__*/React.createElement(RailWrap, {
|
69
88
|
"aria-hidden": "true",
|
70
89
|
onMouseDown: onHandleChange
|
@@ -1,15 +1,15 @@
|
|
1
1
|
import styled from 'styled-components';
|
2
2
|
import { applyHidden } from '../../../../mixins';
|
3
|
-
import { tokens } from '../../Slider.tokens';
|
4
|
-
export var
|
3
|
+
import { classes, tokens } from '../../Slider.tokens';
|
4
|
+
export var Rail = /*#__PURE__*/styled.div.withConfig({
|
5
5
|
componentId: "plasma-new-hope__sc-ik0bjb-0"
|
6
|
-
})(["
|
7
|
-
export var
|
6
|
+
})(["position:relative;top:50%;height:var(", ");border-radius:var(", ");background-color:var(", ");overflow:hidden;transform:translateY(-50%);"], tokens.railThickness, tokens.railBorderRadius, tokens.railBackgroundColor);
|
7
|
+
export var Slider = /*#__PURE__*/styled.div.withConfig({
|
8
8
|
componentId: "plasma-new-hope__sc-ik0bjb-1"
|
9
|
-
})(["height:100%;"]);
|
10
|
-
export var
|
9
|
+
})(["flex:1;position:relative;user-select:none;height:var(", ");&.", "{width:var(", ");height:auto;", "{top:0;left:50%;transform:translateX(-50%);width:var(", ");height:100%;}}"], tokens.size, classes.verticalOrientation, tokens.size, Rail, tokens.railThickness);
|
10
|
+
export var RailWrap = /*#__PURE__*/styled.div.withConfig({
|
11
11
|
componentId: "plasma-new-hope__sc-ik0bjb-2"
|
12
|
-
})(["
|
12
|
+
})(["height:100%;"]);
|
13
13
|
export var Fill = /*#__PURE__*/styled.div.withConfig({
|
14
14
|
componentId: "plasma-new-hope__sc-ik0bjb-3"
|
15
15
|
})(["position:absolute;height:100%;top:0;left:0;background:var(", ");width:0;"], tokens.fillColor);
|
@@ -1,5 +1,9 @@
|
|
1
|
-
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
2
|
+
var _excluded = ["size", "orientation", "stepSize", "onChangeCommitted", "onChange", "position", "min", "max", "bounds", "zIndex", "disabled", "side", "showCurrentValue", "startOffset", "endOffset", "value", "valuePlacement"];
|
2
3
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
3
7
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
8
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
5
9
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
@@ -10,28 +14,23 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
10
14
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
11
15
|
import React, { useRef, forwardRef } from 'react';
|
12
16
|
import Draggable from 'react-draggable';
|
17
|
+
import { cx } from '../../../../utils';
|
13
18
|
import { getSliderThumbValue, getOffsets } from '../../utils';
|
14
19
|
import { Thumb } from '../Thumb/Thumb';
|
20
|
+
import { classes } from '../../Slider.tokens';
|
15
21
|
import { HandlerStyled, StyledValue } from './Handler.styles';
|
22
|
+
import { computeKeyPressData } from './computeKeyPressData';
|
16
23
|
|
17
24
|
// TODO: PLASMA-1707
|
18
25
|
|
19
|
-
var KeyboardSupport = {
|
20
|
-
PageUp: 33,
|
21
|
-
PageDown: 34,
|
22
|
-
End: 35,
|
23
|
-
Home: 36,
|
24
|
-
ArrowLeft: 37,
|
25
|
-
ArrowUp: 38,
|
26
|
-
ArrowRight: 39,
|
27
|
-
ArrowDown: 40
|
28
|
-
};
|
29
26
|
export var Handler = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
30
|
-
var
|
27
|
+
var size = _ref.size,
|
28
|
+
orientation = _ref.orientation,
|
29
|
+
stepSize = _ref.stepSize,
|
31
30
|
onChangeCommitted = _ref.onChangeCommitted,
|
32
31
|
onChange = _ref.onChange,
|
33
|
-
_ref$
|
34
|
-
|
32
|
+
_ref$position = _ref.position,
|
33
|
+
position = _ref$position === void 0 ? 0 : _ref$position,
|
35
34
|
min = _ref.min,
|
36
35
|
max = _ref.max,
|
37
36
|
_ref$bounds = _ref.bounds,
|
@@ -46,122 +45,88 @@ export var Handler = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
46
45
|
_ref$endOffset = _ref.endOffset,
|
47
46
|
endOffset = _ref$endOffset === void 0 ? 0 : _ref$endOffset,
|
48
47
|
value = _ref.value,
|
48
|
+
valuePlacement = _ref.valuePlacement,
|
49
49
|
rest = _objectWithoutProperties(_ref, _excluded);
|
50
|
+
var isVertical = orientation === 'vertical';
|
50
51
|
var lastOnChangeValue = useRef();
|
51
|
-
var _getOffsets = getOffsets(ref, side),
|
52
|
+
var _getOffsets = getOffsets(ref, side, isVertical),
|
52
53
|
_getOffsets2 = _slicedToArray(_getOffsets, 2),
|
53
|
-
|
54
|
-
|
54
|
+
startClientOffset = _getOffsets2[0],
|
55
|
+
endClientOffset = _getOffsets2[1];
|
55
56
|
var _bounds = _slicedToArray(bounds, 2),
|
56
|
-
|
57
|
-
|
58
|
-
var
|
59
|
-
var
|
60
|
-
var
|
61
|
-
x:
|
62
|
-
y: 0
|
57
|
+
startValueBound = _bounds[0],
|
58
|
+
endValueBound = _bounds[1];
|
59
|
+
var startPositionBound = startValueBound ? (startValueBound - min) * stepSize : null;
|
60
|
+
var endPositionBound = endValueBound ? (endValueBound - min) * stepSize : null;
|
61
|
+
var dragPosition = typeof position === 'number' ? {
|
62
|
+
x: isVertical ? 0 : position,
|
63
|
+
y: isVertical ? position : 0
|
63
64
|
} : undefined;
|
64
65
|
var tabIndex = disabled ? -1 : 0;
|
65
|
-
var computedBounds = {
|
66
|
-
|
67
|
-
right: (rightPositionBound !== null && rightPositionBound !== void 0 ? rightPositionBound : stepSize * (max - min)) - (offsetRight ? stepSize : 0)
|
68
|
-
};
|
69
|
-
var showCurrentValueCondition = showCurrentValue && (xPosition >= startOffset && xPosition <= max * stepSize - endOffset || xPosition === 0 && value !== 0);
|
66
|
+
var computedBounds = _defineProperty(_defineProperty({}, isVertical ? 'top' : 'left', (startPositionBound !== null && startPositionBound !== void 0 ? startPositionBound : 0) - (startClientOffset ? stepSize : 0)), isVertical ? 'bottom' : 'right', (endPositionBound !== null && endPositionBound !== void 0 ? endPositionBound : stepSize * (max - min)) - (endClientOffset ? stepSize : 0));
|
67
|
+
var showCurrentValueCondition = showCurrentValue && (position >= startOffset && position <= max * stepSize - endOffset || position === 0 && value !== 0);
|
70
68
|
var onDrag = function onDrag(_, data) {
|
71
|
-
var newValue = getSliderThumbValue(data.x, stepSize, min, max);
|
69
|
+
var newValue = getSliderThumbValue(isVertical ? data.y : data.x, stepSize, min, max);
|
72
70
|
if (lastOnChangeValue.current !== newValue) {
|
73
71
|
onChange === null || onChange === void 0 || onChange(newValue, data);
|
74
72
|
lastOnChangeValue.current = newValue;
|
75
73
|
}
|
76
74
|
};
|
77
75
|
var onStop = function onStop(_, data) {
|
78
|
-
var newValue = getSliderThumbValue(data.x, stepSize, min, max);
|
76
|
+
var newValue = getSliderThumbValue(isVertical ? data.y : data.x, stepSize, min, max);
|
79
77
|
onChangeCommitted && onChangeCommitted(newValue, data);
|
80
78
|
};
|
81
79
|
var onKeyPress = function onKeyPress(event) {
|
82
80
|
event.persist();
|
83
|
-
var keyCode = event.keyCode,
|
84
|
-
target = event.target;
|
85
|
-
if (!Object.values(KeyboardSupport).includes(keyCode)) {
|
86
|
-
return;
|
87
|
-
}
|
88
|
-
var ArrowUp = KeyboardSupport.ArrowUp,
|
89
|
-
ArrowRight = KeyboardSupport.ArrowRight,
|
90
|
-
ArrowDown = KeyboardSupport.ArrowDown,
|
91
|
-
ArrowLeft = KeyboardSupport.ArrowLeft,
|
92
|
-
Home = KeyboardSupport.Home,
|
93
|
-
End = KeyboardSupport.End,
|
94
|
-
PageDown = KeyboardSupport.PageDown,
|
95
|
-
PageUp = KeyboardSupport.PageUp;
|
96
81
|
var computedMultipleSteps = stepSize * (rest.multipleStepSize / 100 * max);
|
97
|
-
var data = {
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
switch (keyCode) {
|
107
|
-
case ArrowUp:
|
108
|
-
case ArrowRight:
|
109
|
-
data.x = xPosition + stepSize;
|
110
|
-
break;
|
111
|
-
case ArrowDown:
|
112
|
-
case ArrowLeft:
|
113
|
-
data.x = xPosition - stepSize;
|
114
|
-
data.deltaX = -stepSize;
|
115
|
-
break;
|
116
|
-
case PageUp:
|
117
|
-
data.x = xPosition + computedMultipleSteps;
|
118
|
-
data.deltaX = computedMultipleSteps;
|
119
|
-
break;
|
120
|
-
case PageDown:
|
121
|
-
data.x = xPosition - computedMultipleSteps;
|
122
|
-
data.deltaX = -computedMultipleSteps;
|
123
|
-
break;
|
124
|
-
case End:
|
125
|
-
data.x = max * stepSize;
|
126
|
-
break;
|
127
|
-
case Home:
|
128
|
-
data.x = 0;
|
129
|
-
break;
|
130
|
-
default:
|
131
|
-
data.x = 0;
|
82
|
+
var data = computeKeyPressData(event, {
|
83
|
+
isVertical: isVertical,
|
84
|
+
stepSize: stepSize,
|
85
|
+
position: position,
|
86
|
+
max: max,
|
87
|
+
computedMultipleSteps: computedMultipleSteps
|
88
|
+
});
|
89
|
+
if (!data) {
|
90
|
+
return;
|
132
91
|
}
|
133
92
|
var left = computedBounds.left,
|
134
|
-
right = computedBounds.right
|
93
|
+
right = computedBounds.right,
|
94
|
+
top = computedBounds.top,
|
95
|
+
bottom = computedBounds.bottom;
|
135
96
|
|
136
97
|
/*
|
137
98
|
* INFO: Находим значение в диапазоне между указанными левой и правой границами.
|
99
|
+
* Или между верхней и нижней
|
138
100
|
* Необходимо для правильного расчета положения SliderThumb.
|
139
101
|
* см. функция clamp
|
140
102
|
*/
|
141
|
-
var boundedValue = Math.max(Math.min(right, data.x), left);
|
103
|
+
var boundedValue = isVertical ? Math.max(Math.min(bottom, data.y), top) : Math.max(Math.min(right, data.x), left);
|
142
104
|
var computedValue = getSliderThumbValue(boundedValue, stepSize, min, max);
|
143
105
|
lastOnChangeValue.current = computedValue;
|
144
106
|
onChangeCommitted && onChangeCommitted(computedValue, data);
|
145
107
|
};
|
146
108
|
return /*#__PURE__*/React.createElement(Draggable, {
|
147
|
-
axis:
|
109
|
+
axis: isVertical ? 'y' : 'x',
|
148
110
|
bounds: computedBounds,
|
149
|
-
grid: [stepSize, 1],
|
111
|
+
grid: isVertical ? [1, stepSize] : [stepSize, 1],
|
150
112
|
onStop: onStop,
|
151
113
|
onDrag: onDrag,
|
152
|
-
position:
|
114
|
+
position: dragPosition,
|
153
115
|
disabled: disabled
|
154
116
|
}, /*#__PURE__*/React.createElement(HandlerStyled, {
|
155
117
|
ref: ref,
|
156
118
|
style: {
|
157
119
|
zIndex: zIndex
|
158
120
|
},
|
121
|
+
className: cx(isVertical && classes.verticalOrientation, valuePlacement === 'left' && classes.valuePlacementLeft),
|
122
|
+
isLarge: size === 'large',
|
159
123
|
onKeyDown: onKeyPress
|
160
|
-
}, /*#__PURE__*/React.createElement(Thumb, _extends({
|
124
|
+
}, size !== 'none' && /*#__PURE__*/React.createElement(Thumb, _extends({
|
161
125
|
tabIndex: tabIndex,
|
162
126
|
min: min,
|
163
127
|
max: max,
|
164
128
|
value: value,
|
165
|
-
disabled: disabled
|
129
|
+
disabled: disabled,
|
130
|
+
orientation: orientation
|
166
131
|
}, rest)), showCurrentValueCondition && /*#__PURE__*/React.createElement(StyledValue, null, value)));
|
167
132
|
});
|
@@ -1,8 +1,11 @@
|
|
1
1
|
import styled from 'styled-components';
|
2
|
-
import { tokens } from '../../Slider.tokens';
|
3
|
-
export var HandlerStyled = /*#__PURE__*/styled.div.withConfig({
|
4
|
-
componentId: "plasma-new-hope__sc-a1py3c-0"
|
5
|
-
})(["cursor:pointer;position:absolute;z-index:1;top:0;left:0;"]);
|
2
|
+
import { classes, tokens } from '../../Slider.tokens';
|
6
3
|
export var StyledValue = /*#__PURE__*/styled.span.withConfig({
|
4
|
+
componentId: "plasma-new-hope__sc-a1py3c-0"
|
5
|
+
})(["position:absolute;z-index:1;top:var(", ");text-align:center;width:100%;margin-left:-0.125rem;display:flex;justify-content:center;font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.currentValueTopOffset, tokens.valueFontFamily, tokens.valueFontSize, tokens.valueFontStyle, tokens.valueFontWeight, tokens.valueLetterSpacing, tokens.valueLineHeight);
|
6
|
+
export var HandlerStyled = /*#__PURE__*/styled.div.withConfig({
|
7
7
|
componentId: "plasma-new-hope__sc-a1py3c-1"
|
8
|
-
})(["position:absolute;z-index:1;top:
|
8
|
+
})(["cursor:pointer;position:absolute;z-index:1;top:0;left:0;bottom:0;display:flex;align-items:center;justify-content:center;--thumb-size:", ";&.", "{right:0;bottom:auto;align-items:flex-start;justify-content:center;", "{margin:0;top:0;bottom:0;right:0;left:calc(var(", ") - (var(", ") - var(--thumb-size)) / 2 + 0.25rem);align-items:center;justify-content:flex-start;}}&.", "{", "{left:auto;right:calc(var(", ") - (var(", ") - var(--thumb-size)) / 2 + 0.3125rem);justify-content:flex-end;}}"], function (_ref) {
|
9
|
+
var isLarge = _ref.isLarge;
|
10
|
+
return isLarge ? "var(".concat(tokens.thumbSizeLarge, ")") : "var(".concat(tokens.thumbSize, ")");
|
11
|
+
}, classes.verticalOrientation, StyledValue, tokens.size, tokens.size, classes.valuePlacementLeft, StyledValue, tokens.size, tokens.size);
|
@@ -0,0 +1,115 @@
|
|
1
|
+
var KeyboardSupport = {
|
2
|
+
PageUp: 33,
|
3
|
+
PageDown: 34,
|
4
|
+
End: 35,
|
5
|
+
Home: 36,
|
6
|
+
ArrowLeft: 37,
|
7
|
+
ArrowUp: 38,
|
8
|
+
ArrowRight: 39,
|
9
|
+
ArrowDown: 40
|
10
|
+
};
|
11
|
+
var ArrowUp = KeyboardSupport.ArrowUp,
|
12
|
+
ArrowRight = KeyboardSupport.ArrowRight,
|
13
|
+
ArrowDown = KeyboardSupport.ArrowDown,
|
14
|
+
ArrowLeft = KeyboardSupport.ArrowLeft,
|
15
|
+
Home = KeyboardSupport.Home,
|
16
|
+
End = KeyboardSupport.End,
|
17
|
+
PageDown = KeyboardSupport.PageDown,
|
18
|
+
PageUp = KeyboardSupport.PageUp;
|
19
|
+
var computeVerticalMovement = function computeVerticalMovement(event, _ref) {
|
20
|
+
var stepSize = _ref.stepSize,
|
21
|
+
position = _ref.position,
|
22
|
+
max = _ref.max,
|
23
|
+
computedMultipleSteps = _ref.computedMultipleSteps;
|
24
|
+
var keyCode = event.keyCode,
|
25
|
+
target = event.target;
|
26
|
+
var data = {
|
27
|
+
x: 0,
|
28
|
+
deltaX: 0,
|
29
|
+
lastX: 0,
|
30
|
+
y: 0,
|
31
|
+
deltaY: stepSize,
|
32
|
+
lastY: position,
|
33
|
+
node: target
|
34
|
+
};
|
35
|
+
switch (keyCode) {
|
36
|
+
case ArrowUp:
|
37
|
+
case ArrowRight:
|
38
|
+
data.y = position - stepSize;
|
39
|
+
data.deltaY = -stepSize;
|
40
|
+
break;
|
41
|
+
case ArrowDown:
|
42
|
+
case ArrowLeft:
|
43
|
+
data.y = position + stepSize;
|
44
|
+
break;
|
45
|
+
case PageUp:
|
46
|
+
data.y = position - computedMultipleSteps;
|
47
|
+
data.deltaY = -computedMultipleSteps;
|
48
|
+
break;
|
49
|
+
case PageDown:
|
50
|
+
data.y = position + computedMultipleSteps;
|
51
|
+
data.deltaY = computedMultipleSteps;
|
52
|
+
break;
|
53
|
+
case End:
|
54
|
+
data.y = max * stepSize;
|
55
|
+
break;
|
56
|
+
case Home:
|
57
|
+
data.y = 0;
|
58
|
+
break;
|
59
|
+
default:
|
60
|
+
data.y = 0;
|
61
|
+
}
|
62
|
+
return data;
|
63
|
+
};
|
64
|
+
var computeHorizontalMovement = function computeHorizontalMovement(event, _ref2) {
|
65
|
+
var stepSize = _ref2.stepSize,
|
66
|
+
position = _ref2.position,
|
67
|
+
max = _ref2.max,
|
68
|
+
computedMultipleSteps = _ref2.computedMultipleSteps;
|
69
|
+
var keyCode = event.keyCode,
|
70
|
+
target = event.target;
|
71
|
+
var data = {
|
72
|
+
x: 0,
|
73
|
+
deltaX: stepSize,
|
74
|
+
lastX: position,
|
75
|
+
y: 0,
|
76
|
+
deltaY: 0,
|
77
|
+
lastY: 0,
|
78
|
+
node: target
|
79
|
+
};
|
80
|
+
switch (keyCode) {
|
81
|
+
case ArrowUp:
|
82
|
+
case ArrowRight:
|
83
|
+
data.x = position + stepSize;
|
84
|
+
break;
|
85
|
+
case ArrowDown:
|
86
|
+
case ArrowLeft:
|
87
|
+
data.x = position - stepSize;
|
88
|
+
data.deltaX = -stepSize;
|
89
|
+
break;
|
90
|
+
case PageUp:
|
91
|
+
data.x = position + computedMultipleSteps;
|
92
|
+
data.deltaX = computedMultipleSteps;
|
93
|
+
break;
|
94
|
+
case PageDown:
|
95
|
+
data.x = position - computedMultipleSteps;
|
96
|
+
data.deltaX = -computedMultipleSteps;
|
97
|
+
break;
|
98
|
+
case End:
|
99
|
+
data.x = max * stepSize;
|
100
|
+
break;
|
101
|
+
case Home:
|
102
|
+
data.x = 0;
|
103
|
+
break;
|
104
|
+
default:
|
105
|
+
data.x = 0;
|
106
|
+
}
|
107
|
+
return data;
|
108
|
+
};
|
109
|
+
export var computeKeyPressData = function computeKeyPressData(event, params) {
|
110
|
+
var keyCode = event.keyCode;
|
111
|
+
if (!Object.values(KeyboardSupport).includes(keyCode)) {
|
112
|
+
return null;
|
113
|
+
}
|
114
|
+
return params.isVertical ? computeVerticalMovement(event, params) : computeHorizontalMovement(event, params);
|
115
|
+
};
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["min", "max", "value", "ariaValueMin", "ariaLabel", "disabled"];
|
1
|
+
var _excluded = ["min", "max", "value", "ariaValueMin", "ariaLabel", "disabled", "orientation"];
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
3
3
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
4
4
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
@@ -12,6 +12,7 @@ export var Thumb = function Thumb(_ref) {
|
|
12
12
|
ariaValueMin = _ref$ariaValueMin === void 0 ? min : _ref$ariaValueMin,
|
13
13
|
ariaLabel = _ref.ariaLabel,
|
14
14
|
disabled = _ref.disabled,
|
15
|
+
orientation = _ref.orientation,
|
15
16
|
rest = _objectWithoutProperties(_ref, _excluded);
|
16
17
|
return /*#__PURE__*/React.createElement(ThumbBase, _extends({
|
17
18
|
role: "slider",
|
@@ -20,6 +21,6 @@ export var Thumb = function Thumb(_ref) {
|
|
20
21
|
"aria-valuemax": max,
|
21
22
|
"aria-valuenow": value,
|
22
23
|
disabled: disabled,
|
23
|
-
"aria-orientation":
|
24
|
+
"aria-orientation": orientation
|
24
25
|
}, rest));
|
25
26
|
};
|
@@ -3,8 +3,8 @@ import { addFocus } from '../../../../mixins';
|
|
3
3
|
import { tokens } from '../../Slider.tokens';
|
4
4
|
export var ThumbBase = /*#__PURE__*/styled.div.withConfig({
|
5
5
|
componentId: "plasma-new-hope__sc-13botku-0"
|
6
|
-
})(["width:var(
|
7
|
-
outlineOffset: '0.
|
6
|
+
})(["width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);min-height:var(--thumb-size);position:relative;border-radius:50%;box-sizing:border-box;background:var(", ");margin:0.0625rem;transition:border-color 0.1s ease-in-out;&:after{background:var(", ");margin:-0.0625rem;content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;}&:not([disabled]):hover:after,&:not([disabled]):active:after{background:var(", ");}&[disabled]{cursor:not-allowed;}&:focus{outline:none;}", ""], tokens.thumbBackgroundColor, tokens.thumbBorderColor, tokens.thumbFocusBorderColor, /*#__PURE__*/addFocus({
|
7
|
+
outlineOffset: '0.0625rem',
|
8
8
|
outlineSize: '0.125rem',
|
9
9
|
outlineRadius: '50%',
|
10
10
|
outlineColor: /*#__PURE__*/"var(".concat(tokens.thumbFocusBorderColor, ")")
|
@@ -6,8 +6,8 @@
|
|
6
6
|
* @param {number} max
|
7
7
|
* @return {number}
|
8
8
|
*/
|
9
|
-
export function getSliderThumbValue(
|
10
|
-
var newValue = Math.round(
|
9
|
+
export function getSliderThumbValue(handleCenterPosRelative, stepSize, min, max) {
|
10
|
+
var newValue = Math.round(handleCenterPosRelative / stepSize) + min;
|
11
11
|
return Math.min(Math.max(newValue, min), max);
|
12
12
|
}
|
13
13
|
|
@@ -18,11 +18,11 @@ export function getSliderThumbValue(handleCenterXRelative, stepSize, min, max) {
|
|
18
18
|
* @param {'left' | 'right'} side
|
19
19
|
* @return Array<number>
|
20
20
|
*/
|
21
|
-
export function getOffsets(ref, side) {
|
21
|
+
export function getOffsets(ref, side, isVertical) {
|
22
22
|
if (!ref || !('current' in ref) || !ref.current || !side) {
|
23
23
|
return [0, 0];
|
24
24
|
}
|
25
|
-
var size = ref.current.clientWidth;
|
25
|
+
var size = isVertical ? ref.current.clientHeight : ref.current.clientWidth;
|
26
26
|
if (side === 'left') {
|
27
27
|
return [0, size];
|
28
28
|
}
|
@@ -33,15 +33,33 @@ export function getOffsets(ref, side) {
|
|
33
33
|
}
|
34
34
|
export var sizeData = {
|
35
35
|
s: {
|
36
|
-
|
37
|
-
|
36
|
+
small: {
|
37
|
+
indent: 0.5,
|
38
|
+
fontSizeMultiplier: 16
|
39
|
+
},
|
40
|
+
large: {
|
41
|
+
indent: 0.625,
|
42
|
+
fontSizeMultiplier: 16
|
43
|
+
}
|
38
44
|
},
|
39
45
|
m: {
|
40
|
-
|
41
|
-
|
46
|
+
small: {
|
47
|
+
indent: 0.5,
|
48
|
+
fontSizeMultiplier: 16
|
49
|
+
},
|
50
|
+
large: {
|
51
|
+
indent: 0.625,
|
52
|
+
fontSizeMultiplier: 16
|
53
|
+
}
|
42
54
|
},
|
43
55
|
l: {
|
44
|
-
|
45
|
-
|
56
|
+
small: {
|
57
|
+
indent: 0.5,
|
58
|
+
fontSizeMultiplier: 16
|
59
|
+
},
|
60
|
+
large: {
|
61
|
+
indent: 0.625,
|
62
|
+
fontSizeMultiplier: 16
|
63
|
+
}
|
46
64
|
}
|
47
65
|
};
|