@salutejs/plasma-new-hope 0.170.0-dev.0 → 0.171.0-canary.1459.11401631263.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (416) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +35 -19
  2. package/cjs/components/Autocomplete/Autocomplete.js +4 -2
  3. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/Combobox/ComboboxNew/Combobox.css +39 -18
  5. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.css +39 -18
  6. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +39 -18
  7. package/cjs/components/DatePicker/RangeDate/RangeDate.css +34 -18
  8. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +34 -18
  9. package/cjs/components/DatePicker/SingleDate/SingleDate.css +36 -20
  10. package/cjs/components/Range/Range.css +40 -19
  11. package/cjs/components/Slider/Slider.css +40 -19
  12. package/cjs/components/Slider/Slider.js +2 -0
  13. package/cjs/components/Slider/Slider.js.map +1 -1
  14. package/cjs/components/Slider/components/Double/Double.css +40 -19
  15. package/cjs/components/TextArea/TextArea.js +111 -19
  16. package/cjs/components/TextArea/TextArea.js.map +1 -1
  17. package/cjs/components/TextArea/TextArea.styles.js +166 -63
  18. package/cjs/components/TextArea/TextArea.styles.js.map +1 -1
  19. package/cjs/components/TextArea/TextArea.styles_1ke2ihc.css +18 -0
  20. package/cjs/components/TextArea/TextArea.tokens.js +45 -5
  21. package/cjs/components/TextArea/TextArea.tokens.js.map +1 -1
  22. package/cjs/components/TextArea/hooks/useAutoResize.js +2 -4
  23. package/cjs/components/TextArea/hooks/useAutoResize.js.map +1 -1
  24. package/cjs/components/TextArea/ui/Hint/Hint.css +30 -0
  25. package/cjs/components/TextArea/ui/Hint/Hint.js +53 -0
  26. package/cjs/components/TextArea/ui/Hint/Hint.js.map +1 -0
  27. package/cjs/components/TextArea/variations/_clear/base.js +1 -1
  28. package/cjs/components/TextArea/variations/_clear/base.js.map +1 -1
  29. package/cjs/components/TextArea/variations/_clear/base_iz2qkw.css +1 -0
  30. package/cjs/components/TextArea/variations/_hint-size/base.js +9 -0
  31. package/cjs/components/TextArea/variations/_hint-size/base.js.map +1 -0
  32. package/cjs/components/TextArea/variations/_hint-size/base_1ipgv90.css +1 -0
  33. package/cjs/components/TextArea/variations/_hint-view/base.js +9 -0
  34. package/cjs/components/TextArea/variations/_hint-view/base.js.map +1 -0
  35. package/cjs/components/TextArea/variations/_hint-view/base_111a0qe.css +1 -0
  36. package/cjs/components/TextArea/variations/_view/base.js +1 -1
  37. package/cjs/components/TextArea/variations/_view/base.js.map +1 -1
  38. package/cjs/components/TextArea/variations/_view/base_1xgrm3x.css +1 -0
  39. package/cjs/components/TextField/TextField.js +100 -10
  40. package/cjs/components/TextField/TextField.js.map +1 -1
  41. package/cjs/components/TextField/TextField.styles.js +82 -23
  42. package/cjs/components/TextField/TextField.styles.js.map +1 -1
  43. package/cjs/components/TextField/TextField.styles_grgg7q.css +22 -0
  44. package/cjs/components/TextField/TextField.tokens.js +42 -2
  45. package/cjs/components/TextField/TextField.tokens.js.map +1 -1
  46. package/cjs/components/TextField/ui/Hint/Hint.css +34 -0
  47. package/cjs/components/TextField/ui/Hint/Hint.js +53 -0
  48. package/cjs/components/TextField/ui/Hint/Hint.js.map +1 -0
  49. package/cjs/components/TextField/variations/_clear/base.js +1 -1
  50. package/cjs/components/TextField/variations/_clear/base.js.map +1 -1
  51. package/cjs/components/TextField/variations/_clear/base_1i91sjp.css +1 -0
  52. package/cjs/components/TextField/variations/_disabled/base.js +1 -1
  53. package/cjs/components/TextField/variations/_disabled/{base_2tv0nz.css → base_4d3opa.css} +1 -1
  54. package/cjs/components/TextField/variations/_hint-size/base.js +9 -0
  55. package/cjs/components/TextField/variations/_hint-size/base.js.map +1 -0
  56. package/cjs/components/TextField/variations/_hint-size/base_1x99605.css +1 -0
  57. package/cjs/components/TextField/variations/_hint-view/base.js +9 -0
  58. package/cjs/components/TextField/variations/_hint-view/base.js.map +1 -0
  59. package/cjs/components/TextField/variations/_hint-view/base_l8etux.css +1 -0
  60. package/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  61. package/cjs/components/TextField/variations/_label-placement/base.js.map +1 -1
  62. package/cjs/components/TextField/variations/_label-placement/base_3domm.css +1 -0
  63. package/cjs/components/TextField/variations/_read-only/base.js +1 -1
  64. package/cjs/components/TextField/variations/_read-only/base.js.map +1 -1
  65. package/cjs/components/TextField/variations/_read-only/base_17ypmu7.css +1 -0
  66. package/cjs/components/TextField/variations/_size/base.js +1 -1
  67. package/cjs/components/TextField/variations/_size/base.js.map +1 -1
  68. package/cjs/components/TextField/variations/_size/base_1xdmaqh.css +1 -0
  69. package/cjs/components/TextField/variations/_view/base.js +1 -1
  70. package/cjs/components/TextField/variations/_view/base.js.map +1 -1
  71. package/cjs/components/TextField/variations/_view/base_qhyte8.css +1 -0
  72. package/cjs/components/TextFieldGroup/TextFieldGroup.css +1 -1
  73. package/cjs/components/TextFieldGroup/variations/_shape/base.js +1 -1
  74. package/cjs/components/TextFieldGroup/variations/_shape/base_52bndd.css +1 -0
  75. package/cjs/components/_Icon/Icon.assets/InfoCircleOutline.js +23 -0
  76. package/cjs/components/_Icon/Icon.assets/InfoCircleOutline.js.map +1 -0
  77. package/cjs/components/_Icon/Icons/IconInfoCircleOutline.js +23 -0
  78. package/cjs/components/_Icon/Icons/IconInfoCircleOutline.js.map +1 -0
  79. package/cjs/index.css +56 -34
  80. package/emotion/cjs/components/Autocomplete/Autocomplete.js +4 -2
  81. package/emotion/cjs/components/TextArea/TextArea.js +115 -23
  82. package/emotion/cjs/components/TextArea/TextArea.styles.js +103 -41
  83. package/emotion/cjs/components/TextArea/TextArea.template-doc.mdx +6 -1
  84. package/emotion/cjs/components/TextArea/TextArea.tokens.js +45 -5
  85. package/emotion/cjs/components/TextArea/hooks/useAutoResize.js +2 -4
  86. package/emotion/cjs/components/TextArea/ui/Hint/Hint.js +53 -0
  87. package/emotion/cjs/components/TextArea/ui/Hint/Hint.types.js +5 -0
  88. package/emotion/cjs/components/TextArea/variations/_clear/base.js +1 -1
  89. package/emotion/cjs/components/TextArea/variations/_hint-size/base.js +11 -0
  90. package/emotion/cjs/components/TextArea/variations/_hint-size/tokens.json +21 -0
  91. package/emotion/cjs/components/TextArea/variations/_hint-view/base.js +11 -0
  92. package/emotion/cjs/components/TextArea/variations/_hint-view/tokens.json +5 -0
  93. package/emotion/cjs/components/TextArea/variations/_view/base.js +2 -1
  94. package/emotion/cjs/components/TextField/TextField.js +103 -13
  95. package/emotion/cjs/components/TextField/TextField.styles.js +88 -37
  96. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +6 -1
  97. package/emotion/cjs/components/TextField/TextField.tokens.js +42 -2
  98. package/emotion/cjs/components/TextField/ui/Hint/Hint.js +53 -0
  99. package/emotion/cjs/components/TextField/ui/Hint/Hint.types.js +5 -0
  100. package/emotion/cjs/components/TextField/variations/_clear/base.js +1 -1
  101. package/emotion/cjs/components/TextField/variations/_hint-size/base.js +11 -0
  102. package/emotion/cjs/components/TextField/variations/_hint-size/tokens.json +21 -0
  103. package/emotion/cjs/components/TextField/variations/_hint-view/base.js +11 -0
  104. package/emotion/cjs/components/TextField/variations/_hint-view/tokens.json +5 -0
  105. package/emotion/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  106. package/emotion/cjs/components/TextField/variations/_read-only/base.js +1 -1
  107. package/emotion/cjs/components/TextField/variations/_size/base.js +1 -1
  108. package/emotion/cjs/components/TextField/variations/_view/base.js +1 -1
  109. package/emotion/cjs/components/_Icon/Icon.assets/InfoCircleOutline.js +22 -0
  110. package/emotion/cjs/components/_Icon/Icons/IconInfoCircleOutline.js +22 -0
  111. package/emotion/cjs/components/_Icon/index.js +8 -1
  112. package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +17 -10
  113. package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +72 -0
  114. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +20 -13
  115. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +73 -1
  116. package/emotion/cjs/examples/plasma_web/components/TextArea/TextArea.config.js +17 -10
  117. package/emotion/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +72 -0
  118. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.config.js +20 -13
  119. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +82 -10
  120. package/emotion/es/components/Autocomplete/Autocomplete.js +4 -2
  121. package/emotion/es/components/TextArea/TextArea.js +115 -23
  122. package/emotion/es/components/TextArea/TextArea.styles.js +102 -40
  123. package/emotion/es/components/TextArea/TextArea.template-doc.mdx +6 -1
  124. package/emotion/es/components/TextArea/TextArea.tokens.js +45 -5
  125. package/emotion/es/components/TextArea/hooks/useAutoResize.js +2 -4
  126. package/emotion/es/components/TextArea/ui/Hint/Hint.js +44 -0
  127. package/emotion/es/components/TextArea/ui/Hint/Hint.types.js +1 -0
  128. package/emotion/es/components/TextArea/variations/_clear/base.js +2 -2
  129. package/emotion/es/components/TextArea/variations/_hint-size/base.js +5 -0
  130. package/emotion/es/components/TextArea/variations/_hint-size/tokens.json +21 -0
  131. package/emotion/es/components/TextArea/variations/_hint-view/base.js +5 -0
  132. package/emotion/es/components/TextArea/variations/_hint-view/tokens.json +5 -0
  133. package/emotion/es/components/TextArea/variations/_view/base.js +2 -1
  134. package/emotion/es/components/TextField/TextField.js +102 -12
  135. package/emotion/es/components/TextField/TextField.styles.js +87 -36
  136. package/emotion/es/components/TextField/TextField.template-doc.mdx +6 -1
  137. package/emotion/es/components/TextField/TextField.tokens.js +42 -2
  138. package/emotion/es/components/TextField/ui/Hint/Hint.js +44 -0
  139. package/emotion/es/components/TextField/ui/Hint/Hint.types.js +1 -0
  140. package/emotion/es/components/TextField/variations/_clear/base.js +2 -2
  141. package/emotion/es/components/TextField/variations/_hint-size/base.js +5 -0
  142. package/emotion/es/components/TextField/variations/_hint-size/tokens.json +21 -0
  143. package/emotion/es/components/TextField/variations/_hint-view/base.js +5 -0
  144. package/emotion/es/components/TextField/variations/_hint-view/tokens.json +5 -0
  145. package/emotion/es/components/TextField/variations/_label-placement/base.js +1 -1
  146. package/emotion/es/components/TextField/variations/_read-only/base.js +2 -2
  147. package/emotion/es/components/TextField/variations/_size/base.js +2 -2
  148. package/emotion/es/components/TextField/variations/_view/base.js +2 -2
  149. package/emotion/es/components/_Icon/Icon.assets/InfoCircleOutline.js +15 -0
  150. package/emotion/es/components/_Icon/Icons/IconInfoCircleOutline.js +15 -0
  151. package/emotion/es/components/_Icon/index.js +2 -1
  152. package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +17 -10
  153. package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +72 -0
  154. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.config.js +20 -13
  155. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +73 -1
  156. package/emotion/es/examples/plasma_web/components/TextArea/TextArea.config.js +17 -10
  157. package/emotion/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +72 -0
  158. package/emotion/es/examples/plasma_web/components/TextField/TextField.config.js +20 -13
  159. package/emotion/es/examples/plasma_web/components/TextField/TextField.stories.tsx +82 -10
  160. package/es/components/Autocomplete/Autocomplete.css +35 -19
  161. package/es/components/Autocomplete/Autocomplete.js +4 -2
  162. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  163. package/es/components/Combobox/ComboboxNew/Combobox.css +39 -18
  164. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.css +39 -18
  165. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.css +39 -18
  166. package/es/components/DatePicker/RangeDate/RangeDate.css +34 -18
  167. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +34 -18
  168. package/es/components/DatePicker/SingleDate/SingleDate.css +36 -20
  169. package/es/components/Range/Range.css +40 -19
  170. package/es/components/Slider/Slider.css +40 -19
  171. package/es/components/Slider/Slider.js +2 -0
  172. package/es/components/Slider/Slider.js.map +1 -1
  173. package/es/components/Slider/components/Double/Double.css +40 -19
  174. package/es/components/TextArea/TextArea.js +115 -23
  175. package/es/components/TextArea/TextArea.js.map +1 -1
  176. package/es/components/TextArea/TextArea.styles.js +160 -64
  177. package/es/components/TextArea/TextArea.styles.js.map +1 -1
  178. package/es/components/TextArea/TextArea.styles_1ke2ihc.css +18 -0
  179. package/es/components/TextArea/TextArea.tokens.js +45 -5
  180. package/es/components/TextArea/TextArea.tokens.js.map +1 -1
  181. package/es/components/TextArea/hooks/useAutoResize.js +2 -4
  182. package/es/components/TextArea/hooks/useAutoResize.js.map +1 -1
  183. package/es/components/TextArea/ui/Hint/Hint.css +30 -0
  184. package/es/components/TextArea/ui/Hint/Hint.js +49 -0
  185. package/es/components/TextArea/ui/Hint/Hint.js.map +1 -0
  186. package/es/components/TextArea/variations/_clear/base.js +1 -1
  187. package/es/components/TextArea/variations/_clear/base.js.map +1 -1
  188. package/es/components/TextArea/variations/_clear/base_iz2qkw.css +1 -0
  189. package/es/components/TextArea/variations/_hint-size/base.js +5 -0
  190. package/es/components/TextArea/variations/_hint-size/base.js.map +1 -0
  191. package/es/components/TextArea/variations/_hint-size/base_1ipgv90.css +1 -0
  192. package/es/components/TextArea/variations/_hint-view/base.js +5 -0
  193. package/es/components/TextArea/variations/_hint-view/base.js.map +1 -0
  194. package/es/components/TextArea/variations/_hint-view/base_111a0qe.css +1 -0
  195. package/es/components/TextArea/variations/_view/base.js +1 -1
  196. package/es/components/TextArea/variations/_view/base.js.map +1 -1
  197. package/es/components/TextArea/variations/_view/base_1xgrm3x.css +1 -0
  198. package/es/components/TextField/TextField.js +101 -11
  199. package/es/components/TextField/TextField.js.map +1 -1
  200. package/es/components/TextField/TextField.styles.js +76 -24
  201. package/es/components/TextField/TextField.styles.js.map +1 -1
  202. package/es/components/TextField/TextField.styles_grgg7q.css +22 -0
  203. package/es/components/TextField/TextField.tokens.js +42 -2
  204. package/es/components/TextField/TextField.tokens.js.map +1 -1
  205. package/es/components/TextField/ui/Hint/Hint.css +34 -0
  206. package/es/components/TextField/ui/Hint/Hint.js +49 -0
  207. package/es/components/TextField/ui/Hint/Hint.js.map +1 -0
  208. package/es/components/TextField/variations/_clear/base.js +1 -1
  209. package/es/components/TextField/variations/_clear/base.js.map +1 -1
  210. package/es/components/TextField/variations/_clear/base_1i91sjp.css +1 -0
  211. package/es/components/TextField/variations/_disabled/base.js +1 -1
  212. package/es/components/TextField/variations/_disabled/{base_2tv0nz.css → base_4d3opa.css} +1 -1
  213. package/es/components/TextField/variations/_hint-size/base.js +5 -0
  214. package/es/components/TextField/variations/_hint-size/base.js.map +1 -0
  215. package/es/components/TextField/variations/_hint-size/base_1x99605.css +1 -0
  216. package/es/components/TextField/variations/_hint-view/base.js +5 -0
  217. package/es/components/TextField/variations/_hint-view/base.js.map +1 -0
  218. package/es/components/TextField/variations/_hint-view/base_l8etux.css +1 -0
  219. package/es/components/TextField/variations/_label-placement/base.js +1 -1
  220. package/es/components/TextField/variations/_label-placement/base.js.map +1 -1
  221. package/es/components/TextField/variations/_label-placement/base_3domm.css +1 -0
  222. package/es/components/TextField/variations/_read-only/base.js +1 -1
  223. package/es/components/TextField/variations/_read-only/base.js.map +1 -1
  224. package/es/components/TextField/variations/_read-only/base_17ypmu7.css +1 -0
  225. package/es/components/TextField/variations/_size/base.js +1 -1
  226. package/es/components/TextField/variations/_size/base.js.map +1 -1
  227. package/es/components/TextField/variations/_size/base_1xdmaqh.css +1 -0
  228. package/es/components/TextField/variations/_view/base.js +1 -1
  229. package/es/components/TextField/variations/_view/base.js.map +1 -1
  230. package/es/components/TextField/variations/_view/base_qhyte8.css +1 -0
  231. package/es/components/TextFieldGroup/TextFieldGroup.css +1 -1
  232. package/es/components/TextFieldGroup/variations/_shape/base.js +1 -1
  233. package/es/components/TextFieldGroup/variations/_shape/base_52bndd.css +1 -0
  234. package/es/components/_Icon/Icon.assets/InfoCircleOutline.js +19 -0
  235. package/es/components/_Icon/Icon.assets/InfoCircleOutline.js.map +1 -0
  236. package/es/components/_Icon/Icons/IconInfoCircleOutline.js +19 -0
  237. package/es/components/_Icon/Icons/IconInfoCircleOutline.js.map +1 -0
  238. package/es/index.css +56 -34
  239. package/package.json +2 -2
  240. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +4 -2
  241. package/styled-components/cjs/components/TextArea/TextArea.js +114 -22
  242. package/styled-components/cjs/components/TextArea/TextArea.styles.js +88 -42
  243. package/styled-components/cjs/components/TextArea/TextArea.template-doc.mdx +6 -1
  244. package/styled-components/cjs/components/TextArea/TextArea.tokens.js +45 -5
  245. package/styled-components/cjs/components/TextArea/hooks/useAutoResize.js +2 -4
  246. package/styled-components/cjs/components/TextArea/ui/Hint/Hint.js +53 -0
  247. package/styled-components/cjs/components/TextArea/ui/Hint/Hint.types.js +5 -0
  248. package/styled-components/cjs/components/TextArea/variations/_clear/base.js +1 -1
  249. package/styled-components/cjs/components/TextArea/variations/_hint-size/base.js +11 -0
  250. package/styled-components/cjs/components/TextArea/variations/_hint-size/tokens.json +21 -0
  251. package/styled-components/cjs/components/TextArea/variations/_hint-view/base.js +11 -0
  252. package/styled-components/cjs/components/TextArea/variations/_hint-view/tokens.json +5 -0
  253. package/styled-components/cjs/components/TextArea/variations/_view/base.js +2 -1
  254. package/styled-components/cjs/components/TextField/TextField.js +102 -12
  255. package/styled-components/cjs/components/TextField/TextField.styles.js +49 -21
  256. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +6 -1
  257. package/styled-components/cjs/components/TextField/TextField.tokens.js +42 -2
  258. package/styled-components/cjs/components/TextField/ui/Hint/Hint.js +53 -0
  259. package/styled-components/cjs/components/TextField/ui/Hint/Hint.types.js +5 -0
  260. package/styled-components/cjs/components/TextField/variations/_clear/base.js +1 -1
  261. package/styled-components/cjs/components/TextField/variations/_hint-size/base.js +11 -0
  262. package/styled-components/cjs/components/TextField/variations/_hint-size/tokens.json +21 -0
  263. package/styled-components/cjs/components/TextField/variations/_hint-view/base.js +11 -0
  264. package/styled-components/cjs/components/TextField/variations/_hint-view/tokens.json +5 -0
  265. package/styled-components/cjs/components/TextField/variations/_label-placement/base.js +1 -1
  266. package/styled-components/cjs/components/TextField/variations/_read-only/base.js +1 -1
  267. package/styled-components/cjs/components/TextField/variations/_size/base.js +1 -1
  268. package/styled-components/cjs/components/TextField/variations/_view/base.js +1 -1
  269. package/styled-components/cjs/components/_Icon/Icon.assets/InfoCircleOutline.js +22 -0
  270. package/styled-components/cjs/components/_Icon/Icons/IconInfoCircleOutline.js +22 -0
  271. package/styled-components/cjs/components/_Icon/index.js +8 -1
  272. package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +16 -9
  273. package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +72 -0
  274. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +16 -9
  275. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +73 -1
  276. package/styled-components/cjs/examples/plasma_web/components/TextArea/TextArea.config.js +16 -9
  277. package/styled-components/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +72 -0
  278. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.config.js +16 -9
  279. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +82 -10
  280. package/styled-components/es/components/Autocomplete/Autocomplete.js +4 -2
  281. package/styled-components/es/components/TextArea/TextArea.js +114 -22
  282. package/styled-components/es/components/TextArea/TextArea.styles.js +87 -41
  283. package/styled-components/es/components/TextArea/TextArea.template-doc.mdx +6 -1
  284. package/styled-components/es/components/TextArea/TextArea.tokens.js +45 -5
  285. package/styled-components/es/components/TextArea/hooks/useAutoResize.js +2 -4
  286. package/styled-components/es/components/TextArea/ui/Hint/Hint.js +44 -0
  287. package/styled-components/es/components/TextArea/ui/Hint/Hint.types.js +1 -0
  288. package/styled-components/es/components/TextArea/variations/_clear/base.js +2 -2
  289. package/styled-components/es/components/TextArea/variations/_hint-size/base.js +5 -0
  290. package/styled-components/es/components/TextArea/variations/_hint-size/tokens.json +21 -0
  291. package/styled-components/es/components/TextArea/variations/_hint-view/base.js +5 -0
  292. package/styled-components/es/components/TextArea/variations/_hint-view/tokens.json +5 -0
  293. package/styled-components/es/components/TextArea/variations/_view/base.js +2 -1
  294. package/styled-components/es/components/TextField/TextField.js +101 -11
  295. package/styled-components/es/components/TextField/TextField.styles.js +48 -20
  296. package/styled-components/es/components/TextField/TextField.template-doc.mdx +6 -1
  297. package/styled-components/es/components/TextField/TextField.tokens.js +42 -2
  298. package/styled-components/es/components/TextField/ui/Hint/Hint.js +44 -0
  299. package/styled-components/es/components/TextField/ui/Hint/Hint.types.js +1 -0
  300. package/styled-components/es/components/TextField/variations/_clear/base.js +2 -2
  301. package/styled-components/es/components/TextField/variations/_hint-size/base.js +5 -0
  302. package/styled-components/es/components/TextField/variations/_hint-size/tokens.json +21 -0
  303. package/styled-components/es/components/TextField/variations/_hint-view/base.js +5 -0
  304. package/styled-components/es/components/TextField/variations/_hint-view/tokens.json +5 -0
  305. package/styled-components/es/components/TextField/variations/_label-placement/base.js +1 -1
  306. package/styled-components/es/components/TextField/variations/_read-only/base.js +2 -2
  307. package/styled-components/es/components/TextField/variations/_size/base.js +2 -2
  308. package/styled-components/es/components/TextField/variations/_view/base.js +2 -2
  309. package/styled-components/es/components/_Icon/Icon.assets/InfoCircleOutline.js +15 -0
  310. package/styled-components/es/components/_Icon/Icons/IconInfoCircleOutline.js +15 -0
  311. package/styled-components/es/components/_Icon/index.js +2 -1
  312. package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +16 -9
  313. package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +72 -0
  314. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +16 -9
  315. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +73 -1
  316. package/styled-components/es/examples/plasma_web/components/TextArea/TextArea.config.js +16 -9
  317. package/styled-components/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +72 -0
  318. package/styled-components/es/examples/plasma_web/components/TextField/TextField.config.js +16 -9
  319. package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +82 -10
  320. package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  321. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +408 -0
  322. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  323. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +408 -0
  324. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  325. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +408 -0
  326. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  327. package/types/components/Range/Range.styles.d.ts +408 -0
  328. package/types/components/Range/Range.styles.d.ts.map +1 -1
  329. package/types/components/Slider/components/Double/Double.styles.d.ts +408 -0
  330. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  331. package/types/components/TextArea/TextArea.d.ts +9 -3
  332. package/types/components/TextArea/TextArea.d.ts.map +1 -1
  333. package/types/components/TextArea/TextArea.styles.d.ts +12 -1
  334. package/types/components/TextArea/TextArea.styles.d.ts.map +1 -1
  335. package/types/components/TextArea/TextArea.tokens.d.ts +40 -0
  336. package/types/components/TextArea/TextArea.tokens.d.ts.map +1 -1
  337. package/types/components/TextArea/TextArea.types.d.ts +78 -3
  338. package/types/components/TextArea/TextArea.types.d.ts.map +1 -1
  339. package/types/components/TextArea/hooks/useAutoResize.d.ts.map +1 -1
  340. package/types/components/TextArea/ui/Hint/Hint.d.ts +4 -0
  341. package/types/components/TextArea/ui/Hint/Hint.d.ts.map +1 -0
  342. package/types/components/TextArea/ui/Hint/Hint.types.d.ts +17 -0
  343. package/types/components/TextArea/ui/Hint/Hint.types.d.ts.map +1 -0
  344. package/types/components/TextArea/variations/_clear/base.d.ts.map +1 -1
  345. package/types/components/TextArea/variations/_hint-size/base.d.ts +2 -0
  346. package/types/components/TextArea/variations/_hint-size/base.d.ts.map +1 -0
  347. package/types/components/TextArea/variations/_hint-view/base.d.ts +2 -0
  348. package/types/components/TextArea/variations/_hint-view/base.d.ts.map +1 -0
  349. package/types/components/TextArea/variations/_view/base.d.ts.map +1 -1
  350. package/types/components/TextField/TextField.d.ts +9 -3
  351. package/types/components/TextField/TextField.d.ts.map +1 -1
  352. package/types/components/TextField/TextField.styles.d.ts +9 -0
  353. package/types/components/TextField/TextField.styles.d.ts.map +1 -1
  354. package/types/components/TextField/TextField.tokens.d.ts +40 -0
  355. package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
  356. package/types/components/TextField/TextField.types.d.ts +73 -2
  357. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  358. package/types/components/TextField/ui/Hint/Hint.d.ts +4 -0
  359. package/types/components/TextField/ui/Hint/Hint.d.ts.map +1 -0
  360. package/types/components/TextField/ui/Hint/Hint.types.d.ts +17 -0
  361. package/types/components/TextField/ui/Hint/Hint.types.d.ts.map +1 -0
  362. package/types/components/TextField/variations/_clear/base.d.ts.map +1 -1
  363. package/types/components/TextField/variations/_hint-size/base.d.ts +2 -0
  364. package/types/components/TextField/variations/_hint-size/base.d.ts.map +1 -0
  365. package/types/components/TextField/variations/_hint-view/base.d.ts +2 -0
  366. package/types/components/TextField/variations/_hint-view/base.d.ts.map +1 -0
  367. package/types/components/TextField/variations/_label-placement/base.d.ts.map +1 -1
  368. package/types/components/TextField/variations/_read-only/base.d.ts.map +1 -1
  369. package/types/components/TextField/variations/_size/base.d.ts.map +1 -1
  370. package/types/components/TextField/variations/_view/base.d.ts.map +1 -1
  371. package/types/components/_Icon/Icon.assets/InfoCircleOutline.d.ts +4 -0
  372. package/types/components/_Icon/Icon.assets/InfoCircleOutline.d.ts.map +1 -0
  373. package/types/components/_Icon/Icons/IconInfoCircleOutline.d.ts +4 -0
  374. package/types/components/_Icon/Icons/IconInfoCircleOutline.d.ts.map +1 -0
  375. package/types/components/_Icon/index.d.ts +1 -0
  376. package/types/components/_Icon/index.d.ts.map +1 -1
  377. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +740 -12
  378. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -1
  379. package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts +7 -0
  380. package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts.map +1 -1
  381. package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts +455 -0
  382. package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts.map +1 -1
  383. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts +7 -0
  384. package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
  385. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +415 -0
  386. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  387. package/types/examples/plasma_web/components/Mask/Mask.d.ts +740 -12
  388. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -1
  389. package/types/examples/plasma_web/components/TextArea/TextArea.config.d.ts +7 -0
  390. package/types/examples/plasma_web/components/TextArea/TextArea.config.d.ts.map +1 -1
  391. package/types/examples/plasma_web/components/TextArea/TextArea.d.ts +455 -0
  392. package/types/examples/plasma_web/components/TextArea/TextArea.d.ts.map +1 -1
  393. package/types/examples/plasma_web/components/TextField/TextField.config.d.ts +7 -0
  394. package/types/examples/plasma_web/components/TextField/TextField.config.d.ts.map +1 -1
  395. package/types/examples/plasma_web/components/TextField/TextField.d.ts +415 -0
  396. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  397. package/cjs/components/TextArea/TextArea.styles_es0miz.css +0 -11
  398. package/cjs/components/TextArea/variations/_clear/base_vidplj.css +0 -1
  399. package/cjs/components/TextArea/variations/_view/base_td55th.css +0 -1
  400. package/cjs/components/TextField/TextField.styles_1d2ryq.css +0 -15
  401. package/cjs/components/TextField/variations/_clear/base_rit6gc.css +0 -1
  402. package/cjs/components/TextField/variations/_label-placement/base_1ghihns.css +0 -1
  403. package/cjs/components/TextField/variations/_read-only/base_1n7tghz.css +0 -1
  404. package/cjs/components/TextField/variations/_size/base_1h8l0kj.css +0 -1
  405. package/cjs/components/TextField/variations/_view/base_1noe46b.css +0 -1
  406. package/cjs/components/TextFieldGroup/variations/_shape/base_1e0je21.css +0 -1
  407. package/es/components/TextArea/TextArea.styles_es0miz.css +0 -11
  408. package/es/components/TextArea/variations/_clear/base_vidplj.css +0 -1
  409. package/es/components/TextArea/variations/_view/base_td55th.css +0 -1
  410. package/es/components/TextField/TextField.styles_1d2ryq.css +0 -15
  411. package/es/components/TextField/variations/_clear/base_rit6gc.css +0 -1
  412. package/es/components/TextField/variations/_label-placement/base_1ghihns.css +0 -1
  413. package/es/components/TextField/variations/_read-only/base_1n7tghz.css +0 -1
  414. package/es/components/TextField/variations/_size/base_1h8l0kj.css +0 -1
  415. package/es/components/TextField/variations/_view/base_1noe46b.css +0 -1
  416. package/es/components/TextFieldGroup/variations/_shape/base_1e0je21.css +0 -1
