@salutejs/plasma-new-hope 0.176.0-canary.1514.11559014063.0 → 0.176.0-dev.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (271) hide show
  1. package/cjs/components/Counter/Counter.css +1 -1
  2. package/cjs/components/Counter/Counter.js +3 -12
  3. package/cjs/components/Counter/Counter.js.map +1 -1
  4. package/cjs/components/Counter/Counter.tokens.js +0 -4
  5. package/cjs/components/Counter/Counter.tokens.js.map +1 -1
  6. package/cjs/components/Counter/variations/_size/base.js +1 -1
  7. package/cjs/components/Counter/variations/_size/base.js.map +1 -1
  8. package/cjs/components/Counter/variations/_size/{base_4mz17d.css → base_1z0ohiy.css} +1 -1
  9. package/cjs/components/Slider/Slider.css +15 -13
  10. package/cjs/components/Slider/Slider.js +11 -2
  11. package/cjs/components/Slider/Slider.js.map +1 -1
  12. package/cjs/components/Slider/Slider.tokens.js +23 -17
  13. package/cjs/components/Slider/Slider.tokens.js.map +1 -1
  14. package/cjs/components/Slider/components/Double/Double.css +8 -8
  15. package/cjs/components/Slider/components/Double/Double.js +58 -23
  16. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  17. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +98 -0
  18. package/cjs/components/Slider/components/Single/Single.css +14 -14
  19. package/cjs/components/Slider/components/Single/Single.js +64 -33
  20. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  21. package/cjs/components/Slider/components/Single/Single.styles.js +4 -4
  22. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -1
  23. package/cjs/components/Slider/components/Single/Single.styles_1h7n2s2.css +6 -0
  24. package/cjs/components/Slider/components/SliderBase/SliderBase.css +5 -5
  25. package/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
  26. package/cjs/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
  27. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  28. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
  29. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
  30. package/cjs/components/Slider/ui/Handler/Handler.css +3 -3
  31. package/cjs/components/Slider/ui/Handler/Handler.js +49 -88
  32. package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -1
  33. package/cjs/components/Slider/ui/Handler/Handler.styles.js +17 -7
  34. package/cjs/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
  35. package/cjs/components/Slider/ui/Handler/Handler.styles_irtcgm.css +2 -0
  36. package/cjs/components/Slider/ui/Handler/computeKeyPressData.js +122 -0
  37. package/cjs/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
  38. package/cjs/components/Slider/ui/Thumb/Thumb.css +1 -1
  39. package/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  40. package/cjs/components/Slider/ui/Thumb/Thumb.js.map +1 -1
  41. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
  42. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
  43. package/cjs/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
  44. package/cjs/components/Slider/utils/index.js +28 -10
  45. package/cjs/components/Slider/utils/index.js.map +1 -1
  46. package/cjs/components/Slider/variations/_view/base.js +1 -1
  47. package/cjs/components/Slider/variations/_view/base.js.map +1 -1
  48. package/cjs/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
  49. package/cjs/index.css +16 -14
  50. package/cjs/utils/index.js.map +1 -1
  51. package/emotion/cjs/components/Counter/Counter.js +3 -12
  52. package/emotion/cjs/components/Counter/Counter.template-doc.mdx +2 -2
  53. package/emotion/cjs/components/Counter/Counter.tokens.js +1 -4
  54. package/emotion/cjs/components/Counter/variations/_size/base.js +1 -1
  55. package/emotion/cjs/components/Slider/Slider.js +10 -2
  56. package/emotion/cjs/components/Slider/Slider.template-doc.mdx +26 -0
  57. package/emotion/cjs/components/Slider/Slider.tokens.js +23 -17
  58. package/emotion/cjs/components/Slider/components/Double/Double.js +54 -19
  59. package/emotion/cjs/components/Slider/components/Single/Single.js +64 -33
  60. package/emotion/cjs/components/Slider/components/Single/Single.styles.js +18 -9
  61. package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
  62. package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +10 -10
  63. package/emotion/cjs/components/Slider/ui/Handler/Handler.js +52 -88
  64. package/emotion/cjs/components/Slider/ui/Handler/Handler.styles.js +9 -15
  65. package/emotion/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
  66. package/emotion/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  67. package/emotion/cjs/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
  68. package/emotion/cjs/components/Slider/utils/index.js +28 -10
  69. package/emotion/cjs/components/Slider/variations/_view/base.js +2 -1
  70. package/emotion/cjs/examples/plasma_b2c/components/Counter/Counter.config.js +9 -12
  71. package/emotion/cjs/examples/plasma_b2c/components/Counter/Counter.stories.tsx +5 -7
  72. package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
  73. package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +98 -16
  74. package/emotion/cjs/examples/plasma_web/components/Counter/Counter.config.js +9 -12
  75. package/emotion/cjs/examples/plasma_web/components/Counter/Counter.stories.tsx +5 -7
  76. package/emotion/cjs/examples/plasma_web/components/Slider/Slider.config.js +7 -7
  77. package/emotion/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +98 -15
  78. package/emotion/es/components/Counter/Counter.js +3 -12
  79. package/emotion/es/components/Counter/Counter.template-doc.mdx +2 -2
  80. package/emotion/es/components/Counter/Counter.tokens.js +0 -3
  81. package/emotion/es/components/Counter/variations/_size/base.js +2 -2
  82. package/emotion/es/components/Slider/Slider.js +11 -2
  83. package/emotion/es/components/Slider/Slider.template-doc.mdx +26 -0
  84. package/emotion/es/components/Slider/Slider.tokens.js +23 -17
  85. package/emotion/es/components/Slider/components/Double/Double.js +54 -19
  86. package/emotion/es/components/Slider/components/Single/Single.js +65 -34
  87. package/emotion/es/components/Slider/components/Single/Single.styles.js +17 -8
  88. package/emotion/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
  89. package/emotion/es/components/Slider/components/SliderBase/SliderBase.styles.js +11 -11
  90. package/emotion/es/components/Slider/ui/Handler/Handler.js +51 -86
  91. package/emotion/es/components/Slider/ui/Handler/Handler.styles.js +10 -16
  92. package/emotion/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
  93. package/emotion/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  94. package/emotion/es/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
  95. package/emotion/es/components/Slider/utils/index.js +28 -10
  96. package/emotion/es/components/Slider/variations/_view/base.js +2 -1
  97. package/emotion/es/examples/plasma_b2c/components/Counter/Counter.config.js +9 -12
  98. package/emotion/es/examples/plasma_b2c/components/Counter/Counter.stories.tsx +5 -7
  99. package/emotion/es/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
  100. package/emotion/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +98 -16
  101. package/emotion/es/examples/plasma_web/components/Counter/Counter.config.js +9 -12
  102. package/emotion/es/examples/plasma_web/components/Counter/Counter.stories.tsx +5 -7
  103. package/emotion/es/examples/plasma_web/components/Slider/Slider.config.js +7 -7
  104. package/emotion/es/examples/plasma_web/components/Slider/Slider.stories.tsx +98 -15
  105. package/es/components/Counter/Counter.css +1 -1
  106. package/es/components/Counter/Counter.js +3 -12
  107. package/es/components/Counter/Counter.js.map +1 -1
  108. package/es/components/Counter/Counter.tokens.js +1 -4
  109. package/es/components/Counter/Counter.tokens.js.map +1 -1
  110. package/es/components/Counter/variations/_size/base.js +1 -1
  111. package/es/components/Counter/variations/_size/base.js.map +1 -1
  112. package/es/components/Counter/variations/_size/{base_4mz17d.css → base_1z0ohiy.css} +1 -1
  113. package/es/components/Slider/Slider.css +15 -13
  114. package/es/components/Slider/Slider.js +11 -2
  115. package/es/components/Slider/Slider.js.map +1 -1
  116. package/es/components/Slider/Slider.tokens.js +23 -17
  117. package/es/components/Slider/Slider.tokens.js.map +1 -1
  118. package/es/components/Slider/components/Double/Double.css +8 -8
  119. package/es/components/Slider/components/Double/Double.js +54 -19
  120. package/es/components/Slider/components/Double/Double.js.map +1 -1
  121. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +98 -0
  122. package/es/components/Slider/components/Single/Single.css +14 -14
  123. package/es/components/Slider/components/Single/Single.js +65 -34
  124. package/es/components/Slider/components/Single/Single.js.map +1 -1
  125. package/es/components/Slider/components/Single/Single.styles.js +4 -4
  126. package/es/components/Slider/components/Single/Single.styles.js.map +1 -1
  127. package/es/components/Slider/components/Single/Single.styles_1h7n2s2.css +6 -0
  128. package/es/components/Slider/components/SliderBase/SliderBase.css +5 -5
  129. package/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
  130. package/es/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
  131. package/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  132. package/es/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
  133. package/es/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
  134. package/es/components/Slider/ui/Handler/Handler.css +3 -3
  135. package/es/components/Slider/ui/Handler/Handler.js +48 -87
  136. package/es/components/Slider/ui/Handler/Handler.js.map +1 -1
  137. package/es/components/Slider/ui/Handler/Handler.styles.js +17 -7
  138. package/es/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
  139. package/es/components/Slider/ui/Handler/Handler.styles_irtcgm.css +2 -0
  140. package/es/components/Slider/ui/Handler/computeKeyPressData.js +118 -0
  141. package/es/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
  142. package/es/components/Slider/ui/Thumb/Thumb.css +1 -1
  143. package/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  144. package/es/components/Slider/ui/Thumb/Thumb.js.map +1 -1
  145. package/es/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
  146. package/es/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
  147. package/es/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
  148. package/es/components/Slider/utils/index.js +28 -10
  149. package/es/components/Slider/utils/index.js.map +1 -1
  150. package/es/components/Slider/variations/_view/base.js +1 -1
  151. package/es/components/Slider/variations/_view/base.js.map +1 -1
  152. package/es/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
  153. package/es/index.css +16 -14
  154. package/es/utils/index.js.map +1 -1
  155. package/package.json +2 -2
  156. package/styled-components/cjs/components/Counter/Counter.js +3 -12
  157. package/styled-components/cjs/components/Counter/Counter.template-doc.mdx +2 -2
  158. package/styled-components/cjs/components/Counter/Counter.tokens.js +1 -4
  159. package/styled-components/cjs/components/Counter/variations/_size/base.js +1 -1
  160. package/styled-components/cjs/components/Slider/Slider.js +10 -2
  161. package/styled-components/cjs/components/Slider/Slider.template-doc.mdx +26 -0
  162. package/styled-components/cjs/components/Slider/Slider.tokens.js +23 -17
  163. package/styled-components/cjs/components/Slider/components/Double/Double.js +54 -19
  164. package/styled-components/cjs/components/Slider/components/Single/Single.js +64 -33
  165. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +6 -6
  166. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.js +31 -12
  167. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +6 -6
  168. package/styled-components/cjs/components/Slider/ui/Handler/Handler.js +52 -88
  169. package/styled-components/cjs/components/Slider/ui/Handler/Handler.styles.js +7 -4
  170. package/styled-components/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
  171. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  172. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
  173. package/styled-components/cjs/components/Slider/utils/index.js +28 -10
  174. package/styled-components/cjs/components/Slider/variations/_view/base.js +2 -1
  175. package/styled-components/cjs/examples/plasma_b2c/components/Counter/Counter.config.js +2 -5
  176. package/styled-components/cjs/examples/plasma_b2c/components/Counter/Counter.stories.tsx +5 -7
  177. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
  178. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +98 -16
  179. package/styled-components/cjs/examples/plasma_web/components/Counter/Counter.config.js +2 -5
  180. package/styled-components/cjs/examples/plasma_web/components/Counter/Counter.stories.tsx +5 -7
  181. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.config.js +3 -3
  182. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +98 -15
  183. package/styled-components/es/components/Counter/Counter.js +3 -12
  184. package/styled-components/es/components/Counter/Counter.template-doc.mdx +2 -2
  185. package/styled-components/es/components/Counter/Counter.tokens.js +0 -3
  186. package/styled-components/es/components/Counter/variations/_size/base.js +2 -2
  187. package/styled-components/es/components/Slider/Slider.js +11 -2
  188. package/styled-components/es/components/Slider/Slider.template-doc.mdx +26 -0
  189. package/styled-components/es/components/Slider/Slider.tokens.js +23 -17
  190. package/styled-components/es/components/Slider/components/Double/Double.js +54 -19
  191. package/styled-components/es/components/Slider/components/Single/Single.js +65 -34
  192. package/styled-components/es/components/Slider/components/Single/Single.styles.js +5 -5
  193. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.js +31 -12
  194. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  195. package/styled-components/es/components/Slider/ui/Handler/Handler.js +51 -86
  196. package/styled-components/es/components/Slider/ui/Handler/Handler.styles.js +8 -5
  197. package/styled-components/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
  198. package/styled-components/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  199. package/styled-components/es/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
  200. package/styled-components/es/components/Slider/utils/index.js +28 -10
  201. package/styled-components/es/components/Slider/variations/_view/base.js +2 -1
  202. package/styled-components/es/examples/plasma_b2c/components/Counter/Counter.config.js +2 -5
  203. package/styled-components/es/examples/plasma_b2c/components/Counter/Counter.stories.tsx +5 -7
  204. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
  205. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +98 -16
  206. package/styled-components/es/examples/plasma_web/components/Counter/Counter.config.js +2 -5
  207. package/styled-components/es/examples/plasma_web/components/Counter/Counter.stories.tsx +5 -7
  208. package/styled-components/es/examples/plasma_web/components/Slider/Slider.config.js +3 -3
  209. package/styled-components/es/examples/plasma_web/components/Slider/Slider.stories.tsx +98 -15
  210. package/types/components/Counter/Counter.d.ts.map +1 -1
  211. package/types/components/Counter/Counter.tokens.d.ts +0 -3
  212. package/types/components/Counter/Counter.tokens.d.ts.map +1 -1
  213. package/types/components/Counter/Counter.types.d.ts +2 -2
  214. package/types/components/Counter/variations/_size/base.d.ts.map +1 -1
  215. package/types/components/Slider/Slider.d.ts.map +1 -1
  216. package/types/components/Slider/Slider.tokens.d.ts +22 -16
  217. package/types/components/Slider/Slider.tokens.d.ts.map +1 -1
  218. package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
  219. package/types/components/Slider/components/Double/Double.types.d.ts +1 -0
  220. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  221. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  222. package/types/components/Slider/components/Single/Single.styles.d.ts +1 -1
  223. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -1
  224. package/types/components/Slider/components/Single/Single.types.d.ts +79 -7
  225. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  226. package/types/components/Slider/components/SliderBase/SliderBase.d.ts.map +1 -1
  227. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts +1 -1
  228. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts.map +1 -1
  229. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts +6 -0
  230. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts.map +1 -1
  231. package/types/components/Slider/ui/Handler/Handler.d.ts.map +1 -1
  232. package/types/components/Slider/ui/Handler/Handler.styles.d.ts +6 -2
  233. package/types/components/Slider/ui/Handler/Handler.styles.d.ts.map +1 -1
  234. package/types/components/Slider/ui/Handler/Handler.types.d.ts +5 -1
  235. package/types/components/Slider/ui/Handler/Handler.types.d.ts.map +1 -1
  236. package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts +12 -0
  237. package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts.map +1 -0
  238. package/types/components/Slider/ui/Thumb/Thumb.d.ts +1 -1
  239. package/types/components/Slider/ui/Thumb/Thumb.d.ts.map +1 -1
  240. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts.map +1 -1
  241. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts +1 -0
  242. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts.map +1 -1
  243. package/types/components/Slider/utils/index.d.ts +26 -8
  244. package/types/components/Slider/utils/index.d.ts.map +1 -1
  245. package/types/components/Slider/variations/_view/base.d.ts.map +1 -1
  246. package/types/examples/plasma_b2c/components/Counter/Counter.config.d.ts +0 -3
  247. package/types/examples/plasma_b2c/components/Counter/Counter.config.d.ts.map +1 -1
  248. package/types/examples/plasma_b2c/components/Counter/Counter.d.ts +0 -3
  249. package/types/examples/plasma_b2c/components/Counter/Counter.d.ts.map +1 -1
  250. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts.map +1 -1
  251. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +80 -2
  252. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
  253. package/types/examples/plasma_web/components/Counter/Counter.config.d.ts +0 -3
  254. package/types/examples/plasma_web/components/Counter/Counter.config.d.ts.map +1 -1
  255. package/types/examples/plasma_web/components/Counter/Counter.d.ts +0 -3
  256. package/types/examples/plasma_web/components/Counter/Counter.d.ts.map +1 -1
  257. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts.map +1 -1
  258. package/types/examples/plasma_web/components/Slider/Slider.d.ts +80 -2
  259. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
  260. package/types/utils/index.d.ts +1 -1
  261. package/types/utils/index.d.ts.map +1 -1
  262. package/cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
  263. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
  264. package/cjs/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
  265. package/cjs/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
  266. package/cjs/components/Slider/variations/_view/base_x642ct.css +0 -1
  267. package/es/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
  268. package/es/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
  269. package/es/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
  270. package/es/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
  271. package/es/components/Slider/variations/_view/base_x642ct.css +0 -1
