@salutejs/plasma-new-hope 0.72.0-canary.1174.8614735539.0 → 0.73.0-canary.1160.8627071767.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (434) hide show
  1. package/cjs/components/Combobox/Combobox.css +10 -10
  2. package/cjs/components/Combobox/Combobox.styles.js +5 -5
  3. package/cjs/components/Combobox/Combobox.styles.js.map +1 -1
  4. package/cjs/components/Combobox/{Combobox.styles_17ei5vn.css → Combobox.styles_dw6hnk.css} +1 -1
  5. package/cjs/components/Combobox/ui/ComboboxDivider/ComboboxDivider.css +4 -4
  6. package/cjs/components/Combobox/ui/ComboboxFooter/ComboboxFooter.css +4 -4
  7. package/cjs/components/Combobox/ui/ComboboxGroup/ComboboxGroup.css +4 -4
  8. package/cjs/components/Combobox/ui/ComboboxHeader/ComboboxHeader.css +4 -4
  9. package/cjs/components/Combobox/ui/ComboboxItem/ComboboxItem.css +4 -4
  10. package/cjs/components/Dropdown/Dropdown.css +4 -4
  11. package/cjs/components/Dropdown/Dropdown.js +0 -1
  12. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  13. package/cjs/components/Pagination/Pagination.css +9 -9
  14. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +9 -9
  15. package/cjs/components/Popover/Popover.css +4 -4
  16. package/cjs/components/Popover/Popover.js +33 -43
  17. package/cjs/components/Popover/Popover.js.map +1 -1
  18. package/cjs/components/Popover/Popover.styles.js +1 -1
  19. package/cjs/components/Popover/Popover.styles.js.map +1 -1
  20. package/{es/components/Popover/Popover.styles_1rk9t6z.css → cjs/components/Popover/Popover.styles_1ggb66y.css} +1 -1
  21. package/cjs/components/Select/Select.css +9 -9
  22. package/cjs/components/Select/Select.styles.js +7 -7
  23. package/cjs/components/Select/Select.styles.js.map +1 -1
  24. package/{es/components/Select/Select.styles_ls547o.css → cjs/components/Select/Select.styles_1q3i6gw.css} +1 -1
  25. package/cjs/components/Select/ui/SelectDivider/SelectDivider.css +23 -0
  26. package/cjs/components/Select/ui/SelectDivider/SelectDivider.js +40 -0
  27. package/cjs/components/Select/ui/SelectDivider/SelectDivider.js.map +1 -0
  28. package/cjs/components/Select/ui/SelectDivider/SelectDivider.styles.js +12 -0
  29. package/cjs/components/Select/ui/SelectDivider/SelectDivider.styles.js.map +1 -0
  30. package/cjs/components/Select/ui/SelectDivider/SelectDivider.styles_673hj6.css +1 -0
  31. package/cjs/components/{TextField/_disabled → Select/ui/SelectDivider/variations/_size}/base.js +2 -2
  32. package/cjs/components/Select/ui/SelectDivider/variations/_size/base.js.map +1 -0
  33. package/cjs/components/{TextField/_size → Select/ui/SelectDivider/variations/_view}/base.js +2 -2
  34. package/cjs/components/Select/ui/SelectDivider/variations/_view/base.js.map +1 -0
  35. package/cjs/components/Select/ui/SelectFooter/SelectFooter.css +23 -0
  36. package/cjs/components/Select/ui/SelectFooter/SelectFooter.js +40 -0
  37. package/cjs/components/Select/ui/SelectFooter/SelectFooter.js.map +1 -0
  38. package/cjs/components/Select/ui/SelectFooter/SelectFooter.styles.js +12 -0
  39. package/cjs/components/Select/ui/SelectFooter/SelectFooter.styles.js.map +1 -0
  40. package/cjs/components/Select/ui/SelectFooter/SelectFooter.styles_11hk6tt.css +1 -0
  41. package/cjs/components/Select/ui/SelectFooter/variations/_size/base.js +9 -0
  42. package/cjs/components/Select/ui/SelectFooter/variations/_size/base.js.map +1 -0
  43. package/cjs/components/Select/ui/SelectFooter/variations/_size/base_x642ct.css +1 -0
  44. package/cjs/components/{TextField → Select/ui/SelectFooter/variations}/_view/base.js +2 -2
  45. package/cjs/components/Select/ui/SelectFooter/variations/_view/base.js.map +1 -0
  46. package/cjs/components/Select/ui/SelectFooter/variations/_view/base_x642ct.css +1 -0
  47. package/cjs/components/Select/ui/SelectGroup/SelectGroup.css +23 -0
  48. package/cjs/components/Select/ui/SelectGroup/SelectGroup.js +40 -0
  49. package/cjs/components/Select/ui/SelectGroup/SelectGroup.js.map +1 -0
  50. package/cjs/components/Select/ui/SelectGroup/SelectGroup.styles.js +12 -0
  51. package/cjs/components/Select/ui/SelectGroup/SelectGroup.styles.js.map +1 -0
  52. package/cjs/components/Select/ui/SelectGroup/SelectGroup.styles_mktu7e.css +1 -0
  53. package/cjs/components/Select/ui/SelectGroup/variations/_size/base.js +9 -0
  54. package/cjs/components/Select/ui/SelectGroup/variations/_size/base.js.map +1 -0
  55. package/cjs/components/Select/ui/SelectGroup/variations/_size/base_x642ct.css +1 -0
  56. package/cjs/components/Select/ui/SelectGroup/variations/_view/base.js +9 -0
  57. package/cjs/components/Select/ui/SelectGroup/variations/_view/base.js.map +1 -0
  58. package/cjs/components/Select/ui/SelectGroup/variations/_view/base_x642ct.css +1 -0
  59. package/cjs/components/Select/ui/SelectHeader/SelectHeader.css +23 -0
  60. package/cjs/components/Select/ui/SelectHeader/SelectHeader.js +40 -0
  61. package/cjs/components/Select/ui/SelectHeader/SelectHeader.js.map +1 -0
  62. package/cjs/components/Select/ui/SelectHeader/SelectHeader.styles.js +12 -0
  63. package/cjs/components/Select/ui/SelectHeader/SelectHeader.styles.js.map +1 -0
  64. package/cjs/components/Select/ui/SelectHeader/SelectHeader.styles_24gqog.css +1 -0
  65. package/cjs/components/Select/ui/SelectHeader/variations/_size/base.js +9 -0
  66. package/cjs/components/Select/ui/SelectHeader/variations/_size/base.js.map +1 -0
  67. package/cjs/components/Select/ui/SelectHeader/variations/_size/base_x642ct.css +1 -0
  68. package/cjs/components/Select/ui/SelectHeader/variations/_view/base.js +9 -0
  69. package/cjs/components/Select/ui/SelectHeader/variations/_view/base.js.map +1 -0
  70. package/cjs/components/Select/ui/SelectHeader/variations/_view/base_x642ct.css +1 -0
  71. package/cjs/components/Select/ui/SelectItem/SelectItem.css +4 -4
  72. package/cjs/components/Select/ui/SelectTarget/SelectTarget.js +2 -1
  73. package/cjs/components/Select/ui/SelectTarget/SelectTarget.js.map +1 -1
  74. package/cjs/components/TextField/TextField.js +166 -40
  75. package/cjs/components/TextField/TextField.js.map +1 -1
  76. package/cjs/components/TextField/TextField.styles.js +27 -11
  77. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  78. package/cjs/components/TextField/TextField.styles_1b1mddp.css +8 -0
  79. package/cjs/components/TextField/TextField.tokens.js +68 -20
  80. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  81. package/cjs/components/TextField/TextField_wctd2m.css +1 -0
  82. package/cjs/components/TextField/hooks/useKeyNavigation.js +132 -0
  83. package/cjs/components/TextField/hooks/useKeyNavigation.js.map +1 -0
  84. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.css +19 -0
  85. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +38 -0
  86. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -0
  87. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +26 -0
  88. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -0
  89. package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles_1y8n7la.css +1 -0
  90. package/cjs/components/TextField/variations/_disabled/base.js +9 -0
  91. package/cjs/components/TextField/variations/_disabled/base.js.map +1 -0
  92. package/cjs/components/TextField/variations/_disabled/base_1tnjoy9.css +1 -0
  93. package/cjs/components/TextField/{_label-placement → variations/_label-placement}/base.js +1 -1
  94. package/cjs/components/TextField/variations/_label-placement/base.js.map +1 -0
  95. package/cjs/components/TextField/variations/_label-placement/base_x642ct.css +1 -0
  96. package/cjs/components/TextField/{_label-placement → variations/_label-placement}/inner.js +2 -2
  97. package/cjs/components/TextField/variations/_label-placement/inner.js.map +1 -0
  98. package/cjs/components/TextField/variations/_label-placement/inner_gqlcj2.css +1 -0
  99. package/cjs/components/TextField/{_label-placement → variations/_label-placement}/outer.js +2 -2
  100. package/cjs/components/TextField/variations/_label-placement/outer.js.map +1 -0
  101. package/cjs/components/TextField/variations/_label-placement/outer_is41nj.css +1 -0
  102. package/cjs/components/TextField/variations/_read-only/base.js +9 -0
  103. package/cjs/components/TextField/variations/_read-only/base.js.map +1 -0
  104. package/cjs/components/TextField/variations/_read-only/base_134hshp.css +1 -0
  105. package/cjs/components/TextField/variations/_size/base.js +9 -0
  106. package/cjs/components/TextField/variations/_size/base.js.map +1 -0
  107. package/cjs/components/TextField/variations/_size/base_1khzr9t.css +1 -0
  108. package/cjs/components/TextField/variations/_view/base.js +9 -0
  109. package/cjs/components/TextField/variations/_view/base.js.map +1 -0
  110. package/cjs/components/TextField/variations/_view/base_1qd77x6.css +1 -0
  111. package/cjs/index.css +49 -42
  112. package/cjs/index.js +41 -6
  113. package/cjs/index.js.map +1 -1
  114. package/cjs/utils/index.js +13 -1
  115. package/cjs/utils/index.js.map +1 -1
  116. package/cjs/utils/react.js +12 -2
  117. package/cjs/utils/react.js.map +1 -1
  118. package/es/components/Combobox/Combobox.css +10 -10
  119. package/es/components/Combobox/Combobox.styles.js +5 -5
  120. package/es/components/Combobox/Combobox.styles.js.map +1 -1
  121. package/es/components/Combobox/{Combobox.styles_17ei5vn.css → Combobox.styles_dw6hnk.css} +1 -1
  122. package/es/components/Combobox/ui/ComboboxDivider/ComboboxDivider.css +4 -4
  123. package/es/components/Combobox/ui/ComboboxFooter/ComboboxFooter.css +4 -4
  124. package/es/components/Combobox/ui/ComboboxGroup/ComboboxGroup.css +4 -4
  125. package/es/components/Combobox/ui/ComboboxHeader/ComboboxHeader.css +4 -4
  126. package/es/components/Combobox/ui/ComboboxItem/ComboboxItem.css +4 -4
  127. package/es/components/Dropdown/Dropdown.css +4 -4
  128. package/es/components/Dropdown/Dropdown.js +0 -1
  129. package/es/components/Dropdown/Dropdown.js.map +1 -1
  130. package/es/components/Pagination/Pagination.css +9 -9
  131. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +9 -9
  132. package/es/components/Popover/Popover.css +4 -4
  133. package/es/components/Popover/Popover.js +33 -43
  134. package/es/components/Popover/Popover.js.map +1 -1
  135. package/es/components/Popover/Popover.styles.js +1 -1
  136. package/es/components/Popover/Popover.styles.js.map +1 -1
  137. package/{cjs/components/Popover/Popover.styles_1rk9t6z.css → es/components/Popover/Popover.styles_1ggb66y.css} +1 -1
  138. package/es/components/Select/Select.css +9 -9
  139. package/es/components/Select/Select.styles.js +7 -7
  140. package/es/components/Select/Select.styles.js.map +1 -1
  141. package/{cjs/components/Select/Select.styles_ls547o.css → es/components/Select/Select.styles_1q3i6gw.css} +1 -1
  142. package/es/components/Select/ui/SelectDivider/SelectDivider.css +23 -0
  143. package/es/components/Select/ui/SelectDivider/SelectDivider.js +35 -0
  144. package/es/components/Select/ui/SelectDivider/SelectDivider.js.map +1 -0
  145. package/es/components/Select/ui/SelectDivider/SelectDivider.styles.js +7 -0
  146. package/es/components/Select/ui/SelectDivider/SelectDivider.styles.js.map +1 -0
  147. package/es/components/Select/ui/SelectDivider/SelectDivider.styles_673hj6.css +1 -0
  148. package/es/components/{TextField/_disabled → Select/ui/SelectDivider/variations/_size}/base.js +2 -2
  149. package/es/components/Select/ui/SelectDivider/variations/_size/base.js.map +1 -0
  150. package/es/components/Select/ui/SelectDivider/variations/_size/base_x642ct.css +1 -0
  151. package/es/components/{TextField/_size → Select/ui/SelectDivider/variations/_view}/base.js +2 -2
  152. package/es/components/Select/ui/SelectDivider/variations/_view/base.js.map +1 -0
  153. package/es/components/Select/ui/SelectDivider/variations/_view/base_x642ct.css +1 -0
  154. package/es/components/Select/ui/SelectFooter/SelectFooter.css +23 -0
  155. package/es/components/Select/ui/SelectFooter/SelectFooter.js +35 -0
  156. package/es/components/Select/ui/SelectFooter/SelectFooter.js.map +1 -0
  157. package/es/components/Select/ui/SelectFooter/SelectFooter.styles.js +7 -0
  158. package/es/components/Select/ui/SelectFooter/SelectFooter.styles.js.map +1 -0
  159. package/es/components/Select/ui/SelectFooter/SelectFooter.styles_11hk6tt.css +1 -0
  160. package/es/components/Select/ui/SelectFooter/variations/_size/base.js +5 -0
  161. package/es/components/Select/ui/SelectFooter/variations/_size/base.js.map +1 -0
  162. package/es/components/Select/ui/SelectFooter/variations/_size/base_x642ct.css +1 -0
  163. package/es/components/{TextField → Select/ui/SelectFooter/variations}/_view/base.js +2 -2
  164. package/es/components/Select/ui/SelectFooter/variations/_view/base.js.map +1 -0
  165. package/es/components/Select/ui/SelectFooter/variations/_view/base_x642ct.css +1 -0
  166. package/es/components/Select/ui/SelectGroup/SelectGroup.css +23 -0
  167. package/es/components/Select/ui/SelectGroup/SelectGroup.js +35 -0
  168. package/es/components/Select/ui/SelectGroup/SelectGroup.js.map +1 -0
  169. package/es/components/Select/ui/SelectGroup/SelectGroup.styles.js +7 -0
  170. package/es/components/Select/ui/SelectGroup/SelectGroup.styles.js.map +1 -0
  171. package/es/components/Select/ui/SelectGroup/SelectGroup.styles_mktu7e.css +1 -0
  172. package/es/components/Select/ui/SelectGroup/variations/_size/base.js +5 -0
  173. package/es/components/Select/ui/SelectGroup/variations/_size/base.js.map +1 -0
  174. package/es/components/Select/ui/SelectGroup/variations/_size/base_x642ct.css +1 -0
  175. package/es/components/Select/ui/SelectGroup/variations/_view/base.js +5 -0
  176. package/es/components/Select/ui/SelectGroup/variations/_view/base.js.map +1 -0
  177. package/es/components/Select/ui/SelectGroup/variations/_view/base_x642ct.css +1 -0
  178. package/es/components/Select/ui/SelectHeader/SelectHeader.css +23 -0
  179. package/es/components/Select/ui/SelectHeader/SelectHeader.js +35 -0
  180. package/es/components/Select/ui/SelectHeader/SelectHeader.js.map +1 -0
  181. package/es/components/Select/ui/SelectHeader/SelectHeader.styles.js +7 -0
  182. package/es/components/Select/ui/SelectHeader/SelectHeader.styles.js.map +1 -0
  183. package/es/components/Select/ui/SelectHeader/SelectHeader.styles_24gqog.css +1 -0
  184. package/es/components/Select/ui/SelectHeader/variations/_size/base.js +5 -0
  185. package/es/components/Select/ui/SelectHeader/variations/_size/base.js.map +1 -0
  186. package/es/components/Select/ui/SelectHeader/variations/_size/base_x642ct.css +1 -0
  187. package/es/components/Select/ui/SelectHeader/variations/_view/base.js +5 -0
  188. package/es/components/Select/ui/SelectHeader/variations/_view/base.js.map +1 -0
  189. package/es/components/Select/ui/SelectHeader/variations/_view/base_x642ct.css +1 -0
  190. package/es/components/Select/ui/SelectItem/SelectItem.css +4 -4
  191. package/es/components/Select/ui/SelectTarget/SelectTarget.js +2 -1
  192. package/es/components/Select/ui/SelectTarget/SelectTarget.js.map +1 -1
  193. package/es/components/TextField/TextField.js +169 -44
  194. package/es/components/TextField/TextField.js.map +1 -1
  195. package/es/components/TextField/TextField.styles.js +25 -12
  196. package/es/components/TextField/TextField.styles.js.map +1 -1
  197. package/es/components/TextField/TextField.styles_1b1mddp.css +8 -0
  198. package/es/components/TextField/TextField.tokens.js +68 -21
  199. package/es/components/TextField/TextField.tokens.js.map +1 -1
  200. package/es/components/TextField/TextField_wctd2m.css +1 -0
  201. package/es/components/TextField/hooks/useKeyNavigation.js +127 -0
  202. package/es/components/TextField/hooks/useKeyNavigation.js.map +1 -0
  203. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.css +19 -0
  204. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +34 -0
  205. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.js.map +1 -0
  206. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +22 -0
  207. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js.map +1 -0
  208. package/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles_1y8n7la.css +1 -0
  209. package/es/components/TextField/variations/_disabled/base.js +5 -0
  210. package/es/components/TextField/variations/_disabled/base.js.map +1 -0
  211. package/es/components/TextField/variations/_disabled/base_1tnjoy9.css +1 -0
  212. package/es/components/TextField/{_label-placement → variations/_label-placement}/base.js +1 -1
  213. package/es/components/TextField/variations/_label-placement/base.js.map +1 -0
  214. package/es/components/TextField/variations/_label-placement/base_x642ct.css +1 -0
  215. package/es/components/TextField/variations/_label-placement/inner.js +5 -0
  216. package/es/components/TextField/variations/_label-placement/inner.js.map +1 -0
  217. package/es/components/TextField/variations/_label-placement/inner_gqlcj2.css +1 -0
  218. package/es/components/TextField/variations/_label-placement/outer.js +5 -0
  219. package/es/components/TextField/variations/_label-placement/outer.js.map +1 -0
  220. package/es/components/TextField/variations/_label-placement/outer_is41nj.css +1 -0
  221. package/es/components/TextField/variations/_read-only/base.js +5 -0
  222. package/es/components/TextField/variations/_read-only/base.js.map +1 -0
  223. package/es/components/TextField/variations/_read-only/base_134hshp.css +1 -0
  224. package/es/components/TextField/variations/_size/base.js +5 -0
  225. package/es/components/TextField/variations/_size/base.js.map +1 -0
  226. package/es/components/TextField/variations/_size/base_1khzr9t.css +1 -0
  227. package/es/components/TextField/variations/_view/base.js +5 -0
  228. package/es/components/TextField/variations/_view/base.js.map +1 -0
  229. package/es/components/TextField/variations/_view/base_1qd77x6.css +1 -0
  230. package/es/index.css +49 -42
  231. package/es/index.js +15 -2
  232. package/es/index.js.map +1 -1
  233. package/es/utils/index.js +11 -2
  234. package/es/utils/index.js.map +1 -1
  235. package/es/utils/react.js +9 -2
  236. package/es/utils/react.js.map +1 -1
  237. package/package.json +2 -2
  238. package/styled-components/cjs/components/Combobox/Combobox.styles.js +1 -1
  239. package/styled-components/cjs/components/Dropdown/Dropdown.js +0 -1
  240. package/styled-components/cjs/components/Popover/Popover.js +33 -43
  241. package/styled-components/cjs/components/Popover/Popover.styles.js +1 -1
  242. package/styled-components/cjs/components/Select/Select.styles.js +1 -1
  243. package/styled-components/cjs/components/Select/ui/SelectTarget/SelectTarget.js +2 -1
  244. package/styled-components/cjs/components/TextField/TextField.js +173 -43
  245. package/styled-components/cjs/components/TextField/TextField.styles.js +18 -10
  246. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +24 -0
  247. package/styled-components/cjs/components/TextField/TextField.tokens.js +68 -21
  248. package/styled-components/cjs/components/TextField/hooks/index.js +12 -0
  249. package/styled-components/cjs/components/TextField/hooks/useKeyNavigation.js +138 -0
  250. package/styled-components/cjs/components/TextField/index.js +2 -2
  251. package/styled-components/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.js +39 -0
  252. package/styled-components/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +25 -0
  253. package/styled-components/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.types.js +5 -0
  254. package/styled-components/cjs/components/TextField/ui/index.js +12 -0
  255. package/styled-components/cjs/components/TextField/variations/_disabled/base.js +10 -0
  256. package/styled-components/cjs/components/TextField/variations/_label-placement/inner.js +10 -0
  257. package/styled-components/cjs/components/TextField/{_label-placement → variations/_label-placement}/outer.js +3 -3
  258. package/styled-components/cjs/components/TextField/variations/_read-only/base.js +10 -0
  259. package/styled-components/cjs/components/TextField/variations/_read-only/tokens.json +1 -0
  260. package/styled-components/cjs/components/TextField/variations/_size/base.js +10 -0
  261. package/styled-components/cjs/components/TextField/variations/_view/base.js +10 -0
  262. package/styled-components/cjs/examples/plasma_b2c/components/Popover/Popover.stories.tsx +0 -7
  263. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +43 -0
  264. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.js +11 -0
  265. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +181 -0
  266. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.config.js +40 -0
  267. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.js +11 -0
  268. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +181 -0
  269. package/styled-components/cjs/examples/sds_engineer/components/TextField/TextField.config.js +43 -0
  270. package/styled-components/cjs/examples/sds_engineer/components/TextField/TextField.js +11 -0
  271. package/styled-components/cjs/examples/sds_engineer/components/TextField/TextField.stories.tsx +181 -0
  272. package/styled-components/cjs/index.js +22 -0
  273. package/styled-components/es/components/Combobox/Combobox.styles.js +1 -1
  274. package/styled-components/es/components/Dropdown/Dropdown.js +0 -1
  275. package/styled-components/es/components/Popover/Popover.js +33 -43
  276. package/styled-components/es/components/Popover/Popover.styles.js +1 -1
  277. package/styled-components/es/components/Select/Select.styles.js +1 -1
  278. package/styled-components/es/components/Select/ui/SelectTarget/SelectTarget.js +2 -1
  279. package/styled-components/es/components/TextField/TextField.js +177 -47
  280. package/styled-components/es/components/TextField/TextField.styles.js +17 -9
  281. package/styled-components/es/components/TextField/TextField.template-doc.mdx +24 -0
  282. package/styled-components/es/components/TextField/TextField.tokens.js +67 -20
  283. package/styled-components/es/components/TextField/hooks/index.js +1 -0
  284. package/styled-components/es/components/TextField/hooks/useKeyNavigation.js +132 -0
  285. package/styled-components/es/components/TextField/index.js +2 -2
  286. package/styled-components/es/components/TextField/ui/TextFieldChip/TextFieldChip.js +30 -0
  287. package/styled-components/es/components/TextField/ui/TextFieldChip/TextFieldChip.styles.js +19 -0
  288. package/styled-components/es/components/TextField/ui/TextFieldChip/TextFieldChip.types.js +1 -0
  289. package/styled-components/es/components/TextField/ui/index.js +1 -0
  290. package/styled-components/es/components/TextField/variations/_disabled/base.js +4 -0
  291. package/styled-components/es/components/TextField/variations/_label-placement/inner.js +4 -0
  292. package/styled-components/es/components/TextField/variations/_label-placement/outer.js +4 -0
  293. package/styled-components/es/components/TextField/variations/_read-only/base.js +4 -0
  294. package/styled-components/es/components/TextField/variations/_read-only/tokens.json +1 -0
  295. package/styled-components/es/components/TextField/variations/_size/base.js +4 -0
  296. package/styled-components/es/components/TextField/variations/_view/base.js +4 -0
  297. package/styled-components/es/examples/plasma_b2c/components/Popover/Popover.stories.tsx +0 -7
  298. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +37 -0
  299. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.js +5 -0
  300. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +181 -0
  301. package/styled-components/es/examples/plasma_web/components/TextField/TextField.config.js +34 -0
  302. package/styled-components/es/examples/plasma_web/components/TextField/TextField.js +5 -0
  303. package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +181 -0
  304. package/styled-components/es/examples/sds_engineer/components/TextField/TextField.config.js +37 -0
  305. package/styled-components/es/examples/sds_engineer/components/TextField/TextField.js +5 -0
  306. package/styled-components/es/examples/sds_engineer/components/TextField/TextField.stories.tsx +181 -0
  307. package/styled-components/es/index.js +2 -0
  308. package/types/components/Combobox/Combobox.styles.d.ts +2 -8
  309. package/types/components/Combobox/Combobox.styles.d.ts.map +1 -1
  310. package/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  311. package/types/components/Dropdown/Dropdown.styles.d.ts +1 -7
  312. package/types/components/Dropdown/Dropdown.styles.d.ts.map +1 -1
  313. package/types/components/Popover/Popover.d.ts +2 -2
  314. package/types/components/Popover/Popover.d.ts.map +1 -1
  315. package/types/components/Popover/Popover.styles.d.ts.map +1 -1
  316. package/types/components/Popover/Popover.types.d.ts +12 -19
  317. package/types/components/Popover/Popover.types.d.ts.map +1 -1
  318. package/types/components/Select/Select.styles.d.ts +2 -8
  319. package/types/components/Select/Select.styles.d.ts.map +1 -1
  320. package/types/components/Select/ui/SelectTarget/SelectTarget.d.ts.map +1 -1
  321. package/types/components/TextField/TextField.d.ts +8 -3
  322. package/types/components/TextField/TextField.d.ts.map +1 -1
  323. package/types/components/TextField/TextField.styles.d.ts +6 -3
  324. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  325. package/types/components/TextField/TextField.tokens.d.ts +57 -8
  326. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  327. package/types/components/TextField/TextField.types.d.ts +71 -6
  328. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  329. package/types/components/TextField/hooks/index.d.ts +2 -0
  330. package/types/components/TextField/hooks/index.d.ts.map +1 -0
  331. package/types/components/TextField/hooks/useKeyNavigation.d.ts +17 -0
  332. package/types/components/TextField/hooks/useKeyNavigation.d.ts.map +1 -0
  333. package/types/components/TextField/index.d.ts +3 -2
  334. package/types/components/TextField/index.d.ts.map +1 -1
  335. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts +7 -0
  336. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.d.ts.map +1 -0
  337. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.styles.d.ts +3 -0
  338. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.styles.d.ts.map +1 -0
  339. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.types.d.ts +37 -0
  340. package/types/components/TextField/ui/TextFieldChip/TextFieldChip.types.d.ts.map +1 -0
  341. package/types/components/TextField/ui/index.d.ts +2 -0
  342. package/types/components/TextField/ui/index.d.ts.map +1 -0
  343. package/types/components/TextField/variations/_disabled/base.d.ts.map +1 -0
  344. package/types/components/TextField/variations/_label-placement/base.d.ts.map +1 -0
  345. package/types/components/TextField/variations/_label-placement/index.d.ts.map +1 -0
  346. package/types/components/TextField/variations/_label-placement/inner.d.ts.map +1 -0
  347. package/types/components/TextField/variations/_label-placement/outer.d.ts.map +1 -0
  348. package/types/components/TextField/variations/_read-only/base.d.ts.map +1 -0
  349. package/types/components/TextField/variations/_size/base.d.ts.map +1 -0
  350. package/types/components/TextField/variations/_view/base.d.ts +2 -0
  351. package/types/components/TextField/variations/_view/base.d.ts.map +1 -0
  352. package/types/examples/plasma_b2c/components/Popover/Popover.d.ts +1 -7
  353. package/types/examples/plasma_b2c/components/Popover/Popover.d.ts.map +1 -1
  354. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts +32 -0
  355. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -0
  356. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +60 -0
  357. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -0
  358. package/types/examples/plasma_web/components/Popover/Popover.d.ts +1 -7
  359. package/types/examples/plasma_web/components/Popover/Popover.d.ts.map +1 -1
  360. package/types/examples/plasma_web/components/TextField/TextField.config.d.ts +32 -0
  361. package/types/examples/plasma_web/components/TextField/TextField.config.d.ts.map +1 -0
  362. package/types/examples/plasma_web/components/TextField/TextField.d.ts +60 -0
  363. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -0
  364. package/types/examples/sds_engineer/components/Popover/Popover.d.ts +1 -7
  365. package/types/examples/sds_engineer/components/Popover/Popover.d.ts.map +1 -1
  366. package/types/examples/sds_engineer/components/TextField/TextField.config.d.ts +32 -0
  367. package/types/examples/sds_engineer/components/TextField/TextField.config.d.ts.map +1 -0
  368. package/types/examples/sds_engineer/components/TextField/TextField.d.ts +60 -0
  369. package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -0
  370. package/types/index.d.ts +2 -0
  371. package/types/index.d.ts.map +1 -1
  372. package/cjs/components/TextField/TextField.styles_2qw1n8.css +0 -5
  373. package/cjs/components/TextField/TextField_1lzb2r1.css +0 -1
  374. package/cjs/components/TextField/_disabled/base.js.map +0 -1
  375. package/cjs/components/TextField/_disabled/base_so3w81.css +0 -1
  376. package/cjs/components/TextField/_label-placement/base.js.map +0 -1
  377. package/cjs/components/TextField/_label-placement/inner.js.map +0 -1
  378. package/cjs/components/TextField/_label-placement/inner_1tyuicp.css +0 -1
  379. package/cjs/components/TextField/_label-placement/outer.js.map +0 -1
  380. package/cjs/components/TextField/_label-placement/outer_19ekaek.css +0 -1
  381. package/cjs/components/TextField/_size/base.js.map +0 -1
  382. package/cjs/components/TextField/_size/base_b5smyu.css +0 -1
  383. package/cjs/components/TextField/_view/base.js.map +0 -1
  384. package/cjs/components/TextField/_view/base_5bqzed.css +0 -1
  385. package/es/components/TextField/TextField.styles_2qw1n8.css +0 -5
  386. package/es/components/TextField/TextField_1lzb2r1.css +0 -1
  387. package/es/components/TextField/_disabled/base.js.map +0 -1
  388. package/es/components/TextField/_disabled/base_so3w81.css +0 -1
  389. package/es/components/TextField/_label-placement/base.js.map +0 -1
  390. package/es/components/TextField/_label-placement/inner.js +0 -5
  391. package/es/components/TextField/_label-placement/inner.js.map +0 -1
  392. package/es/components/TextField/_label-placement/inner_1tyuicp.css +0 -1
  393. package/es/components/TextField/_label-placement/outer.js +0 -5
  394. package/es/components/TextField/_label-placement/outer.js.map +0 -1
  395. package/es/components/TextField/_label-placement/outer_19ekaek.css +0 -1
  396. package/es/components/TextField/_size/base.js.map +0 -1
  397. package/es/components/TextField/_size/base_b5smyu.css +0 -1
  398. package/es/components/TextField/_view/base.js.map +0 -1
  399. package/es/components/TextField/_view/base_5bqzed.css +0 -1
  400. package/styled-components/cjs/components/TextField/_disabled/base.js +0 -9
  401. package/styled-components/cjs/components/TextField/_label-placement/inner.js +0 -10
  402. package/styled-components/cjs/components/TextField/_size/base.js +0 -10
  403. package/styled-components/cjs/components/TextField/_view/base.js +0 -10
  404. package/styled-components/es/components/TextField/_disabled/base.js +0 -3
  405. package/styled-components/es/components/TextField/_label-placement/inner.js +0 -4
  406. package/styled-components/es/components/TextField/_label-placement/outer.js +0 -4
  407. package/styled-components/es/components/TextField/_size/base.js +0 -4
  408. package/styled-components/es/components/TextField/_view/base.js +0 -4
  409. package/types/components/TextField/_disabled/base.d.ts.map +0 -1
  410. package/types/components/TextField/_label-placement/base.d.ts.map +0 -1
  411. package/types/components/TextField/_label-placement/index.d.ts.map +0 -1
  412. package/types/components/TextField/_label-placement/inner.d.ts.map +0 -1
  413. package/types/components/TextField/_label-placement/outer.d.ts.map +0 -1
  414. package/types/components/TextField/_size/base.d.ts.map +0 -1
  415. package/types/components/TextField/_view/base.d.ts.map +0 -1
  416. /package/cjs/components/{TextField/_label-placement → Select/ui/SelectDivider/variations/_size}/base_x642ct.css +0 -0
  417. /package/{es/components/TextField/_label-placement → cjs/components/Select/ui/SelectDivider/variations/_view}/base_x642ct.css +0 -0
  418. /package/styled-components/cjs/components/TextField/{_disabled → variations/_disabled}/tokens.json +0 -0
  419. /package/styled-components/cjs/components/TextField/{_label-placement → variations/_label-placement}/base.js +0 -0
  420. /package/styled-components/cjs/components/TextField/{_label-placement → variations/_label-placement}/index.js +0 -0
  421. /package/styled-components/cjs/components/TextField/{_size → variations/_size}/tokens.json +0 -0
  422. /package/styled-components/cjs/components/TextField/{_view → variations/_view}/tokens.json +0 -0
  423. /package/styled-components/es/components/TextField/{_disabled → variations/_disabled}/tokens.json +0 -0
  424. /package/styled-components/es/components/TextField/{_label-placement → variations/_label-placement}/base.js +0 -0
  425. /package/styled-components/es/components/TextField/{_label-placement → variations/_label-placement}/index.js +0 -0
  426. /package/styled-components/es/components/TextField/{_size → variations/_size}/tokens.json +0 -0
  427. /package/styled-components/es/components/TextField/{_view → variations/_view}/tokens.json +0 -0
  428. /package/types/components/TextField/{_disabled → variations/_disabled}/base.d.ts +0 -0
  429. /package/types/components/TextField/{_label-placement → variations/_label-placement}/base.d.ts +0 -0
  430. /package/types/components/TextField/{_label-placement → variations/_label-placement}/index.d.ts +0 -0
  431. /package/types/components/TextField/{_label-placement → variations/_label-placement}/inner.d.ts +0 -0
  432. /package/types/components/TextField/{_label-placement → variations/_label-placement}/outer.d.ts +0 -0
  433. /package/types/components/TextField/{_size → variations/_read-only}/base.d.ts +0 -0
  434. /package/types/components/TextField/{_view → variations/_size}/base.d.ts +0 -0
