@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":["_invariant","_interopRequireDefault","require","_react","_warning","_globalObject","_client","_identifiers","_needsPolyfillPlaceholder","_InternalMaskedInput","_ThemeContext","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_FocusControlWrapper","_Input2","_InputLayout","_PolyfillPlaceholder","_excluded","_class","_Input","inputTypes","exports","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","InputDataTids","root","Input","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","needsPolyfillPlaceholder","blinking","focused","selectAllId","input","selectAll","_selectAll","delaySelectAll","_globalObject$request","globalObject","requestAnimationFrame","setSelectionRange","value","cancelDelayedSelectAll","cancelAnimationFrame","cancelBlink","callback","blinkTimeout","clearTimeout","setState","getInput","inputProps","props","element","React","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","warning","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","disabled","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose2","default","_this$state","labelProps","className","cx","styles","theme","getSizeClassName","focus","hovering","blink","focusFallback","isIE11","isEdge","warningFallback","errorFallback","style","_extends2","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","ref","refInput","isMaskVisible","undefined","FocusControlWrapper","onBlurWhenDisabled","resetFocus","InputLayout","context","Boolean","PolyfillPlaceholder","defaultValue","InternalMaskedInput","event","fieldIsEmpty","target","e","isDeleteKey","someKeys","isKeyBackspace","isKeyDelete","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","_inheritsLoose2","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","invariant","blur","getNode","_this2","offsetWidth","setTimeout","start","end","_globalObject$documen","_this$props$value","_this3","Error","document","activeElement","_this3$input","_this$input","render","_this4","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass2","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport React, { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport warning from 'warning';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\n\nexport const inputTypes = ['password', 'text', 'number', 'tel', 'search', 'time', 'date', 'url', 'email'] as const;\n\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type InputType = (typeof inputTypes)[number];\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport const selectionAllowedTypes: InputType[] = ['text', 'password', 'tel', 'search', 'url'];\nexport const selectionErrorMessage = (type: InputType, allowedTypes: InputType[] = selectionAllowedTypes) => {\n return `<Input />. Selection is not supported by the type \"${type}\". Types that support selection: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}. Reason: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange.`;\n};\n\nexport const maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\n};\n\nexport interface InputProps\n extends CommonProps,\n Pick<HTMLAttributes<unknown>, 'role'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-controls' | 'aria-label'>,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /**\n * Иконка слева\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n leftIcon?: InputIconType;\n /**\n * Иконка справа\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n rightIcon?: InputIconType;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /** Режим прозрачной рамки */\n borderless?: boolean;\n /** Выравнивание текста */\n align?: InputAlign;\n /**\n * Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput\n */\n mask?: Nullable<string>;\n /**\n * Символ маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput\n */\n maskChar?: Nullable<string>;\n /**\n * Словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }\n */\n formatChars?: Record<string, string>;\n /**\n * Показывать символы маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput\n */\n alwaysShowMask?: boolean;\n /** Размер */\n size?: SizeProp;\n /** onValueChange */\n onValueChange?: (value: string) => void;\n /** Вызывается на label */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * Тип. Возможные значения: 'password' | 'text' | 'number' | 'tel' | 'search' | 'time' | 'date' | 'url' | 'email'\n * */\n type?: InputType;\n /** Значение */\n value?: string;\n capture?: boolean;\n\n /**\n * Префикс\n * `ReactNode` перед значением, но после иконки\n */\n prefix?: React.ReactNode;\n /**\n * Суффикс\n * `ReactNode` после значения, но перед правой иконкой\n */\n suffix?: React.ReactNode;\n /** Выделять введенное значение при фокусе. Работает с типами `text`, `password`, `tel`, `search`, `url`. [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange) */\n selectAllOnFocus?: boolean;\n /**\n * Обработчик неправильного ввода.\n * По-умолчанию, инпут вспыхивает акцентным цветом.\n * Если передан - вызывается переданный обработчик,\n * в таком случае вспыхивание можно вызвать\n * публичным методом инстанса `blink()`.\n *\n * @param value значение инпута.\n */\n onUnexpectedInput?: (value: string) => void;\n /** @ignore */\n corners?: Partial<\n Pick<\n React.CSSProperties,\n 'borderTopRightRadius' | 'borderBottomRightRadius' | 'borderBottomLeftRadius' | 'borderTopLeftRadius'\n >\n >;\n /**\n * Элемент заменяет нативный input.\n * Должен иметь пропы `InputElementProps` и тип `InputElement`\n * */\n element?: ReactElement<InputElementProps>;\n }\n > {}\n\nexport interface InputState {\n blinking: boolean;\n focused: boolean;\n needsPolyfillPlaceholder: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'size' | 'type'>>;\n\n/**\n * Интерфейс пропсов наследуется от `React.InputHTMLAttributes<HTMLInputElement>`.\n * Все пропсы кроме перечисленных, `className` и `style` передаются в `<input>`\n */\n@rootNode\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n public static displayName = 'Input';\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n type: 'text',\n };\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n public state: InputState = {\n needsPolyfillPlaceholder,\n blinking: false,\n focused: false,\n };\n\n private selectAllId: number | null = null;\n private theme!: Theme;\n private blinkTimeout: SafeTimer;\n public input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n globalObject.clearTimeout(this.blinkTimeout);\n }\n this.cancelDelayedSelectAll();\n }\n\n /**\n * @public\n */\n public focus() {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /**\n * @public\n */\n public getNode() {\n return this.input;\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.blinkTimeout) {\n this.cancelBlink(() => {\n // trigger reflow to restart animation\n // @see https://css-tricks.com/restart-css-animation/#article-header-id-0\n void (this.input && this.input.offsetWidth);\n this.blink();\n });\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = globalObject.setTimeout(this.cancelBlink, 150);\n });\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number) {\n // https://github.com/facebook/react/issues/7769\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n if (!selectionAllowedTypes.includes(this.getProps().type)) {\n warning(false, selectionErrorMessage(this.getProps().type));\n\n return;\n }\n\n if (!this.input) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\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 private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\n }\n\n /**\n * Работает с типами `text`, `password`, `tel`, `search`, `url`\n * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)\n * @public\n */\n public selectAll = (): void => this._selectAll();\n\n public delaySelectAll = (): number | null => {\n return (this.selectAllId = globalObject.requestAnimationFrame?.(this._selectAll) ?? null);\n };\n\n private _selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private cancelBlink = (callback?: () => void): void => {\n if (this.blinkTimeout) {\n globalObject.clearTimeout(this.blinkTimeout);\n this.blinkTimeout = 0;\n if (this.state.blinking) {\n this.setState({ blinking: false }, callback);\n return;\n }\n }\n if (callback) {\n callback();\n }\n };\n\n private getInput = (inputProps: InputElementProps & ClassAttributes<HTMLInputElement>) => {\n if (this.props.element) {\n return React.cloneElement(this.props.element, inputProps);\n }\n\n return this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : React.createElement('input', inputProps);\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n role,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type,\n mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\n corners,\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n element,\n ...rest\n } = props;\n\n const { blinking, focused } = this.state;\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.blink(this.theme)]: blinking,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\n }),\n 'aria-controls': ariaControls,\n style: { width, ...corners },\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n };\n\n const inputProps: InputElementProps & ClassAttributes<HTMLInputElement> = {\n ...rest,\n className: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n role,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type,\n placeholder: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\n disabled,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n };\n\n const input = (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>{this.getInput(inputProps)}</FocusControlWrapper>\n );\n\n return (\n <InputLayout\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n prefix={prefix}\n suffix={suffix}\n labelProps={labelProps}\n context={{ disabled: Boolean(disabled), focused, size }}\n >\n {input}\n {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (element && 'input' in element)) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n });\n\n if (this.props.selectAllOnFocus) {\n this.input && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private resetFocus = () => this.setState({ focused: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_invariant","_interopRequireDefault","require","_react","_warning","_globalObject","_client","_identifiers","_needsPolyfillPlaceholder","_InternalMaskedInput","_ThemeContext","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_FocusControlWrapper","_Input2","_InputLayout","_PolyfillPlaceholder","_excluded","_class","_Input","inputTypes","exports","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","InputDataTids","root","Input","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","needsPolyfillPlaceholder","blinking","focused","selectAllId","input","selectAll","_selectAll","delaySelectAll","_globalObject$request","globalObject","requestAnimationFrame","setSelectionRange","value","cancelDelayedSelectAll","cancelAnimationFrame","cancelBlink","callback","blinkTimeout","clearTimeout","setState","getInput","inputProps","props","element","React","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","warning","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","disabled","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose2","default","_this$state","labelProps","className","cx","styles","theme","getSizeClassName","focus","hovering","blink","focusFallback","isIE11","isEdge","warningFallback","errorFallback","style","_extends2","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","ref","refInput","isMaskVisible","undefined","FocusControlWrapper","onBlurWhenDisabled","resetFocus","InputLayout","context","Boolean","PolyfillPlaceholder","defaultValue","InternalMaskedInput","event","fieldIsEmpty","target","e","isDeleteKey","someKeys","isKeyBackspace","isKeyDelete","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","_inheritsLoose2","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","invariant","blur","getNode","_this2","offsetWidth","setTimeout","start","end","_globalObject$documen","_this$props$value","_this3","Error","document","activeElement","_this3$input","_this$input","render","_this4","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass2","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport React, { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport warning from 'warning';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\n\nexport const inputTypes = ['password', 'text', 'number', 'tel', 'search', 'time', 'date', 'url', 'email'] as const;\n\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type InputType = (typeof inputTypes)[number];\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport const selectionAllowedTypes: InputType[] = ['text', 'password', 'tel', 'search', 'url'];\nexport const selectionErrorMessage = (type: InputType, allowedTypes: InputType[] = selectionAllowedTypes) => {\n return `<Input />. Selection is not supported by the type \"${type}\". Types that support selection: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}. Reason: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange.`;\n};\n\nexport const maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\n};\n\nexport interface InputProps\n extends CommonProps,\n Pick<HTMLAttributes<unknown>, 'role'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-controls' | 'aria-label'>,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Задает иконку слева.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n leftIcon?: InputIconType;\n\n /** Добавляет иконку справа.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n rightIcon?: InputIconType;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Убирает обводку. */\n borderless?: boolean;\n\n /** Задает выравнивание контента. */\n align?: InputAlign;\n\n /** Задает паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n mask?: Nullable<string>;\n\n /** Устанавливает символ маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n maskChar?: Nullable<string>;\n\n /** Задает словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput.\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }. */\n formatChars?: Record<string, string>;\n\n /** Включает показ символов маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n alwaysShowMask?: boolean;\n\n /** Задает размер. */\n size?: SizeProp;\n\n /** Задает функцию, которая вызывается при изменении значения в инпуте. */\n onValueChange?: (value: string) => void;\n\n /** @ignore */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Задает тип инпута. */\n type?: InputType;\n\n /** Задает значение. */\n value?: string;\n\n ///** */\n capture?: boolean;\n\n /** Устанавливает префикс `ReactNode` перед значением, но после иконки. */\n prefix?: React.ReactNode;\n\n /** Устанавливает суффикс `ReactNode` после значения, но перед правой иконкой. */\n suffix?: React.ReactNode;\n\n /** Определяет, нужно ли выделять введенное значение при фокусе. Работает с типами `text`, `password`, `tel`, `search`, `url`. [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange) */\n selectAllOnFocus?: boolean;\n\n /** Задает функцию для обработки ввода.\n * При неправильном вводе инпут по-умолчанию вспыхивает акцентным цветом.\n * Если `onUnexpectedInput` передан - вызывается переданный обработчик b вспыхивание можно вызвать публичным методом инстанса `blink()`.\n * @param {string} value - значение инпута. */\n onUnexpectedInput?: (value: string) => void;\n\n /** Устанавливает радиус скруглений углов.\n * @ignore */\n corners?: Partial<\n Pick<\n React.CSSProperties,\n 'borderTopRightRadius' | 'borderBottomRightRadius' | 'borderBottomLeftRadius' | 'borderTopLeftRadius'\n >\n >;\n\n /** Устанавливает элемент, заменяющий нативный input. Должен иметь пропы `InputElementProps` и тип `InputElement`. */\n element?: ReactElement<InputElementProps>;\n }\n > {}\n\nexport interface InputState {\n blinking: boolean;\n focused: boolean;\n needsPolyfillPlaceholder: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'size' | 'type'>>;\n\n/**\n * Поле ввода `Input` дает возможность указать значение с помощью клавиатуры.\n *\n * Используйте поле ввода для коротких текстовых или цифровых значений без предсказуемого формата.\n *\n * Если вводимое значение имеет определенный формат, используйте специальную версию поля:\n * * Поле с паролем PasswordInput.\n * * Поле с валютой CurrencyInput.\n * * Поле с маской MaskedInput.\n * * Автополе FxInput.\n *\n * Интерфейс пропсов наследуется от `React.InputHTMLAttributes<HTMLInputElement>`.\n */\n@rootNode\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n public static displayName = 'Input';\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n type: 'text',\n };\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n public state: InputState = {\n needsPolyfillPlaceholder,\n blinking: false,\n focused: false,\n };\n\n private selectAllId: number | null = null;\n private theme!: Theme;\n private blinkTimeout: SafeTimer;\n public input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n globalObject.clearTimeout(this.blinkTimeout);\n }\n this.cancelDelayedSelectAll();\n }\n\n /**\n * @public\n */\n public focus() {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /**\n * @public\n */\n public getNode() {\n return this.input;\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.blinkTimeout) {\n this.cancelBlink(() => {\n // trigger reflow to restart animation\n // @see https://css-tricks.com/restart-css-animation/#article-header-id-0\n void (this.input && this.input.offsetWidth);\n this.blink();\n });\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = globalObject.setTimeout(this.cancelBlink, 150);\n });\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number) {\n // https://github.com/facebook/react/issues/7769\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n if (!selectionAllowedTypes.includes(this.getProps().type)) {\n warning(false, selectionErrorMessage(this.getProps().type));\n\n return;\n }\n\n if (!this.input) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\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 private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\n }\n\n /**\n * Работает с типами `text`, `password`, `tel`, `search`, `url`\n * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)\n * @public\n */\n public selectAll = (): void => this._selectAll();\n\n public delaySelectAll = (): number | null => {\n return (this.selectAllId = globalObject.requestAnimationFrame?.(this._selectAll) ?? null);\n };\n\n private _selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private cancelBlink = (callback?: () => void): void => {\n if (this.blinkTimeout) {\n globalObject.clearTimeout(this.blinkTimeout);\n this.blinkTimeout = 0;\n if (this.state.blinking) {\n this.setState({ blinking: false }, callback);\n return;\n }\n }\n if (callback) {\n callback();\n }\n };\n\n private getInput = (inputProps: InputElementProps & ClassAttributes<HTMLInputElement>) => {\n if (this.props.element) {\n return React.cloneElement(this.props.element, inputProps);\n }\n\n return this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : React.createElement('input', inputProps);\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n role,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type,\n mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\n corners,\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n element,\n ...rest\n } = props;\n\n const { blinking, focused } = this.state;\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.blink(this.theme)]: blinking,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\n }),\n 'aria-controls': ariaControls,\n style: { width, ...corners },\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n };\n\n const inputProps: InputElementProps & ClassAttributes<HTMLInputElement> = {\n ...rest,\n className: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n role,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type,\n placeholder: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\n disabled,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n };\n\n const input = (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>{this.getInput(inputProps)}</FocusControlWrapper>\n );\n\n return (\n <InputLayout\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n prefix={prefix}\n suffix={suffix}\n labelProps={labelProps}\n context={{ disabled: Boolean(disabled), focused, size }}\n >\n {input}\n {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (element && 'input' in element)) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n });\n\n if (this.props.selectAllOnFocus) {\n this.input && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private resetFocus = () => this.setState({ focused: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,18 @@
1
+ ### Базовый пример
2
+ ```jsx harmony
3
+ import SearchIcon from '@skbkontur/react-icons/Search';
4
+
5
+ <Input />;
6
+ ```
7
+
8
+ ### Иконка
1
9
  ```jsx harmony
2
10
  import SearchIcon from '@skbkontur/react-icons/Search';
3
11
 
4
12
  <Input leftIcon={<SearchIcon />} />;
5
13
  ```
