@salutejs/plasma-new-hope 0.80.0 → 0.81.0-canary.1194.9102719796.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (280) hide show
  1. package/cjs/components/Combobox/hooks/useFocusController.js +1 -0
  2. package/cjs/components/Combobox/hooks/useFocusController.js.map +1 -1
  3. package/cjs/components/Slider/Slider.css +69 -0
  4. package/cjs/components/Slider/Slider.js +48 -0
  5. package/cjs/components/Slider/Slider.js.map +1 -0
  6. package/cjs/components/Slider/Slider.tokens.js +79 -0
  7. package/cjs/components/Slider/Slider.tokens.js.map +1 -0
  8. package/cjs/components/Slider/components/Double/Double.css +62 -0
  9. package/cjs/components/Slider/components/Double/Double.js +288 -0
  10. package/cjs/components/Slider/components/Double/Double.js.map +1 -0
  11. package/cjs/components/Slider/components/Double/Double.styles.js +61 -0
  12. package/cjs/components/Slider/components/Double/Double.styles.js.map +1 -0
  13. package/cjs/components/Slider/components/Double/Double.styles_1jhda4u.css +7 -0
  14. package/cjs/components/Slider/components/Single/Single.css +16 -0
  15. package/cjs/components/Slider/components/Single/Single.js +162 -0
  16. package/cjs/components/Slider/components/Single/Single.js.map +1 -0
  17. package/cjs/components/Slider/components/Single/Single.styles.js +45 -0
  18. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -0
  19. package/cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css +6 -0
  20. package/cjs/components/Slider/components/SliderBase/SliderBase.css +4 -0
  21. package/cjs/components/Slider/components/SliderBase/SliderBase.js +82 -0
  22. package/cjs/components/Slider/components/SliderBase/SliderBase.js.map +1 -0
  23. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +33 -0
  24. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -0
  25. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_7is2ll.css +4 -0
  26. package/cjs/components/Slider/ui/Handler/Handler.css +4 -0
  27. package/cjs/components/Slider/ui/Handler/Handler.js +174 -0
  28. package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -0
  29. package/cjs/components/Slider/ui/Handler/Handler.styles.js +21 -0
  30. package/cjs/components/Slider/ui/Handler/Handler.styles.js.map +1 -0
  31. package/cjs/components/Slider/ui/Handler/Handler.styles_8crx5z.css +2 -0
  32. package/cjs/components/Slider/ui/Thumb/Thumb.css +1 -0
  33. package/cjs/components/Slider/ui/Thumb/Thumb.js +31 -0
  34. package/cjs/components/Slider/ui/Thumb/Thumb.js.map +1 -0
  35. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js +15 -0
  36. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -0
  37. package/cjs/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +1 -0
  38. package/cjs/components/Slider/utils/index.js +56 -0
  39. package/cjs/components/Slider/utils/index.js.map +1 -0
  40. package/cjs/components/Slider/variations/_disabled/base.js +9 -0
  41. package/cjs/components/Slider/variations/_disabled/base.js.map +1 -0
  42. package/cjs/components/Slider/variations/_disabled/base_x642ct.css +1 -0
  43. package/cjs/components/Slider/variations/_size/base.js +9 -0
  44. package/cjs/components/Slider/variations/_size/base.js.map +1 -0
  45. package/cjs/components/Slider/variations/_size/base_x642ct.css +1 -0
  46. package/cjs/components/Slider/variations/_view/base.js +9 -0
  47. package/cjs/components/Slider/variations/_view/base.js.map +1 -0
  48. package/cjs/components/Slider/variations/_view/base_x642ct.css +1 -0
  49. package/cjs/components/TextField/TextField.js +12 -3
  50. package/cjs/components/TextField/TextField.js.map +1 -1
  51. package/cjs/engines/common.js +4 -0
  52. package/cjs/engines/common.js.map +1 -1
  53. package/cjs/engines/index.js.map +1 -1
  54. package/cjs/hooks/useIsomorphicLayoutEffect.js +15 -0
  55. package/cjs/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  56. package/cjs/index.css +25 -0
  57. package/cjs/index.js +14 -0
  58. package/cjs/index.js.map +1 -1
  59. package/cjs/utils/canUseDOM.js +12 -0
  60. package/cjs/utils/canUseDOM.js.map +1 -0
  61. package/cjs/utils/index.js.map +1 -1
  62. package/es/components/Combobox/hooks/useFocusController.js +1 -0
  63. package/es/components/Combobox/hooks/useFocusController.js.map +1 -1
  64. package/es/components/Slider/Slider.css +69 -0
  65. package/es/components/Slider/Slider.js +43 -0
  66. package/es/components/Slider/Slider.js.map +1 -0
  67. package/es/components/Slider/Slider.tokens.js +74 -0
  68. package/es/components/Slider/Slider.tokens.js.map +1 -0
  69. package/es/components/Slider/components/Double/Double.css +62 -0
  70. package/es/components/Slider/components/Double/Double.js +284 -0
  71. package/es/components/Slider/components/Double/Double.js.map +1 -0
  72. package/es/components/Slider/components/Double/Double.styles.js +51 -0
  73. package/es/components/Slider/components/Double/Double.styles.js.map +1 -0
  74. package/es/components/Slider/components/Double/Double.styles_1jhda4u.css +7 -0
  75. package/es/components/Slider/components/Single/Single.css +16 -0
  76. package/es/components/Slider/components/Single/Single.js +158 -0
  77. package/es/components/Slider/components/Single/Single.js.map +1 -0
  78. package/es/components/Slider/components/Single/Single.styles.js +36 -0
  79. package/es/components/Slider/components/Single/Single.styles.js.map +1 -0
  80. package/es/components/Slider/components/Single/Single.styles_1r9f1e0.css +6 -0
  81. package/es/components/Slider/components/SliderBase/SliderBase.css +4 -0
  82. package/es/components/Slider/components/SliderBase/SliderBase.js +78 -0
  83. package/es/components/Slider/components/SliderBase/SliderBase.js.map +1 -0
  84. package/es/components/Slider/components/SliderBase/SliderBase.styles.js +26 -0
  85. package/es/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -0
  86. package/es/components/Slider/components/SliderBase/SliderBase.styles_7is2ll.css +4 -0
  87. package/es/components/Slider/ui/Handler/Handler.css +4 -0
  88. package/es/components/Slider/ui/Handler/Handler.js +170 -0
  89. package/es/components/Slider/ui/Handler/Handler.js.map +1 -0
  90. package/es/components/Slider/ui/Handler/Handler.styles.js +16 -0
  91. package/es/components/Slider/ui/Handler/Handler.styles.js.map +1 -0
  92. package/es/components/Slider/ui/Handler/Handler.styles_8crx5z.css +2 -0
  93. package/es/components/Slider/ui/Thumb/Thumb.css +1 -0
  94. package/es/components/Slider/ui/Thumb/Thumb.js +27 -0
  95. package/es/components/Slider/ui/Thumb/Thumb.js.map +1 -0
  96. package/es/components/Slider/ui/Thumb/Thumb.styles.js +11 -0
  97. package/es/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -0
  98. package/es/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +1 -0
  99. package/es/components/Slider/utils/index.js +50 -0
  100. package/es/components/Slider/utils/index.js.map +1 -0
  101. package/es/components/Slider/variations/_disabled/base.js +5 -0
  102. package/es/components/Slider/variations/_disabled/base.js.map +1 -0
  103. package/es/components/Slider/variations/_disabled/base_x642ct.css +1 -0
  104. package/es/components/Slider/variations/_size/base.js +5 -0
  105. package/es/components/Slider/variations/_size/base.js.map +1 -0
  106. package/es/components/Slider/variations/_size/base_x642ct.css +1 -0
  107. package/es/components/Slider/variations/_view/base.js +5 -0
  108. package/es/components/Slider/variations/_view/base.js.map +1 -0
  109. package/es/components/Slider/variations/_view/base_x642ct.css +1 -0
  110. package/es/components/TextField/TextField.js +12 -3
  111. package/es/components/TextField/TextField.js.map +1 -1
  112. package/es/engines/common.js +4 -0
  113. package/es/engines/common.js.map +1 -1
  114. package/es/engines/index.js.map +1 -1
  115. package/es/hooks/useIsomorphicLayoutEffect.js +11 -0
  116. package/es/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  117. package/es/index.css +25 -0
  118. package/es/index.js +8 -0
  119. package/es/index.js.map +1 -1
  120. package/es/utils/canUseDOM.js +8 -0
  121. package/es/utils/canUseDOM.js.map +1 -0
  122. package/es/utils/index.js.map +1 -1
  123. package/package.json +3 -2
  124. package/styled-components/cjs/components/Slider/Slider.js +47 -0
  125. package/styled-components/cjs/components/Slider/Slider.tokens.js +77 -0
  126. package/styled-components/cjs/components/Slider/Slider.types.js +5 -0
  127. package/styled-components/cjs/components/Slider/components/Double/Double.js +300 -0
  128. package/styled-components/cjs/components/Slider/components/Double/Double.styles.js +36 -0
  129. package/styled-components/cjs/components/Slider/components/Double/Double.types.js +5 -0
  130. package/styled-components/cjs/components/Slider/components/Single/Single.js +174 -0
  131. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +27 -0
  132. package/styled-components/cjs/components/Slider/components/Single/Single.types.js +5 -0
  133. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.js +83 -0
  134. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +21 -0
  135. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.types.js +5 -0
  136. package/styled-components/cjs/components/Slider/components/index.js +27 -0
  137. package/styled-components/cjs/components/Slider/index.js +32 -0
  138. package/styled-components/cjs/components/Slider/ui/Handler/Handler.js +183 -0
  139. package/styled-components/cjs/components/Slider/ui/Handler/Handler.styles.js +15 -0
  140. package/styled-components/cjs/components/Slider/ui/Handler/Handler.types.js +5 -0
  141. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.js +32 -0
  142. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.styles.js +18 -0
  143. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.types.js +5 -0
  144. package/styled-components/cjs/components/Slider/ui/index.js +63 -0
  145. package/styled-components/cjs/components/Slider/utils/index.js +55 -0
  146. package/styled-components/cjs/components/Slider/variations/_disabled/base.js +8 -0
  147. package/styled-components/cjs/components/Slider/variations/_disabled/tokens.json +4 -0
  148. package/styled-components/cjs/components/Slider/variations/_size/base.js +8 -0
  149. package/styled-components/cjs/components/Slider/variations/_size/tokens.json +0 -0
  150. package/styled-components/cjs/components/Slider/variations/_view/base.js +8 -0
  151. package/styled-components/cjs/components/Slider/variations/_view/tokens.json +0 -0
  152. package/styled-components/cjs/components/TextField/TextField.js +12 -3
  153. package/styled-components/cjs/engines/common.js +4 -0
  154. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +29 -0
  155. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.js +16 -0
  156. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +164 -0
  157. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.config.js +29 -0
  158. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.js +16 -0
  159. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +163 -0
  160. package/styled-components/cjs/hooks/index.js +8 -1
  161. package/styled-components/cjs/hooks/useIsomorphicLayoutEffect.js +12 -0
  162. package/styled-components/cjs/index.js +11 -0
  163. package/styled-components/cjs/utils/canUseDOM.js +11 -0
  164. package/styled-components/cjs/utils/index.js +7 -0
  165. package/styled-components/es/components/Slider/Slider.js +38 -0
  166. package/styled-components/es/components/Slider/Slider.tokens.js +71 -0
  167. package/styled-components/es/components/Slider/Slider.types.js +1 -0
  168. package/styled-components/es/components/Slider/components/Double/Double.js +292 -0
  169. package/styled-components/es/components/Slider/components/Double/Double.styles.js +29 -0
  170. package/styled-components/es/components/Slider/components/Double/Double.types.js +1 -0
  171. package/styled-components/es/components/Slider/components/Single/Single.js +166 -0
  172. package/styled-components/es/components/Slider/components/Single/Single.styles.js +20 -0
  173. package/styled-components/es/components/Slider/components/Single/Single.types.js +1 -0
  174. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.js +74 -0
  175. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.styles.js +14 -0
  176. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.types.js +1 -0
  177. package/styled-components/es/components/Slider/components/index.js +3 -0
  178. package/styled-components/es/components/Slider/index.js +3 -0
  179. package/styled-components/es/components/Slider/ui/Handler/Handler.js +174 -0
  180. package/styled-components/es/components/Slider/ui/Handler/Handler.styles.js +8 -0
  181. package/styled-components/es/components/Slider/ui/Handler/Handler.types.js +1 -0
  182. package/styled-components/es/components/Slider/ui/Thumb/Thumb.js +25 -0
  183. package/styled-components/es/components/Slider/ui/Thumb/Thumb.styles.js +11 -0
  184. package/styled-components/es/components/Slider/ui/Thumb/Thumb.types.js +1 -0
  185. package/styled-components/es/components/Slider/ui/index.js +5 -0
  186. package/styled-components/es/components/Slider/utils/index.js +47 -0
  187. package/styled-components/es/components/Slider/variations/_disabled/base.js +2 -0
  188. package/styled-components/es/components/Slider/variations/_disabled/tokens.json +4 -0
  189. package/styled-components/es/components/Slider/variations/_size/base.js +2 -0
  190. package/styled-components/es/components/Slider/variations/_size/tokens.json +0 -0
  191. package/styled-components/es/components/Slider/variations/_view/base.js +2 -0
  192. package/styled-components/es/components/Slider/variations/_view/tokens.json +0 -0
  193. package/styled-components/es/components/TextField/TextField.js +12 -3
  194. package/styled-components/es/engines/common.js +4 -0
  195. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.config.js +23 -0
  196. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.js +10 -0
  197. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +164 -0
  198. package/styled-components/es/examples/plasma_web/components/Slider/Slider.config.js +23 -0
  199. package/styled-components/es/examples/plasma_web/components/Slider/Slider.js +10 -0
  200. package/styled-components/es/examples/plasma_web/components/Slider/Slider.stories.tsx +163 -0
  201. package/styled-components/es/hooks/index.js +2 -1
  202. package/styled-components/es/hooks/useIsomorphicLayoutEffect.js +7 -0
  203. package/styled-components/es/index.js +2 -1
  204. package/styled-components/es/utils/canUseDOM.js +5 -0
  205. package/styled-components/es/utils/index.js +1 -0
  206. package/types/components/Slider/Slider.d.ts +27 -0
  207. package/types/components/Slider/Slider.d.ts.map +1 -0
  208. package/types/components/Slider/Slider.tokens.d.ts +72 -0
  209. package/types/components/Slider/Slider.tokens.d.ts.map +1 -0
  210. package/types/components/Slider/Slider.types.d.ts +3 -0
  211. package/types/components/Slider/Slider.types.d.ts.map +1 -0
  212. package/types/components/Slider/components/Double/Double.d.ts +4 -0
  213. package/types/components/Slider/components/Double/Double.d.ts.map +1 -0
  214. package/types/components/Slider/components/Double/Double.styles.d.ts +43 -0
  215. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -0
  216. package/types/components/Slider/components/Double/Double.types.d.ts +65 -0
  217. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -0
  218. package/types/components/Slider/components/Single/Single.d.ts +4 -0
  219. package/types/components/Slider/components/Single/Single.d.ts.map +1 -0
  220. package/types/components/Slider/components/Single/Single.styles.d.ts +8 -0
  221. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -0
  222. package/types/components/Slider/components/Single/Single.types.d.ts +55 -0
  223. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -0
  224. package/types/components/Slider/components/SliderBase/SliderBase.d.ts +4 -0
  225. package/types/components/Slider/components/SliderBase/SliderBase.d.ts.map +1 -0
  226. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts +6 -0
  227. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts.map +1 -0
  228. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts +45 -0
  229. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts.map +1 -0
  230. package/types/components/Slider/components/index.d.ts +6 -0
  231. package/types/components/Slider/components/index.d.ts.map +1 -0
  232. package/types/components/Slider/index.d.ts +6 -0
  233. package/types/components/Slider/index.d.ts.map +1 -0
  234. package/types/components/Slider/ui/Handler/Handler.d.ts +9 -0
  235. package/types/components/Slider/ui/Handler/Handler.d.ts.map +1 -0
  236. package/types/components/Slider/ui/Handler/Handler.styles.d.ts +4 -0
  237. package/types/components/Slider/ui/Handler/Handler.styles.d.ts.map +1 -0
  238. package/types/components/Slider/ui/Handler/Handler.types.d.ts +24 -0
  239. package/types/components/Slider/ui/Handler/Handler.types.d.ts.map +1 -0
  240. package/types/components/Slider/ui/Thumb/Thumb.d.ts +4 -0
  241. package/types/components/Slider/ui/Thumb/Thumb.d.ts.map +1 -0
  242. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts +5 -0
  243. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts.map +1 -0
  244. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts +12 -0
  245. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts.map +1 -0
  246. package/types/components/Slider/ui/index.d.ts +6 -0
  247. package/types/components/Slider/ui/index.d.ts.map +1 -0
  248. package/types/components/Slider/utils/index.d.ts +33 -0
  249. package/types/components/Slider/utils/index.d.ts.map +1 -0
  250. package/types/components/Slider/variations/_disabled/base.d.ts +2 -0
  251. package/types/components/Slider/variations/_disabled/base.d.ts.map +1 -0
  252. package/types/components/Slider/variations/_size/base.d.ts +2 -0
  253. package/types/components/Slider/variations/_size/base.d.ts.map +1 -0
  254. package/types/components/Slider/variations/_view/base.d.ts +2 -0
  255. package/types/components/Slider/variations/_view/base.d.ts.map +1 -0
  256. package/types/components/TextField/TextField.d.ts.map +1 -1
  257. package/types/engines/common.d.ts +3 -3
  258. package/types/engines/common.d.ts.map +1 -1
  259. package/types/engines/index.d.ts +1 -1
  260. package/types/engines/index.d.ts.map +1 -1
  261. package/types/engines/types.d.ts +4 -0
  262. package/types/engines/types.d.ts.map +1 -1
  263. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts +22 -0
  264. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts.map +1 -0
  265. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +21 -0
  266. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -0
  267. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts +22 -0
  268. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts.map +1 -0
  269. package/types/examples/plasma_web/components/Slider/Slider.d.ts +21 -0
  270. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -0
  271. package/types/hooks/index.d.ts +1 -0
  272. package/types/hooks/index.d.ts.map +1 -1
  273. package/types/hooks/useIsomorphicLayoutEffect.d.ts +6 -0
  274. package/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
  275. package/types/index.d.ts +1 -0
  276. package/types/index.d.ts.map +1 -1
  277. package/types/utils/canUseDOM.d.ts +6 -0
  278. package/types/utils/canUseDOM.d.ts.map +1 -0
  279. package/types/utils/index.d.ts +1 -0
  280. package/types/utils/index.d.ts.map +1 -1