@@ -7,6 +7,7 @@ var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelper
7
7
  var React = require('react');
8
8
  var plasmaCore = require('@salutejs/plasma-core');
9
9
  var index = require('../../utils/index.js');
10
+ var useOutsideClick = require('../../hooks/useOutsideClick.js');
10
11
  var useAutoResize = require('./hooks/useAutoResize.js');
11
12
  var TextArea_styles = require('./TextArea.styles.js');
12
13
  var TextArea_tokens = require('./TextArea.tokens.js');
@@ -14,9 +15,12 @@ var base$2 = require('./variations/_view/base.js');
14
15
  var base$1 = require('./variations/_size/base.js');
15
16
  var base$3 = require('./variations/_clear/base.js');
16
17
  var base$4 = require('./variations/_disabled/base.js');
18
+ var base$5 = require('./variations/_hint-view/base.js');
19
+ var base$6 = require('./variations/_hint-size/base.js');
20
+ var Hint = require('./ui/Hint/Hint.js');
17
21
  var setRefList = require('../../utils/setRefList.js');
18
22
 
19
- var _excluded = ["helperText", "status", "resize", "rightHelper", "leftHelper", "contentRight", "autoResize", "minAuto", "maxAuto", "label", "labelPlacement", "placeholder", "defaultValue", "height", "width", "value", "disabled", "required", "requiredPlacement", "optional", "clear", "hasDivider", "size", "view", "id", "style", "className", "readOnly", "rows", "cols", "onChange"];
23
+ var _excluded = ["helperText", "status", "resize", "rightHelper", "leftHelper", "contentRight", "autoResize", "minAuto", "maxAuto", "label", "labelPlacement", "titleCaption", "placeholder", "defaultValue", "height", "width", "value", "disabled", "required", "requiredPlacement", "optional", "clear", "hasDivider", "size", "view", "id", "style", "className", "readOnly", "rows", "cols", "hintTrigger", "hintText", "hintView", "hintSize", "hintTargetIcon", "hintPlacement", "hintHasArrow", "hintOffset", "hintWidth", "hintContentLeft", "onChange"];
20
24
  var innerPlaceholderUp = TextArea_tokens.classes.innerPlaceholderUp,
