@salutejs/plasma-new-hope 0.82.1-canary.1210.9126725322.0 → 0.83.0-canary.1194.9157747369.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (332) hide show
  1. package/cjs/components/Combobox/hooks/useFocusController.js +1 -0
  2. package/cjs/components/Combobox/hooks/useFocusController.js.map +1 -1
  3. package/cjs/components/Slider/Slider.css +69 -0
  4. package/cjs/components/Slider/Slider.js +48 -0
  5. package/cjs/components/Slider/Slider.js.map +1 -0
  6. package/cjs/components/Slider/Slider.tokens.js +79 -0
  7. package/cjs/components/Slider/Slider.tokens.js.map +1 -0
  8. package/cjs/components/Slider/components/Double/Double.css +62 -0
  9. package/cjs/components/Slider/components/Double/Double.js +288 -0
  10. package/cjs/components/Slider/components/Double/Double.js.map +1 -0
  11. package/cjs/components/Slider/components/Double/Double.styles.js +61 -0
  12. package/cjs/components/Slider/components/Double/Double.styles.js.map +1 -0
  13. package/cjs/components/Slider/components/Double/Double.styles_1jhda4u.css +7 -0
  14. package/cjs/components/Slider/components/Single/Single.css +16 -0
  15. package/cjs/components/Slider/components/Single/Single.js +164 -0
  16. package/cjs/components/Slider/components/Single/Single.js.map +1 -0
  17. package/cjs/components/Slider/components/Single/Single.styles.js +45 -0
  18. package/cjs/components/Slider/components/Single/Single.styles.js.map +1 -0
  19. package/cjs/components/Slider/components/Single/Single.styles_1r9f1e0.css +6 -0
  20. package/cjs/components/Slider/components/SliderBase/SliderBase.css +4 -0
  21. package/cjs/components/Slider/components/SliderBase/SliderBase.js +82 -0
  22. package/cjs/components/Slider/components/SliderBase/SliderBase.js.map +1 -0
  23. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +33 -0
  24. package/cjs/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -0
  25. package/cjs/components/Slider/components/SliderBase/SliderBase.styles_7is2ll.css +4 -0
  26. package/cjs/components/Slider/ui/Handler/Handler.css +4 -0
  27. package/cjs/components/Slider/ui/Handler/Handler.js +174 -0
  28. package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -0
  29. package/cjs/components/Slider/ui/Handler/Handler.styles.js +21 -0
  30. package/cjs/components/Slider/ui/Handler/Handler.styles.js.map +1 -0
  31. package/cjs/components/Slider/ui/Handler/Handler.styles_8crx5z.css +2 -0
  32. package/cjs/components/Slider/ui/Thumb/Thumb.css +1 -0
  33. package/cjs/components/Slider/ui/Thumb/Thumb.js +31 -0
  34. package/cjs/components/Slider/ui/Thumb/Thumb.js.map +1 -0
  35. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js +15 -0
  36. package/cjs/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -0
  37. package/cjs/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +1 -0
  38. package/cjs/components/Slider/utils/index.js +56 -0
  39. package/cjs/components/Slider/utils/index.js.map +1 -0
  40. package/cjs/components/Slider/variations/_disabled/base.js +9 -0
  41. package/cjs/components/Slider/variations/_disabled/base.js.map +1 -0
  42. package/cjs/components/Slider/variations/_disabled/base_x642ct.css +1 -0
  43. package/cjs/components/Slider/variations/_size/base.js +9 -0
  44. package/cjs/components/Slider/variations/_size/base.js.map +1 -0
  45. package/cjs/components/Slider/variations/_size/base_x642ct.css +1 -0
  46. package/cjs/components/Slider/variations/_view/base.js +9 -0
  47. package/cjs/components/Slider/variations/_view/base.js.map +1 -0
  48. package/cjs/components/Slider/variations/_view/base_x642ct.css +1 -0
  49. package/cjs/components/TextField/TextField.js +12 -3
  50. package/cjs/components/TextField/TextField.js.map +1 -1
  51. package/cjs/engines/common.js +4 -0
  52. package/cjs/engines/common.js.map +1 -1
  53. package/cjs/engines/index.js.map +1 -1
  54. package/cjs/hooks/useIsomorphicLayoutEffect.js +15 -0
  55. package/cjs/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  56. package/cjs/index.css +25 -0
  57. package/cjs/index.js +14 -0
  58. package/cjs/index.js.map +1 -1
  59. package/cjs/utils/canUseDOM.js +12 -0
  60. package/cjs/utils/canUseDOM.js.map +1 -0
  61. package/cjs/utils/index.js.map +1 -1
  62. package/es/components/Combobox/hooks/useFocusController.js +1 -0
  63. package/es/components/Combobox/hooks/useFocusController.js.map +1 -1
  64. package/es/components/Slider/Slider.css +69 -0
  65. package/es/components/Slider/Slider.js +43 -0
  66. package/es/components/Slider/Slider.js.map +1 -0
  67. package/es/components/Slider/Slider.tokens.js +74 -0
  68. package/es/components/Slider/Slider.tokens.js.map +1 -0
  69. package/es/components/Slider/components/Double/Double.css +62 -0
  70. package/es/components/Slider/components/Double/Double.js +284 -0
  71. package/es/components/Slider/components/Double/Double.js.map +1 -0
  72. package/es/components/Slider/components/Double/Double.styles.js +51 -0
  73. package/es/components/Slider/components/Double/Double.styles.js.map +1 -0
  74. package/es/components/Slider/components/Double/Double.styles_1jhda4u.css +7 -0
  75. package/es/components/Slider/components/Single/Single.css +16 -0
  76. package/es/components/Slider/components/Single/Single.js +160 -0
  77. package/es/components/Slider/components/Single/Single.js.map +1 -0
  78. package/es/components/Slider/components/Single/Single.styles.js +36 -0
  79. package/es/components/Slider/components/Single/Single.styles.js.map +1 -0
  80. package/es/components/Slider/components/Single/Single.styles_1r9f1e0.css +6 -0
  81. package/es/components/Slider/components/SliderBase/SliderBase.css +4 -0
  82. package/es/components/Slider/components/SliderBase/SliderBase.js +78 -0
  83. package/es/components/Slider/components/SliderBase/SliderBase.js.map +1 -0
  84. package/es/components/Slider/components/SliderBase/SliderBase.styles.js +26 -0
  85. package/es/components/Slider/components/SliderBase/SliderBase.styles.js.map +1 -0
  86. package/es/components/Slider/components/SliderBase/SliderBase.styles_7is2ll.css +4 -0
  87. package/es/components/Slider/ui/Handler/Handler.css +4 -0
  88. package/es/components/Slider/ui/Handler/Handler.js +170 -0
  89. package/es/components/Slider/ui/Handler/Handler.js.map +1 -0
  90. package/es/components/Slider/ui/Handler/Handler.styles.js +16 -0
  91. package/es/components/Slider/ui/Handler/Handler.styles.js.map +1 -0
  92. package/es/components/Slider/ui/Handler/Handler.styles_8crx5z.css +2 -0
  93. package/es/components/Slider/ui/Thumb/Thumb.css +1 -0
  94. package/es/components/Slider/ui/Thumb/Thumb.js +27 -0
  95. package/es/components/Slider/ui/Thumb/Thumb.js.map +1 -0
  96. package/es/components/Slider/ui/Thumb/Thumb.styles.js +11 -0
  97. package/es/components/Slider/ui/Thumb/Thumb.styles.js.map +1 -0
  98. package/es/components/Slider/ui/Thumb/Thumb.styles_4w4gzn.css +1 -0
  99. package/es/components/Slider/utils/index.js +50 -0
  100. package/es/components/Slider/utils/index.js.map +1 -0
  101. package/es/components/Slider/variations/_disabled/base.js +5 -0
  102. package/es/components/Slider/variations/_disabled/base.js.map +1 -0
  103. package/es/components/Slider/variations/_disabled/base_x642ct.css +1 -0
  104. package/es/components/Slider/variations/_size/base.js +5 -0
  105. package/es/components/Slider/variations/_size/base.js.map +1 -0
  106. package/es/components/Slider/variations/_size/base_x642ct.css +1 -0
  107. package/es/components/Slider/variations/_view/base.js +5 -0
  108. package/es/components/Slider/variations/_view/base.js.map +1 -0
  109. package/es/components/Slider/variations/_view/base_x642ct.css +1 -0
  110. package/es/components/TextField/TextField.js +12 -3
  111. package/es/components/TextField/TextField.js.map +1 -1
  112. package/es/engines/common.js +4 -0
  113. package/es/engines/common.js.map +1 -1
  114. package/es/engines/index.js.map +1 -1
  115. package/es/hooks/useIsomorphicLayoutEffect.js +11 -0
  116. package/es/hooks/useIsomorphicLayoutEffect.js.map +1 -0
  117. package/es/index.css +25 -0
  118. package/es/index.js +8 -0
  119. package/es/index.js.map +1 -1
  120. package/es/utils/canUseDOM.js +8 -0
  121. package/es/utils/canUseDOM.js.map +1 -0
  122. package/es/utils/index.js.map +1 -1
  123. package/package.json +3 -2
  124. package/styled-components/cjs/components/Avatar/Avatar.template-doc.mdx +1 -3
  125. package/styled-components/cjs/components/Badge/Badge.template-doc.mdx +9 -9
  126. package/styled-components/cjs/components/Button/Button.template-doc.mdx +9 -8
  127. package/styled-components/cjs/components/Checkbox/Checkbox.template-doc.mdx +2 -2
  128. package/styled-components/cjs/components/Chip/Chip.template-doc.mdx +1 -1
  129. package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +14 -14
  130. package/styled-components/cjs/components/Counter/Counter.template-doc.mdx +5 -5
  131. package/styled-components/cjs/components/Drawer/Drawer.template-doc.mdx +3 -3
  132. package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +261 -262
  133. package/styled-components/cjs/components/Image/Image.template-doc.mdx +1 -1
  134. package/styled-components/cjs/components/Link/Link.template-doc.mdx +4 -4
  135. package/styled-components/cjs/components/Modal/Modal.template-doc.mdx +33 -85
  136. package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +2 -1
  137. package/styled-components/cjs/components/Popover/Popover.template-doc.mdx +3 -3
  138. package/styled-components/cjs/components/Popup/Popup.template-doc.mdx +74 -70
  139. package/styled-components/cjs/components/Radiobox/Radiobox.template-doc.mdx +1 -2
  140. package/styled-components/cjs/components/Segment/Segment.template-doc.mdx +2 -2
  141. package/styled-components/cjs/components/Skeleton/Skeleton.template-doc.mdx +4 -4
  142. package/styled-components/cjs/components/Slider/Slider.js +47 -0
  143. package/styled-components/cjs/components/Slider/Slider.tokens.js +77 -0
  144. package/styled-components/cjs/components/Slider/Slider.types.js +5 -0
  145. package/styled-components/cjs/components/Slider/components/Double/Double.js +300 -0
  146. package/styled-components/cjs/components/Slider/components/Double/Double.styles.js +36 -0
  147. package/styled-components/cjs/components/Slider/components/Double/Double.types.js +5 -0
  148. package/styled-components/cjs/components/Slider/components/Single/Single.js +176 -0
  149. package/styled-components/cjs/components/Slider/components/Single/Single.styles.js +27 -0
  150. package/styled-components/cjs/components/Slider/components/Single/Single.types.js +5 -0
  151. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.js +83 -0
  152. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.styles.js +21 -0
  153. package/styled-components/cjs/components/Slider/components/SliderBase/SliderBase.types.js +5 -0
  154. package/styled-components/cjs/components/Slider/components/index.js +27 -0
  155. package/styled-components/cjs/components/Slider/index.js +32 -0
  156. package/styled-components/cjs/components/Slider/ui/Handler/Handler.js +183 -0
  157. package/styled-components/cjs/components/Slider/ui/Handler/Handler.styles.js +15 -0
  158. package/styled-components/cjs/components/Slider/ui/Handler/Handler.types.js +5 -0
  159. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.js +32 -0
  160. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.styles.js +18 -0
  161. package/styled-components/cjs/components/Slider/ui/Thumb/Thumb.types.js +5 -0
  162. package/styled-components/cjs/components/Slider/ui/index.js +63 -0
  163. package/styled-components/cjs/components/Slider/utils/index.js +55 -0
  164. package/styled-components/cjs/components/Slider/variations/_disabled/base.js +8 -0
  165. package/styled-components/cjs/components/Slider/variations/_disabled/tokens.json +4 -0
  166. package/styled-components/cjs/components/Slider/variations/_size/base.js +8 -0
  167. package/styled-components/cjs/components/Slider/variations/_size/tokens.json +0 -0
  168. package/styled-components/cjs/components/Slider/variations/_view/base.js +8 -0
  169. package/styled-components/cjs/components/Slider/variations/_view/tokens.json +0 -0
  170. package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +1 -1
  171. package/styled-components/cjs/components/TextField/TextField.js +12 -3
  172. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +2 -2
  173. package/styled-components/cjs/engines/common.js +4 -0
  174. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.config.js +29 -0
  175. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.js +16 -0
  176. package/styled-components/cjs/examples/plasma_b2c/components/Slider/Slider.stories.tsx +164 -0
  177. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.config.js +29 -0
  178. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.js +16 -0
  179. package/styled-components/cjs/examples/plasma_web/components/Slider/Slider.stories.tsx +163 -0
  180. package/styled-components/cjs/hooks/index.js +8 -1
  181. package/styled-components/cjs/hooks/useIsomorphicLayoutEffect.js +12 -0
  182. package/styled-components/cjs/index.js +11 -0
  183. package/styled-components/cjs/utils/canUseDOM.js +11 -0
  184. package/styled-components/cjs/utils/index.js +7 -0
  185. package/styled-components/es/components/Avatar/Avatar.template-doc.mdx +1 -3
  186. package/styled-components/es/components/Badge/Badge.template-doc.mdx +9 -9
  187. package/styled-components/es/components/Button/Button.template-doc.mdx +9 -8
  188. package/styled-components/es/components/Checkbox/Checkbox.template-doc.mdx +2 -2
  189. package/styled-components/es/components/Chip/Chip.template-doc.mdx +1 -1
  190. package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +14 -14
  191. package/styled-components/es/components/Counter/Counter.template-doc.mdx +5 -5
  192. package/styled-components/es/components/Drawer/Drawer.template-doc.mdx +3 -3
  193. package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +261 -262
  194. package/styled-components/es/components/Image/Image.template-doc.mdx +1 -1
  195. package/styled-components/es/components/Link/Link.template-doc.mdx +4 -4
  196. package/styled-components/es/components/Modal/Modal.template-doc.mdx +33 -85
  197. package/styled-components/es/components/Notification/Notification.template-doc.mdx +2 -1
  198. package/styled-components/es/components/Popover/Popover.template-doc.mdx +3 -3
  199. package/styled-components/es/components/Popup/Popup.template-doc.mdx +74 -70
  200. package/styled-components/es/components/Radiobox/Radiobox.template-doc.mdx +1 -2
  201. package/styled-components/es/components/Segment/Segment.template-doc.mdx +2 -2
  202. package/styled-components/es/components/Skeleton/Skeleton.template-doc.mdx +4 -4
  203. package/styled-components/es/components/Slider/Slider.js +38 -0
  204. package/styled-components/es/components/Slider/Slider.tokens.js +71 -0
  205. package/styled-components/es/components/Slider/Slider.types.js +1 -0
  206. package/styled-components/es/components/Slider/components/Double/Double.js +292 -0
  207. package/styled-components/es/components/Slider/components/Double/Double.styles.js +29 -0
  208. package/styled-components/es/components/Slider/components/Double/Double.types.js +1 -0
  209. package/styled-components/es/components/Slider/components/Single/Single.js +168 -0
  210. package/styled-components/es/components/Slider/components/Single/Single.styles.js +20 -0
  211. package/styled-components/es/components/Slider/components/Single/Single.types.js +1 -0
  212. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.js +74 -0
  213. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.styles.js +14 -0
  214. package/styled-components/es/components/Slider/components/SliderBase/SliderBase.types.js +1 -0
  215. package/styled-components/es/components/Slider/components/index.js +3 -0
  216. package/styled-components/es/components/Slider/index.js +3 -0
  217. package/styled-components/es/components/Slider/ui/Handler/Handler.js +174 -0
  218. package/styled-components/es/components/Slider/ui/Handler/Handler.styles.js +8 -0
  219. package/styled-components/es/components/Slider/ui/Handler/Handler.types.js +1 -0
  220. package/styled-components/es/components/Slider/ui/Thumb/Thumb.js +25 -0
  221. package/styled-components/es/components/Slider/ui/Thumb/Thumb.styles.js +11 -0
  222. package/styled-components/es/components/Slider/ui/Thumb/Thumb.types.js +1 -0
  223. package/styled-components/es/components/Slider/ui/index.js +5 -0
  224. package/styled-components/es/components/Slider/utils/index.js +47 -0
  225. package/styled-components/es/components/Slider/variations/_disabled/base.js +2 -0
  226. package/styled-components/es/components/Slider/variations/_disabled/tokens.json +4 -0
  227. package/styled-components/es/components/Slider/variations/_size/base.js +2 -0
  228. package/styled-components/es/components/Slider/variations/_size/tokens.json +0 -0
  229. package/styled-components/es/components/Slider/variations/_view/base.js +2 -0
  230. package/styled-components/es/components/Slider/variations/_view/tokens.json +0 -0
  231. package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +1 -1
  232. package/styled-components/es/components/TextField/TextField.js +12 -3
  233. package/styled-components/es/components/TextField/TextField.template-doc.mdx +2 -2
  234. package/styled-components/es/engines/common.js +4 -0
  235. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.config.js +23 -0
  236. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.js +10 -0
  237. package/styled-components/es/examples/plasma_b2c/components/Slider/Slider.stories.tsx +164 -0
  238. package/styled-components/es/examples/plasma_web/components/Slider/Slider.config.js +23 -0
  239. package/styled-components/es/examples/plasma_web/components/Slider/Slider.js +10 -0
  240. package/styled-components/es/examples/plasma_web/components/Slider/Slider.stories.tsx +163 -0
  241. package/styled-components/es/hooks/index.js +2 -1
  242. package/styled-components/es/hooks/useIsomorphicLayoutEffect.js +7 -0
  243. package/styled-components/es/index.js +2 -1
  244. package/styled-components/es/utils/canUseDOM.js +5 -0
  245. package/styled-components/es/utils/index.js +1 -0
  246. package/types/components/Slider/Slider.d.ts +27 -0
  247. package/types/components/Slider/Slider.d.ts.map +1 -0
  248. package/types/components/Slider/Slider.tokens.d.ts +72 -0
  249. package/types/components/Slider/Slider.tokens.d.ts.map +1 -0
  250. package/types/components/Slider/Slider.types.d.ts +3 -0
  251. package/types/components/Slider/Slider.types.d.ts.map +1 -0
  252. package/types/components/Slider/components/Double/Double.d.ts +4 -0
  253. package/types/components/Slider/components/Double/Double.d.ts.map +1 -0
  254. package/types/components/Slider/components/Double/Double.styles.d.ts +43 -0
  255. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -0
  256. package/types/components/Slider/components/Double/Double.types.d.ts +65 -0
  257. package/types/components/Slider/components/Double/Double.types.d.ts.map +1 -0
  258. package/types/components/Slider/components/Single/Single.d.ts +4 -0
  259. package/types/components/Slider/components/Single/Single.d.ts.map +1 -0
  260. package/types/components/Slider/components/Single/Single.styles.d.ts +8 -0
  261. package/types/components/Slider/components/Single/Single.styles.d.ts.map +1 -0
  262. package/types/components/Slider/components/Single/Single.types.d.ts +55 -0
  263. package/types/components/Slider/components/Single/Single.types.d.ts.map +1 -0
  264. package/types/components/Slider/components/SliderBase/SliderBase.d.ts +4 -0
  265. package/types/components/Slider/components/SliderBase/SliderBase.d.ts.map +1 -0
  266. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts +6 -0
  267. package/types/components/Slider/components/SliderBase/SliderBase.styles.d.ts.map +1 -0
  268. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts +45 -0
  269. package/types/components/Slider/components/SliderBase/SliderBase.types.d.ts.map +1 -0
  270. package/types/components/Slider/components/index.d.ts +6 -0
  271. package/types/components/Slider/components/index.d.ts.map +1 -0
  272. package/types/components/Slider/index.d.ts +6 -0
  273. package/types/components/Slider/index.d.ts.map +1 -0
  274. package/types/components/Slider/ui/Handler/Handler.d.ts +9 -0
  275. package/types/components/Slider/ui/Handler/Handler.d.ts.map +1 -0
  276. package/types/components/Slider/ui/Handler/Handler.styles.d.ts +4 -0
  277. package/types/components/Slider/ui/Handler/Handler.styles.d.ts.map +1 -0
  278. package/types/components/Slider/ui/Handler/Handler.types.d.ts +24 -0
  279. package/types/components/Slider/ui/Handler/Handler.types.d.ts.map +1 -0
  280. package/types/components/Slider/ui/Thumb/Thumb.d.ts +4 -0
  281. package/types/components/Slider/ui/Thumb/Thumb.d.ts.map +1 -0
  282. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts +5 -0
  283. package/types/components/Slider/ui/Thumb/Thumb.styles.d.ts.map +1 -0
  284. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts +12 -0
  285. package/types/components/Slider/ui/Thumb/Thumb.types.d.ts.map +1 -0
  286. package/types/components/Slider/ui/index.d.ts +6 -0
  287. package/types/components/Slider/ui/index.d.ts.map +1 -0
  288. package/types/components/Slider/utils/index.d.ts +33 -0
  289. package/types/components/Slider/utils/index.d.ts.map +1 -0
  290. package/types/components/Slider/variations/_disabled/base.d.ts +2 -0
  291. package/types/components/Slider/variations/_disabled/base.d.ts.map +1 -0
  292. package/types/components/Slider/variations/_size/base.d.ts +2 -0
  293. package/types/components/Slider/variations/_size/base.d.ts.map +1 -0
  294. package/types/components/Slider/variations/_view/base.d.ts +2 -0
  295. package/types/components/Slider/variations/_view/base.d.ts.map +1 -0
  296. package/types/components/TextField/TextField.d.ts.map +1 -1
  297. package/types/engines/common.d.ts +3 -3
  298. package/types/engines/common.d.ts.map +1 -1
  299. package/types/engines/index.d.ts +1 -1
  300. package/types/engines/index.d.ts.map +1 -1
  301. package/types/engines/types.d.ts +4 -0
  302. package/types/engines/types.d.ts.map +1 -1
  303. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts +22 -0
  304. package/types/examples/plasma_b2c/components/Slider/Slider.config.d.ts.map +1 -0
  305. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts +21 -0
  306. package/types/examples/plasma_b2c/components/Slider/Slider.d.ts.map +1 -0
  307. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts +22 -0
  308. package/types/examples/plasma_web/components/Slider/Slider.config.d.ts.map +1 -0
  309. package/types/examples/plasma_web/components/Slider/Slider.d.ts +21 -0
  310. package/types/examples/plasma_web/components/Slider/Slider.d.ts.map +1 -0
  311. package/types/hooks/index.d.ts +1 -0
  312. package/types/hooks/index.d.ts.map +1 -1
  313. package/types/hooks/useIsomorphicLayoutEffect.d.ts +6 -0
  314. package/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
  315. package/types/index.d.ts +1 -0
  316. package/types/index.d.ts.map +1 -1
  317. package/types/utils/canUseDOM.d.ts +6 -0
  318. package/types/utils/canUseDOM.d.ts.map +1 -0
  319. package/types/utils/index.d.ts +1 -0
  320. package/types/utils/index.d.ts.map +1 -1
  321. package/styled-components/cjs/components/Cell/Cell.template-doc.mdx +0 -68
  322. package/styled-components/cjs/components/Divider/Divider.template-docs.mdx +0 -57
  323. package/styled-components/cjs/components/IconButton/IconButton.template-doc.mdx +0 -156
  324. package/styled-components/cjs/components/Pagination/Pagination.template-doc.mdx +0 -130
  325. package/styled-components/cjs/components/Progress/Progress.template-doc.mdx +0 -33
  326. package/styled-components/cjs/components/Toolbar/Toolbar.template-doc.mdx +0 -120
  327. package/styled-components/es/components/Cell/Cell.template-doc.mdx +0 -68
  328. package/styled-components/es/components/Divider/Divider.template-docs.mdx +0 -57
  329. package/styled-components/es/components/IconButton/IconButton.template-doc.mdx +0 -156
  330. package/styled-components/es/components/Pagination/Pagination.template-doc.mdx +0 -130
  331. package/styled-components/es/components/Progress/Progress.template-doc.mdx +0 -33
  332. package/styled-components/es/components/Toolbar/Toolbar.template-doc.mdx +0 -120
