@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,26 @@
|
|
1
|
+
[
|
2
|
+
"--plasma-range-border-radius",
|
3
|
+
"--plasma-range__left-content-margin",
|
4
|
+
"--plasma-range__right-content-margin",
|
5
|
+
"--plasma-range__label-offset",
|
6
|
+
"--plasma-range__label-font-family",
|
7
|
+
"--plasma-range__label-font-style",
|
8
|
+
"--plasma-range__label-font-size",
|
9
|
+
"--plasma-range__label-font-weight",
|
10
|
+
"--plasma-range__label-letter-spacing",
|
11
|
+
"--plasma-range__label-line-height",
|
12
|
+
"--plasma-range__left-helper-offset",
|
13
|
+
"--plasma-range__left-helper-font-family",
|
14
|
+
"--plasma-range__left-helper-font-style",
|
15
|
+
"--plasma-range__left-helper-font-size",
|
16
|
+
"--plasma-range__left-helper-font-weight",
|
17
|
+
"--plasma-range__left-helper-letter-spacing",
|
18
|
+
"--plasma-range__left-helper-line-height",
|
19
|
+
"--plasma-range__divider-padding",
|
20
|
+
"--plasma-range__divider-font-family",
|
21
|
+
"--plasma-range__divider-font-style",
|
22
|
+
"--plasma-range__divider-font-size",
|
23
|
+
"--plasma-range__divider-font-weight",
|
24
|
+
"--plasma-range__divider-letter-spacing",
|
25
|
+
"--plasma-range__divider-line-height"
|
26
|
+
]
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import { css } from 'styled-components';
|
2
|
+
import { classes, tokens } from '../../Range.tokens';
|
3
|
+
import { StyledLabel, LeftHelper, StyledDivider, ContentWrapper } from '../../Range.styles';
|
4
|
+
export var base = /*#__PURE__*/css(["", "{background-color:var(", ");box-shadow:inset 0 0 0 var(", ") var(", ");&.", "{background-color:var(", ");box-shadow:inset 0 0 0 var(", ") var(", ");}&.", "{background-color:var(", ");box-shadow:inset 0 0 0 var(", ") var(", ");}}", "{color:var(", ");}", "{display:block;color:var(", ");}", "{color:var(", ");}"], ContentWrapper, tokens.background, tokens.borderWidth, tokens.borderColor, classes.rangeError, tokens.backgroundError, tokens.borderWidth, tokens.borderColorError, classes.rangeSuccess, tokens.backgroundSuccess, tokens.borderWidth, tokens.borderColorSuccess, StyledDivider, tokens.dividerColor, StyledLabel, tokens.labelColor, LeftHelper, tokens.leftHelperColor);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "placeholder", "leftHelper", "enumerationType", "view", "size", "readOnly", "disabled", "chips", "onChange", "onChangeChips", "onSearch", "onKeyDown"];
|
1
|
+
var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "textBefore", "textAfter", "placeholder", "leftHelper", "enumerationType", "view", "size", "readOnly", "disabled", "chips", "onChange", "onChangeChips", "onSearch", "onKeyDown"];
|
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 _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
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."); }
|
@@ -17,7 +17,7 @@ import { base as viewCSS } from './variations/_view/base';
|
|
17
17
|
import { base as disabledCSS } from './variations/_disabled/base';
|
18
18
|
import { base as readOnlyCSS } from './variations/_read-only/base';
|
19
19
|
import { base as labelPlacementCSS } from './variations/_label-placement/base';
|
20
|
-
import { Input, LeftHelper, Label, InputWrapper, InputLabelWrapper, StyledContentLeft, StyledContentRight, StyledChips } from './TextField.styles';
|
20
|
+
import { Input, LeftHelper, Label, InputWrapper, InputLabelWrapper, StyledContentLeft, StyledContentRight, StyledChips, StyledTextBefore, StyledTextAfter } from './TextField.styles';
|
21
21
|
import { classes } from './TextField.tokens';
|
22
22
|
import { TextFieldChip } from './ui';
|
23
23
|
import { useKeyNavigation } from './hooks';
|
@@ -31,6 +31,8 @@ export var textFieldRoot = function textFieldRoot(Root) {
|
|
31
31
|
contentRight = _ref.contentRight,
|
32
32
|
label = _ref.label,
|
33
33
|
labelPlacement = _ref.labelPlacement,
|
34
|
+
textBefore = _ref.textBefore,
|
35
|
+
textAfter = _ref.textAfter,
|
34
36
|
placeholder = _ref.placeholder,
|
35
37
|
leftHelper = _ref.leftHelper,
|
36
38
|
_ref$enumerationType = _ref.enumerationType,
|
@@ -111,14 +113,12 @@ export var textFieldRoot = function textFieldRoot(Root) {
|
|
111
113
|
if (readOnly || disabled || !(inputRef !== null && inputRef !== void 0 && inputRef.current)) {
|
112
114
|
return;
|
113
115
|
}
|
114
|
-
inputRef.current.
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
});
|
119
|
-
inputRef.current.focus({
|
120
|
-
preventScroll: true
|
116
|
+
inputRef.current.scrollTo({
|
117
|
+
top: 0,
|
118
|
+
left: inputRef.current.offsetLeft,
|
119
|
+
behavior: 'smooth'
|
121
120
|
});
|
121
|
+
inputRef.current.focus();
|
122
122
|
};
|
123
123
|
var getRef = function getRef(element, index) {
|
124
124
|
if (element && chipsRefs !== null && chipsRefs !== void 0 && chipsRefs.current) {
|
@@ -160,7 +160,7 @@ export var textFieldRoot = function textFieldRoot(Root) {
|
|
160
160
|
ref: contentRef,
|
161
161
|
onKeyDown: handleContentKeyDown,
|
162
162
|
className: withHasChips
|
163
|
-
}, isChipEnumeration && Boolean(chips === null || chips === void 0 ? void 0 : chips.length) && /*#__PURE__*/React.createElement(StyledChips, null, chips === null || chips === void 0 ? void 0 : chips.map(function (_ref2, index) {
|
163
|
+
}, textBefore && /*#__PURE__*/React.createElement(StyledTextBefore, null, textBefore), isChipEnumeration && Boolean(chips === null || chips === void 0 ? void 0 : chips.length) && /*#__PURE__*/React.createElement(StyledChips, null, chips === null || chips === void 0 ? void 0 : chips.map(function (_ref2, index) {
|
164
164
|
var chipId = _ref2.id,
|
165
165
|
text = _ref2.text;
|
166
166
|
return /*#__PURE__*/React.createElement(TextFieldChip, {
|
@@ -194,7 +194,7 @@ export var textFieldRoot = function textFieldRoot(Root) {
|
|
194
194
|
})), labelInside && /*#__PURE__*/React.createElement(Label, {
|
195
195
|
id: labelId,
|
196
196
|
htmlFor: innerId
|
197
|
-
}, innerLabelValue)), contentRight && /*#__PURE__*/React.createElement(StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(LeftHelper, {
|
197
|
+
}, innerLabelValue), textAfter && /*#__PURE__*/React.createElement(StyledTextAfter, null, textAfter)), contentRight && /*#__PURE__*/React.createElement(StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(LeftHelper, {
|
198
198
|
id: helperTextId
|
199
199
|
}, leftHelper));
|
200
200
|
});
|
@@ -23,4 +23,10 @@ export var StyledContentRight = /*#__PURE__*/styled.div.withConfig({
|
|
23
23
|
})(["margin:var(", ");"], tokens.rightContentMargin);
|
24
24
|
export var LeftHelper = /*#__PURE__*/styled.div.withConfig({
|
25
25
|
componentId: "plasma-new-hope__sc-g4vxbb-7"
|
26
|
+
})([""]);
|
27
|
+
export var StyledTextBefore = /*#__PURE__*/styled.div.withConfig({
|
28
|
+
componentId: "plasma-new-hope__sc-g4vxbb-8"
|
29
|
+
})([""]);
|
30
|
+
export var StyledTextAfter = /*#__PURE__*/styled.div.withConfig({
|
31
|
+
componentId: "plasma-new-hope__sc-g4vxbb-9"
|
26
32
|
})([""]);
|
@@ -62,6 +62,11 @@ export var tokens = {
|
|
62
62
|
leftHelperFontWeight: '--plasma-textfield__left-helper-font-weight',
|
63
63
|
leftHelperLetterSpacing: '--plasma-textfield__left-helper-letter-spacing',
|
64
64
|
leftHelperLineHeight: '--plasma-textfield__left-helper-line-height',
|
65
|
+
/** Токены вспомогательного текста */
|
66
|
+
textBeforeColor: '--plasma-textfield__before-text-color',
|
67
|
+
textAfterColor: '--plasma-textfield__after-text-color',
|
68
|
+
textBeforeMargin: '--plasma-textfield__before-text-margin',
|
69
|
+
textAfterMargin: '--plasma-textfield__after-text-margin',
|
65
70
|
/** Прозрачность для всего компонента в состоянии disabled */
|
66
71
|
disabledOpacity: '--plasma-textfield-disabled-opacity',
|
67
72
|
/** Токены чипа */
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { css } from 'styled-components';
|
2
|
-
import { Input, Label } from '../../TextField.styles';
|
2
|
+
import { Input, Label, StyledTextAfter, StyledTextBefore } from '../../TextField.styles';
|
3
3
|
import { tokens } from '../../TextField.tokens';
|
4
|
-
export var labelPlacement_inner = /*#__PURE__*/css(["", "{padding:var(", ");}", ":focus ~ ", ",", ":not(:placeholder-shown) ~ ", "{height:auto;padding:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", ":not(:focus)::placeholder{color:transparent;}", ":focus::placeholder{color:transparent;}", "{color:var(", ");pointer-events:none;position:absolute;top:0;display:flex;align-items:center;box-sizing:border-box;transition:padding 0.1s ease-in-out,height 0s;height:var(", ");padding-top:calc(var(", ") / 4);padding-bottom:calc(var(", ") / 4);}"], Input, tokens.contentLabelInnerPadding, Input, Label, Input, Label, tokens.labelInnerPadding, tokens.labelInnerFontFamily, tokens.labelInnerFontSize, tokens.labelInnerFontStyle, tokens.labelInnerFontWeight, tokens.labelInnerLetterSpacing, tokens.labelInnerLineHeight, Input, Input, Label, tokens.placeholderColor, tokens.height, tokens.height, tokens.height);
|
4
|
+
export var labelPlacement_inner = /*#__PURE__*/css(["", "{padding:var(", ");}", ",", "{padding:var(", ");}", ":focus ~ ", ",", ":not(:placeholder-shown) ~ ", "{height:auto;padding:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", ":not(:focus)::placeholder{color:transparent;}", ":focus::placeholder{color:transparent;}", "{color:var(", ");pointer-events:none;position:absolute;top:0;display:flex;align-items:center;box-sizing:border-box;transition:padding 0.1s ease-in-out,height 0s;height:var(", ");padding-top:calc(var(", ") / 4);padding-bottom:calc(var(", ") / 4);}"], Input, tokens.contentLabelInnerPadding, StyledTextAfter, StyledTextBefore, tokens.contentLabelInnerPadding, Input, Label, Input, Label, tokens.labelInnerPadding, tokens.labelInnerFontFamily, tokens.labelInnerFontSize, tokens.labelInnerFontStyle, tokens.labelInnerFontWeight, tokens.labelInnerLetterSpacing, tokens.labelInnerLineHeight, Input, Input, Label, tokens.placeholderColor, tokens.height, tokens.height, tokens.height);
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { css } from 'styled-components';
|
2
2
|
import { classes, tokens } from '../../TextField.tokens';
|
3
|
-
import { Input, InputWrapper, Label, LeftHelper } from '../../TextField.styles';
|
4
|
-
export var base = /*#__PURE__*/css(["", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{height:var(", ");border-radius:var(", ");padding:var(", ");&.", "{padding-top:var(", ");padding-bottom:var(", ");}&.", "{padding-left:var(", ");}&.", "{padding-right:var(", ");}}", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin-top:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}"], Input, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, InputWrapper, tokens.height, tokens.borderRadius, tokens.padding, classes.hasChips, tokens.paddingWithChips, tokens.paddingWithChips, classes.hasEmptyContentLeft, tokens.paddingWithChips, classes.hasEmptyContentRight, tokens.paddingWithChips, Label, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, LeftHelper, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight);
|
3
|
+
import { Input, InputWrapper, Label, LeftHelper, StyledTextAfter, StyledTextBefore } from '../../TextField.styles';
|
4
|
+
export var base = /*#__PURE__*/css(["", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{height:var(", ");border-radius:var(", ");padding:var(", ");&.", "{padding-top:var(", ");padding-bottom:var(", ");}&.", "{padding-left:var(", ");}&.", "{padding-right:var(", ");}}", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin-top:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", ",", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin:var(", ");}", "{margin:var(", ");}"], Input, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, InputWrapper, tokens.height, tokens.borderRadius, tokens.padding, classes.hasChips, tokens.paddingWithChips, tokens.paddingWithChips, classes.hasEmptyContentLeft, tokens.paddingWithChips, classes.hasEmptyContentRight, tokens.paddingWithChips, Label, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, LeftHelper, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, StyledTextBefore, StyledTextAfter, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, StyledTextBefore, tokens.textBeforeMargin, StyledTextAfter, tokens.textAfterMargin);
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { css } from 'styled-components';
|
2
2
|
import { tokens } from '../../TextField.tokens';
|
3
|
-
import { Input, InputWrapper, LeftHelper } from '../../TextField.styles';
|
4
|
-
export var base = /*#__PURE__*/css(["", "{--plasma_private-textfield-border-color:var(", ");--plasma_private-textfield-bg-color:var(", ");color:var(", ");background-color:var(--plasma_private-textfield-bg-color);box-shadow:inset 0 0 0 var(", ") var(--plasma_private-textfield-border-color);caret-color:var(", ");transition:background-color 0.1s ease-in,color 0.1s ease-in,box-shadow 0.1s ease-in;}", ":hover{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", ":focus-within{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", "::placeholder{color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}"], InputWrapper, /*#__PURE__*/String(tokens.borderColor), /*#__PURE__*/String(tokens.backgroundColor), tokens.color, tokens.borderWidth, tokens.caretColor, InputWrapper, tokens.borderColorHover, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorHover, /*#__PURE__*/String(tokens.backgroundColor), InputWrapper, tokens.borderColorFocus, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorFocus, /*#__PURE__*/String(tokens.backgroundColor), Input, tokens.placeholderColor, Input, tokens.color, LeftHelper, tokens.leftHelperColor);
|
3
|
+
import { Input, InputWrapper, LeftHelper, StyledTextAfter, StyledTextBefore } from '../../TextField.styles';
|
4
|
+
export var base = /*#__PURE__*/css(["", "{--plasma_private-textfield-border-color:var(", ");--plasma_private-textfield-bg-color:var(", ");color:var(", ");background-color:var(--plasma_private-textfield-bg-color);box-shadow:inset 0 0 0 var(", ") var(--plasma_private-textfield-border-color);caret-color:var(", ");transition:background-color 0.1s ease-in,color 0.1s ease-in,box-shadow 0.1s ease-in;}", ":hover{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", ":focus-within{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", "::placeholder{color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}"], InputWrapper, /*#__PURE__*/String(tokens.borderColor), /*#__PURE__*/String(tokens.backgroundColor), tokens.color, tokens.borderWidth, tokens.caretColor, InputWrapper, tokens.borderColorHover, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorHover, /*#__PURE__*/String(tokens.backgroundColor), InputWrapper, tokens.borderColorFocus, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorFocus, /*#__PURE__*/String(tokens.backgroundColor), Input, tokens.placeholderColor, Input, tokens.color, LeftHelper, tokens.leftHelperColor, StyledTextBefore, tokens.textBeforeColor, StyledTextAfter, tokens.textAfterColor);
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { css } from 'styled-components';
|
2
|
+
import { rangeTokens as tokens } from '../../../../components/Range';
|
3
|
+
export var config = {
|
4
|
+
defaults: {
|
5
|
+
view: 'default',
|
6
|
+
size: 'l'
|
7
|
+
},
|
8
|
+
variations: {
|
9
|
+
view: {
|
10
|
+
"default": /*#__PURE__*/css(["", ":var(--surface-transparent-primary);", ":var(--surface-transparent-negative);", ":var(--surface-transparent-positive);", ":var(--text-primary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-accent);", ":var(--surface-transparent-secondary);", ":var(--surface-transparent-negative);", ":var(--surface-transparent-negative-active);", ":var(--surface-transparent-positive);", ":var(--surface-transparent-positive-active);", ":var(--text-tertiary);", ":var(--text-tertiary);", ":var(--text-accent);"], tokens.background, tokens.backgroundError, tokens.backgroundSuccess, tokens.dividerColor, tokens.labelColor, tokens.leftHelperColor, tokens.textFieldColor, tokens.textFieldPlaceholderColor, tokens.textFieldCaretColor, tokens.textFieldBackgroundColorFocus, tokens.textFieldBackgroundErrorColor, tokens.textFieldBackgroundErrorColorFocus, tokens.textFieldBackgroundSuccessColor, tokens.textFieldBackgroundSuccessColorFocus, tokens.textFieldTextBeforeColor, tokens.textFieldTextAfterColor, tokens.focusColor)
|
11
|
+
},
|
12
|
+
size: {
|
13
|
+
l: /*#__PURE__*/css(["", ":0.875rem;", ":0 0.375rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0 0.375rem 0 1rem;", ":0;", ":0 0 0.75rem 0;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":3.5rem;", ":0.875rem;", ":1.0625rem 1.125rem 1.0625rem 1.125rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.5rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
|
14
|
+
m: /*#__PURE__*/css(["", ":0.75rem;", ":0 0.375rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0 0.375rem 0 0.875rem;", ":0;", ":0 0 0.625rem 0;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":3rem;", ":0.75rem;", ":0.875rem 1rem 0.875rem 1rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.125rem 0.375rem -0.125rem -0.125rem;", ":-0.125rem -0.125rem -0.125rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
|
15
|
+
s: /*#__PURE__*/css(["", ":0.625rem;", ":0 0.375rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0 0.375rem 0 0.75rem;", ":0;", ":0 0 0.5rem 0;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":2.5rem;", ":0.625rem;", ":0.6875rem 0.875rem 0.6875rem 0.875rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.1875rem 0.25rem -0.1875rem -0.125rem;", ":-0.1875rem -0.125rem -0.1875rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
|
16
|
+
xs: /*#__PURE__*/css(["", ":0.5rem;", ":0 0.375rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":0 0.25rem 0 0.5rem;", ":0;", ":0 0 0.375rem 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":2rem;", ":0.5rem;", ":0.5625rem 0.625rem 0.5625rem 0.625rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.25rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin)
|
17
|
+
},
|
18
|
+
disabled: {
|
19
|
+
"true": /*#__PURE__*/css(["", ":0.4;"], tokens.disabledOpacity)
|
20
|
+
},
|
21
|
+
readOnly: {
|
22
|
+
"true": /*#__PURE__*/css(["", ":var(--surface-transparent-primary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);", ":transparent;", ":var(--text-secondary);"], tokens.backgroundReadOnly, tokens.labelColorReadOnly, tokens.leftHelperColorReadOnly, tokens.dividerColorReadOnly, tokens.textFieldColorReadOnly, tokens.textFieldBackgroundColorReadOnly, tokens.textFieldPlaceholderColorReadOnly)
|
23
|
+
}
|
24
|
+
}
|
25
|
+
};
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { component, mergeConfig } from '../../../../engines';
|
2
|
+
import { rangeConfig } from '../../../../components/Range';
|
3
|
+
import { config } from './Range.config';
|
4
|
+
var mergedConfig = /*#__PURE__*/mergeConfig(rangeConfig, config);
|
5
|
+
export var Range = /*#__PURE__*/component(mergedConfig);
|
@@ -0,0 +1,312 @@
|
|
1
|
+
import React, { ChangeEvent, ComponentProps, Dispatch, SetStateAction, useState } from 'react';
|
2
|
+
import type { StoryObj, Meta } from '@storybook/react';
|
3
|
+
import { action } from '@storybook/addon-actions';
|
4
|
+
import { IconPlaceholder } from '@salutejs/plasma-sb-utils';
|
5
|
+
|
6
|
+
import { WithTheme } from '../../../_helpers';
|
7
|
+
import { IconChevronLeft } from '../../../../components/_Icon';
|
8
|
+
import { IconButton } from '../IconButton/IconButton';
|
9
|
+
|
10
|
+
import { Range } from './Range';
|
11
|
+
|
12
|
+
const onChangeFirstValue = action('onChangeFirstValue');
|
13
|
+
const onChangeSecondValue = action('onChangeSecondValue');
|
14
|
+
const onSearchFirstValue = action('onSearchFirstValue');
|
15
|
+
const onSearchSecondValue = action('onSearchSecondValue');
|
16
|
+
const onFocusFirstTextfield = action('onFocusFirstTextfield');
|
17
|
+
const onFocusSecondTextfield = action('onFocusSecondTextfield');
|
18
|
+
const onBlurFirstTextfield = action('onBlurFirstTextfield');
|
19
|
+
const onBlurSecondTextfield = action('onBlurSecondTextfield');
|
20
|
+
|
21
|
+
const sizes = ['l', 'm', 's', 'xs'];
|
22
|
+
const views = ['default'];
|
23
|
+
const dividers = ['none', 'dash', 'icon'];
|
24
|
+
|
25
|
+
const meta: Meta<typeof Range> = {
|
26
|
+
title: 'plasma_b2c/Range',
|
27
|
+
component: Range,
|
28
|
+
decorators: [WithTheme],
|
29
|
+
argTypes: {
|
30
|
+
view: {
|
31
|
+
options: views,
|
32
|
+
control: {
|
33
|
+
type: 'inline-radio',
|
34
|
+
},
|
35
|
+
},
|
36
|
+
size: {
|
37
|
+
options: sizes,
|
38
|
+
control: {
|
39
|
+
type: 'inline-radio',
|
40
|
+
},
|
41
|
+
},
|
42
|
+
},
|
43
|
+
};
|
44
|
+
|
45
|
+
export default meta;
|
46
|
+
|
47
|
+
type StoryPropsDefault = ComponentProps<typeof Range> & {
|
48
|
+
enableContentLeft: boolean;
|
49
|
+
enableContentRight: boolean;
|
50
|
+
enableFirstTextfieldContentLeft: boolean;
|
51
|
+
enableSecondTextfieldContentLeft: boolean;
|
52
|
+
enableFirstTextfieldContentRight: boolean;
|
53
|
+
enableSecondTextfieldContentRight: boolean;
|
54
|
+
};
|
55
|
+
|
56
|
+
const getSizeForIcon = (size) => {
|
57
|
+
const map = {
|
58
|
+
m: 's',
|
59
|
+
l: 's',
|
60
|
+
s: 's',
|
61
|
+
xs: 'xs',
|
62
|
+
};
|
63
|
+
if (map[size]) {
|
64
|
+
return map[size];
|
65
|
+
}
|
66
|
+
|
67
|
+
return size;
|
68
|
+
};
|
69
|
+
|
70
|
+
const ActionButton = ({ size }) => {
|
71
|
+
return (
|
72
|
+
<IconButton view="clear" size={size}>
|
73
|
+
<IconChevronLeft color="inherit" size={getSizeForIcon(size)} />
|
74
|
+
</IconButton>
|
75
|
+
);
|
76
|
+
};
|
77
|
+
|
78
|
+
const StoryDefault = ({
|
79
|
+
dividerVariant,
|
80
|
+
enableContentLeft,
|
81
|
+
enableContentRight,
|
82
|
+
firstTextfieldTextBefore,
|
83
|
+
secondTextfieldTextBefore,
|
84
|
+
enableFirstTextfieldContentLeft,
|
85
|
+
enableSecondTextfieldContentLeft,
|
86
|
+
enableFirstTextfieldContentRight,
|
87
|
+
enableSecondTextfieldContentRight,
|
88
|
+
size,
|
89
|
+
...rest
|
90
|
+
}: StoryPropsDefault) => {
|
91
|
+
const [firstValue, setFirstValue] = useState('');
|
92
|
+
const [secondValue, setSecondValue] = useState('');
|
93
|
+
|
94
|
+
const iconSize = size === 'xs' ? 'xs' : 's';
|
95
|
+
const showDividerIcon = dividerVariant === 'icon';
|
96
|
+
const showDefaultTextBefore = dividerVariant === 'none';
|
97
|
+
|
98
|
+
const dividerIconProps = {
|
99
|
+
dividerIcon: showDividerIcon ? <IconPlaceholder size="s" /> : null,
|
100
|
+
dividerVariant,
|
101
|
+
};
|
102
|
+
|
103
|
+
return (
|
104
|
+
<Range
|
105
|
+
size={size}
|
106
|
+
firstValue={firstValue}
|
107
|
+
secondValue={secondValue}
|
108
|
+
contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
|
109
|
+
contentRight={enableContentRight ? <ActionButton size={size} /> : undefined}
|
110
|
+
firstTextfieldContentLeft={
|
111
|
+
enableFirstTextfieldContentLeft ? <IconPlaceholder size={iconSize} /> : undefined
|
112
|
+
}
|
113
|
+
firstTextfieldContentRight={
|
114
|
+
enableFirstTextfieldContentRight ? <IconPlaceholder size={iconSize} /> : undefined
|
115
|
+
}
|
116
|
+
secondTextfieldContentLeft={
|
117
|
+
enableSecondTextfieldContentLeft ? <IconPlaceholder size={iconSize} /> : undefined
|
118
|
+
}
|
119
|
+
secondTextfieldContentRight={
|
120
|
+
enableSecondTextfieldContentRight ? <IconPlaceholder size={iconSize} /> : undefined
|
121
|
+
}
|
122
|
+
firstTextfieldTextBefore={
|
123
|
+
showDefaultTextBefore ? firstTextfieldTextBefore || 'С' : firstTextfieldTextBefore
|
124
|
+
}
|
125
|
+
secondTextfieldTextBefore={
|
126
|
+
showDefaultTextBefore ? secondTextfieldTextBefore || 'ПО' : secondTextfieldTextBefore
|
127
|
+
}
|
128
|
+
onChangeFirstValue={(e) => {
|
129
|
+
setFirstValue(e.target.value);
|
130
|
+
onChangeFirstValue(e, e.target.value);
|
131
|
+
}}
|
132
|
+
onChangeSecondValue={(e) => {
|
133
|
+
setSecondValue(e.target.value);
|
134
|
+
onChangeSecondValue(e, e.target.value);
|
135
|
+
}}
|
136
|
+
onSearchFirstValue={onSearchFirstValue}
|
137
|
+
onSearchSecondValue={onSearchSecondValue}
|
138
|
+
onFocusFirstTextfield={onFocusFirstTextfield}
|
139
|
+
onFocusSecondTextfield={onFocusSecondTextfield}
|
140
|
+
onBlurFirstTextfield={onBlurFirstTextfield}
|
141
|
+
onBlurSecondTextfield={onBlurSecondTextfield}
|
142
|
+
{...dividerIconProps}
|
143
|
+
{...rest}
|
144
|
+
/>
|
145
|
+
);
|
146
|
+
};
|
147
|
+
|
148
|
+
export const Default: StoryObj<StoryPropsDefault> = {
|
149
|
+
argTypes: {
|
150
|
+
dividerVariant: {
|
151
|
+
options: dividers,
|
152
|
+
control: {
|
153
|
+
type: 'inline-radio',
|
154
|
+
},
|
155
|
+
},
|
156
|
+
},
|
157
|
+
args: {
|
158
|
+
label: 'Лейбл',
|
159
|
+
leftHelper: 'Подсказка к полю',
|
160
|
+
firstPlaceholder: 'Заполните поле 1',
|
161
|
+
secondPlaceholder: 'Заполните поле 2',
|
162
|
+
size: 'l',
|
163
|
+
view: 'default',
|
164
|
+
disabled: false,
|
165
|
+
readOnly: false,
|
166
|
+
firstTextfieldTextBefore: 'С',
|
167
|
+
secondTextfieldTextBefore: 'ПО',
|
168
|
+
enableContentLeft: true,
|
169
|
+
enableContentRight: true,
|
170
|
+
dividerVariant: 'dash',
|
171
|
+
enableFirstTextfieldContentLeft: false,
|
172
|
+
enableFirstTextfieldContentRight: false,
|
173
|
+
enableSecondTextfieldContentLeft: false,
|
174
|
+
enableSecondTextfieldContentRight: false,
|
175
|
+
firstValueError: false,
|
176
|
+
secondValueError: false,
|
177
|
+
firstValueSuccess: false,
|
178
|
+
secondValueSuccess: false,
|
179
|
+
},
|
180
|
+
render: (args) => <StoryDefault {...args} />,
|
181
|
+
};
|
182
|
+
|
183
|
+
const StoryDemo = ({ enableContentLeft, enableContentRight, size, ...rest }: StoryPropsDefault) => {
|
184
|
+
const [firstValue, setFirstValue] = useState('');
|
185
|
+
const [secondValue, setSecondValue] = useState('');
|
186
|
+
|
187
|
+
const [firstValueError, setFirstValueError] = useState(false);
|
188
|
+
const [secondValueError, setSecondValueError] = useState(false);
|
189
|
+
|
190
|
+
const [firstValueSuccess, setFirstValueSuccess] = useState(false);
|
191
|
+
const [secondValueSuccess, setSecondValueSuccess] = useState(false);
|
192
|
+
|
193
|
+
const checkValue = (value: string) => /^([1-9][0-9]*|)$/.test(value);
|
194
|
+
|
195
|
+
const handleChangeValue = (
|
196
|
+
e: ChangeEvent<HTMLInputElement>,
|
197
|
+
setter: Dispatch<SetStateAction<string>>,
|
198
|
+
error: boolean,
|
199
|
+
errorSetter: Dispatch<SetStateAction<boolean>>,
|
200
|
+
success: boolean,
|
201
|
+
successSetter: Dispatch<SetStateAction<boolean>>,
|
202
|
+
) => {
|
203
|
+
const { value } = e.target;
|
204
|
+
if (!checkValue(value)) {
|
205
|
+
return;
|
206
|
+
}
|
207
|
+
|
208
|
+
if (error) {
|
209
|
+
errorSetter(false);
|
210
|
+
}
|
211
|
+
|
212
|
+
if (success) {
|
213
|
+
successSetter(false);
|
214
|
+
}
|
215
|
+
|
216
|
+
setter(value);
|
217
|
+
};
|
218
|
+
|
219
|
+
const firstValueConstraint = (value: number) =>
|
220
|
+
value <= 0 || value >= 9 || (secondValue && value >= Number(secondValue) && !secondValueError);
|
221
|
+
const secondValueConstraint = (value: number) =>
|
222
|
+
value <= 0 || value > 10 || (firstValue && value <= Number(firstValue) && !firstValueError);
|
223
|
+
|
224
|
+
const handleCommitValue = (
|
225
|
+
value: string,
|
226
|
+
constraint: (currentValue: number) => boolean,
|
227
|
+
errorSetter: Dispatch<SetStateAction<boolean>>,
|
228
|
+
successSetter: Dispatch<SetStateAction<boolean>>,
|
229
|
+
) => {
|
230
|
+
if (!value) {
|
231
|
+
return;
|
232
|
+
}
|
233
|
+
|
234
|
+
if (!checkValue(value)) {
|
235
|
+
return errorSetter(true);
|
236
|
+
}
|
237
|
+
|
238
|
+
if (constraint(Number(value))) {
|
239
|
+
return errorSetter(true);
|
240
|
+
}
|
241
|
+
|
242
|
+
successSetter(true);
|
243
|
+
};
|
244
|
+
|
245
|
+
const iconSize = size === 'xs' ? 'xs' : 's';
|
246
|
+
|
247
|
+
return (
|
248
|
+
<Range
|
249
|
+
dividerVariant="dash"
|
250
|
+
size={size}
|
251
|
+
firstValue={firstValue}
|
252
|
+
secondValue={secondValue}
|
253
|
+
firstValueError={firstValueError}
|
254
|
+
secondValueError={secondValueError}
|
255
|
+
firstValueSuccess={firstValueSuccess}
|
256
|
+
secondValueSuccess={secondValueSuccess}
|
257
|
+
contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
|
258
|
+
contentRight={enableContentRight ? <ActionButton size={size} /> : undefined}
|
259
|
+
onChangeFirstValue={(e) => {
|
260
|
+
handleChangeValue(
|
261
|
+
e,
|
262
|
+
setFirstValue,
|
263
|
+
firstValueError,
|
264
|
+
setFirstValueError,
|
265
|
+
firstValueSuccess,
|
266
|
+
setFirstValueSuccess,
|
267
|
+
);
|
268
|
+
}}
|
269
|
+
onChangeSecondValue={(e) => {
|
270
|
+
handleChangeValue(
|
271
|
+
e,
|
272
|
+
setSecondValue,
|
273
|
+
secondValueError,
|
274
|
+
setSecondValueError,
|
275
|
+
secondValueSuccess,
|
276
|
+
setSecondValueSuccess,
|
277
|
+
);
|
278
|
+
}}
|
279
|
+
onSearchFirstValue={(e) => {
|
280
|
+
const { value } = e.target as HTMLInputElement;
|
281
|
+
handleCommitValue(value, firstValueConstraint, setFirstValueError, setFirstValueSuccess);
|
282
|
+
}}
|
283
|
+
onSearchSecondValue={(e) => {
|
284
|
+
const { value } = e.target as HTMLInputElement;
|
285
|
+
handleCommitValue(value, secondValueConstraint, setSecondValueError, setSecondValueSuccess);
|
286
|
+
}}
|
287
|
+
onFocusFirstTextfield={onFocusFirstTextfield}
|
288
|
+
onFocusSecondTextfield={onFocusSecondTextfield}
|
289
|
+
onBlurFirstTextfield={onBlurFirstTextfield}
|
290
|
+
onBlurSecondTextfield={onBlurSecondTextfield}
|
291
|
+
{...rest}
|
292
|
+
/>
|
293
|
+
);
|
294
|
+
};
|
295
|
+
|
296
|
+
export const Demo: StoryObj<StoryPropsDefault> = {
|
297
|
+
args: {
|
298
|
+
label: 'Введите кол-во товара',
|
299
|
+
leftHelper: 'Кол-во товара не может быть меньше 1 и превышать 10',
|
300
|
+
firstPlaceholder: '1',
|
301
|
+
secondPlaceholder: '5',
|
302
|
+
size: 'l',
|
303
|
+
view: 'default',
|
304
|
+
disabled: false,
|
305
|
+
readOnly: false,
|
306
|
+
firstTextfieldTextBefore: '',
|
307
|
+
secondTextfieldTextBefore: '',
|
308
|
+
enableContentLeft: true,
|
309
|
+
enableContentRight: true,
|
310
|
+
},
|
311
|
+
render: (args) => <StoryDemo {...args} />,
|
312
|
+
};
|