21
25
  focusedOuterPlaceholderColor = TextArea_tokens.classes.focusedOuterPlaceholderColor,
22
26
  hidePlaceHolder = TextArea_tokens.classes.hidePlaceHolder,
@@ -35,6 +39,7 @@ var fallbackStatusMap = {
35
39
  warning: 'warning',
36
40
  error: 'negative'
37
41
  };
42
+ var HINT_DEFAULT_OFFSET = [0, 0];
38
43
 
39
44
  // TODO: Перенести этот метод в файл applyDynamicLabel.ts
40
45
  var getDynamicLabelClasses = function getDynamicLabelClasses(props, focused) {
@@ -71,6 +76,7 @@ var textAreaRoot = function textAreaRoot(Root) {
71
76
  label = props.label,
72
77
  _props$labelPlacement = props.labelPlacement,
73
78
  labelPlacement = _props$labelPlacement === void 0 ? 'inner' : _props$labelPlacement,
79
+ titleCaption = props.titleCaption,
74
80
  placeholder = props.placeholder,
75
81
  defaultValue = props.defaultValue,
76
82
  height = props.height,
@@ -93,21 +99,45 @@ var textAreaRoot = function textAreaRoot(Root) {
93
99
  readOnly = props.readOnly,
94
100
  rows = props.rows,
95
101
  cols = props.cols,
102
+ _props$hintTrigger = props.hintTrigger,
103
+ hintTrigger = _props$hintTrigger === void 0 ? 'hover' : _props$hintTrigger,
104
+ hintText = props.hintText,
105
+ _props$hintView = props.hintView,
106
+ hintView = _props$hintView === void 0 ? 'default' : _props$hintView,
107
+ _props$hintSize = props.hintSize,
108
+ hintSize = _props$hintSize === void 0 ? 'm' : _props$hintSize,
109
+ hintTargetIcon = props.hintTargetIcon,
110
+ _props$hintPlacement = props.hintPlacement,
111
+ hintPlacement = _props$hintPlacement === void 0 ? 'auto' : _props$hintPlacement,
112
+ hintHasArrow = props.hintHasArrow,
113
+ _props$hintOffset = props.hintOffset,
114
+ hintOffset = _props$hintOffset === void 0 ? HINT_DEFAULT_OFFSET : _props$hintOffset,
115
+ hintWidth = props.hintWidth,
116
+ hintContentLeft = props.hintContentLeft,
96
117
  onChange = props.onChange,
97
118
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(props, _excluded);
98
- var _useState = React.useState(width ? "".concat(width, "rem") : '100%'),
119
+ var _useState = React.useState(false),
99
120
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
100
- helperWidth = _useState2[0],
101
- setHelperWidth = _useState2[1];
102
- var _useState3 = React.useState(false),
121
+ isHintVisible = _useState2[0],
122
+ setIsHintVisible = _useState2[1];
123
+ var _useState3 = React.useState(width ? "".concat(width, "rem") : '100%'),
103
124
  _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
104
- focused = _useState4[0],
105
- setFocused = _useState4[1];
106
- var _useState5 = React.useState(),
125
+ helperWidth = _useState4[0],
126
+ setHelperWidth = _useState4[1];
127
+ var _useState5 = React.useState(false),
107
128
  _useState6 = _rollupPluginBabelHelpers.slicedToArray(_useState5, 2),
108
- uncontrolledValue = _useState6[0],
109
- setUncontrolledValue = _useState6[1];
129
+ focused = _useState6[0],
130
+ setFocused = _useState6[1];
131
+ var _useState7 = React.useState(),
132
+ _useState8 = _rollupPluginBabelHelpers.slicedToArray(_useState7, 2),
133
+ uncontrolledValue = _useState8[0],
134
+ setUncontrolledValue = _useState8[1];
110
135
  var outerRef = /*#__PURE__*/React.createRef();
136
+ var hintRef = useOutsideClick.useOutsideClick(function () {
137
+ setIsHintVisible(false);
138
+ });
139
+ var hintInnerRef = React.useRef(null);
140
+ var hintForkRef = plasmaCore.useForkRef(hintRef, hintInnerRef);
111
141
  var innerOptional = required ? false : optional;
112
142
  var hasHelper = Boolean(leftHelper || rightHelper || helperText);
113
143
  var hasOuterLabel = Boolean(label && labelPlacement === 'outer');
@@ -118,9 +148,28 @@ var textAreaRoot = function textAreaRoot(Root) {
118
148
  var applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;
119
149
  var placeholderLabel = hasInnerLabel ? label : placeholder;
120
150
  var clearClass = clear ? TextArea_tokens.classes.clear : undefined;
151
+ var hasHintClass = hintText ? TextArea_tokens.classes.hasHint : undefined;
121
152
  var hasRightContentClass = contentRight ? TextArea_tokens.classes.hasRightContent : undefined;
122
153
  var hasDividerClass = hasDivider ? TextArea_tokens.classes.hasDivider : undefined;
123
- var requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;
154
+ var requiredPlacementClass = requiredPlacement === 'right' ? TextArea_tokens.classes.requiredAlignRight : undefined;
155
+ var handleHintShow = function handleHintShow() {
156
+ return setIsHintVisible(true);
157
+ };
158
+ var handleHintHide = function handleHintHide() {
159
+ return setIsHintVisible(false);
160
+ };
161
+ var handleHintClick = function handleHintClick(event) {
162
+ var _hintInnerRef$current;
163
+ if (!hintText || hintTrigger !== 'click') {
164
+ return;
165
+ }
166
+ event.stopPropagation();
167
+ var targetIsPopover = event.target === hintInnerRef.current;
168
+ var rootHasTarget = (_hintInnerRef$current = hintInnerRef.current) === null || _hintInnerRef$current === void 0 ? void 0 : _hintInnerRef$current.contains(event.target);
169
+ if (!targetIsPopover && !rootHasTarget) {
170
+ setIsHintVisible(true);
171
+ }
172
+ };
124
173
  plasmaCore.useResizeObserver(outerRef, function (currentElement) {
125
174
  var inlineWidth = currentElement.style.width;
126
175
  if (inlineWidth || cols) {
@@ -162,8 +211,10 @@ var textAreaRoot = function textAreaRoot(Root) {
162
211
  value: value || uncontrolledValue || defaultValue,
163
212
  rows: rows
164
213
  }, focused);
165
- var optionalTextNode = innerOptional ? /*#__PURE__*/React.createElement(TextArea_styles.StyledOptionalText, null, Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\xa0', optionalText) : null;
166
- return /*#__PURE__*/React.createElement(Root, {
214
+ var optionalTextNode = innerOptional ? /*#__PURE__*/React.createElement(TextArea_styles.StyledOptionalText, {
215
+ inheritFont: !hasOuterLabel
216
+ }, Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\xa0', optionalText) : null;
217
+ return /*#__PURE__*/React.createElement(Root, _rollupPluginBabelHelpers.extends({
167
218
  view: overriddenView,
168
219
  size: size,
169
220
  disabled: disabled,
@@ -172,18 +223,53 @@ var textAreaRoot = function textAreaRoot(Root) {
172
223
  style: _rollupPluginBabelHelpers.objectSpread2({
173
224
  width: helperWidth
174
225
  }, style),
175
- className: index.cx(clearClass, hasDividerClass, className),
226
+ className: index.cx(clearClass, hasDividerClass, hasHintClass, className),
176
227
  onClick: handleTextAreaFocus
177
- }, hasOuterLabel && /*#__PURE__*/React.createElement(TextArea_styles.StyledLabel, null, required && /*#__PURE__*/React.createElement(TextArea_styles.StyledIndicator, {
178
- className: index.cx(TextArea_tokens.classes.outerLabelPlacement, requiredPlacementClass)
179
- }), label, optionalTextNode), /*#__PURE__*/React.createElement(TextArea_styles.StyledContainer, {
228
+ }, hintText && {
229
+ hintView: hintView || 'default',
230
+ hintSize: hintSize || 'm'
231
+ }), (hasOuterLabel || titleCaption) && /*#__PURE__*/React.createElement(TextArea_styles.OuterLabelWrapper, {
232
+ isInnnerLabel: labelPlacement === 'inner'
233
+ }, hasOuterLabel && /*#__PURE__*/React.createElement(TextArea_styles.StyledIndicatorWrapper, null, /*#__PURE__*/React.createElement(TextArea_styles.StyledLabel, null, label), hintText && /*#__PURE__*/React.createElement(TextArea_styles.StyledHintWrapper, null, /*#__PURE__*/React.createElement(Hint.HintComponent, {
234
+ ref: hintForkRef,
235
+ hintText: hintText,
236
+ hintTrigger: hintTrigger,
237
+ isHintVisible: isHintVisible,
238
+ hintTargetIcon: hintTargetIcon,
239
+ hintPlacement: hintPlacement,
240
+ hintHasArrow: hintHasArrow,
241
+ hintOffset: hintOffset,
242
+ hintWidth: hintWidth,
243
+ hintContentLeft: hintContentLeft,
244
+ handleHintShow: handleHintShow,
245
+ handleHintHide: handleHintHide,
246
+ handleHintClick: handleHintClick
247
+ })), required && /*#__PURE__*/React.createElement(TextArea_styles.StyledIndicator, {
248
+ className: index.cx(TextArea_tokens.classes.outerLabelPlacement, requiredPlacementClass, hasHintClass)
249
+ }), optionalTextNode), titleCaption && /*#__PURE__*/React.createElement(TextArea_styles.TitleCaption, null, titleCaption)), /*#__PURE__*/React.createElement(TextArea_styles.StyledContainer, {
180
250
  className: index.cx.apply(void 0, [styledContainer].concat(_rollupPluginBabelHelpers.toConsumableArray(dynamicLabelClasses))),
181
251
  width: helperWidth,
182
252
  onFocus: onFocusHandler,
183
253
  onBlur: onBlurHandler
184
- }, required && !hasOuterLabel && /*#__PURE__*/React.createElement(TextArea_styles.StyledIndicator, {
254
+ }, !hasOuterLabel && /*#__PURE__*/React.createElement(React.Fragment, null, required && /*#__PURE__*/React.createElement(TextArea_styles.StyledIndicator, {
185
255
  className: index.cx(TextArea_tokens.classes.innerLabelPlacement, requiredPlacementClass)
186
- }), contentRight && /*#__PURE__*/React.createElement(TextArea_styles.StyledContent, null, contentRight), /*#__PURE__*/React.createElement(TextArea_styles.StyledTextAreaWrapper, {
256
+ }), hintText && /*#__PURE__*/React.createElement(TextArea_styles.StyledHintWrapper, {
257
+ className: TextArea_tokens.classes.innerLabelPlacement
258
+ }, /*#__PURE__*/React.createElement(Hint.HintComponent, {
259
+ ref: hintForkRef,
260
+ hintText: hintText,
261
+ hintTrigger: hintTrigger,
262
+ isHintVisible: isHintVisible,
263
+ hintTargetIcon: hintTargetIcon,
264
+ hintPlacement: hintPlacement,
265
+ hintHasArrow: hintHasArrow,
266
+ hintOffset: hintOffset,
267
+ hintWidth: hintWidth,
268
+ hintContentLeft: hintContentLeft,
269
+ handleHintShow: handleHintShow,
270
+ handleHintHide: handleHintHide,
271
+ handleHintClick: handleHintClick
272
+ }))), contentRight && /*#__PURE__*/React.createElement(TextArea_styles.StyledContent, null, contentRight), /*#__PURE__*/React.createElement(TextArea_styles.StyledTextAreaWrapper, {
187
273
  className: styledTextAreaWrapper,
188
274
  hasHelper: hasHelper
189
275
  }, /*#__PURE__*/React.createElement(TextArea_styles.StyledTextArea, _rollupPluginBabelHelpers.extends({
@@ -237,6 +323,12 @@ var textAreaConfig = {
237
323
  },
238
324
  readOnly: {
239
325
  attrs: true
326
+ },
327
+ hintView: {
328
+ css: base$5.base
329
+ },
330
+ hintSize: {
331
+ css: base$6.base
240
332
  }
241
333
  },
242
334
  defaults: {
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && rows) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n clear,\n hasDivider,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const clearClass = clear ? classes.clear : undefined;\n const hasRightContentClass = contentRight ? classes.hasRightContent : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize || Boolean(clear), outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const handleTextAreaFocus = () => {\n if (readOnly || disabled || !outerRef?.current) {\n return;\n }\n\n outerRef.current.scrollTo({\n top: 0,\n left: outerRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n outerRef.current.focus();\n };\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n rows,\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n clear={clear}\n style={{ width: helperWidth, ...style }}\n className={cx(clearClass, hasDividerClass, className)}\n onClick={handleTextAreaFocus}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && (\n <StyledIndicator className={cx(classes.outerLabelPlacement, requiredPlacementClass)} />\n )}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={cx(styledTextArea, hasRightContentClass)}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n height={autoResize || Boolean(clear) ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","clear","hasDivider","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","clearClass","hasRightContentClass","hasRightContent","hasDividerClass","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","handleTextAreaFocus","current","scrollTo","top","left","offsetLeft","behavior","focus","dynamicLabelClasses","optionalTextNode","React","createElement","StyledOptionalText","_objectSpread","cx","onClick","StyledLabel","StyledIndicator","outerLabelPlacement","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","mergeRefs","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","clearCSS","attrs","disabledCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;;;AA6BA,IACIA,kBAAkB,GAQlBC,uBAAO,CARPD,kBAAkB;EAClBE,4BAA4B,GAO5BD,uBAAO,CAPPC,4BAA4B;EAC5BC,eAAe,GAMfF,uBAAO,CANPE,eAAe;EACfC,eAAe,GAKfH,uBAAO,CALPG,eAAe;EACfC,cAAc,GAIdJ,uBAAO,CAJPI,cAAc;EACdC,qBAAqB,GAGrBL,uBAAO,CAHPK,qBAAqB;EACrBC,iBAAiB,GAEjBN,uBAAO,CAFPM,iBAAiB;EACjBC,aAAAA,GACAP,uBAAO,CADPO,aAAAA,CAAAA;AAGJ,IAAMC,YAAY,GAAG,UAAU,CAAA;AAE/B,IAAMC,IAAI,GAKT,SAAA,CAAA;;AAED;AACA,IAAMC,iBAAiB,GAAG;AACtB,EAAA,EAAE,EAAE,SAAS;AACbC,EAAAA,OAAO,EAAE,UAAU;AACnBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,KAAK,EAAE,UAAA;AACX,CAAC,CAAA;;AAED;AACO,IAAMC,sBAAsB,GAAGA,SAAzBA,sBAAsBA,CAAIC,KAAoB,EAAEC,OAAgB,EAAK;AAC9E,EAAA,IAAQC,QAAQ,GAA+CF,KAAK,CAA5DE,QAAQ;IAAEC,KAAK,GAAwCH,KAAK,CAAlDG,KAAK;IAAEC,cAAc,GAAwBJ,KAAK,CAA3CI,cAAc;IAAEC,IAAI,GAAkBL,KAAK,CAA3BK,IAAI;IAAEC,KAAK,GAAWN,KAAK,CAArBM,KAAK;IAAEC,IAAAA,GAASP,KAAK,CAAdO,IAAAA,CAAAA;;AAEtD;AACA,EAAA,IAAMC,6BAA6B,GAC/B,CAACN,QAAQ,IAAID,OAAO,KAAK,CAACE,KAAK,IAAIC,cAAc,KAAK,OAAO,CAAC,GAAGlB,4BAA4B,GAAGuB,SAAS,CAAA;;AAE7G;AACA,EAAA,IAAMC,sBAAsB,GACxBN,cAAc,KAAK,OAAO,IAC1BD,KAAK,IACL,CAACE,IAAI,IACLE,IAAI,KAAK,IAAI,KACX,CAACL,QAAQ,KAAKI,KAAK,IAAIL,OAAO,CAAC,IAAMC,QAAQ,IAAII,KAAM,CAAC,GACpDtB,kBAAkB,GAClByB,SAAS,CAAA;;AAEnB;AACA,EAAA,IAAME,mBAAmB,GACpBL,KAAK,IAAI,CAACH,KAAK,IACfC,cAAc,KAAK,OAAO,KAAMH,OAAO,IAAI,CAACC,QAAQ,IAAKI,KAAK,CAAC,IAAIH,KAAK,IAAIE,IAAK,IACjFD,cAAc,KAAK,OAAO,IAAIE,KAAM,IACpCF,cAAc,KAAK,OAAO,IAAIG,IAAI,KAAK,IAAI,IAAID,KAAM,GAChDnB,eAAe,GACfsB,SAAS,CAAA;AAEnB,EAAA,OAAO,CAACD,6BAA6B,EAAEE,sBAAsB,EAAEC,mBAAmB,CAAC,CAAA;AACvF,EAAC;IAEYC,YAAY,GAAGA,SAAfA,YAAYA,CAAIC,IAAmD,EAAA;AAAA,EAAA,oBAC5EC,gBAAU,CAAqC,UAACd,KAAK,EAAEe,QAAQ,EAAK;AAChE,IAAA,IACIC,UAAU,GAgCVhB,KAAK,CAhCLgB,UAAU;MACVC,MAAM,GA+BNjB,KAAK,CA/BLiB,MAAM;MACNC,MAAM,GA8BNlB,KAAK,CA9BLkB,MAAM;MACNC,WAAW,GA6BXnB,KAAK,CA7BLmB,WAAW;MACXC,UAAU,GA4BVpB,KAAK,CA5BLoB,UAAU;MACVC,YAAY,GA2BZrB,KAAK,CA3BLqB,YAAY;MAAAC,iBAAA,GA2BZtB,KAAK,CA1BLuB,UAAU;AAAVA,MAAAA,UAAU,GAAAD,iBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,iBAAA;MAAAE,cAAA,GA0BlBxB,KAAK,CAzBLyB,OAAO;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,cAAA;MACXE,OAAO,GAwBP1B,KAAK,CAxBL0B,OAAO;MACPvB,KAAK,GAuBLH,KAAK,CAvBLG,KAAK;MAAAwB,qBAAA,GAuBL3B,KAAK,CAtBLI,cAAc;AAAdA,MAAAA,cAAc,GAAAuB,qBAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,qBAAA;MACxBC,WAAW,GAqBX5B,KAAK,CArBL4B,WAAW;MACXC,YAAY,GAoBZ7B,KAAK,CApBL6B,YAAY;MACZC,MAAM,GAmBN9B,KAAK,CAnBL8B,MAAM;MACNC,KAAK,GAkBL/B,KAAK,CAlBL+B,KAAK;MACLzB,KAAK,GAiBLN,KAAK,CAjBLM,KAAK;MACL0B,QAAQ,GAgBRhC,KAAK,CAhBLgC,QAAQ;MAAAC,eAAA,GAgBRjC,KAAK,CAfLkC,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;MAAAE,qBAAA,GAehBnC,KAAK,CAdLoC,iBAAiB;AAAjBA,MAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,qBAAA;MAAAE,eAAA,GAc3BrC,KAAK,CAbLsC,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA;MAChBE,KAAK,GAYLvC,KAAK,CAZLuC,KAAK;MACLC,UAAU,GAWVxC,KAAK,CAXLwC,UAAU;MACVjC,IAAI,GAUJP,KAAK,CAVLO,IAAI;MACJkC,IAAI,GASJzC,KAAK,CATLyC,IAAI;MACJC,EAAE,GAQF1C,KAAK,CARL0C,EAAE;MACFC,KAAK,GAOL3C,KAAK,CAPL2C,KAAK;MACLC,SAAS,GAMT5C,KAAK,CANL4C,SAAS;MACT1C,QAAQ,GAKRF,KAAK,CALLE,QAAQ;MACRG,IAAI,GAIJL,KAAK,CAJLK,IAAI;MACJwC,IAAI,GAGJ7C,KAAK,CAHL6C,IAAI;MACJC,QAAQ,GAER9C,KAAK,CAFL8C,QAAQ;AACLC,MAAAA,IAAAA,GAAAA,iDAAAA,CACH/C,KAAK,EAAAgD,SAAA,CAAA,CAAA;IAET,IAAAC,SAAA,GAAsCC,cAAQ,CAASnB,KAAK,GAAAoB,EAAAA,CAAAA,MAAA,CAAMpB,KAAM,EAAO,KAAA,CAAA,GAAA,MAAM,CAAC;MAAAqB,UAAA,GAAAC,uCAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAA/EK,MAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,cAAc,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAClC,IAAA,IAAAI,UAAA,GAA8BN,cAAQ,CAAC,KAAK,CAAC;MAAAO,UAAA,GAAAJ,uCAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAtCvD,MAAAA,OAAO,GAAAwD,UAAA,CAAA,CAAA,CAAA;AAAEC,MAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AAC1B,IAAA,IAAAE,UAAA,GAAkDT,cAAQ,EAAsB;MAAAU,UAAA,GAAAP,uCAAA,CAAAM,UAAA,EAAA,CAAA,CAAA;AAAzEE,MAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAE9C,IAAA,IAAMG,QAAQ,gBAAGC,eAAS,EAAuB,CAAA;AAEjD,IAAA,IAAMC,aAAa,GAAG/B,QAAQ,GAAG,KAAK,GAAGI,QAAQ,CAAA;IACjD,IAAM4B,SAAS,GAAGC,OAAO,CAAC/C,UAAU,IAAID,WAAW,IAAIH,UAAU,CAAC,CAAA;IAClE,IAAMoD,aAAa,GAAGD,OAAO,CAAChE,KAAK,IAAIC,cAAc,KAAK,OAAO,CAAC,CAAA;AAClE,IAAA,IAAMiE,aAAa,GAAGF,OAAO,CAAChE,KAAK,IAAIC,cAAc,KAAK,OAAO,IAAIG,IAAI,KAAK,IAAI,CAAC,CAAA;AACnF,IAAA,IAAM+D,sBAAsB,GAAGL,aAAa,IAAI,CAACG,aAAa,CAAA;IAE9D,IAAMG,cAAc,GAAGtD,MAAM,KAAKR,SAAS,GAAGd,iBAAiB,CAACsB,MAAM,CAAC,GAAGwB,IAAI,CAAA;IAC9E,IAAM+B,gBAAgB,GAAG9B,EAAE,GAAA,EAAA,CAAAS,MAAA,CAAMT,EAAG,eAAWjC,SAAS,CAAA;IACxD,IAAMgE,gBAAgB,GAAGvD,MAAM,KAAK,YAAY,IAAIA,MAAM,KAAK,MAAM,IAAI,CAAC2B,IAAI,CAAA;AAC9E,IAAA,IAAM6B,gBAAgB,GAAGL,aAAa,GAAGlE,KAAK,GAAGyB,WAAW,CAAA;IAE5D,IAAM+C,UAAU,GAAGpC,KAAK,GAAGtD,uBAAO,CAACsD,KAAK,GAAG9B,SAAS,CAAA;IACpD,IAAMmE,oBAAoB,GAAGvD,YAAY,GAAGpC,uBAAO,CAAC4F,eAAe,GAAGpE,SAAS,CAAA;IAC/E,IAAMqE,eAAe,GAAGtC,UAAU,GAAGvD,uBAAO,CAACuD,UAAU,GAAG/B,SAAS,CAAA;IACnE,IAAMsE,sBAAsB,GAAG3C,iBAAiB,KAAK,OAAO,GAAG,cAAc,GAAG3B,SAAS,CAAA;AAEzFuE,IAAAA,4BAAiB,CAACjB,QAAQ,EAAGkB,UAAAA,cAAc,EAAK;AAC5C,MAAA,IAAeC,WAAAA,GAAgBD,cAAc,CAACtC,KAAK,CAA3CZ,KAAK,CAAA;MAEb,IAAImD,WAAW,IAAIrC,IAAI,EAAE;AACrB,QAAA,IAAAsC,qBAAA,GAAgCF,cAAc,CAACG,qBAAqB,EAAE;UAAvDC,YAAAA,GAAAA,qBAAAA,CAAPtD,KAAK,CAAA;AACbwB,QAAAA,cAAc,IAAAJ,MAAA,CAAIkC,YAAY,GAAGC,4BAAe,QAAI,CAAC,CAAA;AACzD,OAAA;AACJ,KAAC,CAAC,CAAA;AAEFC,IAAAA,2BAAa,CAAChE,UAAU,IAAI4C,OAAO,CAAC5B,KAAK,CAAC,EAAEwB,QAAQ,EAAEzD,KAAK,EAAEmB,OAAO,EAAEC,OAAO,CAAC,CAAA;AAE9E,IAAA,IAAM8D,cAAc,GAAGC,iBAAW,CAAC,YAAM;MACrC/B,UAAU,CAAC,IAAI,CAAC,CAAA;KACnB,EAAE,EAAE,CAAC,CAAA;AAEN,IAAA,IAAMgC,aAAa,GAAGD,iBAAW,CAAC,YAAM;MACpC/B,UAAU,CAAC,KAAK,CAAC,CAAA;KACpB,EAAE,EAAE,CAAC,CAAA;AAEN,IAAA,IAAMiC,eAAe,GAAGF,iBAAW,CAC/B,UAACG,KAA6C,EAAK;AAC/C;MACA,IAAItF,KAAK,KAAKG,SAAS,EAAE;QACrBqD,oBAAoB,CAAC8B,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEC,MAAM,CAACvF,KAAK,CAAC,CAAA;AAC7C,OAAA;AAEAwC,MAAAA,QAAQ,aAARA,QAAQ,KAAA,KAAA,CAAA,IAARA,QAAQ,CAAG8C,KAAK,CAAC,CAAA;AACrB,KAAC,EACD,CAACtF,KAAK,EAAEwC,QAAQ,CACpB,CAAC,CAAA;AAED,IAAA,IAAMgD,mBAAmB,GAAGA,SAAtBA,mBAAmBA,GAAS;AAC9B,MAAA,IAAI5F,QAAQ,IAAI8B,QAAQ,IAAI,EAAC+B,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAEgC,OAAO,CAAE,EAAA;AAC5C,QAAA,OAAA;AACJ,OAAA;AAEAhC,MAAAA,QAAQ,CAACgC,OAAO,CAACC,QAAQ,CAAC;AACtBC,QAAAA,GAAG,EAAE,CAAC;AACNC,QAAAA,IAAI,EAAEnC,QAAQ,CAACgC,OAAO,CAACI,UAAU;AACjCC,QAAAA,QAAQ,EAAE,QAAA;AACd,OAAC,CAAC,CAAA;AAEFrC,MAAAA,QAAQ,CAACgC,OAAO,CAACM,KAAK,EAAE,CAAA;KAC3B,CAAA;IAED,IAAMC,mBAAmB,GAAGvG,sBAAsB,CAC9C;AACIQ,MAAAA,IAAI,EAAJA,IAAI;AACJL,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,KAAK,EAALA,KAAK;AACLC,MAAAA,cAAc,EAAdA,cAAc;AACdE,MAAAA,KAAK,EAAEA,KAAK,IAAIuD,iBAAiB,IAAIhC,YAAY;AACjDxB,MAAAA,IAAAA,EAAAA,IAAAA;KACH,EACDJ,OACJ,CAAC,CAAA;IAED,IAAMsG,gBAAgB,GAAGtC,aAAa,gBAClCuC,KAAA,CAAAC,aAAA,CAACC,kCAAkB,EAAA,IAAA,EACdvC,OAAO,CAACG,sBAAsB,GAAGI,gBAAgB,GAAGvE,KAAK,CAAC,IAAI,MAAM,EACpEV,YACe,CAAC,GACrB,IAAI,CAAA;AAER,IAAA,oBACI+G,KAAA,CAAAC,aAAA,CAAC5F,IAAI,EAAA;AACD4B,MAAAA,IAAI,EAAE8B,cAAe;AACrBhE,MAAAA,IAAI,EAAEA,IAAK;AACXyB,MAAAA,QAAQ,EAAEA,QAAS;AACnB9B,MAAAA,QAAQ,EAAEA,QAAS;AACnBqC,MAAAA,KAAK,EAAEA,KAAM;AACbI,MAAAA,KAAK,EAAAgE,uCAAA,CAAA;AAAI5E,QAAAA,KAAK,EAAEuB,WAAAA;AAAW,OAAA,EAAKX,KAAAA,CAAQ;MACxCC,SAAS,EAAEgE,QAAE,CAACjC,UAAU,EAAEG,eAAe,EAAElC,SAAS,CAAE;AACtDiE,MAAAA,OAAO,EAAEf,mBAAAA;AAAoB,KAAA,EAE5B1B,aAAa,iBACVoC,KAAA,CAAAC,aAAA,CAACK,2BAAW,EACP5E,IAAAA,EAAAA,QAAQ,iBACLsE,KAAA,CAAAC,aAAA,CAACM,+BAAe,EAAA;AAACnE,MAAAA,SAAS,EAAEgE,QAAE,CAAC3H,uBAAO,CAAC+H,mBAAmB,EAAEjC,sBAAsB,CAAA;KACrF,CAAA,EACA5E,KAAK,EACLoG,gBACQ,CAChB,eACDC,KAAA,CAAAC,aAAA,CAACQ,+BAAe,EAAA;AACZrE,MAAAA,SAAS,EAAEgE,QAAE,CAAAM,KAAA,CAAC9H,KAAAA,CAAAA,EAAAA,CAAAA,eAAe,CAAA+D,CAAAA,MAAA,CAAAgE,2CAAA,CAAKb,mBAAmB,CAAE,CAAA,CAAA;AACvDvE,MAAAA,KAAK,EAAEuB,WAAY;AACnB8D,MAAAA,OAAO,EAAE5B,cAAe;AACxB6B,MAAAA,MAAM,EAAE3B,aAAAA;KAEPxD,EAAAA,QAAQ,IAAI,CAACkC,aAAa,iBACvBoC,KAAA,CAAAC,aAAA,CAACM,+BAAe,EAAA;AAACnE,MAAAA,SAAS,EAAEgE,QAAE,CAAC3H,uBAAO,CAACqI,mBAAmB,EAAEvC,sBAAsB,CAAA;AAAE,KACvF,CAAA,EACA1D,YAAY,iBAAImF,KAAA,CAAAC,aAAA,CAACc,6BAAa,EAAA,IAAA,EAAElG,YAA4B,CAAC,eAC9DmF,KAAA,CAAAC,aAAA,CAACe,qCAAqB,EAAA;AAAC5E,MAAAA,SAAS,EAAEtD,qBAAsB;AAAC4E,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,eAC1EsC,KAAA,CAAAC,aAAA,CAACgB,8BAAc,EAAAC,iCAAA,CAAA;AACX9E,MAAAA,SAAS,EAAEgE,QAAE,CAACvH,cAAc,EAAEuF,oBAAoB,CAAE;AACpDlC,MAAAA,EAAE,EAAEA,EAAG;AACPiF,MAAAA,eAAe,EAAExD,OAAO,CAAC9C,YAAY,CAAE;AACvC6C,MAAAA,SAAS,EAAEA,SAAU;AACrBO,MAAAA,gBAAgB,EAAEA,gBAAiB;AACnCmD,MAAAA,GAAG,EAAEC,oBAAS,CAAC9D,QAAQ,EAAEhD,QAAQ,CAAE;AACnCiB,MAAAA,QAAQ,EAAEA,QAAS;MACnBF,MAAM,EAAEP,UAAU,IAAI4C,OAAO,CAAC5B,KAAK,CAAC,GAAGd,OAAO,GAAGK,MAAO;AACxDC,MAAAA,KAAK,EAAEA,KAAM;AACbH,MAAAA,WAAW,EAAE8C,gBAAiB;AAC9B,MAAA,kBAAA,EAAkBF,gBAAiB;AACnClE,MAAAA,KAAK,EAAEA,KAAM;AACbJ,MAAAA,QAAQ,EAAEA,QAAS;AACnBG,MAAAA,IAAI,EAAEA,IAAK;AACXwC,MAAAA,IAAI,EAAEA,IAAK;AACX3B,MAAAA,MAAM,EAAEA,MAAO;AACfW,MAAAA,YAAY,EAAEA,YAAa;AAC3BiB,MAAAA,QAAQ,EAAE6C,eAAAA;KACN5C,EAAAA,IAAI,CAAC,CAEM,CAAA,EACtBmB,SAAS,iBACNsC,KAAA,CAAAC,aAAA,CAACqB,6BAAa,EAAA;AAAClF,MAAAA,SAAS,EAAEpD,aAAc;AAACkD,MAAAA,EAAE,EAAE8B,gBAAAA;AAAiB,KAAA,EACzD,CAACpD,UAAU,IAAIJ,UAAU,kBACtBwF,KAAA,CAAAC,aAAA,CAACsB,gCAAgB,EAAE3G,IAAAA,EAAAA,UAAU,IAAIJ,UAA6B,CACjE,EACAG,WAAW,iBAAIqF,KAAA,CAAAC,aAAA,CAACuB,iCAAiB,QAAE7G,WAA+B,CACxD,CAClB,EACAuD,gBAAgB,iBACb8B,KAAA,CAAAC,aAAA,CAACwB,iCAAiB,EAAA;AACdN,MAAAA,eAAe,EAAExD,OAAO,CAAC9C,YAAY,CAAE;AACvCuB,MAAAA,SAAS,EAAErD,iBAAkB;AAC7B2I,MAAAA,OAAO,EAAExF,EAAAA;KAERgC,EAAAA,gBAAgB,EAChB,CAACN,aAAa,IAAImC,gBACJ,CAEV,CACf,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAM4B,cAAc,GAAG;AAC1BC,EAAAA,IAAI,EAAE,UAAU;AAChBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAE1H,YAAY;AACpBlB,EAAAA,IAAI,EAAJA,IAAI;AACJ6I,EAAAA,UAAU,EAAE;AACRhI,IAAAA,IAAI,EAAE;AACFiI,MAAAA,GAAG,EAAEC,WAAAA;KACR;AACDhG,IAAAA,IAAI,EAAE;AACF+F,MAAAA,GAAG,EAAEE,WAAAA;KACR;AACDnG,IAAAA,KAAK,EAAE;AACHiG,MAAAA,GAAG,EAAEG,WAAQ;AACbC,MAAAA,KAAK,EAAE,IAAA;KACV;AACD5G,IAAAA,QAAQ,EAAE;AACNwG,MAAAA,GAAG,EAAEK,WAAW;AAChBD,MAAAA,KAAK,EAAE,IAAA;KACV;AACD1I,IAAAA,QAAQ,EAAE;AACN0I,MAAAA,KAAK,EAAE,IAAA;AACX,KAAA;GACH;AACDE,EAAAA,QAAQ,EAAE;AACNvI,IAAAA,IAAI,EAAE,GAAG;AACTkC,IAAAA,IAAI,EAAE,SAAA;AACV,GAAA;AACJ;;;;;;"}
1
+ {"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback, useRef, MouseEventHandler } from 'react';\nimport { css } from '@linaria/core';\nimport { useForkRef, useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx, mergeRefs } from '../../utils';\nimport type { RootProps } from '../../engines/types';\nimport { useOutsideClick } from '../../hooks';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n OuterLabelWrapper,\n StyledIndicatorWrapper,\n StyledHintWrapper,\n TitleCaption,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as hintViewCSS } from './variations/_hint-view/base';\nimport { base as hintSizeCSS } from './variations/_hint-size/base';\nimport type { TextAreaProps, TextAreaRootProps } from './TextArea.types';\nimport { HintComponent } from './ui/Hint/Hint';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\nconst HINT_DEFAULT_OFFSET: [number, number] = [0, 0];\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && rows) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaRootProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n titleCaption,\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required = false,\n requiredPlacement = 'right',\n optional = false,\n clear,\n hasDivider,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintPlacement = 'auto',\n hintHasArrow,\n hintOffset = HINT_DEFAULT_OFFSET,\n hintWidth,\n hintContentLeft,\n onChange,\n ...rest\n } = props;\n\n const [isHintVisible, setIsHintVisible] = useState(false);\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = createRef<HTMLTextAreaElement>();\n\n const hintRef = useOutsideClick<HTMLDivElement>(() => {\n setIsHintVisible(false);\n });\n const hintInnerRef = useRef<HTMLDivElement>(null);\n const hintForkRef = useForkRef(hintRef, hintInnerRef);\n\n const innerOptional = required ? false : optional;\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const hasInnerLabel = Boolean(label && labelPlacement === 'inner' && size !== 'xs');\n const hasPlaceholderOptional = innerOptional && !hasOuterLabel;\n\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeholderLabel = hasInnerLabel ? label : placeholder;\n\n const clearClass = clear ? classes.clear : undefined;\n const hasHintClass = hintText ? classes.hasHint : undefined;\n const hasRightContentClass = contentRight ? classes.hasRightContent : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? classes.requiredAlignRight : undefined;\n\n const handleHintShow = () => setIsHintVisible(true);\n const handleHintHide = () => setIsHintVisible(false);\n const handleHintClick: MouseEventHandler = (event) => {\n if (!hintText || hintTrigger !== 'click') {\n return;\n }\n\n event.stopPropagation();\n const targetIsPopover = event.target === hintInnerRef.current;\n const rootHasTarget = hintInnerRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n setIsHintVisible(true);\n }\n };\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize || Boolean(clear), outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const handleTextAreaFocus = () => {\n if (readOnly || disabled || !outerRef?.current) {\n return;\n }\n\n outerRef.current.scrollTo({\n top: 0,\n left: outerRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n outerRef.current.focus();\n };\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n rows,\n },\n focused,\n );\n\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText inheritFont={!hasOuterLabel}>\n {Boolean(hasPlaceholderOptional ? placeholderLabel : label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n clear={clear}\n style={{ width: helperWidth, ...style }}\n className={cx(clearClass, hasDividerClass, hasHintClass, className)}\n onClick={handleTextAreaFocus}\n {...(hintText && {\n hintView: hintView || 'default',\n hintSize: hintSize || 'm',\n })}\n >\n {(hasOuterLabel || titleCaption) && (\n <OuterLabelWrapper isInnnerLabel={labelPlacement === 'inner'}>\n {hasOuterLabel && (\n <StyledIndicatorWrapper>\n <StyledLabel>{label}</StyledLabel>\n\n {hintText && (\n <StyledHintWrapper>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n {required && (\n <StyledIndicator\n className={cx(\n classes.outerLabelPlacement,\n requiredPlacementClass,\n hasHintClass,\n )}\n />\n )}\n {optionalTextNode}\n </StyledIndicatorWrapper>\n )}\n {titleCaption && <TitleCaption>{titleCaption}</TitleCaption>}\n </OuterLabelWrapper>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {!hasOuterLabel && (\n <>\n {required && (\n <StyledIndicator className={cx(classes.innerLabelPlacement, requiredPlacementClass)} />\n )}\n {hintText && (\n <StyledHintWrapper className={classes.innerLabelPlacement}>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n </>\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={cx(styledTextArea, hasRightContentClass)}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={mergeRefs(outerRef, innerRef)}\n disabled={disabled}\n height={autoResize || Boolean(clear) ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n {!hasOuterLabel && optionalTextNode}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n hintView: {\n css: hintViewCSS,\n },\n hintSize: {\n css: hintSizeCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","HINT_DEFAULT_OFFSET","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","titleCaption","placeholder","defaultValue","height","width","disabled","_props$required","required","_props$requiredPlacem","requiredPlacement","_props$optional","optional","clear","hasDivider","view","id","style","className","cols","_props$hintTrigger","hintTrigger","hintText","_props$hintView","hintView","_props$hintSize","hintSize","hintTargetIcon","_props$hintPlacement","hintPlacement","hintHasArrow","_props$hintOffset","hintOffset","hintWidth","hintContentLeft","onChange","rest","_excluded","_useState","useState","_useState2","_slicedToArray","isHintVisible","setIsHintVisible","_useState3","concat","_useState4","helperWidth","setHelperWidth","_useState5","_useState6","setFocused","_useState7","_useState8","uncontrolledValue","setUncontrolledValue","outerRef","createRef","hintRef","useOutsideClick","hintInnerRef","useRef","hintForkRef","useForkRef","innerOptional","hasHelper","Boolean","hasOuterLabel","hasInnerLabel","hasPlaceholderOptional","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","clearClass","hasHintClass","hasHint","hasRightContentClass","hasRightContent","hasDividerClass","requiredPlacementClass","requiredAlignRight","handleHintShow","handleHintHide","handleHintClick","event","_hintInnerRef$current","stopPropagation","targetIsPopover","target","current","rootHasTarget","contains","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","handleTextAreaFocus","scrollTo","top","left","offsetLeft","behavior","focus","dynamicLabelClasses","optionalTextNode","React","createElement","StyledOptionalText","inheritFont","_extends","_objectSpread","cx","onClick","OuterLabelWrapper","isInnnerLabel","StyledIndicatorWrapper","StyledLabel","StyledHintWrapper","HintComponent","ref","StyledIndicator","outerLabelPlacement","TitleCaption","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","Fragment","innerLabelPlacement","StyledContent","StyledTextAreaWrapper","StyledTextArea","hasContentRight","mergeRefs","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","clearCSS","attrs","disabledCSS","hintViewCSS","hintSizeCSS","defaults"],"mappings":"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"}