@salutejs/plasma-new-hope 0.85.0-canary.1213.9224571157.0 → 0.85.0-dev.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (358) hide show
  1. package/cjs/components/Button/Button.css +6 -9
  2. package/cjs/components/Button/Button.js +2 -16
  3. package/cjs/components/Button/Button.js.map +1 -1
  4. package/cjs/components/Button/Button.styles.js +10 -31
  5. package/cjs/components/Button/Button.styles.js.map +1 -1
  6. package/cjs/components/Button/Button.styles_uqvh6u.css +5 -0
  7. package/cjs/components/Button/Button.tokens.js +0 -5
  8. package/cjs/components/Button/Button.tokens.js.map +1 -1
  9. package/cjs/components/Button/variations/_stretching/base.js +1 -1
  10. package/cjs/components/Button/variations/_stretching/base.js.map +1 -1
  11. package/{es/components/Button/variations/_stretching/base_hy8dc.css → cjs/components/Button/variations/_stretching/base_1lx0ute.css} +1 -1
  12. package/cjs/components/ButtonGroup/ButtonGroup.css +2 -2
  13. package/cjs/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  14. package/cjs/components/ButtonGroup/ButtonGroup.tokens.js.map +1 -1
  15. package/cjs/components/ButtonGroup/variations/_orientation/base.js +1 -1
  16. package/cjs/components/ButtonGroup/variations/_orientation/base.js.map +1 -1
  17. package/{es/components/ButtonGroup/variations/_orientation/base_y7z7cs.css → cjs/components/ButtonGroup/variations/_orientation/base_p85v51.css} +1 -1
  18. package/cjs/components/ButtonGroup/variations/_view/base.js +1 -1
  19. package/cjs/components/ButtonGroup/variations/_view/base.js.map +1 -1
  20. package/cjs/components/ButtonGroup/variations/_view/base_6k3uip.css +1 -0
  21. package/cjs/components/Drawer/Drawer.css +6 -9
  22. package/cjs/components/Drawer/ui/DrawerContent/DrawerContent.css +6 -9
  23. package/cjs/components/Header/ui/HeaderArrow/HeaderArrow.css +6 -9
  24. package/cjs/components/Header/ui/HeaderArrow/HeaderArrow.js +2 -4
  25. package/cjs/components/Header/ui/HeaderArrow/HeaderArrow.js.map +1 -1
  26. package/cjs/components/IconButton/IconButton.css +7 -10
  27. package/cjs/components/IconButton/IconButton.styles.js +1 -1
  28. package/cjs/components/IconButton/{IconButton.styles_7v8g0e.css → IconButton.styles_1hknr37.css} +1 -1
  29. package/cjs/components/Notification/Notification.css +6 -9
  30. package/cjs/components/Notification/NotificationsProvider.css +6 -9
  31. package/cjs/components/Pagination/Pagination.css +8 -11
  32. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +6 -9
  33. package/cjs/components/Panel/ui/PanelHeader/PanelHeader.css +6 -9
  34. package/cjs/components/Range/Range.css +63 -0
  35. package/cjs/components/Range/Range.js +146 -0
  36. package/cjs/components/Range/Range.js.map +1 -0
  37. package/cjs/components/Range/Range.styles.js +63 -0
  38. package/cjs/components/Range/Range.styles.js.map +1 -0
  39. package/cjs/components/Range/Range.styles_mc4w65.css +8 -0
  40. package/cjs/components/Range/Range.tokens.js +106 -0
  41. package/cjs/components/Range/Range.tokens.js.map +1 -0
  42. package/cjs/components/Range/utils/index.js +24 -0
  43. package/cjs/components/Range/utils/index.js.map +1 -0
  44. package/cjs/components/Range/variations/_disabled/base.js +9 -0
  45. package/cjs/components/Range/variations/_disabled/base.js.map +1 -0
  46. package/cjs/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
  47. package/cjs/components/Range/variations/_readonly/base.js +9 -0
  48. package/cjs/components/Range/variations/_readonly/base.js.map +1 -0
  49. package/cjs/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
  50. package/cjs/components/Range/variations/_size/base.js +9 -0
  51. package/cjs/components/Range/variations/_size/base.js.map +1 -0
  52. package/cjs/components/Range/variations/_size/base_16xiubi.css +1 -0
  53. package/cjs/components/Range/variations/_view/base.js +9 -0
  54. package/cjs/components/Range/variations/_view/base.js.map +1 -0
  55. package/cjs/components/Range/variations/_view/base_5iz3nr.css +1 -0
  56. package/cjs/components/Select/Select.css +6 -9
  57. package/cjs/components/Select/ui/SelectTarget/SelectTarget.css +6 -9
  58. package/cjs/components/Slider/Slider.css +11 -9
  59. package/cjs/components/Slider/components/Double/Double.css +11 -9
  60. package/cjs/components/TextField/TextField.js +10 -10
  61. package/cjs/components/TextField/TextField.js.map +1 -1
  62. package/cjs/components/TextField/TextField.styles.js +13 -1
  63. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  64. package/cjs/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
  65. package/cjs/components/TextField/TextField.tokens.js +5 -0
  66. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  67. package/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
  68. package/cjs/components/TextField/variations/_label-placement/inner.js.map +1 -1
  69. package/cjs/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
  70. package/cjs/components/TextField/variations/_size/base.js +1 -1
  71. package/cjs/components/TextField/variations/_size/base.js.map +1 -1
  72. package/cjs/components/TextField/variations/_size/{base_1khzr9t.css → base_ntoddv.css} +1 -1
  73. package/cjs/components/TextField/variations/_view/base.js +1 -1
  74. package/cjs/components/TextField/variations/_view/base.js.map +1 -1
  75. package/cjs/components/TextField/variations/_view/{base_1qd77x6.css → base_19gxyva.css} +1 -1
  76. package/cjs/components/Toast/Toast.css +6 -9
  77. package/cjs/components/Toast/ToastController.css +6 -9
  78. package/cjs/index.css +37 -21
  79. package/cjs/index.js +5 -0
  80. package/cjs/index.js.map +1 -1
  81. package/es/components/Button/Button.css +6 -9
  82. package/es/components/Button/Button.js +3 -17
  83. package/es/components/Button/Button.js.map +1 -1
  84. package/es/components/Button/Button.styles.js +11 -29
  85. package/es/components/Button/Button.styles.js.map +1 -1
  86. package/es/components/Button/Button.styles_uqvh6u.css +5 -0
  87. package/es/components/Button/Button.tokens.js +0 -5
  88. package/es/components/Button/Button.tokens.js.map +1 -1
  89. package/es/components/Button/variations/_stretching/base.js +1 -1
  90. package/es/components/Button/variations/_stretching/base.js.map +1 -1
  91. package/{cjs/components/Button/variations/_stretching/base_hy8dc.css → es/components/Button/variations/_stretching/base_1lx0ute.css} +1 -1
  92. package/es/components/ButtonGroup/ButtonGroup.css +2 -2
  93. package/es/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  94. package/es/components/ButtonGroup/ButtonGroup.tokens.js.map +1 -1
  95. package/es/components/ButtonGroup/variations/_orientation/base.js +1 -1
  96. package/es/components/ButtonGroup/variations/_orientation/base.js.map +1 -1
  97. package/{cjs/components/ButtonGroup/variations/_orientation/base_y7z7cs.css → es/components/ButtonGroup/variations/_orientation/base_p85v51.css} +1 -1
  98. package/es/components/ButtonGroup/variations/_view/base.js +1 -1
  99. package/es/components/ButtonGroup/variations/_view/base.js.map +1 -1
  100. package/es/components/ButtonGroup/variations/_view/base_6k3uip.css +1 -0
  101. package/es/components/Drawer/Drawer.css +6 -9
  102. package/es/components/Drawer/ui/DrawerContent/DrawerContent.css +6 -9
  103. package/es/components/Header/ui/HeaderArrow/HeaderArrow.css +6 -9
  104. package/es/components/Header/ui/HeaderArrow/HeaderArrow.js +2 -4
  105. package/es/components/Header/ui/HeaderArrow/HeaderArrow.js.map +1 -1
  106. package/es/components/IconButton/IconButton.css +7 -10
  107. package/es/components/IconButton/IconButton.styles.js +1 -1
  108. package/es/components/IconButton/{IconButton.styles_7v8g0e.css → IconButton.styles_1hknr37.css} +1 -1
  109. package/es/components/Notification/Notification.css +6 -9
  110. package/es/components/Notification/NotificationsProvider.css +6 -9
  111. package/es/components/Pagination/Pagination.css +8 -11
  112. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +6 -9
  113. package/es/components/Panel/ui/PanelHeader/PanelHeader.css +6 -9
  114. package/es/components/Range/Range.css +63 -0
  115. package/es/components/Range/Range.js +141 -0
  116. package/es/components/Range/Range.js.map +1 -0
  117. package/es/components/Range/Range.styles.js +52 -0
  118. package/es/components/Range/Range.styles.js.map +1 -0
  119. package/es/components/Range/Range.styles_mc4w65.css +8 -0
  120. package/es/components/Range/Range.tokens.js +101 -0
  121. package/es/components/Range/Range.tokens.js.map +1 -0
  122. package/es/components/Range/utils/index.js +19 -0
  123. package/es/components/Range/utils/index.js.map +1 -0
  124. package/es/components/Range/variations/_disabled/base.js +5 -0
  125. package/es/components/Range/variations/_disabled/base.js.map +1 -0
  126. package/es/components/Range/variations/_disabled/base_1ufizo4.css +1 -0
  127. package/es/components/Range/variations/_readonly/base.js +5 -0
  128. package/es/components/Range/variations/_readonly/base.js.map +1 -0
  129. package/es/components/Range/variations/_readonly/base_tzdxy8.css +1 -0
  130. package/es/components/Range/variations/_size/base.js +5 -0
  131. package/es/components/Range/variations/_size/base.js.map +1 -0
  132. package/es/components/Range/variations/_size/base_16xiubi.css +1 -0
  133. package/es/components/Range/variations/_view/base.js +5 -0
  134. package/es/components/Range/variations/_view/base.js.map +1 -0
  135. package/es/components/Range/variations/_view/base_5iz3nr.css +1 -0
  136. package/es/components/Select/Select.css +6 -9
  137. package/es/components/Select/ui/SelectTarget/SelectTarget.css +6 -9
  138. package/es/components/Slider/Slider.css +11 -9
  139. package/es/components/Slider/components/Double/Double.css +11 -9
  140. package/es/components/TextField/TextField.js +11 -11
  141. package/es/components/TextField/TextField.js.map +1 -1
  142. package/es/components/TextField/TextField.styles.js +12 -2
  143. package/es/components/TextField/TextField.styles.js.map +1 -1
  144. package/es/components/TextField/{TextField.styles_1b1mddp.css → TextField.styles_aqmut.css} +2 -0
  145. package/es/components/TextField/TextField.tokens.js +5 -0
  146. package/es/components/TextField/TextField.tokens.js.map +1 -1
  147. package/es/components/TextField/variations/_label-placement/inner.js +1 -1
  148. package/es/components/TextField/variations/_label-placement/inner.js.map +1 -1
  149. package/es/components/TextField/variations/_label-placement/inner_7c08qb.css +1 -0
  150. package/es/components/TextField/variations/_size/base.js +1 -1
  151. package/es/components/TextField/variations/_size/base.js.map +1 -1
  152. package/es/components/TextField/variations/_size/{base_1khzr9t.css → base_ntoddv.css} +1 -1
  153. package/es/components/TextField/variations/_view/base.js +1 -1
  154. package/es/components/TextField/variations/_view/base.js.map +1 -1
  155. package/es/components/TextField/variations/_view/{base_1qd77x6.css → base_19gxyva.css} +1 -1
  156. package/es/components/Toast/Toast.css +6 -9
  157. package/es/components/Toast/ToastController.css +6 -9
  158. package/es/index.css +37 -21
  159. package/es/index.js +2 -0
  160. package/es/index.js.map +1 -1
  161. package/package.json +2 -2
  162. package/styled-components/cjs/components/Button/Button.js +2 -16
  163. package/styled-components/cjs/components/Button/Button.styles.js +12 -20
  164. package/styled-components/cjs/components/Button/Button.template-doc.mdx +0 -47
  165. package/styled-components/cjs/components/Button/Button.tokens.js +0 -5
  166. package/styled-components/cjs/components/Button/variations/_stretching/base.js +1 -1
  167. package/styled-components/cjs/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  168. package/styled-components/cjs/components/ButtonGroup/variations/_orientation/base.js +1 -2
  169. package/styled-components/cjs/components/ButtonGroup/variations/_view/base.js +1 -1
  170. package/styled-components/cjs/components/Header/ui/HeaderArrow/HeaderArrow.js +2 -4
  171. package/styled-components/cjs/components/Range/Range.js +148 -0
  172. package/styled-components/cjs/components/Range/Range.styles.js +39 -0
  173. package/styled-components/cjs/components/Range/Range.template-doc.mdx +323 -0
  174. package/styled-components/cjs/components/Range/Range.tokens.js +104 -0
  175. package/styled-components/cjs/components/Range/Range.types.js +5 -0
  176. package/styled-components/cjs/components/Range/index.js +25 -0
  177. package/styled-components/cjs/components/Range/utils/index.js +22 -0
  178. package/styled-components/cjs/components/Range/variations/_disabled/base.js +9 -0
  179. package/styled-components/cjs/components/Range/variations/_disabled/tokens.json +4 -0
  180. package/styled-components/cjs/components/Range/variations/_readonly/base.js +10 -0
  181. package/styled-components/cjs/components/Range/variations/_readonly/tokens.json +4 -0
  182. package/styled-components/cjs/components/Range/variations/_size/base.js +10 -0
  183. package/styled-components/cjs/components/Range/variations/_size/tokens.json +26 -0
  184. package/styled-components/cjs/components/Range/variations/_view/base.js +10 -0
  185. package/styled-components/cjs/components/Range/variations/_view/tokens.json +6 -0
  186. package/styled-components/cjs/components/TextField/TextField.js +10 -10
  187. package/styled-components/cjs/components/TextField/TextField.styles.js +7 -1
  188. package/styled-components/cjs/components/TextField/TextField.tokens.js +5 -0
  189. package/styled-components/cjs/components/TextField/variations/_label-placement/inner.js +1 -1
  190. package/styled-components/cjs/components/TextField/variations/_size/base.js +1 -1
  191. package/styled-components/cjs/components/TextField/variations/_view/base.js +1 -1
  192. package/styled-components/cjs/examples/plasma_b2c/components/Button/Button.config.js +19 -19
  193. package/styled-components/cjs/examples/plasma_b2c/components/Button/Button.stories.tsx +21 -67
  194. package/styled-components/cjs/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +10 -10
  195. package/styled-components/cjs/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  196. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.config.js +31 -0
  197. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.js +11 -0
  198. package/styled-components/cjs/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
  199. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
  200. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
  201. package/styled-components/cjs/examples/plasma_web/components/Button/Button.config.js +19 -19
  202. package/styled-components/cjs/examples/plasma_web/components/Button/Button.stories.tsx +28 -90
  203. package/styled-components/cjs/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +10 -10
  204. package/styled-components/cjs/examples/plasma_web/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  205. package/styled-components/cjs/examples/plasma_web/components/Range/Range.config.js +31 -0
  206. package/styled-components/cjs/examples/plasma_web/components/Range/Range.js +11 -0
  207. package/styled-components/cjs/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
  208. package/styled-components/cjs/examples/sds_engineer/components/Button/Button.config.js +19 -19
  209. package/styled-components/cjs/examples/sds_engineer/components/Button/Button.stories.tsx +28 -90
  210. package/styled-components/cjs/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +10 -10
  211. package/styled-components/cjs/examples/sds_engineer/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  212. package/styled-components/cjs/index.js +11 -0
  213. package/styled-components/es/components/Button/Button.js +3 -17
  214. package/styled-components/es/components/Button/Button.styles.js +11 -19
  215. package/styled-components/es/components/Button/Button.template-doc.mdx +0 -47
  216. package/styled-components/es/components/Button/Button.tokens.js +0 -5
  217. package/styled-components/es/components/Button/variations/_stretching/base.js +1 -1
  218. package/styled-components/es/components/ButtonGroup/ButtonGroup.tokens.js +0 -1
  219. package/styled-components/es/components/ButtonGroup/variations/_orientation/base.js +2 -3
  220. package/styled-components/es/components/ButtonGroup/variations/_view/base.js +1 -1
  221. package/styled-components/es/components/Header/ui/HeaderArrow/HeaderArrow.js +2 -4
  222. package/styled-components/es/components/Range/Range.js +139 -0
  223. package/styled-components/es/components/Range/Range.styles.js +31 -0
  224. package/styled-components/es/components/Range/Range.template-doc.mdx +323 -0
  225. package/styled-components/es/components/Range/Range.tokens.js +98 -0
  226. package/styled-components/es/components/Range/Range.types.js +1 -0
  227. package/styled-components/es/components/Range/index.js +2 -0
  228. package/styled-components/es/components/Range/utils/index.js +16 -0
  229. package/styled-components/es/components/Range/variations/_disabled/base.js +3 -0
  230. package/styled-components/es/components/Range/variations/_disabled/tokens.json +4 -0
  231. package/styled-components/es/components/Range/variations/_readonly/base.js +4 -0
  232. package/styled-components/es/components/Range/variations/_readonly/tokens.json +4 -0
  233. package/styled-components/es/components/Range/variations/_size/base.js +4 -0
  234. package/styled-components/es/components/Range/variations/_size/tokens.json +26 -0
  235. package/styled-components/es/components/Range/variations/_view/base.js +4 -0
  236. package/styled-components/es/components/Range/variations/_view/tokens.json +6 -0
  237. package/styled-components/es/components/TextField/TextField.js +11 -11
  238. package/styled-components/es/components/TextField/TextField.styles.js +6 -0
  239. package/styled-components/es/components/TextField/TextField.tokens.js +5 -0
  240. package/styled-components/es/components/TextField/variations/_label-placement/inner.js +2 -2
  241. package/styled-components/es/components/TextField/variations/_size/base.js +2 -2
  242. package/styled-components/es/components/TextField/variations/_view/base.js +2 -2
  243. package/styled-components/es/examples/plasma_b2c/components/Button/Button.config.js +19 -19
  244. package/styled-components/es/examples/plasma_b2c/components/Button/Button.stories.tsx +21 -67
  245. package/styled-components/es/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.js +10 -10
  246. package/styled-components/es/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  247. package/styled-components/es/examples/plasma_b2c/components/Range/Range.config.js +25 -0
  248. package/styled-components/es/examples/plasma_b2c/components/Range/Range.js +5 -0
  249. package/styled-components/es/examples/plasma_b2c/components/Range/Range.stories.tsx +312 -0
  250. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +8 -8
  251. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +2 -0
  252. package/styled-components/es/examples/plasma_web/components/Button/Button.config.js +19 -19
  253. package/styled-components/es/examples/plasma_web/components/Button/Button.stories.tsx +28 -90
  254. package/styled-components/es/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.js +10 -10
  255. package/styled-components/es/examples/plasma_web/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  256. package/styled-components/es/examples/plasma_web/components/Range/Range.config.js +25 -0
  257. package/styled-components/es/examples/plasma_web/components/Range/Range.js +5 -0
  258. package/styled-components/es/examples/plasma_web/components/Range/Range.stories.tsx +312 -0
  259. package/styled-components/es/examples/sds_engineer/components/Button/Button.config.js +19 -19
  260. package/styled-components/es/examples/sds_engineer/components/Button/Button.stories.tsx +28 -90
  261. package/styled-components/es/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.js +10 -10
  262. package/styled-components/es/examples/sds_engineer/components/ButtonGroup/ButtonGroup.stories.tsx +1 -1
  263. package/styled-components/es/index.js +2 -1
  264. package/types/components/Button/Button.d.ts.map +1 -1
  265. package/types/components/Button/Button.styles.d.ts +1 -5
  266. package/types/components/Button/Button.styles.d.ts.map +1 -1
  267. package/types/components/Button/Button.tokens.d.ts +0 -5
  268. package/types/components/Button/Button.tokens.d.ts.map +1 -1
  269. package/types/components/Button/Button.types.d.ts +4 -28
  270. package/types/components/Button/Button.types.d.ts.map +1 -1
  271. package/types/components/ButtonGroup/ButtonGroup.tokens.d.ts +0 -1
  272. package/types/components/ButtonGroup/ButtonGroup.tokens.d.ts.map +1 -1
  273. package/types/components/ButtonGroup/variations/_orientation/base.d.ts.map +1 -1
  274. package/types/components/ButtonGroup/variations/_view/base.d.ts.map +1 -1
  275. package/types/components/Header/ui/HeaderArrow/HeaderArrow.d.ts.map +1 -1
  276. package/types/components/Notification/Notification.styles.d.ts +1 -43
  277. package/types/components/Notification/Notification.styles.d.ts.map +1 -1
  278. package/types/components/Pagination/Pagination.styles.d.ts +2 -86
  279. package/types/components/Pagination/Pagination.styles.d.ts.map +1 -1
  280. package/types/components/Panel/ui/PanelHeader/PanelHeader.styles.d.ts +1 -43
  281. package/types/components/Panel/ui/PanelHeader/PanelHeader.styles.d.ts.map +1 -1
  282. package/types/components/Range/Range.d.ts +31 -0
  283. package/types/components/Range/Range.d.ts.map +1 -0
  284. package/types/components/Range/Range.styles.d.ts +48 -0
  285. package/types/components/Range/Range.styles.d.ts.map +1 -0
  286. package/types/components/Range/Range.tokens.d.ts +99 -0
  287. package/types/components/Range/Range.tokens.d.ts.map +1 -0
  288. package/types/components/Range/Range.types.d.ts +143 -0
  289. package/types/components/Range/Range.types.d.ts.map +1 -0
  290. package/types/components/Range/index.d.ts +4 -0
  291. package/types/components/Range/index.d.ts.map +1 -0
  292. package/types/components/Range/utils/index.d.ts +5 -0
  293. package/types/components/Range/utils/index.d.ts.map +1 -0
  294. package/types/components/Range/variations/_disabled/base.d.ts +2 -0
  295. package/types/components/Range/variations/_disabled/base.d.ts.map +1 -0
  296. package/types/components/Range/variations/_readonly/base.d.ts +2 -0
  297. package/types/components/Range/variations/_readonly/base.d.ts.map +1 -0
  298. package/types/components/Range/variations/_size/base.d.ts +2 -0
  299. package/types/components/Range/variations/_size/base.d.ts.map +1 -0
  300. package/types/components/Range/variations/_view/base.d.ts +2 -0
  301. package/types/components/Range/variations/_view/base.d.ts.map +1 -0
  302. package/types/components/Select/ui/SelectTarget/SelectTarget.styles.d.ts +1 -43
  303. package/types/components/Select/ui/SelectTarget/SelectTarget.styles.d.ts.map +1 -1
  304. package/types/components/Slider/components/Double/Double.styles.d.ts +4 -0
  305. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  306. package/types/components/TextField/TextField.d.ts.map +1 -1
  307. package/types/components/TextField/TextField.styles.d.ts +2 -0
  308. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  309. package/types/components/TextField/TextField.tokens.d.ts +5 -0
  310. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  311. package/types/components/TextField/TextField.types.d.ts +8 -0
  312. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  313. package/types/components/TextField/variations/_label-placement/inner.d.ts.map +1 -1
  314. package/types/components/TextField/variations/_size/base.d.ts.map +1 -1
  315. package/types/components/TextField/variations/_view/base.d.ts.map +1 -1
  316. package/types/components/Toast/Toast.styles.d.ts +1 -43
  317. package/types/components/Toast/Toast.styles.d.ts.map +1 -1
  318. package/types/components/Toast/utils.d.ts +1 -43
  319. package/types/components/Toast/utils.d.ts.map +1 -1
  320. package/types/examples/plasma_b2c/components/Button/Button.config.d.ts.map +1 -1
  321. package/types/examples/plasma_b2c/components/Button/Button.d.ts +1 -43
  322. package/types/examples/plasma_b2c/components/Button/Button.d.ts.map +1 -1
  323. package/types/examples/plasma_b2c/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  324. package/types/examples/plasma_b2c/components/IconButton/IconButton.d.ts +1 -43
  325. package/types/examples/plasma_b2c/components/IconButton/IconButton.d.ts.map +1 -1
  326. package/types/examples/plasma_b2c/components/Range/Range.config.d.ts +24 -0
  327. package/types/examples/plasma_b2c/components/Range/Range.config.d.ts.map +1 -0
  328. package/types/examples/plasma_b2c/components/Range/Range.d.ts +127 -0
  329. package/types/examples/plasma_b2c/components/Range/Range.d.ts.map +1 -0
  330. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
  331. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +4 -0
  332. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  333. package/types/examples/plasma_web/components/Button/Button.config.d.ts.map +1 -1
  334. package/types/examples/plasma_web/components/Button/Button.d.ts +1 -43
  335. package/types/examples/plasma_web/components/Button/Button.d.ts.map +1 -1
  336. package/types/examples/plasma_web/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  337. package/types/examples/plasma_web/components/IconButton/IconButton.d.ts +1 -43
  338. package/types/examples/plasma_web/components/IconButton/IconButton.d.ts.map +1 -1
  339. package/types/examples/plasma_web/components/Range/Range.config.d.ts +24 -0
  340. package/types/examples/plasma_web/components/Range/Range.config.d.ts.map +1 -0
  341. package/types/examples/plasma_web/components/Range/Range.d.ts +127 -0
  342. package/types/examples/plasma_web/components/Range/Range.d.ts.map +1 -0
  343. package/types/examples/plasma_web/components/TextField/TextField.d.ts +4 -0
  344. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  345. package/types/examples/sds_engineer/components/Button/Button.config.d.ts.map +1 -1
  346. package/types/examples/sds_engineer/components/Button/Button.d.ts +1 -43
  347. package/types/examples/sds_engineer/components/Button/Button.d.ts.map +1 -1
  348. package/types/examples/sds_engineer/components/ButtonGroup/ButtonGroup.config.d.ts.map +1 -1
  349. package/types/examples/sds_engineer/components/TextField/TextField.d.ts +4 -0
  350. package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -1
  351. package/types/index.d.ts +1 -0
  352. package/types/index.d.ts.map +1 -1
  353. package/cjs/components/Button/Button.styles_1oz1dew.css +0 -8
  354. package/cjs/components/ButtonGroup/variations/_view/base_1n9gznw.css +0 -1
  355. package/cjs/components/TextField/variations/_label-placement/inner_gqlcj2.css +0 -1
  356. package/es/components/Button/Button.styles_1oz1dew.css +0 -8
  357. package/es/components/ButtonGroup/variations/_view/base_1n9gznw.css +0 -1
  358. package/es/components/TextField/variations/_label-placement/inner_gqlcj2.css +0 -1
