@skbkontur/react-ui 0.0.0-1ee663e1d9 → 0.0.0-2309bff2d3

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 (1795) hide show
  1. package/CHANGELOG.md +336 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +9 -3
  3. package/cjs/components/Autocomplete/Autocomplete.js +24 -7
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Autocomplete/Autocomplete.md +17 -0
  6. package/cjs/components/Button/Button.d.ts +10 -3
  7. package/cjs/components/Button/Button.js +43 -8
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.md +68 -0
  10. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  11. package/cjs/components/Button/Button.mixins.js +55 -54
  12. package/cjs/components/Button/Button.mixins.js.map +1 -1
  13. package/cjs/components/Button/Button.styles.d.ts +3 -1
  14. package/cjs/components/Button/Button.styles.js +265 -220
  15. package/cjs/components/Button/Button.styles.js.map +1 -1
  16. package/cjs/components/Button/ButtonArrow.js +1 -1
  17. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  18. package/cjs/components/Button/ButtonIcon.d.ts +3 -2
  19. package/cjs/components/Button/ButtonIcon.js +2 -4
  20. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  21. package/cjs/components/Button/getInnerLinkTheme.js +10 -4
  22. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  23. package/cjs/components/Calendar/Calendar.d.ts +1 -0
  24. package/cjs/components/Calendar/Calendar.js +9 -8
  25. package/cjs/components/Calendar/Calendar.js.map +1 -1
  26. package/cjs/components/Calendar/Calendar.md +14 -3
  27. package/cjs/components/Calendar/Calendar.styles.js +1 -2
  28. package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
  29. package/cjs/components/Calendar/DayCellView.js +9 -2
  30. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  31. package/cjs/components/Calendar/DayCellView.styles.d.ts +1 -1
  32. package/cjs/components/Calendar/DayCellView.styles.js +4 -4
  33. package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
  34. package/cjs/components/Calendar/locale/locales/en.js +3 -1
  35. package/cjs/components/Calendar/locale/locales/en.js.map +1 -1
  36. package/cjs/components/Calendar/locale/locales/ru.js +3 -1
  37. package/cjs/components/Calendar/locale/locales/ru.js.map +1 -1
  38. package/cjs/components/Calendar/locale/types.d.ts +4 -0
  39. package/cjs/components/Checkbox/Checkbox.d.ts +15 -5
  40. package/cjs/components/Checkbox/Checkbox.js +81 -24
  41. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  42. package/cjs/components/Checkbox/Checkbox.md +18 -0
  43. package/cjs/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  44. package/cjs/components/Checkbox/Checkbox.mixins.js +37 -0
  45. package/cjs/components/Checkbox/Checkbox.mixins.js.map +1 -0
  46. package/cjs/components/Checkbox/Checkbox.styles.d.ts +6 -0
  47. package/cjs/components/Checkbox/Checkbox.styles.js +95 -34
  48. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  49. package/cjs/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  50. package/cjs/components/Clickable/ArrowLeftIcon.js +15 -0
  51. package/cjs/components/Clickable/ArrowLeftIcon.js.map +1 -0
  52. package/cjs/components/Clickable/ArrowRightIcon.d.ts +3 -0
  53. package/cjs/components/Clickable/ArrowRightIcon.js +15 -0
  54. package/cjs/components/Clickable/ArrowRightIcon.js.map +1 -0
  55. package/cjs/components/Clickable/Clickable.d.ts +95 -0
  56. package/cjs/components/Clickable/Clickable.js +248 -0
  57. package/cjs/components/Clickable/Clickable.js.map +1 -0
  58. package/cjs/components/Clickable/Clickable.md +244 -0
  59. package/cjs/components/Clickable/Clickable.styles.d.ts +11 -0
  60. package/cjs/components/Clickable/Clickable.styles.js +31 -0
  61. package/cjs/components/Clickable/Clickable.styles.js.map +1 -0
  62. package/cjs/components/Clickable/ClickableButton.d.ts +5 -0
  63. package/cjs/components/Clickable/ClickableButton.js +43 -0
  64. package/cjs/components/Clickable/ClickableButton.js.map +1 -0
  65. package/cjs/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  66. package/cjs/components/Clickable/ClickableButton.mixins.js +134 -0
  67. package/cjs/components/Clickable/ClickableButton.mixins.js.map +1 -0
  68. package/cjs/components/Clickable/ClickableButton.styles.d.ts +63 -0
  69. package/cjs/components/Clickable/ClickableButton.styles.js +604 -0
  70. package/cjs/components/Clickable/ClickableButton.styles.js.map +1 -0
  71. package/cjs/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  72. package/cjs/components/Clickable/ClickableButtonArrow.js +32 -0
  73. package/cjs/components/Clickable/ClickableButtonArrow.js.map +1 -0
  74. package/cjs/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  75. package/cjs/components/Clickable/ClickableButtonArrow.styles.js +40 -0
  76. package/cjs/components/Clickable/ClickableButtonArrow.styles.js.map +1 -0
  77. package/cjs/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  78. package/cjs/components/Clickable/ClickableButtonCaption.js +57 -0
  79. package/cjs/components/Clickable/ClickableButtonCaption.js.map +1 -0
  80. package/cjs/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  81. package/cjs/components/Clickable/ClickableButtonCaption.styles.js +23 -0
  82. package/cjs/components/Clickable/ClickableButtonCaption.styles.js.map +1 -0
  83. package/cjs/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  84. package/cjs/components/Clickable/ClickableButtonIcon.js +64 -0
  85. package/cjs/components/Clickable/ClickableButtonIcon.js.map +1 -0
  86. package/cjs/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  87. package/cjs/components/Clickable/ClickableButtonIcon.styles.js +108 -0
  88. package/cjs/components/Clickable/ClickableButtonIcon.styles.js.map +1 -0
  89. package/cjs/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  90. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js +19 -0
  91. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js.map +1 -0
  92. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  93. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js +17 -0
  94. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js.map +1 -0
  95. package/cjs/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  96. package/cjs/components/Clickable/ClickableButtonOutline.js +36 -0
  97. package/cjs/components/Clickable/ClickableButtonOutline.js.map +1 -0
  98. package/cjs/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  99. package/cjs/components/Clickable/ClickableButtonOutline.styles.js +25 -0
  100. package/cjs/components/Clickable/ClickableButtonOutline.styles.js.map +1 -0
  101. package/cjs/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  102. package/cjs/components/Clickable/ClickableButtonWrapper.js +27 -0
  103. package/cjs/components/Clickable/ClickableButtonWrapper.js.map +1 -0
  104. package/cjs/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  105. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js +27 -0
  106. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js.map +1 -0
  107. package/cjs/components/Clickable/ClickableLink.d.ts +5 -0
  108. package/cjs/components/Clickable/ClickableLink.js +28 -0
  109. package/cjs/components/Clickable/ClickableLink.js.map +1 -0
  110. package/cjs/components/Clickable/ClickableLink.styles.d.ts +21 -0
  111. package/cjs/components/Clickable/ClickableLink.styles.js +134 -0
  112. package/cjs/components/Clickable/ClickableLink.styles.js.map +1 -0
  113. package/cjs/components/Clickable/ClickableLinkChild.d.ts +7 -0
  114. package/cjs/components/Clickable/ClickableLinkChild.js +40 -0
  115. package/cjs/components/Clickable/ClickableLinkChild.js.map +1 -0
  116. package/cjs/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  117. package/cjs/components/Clickable/ClickableLinkChild.styles.js +42 -0
  118. package/cjs/components/Clickable/ClickableLinkChild.styles.js.map +1 -0
  119. package/cjs/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  120. package/cjs/components/Clickable/ClickableLinkIcon.js +30 -0
  121. package/cjs/components/Clickable/ClickableLinkIcon.js.map +1 -0
  122. package/cjs/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  123. package/cjs/components/Clickable/ClickableLinkIcon.styles.js +20 -0
  124. package/cjs/components/Clickable/ClickableLinkIcon.styles.js.map +1 -0
  125. package/cjs/components/Clickable/index.d.ts +1 -0
  126. package/cjs/components/Clickable/index.js +1 -0
  127. package/cjs/components/Clickable/index.js.map +1 -0
  128. package/cjs/components/Clickable/utils.d.ts +7 -0
  129. package/cjs/components/Clickable/utils.js +59 -0
  130. package/cjs/components/Clickable/utils.js.map +1 -0
  131. package/cjs/components/ComboBox/ComboBox.d.ts +6 -8
  132. package/cjs/components/ComboBox/ComboBox.js +2 -1
  133. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  134. package/cjs/components/ComboBox/ComboBox.md +51 -5
  135. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  136. package/cjs/components/CurrencyInput/CurrencyHelper.js +21 -6
  137. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  138. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  139. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -1
  140. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  141. package/cjs/components/DateInput/DateFragmentsView.js +2 -2
  142. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  143. package/cjs/components/DateInput/DateInput.d.ts +5 -1
  144. package/cjs/components/DateInput/DateInput.js +26 -9
  145. package/cjs/components/DateInput/DateInput.js.map +1 -1
  146. package/cjs/components/DateInput/helpers/SelectionHelpers.js +9 -10
  147. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  148. package/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  149. package/cjs/components/DatePicker/DatePicker.js +13 -2
  150. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  151. package/cjs/components/DatePicker/DatePicker.md +15 -0
  152. package/cjs/components/DatePicker/locale/locales/en.js +4 -1
  153. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  154. package/cjs/components/DatePicker/locale/locales/ru.js +4 -1
  155. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  156. package/cjs/components/DatePicker/locale/types.d.ts +3 -1
  157. package/cjs/components/Dropdown/Dropdown.d.ts +4 -7
  158. package/cjs/components/Dropdown/Dropdown.js +4 -3
  159. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  160. package/cjs/components/Dropdown/Dropdown.md +33 -0
  161. package/cjs/components/Dropdown/getDropdownTheme.js +32 -2
  162. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  163. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  164. package/cjs/components/DropdownMenu/DropdownMenu.js +6 -1
  165. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  166. package/cjs/components/DropdownMenu/DropdownMenu.md +28 -0
  167. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js +5 -1
  168. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
  169. package/cjs/components/FileUploader/FileUploader.d.ts +6 -2
  170. package/cjs/components/FileUploader/FileUploader.js +9 -6
  171. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  172. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
  173. package/cjs/components/FileUploader/FileUploader.styles.js +13 -4
  174. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  175. package/cjs/components/FxInput/FxInput.d.ts +4 -2
  176. package/cjs/components/FxInput/FxInput.js +6 -1
  177. package/cjs/components/FxInput/FxInput.js.map +1 -1
  178. package/cjs/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  179. package/cjs/components/FxInput/FxInputRestoreBtn.js +7 -2
  180. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  181. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  182. package/cjs/components/GlobalLoader/GlobalLoader.js +11 -12
  183. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  184. package/cjs/components/GlobalLoader/GlobalLoaderView.js +2 -2
  185. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  186. package/cjs/components/Group/Group.js +7 -5
  187. package/cjs/components/Group/Group.js.map +1 -1
  188. package/cjs/components/Group/Group.md +24 -0
  189. package/cjs/components/Hint/Hint.js +5 -6
  190. package/cjs/components/Hint/Hint.js.map +1 -1
  191. package/cjs/components/Input/Input.d.ts +28 -11
  192. package/cjs/components/Input/Input.js +50 -25
  193. package/cjs/components/Input/Input.js.map +1 -1
  194. package/cjs/components/Input/Input.styles.js +3 -2
  195. package/cjs/components/Input/Input.styles.js.map +1 -1
  196. package/cjs/components/Input/Input.typings.d.ts +7 -0
  197. package/cjs/components/Input/Input.typings.js +1 -0
  198. package/cjs/components/Input/Input.typings.js.map +1 -0
  199. package/cjs/components/Input/InputLayout/InputLayout.d.ts +3 -2
  200. package/cjs/components/Input/InputLayout/InputLayout.js +4 -3
  201. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  202. package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
  203. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  204. package/cjs/components/Input/InputLayout/InputLayoutAside.js +2 -8
  205. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  206. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +5 -4
  207. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  208. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  209. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
  210. package/cjs/components/Input/index.d.ts +1 -0
  211. package/cjs/components/Input/index.js +2 -1
  212. package/cjs/components/Input/index.js.map +1 -1
  213. package/cjs/components/Kebab/Kebab.d.ts +3 -2
  214. package/cjs/components/Kebab/Kebab.js +10 -2
  215. package/cjs/components/Kebab/Kebab.js.map +1 -1
  216. package/cjs/components/Kebab/Kebab.md +28 -0
  217. package/cjs/components/Link/Link.d.ts +2 -2
  218. package/cjs/components/Link/Link.js +26 -6
  219. package/cjs/components/Link/Link.js.map +1 -1
  220. package/cjs/components/Link/Link.md +69 -0
  221. package/cjs/components/Link/Link.mixins.d.ts +1 -2
  222. package/cjs/components/Link/Link.mixins.js +5 -16
  223. package/cjs/components/Link/Link.mixins.js.map +1 -1
  224. package/cjs/components/Link/Link.styles.d.ts +5 -0
  225. package/cjs/components/Link/Link.styles.js +104 -37
  226. package/cjs/components/Link/Link.styles.js.map +1 -1
  227. package/cjs/components/Loader/Loader.js +8 -8
  228. package/cjs/components/Loader/Loader.js.map +1 -1
  229. package/cjs/components/MaskedInput/MaskedInput.d.ts +24 -0
  230. package/cjs/components/MaskedInput/MaskedInput.js +78 -0
  231. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -0
  232. package/cjs/components/MaskedInput/MaskedInput.md +21 -0
  233. package/cjs/components/MaskedInput/index.js.map +1 -0
  234. package/cjs/components/MenuFooter/MenuFooter.d.ts +30 -0
  235. package/cjs/components/MenuFooter/MenuFooter.js +83 -0
  236. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -0
  237. package/cjs/components/MenuFooter/MenuFooter.md +27 -0
  238. package/cjs/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  239. package/cjs/components/MenuFooter/MenuFooter.mixins.js +26 -0
  240. package/cjs/components/MenuFooter/MenuFooter.mixins.js.map +1 -0
  241. package/cjs/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  242. package/cjs/components/MenuFooter/MenuFooter.styles.js +65 -0
  243. package/cjs/components/MenuFooter/MenuFooter.styles.js.map +1 -0
  244. package/cjs/components/MenuFooter/index.d.ts +1 -0
  245. package/cjs/components/MenuFooter/index.js +1 -0
  246. package/cjs/{internal/MaskedInput → components/MenuFooter}/index.js.map +1 -1
  247. package/cjs/components/MenuHeader/MenuHeader.d.ts +8 -1
  248. package/cjs/components/MenuHeader/MenuHeader.js +37 -4
  249. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  250. package/cjs/components/MenuHeader/MenuHeader.md +12 -0
  251. package/cjs/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  252. package/cjs/components/MenuHeader/MenuHeader.mixins.js +26 -0
  253. package/cjs/components/MenuHeader/MenuHeader.mixins.js.map +1 -0
  254. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  255. package/cjs/components/MenuHeader/MenuHeader.styles.js +54 -12
  256. package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  257. package/cjs/components/MenuItem/MenuItem.d.ts +34 -4
  258. package/cjs/components/MenuItem/MenuItem.js +170 -21
  259. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  260. package/cjs/components/MenuItem/MenuItem.md +32 -6
  261. package/cjs/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  262. package/cjs/components/MenuItem/MenuItem.mixins.js +42 -0
  263. package/cjs/components/MenuItem/MenuItem.mixins.js.map +1 -0
  264. package/cjs/components/MenuItem/MenuItem.styles.d.ts +9 -1
  265. package/cjs/components/MenuItem/MenuItem.styles.js +80 -27
  266. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  267. package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
  268. package/cjs/components/MiniModal/MiniModal.js +47 -0
  269. package/cjs/components/MiniModal/MiniModal.js.map +1 -0
  270. package/cjs/components/MiniModal/MiniModal.md +233 -0
  271. package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
  272. package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
  273. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
  274. package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
  275. package/cjs/components/MiniModal/MiniModalBody.js +24 -0
  276. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
  277. package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
  278. package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
  279. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
  280. package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
  281. package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
  282. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
  283. package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
  284. package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
  285. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
  286. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  287. package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
  288. package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
  289. package/cjs/components/MiniModal/index.d.ts +5 -0
  290. package/cjs/components/MiniModal/index.js +5 -0
  291. package/cjs/components/MiniModal/index.js.map +1 -0
  292. package/cjs/components/Modal/Modal.d.ts +6 -0
  293. package/cjs/components/Modal/Modal.js +15 -2
  294. package/cjs/components/Modal/Modal.js.map +1 -1
  295. package/cjs/components/Modal/Modal.md +16 -0
  296. package/cjs/components/Modal/Modal.styles.d.ts +5 -0
  297. package/cjs/components/Modal/Modal.styles.js +56 -39
  298. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  299. package/cjs/components/Modal/ModalClose.js +7 -2
  300. package/cjs/components/Modal/ModalClose.js.map +1 -1
  301. package/cjs/components/Modal/ModalHeader.js +1 -1
  302. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  303. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  304. package/cjs/components/Modal/ModalSeparator.js +5 -0
  305. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  306. package/cjs/components/Modal/getModalTheme.d.ts +2 -2
  307. package/cjs/components/Modal/getModalTheme.js +6 -2
  308. package/cjs/components/Modal/getModalTheme.js.map +1 -1
  309. package/cjs/components/Modal/locale/index.d.ts +4 -0
  310. package/cjs/components/Modal/locale/index.js +11 -0
  311. package/cjs/components/Modal/locale/index.js.map +1 -0
  312. package/cjs/components/Modal/locale/locales/en.d.ts +2 -0
  313. package/cjs/components/Modal/locale/locales/en.js +4 -0
  314. package/cjs/components/Modal/locale/locales/en.js.map +1 -0
  315. package/cjs/components/Modal/locale/locales/ru.d.ts +2 -0
  316. package/cjs/components/Modal/locale/locales/ru.js +4 -0
  317. package/cjs/components/Modal/locale/locales/ru.js.map +1 -0
  318. package/cjs/components/Modal/locale/types.d.ts +3 -0
  319. package/cjs/components/Modal/locale/types.js +1 -0
  320. package/cjs/components/Modal/locale/types.js.map +1 -0
  321. package/cjs/components/Paging/NavigationHelper.js +2 -1
  322. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  323. package/cjs/components/Paging/Paging.js +17 -16
  324. package/cjs/components/Paging/Paging.js.map +1 -1
  325. package/cjs/components/Paging/Paging.styles.d.ts +0 -1
  326. package/cjs/components/Paging/Paging.styles.js +5 -10
  327. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  328. package/cjs/components/PasswordInput/PasswordInput.d.ts +3 -2
  329. package/cjs/components/PasswordInput/PasswordInput.js +17 -7
  330. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  331. package/cjs/components/PasswordInput/PasswordInput.md +19 -0
  332. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  333. package/cjs/components/PasswordInput/PasswordInput.styles.js +11 -1
  334. package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  335. package/cjs/components/PasswordInput/locale/index.d.ts +4 -0
  336. package/cjs/components/PasswordInput/locale/index.js +11 -0
  337. package/cjs/components/PasswordInput/locale/index.js.map +1 -0
  338. package/cjs/components/PasswordInput/locale/locales/en.d.ts +2 -0
  339. package/cjs/components/PasswordInput/locale/locales/en.js +5 -0
  340. package/cjs/components/PasswordInput/locale/locales/en.js.map +1 -0
  341. package/cjs/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  342. package/cjs/components/PasswordInput/locale/locales/ru.js +5 -0
  343. package/cjs/components/PasswordInput/locale/locales/ru.js.map +1 -0
  344. package/cjs/components/PasswordInput/locale/types.d.ts +4 -0
  345. package/cjs/components/PasswordInput/locale/types.js +1 -0
  346. package/cjs/components/PasswordInput/locale/types.js.map +1 -0
  347. package/cjs/components/Radio/Radio.d.ts +15 -3
  348. package/cjs/components/Radio/Radio.js +60 -7
  349. package/cjs/components/Radio/Radio.js.map +1 -1
  350. package/cjs/components/Radio/Radio.md +18 -0
  351. package/cjs/components/Radio/Radio.mixins.d.ts +5 -0
  352. package/cjs/components/Radio/Radio.mixins.js +71 -0
  353. package/cjs/components/Radio/Radio.mixins.js.map +1 -0
  354. package/cjs/components/Radio/Radio.styles.d.ts +9 -0
  355. package/cjs/components/Radio/Radio.styles.js +93 -57
  356. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  357. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
  358. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  359. package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
  360. package/cjs/components/ScrollContainer/ScrollBar.js +15 -46
  361. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  362. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
  363. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  364. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +21 -5
  365. package/cjs/components/ScrollContainer/ScrollContainer.js +103 -21
  366. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  367. package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
  368. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  369. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
  370. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  371. package/cjs/components/Select/Item.d.ts +1 -0
  372. package/cjs/components/Select/Item.js +2 -1
  373. package/cjs/components/Select/Item.js.map +1 -1
  374. package/cjs/components/Select/Select.d.ts +14 -10
  375. package/cjs/components/Select/Select.js +55 -18
  376. package/cjs/components/Select/Select.js.map +1 -1
  377. package/cjs/components/Select/Select.md +29 -0
  378. package/cjs/components/Select/Select.styles.js +3 -2
  379. package/cjs/components/Select/Select.styles.js.map +1 -1
  380. package/cjs/components/Select/selectTheme.js +4 -1
  381. package/cjs/components/Select/selectTheme.js.map +1 -1
  382. package/cjs/components/SidePage/SidePage.d.ts +3 -1
  383. package/cjs/components/SidePage/SidePage.js +40 -6
  384. package/cjs/components/SidePage/SidePage.js.map +1 -1
  385. package/cjs/components/SidePage/SidePage.md +16 -0
  386. package/cjs/components/SidePage/SidePageCloseButton.d.ts +1 -0
  387. package/cjs/components/SidePage/SidePageCloseButton.js +48 -0
  388. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -0
  389. package/cjs/components/SidePage/SidePageHeader.d.ts +1 -4
  390. package/cjs/components/SidePage/SidePageHeader.js +8 -41
  391. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  392. package/cjs/components/SidePage/locale/index.d.ts +4 -0
  393. package/cjs/components/SidePage/locale/index.js +11 -0
  394. package/cjs/components/SidePage/locale/index.js.map +1 -0
  395. package/cjs/components/SidePage/locale/locales/en.d.ts +2 -0
  396. package/cjs/components/SidePage/locale/locales/en.js +4 -0
  397. package/cjs/components/SidePage/locale/locales/en.js.map +1 -0
  398. package/cjs/components/SidePage/locale/locales/ru.d.ts +2 -0
  399. package/cjs/components/SidePage/locale/locales/ru.js +4 -0
  400. package/cjs/components/SidePage/locale/locales/ru.js.map +1 -0
  401. package/cjs/components/SidePage/locale/types.d.ts +3 -0
  402. package/cjs/components/SidePage/locale/types.js +1 -0
  403. package/cjs/components/SidePage/locale/types.js.map +1 -0
  404. package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
  405. package/cjs/components/SingleToast/SingleToast.js +20 -0
  406. package/cjs/components/SingleToast/SingleToast.js.map +1 -0
  407. package/cjs/components/SingleToast/SingleToast.md +35 -0
  408. package/cjs/components/SingleToast/index.d.ts +1 -0
  409. package/cjs/components/SingleToast/index.js +1 -0
  410. package/cjs/components/SingleToast/index.js.map +1 -0
  411. package/cjs/components/Spinner/Spinner.d.ts +1 -0
  412. package/cjs/components/Spinner/Spinner.js +16 -1
  413. package/cjs/components/Spinner/Spinner.js.map +1 -1
  414. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
  415. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  416. package/cjs/components/Sticky/Sticky.js +7 -8
  417. package/cjs/components/Sticky/Sticky.js.map +1 -1
  418. package/cjs/components/Switcher/Switcher.d.ts +13 -8
  419. package/cjs/components/Switcher/Switcher.js +16 -5
  420. package/cjs/components/Switcher/Switcher.js.map +1 -1
  421. package/cjs/components/Tabs/Indicator.js +3 -1
  422. package/cjs/components/Tabs/Indicator.js.map +1 -1
  423. package/cjs/components/Tabs/Tab.d.ts +17 -36
  424. package/cjs/components/Tabs/Tab.js +26 -22
  425. package/cjs/components/Tabs/Tab.js.map +1 -1
  426. package/cjs/components/Tabs/Tab.md +71 -0
  427. package/cjs/components/Tabs/Tab.styles.d.ts +9 -3
  428. package/cjs/components/Tabs/Tab.styles.js +106 -68
  429. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  430. package/cjs/components/Tabs/Tabs.d.ts +16 -15
  431. package/cjs/components/Tabs/Tabs.js +15 -5
  432. package/cjs/components/Tabs/Tabs.js.map +1 -1
  433. package/cjs/components/Tabs/Tabs.md +39 -22
  434. package/cjs/components/Tabs/Tabs.styles.d.ts +3 -1
  435. package/cjs/components/Tabs/Tabs.styles.js +23 -7
  436. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  437. package/cjs/components/Tabs/TabsContext.d.ts +2 -0
  438. package/cjs/components/Tabs/TabsContext.js +3 -0
  439. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  440. package/cjs/components/Tabs/helpers.d.ts +6 -0
  441. package/cjs/components/Tabs/helpers.js +31 -0
  442. package/cjs/components/Tabs/helpers.js.map +1 -0
  443. package/cjs/components/Textarea/Textarea.d.ts +13 -3
  444. package/cjs/components/Textarea/Textarea.js +85 -18
  445. package/cjs/components/Textarea/Textarea.js.map +1 -1
  446. package/cjs/components/Textarea/Textarea.md +12 -0
  447. package/cjs/components/Textarea/Textarea.mixins.d.ts +3 -0
  448. package/cjs/components/Textarea/Textarea.mixins.js +22 -0
  449. package/cjs/components/Textarea/Textarea.mixins.js.map +1 -0
  450. package/cjs/components/Textarea/Textarea.styles.d.ts +10 -1
  451. package/cjs/components/Textarea/Textarea.styles.js +64 -23
  452. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  453. package/cjs/components/Textarea/TextareaCounter.d.ts +3 -1
  454. package/cjs/components/Textarea/TextareaCounter.js +19 -4
  455. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  456. package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
  457. package/cjs/components/Textarea/TextareaHelpers.js +7 -2
  458. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  459. package/cjs/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  460. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js +20 -0
  461. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js.map +1 -0
  462. package/cjs/components/Toast/Toast.d.ts +13 -5
  463. package/cjs/components/Toast/Toast.js +29 -10
  464. package/cjs/components/Toast/Toast.js.map +1 -1
  465. package/cjs/components/Toast/Toast.md +0 -105
  466. package/cjs/components/Toast/ToastStatic.js +4 -4
  467. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  468. package/cjs/components/Toast/ToastView.d.ts +6 -6
  469. package/cjs/components/Toast/ToastView.js +19 -6
  470. package/cjs/components/Toast/ToastView.js.map +1 -1
  471. package/cjs/components/Toast/ToastView.styles.js +5 -2
  472. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  473. package/cjs/components/Toast/locale/index.d.ts +4 -0
  474. package/cjs/components/Toast/locale/index.js +11 -0
  475. package/cjs/components/Toast/locale/index.js.map +1 -0
  476. package/cjs/components/Toast/locale/locales/en.d.ts +2 -0
  477. package/cjs/components/Toast/locale/locales/en.js +4 -0
  478. package/cjs/components/Toast/locale/locales/en.js.map +1 -0
  479. package/cjs/components/Toast/locale/locales/ru.d.ts +2 -0
  480. package/cjs/components/Toast/locale/locales/ru.js +4 -0
  481. package/cjs/components/Toast/locale/locales/ru.js.map +1 -0
  482. package/cjs/components/Toast/locale/types.d.ts +3 -0
  483. package/cjs/components/Toast/locale/types.js +1 -0
  484. package/cjs/components/Toast/locale/types.js.map +1 -0
  485. package/cjs/components/Toggle/Toggle.d.ts +16 -6
  486. package/cjs/components/Toggle/Toggle.js +112 -3
  487. package/cjs/components/Toggle/Toggle.js.map +1 -1
  488. package/cjs/components/Toggle/Toggle.md +18 -2
  489. package/cjs/components/Toggle/Toggle.mixins.d.ts +7 -0
  490. package/cjs/components/Toggle/Toggle.mixins.js +90 -0
  491. package/cjs/components/Toggle/Toggle.mixins.js.map +1 -0
  492. package/cjs/components/Toggle/Toggle.styles.d.ts +21 -1
  493. package/cjs/components/Toggle/Toggle.styles.js +172 -56
  494. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  495. package/cjs/components/Token/Token.d.ts +2 -5
  496. package/cjs/components/Token/Token.js +10 -8
  497. package/cjs/components/Token/Token.js.map +1 -1
  498. package/cjs/components/Token/locale/index.d.ts +4 -0
  499. package/cjs/components/Token/locale/index.js +11 -0
  500. package/cjs/components/Token/locale/index.js.map +1 -0
  501. package/cjs/components/Token/locale/locales/en.d.ts +2 -0
  502. package/cjs/components/Token/locale/locales/en.js +4 -0
  503. package/cjs/components/Token/locale/locales/en.js.map +1 -0
  504. package/cjs/components/Token/locale/locales/ru.d.ts +2 -0
  505. package/cjs/components/Token/locale/locales/ru.js +4 -0
  506. package/cjs/components/Token/locale/locales/ru.js.map +1 -0
  507. package/cjs/components/Token/locale/types.d.ts +3 -0
  508. package/cjs/components/Token/locale/types.js +1 -0
  509. package/cjs/components/Token/locale/types.js.map +1 -0
  510. package/cjs/components/TokenInput/TokenInput.d.ts +5 -5
  511. package/cjs/components/TokenInput/TokenInput.js +52 -17
  512. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  513. package/cjs/components/TokenInput/TokenInput.md +97 -35
  514. package/cjs/components/TokenInput/TokenInput.styles.js +2 -1
  515. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  516. package/cjs/components/TokenInput/TokenInputMenu.d.ts +7 -0
  517. package/cjs/components/TokenInput/TokenInputMenu.js +9 -1
  518. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  519. package/cjs/components/Tooltip/Tooltip.d.ts +6 -1
  520. package/cjs/components/Tooltip/Tooltip.js +15 -7
  521. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  522. package/cjs/components/Tooltip/Tooltip.md +24 -0
  523. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  524. package/cjs/components/TooltipMenu/TooltipMenu.js +10 -2
  525. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  526. package/cjs/components/TooltipMenu/TooltipMenu.md +28 -0
  527. package/cjs/hooks/useDrop.js +3 -2
  528. package/cjs/hooks/useDrop.js.map +1 -1
  529. package/cjs/index.d.ts +6 -0
  530. package/cjs/index.js +6 -0
  531. package/cjs/index.js.map +1 -1
  532. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  533. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +5 -1
  534. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  535. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +2 -1
  536. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
  537. package/cjs/internal/ComponentCombinator.d.ts +7 -8
  538. package/cjs/internal/ComponentCombinator.js +2 -5
  539. package/cjs/internal/ComponentCombinator.js.map +1 -1
  540. package/cjs/internal/ComponentTable.d.ts +7 -19
  541. package/cjs/internal/ComponentTable.js +50 -77
  542. package/cjs/internal/ComponentTable.js.map +1 -1
  543. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  544. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +37 -2
  545. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  546. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  547. package/cjs/internal/CustomComboBox/ComboBoxView.js +32 -34
  548. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  549. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  550. package/cjs/internal/CustomComboBox/CustomComboBox.js +25 -15
  551. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  552. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  553. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +7 -2
  554. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  555. package/cjs/internal/DateSelect/DateSelect.d.ts +2 -0
  556. package/cjs/internal/DateSelect/DateSelect.js +51 -19
  557. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  558. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  559. package/cjs/internal/DateSelect/DateSelect.styles.js +26 -4
  560. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  561. package/cjs/internal/DateSelect/locale/index.d.ts +4 -0
  562. package/cjs/internal/DateSelect/locale/index.js +11 -0
  563. package/cjs/internal/DateSelect/locale/index.js.map +1 -0
  564. package/cjs/internal/DateSelect/locale/locales/en.d.ts +2 -0
  565. package/cjs/internal/DateSelect/locale/locales/en.js +6 -0
  566. package/cjs/internal/DateSelect/locale/locales/en.js.map +1 -0
  567. package/cjs/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  568. package/cjs/internal/DateSelect/locale/locales/ru.js +6 -0
  569. package/cjs/internal/DateSelect/locale/locales/ru.js.map +1 -0
  570. package/cjs/internal/DateSelect/locale/types.d.ts +5 -0
  571. package/cjs/internal/DateSelect/locale/types.js +1 -0
  572. package/cjs/internal/DateSelect/locale/types.js.map +1 -0
  573. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +3 -3
  574. package/cjs/internal/DropdownContainer/DropdownContainer.js +20 -15
  575. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  576. package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
  577. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
  578. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  579. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +11 -8
  580. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  581. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  582. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +1 -1
  583. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  584. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  585. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -1
  586. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  587. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  588. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -1
  589. package/cjs/internal/FocusTrap/FocusTrap.js +7 -6
  590. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  591. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +20 -27
  592. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  593. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  594. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  595. package/cjs/internal/InputLikeText/InputLikeText.d.ts +1 -0
  596. package/cjs/internal/InputLikeText/InputLikeText.js +31 -19
  597. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  598. package/cjs/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  599. package/cjs/internal/{MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput.js} +11 -8
  600. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  601. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -0
  602. package/cjs/internal/InternalMaskedInput/index.d.ts +1 -0
  603. package/cjs/internal/InternalMaskedInput/index.js +1 -0
  604. package/cjs/internal/InternalMaskedInput/index.js.map +1 -0
  605. package/cjs/internal/InternalMenu/InternalMenu.d.ts +13 -4
  606. package/cjs/internal/InternalMenu/InternalMenu.js +22 -11
  607. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  608. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  609. package/cjs/internal/InternalMenu/InternalMenu.styles.js +13 -7
  610. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  611. package/cjs/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  612. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js +9 -0
  613. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js.map +1 -0
  614. package/cjs/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  615. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  616. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js +52 -0
  617. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js.map +1 -0
  618. package/cjs/internal/MaskedInputElement/MaskedInputElement.js +196 -0
  619. package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -0
  620. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +29 -0
  621. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -0
  622. package/cjs/internal/MaskedInputElement/index.d.ts +1 -0
  623. package/cjs/internal/MaskedInputElement/index.js +1 -0
  624. package/cjs/internal/MaskedInputElement/index.js.map +1 -0
  625. package/cjs/internal/Menu/Menu.d.ts +48 -8
  626. package/cjs/internal/Menu/Menu.js +347 -86
  627. package/cjs/internal/Menu/Menu.js.map +1 -1
  628. package/cjs/internal/Menu/Menu.styles.d.ts +6 -1
  629. package/cjs/internal/Menu/Menu.styles.js +42 -8
  630. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  631. package/cjs/internal/Menu/MenuContext.d.ts +10 -0
  632. package/cjs/internal/Menu/MenuContext.js +16 -0
  633. package/cjs/internal/Menu/MenuContext.js.map +1 -0
  634. package/cjs/internal/Menu/MenuNavigation.d.ts +26 -0
  635. package/cjs/internal/Menu/MenuNavigation.js +107 -0
  636. package/cjs/internal/Menu/MenuNavigation.js.map +1 -0
  637. package/cjs/internal/Menu/isActiveElement.js +1 -1
  638. package/cjs/internal/Menu/isActiveElement.js.map +1 -1
  639. package/cjs/internal/MenuMessage/MenuMessage.d.ts +3 -1
  640. package/cjs/internal/MenuMessage/MenuMessage.js +18 -3
  641. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  642. package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  643. package/cjs/internal/MenuMessage/MenuMessage.styles.js +21 -6
  644. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  645. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -2
  646. package/cjs/internal/MobilePopup/MobilePopup.js +1 -1
  647. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  648. package/cjs/internal/Popup/Popup.d.ts +7 -2
  649. package/cjs/internal/Popup/Popup.js +25 -11
  650. package/cjs/internal/Popup/Popup.js.map +1 -1
  651. package/cjs/internal/Popup/PopupHelper.js +8 -7
  652. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  653. package/cjs/internal/PopupMenu/PopupMenu.d.ts +5 -2
  654. package/cjs/internal/PopupMenu/PopupMenu.js +36 -7
  655. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  656. package/cjs/internal/RenderContainer/RenderContainer.d.ts +0 -1
  657. package/cjs/internal/RenderContainer/RenderContainer.js +18 -27
  658. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  659. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
  660. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  661. package/cjs/internal/RenderLayer/RenderLayer.js +4 -3
  662. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  663. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  664. package/cjs/internal/ThemePlayground/SizesGroup.js +1 -0
  665. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  666. package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
  667. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  668. package/cjs/internal/ThemePlayground/constants.js +1 -0
  669. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  670. package/cjs/internal/ThemePlayground/darkTheme.d.ts +1 -1
  671. package/cjs/internal/ThemePlayground/darkTheme.js +1 -1
  672. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  673. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  674. package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
  675. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  676. package/cjs/internal/ZIndex/ZIndex.js +2 -3
  677. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  678. package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
  679. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  680. package/cjs/internal/icons/16px/index.d.ts +19 -19
  681. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  682. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  683. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  684. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  685. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  686. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  687. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  688. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  689. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  690. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  691. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  692. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  693. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  694. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  695. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  696. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  697. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  698. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  699. package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
  700. package/cjs/internal/icons2022/BaseIcon.js +3 -7
  701. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  702. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  703. package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
  704. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
  705. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  706. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  707. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  708. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  709. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  710. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  711. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  712. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  713. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  714. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  715. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  716. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  717. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  718. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  719. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  720. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  721. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
  722. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
  723. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  724. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  725. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  726. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  727. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  728. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  729. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  730. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  731. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  732. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  733. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  734. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  735. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  736. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  737. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  738. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  739. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  740. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  741. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  742. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  743. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  744. package/cjs/internal/themes/DarkTheme.d.ts +2 -0
  745. package/cjs/internal/themes/DarkTheme.js +11 -3
  746. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  747. package/cjs/internal/themes/DefaultTheme.d.ts +346 -20
  748. package/cjs/internal/themes/DefaultTheme.js +729 -92
  749. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  750. package/cjs/internal/themes/Theme2022.d.ts +46 -7
  751. package/cjs/internal/themes/Theme2022.js +80 -17
  752. package/cjs/internal/themes/Theme2022.js.map +1 -1
  753. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -11
  754. package/cjs/internal/themes/Theme2022Dark.js +11 -21
  755. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  756. package/cjs/lib/LayoutEvents.js +5 -6
  757. package/cjs/lib/LayoutEvents.js.map +1 -1
  758. package/cjs/lib/ModalStack.js +2 -3
  759. package/cjs/lib/ModalStack.js.map +1 -1
  760. package/cjs/lib/SSRSafe.d.ts +1 -7
  761. package/cjs/lib/SSRSafe.js +4 -53
  762. package/cjs/lib/SSRSafe.js.map +1 -1
  763. package/cjs/lib/Upgrades.d.ts +1 -4
  764. package/cjs/lib/Upgrades.js +2 -28
  765. package/cjs/lib/Upgrades.js.map +1 -1
  766. package/cjs/lib/animation/index.js +6 -4
  767. package/cjs/lib/animation/index.js.map +1 -1
  768. package/cjs/lib/chars.d.ts +1 -1
  769. package/cjs/lib/chars.js +2 -2
  770. package/cjs/lib/chars.js.map +1 -1
  771. package/cjs/lib/client.d.ts +2 -3
  772. package/cjs/lib/client.js +9 -7
  773. package/cjs/lib/client.js.map +1 -1
  774. package/cjs/lib/dom/getScrollWidth.js +4 -5
  775. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  776. package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
  777. package/cjs/lib/dom/tabbableHelpers.js +7 -3
  778. package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
  779. package/cjs/lib/events/MouseDrag.js +11 -12
  780. package/cjs/lib/events/MouseDrag.js.map +1 -1
  781. package/cjs/lib/events/fixClickFocusIE.js +6 -4
  782. package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
  783. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
  784. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  785. package/cjs/lib/events/keyListener.js +9 -12
  786. package/cjs/lib/events/keyListener.js.map +1 -1
  787. package/cjs/lib/events/keyboard/identifiers.js +5 -2
  788. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  789. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  790. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  791. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
  792. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
  793. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  794. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +20 -0
  795. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  796. package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
  797. package/cjs/lib/featureFlagsContext/index.js +3 -0
  798. package/cjs/lib/featureFlagsContext/index.js.map +1 -0
  799. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  800. package/cjs/lib/forwardRefAndName.js +4 -1
  801. package/cjs/lib/forwardRefAndName.js.map +1 -1
  802. package/cjs/lib/isInstanceOf.d.ts +1 -0
  803. package/cjs/lib/isInstanceOf.js +6 -0
  804. package/cjs/lib/isInstanceOf.js.map +1 -0
  805. package/cjs/lib/listenFocusOutside.js +15 -16
  806. package/cjs/lib/listenFocusOutside.js.map +1 -1
  807. package/cjs/lib/locale/types.d.ts +6 -0
  808. package/cjs/lib/locale/types.js +6 -0
  809. package/cjs/lib/locale/types.js.map +1 -1
  810. package/cjs/lib/needsPolyfillPlaceholder.js +4 -3
  811. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  812. package/cjs/lib/net/fetch.js +24 -18
  813. package/cjs/lib/net/fetch.js.map +1 -1
  814. package/cjs/lib/rootNode/getRootNode.js +6 -6
  815. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  816. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  817. package/cjs/lib/rootNode/rootNodeDecorator.js +7 -3
  818. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  819. package/cjs/lib/styles/ColorFactory.js +13 -11
  820. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  821. package/cjs/lib/styles/ColorHelpers.d.ts +1 -1
  822. package/cjs/lib/styles/ColorHelpers.js +3 -7
  823. package/cjs/lib/styles/ColorHelpers.js.map +1 -1
  824. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  825. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js +7 -2
  826. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
  827. package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
  828. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  829. package/cjs/lib/theming/Emotion.js +3 -3
  830. package/cjs/lib/theming/Emotion.js.map +1 -1
  831. package/cjs/lib/types/props.d.ts +1 -0
  832. package/cjs/lib/types/props.js +1 -0
  833. package/cjs/lib/types/props.js.map +1 -0
  834. package/cjs/lib/utils.d.ts +7 -0
  835. package/cjs/lib/utils.js +30 -8
  836. package/cjs/lib/utils.js.map +1 -1
  837. package/cjs/typings/global.d.ts +3 -4
  838. package/cjs/typings/react-ref.d.ts +29 -0
  839. package/cjs/typings/utility-types.d.ts +2 -0
  840. package/components/Autocomplete/Autocomplete/Autocomplete.js +18 -5
  841. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  842. package/components/Autocomplete/Autocomplete.d.ts +9 -3
  843. package/components/Autocomplete/Autocomplete.md +17 -0
  844. package/components/Button/Button/Button.js +33 -5
  845. package/components/Button/Button/Button.js.map +1 -1
  846. package/components/Button/Button.d.ts +10 -3
  847. package/components/Button/Button.md +68 -0
  848. package/components/Button/Button.mixins/Button.mixins.js +59 -14
  849. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  850. package/components/Button/Button.mixins.d.ts +6 -6
  851. package/components/Button/Button.styles/Button.styles.js +254 -65
  852. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  853. package/components/Button/Button.styles.d.ts +3 -1
  854. package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
  855. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  856. package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
  857. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  858. package/components/Button/ButtonIcon.d.ts +3 -2
  859. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +10 -4
  860. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  861. package/components/Calendar/Calendar/Calendar.js +10 -9
  862. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  863. package/components/Calendar/Calendar.d.ts +1 -0
  864. package/components/Calendar/Calendar.md +14 -3
  865. package/components/Calendar/Calendar.styles/Calendar.styles.js +1 -1
  866. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
  867. package/components/Calendar/DayCellView/DayCellView.js +7 -1
  868. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  869. package/components/Calendar/DayCellView.styles/DayCellView.styles.js +2 -2
  870. package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  871. package/components/Calendar/DayCellView.styles.d.ts +1 -1
  872. package/components/Calendar/locale/locales/en/en.js +2 -1
  873. package/components/Calendar/locale/locales/en/en.js.map +1 -1
  874. package/components/Calendar/locale/locales/ru/ru.js +2 -1
  875. package/components/Calendar/locale/locales/ru/ru.js.map +1 -1
  876. package/components/Calendar/locale/types.d.ts +4 -0
  877. package/components/Checkbox/Checkbox/Checkbox.js +72 -14
  878. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  879. package/components/Checkbox/Checkbox.d.ts +15 -5
  880. package/components/Checkbox/Checkbox.md +18 -0
  881. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js +16 -0
  882. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js.map +1 -0
  883. package/components/Checkbox/Checkbox.mixins/package.json +6 -0
  884. package/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  885. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +39 -25
  886. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  887. package/components/Checkbox/Checkbox.styles.d.ts +6 -0
  888. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js +17 -0
  889. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js.map +1 -0
  890. package/components/Clickable/ArrowLeftIcon/package.json +6 -0
  891. package/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  892. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js +17 -0
  893. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js.map +1 -0
  894. package/components/Clickable/ArrowRightIcon/package.json +6 -0
  895. package/components/Clickable/ArrowRightIcon.d.ts +3 -0
  896. package/components/Clickable/Clickable/Clickable.js +165 -0
  897. package/components/Clickable/Clickable/Clickable.js.map +1 -0
  898. package/components/Clickable/Clickable/package.json +6 -0
  899. package/components/Clickable/Clickable.d.ts +95 -0
  900. package/components/Clickable/Clickable.md +244 -0
  901. package/components/Clickable/Clickable.styles/Clickable.styles.js +13 -0
  902. package/components/Clickable/Clickable.styles/Clickable.styles.js.map +1 -0
  903. package/components/Clickable/Clickable.styles/package.json +6 -0
  904. package/components/Clickable/Clickable.styles.d.ts +11 -0
  905. package/components/Clickable/ClickableButton/ClickableButton.js +31 -0
  906. package/components/Clickable/ClickableButton/ClickableButton.js.map +1 -0
  907. package/components/Clickable/ClickableButton/package.json +6 -0
  908. package/components/Clickable/ClickableButton.d.ts +5 -0
  909. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js +81 -0
  910. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js.map +1 -0
  911. package/components/Clickable/ClickableButton.mixins/package.json +6 -0
  912. package/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  913. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js +313 -0
  914. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js.map +1 -0
  915. package/components/Clickable/ClickableButton.styles/package.json +6 -0
  916. package/components/Clickable/ClickableButton.styles.d.ts +63 -0
  917. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js +21 -0
  918. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js.map +1 -0
  919. package/components/Clickable/ClickableButtonArrow/package.json +6 -0
  920. package/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  921. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js +22 -0
  922. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js.map +1 -0
  923. package/components/Clickable/ClickableButtonArrow.styles/package.json +6 -0
  924. package/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  925. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js +37 -0
  926. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js.map +1 -0
  927. package/components/Clickable/ClickableButtonCaption/package.json +6 -0
  928. package/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  929. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js +16 -0
  930. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js.map +1 -0
  931. package/components/Clickable/ClickableButtonCaption.styles/package.json +6 -0
  932. package/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  933. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js +51 -0
  934. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js.map +1 -0
  935. package/components/Clickable/ClickableButtonIcon/package.json +6 -0
  936. package/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  937. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js +58 -0
  938. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js.map +1 -0
  939. package/components/Clickable/ClickableButtonIcon.styles/package.json +6 -0
  940. package/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  941. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js +18 -0
  942. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js.map +1 -0
  943. package/components/Clickable/ClickableButtonLoadingIcon/package.json +6 -0
  944. package/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  945. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js +10 -0
  946. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js.map +1 -0
  947. package/components/Clickable/ClickableButtonLoadingIcon.styles/package.json +6 -0
  948. package/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  949. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js +22 -0
  950. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js.map +1 -0
  951. package/components/Clickable/ClickableButtonOutline/package.json +6 -0
  952. package/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  953. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js +16 -0
  954. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js.map +1 -0
  955. package/components/Clickable/ClickableButtonOutline.styles/package.json +6 -0
  956. package/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  957. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js +18 -0
  958. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js.map +1 -0
  959. package/components/Clickable/ClickableButtonWrapper/package.json +6 -0
  960. package/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  961. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js +19 -0
  962. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js.map +1 -0
  963. package/components/Clickable/ClickableButtonWrapper.styles/package.json +6 -0
  964. package/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  965. package/components/Clickable/ClickableLink/ClickableLink.js +24 -0
  966. package/components/Clickable/ClickableLink/ClickableLink.js.map +1 -0
  967. package/components/Clickable/ClickableLink/package.json +6 -0
  968. package/components/Clickable/ClickableLink.d.ts +5 -0
  969. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js +52 -0
  970. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js.map +1 -0
  971. package/components/Clickable/ClickableLink.styles/package.json +6 -0
  972. package/components/Clickable/ClickableLink.styles.d.ts +21 -0
  973. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js +20 -0
  974. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js.map +1 -0
  975. package/components/Clickable/ClickableLinkChild/package.json +6 -0
  976. package/components/Clickable/ClickableLinkChild.d.ts +7 -0
  977. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js +24 -0
  978. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js.map +1 -0
  979. package/components/Clickable/ClickableLinkChild.styles/package.json +6 -0
  980. package/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  981. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js +21 -0
  982. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js.map +1 -0
  983. package/components/Clickable/ClickableLinkIcon/package.json +6 -0
  984. package/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  985. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js +16 -0
  986. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js.map +1 -0
  987. package/components/Clickable/ClickableLinkIcon.styles/package.json +6 -0
  988. package/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  989. package/components/Clickable/index/index.js +1 -0
  990. package/components/Clickable/index/index.js.map +1 -0
  991. package/{internal/MaskedInput → components/Clickable}/index/package.json +1 -1
  992. package/components/Clickable/index.d.ts +1 -0
  993. package/{internal/MaskedInput → components/Clickable}/package.json +1 -1
  994. package/components/Clickable/utils/package.json +6 -0
  995. package/components/Clickable/utils/utils.js +55 -0
  996. package/components/Clickable/utils/utils.js.map +1 -0
  997. package/components/Clickable/utils.d.ts +7 -0
  998. package/components/ComboBox/ComboBox/ComboBox.js +1 -0
  999. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  1000. package/components/ComboBox/ComboBox.d.ts +6 -8
  1001. package/components/ComboBox/ComboBox.md +51 -5
  1002. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +32 -4
  1003. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  1004. package/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  1005. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +4 -1
  1006. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  1007. package/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  1008. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -2
  1009. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  1010. package/components/DateInput/DateInput/DateInput.js +28 -10
  1011. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  1012. package/components/DateInput/DateInput.d.ts +5 -1
  1013. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -11
  1014. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  1015. package/components/DatePicker/DatePicker/DatePicker.js +7 -1
  1016. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  1017. package/components/DatePicker/DatePicker.d.ts +2 -1
  1018. package/components/DatePicker/DatePicker.md +15 -0
  1019. package/components/DatePicker/locale/locales/en/en.js +4 -2
  1020. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  1021. package/components/DatePicker/locale/locales/ru/ru.js +4 -2
  1022. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  1023. package/components/DatePicker/locale/types.d.ts +3 -1
  1024. package/components/Dropdown/Dropdown/Dropdown.js +3 -1
  1025. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  1026. package/components/Dropdown/Dropdown.d.ts +4 -7
  1027. package/components/Dropdown/Dropdown.md +33 -0
  1028. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +27 -2
  1029. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  1030. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -0
  1031. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  1032. package/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  1033. package/components/DropdownMenu/DropdownMenu.md +28 -0
  1034. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js +5 -1
  1035. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js.map +1 -1
  1036. package/components/FileUploader/FileUploader/FileUploader.js +9 -6
  1037. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  1038. package/components/FileUploader/FileUploader.d.ts +6 -2
  1039. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +3 -3
  1040. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  1041. package/components/FileUploader/FileUploader.styles.d.ts +1 -1
  1042. package/components/FxInput/FxInput/FxInput.js +2 -1
  1043. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  1044. package/components/FxInput/FxInput.d.ts +4 -2
  1045. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +4 -2
  1046. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  1047. package/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  1048. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +29 -29
  1049. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  1050. package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  1051. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +4 -1
  1052. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  1053. package/components/Group/Group/Group.js +9 -10
  1054. package/components/Group/Group/Group.js.map +1 -1
  1055. package/components/Group/Group.md +24 -0
  1056. package/components/Hint/Hint/Hint.js +5 -7
  1057. package/components/Hint/Hint/Hint.js.map +1 -1
  1058. package/components/Input/Input/Input.js +37 -18
  1059. package/components/Input/Input/Input.js.map +1 -1
  1060. package/components/Input/Input.d.ts +28 -11
  1061. package/components/Input/Input.styles/Input.styles.js +2 -2
  1062. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  1063. package/components/Input/Input.typings/Input.typings.js +1 -0
  1064. package/components/Input/Input.typings/Input.typings.js.map +1 -0
  1065. package/components/Input/Input.typings/package.json +6 -0
  1066. package/components/Input/Input.typings.d.ts +7 -0
  1067. package/components/Input/InputLayout/InputLayout/InputLayout.js +4 -2
  1068. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  1069. package/components/Input/InputLayout/InputLayout.d.ts +3 -2
  1070. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
  1071. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  1072. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +2 -4
  1073. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  1074. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +7 -5
  1075. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  1076. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -1
  1077. package/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  1078. package/components/Input/index/index.js +2 -1
  1079. package/components/Input/index/index.js.map +1 -1
  1080. package/components/Input/index.d.ts +1 -0
  1081. package/components/Kebab/Kebab/Kebab.js +8 -3
  1082. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  1083. package/components/Kebab/Kebab.d.ts +3 -2
  1084. package/components/Kebab/Kebab.md +28 -0
  1085. package/components/Link/Link/Link.js +14 -7
  1086. package/components/Link/Link/Link.js.map +1 -1
  1087. package/components/Link/Link.d.ts +2 -2
  1088. package/components/Link/Link.md +69 -0
  1089. package/components/Link/Link.mixins/Link.mixins.js +2 -5
  1090. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  1091. package/components/Link/Link.mixins.d.ts +1 -2
  1092. package/components/Link/Link.styles/Link.styles.js +48 -21
  1093. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  1094. package/components/Link/Link.styles.d.ts +5 -0
  1095. package/components/Loader/Loader/Loader.js +9 -7
  1096. package/components/Loader/Loader/Loader.js.map +1 -1
  1097. package/components/MaskedInput/MaskedInput/MaskedInput.js +62 -0
  1098. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -0
  1099. package/{internal → components}/MaskedInput/MaskedInput/package.json +1 -1
  1100. package/components/MaskedInput/MaskedInput.d.ts +24 -0
  1101. package/components/MaskedInput/MaskedInput.md +21 -0
  1102. package/components/MaskedInput/index/index.js.map +1 -0
  1103. package/components/MaskedInput/index/package.json +6 -0
  1104. package/components/MaskedInput/package.json +6 -0
  1105. package/components/MenuFooter/MenuFooter/MenuFooter.js +74 -0
  1106. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -0
  1107. package/components/MenuFooter/MenuFooter/package.json +6 -0
  1108. package/components/MenuFooter/MenuFooter.d.ts +30 -0
  1109. package/components/MenuFooter/MenuFooter.md +27 -0
  1110. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js +13 -0
  1111. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js.map +1 -0
  1112. package/components/MenuFooter/MenuFooter.mixins/package.json +6 -0
  1113. package/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  1114. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js +29 -0
  1115. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js.map +1 -0
  1116. package/components/MenuFooter/MenuFooter.styles/package.json +6 -0
  1117. package/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  1118. package/components/MenuFooter/index/index.js +1 -0
  1119. package/components/MenuFooter/index/index.js.map +1 -0
  1120. package/components/MenuFooter/index/package.json +6 -0
  1121. package/components/MenuFooter/index.d.ts +1 -0
  1122. package/components/MenuFooter/package.json +6 -0
  1123. package/components/MenuHeader/MenuHeader/MenuHeader.js +39 -2
  1124. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  1125. package/components/MenuHeader/MenuHeader.d.ts +8 -1
  1126. package/components/MenuHeader/MenuHeader.md +12 -0
  1127. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js +13 -0
  1128. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js.map +1 -0
  1129. package/components/MenuHeader/MenuHeader.mixins/package.json +6 -0
  1130. package/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  1131. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js +20 -6
  1132. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
  1133. package/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  1134. package/components/MenuItem/MenuItem/MenuItem.js +181 -26
  1135. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  1136. package/components/MenuItem/MenuItem.d.ts +34 -4
  1137. package/components/MenuItem/MenuItem.md +32 -6
  1138. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js +24 -0
  1139. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js.map +1 -0
  1140. package/components/MenuItem/MenuItem.mixins/package.json +6 -0
  1141. package/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  1142. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +39 -23
  1143. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  1144. package/components/MenuItem/MenuItem.styles.d.ts +9 -1
  1145. package/components/MiniModal/MiniModal/MiniModal.js +38 -0
  1146. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
  1147. package/components/MiniModal/MiniModal/package.json +6 -0
  1148. package/components/MiniModal/MiniModal.d.ts +18 -0
  1149. package/components/MiniModal/MiniModal.md +233 -0
  1150. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
  1151. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
  1152. package/components/MiniModal/MiniModal.styles/package.json +6 -0
  1153. package/components/MiniModal/MiniModal.styles.d.ts +14 -0
  1154. package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
  1155. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
  1156. package/components/MiniModal/MiniModalBody/package.json +6 -0
  1157. package/components/MiniModal/MiniModalBody.d.ts +7 -0
  1158. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
  1159. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
  1160. package/components/MiniModal/MiniModalFooter/package.json +6 -0
  1161. package/components/MiniModal/MiniModalFooter.d.ts +18 -0
  1162. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
  1163. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
  1164. package/components/MiniModal/MiniModalHeader/package.json +6 -0
  1165. package/components/MiniModal/MiniModalHeader.d.ts +17 -0
  1166. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
  1167. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
  1168. package/components/MiniModal/MiniModalIndent/package.json +6 -0
  1169. package/components/MiniModal/MiniModalIndent.d.ts +6 -0
  1170. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
  1171. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
  1172. package/components/MiniModal/getMiniModalTheme/package.json +6 -0
  1173. package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  1174. package/components/MiniModal/index/index.js +5 -0
  1175. package/components/MiniModal/index/index.js.map +1 -0
  1176. package/components/MiniModal/index/package.json +6 -0
  1177. package/components/MiniModal/index.d.ts +5 -0
  1178. package/components/MiniModal/package.json +6 -0
  1179. package/components/Modal/Modal/Modal.js +18 -15
  1180. package/components/Modal/Modal/Modal.js.map +1 -1
  1181. package/components/Modal/Modal.d.ts +6 -0
  1182. package/components/Modal/Modal.md +16 -0
  1183. package/components/Modal/Modal.styles/Modal.styles.js +44 -37
  1184. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  1185. package/components/Modal/Modal.styles.d.ts +5 -0
  1186. package/components/Modal/ModalClose/ModalClose.js +6 -1
  1187. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  1188. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  1189. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  1190. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
  1191. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  1192. package/components/Modal/ModalSeparator.d.ts +5 -0
  1193. package/components/Modal/getModalTheme/getModalTheme.js +8 -3
  1194. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
  1195. package/components/Modal/getModalTheme.d.ts +2 -2
  1196. package/components/Modal/locale/index/index.js +8 -0
  1197. package/components/Modal/locale/index/index.js.map +1 -0
  1198. package/components/Modal/locale/index/package.json +6 -0
  1199. package/components/Modal/locale/index.d.ts +4 -0
  1200. package/components/Modal/locale/locales/en/en.js +3 -0
  1201. package/components/Modal/locale/locales/en/en.js.map +1 -0
  1202. package/components/Modal/locale/locales/en/package.json +6 -0
  1203. package/components/Modal/locale/locales/en.d.ts +2 -0
  1204. package/components/Modal/locale/locales/ru/package.json +6 -0
  1205. package/components/Modal/locale/locales/ru/ru.js +3 -0
  1206. package/components/Modal/locale/locales/ru/ru.js.map +1 -0
  1207. package/components/Modal/locale/locales/ru.d.ts +2 -0
  1208. package/components/Modal/locale/package.json +6 -0
  1209. package/components/Modal/locale/types/package.json +6 -0
  1210. package/components/Modal/locale/types/types.js +1 -0
  1211. package/components/Modal/locale/types/types.js.map +1 -0
  1212. package/components/Modal/locale/types.d.ts +3 -0
  1213. package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
  1214. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  1215. package/components/Paging/Paging/Paging.js +17 -12
  1216. package/components/Paging/Paging/Paging.js.map +1 -1
  1217. package/components/Paging/Paging.styles/Paging.styles.js +3 -6
  1218. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  1219. package/components/Paging/Paging.styles.d.ts +0 -1
  1220. package/components/PasswordInput/PasswordInput/PasswordInput.js +12 -7
  1221. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  1222. package/components/PasswordInput/PasswordInput.d.ts +3 -2
  1223. package/components/PasswordInput/PasswordInput.md +19 -0
  1224. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js +4 -1
  1225. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
  1226. package/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  1227. package/components/PasswordInput/locale/index/index.js +8 -0
  1228. package/components/PasswordInput/locale/index/index.js.map +1 -0
  1229. package/components/PasswordInput/locale/index/package.json +6 -0
  1230. package/components/PasswordInput/locale/index.d.ts +4 -0
  1231. package/components/PasswordInput/locale/locales/en/en.js +4 -0
  1232. package/components/PasswordInput/locale/locales/en/en.js.map +1 -0
  1233. package/components/PasswordInput/locale/locales/en/package.json +6 -0
  1234. package/components/PasswordInput/locale/locales/en.d.ts +2 -0
  1235. package/components/PasswordInput/locale/locales/ru/package.json +6 -0
  1236. package/components/PasswordInput/locale/locales/ru/ru.js +4 -0
  1237. package/components/PasswordInput/locale/locales/ru/ru.js.map +1 -0
  1238. package/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  1239. package/components/PasswordInput/locale/package.json +6 -0
  1240. package/components/PasswordInput/locale/types/package.json +6 -0
  1241. package/components/PasswordInput/locale/types/types.js +1 -0
  1242. package/components/PasswordInput/locale/types/types.js.map +1 -0
  1243. package/components/PasswordInput/locale/types.d.ts +4 -0
  1244. package/components/Radio/Radio/Radio.js +56 -7
  1245. package/components/Radio/Radio/Radio.js.map +1 -1
  1246. package/components/Radio/Radio.d.ts +15 -3
  1247. package/components/Radio/Radio.md +18 -0
  1248. package/components/Radio/Radio.mixins/Radio.mixins.js +28 -0
  1249. package/components/Radio/Radio.mixins/Radio.mixins.js.map +1 -0
  1250. package/components/Radio/Radio.mixins/package.json +6 -0
  1251. package/components/Radio/Radio.mixins.d.ts +5 -0
  1252. package/components/Radio/Radio.styles/Radio.styles.js +44 -29
  1253. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  1254. package/components/Radio/Radio.styles.d.ts +9 -0
  1255. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
  1256. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  1257. package/components/ScrollContainer/ScrollBar/ScrollBar.js +17 -51
  1258. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  1259. package/components/ScrollContainer/ScrollBar.d.ts +4 -7
  1260. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +109 -22
  1261. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  1262. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
  1263. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  1264. package/components/ScrollContainer/ScrollContainer.d.ts +21 -5
  1265. package/components/ScrollContainer/ScrollContainer.md +29 -2
  1266. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
  1267. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  1268. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  1269. package/components/Select/Item/Item.js +3 -1
  1270. package/components/Select/Item/Item.js.map +1 -1
  1271. package/components/Select/Item.d.ts +1 -0
  1272. package/components/Select/Select/Select.js +57 -26
  1273. package/components/Select/Select/Select.js.map +1 -1
  1274. package/components/Select/Select.d.ts +14 -10
  1275. package/components/Select/Select.md +29 -0
  1276. package/components/Select/Select.styles/Select.styles.js +1 -1
  1277. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  1278. package/components/Select/selectTheme/selectTheme.js +3 -1
  1279. package/components/Select/selectTheme/selectTheme.js.map +1 -1
  1280. package/components/SidePage/SidePage/SidePage.js +38 -14
  1281. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  1282. package/components/SidePage/SidePage.d.ts +3 -1
  1283. package/components/SidePage/SidePage.md +16 -0
  1284. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +43 -0
  1285. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -0
  1286. package/components/SidePage/SidePageCloseButton/package.json +6 -0
  1287. package/components/SidePage/SidePageCloseButton.d.ts +1 -0
  1288. package/components/SidePage/SidePageHeader/SidePageHeader.js +7 -40
  1289. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  1290. package/components/SidePage/SidePageHeader.d.ts +1 -4
  1291. package/components/SidePage/locale/index/index.js +8 -0
  1292. package/components/SidePage/locale/index/index.js.map +1 -0
  1293. package/components/SidePage/locale/index/package.json +6 -0
  1294. package/components/SidePage/locale/index.d.ts +4 -0
  1295. package/components/SidePage/locale/locales/en/en.js +3 -0
  1296. package/components/SidePage/locale/locales/en/en.js.map +1 -0
  1297. package/components/SidePage/locale/locales/en/package.json +6 -0
  1298. package/components/SidePage/locale/locales/en.d.ts +2 -0
  1299. package/components/SidePage/locale/locales/ru/package.json +6 -0
  1300. package/components/SidePage/locale/locales/ru/ru.js +3 -0
  1301. package/components/SidePage/locale/locales/ru/ru.js.map +1 -0
  1302. package/components/SidePage/locale/locales/ru.d.ts +2 -0
  1303. package/components/SidePage/locale/package.json +6 -0
  1304. package/components/SidePage/locale/types/package.json +6 -0
  1305. package/components/SidePage/locale/types/types.js +1 -0
  1306. package/components/SidePage/locale/types/types.js.map +1 -0
  1307. package/components/SidePage/locale/types.d.ts +3 -0
  1308. package/components/SingleToast/SingleToast/SingleToast.js +53 -0
  1309. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
  1310. package/components/SingleToast/SingleToast/package.json +6 -0
  1311. package/components/SingleToast/SingleToast.d.ts +11 -0
  1312. package/components/SingleToast/SingleToast.md +35 -0
  1313. package/components/SingleToast/index/index.js +1 -0
  1314. package/components/SingleToast/index/index.js.map +1 -0
  1315. package/components/SingleToast/index/package.json +6 -0
  1316. package/components/SingleToast/index.d.ts +1 -0
  1317. package/components/SingleToast/package.json +6 -0
  1318. package/components/Spinner/Spinner/Spinner.js +10 -4
  1319. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  1320. package/components/Spinner/Spinner.d.ts +1 -0
  1321. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
  1322. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  1323. package/components/Sticky/Sticky/Sticky.js +10 -6
  1324. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  1325. package/components/Switcher/Switcher/Switcher.js +9 -3
  1326. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  1327. package/components/Switcher/Switcher.d.ts +13 -8
  1328. package/components/Tabs/Indicator/Indicator.js +3 -1
  1329. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  1330. package/components/Tabs/Tab/Tab.js +14 -19
  1331. package/components/Tabs/Tab/Tab.js.map +1 -1
  1332. package/components/Tabs/Tab.d.ts +17 -36
  1333. package/components/Tabs/Tab.md +71 -0
  1334. package/components/Tabs/Tab.styles/Tab.styles.js +52 -23
  1335. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  1336. package/components/Tabs/Tab.styles.d.ts +9 -3
  1337. package/components/Tabs/Tabs/Tabs.js +15 -7
  1338. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  1339. package/components/Tabs/Tabs.d.ts +16 -15
  1340. package/components/Tabs/Tabs.md +39 -22
  1341. package/components/Tabs/Tabs.styles/Tabs.styles.js +15 -4
  1342. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  1343. package/components/Tabs/Tabs.styles.d.ts +3 -1
  1344. package/components/Tabs/TabsContext/TabsContext.js +1 -0
  1345. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  1346. package/components/Tabs/TabsContext.d.ts +2 -0
  1347. package/components/Tabs/helpers/helpers.js +28 -0
  1348. package/components/Tabs/helpers/helpers.js.map +1 -0
  1349. package/components/Tabs/helpers/package.json +6 -0
  1350. package/components/Tabs/helpers.d.ts +6 -0
  1351. package/components/Textarea/Textarea/Textarea.js +72 -24
  1352. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  1353. package/components/Textarea/Textarea.d.ts +13 -3
  1354. package/components/Textarea/Textarea.md +12 -0
  1355. package/components/Textarea/Textarea.mixins/Textarea.mixins.js +14 -0
  1356. package/components/Textarea/Textarea.mixins/Textarea.mixins.js.map +1 -0
  1357. package/components/Textarea/Textarea.mixins/package.json +6 -0
  1358. package/components/Textarea/Textarea.mixins.d.ts +3 -0
  1359. package/components/Textarea/Textarea.styles/Textarea.styles.js +43 -15
  1360. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  1361. package/components/Textarea/Textarea.styles.d.ts +10 -1
  1362. package/components/Textarea/TextareaCounter/TextareaCounter.js +21 -6
  1363. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  1364. package/components/Textarea/TextareaCounter.d.ts +3 -1
  1365. package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
  1366. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  1367. package/components/Textarea/TextareaHelpers.d.ts +1 -1
  1368. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js +21 -0
  1369. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js.map +1 -0
  1370. package/components/Textarea/TextareaWithSafari17Workaround/package.json +6 -0
  1371. package/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  1372. package/components/Toast/Toast/Toast.js +18 -10
  1373. package/components/Toast/Toast/Toast.js.map +1 -1
  1374. package/components/Toast/Toast.d.ts +13 -5
  1375. package/components/Toast/Toast.md +0 -105
  1376. package/components/Toast/ToastStatic/ToastStatic.js +4 -4
  1377. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  1378. package/components/Toast/ToastView/ToastView.js +9 -4
  1379. package/components/Toast/ToastView/ToastView.js.map +1 -1
  1380. package/components/Toast/ToastView.d.ts +6 -6
  1381. package/components/Toast/ToastView.styles/ToastView.styles.js +1 -1
  1382. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  1383. package/components/Toast/locale/index/index.js +8 -0
  1384. package/components/Toast/locale/index/index.js.map +1 -0
  1385. package/components/Toast/locale/index/package.json +6 -0
  1386. package/components/Toast/locale/index.d.ts +4 -0
  1387. package/components/Toast/locale/locales/en/en.js +3 -0
  1388. package/components/Toast/locale/locales/en/en.js.map +1 -0
  1389. package/components/Toast/locale/locales/en/package.json +6 -0
  1390. package/components/Toast/locale/locales/en.d.ts +2 -0
  1391. package/components/Toast/locale/locales/ru/package.json +6 -0
  1392. package/components/Toast/locale/locales/ru/ru.js +3 -0
  1393. package/components/Toast/locale/locales/ru/ru.js.map +1 -0
  1394. package/components/Toast/locale/locales/ru.d.ts +2 -0
  1395. package/components/Toast/locale/package.json +6 -0
  1396. package/components/Toast/locale/types/package.json +6 -0
  1397. package/components/Toast/locale/types/types.js +1 -0
  1398. package/components/Toast/locale/types/types.js.map +1 -0
  1399. package/components/Toast/locale/types.d.ts +3 -0
  1400. package/components/Toggle/Toggle/Toggle.js +119 -10
  1401. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  1402. package/components/Toggle/Toggle.d.ts +16 -6
  1403. package/components/Toggle/Toggle.md +18 -2
  1404. package/components/Toggle/Toggle.mixins/Toggle.mixins.js +35 -0
  1405. package/components/Toggle/Toggle.mixins/Toggle.mixins.js.map +1 -0
  1406. package/components/Toggle/Toggle.mixins/package.json +6 -0
  1407. package/components/Toggle/Toggle.mixins.d.ts +7 -0
  1408. package/components/Toggle/Toggle.styles/Toggle.styles.js +85 -31
  1409. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  1410. package/components/Toggle/Toggle.styles.d.ts +21 -1
  1411. package/components/Token/Token/Token.js +10 -4
  1412. package/components/Token/Token/Token.js.map +1 -1
  1413. package/components/Token/Token.d.ts +2 -5
  1414. package/components/Token/locale/index/index.js +8 -0
  1415. package/components/Token/locale/index/index.js.map +1 -0
  1416. package/components/Token/locale/index/package.json +6 -0
  1417. package/components/Token/locale/index.d.ts +4 -0
  1418. package/components/Token/locale/locales/en/en.js +3 -0
  1419. package/components/Token/locale/locales/en/en.js.map +1 -0
  1420. package/components/Token/locale/locales/en/package.json +6 -0
  1421. package/components/Token/locale/locales/en.d.ts +2 -0
  1422. package/components/Token/locale/locales/ru/package.json +6 -0
  1423. package/components/Token/locale/locales/ru/ru.js +3 -0
  1424. package/components/Token/locale/locales/ru/ru.js.map +1 -0
  1425. package/components/Token/locale/locales/ru.d.ts +2 -0
  1426. package/components/Token/locale/package.json +6 -0
  1427. package/components/Token/locale/types/package.json +6 -0
  1428. package/components/Token/locale/types/types.js +1 -0
  1429. package/components/Token/locale/types/types.js.map +1 -0
  1430. package/components/Token/locale/types.d.ts +3 -0
  1431. package/components/TokenInput/TokenInput/TokenInput.js +63 -16
  1432. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  1433. package/components/TokenInput/TokenInput.d.ts +5 -5
  1434. package/components/TokenInput/TokenInput.md +97 -35
  1435. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
  1436. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  1437. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +1 -0
  1438. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  1439. package/components/TokenInput/TokenInputMenu.d.ts +7 -0
  1440. package/components/Tooltip/Tooltip/Tooltip.js +11 -11
  1441. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  1442. package/components/Tooltip/Tooltip.d.ts +6 -1
  1443. package/components/Tooltip/Tooltip.md +24 -0
  1444. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +8 -2
  1445. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  1446. package/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  1447. package/components/TooltipMenu/TooltipMenu.md +28 -0
  1448. package/hooks/useDrop/useDrop.js +3 -2
  1449. package/hooks/useDrop/useDrop.js.map +1 -1
  1450. package/index.d.ts +6 -0
  1451. package/index.js +6 -0
  1452. package/index.js.map +1 -1
  1453. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
  1454. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  1455. package/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  1456. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +1 -1
  1457. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -1
  1458. package/internal/ComponentCombinator/ComponentCombinator.js +4 -8
  1459. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  1460. package/internal/ComponentCombinator.d.ts +7 -8
  1461. package/internal/ComponentTable/ComponentTable.js +66 -103
  1462. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  1463. package/internal/ComponentTable.d.ts +7 -19
  1464. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +33 -10
  1465. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  1466. package/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  1467. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +40 -40
  1468. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  1469. package/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  1470. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +23 -13
  1471. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  1472. package/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  1473. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +7 -2
  1474. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  1475. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  1476. package/internal/DateSelect/DateSelect/DateSelect.js +52 -37
  1477. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  1478. package/internal/DateSelect/DateSelect.d.ts +2 -0
  1479. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +6 -3
  1480. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  1481. package/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  1482. package/internal/DateSelect/locale/index/index.js +8 -0
  1483. package/internal/DateSelect/locale/index/index.js.map +1 -0
  1484. package/internal/DateSelect/locale/index/package.json +6 -0
  1485. package/internal/DateSelect/locale/index.d.ts +4 -0
  1486. package/internal/DateSelect/locale/locales/en/en.js +5 -0
  1487. package/internal/DateSelect/locale/locales/en/en.js.map +1 -0
  1488. package/internal/DateSelect/locale/locales/en/package.json +6 -0
  1489. package/internal/DateSelect/locale/locales/en.d.ts +2 -0
  1490. package/internal/DateSelect/locale/locales/ru/package.json +6 -0
  1491. package/internal/DateSelect/locale/locales/ru/ru.js +5 -0
  1492. package/internal/DateSelect/locale/locales/ru/ru.js.map +1 -0
  1493. package/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  1494. package/internal/DateSelect/locale/package.json +6 -0
  1495. package/internal/DateSelect/locale/types/package.json +6 -0
  1496. package/internal/DateSelect/locale/types/types.js +1 -0
  1497. package/internal/DateSelect/locale/types/types.js.map +1 -0
  1498. package/internal/DateSelect/locale/types.d.ts +5 -0
  1499. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +21 -16
  1500. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  1501. package/internal/DropdownContainer/DropdownContainer.d.ts +3 -3
  1502. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
  1503. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
  1504. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +8 -6
  1505. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  1506. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  1507. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  1508. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  1509. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  1510. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  1511. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -1
  1512. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  1513. package/internal/FocusTrap/FocusTrap/FocusTrap.js +9 -4
  1514. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  1515. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -30
  1516. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  1517. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  1518. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  1519. package/internal/InputLikeText/InputLikeText/InputLikeText.js +49 -28
  1520. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1521. package/internal/InputLikeText/InputLikeText.d.ts +1 -0
  1522. package/internal/{MaskedInput/MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js} +13 -9
  1523. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  1524. package/internal/InternalMaskedInput/InternalMaskedInput/package.json +6 -0
  1525. package/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  1526. package/{cjs/internal/MaskedInput/MaskedInput.styles.js.map → internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map} +1 -1
  1527. package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +6 -0
  1528. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +6 -0
  1529. package/internal/InternalMaskedInput/index/index.js +1 -0
  1530. package/internal/InternalMaskedInput/index/index.js.map +1 -0
  1531. package/internal/InternalMaskedInput/index/package.json +6 -0
  1532. package/internal/InternalMaskedInput/index.d.ts +1 -0
  1533. package/internal/InternalMaskedInput/package.json +6 -0
  1534. package/internal/InternalMenu/InternalMenu/InternalMenu.js +21 -15
  1535. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1536. package/internal/InternalMenu/InternalMenu.d.ts +13 -4
  1537. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +10 -7
  1538. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  1539. package/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  1540. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js +6 -0
  1541. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js.map +1 -0
  1542. package/internal/InternalMenu/isIconPaddingEnabled/package.json +6 -0
  1543. package/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  1544. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +206 -0
  1545. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -0
  1546. package/internal/MaskedInputElement/MaskedInputElement/package.json +6 -0
  1547. package/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  1548. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js +43 -0
  1549. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js.map +1 -0
  1550. package/internal/MaskedInputElement/MaskedInputElement.helpers/package.json +6 -0
  1551. package/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  1552. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +16 -0
  1553. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -0
  1554. package/internal/MaskedInputElement/MaskedInputElement.styles/package.json +6 -0
  1555. package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +6 -0
  1556. package/internal/MaskedInputElement/index/index.js +1 -0
  1557. package/internal/MaskedInputElement/index/index.js.map +1 -0
  1558. package/internal/MaskedInputElement/index/package.json +6 -0
  1559. package/internal/MaskedInputElement/index.d.ts +1 -0
  1560. package/internal/MaskedInputElement/package.json +6 -0
  1561. package/internal/Menu/Menu/Menu.js +328 -92
  1562. package/internal/Menu/Menu/Menu.js.map +1 -1
  1563. package/internal/Menu/Menu.d.ts +48 -8
  1564. package/internal/Menu/Menu.styles/Menu.styles.js +20 -5
  1565. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  1566. package/internal/Menu/Menu.styles.d.ts +6 -1
  1567. package/internal/Menu/MenuContext/MenuContext.js +5 -0
  1568. package/internal/Menu/MenuContext/MenuContext.js.map +1 -0
  1569. package/internal/Menu/MenuContext/package.json +6 -0
  1570. package/internal/Menu/MenuContext.d.ts +10 -0
  1571. package/internal/Menu/MenuNavigation/MenuNavigation.js +123 -0
  1572. package/internal/Menu/MenuNavigation/MenuNavigation.js.map +1 -0
  1573. package/internal/Menu/MenuNavigation/package.json +6 -0
  1574. package/internal/Menu/MenuNavigation.d.ts +26 -0
  1575. package/internal/Menu/isActiveElement/isActiveElement.js +1 -1
  1576. package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
  1577. package/internal/MenuMessage/MenuMessage/MenuMessage.js +19 -2
  1578. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  1579. package/internal/MenuMessage/MenuMessage.d.ts +3 -1
  1580. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +11 -2
  1581. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
  1582. package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  1583. package/internal/MobilePopup/MobilePopup/MobilePopup.js +1 -0
  1584. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  1585. package/internal/MobilePopup/MobilePopup.d.ts +2 -2
  1586. package/internal/Popup/Popup/Popup.js +21 -16
  1587. package/internal/Popup/Popup/Popup.js.map +1 -1
  1588. package/internal/Popup/Popup.d.ts +7 -2
  1589. package/internal/Popup/PopupHelper/PopupHelper.js +8 -6
  1590. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  1591. package/internal/PopupMenu/PopupMenu/PopupMenu.js +31 -8
  1592. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1593. package/internal/PopupMenu/PopupMenu.d.ts +5 -2
  1594. package/internal/RenderContainer/RenderContainer/RenderContainer.js +28 -23
  1595. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  1596. package/internal/RenderContainer/RenderContainer.d.ts +0 -1
  1597. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  1598. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  1599. package/internal/RenderLayer/RenderLayer/RenderLayer.js +11 -6
  1600. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1601. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  1602. package/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  1603. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1604. package/internal/ThemePlayground/constants/constants.js +3 -0
  1605. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  1606. package/internal/ThemePlayground/darkTheme/darkTheme.js +1 -1
  1607. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  1608. package/internal/ThemePlayground/darkTheme.d.ts +1 -1
  1609. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
  1610. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  1611. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  1612. package/internal/ZIndex/ZIndex/ZIndex.js +2 -3
  1613. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1614. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
  1615. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1616. package/internal/icons/16px/index.d.ts +19 -19
  1617. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  1618. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  1619. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  1620. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  1621. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  1622. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  1623. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  1624. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  1625. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  1626. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  1627. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  1628. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  1629. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  1630. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  1631. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  1632. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  1633. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  1634. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  1635. package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
  1636. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  1637. package/internal/icons2022/BaseIcon.d.ts +1 -1
  1638. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
  1639. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
  1640. package/internal/icons2022/BaseIcon.styles/package.json +6 -0
  1641. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  1642. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  1643. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  1644. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  1645. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  1646. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  1647. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  1648. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  1649. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  1650. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  1651. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  1652. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  1653. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  1654. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  1655. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  1656. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  1657. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
  1658. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
  1659. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
  1660. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  1661. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  1662. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  1663. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  1664. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  1665. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  1666. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  1667. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  1668. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  1669. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  1670. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  1671. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  1672. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  1673. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  1674. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  1675. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  1676. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  1677. package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  1678. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  1679. package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  1680. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  1681. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  1682. package/internal/themes/DarkTheme/DarkTheme.js +13 -0
  1683. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  1684. package/internal/themes/DarkTheme.d.ts +2 -0
  1685. package/internal/themes/DefaultTheme/DefaultTheme.js +957 -141
  1686. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1687. package/internal/themes/DefaultTheme.d.ts +346 -20
  1688. package/internal/themes/Theme2022/Theme2022.js +121 -51
  1689. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  1690. package/internal/themes/Theme2022.d.ts +46 -7
  1691. package/internal/themes/Theme2022Dark/Theme2022Dark.js +16 -26
  1692. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1693. package/internal/themes/Theme2022Dark.d.ts +5 -11
  1694. package/lib/LayoutEvents/LayoutEvents.js +5 -5
  1695. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  1696. package/lib/ModalStack/ModalStack.js +2 -2
  1697. package/lib/ModalStack/ModalStack.js.map +1 -1
  1698. package/lib/SSRSafe/SSRSafe.js +3 -40
  1699. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1700. package/lib/SSRSafe.d.ts +1 -7
  1701. package/lib/Upgrades/Upgrades.js +3 -31
  1702. package/lib/Upgrades/Upgrades.js.map +1 -1
  1703. package/lib/Upgrades.d.ts +1 -4
  1704. package/lib/animation/index/index.js +6 -3
  1705. package/lib/animation/index/index.js.map +1 -1
  1706. package/lib/chars/chars.js +1 -1
  1707. package/lib/chars/chars.js.map +1 -1
  1708. package/lib/chars.d.ts +1 -1
  1709. package/lib/client/client.js +9 -7
  1710. package/lib/client/client.js.map +1 -1
  1711. package/lib/client.d.ts +2 -3
  1712. package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
  1713. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  1714. package/lib/dom/tabbableHelpers/tabbableHelpers.js +4 -3
  1715. package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
  1716. package/lib/dom/tabbableHelpers.d.ts +2 -1
  1717. package/lib/events/MouseDrag/MouseDrag.js +15 -12
  1718. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1719. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +4 -3
  1720. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
  1721. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
  1722. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  1723. package/lib/events/keyListener/keyListener.js +9 -13
  1724. package/lib/events/keyListener/keyListener.js.map +1 -1
  1725. package/lib/events/keyboard/identifiers/identifiers.js +3 -1
  1726. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  1727. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  1728. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
  1729. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
  1730. package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
  1731. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  1732. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +10 -0
  1733. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  1734. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
  1735. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  1736. package/lib/featureFlagsContext/index/index.js +2 -0
  1737. package/lib/featureFlagsContext/index/index.js.map +1 -0
  1738. package/lib/featureFlagsContext/index/package.json +6 -0
  1739. package/lib/featureFlagsContext/index.d.ts +2 -0
  1740. package/lib/featureFlagsContext/package.json +6 -0
  1741. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  1742. package/lib/forwardRefAndName.d.ts +1 -1
  1743. package/lib/isInstanceOf/isInstanceOf.js +3 -0
  1744. package/lib/isInstanceOf/isInstanceOf.js.map +1 -0
  1745. package/lib/isInstanceOf/package.json +6 -0
  1746. package/lib/isInstanceOf.d.ts +1 -0
  1747. package/lib/listenFocusOutside/listenFocusOutside.js +19 -11
  1748. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1749. package/lib/locale/types/types.js.map +1 -1
  1750. package/lib/locale/types.d.ts +6 -0
  1751. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -4
  1752. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  1753. package/lib/net/fetch/fetch.js +29 -21
  1754. package/lib/net/fetch/fetch.js.map +1 -1
  1755. package/lib/rootNode/getRootNode/getRootNode.js +6 -6
  1756. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1757. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +4 -3
  1758. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  1759. package/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  1760. package/lib/styles/ColorFactory/ColorFactory.js +13 -9
  1761. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  1762. package/lib/styles/ColorHelpers/ColorHelpers.js +3 -7
  1763. package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
  1764. package/lib/styles/ColorHelpers.d.ts +1 -1
  1765. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js +2 -2
  1766. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js.map +1 -1
  1767. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  1768. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
  1769. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  1770. package/lib/theming/Emotion/Emotion.js +5 -2
  1771. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1772. package/lib/types/props/package.json +6 -0
  1773. package/lib/types/props/props.js +1 -0
  1774. package/lib/types/props/props.js.map +1 -0
  1775. package/lib/types/props.d.ts +1 -0
  1776. package/lib/utils/utils.js +31 -7
  1777. package/lib/utils/utils.js.map +1 -1
  1778. package/lib/utils.d.ts +7 -0
  1779. package/package.json +6 -5
  1780. package/typings/global.d.ts +3 -4
  1781. package/typings/react-ref.d.ts +29 -0
  1782. package/typings/utility-types.d.ts +2 -0
  1783. package/cjs/internal/MaskedInput/MaskedInput.js.map +0 -1
  1784. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +0 -1
  1785. package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +0 -1
  1786. package/internal/MaskedInput/MaskedInput.styles/package.json +0 -6
  1787. package/internal/MaskedInput/index/index.js.map +0 -1
  1788. /package/cjs/{internal → components}/MaskedInput/index.d.ts +0 -0
  1789. /package/cjs/{internal → components}/MaskedInput/index.js +0 -0
  1790. /package/cjs/internal/{MaskedInput/MaskedInput.styles.d.ts → InternalMaskedInput/InternalMaskedInput.styles.d.ts} +0 -0
  1791. /package/cjs/internal/{MaskedInput/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles.js} +0 -0
  1792. /package/{internal/MaskedInput/MaskedInput.styles.d.ts → cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts} +0 -0
  1793. /package/{internal → components}/MaskedInput/index/index.js +0 -0
  1794. /package/{internal → components}/MaskedInput/index.d.ts +0 -0
  1795. /package/internal/{MaskedInput/MaskedInput.styles/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","lowerCasedPattern","toLowerCase","itemsMatchingPattern","filter","item","includes","renderItem","AutocompleteDataTids","root","Autocomplete","AutocompleteLocaleHelper","responsiveLayout","rootNode","state","selected","focused","isMobileOpened","opened","input","requestId","getProps","defaultProps","renderMain","props","isMobile","isMobileLayout","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","theme","inputWidth","mobileMenuHeaderText","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","styles","refRootSpan","renderMobileMenu","renderMenu","autoFocus","onKeyPress","handleKeyPressMobile","value","placeholder","locale","enterValue","handleCloseMobile","refMobilePopup","refMenu","mobilePopup","close","length","getItems","renderHints","map","i","handleMenuItemClick","fireChange","setState","e","key","event","blur","preventDefault","menu","up","down","enter","getAnchor","el","span","rootSpan","focus","componentDidUpdate","prevProps","updateItems","render","setRootNode","notFound","updateValue","menuWidth","menuPos","menuProps","maxHeight","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array","size"],"mappings":";;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,8D;;AAEA,SAASA,KAAT,CAAeC,OAAf,EAAgCC,KAAhC,EAAiD;AAC/C,MAAI,CAACD,OAAD,IAAY,CAACC,KAAjB,EAAwB;AACtB,WAAOC,OAAO,CAACC,OAAR,CAAgB,EAAhB,CAAP;AACD;;AAED,MAAMC,iBAAiB,GAAGJ,OAAO,CAACK,WAAR,EAA1B;AACA,MAAMC,oBAAoB,GAAGL,KAAK,CAACM,MAAN,CAAa,UAACC,IAAD,EAAU;AAClD,WAAOA,IAAI,CAACH,WAAL,GAAmBI,QAAnB,CAA4BL,iBAA5B,CAAP;AACD,GAF4B,CAA7B;;AAIA,SAAOF,OAAO,CAACC,OAAR,CAAgBG,oBAAhB,CAAP;AACD;;AAED,SAASI,UAAT,CAAoBF,IAApB,EAA+B;AAC7B,SAAOA,IAAP;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CM,IAAMG,oBAAoB,GAAG;AAClCC,EAAAA,IAAI,EAAE,oBAD4B,EAA7B,C;;;;;;;;;;AAWP;AACA;AACA;AACA;AACA,G;;;;AAIaC,Y,WADZ,wBAAO,cAAP,EAAuBC,gCAAvB,C,MAFAC,2B,eACAC,kB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCQC,IAAAA,K,GAA2B;AAChChB,MAAAA,KAAK,EAAE,IADyB;AAEhCiB,MAAAA,QAAQ,EAAE,CAAC,CAFqB;AAGhCC,MAAAA,OAAO,EAAE,KAHuB;AAIhCC,MAAAA,cAAc,EAAE,KAJgB,E;;;;;;AAU1BC,IAAAA,M,GAAS,K;AACTC,IAAAA,K,GAAyB,I;;;;;AAKzBC,IAAAA,S,GAAY,C;;AAEZC,IAAAA,Q,GAAW,0CAAkBX,YAAY,CAACY,YAA/B,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCZC,IAAAA,U,GAAa,UAACC,KAAD,EAAsD;AACxE,UAAQR,OAAR,GAAoB,MAAKF,KAAzB,CAAQE,OAAR;;AAEA,UAAMS,QAAQ,GAAG,MAAKC,cAAtB;;AAEA;AACEC,MAAAA,aADF;;;;;;;;;;;;;;AAeIH,MAAAA,KAfJ,CACEG,aADF,CAEEC,SAFF,GAeIJ,KAfJ,CAEEI,SAFF,CAGEC,OAHF,GAeIL,KAfJ,CAGEK,OAHF,CAIEC,MAJF,GAeIN,KAfJ,CAIEM,MAJF,CAKcC,WALd,GAeIP,KAfJ,CAKEjB,UALF,CAMEyB,aANF,GAeIR,KAfJ,CAMEQ,aANF,CAOEC,SAPF,GAeIT,KAfJ,CAOES,SAPF,CAQEC,SARF,GAeIV,KAfJ,CAQEU,SARF,CASEC,aATF,GAeIX,KAfJ,CASEW,aATF,CAUEC,mBAVF,GAeIZ,KAfJ,CAUEY,mBAVF,CAWEC,MAXF,GAeIb,KAfJ,CAWEa,MAXF,gBAeIb,KAfJ,CAYEc,KAZF,CAYEA,KAZF,6BAYU,MAAKC,KAAL,CAAWC,UAZrB,gBAaEC,oBAbF,GAeIjB,KAfJ,CAaEiB,oBAbF,CAcKC,IAdL,+CAeIlB,KAfJ;;AAiBA,UAAMmB,UAAU;AACXD,MAAAA,IADW;AAEdJ,QAAAA,KAAK,EAAE,MAFO;AAGdX,QAAAA,aAAa,EAAE,MAAKiB,iBAHN;AAIdhB,QAAAA,SAAS,EAAE,MAAKiB,aAJF;AAKdhB,QAAAA,OAAO,EAAE,MAAKiB,WALA;AAMdC,QAAAA,GAAG,EAAE,MAAKC,QANI,GAAhB;;;AASA;AACE,qCAAC,wBAAD,IAAa,cAAc,EAAE,MAAKC,UAAlC,EAA8C,cAAc,EAAE,MAAKC,kBAAnE,EAAuF,MAAM,EAAElC,OAA/F;AACE;AACE,sBAAUR,oBAAoB,CAACC,IADjC;AAEE,UAAA,SAAS,EAAE0C,qBAAO1C,IAAP,CAAY,MAAK8B,KAAjB,CAFb;AAGE,UAAA,KAAK,EAAE,EAAED,KAAK,EAALA,KAAF,EAHT;AAIE,UAAA,GAAG,EAAE,MAAKc,WAJZ;;AAME,qCAAC,YAAD,EAAWT,UAAX,CANF;AAOGlB,QAAAA,QAAQ,GAAG,MAAK4B,gBAAL,EAAH,GAA6B,MAAKC,UAAL,EAPxC,CADF,CADF;;;;AAaD,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0COD,IAAAA,gB,GAAmB,YAAM;AAC/B,UAAMV,UAAsB,GAAG;AAC7BY,QAAAA,SAAS,EAAE,IADkB;AAE7BjB,QAAAA,KAAK,EAAE,MAFsB;AAG7BX,QAAAA,aAAa,EAAE,MAAKiB,iBAHS;AAI7BY,QAAAA,UAAU,EAAE,MAAKC,oBAJY;AAK7BC,QAAAA,KAAK,EAAE,MAAKlC,KAAL,CAAWkC,KALW;AAM7BC,QAAAA,WAAW,EAAE,MAAKC,MAAL,CAAYC,UANI,EAA/B;;;AASA,UAAM/D,KAAK,GAAG,MAAKgB,KAAL,CAAWhB,KAAzB;;AAEA;AACE,qCAAC,wBAAD;AACE,UAAA,oBAAoB,eAAE,6BAAC,YAAD,EAAW6C,UAAX,CADxB;AAEE,UAAA,OAAO,EAAE,MAAKnB,KAAL,CAAWiB,oBAFtB;AAGE,UAAA,MAAM,EAAE,MAAK3B,KAAL,CAAWG,cAHrB;AAIE,UAAA,cAAc,EAAE,MAAK6C,iBAJvB;AAKE,UAAA,GAAG,EAAE,MAAKC,cALZ;;AAOE,qCAAC,UAAD,IAAM,GAAG,EAAE,MAAKC,OAAhB,EAAyB,WAAW,uBAAE,MAAKC,WAAP,qBAAE,kBAAkBC,KAAxD,EAA+D,sBAAsB,MAArF,EAAsF,SAAS,EAAE,MAAjG;AACGpE,QAAAA,KAAK,IAAIA,KAAK,CAACqE,MAAN,GAAe,CAAxB,IAA6B,MAAKC,QAAL,EADhC;AAEG,cAAKC,WAAL,EAFH,CAPF,CADF;;;;AAcD,K;;AAEOD,IAAAA,Q,GAAW,YAAM;AACvB,UAAMtE,KAAK,GAAG,MAAKgB,KAAL,CAAWhB,KAAzB;AACA,UAAM2B,QAAQ,GAAG,MAAKC,cAAtB;;AAEA,aAAO5B,KAAK;AACRA,MAAAA,KAAK,CAACwE,GAAN,CAAU,UAACjE,IAAD,EAAOkE,CAAP,EAAa;AACrB;AACE,uCAAC,kBAAD,IAAU,OAAO,EAAE,MAAKC,mBAAL,CAAyBD,CAAzB,CAAnB,EAAgD,GAAG,EAAEA,CAArD,EAAwD,QAAQ,EAAE9C,QAAlE;AACG,gBAAKJ,QAAL,GAAgBd,UAAhB,CAA2BF,IAA3B,CADH,CADF;;;AAKD,OAND,CADQ;AAQR,UARJ;AASD,K;;AAEOuC,IAAAA,iB,GAAoB,UAACc,KAAD,EAAmB;AAC7C,YAAKxC,MAAL,GAAc,IAAd;;AAEA,YAAKuD,UAAL,CAAgBf,KAAhB;AACD,K;;AAEOI,IAAAA,iB,GAAoB,YAAM;AAChC,YAAKY,QAAL,CAAc;AACZzD,QAAAA,cAAc,EAAE,KADJ,EAAd;;;AAIA,YAAKgC,UAAL;AACD,K;;AAEOQ,IAAAA,oB,GAAuB,UAACkB,CAAD,EAAsB;AACnD,UAAIA,CAAC,CAACC,GAAF,KAAU,OAAd,EAAuB;AACrB,oCAAKX,WAAL,wCAAkBC,KAAlB;AACD;AACF,K;;AAEOpB,IAAAA,W,GAAc,UAAC+B,KAAD,EAA+C;AACnE,UAAI,MAAKnD,cAAT,EAAyB;AACvB,cAAKgD,QAAL,CAAc,EAAEzD,cAAc,EAAE,IAAlB,EAAd;AACD;;AAED,UAAI,MAAKH,KAAL,CAAWE,OAAf,EAAwB;AACtB;AACD;;AAED,YAAK0D,QAAL,CAAc,EAAE1D,OAAO,EAAE,IAAX,EAAd;;AAEA,UAAI,MAAKQ,KAAL,CAAWK,OAAf,EAAwB;AACtB,cAAKL,KAAL,CAAWK,OAAX,CAAmBgD,KAAnB;AACD;AACF,K;;AAEO5B,IAAAA,U,GAAa,YAAM;AACzB,UAAI,CAAC,MAAKnC,KAAL,CAAWE,OAAhB,EAAyB;AACvB;AACD;;AAED,YAAKE,MAAL,GAAc,KAAd;AACA,YAAKwD,QAAL,CAAc,EAAE5E,KAAK,EAAE,IAAT,EAAekB,OAAO,EAAE,KAAxB,EAAd;;AAEA,UAAI,MAAKG,KAAT,EAAgB;AACd,cAAKA,KAAL,CAAW2D,IAAX;AACD;;AAED,UAAI,MAAKtD,KAAL,CAAWM,MAAf,EAAuB;AACrB,cAAKN,KAAL,CAAWM,MAAX;AACD;AACF,K;;AAEOoB,IAAAA,kB,GAAqB,UAACyB,CAAD,EAAc;AACzC,4CAAgBA,CAAhB;AACA,YAAK1B,UAAL;AACD,K;;AAEOJ,IAAAA,a,GAAgB,UAAC8B,CAAD,EAA8C;AACpE,UAAI,MAAKnD,KAAL,CAAWI,SAAf,EAA0B;AACxB,cAAKJ,KAAL,CAAWI,SAAX,CAAqB+C,CAArB;AACD;AACD,cAAQ,IAAR;AACE,aAAK,8BAAYA,CAAZ,CAAL;AACEA,UAAAA,CAAC,CAACI,cAAF;AACA,gBAAKL,QAAL,CAAc,EAAE5E,KAAK,EAAE,IAAT,EAAd;AACA;AACF,aAAK,+BAAa6E,CAAb,CAAL;AACEA,UAAAA,CAAC,CAACI,cAAF;AACA,cAAI,MAAKC,IAAT,EAAe;AACb,kBAAKA,IAAL,CAAUC,EAAV;AACD;AACD;AACF,aAAK,iCAAeN,CAAf,CAAL;AACEA,UAAAA,CAAC,CAACI,cAAF;AACA,cAAI,MAAKC,IAAT,EAAe;AACb,kBAAKA,IAAL,CAAUE,IAAV;AACD;AACD;AACF,aAAK,6BAAWP,CAAX,CAAL;AACEA,UAAAA,CAAC,CAACI,cAAF,GADF,CACsB;AACpB,cAAI,MAAKC,IAAT,EAAe;AACb,kBAAKA,IAAL,CAAUG,KAAV,CAAgBR,CAAhB;AACD;AACD,iBAtBJ;;AAwBD,K;;;;;;AAMOS,IAAAA,S,GAAY,YAAM;AACxB,aAAO,uEAAP;AACD,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8DOpC,IAAAA,Q,GAAW,UAACqC,EAAD,EAAsB;AACvC,YAAKlE,KAAL,GAAakE,EAAb;AACD,K;;AAEOrB,IAAAA,O,GAAU,UAACgB,IAAD,EAAuB;AACvC,YAAKA,IAAL,GAAYA,IAAZ;AACD,K;;AAEO5B,IAAAA,W,GAAc,UAACkC,IAAD,EAA2B;AAC/C,YAAKC,QAAL,GAAgBD,IAAhB;AACD,K;;AAEOvB,IAAAA,c,GAAiB,UAACE,WAAD,EAAqC;AAC5D,YAAKA,WAAL,GAAmBA,WAAnB;AACD,K,oDAjVD;AACF;AACA,K,OACSuB,K,GAAP,iBAAe,CACb,IAAI,KAAKrE,KAAT,EAAgB,CACd,KAAKA,KAAL,CAAWqE,KAAX,GACD,CACF,C,CAED;AACF;AACA,K,QACSV,I,GAAP,gBAAc,CACZ,KAAK7B,UAAL,GACD,C,QAEMwC,kB,GAAP,4BAA0BC,SAA1B,EAAwD,CACtD,IAAIA,SAAS,CAAChC,KAAV,KAAoB,KAAKlC,KAAL,CAAWkC,KAAnC,EAA0C,CACxC,KAAKiC,WAAL,CAAiB,KAAKnE,KAAL,CAAWkC,KAAX,IAAoB,EAArC,EACD,CACF,C,QAEMkC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACrD,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAa,gDAAqBA,KAArB,CAAb,CACA,oBACE,6BAAC,0BAAD,CAAc,QAAd,IAAuB,KAAK,EAAE,MAAI,CAACA,KAAnC,iBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,MAAI,CAACsD,WAAjC,IAAkD,MAAI,CAACrE,KAAvD,GACG,MAAI,CAACD,UADR,CADF,CADF,CAOD,CAVH,CADF,CAcD,C,QA+CO8C,W,GAAR,uBAAuC,CACrC,IAAMvE,KAAK,GAAG,KAAKgB,KAAL,CAAWhB,KAAzB,CAEA,IAAI,CAAC,KAAK0B,KAAL,CAAWkC,KAAhB,EAAuB,CACrB,oBAAO,6BAAC,wBAAD,QAAc,KAAKE,MAAL,CAAYC,UAA1B,CAAP,CACD,CAED,IAAI,CAAA/D,KAAK,QAAL,YAAAA,KAAK,CAAEqE,MAAP,MAAkB,CAAlB,IAAuB,KAAK3C,KAAL,CAAWkC,KAAtC,EAA6C,CAC3C,oBAAO,6BAAC,wBAAD,QAAc,KAAKE,MAAL,CAAYkC,QAA1B,CAAP,CACD,CAED,IAAI,uBAAWhG,KAAX,KAAqB,KAAK0B,KAAL,CAAWkC,KAApC,EAA2C,CACzC,oBAAO,6BAAC,wBAAD,QAAc,KAAKE,MAAL,CAAYmC,WAA1B,CAAP,CACD,CAED,OAAO,IAAP,CACD,C,QAEOzC,U,GAAR,sBAAsC,CACpC,IAAMxD,KAAK,GAAG,KAAKgB,KAAL,CAAWhB,KAAzB,CACA,qBACE,KAAKuB,QAAL,EADF,CAAQc,aAAR,kBAAQA,aAAR,CAAuBF,SAAvB,kBAAuBA,SAAvB,CAAkC+D,SAAlC,kBAAkCA,SAAlC,CAA6C1D,KAA7C,kBAA6CA,KAA7C,CAAoDF,mBAApD,kBAAoDA,mBAApD,CAAyEF,SAAzE,kBAAyEA,SAAzE,CAAoFF,aAApF,kBAAoFA,aAApF,CAAmGiE,OAAnG,kBAAmGA,OAAnG,CAEA,IAAMC,SAAS,GAAG,EAChBnD,GAAG,EAAE,KAAKiB,OADM,EAEhBmC,SAAS,EAAEhE,aAFK,EAGhBF,SAAS,EAATA,SAHgB,EAIhBK,KAAK,EAAE0D,SAAS,IAAK1D,KAAK,IAAI,4BAAW,KAAKiD,QAAhB,EAA0BjD,KAJxC,EAKhBF,mBAAmB,EAAnBA,mBALgB,EAAlB,CAOA,IAAI,CAACtC,KAAD,IAAUA,KAAK,CAACqE,MAAN,KAAiB,CAA/B,EAAkC,CAChC,OAAO,IAAP,CACD,CAED,oBACE,6BAAC,oCAAD,IAAmB,SAAS,EAAE,KAAKiB,SAAnC,EAA8C,KAAK,EAAElD,SAArD,EAAgE,aAAa,EAAEF,aAA/E,EAA8F,OAAO,EAAEiE,OAAvG,iBACE,6BAAC,UAAD,EAAUC,SAAV,EAAsB,KAAK9B,QAAL,EAAtB,CADF,CADF,CAKD,C,QAqIOI,mB,GAAR,6BAA4BD,CAA5B,EAAuC,mBACrC,OAAO,UAACM,KAAD,UAA8C,MAAI,CAACuB,eAAL,CAAqBvB,KAArB,EAA4BN,CAA5B,CAA9C,EAAP,CACD,C,QAMO6B,e,GAAR,yBAAwBvB,KAAxB,EAAkGwB,KAAlG,EAAiH,CAC/G,IAAKxB,KAAD,CAAyCyB,MAA7C,EAAqD,CACnD,OACD,CAEDzB,KAAK,CAACE,cAAN,GACA,KAAKwB,MAAL,CAAYF,KAAZ,EACD,C,QAEOE,M,GAAR,gBAAeF,KAAf,EAA8B,CAC5B,IAAI,CAAC,KAAKvF,KAAL,CAAWhB,KAAhB,EAAuB,CACrB,OACD,CAED,IAAM4D,KAAK,GAAG,KAAK5C,KAAL,CAAWhB,KAAX,CAAiBuG,KAAjB,CAAd,CACA,KAAKnF,MAAL,GAAc,KAAd,CACA,KAAKwD,QAAL,CAAc,EACZ3D,QAAQ,EAAE,CAAC,CADC,EAEZjB,KAAK,EAAE,IAFK,EAAd,EAKA,KAAK2E,UAAL,CAAgBf,KAAhB,EACA,KAAKoB,IAAL,GACD,C,QAEOa,W,GAAR,qBAAoBjC,KAApB,EAAmC,mBACjC,IAAI,CAAC,KAAKxC,MAAV,EAAkB,CAChB,OACD,CACD,IAAMrB,OAAO,GAAG6D,KAAK,CAAC8C,IAAN,EAAhB,CACA,IAAMnE,MAAM,GAAG,KAAKb,KAAL,CAAWa,MAA1B,CAEA,IAAI,CAACA,MAAL,EAAa,CACX,OACD,CAED,IAAIoE,OAAJ,CACA,KAAKrF,SAAL,IAAkB,CAAlB,CACA,IAAMsF,WAAW,GAAG,KAAKtF,SAAzB,CACA,IAAI,OAAOiB,MAAP,KAAkB,UAAtB,EAAkC,CAChCoE,OAAO,GAAGpE,MAAM,CAACxC,OAAD,CAAhB,CACD,CAFD,MAEO,CACL4G,OAAO,GAAG7G,KAAK,CAACC,OAAD,EAAUwC,MAAV,CAAf,CACD,CACDoE,OAAO,CAACE,IAAR,CAAa,UAAC7G,KAAD,EAAW,CACtB,IAAI,MAAI,CAACoB,MAAL,IAAewF,WAAW,KAAK,MAAI,CAACtF,SAAxC,EAAmD,CACjD,MAAI,CAACsD,QAAL,CAAc,EACZ5E,KAAK,EAALA,KADY,EAEZiB,QAAQ,EAAE,CAAC,CAFC,EAAd,EAID,CACF,CAPD,EAQD,C,QAEO0D,U,GAAR,oBAAmBf,KAAnB,EAAkC,CAChC,IAAI,KAAKlC,KAAL,CAAWG,aAAf,EAA8B,CAC5B,KAAKH,KAAL,CAAWG,aAAX,CAAyB+B,KAAzB,EACD,CACF,C,uBA1X+BkD,eAAMC,S,WACxBC,mB,GAAsB,c,UAEtBC,S,GAAY,EACxB;AACJ;AACA;AACA,KACIxG,UAAU,EAAEyG,mBAAUC,IALE,EAOxB;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KACI5E,MAAM,EAAE2E,mBAAUE,SAAV,CAAoB,CAACF,mBAAUG,KAAX,EAAkBH,mBAAUC,IAA5B,CAApB,CApBgB,E,UAuBZ3F,Y,GAA6B,EACzCf,UAAU,EAAVA,UADyC,EAEzC6G,IAAI,EAAE,OAFmC,EAGzCpF,aAAa,EAAE,KAH0B,EAIzCC,SAAS,EAAE,IAJ8B,EAKzCE,aAAa,EAAE,GAL0B,EAMzCD,SAAS,EAAE,MAN8B,EAOzCE,mBAAmB,EAAE,IAPoB,E","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { KeyboardEvent } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { MenuMessage } from '../../internal/MenuMessage';\nimport { locale } from '../../lib/locale/decorators';\nimport { isNullable } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer, DropdownContainerProps } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './Autocomplete.styles';\nimport { AutocompleteLocale, AutocompleteLocaleHelper } from './locale';\nimport { getAutocompleteTheme } from './getAutocompleteTheme';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n const lowerCasedPattern = pattern.toLowerCase();\n const itemsMatchingPattern = items.filter((item) => {\n return item.toLowerCase().includes(lowerCasedPattern);\n });\n\n return Promise.resolve(itemsMatchingPattern);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Pick<DropdownContainerProps, 'menuPos'>,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem?: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal?: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow?: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign?: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll?: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size?: InputProps['size'];\n /** value */\n value: string;\n /**\n * Текст заголовка выпадающего меню в мобильной версии\n */\n mobileMenuHeaderText?: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n isMobileOpened: boolean;\n}\n\nexport const AutocompleteDataTids = {\n root: 'Autocomplete__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n AutocompleteProps,\n 'renderItem' | 'size' | 'disablePortal' | 'hasShadow' | 'menuMaxHeight' | 'menuAlign' | 'preventWindowScroll'\n >\n>;\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\n@responsiveLayout\n@rootNode\n@locale('Autocomplete', AutocompleteLocaleHelper)\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps: DefaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n isMobileOpened: false,\n };\n\n private theme!: Theme;\n private readonly locale!: AutocompleteLocale;\n private isMobileLayout!: boolean;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private rootSpan: Nullable<HTMLSpanElement>;\n private mobilePopup: Nullable<MobilePopup>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getAutocompleteTheme(theme);\n return (\n <ThemeContext.Provider value={this.theme}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const isMobile = this.isMobileLayout;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n mobileMenuHeaderText,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span\n data-tid={AutocompleteDataTids.root}\n className={styles.root(this.theme)}\n style={{ width }}\n ref={this.refRootSpan}\n >\n <Input {...inputProps} />\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderHints(): React.ReactNode {\n const items = this.state.items;\n\n if (!this.props.value) {\n return <MenuMessage>{this.locale.enterValue}</MenuMessage>;\n }\n\n if (items?.length === 0 && this.props.value) {\n return <MenuMessage>{this.locale.notFound}</MenuMessage>;\n }\n\n if (isNullable(items) && this.props.value) {\n return <MenuMessage>{this.locale.updateValue}</MenuMessage>;\n }\n\n return null;\n }\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const { menuMaxHeight, hasShadow, menuWidth, width, preventWindowScroll, menuAlign, disablePortal, menuPos } =\n this.getProps();\n const menuProps = {\n ref: this.refMenu,\n maxHeight: menuMaxHeight,\n hasShadow,\n width: menuWidth || (width && getDOMRect(this.rootSpan).width),\n preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer getParent={this.getAnchor} align={menuAlign} disablePortal={disablePortal} menuPos={menuPos}>\n <Menu {...menuProps}>{this.getItems()}</Menu>\n </DropdownContainer>\n );\n }\n\n private renderMobileMenu = () => {\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyPress: this.handleKeyPressMobile,\n value: this.props.value,\n placeholder: this.locale.enterValue,\n };\n\n const items = this.state.items;\n\n return (\n <MobilePopup\n headerChildComponent={<Input {...inputProps} />}\n caption={this.props.mobileMenuHeaderText}\n opened={this.state.isMobileOpened}\n onCloseRequest={this.handleCloseMobile}\n ref={this.refMobilePopup}\n >\n <Menu ref={this.refMenu} onItemClick={this.mobilePopup?.close} disableScrollContainer maxHeight={'auto'}>\n {items && items.length > 0 && this.getItems()}\n {this.renderHints()}\n </Menu>\n </MobilePopup>\n );\n };\n\n private getItems = () => {\n const items = this.state.items;\n const isMobile = this.isMobileLayout;\n\n return items\n ? items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i} isMobile={isMobile}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })\n : null;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleCloseMobile = () => {\n this.setState({\n isMobileOpened: false,\n });\n\n this.handleBlur();\n };\n\n private handleKeyPressMobile = (e: KeyboardEvent) => {\n if (e.key === 'Enter') {\n this.mobilePopup?.close();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.isMobileLayout) {\n this.setState({ isMobileOpened: true });\n }\n\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return getRootNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n this.requestId += 1;\n const expectingId = this.requestId;\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n\n private refMobilePopup = (mobilePopup: MobilePopup | null) => {\n this.mobilePopup = mobilePopup;\n };\n}\n"]}
1
+ {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","lowerCasedPattern","toLowerCase","itemsMatchingPattern","filter","item","includes","renderItem","AutocompleteDataTids","root","menu","AutocompleteIds","Autocomplete","AutocompleteLocaleHelper","responsiveLayout","rootNode","state","selected","focused","isMobileOpened","opened","input","menuId","requestId","getProps","defaultProps","renderMain","props","isMobile","isMobileLayout","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","theme","inputWidth","mobileMenuHeaderText","ariaLabel","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","styles","refRootSpan","renderMobileMenu","renderMenu","autoFocus","onKeyPress","handleKeyPressMobile","value","placeholder","locale","enterValue","handleCloseMobile","refMobilePopup","refMenu","mobilePopup","close","length","getItems","renderHints","map","i","handleMenuItemClick","size","fireChange","setState","e","key","event","blur","preventDefault","up","down","enter","getAnchor","el","span","rootSpan","focus","componentDidUpdate","prevProps","updateItems","render","setRootNode","notFound","updateValue","menuWidth","menuPos","menuProps","maxHeight","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { AriaAttributes, KeyboardEvent } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { MenuMessage } from '../../internal/MenuMessage';\nimport { locale } from '../../lib/locale/decorators';\nimport { getRandomID, isNullable } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer, DropdownContainerProps } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './Autocomplete.styles';\nimport { AutocompleteLocale, AutocompleteLocaleHelper } from './locale';\nimport { getAutocompleteTheme } from './getAutocompleteTheme';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n const lowerCasedPattern = pattern.toLowerCase();\n const itemsMatchingPattern = items.filter((item) => {\n return item.toLowerCase().includes(lowerCasedPattern);\n });\n\n return Promise.resolve(itemsMatchingPattern);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Pick<DropdownContainerProps, 'menuPos'>,\n Pick<AriaAttributes, 'aria-label'>,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem?: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal?: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow?: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign?: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll?: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size?: SizeProp;\n /** value */\n value: string;\n /**\n * Текст заголовка выпадающего меню в мобильной версии\n */\n mobileMenuHeaderText?: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n isMobileOpened: boolean;\n}\n\nexport const AutocompleteDataTids = {\n root: 'Autocomplete__root',\n menu: 'Autocomplete__menu',\n} as const;\n\nexport const AutocompleteIds = {\n menu: AutocompleteDataTids.menu,\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n AutocompleteProps,\n 'renderItem' | 'size' | 'disablePortal' | 'hasShadow' | 'menuMaxHeight' | 'menuAlign' | 'preventWindowScroll'\n >\n>;\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\n@responsiveLayout\n@rootNode\n@locale('Autocomplete', AutocompleteLocaleHelper)\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps: DefaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n isMobileOpened: false,\n };\n\n private theme!: Theme;\n private readonly locale!: AutocompleteLocale;\n private isMobileLayout!: boolean;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private menuId = AutocompleteIds.menu + getRandomID();\n private rootSpan: Nullable<HTMLSpanElement>;\n private mobilePopup: Nullable<MobilePopup>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getAutocompleteTheme(theme);\n return (\n <ThemeContext.Provider value={this.theme}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const isMobile = this.isMobileLayout;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n mobileMenuHeaderText,\n 'aria-label': ariaLabel,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span\n data-tid={AutocompleteDataTids.root}\n className={styles.root(this.theme)}\n style={{ width }}\n ref={this.refRootSpan}\n >\n <Input aria-label={ariaLabel} aria-controls={this.menuId} {...inputProps} />\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderHints(): React.ReactNode {\n const items = this.state.items;\n\n if (!this.props.value) {\n return <MenuMessage>{this.locale.enterValue}</MenuMessage>;\n }\n\n if (items?.length === 0 && this.props.value) {\n return <MenuMessage>{this.locale.notFound}</MenuMessage>;\n }\n\n if (isNullable(items) && this.props.value) {\n return <MenuMessage>{this.locale.updateValue}</MenuMessage>;\n }\n\n return null;\n }\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const { menuMaxHeight, hasShadow, menuWidth, width, preventWindowScroll, menuAlign, disablePortal, menuPos } =\n this.getProps();\n const menuProps = {\n ref: this.refMenu,\n maxHeight: menuMaxHeight,\n hasShadow,\n width: menuWidth || (width && getDOMRect(this.rootSpan).width),\n preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer\n id={this.menuId}\n data-tid={AutocompleteDataTids.menu}\n getParent={this.getAnchor}\n align={menuAlign}\n disablePortal={disablePortal}\n menuPos={menuPos}\n >\n <Menu {...menuProps}>{this.getItems()}</Menu>\n </DropdownContainer>\n );\n }\n\n private renderMobileMenu = () => {\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyPress: this.handleKeyPressMobile,\n value: this.props.value,\n placeholder: this.locale.enterValue,\n };\n\n const items = this.state.items;\n\n return (\n <MobilePopup\n id={this.menuId}\n headerChildComponent={<Input {...inputProps} />}\n caption={this.props.mobileMenuHeaderText}\n opened={this.state.isMobileOpened}\n onCloseRequest={this.handleCloseMobile}\n ref={this.refMobilePopup}\n >\n <Menu ref={this.refMenu} onItemClick={this.mobilePopup?.close} disableScrollContainer maxHeight={'auto'}>\n {items && items.length > 0 && this.getItems()}\n {this.renderHints()}\n </Menu>\n </MobilePopup>\n );\n };\n\n private getItems = () => {\n const items = this.state.items;\n const isMobile = this.isMobileLayout;\n\n return items\n ? items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i} isMobile={isMobile} size={this.props.size}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })\n : null;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleCloseMobile = () => {\n this.setState({\n isMobileOpened: false,\n });\n\n this.handleBlur();\n };\n\n private handleKeyPressMobile = (e: KeyboardEvent) => {\n if (e.key === 'Enter') {\n this.mobilePopup?.close();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.isMobileLayout) {\n this.setState({ isMobileOpened: true });\n }\n\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return getRootNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n this.requestId += 1;\n const expectingId = this.requestId;\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n\n private refMobilePopup = (mobilePopup: MobilePopup | null) => {\n this.mobilePopup = mobilePopup;\n };\n}\n"]}
@@ -19,3 +19,20 @@ const [value, setValue] = React.useState('Kappa');
19
19
  <Button onClick={() => setValue('')}>Очистить</Button>