@@ -4,14 +4,18 @@ import styled from 'styled-components';
4
4
  import { disableProps } from '@salutejs/plasma-sb-utils';
5
5
  import type { StoryObj, Meta } from '@storybook/react';
6
6
 
7
+ import { IconMic } from '../../../../components/_Icon';
7
8
  import { WithTheme } from '../../../_helpers';
8
9
 
9
10
  import { Slider } from './Slider';
10
11
 
11
12
  const sizes = ['l', 'm', 's'];
13
+ const pointerSizes = ['small', 'large', 'none'];
12
14
  const views = ['default', 'accent', 'gradient'];
13
- const labelPlacements = ['outer', 'inner'];
14
- const rangeValuesPlacement = ['outer', 'inner'];
15
+ const sliderAligns = ['center', 'left', 'right', 'none'];
16
+ const labelPlacements = ['top', 'left'];
17
+ const scaleAligns = ['side', 'bottom'];
18
+ const orientations: Array<string> = ['vertical', 'horizontal'];
15
19
 
16
20
  const meta: Meta<typeof Slider> = {
17
21
  title: 'plasma_web/Slider',
@@ -30,9 +34,24 @@ const meta: Meta<typeof Slider> = {
30
34
  type: 'inline-radio',
31
35
  },
32
36
  },
