@skbkontur/react-ui 5.0.4 → 5.1.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (748) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.d.ts +16 -17
  2. package/cjs/components/Autocomplete/Autocomplete.js +13 -2
  3. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/Autocomplete/Autocomplete.md +9 -7
  5. package/cjs/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
  6. package/cjs/components/Autocomplete/locale/types.js +1 -1
  7. package/cjs/components/Button/Button.d.ts +20 -62
  8. package/cjs/components/Button/Button.js +0 -42
  9. package/cjs/components/Button/Button.js.map +1 -1
  10. package/cjs/components/Button/Button.md +40 -26
  11. package/cjs/components/Button/__docs__/Button.mdx +28 -0
  12. package/cjs/components/Calendar/Calendar.d.ts +22 -45
  13. package/cjs/components/Calendar/Calendar.js +1 -15
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Calendar/Calendar.md +12 -12
  16. package/cjs/components/Calendar/CalendarDay.d.ts +7 -0
  17. package/cjs/components/Calendar/CalendarDay.js +11 -0
  18. package/cjs/components/Calendar/CalendarDay.js.map +1 -1
  19. package/cjs/components/Calendar/CalendarDay.md +32 -32
  20. package/cjs/components/Calendar/__docs__/Calendar.mdx +28 -0
  21. package/cjs/components/Calendar/__docs__/CalendarDay.mdx +24 -0
  22. package/cjs/components/Calendar/locale/types.js +1 -1
  23. package/cjs/components/Center/Center.d.ts +4 -6
  24. package/cjs/components/Center/Center.js +3 -5
  25. package/cjs/components/Center/Center.js.map +1 -1
  26. package/cjs/components/Center/Center.md +1 -1
  27. package/cjs/components/Center/__docs__/Center.mdx +24 -0
  28. package/cjs/components/Checkbox/Checkbox.d.ts +20 -28
  29. package/cjs/components/Checkbox/Checkbox.js +7 -6
  30. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  31. package/cjs/components/Checkbox/Checkbox.md +6 -5
  32. package/cjs/components/Checkbox/__docs__/Checkbox.mdx +28 -0
  33. package/cjs/components/ComboBox/ComboBox.d.ts +64 -85
  34. package/cjs/components/ComboBox/ComboBox.js +11 -27
  35. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  36. package/cjs/components/ComboBox/ComboBox.md +41 -40
  37. package/cjs/components/ComboBox/__docs__/ComboBox.mdx +28 -0
  38. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
  39. package/cjs/components/CurrencyInput/CurrencyHelper.js +7 -0
  40. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  41. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +12 -12
  42. package/cjs/components/CurrencyInput/CurrencyInput.js +8 -2
  43. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  44. package/cjs/components/CurrencyInput/CurrencyInput.md +3 -1
  45. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
  46. package/cjs/components/CurrencyInput/CurrencyInputHelper.js +5 -0
  47. package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
  48. package/cjs/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
  49. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
  50. package/cjs/components/CurrencyLabel/CurrencyLabel.js +6 -0
  51. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  52. package/cjs/components/CurrencyLabel/CurrencyLabel.md +5 -5
  53. package/cjs/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
  54. package/cjs/components/DateInput/DateInput.d.ts +19 -27
  55. package/cjs/components/DateInput/DateInput.js +7 -1
  56. package/cjs/components/DateInput/DateInput.js.map +1 -1
  57. package/cjs/components/DateInput/DateInput.md +7 -2
  58. package/cjs/components/DateInput/__docs__/DateInput.mdx +26 -0
  59. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -1
  60. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
  61. package/cjs/components/DatePicker/DatePicker.d.ts +27 -22
  62. package/cjs/components/DatePicker/DatePicker.js +24 -1
  63. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  64. package/cjs/components/DatePicker/DatePicker.md +2 -2
  65. package/cjs/components/DatePicker/__docs__/DatePicker.mdx +28 -0
  66. package/cjs/components/DatePicker/locale/types.js +1 -1
  67. package/cjs/components/Dropdown/Dropdown.d.ts +25 -30
  68. package/cjs/components/Dropdown/Dropdown.js +8 -1
  69. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  70. package/cjs/components/Dropdown/Dropdown.md +2 -1
  71. package/cjs/components/Dropdown/__docs__/Dropdown.mdx +28 -0
  72. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  73. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
  74. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  75. package/cjs/components/DropdownMenu/DropdownMenu.md +12 -10
  76. package/cjs/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
  77. package/cjs/components/FileUploader/FileUploader.d.ts +16 -20
  78. package/cjs/components/FileUploader/FileUploader.js +5 -3
  79. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  80. package/cjs/components/FileUploader/FileUploader.md +9 -9
  81. package/cjs/components/FileUploader/__docs__/FileUploader.mdx +28 -0
  82. package/cjs/components/FileUploader/locale/types.js +1 -1
  83. package/cjs/components/FxInput/FxInput.d.ts +15 -9
  84. package/cjs/components/FxInput/FxInput.js +14 -1
  85. package/cjs/components/FxInput/FxInput.js.map +1 -1
  86. package/cjs/components/FxInput/FxInput.md +2 -0
  87. package/cjs/components/FxInput/__docs__/FxInput.mdx +28 -0
  88. package/cjs/components/Gapped/Gapped.d.ts +6 -17
  89. package/cjs/components/Gapped/Gapped.js +1 -8
  90. package/cjs/components/Gapped/Gapped.js.map +1 -1
  91. package/cjs/components/Gapped/Gapped.md +3 -2
  92. package/cjs/components/Gapped/__docs__/Gapped.mdx +24 -0
  93. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +22 -32
  94. package/cjs/components/GlobalLoader/GlobalLoader.js +14 -14
  95. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  96. package/cjs/components/GlobalLoader/GlobalLoader.md +4 -5
  97. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
  98. package/cjs/components/GlobalLoader/GlobalLoaderView.js +7 -0
  99. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  100. package/cjs/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
  101. package/cjs/components/Group/Group.d.ts +6 -0
  102. package/cjs/components/Group/Group.js +7 -1
  103. package/cjs/components/Group/Group.js.map +1 -1
  104. package/cjs/components/Group/Group.md +1 -0
  105. package/cjs/components/Group/__docs__/Group.mdx +24 -0
  106. package/cjs/components/Hint/Hint.d.ts +18 -40
  107. package/cjs/components/Hint/Hint.js +4 -16
  108. package/cjs/components/Hint/Hint.js.map +1 -1
  109. package/cjs/components/Hint/Hint.md +9 -8
  110. package/cjs/components/Hint/__docs__/Hint.mdx +29 -0
  111. package/cjs/components/Input/Input.d.ts +46 -68
  112. package/cjs/components/Input/Input.js +10 -9
  113. package/cjs/components/Input/Input.js.map +1 -1
  114. package/cjs/components/Input/Input.md +11 -2
  115. package/cjs/components/Input/Input.typings.js +1 -1
  116. package/cjs/components/Input/__docs__/Input.mdx +28 -0
  117. package/cjs/components/Kebab/Kebab.d.ts +12 -16
  118. package/cjs/components/Kebab/Kebab.js +4 -2
  119. package/cjs/components/Kebab/Kebab.js.map +1 -1
  120. package/cjs/components/Kebab/Kebab.md +9 -9
  121. package/cjs/components/Kebab/__docs__/Kebab.mdx +28 -0
  122. package/cjs/components/Link/Link.d.ts +13 -37
  123. package/cjs/components/Link/Link.js +0 -13
  124. package/cjs/components/Link/Link.js.map +1 -1
  125. package/cjs/components/Link/Link.md +12 -11
  126. package/cjs/components/Link/__docs__/Link.mdx +28 -0
  127. package/cjs/components/Loader/Loader.d.ts +13 -25
  128. package/cjs/components/Loader/Loader.js +2 -8
  129. package/cjs/components/Loader/Loader.js.map +1 -1
  130. package/cjs/components/Loader/Loader.md +1 -0
  131. package/cjs/components/Loader/__docs__/Loader.mdx +26 -0
  132. package/cjs/components/MaskedInput/MaskedInput.d.ts +13 -33
  133. package/cjs/components/MaskedInput/MaskedInput.js +0 -13
  134. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  135. package/cjs/components/MaskedInput/MaskedInput.md +7 -5
  136. package/cjs/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
  137. package/cjs/components/MenuFooter/MenuFooter.d.ts +6 -4
  138. package/cjs/components/MenuFooter/MenuFooter.js +7 -3
  139. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  140. package/cjs/components/MenuFooter/MenuFooter.md +2 -2
  141. package/cjs/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
  142. package/cjs/components/MenuHeader/MenuHeader.d.ts +6 -4
  143. package/cjs/components/MenuHeader/MenuHeader.js +7 -3
  144. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  145. package/cjs/components/MenuHeader/MenuHeader.md +2 -2
  146. package/cjs/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
  147. package/cjs/components/MenuItem/MenuItem.d.ts +22 -55
  148. package/cjs/components/MenuItem/MenuItem.js +1 -18
  149. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  150. package/cjs/components/MenuItem/MenuItem.md +34 -30
  151. package/cjs/components/MenuItem/__docs__/MenuItem.mdx +24 -0
  152. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +2 -2
  153. package/cjs/components/MenuSeparator/MenuSeparator.js +3 -2
  154. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  155. package/cjs/components/MenuSeparator/MenuSeparator.md +1 -1
  156. package/cjs/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
  157. package/cjs/components/MiniModal/MiniModal.d.ts +6 -0
  158. package/cjs/components/MiniModal/MiniModal.js +6 -0
  159. package/cjs/components/MiniModal/MiniModal.js.map +1 -1
  160. package/cjs/components/MiniModal/MiniModal.md +1 -3
  161. package/cjs/components/MiniModal/MiniModalFooter.d.ts +2 -7
  162. package/cjs/components/MiniModal/MiniModalFooter.js +0 -5
  163. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -1
  164. package/cjs/components/MiniModal/MiniModalHeader.d.ts +2 -5
  165. package/cjs/components/MiniModal/MiniModalHeader.js +0 -3
  166. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -1
  167. package/cjs/components/MiniModal/__docs__/MiniModal.mdx +28 -0
  168. package/cjs/components/MiniModal/__docs__/MiniModalBody.mdx +15 -0
  169. package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +15 -0
  170. package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +15 -0
  171. package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  172. package/cjs/components/Modal/Modal.d.ts +12 -33
  173. package/cjs/components/Modal/Modal.js +4 -24
  174. package/cjs/components/Modal/Modal.js.map +1 -1
  175. package/cjs/components/Modal/Modal.md +3 -1
  176. package/cjs/components/Modal/ModalBody.d.ts +2 -4
  177. package/cjs/components/Modal/ModalBody.js +1 -3
  178. package/cjs/components/Modal/ModalBody.js.map +1 -1
  179. package/cjs/components/Modal/ModalContext.d.ts +2 -0
  180. package/cjs/components/Modal/ModalContext.js +3 -0
  181. package/cjs/components/Modal/ModalContext.js.map +1 -1
  182. package/cjs/components/Modal/ModalFooter.d.ts +5 -15
  183. package/cjs/components/Modal/ModalFooter.js +0 -7
  184. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  185. package/cjs/components/Modal/ModalHeader.d.ts +3 -1
  186. package/cjs/components/Modal/ModalHeader.js +4 -1
  187. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  188. package/cjs/components/Modal/ModalSeparator.d.ts +1 -0
  189. package/cjs/components/Modal/ModalSeparator.js +1 -0
  190. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  191. package/cjs/components/Modal/__docs__/Modal.mdx +28 -0
  192. package/cjs/components/Modal/__docs__/ModalBody.mdx +15 -0
  193. package/cjs/components/Modal/__docs__/ModalFooter.mdx +15 -0
  194. package/cjs/components/Modal/__docs__/ModalHeader.mdx +15 -0
  195. package/cjs/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  196. package/cjs/components/Modal/locale/types.js +1 -1
  197. package/cjs/components/Paging/Paging.d.ts +20 -15
  198. package/cjs/components/Paging/Paging.js +17 -1
  199. package/cjs/components/Paging/Paging.js.map +1 -1
  200. package/cjs/components/Paging/Paging.md +3 -2
  201. package/cjs/components/Paging/PagingDefaultComponent.d.ts +2 -0
  202. package/cjs/components/Paging/PagingDefaultComponent.js +3 -0
  203. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
  204. package/cjs/components/Paging/__creevey__/Paging.creevey.js +2 -1
  205. package/cjs/components/Paging/__creevey__/Paging.creevey.js.map +1 -1
  206. package/cjs/components/Paging/__docs__/Paging.mdx +28 -0
  207. package/cjs/components/Paging/locale/types.js +1 -1
  208. package/cjs/components/PasswordInput/PasswordInput.d.ts +4 -1
  209. package/cjs/components/PasswordInput/PasswordInput.js +4 -1
  210. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  211. package/cjs/components/PasswordInput/PasswordInput.md +3 -2
  212. package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  213. package/cjs/components/PasswordInput/locale/types.js +1 -1
  214. package/cjs/components/Radio/Radio.d.ts +13 -28
  215. package/cjs/components/Radio/Radio.js +1 -8
  216. package/cjs/components/Radio/Radio.js.map +1 -1
  217. package/cjs/components/Radio/Radio.md +3 -2
  218. package/cjs/components/Radio/__docs__/Radio.mdx +28 -0
  219. package/cjs/components/RadioGroup/RadioGroup.d.ts +28 -54
  220. package/cjs/components/RadioGroup/RadioGroup.js +4 -15
  221. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  222. package/cjs/components/RadioGroup/RadioGroup.md +1 -0
  223. package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  224. package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  225. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +6 -2
  226. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  227. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  228. package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  229. package/cjs/components/ResponsiveLayout/types.js +1 -1
  230. package/cjs/components/ScrollContainer/ScrollBar.d.ts +7 -0
  231. package/cjs/components/ScrollContainer/ScrollBar.js +13 -0
  232. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  233. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  234. package/cjs/components/ScrollContainer/ScrollContainer.js +8 -1
  235. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  236. package/cjs/components/ScrollContainer/ScrollContainer.md +5 -3
  237. package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  238. package/cjs/components/Select/Item.d.ts +2 -0
  239. package/cjs/components/Select/Item.js +3 -0
  240. package/cjs/components/Select/Item.js.map +1 -1
  241. package/cjs/components/Select/Select.d.ts +54 -38
  242. package/cjs/components/Select/Select.js +57 -1
  243. package/cjs/components/Select/Select.js.map +1 -1
  244. package/cjs/components/Select/Select.md +7 -6
  245. package/cjs/components/Select/__creevey__/Select.creevey.js +21 -31
  246. package/cjs/components/Select/__creevey__/Select.creevey.js.map +1 -1
  247. package/cjs/components/Select/__docs__/Select.mdx +28 -0
  248. package/cjs/components/Select/locale/types.js +1 -1
  249. package/cjs/components/SidePage/SidePage.d.ts +16 -38
  250. package/cjs/components/SidePage/SidePage.js +5 -27
  251. package/cjs/components/SidePage/SidePage.js.map +1 -1
  252. package/cjs/components/SidePage/SidePage.md +2 -1
  253. package/cjs/components/SidePage/SidePageFooter.d.ts +4 -9
  254. package/cjs/components/SidePage/SidePageFooter.js +0 -2
  255. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  256. package/cjs/components/SidePage/SidePageHeader.d.ts +2 -0
  257. package/cjs/components/SidePage/SidePageHeader.js +3 -0
  258. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  259. package/cjs/components/SidePage/__docs__/SidePage.mdx +28 -0
  260. package/cjs/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  261. package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  262. package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  263. package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  264. package/cjs/components/SidePage/locale/types.js +1 -1
  265. package/cjs/components/SingleToast/SingleToast.d.ts +5 -1
  266. package/cjs/components/SingleToast/SingleToast.js +5 -1
  267. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  268. package/cjs/components/SingleToast/SingleToast.md +2 -1
  269. package/cjs/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  270. package/cjs/components/Spinner/Spinner.d.ts +15 -20
  271. package/cjs/components/Spinner/Spinner.js +6 -7
  272. package/cjs/components/Spinner/Spinner.js.map +1 -1
  273. package/cjs/components/Spinner/Spinner.md +2 -1
  274. package/cjs/components/Spinner/__docs__/Spinner.mdx +28 -0
  275. package/cjs/components/Sticky/Sticky.d.ts +9 -4
  276. package/cjs/components/Sticky/Sticky.js +9 -1
  277. package/cjs/components/Sticky/Sticky.js.map +1 -1
  278. package/cjs/components/Sticky/Sticky.md +1 -0
  279. package/cjs/components/Sticky/__docs__/Sticky.mdx +24 -0
  280. package/cjs/components/Switcher/Switcher.d.ts +18 -7
  281. package/cjs/components/Switcher/Switcher.js +12 -1
  282. package/cjs/components/Switcher/Switcher.js.map +1 -1
  283. package/cjs/components/Switcher/Switcher.md +6 -2
  284. package/cjs/components/Switcher/__docs__/Switcher.mdx +28 -0
  285. package/cjs/components/Tabs/Tab.d.ts +12 -31
  286. package/cjs/components/Tabs/Tab.js +1 -20
  287. package/cjs/components/Tabs/Tab.js.map +1 -1
  288. package/cjs/components/Tabs/Tab.md +2 -0
  289. package/cjs/components/Tabs/Tabs.d.ts +14 -25
  290. package/cjs/components/Tabs/Tabs.js +6 -17
  291. package/cjs/components/Tabs/Tabs.js.map +1 -1
  292. package/cjs/components/Tabs/Tabs.md +3 -2
  293. package/cjs/components/Tabs/__docs__/Tab.mdx +28 -0
  294. package/cjs/components/Tabs/__docs__/Tabs.mdx +28 -0
  295. package/cjs/components/Textarea/Textarea.d.ts +26 -52
  296. package/cjs/components/Textarea/Textarea.js +3 -23
  297. package/cjs/components/Textarea/Textarea.js.map +1 -1
  298. package/cjs/components/Textarea/Textarea.md +4 -2
  299. package/cjs/components/Textarea/__docs__/Textarea.mdx +28 -0
  300. package/cjs/components/Toast/Toast.d.ts +6 -7
  301. package/cjs/components/Toast/Toast.js +4 -3
  302. package/cjs/components/Toast/Toast.js.map +1 -1
  303. package/cjs/components/Toast/Toast.md +4 -4
  304. package/cjs/components/Toast/ToastView.d.ts +2 -6
  305. package/cjs/components/Toast/ToastView.js +0 -4
  306. package/cjs/components/Toast/ToastView.js.map +1 -1
  307. package/cjs/components/Toast/__docs__/Toast.mdx +28 -0
  308. package/cjs/components/Toast/locale/types.js +1 -1
  309. package/cjs/components/Toggle/Toggle.d.ts +25 -48
  310. package/cjs/components/Toggle/Toggle.js +4 -12
  311. package/cjs/components/Toggle/Toggle.js.map +1 -1
  312. package/cjs/components/Toggle/Toggle.md +9 -9
  313. package/cjs/components/Toggle/__docs__/Toggle.mdx +28 -0
  314. package/cjs/components/Token/Token.d.ts +17 -9
  315. package/cjs/components/Token/Token.js +9 -1
  316. package/cjs/components/Token/Token.js.map +1 -1
  317. package/cjs/components/Token/Token.md +86 -3
  318. package/cjs/components/Token/TokenView.d.ts +3 -0
  319. package/cjs/components/Token/TokenView.js +3 -0
  320. package/cjs/components/Token/TokenView.js.map +1 -1
  321. package/cjs/components/Token/__docs__/Token.mdx +28 -0
  322. package/cjs/components/Token/locale/types.js +1 -1
  323. package/cjs/components/TokenInput/TextWidthHelper.d.ts +3 -0
  324. package/cjs/components/TokenInput/TextWidthHelper.js +5 -0
  325. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  326. package/cjs/components/TokenInput/TokenInput.d.ts +54 -97
  327. package/cjs/components/TokenInput/TokenInput.js +7 -18
  328. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  329. package/cjs/components/TokenInput/TokenInput.md +12 -10
  330. package/cjs/components/TokenInput/TokenInputMenu.d.ts +5 -5
  331. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  332. package/cjs/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  333. package/cjs/components/TokenInput/locale/types.js +1 -1
  334. package/cjs/components/Tooltip/Tooltip.d.ts +28 -68
  335. package/cjs/components/Tooltip/Tooltip.js +9 -63
  336. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  337. package/cjs/components/Tooltip/Tooltip.md +5 -0
  338. package/cjs/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  339. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  340. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -16
  341. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  342. package/cjs/components/TooltipMenu/TooltipMenu.md +13 -10
  343. package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  344. package/cjs/index.d.ts +1 -0
  345. package/cjs/index.js +1 -0
  346. package/cjs/index.js.map +1 -1
  347. package/cjs/internal/CommonWrapper/types.js +1 -1
  348. package/cjs/internal/CustomComboBox/CustomComboBox.js +2 -1
  349. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  350. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js +1 -1
  351. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
  352. package/cjs/internal/CustomComboBox/locale/types.js +1 -1
  353. package/cjs/internal/DateSelect/locale/types.js +1 -1
  354. package/cjs/internal/FileUploaderControl/fileUtils.js +1 -1
  355. package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -1
  356. package/cjs/internal/Popup/types.js +1 -1
  357. package/cjs/internal/RenderContainer/RenderContainerTypes.js +1 -1
  358. package/cjs/internal/ThemePlayground/Playground.styles.js +2 -1
  359. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  360. package/cjs/internal/ThemePlayground/constants.js +1 -1
  361. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  362. package/cjs/internal/ThemeShowcase/VariablesCollector.js +0 -2
  363. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  364. package/cjs/internal/themes/BasicLightTheme.d.ts +3 -0
  365. package/cjs/internal/themes/BasicLightTheme.js +4 -1
  366. package/cjs/internal/themes/BasicLightTheme.js.map +1 -1
  367. package/cjs/lib/date/types.js +6 -6
  368. package/cjs/lib/date/types.js.map +1 -1
  369. package/cjs/lib/events/MouseDrag.js +1 -1
  370. package/cjs/lib/events/MouseDrag.js.map +1 -1
  371. package/cjs/lib/events/keyboard/KeyboardEventCodes.js +1 -1
  372. package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
  373. package/cjs/lib/locale/types.js +1 -1
  374. package/cjs/lib/locale/types.js.map +1 -1
  375. package/cjs/lib/theming/Theme.js +1 -1
  376. package/cjs/lib/types/button-link.js +1 -1
  377. package/cjs/lib/types/polymorphic-component.js +1 -1
  378. package/cjs/lib/types/props.js +1 -1
  379. package/components/Autocomplete/Autocomplete/Autocomplete.js +3 -2
  380. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  381. package/components/Autocomplete/Autocomplete.d.ts +16 -17
  382. package/components/Autocomplete/Autocomplete.md +9 -7
  383. package/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
  384. package/components/Autocomplete/locale/types/types.js +0 -1
  385. package/components/Button/Button/Button.js.map +1 -1
  386. package/components/Button/Button.d.ts +20 -62
  387. package/components/Button/Button.md +40 -26
  388. package/components/Button/__docs__/Button.mdx +28 -0
  389. package/components/Calendar/Calendar/Calendar.js +1 -1
  390. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  391. package/components/Calendar/Calendar.d.ts +22 -45
  392. package/components/Calendar/Calendar.md +12 -12
  393. package/components/Calendar/CalendarDay/CalendarDay.js +2 -0
  394. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  395. package/components/Calendar/CalendarDay.d.ts +7 -0
  396. package/components/Calendar/CalendarDay.md +32 -32
  397. package/components/Calendar/__docs__/Calendar.mdx +28 -0
  398. package/components/Calendar/__docs__/CalendarDay.mdx +24 -0
  399. package/components/Calendar/locale/types/types.js +0 -1
  400. package/components/Center/Center/Center.js +3 -1
  401. package/components/Center/Center/Center.js.map +1 -1
  402. package/components/Center/Center.d.ts +4 -6
  403. package/components/Center/Center.md +1 -1
  404. package/components/Center/__docs__/Center.mdx +24 -0
  405. package/components/Checkbox/Checkbox/Checkbox.js +7 -0
  406. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  407. package/components/Checkbox/Checkbox.d.ts +20 -28
  408. package/components/Checkbox/Checkbox.md +6 -5
  409. package/components/Checkbox/__docs__/Checkbox.mdx +28 -0
  410. package/components/ComboBox/ComboBox/ComboBox.js +11 -0
  411. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  412. package/components/ComboBox/ComboBox.d.ts +64 -85
  413. package/components/ComboBox/ComboBox.md +41 -40
  414. package/components/ComboBox/__docs__/ComboBox.mdx +28 -0
  415. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  416. package/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
  417. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +5 -2
  418. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  419. package/components/CurrencyInput/CurrencyInput.d.ts +12 -12
  420. package/components/CurrencyInput/CurrencyInput.md +3 -1
  421. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
  422. package/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
  423. package/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
  424. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +4 -0
  425. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  426. package/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
  427. package/components/CurrencyLabel/CurrencyLabel.md +5 -5
  428. package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
  429. package/components/DateInput/DateInput/DateInput.js +4 -0
  430. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  431. package/components/DateInput/DateInput.d.ts +19 -27
  432. package/components/DateInput/DateInput.md +7 -2
  433. package/components/DateInput/__docs__/DateInput.mdx +26 -0
  434. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +3 -3
  435. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  436. package/components/DatePicker/DatePicker/DatePicker.js +8 -0
  437. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  438. package/components/DatePicker/DatePicker.d.ts +27 -22
  439. package/components/DatePicker/DatePicker.md +2 -2
  440. package/components/DatePicker/__docs__/DatePicker.mdx +28 -0
  441. package/components/DatePicker/locale/types/types.js +0 -1
  442. package/components/Dropdown/Dropdown/Dropdown.js +7 -1
  443. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  444. package/components/Dropdown/Dropdown.d.ts +25 -30
  445. package/components/Dropdown/Dropdown.md +2 -1
  446. package/components/Dropdown/__docs__/Dropdown.mdx +28 -0
  447. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +1 -1
  448. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  449. package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  450. package/components/DropdownMenu/DropdownMenu.md +12 -10
  451. package/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
  452. package/components/FileUploader/FileUploader/FileUploader.js +6 -0
  453. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  454. package/components/FileUploader/FileUploader.d.ts +16 -20
  455. package/components/FileUploader/FileUploader.md +9 -9
  456. package/components/FileUploader/__docs__/FileUploader.mdx +28 -0
  457. package/components/FileUploader/locale/types/types.js +0 -1
  458. package/components/FxInput/FxInput/FxInput.js +7 -1
  459. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  460. package/components/FxInput/FxInput.d.ts +15 -9
  461. package/components/FxInput/FxInput.md +2 -0
  462. package/components/FxInput/__docs__/FxInput.mdx +28 -0
  463. package/components/Gapped/Gapped/Gapped.js +1 -1
  464. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  465. package/components/Gapped/Gapped.d.ts +6 -17
  466. package/components/Gapped/Gapped.md +3 -2
  467. package/components/Gapped/__docs__/Gapped.mdx +24 -0
  468. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +13 -0
  469. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  470. package/components/GlobalLoader/GlobalLoader.d.ts +22 -32
  471. package/components/GlobalLoader/GlobalLoader.md +4 -5
  472. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  473. package/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
  474. package/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
  475. package/components/Group/Group/Group.js +6 -0
  476. package/components/Group/Group/Group.js.map +1 -1
  477. package/components/Group/Group.d.ts +6 -0
  478. package/components/Group/Group.md +1 -0
  479. package/components/Group/__docs__/Group.mdx +24 -0
  480. package/components/Hint/Hint/Hint.js +4 -1
  481. package/components/Hint/Hint/Hint.js.map +1 -1
  482. package/components/Hint/Hint.d.ts +18 -40
  483. package/components/Hint/Hint.md +9 -8
  484. package/components/Hint/__docs__/Hint.mdx +29 -0
  485. package/components/Input/Input/Input.js +10 -1
  486. package/components/Input/Input/Input.js.map +1 -1
  487. package/components/Input/Input.d.ts +46 -68
  488. package/components/Input/Input.md +11 -2
  489. package/components/Input/Input.typings/Input.typings.js +0 -1
  490. package/components/Input/__docs__/Input.mdx +28 -0
  491. package/components/Kebab/Kebab/Kebab.js +4 -0
  492. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  493. package/components/Kebab/Kebab.d.ts +12 -16
  494. package/components/Kebab/Kebab.md +9 -9
  495. package/components/Kebab/__docs__/Kebab.mdx +28 -0
  496. package/components/Link/Link/Link.js.map +1 -1
  497. package/components/Link/Link.d.ts +13 -37
  498. package/components/Link/Link.md +12 -11
  499. package/components/Link/__docs__/Link.mdx +28 -0
  500. package/components/Loader/Loader/Loader.js +2 -2
  501. package/components/Loader/Loader/Loader.js.map +1 -1
  502. package/components/Loader/Loader.d.ts +13 -25
  503. package/components/Loader/Loader.md +1 -0
  504. package/components/Loader/__docs__/Loader.mdx +26 -0
  505. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  506. package/components/MaskedInput/MaskedInput.d.ts +13 -33
  507. package/components/MaskedInput/MaskedInput.md +7 -5
  508. package/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
  509. package/components/MenuFooter/MenuFooter/MenuFooter.js +3 -3
  510. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  511. package/components/MenuFooter/MenuFooter.d.ts +6 -4
  512. package/components/MenuFooter/MenuFooter.md +2 -2
  513. package/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
  514. package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -3
  515. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  516. package/components/MenuHeader/MenuHeader.d.ts +6 -4
  517. package/components/MenuHeader/MenuHeader.md +2 -2
  518. package/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
  519. package/components/MenuItem/MenuItem/MenuItem.js +1 -2
  520. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  521. package/components/MenuItem/MenuItem.d.ts +22 -55
  522. package/components/MenuItem/MenuItem.md +34 -30
  523. package/components/MenuItem/__docs__/MenuItem.mdx +24 -0
  524. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +3 -2
  525. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  526. package/components/MenuSeparator/MenuSeparator.d.ts +2 -2
  527. package/components/MenuSeparator/MenuSeparator.md +1 -1
  528. package/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
  529. package/components/MiniModal/MiniModal/MiniModal.js +7 -0
  530. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  531. package/components/MiniModal/MiniModal.d.ts +6 -0
  532. package/components/MiniModal/MiniModal.md +1 -3
  533. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
  534. package/components/MiniModal/MiniModalFooter.d.ts +2 -7
  535. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
  536. package/components/MiniModal/MiniModalHeader.d.ts +2 -5
  537. package/components/MiniModal/__docs__/MiniModal.mdx +28 -0
  538. package/components/MiniModal/__docs__/MiniModalBody.mdx +15 -0
  539. package/components/MiniModal/__docs__/MiniModalFooter.mdx +15 -0
  540. package/components/MiniModal/__docs__/MiniModalHeader.mdx +15 -0
  541. package/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  542. package/components/Modal/Modal/Modal.js +4 -9
  543. package/components/Modal/Modal/Modal.js.map +1 -1
  544. package/components/Modal/Modal.d.ts +12 -33
  545. package/components/Modal/Modal.md +3 -1
  546. package/components/Modal/ModalBody/ModalBody.js +1 -1
  547. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  548. package/components/Modal/ModalBody.d.ts +2 -4
  549. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  550. package/components/Modal/ModalContext.d.ts +2 -0
  551. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  552. package/components/Modal/ModalFooter.d.ts +5 -15
  553. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  554. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  555. package/components/Modal/ModalHeader.d.ts +3 -1
  556. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  557. package/components/Modal/ModalSeparator.d.ts +1 -0
  558. package/components/Modal/__docs__/Modal.mdx +28 -0
  559. package/components/Modal/__docs__/ModalBody.mdx +15 -0
  560. package/components/Modal/__docs__/ModalFooter.mdx +15 -0
  561. package/components/Modal/__docs__/ModalHeader.mdx +15 -0
  562. package/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  563. package/components/Modal/locale/types/types.js +0 -1
  564. package/components/Paging/Paging/Paging.js +4 -0
  565. package/components/Paging/Paging/Paging.js.map +1 -1
  566. package/components/Paging/Paging.d.ts +20 -15
  567. package/components/Paging/Paging.md +3 -2
  568. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
  569. package/components/Paging/PagingDefaultComponent.d.ts +2 -0
  570. package/components/Paging/__creevey__/Paging.creevey/Paging.creevey.js +1 -1
  571. package/components/Paging/__creevey__/Paging.creevey/Paging.creevey.js.map +1 -1
  572. package/components/Paging/__docs__/Paging.mdx +28 -0
  573. package/components/Paging/locale/types/types.js +0 -1
  574. package/components/PasswordInput/PasswordInput/PasswordInput.js +3 -1
  575. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  576. package/components/PasswordInput/PasswordInput.d.ts +4 -1
  577. package/components/PasswordInput/PasswordInput.md +3 -2
  578. package/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  579. package/components/PasswordInput/locale/types/types.js +0 -1
  580. package/components/Radio/Radio/Radio.js +1 -1
  581. package/components/Radio/Radio/Radio.js.map +1 -1
  582. package/components/Radio/Radio.d.ts +13 -28
  583. package/components/Radio/Radio.md +3 -2
  584. package/components/Radio/__docs__/Radio.mdx +28 -0
  585. package/components/RadioGroup/RadioGroup/RadioGroup.js +4 -5
  586. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  587. package/components/RadioGroup/RadioGroup.d.ts +28 -54
  588. package/components/RadioGroup/RadioGroup.md +1 -0
  589. package/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  590. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +1 -2
  591. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  592. package/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  593. package/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  594. package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  595. package/components/ResponsiveLayout/types/types.js +0 -1
  596. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  597. package/components/ScrollContainer/ScrollBar.d.ts +7 -0
  598. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +4 -0
  599. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  600. package/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  601. package/components/ScrollContainer/ScrollContainer.md +5 -3
  602. package/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  603. package/components/Select/Item/Item.js.map +1 -1
  604. package/components/Select/Item.d.ts +2 -0
  605. package/components/Select/Select/Select.js +11 -0
  606. package/components/Select/Select/Select.js.map +1 -1
  607. package/components/Select/Select.d.ts +54 -38
  608. package/components/Select/Select.md +7 -6
  609. package/components/Select/__creevey__/Select.creevey/Select.creevey.js +33 -70
  610. package/components/Select/__creevey__/Select.creevey/Select.creevey.js.map +1 -1
  611. package/components/Select/__docs__/Select.mdx +28 -0
  612. package/components/Select/locale/types/types.js +0 -1
  613. package/components/SidePage/SidePage/SidePage.js +5 -5
  614. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  615. package/components/SidePage/SidePage.d.ts +16 -38
  616. package/components/SidePage/SidePage.md +2 -1
  617. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  618. package/components/SidePage/SidePageFooter.d.ts +4 -9
  619. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  620. package/components/SidePage/SidePageHeader.d.ts +2 -0
  621. package/components/SidePage/__docs__/SidePage.mdx +28 -0
  622. package/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  623. package/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  624. package/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  625. package/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  626. package/components/SidePage/locale/types/types.js +0 -1
  627. package/components/SingleToast/SingleToast/SingleToast.js +5 -1
  628. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  629. package/components/SingleToast/SingleToast.d.ts +5 -1
  630. package/components/SingleToast/SingleToast.md +2 -1
  631. package/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  632. package/components/Spinner/Spinner/Spinner.js +6 -2
  633. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  634. package/components/Spinner/Spinner.d.ts +15 -20
  635. package/components/Spinner/Spinner.md +2 -1
  636. package/components/Spinner/__docs__/Spinner.mdx +28 -0
  637. package/components/Sticky/Sticky/Sticky.js +5 -0
  638. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  639. package/components/Sticky/Sticky.d.ts +9 -4
  640. package/components/Sticky/Sticky.md +1 -0
  641. package/components/Sticky/__docs__/Sticky.mdx +24 -0
  642. package/components/Switcher/Switcher/Switcher.js +6 -0
  643. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  644. package/components/Switcher/Switcher.d.ts +18 -7
  645. package/components/Switcher/Switcher.md +6 -2
  646. package/components/Switcher/__docs__/Switcher.mdx +28 -0
  647. package/components/Tabs/Tab/Tab.js +1 -1
  648. package/components/Tabs/Tab/Tab.js.map +1 -1
  649. package/components/Tabs/Tab.d.ts +12 -31
  650. package/components/Tabs/Tab.md +2 -0
  651. package/components/Tabs/Tabs/Tabs.js +6 -1
  652. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  653. package/components/Tabs/Tabs.d.ts +14 -25
  654. package/components/Tabs/Tabs.md +3 -2
  655. package/components/Tabs/__docs__/Tab.mdx +28 -0
  656. package/components/Tabs/__docs__/Tabs.mdx +28 -0
  657. package/components/Textarea/Textarea/Textarea.js +3 -4
  658. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  659. package/components/Textarea/Textarea.d.ts +26 -52
  660. package/components/Textarea/Textarea.md +4 -2
  661. package/components/Textarea/__docs__/Textarea.mdx +28 -0
  662. package/components/Toast/Toast/Toast.js +3 -3
  663. package/components/Toast/Toast/Toast.js.map +1 -1
  664. package/components/Toast/Toast.d.ts +6 -7
  665. package/components/Toast/Toast.md +4 -4
  666. package/components/Toast/ToastView/ToastView.js.map +1 -1
  667. package/components/Toast/ToastView.d.ts +2 -6
  668. package/components/Toast/__docs__/Toast.mdx +28 -0
  669. package/components/Toast/locale/types/types.js +0 -1
  670. package/components/Toggle/Toggle/Toggle.js +4 -1
  671. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  672. package/components/Toggle/Toggle.d.ts +25 -48
  673. package/components/Toggle/Toggle.md +9 -9
  674. package/components/Toggle/__docs__/Toggle.mdx +28 -0
  675. package/components/Token/Token/Token.js +6 -0
  676. package/components/Token/Token/Token.js.map +1 -1
  677. package/components/Token/Token.d.ts +17 -9
  678. package/components/Token/Token.md +86 -3
  679. package/components/Token/TokenView/TokenView.js.map +1 -1
  680. package/components/Token/TokenView.d.ts +3 -0
  681. package/components/Token/__docs__/Token.mdx +28 -0
  682. package/components/Token/locale/types/types.js +0 -1
  683. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  684. package/components/TokenInput/TextWidthHelper.d.ts +3 -0
  685. package/components/TokenInput/TokenInput/TokenInput.js +9 -3
  686. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  687. package/components/TokenInput/TokenInput.d.ts +54 -97
  688. package/components/TokenInput/TokenInput.md +12 -10
  689. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  690. package/components/TokenInput/TokenInputMenu.d.ts +5 -5
  691. package/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  692. package/components/TokenInput/locale/types/types.js +0 -1
  693. package/components/Tooltip/Tooltip/Tooltip.js +9 -0
  694. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  695. package/components/Tooltip/Tooltip.d.ts +28 -68
  696. package/components/Tooltip/Tooltip.md +5 -0
  697. package/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  698. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +1 -1
  699. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  700. package/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  701. package/components/TooltipMenu/TooltipMenu.md +13 -10
  702. package/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  703. package/index.d.ts +1 -0
  704. package/index.js +1 -0
  705. package/index.js.map +1 -1
  706. package/internal/CommonWrapper/index/index.js +1 -2
  707. package/internal/CommonWrapper/index/index.js.map +1 -1
  708. package/internal/CommonWrapper/types/types.js +0 -1
  709. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +1 -0
  710. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  711. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js +3 -3
  712. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
  713. package/internal/CustomComboBox/locale/types/types.js +0 -1
  714. package/internal/DateSelect/locale/types/types.js +0 -1
  715. package/internal/FileUploaderControl/fileUtils/fileUtils.js +3 -3
  716. package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -1
  717. package/internal/Popup/types/types.js +0 -1
  718. package/internal/RenderContainer/RenderContainerTypes/RenderContainerTypes.js +0 -1
  719. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +1 -1
  720. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  721. package/internal/ThemePlayground/constants/constants.js +3 -3
  722. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  723. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  724. package/internal/ZIndex/index/index.js +1 -2
  725. package/internal/ZIndex/index/index.js.map +1 -1
  726. package/internal/themes/BasicLightTheme/BasicLightTheme.js +3 -0
  727. package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +1 -1
  728. package/internal/themes/BasicLightTheme.d.ts +3 -0
  729. package/lib/date/types/types.js +18 -18
  730. package/lib/date/types/types.js.map +1 -1
  731. package/lib/events/MouseDrag/MouseDrag.js +3 -3
  732. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  733. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js +3 -3
  734. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
  735. package/lib/locale/types/types.js +3 -3
  736. package/lib/locale/types/types.js.map +1 -1
  737. package/lib/theming/Theme/Theme.js +0 -1
  738. package/lib/types/button-link/button-link.js +0 -1
  739. package/lib/types/polymorphic-component/polymorphic-component.js +0 -1
  740. package/lib/types/props/props.js +0 -1
  741. package/package.json +9 -5
  742. package/cjs/lib/styles/HoldSelectionColor.d.ts +0 -1
  743. package/cjs/lib/styles/HoldSelectionColor.js +0 -9
  744. package/cjs/lib/styles/HoldSelectionColor.js.map +0 -1
  745. package/lib/styles/HoldSelectionColor/HoldSelectionColor.js +0 -8
  746. package/lib/styles/HoldSelectionColor/HoldSelectionColor.js.map +0 -1
  747. package/lib/styles/HoldSelectionColor/package.json +0 -6
  748. package/lib/styles/HoldSelectionColor.d.ts +0 -1
