@salutejs/plasma-new-hope 0.163.1-canary.1476.11274907051.0 → 0.164.0-canary.1452.11274846938.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (230) hide show
  1. package/cjs/components/Slider/Slider.css +15 -13
  2. package/cjs/components/Slider/Slider.js +11 -3
  3. package/cjs/components/Slider/Slider.js.map +1 -1
  4. package/cjs/components/Slider/Slider.tokens.js +17 -5
  5. package/cjs/components/Slider/Slider.tokens.js.map +1 -1
  6. package/cjs/components/Slider/components/Double/Double.css +8 -8
  7. package/cjs/components/Slider/components/Double/Double.js +17 -9
  8. package/cjs/components/Slider/components/Double/Double.js.map +1 -1
  9. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +77 -0
  10. package/cjs/components/Slider/components/Single/Single.css +14 -14
  11. package/cjs/components/Slider/components/Single/Single.js +57 -31
  12. package/cjs/components/Slider/components/Single/Single.js.map +1 -1
  13. package/cjs/components/Slider/components/Single/Single.styles.js +4 -4
  14. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -1
  15. package/cjs/components/Slider/components/Single/Single.styles_12d5mbj.css +6 -0
  16. package/cjs/components/Slider/components/SliderBase/SliderBase.css +5 -5
  17. package/cjs/components/Slider/components/SliderBase/SliderBase.js +27 -12
  18. package/cjs/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
  19. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  20. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
  21. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
  22. package/cjs/components/Slider/ui/Handler/Handler.css +3 -3
  23. package/cjs/components/Slider/ui/Handler/Handler.js +49 -88
  24. package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -1
  25. package/cjs/components/Slider/ui/Handler/Handler.styles.js +17 -7
  26. package/cjs/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
  27. package/cjs/components/Slider/ui/Handler/Handler.styles_19zy2jw.css +2 -0
  28. package/cjs/components/Slider/ui/Handler/computeKeyPressData.js +122 -0
  29. package/cjs/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
  30. package/cjs/components/Slider/ui/Thumb/Thumb.css +1 -1
  31. package/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  32. package/cjs/components/Slider/ui/Thumb/Thumb.js.map +1 -1
  33. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
  34. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
  35. package/cjs/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
  36. package/cjs/components/Slider/utils/index.js +28 -10
  37. package/cjs/components/Slider/utils/index.js.map +1 -1
  38. package/cjs/components/Slider/variations/_view/base.js +1 -1
  39. package/cjs/components/Slider/variations/_view/base.js.map +1 -1
  40. package/cjs/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
  41. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  42. package/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  43. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  44. package/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  45. package/cjs/index.css +15 -13
  46. package/cjs/utils/index.js.map +1 -1
  47. package/emotion/cjs/components/Slider/Slider.js +10 -2
  48. package/emotion/cjs/components/Slider/Slider.tokens.js +17 -5
  49. package/emotion/cjs/components/Slider/components/Double/Double.js +13 -5
  50. package/emotion/cjs/components/Slider/components/Single/Single.js +57 -31
  51. package/emotion/cjs/components/Slider/components/Single/Single.styles.js +18 -9
  52. package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.js +27 -12
  53. package/emotion/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +10 -10
  54. package/emotion/cjs/components/Slider/ui/Handler/Handler.js +52 -88
  55. package/emotion/cjs/components/Slider/ui/Handler/Handler.styles.js +9 -15
  56. package/emotion/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
  57. package/emotion/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  58. package/emotion/cjs/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
  59. package/emotion/cjs/components/Slider/utils/index.js +28 -10
  60. package/emotion/cjs/components/Slider/variations/_view/base.js +2 -1
  61. package/emotion/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  62. package/emotion/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  63. package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
  64. package/emotion/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
  65. package/emotion/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +16 -29
  66. package/emotion/cjs/examples/plasma_web/components/Slider/Slider.config.js +7 -7
  67. package/emotion/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
  68. package/emotion/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +17 -30
  69. package/emotion/es/components/Slider/Slider.js +11 -2
  70. package/emotion/es/components/Slider/Slider.tokens.js +17 -5
  71. package/emotion/es/components/Slider/components/Double/Double.js +13 -5
  72. package/emotion/es/components/Slider/components/Single/Single.js +58 -32
  73. package/emotion/es/components/Slider/components/Single/Single.styles.js +17 -8
  74. package/emotion/es/components/Slider/components/SliderBase/SliderBase.js +27 -12
  75. package/emotion/es/components/Slider/components/SliderBase/SliderBase.styles.js +11 -11
  76. package/emotion/es/components/Slider/ui/Handler/Handler.js +51 -86
  77. package/emotion/es/components/Slider/ui/Handler/Handler.styles.js +10 -16
  78. package/emotion/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
  79. package/emotion/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  80. package/emotion/es/components/Slider/ui/Thumb/Thumb.styles.js +3 -3
  81. package/emotion/es/components/Slider/utils/index.js +28 -10
  82. package/emotion/es/components/Slider/variations/_view/base.js +2 -1
  83. package/emotion/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  84. package/emotion/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  85. package/emotion/es/examples/plasma_b2c/components/Slider/Slider.config.js +7 -7
  86. package/emotion/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
  87. package/emotion/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +16 -29
  88. package/emotion/es/examples/plasma_web/components/Slider/Slider.config.js +7 -7
  89. package/emotion/es/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
  90. package/emotion/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +17 -30
  91. package/es/components/Slider/Slider.css +15 -13
  92. package/es/components/Slider/Slider.js +11 -3
  93. package/es/components/Slider/Slider.js.map +1 -1
  94. package/es/components/Slider/Slider.tokens.js +17 -5
  95. package/es/components/Slider/Slider.tokens.js.map +1 -1
  96. package/es/components/Slider/components/Double/Double.css +8 -8
  97. package/es/components/Slider/components/Double/Double.js +13 -5
  98. package/es/components/Slider/components/Double/Double.js.map +1 -1
  99. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +77 -0
  100. package/es/components/Slider/components/Single/Single.css +14 -14
  101. package/es/components/Slider/components/Single/Single.js +58 -32
  102. package/es/components/Slider/components/Single/Single.js.map +1 -1
  103. package/es/components/Slider/components/Single/Single.styles.js +4 -4
  104. package/es/components/Slider/components/Single/Single.styles.js.map +1 -1
  105. package/es/components/Slider/components/Single/Single.styles_12d5mbj.css +6 -0
  106. package/es/components/Slider/components/SliderBase/SliderBase.css +5 -5
  107. package/es/components/Slider/components/SliderBase/SliderBase.js +27 -12
  108. package/es/components/Slider/components/SliderBase/SliderBase.js.map +1 -1
  109. package/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  110. package/es/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -1
  111. package/es/components/Slider/components/SliderBase/SliderBase.styles_1qt1224.css +5 -0
  112. package/es/components/Slider/ui/Handler/Handler.css +3 -3
  113. package/es/components/Slider/ui/Handler/Handler.js +48 -87
  114. package/es/components/Slider/ui/Handler/Handler.js.map +1 -1
  115. package/es/components/Slider/ui/Handler/Handler.styles.js +17 -7
  116. package/es/components/Slider/ui/Handler/Handler.styles.js.map +1 -1
  117. package/es/components/Slider/ui/Handler/Handler.styles_19zy2jw.css +2 -0
  118. package/es/components/Slider/ui/Handler/computeKeyPressData.js +118 -0
  119. package/es/components/Slider/ui/Handler/computeKeyPressData.js.map +1 -0
  120. package/es/components/Slider/ui/Thumb/Thumb.css +1 -1
  121. package/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  122. package/es/components/Slider/ui/Thumb/Thumb.js.map +1 -1
  123. package/es/components/Slider/ui/Thumb/Thumb.styles.js +1 -1
  124. package/es/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -1
  125. package/es/components/Slider/ui/Thumb/Thumb.styles_uyn20e.css +1 -0
  126. package/es/components/Slider/utils/index.js +28 -10
  127. package/es/components/Slider/utils/index.js.map +1 -1
  128. package/es/components/Slider/variations/_view/base.js +1 -1
  129. package/es/components/Slider/variations/_view/base.js.map +1 -1
  130. package/es/components/Slider/variations/_view/base_1s3f6q8.css +1 -0
  131. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  132. package/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js.map +1 -1
  133. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  134. package/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js.map +1 -1
  135. package/es/index.css +15 -13
  136. package/es/utils/index.js.map +1 -1
  137. package/package.json +2 -2
  138. package/styled-components/cjs/components/Slider/Slider.js +10 -2
  139. package/styled-components/cjs/components/Slider/Slider.tokens.js +17 -5
  140. package/styled-components/cjs/components/Slider/components/Double/Double.js +13 -5
  141. package/styled-components/cjs/components/Slider/components/Single/Single.js +57 -31
  142. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +5 -5
  143. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.js +27 -12
  144. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +6 -6
  145. package/styled-components/cjs/components/Slider/ui/Handler/Handler.js +52 -88
  146. package/styled-components/cjs/components/Slider/ui/Handler/Handler.styles.js +7 -4
  147. package/styled-components/cjs/components/Slider/ui/Handler/computeKeyPressData.js +121 -0
  148. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.js +3 -2
  149. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
  150. package/styled-components/cjs/components/Slider/utils/index.js +28 -10
  151. package/styled-components/cjs/components/Slider/variations/_view/base.js +2 -1
  152. package/styled-components/cjs/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  153. package/styled-components/cjs/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  154. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
  155. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
  156. package/styled-components/cjs/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +16 -29
  157. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.config.js +3 -3
  158. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
  159. package/styled-components/cjs/examples/plasma_web/components/Tabs/Tabs.stories.tsx +17 -30
  160. package/styled-components/es/components/Slider/Slider.js +11 -2
  161. package/styled-components/es/components/Slider/Slider.tokens.js +17 -5
  162. package/styled-components/es/components/Slider/components/Double/Double.js +13 -5
  163. package/styled-components/es/components/Slider/components/Single/Single.js +58 -32
  164. package/styled-components/es/components/Slider/components/Single/Single.styles.js +4 -4
  165. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.js +27 -12
  166. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.styles.js +7 -7
  167. package/styled-components/es/components/Slider/ui/Handler/Handler.js +51 -86
  168. package/styled-components/es/components/Slider/ui/Handler/Handler.styles.js +8 -5
  169. package/styled-components/es/components/Slider/ui/Handler/computeKeyPressData.js +115 -0
  170. package/styled-components/es/components/Slider/ui/Thumb/Thumb.js +3 -2
  171. package/styled-components/es/components/Slider/ui/Thumb/Thumb.styles.js +2 -2
  172. package/styled-components/es/components/Slider/utils/index.js +28 -10
  173. package/styled-components/es/components/Slider/variations/_view/base.js +2 -1
  174. package/styled-components/es/components/Tabs/ui/horizontal/HorizontalTabs/HorizontalTabs.js +2 -2
  175. package/styled-components/es/components/Tabs/ui/vertical/VerticalTabs/VerticalTabs.js +2 -2
  176. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.config.js +3 -3
  177. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +90 -16
  178. package/styled-components/es/examples/plasma_b2c/components/Tabs/Tabs.stories.tsx +16 -29
  179. package/styled-components/es/examples/plasma_web/components/Slider/Slider.config.js +3 -3
  180. package/styled-components/es/examples/plasma_web/components/Slider/Slider.stories.tsx +90 -15
  181. package/styled-components/es/examples/plasma_web/components/Tabs/Tabs.stories.tsx +17 -30
  182. package/types/components/Slider/Slider.d.ts.map +1 -1
  183. package/types/components/Slider/Slider.tokens.d.ts +16 -4
  184. package/types/components/Slider/Slider.tokens.d.ts.map +1 -1
  185. package/types/components/Slider/components/Double/Double.d.ts.map +1 -1
  186. package/types/components/Slider/components/Double/Double.types.d.ts +1 -0
  187. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -1
  188. package/types/components/Slider/components/Single/Single.d.ts.map +1 -1
  189. package/types/components/Slider/components/Single/Single.styles.d.ts +1 -1
  190. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -1
  191. package/types/components/Slider/components/Single/Single.types.d.ts +75 -7
  192. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -1
  193. package/types/components/Slider/components/SliderBase/SliderBase.d.ts.map +1 -1
  194. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts +1 -1
  195. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts.map +1 -1
  196. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts +1 -0
  197. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts.map +1 -1
  198. package/types/components/Slider/ui/Handler/Handler.d.ts.map +1 -1
  199. package/types/components/Slider/ui/Handler/Handler.styles.d.ts +6 -2
  200. package/types/components/Slider/ui/Handler/Handler.styles.d.ts.map +1 -1
  201. package/types/components/Slider/ui/Handler/Handler.types.d.ts +4 -1
  202. package/types/components/Slider/ui/Handler/Handler.types.d.ts.map +1 -1
  203. package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts +12 -0
  204. package/types/components/Slider/ui/Handler/computeKeyPressData.d.ts.map +1 -0
  205. package/types/components/Slider/ui/Thumb/Thumb.d.ts +1 -1
  206. package/types/components/Slider/ui/Thumb/Thumb.d.ts.map +1 -1
  207. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts.map +1 -1
  208. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts +1 -0
  209. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts.map +1 -1
  210. package/types/components/Slider/utils/index.d.ts +26 -8
  211. package/types/components/Slider/utils/index.d.ts.map +1 -1
  212. package/types/components/Slider/variations/_view/base.d.ts.map +1 -1
  213. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts.map +1 -1
  214. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +80 -2
  215. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -1
  216. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts.map +1 -1
  217. package/types/examples/plasma_web/components/Slider/Slider.d.ts +80 -2
  218. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -1
  219. package/types/utils/index.d.ts +1 -1
  220. package/types/utils/index.d.ts.map +1 -1
  221. package/cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
  222. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
  223. package/cjs/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
  224. package/cjs/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
  225. package/cjs/components/Slider/variations/_view/base_x642ct.css +0 -1
  226. package/es/components/Slider/components/Single/Single.styles_1r9f1e0.css +0 -6
  227. package/es/components/Slider/components/SliderBase/SliderBase.styles_9s4eb3.css +0 -5
  228. package/es/components/Slider/ui/Handler/Handler.styles_8crx5z.css +0 -2
  229. package/es/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +0 -1
  230. package/es/components/Slider/variations/_view/base_x642ct.css +0 -1