37
+ pointerSize: {
38
+ options: pointerSizes,
39
+ control: {
40
+ type: 'inline-radio',
41
+ },
42
+ },
43
+ orientation: {
44
+ options: orientations,
45
+ control: {
46
+ type: 'select',
47
+ },
48
+ },
33
49
  ...disableProps([
34
50
  'value',
35
51
  'onChangeCommitted',
52
+ 'onChangeTextField',
53
+ 'onBlurTextField',
54
+ 'onKeyDownTextField',
36
55
  'ariaLabel',
37
56
  'onChange',
38
57
  'fontSizeMultiplier',
@@ -40,6 +59,14 @@ const meta: Meta<typeof Slider> = {
40
59
  'settings',
41
60
  'hasHoverAnimation',
42
61
  'type',
62
+ 'labelContentLeft',
63
+ 'rangeValuesPlacement',
64
+ 'name',
65
+ 'defaultValue',
66
+ 'labelContent',
67
+ 'showRangeValues',
68
+ 'hideMinValueDiff',
69
+ 'hideMaxValueDiff',
43
70
  ]),
44
71
  },
45
72
  };
@@ -52,8 +79,9 @@ type StorySingleProps = StoryProps;
52
79
  type StorySingle = StoryObj<StorySingleProps>;
53
80
  type StoryDouble = StoryObj<StoryProps>;