@@ -4,36 +4,20 @@ import { SizeProp } from '../../lib/types/props';
4
4
  import { Tab } from './Tab';
5
5
  type ValueBaseType = string;
6
6
  export interface TabsProps<T extends ValueBaseType = string> extends CommonProps {
7
- /**
8
- * Позволяет задать кастомный класс подчёркиванию таба.
9
- */
7
+ /** Задает кастомный класс подчёркиванию таба. */
10
8
  indicatorClassName?: string;
11
- /**
12
- * Задаёт размер контрола.
13
- *
14
- * **Допустимые значения**: `"small"`, `"medium"`, `"large"`.
15
- */
9
+ /** Задает размер контрола. */
16
10
  size?: SizeProp;
17
- /**
18
- * Задаёт текущий активный `<Tab />`. Принимает `id` таба.
19
- */
11
+ /** Задает текущий активный `<Tab />`. Принимает `id` таба. */
20
12
  value: T;
21
- /**
22
- * Функция, позволяющая изменить текущий активный `<Tab />`.
23
- */
13
+ /** Задает функцию, изменяющую текущий активный `<Tab />`. */
24
14
  onValueChange?: (value: T) => void;
25
- /**
26
- * Переводит компонент в режим вертикального отображения.
27
- * @default false
28
- */
15
+ /** Задает расположение элементов по вертикали.
16
+ * @default false */
29
17
  vertical?: boolean;
30
- /**
31
- * `CSS`-свойство `width`.
32
- */
18
+ /** Задает ширину компонента Tabs. */
33
19
  width?: number | string;
34
- /**
35
- * Атрибут для указания id элемента(-ов), описывающих его.
36
- */
20
+ /** @ignore */
37
21
  'aria-describedby'?: AriaAttributes['aria-describedby'];
38
22
  }
