@skbkontur/react-ui 5.0.12 → 5.1.0-next.1

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 (907) 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 +67 -86
  34. package/cjs/components/ComboBox/ComboBox.js +12 -28
  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 +21 -29
  55. package/cjs/components/DateInput/DateInput.js +14 -2
  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 +33 -23
  62. package/cjs/components/DatePicker/DatePicker.js +53 -4
  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 +17 -0
  169. package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
  170. package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
  171. package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  172. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +1 -1
  173. package/cjs/components/Modal/Modal.d.ts +12 -33
  174. package/cjs/components/Modal/Modal.js +4 -24
  175. package/cjs/components/Modal/Modal.js.map +1 -1
  176. package/cjs/components/Modal/Modal.md +3 -1
  177. package/cjs/components/Modal/Modal.styles.d.ts +4 -1
  178. package/cjs/components/Modal/Modal.styles.js +68 -31
  179. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  180. package/cjs/components/Modal/ModalBody.d.ts +2 -4
  181. package/cjs/components/Modal/ModalBody.js +1 -3
  182. package/cjs/components/Modal/ModalBody.js.map +1 -1
  183. package/cjs/components/Modal/ModalClose.js +7 -2
  184. package/cjs/components/Modal/ModalClose.js.map +1 -1
  185. package/cjs/components/Modal/ModalContext.d.ts +2 -0
  186. package/cjs/components/Modal/ModalContext.js +3 -0
  187. package/cjs/components/Modal/ModalContext.js.map +1 -1
  188. package/cjs/components/Modal/ModalFooter.d.ts +5 -15
  189. package/cjs/components/Modal/ModalFooter.js +0 -7
  190. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  191. package/cjs/components/Modal/ModalHeader.d.ts +3 -1
  192. package/cjs/components/Modal/ModalHeader.js +4 -1
  193. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  194. package/cjs/components/Modal/ModalSeparator.d.ts +1 -0
  195. package/cjs/components/Modal/ModalSeparator.js +1 -0
  196. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  197. package/cjs/components/Modal/__creevey__/Modal.creevey.mts +15 -1
  198. package/cjs/components/Modal/__docs__/Modal.mdx +28 -0
  199. package/cjs/components/Modal/__docs__/ModalBody.mdx +15 -0
  200. package/cjs/components/Modal/__docs__/ModalFooter.mdx +15 -0
  201. package/cjs/components/Modal/__docs__/ModalHeader.mdx +15 -0
  202. package/cjs/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  203. package/cjs/components/Modal/locale/types.js +1 -1
  204. package/cjs/components/Paging/Paging.d.ts +20 -15
  205. package/cjs/components/Paging/Paging.js +17 -1
  206. package/cjs/components/Paging/Paging.js.map +1 -1
  207. package/cjs/components/Paging/Paging.md +3 -2
  208. package/cjs/components/Paging/PagingDefaultComponent.d.ts +2 -0
  209. package/cjs/components/Paging/PagingDefaultComponent.js +3 -0
  210. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
  211. package/cjs/components/Paging/__docs__/Paging.mdx +28 -0
  212. package/cjs/components/Paging/locale/types.js +1 -1
  213. package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -3
  214. package/cjs/components/PasswordInput/PasswordInput.js +35 -9
  215. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  216. package/cjs/components/PasswordInput/PasswordInput.md +3 -2
  217. package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  218. package/cjs/components/PasswordInput/locale/types.js +1 -1
  219. package/cjs/components/Radio/Radio.d.ts +13 -28
  220. package/cjs/components/Radio/Radio.js +1 -8
  221. package/cjs/components/Radio/Radio.js.map +1 -1
  222. package/cjs/components/Radio/Radio.md +3 -2
  223. package/cjs/components/Radio/__docs__/Radio.mdx +28 -0
  224. package/cjs/components/RadioGroup/RadioGroup.d.ts +28 -54
  225. package/cjs/components/RadioGroup/RadioGroup.js +4 -15
  226. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  227. package/cjs/components/RadioGroup/RadioGroup.md +1 -0
  228. package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  229. package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  230. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +6 -2
  231. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  232. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  233. package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  234. package/cjs/components/ResponsiveLayout/types.js +1 -1
  235. package/cjs/components/ScrollContainer/ScrollBar.d.ts +7 -0
  236. package/cjs/components/ScrollContainer/ScrollBar.js +13 -0
  237. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  238. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  239. package/cjs/components/ScrollContainer/ScrollContainer.js +8 -1
  240. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  241. package/cjs/components/ScrollContainer/ScrollContainer.md +5 -3
  242. package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  243. package/cjs/components/Select/Item.d.ts +2 -0
  244. package/cjs/components/Select/Item.js +3 -0
  245. package/cjs/components/Select/Item.js.map +1 -1
  246. package/cjs/components/Select/Select.d.ts +54 -38
  247. package/cjs/components/Select/Select.js +57 -1
  248. package/cjs/components/Select/Select.js.map +1 -1
  249. package/cjs/components/Select/Select.md +7 -6
  250. package/cjs/components/Select/__docs__/Select.mdx +28 -0
  251. package/cjs/components/Select/locale/types.js +1 -1
  252. package/cjs/components/SidePage/SidePage.d.ts +17 -38
  253. package/cjs/components/SidePage/SidePage.js +15 -28
  254. package/cjs/components/SidePage/SidePage.js.map +1 -1
  255. package/cjs/components/SidePage/SidePage.md +2 -1
  256. package/cjs/components/SidePage/SidePage.styles.d.ts +8 -1
  257. package/cjs/components/SidePage/SidePage.styles.js +83 -26
  258. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  259. package/cjs/components/SidePage/SidePageCloseButton.d.ts +6 -1
  260. package/cjs/components/SidePage/SidePageCloseButton.js +14 -2
  261. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  262. package/cjs/components/SidePage/SidePageFooter.d.ts +4 -9
  263. package/cjs/components/SidePage/SidePageFooter.js +0 -2
  264. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  265. package/cjs/components/SidePage/SidePageHeader.d.ts +2 -1
  266. package/cjs/components/SidePage/SidePageHeader.js +14 -7
  267. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  268. package/cjs/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
  269. package/cjs/components/SidePage/__docs__/SidePage.mdx +28 -0
  270. package/cjs/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  271. package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  272. package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  273. package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  274. package/cjs/components/SidePage/locale/types.js +1 -1
  275. package/cjs/components/SingleToast/SingleToast.d.ts +5 -1
  276. package/cjs/components/SingleToast/SingleToast.js +5 -1
  277. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  278. package/cjs/components/SingleToast/SingleToast.md +2 -1
  279. package/cjs/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  280. package/cjs/components/Spinner/Spinner.d.ts +15 -20
  281. package/cjs/components/Spinner/Spinner.js +6 -7
  282. package/cjs/components/Spinner/Spinner.js.map +1 -1
  283. package/cjs/components/Spinner/Spinner.md +2 -1
  284. package/cjs/components/Spinner/__docs__/Spinner.mdx +28 -0
  285. package/cjs/components/Sticky/Sticky.d.ts +9 -4
  286. package/cjs/components/Sticky/Sticky.js +9 -1
  287. package/cjs/components/Sticky/Sticky.js.map +1 -1
  288. package/cjs/components/Sticky/Sticky.md +1 -0
  289. package/cjs/components/Sticky/__docs__/Sticky.mdx +24 -0
  290. package/cjs/components/Switcher/Switcher.d.ts +18 -7
  291. package/cjs/components/Switcher/Switcher.js +14 -3
  292. package/cjs/components/Switcher/Switcher.js.map +1 -1
  293. package/cjs/components/Switcher/Switcher.md +6 -2
  294. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  295. package/cjs/components/Switcher/Switcher.styles.js +20 -1
  296. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  297. package/cjs/components/Switcher/__docs__/Switcher.mdx +28 -0
  298. package/cjs/components/Tabs/Tab.d.ts +12 -31
  299. package/cjs/components/Tabs/Tab.js +1 -20
  300. package/cjs/components/Tabs/Tab.js.map +1 -1
  301. package/cjs/components/Tabs/Tab.md +2 -0
  302. package/cjs/components/Tabs/Tabs.d.ts +14 -25
  303. package/cjs/components/Tabs/Tabs.js +6 -17
  304. package/cjs/components/Tabs/Tabs.js.map +1 -1
  305. package/cjs/components/Tabs/Tabs.md +3 -2
  306. package/cjs/components/Tabs/__docs__/Tab.mdx +28 -0
  307. package/cjs/components/Tabs/__docs__/Tabs.mdx +28 -0
  308. package/cjs/components/Textarea/Textarea.d.ts +26 -52
  309. package/cjs/components/Textarea/Textarea.js +3 -23
  310. package/cjs/components/Textarea/Textarea.js.map +1 -1
  311. package/cjs/components/Textarea/Textarea.md +4 -2
  312. package/cjs/components/Textarea/__docs__/Textarea.mdx +28 -0
  313. package/cjs/components/Toast/Toast.d.ts +12 -9
  314. package/cjs/components/Toast/Toast.js +13 -5
  315. package/cjs/components/Toast/Toast.js.map +1 -1
  316. package/cjs/components/Toast/Toast.md +4 -4
  317. package/cjs/components/Toast/ToastStatic.d.ts +2 -2
  318. package/cjs/components/Toast/ToastStatic.js +15 -5
  319. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  320. package/cjs/components/Toast/ToastView.d.ts +3 -6
  321. package/cjs/components/Toast/ToastView.js +3 -5
  322. package/cjs/components/Toast/ToastView.js.map +1 -1
  323. package/cjs/components/Toast/ToastView.styles.js +4 -4
  324. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  325. package/cjs/components/Toast/__creevey__/Toast.creevey.mts +23 -0
  326. package/cjs/components/Toast/__docs__/Toast.mdx +28 -0
  327. package/cjs/components/Toast/locale/types.js +1 -1
  328. package/cjs/components/Toggle/Toggle.d.ts +25 -48
  329. package/cjs/components/Toggle/Toggle.js +4 -12
  330. package/cjs/components/Toggle/Toggle.js.map +1 -1
  331. package/cjs/components/Toggle/Toggle.md +9 -9
  332. package/cjs/components/Toggle/__docs__/Toggle.mdx +28 -0
  333. package/cjs/components/Token/Token.d.ts +17 -9
  334. package/cjs/components/Token/Token.js +9 -1
  335. package/cjs/components/Token/Token.js.map +1 -1
  336. package/cjs/components/Token/Token.md +86 -3
  337. package/cjs/components/Token/TokenView.d.ts +3 -0
  338. package/cjs/components/Token/TokenView.js +3 -0
  339. package/cjs/components/Token/TokenView.js.map +1 -1
  340. package/cjs/components/Token/__docs__/Token.mdx +28 -0
  341. package/cjs/components/Token/locale/types.js +1 -1
  342. package/cjs/components/TokenInput/TextWidthHelper.d.ts +3 -0
  343. package/cjs/components/TokenInput/TextWidthHelper.js +5 -0
  344. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  345. package/cjs/components/TokenInput/TokenInput.d.ts +54 -97
  346. package/cjs/components/TokenInput/TokenInput.js +7 -18
  347. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  348. package/cjs/components/TokenInput/TokenInput.md +12 -10
  349. package/cjs/components/TokenInput/TokenInputMenu.d.ts +5 -5
  350. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  351. package/cjs/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  352. package/cjs/components/TokenInput/locale/types.js +1 -1
  353. package/cjs/components/Tooltip/Tooltip.d.ts +28 -68
  354. package/cjs/components/Tooltip/Tooltip.js +9 -63
  355. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  356. package/cjs/components/Tooltip/Tooltip.md +5 -0
  357. package/cjs/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  358. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  359. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -16
  360. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  361. package/cjs/components/TooltipMenu/TooltipMenu.md +13 -10
  362. package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  363. package/cjs/index.d.ts +1 -2
  364. package/cjs/index.js +1 -2
  365. package/cjs/index.js.map +1 -1
  366. package/cjs/internal/CommonWrapper/types.js +1 -1
  367. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
  368. package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -2
  369. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  370. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
  371. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +1 -1
  372. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  373. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js +1 -1
  374. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
  375. package/cjs/internal/CustomComboBox/locale/types.js +1 -1
  376. package/cjs/internal/DateSelect/locale/types.js +1 -1
  377. package/cjs/internal/FileUploaderControl/fileUtils.js +1 -1
  378. package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -1
  379. package/cjs/internal/InputLikeText/InputLikeText.js +12 -11
  380. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  381. package/cjs/internal/Popup/types.js +1 -1
  382. package/cjs/internal/RenderContainer/RenderContainerTypes.js +1 -1
  383. package/cjs/internal/ThemePlayground/Playground.styles.js +2 -1
  384. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  385. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
  386. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
  387. package/cjs/internal/ThemePlayground/constants.js +1 -1
  388. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  389. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  390. package/cjs/internal/ThemeShowcase/VariablesCollector.js +0 -1
  391. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  392. package/cjs/internal/themes/BasicLightTheme.d.ts +5 -1198
  393. package/cjs/internal/themes/BasicLightTheme.js +2 -2512
  394. package/cjs/internal/themes/BasicLightTheme.js.map +1 -1
  395. package/cjs/internal/themes/BasicTheme.d.ts +1217 -0
  396. package/cjs/internal/themes/BasicTheme.js +2536 -0
  397. package/cjs/internal/themes/BasicTheme.js.map +1 -0
  398. package/cjs/internal/themes/DarkTheme5_0.d.ts +1 -0
  399. package/cjs/internal/themes/DarkTheme5_0.js +556 -0
  400. package/cjs/internal/themes/DarkTheme5_0.js.map +1 -0
  401. package/cjs/internal/themes/DarkTheme5_1.d.ts +1 -0
  402. package/cjs/internal/themes/DarkTheme5_1.js +41 -0
  403. package/cjs/internal/themes/DarkTheme5_1.js.map +1 -0
  404. package/cjs/internal/themes/LightTheme5_0.d.ts +1 -0
  405. package/cjs/internal/themes/LightTheme5_0.js +9 -0
  406. package/cjs/internal/themes/LightTheme5_0.js.map +1 -0
  407. package/cjs/internal/themes/LightTheme5_1.d.ts +1 -0
  408. package/cjs/internal/themes/LightTheme5_1.js +41 -0
  409. package/cjs/internal/themes/LightTheme5_1.js.map +1 -0
  410. package/cjs/lib/ModalStack.d.ts +1 -0
  411. package/cjs/lib/ModalStack.js +6 -4
  412. package/cjs/lib/ModalStack.js.map +1 -1
  413. package/cjs/lib/date/types.js +6 -6
  414. package/cjs/lib/date/types.js.map +1 -1
  415. package/cjs/lib/events/MouseDrag.js +1 -1
  416. package/cjs/lib/events/MouseDrag.js.map +1 -1
  417. package/cjs/lib/events/keyboard/KeyboardEventCodes.js +1 -1
  418. package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
  419. package/cjs/lib/locale/types.js +1 -1
  420. package/cjs/lib/locale/types.js.map +1 -1
  421. package/cjs/lib/theming/Theme.d.ts +4 -3
  422. package/cjs/lib/theming/Theme.js +1 -1
  423. package/cjs/lib/theming/Theme.js.map +1 -1
  424. package/cjs/lib/theming/ThemeContext.d.ts +1 -1
  425. package/cjs/lib/theming/ThemeContext.js +2 -2
  426. package/cjs/lib/theming/ThemeContext.js.map +1 -1
  427. package/cjs/lib/theming/ThemeFactory.d.ts +9 -0
  428. package/cjs/lib/theming/ThemeFactory.js +28 -9
  429. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  430. package/cjs/lib/theming/ThemeHelpers.d.ts +55 -8
  431. package/cjs/lib/theming/ThemeHelpers.js +94 -22
  432. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  433. package/cjs/lib/theming/ThemeVersions.d.ts +25 -0
  434. package/cjs/lib/theming/ThemeVersions.js +58 -0
  435. package/cjs/lib/theming/ThemeVersions.js.map +1 -0
  436. package/cjs/lib/theming/themes/DarkTheme.d.ts +3 -1
  437. package/cjs/lib/theming/themes/DarkTheme.js +6 -4
  438. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  439. package/cjs/lib/theming/themes/LightTheme.d.ts +3 -1
  440. package/cjs/lib/theming/themes/LightTheme.js +6 -4
  441. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  442. package/cjs/lib/theming/themes/LightThemeMobile.d.ts +1 -1
  443. package/cjs/lib/theming/useTheme.d.ts +1 -1
  444. package/cjs/lib/types/button-link.js +1 -1
  445. package/cjs/lib/types/polymorphic-component.js +1 -1
  446. package/cjs/lib/types/props.js +1 -1
  447. package/components/Autocomplete/Autocomplete/Autocomplete.js +3 -2
  448. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  449. package/components/Autocomplete/Autocomplete.d.ts +16 -17
  450. package/components/Autocomplete/Autocomplete.md +9 -7
  451. package/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
  452. package/components/Autocomplete/locale/types/types.js +0 -1
  453. package/components/Button/Button/Button.js.map +1 -1
  454. package/components/Button/Button.d.ts +20 -62
  455. package/components/Button/Button.md +40 -26
  456. package/components/Button/__docs__/Button.mdx +28 -0
  457. package/components/Calendar/Calendar/Calendar.js +1 -1
  458. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  459. package/components/Calendar/Calendar.d.ts +22 -45
  460. package/components/Calendar/Calendar.md +12 -12
  461. package/components/Calendar/CalendarDay/CalendarDay.js +2 -0
  462. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  463. package/components/Calendar/CalendarDay.d.ts +7 -0
  464. package/components/Calendar/CalendarDay.md +32 -32
  465. package/components/Calendar/__docs__/Calendar.mdx +28 -0
  466. package/components/Calendar/__docs__/CalendarDay.mdx +24 -0
  467. package/components/Calendar/locale/types/types.js +0 -1
  468. package/components/Center/Center/Center.js +3 -1
  469. package/components/Center/Center/Center.js.map +1 -1
  470. package/components/Center/Center.d.ts +4 -6
  471. package/components/Center/Center.md +1 -1
  472. package/components/Center/__docs__/Center.mdx +24 -0
  473. package/components/Checkbox/Checkbox/Checkbox.js +7 -0
  474. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  475. package/components/Checkbox/Checkbox.d.ts +20 -28
  476. package/components/Checkbox/Checkbox.md +6 -5
  477. package/components/Checkbox/__docs__/Checkbox.mdx +28 -0
  478. package/components/ComboBox/ComboBox/ComboBox.js +13 -2
  479. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  480. package/components/ComboBox/ComboBox.d.ts +67 -86
  481. package/components/ComboBox/ComboBox.md +41 -40
  482. package/components/ComboBox/__docs__/ComboBox.mdx +28 -0
  483. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  484. package/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
  485. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +5 -2
  486. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  487. package/components/CurrencyInput/CurrencyInput.d.ts +12 -12
  488. package/components/CurrencyInput/CurrencyInput.md +3 -1
  489. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
  490. package/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
  491. package/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
  492. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +4 -0
  493. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  494. package/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
  495. package/components/CurrencyLabel/CurrencyLabel.md +5 -5
  496. package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
  497. package/components/DateInput/DateInput/DateInput.js +8 -1
  498. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  499. package/components/DateInput/DateInput.d.ts +21 -29
  500. package/components/DateInput/DateInput.md +7 -2
  501. package/components/DateInput/__docs__/DateInput.mdx +26 -0
  502. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +3 -3
  503. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  504. package/components/DatePicker/DatePicker/DatePicker.js +33 -5
  505. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  506. package/components/DatePicker/DatePicker.d.ts +33 -23
  507. package/components/DatePicker/DatePicker.md +2 -2
  508. package/components/DatePicker/__docs__/DatePicker.mdx +28 -0
  509. package/components/DatePicker/locale/types/types.js +0 -1
  510. package/components/Dropdown/Dropdown/Dropdown.js +7 -1
  511. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  512. package/components/Dropdown/Dropdown.d.ts +25 -30
  513. package/components/Dropdown/Dropdown.md +2 -1
  514. package/components/Dropdown/__docs__/Dropdown.mdx +28 -0
  515. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +1 -1
  516. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  517. package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  518. package/components/DropdownMenu/DropdownMenu.md +12 -10
  519. package/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
  520. package/components/FileUploader/FileUploader/FileUploader.js +6 -0
  521. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  522. package/components/FileUploader/FileUploader.d.ts +16 -20
  523. package/components/FileUploader/FileUploader.md +9 -9
  524. package/components/FileUploader/__docs__/FileUploader.mdx +28 -0
  525. package/components/FileUploader/locale/types/types.js +0 -1
  526. package/components/FxInput/FxInput/FxInput.js +7 -1
  527. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  528. package/components/FxInput/FxInput.d.ts +15 -9
  529. package/components/FxInput/FxInput.md +2 -0
  530. package/components/FxInput/__docs__/FxInput.mdx +28 -0
  531. package/components/Gapped/Gapped/Gapped.js +1 -1
  532. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  533. package/components/Gapped/Gapped.d.ts +6 -17
  534. package/components/Gapped/Gapped.md +3 -2
  535. package/components/Gapped/__docs__/Gapped.mdx +24 -0
  536. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +13 -0
  537. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  538. package/components/GlobalLoader/GlobalLoader.d.ts +22 -32
  539. package/components/GlobalLoader/GlobalLoader.md +4 -5
  540. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  541. package/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
  542. package/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
  543. package/components/Group/Group/Group.js +6 -0
  544. package/components/Group/Group/Group.js.map +1 -1
  545. package/components/Group/Group.d.ts +6 -0
  546. package/components/Group/Group.md +1 -0
  547. package/components/Group/__docs__/Group.mdx +24 -0
  548. package/components/Hint/Hint/Hint.js +4 -1
  549. package/components/Hint/Hint/Hint.js.map +1 -1
  550. package/components/Hint/Hint.d.ts +18 -40
  551. package/components/Hint/Hint.md +9 -8
  552. package/components/Hint/__docs__/Hint.mdx +29 -0
  553. package/components/Input/Input/Input.js +10 -1
  554. package/components/Input/Input/Input.js.map +1 -1
  555. package/components/Input/Input.d.ts +46 -68
  556. package/components/Input/Input.md +11 -2
  557. package/components/Input/Input.typings/Input.typings.js +0 -1
  558. package/components/Input/__docs__/Input.mdx +28 -0
  559. package/components/Kebab/Kebab/Kebab.js +4 -0
  560. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  561. package/components/Kebab/Kebab.d.ts +12 -16
  562. package/components/Kebab/Kebab.md +9 -9
  563. package/components/Kebab/__docs__/Kebab.mdx +28 -0
  564. package/components/Link/Link/Link.js.map +1 -1
  565. package/components/Link/Link.d.ts +13 -37
  566. package/components/Link/Link.md +12 -11
  567. package/components/Link/__docs__/Link.mdx +28 -0
  568. package/components/Loader/Loader/Loader.js +2 -2
  569. package/components/Loader/Loader/Loader.js.map +1 -1
  570. package/components/Loader/Loader.d.ts +13 -25
  571. package/components/Loader/Loader.md +1 -0
  572. package/components/Loader/__docs__/Loader.mdx +26 -0
  573. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  574. package/components/MaskedInput/MaskedInput.d.ts +13 -33
  575. package/components/MaskedInput/MaskedInput.md +7 -5
  576. package/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
  577. package/components/MenuFooter/MenuFooter/MenuFooter.js +3 -3
  578. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  579. package/components/MenuFooter/MenuFooter.d.ts +6 -4
  580. package/components/MenuFooter/MenuFooter.md +2 -2
  581. package/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
  582. package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -3
  583. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  584. package/components/MenuHeader/MenuHeader.d.ts +6 -4
  585. package/components/MenuHeader/MenuHeader.md +2 -2
  586. package/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
  587. package/components/MenuItem/MenuItem/MenuItem.js +1 -2
  588. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  589. package/components/MenuItem/MenuItem.d.ts +22 -55
  590. package/components/MenuItem/MenuItem.md +34 -30
  591. package/components/MenuItem/__docs__/MenuItem.mdx +24 -0
  592. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +3 -2
  593. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  594. package/components/MenuSeparator/MenuSeparator.d.ts +2 -2
  595. package/components/MenuSeparator/MenuSeparator.md +1 -1
  596. package/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
  597. package/components/MiniModal/MiniModal/MiniModal.js +7 -0
  598. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  599. package/components/MiniModal/MiniModal.d.ts +6 -0
  600. package/components/MiniModal/MiniModal.md +1 -3
  601. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
  602. package/components/MiniModal/MiniModalFooter.d.ts +2 -7
  603. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
  604. package/components/MiniModal/MiniModalHeader.d.ts +2 -5
  605. package/components/MiniModal/__docs__/MiniModal.mdx +28 -0
  606. package/components/MiniModal/__docs__/MiniModalBody.mdx +17 -0
  607. package/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
  608. package/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
  609. package/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  610. package/components/MiniModal/getMiniModalTheme.d.ts +1 -1
  611. package/components/Modal/Modal/Modal.js +4 -9
  612. package/components/Modal/Modal/Modal.js.map +1 -1
  613. package/components/Modal/Modal.d.ts +12 -33
  614. package/components/Modal/Modal.md +3 -1
  615. package/components/Modal/Modal.styles/Modal.styles.js +40 -31
  616. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  617. package/components/Modal/Modal.styles.d.ts +4 -1
  618. package/components/Modal/ModalBody/ModalBody.js +1 -1
  619. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  620. package/components/Modal/ModalBody.d.ts +2 -4
  621. package/components/Modal/ModalClose/ModalClose.js +3 -1
  622. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  623. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  624. package/components/Modal/ModalContext.d.ts +2 -0
  625. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  626. package/components/Modal/ModalFooter.d.ts +5 -15
  627. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  628. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  629. package/components/Modal/ModalHeader.d.ts +3 -1
  630. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  631. package/components/Modal/ModalSeparator.d.ts +1 -0
  632. package/components/Modal/__creevey__/Modal.creevey.mts +15 -1
  633. package/components/Modal/__docs__/Modal.mdx +28 -0
  634. package/components/Modal/__docs__/ModalBody.mdx +15 -0
  635. package/components/Modal/__docs__/ModalFooter.mdx +15 -0
  636. package/components/Modal/__docs__/ModalHeader.mdx +15 -0
  637. package/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  638. package/components/Modal/locale/types/types.js +0 -1
  639. package/components/Paging/Paging/Paging.js +4 -0
  640. package/components/Paging/Paging/Paging.js.map +1 -1
  641. package/components/Paging/Paging.d.ts +20 -15
  642. package/components/Paging/Paging.md +3 -2
  643. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
  644. package/components/Paging/PagingDefaultComponent.d.ts +2 -0
  645. package/components/Paging/__docs__/Paging.mdx +28 -0
  646. package/components/Paging/locale/types/types.js +0 -1
  647. package/components/PasswordInput/PasswordInput/PasswordInput.js +32 -10
  648. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  649. package/components/PasswordInput/PasswordInput.d.ts +10 -3
  650. package/components/PasswordInput/PasswordInput.md +3 -2
  651. package/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  652. package/components/PasswordInput/locale/types/types.js +0 -1
  653. package/components/Radio/Radio/Radio.js +1 -1
  654. package/components/Radio/Radio/Radio.js.map +1 -1
  655. package/components/Radio/Radio.d.ts +13 -28
  656. package/components/Radio/Radio.md +3 -2
  657. package/components/Radio/__docs__/Radio.mdx +28 -0
  658. package/components/RadioGroup/RadioGroup/RadioGroup.js +4 -5
  659. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  660. package/components/RadioGroup/RadioGroup.d.ts +28 -54
  661. package/components/RadioGroup/RadioGroup.md +1 -0
  662. package/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  663. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +1 -2
  664. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  665. package/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  666. package/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  667. package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  668. package/components/ResponsiveLayout/types/types.js +0 -1
  669. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  670. package/components/ScrollContainer/ScrollBar.d.ts +7 -0
  671. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +4 -0
  672. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  673. package/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  674. package/components/ScrollContainer/ScrollContainer.md +5 -3
  675. package/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  676. package/components/Select/Item/Item.js.map +1 -1
  677. package/components/Select/Item.d.ts +2 -0
  678. package/components/Select/Select/Select.js +11 -0
  679. package/components/Select/Select/Select.js.map +1 -1
  680. package/components/Select/Select.d.ts +54 -38
  681. package/components/Select/Select.md +7 -6
  682. package/components/Select/__docs__/Select.mdx +28 -0
  683. package/components/Select/locale/types/types.js +0 -1
  684. package/components/SidePage/SidePage/SidePage.js +28 -16
  685. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  686. package/components/SidePage/SidePage.d.ts +17 -38
  687. package/components/SidePage/SidePage.md +2 -1
  688. package/components/SidePage/SidePage.styles/SidePage.styles.js +48 -26
  689. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  690. package/components/SidePage/SidePage.styles.d.ts +8 -1
  691. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +6 -2
  692. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  693. package/components/SidePage/SidePageCloseButton.d.ts +6 -1
  694. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  695. package/components/SidePage/SidePageFooter.d.ts +4 -9
  696. package/components/SidePage/SidePageHeader/SidePageHeader.js +13 -5
  697. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  698. package/components/SidePage/SidePageHeader.d.ts +2 -1
  699. package/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
  700. package/components/SidePage/__docs__/SidePage.mdx +28 -0
  701. package/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  702. package/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  703. package/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  704. package/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  705. package/components/SidePage/locale/types/types.js +0 -1
  706. package/components/SingleToast/SingleToast/SingleToast.js +5 -1
  707. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  708. package/components/SingleToast/SingleToast.d.ts +5 -1
  709. package/components/SingleToast/SingleToast.md +2 -1
  710. package/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  711. package/components/Spinner/Spinner/Spinner.js +6 -2
  712. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  713. package/components/Spinner/Spinner.d.ts +15 -20
  714. package/components/Spinner/Spinner.md +2 -1
  715. package/components/Spinner/__docs__/Spinner.mdx +28 -0
  716. package/components/Sticky/Sticky/Sticky.js +5 -0
  717. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  718. package/components/Sticky/Sticky.d.ts +9 -4
  719. package/components/Sticky/Sticky.md +1 -0
  720. package/components/Sticky/__docs__/Sticky.mdx +24 -0
  721. package/components/Switcher/Switcher/Switcher.js +16 -6
  722. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  723. package/components/Switcher/Switcher.d.ts +18 -7
  724. package/components/Switcher/Switcher.md +6 -2
  725. package/components/Switcher/Switcher.styles/Switcher.styles.js +4 -1
  726. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  727. package/components/Switcher/Switcher.styles.d.ts +1 -0
  728. package/components/Switcher/__docs__/Switcher.mdx +28 -0
  729. package/components/Tabs/Tab/Tab.js +1 -1
  730. package/components/Tabs/Tab/Tab.js.map +1 -1
  731. package/components/Tabs/Tab.d.ts +12 -31
  732. package/components/Tabs/Tab.md +2 -0
  733. package/components/Tabs/Tabs/Tabs.js +6 -1
  734. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  735. package/components/Tabs/Tabs.d.ts +14 -25
  736. package/components/Tabs/Tabs.md +3 -2
  737. package/components/Tabs/__docs__/Tab.mdx +28 -0
  738. package/components/Tabs/__docs__/Tabs.mdx +28 -0
  739. package/components/Textarea/Textarea/Textarea.js +3 -4
  740. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  741. package/components/Textarea/Textarea.d.ts +26 -52
  742. package/components/Textarea/Textarea.md +4 -2
  743. package/components/Textarea/__docs__/Textarea.mdx +28 -0
  744. package/components/Toast/Toast/Toast.js +17 -12
  745. package/components/Toast/Toast/Toast.js.map +1 -1
  746. package/components/Toast/Toast.d.ts +12 -9
  747. package/components/Toast/Toast.md +4 -4
  748. package/components/Toast/ToastStatic/ToastStatic.js +5 -5
  749. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  750. package/components/Toast/ToastStatic.d.ts +2 -2
  751. package/components/Toast/ToastView/ToastView.js +2 -1
  752. package/components/Toast/ToastView/ToastView.js.map +1 -1
  753. package/components/Toast/ToastView.d.ts +3 -6
  754. package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
  755. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  756. package/components/Toast/__creevey__/Toast.creevey.mts +23 -0
  757. package/components/Toast/__docs__/Toast.mdx +28 -0
  758. package/components/Toast/locale/types/types.js +0 -1
  759. package/components/Toggle/Toggle/Toggle.js +4 -1
  760. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  761. package/components/Toggle/Toggle.d.ts +25 -48
  762. package/components/Toggle/Toggle.md +9 -9
  763. package/components/Toggle/__docs__/Toggle.mdx +28 -0
  764. package/components/Token/Token/Token.js +6 -0
  765. package/components/Token/Token/Token.js.map +1 -1
  766. package/components/Token/Token.d.ts +17 -9
  767. package/components/Token/Token.md +86 -3
  768. package/components/Token/TokenView/TokenView.js.map +1 -1
  769. package/components/Token/TokenView.d.ts +3 -0
  770. package/components/Token/__docs__/Token.mdx +28 -0
  771. package/components/Token/locale/types/types.js +0 -1
  772. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  773. package/components/TokenInput/TextWidthHelper.d.ts +3 -0
  774. package/components/TokenInput/TokenInput/TokenInput.js +9 -3
  775. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  776. package/components/TokenInput/TokenInput.d.ts +54 -97
  777. package/components/TokenInput/TokenInput.md +12 -10
  778. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  779. package/components/TokenInput/TokenInputMenu.d.ts +5 -5
  780. package/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  781. package/components/TokenInput/locale/types/types.js +0 -1
  782. package/components/Tooltip/Tooltip/Tooltip.js +9 -0
  783. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  784. package/components/Tooltip/Tooltip.d.ts +28 -68
  785. package/components/Tooltip/Tooltip.md +5 -0
  786. package/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  787. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +1 -1
  788. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  789. package/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  790. package/components/TooltipMenu/TooltipMenu.md +13 -10
  791. package/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  792. package/index.d.ts +1 -2
  793. package/index.js +1 -2
  794. package/index.js.map +1 -1
  795. package/internal/CommonWrapper/index/index.js +1 -2
  796. package/internal/CommonWrapper/index/index.js.map +1 -1
  797. package/internal/CommonWrapper/types/types.js +0 -1
  798. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -2
  799. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  800. package/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
  801. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +1 -1
  802. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  803. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
  804. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js +3 -3
  805. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
  806. package/internal/CustomComboBox/locale/types/types.js +0 -1
  807. package/internal/DateSelect/locale/types/types.js +0 -1
  808. package/internal/FileUploaderControl/fileUtils/fileUtils.js +3 -3
  809. package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -1
  810. package/internal/InputLikeText/InputLikeText/InputLikeText.js +12 -6
  811. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  812. package/internal/Popup/types/types.js +0 -1
  813. package/internal/RenderContainer/RenderContainerTypes/RenderContainerTypes.js +0 -1
  814. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +1 -1
  815. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  816. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.d.mts +1 -0
  817. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
  818. package/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
  819. package/internal/ThemePlayground/constants/constants.js +3 -3
  820. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  821. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  822. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  823. package/internal/ZIndex/index/index.js +1 -2
  824. package/internal/ZIndex/index/index.js.map +1 -1
  825. package/internal/themes/BasicLightTheme/BasicLightTheme.js +5 -3338
  826. package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +1 -1
  827. package/internal/themes/BasicLightTheme.d.ts +5 -1198
  828. package/internal/themes/BasicTheme/BasicTheme.js +3360 -0
  829. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -0
  830. package/internal/themes/BasicTheme/package.json +6 -0
  831. package/internal/themes/BasicTheme.d.ts +1217 -0
  832. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +409 -0
  833. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +1 -0
  834. package/internal/themes/DarkTheme5_0/package.json +6 -0
  835. package/internal/themes/DarkTheme5_0.d.ts +1 -0
  836. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +52 -0
  837. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +1 -0
  838. package/internal/themes/DarkTheme5_1/package.json +6 -0
  839. package/internal/themes/DarkTheme5_1.d.ts +1 -0
  840. package/internal/themes/LightTheme5_0/LightTheme5_0.js +14 -0
  841. package/internal/themes/LightTheme5_0/LightTheme5_0.js.map +1 -0
  842. package/internal/themes/LightTheme5_0/package.json +6 -0
  843. package/internal/themes/LightTheme5_0.d.ts +1 -0
  844. package/internal/themes/LightTheme5_1/LightTheme5_1.js +52 -0
  845. package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +1 -0
  846. package/internal/themes/LightTheme5_1/package.json +6 -0
  847. package/internal/themes/LightTheme5_1.d.ts +1 -0
  848. package/lib/ModalStack/ModalStack.js +8 -8
  849. package/lib/ModalStack/ModalStack.js.map +1 -1
  850. package/lib/ModalStack.d.ts +1 -0
  851. package/lib/date/types/types.js +18 -18
  852. package/lib/date/types/types.js.map +1 -1
  853. package/lib/events/MouseDrag/MouseDrag.js +3 -3
  854. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  855. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js +3 -3
  856. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
  857. package/lib/locale/types/types.js +3 -3
  858. package/lib/locale/types/types.js.map +1 -1
  859. package/lib/theming/Theme/Theme.js +2 -1
  860. package/lib/theming/Theme/Theme.js.map +1 -1
  861. package/lib/theming/Theme.d.ts +4 -3
  862. package/lib/theming/ThemeContext/ThemeContext.js +2 -2
  863. package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
  864. package/lib/theming/ThemeContext.d.ts +1 -1
  865. package/lib/theming/ThemeFactory/ThemeFactory.js +21 -7
  866. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  867. package/lib/theming/ThemeFactory.d.ts +9 -0
  868. package/lib/theming/ThemeHelpers/ThemeHelpers.js +85 -18
  869. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  870. package/lib/theming/ThemeHelpers.d.ts +55 -8
  871. package/lib/theming/ThemeVersions/ThemeVersions.js +50 -0
  872. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -0
  873. package/lib/theming/ThemeVersions/package.json +6 -0
  874. package/lib/theming/ThemeVersions.d.ts +25 -0
  875. package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -4
  876. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  877. package/lib/theming/themes/DarkTheme.d.ts +3 -1
  878. package/lib/theming/themes/LightTheme/LightTheme.js +5 -4
  879. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  880. package/lib/theming/themes/LightTheme.d.ts +3 -1
  881. package/lib/theming/themes/LightThemeMobile.d.ts +1 -1
  882. package/lib/theming/useTheme.d.ts +1 -1
  883. package/lib/types/button-link/button-link.js +0 -1
  884. package/lib/types/polymorphic-component/polymorphic-component.js +0 -1
  885. package/lib/types/props/props.js +0 -1
  886. package/package.json +9 -5
  887. package/cjs/internal/themes/BasicDarkTheme.d.ts +0 -289
  888. package/cjs/internal/themes/BasicDarkTheme.js +0 -597
  889. package/cjs/internal/themes/BasicDarkTheme.js.map +0 -1
  890. package/cjs/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
  891. package/cjs/lib/theming/themes/DarkTheme2022_0.js +0 -5
  892. package/cjs/lib/theming/themes/DarkTheme2022_0.js.map +0 -1
  893. package/cjs/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
  894. package/cjs/lib/theming/themes/LightTheme2022_0.js +0 -5
  895. package/cjs/lib/theming/themes/LightTheme2022_0.js.map +0 -1
  896. package/internal/themes/BasicDarkTheme/BasicDarkTheme.js +0 -641
  897. package/internal/themes/BasicDarkTheme/BasicDarkTheme.js.map +0 -1
  898. package/internal/themes/BasicDarkTheme/package.json +0 -6
  899. package/internal/themes/BasicDarkTheme.d.ts +0 -289
  900. package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js +0 -3
  901. package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js.map +0 -1
  902. package/lib/theming/themes/DarkTheme2022_0/package.json +0 -6
  903. package/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
  904. package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js +0 -3
  905. package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js.map +0 -1
  906. package/lib/theming/themes/LightTheme2022_0/package.json +0 -6
  907. package/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","throttle","globalObject","isKeyEnter","needsPolyfillPlaceholder","LayoutEvents","ThemeContext","RenderLayer","ResizeDetector","isIE11","isSafariWithTextareaBug","CommonWrapper","isTestEnv","cx","rootNode","createPropsGetter","getTextAreaHeight","styles","TextareaCounter","TextareaWithSafari17Workaround","DEFAULT_WIDTH","AUTORESIZE_THROTTLE_DEFAULT_WAIT","TextareaDataTids","root","counter","helpIcon","Textarea","_class","_Textarea","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","isCounterVisible","reflowCounter","reflow","selectAllId","textareaObserver","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","_objectWithoutPropertiesLoose","_excluded","rootProps","style","textareaClassNames","getTextareaSizeClassName","textarea","theme","hovering","isAnimationsDisabled","textareaStyle","placeholderPolyfill","defaultValue","createElement","className","fakeTextarea","fakeProps","fake","readOnly","_extends","ref","refFake","help","maxLength","onCloseHelp","handleCloseCounterHelp","refCounter","Component","onFocusOutside","onClickOutside","active","getRootSizeClassName","onResize","undefined","onChange","handleChange","handleCut","handlePaste","handleFocus","onKeyDown","handleKeyDown","children","setState","e","toString","isBlockEnter","preventDefault","fieldIsEmpty","target","element","fakeNode","autoResizeHandler","_this$getProps","rows","_ref2","minRows","parseInt","height","exceededMaxHeight","overflowY","getAutoResizeThrottleWait","event","_inheritsLoose","_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","Consumer","rootNodeRef","setRootNode","blur","__KONTUR_REACT_UI__","displayName","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"],"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":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PropTypes","throttle","globalObject","isKeyEnter","needsPolyfillPlaceholder","LayoutEvents","ThemeContext","RenderLayer","ResizeDetector","isIE11","isSafariWithTextareaBug","CommonWrapper","isTestEnv","cx","rootNode","createPropsGetter","getTextAreaHeight","styles","TextareaCounter","TextareaWithSafari17Workaround","DEFAULT_WIDTH","AUTORESIZE_THROTTLE_DEFAULT_WAIT","TextareaDataTids","root","counter","helpIcon","Textarea","_class","_Textarea","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","isCounterVisible","reflowCounter","reflow","selectAllId","textareaObserver","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","_objectWithoutPropertiesLoose","_excluded","rootProps","style","textareaClassNames","getTextareaSizeClassName","textarea","theme","hovering","isAnimationsDisabled","textareaStyle","placeholderPolyfill","defaultValue","createElement","className","fakeTextarea","fakeProps","fake","readOnly","_extends","ref","refFake","help","maxLength","onCloseHelp","handleCloseCounterHelp","refCounter","Component","onFocusOutside","onClickOutside","active","getRootSizeClassName","onResize","undefined","onChange","handleChange","handleCut","handlePaste","handleFocus","onKeyDown","handleKeyDown","children","setState","e","toString","isBlockEnter","preventDefault","fieldIsEmpty","target","element","fakeNode","autoResizeHandler","_this$getProps","rows","_ref2","minRows","parseInt","height","exceededMaxHeight","overflowY","getAutoResizeThrottleWait","event","_inheritsLoose","_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","Consumer","rootNodeRef","setRootNode","blur","__KONTUR_REACT_UI__","displayName","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"],"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":[]}