@@ -1,117 +1,55 @@
1
- import * as React from 'react';
2
- import type { ComponentProps } from 'react';
1
+ import { ComponentProps } from 'react';
3
2
  import type { StoryObj, Meta } from '@storybook/react';
4
- import { disableProps } from '@salutejs/plasma-sb-utils';
5
3
 
6
- import { IconMic } from '../../../../components/_Icon';
7
- import { WithTheme } from '../../../_helpers';
4
+ import { buttonConfig } from '../../../../components/Button';
5
+ import { mergeConfig } from '../../../../engines';
6
+ import { WithTheme, argTypesFromConfig } from '../../../_helpers';
8
7
 
8
+ import { config } from './Button.config';
9
9
  import { Button } from './Button';
10
10
 
11
- const views = ['default', 'accent', 'positive', 'warning', 'negative', 'dark', 'light'];
12
- const sizes = ['l', 'm', 's', 'xs', 'xxs'];
13
- const stretchingValues = ['auto', 'filled', 'fixed'];
14
- const pinValues = [
15
- '',
16
- 'square-square',
17
- 'square-clear',
18
- 'clear-square',
19
- 'clear-clear',
20
- 'clear-circle',
21
- 'circle-clear',
22
- 'circle-circle',
23
- ];
24
- const contentPlacinValues = ['default', 'relaxed'];
25
-
26
11
  const meta: Meta<typeof Button> = {
27
12
  title: 'plasma_web/Button',
28
13
  decorators: [WithTheme],
29
14
  component: Button,
30
- args: {
31
- view: 'default',
32
- size: 'm',
33
- contentPlacing: 'default',
34
- stretching: 'auto',
35
- text: 'Hello',
36
- value: 'Value',
37
- disabled: false,
38
- focused: true,
39
- square: false,
40
- isLoading: false,
41
- },
42
15
  argTypes: {
43
- view: {
44
- options: views,
45
- control: {
46
- type: 'select',
47
- },
48
- },
49
- size: {
50
- options: sizes,
51
- control: {
52
- type: 'select',
53
- },
54
- },
55
- contentPlacing: {
56
- options: contentPlacinValues,
16
+ ...argTypesFromConfig(mergeConfig(buttonConfig, config)),
17
+ pin: {
18
+ options: [
19
+ 'square-square',
20
+ 'square-clear',
21
+ 'clear-square',
22
+ 'clear-clear',
23
+ 'clear-circle',
24
+ 'circle-clear',
25
+ 'circle-circle',
26
+ '',
27
+ ],
57
28
  control: {
58
29
  type: 'select',
59
30
  },
31
+ table: { defaultValue: { summary: 'bottom' } },
60
32
  },
61
33
  stretching: {
62
- options: stretchingValues,
63
- control: {
64
- type: 'select',
65
- },
66
- },
67
- pin: {
68
- options: pinValues,
34
+ options: ['auto', 'filled', 'fixed'],
69
35
  control: {
70
36
  type: 'select',
71
37
  },
72
- table: { defaultValue: { summary: 'bottom' } },
73
38
  },
74
39
  },
75
40
  };
76
41
 
77
42
  export default meta;
78
43
 
79
- type StoryPropsDefault = ComponentProps<typeof Button> & {
80
- enableContentLeft: boolean;
81
- enableContentRight: boolean;
82
- };
83
-
84
- const StoryDefault = ({ enableContentLeft, enableContentRight, size, ...rest }: StoryPropsDefault) => {
85
- const iconSize = size === 'xs' ? 'xs' : 's';
86
-
87
- return (
88
- <Button
89
- contentLeft={enableContentLeft ? <IconMic size={iconSize} color="inherit" /> : undefined}
90
- contentRight={enableContentRight ? <IconMic size={iconSize} color="inherit" /> : undefined}
91
- size={size}
92
- {...rest}
93
- />
94
- );
95
- };
96
-
97
- export const Default: StoryObj<StoryPropsDefault> = {
44
+ export const Default: StoryObj<ComponentProps<typeof Button>> = {
98
45
  args: {
99
- enableContentLeft: false,
100
- enableContentRight: false,
101
- },
102
- render: (args) => <StoryDefault {...args} />,
103
- };
104
-
105
- export const AccessibilityWithChildren: StoryObj<ComponentProps<typeof Button>> = {
106
- argTypes: { ...disableProps(['text']) },
107
- render: (props: ComponentProps<typeof Button>) => {
108
- const args = { ...props, text: undefined };
109
-
110
- return (
111
- <Button {...args}>
112
- <IconMic color="inherit" />
113
- <span>Включить микрофон</span>
114
- </Button>
115
- );
46
+ children: 'Hello',
47
+ view: 'default',
48
+ size: 'm',
49
+ disabled: false,
50
+ focused: true,
51
+ square: false,
52
+ stretching: 'auto',
53
+ isLoading: false,
116
54
  },
117
55
  };
@@ -7,16 +7,16 @@ export var config = {
7
7
  },
8
8
  variations: {
9
9
  view: {
10
- "default": /*#__PURE__*/css(["", ":var(--inverse-text-primary);", ":var(--inverse-text-secondary);", ":var(--surface-solid-default);", ":var(--inverse-text-primary);", ":var(--surface-solid-default-hover);", ":var(--inverse-text-primary);", ":var(--surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
11
- accent: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--surface-accent);", ":var(--on-dark-text-primary);", ":var(--surface-accent-hover);", ":var(--on-dark-text-primary);", ":var(--surface-accent-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
12
- secondary: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
13
- clear: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-clear);", ":var(--text-primary-hover);", ":var(--surface-clear);", ":var(--text-primary-active);", ":var(--surface-clear);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
14
- positive: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--surface-positive);", ":var(--on-dark-text-primary);", ":var(--surface-positive-hover);", ":var(--on-dark-text-primary);", ":var(--surface-positive-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
15
- warning: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--surface-warning);", ":var(--on-dark-text-primary);", ":var(--surface-warning-hover);", ":var(--on-dark-text-primary);", ":var(--surface-warning-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
16
- negative: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--surface-negative);", ":var(--on-dark-text-primary);", ":var(--surface-negative-hover);", ":var(--on-dark-text-primary);", ":var(--surface-negative-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
17
- dark: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--on-light-surface-transparent-deep);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-transparent-deep-hover);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-transparent-deep-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
18
- black: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-text-secondary);", ":var(--on-light-surface-solid-default);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-solid-default-hover);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
19
- white: /*#__PURE__*/css(["", ":var(--on-light-text-primary);", ":var(--on-light-text-secondary);", ":var(--on-dark-surface-solid-default);", ":var(--on-light-text-primary);", ":var(--on-dark-surface-solid-default-hover);", ":var(--on-light-text-primary);", ":var(--on-dark-surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonValueColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive)
10
+ "default": /*#__PURE__*/css(["", ":var(--inverse-text-primary);", ":var(--surface-solid-default);", ":var(--inverse-text-primary);", ":var(--surface-solid-default-hover);", ":var(--inverse-text-primary);", ":var(--surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
11
+ accent: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--surface-accent);", ":var(--on-dark-text-primary);", ":var(--surface-accent-hover);", ":var(--on-dark-text-primary);", ":var(--surface-accent-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
12
+ secondary: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
13
+ clear: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--text-primary-hover);", ":var(--surface-clear);", ":var(--text-primary-active);", ":var(--surface-clear);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
14
+ positive: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--surface-positive);", ":var(--on-dark-text-primary);", ":var(--surface-positive-hover);", ":var(--on-dark-text-primary);", ":var(--surface-positive-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
15
+ warning: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--surface-warning);", ":var(--on-dark-text-primary);", ":var(--surface-warning-hover);", ":var(--on-dark-text-primary);", ":var(--surface-warning-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
16
+ negative: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--surface-negative);", ":var(--on-dark-text-primary);", ":var(--surface-negative-hover);", ":var(--on-dark-text-primary);", ":var(--surface-negative-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
17
+ dark: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-light-surface-transparent-deep);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-transparent-deep-hover);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-transparent-deep-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
18
+ black: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-light-surface-solid-default);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-solid-default-hover);", ":var(--on-dark-text-primary);", ":var(--on-light-surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive),
19
+ white: /*#__PURE__*/css(["", ":var(--on-light-text-primary);", ":var(--on-dark-surface-solid-default);", ":var(--on-light-text-primary);", ":var(--on-dark-surface-solid-default-hover);", ":var(--on-light-text-primary);", ":var(--on-dark-surface-solid-default-active);"], buttonGroupTokens.buttonColor, buttonGroupTokens.buttonBackgroundColor, buttonGroupTokens.buttonColorHover, buttonGroupTokens.buttonBackgroundColorHover, buttonGroupTokens.buttonColorActive, buttonGroupTokens.buttonBackgroundColorActive)
20
20
  },