@@ -1,8 +1,11 @@
1
1
  import styled from 'styled-components';
2
- import { tokens } from '../../Slider.tokens';
3
- export var HandlerStyled = /*#__PURE__*/styled.div.withConfig({
4
- componentId: "plasma-new-hope__sc-a1py3c-0"
5
- })(["cursor:pointer;position:absolute;z-index:1;top:0;left:0;"]);
2
+ import { classes, tokens } from '../../Slider.tokens';
6
3
  export var StyledValue = /*#__PURE__*/styled.span.withConfig({
4
+ componentId: "plasma-new-hope__sc-a1py3c-0"
5
+ })(["position:absolute;z-index:1;top:var(", ");text-align:center;width:100%;margin-left:-0.125rem;display:flex;justify-content:center;font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.currentValueTopOffset, tokens.currentValueFontFamily, tokens.currentValueFontSize, tokens.currentValueFontStyle, tokens.currentValueFontWeight, tokens.currentValueLetterSpacing, tokens.currentValueLineHeight);
6
+ export var HandlerStyled = /*#__PURE__*/styled.div.withConfig({
7
7
  componentId: "plasma-new-hope__sc-a1py3c-1"
8
- })(["position:absolute;z-index:1;top:var(", ");text-align:center;width:100%;margin-left:-0.125rem;display:flex;justify-content:center;font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");"], tokens.currentValueTopOffset, tokens.currentValueFontFamily, tokens.currentValueFontSize, tokens.currentValueFontStyle, tokens.currentValueFontWeight, tokens.currentValueLetterSpacing, tokens.currentValueLineHeight);
8
+ })(["cursor:pointer;position:absolute;z-index:1;top:0;left:0;bottom:0;display:flex;align-items:center;justify-content:center;--thumb-size:", ";&.", "{left:0.125rem;right:0;bottom:auto;align-items:flex-start;justify-content:center;", "{margin:0;top:0;bottom:0;right:0;left:calc(var(", ") - (var(", ") - var(--thumb-size)) / 2 + 0.25rem);align-items:center;justify-content:flex-start;}}&.", "{", "{left:auto;right:calc(var(", ") - (var(", ") - var(--thumb-size)) / 2 + 0.3125rem);justify-content:flex-end;}}"], function (_ref) {
9
+ var isLarge = _ref.isLarge;
10
+ return isLarge ? "var(".concat(tokens.thumbSizeLarge, ")") : "var(".concat(tokens.thumbSize, ")");
11
+ }, classes.verticalOrientation, StyledValue, tokens.size, tokens.size, classes.valuePlacementLeft, StyledValue, tokens.size, tokens.size);
@@ -0,0 +1,115 @@
1
+ var KeyboardSupport = {
2
+ PageUp: 33,
3
+ PageDown: 34,
4
+ End: 35,
5
+ Home: 36,
6
+ ArrowLeft: 37,
7
+ ArrowUp: 38,
8
+ ArrowRight: 39,
9
+ ArrowDown: 40
10
+ };
11
+ var ArrowUp = KeyboardSupport.ArrowUp,
12
+ ArrowRight = KeyboardSupport.ArrowRight,
13
+ ArrowDown = KeyboardSupport.ArrowDown,
14
+ ArrowLeft = KeyboardSupport.ArrowLeft,
15
+ Home = KeyboardSupport.Home,
16
+ End = KeyboardSupport.End,
17
+ PageDown = KeyboardSupport.PageDown,
18
+ PageUp = KeyboardSupport.PageUp;
19
+ var computeVerticalMovement = function computeVerticalMovement(event, _ref) {
20
+ var stepSize = _ref.stepSize,
21
+ position = _ref.position,
22
+ max = _ref.max,
23
+ computedMultipleSteps = _ref.computedMultipleSteps;
24
+ var keyCode = event.keyCode,
25
+ target = event.target;
26
+ var data = {
27
+ x: 0,
28
+ deltaX: 0,
29
+ lastX: 0,
30
+ y: 0,
31
+ deltaY: stepSize,
32
+ lastY: position,
33
+ node: target
34
+ };
35
+ switch (keyCode) {
36
+ case ArrowUp:
37
+ case ArrowRight:
38
+ data.y = position - stepSize;
39
+ data.deltaY = -stepSize;
40
+ break;
41
+ case ArrowDown:
42
+ case ArrowLeft:
43
+ data.y = position + stepSize;
44
+ break;
45
+ case PageUp:
46
+ data.y = position - computedMultipleSteps;
47
+ data.deltaY = -computedMultipleSteps;
48
+ break;
49
+ case PageDown:
50
+ data.y = position + computedMultipleSteps;
51
+ data.deltaY = computedMultipleSteps;
52
+ break;
53
+ case End:
54
+ data.y = max * stepSize;
55
+ break;
56
+ case Home:
57
+ data.y = 0;
58
+ break;
59
+ default:
60
+ data.y = 0;
61
+ }
62
+ return data;
63
+ };
64
+ var computeHorizontalMovement = function computeHorizontalMovement(event, _ref2) {
65
+ var stepSize = _ref2.stepSize,
66
+ position = _ref2.position,
67
+ max = _ref2.max,
68
+ computedMultipleSteps = _ref2.computedMultipleSteps;
69
+ var keyCode = event.keyCode,
70
+ target = event.target;
71
+ var data = {
72
+ x: 0,
73
+ deltaX: stepSize,
74
+ lastX: position,
75
+ y: 0,
76
+ deltaY: 0,
77
+ lastY: 0,
78
+ node: target
79
+ };
80
+ switch (keyCode) {
81
+ case ArrowUp:
82
+ case ArrowRight:
83
+ data.x = position + stepSize;
84
+ break;
85
+ case ArrowDown:
86
+ case ArrowLeft:
87
+ data.x = position - stepSize;
88
+ data.deltaX = -stepSize;
89
+ break;
90
+ case PageUp:
91
+ data.x = position + computedMultipleSteps;
92
+ data.deltaX = computedMultipleSteps;
93
+ break;
94
+ case PageDown:
95
+ data.x = position - computedMultipleSteps;
96
+ data.deltaX = -computedMultipleSteps;
97
+ break;
98
+ case End:
99
+ data.x = max * stepSize;
100
+ break;
101
+ case Home:
102
+ data.x = 0;
103
+ break;
104
+ default:
105
+ data.x = 0;
106
+ }
107
+ return data;
108
+ };
109
+ export var computeKeyPressData = function computeKeyPressData(event, params) {
110
+ var keyCode = event.keyCode;
111
+ if (!Object.values(KeyboardSupport).includes(keyCode)) {
112
+ return null;
113
+ }
114
+ return params.isVertical ? computeVerticalMovement(event, params) : computeHorizontalMovement(event, params);
115
+ };
@@ -1,4 +1,4 @@
1
- var _excluded = ["min", "max", "value", "ariaValueMin", "ariaLabel", "disabled"];
1
+ var _excluded = ["min", "max", "value", "ariaValueMin", "ariaLabel", "disabled", "orientation"];
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; }
@@ -12,6 +12,7 @@ export var Thumb = function Thumb(_ref) {
12
12
  ariaValueMin = _ref$ariaValueMin === void 0 ? min : _ref$ariaValueMin,
13
13
  ariaLabel = _ref.ariaLabel,
14
14
  disabled = _ref.disabled,
15
+ orientation = _ref.orientation,
15
16
  rest = _objectWithoutProperties(_ref, _excluded);
16
17
  return /*#__PURE__*/React.createElement(ThumbBase, _extends({
17
18
  role: "slider",
@@ -20,6 +21,6 @@ export var Thumb = function Thumb(_ref) {
20
21
  "aria-valuemax": max,
21
22
  "aria-valuenow": value,
22
23
  disabled: disabled,
23
- "aria-orientation": "horizontal"
24
+ "aria-orientation": orientation
24
25
  }, rest));
25
26
  };
@@ -3,8 +3,8 @@ import { addFocus } from '../../../../mixins';
3
3
  import { tokens } from '../../Slider.tokens';
4
4
  export var ThumbBase = /*#__PURE__*/styled.div.withConfig({
5
5
  componentId: "plasma-new-hope__sc-13botku-0"
6
- })(["width:var(", ");height:var(", ");position:relative;left:-0.125rem;top:-0.125rem;border-radius:50%;box-sizing:border-box;background:var(", ");margin:0.125rem;transition:border-color 0.1s ease-in-out;&:after{background:var(", ");margin:-0.125rem;content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;}&:not([disabled]):hover:after,&:not([disabled]):active:after{background:var(", ");}&[disabled]{cursor:not-allowed;}&:focus{outline:none;}", ""], tokens.thumbSize, tokens.thumbSize, tokens.thumbBackgroundColor, tokens.thumbBorderColor, tokens.thumbFocusBorderColor, /*#__PURE__*/addFocus({
7
- outlineOffset: '0.125rem',
6
+ })(["width:var(--thumb-size);height:var(--thumb-size);min-width:var(--thumb-size);min-height:var(--thumb-size);position:relative;border-radius:50%;box-sizing:border-box;background:var(", ");margin:0.0625rem;transition:border-color 0.1s ease-in-out;&:after{background:var(", ");margin:-0.0625rem;content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;}&:not([disabled]):hover:after,&:not([disabled]):active:after{background:var(", ");}&[disabled]{cursor:not-allowed;}&:focus{outline:none;}", ""], tokens.thumbBackgroundColor, tokens.thumbBorderColor, tokens.thumbFocusBorderColor, /*#__PURE__*/addFocus({
7
+ outlineOffset: '0.0625rem',
8
8
  outlineSize: '0.125rem',
9
9
  outlineRadius: '50%',
10
10
  outlineColor: /*#__PURE__*/"var(".concat(tokens.thumbFocusBorderColor, ")")
@@ -6,8 +6,8 @@
6
6
  * @param {number} max
7
7
  * @return {number}
8
8
  */
9
- export function getSliderThumbValue(handleCenterXRelative, stepSize, min, max) {
10
- var newValue = Math.round(handleCenterXRelative / stepSize) + min;
9
+ export function getSliderThumbValue(handleCenterPosRelative, stepSize, min, max) {
10
+ var newValue = Math.round(handleCenterPosRelative / stepSize) + min;
11
11
  return Math.min(Math.max(newValue, min), max);
12
12
  }
13
13
 
@@ -18,11 +18,11 @@ export function getSliderThumbValue(handleCenterXRelative, stepSize, min, max) {
18
18
  * @param {'left' | 'right'} side
19
19
  * @return Array<number>
20
20
  */
21
- export function getOffsets(ref, side) {
21
+ export function getOffsets(ref, side, isVertical) {
22
22
  if (!ref || !('current' in ref) || !ref.current || !side) {
23
23
  return [0, 0];
24
24
  }
25
- var size = ref.current.clientWidth;
25
+ var size = isVertical ? ref.current.clientHeight : ref.current.clientWidth;
26
26
  if (side === 'left') {
27
27
  return [0, size];
28
28
  }
@@ -33,15 +33,33 @@ export function getOffsets(ref, side) {
33
33
  }
34
34
  export var sizeData = {
35
35
  s: {
36
- indent: 0.5,
37
- fontSizeMultiplier: 16
36
+ small: {
37
+ indent: 0.5,
38
+ fontSizeMultiplier: 16
39
+ },
40
+ large: {
41
+ indent: 0.625,
42
+ fontSizeMultiplier: 16
43
+ }
38
44
  },
39
45
  m: {
40
- indent: 0.75,
41
- fontSizeMultiplier: 16
46
+ small: {
47
+ indent: 0.5,
48
+ fontSizeMultiplier: 16
49
+ },
50
+ large: {
51
+ indent: 0.625,
52
+ fontSizeMultiplier: 16
53
+ }
42
54
  },
43
55
  l: {
44
- indent: 0.75,
45
- fontSizeMultiplier: 16
56
+ small: {
57
+ indent: 0.5,
58
+ fontSizeMultiplier: 16
59
+ },
60
+ large: {
61
+ indent: 0.625,
62
+ fontSizeMultiplier: 16
63
+ }
46
64
  }
47
65
  };
@@ -1,2 +1,3 @@
1
1
  import { css } from 'styled-components';
2
- export var base = /*#__PURE__*/css([""]);
2
+ import { classes } from '../../Slider.tokens';
3
+ export var base = /*#__PURE__*/css(["&.", "{height:100%;display:inline-flex;}"], classes.verticalOrientation);
@@ -83,7 +83,7 @@ export var horizontalTabsRoot = function horizontalTabsRoot(Root) {
83
83
  });
84
84
  firstOverflowingTab === null || firstOverflowingTab === void 0 || (_firstOverflowingTab$ = firstOverflowingTab.current) === null || _firstOverflowingTab$ === void 0 || _firstOverflowingTab$.scrollIntoView({
85
85
  block: 'nearest',
86
- inline: 'start'
86
+ inline: 'nearest'
87
87
  });
88
88
  }, [disabled, scrollRef, refs]);
89
89
  var onNext = useCallback(function () {
@@ -101,7 +101,7 @@ export var horizontalTabsRoot = function horizontalTabsRoot(Root) {
101
101
  });
102
102
  lastOverflowingTab === null || lastOverflowingTab === void 0 || (_lastOverflowingTab$c = lastOverflowingTab.current) === null || _lastOverflowingTab$c === void 0 || _lastOverflowingTab$c.scrollIntoView({
103
103
  block: 'nearest',
104
- inline: 'end'
104
+ inline: 'nearest'
105
105
  });
106
106
  }, [disabled, scrollRef, refs]);
107
107
  var PreviousButton = useMemo(function () {
@@ -76,7 +76,7 @@ export var verticalTabsRoot = function verticalTabsRoot(Root) {
76
76
  return tabStartY < scrollTop;
77
77
  });
78
78
  firstOverflowingTab === null || firstOverflowingTab === void 0 || (_firstOverflowingTab$ = firstOverflowingTab.current) === null || _firstOverflowingTab$ === void 0 || _firstOverflowingTab$.scrollIntoView({
79
- block: 'start',
79
+ block: 'nearest',
80
80
  inline: 'nearest'
81
81
  });
82
82
  }, [disabled, scrollRef, refs]);
@@ -94,7 +94,7 @@ export var verticalTabsRoot = function verticalTabsRoot(Root) {
94
94
  return tabEndY > scrollBottom;
95
95
  });
96
96
  lastOverflowingTab === null || lastOverflowingTab === void 0 || (_lastOverflowingTab$c = lastOverflowingTab.current) === null || _lastOverflowingTab$c === void 0 || _lastOverflowingTab$c.scrollIntoView({
97
- block: 'end',
97
+ block: 'nearest',
98
98
  inline: 'nearest'
99
99
  });
100
100
  }, [disabled, scrollRef, refs]);
@@ -12,9 +12,9 @@ export var config = {
12
12
  gradient: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-solid-tertiary);", ":var(--on-light-surface-solid-card);", ":var(--surface-accent-gradient);", ":var(--surface-solid-tertiary);", ":var(--surface-accent-gradient);", ":var(--text-secondary);", ":var(--surface-transparent-primary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-primary);"], sliderTokens.labelColor, sliderTokens.rangeValueColor, sliderTokens.thumbBorderColor, sliderTokens.thumbBackgroundColor, sliderTokens.thumbFocusBorderColor, sliderTokens.railBackgroundColor, sliderTokens.fillColor, sliderTokens.textFieldColor, sliderTokens.textFieldBackgroundColor, sliderTokens.textFieldCaretColor, sliderTokens.textFieldPlaceholderColor, sliderTokens.textFiledFocusColor, sliderTokens.textFieldActiveColor)
13
13
  },