39
23
  export declare const TabsDataTids: {
@@ -42,7 +26,12 @@ export declare const TabsDataTids: {
42
26
  };
43
27
  type DefaultProps = Required<Pick<TabsProps, 'vertical' | 'size'>>;
44
28
  /**
45
- * Родитель компонента `<Tab />`. Связывает `Tab`'ы в группу и позволяет управлять их состоянием.
29
+ * Родитель компонента Tab. Связывает `Tab`'ы в группу и позволяет управлять их состоянием, помогают в навигации.
30
+ *
31
+ * Используйте `Tabs` для второстепенной навигации, для группировки или фильтрации контента.
32
+ *
33
+ * Не используйте `Tabs` для основной навигации. Для этого лучше подходит главное меню на цветной плашке — оно более заметно на странице.
34
+ * Не используйте `Tabs` для переключения состояний — для этого есть RadioGroup, Toggle и Switcher.
46
35
  */
47
36
  export declare class Tabs<T extends string = string> extends React.Component<TabsProps<T>> {
48
37
  static __KONTUR_REACT_UI__: string;
@@ -36,22 +36,6 @@ var _Tab = require("./Tab");var _class, _Tabs;
36
36
 
37
37
 
38
38
 
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
39
 
56
40
 
57
41
 
@@ -71,7 +55,12 @@ var TabsDataTids = exports.TabsDataTids = {
71
55
 
72
56
 
73
57
  /**
74
- * Родитель компонента `<Tab />`. Связывает `Tab`'ы в группу и позволяет управлять их состоянием.
58
+ * Родитель компонента Tab. Связывает `Tab`'ы в группу и позволяет управлять их состоянием, помогают в навигации.
59
+ *
60
+ * Используйте `Tabs` для второстепенной навигации, для группировки или фильтрации контента.
61
+ *
62
+ * Не используйте `Tabs` для основной навигации. Для этого лучше подходит главное меню на цветной плашке — оно более заметно на странице.
63
+ * Не используйте `Tabs` для переключения состояний — для этого есть RadioGroup, Toggle и Switcher.
75
64
  */var
76
65
 
77
66
  Tabs = exports.Tabs = (0, _rootNode.rootNode)(_class = (_Tabs = /*#__PURE__*/function (_React$Component) {function Tabs() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_ThemeContext","_CommonWrapper","_Emotion","_getRootNode","_rootNode","_createPropsGetter","_isInstanceOf","_Indicator","_Tabs2","_TabsContext","_Tab","_class","_Tabs","TabsDataTids","exports","root","indicatorRoot","Tabs","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","tabs","tabUpdates","on","cb","index","listeners","push","splice","shiftFocus","fromTab","delta","_this2","findIndex","x","id","newIndex","Math","max","min","tab","tabNode","getNode","htmlNode","getRootNode","isInstanceOf","globalObject","HTMLElement","focus","notifyUpdate","forEach","switchTab","_this$props","props","onValueChange","value","getTab","_ref","find","_ref$getNode","addTab","removeTab","filter","_inheritsLoose2","default","_proto","prototype","render","_this3","_this$props2","width","children","indicatorClassName","ariaDescribedby","_this$getProps","vertical","size","createElement","ThemeContext","Consumer","theme","_cx","CommonWrapper","_extends2","rootNodeRef","setRootNode","className","cx","styles","rootSmall","rootMedium","rootLarge","style","TabsContext","Provider","activeTab","Indicator","React","Component","__KONTUR_REACT_UI__","displayName","Tab"],"sources":["Tabs.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode } from '../../lib/rootNode/getRootNode';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { Indicator } from './Indicator';\nimport { styles } from './Tabs.styles';\nimport { TabsContext, TabsContextType } from './TabsContext';\nimport { Tab } from './Tab';\n\ntype ValueBaseType = string;\ninterface TabType<T extends ValueBaseType> {\n getNode: () => Tab<T> | null;\n id: T;\n}\n\nexport interface TabsProps<T extends ValueBaseType = string> extends CommonProps {\n /**\n * Позволяет задать кастомный класс подчёркиванию таба.\n */\n indicatorClassName?: string;\n\n /**\n * Задаёт размер контрола.\n *\n * **Допустимые значения**: `\"small\"`, `\"medium\"`, `\"large\"`.\n */\n size?: SizeProp;\n\n /**\n * Задаёт текущий активный `<Tab />`. Принимает `id` таба.\n */\n value: T;\n\n /**\n * Функция, позволяющая изменить текущий активный `<Tab />`.\n */\n onValueChange?: (value: T) => void;\n\n /**\n * Переводит компонент в режим вертикального отображения.\n * @default false\n */\n vertical?: boolean;\n\n /**\n * `CSS`-свойство `width`.\n */\n width?: number | string;\n\n /**\n * Атрибут для указания id элемента(-ов), описывающих его.\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const TabsDataTids = {\n root: 'Tabs__root',\n indicatorRoot: 'Indicator__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TabsProps, 'vertical' | 'size'>>;\n\n/**\n * Родитель компонента `<Tab />`. Связывает `Tab`'ы в группу и позволяет управлять их состоянием.\n */\n@rootNode\nexport class Tabs<T extends string = string> extends React.Component<TabsProps<T>> {\n public static __KONTUR_REACT_UI__ = 'Tabs';\n public static displayName = 'Tabs';\n\n public static defaultProps: DefaultProps = {\n vertical: false,\n size: 'large',\n };\n\n private getProps = createPropsGetter(Tabs.defaultProps);\n\n public static Tab = Tab;\n\n private theme!: Theme;\n\n private tabs: Array<TabType<T>> = [];\n\n private tabUpdates = {\n on: (cb: () => void) => {\n const index = this.listeners.push(cb);\n return () => {\n this.listeners.splice(index, 1);\n };\n },\n };\n\n private listeners: Array<typeof emptyHandler> = [];\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n const { value, width, children, indicatorClassName, 'aria-describedby': ariaDescribedby } = this.props;\n const { vertical, size } = this.getProps();\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TabsDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: size === 'small',\n [styles.rootMedium(this.theme)]: size === 'medium',\n [styles.rootLarge(this.theme)]: size === 'large',\n [styles.vertical()]: vertical,\n })}\n style={{ width }}\n aria-describedby={ariaDescribedby}\n >\n <TabsContext.Provider\n value={{\n vertical,\n activeTab: value,\n size,\n getTab: this.getTab,\n addTab: this.addTab,\n removeTab: this.removeTab,\n notifyUpdate: this.notifyUpdate,\n shiftFocus: this.shiftFocus,\n switchTab: this.switchTab,\n }}\n >\n {children}\n <Indicator\n className={indicatorClassName}\n tabUpdates={this.tabUpdates}\n vertical={this.getProps().vertical}\n />\n </TabsContext.Provider>\n </div>\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private shiftFocus: TabsContextType<T>['shiftFocus'] = (fromTab, delta) => {\n const { tabs } = this;\n const index = tabs.findIndex((x) => x.id === fromTab);\n const newIndex = Math.max(0, Math.min(index + delta, tabs.length - 1));\n const tab = tabs[newIndex];\n\n const tabNode = tab.getNode();\n const htmlNode = getRootNode(tabNode);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement) && typeof htmlNode.focus === 'function') {\n htmlNode.focus();\n }\n };\n\n private notifyUpdate: TabsContextType<T>['notifyUpdate'] = () => {\n this.listeners.forEach((cb) => cb());\n };\n\n private switchTab: TabsContextType<T>['switchTab'] = (id) => {\n const { onValueChange, value } = this.props;\n if (id !== value && onValueChange) {\n onValueChange(id);\n }\n };\n\n private getTab: TabsContextType<T>['getTab'] = (id) => {\n const { getNode = null } = this.tabs.find((x) => x.id === id) || {};\n return getNode && getNode();\n };\n\n private addTab: TabsContextType<T>['addTab'] = (id, getNode) => {\n this.tabs = this.tabs.concat({ id, getNode });\n };\n\n private removeTab: TabsContextType<T>['removeTab'] = (id) => {\n this.tabs = this.tabs.filter((tab) => tab.id !== id);\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_ThemeContext","_CommonWrapper","_Emotion","_getRootNode","_rootNode","_createPropsGetter","_isInstanceOf","_Indicator","_Tabs2","_TabsContext","_Tab","_class","_Tabs","TabsDataTids","exports","root","indicatorRoot","Tabs","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","tabs","tabUpdates","on","cb","index","listeners","push","splice","shiftFocus","fromTab","delta","_this2","findIndex","x","id","newIndex","Math","max","min","tab","tabNode","getNode","htmlNode","getRootNode","isInstanceOf","globalObject","HTMLElement","focus","notifyUpdate","forEach","switchTab","_this$props","props","onValueChange","value","getTab","_ref","find","_ref$getNode","addTab","removeTab","filter","_inheritsLoose2","default","_proto","prototype","render","_this3","_this$props2","width","children","indicatorClassName","ariaDescribedby","_this$getProps","vertical","size","createElement","ThemeContext","Consumer","theme","_cx","CommonWrapper","_extends2","rootNodeRef","setRootNode","className","cx","styles","rootSmall","rootMedium","rootLarge","style","TabsContext","Provider","activeTab","Indicator","React","Component","__KONTUR_REACT_UI__","displayName","Tab"],"sources":["Tabs.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode } from '../../lib/rootNode/getRootNode';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { Indicator } from './Indicator';\nimport { styles } from './Tabs.styles';\nimport { TabsContext, TabsContextType } from './TabsContext';\nimport { Tab } from './Tab';\n\ntype ValueBaseType = string;\ninterface TabType<T extends ValueBaseType> {\n getNode: () => Tab<T> | null;\n id: T;\n}\n\nexport interface TabsProps<T extends ValueBaseType = string> extends CommonProps {\n /** Задает кастомный класс подчёркиванию таба. */\n indicatorClassName?: string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает текущий активный `<Tab />`. Принимает `id` таба. */\n value: T;\n\n /** Задает функцию, изменяющую текущий активный `<Tab />`. */\n onValueChange?: (value: T) => void;\n\n /** Задает расположение элементов по вертикали.\n * @default false */\n vertical?: boolean;\n\n /** Задает ширину компонента Tabs. */\n width?: number | string;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const TabsDataTids = {\n root: 'Tabs__root',\n indicatorRoot: 'Indicator__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TabsProps, 'vertical' | 'size'>>;\n\n/**\n * Родитель компонента Tab. Связывает `Tab`'ы в группу и позволяет управлять их состоянием, помогают в навигации.\n *\n * Используйте `Tabs` для второстепенной навигации, для группировки или фильтрации контента.\n *\n * Не используйте `Tabs` для основной навигации. Для этого лучше подходит главное меню на цветной плашке — оно более заметно на странице.\n * Не используйте `Tabs` для переключения состояний — для этого есть RadioGroup, Toggle и Switcher.\n */\n@rootNode\nexport class Tabs<T extends string = string> extends React.Component<TabsProps<T>> {\n public static __KONTUR_REACT_UI__ = 'Tabs';\n public static displayName = 'Tabs';\n\n public static defaultProps: DefaultProps = {\n vertical: false,\n size: 'large',\n };\n\n private getProps = createPropsGetter(Tabs.defaultProps);\n\n public static Tab = Tab;\n\n private theme!: Theme;\n\n private tabs: Array<TabType<T>> = [];\n\n private tabUpdates = {\n on: (cb: () => void) => {\n const index = this.listeners.push(cb);\n return () => {\n this.listeners.splice(index, 1);\n };\n },\n };\n\n private listeners: Array<typeof emptyHandler> = [];\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n const { value, width, children, indicatorClassName, 'aria-describedby': ariaDescribedby } = this.props;\n const { vertical, size } = this.getProps();\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TabsDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: size === 'small',\n [styles.rootMedium(this.theme)]: size === 'medium',\n [styles.rootLarge(this.theme)]: size === 'large',\n [styles.vertical()]: vertical,\n })}\n style={{ width }}\n aria-describedby={ariaDescribedby}\n >\n <TabsContext.Provider\n value={{\n vertical,\n activeTab: value,\n size,\n getTab: this.getTab,\n addTab: this.addTab,\n removeTab: this.removeTab,\n notifyUpdate: this.notifyUpdate,\n shiftFocus: this.shiftFocus,\n switchTab: this.switchTab,\n }}\n >\n {children}\n <Indicator\n className={indicatorClassName}\n tabUpdates={this.tabUpdates}\n vertical={this.getProps().vertical}\n />\n </TabsContext.Provider>\n </div>\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private shiftFocus: TabsContextType<T>['shiftFocus'] = (fromTab, delta) => {\n const { tabs } = this;\n const index = tabs.findIndex((x) => x.id === fromTab);\n const newIndex = Math.max(0, Math.min(index + delta, tabs.length - 1));\n const tab = tabs[newIndex];\n\n const tabNode = tab.getNode();\n const htmlNode = getRootNode(tabNode);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement) && typeof htmlNode.focus === 'function') {\n htmlNode.focus();\n }\n };\n\n private notifyUpdate: TabsContextType<T>['notifyUpdate'] = () => {\n this.listeners.forEach((cb) => cb());\n };\n\n private switchTab: TabsContextType<T>['switchTab'] = (id) => {\n const { onValueChange, value } = this.props;\n if (id !== value && onValueChange) {\n onValueChange(id);\n }\n };\n\n private getTab: TabsContextType<T>['getTab'] = (id) => {\n const { getNode = null } = this.tabs.find((x) => x.id === id) || {};\n return getNode && getNode();\n };\n\n private addTab: TabsContextType<T>['addTab'] = (id, getNode) => {\n this.tabs = this.tabs.concat({ id, getNode });\n };\n\n private removeTab: TabsContextType<T>['removeTab'] = (id) => {\n this.tabs = this.tabs.filter((tab) => tab.id !== id);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- Базовый пример использования компонента.
1
+ ### Базовый пример
2
2
  ```jsx harmony
3
3
  const [active, setActive] = React.useState('fuji');
4
4
 
@@ -9,6 +9,7 @@ const [active, setActive] = React.useState('fuji');
9
9
  </Tabs>;
10
10
  ```
11
11
 
12
+ ### Расположение табов
12
13
  Компонент может отображать табы двумя способами: горизонтально (по умолчанию) и вертикально.
13
14
  ```jsx harmony
14
15
  const [active, setActive] = React.useState('fuji');
@@ -20,7 +21,7 @@ const [active, setActive] = React.useState('fuji');
20
21
  </Tabs>;
21
22
  ```
22
23
 
23
- У табов есть 3 стандартных размера
24
+ ### Размер
24
25
  ```jsx harmony
25
26
  const [active, setActive] = React.useState('fuji');
26
27
  const renderCaption = (caption) => <span style={{display: "inline-block", width: 60}}>{caption}</span>;
@@ -0,0 +1,28 @@
1
+ import * as TabStories from './Tab.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={TabStories} />
6
+
7
+ # Tab
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/navigation/tabs/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=281%3A17620)
12
+
13
+ <Description />
14
+
15
+ ## Базовый пример
16
+
17
+ <Primary />
18
+
19
+ ## Пропы
20
+
21
+ <details>
22
+ <summary>Открыть таблицу с пропами</summary>
23
+ <ArgTypes />
24
+ </details>
25
+
26
+ ## Примеры использования
27
+
28
+ <Stories title="" includePrimary={false} />
@@ -0,0 +1,28 @@
1
+ import * as TabsStories from './Tabs.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={TabsStories} />
6
+
7
+ # Tabs
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/navigation/tabs/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=281%3A17620)
12
+
13
+ <Description />
14
+
15
+ ## Базовый пример
16
+
17
+ <Primary />
18
+
19
+ ## Пропы
20
+
21
+ <details>
22
+ <summary>Открыть таблицу с пропами</summary>
23
+ <ArgTypes />
24
+ </details>
25
+
26
+ ## Примеры использования
27
+
28
+ <Stories title="" includePrimary={false} />
@@ -4,71 +4,46 @@ import { Override } from '../../typings/utility-types';
4
4
  import { CommonProps } from '../../internal/CommonWrapper';
5
5
  import { SizeProp } from '../../lib/types/props';
6
6
  export interface TextareaProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Override<React.TextareaHTMLAttributes<HTMLTextAreaElement>, {
7
- /**
8
- * Состояние валидации при ошибке.
9
- */
7
+ /** Переводит контрол в состояние валидации "ошибка". */
10
8
  error?: boolean;
11
- /**
12
- * Состояние валидации при предупреждении.
13
- */
9
+ /** Переводит контрол в состояние валидации "предупреждение". */
14
10
  warning?: boolean;
15
- /** Не активное состояние */
11
+ /** Делает компонент недоступным. */
16
12
  disabled?: boolean;
17
- /** Размер */
13
+ /** Задает размер компонента. */
18
14
  size?: SizeProp;
19
- /**
20
- * Автоматический ресайз
21
- * в зависимости от содержимого
22
- */
15
+ /** Выполняет автоматический ресайз в зависимости от содержимого. */
23
16
  autoResize?: boolean;
24
- /**
25
- * Число строк
26
- */
17
+ /** Задает высоту текстарии в виде числа строк видимых без скролла. */
27
18
  rows?: number;
28
- /**
29
- * Максимальное число строк при
30
- * автоматическом ресайзе
31
- */
19
+ /** Задает максимальное число строк при автоматическом ресайзе. */
32
20
  maxRows?: string | number;
33
- /**
34
- * Стандартный ресайз
35
- * Попадает в `style`
36
- */
21
+ /** Задает направления ресайза компонента.
22
+ * Попадает в `style`. */
37
23
  resize?: React.CSSProperties['resize'];
38
- /**
39
- * Ширина
40
- */
24
+ /** Задает ширину текстэрии. */
41
25
  width?: React.CSSProperties['width'];
42
- /**
43
- * Вызывается при изменении `value`
44
- */
26
+ /** Задает функцию, которая вызывается при изменении `value`. */
45
27
  onValueChange?: (value: string) => void;
46
- /** Выделение значения при фокусе */
28
+ /** Определяет, нужно ли выделять введенное значение при фокусе. Работает с типами text, password, tel, search, url. */
47
29
  selectAllOnFocus?: boolean;
48
- /** Показывать счетчик символов */
30
+ /** Определяет, нужно ли показывать счетчик символов. */
49
31
  showLengthCounter?: boolean;
50
- /** Допустимое количество символов в поле. Отображается в счетчике.
51
- * Если не указано, равно `maxLength`
52
- */
32
+ /** Задает допустимое количество символов в поле. Отображается в счетчике.
33
+ * @default maxLength */
53
34
  lengthCounter?: number;
54
- /** Подсказка к счетчику символов.
55
- *
56
- * По умолчанию - тултип с содержимым из пропа, если передан`ReactNode`.
57
- *
58
- * Передав функцию, можно переопределить подсказку целиком, вместе с иконкой. Например,
59
- *
35
+ /** Задает подсказку к счетчику символов.
36
+ * По умолчанию - тултип с содержимым из пропа, если передан `ReactNode`.
37
+ * Передав функцию, можно переопределить подсказку целиком, вместе с иконкой.
38
+ * @example
60
39
  * ```
61
40
  * counterHelp={() => <Tooltip render={...}><HelpIcon /></Tooltip>}
62
- * ```
63
- * */
41
+ * ``` */
64
42
  counterHelp?: ReactNode | (() => ReactNode);
65
- /** Добавлять дополнительную свободную строку при авто-ресайзе.
66
- * @see https://guides.kontur.ru/components/textarea/#04
67
- * */
43
+ /** Добавляет дополнительную свободную строку при авто-ресайзе.
44
+ * @see https://guides.kontur.ru/components/textarea/#04 */
68
45
  extraRow?: boolean;
69
- /** Отключать анимацию при авто-ресайзе.
70
- * Автоматически отключается когда в `extraRow` передан `false`.
71
- */
46
+ /** Отключает анимацию при авто-ресайзе. Автоматически отключается когда в `extraRow` передан `false`. */
72
47
  disableAnimations?: boolean;
73
48
  }> {
74
49
  }