@@ -0,0 +1,19 @@
1
+ import styled from 'styled-components';
2
+ import { chipConfig, chipTokens } from '../../../Chip';
3
+ import { component, mergeConfig } from '../../../../engines';
4
+ import { tokens } from '../../TextField.tokens';
5
+ import { addFocus } from '../../../../mixins';
6
+
7
+ // issue #823
8
+ var mergedConfig = /*#__PURE__*/mergeConfig(chipConfig);
9
+ var Chip = /*#__PURE__*/component(mergedConfig);
10
+
11
+ // NOTE: Необходимое переопределение токенов из компонента Chip т.к. используются его части
12
+ export var StyledChip = /*#__PURE__*/styled(Chip).withConfig({
13
+ componentId: "plasma-new-hope__sc-1mypbcr-0"
14
+ })(["", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");", ":var(", ");scroll-snap-align:center;scroll-snap-stop:normal;", " &[readonly]{opacity:var(", ");}"], chipTokens.color, tokens.chipColor, chipTokens.background, tokens.chipBackground, chipTokens.colorHover, tokens.chipColorHover, chipTokens.backgroundHover, tokens.chipBackgroundHover, chipTokens.colorActive, tokens.chipColorActive, chipTokens.backgroundActive, tokens.chipBackgroundActive, chipTokens.backgroundReadOnly, tokens.chipBackgroundReadOnly, chipTokens.colorReadOnly, tokens.chipColorReadOnly, chipTokens.backgroundReadOnlyHover, tokens.chipBackgroundReadOnlyHover, chipTokens.colorReadOnlyHover, tokens.chipColorReadOnlyHover, chipTokens.borderRadius, tokens.chipBorderRadius, chipTokens.width, tokens.chipWidth, chipTokens.height, tokens.chipHeight, chipTokens.paddingRight, tokens.chipPaddingRight, chipTokens.paddingLeft, tokens.chipPaddingLeft, chipTokens.fontFamily, tokens.chipFontFamily, chipTokens.fontSize, tokens.chipFontSize, chipTokens.fontStyle, tokens.chipFontStyle, chipTokens.fontWeight, tokens.chipFontWeight, chipTokens.letterSpacing, tokens.chipLetterSpacing, chipTokens.lineHeight, tokens.chipLineHeight, chipTokens.clearContentMarginLeft, tokens.chipClearContentMarginLeft, chipTokens.clearContentMarginRight, tokens.chipClearContentMarginRight, chipTokens.scaleHover, tokens.chipScaleHover, chipTokens.scaleActive, tokens.chipScaleActive, chipTokens.closeIconSize, tokens.chipCloseIconSize, chipTokens.closeIconColor, tokens.chipCloseIconColor, chipTokens.focusColor, tokens.focusColor, /*#__PURE__*/addFocus({
15
+ outlineOffset: '0.0625rem',
16
+ outlineSize: '0.0625rem',
17
+ outlineRadius: /*#__PURE__*/"calc(var(".concat(tokens.chipBorderRadius, ") - 0.1rem)"),
18
+ outlineColor: /*#__PURE__*/"var(".concat(tokens.focusColor, ")")
19
+ }), tokens.chipOpacityReadonly);
@@ -0,0 +1 @@
1
+ export { TextFieldChip } from './TextFieldChip/TextFieldChip';
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { tokens } from '../../TextField.tokens';
3
+ import { Input } from '../../TextField.styles';
4
+ export var base = /*#__PURE__*/css(["&[disabled]{opacity:var(", ");cursor:not-allowed;", "{cursor:not-allowed;min-width:unset;}}"], tokens.disabledOpacity, Input);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { Input, Label } from '../../TextField.styles';
3
+ import { tokens } from '../../TextField.tokens';
4
+ export var labelPlacement_inner = /*#__PURE__*/css(["", "{padding:var(", ");}", ":focus ~ ", ",", ":not(:placeholder-shown) ~ ", "{height:auto;padding:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", ":not(:focus)::placeholder{color:transparent;}", ":focus::placeholder{color:transparent;}", "{color:var(", ");pointer-events:none;position:absolute;top:0;display:flex;align-items:center;box-sizing:border-box;transition:padding 0.1s ease-in-out,height 0s;height:var(", ");padding-top:calc(var(", ") / 4);padding-bottom:calc(var(", ") / 4);}"], Input, tokens.contentLabelInnerPadding, Input, Label, Input, Label, tokens.labelInnerPadding, tokens.labelInnerFontFamily, tokens.labelInnerFontSize, tokens.labelInnerFontStyle, tokens.labelInnerFontWeight, tokens.labelInnerLetterSpacing, tokens.labelInnerLineHeight, Input, Input, Label, tokens.placeholderColor, tokens.height, tokens.height, tokens.height);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { Label } from '../../TextField.styles';
3
+ import { tokens } from '../../TextField.tokens';
4
+ export var labelPlacement_outer = /*#__PURE__*/css(["", "{display:block;margin-bottom:var(", ");color:var(", ");}"], Label, tokens.labelOffset, tokens.labelColor);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { tokens } from '../../TextField.tokens';
3
+ import { Input, InputWrapper, Label, LeftHelper } from '../../TextField.styles';
4
+ export var base = /*#__PURE__*/css(["&[readonly]{", "{color:var(", ");background-color:var(", ");box-shadow:inset 0 0 0 var(", ") var(", ");}", ":hover{background-color:var(", ");}", "::placeholder{color:var(", ");}", "{color:var(", ");cursor:default;min-width:unset;}", "{color:var(", ");}", "{color:var(", ");}}"], InputWrapper, tokens.colorReadOnly, /*#__PURE__*/String(tokens.backgroundColorReadOnly), /*#__PURE__*/String(tokens.borderWidth), /*#__PURE__*/String(tokens.borderColorReadOnly), InputWrapper, tokens.backgroundColorReadOnly, Input, tokens.placeholderColorReadOnly, Input, tokens.colorReadOnly, LeftHelper, tokens.leftHelperColorReadOnly, Label, tokens.labelColorReadOnly);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { classes, tokens } from '../../TextField.tokens';
3
+ import { Input, InputWrapper, Label, LeftHelper } from '../../TextField.styles';
4
+ export var base = /*#__PURE__*/css(["", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{height:var(", ");border-radius:var(", ");padding:var(", ");&.", "{padding-top:var(", ");padding-bottom:var(", ");}&.", "{padding-left:var(", ");}&.", "{padding-right:var(", ");}}", "{font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}", "{margin-top:var(", ");font-family:var(", ");font-size:var(", ");font-style:var(", ");font-weight:var(", ");letter-spacing:var(", ");line-height:var(", ");}"], Input, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, InputWrapper, tokens.height, tokens.borderRadius, tokens.padding, classes.hasChips, tokens.paddingWithChips, tokens.paddingWithChips, classes.hasEmptyContentLeft, tokens.paddingWithChips, classes.hasEmptyContentRight, tokens.paddingWithChips, Label, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, LeftHelper, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight);
@@ -0,0 +1,4 @@
1
+ import { css } from 'styled-components';
2
+ import { tokens } from '../../TextField.tokens';
3
+ import { Input, InputWrapper, LeftHelper } from '../../TextField.styles';
4
+ export var base = /*#__PURE__*/css(["", "{--plasma_private-textfield-border-color:var(", ");--plasma_private-textfield-bg-color:var(", ");color:var(", ");background-color:var(--plasma_private-textfield-bg-color);box-shadow:inset 0 0 0 var(", ") var(--plasma_private-textfield-border-color);caret-color:var(", ");transition:background-color 0.1s ease-in,color 0.1s ease-in,box-shadow 0.1s ease-in;}", ":hover{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", ":focus-within{--plasma_private-textfield-border-color:var(", ",var(", "));--plasma_private-textfield-bg-color:var( ", ",var(", ") );}", "::placeholder{color:var(", ");}", "{color:var(", ");}", "{color:var(", ");}"], InputWrapper, /*#__PURE__*/String(tokens.borderColor), /*#__PURE__*/String(tokens.backgroundColor), tokens.color, tokens.borderWidth, tokens.caretColor, InputWrapper, tokens.borderColorHover, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorHover, /*#__PURE__*/String(tokens.backgroundColor), InputWrapper, tokens.borderColorFocus, /*#__PURE__*/String(tokens.borderColor), tokens.backgroundColorFocus, /*#__PURE__*/String(tokens.backgroundColor), Input, tokens.placeholderColor, Input, tokens.color, LeftHelper, tokens.leftHelperColor);
@@ -33,12 +33,6 @@ const meta: Meta<typeof Popover> = {
33
33
  },
34
34
  table: { defaultValue: { summary: true } },
35
35
  },
36
- closeOnBeyondTargetHover: {
37
- control: {
38
- type: 'boolean',
39
- },
40
- table: { defaultValue: { summary: true } },
41
- },
42
36
  closeOnEsc: {
43
37
  control: {
44
38
  type: 'boolean',
@@ -68,7 +62,6 @@ const meta: Meta<typeof Popover> = {
68
62
  placement: 'bottom',
69
63
  trigger: 'click',
70
64
  closeOnOverlayClick: true,
71
- closeOnBeyondTargetHover: true,
72
65
  closeOnEsc: true,
73
66
  isFocusTrapped: true,
74
67
  skidding: 0,
@@ -0,0 +1,37 @@
1
+ import { css } from 'styled-components';
2
+ import { textFieldTokens as tokens, textField_labelPlacement_inner as labelPlacement_inner, textField_labelPlacement_outer as labelPlacement_outer } from '../../../../components/TextField';
3
+ export var config = {
4
+ defaults: {
5
+ view: 'default',
6
+ size: 'l',
7
+ labelPlacement: 'outer'
8
+ },
9
+ variations: {
10
+ view: {
11
+ "default": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-transparent-primary);", ":var(--surface-transparent-secondary);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.backgroundColorFocus, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
12
+ // TODO заменить --surface-transparent-positive на корректный токен
13
+ positive: /*#__PURE__*/css(["", ":var(--plasma-colors-primary);", ":var(--surface-transparent-positive);", ":var(--surface-transparent-positive-active);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-positive);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.backgroundColorFocus, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
14
+ // // TODO заменить --surface-transparent-warning на корректный токен
15
+ warning: /*#__PURE__*/css(["", ":var(--plasma-colors-primary);", ":var(--surface-transparent-warning);", ":var(--surface-transparent-warning-active);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-warning);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.backgroundColorFocus, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
16
+ // // TODO заменить --surface-transparent-negative на корректный токен
17
+ negative: /*#__PURE__*/css(["", ":var(--plasma-colors-primary);", ":var(--surface-transparent-negative);", ":var(--surface-transparent-negative-active);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-negative);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.backgroundColorFocus, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor)
18
+ },
19
+ size: {
20
+ l: /*#__PURE__*/css(["", ":3.5rem;", ":1.0625rem 1.125rem 1.0625rem 1.125rem;", ":0.375rem;", ":0.875rem;", ":-0.0625rem 0.5rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 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);", ":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);", ":0.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);", ":0.5625rem 0 0.125rem 0;", ":1.5625rem 0 0.5625rem 0;", ":0.25rem;", ":0.5rem;", ":auto;", ":2.75rem;", ":0.75rem;", ":1rem;", ":0.625rem;", ":0rem;", ":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-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
21
+ m: /*#__PURE__*/css(["", ":3rem;", ":0.875rem 1rem 0.875rem 1rem;", ":0.375rem;", ":0.75rem;", ":-0.125rem 0.375rem -0.125rem -0.125rem;", ":-0.125rem -0.125rem -0.125rem 0.75rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.625rem;", ":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.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);", ":0.375rem 0 0.125rem 0;", ":1.375rem 0 0.375rem 0;", ":0.25rem;", ":0.375rem;", ":auto;", ":2.25rem;", ":0.625rem;", ":0.875rem;", ":0.5rem;", ":0rem;", ":1.25rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
22
+ s: /*#__PURE__*/css(["", ":2.5rem;", ":0.6875rem 0.875rem 0.6875rem 0.875rem;", ":0.375rem;", ":0.625rem;", ":-0.1875rem 0.25rem -0.1875rem -0.125rem;", ":-0.1875rem -0.125rem -0.1875rem 0.75rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.5rem;", ":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.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);", ":0.3125rem 0 0 0;", ":1.0625rem 0 0.3125rem 0;", ":0.25rem;", ":0.25rem;", ":auto;", ":1.75rem;", ":0.5rem;", ":0.75rem;", ":0.375rem;", ":0rem;", ":1rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
23
+ xs: /*#__PURE__*/css(["", ":2rem;", ":0.5625rem 0.625rem 0.5625rem 0.625rem;", ":0.375rem;", ":0.5rem;", ":-0.0625rem 0.25rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":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);", ":0.375rem;", ":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);", ":0.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);", ":0.3125rem 0 0 0;", ":1.0625rem 0 0.3125rem 0;", ":0.25rem;", ":0.125rem;", ":auto;", ":1.25rem;", ":0.375rem;", ":0.625rem;", ":0.25rem;", ":0rem;", ":0.75rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight)
24
+ },
25
+ labelPlacement: {
26
+ inner: [labelPlacement_inner, /*#__PURE__*/css(["&.", "{", ":var(--plasma-input-label-color,var(--plasma-input-placeholder-color,var(--plasma-colors-secondary)));", ":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);}"], labelPlacement_inner, tokens.placeholderColor, tokens.labelInnerFontFamily, tokens.labelInnerFontSize, tokens.labelInnerFontStyle, tokens.labelInnerFontWeight, tokens.labelInnerLetterSpacing, tokens.labelInnerLineHeight)],
27
+ outer: [labelPlacement_outer, /*#__PURE__*/css(["&.", "{}"], labelPlacement_outer)]
28
+ },
29
+ disabled: {
30
+ "true": /*#__PURE__*/css(["", ":0.4;"], tokens.disabledOpacity)
31
+ },
32
+ // TODO заменить --surface-transparent-primary на корректный токен
33
+ readOnly: {
34
+ "true": /*#__PURE__*/css(["", ":var(--text-secondary);", ":var(--surface-transparent-primary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);"], tokens.colorReadOnly, tokens.backgroundColorReadOnly, tokens.placeholderColorReadOnly, tokens.leftHelperColorReadOnly, tokens.labelColorReadOnly)
35
+ }
36
+ }
37
+ };
@@ -0,0 +1,5 @@
1
+ import { component, mergeConfig } from '../../../../engines';
2
+ import { textFieldConfig } from '../../../../components/TextField';
3
+ import { config } from './TextField.config';
4
+ var mergedConfig = /*#__PURE__*/mergeConfig(textFieldConfig, config);
5
+ export var TextField = /*#__PURE__*/component(mergedConfig);
@@ -0,0 +1,181 @@
1
+ import React, { ComponentProps, 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
+
8
+ import { TextField } from './TextField';
9
+
10
+ const onChange = action('onChange');
11
+ const onFocus = action('onFocus');
12
+ const onBlur = action('onBlur');
13
+ const onSearch = action('onSearch');
14
+ const onChipsChange = action('onChipsChange');
15
+
16
+ const sizes = ['l', 'm', 's', 'xs'];
17
+ const views = ['default', 'positive', 'warning', 'negative'];
18
+ const labelPlacements = ['outer', 'inner'];
19
+
20
+ const meta: Meta<typeof TextField> = {
21
+ title: 'plasma_b2c/TextField',
22
+ component: TextField,
23
+ decorators: [WithTheme],
24
+ argTypes: {
25
+ view: {
26
+ options: views,
27
+ control: {
28
+ type: 'select',
29
+ },
30
+ },
31
+ maxLength: {
32
+ control: {
33
+ type: 'number',
34
+ },
35
+ },
36
+ labelPlacement: {
37
+ options: labelPlacements,
38
+ control: {
39
+ type: 'inline-radio',
40
+ },
41
+ },
42
+ size: {
43
+ options: sizes,
44
+ control: {
45
+ type: 'inline-radio',
46
+ },
47
+ },
48
+ },
49
+ };
50
+
51
+ export default meta;
52
+
53
+ type StoryPropsDefault = Omit<
54
+ ComponentProps<typeof TextField>,
55
+ | 'helperBlock'
56
+ | 'contentLeft'
57
+ | 'htmlSize'
58
+ | 'contentRight'
59
+ | 'type'
60
+ | 'name'
61
+ | 'onFocus'
62
+ | 'onBlur'
63
+ | 'onChange'
64
+ | 'value'
65
+ | 'checked'
66
+ | 'maxLength'
67
+ | 'minLength'
68
+ | 'required'
69
+ | 'enumerationType'
70
+ | 'chips'
71
+ | 'onChangeChips'
72
+ > & {
73
+ 'storybook:contentLeft': boolean;
74
+ 'storybook:contentRight': boolean;
75
+ };
76
+
77
+ const StoryDemo = ({
78
+ 'storybook:contentLeft': enableContentLeft,
79
+ 'storybook:contentRight': enableContentRight,
80
+ view,
81
+ ...rest
82
+ }: StoryPropsDefault) => {
83
+ const [text, setText] = useState('Значение поля');
84
+
85
+ const iconSize = rest.size === 'xs' ? 'xs' : 's';
86
+
87
+ return (
88
+ <TextField
89
+ {...rest}
90
+ enumerationType="plain"
91
+ value={text}
92
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
93
+ contentRight={enableContentRight ? <IconPlaceholder size={iconSize} /> : undefined}
94
+ view={view}
95
+ onChange={(e) => {
96
+ setText(e.target.value);
97
+ onChange(e.target.value);
98
+ }}
99
+ onFocus={onFocus}
100
+ onBlur={onBlur}
101
+ onSearch={onSearch}
102
+ />
103
+ );
104
+ };
105
+
106
+ export const Default: StoryObj<StoryPropsDefault> = {
107
+ args: {
108
+ id: 'example-text-field',
109
+ size: 'l',
110
+ view: 'default',
111
+ label: 'Лейбл',
112
+ labelPlacement: 'outer',
113
+ placeholder: 'Заполните поле',
114
+ leftHelper: 'Подсказка к полю',
115
+ disabled: false,
116
+ readOnly: false,
117
+ 'storybook:contentLeft': true,
118
+ 'storybook:contentRight': true,
119
+ },
120
+ render: (args) => <StoryDemo {...args} />,
121
+ };
122
+
123
+ type StoryPropsChips = Omit<
124
+ ComponentProps<typeof TextField>,
125
+ | 'helperBlock'
126
+ | 'contentLeft'
127
+ | 'htmlSize'
128
+ | 'contentRight'
129
+ | 'type'
130
+ | 'name'
131
+ | 'onFocus'
132
+ | 'onBlur'
133
+ | 'onChange'
134
+ | 'onSearch'
135
+ | 'value'
136
+ | 'checked'
137
+ | 'maxLength'
138
+ | 'minLength'
139
+ | 'required'
140
+ | 'enumerationType'
141
+ > & {
142
+ 'storybook:contentLeft': boolean;
143
+ 'storybook:contentRight': boolean;
144
+ };
145
+
146
+ const StoryChips = ({
147
+ 'storybook:contentLeft': enableContentLeft,
148
+ 'storybook:contentRight': enableContentRight,
149
+ view,
150
+ ...rest
151
+ }: StoryPropsChips) => {
152
+ const [text, setText] = useState('Значение поля');
153
+
154
+ const iconSize = rest.size === 'xs' ? 'xs' : 's';
155
+
156
+ return (
157
+ <TextField
158
+ {...rest}
159
+ enumerationType="chip"
160
+ value={text}
161
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
162
+ contentRight={enableContentRight ? <IconPlaceholder size={iconSize} /> : undefined}
163
+ view={view}
164
+ onChange={(e) => {
165
+ setText(e.target.value);
166
+ onChange(e.target.value);
167
+ }}
168
+ onFocus={onFocus}
169
+ onBlur={onBlur}
170
+ onChangeChips={onChipsChange}
171
+ />
172
+ );
173
+ };
174
+
175
+ export const Chips: StoryObj<StoryPropsChips> = {
176
+ args: {
177
+ ...Default.args,
178
+ chips: ['1 value', '2 value', '3 value', '4 value'],
179
+ },
180
+ render: (args) => <StoryChips {...args} />,
181
+ };
@@ -0,0 +1,34 @@
1
+ import { css } from 'styled-components';
2
+ import { textFieldTokens as tokens, textField_labelPlacement_inner as labelPlacement_inner, textField_labelPlacement_outer as labelPlacement_outer } from '../../../../components/TextField';
3
+ export var config = {
4
+ defaults: {
5
+ view: 'default',
6
+ size: 'l',
7
+ labelPlacement: 'outer'
8
+ },
9
+ variations: {
10
+ view: {
11
+ "default": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-secondary);", ":var(--surface-transparent-tertiary);", ":var(--plasma-colors-secondary);", ":var(--surface-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.borderColor, tokens.borderColorHover, tokens.borderColorFocus, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
12
+ positive: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-positive);", ":var(--surface-positive);", ":var(--surface-positive);", ":var(--surface-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.borderColor, tokens.borderColorHover, tokens.borderColorFocus, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
13
+ warning: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-warning);", ":var(--surface-warning);", ":var(--surface-warning);", ":var(--surface-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.borderColor, tokens.borderColorHover, tokens.borderColorFocus, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor),
14
+ negative: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--text-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--text-negative);", ":var(--surface-negative);", ":var(--surface-negative);", ":var(--surface-accent);", ":var(--text-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary-hover);", ":var(--text-primary);", ":var(--surface-transparent-secondary-active);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":var(--surface-transparent-secondary);", ":var(--text-primary);", ":0.72;", ":var(--text-accent);"], tokens.color, tokens.backgroundColor, tokens.caretColor, tokens.placeholderColor, tokens.labelColor, tokens.leftHelperColor, tokens.borderColor, tokens.borderColorHover, tokens.borderColorFocus, tokens.chipCloseIconColor, tokens.chipColor, tokens.chipBackground, tokens.chipColorHover, tokens.chipBackgroundHover, tokens.chipColorActive, tokens.chipBackgroundActive, tokens.chipBackgroundReadOnly, tokens.chipColorReadOnly, tokens.chipBackgroundReadOnlyHover, tokens.chipColorReadOnlyHover, tokens.chipOpacityReadonly, tokens.focusColor)
15
+ },
16
+ size: {
17
+ l: /*#__PURE__*/css(["", ":3.5rem;", ":1.0625rem 1.125rem 1.0625rem 1.125rem;", ":0.375rem;", ":0.875rem;", ":0.0625rem;", ":-0.0625rem 0.5rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 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);", ":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);", ":0.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);", ":0.5625rem 0 0.125rem 0;", ":1.5625rem 0 0.5625rem 0;", ":0.25rem;", ":0.5rem;", ":auto;", ":2.75rem;", ":0.75rem;", ":1rem;", ":0.625rem;", ":0rem;", ":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-font-weight);", ":var(--plasma-typo-body-l-letter-spacing);", ":var(--plasma-typo-body-l-line-height);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.borderWidth, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
18
+ m: /*#__PURE__*/css(["", ":3rem;", ":0.875rem 1rem 0.875rem 1rem;", ":0.375rem;", ":0.75rem;", ":0.0625rem;", ":-0.125rem 0.375rem -0.125rem -0.125rem;", ":-0.125rem -0.125rem -0.125rem 0.75rem;", ":var(--plasma-typo-body-m-font-family);", ":var(--plasma-typo-body-m-font-size);", ":var(--plasma-typo-body-m-font-style);", ":var(--plasma-typo-body-m-font-weight);", ":var(--plasma-typo-body-m-letter-spacing);", ":var(--plasma-typo-body-m-line-height);", ":0.625rem;", ":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.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);", ":0.375rem 0 0.125rem 0;", ":1.375rem 0 0.375rem 0;", ":0.25rem;", ":0.375rem;", ":auto;", ":2.25rem;", ":0.625rem;", ":0.875rem;", ":0.5rem;", ":0rem;", ":1.25rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.borderWidth, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
19
+ s: /*#__PURE__*/css(["", ":2.5rem;", ":0.6875rem 0.875rem 0.6875rem 0.875rem;", ":0.375rem;", ":0.625rem;", ":0.0625rem;", ":-0.1875rem 0.25rem -0.1875rem -0.125rem;", ":-0.1875rem -0.125rem -0.1875rem 0.75rem;", ":var(--plasma-typo-body-s-font-family);", ":var(--plasma-typo-body-s-font-size);", ":var(--plasma-typo-body-s-font-style);", ":var(--plasma-typo-body-s-font-weight);", ":var(--plasma-typo-body-s-letter-spacing);", ":var(--plasma-typo-body-s-line-height);", ":0.5rem;", ":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.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);", ":0.3125rem 0 0 0;", ":1.0625rem 0 0.3125rem 0;", ":0.25rem;", ":0.25rem;", ":auto;", ":1.75rem;", ":0.5rem;", ":0.75rem;", ":0.375rem;", ":0rem;", ":1rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.borderWidth, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight),
20
+ xs: /*#__PURE__*/css(["", ":2rem;", ":0.5625rem 0.625rem 0.5625rem 0.625rem;", ":0.375rem;", ":0.5rem;", ":0.0625rem;", ":-0.0625rem 0.25rem -0.0625rem -0.125rem;", ":-0.0625rem -0.125rem -0.0625rem 0.75rem;", ":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);", ":0.375rem;", ":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);", ":0.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);", ":0.3125rem 0 0 0;", ":1.0625rem 0 0.3125rem 0;", ":0.25rem;", ":0.125rem;", ":auto;", ":1.25rem;", ":0.375rem;", ":0.625rem;", ":0.25rem;", ":0rem;", ":0.75rem;", ":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);"], tokens.height, tokens.padding, tokens.paddingWithChips, tokens.borderRadius, tokens.borderWidth, tokens.leftContentMargin, tokens.rightContentMargin, tokens.fontFamily, tokens.fontSize, tokens.fontStyle, tokens.fontWeight, tokens.letterSpacing, tokens.lineHeight, tokens.labelOffset, tokens.labelFontFamily, tokens.labelFontSize, tokens.labelFontStyle, tokens.labelFontWeight, tokens.labelLetterSpacing, tokens.labelLineHeight, tokens.leftHelperOffset, tokens.leftHelperFontFamily, tokens.leftHelperFontSize, tokens.leftHelperFontStyle, tokens.leftHelperFontWeight, tokens.leftHelperLetterSpacing, tokens.leftHelperLineHeight, tokens.labelInnerPadding, tokens.contentLabelInnerPadding, tokens.chipGap, tokens.chipBorderRadius, tokens.chipWidth, tokens.chipHeight, tokens.chipPaddingRight, tokens.chipPaddingLeft, tokens.chipClearContentMarginLeft, tokens.chipClearContentMarginRight, tokens.chipCloseIconSize, tokens.chipFontFamily, tokens.chipFontSize, tokens.chipFontStyle, tokens.chipFontWeight, tokens.chipLetterSpacing, tokens.chipLineHeight)
21
+ },
22
+ labelPlacement: {
23
+ inner: [labelPlacement_inner, /*#__PURE__*/css(["&.", "{", ":var(--plasma-input-label-color,var(--plasma-input-placeholder-color,var(--plasma-colors-secondary)));", ":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);}"], labelPlacement_inner, tokens.placeholderColor, tokens.labelInnerFontFamily, tokens.labelInnerFontSize, tokens.labelInnerFontStyle, tokens.labelInnerFontWeight, tokens.labelInnerLetterSpacing, tokens.labelInnerLineHeight)],
24
+ outer: [labelPlacement_outer, /*#__PURE__*/css(["&.", "{}"], labelPlacement_outer)]
25
+ },
26
+ disabled: {
27
+ "true": /*#__PURE__*/css(["", ":0.4;"], tokens.disabledOpacity)
28
+ },
29
+ // TODO заменить --surface-transparent-primary на корректный токен
30
+ readOnly: {
31
+ "true": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-clear);", ":var(--surface-transparent-tertiary);", ":var(--text-secondary);", ":var(--text-secondary);", ":var(--text-secondary);"], tokens.colorReadOnly, tokens.backgroundColorReadOnly, tokens.borderColorReadOnly, tokens.placeholderColorReadOnly, tokens.leftHelperColorReadOnly, tokens.labelColorReadOnly)
32
+ }
33
+ }
34
+ };
@@ -0,0 +1,5 @@
1
+ import { component, mergeConfig } from '../../../../engines';
2
+ import { textFieldConfig } from '../../../../components/TextField';
3
+ import { config } from './TextField.config';
4
+ var mergedConfig = /*#__PURE__*/mergeConfig(textFieldConfig, config);
5
+ export var TextField = /*#__PURE__*/component(mergedConfig);
@@ -0,0 +1,181 @@
1
+ import React, { ComponentProps, 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
+
8
+ import { TextField } from './TextField';
9
+
10
+ const onChange = action('onChange');
11
+ const onFocus = action('onFocus');
12
+ const onBlur = action('onBlur');
13
+ const onSearch = action('onSearch');
14
+ const onChipsChange = action('onChipsChange');
15
+
16
+ const sizes = ['l', 'm', 's', 'xs'];
17
+ const views = ['default', 'positive', 'warning', 'negative'];
18
+ const labelPlacements = ['outer', 'inner'];
19
+
20
+ const meta: Meta<typeof TextField> = {
21
+ title: 'plasma_web/TextField',
22
+ component: TextField,
23
+ decorators: [WithTheme],
24
+ argTypes: {
25
+ view: {
26
+ options: views,
27
+ control: {
28
+ type: 'select',
29
+ },
30
+ },
31
+ maxLength: {
32
+ control: {
33
+ type: 'number',
34
+ },
35
+ },
36
+ labelPlacement: {
37
+ options: labelPlacements,
38
+ control: {
39
+ type: 'inline-radio',
40
+ },
41
+ },
42
+ size: {
43
+ options: sizes,
44
+ control: {
45
+ type: 'inline-radio',
46
+ },
47
+ },
48
+ },
49
+ };
50
+
51
+ export default meta;
52
+
53
+ type StoryPropsDefault = Omit<
54
+ ComponentProps<typeof TextField>,
55
+ | 'helperBlock'
56
+ | 'contentLeft'
57
+ | 'htmlSize'
58
+ | 'contentRight'
59
+ | 'type'
60
+ | 'name'
61
+ | 'onFocus'
62
+ | 'onBlur'
63
+ | 'onChange'
64
+ | 'value'
65
+ | 'checked'
66
+ | 'maxLength'
67
+ | 'minLength'
68
+ | 'required'
69
+ | 'enumerationType'
70
+ | 'chips'
71
+ | 'onChangeChips'
72
+ > & {
73
+ 'storybook:contentLeft': boolean;
74
+ 'storybook:contentRight': boolean;
75
+ };
76
+
77
+ const StoryDemo = ({
78
+ 'storybook:contentLeft': enableContentLeft,
79
+ 'storybook:contentRight': enableContentRight,
80
+ view,
81
+ ...rest
82
+ }: StoryPropsDefault) => {
83
+ const [text, setText] = useState('Значение поля');
84
+
85
+ const iconSize = rest.size === 'xs' ? 'xs' : 's';
86
+
87
+ return (
88
+ <TextField
89
+ {...rest}
90
+ enumerationType="plain"
91
+ value={text}
92
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
93
+ contentRight={enableContentRight ? <IconPlaceholder size={iconSize} /> : undefined}
94
+ view={view}
95
+ onChange={(e) => {
96
+ setText(e.target.value);
97
+ onChange(e.target.value);
98
+ }}
99
+ onFocus={onFocus}
100
+ onBlur={onBlur}
101
+ onSearch={onSearch}
102
+ />
103
+ );
104
+ };
105
+
106
+ export const Default: StoryObj<StoryPropsDefault> = {
107
+ args: {
108
+ id: 'example-text-field',
109
+ size: 'l',
110
+ view: 'default',
111
+ label: 'Лейбл',
112
+ labelPlacement: 'outer',
113
+ placeholder: 'Заполните поле',
114
+ leftHelper: 'Подсказка к полю',
115
+ disabled: false,
116
+ readOnly: false,
117
+ 'storybook:contentLeft': true,
118
+ 'storybook:contentRight': true,
119
+ },
120
+ render: (args) => <StoryDemo {...args} />,
121
+ };
122
+
123
+ type StoryPropsChips = Omit<
124
+ ComponentProps<typeof TextField>,
125
+ | 'helperBlock'
126
+ | 'contentLeft'
127
+ | 'htmlSize'
128
+ | 'contentRight'
129
+ | 'type'
130
+ | 'name'
131
+ | 'onFocus'
132
+ | 'onBlur'
133
+ | 'onChange'
134
+ | 'onSearch'
135
+ | 'value'
136
+ | 'checked'
137
+ | 'maxLength'
138
+ | 'minLength'
139
+ | 'required'
140
+ | 'enumerationType'
141
+ > & {
142
+ 'storybook:contentLeft': boolean;
143
+ 'storybook:contentRight': boolean;
144
+ };
145
+
146
+ const StoryChips = ({
147
+ 'storybook:contentLeft': enableContentLeft,
148
+ 'storybook:contentRight': enableContentRight,
149
+ view,
150
+ ...rest
151
+ }: StoryPropsChips) => {
152
+ const [text, setText] = useState('Значение поля');
153
+
154
+ const iconSize = rest.size === 'xs' ? 'xs' : 's';
155
+
156
+ return (
157
+ <TextField
158
+ {...rest}
159
+ enumerationType="chip"
160
+ value={text}
161
+ contentLeft={enableContentLeft ? <IconPlaceholder size={iconSize} /> : undefined}
162
+ contentRight={enableContentRight ? <IconPlaceholder size={iconSize} /> : undefined}
163
+ view={view}
164
+ onChange={(e) => {
165
+ setText(e.target.value);
166
+ onChange(e.target.value);
167
+ }}
168
+ onFocus={onFocus}
169
+ onBlur={onBlur}
170
+ onChangeChips={onChipsChange}
171
+ />
172
+ );
173
+ };
174
+
175
+ export const Chips: StoryObj<StoryPropsChips> = {
176
+ args: {
177
+ ...Default.args,
178
+ chips: ['1 value', '2 value', '3 value', '4 value'],
179
+ },
180
+ render: (args) => <StoryChips {...args} />,
181
+ };