@@ -0,0 +1,174 @@
1
+ var _excluded = ["stepSize", "onChangeCommitted", "onChange", "xPosition", "min", "max", "bounds", "zIndex", "disabled", "side", "showCurrentValue", "startOffset", "endOffset", "value"];
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
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
6
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
7
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
8
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9
+ 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; }
10
+ 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; }
11
+ import React, { useState, useRef, forwardRef } from 'react';
12
+ import Draggable from 'react-draggable';
13
+ import { getSliderThumbValue, getOffsets } from '../../utils';
14
+ import { Thumb } from '../Thumb/Thumb';
15
+ import { HandlerStyled, StyledValue } from './Handler.styles';
16
+
17
+ // TODO: PLASMA-1707
18
+
19
+ var KeyboardSupport = {
20
+ PageUp: 33,
21
+ PageDown: 34,
22
+ End: 35,
23
+ Home: 36,
24
+ ArrowLeft: 37,
25
+ ArrowUp: 38,
26
+ ArrowRight: 39,
27
+ ArrowDown: 40
28
+ };
29
+ export var Handler = /*#__PURE__*/forwardRef(function (_ref, ref) {
30
+ var _position$x;
31
+ var stepSize = _ref.stepSize,
32
+ onChangeCommitted = _ref.onChangeCommitted,
33
+ onChange = _ref.onChange,
34
+ _ref$xPosition = _ref.xPosition,
35
+ xPosition = _ref$xPosition === void 0 ? 0 : _ref$xPosition,
36
+ min = _ref.min,
37
+ max = _ref.max,
38
+ _ref$bounds = _ref.bounds,
39
+ bounds = _ref$bounds === void 0 ? [] : _ref$bounds,
40
+ zIndex = _ref.zIndex,
41
+ disabled = _ref.disabled,
42
+ side = _ref.side,
43
+ _ref$showCurrentValue = _ref.showCurrentValue,
44
+ showCurrentValue = _ref$showCurrentValue === void 0 ? false : _ref$showCurrentValue,
45
+ _ref$startOffset = _ref.startOffset,
46
+ startOffset = _ref$startOffset === void 0 ? 0 : _ref$startOffset,
47
+ _ref$endOffset = _ref.endOffset,
48
+ endOffset = _ref$endOffset === void 0 ? 0 : _ref$endOffset,
49
+ value = _ref.value,
50
+ rest = _objectWithoutProperties(_ref, _excluded);
51
+ var lastOnChangeValue = useRef();
52
+ var _getOffsets = getOffsets(ref, side),
53
+ _getOffsets2 = _slicedToArray(_getOffsets, 2),
54
+ offsetLeft = _getOffsets2[0],
55
+ offsetRight = _getOffsets2[1];
56
+ var _bounds = _slicedToArray(bounds, 2),
57
+ leftValueBound = _bounds[0],
58
+ rightValueBound = _bounds[1];
59
+ var leftPositionBound = leftValueBound ? (leftValueBound - min) * stepSize : null;
60
+ var rightPositionBound = rightValueBound ? (rightValueBound - min) * stepSize : null;
61
+ var position = typeof xPosition === 'number' ? {
62
+ x: xPosition,
63
+ y: 0
64
+ } : undefined;
65
+ var tabIndex = disabled ? -1 : 0;
66
+ var _useState = useState((_position$x = position === null || position === void 0 ? void 0 : position.x) !== null && _position$x !== void 0 ? _position$x : 0),
67
+ _useState2 = _slicedToArray(_useState, 2),
68
+ positionX = _useState2[0],
69
+ setPositionX = _useState2[1];
70
+ var computedBounds = {
71
+ left: (leftPositionBound !== null && leftPositionBound !== void 0 ? leftPositionBound : 0) + offsetLeft,
72
+ right: (rightPositionBound !== null && rightPositionBound !== void 0 ? rightPositionBound : stepSize * (max - min)) - offsetRight
73
+ };
74
+ var showCurrentValueCondition = showCurrentValue && (positionX >= startOffset && positionX <= max * stepSize - endOffset || positionX === 0 && value !== 0);
75
+ var onDrag = function onDrag(_, data) {
76
+ var newValue = getSliderThumbValue(data.x, stepSize, min, max);
77
+ if (lastOnChangeValue.current !== newValue) {
78
+ onChange === null || onChange === void 0 || onChange(newValue, data);
79
+ setPositionX(data.x);
80
+ lastOnChangeValue.current = newValue;
81
+ }
82
+ };
83
+ var onStop = function onStop(_, data) {
84
+ var newValue = getSliderThumbValue(data.x, stepSize, min, max);
85
+ setPositionX(data.x);
86
+ onChangeCommitted && onChangeCommitted(newValue, data);
87
+ };
88
+ var onKeyPress = function onKeyPress(event) {
89
+ event.persist();
90
+ var keyCode = event.keyCode,
91
+ target = event.target;
92
+ if (!Object.values(KeyboardSupport).includes(keyCode)) {
93
+ return;
94
+ }
95
+ var ArrowUp = KeyboardSupport.ArrowUp,
96
+ ArrowRight = KeyboardSupport.ArrowRight,
97
+ ArrowDown = KeyboardSupport.ArrowDown,
98
+ ArrowLeft = KeyboardSupport.ArrowLeft,
99
+ Home = KeyboardSupport.Home,
100
+ End = KeyboardSupport.End,
101
+ PageDown = KeyboardSupport.PageDown,
102
+ PageUp = KeyboardSupport.PageUp;
103
+ var computedMultipleSteps = stepSize * (rest.multipleStepSize / 100 * max);
104
+ var data = {
105
+ x: 0,
106
+ deltaX: stepSize,
107
+ lastX: xPosition,
108
+ y: 0,
109
+ deltaY: 0,
110
+ lastY: 0,
111
+ node: target
112
+ };
113
+ switch (keyCode) {
114
+ case ArrowUp:
115
+ case ArrowRight:
116
+ data.x = xPosition + stepSize;
117
+ break;
118
+ case ArrowDown:
119
+ case ArrowLeft:
120
+ data.x = xPosition - stepSize;
121
+ data.deltaX = -stepSize;
122
+ break;
123
+ case PageUp:
124
+ data.x = xPosition + computedMultipleSteps;
125
+ data.deltaX = computedMultipleSteps;
126
+ break;
127
+ case PageDown:
128
+ data.x = xPosition - computedMultipleSteps;
129
+ data.deltaX = -computedMultipleSteps;
130
+ break;
131
+ case End:
132
+ data.x = max * stepSize;
133
+ break;
134
+ case Home:
135
+ data.x = 0;
136
+ break;
137
+ default:
138
+ data.x = 0;
139
+ }
140
+ var left = computedBounds.left,
141
+ right = computedBounds.right;
142
+
143
+ /*
144
+ * INFO: Находим значение в диапазоне между указанными левой и правой границами.
145
+ * Необходимо для правильного расчета положения SliderThumb.
146
+ * см. функция clamp
147
+ */
148
+ var boundedValue = Math.max(Math.min(right, data.x), left);
149
+ var computedValue = getSliderThumbValue(boundedValue, stepSize, min, max);
150
+ lastOnChangeValue.current = computedValue;
151
+ onChangeCommitted && onChangeCommitted(computedValue, data);
152
+ };
153
+ return /*#__PURE__*/React.createElement(Draggable, {
154
+ axis: "x",
155
+ bounds: computedBounds,
156
+ grid: [stepSize, 1],
157
+ onStop: onStop,
158
+ onDrag: onDrag,
159
+ position: position,
160
+ disabled: disabled
161
+ }, /*#__PURE__*/React.createElement(HandlerStyled, {
162
+ ref: ref,
163
+ style: {
164
+ zIndex: zIndex
165
+ },
166
+ onKeyDown: onKeyPress
167
+ }, /*#__PURE__*/React.createElement(Thumb, _extends({
168
+ tabIndex: tabIndex,
169
+ min: min,
170
+ max: max,
171
+ value: value,
172
+ disabled: disabled
173
+ }, rest)), showCurrentValueCondition && /*#__PURE__*/React.createElement(StyledValue, null, value)));
174
+ });
@@ -0,0 +1,8 @@
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;"]);
6
+ export var StyledValue = /*#__PURE__*/styled.span.withConfig({
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);
@@ -0,0 +1,25 @@
1
+ var _excluded = ["min", "max", "value", "ariaValueMin", "ariaLabel", "disabled"];
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
+ 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
+ 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
+ import React from 'react';
6
+ import { ThumbBase } from './Thumb.styles';
7
+ export var Thumb = function Thumb(_ref) {
8
+ var min = _ref.min,
9
+ max = _ref.max,
10
+ value = _ref.value,
11
+ _ref$ariaValueMin = _ref.ariaValueMin,
12
+ ariaValueMin = _ref$ariaValueMin === void 0 ? min : _ref$ariaValueMin,
13
+ ariaLabel = _ref.ariaLabel,
14
+ disabled = _ref.disabled,
15
+ rest = _objectWithoutProperties(_ref, _excluded);
16
+ return /*#__PURE__*/React.createElement(ThumbBase, _extends({
17
+ role: "slider",
18
+ "aria-label": ariaLabel,
19
+ "aria-valuemin": ariaValueMin,
20
+ "aria-valuemax": max,
21
+ "aria-valuenow": value,
22
+ disabled: disabled,
23
+ "aria-orientation": "horizontal"
24
+ }, rest));
25
+ };
@@ -0,0 +1,11 @@
1
+ import styled from 'styled-components';
2
+ import { addFocus } from '../../../../mixins';
3
+ import { tokens } from '../../Slider.tokens';
4
+ export var ThumbBase = /*#__PURE__*/styled.div.withConfig({
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',
8
+ outlineSize: '0.125rem',
9
+ outlineRadius: '50%',
10
+ outlineColor: /*#__PURE__*/"var(".concat(tokens.thumbFocusBorderColor, ")")
11
+ }));
@@ -0,0 +1,5 @@
1
+ export * from './Handler/Handler';
2
+ export * from './Thumb/Thumb';
3
+ export { ThumbBase } from './Thumb/Thumb.styles';
4
+ export * from './Handler/Handler.types';
5
+ export * from './Thumb/Thumb.types';
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Расчитать значение слайдера с учетом его координат и шага изменений.
3
+ * @param {number} handleCenterXRelative
4
+ * @param {number} stepSize
5
+ * @param {number} min
6
+ * @param {number} max
7
+ * @return {number}
8
+ */
9
+ export function getSliderThumbValue(handleCenterXRelative, stepSize, min, max) {
10
+ var newValue = Math.round(handleCenterXRelative / stepSize) + min;
11
+ return Math.min(Math.max(newValue, min), max);
12
+ }
13
+
14
+ /**
15
+ * Расчитывает значение отступа слайдера на основе его положения (справа, слева) на отрезке слайдера.
16
+ * Значение используется для правильного расчета ограничения движения слайдера.
17
+ * @param ref
18
+ * @param {'left' | 'right'} side
19
+ * @return Array<number>
20
+ */
21
+ export function getOffsets(ref, side) {
22
+ if (!ref || !('current' in ref) || !ref.current || !side) {
23
+ return [0, 0];
24
+ }
25
+ var size = ref.current.clientWidth;
26
+ if (side === 'left') {
27
+ return [0, size];
28
+ }
29
+ if (side === 'right') {
30
+ return [size, 0];
31
+ }
32
+ return [0, 0];
33
+ }
34
+ export var sizeData = {
35
+ s: {
36
+ indent: 0.5,
37
+ fontSizeMultiplier: 16
38
+ },
39
+ m: {
40
+ indent: 0.75,
41
+ fontSizeMultiplier: 16
42
+ },
43
+ l: {
44
+ indent: 0.75,
45
+ fontSizeMultiplier: 16
46
+ }
47
+ };
@@ -0,0 +1,2 @@
1
+ import { css } from 'styled-components';
2
+ export var base = /*#__PURE__*/css([""]);
@@ -0,0 +1,4 @@
1
+ {
2
+ "type": "boolean",
3
+ "tokens": ["--plasma-slider-disabled-opacity"]
4
+ }
@@ -0,0 +1,2 @@
1
+ import { css } from 'styled-components';
2
+ export var base = /*#__PURE__*/css([""]);
@@ -0,0 +1,2 @@
1
+ import { css } from 'styled-components';
2
+ export var base = /*#__PURE__*/css([""]);
@@ -27,7 +27,7 @@ import { PropsTable, Description } from '@site/src/components';
27
27
 