54
81
 
55
- const SliderWrapper = styled.div`
56
- width: 25rem;
82
+ const SliderWrapper = styled.div<{ isVertical?: boolean }>`
83
+ width: ${({ isVertical }) => (isVertical ? 'auto' : '25rem')};
84
+ height: ${({ isVertical }) => (isVertical ? '25rem' : 'auto')};
57
85
  `;
58
86
 
59
87
  const StoryDefault = (args: StorySingleProps) => {
@@ -67,41 +95,86 @@ const StoryDefault = (args: StorySingleProps) => {
67
95
  setValue(values);
68
96
  };
69
97
 
98
+ const { hasIcon, showIcon, orientation, labelPlacement, labelVerticalPlacement, ...rest } = args;
99
+ const isVertical = orientation === 'vertical';
100
+
70
101
  return (
71
- <SliderWrapper>
72
- <Slider value={value} onChangeCommitted={onChangeCommittedHandle} onChange={onChangeHandle} {...args} />
102
+ <SliderWrapper isVertical={isVertical}>
103
+ <Slider
104
+ value={value}
105
+ orientation={orientation}
106
+ labelPlacement={labelPlacement}
107
+ labelContent={showIcon ? <IconMic size={rest.size === 's' ? 'xs' : 's'} /> : null}
108
+ onChangeCommitted={onChangeCommittedHandle}
109
+ onChange={onChangeHandle}
110
+ {...rest}
111
+ />
73
112
  </SliderWrapper>
74
113
  );
75
114
  };
76
115
 
77
116
  export const Default: StorySingle = {
78
117
  argTypes: {
118
+ sliderAlign: {
119
+ options: sliderAligns,
120
+ control: {
121
+ type: 'inline-radio',
122
+ },
123
+ if: { arg: 'orientation', eq: 'vertical' },
124
+ },
79
125
  labelPlacement: {
80
126
  options: labelPlacements,
81
127
  control: {
82
128
  type: 'inline-radio',
83
129
  },
130
+ if: { arg: 'orientation', eq: 'horizontal' },
131
+ },
132
+ labelReversed: {
133
+ control: {
134
+ type: 'boolean',
135
+ expanded: true,
136
+ },
137
+ if: { arg: 'orientation', eq: 'vertical' },
138
+ },
139
+ scaleAlign: {
140
+ options: scaleAligns,
141
+ control: {
142
+ type: 'inline-radio',
143
+ },
144
+ if: { arg: 'orientation', eq: 'horizontal' },
84
145
  },
85
- rangeValuesPlacement: {
86
- options: rangeValuesPlacement,
146
+ orientation: {
147
+ options: orientations,
87
148
  control: {
88
149
  type: 'inline-radio',
89
150
  },
90
151
  },
152
+ reversed: {
153
+ control: {
154
+ type: 'boolean',
155
+ },
156
+ if: { arg: 'orientation', eq: 'vertical' },
157
+ },
91
158
  },
92
159
  args: {
93
160
  view: 'default',
94
161
  size: 'm',
162
+ pointerSize: 'small',
95
163
  min: 0,
96
164
  max: 100,
97
- disabled: false,
98
- ariaLabel: 'Цена товара',
165
+ orientation: 'horizontal',
166
+ ariaLabel: 'Цена микрофона',
99
167
  multipleStepSize: 10,
100
- label: 'Цена товара',
101
- labelPlacement: 'outer',
102
- rangeValuesPlacement: 'outer',
103
- showRangeValues: true,
168
+ label: 'Цена микрофона',
169
+ labelPlacement: 'top',
170
+ sliderAlign: 'center',
171
+ scaleAlign: 'bottom',
172
+ showScale: true,
104
173
  showCurrentValue: false,
174
+ showIcon: true,
175
+ reversed: false,
176
+ labelReversed: false,
177
+ disabled: false,
105
178
  },
106
179
  render: (args) => <StoryDefault {...args} />,
107
180
  };
@@ -141,7 +214,7 @@ const StoryMultipleValues = (args: StoryProps) => {
141
214
  };
142
215
 
143
216
  return (
144
- <SliderWrapper>
217
+ <SliderWrapper isVertical={args.orientation === 'vertical'}>
145
218
  <Slider
146
219
  value={value}
147
220
  onKeyDownTextField={onKeyDownTextField}
@@ -158,6 +231,7 @@ export const MultipleValues: StoryDouble = {
158
231
  args: {
159
232
  view: 'default',
160
233
  size: 'm',
234
+ pointerSize: 'small',
161
235
  min: 0,
162
236
  max: 100,
163
237
  disabled: false,
@@ -165,5 +239,14 @@ export const MultipleValues: StoryDouble = {
165
239
  ariaLabel: ['Минимальная цена товара', 'Максимальная цена товара'],
166
240
  multipleStepSize: 10,
167
241
  },
242
+ argTypes: {
243
+ pointerSize: {
244
+ options: ['small', 'large'],
245
+ control: {
246
+ type: 'inline-radio',
247
+ },
248
+ },
249
+ ...disableProps(['orientation']),
250
+ },
168
251
  render: (args) => <StoryMultipleValues {...args} />,
169
252
  };
@@ -1,33 +1,24 @@
1
- var _excluded = ["count", "maxCount", "size", "view", "className"];
1
+ var _excluded = ["count", "maxCount", "size", "view"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
5
  import React, { forwardRef } from 'react';
6
- import { cx } from '../../utils';
7
6
  import { base as viewCSS } from './variations/_view/base';
8
7
  import { base as sizeCSS } from './variations/_size/base';
9
8
  import { base } from './Counter.styles';
10
- import { classes } from './Counter.tokens';
11
- var MIN_COUNT = 1;
12
9
  export var counterRoot = function counterRoot(Root) {
13
10
  return /*#__PURE__*/forwardRef(function (props, ref) {
14
11
  var count = props.count,
15
12
  maxCount = props.maxCount,
16
13
  size = props.size,
17
14
  view = props.view,
18
- className = props.className,
19
15
  rest = _objectWithoutProperties(props, _excluded);
20
- var currCount = count < MIN_COUNT ? MIN_COUNT : count;
21
- var currMaxCount = maxCount && maxCount < MIN_COUNT ? MIN_COUNT : maxCount;
22
- var currMaxCountExceeded = currMaxCount && currCount > currMaxCount;
23
- var content = currMaxCountExceeded ? "".concat(currMaxCount, "+") : currCount;
24
- var roundClass = !currMaxCountExceeded && currCount >= 0 && currCount < 10 ? classes.round : undefined;
16
+ var content = maxCount && count > maxCount ? "".concat(maxCount, "+") : count;
25
17
  return /*#__PURE__*/React.createElement(Root, _extends({
26
18
  ref: ref,
27
19
  view: view,
28
20
  size: size,
29
- count: count,
30
- className: cx(roundClass, className)
21
+ count: count
31
22
  }, rest), content);
32
23
  });
33
24
  };
@@ -12,7 +12,7 @@ import { PropsTable, Description } from '@site/src/components';
12
12
  ## Примеры
13
13
 
14
14
  ### Максимальное значение числового badge
15
- Задается с помощью свойства `maxCount`. Как и `count`, не может быть меньше 1.
15
+ Задается с помощью свойства `maxCount`.
16
16
 
17
17
  ```tsx live
