@salutejs/plasma-new-hope 0.84.2-canary.1217.9256888978.0 → 0.85.0-canary.1208.9252417590.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/Radiobox/Radiobox.js.map +1 -1
- package/cjs/components/Range/Range.css +63 -0
- package/cjs/components/Range/Range.js +146 -0
- package/cjs/components/Range/Range.js.map +1 -0
- package/cjs/components/Range/Range.styles.js +63 -0
- package/cjs/components/Range/Range.styles.js.map +1 -0
- package/cjs/components/Range/Range.styles_mc4w65.css +8 -0
- package/cjs/components/Range/Range.tokens.js +106 -0
- package/cjs/components/Range/Range.tokens.js.map +1 -0
- package/cjs/components/Range/utils/index.js +24 -0
- package/cjs/components/Range/utils/index.js.map +1 -0
- package/cjs/components/Range/variations/_disabled/base.js +9 -0
- package/cjs/components/Range/variations/_disabled/base.js.map +1 -0
- package/cjs/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
- package/cjs/components/Range/variations/_readonly/base.js +9 -0
- package/cjs/components/Range/variations/_readonly/base.js.map +1 -0
- package/cjs/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
- package/cjs/components/Range/variations/_size/base.js +9 -0
- package/cjs/components/Range/variations/_size/base.js.map +1 -0
- package/cjs/components/Range/variations/_size/base_16xiubi.css +1 -0
- package/cjs/components/Range/variations/_view/base.js +9 -0
- package/cjs/components/Range/variations/_view/base.js.map +1 -0
- package/cjs/components/Range/variations/_view/base_5iz3nr.css +1 -0
- package/cjs/components/Slider/Slider.css +11 -9
- package/cjs/components/Slider/components/Double/Double.css +11 -9
- package/cjs/components/TextField/TextField.js +10 -10
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/cjs/components/TextField/TextField.styles.js +13 -1
- package/cjs/components/TextField/TextField.styles.js.map +1 -1
- package/cjs/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
- package/cjs/components/TextField/TextField.tokens.js +5 -0
- package/cjs/components/TextField/TextField.tokens.js.map +1 -1
- package/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
- package/cjs/components/TextField/variations/_label-placement/inner.js.map +1 -1
- package/cjs/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
- package/cjs/components/TextField/variations/_size/base.js +1 -1
- package/cjs/components/TextField/variations/_size/base.js.map +1 -1
- package/{es/components/TextField/variations/_size/base_1khzr9t.css → cjs/components/TextField/variations/_size/base_ntoddv.css} +1 -1
- package/cjs/components/TextField/variations/_view/base.js +1 -1
- package/cjs/components/TextField/variations/_view/base.js.map +1 -1
- package/{es/components/TextField/variations/_view/base_1qd77x6.css → cjs/components/TextField/variations/_view/base_19gxyva.css} +1 -1
- package/cjs/index.css +28 -9
- package/cjs/index.js +5 -0
- package/cjs/index.js.map +1 -1
- package/es/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/es/components/Radiobox/Radiobox.js.map +1 -1
- package/es/components/Range/Range.css +63 -0
- package/es/components/Range/Range.js +141 -0
- package/es/components/Range/Range.js.map +1 -0
- package/es/components/Range/Range.styles.js +52 -0
- package/es/components/Range/Range.styles.js.map +1 -0
- package/es/components/Range/Range.styles_mc4w65.css +8 -0
- package/es/components/Range/Range.tokens.js +101 -0
- package/es/components/Range/Range.tokens.js.map +1 -0
- package/es/components/Range/utils/index.js +19 -0
- package/es/components/Range/utils/index.js.map +1 -0
- package/es/components/Range/variations/_disabled/base.js +5 -0
- package/es/components/Range/variations/_disabled/base.js.map +1 -0
- package/es/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
- package/es/components/Range/variations/_readonly/base.js +5 -0
- package/es/components/Range/variations/_readonly/base.js.map +1 -0
- package/es/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
- package/es/components/Range/variations/_size/base.js +5 -0
- package/es/components/Range/variations/_size/base.js.map +1 -0
- package/es/components/Range/variations/_size/base_16xiubi.css +1 -0
- package/es/components/Range/variations/_view/base.js +5 -0
- package/es/components/Range/variations/_view/base.js.map +1 -0
- package/es/components/Range/variations/_view/base_5iz3nr.css +1 -0
- package/es/components/Slider/Slider.css +11 -9
- package/es/components/Slider/components/Double/Double.css +11 -9
- package/es/components/TextField/TextField.js +11 -11
- package/es/components/TextField/TextField.js.map +1 -1
- package/es/components/TextField/TextField.styles.js +12 -2
- package/es/components/TextField/TextField.styles.js.map +1 -1
- package/es/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
- package/es/components/TextField/TextField.tokens.js +5 -0
- package/es/components/TextField/TextField.tokens.js.map +1 -1
- package/es/components/TextField/variations/_label-placement/inner.js +1 -1
- package/es/components/TextField/variations/_label-placement/inner.js.map +1 -1
- package/es/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
- package/es/components/TextField/variations/_size/base.js +1 -1
- package/es/components/TextField/variations/_size/base.js.map +1 -1
- package/{cjs/components/TextField/variations/_size/base_1khzr9t.css → es/components/TextField/variations/_size/base_ntoddv.css} +1 -1
- package/es/components/TextField/variations/_view/base.js +1 -1
- package/es/components/TextField/variations/_view/base.js.map +1 -1
- package/{cjs/components/TextField/variations/_view/base_1qd77x6.css → es/components/TextField/variations/_view/base_19gxyva.css} +1 -1
- package/es/index.css +28 -9
- package/es/index.js +2 -0
- package/es/index.js.map +1 -1
- package/package.json +2 -2
- package/styled-components/cjs/components/Range/Range.js +148 -0
- package/styled-components/cjs/components/Range/Range.styles.js +39 -0
- package/styled-components/cjs/components/Range/Range.template-doc.mdx +323 -0
- package/styled-components/cjs/components/Range/Range.tokens.js +104 -0
- package/styled-components/cjs/components/Range/Range.types.js +5 -0
- package/styled-components/cjs/components/Range/index.js +25 -0
- package/styled-components/cjs/components/Range/utils/index.js +22 -0
- package/styled-components/cjs/components/Range/variations/_disabled/base.js +9 -0
- package/styled-components/cjs/components/Range/variations/_disabled/tokens.json +4 -0
- package/styled-components/cjs/components/Range/variations/_readonly/base.js +10 -0
- package/styled-components/cjs/components/Range/variations/_readonly/tokens.json +4 -0
- package/styled-components/cjs/components/Range/variations/_size/base.js +10 -0
- package/styled-components/cjs/components/Range/variations/_size/tokens.json +26 -0
- package/styled-components/cjs/components/Range/variations/_view/base.js +10 -0
- package/styled-components/cjs/components/Range/variations/_view/tokens.json +6 -0
- package/styled-components/cjs/components/TextField/TextField.js +10 -10
- package/styled-components/cjs/components/TextField/TextField.styles.js +7 -1
- package/styled-components/cjs/components/TextField/TextField.tokens.js +5 -0
- package/styled-components/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
- package/styled-components/cjs/components/TextField/variations/_size/base.js +1 -1
- package/styled-components/cjs/components/TextField/variations/_view/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.config.js +31 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.js +11 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
- package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
- package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
- package/styled-components/cjs/examples/plasma_web/components/Range/Range.config.js +31 -0
- package/styled-components/cjs/examples/plasma_web/components/Range/Range.js +11 -0
- package/styled-components/cjs/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
- package/styled-components/cjs/index.js +11 -0
- package/styled-components/es/components/Range/Range.js +139 -0
- package/styled-components/es/components/Range/Range.styles.js +31 -0
- package/styled-components/es/components/Range/Range.template-doc.mdx +323 -0
- package/styled-components/es/components/Range/Range.tokens.js +98 -0
- package/styled-components/es/components/Range/Range.types.js +1 -0
- package/styled-components/es/components/Range/index.js +2 -0
- package/styled-components/es/components/Range/utils/index.js +16 -0
- package/styled-components/es/components/Range/variations/_disabled/base.js +3 -0
- package/styled-components/es/components/Range/variations/_disabled/tokens.json +4 -0
- package/styled-components/es/components/Range/variations/_readonly/base.js +4 -0
- package/styled-components/es/components/Range/variations/_readonly/tokens.json +4 -0
- package/styled-components/es/components/Range/variations/_size/base.js +4 -0
- package/styled-components/es/components/Range/variations/_size/tokens.json +26 -0
- package/styled-components/es/components/Range/variations/_view/base.js +4 -0
- package/styled-components/es/components/Range/variations/_view/tokens.json +6 -0
- package/styled-components/es/components/TextField/TextField.js +11 -11
- package/styled-components/es/components/TextField/TextField.styles.js +6 -0
- package/styled-components/es/components/TextField/TextField.tokens.js +5 -0
- package/styled-components/es/components/TextField/variations/_label-placement/inner.js +2 -2
- package/styled-components/es/components/TextField/variations/_size/base.js +2 -2
- package/styled-components/es/components/TextField/variations/_view/base.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Range/Range.config.js +25 -0
- package/styled-components/es/examples/plasma_b2c/components/Range/Range.js +5 -0
- package/styled-components/es/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
- package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
- package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
- package/styled-components/es/examples/plasma_web/components/Range/Range.config.js +25 -0
- package/styled-components/es/examples/plasma_web/components/Range/Range.js +5 -0
- package/styled-components/es/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
- package/styled-components/es/index.js +2 -1
- package/types/components/Radiobox/Radiobox.d.ts +3 -3
- package/types/components/Radiobox/Radiobox.d.ts.map +1 -1
- package/types/components/Range/Range.d.ts +31 -0
- package/types/components/Range/Range.d.ts.map +1 -0
- package/types/components/Range/Range.styles.d.ts +48 -0
- package/types/components/Range/Range.styles.d.ts.map +1 -0
- package/types/components/Range/Range.tokens.d.ts +99 -0
- package/types/components/Range/Range.tokens.d.ts.map +1 -0
- package/types/components/Range/Range.types.d.ts +143 -0
- package/types/components/Range/Range.types.d.ts.map +1 -0
- package/types/components/Range/index.d.ts +4 -0
- package/types/components/Range/index.d.ts.map +1 -0
- package/types/components/Range/utils/index.d.ts +5 -0
- package/types/components/Range/utils/index.d.ts.map +1 -0
- package/types/components/Range/variations/_disabled/base.d.ts +2 -0
- package/types/components/Range/variations/_disabled/base.d.ts.map +1 -0
- package/types/components/Range/variations/_readonly/base.d.ts +2 -0
- package/types/components/Range/variations/_readonly/base.d.ts.map +1 -0
- package/types/components/Range/variations/_size/base.d.ts +2 -0
- package/types/components/Range/variations/_size/base.d.ts.map +1 -0
- package/types/components/Range/variations/_view/base.d.ts +2 -0
- package/types/components/Range/variations/_view/base.d.ts.map +1 -0
- package/types/components/Slider/components/Double/Double.styles.d.ts +4 -0
- package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
- package/types/components/TextField/TextField.d.ts.map +1 -1
- package/types/components/TextField/TextField.styles.d.ts +2 -0
- package/types/components/TextField/TextField.styles.d.ts.map +1 -1
- package/types/components/TextField/TextField.tokens.d.ts +5 -0
- package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
- package/types/components/TextField/TextField.types.d.ts +8 -0
- package/types/components/TextField/TextField.types.d.ts.map +1 -1
- package/types/components/TextField/variations/_label-placement/inner.d.ts.map +1 -1
- package/types/components/TextField/variations/_size/base.d.ts.map +1 -1
- package/types/components/TextField/variations/_view/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts +1 -1
- package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Range/Range.config.d.ts +24 -0
- package/types/examples/plasma_b2c/components/Range/Range.config.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/Range/Range.d.ts +127 -0
- package/types/examples/plasma_b2c/components/Range/Range.d.ts.map +1 -0
- package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +4 -0
- package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts +1 -1
- package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Range/Range.config.d.ts +24 -0
- package/types/examples/plasma_web/components/Range/Range.config.d.ts.map +1 -0
- package/types/examples/plasma_web/components/Range/Range.d.ts +127 -0
- package/types/examples/plasma_web/components/Range/Range.d.ts.map +1 -0
- package/types/examples/plasma_web/components/TextField/TextField.d.ts +4 -0
- package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
- package/types/examples/sds_engineer/components/Radiobox/Radiobox.d.ts +1 -1
- package/types/examples/sds_engineer/components/Radiobox/Radiobox.d.ts.map +1 -1
- package/types/examples/sds_engineer/components/TextField/TextField.d.ts +4 -0
- package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/cjs/components/TextField/variations/_label-placement/inner_gqlcj2.css +0 -1
- package/es/components/TextField/variations/_label-placement/inner_gqlcj2.css +0 -1
@@ -0,0 +1,139 @@
|
|
1
|
+
var _StyledDivider;
|
2
|
+
var _excluded = ["label", "leftHelper", "contentLeft", "contentRight", "view", "size", "readOnly", "disabled", "dividerVariant", "dividerIcon", "firstValue", "secondValue", "firstValueError", "secondValueError", "firstValueSuccess", "secondValueSuccess", "firstPlaceholder", "secondPlaceholder", "firstTextfieldContentLeft", "firstTextfieldContentRight", "secondTextfieldContentLeft", "secondTextfieldContentRight", "firstTextfieldTextBefore", "secondTextfieldTextBefore", "firstTextfieldTextAfter", "secondTextfieldTextAfter", "onChangeFirstValue", "onChangeSecondValue", "onSearchFirstValue", "onSearchSecondValue", "onFocusFirstTextfield", "onFocusSecondTextfield", "onBlurFirstTextfield", "onBlurSecondTextfield"];
|
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 _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; }
|
5
|
+
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; }
|
6
|
+
import React, { forwardRef, useMemo } from 'react';
|
7
|
+
import { cx } from '../../utils';
|
8
|
+
import { base as sizeCSS } from './variations/_size/base';
|
9
|
+
import { base as viewCSS } from './variations/_view/base';
|
10
|
+
import { base as disabledCSS } from './variations/_disabled/base';
|
11
|
+
import { base as readOnlyCSS } from './variations/_readonly/base';
|
12
|
+
import { getChangeHandler, getSearchHandler } from './utils';
|
13
|
+
import { ContentWrapper, LeftHelper, StyledContentLeft, StyledContentRight, StyledDivider, StyledInput, StyledLabel, base } from './Range.styles';
|
14
|
+
import { classes } from './Range.tokens';
|
15
|
+
export var rangeRoot = function rangeRoot(Root) {
|
16
|
+
return /*#__PURE__*/forwardRef(function (_ref, ref) {
|
17
|
+
var _StyledDivider2;
|
18
|
+
var label = _ref.label,
|
19
|
+
leftHelper = _ref.leftHelper,
|
20
|
+
contentLeft = _ref.contentLeft,
|
21
|
+
contentRight = _ref.contentRight,
|
22
|
+
view = _ref.view,
|
23
|
+
size = _ref.size,
|
24
|
+
_ref$readOnly = _ref.readOnly,
|
25
|
+
readOnly = _ref$readOnly === void 0 ? false : _ref$readOnly,
|
26
|
+
_ref$disabled = _ref.disabled,
|
27
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
28
|
+
_ref$dividerVariant = _ref.dividerVariant,
|
29
|
+
dividerVariant = _ref$dividerVariant === void 0 ? 'dash' : _ref$dividerVariant,
|
30
|
+
dividerIcon = _ref.dividerIcon,
|
31
|
+
firstValue = _ref.firstValue,
|
32
|
+
secondValue = _ref.secondValue,
|
33
|
+
firstValueError = _ref.firstValueError,
|
34
|
+
secondValueError = _ref.secondValueError,
|
35
|
+
firstValueSuccess = _ref.firstValueSuccess,
|
36
|
+
secondValueSuccess = _ref.secondValueSuccess,
|
37
|
+
firstPlaceholder = _ref.firstPlaceholder,
|
38
|
+
secondPlaceholder = _ref.secondPlaceholder,
|
39
|
+
firstTextfieldContentLeft = _ref.firstTextfieldContentLeft,
|
40
|
+
firstTextfieldContentRight = _ref.firstTextfieldContentRight,
|
41
|
+
secondTextfieldContentLeft = _ref.secondTextfieldContentLeft,
|
42
|
+
secondTextfieldContentRight = _ref.secondTextfieldContentRight,
|
43
|
+
firstTextfieldTextBefore = _ref.firstTextfieldTextBefore,
|
44
|
+
secondTextfieldTextBefore = _ref.secondTextfieldTextBefore,
|
45
|
+
firstTextfieldTextAfter = _ref.firstTextfieldTextAfter,
|
46
|
+
secondTextfieldTextAfter = _ref.secondTextfieldTextAfter,
|
47
|
+
onChangeFirstValue = _ref.onChangeFirstValue,
|
48
|
+
onChangeSecondValue = _ref.onChangeSecondValue,
|
49
|
+
onSearchFirstValue = _ref.onSearchFirstValue,
|
50
|
+
onSearchSecondValue = _ref.onSearchSecondValue,
|
51
|
+
onFocusFirstTextfield = _ref.onFocusFirstTextfield,
|
52
|
+
onFocusSecondTextfield = _ref.onFocusSecondTextfield,
|
53
|
+
onBlurFirstTextfield = _ref.onBlurFirstTextfield,
|
54
|
+
onBlurSecondTextfield = _ref.onBlurSecondTextfield,
|
55
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
56
|
+
var rangeErrorClass = firstValueError && secondValueError ? classes.rangeError : undefined;
|
57
|
+
var firstValueErrorClass = !rangeErrorClass && firstValueError ? classes.rangeValueError : undefined;
|
58
|
+
var secondValueErrorClass = !rangeErrorClass && secondValueError ? classes.rangeValueError : undefined;
|
59
|
+
var rangeSuccessClass = firstValueSuccess && secondValueSuccess ? classes.rangeSuccess : undefined;
|
60
|
+
var firstValueSuccessClass = !rangeSuccessClass && firstValueSuccess ? classes.rangeValueSuccess : undefined;
|
61
|
+
var secondValueSuccessClass = !rangeSuccessClass && secondValueSuccess ? classes.rangeValueSuccess : undefined;
|
62
|
+
var handleChangeFirstValue = getChangeHandler(onChangeFirstValue, disabled, readOnly);
|
63
|
+
var handleChangeSecondValue = getChangeHandler(onChangeSecondValue, disabled, readOnly);
|
64
|
+
var handleSearchFirstValue = getSearchHandler(onSearchFirstValue, disabled, readOnly);
|
65
|
+
var handleSearchSecondValue = getSearchHandler(onSearchSecondValue, disabled, readOnly);
|
66
|
+
var Divider = useMemo(function () {
|
67
|
+
if (dividerVariant === 'none') {
|
68
|
+
return null;
|
69
|
+
}
|
70
|
+
if (dividerVariant === 'dash') {
|
71
|
+
return _StyledDivider || (_StyledDivider = /*#__PURE__*/React.createElement(StyledDivider, null, "\u2013"));
|
72
|
+
}
|
73
|
+
return _StyledDivider2 || (_StyledDivider2 = /*#__PURE__*/React.createElement(StyledDivider, null, dividerIcon));
|
74
|
+
}, [dividerVariant, dividerIcon]);
|
75
|
+
return /*#__PURE__*/React.createElement(Root, _extends({
|
76
|
+
view: view,
|
77
|
+
size: size,
|
78
|
+
disabled: disabled,
|
79
|
+
readOnly: !disabled && readOnly,
|
80
|
+
ref: ref
|
81
|
+
}, rest), label && /*#__PURE__*/React.createElement(StyledLabel, null, label), /*#__PURE__*/React.createElement(ContentWrapper, {
|
82
|
+
className: cx(rangeErrorClass, rangeSuccessClass)
|
83
|
+
}, contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(StyledInput, {
|
84
|
+
className: cx(firstValueErrorClass, firstValueSuccessClass),
|
85
|
+
value: firstValue,
|
86
|
+
readOnly: readOnly,
|
87
|
+
disabled: disabled,
|
88
|
+
placeholder: firstPlaceholder,
|
89
|
+
contentLeft: firstTextfieldContentLeft,
|
90
|
+
contentRight: firstTextfieldContentRight,
|
91
|
+
textBefore: firstTextfieldTextBefore,
|
92
|
+
textAfter: firstTextfieldTextAfter,
|
93
|
+
onChange: handleChangeFirstValue,
|
94
|
+
onSearch: handleSearchFirstValue,
|
95
|
+
onFocus: onFocusFirstTextfield,
|
96
|
+
onBlur: onBlurFirstTextfield
|
97
|
+
}), Divider, /*#__PURE__*/React.createElement(StyledInput, {
|
98
|
+
className: cx(secondValueErrorClass, secondValueSuccessClass),
|
99
|
+
value: secondValue,
|
100
|
+
readOnly: readOnly,
|
101
|
+
disabled: disabled,
|
102
|
+
placeholder: secondPlaceholder,
|
103
|
+
contentLeft: secondTextfieldContentLeft,
|
104
|
+
contentRight: secondTextfieldContentRight,
|
105
|
+
textBefore: secondTextfieldTextBefore,
|
106
|
+
textAfter: secondTextfieldTextAfter,
|
107
|
+
onChange: handleChangeSecondValue,
|
108
|
+
onSearch: handleSearchSecondValue,
|
109
|
+
onFocus: onFocusSecondTextfield,
|
110
|
+
onBlur: onBlurSecondTextfield
|
111
|
+
}), contentRight && /*#__PURE__*/React.createElement(StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(LeftHelper, null, leftHelper));
|
112
|
+
});
|
113
|
+
};
|
114
|
+
export var rangeConfig = {
|
115
|
+
name: 'Range',
|
116
|
+
tag: 'div',
|
117
|
+
layout: rangeRoot,
|
118
|
+
base: base,
|
119
|
+
variations: {
|
120
|
+
view: {
|
121
|
+
css: viewCSS
|
122
|
+
},
|
123
|
+
size: {
|
124
|
+
css: sizeCSS
|
125
|
+
},
|
126
|
+
disabled: {
|
127
|
+
css: disabledCSS,
|
128
|
+
attrs: true
|
129
|
+
},
|
130
|
+
readOnly: {
|
131
|
+
css: readOnlyCSS,
|
132
|
+
attrs: true
|
133
|
+
}
|
134
|
+
},
|
135
|
+
defaults: {
|
136
|
+
size: 'm',
|
137
|
+
view: 'default'
|
138
|
+
}
|
139
|
+
};
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import styled from 'styled-components';
|
2
|
+
import { css } from 'styled-components';
|
3
|
+
import { component, mergeConfig } from '../../engines';
|
4
|
+
import { textFieldConfig, textFieldTokens } from '../TextField';
|
5
|
+
import { classes, tokens } from './Range.tokens';
|
6
|
+
var mergedConfig = /*#__PURE__*/mergeConfig(textFieldConfig);
|
7
|
+
var TextField = /*#__PURE__*/component(mergedConfig);
|
8
|
+
|
9
|
+
// NOTE: переопределение токенов TextField
|
10
|
+
export var StyledInput = /*#__PURE__*/styled(TextField).withConfig({
|
11
|
+
componentId: "plasma-new-hope__sc-xpkrak-0"
|
12
|
+
})(["flex:1;", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");&.", "{", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");}&.", "{", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");}"], textFieldTokens.color, tokens.textFieldColor, textFieldTokens.placeholderColor, tokens.textFieldPlaceholderColor, textFieldTokens.caretColor, tokens.textFieldCaretColor, textFieldTokens.focusColor, tokens.textFieldFocusColor, textFieldTokens.backgroundColor, tokens.textFieldBackgroundColor, textFieldTokens.backgroundColorHover, tokens.textFieldBackgroundColorHover, textFieldTokens.backgroundColorFocus, tokens.textFieldBackgroundColorFocus, textFieldTokens.borderColor, tokens.textFieldBorderColor, textFieldTokens.borderColorHover, tokens.textFieldBorderColorHover, textFieldTokens.borderColorFocus, tokens.textFieldBorderColorFocus, textFieldTokens.colorReadOnly, tokens.textFieldColorReadOnly, textFieldTokens.backgroundColorReadOnly, tokens.textFieldBackgroundColorReadOnly, textFieldTokens.borderColorReadOnly, tokens.textFieldBorderColorReadOnly, textFieldTokens.placeholderColorReadOnly, tokens.textFieldPlaceholderColorReadOnly, textFieldTokens.height, tokens.textFieldHeight, textFieldTokens.borderWidth, tokens.textFieldBorderWidth, textFieldTokens.borderRadius, tokens.textFieldBorderRadius, textFieldTokens.padding, tokens.textFieldPadding, textFieldTokens.leftContentMargin, tokens.textFieldLeftContentMargin, textFieldTokens.rightContentMargin, tokens.textFieldRightContentMargin, textFieldTokens.fontFamily, tokens.textFieldFontFamily, textFieldTokens.fontSize, tokens.textFieldFontSize, textFieldTokens.fontStyle, tokens.textFieldFontStyle, textFieldTokens.fontWeight, tokens.textFieldFontWeight, textFieldTokens.letterSpacing, tokens.textFieldLetterSpacing, textFieldTokens.lineHeight, tokens.textFieldLineHeight, textFieldTokens.disabledOpacity, tokens.disabledOpacity, textFieldTokens.textBeforeColor, tokens.textFieldTextBeforeColor, textFieldTokens.textAfterColor, tokens.textFieldTextAfterColor, textFieldTokens.textBeforeMargin, tokens.textFieldTextBeforeMargin, textFieldTokens.textAfterMargin, tokens.textFieldTextAfterMargin, classes.rangeValueError, textFieldTokens.backgroundColor, tokens.textFieldBackgroundErrorColor, textFieldTokens.backgroundColorHover, tokens.textFieldBackgroundErrorColorHover, textFieldTokens.backgroundColorFocus, tokens.textFieldBackgroundErrorColorFocus, textFieldTokens.borderColor, tokens.textFieldBorderColorError, textFieldTokens.borderColorHover, tokens.textFieldBorderColorErrorHover, textFieldTokens.borderColorFocus, tokens.textFieldBorderColorErrorFocus, classes.rangeValueSuccess, textFieldTokens.backgroundColor, tokens.textFieldBackgroundSuccessColor, textFieldTokens.backgroundColorHover, tokens.textFieldBackgroundSuccessColorHover, textFieldTokens.backgroundColorFocus, tokens.textFieldBackgroundSuccessColorFocus, textFieldTokens.borderColor, tokens.textFieldBorderColorSuccess, textFieldTokens.borderColorHover, tokens.textFieldBorderColorSuccessHover, textFieldTokens.borderColorFocus, tokens.textFieldBorderColorSuccessFocus);
|
13
|
+
export var base = /*#__PURE__*/css([""]);
|
14
|
+
export var StyledLabel = /*#__PURE__*/styled.label.withConfig({
|
15
|
+
componentId: "plasma-new-hope__sc-xpkrak-1"
|
16
|
+
})([""]);
|
17
|
+
export var LeftHelper = /*#__PURE__*/styled.div.withConfig({
|
18
|
+
componentId: "plasma-new-hope__sc-xpkrak-2"
|
19
|
+
})([""]);
|
20
|
+
export var ContentWrapper = /*#__PURE__*/styled.div.withConfig({
|
21
|
+
componentId: "plasma-new-hope__sc-xpkrak-3"
|
22
|
+
})(["display:flex;align-items:center;"]);
|
23
|
+
export var StyledDivider = /*#__PURE__*/styled.div.withConfig({
|
24
|
+
componentId: "plasma-new-hope__sc-xpkrak-4"
|
25
|
+
})([""]);
|
26
|
+
export var StyledContentLeft = /*#__PURE__*/styled.div.withConfig({
|
27
|
+
componentId: "plasma-new-hope__sc-xpkrak-5"
|
28
|
+
})([""]);
|
29
|
+
export var StyledContentRight = /*#__PURE__*/styled.div.withConfig({
|
30
|
+
componentId: "plasma-new-hope__sc-xpkrak-6"
|
31
|
+
})([""]);
|
@@ -0,0 +1,323 @@
|
|
1
|
+
---
|
2
|
+
id: range
|
3
|
+
title: Range
|
4
|
+
---
|
5
|
+
|
6
|
+
import { PropsTable, Description } from '@site/src/components';
|
7
|
+
import Tabs from '@theme/Tabs';
|
8
|
+
import TabItem from '@theme/TabItem';
|
9
|
+
|
10
|
+
# Range
|
11
|
+
<Description name="Range" />
|
12
|
+
<PropsTable name="Range" exclude={['css']} />
|
13
|
+
|
14
|
+
## Использование
|
15
|
+
Компонент `Range` представляет собой два поля ввода какого-либо диапазона. К примеру диапазон цен или дат.
|
16
|
+
|
17
|
+
```tsx live
|
18
|
+
import React, {useState} from 'react';
|
19
|
+
import { Range, Button } from '@salutejs/{{ package }}';
|
20
|
+
import { IconSearch } from '@salutejs/plasma-icons';
|
21
|
+
|
22
|
+
export function App() {
|
23
|
+
const [firstValue, setFirstValue] = useState('');
|
24
|
+
const [secondValue, setSecondValue] = useState('');
|
25
|
+
|
26
|
+
const ActionButton = () => {
|
27
|
+
return (
|
28
|
+
<Button view="clear" size="l">
|
29
|
+
<IconSearch size="s" />
|
30
|
+
</Button>
|
31
|
+
);
|
32
|
+
};
|
33
|
+
|
34
|
+
return (
|
35
|
+
<div>
|
36
|
+
<Range
|
37
|
+
firstValue={firstValue}
|
38
|
+
secondValue={secondValue}
|
39
|
+
label="Лейбл"
|
40
|
+
leftHelper="Подсказка к полю"
|
41
|
+
firstPlaceholder="Заполните поле 1"
|
42
|
+
secondPlaceholder="Заполните поле 2"
|
43
|
+
contentRight={<ActionButton />}
|
44
|
+
dividerVariant="dash"
|
45
|
+
onChangeFirstValue={(e) => {
|
46
|
+
setFirstValue(e.target.value);
|
47
|
+
}}
|
48
|
+
onChangeSecondValue={(e) => {
|
49
|
+
setSecondValue(e.target.value);
|
50
|
+
}}
|
51
|
+
/>
|
52
|
+
</div>
|
53
|
+
);
|
54
|
+
}
|
55
|
+
```
|
56
|
+
|
57
|
+
### Размер Range
|
58
|
+
Размер Range задаётся с помощью свойства `size`:
|
59
|
+
|
60
|
+
```tsx live
|
61
|
+
import React from 'react';
|
62
|
+
import { Range } from '@salutejs/{{ package }}';
|
63
|
+
|
64
|
+
export function App() {
|
65
|
+
return (
|
66
|
+
<div style=\{{ display: "flex", flexDirection: "column", gap: "2rem" }}>
|
67
|
+
<Range
|
68
|
+
view="default"
|
69
|
+
size="l"
|
70
|
+
label="Лейбл"
|
71
|
+
leftHelper="Подсказка к полю"
|
72
|
+
firstPlaceholder="Заполните поле 1"
|
73
|
+
secondPlaceholder="Заполните поле 2"
|
74
|
+
dividerVariant="dash"
|
75
|
+
/>
|
76
|
+
|
77
|
+
<Range
|
78
|
+
view="default"
|
79
|
+
size="m"
|
80
|
+
label="Лейбл"
|
81
|
+
leftHelper="Подсказка к полю"
|
82
|
+
firstPlaceholder="Заполните поле 1"
|
83
|
+
secondPlaceholder="Заполните поле 2"
|
84
|
+
dividerVariant="dash"
|
85
|
+
/>
|
86
|
+
|
87
|
+
<Range
|
88
|
+
view="default"
|
89
|
+
size="s"
|
90
|
+
label="Лейбл"
|
91
|
+
leftHelper="Подсказка к полю"
|
92
|
+
firstPlaceholder="Заполните поле 1"
|
93
|
+
secondPlaceholder="Заполните поле 2"
|
94
|
+
dividerVariant="dash"
|
95
|
+
/>
|
96
|
+
|
97
|
+
<Range
|
98
|
+
view="default"
|
99
|
+
size="xs"
|
100
|
+
label="Лейбл"
|
101
|
+
leftHelper="Подсказка к полю"
|
102
|
+
firstPlaceholder="Заполните поле 1"
|
103
|
+
secondPlaceholder="Заполните поле 2"
|
104
|
+
dividerVariant="dash"
|
105
|
+
/>
|
106
|
+
</div>
|
107
|
+
);
|
108
|
+
}
|
109
|
+
```
|
110
|
+
|
111
|
+
### Вид разделителя
|
112
|
+
Вид разделителя задается с помощью свойства `dividerVariant`:
|
113
|
+
|
114
|
+
<Tabs>
|
115
|
+
<TabItem value="dash" label="Dash" default>
|
116
|
+
```tsx live
|
117
|
+
import React from 'react';
|
118
|
+
import { Range } from '@salutejs/{{ package }}';
|
119
|
+
|
120
|
+
export function App() {
|
121
|
+
return (
|
122
|
+
<div>
|
123
|
+
<Range
|
124
|
+
view="default"
|
125
|
+
size="l"
|
126
|
+
label="Лейбл"
|
127
|
+
leftHelper="Подсказка к полю"
|
128
|
+
firstPlaceholder="Заполните поле 1"
|
129
|
+
secondPlaceholder="Заполните поле 2"
|
130
|
+
dividerVariant="dash"
|
131
|
+
/>
|
132
|
+
</div>
|
133
|
+
);
|
134
|
+
}
|
135
|
+
```
|
136
|
+
</TabItem>
|
137
|
+
|
138
|
+
<TabItem value="none" label="None">
|
139
|
+
При таком варианте свойства `firstTextfieldTextBefore` и `secondTextfieldTextBefore` становятся обязательными:
|
140
|
+
|
141
|
+
```tsx live
|
142
|
+
import React from 'react';
|
143
|
+
import { Range } from '@salutejs/{{ package }}';
|
144
|
+
|
145
|
+
export function App() {
|
146
|
+
return (
|
147
|
+
<div>
|
148
|
+
<Range
|
149
|
+
view="default"
|
150
|
+
size="l"
|
151
|
+
label="Лейбл"
|
152
|
+
firstValue="10:00"
|
153
|
+
secondValue="15:45"
|
154
|
+
leftHelper="Подсказка к полю"
|
155
|
+
firstTextfieldTextBefore="С"
|
156
|
+
secondTextfieldTextBefore="ДО"
|
157
|
+
dividerVariant="none"
|
158
|
+
/>
|
159
|
+
</div>
|
160
|
+
);
|
161
|
+
}
|
162
|
+
```
|
163
|
+
</TabItem>
|
164
|
+
|
165
|
+
<TabItem value="icon" label="Icon">
|
166
|
+
При таком варианте свойства `dividerIcon` становится обязательным:
|
167
|
+
|
168
|
+
```tsx live
|
169
|
+
import React from 'react';
|
170
|
+
import { Range } from '@salutejs/{{ package }}';
|
171
|
+
import { IconSber } from '@salutejs/plasma-icons';
|
172
|
+
|
173
|
+
export function App() {
|
174
|
+
return (
|
175
|
+
<div>
|
176
|
+
<Range
|
177
|
+
view="default"
|
178
|
+
size="l"
|
179
|
+
label="Лейбл"
|
180
|
+
firstValue="10:00"
|
181
|
+
secondValue="15:45"
|
182
|
+
leftHelper="Подсказка к полю"
|
183
|
+
firstTextfieldTextBefore="С"
|
184
|
+
secondTextfieldTextBefore="ДО"
|
185
|
+
dividerVariant="icon"
|
186
|
+
dividerIcon={<IconSber size="s" />}
|
187
|
+
/>
|
188
|
+
</div>
|
189
|
+
);
|
190
|
+
}
|
191
|
+
```
|
192
|
+
</TabItem>
|
193
|
+
</Tabs>
|
194
|
+
|
195
|
+
### Валидация и индикация успешного ввода
|
196
|
+
За индикацию ошибки или успешного ввода отвечают `firstValueError`, `secondValueError`, `firstValueSuccess`, `secondValueSuccess`.
|
197
|
+
В данном примере валидация происходит при нажатии клавиши `Enter` после ввода значений:
|
198
|
+
|
199
|
+
```tsx live
|
200
|
+
import React, {useState, ChangeEvent, Dispatch, SetStateAction} from 'react';
|
201
|
+
import { Range, Button } from '@salutejs/{{ package }}';
|
202
|
+
import { IconSearch } from '@salutejs/plasma-icons';
|
203
|
+
|
204
|
+
export function App() {
|
205
|
+
const [firstValue, setFirstValue] = useState('');
|
206
|
+
const [secondValue, setSecondValue] = useState('');
|
207
|
+
|
208
|
+
const [firstValueError, setFirstValueError] = useState(false);
|
209
|
+
const [secondValueError, setSecondValueError] = useState(false);
|
210
|
+
|
211
|
+
const [firstValueSuccess, setFirstValueSuccess] = useState(false);
|
212
|
+
const [secondValueSuccess, setSecondValueSuccess] = useState(false);
|
213
|
+
|
214
|
+
const checkValue = (value: string) => /^([1-9][0-9]*|)$/.test(value);
|
215
|
+
|
216
|
+
const handleChangeValue = (
|
217
|
+
e: ChangeEvent<HTMLInputElement>,
|
218
|
+
setter: Dispatch<SetStateAction<string>>,
|
219
|
+
error: boolean,
|
220
|
+
errorSetter: Dispatch<SetStateAction<boolean>>,
|
221
|
+
success: boolean,
|
222
|
+
successSetter: Dispatch<SetStateAction<boolean>>,
|
223
|
+
) => {
|
224
|
+
const { value } = e.target;
|
225
|
+
if (!checkValue(value)) {
|
226
|
+
return;
|
227
|
+
}
|
228
|
+
|
229
|
+
if (error) {
|
230
|
+
errorSetter(false);
|
231
|
+
}
|
232
|
+
|
233
|
+
if (success) {
|
234
|
+
successSetter(false);
|
235
|
+
}
|
236
|
+
|
237
|
+
setter(value);
|
238
|
+
};
|
239
|
+
|
240
|
+
const firstValueConstraint = (value: number) =>
|
241
|
+
value <= 0 || value >= 9 || (secondValue && value >= Number(secondValue) && !secondValueError);
|
242
|
+
const secondValueConstraint = (value: number) =>
|
243
|
+
value <= 0 || value > 10 || (firstValue && value <= Number(firstValue) && !firstValueError);
|
244
|
+
|
245
|
+
const handleCommitValue = (
|
246
|
+
value: string,
|
247
|
+
constraint: (currentValue: number) => boolean,
|
248
|
+
errorSetter: Dispatch<SetStateAction<boolean>>,
|
249
|
+
successSetter: Dispatch<SetStateAction<boolean>>,
|
250
|
+
) => {
|
251
|
+
if (!value) {
|
252
|
+
return;
|
253
|
+
}
|
254
|
+
|
255
|
+
if (!checkValue(value)) {
|
256
|
+
return errorSetter(true);
|
257
|
+
}
|
258
|
+
|
259
|
+
if (constraint(Number(value))) {
|
260
|
+
return errorSetter(true);
|
261
|
+
}
|
262
|
+
|
263
|
+
successSetter(true);
|
264
|
+
};
|
265
|
+
|
266
|
+
const ActionButton = () => {
|
267
|
+
return (
|
268
|
+
<Button view="clear" size="l">
|
269
|
+
<IconSearch size="s" />
|
270
|
+
</Button>
|
271
|
+
);
|
272
|
+
};
|
273
|
+
|
274
|
+
return (
|
275
|
+
<div>
|
276
|
+
<Range
|
277
|
+
size="l"
|
278
|
+
view="default"
|
279
|
+
firstValue={firstValue}
|
280
|
+
secondValue={secondValue}
|
281
|
+
label="Введите кол-во товара"
|
282
|
+
leftHelper="Кол-во товара не может быть меньше 1 и превышать 10"
|
283
|
+
firstPlaceholder="1"
|
284
|
+
secondPlaceholder="5"
|
285
|
+
contentRight={<ActionButton />}
|
286
|
+
dividerVariant="dash"
|
287
|
+
firstValueError={firstValueError}
|
288
|
+
secondValueError={secondValueError}
|
289
|
+
firstValueSuccess={firstValueSuccess}
|
290
|
+
secondValueSuccess={secondValueSuccess}
|
291
|
+
onChangeFirstValue={(e) => {
|
292
|
+
handleChangeValue(
|
293
|
+
e,
|
294
|
+
setFirstValue,
|
295
|
+
firstValueError,
|
296
|
+
setFirstValueError,
|
297
|
+
firstValueSuccess,
|
298
|
+
setFirstValueSuccess,
|
299
|
+
);
|
300
|
+
}}
|
301
|
+
onChangeSecondValue={(e) => {
|
302
|
+
handleChangeValue(
|
303
|
+
e,
|
304
|
+
setSecondValue,
|
305
|
+
secondValueError,
|
306
|
+
setSecondValueError,
|
307
|
+
secondValueSuccess,
|
308
|
+
setSecondValueSuccess,
|
309
|
+
);
|
310
|
+
}}
|
311
|
+
onSearchFirstValue={(e) => {
|
312
|
+
const { value } = e.target as HTMLInputElement;
|
313
|
+
handleCommitValue(value, firstValueConstraint, setFirstValueError, setFirstValueSuccess);
|
314
|
+
}}
|
315
|
+
onSearchSecondValue={(e) => {
|
316
|
+
const { value } = e.target as HTMLInputElement;
|
317
|
+
handleCommitValue(value, secondValueConstraint, setSecondValueError, setSecondValueSuccess);
|
318
|
+
}}
|
319
|
+
/>
|
320
|
+
</div>
|
321
|
+
);
|
322
|
+
}
|
323
|
+
```
|
@@ -0,0 +1,98 @@
|
|
1
|
+
export var classes = {
|
2
|
+
rangeError: 'range-error',
|
3
|
+
rangeValueError: 'range-value-error',
|
4
|
+
rangeSuccess: 'range-success',
|
5
|
+
rangeValueSuccess: 'range-value-success'
|
6
|
+
};
|
7
|
+
export var tokens = {
|
8
|
+
background: '--plasma-range-background',
|
9
|
+
backgroundError: '--plasma-range-background-error',
|
10
|
+
backgroundSuccess: '--plasma-range-background-success',
|
11
|
+
backgroundReadOnly: '--plasma-range-background-readonly',
|
12
|
+
borderRadius: '--plasma-range-border-radius',
|
13
|
+
borderWidth: '--plasma-range-border-width',
|
14
|
+
borderColor: '--plasma-range-border-color',
|
15
|
+
borderColorError: '--plasma-range-border-color-error',
|
16
|
+
borderColorSuccess: '--plasma-range-border-color-success',
|
17
|
+
borderColorReadOnly: '--plasma-range-border-color-readonly',
|
18
|
+
/** Токены разделителя */
|
19
|
+
dividerColor: '--plasma-range__divider-color',
|
20
|
+
dividerColorReadOnly: '--plasma-range__divider-color-readonly',
|
21
|
+
dividerPadding: '--plasma-range__divider-padding',
|
22
|
+
dividerFontFamily: '--plasma-range__divider-font-family',
|
23
|
+
dividerFontStyle: '--plasma-range__divider-font-style',
|
24
|
+
dividerFontSize: '--plasma-range__divider-font-size',
|
25
|
+
dividerFontWeight: '--plasma-range__divider-font-weight',
|
26
|
+
dividerLetterSpacing: '--plasma-range__divider-letter-spacing',
|
27
|
+
dividerLineHeight: '--plasma-range__divider-line-height',
|
28
|
+
/** Токены слотов для контента */
|
29
|
+
leftContentMargin: '--plasma-range__left-content-margin',
|
30
|
+
rightContentMargin: '--plasma-range__right-content-margin',
|
31
|
+
/** Токены лейбла */
|
32
|
+
labelColor: '--plasma-range__label-color',
|
33
|
+
labelColorReadOnly: '--plasma-range__label-color-readonly',
|
34
|
+
labelOffset: '--plasma-range__label-offset',
|
35
|
+
labelFontFamily: '--plasma-range__label-font-family',
|
36
|
+
labelFontStyle: '--plasma-range__label-font-style',
|
37
|
+
labelFontSize: '--plasma-range__label-font-size',
|
38
|
+
labelFontWeight: '--plasma-range__label-font-weight',
|
39
|
+
labelLetterSpacing: '--plasma-range__label-letter-spacing',
|
40
|
+
labelLineHeight: '--plasma-range__label-line-height',
|
41
|
+
/** Токены вспомогательного текста */
|
42
|
+
leftHelperColor: '--plasma-range__left-helper-color',
|
43
|
+
leftHelperColorReadOnly: '--plasma-range__left-helper-color-readonly',
|
44
|
+
leftHelperOffset: '--plasma-range__left-helper-offset',
|
45
|
+
leftHelperFontFamily: '--plasma-range__left-helper-font-family',
|
46
|
+
leftHelperFontStyle: '--plasma-range__left-helper-font-style',
|
47
|
+
leftHelperFontSize: '--plasma-range__left-helper-font-size',
|
48
|
+
leftHelperFontWeight: '--plasma-range__left-helper-font-weight',
|
49
|
+
leftHelperLetterSpacing: '--plasma-range__left-helper-letter-spacing',
|
50
|
+
leftHelperLineHeight: '--plasma-range__left-helper-line-height',
|
51
|
+
/** Прозрачность для всего компонента в состоянии disabled */
|
52
|
+
disabledOpacity: '--plasma-range-disabled-opacity',
|
53
|
+
/** Цвет обводки поля ввода при фокусе */
|
54
|
+
focusColor: '--plasma-range-focus-color',
|
55
|
+
/** Токены полей ввода */
|
56
|
+
textFieldColor: '--plasma-range-textfield-color',
|
57
|
+
textFieldFocusColor: '--plasma-range-textfield-focus-color',
|
58
|
+
textFieldPlaceholderColor: '--plasma-range-textfield-placeholder-color',
|
59
|
+
textFieldCaretColor: '--plasma-range-textfield-caret-color',
|
60
|
+
textFieldBackgroundColor: '--plasma-range-textfield-background-color',
|
61
|
+
textFieldBackgroundColorHover: '--plasma-range-textfield-background-color-hover',
|
62
|
+
textFieldBackgroundColorFocus: '--plasma-range-textfield-background-color-focus',
|
63
|
+
textFieldBackgroundErrorColor: '--plasma-range-textfield-background-color-error',
|
64
|
+
textFieldBackgroundErrorColorHover: '--plasma-range-textfield-background-color-error-hover',
|
65
|
+
textFieldBackgroundErrorColorFocus: '--plasma-range-textfield-background-color-error-focus',
|
66
|
+
textFieldBackgroundSuccessColor: '--plasma-range-textfield-background-color-success',
|
67
|
+
textFieldBackgroundSuccessColorHover: '--plasma-range-textfield-background-color-success-hover',
|
68
|
+
textFieldBackgroundSuccessColorFocus: '--plasma-range-textfield-background-color-success-focus',
|
69
|
+
textFieldBorderColor: '--plasma-range-textfield-border-color',
|
70
|
+
textFieldBorderColorHover: '--plasma-range-textfield-border-color-hover',
|
71
|
+
textFieldBorderColorFocus: '--plasma-range-textfield-border-color-focus',
|
72
|
+
textFieldBorderColorError: '--plasma-range-textfield-border-color-error',
|
73
|
+
textFieldBorderColorErrorHover: '--plasma-range-textfield-border-color-error-hover',
|
74
|
+
textFieldBorderColorErrorFocus: '--plasma-range-textfield-border-color-error-focus',
|
75
|
+
textFieldBorderColorSuccess: '--plasma-range-textfield-border-color-success',
|
76
|
+
textFieldBorderColorSuccessHover: '--plasma-range-textfield-border-color-success-hover',
|
77
|
+
textFieldBorderColorSuccessFocus: '--plasma-range-textfield-border-color-success-focus',
|
78
|
+
textFieldColorReadOnly: '--plasma-range-textfield-color-readonly',
|
79
|
+
textFieldBackgroundColorReadOnly: '--plasma-range-textfield-background-color-readonly',
|
80
|
+
textFieldBorderColorReadOnly: '--plasma-range-textfield-border-color-readonly',
|
81
|
+
textFieldPlaceholderColorReadOnly: '--plasma-range-textfield-placeholder-color-readonly',
|
82
|
+
textFieldHeight: '--plasma-range-textfield-height',
|
83
|
+
textFieldBorderWidth: '--plasma-range-textfield-border-width',
|
84
|
+
textFieldBorderRadius: '--plasma-range-textfield-border-radius',
|
85
|
+
textFieldPadding: '--plasma-range-textfield-padding',
|
86
|
+
textFieldLeftContentMargin: '--plasma-range-textfield__left-content-margin',
|
87
|
+
textFieldRightContentMargin: '--plasma-range-textfield__right-content-margin',
|
88
|
+
textFieldFontFamily: '--plasma-range-textfield-font-family',
|
89
|
+
textFieldFontStyle: '--plasma-range-textfield-font-style',
|
90
|
+
textFieldFontSize: '--plasma-range-textfield-font-size',
|
91
|
+
textFieldFontWeight: '--plasma-range-textfield-font-weight',
|
92
|
+
textFieldLetterSpacing: '--plasma-range-textfield-letter-spacing',
|
93
|
+
textFieldLineHeight: '--plasma-range-textfield-line-height',
|
94
|
+
textFieldTextBeforeColor: '--plasma-range-textfield__before-text-color',
|
95
|
+
textFieldTextAfterColor: '--plasma-range-textfield__after-text-color',
|
96
|
+
textFieldTextBeforeMargin: '--plasma-range-textfield__before-text-margin',
|
97
|
+
textFieldTextAfterMargin: '--plasma-range-textfield__after-text-margin'
|
98
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1,16 @@
|
|
1
|
+
export var getChangeHandler = function getChangeHandler(changeHandler, disabled, readOnly) {
|
2
|
+
return function (event) {
|
3
|
+
if (disabled || readOnly) {
|
4
|
+
return;
|
5
|
+
}
|
6
|
+
changeHandler === null || changeHandler === void 0 || changeHandler(event, event.target.value);
|
7
|
+
};
|
8
|
+
};
|
9
|
+
export var getSearchHandler = function getSearchHandler(searchHandler, disabled, readOnly) {
|
10
|
+
return function (value, event) {
|
11
|
+
if (disabled || readOnly) {
|
12
|
+
return;
|
13
|
+
}
|
14
|
+
searchHandler === null || searchHandler === void 0 || searchHandler(event, value);
|
15
|
+
};
|
16
|
+
};
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import { css } from 'styled-components';
|
2
|
+
import { tokens } from '../../Range.tokens';
|
3
|
+
import { ContentWrapper, LeftHelper, StyledContentLeft, StyledContentRight, StyledDivider, StyledLabel } from '../../Range.styles';
|
4
|
+
export var base = /*#__PURE__*/css(["&[readonly]{cursor:default;", "{background:var(", ");}", "{display:block;color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}", ",", "{color:var(", ");}}"], ContentWrapper, tokens.backgroundReadOnly, StyledLabel, tokens.labelColorReadOnly, LeftHelper, tokens.leftHelperColorReadOnly, StyledDivider, tokens.dividerColorReadOnly, StyledContentLeft, StyledContentRight, tokens.textFieldColorReadOnly);
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import { css } from 'styled-components';
|
2
|
+
import { tokens } from '../../Range.tokens';
|
3
|
+
import { StyledLabel, LeftHelper, StyledContentLeft, StyledContentRight, StyledDivider, ContentWrapper } from '../../Range.styles';
|
4
|
+
export var base = /*#__PURE__*/css(["", "{width:inherit;border-radius:var(", ");}", "{padding:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin:var(", ");}", "{margin:var(", ");}", "{margin:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}"], ContentWrapper, tokens.borderRadius, StyledDivider, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontSize, tokens.dividerFontStyle, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, StyledLabel, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, StyledContentLeft, tokens.leftContentMargin, StyledContentRight, tokens.rightContentMargin, LeftHelper, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight);
|