14
14
  size: {
15
- l: /*#__PURE__*/css(["", ":1.5rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0.75rem;", ":0.75rem;", ":-1.25rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":1.5rem;", ":0.125rem solid;", ":1.625rem;", ":var(--plasma-typo-text-s-font-family);", ":var(--plasma-typo-text-s-font-size);", ":var(--plasma-typo-text-s-font-style);", ":var(--plasma-typo-text-s-font-weight);", ":var(--plasma-typo-text-s-letter-spacing);", ":var(--plasma-typo-text-s-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":3.5rem;", ":1.25rem 1rem 1.25rem 1rem;", ":0.75rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], sliderTokens.height, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeMinValueMargin, sliderTokens.rangeMaxValueMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railHeight, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight),
16
- m: /*#__PURE__*/css(["", ":1.5rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.75rem;", ":0.75rem;", ":-1.25rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":1.5rem;", ":0.125rem solid;", ":1.75rem;", ":var(--plasma-typo-text-xs-font-family);", ":var(--plasma-typo-text-xs-font-size);", ":var(--plasma-typo-text-xs-font-style);", ":var(--plasma-typo-text-xs-font-weight);", ":var(--plasma-typo-text-xs-letter-spacing);", ":var(--plasma-typo-text-xs-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":3rem;", ":0.875rem 1rem 0.875rem 1rem;", ":0.75rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);"], sliderTokens.height, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeMinValueMargin, sliderTokens.rangeMaxValueMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railHeight, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight),
17
- s: /*#__PURE__*/css(["", ":1rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.5rem;", ":0.5rem;", ":-1.25rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":1rem;", ":0.125rem solid;", ":1.25rem;", ":var(--plasma-typo-text-xs-font-family);", ":var(--plasma-typo-text-xs-font-size);", ":var(--plasma-typo-text-xs-font-style);", ":var(--plasma-typo-text-xs-font-weight);", ":var(--plasma-typo-text-xs-letter-spacing);", ":var(--plasma-typo-text-xs-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":2.5rem;", ":0.5rem 1rem 0.5rem 1rem;", ":0.625rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);"], sliderTokens.height, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeMinValueMargin, sliderTokens.rangeMaxValueMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railHeight, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight)
15
+ l: /*#__PURE__*/css(["", ":1.5rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":1rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0.75rem;", ":0.875rem;", ":0.875rem;", ":0.75rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":1rem;", ":1.25rem;", ":0.0625rem solid;", ":1.625rem;", ":var(--plasma-typo-text-s-font-family);", ":var(--plasma-typo-text-s-font-size);", ":var(--plasma-typo-text-s-font-style);", ":var(--plasma-typo-text-s-font-weight);", ":var(--plasma-typo-text-s-letter-spacing);", ":var(--plasma-typo-text-s-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":3.5rem;", ":1.25rem 1rem 1.25rem 1rem;", ":0.75rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], sliderTokens.size, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelWrapperVerticalMargin, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeValueHorizontalMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueLeftRightMargin, sliderTokens.rangeValueVerticalMargin, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbSizeLarge, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railThickness, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight),
16
+ m: /*#__PURE__*/css(["", ":1.5rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":0.75rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.75rem;", ":0.75rem;", ":0.875rem;", ":0.625rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":1rem;", ":1.25rem;", ":0.0625rem solid;", ":1.75rem;", ":var(--plasma-typo-text-xs-font-family);", ":var(--plasma-typo-text-xs-font-size);", ":var(--plasma-typo-text-xs-font-style);", ":var(--plasma-typo-text-xs-font-weight);", ":var(--plasma-typo-text-xs-letter-spacing);", ":var(--plasma-typo-text-xs-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":3rem;", ":0.875rem 1rem 0.875rem 1rem;", ":0.75rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);"], sliderTokens.size, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelWrapperVerticalMargin, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeValueHorizontalMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueLeftRightMargin, sliderTokens.rangeValueVerticalMargin, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbSizeLarge, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railThickness, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight),
17
+ s: /*#__PURE__*/css(["", ":1rem;", ":0.375rem;", ":0.25rem;", ":0.25rem;", ":0.875rem;", ":0.625rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.5rem;", ":0.625rem;", ":0.625rem;", ":0.5rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":1rem;", ":1.25rem;", ":0.0625rem solid;", ":1.25rem;", ":var(--plasma-typo-text-xs-font-family);", ":var(--plasma-typo-text-xs-font-size);", ":var(--plasma-typo-text-xs-font-style);", ":var(--plasma-typo-text-xs-font-weight);", ":var(--plasma-typo-text-xs-letter-spacing);", ":var(--plasma-typo-text-xs-line-height);", ":0.25rem;", ":0.125rem;", ":0.75rem;", ":0.125rem;", ":2.5rem;", ":0.5rem 1rem 0.5rem 1rem;", ":0.625rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);"], sliderTokens.size, sliderTokens.doubleWrapperGap, sliderTokens.labelWrapperGap, sliderTokens.labelWrapperMarginBottom, sliderTokens.labelWrapperMarginRight, sliderTokens.labelWrapperVerticalMargin, sliderTokens.labelFontFamily, sliderTokens.labelFontSize, sliderTokens.labelFontStyle, sliderTokens.labelFontWeight, sliderTokens.labelLetterSpacing, sliderTokens.labelLineHeight, sliderTokens.rangeValueHorizontalMargin, sliderTokens.rangeValueBottomOffset, sliderTokens.rangeValueLeftRightMargin, sliderTokens.rangeValueVerticalMargin, sliderTokens.rangeValueFontFamily, sliderTokens.rangeValueFontSize, sliderTokens.rangeValueFontStyle, sliderTokens.rangeValueFontWeight, sliderTokens.rangeValueLetterSpacing, sliderTokens.rangeValueLineHeight, sliderTokens.thumbSize, sliderTokens.thumbSizeLarge, sliderTokens.thumbBorder, sliderTokens.currentValueTopOffset, sliderTokens.currentValueFontFamily, sliderTokens.currentValueFontSize, sliderTokens.currentValueFontStyle, sliderTokens.currentValueFontWeight, sliderTokens.currentValueLetterSpacing, sliderTokens.currentValueLineHeight, sliderTokens.railThickness, sliderTokens.railBorderRadius, sliderTokens.railIndent, sliderTokens.textFieldWrapperGap, sliderTokens.textFieldHeight, sliderTokens.textFieldPadding, sliderTokens.textFieldBorderRadius, sliderTokens.textFieldFontFamily, sliderTokens.textFieldFontSize, sliderTokens.textFieldFontStyle, sliderTokens.textFieldFontWeight, sliderTokens.textFieldLetterSpacing, sliderTokens.textFieldLineHeight)
18
18
  },
19
19
  disabled: {
20
20
  "true": /*#__PURE__*/css(["", ":0.4;"], sliderTokens.disabledOpacity)
@@ -3,16 +3,19 @@ import type { ComponentProps } from 'react';
3
3
  import styled from 'styled-components';
4
4
  import { disableProps } from '@salutejs/plasma-sb-utils';
5
5
  import type { StoryObj, Meta } from '@storybook/react';
6
- import { action } from '@storybook/addon-actions';
7
6
 
7
+ import { IconMic } from '../../../../components/_Icon';
8
8
  import { WithTheme } from '../../../_helpers';
9
9
 
10
10
  import { Slider } from './Slider';
11
11
 
12
12
  const sizes = ['l', 'm', 's'];
13
+ const pointerSizes = ['small', 'large', 'none'];
13
14
  const views = ['default', 'accent', 'gradient'];
14
- const labelPlacements = ['outer', 'inner'];
15
- 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'];
16
19
 
17
20
  const meta: Meta<typeof Slider> = {
18
21
  title: 'plasma_b2c/Slider',
@@ -31,9 +34,24 @@ const meta: Meta<typeof Slider> = {
31
34
  type: 'inline-radio',
32
35
  },
33
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
+ },
34
49
  ...disableProps([
35
50
  'value',
36
51
  'onChangeCommitted',
52
+ 'onChangeTextField',
53
+ 'onBlurTextField',
54
+ 'onKeyDownTextField',
37
55
  'ariaLabel',
38
56
  'onChange',
39
57
  'fontSizeMultiplier',
@@ -53,8 +71,9 @@ type StorySingleProps = StoryProps;
53
71
  type StorySingle = StoryObj<StorySingleProps>;
54
72
  type StoryDouble = StoryObj<StoryProps>;
55
73
 
56
- const SliderWrapper = styled.div`
57
- width: 25rem;
74
+ const SliderWrapper = styled.div<{ isVertical?: boolean }>`
75
+ width: ${({ isVertical }) => (isVertical ? 'auto' : '25rem')};
76
+ height: ${({ isVertical }) => (isVertical ? '25rem' : 'auto')};
58
77
  `;
59
78
 
60
79
  const StoryDefault = (args: StorySingleProps) => {
@@ -68,41 +87,86 @@ const StoryDefault = (args: StorySingleProps) => {
68
87
  setValue(values);
69
88
  };
70
89
 
90
+ const { hasIcon, showIcon, orientation, labelPlacement, labelVerticalPlacement, ...rest } = args;
91
+ const isVertical = orientation === 'vertical';
92
+
71
93
  return (
72
- <SliderWrapper>
73
- <Slider value={value} onChangeCommitted={onChangeCommittedHandle} onChange={onChangeHandle} {...args} />
94
+ <SliderWrapper isVertical={isVertical}>
95
+ <Slider
96
+ value={value}
97
+ orientation={orientation}
98
+ labelPlacement={labelPlacement}
99
+ labelContent={showIcon ? <IconMic size={rest.size === 's' ? 'xs' : 's'} /> : null}
100
+ onChangeCommitted={onChangeCommittedHandle}
101
+ onChange={onChangeHandle}
102
+ {...rest}
103
+ />
74
104
  </SliderWrapper>
75
105
  );
76
106
  };
77
107
 
78
108
  export const Default: StorySingle = {
79
109
  argTypes: {
110
+ sliderAlign: {
111
+ options: sliderAligns,
112
+ control: {
113
+ type: 'inline-radio',
114
+ },
115
+ if: { arg: 'orientation', eq: 'vertical' },
116
+ },
80
117
  labelPlacement: {
81
118
  options: labelPlacements,
82
119
  control: {
83
120
  type: 'inline-radio',
84
121
  },
122
+ if: { arg: 'orientation', eq: 'horizontal' },
123
+ },
124
+ labelReversed: {
125
+ control: {
126
+ type: 'boolean',
127
+ expanded: true,
128
+ },
129
+ if: { arg: 'orientation', eq: 'vertical' },
130
+ },
131
+ scaleAlign: {
132
+ options: scaleAligns,
133
+ control: {
134
+ type: 'inline-radio',
135
+ },
136
+ if: { arg: 'orientation', eq: 'horizontal' },
85
137
  },
86
- rangeValuesPlacement: {
87
- options: rangeValuesPlacement,
138
+ orientation: {
139
+ options: orientations,
88
140
  control: {
89
141
  type: 'inline-radio',
90
142
  },
91
143
  },
144
+ reversed: {
145
+ control: {
146
+ type: 'boolean',
147
+ },
148
+ if: { arg: 'orientation', eq: 'vertical' },
149
+ },
92
150
  },
93
151
  args: {
94
152
  view: 'default',
95
153
  size: 'm',
154
+ pointerSize: 'small',
96
155
  min: 0,
97
156
  max: 100,
98
- disabled: false,
99
- ariaLabel: 'Цена товара',
157
+ orientation: 'horizontal',
158
+ ariaLabel: 'Цена микрофона',
100
159
  multipleStepSize: 10,
101
- label: 'Цена товара',
102
- labelPlacement: 'outer',
103
- rangeValuesPlacement: 'outer',
104
- showRangeValues: true,
160
+ label: 'Цена микрофона',
161
+ labelPlacement: 'top',
162
+ sliderAlign: 'center',
163
+ scaleAlign: 'bottom',
164
+ showScale: true,
105
165
  showCurrentValue: false,
166
+ showIcon: true,
167
+ reversed: false,
168
+ labelReversed: false,
169
+ disabled: false,
106
170
  },
107
171
  render: (args) => <StoryDefault {...args} />,
108
172
  };
@@ -142,7 +206,7 @@ const StoryMultipleValues = (args: StoryProps) => {
142
206
  };
143
207
 
144
208
  return (
145
- <SliderWrapper>
209
+ <SliderWrapper isVertical={args.orientation === 'vertical'}>
146
210
  <Slider
147
211
  value={value}
148
212
  onKeyDownTextField={onKeyDownTextField}
@@ -159,6 +223,7 @@ export const MultipleValues: StoryDouble = {
159
223
  args: {
160
224
  view: 'default',
161
225
  size: 'm',
226
+ pointerSize: 'small',
162
227
  min: 0,
163
228
  max: 100,
164
229
  disabled: false,
@@ -166,5 +231,14 @@ export const MultipleValues: StoryDouble = {
166
231
  ariaLabel: ['Минимальная цена товара', 'Максимальная цена товара'],
167
232
  multipleStepSize: 10,
168
233
  },
234
+ argTypes: {
235
+ pointerSize: {
236
+ options: ['small', 'large'],
237
+ control: {
238
+ type: 'inline-radio',
239
+ },
240
+ },
241
+ ...disableProps(['orientation']),
242
+ },
169
243
  render: (args) => <StoryMultipleValues {...args} />,
170
244
  };