18
18
  import React from 'react';
@@ -29,7 +29,7 @@ export function App() {
29
29
  ```
30
30
 
31
31
  ### Размер числового badge
32
- Размер задается с помощью свойства `size`. Возможные значения свойства: `xxs`, `xs`, `s`, `m`, `l`.
32
+ Размер задается с помощью свойства `size`. Возможные значения свойства: `"xs"` или `"xxs"`.
33
33
 
34
34
  ```tsx live
35
35
  import React from 'react';
@@ -1,6 +1,3 @@
1
- export var classes = {
2
- round: '--plasma-counter-round'
3
- };
4
1
  export var tokens = {
5
2
  background: '--plasma-counter-background',
6
3
  color: '--plasma-counter-color',
@@ -1,3 +1,3 @@
1
1
  import { css } from '@emotion/react';
2
- import { classes, tokens } from '../../Counter.tokens';
3
- export var base = /*#__PURE__*/css("font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");border-radius:var(", tokens.borderRadius, ");height:var(", tokens.height, ");padding-top:var(", tokens.paddingTop, ");padding-right:var(", tokens.paddingRight, ");padding-bottom:var(", tokens.paddingBottom, ");padding-left:var(", tokens.paddingLeft, ");&.", classes.round, "{width:var(", tokens.height, ");};label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ291bnRlci92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSXVCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ291bnRlci92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IGNsYXNzZXMsIHRva2VucyB9IGZyb20gJy4uLy4uL0NvdW50ZXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgZm9udC1mYW1pbHk6IHZhcigke3Rva2Vucy5mb250RmFtaWx5fSk7XG4gICAgZm9udC1zaXplOiB2YXIoJHt0b2tlbnMuZm9udFNpemV9KTtcbiAgICBmb250LXN0eWxlOiB2YXIoJHt0b2tlbnMuZm9udFN0eWxlfSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigke3Rva2Vucy5mb250V2VpZ2h0fSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigke3Rva2Vucy5sZXR0ZXJTcGFjaW5nfSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigke3Rva2Vucy5saW5lSGVpZ2h0fSk7XG5cbiAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMuYm9yZGVyUmFkaXVzfSk7XG5cbiAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy5oZWlnaHR9KTtcblxuICAgIHBhZGRpbmctdG9wOiB2YXIoJHt0b2tlbnMucGFkZGluZ1RvcH0pO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigke3Rva2Vucy5wYWRkaW5nUmlnaHR9KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCR7dG9rZW5zLnBhZGRpbmdCb3R0b219KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigke3Rva2Vucy5wYWRkaW5nTGVmdH0pO1xuXG4gICAgJi4ke2NsYXNzZXMucm91bmR9IHtcbiAgICAgICAgd2lkdGg6IHZhcigke3Rva2Vucy5oZWlnaHR9KTtcbiAgICB9XG5gO1xuIl19 */"));
2
+ import { tokens } from '../../Counter.tokens';
3
+ export var base = /*#__PURE__*/css("font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");border-radius:var(", tokens.borderRadius, ");height:var(", tokens.height, ");padding-top:var(", tokens.paddingTop, ");padding-right:var(", tokens.paddingRight, ");padding-bottom:var(", tokens.paddingBottom, ");padding-left:var(", tokens.paddingLeft, ");;label:plasma-new-hope__base;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ291bnRlci92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSXVCIiwiZmlsZSI6Ii4uLy4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ291bnRlci92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB7IHRva2VucyB9IGZyb20gJy4uLy4uL0NvdW50ZXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgZm9udC1mYW1pbHk6IHZhcigke3Rva2Vucy5mb250RmFtaWx5fSk7XG4gICAgZm9udC1zaXplOiB2YXIoJHt0b2tlbnMuZm9udFNpemV9KTtcbiAgICBmb250LXN0eWxlOiB2YXIoJHt0b2tlbnMuZm9udFN0eWxlfSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigke3Rva2Vucy5mb250V2VpZ2h0fSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigke3Rva2Vucy5sZXR0ZXJTcGFjaW5nfSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigke3Rva2Vucy5saW5lSGVpZ2h0fSk7XG5cbiAgICBib3JkZXItcmFkaXVzOiB2YXIoJHt0b2tlbnMuYm9yZGVyUmFkaXVzfSk7XG5cbiAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy5oZWlnaHR9KTtcblxuICAgIHBhZGRpbmctdG9wOiB2YXIoJHt0b2tlbnMucGFkZGluZ1RvcH0pO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigke3Rva2Vucy5wYWRkaW5nUmlnaHR9KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCR7dG9rZW5zLnBhZGRpbmdCb3R0b219KTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigke3Rva2Vucy5wYWRkaW5nTGVmdH0pO1xuYDtcbiJdfQ== */"));
@@ -4,10 +4,13 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
5
  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); }