6
14
 
15
+ ### Очистка значения
7
16
  Очистить значение в `Input`'е можно только с помощью пустой строки
8
17
 
9
18
  ```jsx harmony
@@ -17,7 +26,7 @@ const [value, setValue] = React.useState('Значение');
17
26
  </Group>
18
27
  ```
19
28
 
20
- Пример с префиксом:
29
+ ### Префикс
21
30
 
22
31
  ```jsx harmony
23
32
  import SearchIcon from '@skbkontur/react-icons/Search';
@@ -29,7 +38,7 @@ import SearchIcon from '@skbkontur/react-icons/Search';
29
38
  />;
30
39
  ```
31
40
 
32
- Примеры разных значений `type`:
41
+ ### type
33
42
 
34
43
  ```jsx harmony
35
44
  import { Gapped, Input, Tooltip } from '@skbkontur/react-ui';
@@ -1 +1 @@
1
- "use strict";exports.__esModule = true;
1
+ "use strict";
@@ -0,0 +1,28 @@
1
+ import * as InputStories from './Input.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={InputStories} />
6
+
7
+ # Input
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/input-fields/input/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=203%3A1602)
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} />
@@ -5,29 +5,22 @@ import { PopupPositionsType } from '../../internal/Popup';
5
5
  import { CommonProps } from '../../internal/CommonWrapper';
6
6
  import { SizeProp } from '../../lib/types/props';
7
7
  export interface KebabProps extends Pick<AriaAttributes, 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>, CommonProps {
8
+ /** Делает компонент недоступным. */
8
9
  disabled?: boolean;
10
+ /** Задает размер контрола. */
9
11
  size?: SizeProp;
10
- /**
11
- * Список позиций доступных для расположения выпадашки.
12
- *
12
+ /** Определяет список позиций, доступных для расположения выпадашки относительно `kebab`.
13
13
  * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.
14
- *
15
- * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`
16
- * @default ['bottom left', 'bottom right', 'top left', 'top right']
17
- */
14
+ * @default ['bottom left', 'bottom right', 'top left', 'top right']. */
18
15
  positions?: PopupPositionsType[];