@@ -83,11 +58,10 @@ export declare const TextareaDataTids: {
83
58
  };
84
59
  type DefaultProps = Required<Pick<TextareaProps, 'rows' | 'maxRows' | 'extraRow' | 'disableAnimations' | 'size'>>;
85
60
  /**
86
- * Компонент для ввода многострочного текста.
87
- *
88
- * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`
61
+ * Многострочное поле `Textarea` это поле ввода, которое позволяет работать с несколькими строками текста.
89
62
  *
90
- * ** `className` и `style` игнорируются**
63
+ * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`.
64
+ * Пропы **`className` и `style` игнорируются**.
91
65
  */
92
66
  export declare class Textarea extends React.Component<TextareaProps, TextareaState> {
93
67
  static __KONTUR_REACT_UI__: string;
@@ -77,25 +77,6 @@ var AUTORESIZE_THROTTLE_DEFAULT_WAIT = 100;
77
77
 
78
78
 
79
79
 
80
-
81
-
82
-
83
-
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
-
96
-
97
-
98
-
99
80
 
100
81
 
101
82
 
@@ -125,11 +106,10 @@ var TextareaDataTids = exports.TextareaDataTids = {
125
106
 
126
107
 
127
108
  /**
128
- * Компонент для ввода многострочного текста.
129
- *
130
- * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`
109
+ * Многострочное поле `Textarea` это поле ввода, которое позволяет работать с несколькими строками текста.
131
110
  *
132
- * ** `className` и `style` игнорируются**
111
+ * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`.
112
+ * Пропы **`className` и `style` игнорируются**.
133
113
  */var
134
114
 
135
115
  Textarea = exports.Textarea = (0, _rootNode.rootNode)(_class = (_Textarea = /*#__PURE__*/function (_React$Component) {function Textarea() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_lodash","_globalObject","_identifiers","_needsPolyfillPlaceholder","LayoutEvents","_interopRequireWildcard","_ThemeContext","_RenderLayer","_ResizeDetector","_client","_CommonWrapper","_currentEnvironment","_Emotion","_rootNode","_createPropsGetter","_TextareaHelpers","_Textarea2","_TextareaCounter","_TextareaWithSafari17Workaround","_excluded","_class","_Textarea","DEFAULT_WIDTH","AUTORESIZE_THROTTLE_DEFAULT_WAIT","TextareaDataTids","exports","root","counter","helpIcon","Textarea","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","needsPolyfillPlaceholder","isCounterVisible","reflowCounter","reflow","selectAllId","textareaObserver","globalObject","MutationObserver","setSelectionRange","start","end","_globalObject$documen","node","Error","document","activeElement","focus","selectAll","value","delaySelectAll","_globalObject$request","requestAnimationFrame","cancelDelayedSelectAll","cancelAnimationFrame","renderMain","props","_cx","_ref","_textareaProps$maxLen","_cx2","_props$width","width","error","warning","size","autoResize","resize","onCut","onPaste","maxRows","onFocus","selectAllOnFocus","placeholder","onValueChange","showLengthCounter","lengthCounter","counterHelp","extraRow","disableAnimations","disabled","textareaProps","_objectWithoutPropertiesLoose2","default","rootProps","style","textareaClassNames","cx","getTextareaSizeClassName","styles","textarea","theme","hovering","isAnimationsDisabled","textareaStyle","placeholderPolyfill","defaultValue","createElement","className","fakeTextarea","fakeProps","fake","readOnly","_extends2","ref","refFake","TextareaCounter","help","maxLength","onCloseHelp","handleCloseCounterHelp","refCounter","Component","isSafariWithTextareaBug","TextareaWithSafari17Workaround","RenderLayer","onFocusOutside","onClickOutside","active","getRootSizeClassName","ResizeDetector","onResize","undefined","onChange","handleChange","handleCut","handlePaste","handleFocus","onKeyDown","handleKeyDown","children","setState","e","toString","isBlockEnter","isKeyEnter","preventDefault","fieldIsEmpty","target","element","fakeNode","autoResizeHandler","_this$getProps","rows","_ref2","getTextAreaHeight","minRows","parseInt","height","exceededMaxHeight","overflowY","throttle","getAutoResizeThrottleWait","event","isIE11","_inheritsLoose2","_proto","prototype","rootLarge","rootMedium","rootSmall","textareaLarge","textareaMedium","textareaSmall","_temp","_ref3","componentDidMount","layoutEvents","addListener","observe","attributes","componentWillUnmount","remove","disconnect","componentDidUpdate","prevProps","cancel","_this$getProps2","render","_this2","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","blur","React","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","oneOfType","string","number","id","name","title","spellCheck","role","tabIndex","func","onMouseEnter","onMouseLeave","onMouseOver","onMouseMove","onMouseOut","onMouseUp","onMouseDown","onClick","onDoubleClick","onKeyPress","onKeyUp","onInput","onBlur","onScroll","onWheel","onCopy","isTestEnv"],"sources":["Textarea.tsx"],"sourcesContent":["import React, { AriaAttributes, ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport throttle from 'lodash.throttle';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { ResizeDetector } from '../../internal/ResizeDetector';\nimport { isIE11, isSafariWithTextareaBug } from '../../lib/client';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { getTextAreaHeight } from './TextareaHelpers';\nimport { styles } from './Textarea.styles';\nimport { TextareaCounter, TextareaCounterRef } from './TextareaCounter';\nimport { TextareaWithSafari17Workaround } from './TextareaWithSafari17Workaround';\n\nconst DEFAULT_WIDTH = 250;\nconst AUTORESIZE_THROTTLE_DEFAULT_WAIT = 100;\n\nexport interface TextareaProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n {\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /** Не активное состояние */\n disabled?: boolean;\n /** Размер */\n size?: SizeProp;\n /**\n * Автоматический ресайз\n * в зависимости от содержимого\n */\n autoResize?: boolean;\n /**\n * Число строк\n */\n rows?: number;\n /**\n * Максимальное число строк при\n * автоматическом ресайзе\n */\n maxRows?: string | number;\n\n /**\n * Стандартный ресайз\n * Попадает в `style`\n */\n resize?: React.CSSProperties['resize'];\n\n /**\n * Ширина\n */\n width?: React.CSSProperties['width'];\n\n /**\n * Вызывается при изменении `value`\n */\n onValueChange?: (value: string) => void;\n\n /** Выделение значения при фокусе */\n selectAllOnFocus?: boolean;\n\n /** Показывать счетчик символов */\n showLengthCounter?: boolean;\n\n /** Допустимое количество символов в поле. Отображается в счетчике.\n * Если не указано, равно `maxLength`\n */\n lengthCounter?: number;\n\n /** Подсказка к счетчику символов.\n *\n * По умолчанию - тултип с содержимым из пропа, если передан`ReactNode`.\n *\n * Передав функцию, можно переопределить подсказку целиком, вместе с иконкой. Например,\n *\n * ```\n * counterHelp={() => <Tooltip render={...}><HelpIcon /></Tooltip>}\n * ```\n * */\n counterHelp?: ReactNode | (() => ReactNode);\n\n /** Добавлять дополнительную свободную строку при авто-ресайзе.\n * @see https://guides.kontur.ru/components/textarea/#04\n * */\n extraRow?: boolean;\n\n /** Отключать анимацию при авто-ресайзе.\n * Автоматически отключается когда в `extraRow` передан `false`.\n */\n disableAnimations?: boolean;\n }\n > {}\n\nexport interface TextareaState {\n needsPolyfillPlaceholder: boolean;\n isCounterVisible: boolean;\n}\n\nexport const TextareaDataTids = {\n root: 'Textarea__root',\n counter: 'TextareaCounter__root',\n helpIcon: 'TextareaCounter__helpIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<TextareaProps, 'rows' | 'maxRows' | 'extraRow' | 'disableAnimations' | 'size'>>;\n\n/**\n * Компонент для ввода многострочного текста.\n *\n * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`\n *\n * ** `className` и `style` игнорируются**\n */\n@rootNode\nexport class Textarea extends React.Component<TextareaProps, TextareaState> {\n public static __KONTUR_REACT_UI__ = 'Textarea';\n public static displayName = 'Textarea';\n\n public static propTypes = {\n error: PropTypes.bool,\n warning: PropTypes.bool,\n disabled: PropTypes.bool,\n\n autoResize: PropTypes.bool,\n extraRow: PropTypes.bool,\n disableAnimations: PropTypes.bool,\n maxRows: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n resize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n id: PropTypes.string,\n name: PropTypes.string,\n title: PropTypes.string,\n spellCheck: PropTypes.bool,\n role: PropTypes.string,\n maxLength: PropTypes.number,\n tabIndex: PropTypes.number,\n rows: PropTypes.number,\n placeholder: PropTypes.string,\n\n value: PropTypes.string,\n defaultValue: PropTypes.string,\n onValueChange: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onMouseMove: PropTypes.func,\n onMouseOut: PropTypes.func,\n\n onMouseUp: PropTypes.func,\n onMouseDown: PropTypes.func,\n onClick: PropTypes.func,\n onDoubleClick: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyUp: PropTypes.func,\n onInput: PropTypes.func,\n\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n\n onScroll: PropTypes.func,\n onWheel: PropTypes.func,\n\n onCut: PropTypes.func,\n onPaste: PropTypes.func,\n onCopy: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n rows: 3,\n maxRows: 15,\n extraRow: true,\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Textarea.defaultProps);\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getTextareaSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.textareaLarge(this.theme);\n case 'medium':\n return styles.textareaMedium(this.theme);\n case 'small':\n default:\n return styles.textareaSmall(this.theme);\n }\n }\n\n public state = {\n needsPolyfillPlaceholder,\n isCounterVisible: false,\n };\n private reflowCounter = () => {\n if (this.counter) {\n this.counter.reflow();\n }\n };\n\n private theme!: Theme;\n private selectAllId: number | null = null;\n private node: Nullable<HTMLTextAreaElement>;\n private fakeNode: Nullable<HTMLTextAreaElement>;\n private counter: Nullable<TextareaCounterRef>;\n private layoutEvents: Nullable<{ remove: () => void }>;\n private textareaObserver = globalObject.MutationObserver\n ? new globalObject.MutationObserver(this.reflowCounter)\n : null;\n private setRootNode!: TSetRootNode;\n private getAutoResizeThrottleWait(props: TextareaProps = this.props): number {\n // NOTE: При отключении анимации остается эффект дергания при авто-ресайзе из-за троттлинга расчета высоты\n // Поэтому выставляем таймаут троттла в ноль. Подробности - https://github.com/skbkontur/retail-ui/issues/2120\n return this.isAnimationsDisabled(props) ? 0 : AUTORESIZE_THROTTLE_DEFAULT_WAIT;\n }\n private isAnimationsDisabled({ disableAnimations, extraRow }: TextareaProps = this.props): boolean {\n return disableAnimations || !extraRow;\n }\n\n public componentDidMount() {\n if (this.props.autoResize) {\n this.autoResize();\n this.layoutEvents = LayoutEvents.addListener(this.autoResize);\n }\n\n if (this.node && this.props.showLengthCounter && this.textareaObserver) {\n this.textareaObserver.observe(this.node, { attributes: true });\n }\n }\n\n public componentWillUnmount() {\n if (this.layoutEvents) {\n this.layoutEvents.remove();\n }\n if (this.props.showLengthCounter && this.textareaObserver) {\n this.textareaObserver.disconnect();\n }\n this.cancelDelayedSelectAll();\n }\n\n public componentDidUpdate(prevProps: TextareaProps) {\n if (this.getAutoResizeThrottleWait() !== this.getAutoResizeThrottleWait(prevProps)) {\n this.autoResize.cancel();\n this.autoResize = throttle(this.autoResizeHandler, this.getAutoResizeThrottleWait());\n }\n const { rows, maxRows } = this.getProps();\n if (\n this.props.autoResize &&\n (rows !== prevProps.rows || maxRows !== prevProps.maxRows || this.props.value !== prevProps.value)\n ) {\n this.autoResize();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.node) {\n this.node.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.node) {\n this.node.blur();\n }\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange = (start: number, end: number) => {\n if (!this.node) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.node) {\n this.focus();\n }\n\n this.node.setSelectionRange(start, end);\n };\n\n /**\n * @public\n */\n public selectAll = () => {\n if (this.node) {\n this.setSelectionRange(0, this.node.value.length);\n }\n };\n\n private delaySelectAll = (): number | null =>\n (this.selectAllId = globalObject.requestAnimationFrame?.(this.selectAll) ?? null);\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<TextareaProps>) => {\n const {\n width = DEFAULT_WIDTH,\n error,\n warning,\n size,\n autoResize,\n resize,\n onCut,\n onPaste,\n maxRows,\n onFocus,\n selectAllOnFocus,\n placeholder,\n onValueChange,\n showLengthCounter,\n lengthCounter,\n counterHelp,\n extraRow,\n disableAnimations,\n disabled,\n ...textareaProps\n } = props;\n\n const { isCounterVisible } = this.state;\n\n const rootProps = {\n style: {\n width,\n },\n };\n\n const textareaClassNames = cx(this.getTextareaSizeClassName(), {\n [styles.textarea(this.theme)]: true,\n [styles.hovering(this.theme)]: !error && !warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.error(this.theme)]: !!error,\n [styles.warning(this.theme)]: !!warning,\n [styles.disableAnimations()]: this.isAnimationsDisabled(),\n });\n\n const textareaStyle = {\n resize: autoResize ? 'none' : resize,\n };\n\n let placeholderPolyfill = null;\n\n if (this.state.needsPolyfillPlaceholder && !textareaProps.value && !textareaProps.defaultValue) {\n placeholderPolyfill = <span className={styles.placeholder()}>{placeholder}</span>;\n }\n\n let fakeTextarea = null;\n if (autoResize) {\n const fakeProps = {\n value: this.props.value,\n defaultValue: this.props.defaultValue,\n className: cx(textareaClassNames, styles.fake()),\n readOnly: true,\n };\n fakeTextarea = <textarea {...fakeProps} ref={this.refFake} />;\n }\n\n const counter = showLengthCounter && isCounterVisible && this.node && (\n <TextareaCounter\n textarea={this.node}\n size={this.getProps().size}\n help={counterHelp}\n value={textareaProps.value}\n length={textareaProps.maxLength ?? lengthCounter ?? 0}\n onCloseHelp={this.handleCloseCounterHelp}\n ref={this.refCounter}\n />\n );\n\n const Component = isSafariWithTextareaBug ? TextareaWithSafari17Workaround : 'textarea';\n\n return (\n <RenderLayer\n onFocusOutside={this.handleCloseCounterHelp}\n onClickOutside={this.handleCloseCounterHelp}\n active={this.state.isCounterVisible}\n >\n <label\n data-tid={TextareaDataTids.root}\n {...rootProps}\n className={cx(this.getRootSizeClassName(), {\n [styles.root()]: true,\n })}\n >\n {placeholderPolyfill}\n <ResizeDetector onResize={this.reflowCounter}>\n <Component\n {...textareaProps}\n className={textareaClassNames}\n style={textareaStyle}\n placeholder={!placeholderPolyfill ? placeholder : undefined}\n ref={this.ref}\n onChange={this.handleChange}\n onCut={this.handleCut}\n onPaste={this.handlePaste}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n disabled={disabled}\n >\n {this.props.children}\n </Component>\n </ResizeDetector>\n {fakeTextarea}\n {counter}\n </label>\n </RenderLayer>\n );\n };\n\n private handleCloseCounterHelp = () => this.setState({ isCounterVisible: false });\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n // Edge bug: textarea maxlength doesn't work after new line\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/18833616/\n const value = this.props.value !== undefined ? this.props.value.toString() : null;\n const isBlockEnter = isKeyEnter(e) && value !== null && value.length === this.props.maxLength;\n\n if (isBlockEnter) {\n e.preventDefault();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = e.target.value === '';\n\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(e.target.value);\n }\n\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onChange) {\n this.props.onChange(e);\n }\n\n this.reflowCounter();\n };\n\n private ref = (element: HTMLTextAreaElement) => {\n this.node = element;\n };\n\n private refFake = (element: HTMLTextAreaElement) => {\n this.fakeNode = element;\n };\n\n private refCounter = (ref: TextareaCounterRef | null) => {\n this.counter = ref;\n };\n\n private autoResizeHandler = () => {\n const fakeNode = this.fakeNode;\n if (!fakeNode) {\n return;\n }\n const node = this.node;\n if (!node) {\n return;\n }\n if (this.props.value === undefined) {\n fakeNode.value = node.value;\n }\n\n const { rows, maxRows } = this.getProps();\n if (rows === undefined || maxRows === undefined) {\n return;\n }\n\n const { height, exceededMaxHeight } =\n getTextAreaHeight({\n node: fakeNode,\n minRows: typeof rows === 'number' ? rows : parseInt(rows, 10),\n maxRows: typeof maxRows === 'number' ? maxRows : parseInt(maxRows, 10),\n extraRow: this.getProps().extraRow,\n }) || {};\n\n if (height === undefined || exceededMaxHeight === undefined) {\n return;\n }\n\n node.style.height = height + 'px';\n node.style.overflowY = exceededMaxHeight ? 'scroll' : 'hidden';\n fakeNode.style.overflowY = exceededMaxHeight ? 'scroll' : 'hidden';\n };\n\n private autoResize = throttle(this.autoResizeHandler, this.getAutoResizeThrottleWait());\n\n private handleCut = (event: React.ClipboardEvent<HTMLTextAreaElement>) => {\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onCut) {\n this.props.onCut(event);\n }\n\n this.reflowCounter();\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLTextAreaElement>) => {\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onPaste) {\n this.props.onPaste(event);\n }\n\n this.reflowCounter();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n this.setState({ isCounterVisible: true });\n\n if (this.props.selectAllOnFocus) {\n // https://github.com/facebook/react/issues/7769\n this.node && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n}\n"],"mappings":"okBAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;;AAEA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,yBAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAC,uBAAA,CAAAP,OAAA;;AAEA,IAAAQ,aAAA,GAAAR,OAAA;;AAEA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAX,OAAA;AACA,IAAAY,cAAA,GAAAZ,OAAA;AACA,IAAAa,mBAAA,GAAAb,OAAA;AACA,IAAAc,QAAA,GAAAd,OAAA;AACA,IAAAe,SAAA,GAAAf,OAAA;AACA,IAAAgB,kBAAA,GAAAhB,OAAA;;;AAGA,IAAAiB,gBAAA,GAAAjB,OAAA;AACA,IAAAkB,UAAA,GAAAlB,OAAA;AACA,IAAAmB,gBAAA,GAAAnB,OAAA;AACA,IAAAoB,+BAAA,GAAApB,OAAA,qCAAkF,IAAAqB,SAAA,qQAAAC,MAAA,EAAAC,SAAA;;AAElF,IAAMC,aAAa,GAAG,GAAG;AACzB,IAAMC,gCAAgC,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2FrC,IAAMC,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG;EAC9BE,IAAI,EAAE,gBAAgB;EACtBC,OAAO,EAAE,uBAAuB;EAChCC,QAAQ,EAAE;AACZ,CAAU;;;;AAIV;AACA;AACA;AACA;AACA;AACA;AACA,GANA;;AAQaC,QAAQ,GAAAJ,OAAA,CAAAI,QAAA,OADpBC,kBAAQ,EAAAV,MAAA,IAAAC,SAAA,0BAAAU,gBAAA,YAAAF,SAAA,OAAAG,KAAA,UAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,KAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GAAAN,KAAA,GAAAD,gBAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,gBAAA,SAAAU,MAAA,CAAAL,IAAA,WAAAJ,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmECU,QAAQ,GAAG,IAAAC,oCAAiB,EAACd,QAAQ,CAACe,YAAY,CAAC,CAAAZ,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;IA0BpDa,KAAK,GAAG;MACbC,wBAAwB,EAAxBA,kDAAwB;MACxBC,gBAAgB,EAAE;IACpB,CAAC,CAAAf,KAAA;IACOgB,aAAa,GAAG,YAAM;MAC5B,IAAIhB,KAAA,CAAKL,OAAO,EAAE;QAChBK,KAAA,CAAKL,OAAO,CAACsB,MAAM,CAAC,CAAC;MACvB;IACF,CAAC,CAAAjB,KAAA;;;IAGOkB,WAAW,GAAkB,IAAI,CAAAlB,KAAA;;;;;IAKjCmB,gBAAgB,GAAGC,0BAAY,CAACC,gBAAgB;IACpD,IAAID,0BAAY,CAACC,gBAAgB,CAACrB,KAAA,CAAKgB,aAAa,CAAC;IACrD,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+ER;AACF;AACA;AACA;AACA,OAJEhB,KAAA;IAKOsB,iBAAiB,GAAG,UAACC,KAAa,EAAEC,GAAW,EAAK,KAAAC,qBAAA;MACzD,IAAI,CAACzB,KAAA,CAAK0B,IAAI,EAAE;QACd,MAAM,IAAIC,KAAK,CAAC,oDAAoD,CAAC;MACvE;;MAEA,IAAI,EAAAF,qBAAA,GAAAL,0BAAY,CAACQ,QAAQ,qBAArBH,qBAAA,CAAuBI,aAAa,MAAK7B,KAAA,CAAK0B,IAAI,EAAE;QACtD1B,KAAA,CAAK8B,KAAK,CAAC,CAAC;MACd;;MAEA9B,KAAA,CAAK0B,IAAI,CAACJ,iBAAiB,CAACC,KAAK,EAAEC,GAAG,CAAC;IACzC,CAAC;;IAED;AACF;AACA,OAFExB,KAAA;IAGO+B,SAAS,GAAG,YAAM;MACvB,IAAI/B,KAAA,CAAK0B,IAAI,EAAE;QACb1B,KAAA,CAAKsB,iBAAiB,CAAC,CAAC,EAAEtB,KAAA,CAAK0B,IAAI,CAACM,KAAK,CAAC7B,MAAM,CAAC;MACnD;IACF,CAAC,CAAAH,KAAA;;IAEOiC,cAAc,GAAG,iBAAAC,qBAAA;QACtBlC,KAAA,CAAKkB,WAAW,IAAAgB,qBAAA,GAAGd,0BAAY,CAACe,qBAAqB,oBAAlCf,0BAAY,CAACe,qBAAqB,CAAGnC,KAAA,CAAK+B,SAAS,CAAC,YAAAG,qBAAA,GAAI,IAAI,GAAC,CAAAlC,KAAA;;IAE3EoC,sBAAsB,GAAG,YAAY;MAC3C,IAAIpC,KAAA,CAAKkB,WAAW,EAAE;QACpBE,0BAAY,CAACiB,oBAAoB,YAAjCjB,0BAAY,CAACiB,oBAAoB,CAAGrC,KAAA,CAAKkB,WAAW,CAAC;QACrDlB,KAAA,CAAKkB,WAAW,GAAG,IAAI;MACzB;IACF,CAAC,CAAAlB,KAAA;;IAEOsC,UAAU,GAAG,UAACC,KAA4C,EAAK,KAAAC,GAAA,EAAAC,IAAA,EAAAC,qBAAA,EAAAC,IAAA;MACrE,IAAAC,YAAA;;;;;;;;;;;;;;;;;;;;;QAqBIL,KAAK,CApBPM,KAAK,CAALA,KAAK,GAAAD,YAAA,cAAGtD,aAAa,GAAAsD,YAAA,CACrBE,KAAK,GAmBHP,KAAK,CAnBPO,KAAK,CACLC,OAAO,GAkBLR,KAAK,CAlBPQ,OAAO,CACPC,IAAI,GAiBFT,KAAK,CAjBPS,IAAI,CACJC,UAAU,GAgBRV,KAAK,CAhBPU,UAAU,CACVC,MAAM,GAeJX,KAAK,CAfPW,MAAM,CACNC,KAAK,GAcHZ,KAAK,CAdPY,KAAK,CACLC,OAAO,GAaLb,KAAK,CAbPa,OAAO,CACPC,OAAO,GAYLd,KAAK,CAZPc,OAAO,CACPC,OAAO,GAWLf,KAAK,CAXPe,OAAO,CACPC,gBAAgB,GAUdhB,KAAK,CAVPgB,gBAAgB,CAChBC,WAAW,GASTjB,KAAK,CATPiB,WAAW,CACXC,aAAa,GAQXlB,KAAK,CARPkB,aAAa,CACbC,iBAAiB,GAOfnB,KAAK,CAPPmB,iBAAiB,CACjBC,aAAa,GAMXpB,KAAK,CANPoB,aAAa,CACbC,WAAW,GAKTrB,KAAK,CALPqB,WAAW,CACXC,QAAQ,GAINtB,KAAK,CAJPsB,QAAQ,CACRC,iBAAiB,GAGfvB,KAAK,CAHPuB,iBAAiB,CACjBC,QAAQ,GAENxB,KAAK,CAFPwB,QAAQ,CACLC,aAAa,OAAAC,8BAAA,CAAAC,OAAA,EACd3B,KAAK,EAAApD,SAAA;;MAET,IAAQ4B,gBAAgB,GAAKf,KAAA,CAAKa,KAAK,CAA/BE,gBAAgB;;MAExB,IAAMoD,SAAS,GAAG;QAChBC,KAAK,EAAE;UACLvB,KAAK,EAALA;QACF;MACF,CAAC;;MAED,IAAMwB,kBAAkB,GAAG,IAAAC,WAAE,EAACtE,KAAA,CAAKuE,wBAAwB,CAAC,CAAC,GAAA/B,GAAA,OAAAA,GAAA;MAC1DgC,iBAAM,CAACC,QAAQ,CAACzE,KAAA,CAAK0E,KAAK,CAAC,IAAG,IAAI,EAAAlC,GAAA;MAClCgC,iBAAM,CAACG,QAAQ,CAAC3E,KAAA,CAAK0E,KAAK,CAAC,IAAG,CAAC5B,KAAK,IAAI,CAACC,OAAO,EAAAP,GAAA;MAChDgC,iBAAM,CAACT,QAAQ,CAAC/D,KAAA,CAAK0E,KAAK,CAAC,IAAGX,QAAQ,EAAAvB,GAAA;MACtCgC,iBAAM,CAAC1B,KAAK,CAAC9C,KAAA,CAAK0E,KAAK,CAAC,IAAG,CAAC,CAAC5B,KAAK,EAAAN,GAAA;MAClCgC,iBAAM,CAACzB,OAAO,CAAC/C,KAAA,CAAK0E,KAAK,CAAC,IAAG,CAAC,CAAC3B,OAAO,EAAAP,GAAA;MACtCgC,iBAAM,CAACV,iBAAiB,CAAC,CAAC,IAAG9D,KAAA,CAAK4E,oBAAoB,CAAC,CAAC,EAAApC,GAAA;MAC1D,CAAC;;MAEF,IAAMqC,aAAa,GAAG;QACpB3B,MAAM,EAAED,UAAU,GAAG,MAAM,GAAGC;MAChC,CAAC;;MAED,IAAI4B,mBAAmB,GAAG,IAAI;;MAE9B,IAAI9E,KAAA,CAAKa,KAAK,CAACC,wBAAwB,IAAI,CAACkD,aAAa,CAAChC,KAAK,IAAI,CAACgC,aAAa,CAACe,YAAY,EAAE;QAC9FD,mBAAmB,gBAAGlH,MAAA,CAAAsG,OAAA,CAAAc,aAAA,WAAMC,SAAS,EAAET,iBAAM,CAAChB,WAAW,CAAC,CAAE,IAAEA,WAAkB,CAAC;MACnF;;MAEA,IAAI0B,YAAY,GAAG,IAAI;MACvB,IAAIjC,UAAU,EAAE;QACd,IAAMkC,SAAS,GAAG;UAChBnD,KAAK,EAAEhC,KAAA,CAAKuC,KAAK,CAACP,KAAK;UACvB+C,YAAY,EAAE/E,KAAA,CAAKuC,KAAK,CAACwC,YAAY;UACrCE,SAAS,EAAE,IAAAX,WAAE,EAACD,kBAAkB,EAAEG,iBAAM,CAACY,IAAI,CAAC,CAAC,CAAC;UAChDC,QAAQ,EAAE;QACZ,CAAC;QACDH,YAAY,gBAAGtH,MAAA,CAAAsG,OAAA,CAAAc,aAAA,iBAAAM,SAAA,CAAApB,OAAA,MAAciB,SAAS,IAAEI,GAAG,EAAEvF,KAAA,CAAKwF,OAAQ,GAAE,CAAC;MAC/D;;MAEA,IAAM7F,OAAO,GAAG+D,iBAAiB,IAAI3C,gBAAgB,IAAIf,KAAA,CAAK0B,IAAI;MAChE9D,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAAC/F,gBAAA,CAAAwG,eAAe;QACdhB,QAAQ,EAAEzE,KAAA,CAAK0B,IAAK;QACpBsB,IAAI,EAAEhD,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACsC,IAAK;QAC3B0C,IAAI,EAAE9B,WAAY;QAClB5B,KAAK,EAAEgC,aAAa,CAAChC,KAAM;QAC3B7B,MAAM,GAAAsC,IAAA,IAAAC,qBAAA,GAAEsB,aAAa,CAAC2B,SAAS,YAAAjD,qBAAA,GAAIiB,aAAa,YAAAlB,IAAA,GAAI,CAAE;QACtDmD,WAAW,EAAE5F,KAAA,CAAK6F,sBAAuB;QACzCN,GAAG,EAAEvF,KAAA,CAAK8F,UAAW;MACtB,CACF;;;MAED,IAAMC,SAAS,GAAGC,+BAAuB,GAAGC,8DAA8B,GAAG,UAAU;;MAEvF;QACErI,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAACzG,YAAA,CAAA2H,WAAW;UACVC,cAAc,EAAEnG,KAAA,CAAK6F,sBAAuB;UAC5CO,cAAc,EAAEpG,KAAA,CAAK6F,sBAAuB;UAC5CQ,MAAM,EAAErG,KAAA,CAAKa,KAAK,CAACE,gBAAiB;;QAEpCnD,MAAA,CAAAsG,OAAA,CAAAc,aAAA,cAAAM,SAAA,CAAApB,OAAA;UACE,YAAU1E,gBAAgB,CAACE,IAAK;QAC5ByE,SAAS;UACbc,SAAS,EAAE,IAAAX,WAAE,EAACtE,KAAA,CAAKsG,oBAAoB,CAAC,CAAC,GAAA3D,IAAA,OAAAA,IAAA;UACtC6B,iBAAM,CAAC9E,IAAI,CAAC,CAAC,IAAG,IAAI,EAAAiD,IAAA;UACtB,CAAE;;QAEFmC,mBAAmB;QACpBlH,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAACxG,eAAA,CAAA+H,cAAc,IAACC,QAAQ,EAAExG,KAAA,CAAKgB,aAAc;QAC3CpD,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAACe,SAAS,MAAAT,SAAA,CAAApB,OAAA;QACJF,aAAa;UACjBiB,SAAS,EAAEZ,kBAAmB;UAC9BD,KAAK,EAAES,aAAc;UACrBrB,WAAW,EAAE,CAACsB,mBAAmB,GAAGtB,WAAW,GAAGiD,SAAU;UAC5DlB,GAAG,EAAEvF,KAAA,CAAKuF,GAAI;UACdmB,QAAQ,EAAE1G,KAAA,CAAK2G,YAAa;UAC5BxD,KAAK,EAAEnD,KAAA,CAAK4G,SAAU;UACtBxD,OAAO,EAAEpD,KAAA,CAAK6G,WAAY;UAC1BvD,OAAO,EAAEtD,KAAA,CAAK8G,WAAY;UAC1BC,SAAS,EAAE/G,KAAA,CAAKgH,aAAc;UAC9BjD,QAAQ,EAAEA,QAAS;;QAElB/D,KAAA,CAAKuC,KAAK,CAAC0E;QACH;QACG,CAAC;QAChB/B,YAAY;QACZvF;QACI;QACI,CAAC;;IAElB,CAAC,CAAAK,KAAA;;IAEO6F,sBAAsB,GAAG,oBAAM7F,KAAA,CAAKkH,QAAQ,CAAC,EAAEnG,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC,GAAAf,KAAA;;IAEzEgH,aAAa,GAAG,UAACG,CAA2C,EAAK;MACvE;MACA;MACA,IAAMnF,KAAK,GAAGhC,KAAA,CAAKuC,KAAK,CAACP,KAAK,KAAKyE,SAAS,GAAGzG,KAAA,CAAKuC,KAAK,CAACP,KAAK,CAACoF,QAAQ,CAAC,CAAC,GAAG,IAAI;MACjF,IAAMC,YAAY,GAAG,IAAAC,uBAAU,EAACH,CAAC,CAAC,IAAInF,KAAK,KAAK,IAAI,IAAIA,KAAK,CAAC7B,MAAM,KAAKH,KAAA,CAAKuC,KAAK,CAACoD,SAAS;;MAE7F,IAAI0B,YAAY,EAAE;QAChBF,CAAC,CAACI,cAAc,CAAC,CAAC;MACpB;;MAEA,IAAIvH,KAAA,CAAKuC,KAAK,CAACwE,SAAS,EAAE;QACxB/G,KAAA,CAAKuC,KAAK,CAACwE,SAAS,CAACI,CAAC,CAAC;MACzB;IACF,CAAC,CAAAnH,KAAA;;IAEO2G,YAAY,GAAG,UAACQ,CAAyC,EAAK;MACpE,IAAIrG,kDAAwB,EAAE;QAC5B,IAAM0G,YAAY,GAAGL,CAAC,CAACM,MAAM,CAACzF,KAAK,KAAK,EAAE;;QAE1C,IAAIhC,KAAA,CAAKa,KAAK,CAACC,wBAAwB,KAAK0G,YAAY,EAAE;UACxDxH,KAAA,CAAKkH,QAAQ,CAAC,EAAEpG,wBAAwB,EAAE0G,YAAY,CAAC,CAAC,CAAC;QAC3D;MACF;;MAEA,IAAIxH,KAAA,CAAKuC,KAAK,CAACkB,aAAa,EAAE;QAC5BzD,KAAA,CAAKuC,KAAK,CAACkB,aAAa,CAAC0D,CAAC,CAACM,MAAM,CAACzF,KAAK,CAAC;MAC1C;;MAEA,IAAIhC,KAAA,CAAKuC,KAAK,CAACU,UAAU,EAAE;QACzBjD,KAAA,CAAKiD,UAAU,CAAC,CAAC;MACnB;;MAEA,IAAIjD,KAAA,CAAKuC,KAAK,CAACmE,QAAQ,EAAE;QACvB1G,KAAA,CAAKuC,KAAK,CAACmE,QAAQ,CAACS,CAAC,CAAC;MACxB;;MAEAnH,KAAA,CAAKgB,aAAa,CAAC,CAAC;IACtB,CAAC,CAAAhB,KAAA;;IAEOuF,GAAG,GAAG,UAACmC,OAA4B,EAAK;MAC9C1H,KAAA,CAAK0B,IAAI,GAAGgG,OAAO;IACrB,CAAC,CAAA1H,KAAA;;IAEOwF,OAAO,GAAG,UAACkC,OAA4B,EAAK;MAClD1H,KAAA,CAAK2H,QAAQ,GAAGD,OAAO;IACzB,CAAC,CAAA1H,KAAA;;IAEO8F,UAAU,GAAG,UAACP,GAA8B,EAAK;MACvDvF,KAAA,CAAKL,OAAO,GAAG4F,GAAG;IACpB,CAAC,CAAAvF,KAAA;;IAEO4H,iBAAiB,GAAG,YAAM;MAChC,IAAMD,QAAQ,GAAG3H,KAAA,CAAK2H,QAAQ;MAC9B,IAAI,CAACA,QAAQ,EAAE;QACb;MACF;MACA,IAAMjG,IAAI,GAAG1B,KAAA,CAAK0B,IAAI;MACtB,IAAI,CAACA,IAAI,EAAE;QACT;MACF;MACA,IAAI1B,KAAA,CAAKuC,KAAK,CAACP,KAAK,KAAKyE,SAAS,EAAE;QAClCkB,QAAQ,CAAC3F,KAAK,GAAGN,IAAI,CAACM,KAAK;MAC7B;;MAEA,IAAA6F,cAAA,GAA0B7H,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAAjCoH,IAAI,GAAAD,cAAA,CAAJC,IAAI,CAAEzE,OAAO,GAAAwE,cAAA,CAAPxE,OAAO;MACrB,IAAIyE,IAAI,KAAKrB,SAAS,IAAIpD,OAAO,KAAKoD,SAAS,EAAE;QAC/C;MACF;;MAEA,IAAAsB,KAAA;QACE,IAAAC,kCAAiB,EAAC;UAChBtG,IAAI,EAAEiG,QAAQ;UACdM,OAAO,EAAE,OAAOH,IAAI,KAAK,QAAQ,GAAGA,IAAI,GAAGI,QAAQ,CAACJ,IAAI,EAAE,EAAE,CAAC;UAC7DzE,OAAO,EAAE,OAAOA,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAG6E,QAAQ,CAAC7E,OAAO,EAAE,EAAE,CAAC;UACtEQ,QAAQ,EAAE7D,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACmD;QAC5B,CAAC,CAAC,IAAI,CAAC,CAAC,CANFsE,MAAM,GAAAJ,KAAA,CAANI,MAAM,CAAEC,iBAAiB,GAAAL,KAAA,CAAjBK,iBAAiB;;MAQjC,IAAID,MAAM,KAAK1B,SAAS,IAAI2B,iBAAiB,KAAK3B,SAAS,EAAE;QAC3D;MACF;;MAEA/E,IAAI,CAAC0C,KAAK,CAAC+D,MAAM,GAAGA,MAAM,GAAG,IAAI;MACjCzG,IAAI,CAAC0C,KAAK,CAACiE,SAAS,GAAGD,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;MAC9DT,QAAQ,CAACvD,KAAK,CAACiE,SAAS,GAAGD,iBAAiB,GAAG,QAAQ,GAAG,QAAQ;IACpE,CAAC,CAAApI,KAAA;;IAEOiD,UAAU,GAAG,IAAAqF,eAAQ,EAACtI,KAAA,CAAK4H,iBAAiB,EAAE5H,KAAA,CAAKuI,yBAAyB,CAAC,CAAC,CAAC,CAAAvI,KAAA;;IAE/E4G,SAAS,GAAG,UAAC4B,KAAgD,EAAK;MACxE,IAAIxI,KAAA,CAAKuC,KAAK,CAACU,UAAU,EAAE;QACzBjD,KAAA,CAAKiD,UAAU,CAAC,CAAC;MACnB;;MAEA,IAAIjD,KAAA,CAAKuC,KAAK,CAACY,KAAK,EAAE;QACpBnD,KAAA,CAAKuC,KAAK,CAACY,KAAK,CAACqF,KAAK,CAAC;MACzB;;MAEAxI,KAAA,CAAKgB,aAAa,CAAC,CAAC;IACtB,CAAC,CAAAhB,KAAA;;IAEO6G,WAAW,GAAG,UAAC2B,KAAgD,EAAK;MAC1E,IAAIxI,KAAA,CAAKuC,KAAK,CAACU,UAAU,EAAE;QACzBjD,KAAA,CAAKiD,UAAU,CAAC,CAAC;MACnB;;MAEA,IAAIjD,KAAA,CAAKuC,KAAK,CAACa,OAAO,EAAE;QACtBpD,KAAA,CAAKuC,KAAK,CAACa,OAAO,CAACoF,KAAK,CAAC;MAC3B;;MAEAxI,KAAA,CAAKgB,aAAa,CAAC,CAAC;IACtB,CAAC,CAAAhB,KAAA;;IAEO8G,WAAW,GAAG,UAAC0B,KAA4C,EAAK;MACtExI,KAAA,CAAKkH,QAAQ,CAAC,EAAEnG,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;;MAEzC,IAAIf,KAAA,CAAKuC,KAAK,CAACgB,gBAAgB,EAAE;QAC/B;QACAvD,KAAA,CAAK0B,IAAI,IAAI,CAAC+G,cAAM,GAAGzI,KAAA,CAAK+B,SAAS,CAAC,CAAC,GAAG/B,KAAA,CAAKiC,cAAc,CAAC,CAAC;MACjE;;MAEA,IAAIjC,KAAA,CAAKuC,KAAK,CAACe,OAAO,EAAE;QACtBtD,KAAA,CAAKuC,KAAK,CAACe,OAAO,CAACkF,KAAK,CAAC;MAC3B;IACF,CAAC,QAAAxI,KAAA,MAAA0I,eAAA,CAAAxE,OAAA,EAAArE,QAAA,EAAAE,gBAAA,MAAA4I,MAAA,GAAA9I,QAAA,CAAA+I,SAAA,CAAAD,MAAA,CA5YOrC,oBAAoB,GAA5B,SAAAA,qBAAA,EAA+B,CAC7B,QAAQ,IAAI,CAAC5F,QAAQ,CAAC,CAAC,CAACsC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAOwB,iBAAM,CAACqE,SAAS,CAAC,IAAI,CAACnE,KAAK,CAAC,CACrC,KAAK,QAAQ,CACX,OAAOF,iBAAM,CAACsE,UAAU,CAAC,IAAI,CAACpE,KAAK,CAAC,CACtC,KAAK,OAAO,CACZ,QACE,OAAOF,iBAAM,CAACuE,SAAS,CAAC,IAAI,CAACrE,KAAK,CAAC,CACvC,CACF,CAAC,CAAAiE,MAAA,CAEOpE,wBAAwB,GAAhC,SAAAA,yBAAA,EAAmC,CACjC,QAAQ,IAAI,CAAC7D,QAAQ,CAAC,CAAC,CAACsC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAOwB,iBAAM,CAACwE,aAAa,CAAC,IAAI,CAACtE,KAAK,CAAC,CACzC,KAAK,QAAQ,CACX,OAAOF,iBAAM,CAACyE,cAAc,CAAC,IAAI,CAACvE,KAAK,CAAC,CAC1C,KAAK,OAAO,CACZ,QACE,OAAOF,iBAAM,CAAC0E,aAAa,CAAC,IAAI,CAACxE,KAAK,CAAC,CAC3C,CACF,CAAC,CAAAiE,MAAA,CAsBOJ,yBAAyB,GAAjC,SAAAA,0BAAkChG,KAAoB,EAAuB,KAA3CA,KAAoB,cAApBA,KAAoB,GAAG,IAAI,CAACA,KAAK,GACjE;IACA;IACA,OAAO,IAAI,CAACqC,oBAAoB,CAACrC,KAAK,CAAC,GAAG,CAAC,GAAGhD,gCAAgC,CAChF,CAAC,CAAAoJ,MAAA,CACO/D,oBAAoB,GAA5B,SAAAA,qBAAAuE,KAAA,EAAmG,KAAAC,KAAA,GAAAD,KAAA,cAArB,IAAI,CAAC5G,KAAK,GAAA4G,KAAA,CAAzDrF,iBAAiB,GAAAsF,KAAA,CAAjBtF,iBAAiB,CAAED,QAAQ,GAAAuF,KAAA,CAARvF,QAAQ,CACxD,OAAOC,iBAAiB,IAAI,CAACD,QAAQ,CACvC,CAAC,CAAA8E,MAAA,CAEMU,iBAAiB,GAAxB,SAAAA,kBAAA,EAA2B,CACzB,IAAI,IAAI,CAAC9G,KAAK,CAACU,UAAU,EAAE,CACzB,IAAI,CAACA,UAAU,CAAC,CAAC,CACjB,IAAI,CAACqG,YAAY,GAAGlL,YAAY,CAACmL,WAAW,CAAC,IAAI,CAACtG,UAAU,CAAC,CAC/D,CAEA,IAAI,IAAI,CAACvB,IAAI,IAAI,IAAI,CAACa,KAAK,CAACmB,iBAAiB,IAAI,IAAI,CAACvC,gBAAgB,EAAE,CACtE,IAAI,CAACA,gBAAgB,CAACqI,OAAO,CAAC,IAAI,CAAC9H,IAAI,EAAE,EAAE+H,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAChE,CACF,CAAC,CAAAd,MAAA,CAEMe,oBAAoB,GAA3B,SAAAA,qBAAA,EAA8B,CAC5B,IAAI,IAAI,CAACJ,YAAY,EAAE,CACrB,IAAI,CAACA,YAAY,CAACK,MAAM,CAAC,CAAC,CAC5B,CACA,IAAI,IAAI,CAACpH,KAAK,CAACmB,iBAAiB,IAAI,IAAI,CAACvC,gBAAgB,EAAE,CACzD,IAAI,CAACA,gBAAgB,CAACyI,UAAU,CAAC,CAAC,CACpC,CACA,IAAI,CAACxH,sBAAsB,CAAC,CAAC,CAC/B,CAAC,CAAAuG,MAAA,CAEMkB,kBAAkB,GAAzB,SAAAA,mBAA0BC,SAAwB,EAAE,CAClD,IAAI,IAAI,CAACvB,yBAAyB,CAAC,CAAC,KAAK,IAAI,CAACA,yBAAyB,CAACuB,SAAS,CAAC,EAAE,CAClF,IAAI,CAAC7G,UAAU,CAAC8G,MAAM,CAAC,CAAC,CACxB,IAAI,CAAC9G,UAAU,GAAG,IAAAqF,eAAQ,EAAC,IAAI,CAACV,iBAAiB,EAAE,IAAI,CAACW,yBAAyB,CAAC,CAAC,CAAC,CACtF,CACA,IAAAyB,eAAA,GAA0B,IAAI,CAACtJ,QAAQ,CAAC,CAAC,CAAjCoH,IAAI,GAAAkC,eAAA,CAAJlC,IAAI,CAAEzE,OAAO,GAAA2G,eAAA,CAAP3G,OAAO,CACrB,IACE,IAAI,CAACd,KAAK,CAACU,UAAU,KACpB6E,IAAI,KAAKgC,SAAS,CAAChC,IAAI,IAAIzE,OAAO,KAAKyG,SAAS,CAACzG,OAAO,IAAI,IAAI,CAACd,KAAK,CAACP,KAAK,KAAK8H,SAAS,CAAC9H,KAAK,CAAC,EAClG,CACA,IAAI,CAACiB,UAAU,CAAC,CAAC,CACnB,CACF,CAAC,CAAA0F,MAAA,CAEMsB,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACEtM,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAAC1G,aAAA,CAAA6L,YAAY,CAACC,QAAQ,QACnB,UAAC1F,KAAK,EAAK,CACVwF,MAAI,CAACxF,KAAK,GAAGA,KAAK,CAClB,oBACE9G,MAAA,CAAAsG,OAAA,CAAAc,aAAA,CAACtG,cAAA,CAAA2L,aAAa,MAAA/E,SAAA,CAAApB,OAAA,IAACoG,WAAW,EAAEJ,MAAI,CAACK,WAAY,IAAKL,MAAI,CAACxJ,QAAQ,CAAC,CAAC,GAC9DwJ,MAAI,CAAC5H,UACO,CAAC,CAEpB,CACqB,CAAC,CAE5B,CAAC,CAED;AACF;AACA,KAFE,CAAAqG,MAAA,CAGO7G,KAAK,GAAZ,SAAAA,MAAA,EAAe,CACb,IAAI,IAAI,CAACJ,IAAI,EAAE,CACb,IAAI,CAACA,IAAI,CAACI,KAAK,CAAC,CAAC,CACnB,CACF,CAAC,CAED;AACF;AACA,KAFE,CAAA6G,MAAA,CAGO6B,IAAI,GAAX,SAAAA,KAAA,EAAc,CACZ,IAAI,IAAI,CAAC9I,IAAI,EAAE,CACb,IAAI,CAACA,IAAI,CAAC8I,IAAI,CAAC,CAAC,CAClB,CACF,CAAC,QAAA3K,QAAA,GA3L2B4K,cAAK,CAAC1E,SAAS,GAAA1G,SAAA,CAC7BqL,mBAAmB,GAAG,UAAU,EAAArL,SAAA,CAChCsL,WAAW,GAAG,UAAU,EAAAtL,SAAA,CAExBuL,SAAS,GAAG,EACxB9H,KAAK,EAAE+H,kBAAS,CAACC,IAAI,EACrB/H,OAAO,EAAE8H,kBAAS,CAACC,IAAI,EACvB/G,QAAQ,EAAE8G,kBAAS,CAACC,IAAI,EAExB7H,UAAU,EAAE4H,kBAAS,CAACC,IAAI,EAC1BjH,QAAQ,EAAEgH,kBAAS,CAACC,IAAI,EACxBhH,iBAAiB,EAAE+G,kBAAS,CAACC,IAAI,EACjCzH,OAAO,EAAEwH,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,MAAM,EAAEH,kBAAS,CAACI,MAAM,CAAC,CAAC,EAElE/H,MAAM,EAAE2H,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,MAAM,EAAEH,kBAAS,CAACI,MAAM,CAAC,CAAC,EACjEpI,KAAK,EAAEgI,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,MAAM,EAAEH,kBAAS,CAACI,MAAM,CAAC,CAAC,EAEhEC,EAAE,EAAEL,kBAAS,CAACG,MAAM,EACpBG,IAAI,EAAEN,kBAAS,CAACG,MAAM,EACtBI,KAAK,EAAEP,kBAAS,CAACG,MAAM,EACvBK,UAAU,EAAER,kBAAS,CAACC,IAAI,EAC1BQ,IAAI,EAAET,kBAAS,CAACG,MAAM,EACtBrF,SAAS,EAAEkF,kBAAS,CAACI,MAAM,EAC3BM,QAAQ,EAAEV,kBAAS,CAACI,MAAM,EAC1BnD,IAAI,EAAE+C,kBAAS,CAACI,MAAM,EACtBzH,WAAW,EAAEqH,kBAAS,CAACG,MAAM,EAE7BhJ,KAAK,EAAE6I,kBAAS,CAACG,MAAM,EACvBjG,YAAY,EAAE8F,kBAAS,CAACG,MAAM,EAC9BvH,aAAa,EAAEoH,kBAAS,CAACW,IAAI,EAE7BC,YAAY,EAAEZ,kBAAS,CAACW,IAAI,EAC5BE,YAAY,EAAEb,kBAAS,CAACW,IAAI,EAC5BG,WAAW,EAAEd,kBAAS,CAACW,IAAI,EAC3BI,WAAW,EAAEf,kBAAS,CAACW,IAAI,EAC3BK,UAAU,EAAEhB,kBAAS,CAACW,IAAI,EAE1BM,SAAS,EAAEjB,kBAAS,CAACW,IAAI,EACzBO,WAAW,EAAElB,kBAAS,CAACW,IAAI,EAC3BQ,OAAO,EAAEnB,kBAAS,CAACW,IAAI,EACvBS,aAAa,EAAEpB,kBAAS,CAACW,IAAI,EAE7BzE,SAAS,EAAE8D,kBAAS,CAACW,IAAI,EACzBU,UAAU,EAAErB,kBAAS,CAACW,IAAI,EAC1BW,OAAO,EAAEtB,kBAAS,CAACW,IAAI,EACvBY,OAAO,EAAEvB,kBAAS,CAACW,IAAI,EAEvBlI,OAAO,EAAEuH,kBAAS,CAACW,IAAI,EACvBa,MAAM,EAAExB,kBAAS,CAACW,IAAI,EAEtBc,QAAQ,EAAEzB,kBAAS,CAACW,IAAI,EACxBe,OAAO,EAAE1B,kBAAS,CAACW,IAAI,EAEvBrI,KAAK,EAAE0H,kBAAS,CAACW,IAAI,EACrBpI,OAAO,EAAEyH,kBAAS,CAACW,IAAI,EACvBgB,MAAM,EAAE3B,kBAAS,CAACW,IAAI,CACxB,CAAC,EAAAnM,SAAA,CAEauB,YAAY,GAAiB,EACzCkH,IAAI,EAAE,CAAC,EACPzE,OAAO,EAAE,EAAE,EACXQ,QAAQ,EAAE,IAAI,EACdb,IAAI,EAAE,OAAO,EACbc,iBAAiB,EAAE2I,6BAAS,CAC9B,CAAC,EAAApN,SAAA,MAAAD,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_lodash","_globalObject","_identifiers","_needsPolyfillPlaceholder","LayoutEvents","_interopRequireWildcard","_ThemeContext","_RenderLayer","_ResizeDetector","_client","_CommonWrapper","_currentEnvironment","_Emotion","_rootNode","_createPropsGetter","_TextareaHelpers","_Textarea2","_TextareaCounter","_TextareaWithSafari17Workaround","_excluded","_class","_Textarea","DEFAULT_WIDTH","AUTORESIZE_THROTTLE_DEFAULT_WAIT","TextareaDataTids","exports","root","counter","helpIcon","Textarea","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","needsPolyfillPlaceholder","isCounterVisible","reflowCounter","reflow","selectAllId","textareaObserver","globalObject","MutationObserver","setSelectionRange","start","end","_globalObject$documen","node","Error","document","activeElement","focus","selectAll","value","delaySelectAll","_globalObject$request","requestAnimationFrame","cancelDelayedSelectAll","cancelAnimationFrame","renderMain","props","_cx","_ref","_textareaProps$maxLen","_cx2","_props$width","width","error","warning","size","autoResize","resize","onCut","onPaste","maxRows","onFocus","selectAllOnFocus","placeholder","onValueChange","showLengthCounter","lengthCounter","counterHelp","extraRow","disableAnimations","disabled","textareaProps","_objectWithoutPropertiesLoose2","default","rootProps","style","textareaClassNames","cx","getTextareaSizeClassName","styles","textarea","theme","hovering","isAnimationsDisabled","textareaStyle","placeholderPolyfill","defaultValue","createElement","className","fakeTextarea","fakeProps","fake","readOnly","_extends2","ref","refFake","TextareaCounter","help","maxLength","onCloseHelp","handleCloseCounterHelp","refCounter","Component","isSafariWithTextareaBug","TextareaWithSafari17Workaround","RenderLayer","onFocusOutside","onClickOutside","active","getRootSizeClassName","ResizeDetector","onResize","undefined","onChange","handleChange","handleCut","handlePaste","handleFocus","onKeyDown","handleKeyDown","children","setState","e","toString","isBlockEnter","isKeyEnter","preventDefault","fieldIsEmpty","target","element","fakeNode","autoResizeHandler","_this$getProps","rows","_ref2","getTextAreaHeight","minRows","parseInt","height","exceededMaxHeight","overflowY","throttle","getAutoResizeThrottleWait","event","isIE11","_inheritsLoose2","_proto","prototype","rootLarge","rootMedium","rootSmall","textareaLarge","textareaMedium","textareaSmall","_temp","_ref3","componentDidMount","layoutEvents","addListener","observe","attributes","componentWillUnmount","remove","disconnect","componentDidUpdate","prevProps","cancel","_this$getProps2","render","_this2","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","blur","React","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","oneOfType","string","number","id","name","title","spellCheck","role","tabIndex","func","onMouseEnter","onMouseLeave","onMouseOver","onMouseMove","onMouseOut","onMouseUp","onMouseDown","onClick","onDoubleClick","onKeyPress","onKeyUp","onInput","onBlur","onScroll","onWheel","onCopy","isTestEnv"],"sources":["Textarea.tsx"],"sourcesContent":["import React, { AriaAttributes, ReactNode } from 'react';\nimport PropTypes from 'prop-types';\nimport throttle from 'lodash.throttle';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { ResizeDetector } from '../../internal/ResizeDetector';\nimport { isIE11, isSafariWithTextareaBug } from '../../lib/client';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { getTextAreaHeight } from './TextareaHelpers';\nimport { styles } from './Textarea.styles';\nimport { TextareaCounter, TextareaCounterRef } from './TextareaCounter';\nimport { TextareaWithSafari17Workaround } from './TextareaWithSafari17Workaround';\n\nconst DEFAULT_WIDTH = 250;\nconst AUTORESIZE_THROTTLE_DEFAULT_WAIT = 100;\n\nexport interface TextareaProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает размер компонента. */\n size?: SizeProp;\n\n /** Выполняет автоматический ресайз в зависимости от содержимого. */\n autoResize?: boolean;\n\n /** Задает высоту текстарии в виде числа строк видимых без скролла. */\n rows?: number;\n\n /** Задает максимальное число строк при автоматическом ресайзе. */\n maxRows?: string | number;\n\n /** Задает направления ресайза компонента.\n * Попадает в `style`. */\n resize?: React.CSSProperties['resize'];\n\n /** Задает ширину текстэрии. */\n width?: React.CSSProperties['width'];\n\n /** Задает функцию, которая вызывается при изменении `value`. */\n onValueChange?: (value: string) => void;\n\n /** Определяет, нужно ли выделять введенное значение при фокусе. Работает с типами text, password, tel, search, url. */\n selectAllOnFocus?: boolean;\n\n /** Определяет, нужно ли показывать счетчик символов. */\n showLengthCounter?: boolean;\n\n /** Задает допустимое количество символов в поле. Отображается в счетчике.\n * @default maxLength */\n lengthCounter?: number;\n\n /** Задает подсказку к счетчику символов.\n * По умолчанию - тултип с содержимым из пропа, если передан `ReactNode`.\n * Передав функцию, можно переопределить подсказку целиком, вместе с иконкой.\n * @example\n * ```\n * counterHelp={() => <Tooltip render={...}><HelpIcon /></Tooltip>}\n * ``` */\n counterHelp?: ReactNode | (() => ReactNode);\n\n /** Добавляет дополнительную свободную строку при авто-ресайзе.\n * @see https://guides.kontur.ru/components/textarea/#04 */\n extraRow?: boolean;\n\n /** Отключает анимацию при авто-ресайзе. Автоматически отключается когда в `extraRow` передан `false`. */\n disableAnimations?: boolean;\n }\n > {}\n\nexport interface TextareaState {\n needsPolyfillPlaceholder: boolean;\n isCounterVisible: boolean;\n}\n\nexport const TextareaDataTids = {\n root: 'Textarea__root',\n counter: 'TextareaCounter__root',\n helpIcon: 'TextareaCounter__helpIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<TextareaProps, 'rows' | 'maxRows' | 'extraRow' | 'disableAnimations' | 'size'>>;\n\n/**\n * Многострочное поле `Textarea` — это поле ввода, которое позволяет работать с несколькими строками текста.\n *\n * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`.\n * Пропы **`className` и `style` игнорируются**.\n */\n@rootNode\nexport class Textarea extends React.Component<TextareaProps, TextareaState> {\n public static __KONTUR_REACT_UI__ = 'Textarea';\n public static displayName = 'Textarea';\n\n public static propTypes = {\n error: PropTypes.bool,\n warning: PropTypes.bool,\n disabled: PropTypes.bool,\n\n autoResize: PropTypes.bool,\n extraRow: PropTypes.bool,\n disableAnimations: PropTypes.bool,\n maxRows: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n resize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n id: PropTypes.string,\n name: PropTypes.string,\n title: PropTypes.string,\n spellCheck: PropTypes.bool,\n role: PropTypes.string,\n maxLength: PropTypes.number,\n tabIndex: PropTypes.number,\n rows: PropTypes.number,\n placeholder: PropTypes.string,\n\n value: PropTypes.string,\n defaultValue: PropTypes.string,\n onValueChange: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n onMouseMove: PropTypes.func,\n onMouseOut: PropTypes.func,\n\n onMouseUp: PropTypes.func,\n onMouseDown: PropTypes.func,\n onClick: PropTypes.func,\n onDoubleClick: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyUp: PropTypes.func,\n onInput: PropTypes.func,\n\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n\n onScroll: PropTypes.func,\n onWheel: PropTypes.func,\n\n onCut: PropTypes.func,\n onPaste: PropTypes.func,\n onCopy: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n rows: 3,\n maxRows: 15,\n extraRow: true,\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Textarea.defaultProps);\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getTextareaSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.textareaLarge(this.theme);\n case 'medium':\n return styles.textareaMedium(this.theme);\n case 'small':\n default:\n return styles.textareaSmall(this.theme);\n }\n }\n\n public state = {\n needsPolyfillPlaceholder,\n isCounterVisible: false,\n };\n private reflowCounter = () => {\n if (this.counter) {\n this.counter.reflow();\n }\n };\n\n private theme!: Theme;\n private selectAllId: number | null = null;\n private node: Nullable<HTMLTextAreaElement>;\n private fakeNode: Nullable<HTMLTextAreaElement>;\n private counter: Nullable<TextareaCounterRef>;\n private layoutEvents: Nullable<{ remove: () => void }>;\n private textareaObserver = globalObject.MutationObserver\n ? new globalObject.MutationObserver(this.reflowCounter)\n : null;\n private setRootNode!: TSetRootNode;\n private getAutoResizeThrottleWait(props: TextareaProps = this.props): number {\n // NOTE: При отключении анимации остается эффект дергания при авто-ресайзе из-за троттлинга расчета высоты\n // Поэтому выставляем таймаут троттла в ноль. Подробности - https://github.com/skbkontur/retail-ui/issues/2120\n return this.isAnimationsDisabled(props) ? 0 : AUTORESIZE_THROTTLE_DEFAULT_WAIT;\n }\n private isAnimationsDisabled({ disableAnimations, extraRow }: TextareaProps = this.props): boolean {\n return disableAnimations || !extraRow;\n }\n\n public componentDidMount() {\n if (this.props.autoResize) {\n this.autoResize();\n this.layoutEvents = LayoutEvents.addListener(this.autoResize);\n }\n\n if (this.node && this.props.showLengthCounter && this.textareaObserver) {\n this.textareaObserver.observe(this.node, { attributes: true });\n }\n }\n\n public componentWillUnmount() {\n if (this.layoutEvents) {\n this.layoutEvents.remove();\n }\n if (this.props.showLengthCounter && this.textareaObserver) {\n this.textareaObserver.disconnect();\n }\n this.cancelDelayedSelectAll();\n }\n\n public componentDidUpdate(prevProps: TextareaProps) {\n if (this.getAutoResizeThrottleWait() !== this.getAutoResizeThrottleWait(prevProps)) {\n this.autoResize.cancel();\n this.autoResize = throttle(this.autoResizeHandler, this.getAutoResizeThrottleWait());\n }\n const { rows, maxRows } = this.getProps();\n if (\n this.props.autoResize &&\n (rows !== prevProps.rows || maxRows !== prevProps.maxRows || this.props.value !== prevProps.value)\n ) {\n this.autoResize();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.node) {\n this.node.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.node) {\n this.node.blur();\n }\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange = (start: number, end: number) => {\n if (!this.node) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.node) {\n this.focus();\n }\n\n this.node.setSelectionRange(start, end);\n };\n\n /**\n * @public\n */\n public selectAll = () => {\n if (this.node) {\n this.setSelectionRange(0, this.node.value.length);\n }\n };\n\n private delaySelectAll = (): number | null =>\n (this.selectAllId = globalObject.requestAnimationFrame?.(this.selectAll) ?? null);\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<TextareaProps>) => {\n const {\n width = DEFAULT_WIDTH,\n error,\n warning,\n size,\n autoResize,\n resize,\n onCut,\n onPaste,\n maxRows,\n onFocus,\n selectAllOnFocus,\n placeholder,\n onValueChange,\n showLengthCounter,\n lengthCounter,\n counterHelp,\n extraRow,\n disableAnimations,\n disabled,\n ...textareaProps\n } = props;\n\n const { isCounterVisible } = this.state;\n\n const rootProps = {\n style: {\n width,\n },\n };\n\n const textareaClassNames = cx(this.getTextareaSizeClassName(), {\n [styles.textarea(this.theme)]: true,\n [styles.hovering(this.theme)]: !error && !warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.error(this.theme)]: !!error,\n [styles.warning(this.theme)]: !!warning,\n [styles.disableAnimations()]: this.isAnimationsDisabled(),\n });\n\n const textareaStyle = {\n resize: autoResize ? 'none' : resize,\n };\n\n let placeholderPolyfill = null;\n\n if (this.state.needsPolyfillPlaceholder && !textareaProps.value && !textareaProps.defaultValue) {\n placeholderPolyfill = <span className={styles.placeholder()}>{placeholder}</span>;\n }\n\n let fakeTextarea = null;\n if (autoResize) {\n const fakeProps = {\n value: this.props.value,\n defaultValue: this.props.defaultValue,\n className: cx(textareaClassNames, styles.fake()),\n readOnly: true,\n };\n fakeTextarea = <textarea {...fakeProps} ref={this.refFake} />;\n }\n\n const counter = showLengthCounter && isCounterVisible && this.node && (\n <TextareaCounter\n textarea={this.node}\n size={this.getProps().size}\n help={counterHelp}\n value={textareaProps.value}\n length={textareaProps.maxLength ?? lengthCounter ?? 0}\n onCloseHelp={this.handleCloseCounterHelp}\n ref={this.refCounter}\n />\n );\n\n const Component = isSafariWithTextareaBug ? TextareaWithSafari17Workaround : 'textarea';\n\n return (\n <RenderLayer\n onFocusOutside={this.handleCloseCounterHelp}\n onClickOutside={this.handleCloseCounterHelp}\n active={this.state.isCounterVisible}\n >\n <label\n data-tid={TextareaDataTids.root}\n {...rootProps}\n className={cx(this.getRootSizeClassName(), {\n [styles.root()]: true,\n })}\n >\n {placeholderPolyfill}\n <ResizeDetector onResize={this.reflowCounter}>\n <Component\n {...textareaProps}\n className={textareaClassNames}\n style={textareaStyle}\n placeholder={!placeholderPolyfill ? placeholder : undefined}\n ref={this.ref}\n onChange={this.handleChange}\n onCut={this.handleCut}\n onPaste={this.handlePaste}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n disabled={disabled}\n >\n {this.props.children}\n </Component>\n </ResizeDetector>\n {fakeTextarea}\n {counter}\n </label>\n </RenderLayer>\n );\n };\n\n private handleCloseCounterHelp = () => this.setState({ isCounterVisible: false });\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {\n // Edge bug: textarea maxlength doesn't work after new line\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/18833616/\n const value = this.props.value !== undefined ? this.props.value.toString() : null;\n const isBlockEnter = isKeyEnter(e) && value !== null && value.length === this.props.maxLength;\n\n if (isBlockEnter) {\n e.preventDefault();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = e.target.value === '';\n\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(e.target.value);\n }\n\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onChange) {\n this.props.onChange(e);\n }\n\n this.reflowCounter();\n };\n\n private ref = (element: HTMLTextAreaElement) => {\n this.node = element;\n };\n\n private refFake = (element: HTMLTextAreaElement) => {\n this.fakeNode = element;\n };\n\n private refCounter = (ref: TextareaCounterRef | null) => {\n this.counter = ref;\n };\n\n private autoResizeHandler = () => {\n const fakeNode = this.fakeNode;\n if (!fakeNode) {\n return;\n }\n const node = this.node;\n if (!node) {\n return;\n }\n if (this.props.value === undefined) {\n fakeNode.value = node.value;\n }\n\n const { rows, maxRows } = this.getProps();\n if (rows === undefined || maxRows === undefined) {\n return;\n }\n\n const { height, exceededMaxHeight } =\n getTextAreaHeight({\n node: fakeNode,\n minRows: typeof rows === 'number' ? rows : parseInt(rows, 10),\n maxRows: typeof maxRows === 'number' ? maxRows : parseInt(maxRows, 10),\n extraRow: this.getProps().extraRow,\n }) || {};\n\n if (height === undefined || exceededMaxHeight === undefined) {\n return;\n }\n\n node.style.height = height + 'px';\n node.style.overflowY = exceededMaxHeight ? 'scroll' : 'hidden';\n fakeNode.style.overflowY = exceededMaxHeight ? 'scroll' : 'hidden';\n };\n\n private autoResize = throttle(this.autoResizeHandler, this.getAutoResizeThrottleWait());\n\n private handleCut = (event: React.ClipboardEvent<HTMLTextAreaElement>) => {\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onCut) {\n this.props.onCut(event);\n }\n\n this.reflowCounter();\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLTextAreaElement>) => {\n if (this.props.autoResize) {\n this.autoResize();\n }\n\n if (this.props.onPaste) {\n this.props.onPaste(event);\n }\n\n this.reflowCounter();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n this.setState({ isCounterVisible: true });\n\n if (this.props.selectAllOnFocus) {\n // https://github.com/facebook/react/issues/7769\n this.node && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ ### Базовый пример
1
2
  ```jsx harmony
2
3
  const [value, setValue] = React.useState('');
3
4
 
@@ -9,6 +10,7 @@ const [value, setValue] = React.useState('');
9
10
  />;
10
11
  ```
11
12
 
13
+ ### Очистка значения
12
14
  Очистить значение в `Textarea` можно только с помощью пустой строки
13
15
 
14
16
  ```jsx harmony
@@ -28,7 +30,7 @@ const [value, setValue] = React.useState('Значение');
28
30
  </Group>
29
31
  ```
30
32
 
31
- Счетчик введенных символов
33
+ ### Счетчик введенных символов
32
34
 
33
35
  ```jsx harmony
34
36
  const [value, setValue] = React.useState('');
@@ -43,7 +45,7 @@ const [value, setValue] = React.useState('');
43
45
  />;
44
46
  ```
45
47
 
46
- У Textarea есть 3 стандартных размера.
48
+ ### Размер
47
49
 
48
50
  ```jsx harmony
49
51
  import { Gapped } from '@skbkontur/react-ui';