6
6
  import React, { forwardRef } from 'react';
7
+ import { cx } from '../../utils';
7
8
  import { base as viewCSS } from './variations/_view/base';
8
9
  import { base as sizeCSS } from './variations/_size/base';
9
10
  import { base as disabledCSS } from './variations/_disabled/base';
10
11
  import { SingleSlider, DoubleUncontrolled } from './components';
12
+ import { classes } from './Slider.tokens';
13
+
11
14
  // TODO: проверить, можно ли обойтись без каста типов
12
15
 
13
16
  var isSingleValueProps = function isSingleValueProps(props, type) {
@@ -21,9 +24,15 @@ export var sliderRoot = function sliderRoot(Root) {
21
24
  var _ref$type = _ref.type,
22
25
  type = _ref$type === void 0 ? 'single' : _ref$type,
23
26
  props = _objectWithoutProperties(_ref, _excluded);
24
- return /*#__PURE__*/React.createElement(Root, _extends({}, props, {
27
+ if (isSingleValueProps(props, type)) {
28
+ return /*#__PURE__*/React.createElement(Root, _extends({}, props, {
29
+ className: cx(props.orientation === 'vertical' && classes.verticalOrientation, props.className),
30
+ ref: ref
31
+ }), /*#__PURE__*/React.createElement(SingleSlider, props));
32
+ }
33
+ return /*#__PURE__*/React.createElement(Root, _extends({
25
34
  ref: ref
26
- }), isSingleValueProps(props, type) && /*#__PURE__*/React.createElement(SingleSlider, props), isDoubleValueProps(props, type) && /*#__PURE__*/React.createElement(DoubleUncontrolled, props));
35
+ }, props), isDoubleValueProps(props, type) && /*#__PURE__*/React.createElement(DoubleUncontrolled, props));
27
36
  });
28
37
  };
29
38
  export var sliderConfig = {
@@ -76,3 +76,29 @@ export function App() {
76
76
  );
77
77
  }