28
28
  ## Использование
29
29
 
30
- ### Стандартное подключение, без клавиатурной навигации
30
+ ### Cтандартное подключение, без клавиатурной навигации
31
31
 
32
32
  ```tsx live
33
33
  import React, { useState } from 'react';
@@ -1,4 +1,4 @@
1
- var _excluded = ["id", "contentLeft", "contentRight", "label", "labelPlacement", "placeholder", "leftHelper", "enumerationType", "view", "size", "readOnly", "disabled", "chips", "onChange", "onChangeChips", "onSearch"];
1
+ var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "placeholder", "leftHelper", "enumerationType", "view", "size", "readOnly", "disabled", "chips", "onChange", "onChangeChips", "onSearch", "onKeyDown"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
4
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -25,6 +25,8 @@ export var base = /*#__PURE__*/css(["display:block;overflow:hidden;"]);
25
25
  export var textFieldRoot = function textFieldRoot(Root) {
26
26
  return /*#__PURE__*/forwardRef(function (_ref, ref) {
27
27
  var id = _ref.id,
28
+ className = _ref.className,
29
+ style = _ref.style,
28
30
  contentLeft = _ref.contentLeft,
29
31
  contentRight = _ref.contentRight,
30
32
  label = _ref.label,
@@ -43,6 +45,7 @@ export var textFieldRoot = function textFieldRoot(Root) {
43
45
  onChange = _ref.onChange,
44
46
  onChangeChips = _ref.onChangeChips,
45
47
  onSearch = _ref.onSearch,
48
+ onKeyDown = _ref.onKeyDown,
46
49
  rest = _objectWithoutProperties(_ref, _excluded);
47
50
  var contentRef = useRef(null);
48
51
  var inputRef = useRef(null);
@@ -122,6 +125,10 @@ export var textFieldRoot = function textFieldRoot(Root) {
122
125
  chipsRefs.current[index] = element;
123
126
  }
124
127
  };
128
+ var handleOnKeyDown = function handleOnKeyDown(event) {
129
+ handleInputKeydown(event);
130
+ onKeyDown && onKeyDown(event);
131
+ };
125
132
  useEffect(function () {
126
133
  if (!isChipEnumeration && !(values !== null && values !== void 0 && values.length)) {
127
134
  return;
@@ -140,7 +147,9 @@ export var textFieldRoot = function textFieldRoot(Root) {
140
147
  disabled: disabled,
141
148
  readOnly: !disabled && readOnly,
142
149
  labelPlacement: innerLabelPlacementValue,
143
- onClick: handleInputFocus
150
+ onClick: handleInputFocus,
151
+ className: className,
152
+ style: style
144
153
  }, labelInside || innerLabelValue && /*#__PURE__*/React.createElement(Label, {
145
154
  id: labelId,
146
155
  htmlFor: id
@@ -181,7 +190,7 @@ export var textFieldRoot = function textFieldRoot(Root) {
181
190
  disabled: disabled,
182
191
  readOnly: !disabled && readOnly,
183
192
  onChange: handleChange,
184
- onKeyDown: handleInputKeydown
193
+ onKeyDown: handleOnKeyDown
185
194
  })), labelInside && /*#__PURE__*/React.createElement(Label, {
186
195
  id: labelId,
187
196
  htmlFor: innerId
@@ -117,7 +117,7 @@ export function App() {
117
117
 
118
118
  ```tsx live