@@ -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;
@@ -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';
@@ -0,0 +1,28 @@
1
+ import * as TextareaStories from './Textarea.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={TextareaStories} />
6
+
7
+ # Textarea
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/input-fields/textarea/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=203%3A2333)
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} />
@@ -21,13 +21,13 @@ export var ToastDataTids = {
21
21
  };
22
22
 
23
23
  /**
24
- * Показывает уведомления.
24
+ * `Toast` — это короткое немодальное уведомление, которое сообщает пользователю о результате выполнения его команды.
25
+ * Результат может быть положительным, отрицательным или нейтральным.
25
26
  *
26
27
  * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.
27
28
  * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.
28
29
  *
29
- * Для статических тостов <u>рекомендуется</u> использовать компонент [SingleToast](https://tech.skbkontur.ru/react-ui/#/Components/SingleToast) - в нём исправлены эти проблемы.
30
- *
30
+ * Для статических тостов рекомендуется использовать компонент SingleToast - в нём исправлены эти проблемы.
31
31
  */
32
32
  export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Component) {
33
33
  function Toast(props) {
@@ -70,14 +70,15 @@ export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Com
70
70
  notification: null,
71
71
  action: null,
72
72
  id: 0,
73
- showTime: null
73
+ showTime: null,
74
+ showCloseIcon: false
74
75
  };
75
76
  return _this;
76
77
  }
