@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.
Files changed (210) hide show
  1. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  2. package/cjs/components/Radiobox/Radiobox.js.map +1 -1
  3. package/cjs/components/Range/Range.css +63 -0
  4. package/cjs/components/Range/Range.js +146 -0
  5. package/cjs/components/Range/Range.js.map +1 -0
  6. package/cjs/components/Range/Range.styles.js +63 -0
  7. package/cjs/components/Range/Range.styles.js.map +1 -0
  8. package/cjs/components/Range/Range.styles_mc4w65.css +8 -0
  9. package/cjs/components/Range/Range.tokens.js +106 -0
  10. package/cjs/components/Range/Range.tokens.js.map +1 -0
  11. package/cjs/components/Range/utils/index.js +24 -0
  12. package/cjs/components/Range/utils/index.js.map +1 -0
  13. package/cjs/components/Range/variations/_disabled/base.js +9 -0
  14. package/cjs/components/Range/variations/_disabled/base.js.map +1 -0
  15. package/cjs/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
  16. package/cjs/components/Range/variations/_readonly/base.js +9 -0
  17. package/cjs/components/Range/variations/_readonly/base.js.map +1 -0
  18. package/cjs/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
  19. package/cjs/components/Range/variations/_size/base.js +9 -0
  20. package/cjs/components/Range/variations/_size/base.js.map +1 -0
  21. package/cjs/components/Range/variations/_size/base_16xiubi.css +1 -0
  22. package/cjs/components/Range/variations/_view/base.js +9 -0
  23. package/cjs/components/Range/variations/_view/base.js.map +1 -0
  24. package/cjs/components/Range/variations/_view/base_5iz3nr.css +1 -0
  25. package/cjs/components/Slider/Slider.css +11 -9
  26. package/cjs/components/Slider/components/Double/Double.css +11 -9
  27. package/cjs/components/TextField/TextField.js +10 -10
  28. package/cjs/components/TextField/TextField.js.map +1 -1
  29. package/cjs/components/TextField/TextField.styles.js +13 -1
  30. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  31. package/cjs/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
  32. package/cjs/components/TextField/TextField.tokens.js +5 -0
  33. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  34. package/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
  35. package/cjs/components/TextField/variations/_label-placement/inner.js.map +1 -1
  36. package/cjs/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
  37. package/cjs/components/TextField/variations/_size/base.js +1 -1
  38. package/cjs/components/TextField/variations/_size/base.js.map +1 -1
  39. package/{es/components/TextField/variations/_size/base_1khzr9t.css → cjs/components/TextField/variations/_size/base_ntoddv.css} +1 -1
  40. package/cjs/components/TextField/variations/_view/base.js +1 -1
  41. package/cjs/components/TextField/variations/_view/base.js.map +1 -1
  42. package/{es/components/TextField/variations/_view/base_1qd77x6.css → cjs/components/TextField/variations/_view/base_19gxyva.css} +1 -1
  43. package/cjs/index.css +28 -9
  44. package/cjs/index.js +5 -0
  45. package/cjs/index.js.map +1 -1
  46. package/es/components/Checkbox/Checkbox.styles.js.map +1 -1
  47. package/es/components/Radiobox/Radiobox.js.map +1 -1
  48. package/es/components/Range/Range.css +63 -0
  49. package/es/components/Range/Range.js +141 -0
  50. package/es/components/Range/Range.js.map +1 -0
  51. package/es/components/Range/Range.styles.js +52 -0
  52. package/es/components/Range/Range.styles.js.map +1 -0
  53. package/es/components/Range/Range.styles_mc4w65.css +8 -0
  54. package/es/components/Range/Range.tokens.js +101 -0
  55. package/es/components/Range/Range.tokens.js.map +1 -0
  56. package/es/components/Range/utils/index.js +19 -0
  57. package/es/components/Range/utils/index.js.map +1 -0
  58. package/es/components/Range/variations/_disabled/base.js +5 -0
  59. package/es/components/Range/variations/_disabled/base.js.map +1 -0
  60. package/es/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
  61. package/es/components/Range/variations/_readonly/base.js +5 -0
  62. package/es/components/Range/variations/_readonly/base.js.map +1 -0
  63. package/es/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
  64. package/es/components/Range/variations/_size/base.js +5 -0
  65. package/es/components/Range/variations/_size/base.js.map +1 -0
  66. package/es/components/Range/variations/_size/base_16xiubi.css +1 -0
  67. package/es/components/Range/variations/_view/base.js +5 -0
  68. package/es/components/Range/variations/_view/base.js.map +1 -0
  69. package/es/components/Range/variations/_view/base_5iz3nr.css +1 -0
  70. package/es/components/Slider/Slider.css +11 -9
  71. package/es/components/Slider/components/Double/Double.css +11 -9
  72. package/es/components/TextField/TextField.js +11 -11
  73. package/es/components/TextField/TextField.js.map +1 -1
  74. package/es/components/TextField/TextField.styles.js +12 -2
  75. package/es/components/TextField/TextField.styles.js.map +1 -1
  76. package/es/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
  77. package/es/components/TextField/TextField.tokens.js +5 -0
  78. package/es/components/TextField/TextField.tokens.js.map +1 -1
  79. package/es/components/TextField/variations/_label-placement/inner.js +1 -1
  80. package/es/components/TextField/variations/_label-placement/inner.js.map +1 -1
  81. package/es/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
  82. package/es/components/TextField/variations/_size/base.js +1 -1
  83. package/es/components/TextField/variations/_size/base.js.map +1 -1
  84. package/{cjs/components/TextField/variations/_size/base_1khzr9t.css → es/components/TextField/variations/_size/base_ntoddv.css} +1 -1
  85. package/es/components/TextField/variations/_view/base.js +1 -1
  86. package/es/components/TextField/variations/_view/base.js.map +1 -1
  87. package/{cjs/components/TextField/variations/_view/base_1qd77x6.css → es/components/TextField/variations/_view/base_19gxyva.css} +1 -1
  88. package/es/index.css +28 -9
  89. package/es/index.js +2 -0
  90. package/es/index.js.map +1 -1
  91. package/package.json +2 -2
  92. package/styled-components/cjs/components/Range/Range.js +148 -0
  93. package/styled-components/cjs/components/Range/Range.styles.js +39 -0
  94. package/styled-components/cjs/components/Range/Range.template-doc.mdx +323 -0
  95. package/styled-components/cjs/components/Range/Range.tokens.js +104 -0
  96. package/styled-components/cjs/components/Range/Range.types.js +5 -0
  97. package/styled-components/cjs/components/Range/index.js +25 -0
  98. package/styled-components/cjs/components/Range/utils/index.js +22 -0
  99. package/styled-components/cjs/components/Range/variations/_disabled/base.js +9 -0
  100. package/styled-components/cjs/components/Range/variations/_disabled/tokens.json +4 -0
  101. package/styled-components/cjs/components/Range/variations/_readonly/base.js +10 -0
  102. package/styled-components/cjs/components/Range/variations/_readonly/tokens.json +4 -0
  103. package/styled-components/cjs/components/Range/variations/_size/base.js +10 -0
  104. package/styled-components/cjs/components/Range/variations/_size/tokens.json +26 -0
  105. package/styled-components/cjs/components/Range/variations/_view/base.js +10 -0
  106. package/styled-components/cjs/components/Range/variations/_view/tokens.json +6 -0
  107. package/styled-components/cjs/components/TextField/TextField.js +10 -10
  108. package/styled-components/cjs/components/TextField/TextField.styles.js +7 -1
  109. package/styled-components/cjs/components/TextField/TextField.tokens.js +5 -0
  110. package/styled-components/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
  111. package/styled-components/cjs/components/TextField/variations/_size/base.js +1 -1
  112. package/styled-components/cjs/components/TextField/variations/_view/base.js +1 -1
  113. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.config.js +31 -0
  114. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.js +11 -0
  115. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
  116. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
  117. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
  118. package/styled-components/cjs/examples/plasma_web/components/Range/Range.config.js +31 -0
  119. package/styled-components/cjs/examples/plasma_web/components/Range/Range.js +11 -0
  120. package/styled-components/cjs/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
  121. package/styled-components/cjs/index.js +11 -0
  122. package/styled-components/es/components/Range/Range.js +139 -0
  123. package/styled-components/es/components/Range/Range.styles.js +31 -0
  124. package/styled-components/es/components/Range/Range.template-doc.mdx +323 -0
  125. package/styled-components/es/components/Range/Range.tokens.js +98 -0
  126. package/styled-components/es/components/Range/Range.types.js +1 -0
  127. package/styled-components/es/components/Range/index.js +2 -0
  128. package/styled-components/es/components/Range/utils/index.js +16 -0
  129. package/styled-components/es/components/Range/variations/_disabled/base.js +3 -0
  130. package/styled-components/es/components/Range/variations/_disabled/tokens.json +4 -0
  131. package/styled-components/es/components/Range/variations/_readonly/base.js +4 -0
  132. package/styled-components/es/components/Range/variations/_readonly/tokens.json +4 -0
  133. package/styled-components/es/components/Range/variations/_size/base.js +4 -0
  134. package/styled-components/es/components/Range/variations/_size/tokens.json +26 -0
  135. package/styled-components/es/components/Range/variations/_view/base.js +4 -0
  136. package/styled-components/es/components/Range/variations/_view/tokens.json +6 -0
  137. package/styled-components/es/components/TextField/TextField.js +11 -11
  138. package/styled-components/es/components/TextField/TextField.styles.js +6 -0
  139. package/styled-components/es/components/TextField/TextField.tokens.js +5 -0
  140. package/styled-components/es/components/TextField/variations/_label-placement/inner.js +2 -2
  141. package/styled-components/es/components/TextField/variations/_size/base.js +2 -2
  142. package/styled-components/es/components/TextField/variations/_view/base.js +2 -2
  143. package/styled-components/es/examples/plasma_b2c/components/Range/Range.config.js +25 -0
  144. package/styled-components/es/examples/plasma_b2c/components/Range/Range.js +5 -0
  145. package/styled-components/es/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
  146. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
  147. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
  148. package/styled-components/es/examples/plasma_web/components/Range/Range.config.js +25 -0
  149. package/styled-components/es/examples/plasma_web/components/Range/Range.js +5 -0
  150. package/styled-components/es/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
  151. package/styled-components/es/index.js +2 -1
  152. package/types/components/Radiobox/Radiobox.d.ts +3 -3
  153. package/types/components/Radiobox/Radiobox.d.ts.map +1 -1
  154. package/types/components/Range/Range.d.ts +31 -0
  155. package/types/components/Range/Range.d.ts.map +1 -0
  156. package/types/components/Range/Range.styles.d.ts +48 -0
  157. package/types/components/Range/Range.styles.d.ts.map +1 -0
  158. package/types/components/Range/Range.tokens.d.ts +99 -0
  159. package/types/components/Range/Range.tokens.d.ts.map +1 -0
  160. package/types/components/Range/Range.types.d.ts +143 -0
  161. package/types/components/Range/Range.types.d.ts.map +1 -0
  162. package/types/components/Range/index.d.ts +4 -0
  163. package/types/components/Range/index.d.ts.map +1 -0
  164. package/types/components/Range/utils/index.d.ts +5 -0
  165. package/types/components/Range/utils/index.d.ts.map +1 -0
  166. package/types/components/Range/variations/_disabled/base.d.ts +2 -0
  167. package/types/components/Range/variations/_disabled/base.d.ts.map +1 -0
  168. package/types/components/Range/variations/_readonly/base.d.ts +2 -0
  169. package/types/components/Range/variations/_readonly/base.d.ts.map +1 -0
  170. package/types/components/Range/variations/_size/base.d.ts +2 -0
  171. package/types/components/Range/variations/_size/base.d.ts.map +1 -0
  172. package/types/components/Range/variations/_view/base.d.ts +2 -0
  173. package/types/components/Range/variations/_view/base.d.ts.map +1 -0
  174. package/types/components/Slider/components/Double/Double.styles.d.ts +4 -0
  175. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  176. package/types/components/TextField/TextField.d.ts.map +1 -1
  177. package/types/components/TextField/TextField.styles.d.ts +2 -0
  178. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  179. package/types/components/TextField/TextField.tokens.d.ts +5 -0
  180. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  181. package/types/components/TextField/TextField.types.d.ts +8 -0
  182. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  183. package/types/components/TextField/variations/_label-placement/inner.d.ts.map +1 -1
  184. package/types/components/TextField/variations/_size/base.d.ts.map +1 -1
  185. package/types/components/TextField/variations/_view/base.d.ts.map +1 -1
  186. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts +1 -1
  187. package/types/examples/plasma_b2c/components/Radiobox/Radiobox.d.ts.map +1 -1
  188. package/types/examples/plasma_b2c/components/Range/Range.config.d.ts +24 -0
  189. package/types/examples/plasma_b2c/components/Range/Range.config.d.ts.map +1 -0
  190. package/types/examples/plasma_b2c/components/Range/Range.d.ts +127 -0
  191. package/types/examples/plasma_b2c/components/Range/Range.d.ts.map +1 -0
  192. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
  193. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +4 -0
  194. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  195. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts +1 -1
  196. package/types/examples/plasma_web/components/Radiobox/Radiobox.d.ts.map +1 -1
  197. package/types/examples/plasma_web/components/Range/Range.config.d.ts +24 -0
  198. package/types/examples/plasma_web/components/Range/Range.config.d.ts.map +1 -0
  199. package/types/examples/plasma_web/components/Range/Range.d.ts +127 -0
  200. package/types/examples/plasma_web/components/Range/Range.d.ts.map +1 -0
  201. package/types/examples/plasma_web/components/TextField/TextField.d.ts +4 -0
  202. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  203. package/types/examples/sds_engineer/components/Radiobox/Radiobox.d.ts +1 -1
  204. package/types/examples/sds_engineer/components/Radiobox/Radiobox.d.ts.map +1 -1
  205. package/types/examples/sds_engineer/components/TextField/TextField.d.ts +4 -0
  206. package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -1
  207. package/types/index.d.ts +1 -0
  208. package/types/index.d.ts.map +1 -1
  209. package/cjs/components/TextField/variations/_label-placement/inner_gqlcj2.css +0 -1
  210. 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,2 @@
1
+ export { rangeRoot, rangeConfig } from './Range';
2
+ export { tokens as rangeTokens } from './Range.tokens';
@@ -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,3 @@
1
+ import { css } from 'styled-components';
2
+ import { tokens } from '../../Range.tokens';
3
+ export var base = /*#__PURE__*/css(["&[disabled]{opacity:var(", ");cursor:not-allowed;}"], tokens.disabledOpacity);
@@ -0,0 +1,4 @@
1
+ {
2
+ "type": "boolean",
3
+ "tokens": ["--plasma-range-disabled-opacity"]
4
+ }
@@ -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
+ {
2
+ "type": "boolean",
3
+ "tokens": ["--plasma-range-background-read-only"]
4
+ }
@@ -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);