16
+ positions2?: string;
17
+ /** Задает максимальную высоту меню. */
19
18
  menuMaxHeight?: number | string;
20
- /**
21
- * Не показывать анимацию
22
- */
19
+ /** Отключает анимацию. */
23
20
  disableAnimations?: boolean;
24
- /**
25
- * Кастомная иконка
26
- */
21
+ /** Добавляет иконку слева. */
27
22
  icon?: React.ReactNode;
28
- /**
29
- * Атрибут для указания id элемента(-ов), описывающих его
30
- */
23
+ /** @ignore */
31
24
  'aria-describedby'?: AriaAttributes['aria-describedby'];
32
25
  }
33
26
  export declare const KebabDataTids: {
@@ -38,6 +31,9 @@ export interface KebabState {
38
31
  focusedByTab: boolean;
39
32
  }
40
33
  type DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;
34
+ /**
35
+ * Кебаб-меню `Kebab` содержит действия с объектом.
36
+ */
41
37
  export declare class Kebab extends React.Component<KebabProps, KebabState> {
42
38
  static __KONTUR_REACT_UI__: string;
43
39
  static displayName: string;
@@ -52,12 +52,11 @@ var _KebabIcon = require("./KebabIcon");var _class, _Kebab;
52
52
 
53
53
 
54
54
 
55
-
56
55
 
57
56
 
58
57
  var KebabDataTids = exports.KebabDataTids = {
59
58
  caption: 'Kebab__caption'
60
- };var
59
+ };
61
60
 
62
61
 
63
62
 
@@ -66,6 +65,9 @@ var KebabDataTids = exports.KebabDataTids = {
66
65
 
67
66
 
68
67
 
68
+ /**
69
+ * Кебаб-меню `Kebab` содержит действия с объектом.
70
+ */var
69
71
 
70
72
  Kebab = exports.Kebab = (0, _rootNode.rootNode)(_class = (_Kebab = /*#__PURE__*/function (_React$Component) {function Kebab() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
71
73
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_reactIs","_globalObject","_utils","_identifiers","LayoutEvents","_interopRequireWildcard","_keyListener","_PopupMenu","_ThemeContext","_currentEnvironment","_ThemeFactory","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_getVisualStateDataAttributes","_Kebab2","_KebabIcon","_class","_Kebab","KebabDataTids","exports","caption","Kebab","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","_this$getProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","default","createElement","role","tabIndex","onClick","onKeyDown","onFocus","handleFocus","onBlur","handleBlur","className","cx","styles","kebab","theme","kebabSmall","kebabMedium","kebabLarge","opened","focused","props","renderIcon","e","someKeys","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","globalObject","requestAnimationFrame","keyListener","isTabPressed","_inheritsLoose2","_proto","prototype","componentDidMount","addListener","componentWillUnmount","render","_this2","ThemeContext","Consumer","Provider","value","ThemeFactory","create","popupMargin","kebabMargin","renderMain","_this$getProps2","positions","disableAnimations","onOpen","onClose","CommonWrapper","_extends2","rootNodeRef","setRootNode","getVisualStateDataAttributes","PopupMenu","id","popupHasPin","preventIconsOffset","onChangeMenuState","menuMaxHeight","popupMenuId","children","_this$getProps3","_this$getProps3$icon","icon","KebabIcon","isElement","isKonturIcon","_icon$props$size","_icon$props$color","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","React","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","isTestEnv","PropTypes","node","bool","oneOfType","string","number","func"],"sources":["Kebab.tsx"],"sourcesContent":["import React, { AriaAttributes, ReactElement, HTMLAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n disabled?: boolean;\n size?: SizeProp;\n /**\n * Список позиций доступных для расположения выпадашки.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n menuMaxHeight?: number | string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Кастомная иконка\n */\n icon?: React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.kebabMargin,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <PopupMenu\n id={this.props.id}\n popupHasPin={false}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon as ReactElement)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon as ReactElement, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_reactIs","_globalObject","_utils","_identifiers","LayoutEvents","_interopRequireWildcard","_keyListener","_PopupMenu","_ThemeContext","_currentEnvironment","_ThemeFactory","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_getVisualStateDataAttributes","_Kebab2","_KebabIcon","_class","_Kebab","KebabDataTids","exports","caption","Kebab","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","_this$getProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","default","createElement","role","tabIndex","onClick","onKeyDown","onFocus","handleFocus","onBlur","handleBlur","className","cx","styles","kebab","theme","kebabSmall","kebabMedium","kebabLarge","opened","focused","props","renderIcon","e","someKeys","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","globalObject","requestAnimationFrame","keyListener","isTabPressed","_inheritsLoose2","_proto","prototype","componentDidMount","addListener","componentWillUnmount","render","_this2","ThemeContext","Consumer","Provider","value","ThemeFactory","create","popupMargin","kebabMargin","renderMain","_this$getProps2","positions","disableAnimations","onOpen","onClose","CommonWrapper","_extends2","rootNodeRef","setRootNode","getVisualStateDataAttributes","PopupMenu","id","popupHasPin","preventIconsOffset","onChangeMenuState","menuMaxHeight","popupMenuId","children","_this$getProps3","_this$getProps3$icon","icon","KebabIcon","isElement","isKonturIcon","_icon$props$size","_icon$props$color","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","React","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","isTestEnv","PropTypes","node","bool","oneOfType","string","number","func"],"sources":["Kebab.tsx"],"sourcesContent":["import React, { AriaAttributes, ReactElement, HTMLAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { SizeProp } from '../../lib/types/props';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Определяет список позиций, доступных для расположения выпадашки относительно `kebab`.\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n * @default ['bottom left', 'bottom right', 'top left', 'top right']. */\n positions?: PopupPositionsType[];\n positions2?: string;\n\n /** Задает максимальную высоту меню. */\n menuMaxHeight?: number | string;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Добавляет иконку слева. */\n icon?: React.ReactNode;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n/**\n * Кебаб-меню `Kebab` содержит действия с объектом.\n */\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.kebabMargin,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <PopupMenu\n id={this.props.id}\n popupHasPin={false}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon as ReactElement)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon as ReactElement, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- Базовый пример кебаб-меню.
1
+ ### Базовый пример
2
2
 
3
3
  ```jsx harmony
4
4
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -44,7 +44,7 @@ let Card = ({ name, post }) => (
44
44
  </Gapped>;
45
45
  ```
46
46
 
47
- Различные размеры кебаб-меню.
47
+ ### Размер
48
48
 
49
49
  ```jsx harmony
50
50
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -84,7 +84,7 @@ let Card = ({ title, size }) => (
84
84
  </Gapped>
85
85
  ```
86
86
 
87
- Кебаб-меню с выпадашкой слева.
87
+ ### Кебаб-меню с выпадашкой слева
88
88
 
89
89
  ```jsx harmony
90
90
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -121,7 +121,7 @@ let Card = ({ title }) => (
121
121
  <Card title="С выпадашкой слева" />
122
122
  ```
123
123
 
124
- С кастомным действием при открытии.
124
+ ### Кастомное действие при открытии
125
125
 
126
126
  ```jsx harmony
127
127
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -160,7 +160,7 @@ let Card = ({ title }) => (
160
160
  <Card title="С кастомным действием" />
161
161
  ```
162
162
 
163
- С иконками и включенным по-умолчанию автоматическим выравниванием текста.
163
+ ### Иконка и автовыравнивание
164
164
 
165
165
  ```jsx harmony
166
166
  import { Button, MenuHeader, MenuItem, MenuSeparator, Kebab } from '@skbkontur/react-ui';
@@ -174,7 +174,7 @@ import OkIcon from '@skbkontur/react-icons/Ok';
174
174
  </Kebab>;
175
175
  ```
176
176
 
177
- С иконками и отключенным автоматическим выравниванием текста.
177
+ ### Иконка и отключенное автовыравнивание
178
178
 
179
179
  ```jsx harmony
180
180
  import { Button, MenuHeader, MenuItem, MenuSeparator, Kebab } from '@skbkontur/react-ui';
@@ -188,7 +188,7 @@ import OkIcon from '@skbkontur/react-icons/Ok';
188
188
  </Kebab>
189
189
  ```
190
190
 
191
- Отключенное кебаб-меню.
191
+ ### Отключенное кебаб-меню
192
192
 
193
193
  ```jsx harmony
194
194
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -224,7 +224,7 @@ let Card = ({ title }) => (
224
224
  <Card title="Не нажимается :(" />
225
225
  ```
226
226
 
227
- Кебаб-меню с отключенной анимацией.
227
+ ### Отключенная анимация
228
228
 
229
229
  ```jsx harmony
230
230
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -260,7 +260,7 @@ let Card = ({ title }) => (
260
260
  <Card title="Без анимации" />
261
261
  ```
262
262
 
263
- Кебаб-меню с заданной высотой.
263
+ ### Высота
264
264
 
265
265
  ```jsx harmony
266
266
  import EditIcon from '@skbkontur/react-icons/Edit';
@@ -0,0 +1,28 @@
1
+ import * as KebabStories from './Kebab.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={KebabStories} />
6
+
7
+ # Kebab
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/actions/kebab-menu/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=230%3A2540)
12
+
13
+ <Description />
14
+
15
+ ## Базовый пример
16
+
17
+ <Primary />
18
+
19
+ ## Пропы
20
+
21
+ <details>
22
+ <summary>Открыть таблицу с пропами</summary>
23
+ <ArgTypes />
24
+ </details>
25
+
26
+ ## Примеры использования
27
+
28
+ <Stories title="" includePrimary={false} />
@@ -4,54 +4,30 @@ import { PolymorphicPropsWithoutRef } from '../../lib/types/polymorphic-componen
4
4
  import { ThemeIn } from '../../lib/theming/Theme';
5
5
  import { CommonProps } from '../../internal/CommonWrapper';
6
6
  export interface LinkInnerProps extends CommonProps {
7
- /**
8
- * Отключенное состояние.
9
- */
7
+ /** Делает компонент недоступным. */
10
8
  disabled?: boolean;
11
- /**
12
- * Добавляет ссылке иконку слева.
13
- */
9
+ /** Добавляет иконку слева. */
14
10
  icon?: React.ReactElement;
15
- /**
16
- * Добавляет ссылке иконку справа.
17
- */
11
+ /** Добавляет иконку справа. */
18
12
  rightIcon?: React.ReactElement;
19
- /**
20
- * Тема ссылки.
21
- */
13
+ /** Задает тему ссылки. */
22
14
  use?: 'default' | 'success' | 'danger' | 'grayed';
23
- /**
24
- * @ignore
25
- */
15
+ /** @ignore */
26
16
  _button?: boolean;
27
- /**
28
- * @ignore
29
- */
17
+ /** @ignore */
30
18
  _buttonOpened?: boolean;
31
- /**
32
- * HTML-атрибут `tabindex`.
33
- */
19
+ /** Задает HTML-атрибут `tabindex`. */
34
20
  tabIndex?: number;
35
- /**
36
- * Переводит ссылку в состояние загрузки.
37
- */
21
+ /** Переводит кнопку в состояние загрузки. */
38
22
  loading?: boolean;
39
- /**
40
- * Обычный объект с переменными темы.
41
- * Он будет объединён с темой из контекста.
42
- */
23
+ /** Задает объект с переменными темы. Он будет объединён с темой из контекста. */
43
24
  theme?: ThemeIn;
44
- /**
45
- * @ignore
46
- */
25
+ /** Задает состояние фокуса.
26
+ * @ignore */
47
27
  focused?: boolean;
48
- /**
49
- * Состояние валидации при ошибке.
50
- */
28
+ /** Переводит контрол в состояние валидации "ошибка". */
51
29
  error?: boolean;
52
- /**
53
- * Состояние валидации при предупреждении.
54
- */
30
+ /** Переводит контрол в состояние валидации "предупреждение". */
55
31
  warning?: boolean;
56
32
  }
57
33
  declare const LINK_DEFAULT_COMPONENT = "a";