20
20
  </Group>
21
21
  ```
22
+
23
+ У Autocomplete есть 3 стандартных размера.
24
+ ```jsx harmony
25
+ import { Gapped } from '@skbkontur/react-ui';
26
+
27
+ const items = ['Маленький', 'Средний', 'Большой'];
28
+
29
+ const [valueSmall, setValueSmall] = React.useState('Маленький');
30
+ const [valueMedium, setValueMedium] = React.useState('Средний');
31
+ const [valueLarge, setValueLarge] = React.useState('Большой');
32
+
33
+ <Gapped vertical>
34
+ <Autocomplete source={items} value={valueSmall} onValueChange={setValueSmall} size={'small'} />
35
+ <Autocomplete source={items} value={valueMedium} onValueChange={setValueMedium} size={'medium'} />
36
+ <Autocomplete source={items} value={valueLarge} onValueChange={setValueLarge} size={'large'} />
37
+ </Gapped>
38
+ ```
@@ -1,10 +1,15 @@
1
1
  import React, { AriaAttributes, HTMLAttributes } from 'react';
2
+ import { HTMLProps } from '../../typings/html';
2
3
  import { ThemeIn } from '../../lib/theming/Theme';
3
4
  import { CommonProps } from '../../internal/CommonWrapper';
4
- export declare type ButtonSize = 'small' | 'medium' | 'large';
5
+ import { SizeProp } from '../../lib/types/props';
6
+ /**
7
+ * @deprecated use SizeProp
8
+ */
9
+ export declare type ButtonSize = SizeProp;
5
10
  export declare type ButtonType = 'button' | 'submit' | 'reset';
6
11
  export declare type ButtonUse = 'default' | 'primary' | 'success' | 'danger' | 'pay' | 'link' | 'text' | 'backless';
7
- export interface ButtonProps extends CommonProps, Pick<AriaAttributes, 'aria-haspopup' | 'aria-describedby' | 'aria-controls' | 'aria-label' | 'aria-checked'>, Pick<HTMLAttributes<unknown>, 'role'> {
12
+ export interface ButtonProps extends CommonProps, Pick<AriaAttributes, 'aria-haspopup' | 'aria-describedby' | 'aria-controls' | 'aria-label' | 'aria-checked' | 'aria-expanded'>, Pick<HTMLAttributes<unknown>, 'role'>, Pick<HTMLProps['button'], 'onClickCapture' | 'onMouseUp' | 'onMouseDown'> {
8
13
  /** @ignore */
9
14
  _noPadding?: boolean;
10
15
  /** @ignore */
@@ -91,7 +96,7 @@ export interface ButtonProps extends CommonProps, Pick<AriaAttributes, 'aria-has
91
96
  *
92
97
  * **Допустимые значения**: `"small"`, `"medium"`, `"large"`.
93
98
  */
94
- size?: ButtonSize;
99
+ size?: SizeProp;
95
100
  /**
96
101
  * HTML-атрибут `type`.
97
102
  */
@@ -127,6 +132,7 @@ export interface ButtonState {
127
132
  }
128
133
  export declare const ButtonDataTids: {
129
134
  readonly root: "Button__root";
135
+ readonly spinner: "Button__spinner";
130
136
  };
131
137
  declare type DefaultProps = Required<Pick<ButtonProps, 'use' | 'size' | 'type'>>;
132
138
  export declare class Button extends React.Component<ButtonProps, ButtonState> {
@@ -153,6 +159,7 @@ export declare class Button extends React.Component<ButtonProps, ButtonState> {
153
159
  */
154
160
  blur(): void;
155
161
  render(): JSX.Element;
162
+ private renderLinkRootWithoutHandlers;
156
163
  private renderMain;
157
164
  private renderIcon2022;
158
165
  private getSizeClassName;
@@ -1,4 +1,6 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.isButton = exports.ButtonDataTids = exports.Button = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.isButton = exports.ButtonDataTids = exports.Button = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
+ var _globalObject = require("@skbkontur/global-object");
3
+
2
4
 
3
5
  var _utils = require("../../lib/utils");
4
6
  var _client = require("../../lib/client");
@@ -15,10 +17,18 @@ var _Link = require("../Link");
15
17
  var _Spinner = require("../Spinner");
16
18
  var _LoadingIcon = require("../../internal/icons2022/LoadingIcon");
17
19
 
20
+
18
21
  var _Button = require("./Button.styles");
19
22
  var _ButtonIcon = require("./ButtonIcon");
20
23
  var _ButtonArrow = require("./ButtonArrow");
21
- var _getInnerLinkTheme = require("./getInnerLinkTheme");var _class, _class2, _temp;
24
+ var _getInnerLinkTheme = require("./getInnerLinkTheme");var _excluded = ["onClick", "onFocus", "onBlur", "children"];var _class, _class2, _temp;
25
+
26
+
27
+
28
+
29
+
30
+
31
+
22
32
 
23
33
 
24
34
 
@@ -181,7 +191,8 @@ var _getInnerLinkTheme = require("./getInnerLinkTheme");var _class, _class2, _te
181
191
 
182
192
 
183
193
  var ButtonDataTids = {
184
- root: 'Button__root' };exports.ButtonDataTids = ButtonDataTids;var
194
+ root: 'Button__root',
195
+ spinner: 'Button__spinner' };exports.ButtonDataTids = ButtonDataTids;var
185
196
 
186
197
 
187
198
 
@@ -495,6 +506,30 @@ Button = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/functi
495
506
 
496
507
 
497
508
 
509
+
510
+
511
+
512
+
513
+
514
+
515
+
516
+
517
+
518
+
519
+
520
+
521
+
522
+
523
+
524
+
525
+
526
+
527
+
528
+
529
+
530
+
531
+
532
+
498
533
 
499
534
 
500
535
 
@@ -520,7 +555,7 @@ Button = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/functi
520
555
  if (!_this.props.disabled && !_this.props.disableFocus) {
521
556
  // focus event fires before keyDown eventlistener
522
557
  // so we should check tabPressed in async way
523
- requestAnimationFrame(function () {
558
+ _globalObject.globalObject.requestAnimationFrame == null ? void 0 : _globalObject.globalObject.requestAnimationFrame(function () {
524
559
  if (_keyListener.keyListener.isTabPressed) {
525
560
  _this.setState({ focusedByTab: true });
526
561
  }
@@ -542,9 +577,9 @@ Button = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/functi
542
577
  * @public
543
578
  */;_proto.focus = function focus() {var _this$node;(_this$node = this.node) == null ? void 0 : _this$node.focus();} /**
544
579
  * @public
545
- */;_proto.blur = function blur() {var _this$node2;(_this$node2 = this.node) == null ? void 0 : _this$node2.blur();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = _this2.props.theme ? _ThemeFactory.ThemeFactory.create(_this2.props.theme, theme) : theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx2, _cx5, _cx6;var _this$props = this.props,corners = _this$props.corners,active = _this$props.active,disabled = _this$props.disabled,borderless = _this$props.borderless,checked = _this$props.checked,error = _this$props.error,warning = _this$props.warning,loading = _this$props.loading,narrow = _this$props.narrow,icon = _this$props.icon,_noPadding = _this$props._noPadding,_noRightPadding = _this$props._noRightPadding,visuallyFocused = _this$props.visuallyFocused,align = _this$props.align,disableFocus = _this$props.disableFocus,onMouseEnter = _this$props.onMouseEnter,onMouseLeave = _this$props.onMouseLeave,onMouseOver = _this$props.onMouseOver,onKeyDown = _this$props.onKeyDown,onClick = _this$props.onClick,width = _this$props.width,children = _this$props.children,ariaDescribedby = _this$props['aria-describedby'],ariaHasPopup = _this$props['aria-haspopup'],ariaControls = _this$props['aria-controls'],ariaLabel = _this$props['aria-label'],ariaChecked = _this$props['aria-checked'],role = _this$props.role;var _this$getProps = this.getProps(),use = _this$getProps.use,type = _this$getProps.type,size = _this$getProps.size;var sizeClass = this.getSizeClassName();var isFocused = this.state.focusedByTab || visuallyFocused;var isLink = use === 'link';var _isTheme2022 = (0, _ThemeHelpers.isTheme2022)(this.theme); // eslint-disable-next-line react-hooks/rules-of-hooks
546
- var _useButtonArrow = (0, _ButtonArrow.useButtonArrow)((0, _extends2.default)({}, this.props, { isFocused: Boolean(isFocused) }), this.theme),wrapClassNameWithArrow = _useButtonArrow[0],rootClassNameWithArrow = _useButtonArrow[1],arrowNode = _useButtonArrow[2];var rootClassName = '';if (_isTheme2022) {var trueDisabled = disabled || loading;rootClassName = _Emotion.cx.apply(void 0, [_Button.styles.root(this.theme), _Button.styles[use](this.theme), sizeClass, narrow && _Button.styles.narrow(), _noPadding && _Button.styles.noPadding(), _noRightPadding && _Button.styles.noRightPadding(), rootClassNameWithArrow].concat(trueDisabled ? [_Button.styles.disabled(this.theme), checked && _Button.styles.checkedDisabled(this.theme), checked && _Button.styles.checkedDisabled2022(this.theme), borderless && _Button.styles.borderless2022()] : [active && !checked && _Button.activeStyles[use](this.theme), isFocused && _Button.styles.focus(this.theme), checked && _Button.styles.checked2022(this.theme), checked && isFocused && _Button.styles.checkedFocused(this.theme), borderless && !checked && !isFocused && _Button.styles.borderless2022()]));} else {var _cx;rootClassName = (0, _Emotion.cx)((_cx = {}, _cx[_Button.styles.root(this.theme)] = true, _cx[_Button.styles.simulatedPress()] = true, _cx[_Button.styles[use](this.theme)] = true, _cx[_Button.activeStyles[use](this.theme)] = active, _cx[sizeClass] = true, _cx[_Button.styles.focus(this.theme)] = isFocused, _cx[_Button.styles.checked(this.theme)] = checked, _cx[_Button.styles.checkedFocused(this.theme)] = checked && isFocused, _cx[_Button.styles.disabled(this.theme)] = disabled || loading, _cx[_Button.styles.checkedDisabled(this.theme)] = checked && disabled, _cx[_Button.styles.borderless()] = borderless && !disabled && !loading && !checked && !isFocused && !active, _cx[_Button.styles.narrow()] = narrow, _cx[_Button.styles.noPadding()] = _noPadding, _cx[_Button.styles.noRightPadding()] = _noRightPadding, _cx));}var rootProps = { // By default the type attribute is 'submit'. IE8 will fire a click event
580
+ */;_proto.blur = function blur() {var _this$node2;(_this$node2 = this.node) == null ? void 0 : _this$node2.blur();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = _this2.props.theme ? _ThemeFactory.ThemeFactory.create(_this2.props.theme, theme) : theme;return _this2.renderMain();});};_proto.renderLinkRootWithoutHandlers = function renderLinkRootWithoutHandlers(props) {var onClick = props.onClick,onFocus = props.onFocus,onBlur = props.onBlur,children = props.children,rest = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);return /*#__PURE__*/_react.default.createElement("span", rest, children);};_proto.renderMain = function renderMain() {var _cx2, _cx5, _cx6;var _this$props = this.props,corners = _this$props.corners,active = _this$props.active,disabled = _this$props.disabled,borderless = _this$props.borderless,checked = _this$props.checked,error = _this$props.error,warning = _this$props.warning,loading = _this$props.loading,narrow = _this$props.narrow,icon = _this$props.icon,_noPadding = _this$props._noPadding,_noRightPadding = _this$props._noRightPadding,visuallyFocused = _this$props.visuallyFocused,align = _this$props.align,disableFocus = _this$props.disableFocus,onMouseEnter = _this$props.onMouseEnter,onMouseLeave = _this$props.onMouseLeave,onMouseOver = _this$props.onMouseOver,onMouseDown = _this$props.onMouseDown,onMouseUp = _this$props.onMouseUp,onKeyDown = _this$props.onKeyDown,onClick = _this$props.onClick,onClickCapture = _this$props.onClickCapture,width = _this$props.width,children = _this$props.children,ariaDescribedby = _this$props['aria-describedby'],ariaHasPopup = _this$props['aria-haspopup'],ariaControls = _this$props['aria-controls'],ariaLabel = _this$props['aria-label'],ariaChecked = _this$props['aria-checked'],ariaExpanded = _this$props['aria-expanded'],role = _this$props.role;var _this$getProps = this.getProps(),use = _this$getProps.use,type = _this$getProps.type,size = _this$getProps.size;var sizeClass = this.getSizeClassName();var isFocused = this.state.focusedByTab || visuallyFocused;var isLink = use === 'link';var _isTheme2022 = (0, _ThemeHelpers.isTheme2022)(this.theme); // eslint-disable-next-line react-hooks/rules-of-hooks
581
+ var _useButtonArrow = (0, _ButtonArrow.useButtonArrow)((0, _extends2.default)({}, this.props, { isFocused: Boolean(isFocused) }), this.theme),wrapClassNameWithArrow = _useButtonArrow[0],rootClassNameWithArrow = _useButtonArrow[1],arrowNode = _useButtonArrow[2];var isUseStateWithoutOutlineInDisabledState = !['default', 'backless'].includes(use);var rootClassName = '';if (_isTheme2022) {var trueDisabled = disabled || loading;rootClassName = _Emotion.cx.apply(void 0, [_Button.styles.root(this.theme), _Button.styles[use](this.theme), sizeClass, narrow && _Button.styles.narrow(), _noPadding && _Button.styles.noPadding(), _noRightPadding && _Button.styles.noRightPadding(), rootClassNameWithArrow].concat(trueDisabled ? [_Button.styles.disabled(this.theme), isUseStateWithoutOutlineInDisabledState && _Button.styles.disabledWithoutOutline(this.theme), checked && _Button.styles.checkedDisabled(this.theme), checked && _Button.styles.checkedDisabled2022(this.theme), borderless && _Button.styles.borderless2022()] : [active && !checked && _Button.activeStyles[use](this.theme), isFocused && _Button.styles.focus(this.theme), checked && _Button.styles.checked2022(this.theme), checked && isFocused && _Button.styles.checkedFocused(this.theme), borderless && !checked && !isFocused && _Button.styles.borderless2022()]));} else {var _cx;rootClassName = (0, _Emotion.cx)((_cx = {}, _cx[_Button.styles.root(this.theme)] = true, _cx[_Button.styles.simulatedPress()] = true, _cx[_Button.styles[use](this.theme)] = true, _cx[_Button.activeStyles[use](this.theme)] = active, _cx[sizeClass] = true, _cx[_Button.styles.focus(this.theme)] = isFocused, _cx[_Button.styles.checked(this.theme)] = checked, _cx[_Button.styles.checkedFocused(this.theme)] = checked && isFocused, _cx[_Button.styles.disabled(this.theme)] = disabled || loading, _cx[_Button.styles.checkedDisabled(this.theme)] = checked && disabled, _cx[_Button.styles.borderless()] = borderless && !disabled && !loading && !checked && !isFocused && !active, _cx[_Button.styles.narrow()] = narrow, _cx[_Button.styles.noPadding()] = _noPadding, _cx[_Button.styles.noRightPadding()] = _noRightPadding, _cx));}var rootProps = { // By default the type attribute is 'submit'. IE8 will fire a click event
547
582
  // on this button if somewhere on the page user presses Enter while some
548
583
  // input is focused. So we set type to 'button' by default.
549
- type: type, role: role, 'aria-describedby': ariaDescribedby, 'aria-haspopup': ariaHasPopup, 'aria-controls': ariaControls, 'aria-label': ariaLabel, 'aria-checked': ariaChecked, className: rootClassName, style: (0, _extends2.default)({ textAlign: align }, corners), disabled: disabled || loading, onClick: onClick, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: onKeyDown, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, tabIndex: disableFocus ? -1 : 0, title: this.props.title };var wrapProps = { className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Button.styles.wrap(this.theme)] = true, _cx2[wrapClassNameWithArrow] = true, _cx2[this.getSizeWrapClassName()] = true, _cx2)), style: { width: width } };var innerShadowNode = _isTheme2022 ? null : /*#__PURE__*/_react.default.createElement("div", { className: _Button.globalClasses.innerShadow });var outlineNode = null;var isDisabled2022 = _isTheme2022 && (disabled || loading);if ((!isFocused || isLink) && !isDisabled2022) {var _cx3;outlineNode = /*#__PURE__*/_react.default.createElement("div", { style: { zIndex: _isTheme2022 && isLink ? -1 : undefined }, className: (0, _Emotion.cx)(_Button.styles.outline(), (_cx3 = {}, _cx3[_Button.styles.outlineWarning(this.theme)] = warning, _cx3[_Button.styles.outlineError(this.theme)] = error, _cx3[_Button.styles.outlineLink()] = isLink, _cx3[_Button.styles.outlineLinkWarning(this.theme)] = isLink && warning, _cx3[_Button.styles.outlineLinkError(this.theme)] = isLink && error, _cx3)) });}var iconNode = icon && /*#__PURE__*/_react.default.createElement(_ButtonIcon.ButtonIcon, { icon: icon, size: size, hasChildren: Boolean(children), disabled: disabled || false, loading: loading || false, use: use });var loadingNode = null;if (loading && !icon) {var loadingIcon = _isTheme2022 ? /*#__PURE__*/_react.default.createElement(_LoadingIcon.LoadingIcon, { size: size }) : /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, { caption: null, dimmed: true, type: "mini" });loadingNode = /*#__PURE__*/_react.default.createElement("div", { className: _Button.styles.loading() }, loadingIcon);} // Force disable all props and features, that cannot be use with Link
550
- if (isLink) {var _cx4;rootProps.className = (0, _Emotion.cx)((_cx4 = {}, _cx4[_Button.styles.root(this.theme)] = true, _cx4[sizeClass] = true, _cx4[_Button.styles.link(this.theme)] = true, _cx4[_Button.styles.linkLineHeight()] = !_client.isSafari || _client.isSafari && !_isTheme2022, _cx4[_Button.styles.linkLineHeightSafariFallback()] = _client.isSafari && _isTheme2022, _cx4[_Button.styles.linkFocus(this.theme)] = isFocused, _cx4[_Button.styles.linkDisabled(this.theme)] = disabled || loading, _cx4));Object.assign(wrapProps, { className: (0, _Emotion.cx)(_Button.styles.wrap(this.theme), _Button.styles.wrapLink()), style: { width: wrapProps.style.width } });rootProps.style.textAlign = undefined;}var captionNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.styles.caption(), _Button.globalClasses.caption, (_cx5 = {}, _cx5[_Button.styles.captionTranslated()] = (active || checked) && !loading && !_isTheme2022, _cx5[_Button.styles.captionLink()] = isLink, _cx5[_Button.styles.captionDisabled()] = !checked && disabled, _cx5)) }, loadingNode, iconNode, /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_Button.globalClasses.text, (_cx6 = {}, _cx6[_Button.styles.visibilityHidden()] = !!loadingNode, _cx6)) }, children));if (_isTheme2022 && isLink && !loading) {captionNode = /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getInnerLinkTheme.getInnerLinkTheme)(this.theme) }, /*#__PURE__*/_react.default.createElement(_Link.Link, { focused: isFocused, disabled: disabled, icon: this.renderIcon2022(icon), as: "span", tabIndex: -1 }, children));}return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement("span", wrapProps, /*#__PURE__*/_react.default.createElement("button", (0, _extends2.default)({ "data-tid": ButtonDataTids.root, ref: this._ref }, rootProps), innerShadowNode, outlineNode, arrowNode, captionNode)));};_proto.renderIcon2022 = function renderIcon2022(icon) {if (icon && (0, _utils.isKonturIcon)(icon)) {var _icon$props$size;var sizes = (0, _ButtonIcon.getButtonIconSizes)(this.theme);return /*#__PURE__*/_react.default.cloneElement(icon, { size: (_icon$props$size = icon.props.size) != null ? _icon$props$size : sizes[this.getProps().size] });}return icon;};_proto.getSizeClassName = function getSizeClassName() {var _cx7, _cx8, _cx9;var _isTheme2022 = (0, _ThemeHelpers.isTheme2022)(this.theme);switch (this.getProps().size) {case 'large':return (0, _Emotion.cx)(_Button.styles.sizeLarge(this.theme), (_cx7 = {}, _cx7[_Button.styles.sizeLargeIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx7[_Button.styles.sizeLargeWithIcon(this.theme)] = !!this.props.icon, _cx7[_Button.styles.sizeLargeWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx7));case 'medium':return (0, _Emotion.cx)(_Button.styles.sizeMedium(this.theme), (_cx8 = {}, _cx8[_Button.styles.sizeMediumIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx8[_Button.styles.sizeMediumWithIcon(this.theme)] = !!this.props.icon, _cx8[_Button.styles.sizeMediumWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx8));case 'small':default:return (0, _Emotion.cx)(_Button.styles.sizeSmall(this.theme), (_cx9 = {}, _cx9[_Button.styles.sizeSmallIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx9[_Button.styles.sizeSmallWithIcon(this.theme)] = !!this.props.icon, _cx9[_Button.styles.sizeSmallWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx9));}};_proto.getSizeWrapClassName = function getSizeWrapClassName() {switch (this.getProps().size) {case 'large':return _Button.styles.wrapLarge(this.theme);case 'medium':return _Button.styles.wrapMedium(this.theme);case 'small':default:return _Button.styles.wrapSmall(this.theme);}};return Button;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Button', _class2.__BUTTON__ = true, _class2.defaultProps = { use: 'default', size: 'small', type: 'button' }, _temp)) || _class;exports.Button = Button;var isButton = (0, _utils.isReactUIComponent)('Button');exports.isButton = isButton;
584
+ type: type, role: role, 'aria-describedby': ariaDescribedby, 'aria-haspopup': ariaHasPopup, 'aria-controls': ariaControls, 'aria-label': ariaLabel, 'aria-checked': ariaChecked, 'aria-expanded': ariaExpanded, className: rootClassName, style: (0, _extends2.default)({ textAlign: align }, corners), disabled: disabled || loading, onClick: onClick, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: onKeyDown, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, onMouseDown: onMouseDown, onMouseUp: onMouseUp, onClickCapture: onClickCapture, tabIndex: disableFocus ? -1 : 0, title: this.props.title };var wrapProps = { className: (0, _Emotion.cx)(_Button.globalClasses.root, (_cx2 = {}, _cx2[_Button.styles.wrap(this.theme)] = true, _cx2[wrapClassNameWithArrow] = true, _cx2[this.getSizeWrapClassName()] = true, _cx2)), style: { width: width } };var innerShadowNode = _isTheme2022 ? null : /*#__PURE__*/_react.default.createElement("div", { className: _Button.globalClasses.innerShadow });var outlineNode = null;var isDisabled2022 = _isTheme2022 && (disabled || loading);if ((!isFocused || isLink) && !isDisabled2022) {var _cx3;outlineNode = /*#__PURE__*/_react.default.createElement("div", { style: { zIndex: _isTheme2022 && isLink ? -1 : undefined }, className: (0, _Emotion.cx)(_Button.styles.outline(), (_cx3 = {}, _cx3[_Button.styles.outlineWarning(this.theme)] = warning, _cx3[_Button.styles.outlineError(this.theme)] = error, _cx3[_Button.styles.outlineLink()] = isLink, _cx3[_Button.styles.outlineLinkWarning(this.theme)] = isLink && warning, _cx3[_Button.styles.outlineLinkError(this.theme)] = isLink && error, _cx3)) });}var iconNode = icon && /*#__PURE__*/_react.default.createElement(_ButtonIcon.ButtonIcon, { icon: icon, size: size, hasChildren: Boolean(children), disabled: disabled || false, loading: loading || false, use: use });var loadingNode = null;if (loading && !icon) {var loadingIcon = _isTheme2022 ? /*#__PURE__*/_react.default.createElement(_LoadingIcon.LoadingIcon, { size: size }) : /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, { caption: null, dimmed: true, type: "mini" });loadingNode = /*#__PURE__*/_react.default.createElement("div", { "data-tid": ButtonDataTids.spinner, className: _Button.styles.loading() }, loadingIcon);} // Force disable all props and features, that cannot be use with Link
585
+ if (isLink) {var _cx4;rootProps.className = (0, _Emotion.cx)((_cx4 = {}, _cx4[_Button.styles.root(this.theme)] = true, _cx4[sizeClass] = true, _cx4[_Button.styles.link(this.theme)] = true, _cx4[_Button.styles.linkLineHeight()] = !_client.isSafari || _client.isSafari && !_isTheme2022, _cx4[_Button.styles.linkLineHeightSafariFallback()] = _client.isSafari && _isTheme2022, _cx4[_Button.styles.linkFocus(this.theme)] = isFocused, _cx4[_Button.styles.linkDisabled(this.theme)] = disabled || loading, _cx4));Object.assign(wrapProps, { className: (0, _Emotion.cx)(_Button.styles.wrap(this.theme), _Button.styles.wrapLink()), style: { width: wrapProps.style.width } });rootProps.style.textAlign = undefined;}var captionNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.styles.caption(), _Button.globalClasses.caption, (_cx5 = {}, _cx5[_Button.styles.captionTranslated()] = (active || checked) && !loading && !_isTheme2022, _cx5[_Button.styles.captionLink()] = isLink, _cx5[_Button.styles.captionDisabled()] = !checked && disabled, _cx5)) }, loadingNode, iconNode, /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_Button.globalClasses.text, (_cx6 = {}, _cx6[_Button.styles.visibilityHidden()] = !!loadingNode, _cx6)) }, children));if (_isTheme2022 && isLink && !loading) {captionNode = /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getInnerLinkTheme.getInnerLinkTheme)(this.theme) }, /*#__PURE__*/_react.default.createElement(_Link.Link, { focused: isFocused, disabled: disabled, icon: this.renderIcon2022(icon), as: this.renderLinkRootWithoutHandlers, tabIndex: -1 }, children));}return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement("span", wrapProps, /*#__PURE__*/_react.default.createElement("button", (0, _extends2.default)({ "data-tid": ButtonDataTids.root, ref: this._ref }, rootProps), innerShadowNode, outlineNode, arrowNode, captionNode)));};_proto.renderIcon2022 = function renderIcon2022(icon) {if (icon && (0, _utils.isKonturIcon)(icon)) {var _icon$props$size;var sizes = (0, _ButtonIcon.getButtonIconSizes)(this.theme);return /*#__PURE__*/_react.default.cloneElement(icon, { size: (_icon$props$size = icon.props.size) != null ? _icon$props$size : sizes[this.getProps().size] });}return icon;};_proto.getSizeClassName = function getSizeClassName() {var _cx7, _cx8, _cx9;var _isTheme2022 = (0, _ThemeHelpers.isTheme2022)(this.theme);switch (this.getProps().size) {case 'large':return (0, _Emotion.cx)(_Button.styles.sizeLarge(this.theme), (_cx7 = {}, _cx7[_Button.styles.sizeLargeIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx7[_Button.styles.sizeLargeWithIcon(this.theme)] = !!this.props.icon, _cx7[_Button.styles.sizeLargeWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx7));case 'medium':return (0, _Emotion.cx)(_Button.styles.sizeMedium(this.theme), (_cx8 = {}, _cx8[_Button.styles.sizeMediumIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx8[_Button.styles.sizeMediumWithIcon(this.theme)] = !!this.props.icon, _cx8[_Button.styles.sizeMediumWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx8));case 'small':default:return (0, _Emotion.cx)(_Button.styles.sizeSmall(this.theme), (_cx9 = {}, _cx9[_Button.styles.sizeSmallIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx9[_Button.styles.sizeSmallWithIcon(this.theme)] = !!this.props.icon, _cx9[_Button.styles.sizeSmallWithIconWithoutText(this.theme)] = _isTheme2022 && !!this.props.icon && !this.props.children, _cx9));}};_proto.getSizeWrapClassName = function getSizeWrapClassName() {switch (this.getProps().size) {case 'large':return _Button.styles.wrapLarge(this.theme);case 'medium':return _Button.styles.wrapMedium(this.theme);case 'small':default:return _Button.styles.wrapSmall(this.theme);}};return Button;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Button', _class2.__BUTTON__ = true, _class2.defaultProps = { use: 'default', size: 'small', type: 'button' }, _temp)) || _class;exports.Button = Button;var isButton = (0, _utils.isReactUIComponent)('Button');exports.isButton = isButton;
@@ -1 +1 @@
1
- {"version":3,"sources":["Button.tsx"],"names":["ButtonDataTids","root","Button","rootNode","getProps","defaultProps","state","focusedByTab","node","handleFocus","e","props","disabled","disableFocus","requestAnimationFrame","keyListener","isTabPressed","setState","onFocus","handleBlur","onBlur","_ref","componentDidMount","autoFocus","focus","getDerivedStateFromProps","loading","blur","render","theme","ThemeFactory","create","renderMain","corners","active","borderless","checked","error","warning","narrow","icon","_noPadding","_noRightPadding","visuallyFocused","align","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onClick","width","children","ariaDescribedby","ariaHasPopup","ariaControls","ariaLabel","ariaChecked","role","use","type","size","sizeClass","getSizeClassName","isFocused","isLink","_isTheme2022","Boolean","wrapClassNameWithArrow","rootClassNameWithArrow","arrowNode","rootClassName","trueDisabled","cx","styles","noPadding","noRightPadding","checkedDisabled","checkedDisabled2022","borderless2022","activeStyles","checked2022","checkedFocused","simulatedPress","rootProps","className","style","textAlign","tabIndex","title","wrapProps","wrap","getSizeWrapClassName","innerShadowNode","globalClasses","innerShadow","outlineNode","isDisabled2022","zIndex","undefined","outline","outlineWarning","outlineError","outlineLink","outlineLinkWarning","outlineLinkError","iconNode","loadingNode","loadingIcon","link","linkLineHeight","isSafari","linkLineHeightSafariFallback","linkFocus","linkDisabled","Object","assign","wrapLink","captionNode","caption","captionTranslated","captionLink","captionDisabled","text","visibilityHidden","renderIcon2022","setRootNode","sizes","React","cloneElement","sizeLarge","sizeLargeIE11","isIE11","isEdge","sizeLargeWithIcon","sizeLargeWithIconWithoutText","sizeMedium","sizeMediumIE11","sizeMediumWithIcon","sizeMediumWithIconWithoutText","sizeSmall","sizeSmallIE11","sizeSmallWithIcon","sizeSmallWithIconWithoutText","wrapLarge","wrapMedium","wrapSmall","Component","__KONTUR_REACT_UI__","__BUTTON__","isButton"],"mappings":"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","sourcesContent":["import React, { AriaAttributes, HTMLAttributes } from 'react';\n\nimport { isKonturIcon, isReactUIComponent } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { Link } from '../Link';\nimport { Spinner } from '../Spinner';\nimport { LoadingIcon } from '../../internal/icons2022/LoadingIcon';\n\nimport { styles, activeStyles, globalClasses } from './Button.styles';\nimport { ButtonIcon, getButtonIconSizes } from './ButtonIcon';\nimport { useButtonArrow } from './ButtonArrow';\nimport { getInnerLinkTheme } from './getInnerLinkTheme';\n\nexport type ButtonSize = 'small' | 'medium' | 'large';\nexport type ButtonType = 'button' | 'submit' | 'reset';\nexport type ButtonUse = 'default' | 'primary' | 'success' | 'danger' | 'pay' | 'link' | 'text' | 'backless';\n\nexport interface ButtonProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-haspopup' | 'aria-describedby' | 'aria-controls' | 'aria-label' | 'aria-checked'>,\n Pick<HTMLAttributes<unknown>, 'role'> {\n /** @ignore */\n _noPadding?: boolean;\n\n /** @ignore */\n _noRightPadding?: boolean;\n\n /**\n * Применяет к кнопке стили псевдокласса `:active`.\n */\n active?: boolean;\n\n /**\n * CSS-свойство `text-align`.\n */\n align?: React.CSSProperties['textAlign'];\n\n /**\n * Превращает обычную кнопку в кнопку со стрелкой.\n */\n arrow?: boolean | 'left';\n\n /**\n * Даёт кнопке фокус после окончания загрузки страницы.\n */\n autoFocus?: boolean;\n\n /**\n * Убирает обводку у кнопки.\n */\n borderless?: boolean;\n\n /**\n * @ignore\n */\n checked?: boolean;\n\n children?: React.ReactNode;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /**\n * Отключенное состояние кнопки.\n */\n disabled?: boolean;\n\n /** @ignore */\n disableFocus?: boolean;\n\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n\n /**\n * Иконка слева от текста кнопки.\n */\n icon?: React.ReactElement<any>;\n\n /**\n * Переводит кнопку в состояние загрузки.\n */\n loading?: boolean;\n\n /**\n * Сужает кнопку.\n */\n narrow?: boolean;\n\n /**\n * HTML-событие `onblur`.\n */\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onclick`.\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onfocus`.\n */\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `keydown`.\n */\n onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onmouseenter`.\n */\n onMouseEnter?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `mouseleave`.\n */\n onMouseLeave?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onmouseover`.\n */\n onMouseOver?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * Задаёт размер кнопки.\n *\n * **Допустимые значения**: `\"small\"`, `\"medium\"`, `\"large\"`.\n */\n size?: ButtonSize;\n\n /**\n * HTML-атрибут `type`.\n */\n type?: ButtonType;\n\n /**\n * HTML-атрибут `title`.\n */\n title?: string;\n\n /**\n * Стиль кнопки.\n *\n * **Допустимые значения**: `\"default\"`, `\"primary\"`, `\"success\"`, `\"danger\"`, `\"pay\"`, `\"link\"`, `\"text\"`, `\"backless\"`.\n */\n use?: ButtonUse;\n\n /** @ignore */\n visuallyFocused?: boolean;\n\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n\n /**\n * CSS-свойство `width`.\n */\n width?: number | string;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n}\n\nexport interface ButtonState {\n focusedByTab: boolean;\n}\n\nexport const ButtonDataTids = {\n root: 'Button__root',\n} as const;\n\ntype DefaultProps = Required<Pick<ButtonProps, 'use' | 'size' | 'type'>>;\n\n@rootNode\nexport class Button extends React.Component<ButtonProps, ButtonState> {\n public static __KONTUR_REACT_UI__ = 'Button';\n public static __BUTTON__ = true;\n\n public static defaultProps: DefaultProps = {\n use: 'default',\n size: 'small',\n type: 'button',\n };\n\n private getProps = createPropsGetter(Button.defaultProps);\n\n public state = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private node: HTMLButtonElement | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n public static getDerivedStateFromProps(props: ButtonProps) {\n if (props.loading || props.disabled) {\n return { focusedByTab: false };\n }\n return null;\n }\n\n /**\n * @public\n */\n public focus() {\n this.node?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.node?.blur();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n corners,\n active,\n disabled,\n borderless,\n checked,\n error,\n warning,\n loading,\n narrow,\n icon,\n _noPadding,\n _noRightPadding,\n visuallyFocused,\n align,\n disableFocus,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onClick,\n width,\n children,\n 'aria-describedby': ariaDescribedby,\n 'aria-haspopup': ariaHasPopup,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n 'aria-checked': ariaChecked,\n role,\n } = this.props;\n const { use, type, size } = this.getProps();\n const sizeClass = this.getSizeClassName();\n\n const isFocused = this.state.focusedByTab || visuallyFocused;\n const isLink = use === 'link';\n const _isTheme2022 = isTheme2022(this.theme);\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const [wrapClassNameWithArrow, rootClassNameWithArrow, arrowNode] = useButtonArrow(\n { ...this.props, isFocused: Boolean(isFocused) },\n this.theme,\n );\n\n let rootClassName = '';\n if (_isTheme2022) {\n const trueDisabled = disabled || loading;\n rootClassName = cx(\n styles.root(this.theme),\n styles[use](this.theme),\n sizeClass,\n narrow && styles.narrow(),\n _noPadding && styles.noPadding(),\n _noRightPadding && styles.noRightPadding(),\n rootClassNameWithArrow,\n ...(trueDisabled\n ? [\n styles.disabled(this.theme),\n checked && styles.checkedDisabled(this.theme),\n checked && styles.checkedDisabled2022(this.theme),\n borderless && styles.borderless2022(),\n ]\n : [\n active && !checked && activeStyles[use](this.theme),\n isFocused && styles.focus(this.theme),\n checked && styles.checked2022(this.theme),\n checked && isFocused && styles.checkedFocused(this.theme),\n borderless && !checked && !isFocused && styles.borderless2022(),\n ]),\n );\n } else {\n rootClassName = cx({\n [styles.root(this.theme)]: true,\n [styles.simulatedPress()]: true,\n [styles[use](this.theme)]: true,\n [activeStyles[use](this.theme)]: active,\n [sizeClass]: true,\n [styles.focus(this.theme)]: isFocused,\n [styles.checked(this.theme)]: checked,\n [styles.checkedFocused(this.theme)]: checked && isFocused,\n [styles.disabled(this.theme)]: disabled || loading,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n [styles.borderless()]: borderless && !disabled && !loading && !checked && !isFocused && !active,\n [styles.narrow()]: narrow,\n [styles.noPadding()]: _noPadding,\n [styles.noRightPadding()]: _noRightPadding,\n });\n }\n\n const rootProps = {\n // By default the type attribute is 'submit'. IE8 will fire a click event\n // on this button if somewhere on the page user presses Enter while some\n // input is focused. So we set type to 'button' by default.\n type,\n role,\n 'aria-describedby': ariaDescribedby,\n 'aria-haspopup': ariaHasPopup,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n 'aria-checked': ariaChecked,\n className: rootClassName,\n style: {\n textAlign: align,\n ...corners,\n },\n disabled: disabled || loading,\n onClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onKeyDown,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n tabIndex: disableFocus ? -1 : 0,\n title: this.props.title,\n };\n\n const wrapProps = {\n className: cx({\n [styles.wrap(this.theme)]: true,\n [wrapClassNameWithArrow]: true,\n [this.getSizeWrapClassName()]: true,\n }),\n style: {\n width,\n },\n };\n\n const innerShadowNode = _isTheme2022 ? null : <div className={globalClasses.innerShadow} />;\n\n let outlineNode = null;\n const isDisabled2022 = _isTheme2022 && (disabled || loading);\n if ((!isFocused || isLink) && !isDisabled2022) {\n outlineNode = (\n <div\n style={{ zIndex: _isTheme2022 && isLink ? -1 : undefined }}\n className={cx(styles.outline(), {\n [styles.outlineWarning(this.theme)]: warning,\n [styles.outlineError(this.theme)]: error,\n [styles.outlineLink()]: isLink,\n [styles.outlineLinkWarning(this.theme)]: isLink && warning,\n [styles.outlineLinkError(this.theme)]: isLink && error,\n })}\n />\n );\n }\n\n const iconNode = icon && (\n <ButtonIcon\n icon={icon}\n size={size}\n hasChildren={Boolean(children)}\n disabled={disabled || false}\n loading={loading || false}\n use={use}\n />\n );\n let loadingNode = null;\n if (loading && !icon) {\n const loadingIcon = _isTheme2022 ? <LoadingIcon size={size} /> : <Spinner caption={null} dimmed type=\"mini\" />;\n loadingNode = <div className={styles.loading()}>{loadingIcon}</div>;\n }\n\n // Force disable all props and features, that cannot be use with Link\n if (isLink) {\n rootProps.className = cx({\n [styles.root(this.theme)]: true,\n [sizeClass]: true,\n [styles.link(this.theme)]: true,\n [styles.linkLineHeight()]: !isSafari || (isSafari && !_isTheme2022),\n [styles.linkLineHeightSafariFallback()]: isSafari && _isTheme2022,\n [styles.linkFocus(this.theme)]: isFocused,\n [styles.linkDisabled(this.theme)]: disabled || loading,\n });\n Object.assign(wrapProps, {\n className: cx(styles.wrap(this.theme), styles.wrapLink()),\n style: { width: wrapProps.style.width },\n });\n rootProps.style.textAlign = undefined;\n }\n\n let captionNode = (\n <div\n className={cx(styles.caption(), globalClasses.caption, {\n [styles.captionTranslated()]: (active || checked) && !loading && !_isTheme2022,\n [styles.captionLink()]: isLink,\n [styles.captionDisabled()]: !checked && disabled,\n })}\n >\n {loadingNode}\n {iconNode}\n <span\n className={cx(globalClasses.text, {\n [styles.visibilityHidden()]: !!loadingNode,\n })}\n >\n {children}\n </span>\n </div>\n );\n if (_isTheme2022 && isLink && !loading) {\n captionNode = (\n <ThemeContext.Provider value={getInnerLinkTheme(this.theme)}>\n <Link focused={isFocused} disabled={disabled} icon={this.renderIcon2022(icon)} as=\"span\" tabIndex={-1}>\n {children}\n </Link>\n </ThemeContext.Provider>\n );\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span {...wrapProps}>\n <button data-tid={ButtonDataTids.root} ref={this._ref} {...rootProps}>\n {innerShadowNode}\n {outlineNode}\n {arrowNode}\n {captionNode}\n </button>\n </span>\n </CommonWrapper>\n );\n }\n\n private renderIcon2022(icon: React.ReactElement | undefined) {\n if (icon && isKonturIcon(icon)) {\n const sizes = getButtonIconSizes(this.theme);\n return React.cloneElement(icon, { size: icon.props.size ?? sizes[this.getProps().size] });\n }\n\n return icon;\n }\n\n private getSizeClassName() {\n const _isTheme2022 = isTheme2022(this.theme);\n switch (this.getProps().size) {\n case 'large':\n return cx(styles.sizeLarge(this.theme), {\n [styles.sizeLargeIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeLargeWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeLargeWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n case 'medium':\n return cx(styles.sizeMedium(this.theme), {\n [styles.sizeMediumIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeMediumWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeMediumWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n case 'small':\n default:\n return cx(styles.sizeSmall(this.theme), {\n [styles.sizeSmallIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeSmallWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeSmallWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n }\n }\n\n private getSizeWrapClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.wrapLarge(this.theme);\n case 'medium':\n return styles.wrapMedium(this.theme);\n case 'small':\n default:\n return styles.wrapSmall(this.theme);\n }\n }\n\n private handleFocus = (e: React.FocusEvent<HTMLButtonElement>) => {\n if (!this.props.disabled && !this.props.disableFocus) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n this.props.onFocus?.(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLButtonElement>) => {\n this.setState({ focusedByTab: false });\n if (!this.props.disabled && !this.props.disableFocus) {\n this.props.onBlur?.(e);\n }\n };\n\n private _ref = (node: HTMLButtonElement | null) => {\n this.node = node;\n };\n}\n\nexport const isButton = isReactUIComponent<ButtonProps>('Button');\n"]}
1
+ {"version":3,"sources":["Button.tsx"],"names":["ButtonDataTids","root","spinner","Button","rootNode","getProps","defaultProps","state","focusedByTab","node","handleFocus","e","props","disabled","disableFocus","globalObject","requestAnimationFrame","keyListener","isTabPressed","setState","onFocus","handleBlur","onBlur","_ref","componentDidMount","autoFocus","focus","getDerivedStateFromProps","loading","blur","render","theme","ThemeFactory","create","renderMain","renderLinkRootWithoutHandlers","onClick","children","rest","corners","active","borderless","checked","error","warning","narrow","icon","_noPadding","_noRightPadding","visuallyFocused","align","onMouseEnter","onMouseLeave","onMouseOver","onMouseDown","onMouseUp","onKeyDown","onClickCapture","width","ariaDescribedby","ariaHasPopup","ariaControls","ariaLabel","ariaChecked","ariaExpanded","role","use","type","size","sizeClass","getSizeClassName","isFocused","isLink","_isTheme2022","Boolean","wrapClassNameWithArrow","rootClassNameWithArrow","arrowNode","isUseStateWithoutOutlineInDisabledState","includes","rootClassName","trueDisabled","cx","styles","noPadding","noRightPadding","disabledWithoutOutline","checkedDisabled","checkedDisabled2022","borderless2022","activeStyles","checked2022","checkedFocused","simulatedPress","rootProps","className","style","textAlign","tabIndex","title","wrapProps","globalClasses","wrap","getSizeWrapClassName","innerShadowNode","innerShadow","outlineNode","isDisabled2022","zIndex","undefined","outline","outlineWarning","outlineError","outlineLink","outlineLinkWarning","outlineLinkError","iconNode","loadingNode","loadingIcon","link","linkLineHeight","isSafari","linkLineHeightSafariFallback","linkFocus","linkDisabled","Object","assign","wrapLink","captionNode","caption","captionTranslated","captionLink","captionDisabled","text","visibilityHidden","renderIcon2022","setRootNode","sizes","React","cloneElement","sizeLarge","sizeLargeIE11","isIE11","isEdge","sizeLargeWithIcon","sizeLargeWithIconWithoutText","sizeMedium","sizeMediumIE11","sizeMediumWithIcon","sizeMediumWithIconWithoutText","sizeSmall","sizeSmallIE11","sizeSmallWithIcon","sizeSmallWithIconWithoutText","wrapLarge","wrapMedium","wrapSmall","Component","__KONTUR_REACT_UI__","__BUTTON__","isButton"],"mappings":"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","sourcesContent":["import React, { AriaAttributes, HTMLAttributes } from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { HTMLProps } from '../../typings/html';\nimport { isKonturIcon, isReactUIComponent } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { Link, LinkProps } from '../Link';\nimport { Spinner } from '../Spinner';\nimport { LoadingIcon } from '../../internal/icons2022/LoadingIcon';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles, activeStyles, globalClasses } from './Button.styles';\nimport { ButtonIcon, getButtonIconSizes } from './ButtonIcon';\nimport { useButtonArrow } from './ButtonArrow';\nimport { getInnerLinkTheme } from './getInnerLinkTheme';\n\n/**\n * @deprecated use SizeProp\n */\nexport type ButtonSize = SizeProp;\nexport type ButtonType = 'button' | 'submit' | 'reset';\nexport type ButtonUse = 'default' | 'primary' | 'success' | 'danger' | 'pay' | 'link' | 'text' | 'backless';\n\nexport interface ButtonProps\n extends CommonProps,\n Pick<\n AriaAttributes,\n 'aria-haspopup' | 'aria-describedby' | 'aria-controls' | 'aria-label' | 'aria-checked' | 'aria-expanded'\n >,\n Pick<HTMLAttributes<unknown>, 'role'>,\n Pick<HTMLProps['button'], 'onClickCapture' | 'onMouseUp' | 'onMouseDown'> {\n /** @ignore */\n _noPadding?: boolean;\n\n /** @ignore */\n _noRightPadding?: boolean;\n\n /**\n * Применяет к кнопке стили псевдокласса `:active`.\n */\n active?: boolean;\n\n /**\n * CSS-свойство `text-align`.\n */\n align?: React.CSSProperties['textAlign'];\n\n /**\n * Превращает обычную кнопку в кнопку со стрелкой.\n */\n arrow?: boolean | 'left';\n\n /**\n * Даёт кнопке фокус после окончания загрузки страницы.\n */\n autoFocus?: boolean;\n\n /**\n * Убирает обводку у кнопки.\n */\n borderless?: boolean;\n\n /**\n * @ignore\n */\n checked?: boolean;\n\n children?: React.ReactNode;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /**\n * Отключенное состояние кнопки.\n */\n disabled?: boolean;\n\n /** @ignore */\n disableFocus?: boolean;\n\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n\n /**\n * Иконка слева от текста кнопки.\n */\n icon?: React.ReactElement<any>;\n\n /**\n * Переводит кнопку в состояние загрузки.\n */\n loading?: boolean;\n\n /**\n * Сужает кнопку.\n */\n narrow?: boolean;\n\n /**\n * HTML-событие `onblur`.\n */\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onclick`.\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onfocus`.\n */\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `keydown`.\n */\n onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onmouseenter`.\n */\n onMouseEnter?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `mouseleave`.\n */\n onMouseLeave?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * HTML-событие `onmouseover`.\n */\n onMouseOver?: React.MouseEventHandler<HTMLButtonElement>;\n\n /**\n * Задаёт размер кнопки.\n *\n * **Допустимые значения**: `\"small\"`, `\"medium\"`, `\"large\"`.\n */\n size?: SizeProp;\n\n /**\n * HTML-атрибут `type`.\n */\n type?: ButtonType;\n\n /**\n * HTML-атрибут `title`.\n */\n title?: string;\n\n /**\n * Стиль кнопки.\n *\n * **Допустимые значения**: `\"default\"`, `\"primary\"`, `\"success\"`, `\"danger\"`, `\"pay\"`, `\"link\"`, `\"text\"`, `\"backless\"`.\n */\n use?: ButtonUse;\n\n /** @ignore */\n visuallyFocused?: boolean;\n\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n\n /**\n * CSS-свойство `width`.\n */\n width?: number | string;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n}\n\nexport interface ButtonState {\n focusedByTab: boolean;\n}\n\nexport const ButtonDataTids = {\n root: 'Button__root',\n spinner: 'Button__spinner',\n} as const;\n\ntype DefaultProps = Required<Pick<ButtonProps, 'use' | 'size' | 'type'>>;\n\n@rootNode\nexport class Button extends React.Component<ButtonProps, ButtonState> {\n public static __KONTUR_REACT_UI__ = 'Button';\n public static __BUTTON__ = true;\n\n public static defaultProps: DefaultProps = {\n use: 'default',\n size: 'small',\n type: 'button',\n };\n\n private getProps = createPropsGetter(Button.defaultProps);\n\n public state = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private node: HTMLButtonElement | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n public static getDerivedStateFromProps(props: ButtonProps) {\n if (props.loading || props.disabled) {\n return { focusedByTab: false };\n }\n return null;\n }\n\n /**\n * @public\n */\n public focus() {\n this.node?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.node?.blur();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderLinkRootWithoutHandlers(props: LinkProps) {\n const { onClick, onFocus, onBlur, children, ...rest } = props;\n return <span {...rest}>{children}</span>;\n }\n\n private renderMain() {\n const {\n corners,\n active,\n disabled,\n borderless,\n checked,\n error,\n warning,\n loading,\n narrow,\n icon,\n _noPadding,\n _noRightPadding,\n visuallyFocused,\n align,\n disableFocus,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onMouseDown,\n onMouseUp,\n onKeyDown,\n onClick,\n onClickCapture,\n width,\n children,\n 'aria-describedby': ariaDescribedby,\n 'aria-haspopup': ariaHasPopup,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n 'aria-checked': ariaChecked,\n 'aria-expanded': ariaExpanded,\n role,\n } = this.props;\n const { use, type, size } = this.getProps();\n const sizeClass = this.getSizeClassName();\n\n const isFocused = this.state.focusedByTab || visuallyFocused;\n const isLink = use === 'link';\n const _isTheme2022 = isTheme2022(this.theme);\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const [wrapClassNameWithArrow, rootClassNameWithArrow, arrowNode] = useButtonArrow(\n { ...this.props, isFocused: Boolean(isFocused) },\n this.theme,\n );\n const isUseStateWithoutOutlineInDisabledState = !['default', 'backless'].includes(use);\n let rootClassName = '';\n if (_isTheme2022) {\n const trueDisabled = disabled || loading;\n rootClassName = cx(\n styles.root(this.theme),\n styles[use](this.theme),\n sizeClass,\n narrow && styles.narrow(),\n _noPadding && styles.noPadding(),\n _noRightPadding && styles.noRightPadding(),\n rootClassNameWithArrow,\n ...(trueDisabled\n ? [\n styles.disabled(this.theme),\n isUseStateWithoutOutlineInDisabledState && styles.disabledWithoutOutline(this.theme),\n checked && styles.checkedDisabled(this.theme),\n checked && styles.checkedDisabled2022(this.theme),\n borderless && styles.borderless2022(),\n ]\n : [\n active && !checked && activeStyles[use](this.theme),\n isFocused && styles.focus(this.theme),\n checked && styles.checked2022(this.theme),\n checked && isFocused && styles.checkedFocused(this.theme),\n borderless && !checked && !isFocused && styles.borderless2022(),\n ]),\n );\n } else {\n rootClassName = cx({\n [styles.root(this.theme)]: true,\n [styles.simulatedPress()]: true,\n [styles[use](this.theme)]: true,\n [activeStyles[use](this.theme)]: active,\n [sizeClass]: true,\n [styles.focus(this.theme)]: isFocused,\n [styles.checked(this.theme)]: checked,\n [styles.checkedFocused(this.theme)]: checked && isFocused,\n [styles.disabled(this.theme)]: disabled || loading,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n [styles.borderless()]: borderless && !disabled && !loading && !checked && !isFocused && !active,\n [styles.narrow()]: narrow,\n [styles.noPadding()]: _noPadding,\n [styles.noRightPadding()]: _noRightPadding,\n });\n }\n\n const rootProps = {\n // By default the type attribute is 'submit'. IE8 will fire a click event\n // on this button if somewhere on the page user presses Enter while some\n // input is focused. So we set type to 'button' by default.\n type,\n role,\n 'aria-describedby': ariaDescribedby,\n 'aria-haspopup': ariaHasPopup,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n 'aria-checked': ariaChecked,\n 'aria-expanded': ariaExpanded,\n className: rootClassName,\n style: {\n textAlign: align,\n ...corners,\n },\n disabled: disabled || loading,\n onClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onKeyDown,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onMouseDown,\n onMouseUp,\n onClickCapture,\n tabIndex: disableFocus ? -1 : 0,\n title: this.props.title,\n };\n\n const wrapProps = {\n className: cx(globalClasses.root, {\n [styles.wrap(this.theme)]: true,\n [wrapClassNameWithArrow]: true,\n [this.getSizeWrapClassName()]: true,\n }),\n style: {\n width,\n },\n };\n\n const innerShadowNode = _isTheme2022 ? null : <div className={globalClasses.innerShadow} />;\n\n let outlineNode = null;\n const isDisabled2022 = _isTheme2022 && (disabled || loading);\n if ((!isFocused || isLink) && !isDisabled2022) {\n outlineNode = (\n <div\n style={{ zIndex: _isTheme2022 && isLink ? -1 : undefined }}\n className={cx(styles.outline(), {\n [styles.outlineWarning(this.theme)]: warning,\n [styles.outlineError(this.theme)]: error,\n [styles.outlineLink()]: isLink,\n [styles.outlineLinkWarning(this.theme)]: isLink && warning,\n [styles.outlineLinkError(this.theme)]: isLink && error,\n })}\n />\n );\n }\n\n const iconNode = icon && (\n <ButtonIcon\n icon={icon}\n size={size}\n hasChildren={Boolean(children)}\n disabled={disabled || false}\n loading={loading || false}\n use={use}\n />\n );\n let loadingNode = null;\n if (loading && !icon) {\n const loadingIcon = _isTheme2022 ? <LoadingIcon size={size} /> : <Spinner caption={null} dimmed type=\"mini\" />;\n loadingNode = (\n <div data-tid={ButtonDataTids.spinner} className={styles.loading()}>\n {loadingIcon}\n </div>\n );\n }\n\n // Force disable all props and features, that cannot be use with Link\n if (isLink) {\n rootProps.className = cx({\n [styles.root(this.theme)]: true,\n [sizeClass]: true,\n [styles.link(this.theme)]: true,\n [styles.linkLineHeight()]: !isSafari || (isSafari && !_isTheme2022),\n [styles.linkLineHeightSafariFallback()]: isSafari && _isTheme2022,\n [styles.linkFocus(this.theme)]: isFocused,\n [styles.linkDisabled(this.theme)]: disabled || loading,\n });\n Object.assign(wrapProps, {\n className: cx(styles.wrap(this.theme), styles.wrapLink()),\n style: { width: wrapProps.style.width },\n });\n rootProps.style.textAlign = undefined;\n }\n\n let captionNode = (\n <div\n className={cx(styles.caption(), globalClasses.caption, {\n [styles.captionTranslated()]: (active || checked) && !loading && !_isTheme2022,\n [styles.captionLink()]: isLink,\n [styles.captionDisabled()]: !checked && disabled,\n })}\n >\n {loadingNode}\n {iconNode}\n <span\n className={cx(globalClasses.text, {\n [styles.visibilityHidden()]: !!loadingNode,\n })}\n >\n {children}\n </span>\n </div>\n );\n if (_isTheme2022 && isLink && !loading) {\n captionNode = (\n <ThemeContext.Provider value={getInnerLinkTheme(this.theme)}>\n <Link\n focused={isFocused}\n disabled={disabled}\n icon={this.renderIcon2022(icon)}\n as={this.renderLinkRootWithoutHandlers}\n tabIndex={-1}\n >\n {children}\n </Link>\n </ThemeContext.Provider>\n );\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span {...wrapProps}>\n <button data-tid={ButtonDataTids.root} ref={this._ref} {...rootProps}>\n {innerShadowNode}\n {outlineNode}\n {arrowNode}\n {captionNode}\n </button>\n </span>\n </CommonWrapper>\n );\n }\n\n private renderIcon2022(icon: React.ReactElement | undefined) {\n if (icon && isKonturIcon(icon)) {\n const sizes = getButtonIconSizes(this.theme);\n return React.cloneElement(icon, { size: icon.props.size ?? sizes[this.getProps().size] });\n }\n\n return icon;\n }\n\n private getSizeClassName() {\n const _isTheme2022 = isTheme2022(this.theme);\n switch (this.getProps().size) {\n case 'large':\n return cx(styles.sizeLarge(this.theme), {\n [styles.sizeLargeIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeLargeWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeLargeWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n case 'medium':\n return cx(styles.sizeMedium(this.theme), {\n [styles.sizeMediumIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeMediumWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeMediumWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n case 'small':\n default:\n return cx(styles.sizeSmall(this.theme), {\n [styles.sizeSmallIE11(this.theme)]: isIE11 || isEdge,\n [styles.sizeSmallWithIcon(this.theme)]: !!this.props.icon,\n [styles.sizeSmallWithIconWithoutText(this.theme)]: _isTheme2022 && !!this.props.icon && !this.props.children,\n });\n }\n }\n\n private getSizeWrapClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.wrapLarge(this.theme);\n case 'medium':\n return styles.wrapMedium(this.theme);\n case 'small':\n default:\n return styles.wrapSmall(this.theme);\n }\n }\n\n private handleFocus = (e: React.FocusEvent<HTMLButtonElement>) => {\n if (!this.props.disabled && !this.props.disableFocus) {\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 this.props.onFocus?.(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLButtonElement>) => {\n this.setState({ focusedByTab: false });\n if (!this.props.disabled && !this.props.disableFocus) {\n this.props.onBlur?.(e);\n }\n };\n\n private _ref = (node: HTMLButtonElement | null) => {\n this.node = node;\n };\n}\n\nexport const isButton = isReactUIComponent<ButtonProps>('Button');\n"]}
@@ -136,3 +136,71 @@ import { Button, Gapped } from '@skbkontur/react-ui';
136
136
  <Button>Ok</Button>