78
78
  ```
79
+
80
+ # Вертикальное отображение
81
+
82
+ ```tsx live
83
+ import React from 'react';
84
+ import { Slider } from '@salutejs/{{ package }}';
85
+ import { IconMic } from '@salutejs/plasma-icons';
86
+
87
+ export function App() {
88
+ return (
89
+ <section style={{ height: '300px' }}>
90
+ <Slider
91
+ onChangeCommitted={() => {}}
92
+ min={0}
93
+ max={100}
94
+ value={30}
95
+ label="Громкость"
96
+ labelContent={<IconMic size="s" />}
97
+ orientation="vertical"
98
+ sliderAlign="center"
99
+ size="m"
100
+ />
101
+ </section>
102
+ );
103
+ }
104
+ ```
@@ -1,6 +1,12 @@
1
1
  export var classes = {
2
2
  labelPlacementOuter: 'slider-label-placement-outer',
3
3
  labelPlacementInner: 'slider-label-placement-inner',
4
+ labelPlacementBottom: 'slider-label-placement-bottom',
5
+ labelAlignLeft: 'slider-label-align-left',
6
+ labelAlignCenter: 'slider-label-align-center',
7
+ labelAlignRight: 'slider-label-align-right',
8
+ labelAlignNone: 'slider-label-align-none',
9
+ labelContentReversed: 'slider-label-content-reversed',
4
10
  rangeValuesPlacementOuter: 'slider-range-values-placement-outer',
5
11
  rangeValuesPlacementInner: 'slider-range-values-placement-inner',
6
12
  maxRangeValue: 'slider-max-range-value',
@@ -9,13 +15,17 @@ export var classes = {
9
15
  textFieldActive: 'slider-text-field-active',
10
16
  firstTextField: 'slider-first-text-field',
11
17
  secondTextField: 'slider-second-text-field',
12
- activeRangeValue: 'slider-active-range-value'
18
+ activeRangeValue: 'slider-active-range-value',
19
+ verticalOrientation: 'slider-vertical-orientation',
20
+ valuePlacementLeft: 'slider-value-placement-left',
21
+ reversed: 'slider-reversed'
13
22
  };
14
23
  export var tokens = {
15
- height: '--plasma-slider-height',
24
+ size: '--plasma-slider-size',
16
25
  labelWrapperGap: '--plasma-slider-label-wrapper-gap',
17
26
  labelWrapperMarginBottom: '--plasma-slider-label-wrapper-margin-bottom',
18
27
  labelWrapperMarginRight: '--plasma-slider-label-wrapper-margin-right',
28
+ labelWrapperVerticalMargin: '--plasma-slider-label-wrapper-vertical-margin',
19
29
  labelColor: '--plasma-slider-label-color',
20
30
  labelFontFamily: '--plasma-slider-label-font-family',
21
31
  labelFontSize: '--plasma-slider-label-font-size',
@@ -23,31 +33,27 @@ export var tokens = {
23
33
  labelFontWeight: '--plasma-slider-label-font-weight',
24
34
  labelLetterSpacing: '--plasma-slider-label-letter-spacing',
25
35
  labelLineHeight: '--plasma-slider-label-line-height',
26
- rangeMinValueMargin: '--plasma-slider-range-min-value-margin',
27
- rangeMaxValueMargin: '--plasma-slider-range-max-value-margin',
28
36
  rangeValueBottomOffset: '--plasma-slider-range-value-bottom-offset',
37
+ rangeValueHorizontalMargin: '--plasma-slider-range-value-horizontal-margin',
38
+ rangeValueHorizontalOffset: '--plasma-slider-range-value-horizontal-offset',
39
+ rangeValueVerticalMargin: '--plasma-slider-range-value-vertical-margin',
29
40
  rangeValueColor: '--plasma-slider-range-value-color',
30
- rangeValueFontFamily: '--plasma-slider-range-value-font-family',
31
- rangeValueFontSize: '--plasma-slider-range-value-font-size',
32
- rangeValueFontStyle: '--plasma-slider-range-value-font-style',
33
- rangeValueFontWeight: '--plasma-slider-range-value-font-weight',
34
- rangeValueLetterSpacing: '--plasma-slider-range-value-letter-spacing',
35
- rangeValueLineHeight: '--plasma-slider-range-value-line-height',
41
+ valueFontFamily: '--plasma-slider-value-font-family',
42
+ valueFontSize: '--plasma-slider-value-font-size',
43
+ valueFontStyle: '--plasma-slider-value-font-style',
44
+ valueFontWeight: '--plasma-slider-value-font-weight',
45
+ valueLetterSpacing: '--plasma-slider-value-letter-spacing',
46
+ valueLineHeight: '--plasma-slider-value-line-height',
36
47
  doubleWrapperGap: '--plasma-slider-double-wrapper-gap',
37
48
  thumbSize: '--plasma-slider-thumb-size',
49
+ thumbSizeLarge: '--plasma-slider-thumb-size-large',
38
50
  thumbBorder: '--plasma-slider-thumb-border',
39
51
  thumbBorderColor: '--plasma-slider-thumb-border-color',
40
52
  thumbBackgroundColor: '--plasma-slider-thumb-background-color',
41
53
  thumbFocusBorderColor: '--plasma-slider-thumb-focus-border-color',
42
54
  currentValueTopOffset: '--plasma-slider-current-value-top-offset',
43
- currentValueFontFamily: '--plasma-slider-current-value-font-family',
44
- currentValueFontSize: '--plasma-slider-current-value-font-size',
45
- currentValueFontStyle: '--plasma-slider-current-value-font-style',
46
- currentValueFontWeight: '--plasma-slider-current-value-font-weight',
47
- currentValueLetterSpacing: '--plasma-slider-current-value-letter-spacing',
48
- currentValueLineHeight: '--plasma-slider-current-value-line-height',
49
55
  railBackgroundColor: '--plasma-slider-rail-background-color',
50
- railHeight: '--plasma-slider-rail-height',
56
+ railThickness: '--plasma-slider-rail-thickness',
51
57
  railBorderRadius: '--plasma-slider-rail-border-radius',
52
58
  railIndent: '--plasma-slider-rail-indent',
53
59
  fillColor: '--plasma-slider-fill-color',
@@ -1,5 +1,5 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["min", "max", "value", "disabled", "label", "labelContentLeft", "size", "onChangeCommitted", "onChangeTextField", "onBlurTextField", "onKeyDownTextField", "onChange", "ariaLabel", "multipleStepSize", "name"];
2
+ var _excluded = ["min", "max", "value", "disabled", "label", "labelContentLeft", "size", "pointerSize", "onChangeCommitted", "onChangeTextField", "onBlurTextField", "onKeyDownTextField", "onChange", "ariaLabel", "multipleStepSize", "name"];
3
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
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
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; }
@@ -38,6 +38,8 @@ export var DoubleSlider = function DoubleSlider(_ref) {
38
38
  labelContentLeft = _ref.labelContentLeft,
39
39
  _ref$size = _ref.size,
40
40
  size = _ref$size === void 0 ? 'm' : _ref$size,
41
+ _ref$pointerSize = _ref.pointerSize,
42
+ pointerSize = _ref$pointerSize === void 0 ? 'small' : _ref$pointerSize,
41
43
  onChangeCommitted = _ref.onChangeCommitted,
42
44
  onChangeTextField = _ref.onChangeTextField,
43
45
  onBlurTextField = _ref.onBlurTextField,
@@ -64,20 +66,30 @@ export var DoubleSlider = function DoubleSlider(_ref) {
64
66
  setState = _useState2[1];
65
67
  var _useState3 = useState(false),
66
68
  _useState4 = _slicedToArray(_useState3, 2),
67
- firstInputActive = _useState4[0],
68
- setFirstInputActive = _useState4[1];
69
+ firstInputHovered = _useState4[0],
70
+ setFirstInputHovered = _useState4[1];
69
71
  var _useState5 = useState(false),
70
72
  _useState6 = _slicedToArray(_useState5, 2),
71
- secondInputActive = _useState6[0],
72
- setSecondInputActive = _useState6[1];
73
- var _useState7 = useState(value[0]),
73
+ firstInputFocused = _useState6[0],
74
+ setFirstInputFocused = _useState6[1];
75
+ var _useState7 = useState(false),
74
76
  _useState8 = _slicedToArray(_useState7, 2),
75
- firstValue = _useState8[0],
76
- setFirstValue = _useState8[1];
77
- var _useState9 = useState(value[1]),
77
+ secondInputHovered = _useState8[0],
78
+ setSecondInputHovered = _useState8[1];
79
+ var _useState9 = useState(false),
78
80
  _useState10 = _slicedToArray(_useState9, 2),
79
- secondValue = _useState10[0],
80
- setSecondValue = _useState10[1];
81
+ secondInputFocused = _useState10[0],
82
+ setSecondInputFocused = _useState10[1];
83
+ var firstInputActive = firstInputHovered || firstInputFocused;
84
+ var secondInputActive = secondInputHovered || secondInputFocused;
85
+ var _useState11 = useState(value[0]),
86
+ _useState12 = _slicedToArray(_useState11, 2),
87
+ firstValue = _useState12[0],
88
+ setFirstValue = _useState12[1];
89
+ var _useState13 = useState(value[1]),
90
+ _useState14 = _slicedToArray(_useState13, 2),
91
+ secondValue = _useState14[0],
92
+ setSecondValue = _useState14[1];
81
93
  var firstHandleRef = useRef(null);
82
94
  var secondHandleRef = useRef(null);
83
95
  var firstHandleValue = useRef(value[0]);
@@ -102,6 +114,16 @@ export var DoubleSlider = function DoubleSlider(_ref) {
102
114
  });
103
115
  });
104
116
  }, [value, stepSize, min, max, setFirstValue, setSecondValue]);
117
+ useEffect(function () {
118
+ var onMouseUp = function onMouseUp() {
119
+ setFirstInputFocused(false);
120
+ setSecondInputFocused(false);
121
+ };
122
+ window.addEventListener('mouseup', onMouseUp);
123
+ return function () {
124
+ window.removeEventListener('mouseup', onMouseUp);
125
+ };
126
+ }, []);
105
127
  var setStepSize = useCallback(function (newStepSize) {
106
128
  setState(function (prevState) {
107
129
  return _objectSpread(_objectSpread({}, prevState), {}, {
@@ -243,16 +265,20 @@ export var DoubleSlider = function DoubleSlider(_ref) {
243
265
  ariaLabelLeft = _ref3[0],
244
266
  ariaLabelRight = _ref3[1];
245
267
  var currentFirstSliderValue = Math.max(state.firstValue, min);
268
+ var settings = sizeData[size][pointerSize === 'large' ? 'large' : 'small'];
246
269
  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({
247
270
  min: min,
248
271
  max: max,
272
+ size: size,
249
273
  disabled: disabled,
250
274
  setStepSize: setStepSize,
251
275
  railFillWidth: state.railFillWidth,
252
- settings: sizeData[size],
253
- railFillXPosition: state.railFillXPosition
276
+ settings: settings,
277
+ railFillXPosition: state.railFillXPosition,
278
+ orientation: "horizontal"
254
279
  }, rest), /*#__PURE__*/React.createElement(Handler, {
255
280
  ref: firstHandleRef,
281
+ size: pointerSize,
256
282
  stepSize: state.stepSize,
257
283
  multipleStepSize: multipleStepSize,
258
284
  onChangeCommitted: onFirstHandleChangeCommitted,
@@ -262,18 +288,23 @@ export var DoubleSlider = function DoubleSlider(_ref) {
262
288
  disabled: disabled,
263
289
  bounds: [min, state.secondValue],
264
290
  side: "left",
265
- xPosition: state.xFirstHandle,
291
+ orientation: "horizontal",
292
+ position: state.xFirstHandle,
266
293
  zIndex: state.firstHandleZIndex,
267
294
  value: currentFirstSliderValue,
268
295
  ariaLabel: ariaLabelLeft,
296
+ onMouseDown: function onMouseDown() {
297
+ return setFirstInputFocused(true);
298
+ },
269
299
  onMouseEnter: function onMouseEnter() {
270
- return setFirstInputActive(true);
300
+ return setFirstInputHovered(true);
271
301
  },
272
302
  onMouseLeave: function onMouseLeave() {
273
- return setFirstInputActive(false);
303
+ return setFirstInputHovered(false);
274
304
  }
275
305
  }), /*#__PURE__*/React.createElement(Handler, {
276
306
  ref: secondHandleRef,
307
+ size: pointerSize,
277
308
  stepSize: state.stepSize,
278
309
  multipleStepSize: multipleStepSize,
279
310
  onChangeCommitted: onSecondHandleChangeCommitted,
@@ -284,15 +315,19 @@ export var DoubleSlider = function DoubleSlider(_ref) {
284
315
  disabled: disabled,
285
316
  bounds: [state.firstValue, max],
286
317
  side: "right",
287
- xPosition: state.xSecondHandle,
318
+ orientation: "horizontal",
319
+ position: state.xSecondHandle,
288
320
  zIndex: state.secondHandleZIndex,
289
321
  value: Math.max(state.secondValue, min),
290
322
  ariaLabel: ariaLabelRight,
323
+ onMouseDown: function onMouseDown() {
324
+ return setSecondInputFocused(true);
325
+ },
291
326
  onMouseEnter: function onMouseEnter() {
292
- return setSecondInputActive(true);
327
+ return setSecondInputHovered(true);
293
328
  },
294
329
  onMouseLeave: function onMouseLeave() {
295
- return setSecondInputActive(false);
330
+ return setSecondInputHovered(false);
296
331
  }
297
332
  })), /*#__PURE__*/React.createElement(InputsWrapper, null, /*#__PURE__*/React.createElement(StyledInput, {
298
333
  className: cx(classes.firstTextField, firstInputActiveClass),