77
- _inheritsLoose(Toast, _React$Component);
78
- Toast.push = function push(notification, action, showTime) {
79
- ToastStatic.push(notification, action, showTime);
80
- };
78
+ _inheritsLoose(Toast, _React$Component); /** @deprecated use `push` method in ref or `SingleToast.push` */
79
+ Toast.push = function push(notification, action, showTime, showCloseIcon) {
80
+ ToastStatic.push(notification, action, showTime, showCloseIcon);
81
+ } /** @deprecated use `close` method in ref or `SingleToast.close` */;
81
82
  Toast.close = function close() {
82
83
  ToastStatic.close();
83
84
  };
@@ -104,8 +105,9 @@ export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Com
104
105
  * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`
105
106
  * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler
106
107
  * @param {number} showTime Время существования Toast в миллисекундах
108
+ * @param {boolean} showCloseIcon Добавляет крестик для закрытия тоста. При указывании action в onPush крестик отображается всегда.
107
109
  */;
108
- _proto.push = function push(notification, action, showTime) {
110
+ _proto.push = function push(notification, action, showTime, showCloseIcon) {
109
111
  if (this.state.notification) {
110
112
  this.close();
111
113
  }
@@ -116,7 +118,8 @@ export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Com
116
118
  notification: notification,
117
119
  action: action,
118
120
  id: id + 1,
119
- showTime: showTime
121
+ showTime: showTime,
122
+ showCloseIcon: showCloseIcon
120
123
  };
121
124
  }, this._setTimer);
122
125
  };
@@ -124,7 +127,8 @@ export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Com
124
127
  var _this$state = this.state,
125
128
  notification = _this$state.notification,
126
129
  action = _this$state.action,
127
- id = _this$state.id;
130
+ id = _this$state.id,
131
+ showCloseIcon = _this$state.showCloseIcon;
128
132
  if (!notification) {
129
133
  return null;
130
134
  }
@@ -134,7 +138,8 @@ export var Toast = rootNode(_class = (_Toast = /*#__PURE__*/function (_React$Com
134
138
  onClose: this.close,
135
139
  children: notification,
136
140
  'aria-label': this.props['aria-label'],
137
- action: action
141
+ action: action,
142
+ showCloseIcon: showCloseIcon
138
143
  };
139
144
  return /*#__PURE__*/React.createElement(CSSTransition, {
140
145
  key: id,
@@ -1 +1 @@
1
- {"version":3,"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","_class","_Toast","_React$Component","props","_this","call","rootRef","createRef","safelyCall","onClose","state","notification","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","_this$state$showTime","showTime","setTimeout","_refToast","_toast","id","_inheritsLoose","push","_proto","prototype","componentWillUnmount","render","_this2","createElement","Consumer","theme","create","Provider","value","_renderToast","onPush","_ref","_this$state","toastProps","onMouseEnter","onMouseLeave","children","key","classNames","enter","enterActive","exit","exitActive","timeout","nodeRef","_extends","rootNodeRef","ref","Component","__KONTUR_REACT_UI__","displayName","fn","_len","arguments","length","args","Array","_key","apply"],"sources":["Toast.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport { ToastView, ToastViewProps } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<string>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n onPush?: (notification: string, action?: Action) => void;\n onClose?: (notification: string, action?: Action) => void;\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n}\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * Показывает уведомления.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов <u>рекомендуется</u> использовать компонент [SingleToast](https://tech.skbkontur.ru/react-ui/#/Components/SingleToast) - в нём исправлены эти проблемы.\n *\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n public static displayName = 'Toast';\n\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public static push(notification: string, action?: Nullable<Action>, showTime?: number) {\n ToastStatic.push(notification, action, showTime);\n }\n\n public static close() {\n ToastStatic.close();\n }\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {string} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n */\n public push(notification: string, action?: Nullable<Action>, showTime?: number) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","_class","_Toast","_React$Component","props","_this","call","rootRef","createRef","safelyCall","onClose","state","notification","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","_this$state$showTime","showTime","setTimeout","_refToast","_toast","id","showCloseIcon","_inheritsLoose","push","_proto","prototype","componentWillUnmount","render","_this2","createElement","Consumer","theme","create","Provider","value","_renderToast","onPush","_ref","_this$state","toastProps","onMouseEnter","onMouseLeave","children","key","classNames","enter","enterActive","exit","exitActive","timeout","nodeRef","_extends","rootNodeRef","ref","Component","__KONTUR_REACT_UI__","displayName","fn","_len","arguments","length","args","Array","_key","apply"],"sources":["Toast.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport { ToastView, ToastViewProps } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<string>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n showCloseIcon?: boolean;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n /** Задает функцию, которая вызывается при возникновении тоста. */\n onPush?: (notification: string, action?: Action) => void;\n\n /** Задает функцию, которая вызывается при закрытии тоста. */\n onClose?: (notification: string, action?: Action) => void;\n\n /** Задает объект с переменными темы. Он будет объединён с темой из контекста. */\n theme?: ThemeIn;\n}\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * `Toast` — это короткое немодальное уведомление, которое сообщает пользователю о результате выполнения его команды.\n * Результат может быть положительным, отрицательным или нейтральным.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов рекомендуется использовать компонент SingleToast - в нём исправлены эти проблемы.\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n public static displayName = 'Toast';\n\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n /** @deprecated use `push` method in ref or `SingleToast.push` */\n public static push(notification: string, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean) {\n ToastStatic.push(notification, action, showTime, showCloseIcon);\n }\n\n /** @deprecated use `close` method in ref or `SingleToast.close` */\n public static close() {\n ToastStatic.close();\n }\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n showCloseIcon: false,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {string} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n * @param {boolean} showCloseIcon Добавляет крестик для закрытия тоста. При указывании action в onPush крестик отображается всегда.\n */\n public push(notification: string, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime, showCloseIcon }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id, showCloseIcon } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n showCloseIcon,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,14 +13,14 @@ export interface ToastState {
13
13
  action: Nullable<Action>;
14
14
  id: number;
15
15
  showTime: Nullable<number>;
16
+ showCloseIcon?: boolean;
16
17
  }
17
18
  export interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {
19
+ /** Задает функцию, которая вызывается при возникновении тоста. */
18
20
  onPush?: (notification: string, action?: Action) => void;
21
+ /** Задает функцию, которая вызывается при закрытии тоста. */
19
22
  onClose?: (notification: string, action?: Action) => void;
20
- /**
21
- * Обычный объект с переменными темы.
22
- * Он будет объединён с темой из контекста.
23
- */
23
+ /** Задает объект с переменными темы. Он будет объединён с темой из контекста. */
24
24
  theme?: ThemeIn;
25
25
  }
26
26
  export declare const ToastDataTids: {
@@ -30,20 +30,22 @@ export declare const ToastDataTids: {
30
30
  readonly close: "ToastView__close";
31
31
  };
32
32
  /**
33
- * Показывает уведомления.
33
+ * `Toast` — это короткое немодальное уведомление, которое сообщает пользователю о результате выполнения его команды.
34
+ * Результат может быть положительным, отрицательным или нейтральным.
34
35
  *
35
36
  * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.
36
37
  * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.
37
38
  *
38
- * Для статических тостов <u>рекомендуется</u> использовать компонент [SingleToast](https://tech.skbkontur.ru/react-ui/#/Components/SingleToast) - в нём исправлены эти проблемы.
39
- *
39
+ * Для статических тостов рекомендуется использовать компонент SingleToast - в нём исправлены эти проблемы.
40
40
  */
41
41
  export declare class Toast extends React.Component<ToastProps, ToastState> {
42
42
  static __KONTUR_REACT_UI__: string;
43
43
  static displayName: string;
44
44
  private setRootNode;
45
45
  private theme;
46
- static push(notification: string, action?: Nullable<Action>, showTime?: number): void;
46
+ /** @deprecated use `push` method in ref or `SingleToast.push` */
47
+ static push(notification: string, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean): void;
48
+ /** @deprecated use `close` method in ref or `SingleToast.close` */
47
49
  static close(): void;
48
50
  _toast: Nullable<ToastView>;
49
51
  private _timeout;
@@ -62,8 +64,9 @@ export declare class Toast extends React.Component<ToastProps, ToastState> {
62
64
  * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`