137
137
  </Gapped>
138
138
  ```
139
+
140
+
141
+ Пример кастомизации кнопки-ссылки
142
+
143
+ ```jsx harmony
144
+ import { Toast } from "@skbkontur/react-ui";
145
+ import { Copy } from "@skbkontur/react-icons"
146
+
147
+ const textDecorationStyles = {
148
+ btnLinkLineBorderBottomWidth: '0',
149
+ btnLinkHoverTextDecoration: 'underline'
150
+ }
151
+
152
+ const underlineOnHoverStyles = {
153
+ btnLinkLineBorderBottomColor: 'transparent',
154
+ }
155
+
156
+ const differentColorStyles = {
157
+ btnLinkColor: 'blue',
158
+ btnLinkHoverColor: 'blue',
159
+ btnLinkActiveColor: 'blue',
160
+ }
161
+
162
+ const stringify = (styles) => {
163
+ return `${Object.entries(styles).map(([key, value]) => `${key}: "${value}"`).join(", ")}`
164
+ }
165
+
166
+ const copyStyles = (styles) => {
167
+ navigator.clipboard.writeText(stringify(styles));
168
+ Toast.push('Copied');
169
+ }
170
+
171
+ const tableStyle = {
172
+ borderCollapse: 'collapse',
173
+ width: '100%',
174
+ };
175
+
176
+ const tdStyle = {
177
+ border: '1px solid',
178
+ padding: '8px',
179
+ };
180
+
181
+ const renderExampleRow = (title, styles, index) => {
182
+ return (
183
+ <tr>
184
+ <td style={tdStyle}>{title}</td>
185
+ <td style={tdStyle}><Button use={'link'} theme={styles}>Button-link</Button></td>
186
+ <td style={tdStyle}>
187
+ <div style={{display: 'flex'}}>
188
+ <div style={{width: '80%', whiteSpace: 'pre-line'}}>{stringify(styles).replace(/, /g, '\n')}</div>
189
+ <Button icon={<Copy />} use={'text'} onClick={() => copyStyles(styles)}/>
190
+ </div>
191
+ </td>
192
+ </tr>
193
+ )
194
+ }
195
+
196
+ <table style={tableStyle}>
197
+ <tr style={{textAlign: 'left'}}>
198
+ <th style={tdStyle}></th>
199
+ <th style={tdStyle}>Пример</th>
200
+ <th style={tdStyle}>Переменные темы</th>
201
+ </tr>
202
+ {renderExampleRow('Ссылка с подчеркиванием через text-decoration', textDecorationStyles)}
203
+ {renderExampleRow('Ссылка с подчеркиванием при наведении', underlineOnHoverStyles)}
204
+ {renderExampleRow('Изменение цвета ссылки', differentColorStyles)}
205
+ </table>
206
+ ```
@@ -1,6 +1,6 @@
1
- export declare const buttonUseMixin: (btnBackground: string, btnBackgroundStart: string, btnBackgroundEnd: string, color: string, borderColor: string, borderBottomColor: string, borderWidth: string) => string;
2
- export declare const buttonHoverMixin: (btnBackground: string, btnBackgroundStart: string, btnBackgroundEnd: string, borderColor: string, borderBottomColor: string, borderWidth: string) => string;
3
- export declare const buttonActiveMixin: (btnBackground: string, btnShadow: string, borderColor: string, borderTopColor: string, borderWidth: string, arrowBgImage: string) => string;
4
- export declare const buttonSizeMixin: (fontSize: string, lineHeight: string, paddingX: string, paddingY: string, fontFamilyCompensation: string) => string;
5
- export declare const buttonSizeMixinIE11: (fontSize: string, paddingX: string, paddingY: string, fontFamilyCompensation: string) => string;
6
- export declare const arrowOutlineMixin: (insetWidth: string, outlineColor: string, outlineWidth: string, insetColor: string) => string;
1
+ export declare const buttonUseMixin: ({ btnBackground, btnBackgroundStart, btnBackgroundEnd, color, borderColor, borderBottomColor, borderWidth, }: Record<string, string>) => string;
2
+ export declare const buttonHoverMixin: ({ btnBackground, btnBackgroundStart, btnBackgroundEnd, borderColor, borderBottomColor, borderWidth, }: Record<string, string>) => string;
3
+ export declare const buttonActiveMixin: ({ btnBackground, btnShadow, borderColor, borderTopColor, borderWidth, arrowBgImage, }: Record<string, string>) => string;
4
+ export declare const buttonSizeMixin: ({ fontSize, lineHeight, paddingX, paddingY, fontFamilyCompensation, }: Record<string, string>) => string;
5
+ export declare const buttonSizeMixinIE11: ({ fontSize, paddingX, paddingY, fontFamilyCompensation, }: Record<string, string>) => string;
6
+ export declare const arrowOutlineMixin: ({ insetWidth, outlineColor, outlineWidth, insetColor }: Record<string, string>) => string;