21
21
  size: {
22
22
  l: /*#__PURE__*/css(["", ":0.875rem;", ":0.375rem;", ":0.875rem;", ":3.5rem;", ":1.5rem;", ":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-bold-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], buttonGroupTokens.buttonDefaultRadius, buttonGroupTokens.buttonSegmentedRadius, buttonGroupTokens.buttonSideRadius, buttonGroupTokens.buttonHeight, buttonGroupTokens.buttonPadding, buttonGroupTokens.buttonFontFamily, buttonGroupTokens.buttonFontSize, buttonGroupTokens.buttonFontStyle, buttonGroupTokens.buttonFontWeight, buttonGroupTokens.buttonLetterSpacing, buttonGroupTokens.buttonLineHeight),
@@ -11,7 +11,7 @@ import { ButtonGroup } from './ButtonGroup';
11
11
  type StoryProps = ComponentProps<typeof ButtonGroup> & { itemsCount?: number };
12
12
  type Story = StoryObj<StoryProps>;
13
13
 
14
- const views = ['accent', 'default', 'secondary', 'positive', 'warning', 'negative', 'clear'];
14
+ const views = ['accent', 'default', 'secondary', 'success', 'warning', 'critical', 'clear'];
15
15
  const sizes = ['l', 'm', 's', 'xs', 'xxs'];
16
16
  const orientationValues = ['horizontal', 'vertical'];
17
17
  const gapValues = ['none', 'dense', 'wide'];
@@ -0,0 +1,25 @@
1
+ import { css } from 'styled-components';
2
+ import { rangeTokens as tokens } from '../../../../components/Range';
3
+ export var config = {
4
+ defaults: {
5
+ view: 'default',
6
+ size: 'l'
7
+ },
8
+ variations: {
9
+ view: {
10
+ "default": /*#__PURE__*/css(["", ":var(--surface-clear);", ":var(--surface-transparent-tertiary);", ":var(--surface-negative);", ":var(--surface-positive);", ":var(--text-primary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-accent);", ":var(--surface-accent);", ":var(--surface-negative);", ":var(--surface-accent);", ":var(--surface-positive);", ":var(--surface-accent);", ":var(--text-tertiary);", ":var(--text-tertiary);", ":var(--text-accent);"], tokens.background, tokens.borderColor, tokens.borderColorError, tokens.borderColorSuccess, tokens.dividerColor, tokens.labelColor, tokens.leftHelperColor, tokens.textFieldColor, tokens.textFieldPlaceholderColor, tokens.textFieldCaretColor, tokens.textFieldBorderColorFocus, tokens.textFieldBorderColorError, tokens.textFieldBorderColorErrorFocus, tokens.textFieldBorderColorSuccess, tokens.textFieldBorderColorSuccessFocus, tokens.textFieldTextBeforeColor, tokens.textFieldTextAfterColor, tokens.focusColor)
11
+ },
12
+ size: {
13
+ l: /*#__PURE__*/css(["", ":0.875rem;", ":0.0625rem;", ":0 0.375rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0 0.375rem 0 1rem;", ":0;", ":0 0 0.75rem 0;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":3.5rem;", ":0.875rem;", ":0.0625rem;", ":1.0625rem 1.125rem 1.0625rem 1.125rem;", ":var(--plasma-typo-body-l-font-family);", ":var(--plasma-typo-body-l-font-style);", ":var(--plasma-typo-body-l-font-size);", ":var(--plasma-typo-body-l-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.5rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.borderWidth, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldBorderWidth, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
14
+ m: /*#__PURE__*/css(["", ":0.75rem;", ":0.0625rem;", ":0 0.375rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0 0.375rem 0 0.875rem;", ":0;", ":0 0 0.625rem 0;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":3rem;", ":0.75rem;", ":0.0625rem;", ":0.875rem 1rem 0.875rem 1rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.125rem 0.375rem -0.125rem -0.125rem;", ":-0.125rem -0.125rem -0.125rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.borderWidth, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldBorderWidth, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
15
+ s: /*#__PURE__*/css(["", ":0.625rem;", ":0.0625rem;", ":0 0.375rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0 0.375rem 0 0.75rem;", ":0;", ":0 0 0.5rem 0;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":2.5rem;", ":0.625rem;", ":0.0625rem;", ":0.6875rem 0.875rem 0.6875rem 0.875rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.1875rem 0.25rem -0.1875rem -0.125rem;", ":-0.1875rem -0.125rem -0.1875rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.borderWidth, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldBorderWidth, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin),
16
+ xs: /*#__PURE__*/css(["", ":0.5rem;", ":0.0625rem;", ":0 0.375rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":0 0.25rem 0 0.5rem;", ":0;", ":0 0 0.375rem 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":2rem;", ":0.5rem;", ":0.0625rem;", ":0.5625rem 0.625rem 0.5625rem 0.625rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":0.25rem 0 0 0;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.25rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":0 0.25rem 0 0;", ":0 0 0 0.25rem;"], tokens.borderRadius, tokens.borderWidth, tokens.dividerPadding, tokens.dividerFontFamily, tokens.dividerFontStyle, tokens.dividerFontSize, tokens.dividerFontWeight, tokens.dividerLetterSpacing, tokens.dividerLineHeight, tokens.leftContentMargin, tokens.rightContentMargin, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontStyle, tokens.labelFontSize, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.textFieldHeight, tokens.textFieldBorderRadius, tokens.textFieldBorderWidth, tokens.textFieldPadding, tokens.textFieldFontFamily, tokens.textFieldFontStyle, tokens.textFieldFontSize, tokens.textFieldFontWeight, tokens.textFieldLetterSpacing, tokens.textFieldLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontStyle, tokens.leftHelperFontSize, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.textFieldLeftContentMargin, tokens.textFieldRightContentMargin, tokens.textFieldTextBeforeMargin, tokens.textFieldTextAfterMargin)
17
+ },
18
+ disabled: {
19
+ "true": /*#__PURE__*/css(["", ":0.4;"], tokens.disabledOpacity)
20
+ },
21
+ readOnly: {
22
+ "true": /*#__PURE__*/css(["", ":var(--surface-clear);", ":var(--surface-transparent-tertiary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);", ":transparent;", ":var(--text-secondary);"], tokens.backgroundReadOnly, tokens.borderColorReadOnly, tokens.labelColorReadOnly, tokens.leftHelperColorReadOnly, tokens.dividerColorReadOnly, tokens.textFieldColorReadOnly, tokens.textFieldBackgroundColorReadOnly, tokens.textFieldPlaceholderColorReadOnly)
23
+ }
24
+ }
25
+ };
@@ -0,0 +1,5 @@
1
+ import { component, mergeConfig } from '../../../../engines';
2
+ import { rangeConfig } from '../../../../components/Range';
3
+ import { config } from './Range.config';
4
+ var mergedConfig = /*#__PURE__*/mergeConfig(rangeConfig, config);
5
+ export var Range = /*#__PURE__*/component(mergedConfig);
@@ -0,0 +1,312 @@
1
+ import React, { ChangeEvent, ComponentProps, Dispatch, SetStateAction, useState } from 'react';
2
+ import type { StoryObj, Meta } from '@storybook/react';
3
+ import { action } from '@storybook/addon-actions';
4
+ import { IconPlaceholder } from '@salutejs/plasma-sb-utils';
5
+
6
+ import { WithTheme } from '../../../_helpers';
7
+ import { IconChevronLeft } from '../../../../components/_Icon';
8
+ import { IconButton } from '../IconButton/IconButton';
9
+
10
+ import { Range } from './Range';
11
+
12
+ const onChangeFirstValue = action('onChangeFirstValue');
13
+ const onChangeSecondValue = action('onChangeSecondValue');
14
+ const onSearchFirstValue = action('onSearchFirstValue');
15
+ const onSearchSecondValue = action('onSearchSecondValue');
16
+ const onFocusFirstTextfield = action('onFocusFirstTextfield');
17
+ const onFocusSecondTextfield = action('onFocusSecondTextfield');
18
+ const onBlurFirstTextfield = action('onBlurFirstTextfield');
19
+ const onBlurSecondTextfield = action('onBlurSecondTextfield');
20
+
21
+ const sizes = ['l', 'm', 's', 'xs'];
22
+ const views = ['default'];
23
+ const dividers = ['none', 'dash', 'icon'];
24
+
25
+ const meta: Meta<typeof Range> = {
26
+ title: 'plasma_web/Range',
27
+ component: Range,
28
+ decorators: [WithTheme],
29
+ argTypes: {
30
+ view: {
31
+ options: views,
32
+ control: {
33
+ type: 'inline-radio',
34
+ },
35
+ },
36
+ size: {
37
+ options: sizes,
38
+ control: {
39
+ type: 'inline-radio',
40
+ },
41
+ },
42
+ },
43
+ };
44
+
45
+ export default meta;
46
+
47
+ type StoryPropsDefault = ComponentProps<typeof Range> & {
48
+ enableContentLeft: boolean;
49
+ enableContentRight: boolean;
50
+ enableFirstTextfieldContentLeft: boolean;
51
+ enableSecondTextfieldContentLeft: boolean;
52
+ enableFirstTextfieldContentRight: boolean;
53
+ enableSecondTextfieldContentRight: boolean;
54
+ };
55
+
56
+ const getSizeForIcon = (size) => {
57
+ const map = {
58
+ m: 's',
59
+ l: 's',
60
+ s: 's',
61
+ xs: 'xs',
62
+ };
63
+ if (map[size]) {
64
+ return map[size];
65
+ }
66
+
67
+ return size;
68
+ };
69
+
70
+ const ActionButton = ({ size }) => {
71
+ return (
72
+ <IconButton view="clear" size={size}>
73
+ <IconChevronLeft size={getSizeForIcon(size)} />
74
+ </IconButton>
75
+ );
76
+ };
77
+
78
+ const StoryDefault = ({
79
+ dividerVariant,
80
+ enableContentLeft,
81
+ enableContentRight,
82
+ firstTextfieldTextBefore,
83
+ secondTextfieldTextBefore,
84
+ enableFirstTextfieldContentLeft,
85
+ enableSecondTextfieldContentLeft,
86
+ enableFirstTextfieldContentRight,
87
+ enableSecondTextfieldContentRight,
88
+ size,
89
+ ...rest
90
+ }: StoryPropsDefault) => {
91
+ const [firstValue, setFirstValue] = useState('');
92
+ const [secondValue, setSecondValue] = useState('');
93
+
94
+ const iconSize = size === 'xs' ? 'xs' : 's';
95
+ const showDividerIcon = dividerVariant === 'icon';
96
+ const showDefaultTextBefore = dividerVariant === 'none';
97
+
98
+ const dividerIconProps = {
99
+ dividerIcon: showDividerIcon ? <IconPlaceholder size="s" /> : null,
100
+ dividerVariant,
101
+ };
102
+
103
+ return (
104
+ <Range
105
+ size={size}
106
+ firstValue={firstValue}
107
+ secondValue={secondValue}
108
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
109
+ contentRight={enableContentRight ? <ActionButton size={size} /> : undefined}
110
+ firstTextfieldContentLeft={
111
+ enableFirstTextfieldContentLeft ? <IconPlaceholder size={iconSize} /> : undefined
112
+ }
113
+ firstTextfieldContentRight={
114
+ enableFirstTextfieldContentRight ? <IconPlaceholder size={iconSize} /> : undefined
115
+ }
116
+ secondTextfieldContentLeft={
117
+ enableSecondTextfieldContentLeft ? <IconPlaceholder size={iconSize} /> : undefined
118
+ }
119
+ secondTextfieldContentRight={
120
+ enableSecondTextfieldContentRight ? <IconPlaceholder size={iconSize} /> : undefined
121
+ }
122
+ firstTextfieldTextBefore={
123
+ showDefaultTextBefore ? firstTextfieldTextBefore || 'С' : firstTextfieldTextBefore
124
+ }
125
+ secondTextfieldTextBefore={
126
+ showDefaultTextBefore ? secondTextfieldTextBefore || 'ПО' : secondTextfieldTextBefore
127
+ }
128
+ onChangeFirstValue={(e) => {
129
+ setFirstValue(e.target.value);
130
+ onChangeFirstValue(e, e.target.value);
131
+ }}
132
+ onChangeSecondValue={(e) => {
133
+ setSecondValue(e.target.value);
134
+ onChangeSecondValue(e, e.target.value);
135
+ }}
136
+ onSearchFirstValue={onSearchFirstValue}
137
+ onSearchSecondValue={onSearchSecondValue}
138
+ onFocusFirstTextfield={onFocusFirstTextfield}
139
+ onFocusSecondTextfield={onFocusSecondTextfield}
140
+ onBlurFirstTextfield={onBlurFirstTextfield}
141
+ onBlurSecondTextfield={onBlurSecondTextfield}
142
+ {...dividerIconProps}
143
+ {...rest}
144
+ />
145
+ );
146
+ };
147
+
148
+ export const Default: StoryObj<StoryPropsDefault> = {
149
+ argTypes: {
150
+ dividerVariant: {
151
+ options: dividers,
152
+ control: {
153
+ type: 'inline-radio',
154
+ },
155
+ },
156
+ },
157
+ args: {
158
+ label: 'Лейбл',
159
+ leftHelper: 'Подсказка к полю',
160
+ firstPlaceholder: 'Заполните поле 1',
161
+ secondPlaceholder: 'Заполните поле 2',
162
+ size: 'l',
163
+ view: 'default',
164
+ disabled: false,
165
+ readOnly: false,
166
+ firstTextfieldTextBefore: 'С',
167
+ secondTextfieldTextBefore: 'ПО',
168
+ enableContentLeft: true,
169
+ enableContentRight: true,
170
+ dividerVariant: 'dash',
171
+ enableFirstTextfieldContentLeft: false,
172
+ enableFirstTextfieldContentRight: false,
173
+ enableSecondTextfieldContentLeft: false,
174
+ enableSecondTextfieldContentRight: false,
175
+ firstValueError: false,
176
+ secondValueError: false,
177
+ firstValueSuccess: false,
178
+ secondValueSuccess: false,
179
+ },
180
+ render: (args) => <StoryDefault {...args} />,
181
+ };
182
+
183
+ const StoryDemo = ({ enableContentLeft, enableContentRight, size, ...rest }: StoryPropsDefault) => {
184
+ const [firstValue, setFirstValue] = useState('');
185
+ const [secondValue, setSecondValue] = useState('');
186
+
187
+ const [firstValueError, setFirstValueError] = useState(false);
188
+ const [secondValueError, setSecondValueError] = useState(false);
189
+
190
+ const [firstValueSuccess, setFirstValueSuccess] = useState(false);
191
+ const [secondValueSuccess, setSecondValueSuccess] = useState(false);
192
+
193
+ const checkValue = (value: string) => /^([1-9][0-9]*|)$/.test(value);
194
+
195
+ const handleChangeValue = (
196
+ e: ChangeEvent<HTMLInputElement>,
197
+ setter: Dispatch<SetStateAction<string>>,
198
+ error: boolean,
199
+ errorSetter: Dispatch<SetStateAction<boolean>>,
200
+ success: boolean,
201
+ successSetter: Dispatch<SetStateAction<boolean>>,
202
+ ) => {
203
+ const { value } = e.target;
204
+ if (!checkValue(value)) {
205
+ return;
206
+ }
207
+
208
+ if (error) {
209
+ errorSetter(false);
210
+ }
211
+
212
+ if (success) {
213
+ successSetter(false);
214
+ }
215
+
216
+ setter(value);
217
+ };
218
+
219
+ const firstValueConstraint = (value: number) =>
220
+ value <= 0 || value >= 9 || (secondValue && value >= Number(secondValue) && !secondValueError);
221
+ const secondValueConstraint = (value: number) =>
222
+ value <= 0 || value > 10 || (firstValue && value <= Number(firstValue) && !firstValueError);
223
+
224
+ const handleCommitValue = (
225
+ value: string,
226
+ constraint: (currentValue: number) => boolean,
227
+ errorSetter: Dispatch<SetStateAction<boolean>>,
228
+ successSetter: Dispatch<SetStateAction<boolean>>,
229
+ ) => {
230
+ if (!value) {
231
+ return;
232
+ }
233
+
234
+ if (!checkValue(value)) {
235
+ return errorSetter(true);
236
+ }
237
+
238
+ if (constraint(Number(value))) {
239
+ return errorSetter(true);
240
+ }
241
+
242
+ successSetter(true);
243
+ };
244
+
245
+ const iconSize = size === 'xs' ? 'xs' : 's';
246
+
247
+ return (
248
+ <Range
249
+ dividerVariant="dash"
250
+ size={size}
251
+ firstValue={firstValue}
252
+ secondValue={secondValue}
253
+ firstValueError={firstValueError}
254
+ secondValueError={secondValueError}
255
+ firstValueSuccess={firstValueSuccess}
256
+ secondValueSuccess={secondValueSuccess}
257
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
258
+ contentRight={enableContentRight ? <ActionButton size={size} /> : undefined}
259
+ onChangeFirstValue={(e) => {
260
+ handleChangeValue(
261
+ e,
262
+ setFirstValue,
263
+ firstValueError,
264
+ setFirstValueError,
265
+ firstValueSuccess,
266
+ setFirstValueSuccess,
267
+ );
268
+ }}
269
+ onChangeSecondValue={(e) => {
270
+ handleChangeValue(
271
+ e,
272
+ setSecondValue,
273
+ secondValueError,
274
+ setSecondValueError,
275
+ secondValueSuccess,
276
+ setSecondValueSuccess,
277
+ );
278
+ }}
279
+ onSearchFirstValue={(e) => {
280
+ const { value } = e.target as HTMLInputElement;
281
+ handleCommitValue(value, firstValueConstraint, setFirstValueError, setFirstValueSuccess);
282
+ }}
283
+ onSearchSecondValue={(e) => {
284
+ const { value } = e.target as HTMLInputElement;
285
+ handleCommitValue(value, secondValueConstraint, setSecondValueError, setSecondValueSuccess);
286
+ }}
287
+ onFocusFirstTextfield={onFocusFirstTextfield}
288
+ onFocusSecondTextfield={onFocusSecondTextfield}
289
+ onBlurFirstTextfield={onBlurFirstTextfield}
290
+ onBlurSecondTextfield={onBlurSecondTextfield}
291
+ {...rest}
292
+ />
293
+ );
294
+ };
295
+
296
+ export const Demo: StoryObj<StoryPropsDefault> = {
297
+ args: {
298
+ label: 'Введите кол-во товара',
299
+ leftHelper: 'Кол-во товара не может быть меньше 1 и превышать 10',
300
+ firstPlaceholder: '1',
301
+ secondPlaceholder: '5',
302
+ size: 'l',
303
+ view: 'default',
304
+ disabled: false,
305
+ readOnly: false,
306
+ firstTextfieldTextBefore: '',
307
+ secondTextfieldTextBefore: '',
308
+ enableContentLeft: true,
309
+ enableContentRight: true,
310
+ },
311
+ render: (args) => <StoryDemo {...args} />,
312
+ };