63
65
  * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler
64
66
  * @param {number} showTime Время существования Toast в миллисекундах
67
+ * @param {boolean} showCloseIcon Добавляет крестик для закрытия тоста. При указывании action в onPush крестик отображается всегда.
65
68
  */
66
- push(notification: string, action?: Nullable<Action>, showTime?: number): void;
69
+ push(notification: string, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean): void;
67
70
  /**
68
71
  * @public
69
72
  */
@@ -1,4 +1,4 @@
1
- Вызов статических методов
1
+ ### Вызов статических методов
2
2
 
3
3
  ```jsx harmony
4
4
  import { Button, Toast } from '@skbkontur/react-ui';
@@ -13,7 +13,7 @@ function showComplexNotification() {
13
13
  <Button onClick={showComplexNotification}>Show notification</Button>;
14
14
  ```
15
15
 
16
- C кастомным showTime
16
+ ### Кастомный showTime
17
17
 
18
18
  ```jsx harmony
19
19
  import { Button, Toast } from '@skbkontur/react-ui';
@@ -28,7 +28,7 @@ function showComplexNotification() {
28
28
  <Button onClick={showComplexNotification}>Show notification</Button>;
29
29
  ```
30
30
 
31
- C кастомным showTime без action
31
+ ### Кастомный showTime без action
32
32
 
33
33
 
34
34
  ```jsx harmony
@@ -41,7 +41,7 @@ function showComplexNotification() {
41
41
  <Button onClick={showComplexNotification}>Show notification</Button>;
42
42
  ```
43
43
 
44
- Использование `ref`
44
+ ### Использование `ref`
45
45
 
46
46
  ```jsx harmony
47
47
  import { Button, Toast } from '@skbkontur/react-ui';