119
119
  import React from 'react';
120
- import { TextField } from '@salutejs/{{ package }}';
120
+ import { TextField } from '@salutejs/{{ package }};
121
121
 
122
122
  export function App() {
123
123
  return (
@@ -133,4 +133,4 @@ export function App() {
133
133
  </div>
134
134
  );
135
135
  }
136
- ```
136
+ ```
@@ -13,6 +13,10 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
13
13
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
14
14
  import React from 'react';
15
15
  import { _component } from './styled-components';
16
+ //
17
+ // Тип HTMLAttributesOmitOnChange требуется чтобы использовать компонент с кастомным пропсом onChange
18
+ //
19
+
16
20
  export var getStaticVariants = function getStaticVariants(config) {
17
21
  if (!config.variations) {
18
22
  return [];
@@ -0,0 +1,23 @@
1
+ import { css } from 'styled-components';
2
+ import { sliderTokens } from '../../../../components/Slider';
3
+ export var config = {
4
+ defaults: {
5
+ view: 'default',
6
+ size: 'm'
7
+ },
8
+ variations: {
9
+ view: {
10
+ "default": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-solid-tertiary);", ":var(--on-light-surface-solid-card);", ":var(--surface-solid-default);", ":var(--surface-solid-tertiary);", ":var(--surface-solid-default);", ":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),
11
+ accent: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-solid-tertiary);", ":var(--on-light-surface-solid-card);", ":var(--surface-accent);", ":var(--surface-solid-tertiary);", ":var(--surface-accent);", ":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),
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
+ },
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)
18
+ },
19
+ disabled: {
20
+ "true": /*#__PURE__*/css(["", ":0.4;"], sliderTokens.disabledOpacity)
21
+ }
22
+ }
23
+ };
@@ -0,0 +1,10 @@
1
+ import { sliderConfig } from '../../../../components/Slider';
2
+ import { component, mergeConfig } from '../../../../engines';
3
+ import { config } from './Slider.config';
4
+ var mergedConfig = /*#__PURE__*/mergeConfig(sliderConfig, config);
5
+ export var Slider = /*#__PURE__*/component(mergedConfig);
6
+
7
+ /**
8
+ * Слайдер позволяет определить числовое значение в пределах указанного промежутка.
9
+ * Можно указать два значения.
10
+ */
@@ -0,0 +1,164 @@
1
+ import React, { useState } from 'react';
2
+ import type { ComponentProps } from 'react';
3
+ import styled from 'styled-components';
4
+ import { disableProps } from '@salutejs/plasma-sb-utils';
5
+ import type { StoryObj, Meta } from '@storybook/react';
6
+ import { action } from '@storybook/addon-actions';
7
+
8
+ import { WithTheme } from '../../../_helpers';
9
+
10
+ import { Slider } from './Slider';
11
+
12
+ const sizes = ['l', 'm', 's'];
13
+ const views = ['default', 'accent', 'gradient'];
14
+ const labelPlacements = ['outer', 'inner'];
15
+ const rangeValuesPlacement = ['outer', 'inner'];
16
+
17
+ const meta: Meta<typeof Slider> = {
18
+ title: 'plasma_b2c/Slider',
19
+ component: Slider,
20
+ decorators: [WithTheme],
21
+ argTypes: {
22
+ view: {
23
+ options: views,
24
+ control: {
25
+ type: 'select',
26
+ },
27
+ },
28
+ size: {
29
+ options: sizes,
30
+ control: {
31
+ type: 'inline-radio',
32
+ },
33
+ },
34
+ ...disableProps([
35
+ 'value',
36
+ 'onChangeCommitted',
37
+ 'ariaLabel',
38
+ 'onChange',
39
+ 'fontSizeMultiplier',
40
+ 'gap',
41
+ 'settings',
42
+ 'hasHoverAnimation',
43
+ ]),
44
+ },
45
+ };
46
+
47
+ export default meta;
48
+
49
+ type StoryProps = Omit<ComponentProps<typeof Slider>, 'value' | 'onChangeCommitted'>;
50
+ type StorySingleProps = StoryProps;
51
+
52
+ type StorySingle = StoryObj<StorySingleProps>;
53
+ type StoryDouble = StoryObj<StoryProps>;
54
+
55
+ const SliderWrapper = styled.div`
56
+ width: 25rem;
57
+ `;
58
+
59
+ const StoryDefault = (args: StorySingleProps) => {
60
+ const [value, setValue] = useState(30);
61
+
62
+ const onChangeCommittedHandle = (values) => {
63
+ setValue(values);
64
+ };
65
+
66
+ const onChangeHandle = (values) => {
67
+ setValue(values);
68
+ };
69
+
70
+ return (
71
+ <SliderWrapper>
72
+ <Slider value={value} onChangeCommitted={onChangeCommittedHandle} onChange={onChangeHandle} {...args} />
73
+ </SliderWrapper>
74
+ );
75
+ };
76
+
77
+ export const Default: StorySingle = {
78
+ argTypes: {
79
+ labelPlacement: {
80
+ options: labelPlacements,
81
+ control: {
82
+ type: 'inline-radio',
83
+ },
84
+ },
85
+ rangeValuesPlacement: {
86
+ options: rangeValuesPlacement,
87
+ control: {
88
+ type: 'inline-radio',
89
+ },
90
+ },
91
+ },
92
+ args: {
93
+ view: 'default',
94
+ size: 'm',
95
+ min: 0,
96
+ max: 100,
97
+ disabled: false,
98
+ ariaLabel: 'Цена товара',
99
+ multipleStepSize: 10,
100
+ label: 'Цена товара',
101
+ labelPlacement: 'outer',
102
+ rangeValuesPlacement: 'outer',
103
+ showRangeValues: true,
104
+ showCurrentValue: false,
105
+ },
106
+ render: (args) => <StoryDefault {...args} />,
107
+ };
108
+
109
+ const StoryMultipleValues = (args: StoryProps) => {
110
+ const [value, setValue] = useState([10, 80]);
111
+ const sortValues = (values) => {
112
+ return values
113
+ .map((val) => {
114
+ if (val < args.min) {
115
+ return args.min;
116
+ }
117
+ if (val > args.max) {
118
+ return args.max;
119
+ }
120
+ return val;
121
+ })
122
+ .sort((a, b) => a - b);
123
+ };
124
+
125
+ const onChangeHandle = (values) => {
126
+ setValue(sortValues(values));
127
+ };
128
+
129
+ const onBlurTextField = (values) => {
130
+ setValue(sortValues(values));
131
+ };
132
+
133
+ const onKeyDownTextField = (values, event) => {
134
+ if (event.key === 'Enter') {
135
+ setValue(sortValues(values));
136
+ }
137
+ };
138
+
139
+ return (
140
+ <SliderWrapper>
141
+ <Slider
142
+ value={value}
143
+ onKeyDownTextField={onKeyDownTextField}
144
+ onBlurTextField={onBlurTextField}
145
+ onChange={onChangeHandle}
146
+ {...args}
147
+ />
148
+ </SliderWrapper>
149
+ );
150
+ };
151
+
152
+ export const MultipleValues: StoryDouble = {
153
+ args: {
154
+ view: 'default',
155
+ size: 'm',
156
+ min: 0,
157
+ max: 100,
158
+ disabled: false,
159
+ label: 'Цена товара',
160
+ ariaLabel: ['Минимальная цена товара', 'Максимальная цена товара'],
161
+ multipleStepSize: 10,
162
+ },
163
+ render: (args) => <StoryMultipleValues {...args} />,
164
+ };