@@ -0,0 +1,292 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["min", "max", "value", "disabled", "label", "labelContentLeft", "size", "onChangeCommitted", "onChangeTextField", "onBlurTextField", "onKeyDownTextField", "onChange", "ariaLabel", "multipleStepSize"];
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 ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
8
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ 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."); }
11
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
+ 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; }
16
+ 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; }
17
+ import React, { useCallback, useEffect, useRef, useState } from 'react';
18
+ import { SliderBase } from '../SliderBase/SliderBase';
19
+ import { Handler } from '../../ui';
20
+ import { sizeData } from '../../utils';
21
+ import { cx, isNumber } from '../../../../utils';
22
+ import { classes } from '../../Slider.tokens';
23
+ import { SliderWrapper, InputsWrapper, Label, LabelContentLeft, LabelWrapper, StyledInput, DoubleWrapper } from './Double.styles';
24
+ function getXCenterHandle(handle) {
25
+ var _handle$parentElement;
26
+ var containerX = ((_handle$parentElement = handle.parentElement) === null || _handle$parentElement === void 0 || (_handle$parentElement = _handle$parentElement.getBoundingClientRect()) === null || _handle$parentElement === void 0 ? void 0 : _handle$parentElement.x) || 0;
27
+ var handleRect = handle.getBoundingClientRect();
28
+ var handlePosition = handleRect.x;
29
+ return handlePosition - containerX;
30
+ }
31
+ export var DoubleSlider = function DoubleSlider(_ref) {
32
+ var min = _ref.min,
33
+ max = _ref.max,
34
+ value = _ref.value,
35
+ disabled = _ref.disabled,
36
+ label = _ref.label,
37
+ labelContentLeft = _ref.labelContentLeft,
38
+ _ref$size = _ref.size,
39
+ size = _ref$size === void 0 ? 'm' : _ref$size,
40
+ onChangeCommitted = _ref.onChangeCommitted,
41
+ onChangeTextField = _ref.onChangeTextField,
42
+ onBlurTextField = _ref.onBlurTextField,
43
+ onKeyDownTextField = _ref.onKeyDownTextField,
44
+ onChange = _ref.onChange,
45
+ ariaLabel = _ref.ariaLabel,
46
+ _ref$multipleStepSize = _ref.multipleStepSize,
47
+ multipleStepSize = _ref$multipleStepSize === void 0 ? 10 : _ref$multipleStepSize,
48
+ rest = _objectWithoutProperties(_ref, _excluded);
49
+ var _useState = useState({
50
+ stepSize: 0,
51
+ railFillWidth: 0,
52
+ railFillXPosition: 0,
53
+ xFirstHandle: 0,
54
+ xSecondHandle: 0,
55
+ firstHandleZIndex: 100,
56
+ secondHandleZIndex: 101,
57
+ firstValue: value[0],
58
+ secondValue: value[1]
59
+ }),
60
+ _useState2 = _slicedToArray(_useState, 2),
61
+ state = _useState2[0],
62
+ setState = _useState2[1];
63
+ var _useState3 = useState(false),
64
+ _useState4 = _slicedToArray(_useState3, 2),
65
+ firstInputActive = _useState4[0],
66
+ setFirstInputActive = _useState4[1];
67
+ var _useState5 = useState(false),
68
+ _useState6 = _slicedToArray(_useState5, 2),
69
+ secondInputActive = _useState6[0],
70
+ setSecondInputActive = _useState6[1];
71
+ var _useState7 = useState(value[0]),
72
+ _useState8 = _slicedToArray(_useState7, 2),
73
+ firstValue = _useState8[0],
74
+ setFirstValue = _useState8[1];
75
+ var _useState9 = useState(value[1]),
76
+ _useState10 = _slicedToArray(_useState9, 2),
77
+ secondValue = _useState10[0],
78
+ setSecondValue = _useState10[1];
79
+ var firstHandleRef = useRef(null);
80
+ var secondHandleRef = useRef(null);
81
+ var firstHandleValue = useRef(value[0]);
82
+ var secondHandleValue = useRef(value[1]);
83
+ var stepSize = state.stepSize;
84
+ var hasLabelContent = label || labelContentLeft;
85
+ var firstInputActiveClass = firstInputActive && !disabled ? classes.textFieldActive : undefined;
86
+ var secondInputActiveClass = secondInputActive && !disabled ? classes.textFieldActive : undefined;
87
+ useEffect(function () {
88
+ var firstLocalValue = Math.min(Math.max(value[0], min), max) - min;
89
+ var secondLocalValue = Math.min(Math.max(value[1], min), max) - min;
90
+ setFirstValue(value[0]);
91
+ setSecondValue(value[1]);
92
+ setState(function (prevState) {
93
+ return _objectSpread(_objectSpread({}, prevState), {}, {
94
+ railFillXPosition: stepSize * firstLocalValue,
95
+ railFillWidth: stepSize * secondLocalValue - stepSize * firstLocalValue,
96
+ xFirstHandle: stepSize * firstLocalValue,
97
+ xSecondHandle: stepSize * secondLocalValue
98
+ });
99
+ });
100
+ }, [value, stepSize, min, max, setFirstValue, setSecondValue]);
101
+ var setStepSize = useCallback(function (newStepSize) {
102
+ setState(function (prevState) {
103
+ return _objectSpread(_objectSpread({}, prevState), {}, {
104
+ stepSize: newStepSize
105
+ });
106
+ });
107
+ }, [setState]);
108
+ var onFirstHandleChange = function onFirstHandleChange(handleValue, data) {
109
+ if (!(secondHandleRef !== null && secondHandleRef !== void 0 && secondHandleRef.current)) {
110
+ return;
111
+ }
112
+ var newHandleXPosition = data.x;
113
+ var secondHandleXPosition = getXCenterHandle(secondHandleRef.current);
114
+ var fillWidth = secondHandleXPosition - newHandleXPosition;
115
+ firstHandleValue.current = handleValue;
116
+ setFirstValue(handleValue);
117
+ setState(function (prevState) {
118
+ return _objectSpread(_objectSpread({}, prevState), {}, {
119
+ firstHandleZIndex: 101,
120
+ secondHandleZIndex: 100,
121
+ railFillWidth: fillWidth < 0 ? 0 : fillWidth,
122
+ railFillXPosition: newHandleXPosition
123
+ });
124
+ });
125
+ if (onChange) {
126
+ onChange([handleValue, value[1]]);
127
+ }
128
+ };
129
+ var onFirstHandleChangeCommitted = function onFirstHandleChangeCommitted(handleValue, data) {
130
+ setFirstValue(handleValue);
131
+ if (onChangeCommitted) {
132
+ onChangeCommitted([handleValue, value[1]]);
133
+ }
134
+ setState(function (prevState) {
135
+ return _objectSpread(_objectSpread({}, prevState), {}, {
136
+ firstValue: handleValue,
137
+ xFirstHandle: data.lastX
138
+ });
139
+ });
140
+ };
141
+ var onFirstTextfieldChange = function onFirstTextfieldChange(event) {
142
+ if (!isNumber(event.target.value)) {
143
+ return;
144
+ }
145
+ var handleValue = Number(event.target.value);
146
+ setFirstValue(handleValue);
147
+ if (onChangeTextField) {
148
+ onChangeTextField([handleValue, secondValue], event);
149
+ }
150
+ };
151
+ var onFirstTextfieldBlur = function onFirstTextfieldBlur(event) {
152
+ if (!isNumber(event.target.value)) {
153
+ return;
154
+ }
155
+ var handleValue = Number(event.target.value);
156
+ setFirstValue(handleValue);
157
+ if (onBlurTextField) {
158
+ onBlurTextField && onBlurTextField([handleValue, secondValue], event);
159
+ }
160
+ };
161
+ var onSecondHandleChange = function onSecondHandleChange(handleValue, data) {
162
+ if (!(firstHandleRef !== null && firstHandleRef !== void 0 && firstHandleRef.current)) {
163
+ return;
164
+ }
165
+ var firstXHandleXPosition = getXCenterHandle(firstHandleRef.current);
166
+ var newHandleXPosition = data.x;
167
+ var fillWidth = newHandleXPosition - firstXHandleXPosition;
168
+ secondHandleValue.current = handleValue;
169
+ setSecondValue(handleValue);
170
+ setState(function (prevState) {
171
+ return _objectSpread(_objectSpread({}, prevState), {}, {
172
+ firstHandleZIndex: 100,
173
+ secondHandleZIndex: 101,
174
+ railFillWidth: fillWidth < 0 ? 0 : fillWidth,
175
+ railFillXPosition: firstXHandleXPosition
176
+ });
177
+ });
178
+ if (onChange) {
179
+ onChange([value[0], handleValue]);
180
+ }
181
+ };
182
+ var onSecondHandleChangeCommitted = function onSecondHandleChangeCommitted(handleValue, data) {
183
+ if (onChangeCommitted) {
184
+ onChangeCommitted([value[0], handleValue]);
185
+ }
186
+ setSecondValue(handleValue);
187
+ setState(function (prevState) {
188
+ return _objectSpread(_objectSpread({}, prevState), {}, {
189
+ secondValue: handleValue,
190
+ xSecondHandle: data.lastX
191
+ });
192
+ });
193
+ };
194
+ var onSecondTextfieldChange = function onSecondTextfieldChange(event) {
195
+ if (!isNumber(event.target.value)) {
196
+ return;
197
+ }
198
+ var handleValue = Number(event.target.value);
199
+ setSecondValue(handleValue);
200
+ if (onChangeTextField) {
201
+ onChangeTextField([firstValue, handleValue], event);
202
+ }
203
+ };
204
+ var onSecondTextfieldBlur = function onSecondTextfieldBlur(event) {
205
+ if (!isNumber(event.target.value)) {
206
+ return;
207
+ }
208
+ var handleValue = Number(event.target.value);
209
+ setSecondValue(handleValue);
210
+ if (onBlurTextField) {
211
+ onBlurTextField([firstValue, handleValue], event);
212
+ }
213
+ };
214
+ var onTextfieldKeyDown = function onTextfieldKeyDown(event) {
215
+ if (onKeyDownTextField) {
216
+ onKeyDownTextField([firstValue, secondValue], event);
217
+ }
218
+ };
219
+ var _ref2 = ariaLabel || [],
220
+ _ref3 = _slicedToArray(_ref2, 2),
221
+ ariaLabelLeft = _ref3[0],
222
+ ariaLabelRight = _ref3[1];
223
+ var currentFirstSliderValue = Math.max(state.firstValue, min);
224
+ return /*#__PURE__*/React.createElement(DoubleWrapper, null, hasLabelContent && /*#__PURE__*/React.createElement(LabelWrapper, null, labelContentLeft && /*#__PURE__*/React.createElement(LabelContentLeft, null, labelContentLeft), label && /*#__PURE__*/React.createElement(Label, null, label)), /*#__PURE__*/React.createElement(SliderWrapper, null, /*#__PURE__*/React.createElement(SliderBase, _extends({
225
+ min: min,
226
+ max: max,
227
+ disabled: disabled,
228
+ setStepSize: setStepSize,
229
+ railFillWidth: state.railFillWidth,
230
+ settings: sizeData[size],
231
+ railFillXPosition: state.railFillXPosition
232
+ }, rest), /*#__PURE__*/React.createElement(Handler, {
233
+ ref: firstHandleRef,
234
+ stepSize: state.stepSize,
235
+ multipleStepSize: multipleStepSize,
236
+ onChangeCommitted: onFirstHandleChangeCommitted,
237
+ onChange: onFirstHandleChange,
238
+ min: min,
239
+ max: state.secondValue,
240
+ disabled: disabled,
241
+ bounds: [min, state.secondValue],
242
+ side: "left",
243
+ xPosition: state.xFirstHandle,
244
+ zIndex: state.firstHandleZIndex,
245
+ value: currentFirstSliderValue,
246
+ ariaLabel: ariaLabelLeft,
247
+ onMouseEnter: function onMouseEnter() {
248
+ return setFirstInputActive(true);
249
+ },
250
+ onMouseLeave: function onMouseLeave() {
251
+ return setFirstInputActive(false);
252
+ }
253
+ }), /*#__PURE__*/React.createElement(Handler, {
254
+ ref: secondHandleRef,
255
+ stepSize: state.stepSize,
256
+ multipleStepSize: multipleStepSize,
257
+ onChangeCommitted: onSecondHandleChangeCommitted,
258
+ onChange: onSecondHandleChange,
259
+ min: min,
260
+ ariaValueMin: currentFirstSliderValue,
261
+ max: max,
262
+ disabled: disabled,
263
+ bounds: [state.firstValue, max],
264
+ side: "right",
265
+ xPosition: state.xSecondHandle,
266
+ zIndex: state.secondHandleZIndex,
267
+ value: Math.max(state.secondValue, min),
268
+ ariaLabel: ariaLabelRight,
269
+ onMouseEnter: function onMouseEnter() {
270
+ return setSecondInputActive(true);
271
+ },
272
+ onMouseLeave: function onMouseLeave() {
273
+ return setSecondInputActive(false);
274
+ }
275
+ })), /*#__PURE__*/React.createElement(InputsWrapper, null, /*#__PURE__*/React.createElement(StyledInput, {
276
+ className: cx(classes.firstTextField, firstInputActiveClass),
277
+ enumerationType: "plain",
278
+ disabled: disabled,
279
+ value: firstValue,
280
+ onChange: onFirstTextfieldChange,
281
+ onBlur: onFirstTextfieldBlur,
282
+ onKeyDown: onTextfieldKeyDown
283
+ }), /*#__PURE__*/React.createElement(StyledInput, {
284
+ className: cx(classes.secondTextField, secondInputActiveClass),
285
+ enumerationType: "plain",
286
+ disabled: disabled,
287
+ value: secondValue,
288
+ onChange: onSecondTextfieldChange,
289
+ onBlur: onSecondTextfieldBlur,
290
+ onKeyDown: onTextfieldKeyDown
291
+ }))));
292
+ };
@@ -0,0 +1,29 @@
1
+ import styled from 'styled-components';
2
+ import { classes, tokens } from '../../Slider.tokens';
3
+ import { component, mergeConfig } from '../../../../engines';
4
+ import { textFieldConfig, textFieldTokens } from '../../../TextField';
5
+ var mergedConfig = /*#__PURE__*/mergeConfig(textFieldConfig);
6
+ var TextField = /*#__PURE__*/component(mergedConfig);
7
+ export var LabelWrapper = /*#__PURE__*/styled.div.withConfig({
8
+ componentId: "plasma-new-hope__sc-97pdfk-0"
9
+ })(["color:var(", ");display:flex;gap:var(", ");margin-bottom:var(", ");"], tokens.labelColor, tokens.labelWrapperGap, tokens.labelWrapperMarginBottom);
10
+ export var LabelContentLeft = /*#__PURE__*/styled.div.withConfig({
11
+ componentId: "plasma-new-hope__sc-97pdfk-1"
12
+ })([""]);
13
+ export var Label = /*#__PURE__*/styled.label.withConfig({
14
+ componentId: "plasma-new-hope__sc-97pdfk-2"
15
+ })(["font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight);
16
+ export var InputsWrapper = /*#__PURE__*/styled.div.withConfig({
17
+ componentId: "plasma-new-hope__sc-97pdfk-3"
18
+ })(["display:flex;gap:var(", ");margin-top:var(", ");"], tokens.textFieldWrapperGap, tokens.doubleWrapperGap);
19
+
20
+ // NOTE: переопределение токенов TextField
21
+ export var StyledInput = /*#__PURE__*/styled(TextField).withConfig({
22
+ componentId: "plasma-new-hope__sc-97pdfk-4"
23
+ })(["flex:1;", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");&.", " > div{border-top-right-radius:0;border-bottom-right-radius:0;}&.", " > div{border-top-left-radius:0;border-bottom-left-radius:0;}input:focus,&.", "{", ":var(", ");}"], textFieldTokens.color, tokens.textFieldColor, textFieldTokens.backgroundColor, tokens.textFieldBackgroundColor, textFieldTokens.caretColor, tokens.textFieldCaretColor, textFieldTokens.placeholderColor, tokens.textFieldPlaceholderColor, textFieldTokens.disabledOpacity, tokens.disabledOpacity, textFieldTokens.height, tokens.textFieldHeight, textFieldTokens.padding, tokens.textFieldPadding, textFieldTokens.borderRadius, tokens.textFieldBorderRadius, textFieldTokens.fontFamily, tokens.textFieldFontFamily, textFieldTokens.fontSize, tokens.textFieldFontSize, textFieldTokens.fontStyle, tokens.textFieldFontStyle, textFieldTokens.fontWeight, tokens.textFieldFontWeight, textFieldTokens.letterSpacing, tokens.textFieldLetterSpacing, textFieldTokens.lineHeight, tokens.textFieldLineHeight, classes.firstTextField, classes.secondTextField, classes.textFieldActive, textFieldTokens.color, tokens.textFiledFocusColor);
24
+ export var DoubleWrapper = /*#__PURE__*/styled.div.withConfig({
25
+ componentId: "plasma-new-hope__sc-97pdfk-5"
26
+ })(["opacity:var(", ");"], tokens.disabledOpacity);
27
+ export var SliderWrapper = /*#__PURE__*/styled.div.withConfig({
28
+ componentId: "plasma-new-hope__sc-97pdfk-6"
29
+ })([""]);
@@ -0,0 +1,166 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ var _excluded = ["min", "max", "value", "disabled", "onChangeCommitted", "onChange", "ariaLabel", "label", "labelContentLeft", "showRangeValues", "showCurrentValue", "hideMinValueDiff", "hideMaxValueDiff", "labelPlacement", "rangeValuesPlacement", "multipleStepSize", "size"];
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 ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
8
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ 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."); }
11
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
+ 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; }
16
+ 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; }
17
+ import React, { useCallback, useEffect, useState, useRef } from 'react';
18
+ import { SliderBase } from '../SliderBase/SliderBase';
19
+ import { Handler } from '../../ui';
20
+ import { sizeData } from '../../utils';
21
+ import { cx, isNumber } from '../../../../utils';
22
+ import { classes } from '../../Slider.tokens';
23
+ import { Label, LabelContentLeft, LabelWrapper, SingleWrapper, SliderBaseWrapper, StyledRangeValue } from './Single.styles';
24
+ export var SingleSlider = function SingleSlider(_ref) {
25
+ var min = _ref.min,
26
+ max = _ref.max,
27
+ value = _ref.value,
28
+ disabled = _ref.disabled,
29
+ onChangeCommitted = _ref.onChangeCommitted,
30
+ onChange = _ref.onChange,
31
+ ariaLabel = _ref.ariaLabel,
32
+ label = _ref.label,
33
+ labelContentLeft = _ref.labelContentLeft,
34
+ showRangeValues = _ref.showRangeValues,
35
+ showCurrentValue = _ref.showCurrentValue,
36
+ hideMinValueDiff = _ref.hideMinValueDiff,
37
+ hideMaxValueDiff = _ref.hideMaxValueDiff,
38
+ _ref$labelPlacement = _ref.labelPlacement,
39
+ labelPlacement = _ref$labelPlacement === void 0 ? 'outer' : _ref$labelPlacement,
40
+ _ref$rangeValuesPlace = _ref.rangeValuesPlacement,
41
+ rangeValuesPlacement = _ref$rangeValuesPlace === void 0 ? 'outer' : _ref$rangeValuesPlace,
42
+ _ref$multipleStepSize = _ref.multipleStepSize,
43
+ multipleStepSize = _ref$multipleStepSize === void 0 ? 10 : _ref$multipleStepSize,
44
+ _ref$size = _ref.size,
45
+ size = _ref$size === void 0 ? 'm' : _ref$size,
46
+ rest = _objectWithoutProperties(_ref, _excluded);
47
+ var _useState = useState({
48
+ xHandle: 0,
49
+ stepSize: 0,
50
+ railFillWidth: 0
51
+ }),
52
+ _useState2 = _slicedToArray(_useState, 2),
53
+ state = _useState2[0],
54
+ setState = _useState2[1];
55
+ var _useState3 = useState(0),
56
+ _useState4 = _slicedToArray(_useState3, 2),
57
+ startOffset = _useState4[0],
58
+ setStartOffset = _useState4[1];
59
+ var _useState5 = useState(0),
60
+ _useState6 = _slicedToArray(_useState5, 2),
61
+ endOffset = _useState6[0],
62
+ setEndOffset = _useState6[1];
63
+ var _useState7 = useState(value),
64
+ _useState8 = _slicedToArray(_useState7, 2),
65
+ dragValue = _useState8[0],
66
+ setDragValue = _useState8[1];
67
+ var stepSize = state.stepSize;
68
+ var hasLabelContent = label || labelContentLeft;
69
+ var labelPlacementClass = labelPlacement === 'outer' ? classes.labelPlacementOuter : classes.labelPlacementInner;
70
+ var rangeValuesPlacementClass = rangeValuesPlacement === 'outer' ? classes.rangeValuesPlacementOuter : classes.rangeValuesPlacementInner;
71
+ var hideMinValueDiffClass = hideMinValueDiff && value - min <= hideMinValueDiff ? classes.hideMinValue : '';
72
+ var hideMaxValueDiffClass = hideMaxValueDiff && max - value <= hideMaxValueDiff ? classes.hideMaxValue : '';
73
+ var startLabelRef = useRef(null);
74
+ var endLabelRef = useRef(null);
75
+ var activeFirstValue = dragValue === min ? classes.activeRangeValue : undefined;
76
+ var activeSecondValue = dragValue === max ? classes.activeRangeValue : undefined;
77
+ useEffect(function () {
78
+ var localValue = Math.min(Math.max(value, min), max) - min;
79
+ if (rangeValuesPlacement === 'outer') {
80
+ var _startLabelRef$curren, _endLabelRef$current;
81
+ var startWidth = (_startLabelRef$curren = startLabelRef.current) === null || _startLabelRef$curren === void 0 ? void 0 : _startLabelRef$curren.offsetWidth;
82
+ if (isNumber(startWidth)) {
83
+ setStartOffset(Number(startWidth));
84
+ }
85
+ var endWidth = (_endLabelRef$current = endLabelRef.current) === null || _endLabelRef$current === void 0 ? void 0 : _endLabelRef$current.offsetWidth;
86
+ if (isNumber(endWidth)) {
87
+ setEndOffset(Number(endWidth));
88
+ }
89
+ } else {
90
+ setStartOffset(1);
91
+ setEndOffset(1);
92
+ }
93
+ setState(function (prevState) {
94
+ return _objectSpread(_objectSpread({}, prevState), {}, {
95
+ xHandle: stepSize * localValue,
96
+ railFillWidth: stepSize * localValue
97
+ });
98
+ });
99
+ }, [value, labelPlacement, stepSize, rangeValuesPlacement, min, max, setStartOffset, setEndOffset]);
100
+ var setStepSize = useCallback(function (newStepSize) {
101
+ setState(function (prevState) {
102
+ return _objectSpread(_objectSpread({}, prevState), {}, {
103
+ stepSize: newStepSize
104
+ });
105
+ });
106
+ }, []);
107
+ var onHandleChange = function onHandleChange(handleValue, data) {
108
+ var newHandleXPosition = data.x;
109
+ setState(function (prevState) {
110
+ return _objectSpread(_objectSpread({}, prevState), {}, {
111
+ railFillWidth: newHandleXPosition
112
+ });
113
+ });
114
+ if (onChange) {
115
+ onChange(handleValue);
116
+ }
117
+ setDragValue(handleValue);
118
+ };
119
+ var onHandleChangeCommitted = function onHandleChangeCommitted(handleValue, data) {
120
+ if (onChangeCommitted) {
121
+ onChangeCommitted(handleValue);
122
+ }
123
+ setState(function (prevState) {
124
+ return _objectSpread(_objectSpread({}, prevState), {}, {
125
+ xHandle: data.lastX,
126
+ railFillWidth: data.lastX
127
+ });
128
+ });
129
+ setDragValue(handleValue);
130
+ };
131
+ return /*#__PURE__*/React.createElement(SingleWrapper, {
132
+ className: labelPlacementClass
133
+ }, hasLabelContent && /*#__PURE__*/React.createElement(LabelWrapper, null, labelContentLeft && /*#__PURE__*/React.createElement(LabelContentLeft, null, labelContentLeft), label && /*#__PURE__*/React.createElement(Label, null, label)), /*#__PURE__*/React.createElement(SliderBaseWrapper, {
134
+ className: rangeValuesPlacementClass
135
+ }, showRangeValues && /*#__PURE__*/React.createElement(StyledRangeValue, {
136
+ ref: startLabelRef,
137
+ className: cx(hideMinValueDiffClass, activeFirstValue)
138
+ }, min), /*#__PURE__*/React.createElement(SliderBase, _extends({
139
+ min: min,
140
+ max: max,
141
+ disabled: disabled,
142
+ setStepSize: setStepSize,
143
+ onChange: onHandleChangeCommitted,
144
+ railFillWidth: state.railFillWidth,
145
+ settings: sizeData[size],
146
+ labelPlacement: labelPlacement,
147
+ rangeValuesPlacement: rangeValuesPlacement
148
+ }, rest), /*#__PURE__*/React.createElement(Handler, {
149
+ stepSize: state.stepSize,
150
+ onChangeCommitted: onHandleChangeCommitted,
151
+ onChange: onHandleChange,
152
+ xPosition: state.xHandle,
153
+ min: min,
154
+ max: max,
155
+ startOffset: startOffset,
156
+ endOffset: endOffset,
157
+ value: value,
158
+ disabled: disabled,
159
+ ariaLabel: ariaLabel,
160
+ multipleStepSize: multipleStepSize,
161
+ showCurrentValue: showCurrentValue
162
+ })), showRangeValues && /*#__PURE__*/React.createElement(StyledRangeValue, {
163
+ ref: endLabelRef,
164
+ className: cx(classes.maxRangeValue, hideMaxValueDiffClass, activeSecondValue)
165
+ }, max)));
166
+ };
@@ -0,0 +1,20 @@
1
+ import styled from 'styled-components';
2
+ import { classes, tokens } from '../../Slider.tokens';
3
+ export var LabelWrapper = /*#__PURE__*/styled.div.withConfig({
4
+ componentId: "plasma-new-hope__sc-1qm4elt-0"
5
+ })(["color:var(", ");display:flex;gap:var(", ");"], tokens.labelColor, tokens.labelWrapperGap);
6
+ export var LabelContentLeft = /*#__PURE__*/styled.div.withConfig({
7
+ componentId: "plasma-new-hope__sc-1qm4elt-1"
8
+ })([""]);
9
+ export var Label = /*#__PURE__*/styled.label.withConfig({
10
+ componentId: "plasma-new-hope__sc-1qm4elt-2"
11
+ })(["font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight);
12
+ export var StyledRangeValue = /*#__PURE__*/styled.span.withConfig({
13
+ componentId: "plasma-new-hope__sc-1qm4elt-3"
14
+ })(["color:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");transition:opacity 0.1s ease-in-out;&.", ",&.", "{opacity:0;}&.", "{color:var(", ");}"], tokens.rangeValueColor, tokens.rangeValueFontFamily, tokens.rangeValueFontSize, tokens.rangeValueFontStyle, tokens.rangeValueFontWeight, tokens.rangeValueLetterSpacing, tokens.rangeValueLineHeight, classes.hideMinValue, classes.hideMaxValue, classes.activeRangeValue, tokens.labelColor);
15
+ export var SliderBaseWrapper = /*#__PURE__*/styled.div.withConfig({
16
+ componentId: "plasma-new-hope__sc-1qm4elt-4"
17
+ })(["position:relative;display:flex;flex:1;&.", "{", "{position:absolute;bottom:var(", ");left:0;&.", "{left:unset;right:0;}}}&.", "{align-items:center;", "{margin-right:var(", ");&.", "{margin-right:0;margin-left:var(", ");}}}"], classes.rangeValuesPlacementOuter, StyledRangeValue, tokens.rangeValueBottomOffset, classes.maxRangeValue, classes.rangeValuesPlacementInner, StyledRangeValue, tokens.rangeMinValueMargin, classes.maxRangeValue, tokens.rangeMaxValueMargin);
18
+ export var SingleWrapper = /*#__PURE__*/styled.div.withConfig({
19
+ componentId: "plasma-new-hope__sc-1qm4elt-5"
20
+ })(["display:flex;opacity:var(", ");&.", "{flex-direction:column;", "{margin-bottom:var(", ");}}&.", "{", "{margin-right:var(", ");}}"], tokens.disabledOpacity, classes.labelPlacementOuter, LabelWrapper, tokens.labelWrapperMarginBottom, classes.labelPlacementInner, LabelWrapper, tokens.labelWrapperMarginRight);
@@ -0,0 +1,74 @@
1
+ import React, { useRef, useEffect } from 'react';
2
+ import { useIsomorphicLayoutEffect } from '../../../../hooks';
3
+ import { Fill, Rail, RailWrap, Slider } from './SliderBase.styles';
4
+ export var SliderBase = function SliderBase(_ref) {
5
+ var max = _ref.max,
6
+ min = _ref.min,
7
+ setStepSize = _ref.setStepSize,
8
+ railFillWidth = _ref.railFillWidth,
9
+ children = _ref.children,
10
+ _ref$railFillXPositio = _ref.railFillXPosition,
11
+ railFillXPosition = _ref$railFillXPositio === void 0 ? 0 : _ref$railFillXPositio,
12
+ disabled = _ref.disabled,
13
+ labelPlacement = _ref.labelPlacement,
14
+ rangeValuesPlacement = _ref.rangeValuesPlacement,
15
+ onChange = _ref.onChange,
16
+ _ref$settings = _ref.settings,
17
+ settings = _ref$settings === void 0 ? {} : _ref$settings;
18
+ var _settings$indent = settings.indent,
19
+ indent = _settings$indent === void 0 ? 0.75 : _settings$indent,
20
+ _settings$fontSizeMul = settings.fontSizeMultiplier,
21
+ fontSizeMultiplier = _settings$fontSizeMul === void 0 ? 16 : _settings$fontSizeMul;
22
+ var ref = useRef(null);
23
+ var gap = indent * fontSizeMultiplier * 2;
24
+ useEffect(function () {
25
+ var resizeHandler = function resizeHandler() {
26
+ if (ref.current) {
27
+ var railSize = ref.current.offsetWidth - gap;
28
+ var totalSteps = max - min;
29
+ setStepSize(railSize / totalSteps);
30
+ }
31
+ };
32
+ resizeHandler();
33
+ }, [labelPlacement, rangeValuesPlacement, ref.current]);
34
+ var onHandleChange = function onHandleChange(e) {
35
+ if (!onChange || disabled) {
36
+ return;
37
+ }
38
+ var _e$currentTarget$getB = e.currentTarget.getBoundingClientRect(),
39
+ x = _e$currentTarget$getB.x,
40
+ width = _e$currentTarget$getB.width;
41
+ var lastX = e.clientX - x;
42
+ var position = min + lastX / (width - gap) * (max - min);
43
+ var result = Math.max(min, Math.min(max, position));
44
+ onChange(result, {
45
+ lastX: lastX
46
+ });
47
+ };
48
+ useIsomorphicLayoutEffect(function () {
49
+ var resizeHandler = function resizeHandler() {
50
+ if (ref.current) {
51
+ var railSize = ref.current.offsetWidth - gap;
52
+ var totalSteps = max - min;
53
+ setStepSize(railSize / totalSteps);
54
+ }
55
+ };
56
+ resizeHandler();
57
+ window.addEventListener('resize', resizeHandler);
58
+ return function () {
59
+ return window.removeEventListener('resize', resizeHandler);
60
+ };
61
+ }, [min, max, setStepSize, ref.current, gap, labelPlacement, rangeValuesPlacement]);
62
+ var fillStyle = {
63
+ left: "".concat(railFillXPosition, "px"),
64
+ width: "".concat(railFillWidth, "px")
65
+ };
66
+ return /*#__PURE__*/React.createElement(Slider, {
67
+ ref: ref
68
+ }, /*#__PURE__*/React.createElement(RailWrap, {
69
+ "aria-hidden": "true",
70
+ onMouseDown: onHandleChange
71
+ }, /*#__PURE__*/React.createElement(Rail, null, /*#__PURE__*/React.createElement(Fill, {
72
+ style: fillStyle
73
+ }))), children);
74
+ };
@@ -0,0 +1,14 @@
1
+ import styled from 'styled-components';
2
+ import { tokens } from '../../Slider.tokens';
3
+ export var Slider = /*#__PURE__*/styled.div.withConfig({
4
+ componentId: "plasma-new-hope__sc-ik0bjb-0"
5
+ })(["flex:1;position:relative;user-select:none;height:var(", ");"], tokens.height);
6
+ export var RailWrap = /*#__PURE__*/styled.div.withConfig({
7
+ componentId: "plasma-new-hope__sc-ik0bjb-1"
8
+ })(["height:100%;"]);
9
+ export var Rail = /*#__PURE__*/styled.div.withConfig({
10
+ componentId: "plasma-new-hope__sc-ik0bjb-2"
11
+ })(["position:relative;top:50%;height:var(", ");border-radius:var(", ");background-color:var(", ");overflow:hidden;transform:translateY(-50%);"], tokens.railHeight, tokens.railBorderRadius, tokens.railBackgroundColor);
12
+ export var Fill = /*#__PURE__*/styled.div.withConfig({
13
+ componentId: "plasma-new-hope__sc-ik0bjb-3"
14
+ })(["position:absolute;height:100%;top:0;left:0;background:var(", ");width:0;"], tokens.fillColor);
@@ -0,0 +1,3 @@
1
+ export * from './Single/Single';
2
+ export * from './Double/Double';
3
+ export {};
@@ -0,0 +1,3 @@
1
+ export { sliderConfig, sliderRoot } from './Slider';
2
+ export { tokens as sliderTokens } from './Slider.tokens';
3
+ export { ThumbBase } from './ui';