@skbkontur/react-ui 0.0.0-0dca6f33be → 0.0.0-0ffbe8b468

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 (934) hide show
  1. package/CHANGELOG.md +188 -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 +9 -3
  7. package/cjs/components/Button/Button.js +27 -4
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.mixins.js +1 -1
  10. package/cjs/components/Button/Button.mixins.js.map +1 -1
  11. package/cjs/components/Button/Button.styles.d.ts +1 -0
  12. package/cjs/components/Button/Button.styles.js +68 -62
  13. package/cjs/components/Button/Button.styles.js.map +1 -1
  14. package/cjs/components/Button/ButtonIcon.d.ts +3 -2
  15. package/cjs/components/Button/ButtonIcon.js +1 -0
  16. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  17. package/cjs/components/Button/getInnerLinkTheme.js +9 -4
  18. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  19. package/cjs/components/Calendar/Calendar.d.ts +1 -0
  20. package/cjs/components/Calendar/Calendar.js +1 -0
  21. package/cjs/components/Calendar/Calendar.js.map +1 -1
  22. package/cjs/components/Calendar/Calendar.md +14 -3
  23. package/cjs/components/Calendar/Calendar.styles.js +1 -2
  24. package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
  25. package/cjs/components/Calendar/DayCellView.js +9 -2
  26. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  27. package/cjs/components/Calendar/DayCellView.styles.d.ts +1 -1
  28. package/cjs/components/Calendar/DayCellView.styles.js +4 -4
  29. package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
  30. package/cjs/components/Calendar/locale/locales/en.js +3 -1
  31. package/cjs/components/Calendar/locale/locales/en.js.map +1 -1
  32. package/cjs/components/Calendar/locale/locales/ru.js +3 -1
  33. package/cjs/components/Calendar/locale/locales/ru.js.map +1 -1
  34. package/cjs/components/Calendar/locale/types.d.ts +4 -0
  35. package/cjs/components/Checkbox/Checkbox.d.ts +15 -5
  36. package/cjs/components/Checkbox/Checkbox.js +73 -16
  37. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  38. package/cjs/components/Checkbox/Checkbox.md +18 -0
  39. package/cjs/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  40. package/cjs/components/Checkbox/Checkbox.mixins.js +37 -0
  41. package/cjs/components/Checkbox/Checkbox.mixins.js.map +1 -0
  42. package/cjs/components/Checkbox/Checkbox.styles.d.ts +6 -0
  43. package/cjs/components/Checkbox/Checkbox.styles.js +95 -34
  44. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  45. package/cjs/components/ComboBox/ComboBox.d.ts +6 -8
  46. package/cjs/components/ComboBox/ComboBox.js +2 -1
  47. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  48. package/cjs/components/ComboBox/ComboBox.md +51 -5
  49. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  50. package/cjs/components/CurrencyInput/CurrencyHelper.js +21 -6
  51. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  52. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  53. package/cjs/components/CurrencyInput/CurrencyInput.js +2 -0
  54. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  55. package/cjs/components/DateInput/DateInput.d.ts +5 -1
  56. package/cjs/components/DateInput/DateInput.js +24 -8
  57. package/cjs/components/DateInput/DateInput.js.map +1 -1
  58. package/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  59. package/cjs/components/DatePicker/DatePicker.js +13 -2
  60. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  61. package/cjs/components/DatePicker/DatePicker.md +15 -0
  62. package/cjs/components/DatePicker/locale/locales/en.js +4 -1
  63. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  64. package/cjs/components/DatePicker/locale/locales/ru.js +4 -1
  65. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  66. package/cjs/components/DatePicker/locale/types.d.ts +3 -1
  67. package/cjs/components/Dropdown/Dropdown.d.ts +4 -7
  68. package/cjs/components/Dropdown/Dropdown.js +4 -3
  69. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  70. package/cjs/components/Dropdown/Dropdown.md +33 -0
  71. package/cjs/components/Dropdown/getDropdownTheme.js +32 -1
  72. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  73. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  74. package/cjs/components/DropdownMenu/DropdownMenu.js +6 -1
  75. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  76. package/cjs/components/DropdownMenu/DropdownMenu.md +28 -0
  77. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js +5 -1
  78. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
  79. package/cjs/components/FileUploader/FileUploader.d.ts +6 -2
  80. package/cjs/components/FileUploader/FileUploader.js +4 -0
  81. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  82. package/cjs/components/FileUploader/FileUploader.styles.js +3 -2
  83. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  84. package/cjs/components/FxInput/FxInput.d.ts +4 -2
  85. package/cjs/components/FxInput/FxInput.js +6 -1
  86. package/cjs/components/FxInput/FxInput.js.map +1 -1
  87. package/cjs/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  88. package/cjs/components/FxInput/FxInputRestoreBtn.js +7 -2
  89. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  90. package/cjs/components/GlobalLoader/GlobalLoader.js +6 -2
  91. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  92. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +2 -1
  93. package/cjs/components/GlobalLoader/GlobalLoaderView.js +6 -4
  94. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  95. package/cjs/components/Hint/Hint.js +2 -1
  96. package/cjs/components/Hint/Hint.js.map +1 -1
  97. package/cjs/components/Input/Input.d.ts +7 -7
  98. package/cjs/components/Input/Input.js +12 -7
  99. package/cjs/components/Input/Input.js.map +1 -1
  100. package/cjs/components/Input/Input.styles.js +3 -2
  101. package/cjs/components/Input/Input.styles.js.map +1 -1
  102. package/cjs/components/Input/InputLayout/InputLayout.d.ts +3 -2
  103. package/cjs/components/Input/InputLayout/InputLayout.js +4 -3
  104. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  105. package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -1
  106. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  107. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +5 -4
  108. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  109. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  110. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
  111. package/cjs/components/Kebab/Kebab.d.ts +3 -2
  112. package/cjs/components/Kebab/Kebab.js +8 -1
  113. package/cjs/components/Kebab/Kebab.js.map +1 -1
  114. package/cjs/components/Kebab/Kebab.md +28 -0
  115. package/cjs/components/Link/Link.d.ts +2 -2
  116. package/cjs/components/Link/Link.js +20 -4
  117. package/cjs/components/Link/Link.js.map +1 -1
  118. package/cjs/components/Link/Link.mixins.d.ts +1 -2
  119. package/cjs/components/Link/Link.mixins.js +5 -16
  120. package/cjs/components/Link/Link.mixins.js.map +1 -1
  121. package/cjs/components/Link/Link.styles.d.ts +4 -0
  122. package/cjs/components/Link/Link.styles.js +96 -37
  123. package/cjs/components/Link/Link.styles.js.map +1 -1
  124. package/cjs/components/MenuFooter/MenuFooter.d.ts +30 -0
  125. package/cjs/components/MenuFooter/MenuFooter.js +83 -0
  126. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -0
  127. package/cjs/components/MenuFooter/MenuFooter.md +27 -0
  128. package/cjs/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  129. package/cjs/components/MenuFooter/MenuFooter.mixins.js +26 -0
  130. package/cjs/components/MenuFooter/MenuFooter.mixins.js.map +1 -0
  131. package/cjs/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  132. package/cjs/components/MenuFooter/MenuFooter.styles.js +65 -0
  133. package/cjs/components/MenuFooter/MenuFooter.styles.js.map +1 -0
  134. package/cjs/components/MenuFooter/index.d.ts +1 -0
  135. package/cjs/components/MenuFooter/index.js +1 -0
  136. package/cjs/components/MenuFooter/index.js.map +1 -0
  137. package/cjs/components/MenuHeader/MenuHeader.d.ts +8 -1
  138. package/cjs/components/MenuHeader/MenuHeader.js +35 -4
  139. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  140. package/cjs/components/MenuHeader/MenuHeader.md +12 -0
  141. package/cjs/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  142. package/cjs/components/MenuHeader/MenuHeader.mixins.js +26 -0
  143. package/cjs/components/MenuHeader/MenuHeader.mixins.js.map +1 -0
  144. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  145. package/cjs/components/MenuHeader/MenuHeader.styles.js +54 -12
  146. package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  147. package/cjs/components/MenuItem/MenuItem.d.ts +14 -5
  148. package/cjs/components/MenuItem/MenuItem.js +61 -9
  149. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  150. package/cjs/components/MenuItem/MenuItem.md +12 -0
  151. package/cjs/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  152. package/cjs/components/MenuItem/MenuItem.mixins.js +42 -0
  153. package/cjs/components/MenuItem/MenuItem.mixins.js.map +1 -0
  154. package/cjs/components/MenuItem/MenuItem.styles.d.ts +9 -1
  155. package/cjs/components/MenuItem/MenuItem.styles.js +80 -27
  156. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  157. package/cjs/components/Modal/Modal.md +16 -0
  158. package/cjs/components/Modal/ModalClose.js +5 -1
  159. package/cjs/components/Modal/ModalClose.js.map +1 -1
  160. package/cjs/components/Modal/locale/index.d.ts +4 -0
  161. package/cjs/components/Modal/locale/index.js +11 -0
  162. package/cjs/components/Modal/locale/index.js.map +1 -0
  163. package/cjs/components/Modal/locale/locales/en.d.ts +2 -0
  164. package/cjs/components/Modal/locale/locales/en.js +4 -0
  165. package/cjs/components/Modal/locale/locales/en.js.map +1 -0
  166. package/cjs/components/Modal/locale/locales/ru.d.ts +2 -0
  167. package/cjs/components/Modal/locale/locales/ru.js +4 -0
  168. package/cjs/components/Modal/locale/locales/ru.js.map +1 -0
  169. package/cjs/components/Modal/locale/types.d.ts +3 -0
  170. package/cjs/components/Modal/locale/types.js +1 -0
  171. package/cjs/components/Modal/locale/types.js.map +1 -0
  172. package/cjs/components/Paging/Paging.js +1 -1
  173. package/cjs/components/Paging/Paging.js.map +1 -1
  174. package/cjs/components/Paging/Paging.styles.js +2 -1
  175. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  176. package/cjs/components/PasswordInput/PasswordInput.d.ts +3 -2
  177. package/cjs/components/PasswordInput/PasswordInput.js +13 -4
  178. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  179. package/cjs/components/PasswordInput/PasswordInput.md +19 -0
  180. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  181. package/cjs/components/PasswordInput/PasswordInput.styles.js +11 -1
  182. package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  183. package/cjs/components/PasswordInput/locale/index.d.ts +4 -0
  184. package/cjs/components/PasswordInput/locale/index.js +11 -0
  185. package/cjs/components/PasswordInput/locale/index.js.map +1 -0
  186. package/cjs/components/PasswordInput/locale/locales/en.d.ts +2 -0
  187. package/cjs/components/PasswordInput/locale/locales/en.js +5 -0
  188. package/cjs/components/PasswordInput/locale/locales/en.js.map +1 -0
  189. package/cjs/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  190. package/cjs/components/PasswordInput/locale/locales/ru.js +5 -0
  191. package/cjs/components/PasswordInput/locale/locales/ru.js.map +1 -0
  192. package/cjs/components/PasswordInput/locale/types.d.ts +4 -0
  193. package/cjs/components/PasswordInput/locale/types.js +1 -0
  194. package/cjs/components/PasswordInput/locale/types.js.map +1 -0
  195. package/cjs/components/Radio/Radio.d.ts +15 -3
  196. package/cjs/components/Radio/Radio.js +58 -6
  197. package/cjs/components/Radio/Radio.js.map +1 -1
  198. package/cjs/components/Radio/Radio.md +18 -0
  199. package/cjs/components/Radio/Radio.mixins.d.ts +5 -0
  200. package/cjs/components/Radio/Radio.mixins.js +71 -0
  201. package/cjs/components/Radio/Radio.mixins.js.map +1 -0
  202. package/cjs/components/Radio/Radio.styles.d.ts +9 -0
  203. package/cjs/components/Radio/Radio.styles.js +93 -57
  204. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  205. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +3 -2
  206. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -1
  207. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  208. package/cjs/components/Select/Select.d.ts +12 -10
  209. package/cjs/components/Select/Select.js +30 -9
  210. package/cjs/components/Select/Select.js.map +1 -1
  211. package/cjs/components/Select/Select.md +17 -0
  212. package/cjs/components/Select/Select.styles.js +3 -2
  213. package/cjs/components/Select/Select.styles.js.map +1 -1
  214. package/cjs/components/Select/selectTheme.js +4 -1
  215. package/cjs/components/Select/selectTheme.js.map +1 -1
  216. package/cjs/components/SidePage/SidePage.js +5 -1
  217. package/cjs/components/SidePage/SidePage.js.map +1 -1
  218. package/cjs/components/SidePage/SidePage.md +16 -0
  219. package/cjs/components/SidePage/SidePageCloseButton.d.ts +1 -0
  220. package/cjs/components/SidePage/SidePageCloseButton.js +47 -0
  221. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -0
  222. package/cjs/components/SidePage/SidePageHeader.d.ts +0 -4
  223. package/cjs/components/SidePage/SidePageHeader.js +7 -41
  224. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  225. package/cjs/components/SidePage/locale/index.d.ts +4 -0
  226. package/cjs/components/SidePage/locale/index.js +11 -0
  227. package/cjs/components/SidePage/locale/index.js.map +1 -0
  228. package/cjs/components/SidePage/locale/locales/en.d.ts +2 -0
  229. package/cjs/components/SidePage/locale/locales/en.js +4 -0
  230. package/cjs/components/SidePage/locale/locales/en.js.map +1 -0
  231. package/cjs/components/SidePage/locale/locales/ru.d.ts +2 -0
  232. package/cjs/components/SidePage/locale/locales/ru.js +4 -0
  233. package/cjs/components/SidePage/locale/locales/ru.js.map +1 -0
  234. package/cjs/components/SidePage/locale/types.d.ts +3 -0
  235. package/cjs/components/SidePage/locale/types.js +1 -0
  236. package/cjs/components/SidePage/locale/types.js.map +1 -0
  237. package/cjs/components/Sticky/Sticky.js +10 -3
  238. package/cjs/components/Sticky/Sticky.js.map +1 -1
  239. package/cjs/components/Switcher/Switcher.d.ts +12 -7
  240. package/cjs/components/Switcher/Switcher.js +16 -5
  241. package/cjs/components/Switcher/Switcher.js.map +1 -1
  242. package/cjs/components/Tabs/Tab.d.ts +17 -36
  243. package/cjs/components/Tabs/Tab.js +24 -21
  244. package/cjs/components/Tabs/Tab.js.map +1 -1
  245. package/cjs/components/Tabs/Tab.md +71 -0
  246. package/cjs/components/Tabs/Tab.styles.d.ts +9 -3
  247. package/cjs/components/Tabs/Tab.styles.js +106 -68
  248. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  249. package/cjs/components/Tabs/Tabs.d.ts +16 -15
  250. package/cjs/components/Tabs/Tabs.js +12 -4
  251. package/cjs/components/Tabs/Tabs.js.map +1 -1
  252. package/cjs/components/Tabs/Tabs.md +39 -22
  253. package/cjs/components/Tabs/Tabs.styles.d.ts +3 -1
  254. package/cjs/components/Tabs/Tabs.styles.js +23 -7
  255. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  256. package/cjs/components/Tabs/TabsContext.d.ts +2 -0
  257. package/cjs/components/Tabs/TabsContext.js +3 -0
  258. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  259. package/cjs/components/Tabs/helpers.d.ts +6 -0
  260. package/cjs/components/Tabs/helpers.js +31 -0
  261. package/cjs/components/Tabs/helpers.js.map +1 -0
  262. package/cjs/components/Textarea/Textarea.d.ts +12 -3
  263. package/cjs/components/Textarea/Textarea.js +48 -7
  264. package/cjs/components/Textarea/Textarea.js.map +1 -1
  265. package/cjs/components/Textarea/Textarea.md +12 -0
  266. package/cjs/components/Textarea/Textarea.mixins.d.ts +3 -0
  267. package/cjs/components/Textarea/Textarea.mixins.js +22 -0
  268. package/cjs/components/Textarea/Textarea.mixins.js.map +1 -0
  269. package/cjs/components/Textarea/Textarea.styles.d.ts +10 -1
  270. package/cjs/components/Textarea/Textarea.styles.js +64 -23
  271. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  272. package/cjs/components/Textarea/TextareaCounter.d.ts +2 -0
  273. package/cjs/components/Textarea/TextareaCounter.js +17 -3
  274. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  275. package/cjs/components/Toast/Toast.d.ts +3 -2
  276. package/cjs/components/Toast/Toast.js +3 -1
  277. package/cjs/components/Toast/Toast.js.map +1 -1
  278. package/cjs/components/Toast/ToastView.d.ts +6 -6
  279. package/cjs/components/Toast/ToastView.js +19 -6
  280. package/cjs/components/Toast/ToastView.js.map +1 -1
  281. package/cjs/components/Toast/ToastView.styles.js +5 -2
  282. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  283. package/cjs/components/Toast/locale/index.d.ts +4 -0
  284. package/cjs/components/Toast/locale/index.js +11 -0
  285. package/cjs/components/Toast/locale/index.js.map +1 -0
  286. package/cjs/components/Toast/locale/locales/en.d.ts +2 -0
  287. package/cjs/components/Toast/locale/locales/en.js +4 -0
  288. package/cjs/components/Toast/locale/locales/en.js.map +1 -0
  289. package/cjs/components/Toast/locale/locales/ru.d.ts +2 -0
  290. package/cjs/components/Toast/locale/locales/ru.js +4 -0
  291. package/cjs/components/Toast/locale/locales/ru.js.map +1 -0
  292. package/cjs/components/Toast/locale/types.d.ts +3 -0
  293. package/cjs/components/Toast/locale/types.js +1 -0
  294. package/cjs/components/Toast/locale/types.js.map +1 -0
  295. package/cjs/components/Toggle/Toggle.d.ts +16 -6
  296. package/cjs/components/Toggle/Toggle.js +112 -3
  297. package/cjs/components/Toggle/Toggle.js.map +1 -1
  298. package/cjs/components/Toggle/Toggle.md +18 -2
  299. package/cjs/components/Toggle/Toggle.mixins.d.ts +7 -0
  300. package/cjs/components/Toggle/Toggle.mixins.js +90 -0
  301. package/cjs/components/Toggle/Toggle.mixins.js.map +1 -0
  302. package/cjs/components/Toggle/Toggle.styles.d.ts +21 -1
  303. package/cjs/components/Toggle/Toggle.styles.js +172 -56
  304. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  305. package/cjs/components/Token/Token.d.ts +2 -5
  306. package/cjs/components/Token/Token.js +15 -8
  307. package/cjs/components/Token/Token.js.map +1 -1
  308. package/cjs/components/Token/locale/index.d.ts +4 -0
  309. package/cjs/components/Token/locale/index.js +11 -0
  310. package/cjs/components/Token/locale/index.js.map +1 -0
  311. package/cjs/components/Token/locale/locales/en.d.ts +2 -0
  312. package/cjs/components/Token/locale/locales/en.js +4 -0
  313. package/cjs/components/Token/locale/locales/en.js.map +1 -0
  314. package/cjs/components/Token/locale/locales/ru.d.ts +2 -0
  315. package/cjs/components/Token/locale/locales/ru.js +4 -0
  316. package/cjs/components/Token/locale/locales/ru.js.map +1 -0
  317. package/cjs/components/Token/locale/types.d.ts +3 -0
  318. package/cjs/components/Token/locale/types.js +1 -0
  319. package/cjs/components/Token/locale/types.js.map +1 -0
  320. package/cjs/components/TokenInput/TokenInput.d.ts +3 -5
  321. package/cjs/components/TokenInput/TokenInput.js +11 -8
  322. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  323. package/cjs/components/TokenInput/TokenInput.md +26 -35
  324. package/cjs/components/TokenInput/TokenInput.styles.js +2 -1
  325. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  326. package/cjs/components/TokenInput/TokenInputMenu.d.ts +7 -0
  327. package/cjs/components/TokenInput/TokenInputMenu.js +9 -1
  328. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  329. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  330. package/cjs/components/TooltipMenu/TooltipMenu.js +10 -2
  331. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  332. package/cjs/components/TooltipMenu/TooltipMenu.md +28 -0
  333. package/cjs/index.d.ts +1 -0
  334. package/cjs/index.js +1 -0
  335. package/cjs/index.js.map +1 -1
  336. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  337. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +3 -0
  338. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  339. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +2 -1
  340. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
  341. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  342. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +37 -2
  343. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  344. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  345. package/cjs/internal/CustomComboBox/ComboBoxView.js +32 -34
  346. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  347. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  348. package/cjs/internal/CustomComboBox/CustomComboBox.js +21 -12
  349. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  350. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  351. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +4 -0
  352. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  353. package/cjs/internal/DateSelect/DateSelect.d.ts +2 -0
  354. package/cjs/internal/DateSelect/DateSelect.js +31 -2
  355. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  356. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  357. package/cjs/internal/DateSelect/DateSelect.styles.js +26 -4
  358. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  359. package/cjs/internal/DateSelect/locale/index.d.ts +4 -0
  360. package/cjs/internal/DateSelect/locale/index.js +11 -0
  361. package/cjs/internal/DateSelect/locale/index.js.map +1 -0
  362. package/cjs/internal/DateSelect/locale/locales/en.d.ts +2 -0
  363. package/cjs/internal/DateSelect/locale/locales/en.js +6 -0
  364. package/cjs/internal/DateSelect/locale/locales/en.js.map +1 -0
  365. package/cjs/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  366. package/cjs/internal/DateSelect/locale/locales/ru.js +6 -0
  367. package/cjs/internal/DateSelect/locale/locales/ru.js.map +1 -0
  368. package/cjs/internal/DateSelect/locale/types.d.ts +5 -0
  369. package/cjs/internal/DateSelect/locale/types.js +1 -0
  370. package/cjs/internal/DateSelect/locale/types.js.map +1 -0
  371. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +3 -2
  372. package/cjs/internal/DropdownContainer/DropdownContainer.js +6 -1
  373. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  374. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  375. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +9 -7
  376. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  377. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  378. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +1 -1
  379. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  380. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  381. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -1
  382. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  383. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  384. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -1
  385. package/cjs/internal/InputLikeText/InputLikeText.d.ts +1 -0
  386. package/cjs/internal/InputLikeText/InputLikeText.js +16 -4
  387. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  388. package/cjs/internal/InternalMenu/InternalMenu.d.ts +13 -4
  389. package/cjs/internal/InternalMenu/InternalMenu.js +15 -5
  390. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  391. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  392. package/cjs/internal/InternalMenu/InternalMenu.styles.js +13 -7
  393. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  394. package/cjs/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  395. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js +9 -0
  396. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js.map +1 -0
  397. package/cjs/internal/Menu/Menu.d.ts +42 -8
  398. package/cjs/internal/Menu/Menu.js +272 -78
  399. package/cjs/internal/Menu/Menu.js.map +1 -1
  400. package/cjs/internal/Menu/Menu.styles.d.ts +6 -1
  401. package/cjs/internal/Menu/Menu.styles.js +42 -8
  402. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  403. package/cjs/internal/MenuMessage/MenuMessage.d.ts +2 -0
  404. package/cjs/internal/MenuMessage/MenuMessage.js +18 -3
  405. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  406. package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  407. package/cjs/internal/MenuMessage/MenuMessage.styles.js +21 -6
  408. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  409. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -2
  410. package/cjs/internal/MobilePopup/MobilePopup.js +1 -1
  411. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  412. package/cjs/internal/Popup/Popup.d.ts +7 -2
  413. package/cjs/internal/Popup/Popup.js +13 -3
  414. package/cjs/internal/Popup/Popup.js.map +1 -1
  415. package/cjs/internal/PopupMenu/PopupMenu.d.ts +5 -2
  416. package/cjs/internal/PopupMenu/PopupMenu.js +33 -4
  417. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  418. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  419. package/cjs/internal/ThemePlayground/SizesGroup.js +1 -0
  420. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  421. package/cjs/internal/ThemePlayground/darkTheme.d.ts +1 -1
  422. package/cjs/internal/ThemePlayground/darkTheme.js +1 -1
  423. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  424. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  425. package/cjs/internal/themes/DarkTheme.d.ts +2 -0
  426. package/cjs/internal/themes/DarkTheme.js +11 -3
  427. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  428. package/cjs/internal/themes/DefaultTheme.d.ts +280 -19
  429. package/cjs/internal/themes/DefaultTheme.js +604 -94
  430. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  431. package/cjs/internal/themes/Theme2022.d.ts +28 -4
  432. package/cjs/internal/themes/Theme2022.js +53 -19
  433. package/cjs/internal/themes/Theme2022.js.map +1 -1
  434. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -7
  435. package/cjs/internal/themes/Theme2022Dark.js +8 -18
  436. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  437. package/cjs/lib/locale/types.d.ts +6 -0
  438. package/cjs/lib/locale/types.js +6 -0
  439. package/cjs/lib/locale/types.js.map +1 -1
  440. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  441. package/cjs/lib/rootNode/rootNodeDecorator.js +7 -3
  442. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  443. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  444. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js +7 -2
  445. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
  446. package/cjs/lib/types/props.d.ts +1 -0
  447. package/cjs/lib/types/props.js +1 -0
  448. package/cjs/lib/types/props.js.map +1 -0
  449. package/components/Autocomplete/Autocomplete/Autocomplete.js +18 -5
  450. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  451. package/components/Autocomplete/Autocomplete.d.ts +9 -3
  452. package/components/Autocomplete/Autocomplete.md +17 -0
  453. package/components/Button/Button/Button.js +17 -2
  454. package/components/Button/Button/Button.js.map +1 -1
  455. package/components/Button/Button.d.ts +9 -3
  456. package/components/Button/Button.mixins/Button.mixins.js +1 -1
  457. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  458. package/components/Button/Button.styles/Button.styles.js +61 -58
  459. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  460. package/components/Button/Button.styles.d.ts +1 -0
  461. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  462. package/components/Button/ButtonIcon.d.ts +3 -2
  463. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +9 -4
  464. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  465. package/components/Calendar/Calendar/Calendar.js +1 -0
  466. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  467. package/components/Calendar/Calendar.d.ts +1 -0
  468. package/components/Calendar/Calendar.md +14 -3
  469. package/components/Calendar/Calendar.styles/Calendar.styles.js +1 -1
  470. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
  471. package/components/Calendar/DayCellView/DayCellView.js +7 -1
  472. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  473. package/components/Calendar/DayCellView.styles/DayCellView.styles.js +2 -2
  474. package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  475. package/components/Calendar/DayCellView.styles.d.ts +1 -1
  476. package/components/Calendar/locale/locales/en/en.js +2 -1
  477. package/components/Calendar/locale/locales/en/en.js.map +1 -1
  478. package/components/Calendar/locale/locales/ru/ru.js +2 -1
  479. package/components/Calendar/locale/locales/ru/ru.js.map +1 -1
  480. package/components/Calendar/locale/types.d.ts +4 -0
  481. package/components/Checkbox/Checkbox/Checkbox.js +62 -8
  482. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  483. package/components/Checkbox/Checkbox.d.ts +15 -5
  484. package/components/Checkbox/Checkbox.md +18 -0
  485. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js +16 -0
  486. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js.map +1 -0
  487. package/components/Checkbox/Checkbox.mixins/package.json +6 -0
  488. package/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  489. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +39 -25
  490. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  491. package/components/Checkbox/Checkbox.styles.d.ts +6 -0
  492. package/components/ComboBox/ComboBox/ComboBox.js +1 -0
  493. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  494. package/components/ComboBox/ComboBox.d.ts +6 -8
  495. package/components/ComboBox/ComboBox.md +51 -5
  496. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +32 -4
  497. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  498. package/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  499. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +1 -0
  500. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  501. package/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  502. package/components/DateInput/DateInput/DateInput.js +26 -9
  503. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  504. package/components/DateInput/DateInput.d.ts +5 -1
  505. package/components/DatePicker/DatePicker/DatePicker.js +7 -1
  506. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  507. package/components/DatePicker/DatePicker.d.ts +2 -1
  508. package/components/DatePicker/DatePicker.md +15 -0
  509. package/components/DatePicker/locale/locales/en/en.js +4 -2
  510. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  511. package/components/DatePicker/locale/locales/ru/ru.js +4 -2
  512. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  513. package/components/DatePicker/locale/types.d.ts +3 -1
  514. package/components/Dropdown/Dropdown/Dropdown.js +3 -1
  515. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  516. package/components/Dropdown/Dropdown.d.ts +4 -7
  517. package/components/Dropdown/Dropdown.md +33 -0
  518. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +27 -1
  519. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  520. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -0
  521. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  522. package/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  523. package/components/DropdownMenu/DropdownMenu.md +28 -0
  524. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js +5 -1
  525. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js.map +1 -1
  526. package/components/FileUploader/FileUploader/FileUploader.js +4 -0
  527. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  528. package/components/FileUploader/FileUploader.d.ts +6 -2
  529. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +1 -1
  530. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  531. package/components/FxInput/FxInput/FxInput.js +2 -1
  532. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  533. package/components/FxInput/FxInput.d.ts +4 -2
  534. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +4 -2
  535. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  536. package/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  537. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +5 -1
  538. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  539. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +6 -2
  540. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  541. package/components/GlobalLoader/GlobalLoaderView.d.ts +2 -1
  542. package/components/Hint/Hint/Hint.js +2 -1
  543. package/components/Hint/Hint/Hint.js.map +1 -1
  544. package/components/Input/Input/Input.js +10 -2
  545. package/components/Input/Input/Input.js.map +1 -1
  546. package/components/Input/Input.d.ts +7 -7
  547. package/components/Input/Input.styles/Input.styles.js +2 -2
  548. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  549. package/components/Input/InputLayout/InputLayout/InputLayout.js +4 -2
  550. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  551. package/components/Input/InputLayout/InputLayout.d.ts +3 -2
  552. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +1 -2
  553. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  554. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +7 -5
  555. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  556. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -1
  557. package/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  558. package/components/Kebab/Kebab/Kebab.js +7 -3
  559. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  560. package/components/Kebab/Kebab.d.ts +3 -2
  561. package/components/Kebab/Kebab.md +28 -0
  562. package/components/Link/Link/Link.js +12 -6
  563. package/components/Link/Link/Link.js.map +1 -1
  564. package/components/Link/Link.d.ts +2 -2
  565. package/components/Link/Link.mixins/Link.mixins.js +2 -5
  566. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  567. package/components/Link/Link.mixins.d.ts +1 -2
  568. package/components/Link/Link.styles/Link.styles.js +45 -21
  569. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  570. package/components/Link/Link.styles.d.ts +4 -0
  571. package/components/MenuFooter/MenuFooter/MenuFooter.js +74 -0
  572. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -0
  573. package/components/MenuFooter/MenuFooter/package.json +6 -0
  574. package/components/MenuFooter/MenuFooter.d.ts +30 -0
  575. package/components/MenuFooter/MenuFooter.md +27 -0
  576. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js +13 -0
  577. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js.map +1 -0
  578. package/components/MenuFooter/MenuFooter.mixins/package.json +6 -0
  579. package/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  580. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js +29 -0
  581. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js.map +1 -0
  582. package/components/MenuFooter/MenuFooter.styles/package.json +6 -0
  583. package/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  584. package/components/MenuFooter/index/index.js +1 -0
  585. package/components/MenuFooter/index/index.js.map +1 -0
  586. package/components/MenuFooter/index/package.json +6 -0
  587. package/components/MenuFooter/index.d.ts +1 -0
  588. package/components/MenuFooter/package.json +6 -0
  589. package/components/MenuHeader/MenuHeader/MenuHeader.js +37 -2
  590. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  591. package/components/MenuHeader/MenuHeader.d.ts +8 -1
  592. package/components/MenuHeader/MenuHeader.md +12 -0
  593. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js +13 -0
  594. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js.map +1 -0
  595. package/components/MenuHeader/MenuHeader.mixins/package.json +6 -0
  596. package/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  597. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js +20 -6
  598. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
  599. package/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  600. package/components/MenuItem/MenuItem/MenuItem.js +54 -8
  601. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  602. package/components/MenuItem/MenuItem.d.ts +14 -5
  603. package/components/MenuItem/MenuItem.md +12 -0
  604. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js +24 -0
  605. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js.map +1 -0
  606. package/components/MenuItem/MenuItem.mixins/package.json +6 -0
  607. package/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  608. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +39 -23
  609. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  610. package/components/MenuItem/MenuItem.styles.d.ts +9 -1
  611. package/components/Modal/Modal.md +16 -0
  612. package/components/Modal/ModalClose/ModalClose.js +4 -0
  613. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  614. package/components/Modal/locale/index/index.js +8 -0
  615. package/components/Modal/locale/index/index.js.map +1 -0
  616. package/components/Modal/locale/index/package.json +6 -0
  617. package/components/Modal/locale/index.d.ts +4 -0
  618. package/components/Modal/locale/locales/en/en.js +3 -0
  619. package/components/Modal/locale/locales/en/en.js.map +1 -0
  620. package/components/Modal/locale/locales/en/package.json +6 -0
  621. package/components/Modal/locale/locales/en.d.ts +2 -0
  622. package/components/Modal/locale/locales/ru/package.json +6 -0
  623. package/components/Modal/locale/locales/ru/ru.js +3 -0
  624. package/components/Modal/locale/locales/ru/ru.js.map +1 -0
  625. package/components/Modal/locale/locales/ru.d.ts +2 -0
  626. package/components/Modal/locale/package.json +6 -0
  627. package/components/Modal/locale/types/package.json +6 -0
  628. package/components/Modal/locale/types/types.js +1 -0
  629. package/components/Modal/locale/types/types.js.map +1 -0
  630. package/components/Modal/locale/types.d.ts +3 -0
  631. package/components/Paging/Paging/Paging.js +1 -1
  632. package/components/Paging/Paging/Paging.js.map +1 -1
  633. package/components/Paging/Paging.styles/Paging.styles.js +1 -1
  634. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  635. package/components/PasswordInput/PasswordInput/PasswordInput.js +8 -4
  636. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  637. package/components/PasswordInput/PasswordInput.d.ts +3 -2
  638. package/components/PasswordInput/PasswordInput.md +19 -0
  639. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js +4 -1
  640. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
  641. package/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  642. package/components/PasswordInput/locale/index/index.js +8 -0
  643. package/components/PasswordInput/locale/index/index.js.map +1 -0
  644. package/components/PasswordInput/locale/index/package.json +6 -0
  645. package/components/PasswordInput/locale/index.d.ts +4 -0
  646. package/components/PasswordInput/locale/locales/en/en.js +4 -0
  647. package/components/PasswordInput/locale/locales/en/en.js.map +1 -0
  648. package/components/PasswordInput/locale/locales/en/package.json +6 -0
  649. package/components/PasswordInput/locale/locales/en.d.ts +2 -0
  650. package/components/PasswordInput/locale/locales/ru/package.json +6 -0
  651. package/components/PasswordInput/locale/locales/ru/ru.js +4 -0
  652. package/components/PasswordInput/locale/locales/ru/ru.js.map +1 -0
  653. package/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  654. package/components/PasswordInput/locale/package.json +6 -0
  655. package/components/PasswordInput/locale/types/package.json +6 -0
  656. package/components/PasswordInput/locale/types/types.js +1 -0
  657. package/components/PasswordInput/locale/types/types.js.map +1 -0
  658. package/components/PasswordInput/locale/types.d.ts +4 -0
  659. package/components/Radio/Radio/Radio.js +54 -6
  660. package/components/Radio/Radio/Radio.js.map +1 -1
  661. package/components/Radio/Radio.d.ts +15 -3
  662. package/components/Radio/Radio.md +18 -0
  663. package/components/Radio/Radio.mixins/Radio.mixins.js +28 -0
  664. package/components/Radio/Radio.mixins/Radio.mixins.js.map +1 -0
  665. package/components/Radio/Radio.mixins/package.json +6 -0
  666. package/components/Radio/Radio.mixins.d.ts +5 -0
  667. package/components/Radio/Radio.styles/Radio.styles.js +44 -29
  668. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  669. package/components/Radio/Radio.styles.d.ts +9 -0
  670. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  671. package/components/ScrollContainer/ScrollContainer.d.ts +3 -2
  672. package/components/Select/Select/Select.js +34 -9
  673. package/components/Select/Select/Select.js.map +1 -1
  674. package/components/Select/Select.d.ts +12 -10
  675. package/components/Select/Select.md +17 -0
  676. package/components/Select/Select.styles/Select.styles.js +1 -1
  677. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  678. package/components/Select/selectTheme/selectTheme.js +3 -1
  679. package/components/Select/selectTheme/selectTheme.js.map +1 -1
  680. package/components/SidePage/SidePage/SidePage.js +4 -4
  681. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  682. package/components/SidePage/SidePage.md +16 -0
  683. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +42 -0
  684. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -0
  685. package/components/SidePage/SidePageCloseButton/package.json +6 -0
  686. package/components/SidePage/SidePageCloseButton.d.ts +1 -0
  687. package/components/SidePage/SidePageHeader/SidePageHeader.js +4 -38
  688. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  689. package/components/SidePage/SidePageHeader.d.ts +0 -4
  690. package/components/SidePage/locale/index/index.js +8 -0
  691. package/components/SidePage/locale/index/index.js.map +1 -0
  692. package/components/SidePage/locale/index/package.json +6 -0
  693. package/components/SidePage/locale/index.d.ts +4 -0
  694. package/components/SidePage/locale/locales/en/en.js +3 -0
  695. package/components/SidePage/locale/locales/en/en.js.map +1 -0
  696. package/components/SidePage/locale/locales/en/package.json +6 -0
  697. package/components/SidePage/locale/locales/en.d.ts +2 -0
  698. package/components/SidePage/locale/locales/ru/package.json +6 -0
  699. package/components/SidePage/locale/locales/ru/ru.js +3 -0
  700. package/components/SidePage/locale/locales/ru/ru.js.map +1 -0
  701. package/components/SidePage/locale/locales/ru.d.ts +2 -0
  702. package/components/SidePage/locale/package.json +6 -0
  703. package/components/SidePage/locale/types/package.json +6 -0
  704. package/components/SidePage/locale/types/types.js +1 -0
  705. package/components/SidePage/locale/types/types.js.map +1 -0
  706. package/components/SidePage/locale/types.d.ts +3 -0
  707. package/components/Sticky/Sticky/Sticky.js +12 -3
  708. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  709. package/components/Switcher/Switcher/Switcher.js +9 -3
  710. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  711. package/components/Switcher/Switcher.d.ts +12 -7
  712. package/components/Tabs/Tab/Tab.js +12 -18
  713. package/components/Tabs/Tab/Tab.js.map +1 -1
  714. package/components/Tabs/Tab.d.ts +17 -36
  715. package/components/Tabs/Tab.md +71 -0
  716. package/components/Tabs/Tab.styles/Tab.styles.js +52 -23
  717. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  718. package/components/Tabs/Tab.styles.d.ts +9 -3
  719. package/components/Tabs/Tabs/Tabs.js +12 -6
  720. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  721. package/components/Tabs/Tabs.d.ts +16 -15
  722. package/components/Tabs/Tabs.md +39 -22
  723. package/components/Tabs/Tabs.styles/Tabs.styles.js +15 -4
  724. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  725. package/components/Tabs/Tabs.styles.d.ts +3 -1
  726. package/components/Tabs/TabsContext/TabsContext.js +1 -0
  727. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  728. package/components/Tabs/TabsContext.d.ts +2 -0
  729. package/components/Tabs/helpers/helpers.js +28 -0
  730. package/components/Tabs/helpers/helpers.js.map +1 -0
  731. package/components/Tabs/helpers/package.json +6 -0
  732. package/components/Tabs/helpers.d.ts +6 -0
  733. package/components/Textarea/Textarea/Textarea.js +39 -4
  734. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  735. package/components/Textarea/Textarea.d.ts +12 -3
  736. package/components/Textarea/Textarea.md +12 -0
  737. package/components/Textarea/Textarea.mixins/Textarea.mixins.js +14 -0
  738. package/components/Textarea/Textarea.mixins/Textarea.mixins.js.map +1 -0
  739. package/components/Textarea/Textarea.mixins/package.json +6 -0
  740. package/components/Textarea/Textarea.mixins.d.ts +3 -0
  741. package/components/Textarea/Textarea.styles/Textarea.styles.js +43 -15
  742. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  743. package/components/Textarea/Textarea.styles.d.ts +10 -1
  744. package/components/Textarea/TextareaCounter/TextareaCounter.js +19 -3
  745. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  746. package/components/Textarea/TextareaCounter.d.ts +2 -0
  747. package/components/Toast/Toast/Toast.js +1 -0
  748. package/components/Toast/Toast/Toast.js.map +1 -1
  749. package/components/Toast/Toast.d.ts +3 -2
  750. package/components/Toast/ToastView/ToastView.js +9 -4
  751. package/components/Toast/ToastView/ToastView.js.map +1 -1
  752. package/components/Toast/ToastView.d.ts +6 -6
  753. package/components/Toast/ToastView.styles/ToastView.styles.js +1 -1
  754. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  755. package/components/Toast/locale/index/index.js +8 -0
  756. package/components/Toast/locale/index/index.js.map +1 -0
  757. package/components/Toast/locale/index/package.json +6 -0
  758. package/components/Toast/locale/index.d.ts +4 -0
  759. package/components/Toast/locale/locales/en/en.js +3 -0
  760. package/components/Toast/locale/locales/en/en.js.map +1 -0
  761. package/components/Toast/locale/locales/en/package.json +6 -0
  762. package/components/Toast/locale/locales/en.d.ts +2 -0
  763. package/components/Toast/locale/locales/ru/package.json +6 -0
  764. package/components/Toast/locale/locales/ru/ru.js +3 -0
  765. package/components/Toast/locale/locales/ru/ru.js.map +1 -0
  766. package/components/Toast/locale/locales/ru.d.ts +2 -0
  767. package/components/Toast/locale/package.json +6 -0
  768. package/components/Toast/locale/types/package.json +6 -0
  769. package/components/Toast/locale/types/types.js +1 -0
  770. package/components/Toast/locale/types/types.js.map +1 -0
  771. package/components/Toast/locale/types.d.ts +3 -0
  772. package/components/Toggle/Toggle/Toggle.js +119 -10
  773. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  774. package/components/Toggle/Toggle.d.ts +16 -6
  775. package/components/Toggle/Toggle.md +18 -2
  776. package/components/Toggle/Toggle.mixins/Toggle.mixins.js +35 -0
  777. package/components/Toggle/Toggle.mixins/Toggle.mixins.js.map +1 -0
  778. package/components/Toggle/Toggle.mixins/package.json +6 -0
  779. package/components/Toggle/Toggle.mixins.d.ts +7 -0
  780. package/components/Toggle/Toggle.styles/Toggle.styles.js +85 -31
  781. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  782. package/components/Toggle/Toggle.styles.d.ts +21 -1
  783. package/components/Token/Token/Token.js +8 -3
  784. package/components/Token/Token/Token.js.map +1 -1
  785. package/components/Token/Token.d.ts +2 -5
  786. package/components/Token/locale/index/index.js +8 -0
  787. package/components/Token/locale/index/index.js.map +1 -0
  788. package/components/Token/locale/index/package.json +6 -0
  789. package/components/Token/locale/index.d.ts +4 -0
  790. package/components/Token/locale/locales/en/en.js +3 -0
  791. package/components/Token/locale/locales/en/en.js.map +1 -0
  792. package/components/Token/locale/locales/en/package.json +6 -0
  793. package/components/Token/locale/locales/en.d.ts +2 -0
  794. package/components/Token/locale/locales/ru/package.json +6 -0
  795. package/components/Token/locale/locales/ru/ru.js +3 -0
  796. package/components/Token/locale/locales/ru/ru.js.map +1 -0
  797. package/components/Token/locale/locales/ru.d.ts +2 -0
  798. package/components/Token/locale/package.json +6 -0
  799. package/components/Token/locale/types/package.json +6 -0
  800. package/components/Token/locale/types/types.js +1 -0
  801. package/components/Token/locale/types/types.js.map +1 -0
  802. package/components/Token/locale/types.d.ts +3 -0
  803. package/components/TokenInput/TokenInput/TokenInput.js +12 -4
  804. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  805. package/components/TokenInput/TokenInput.d.ts +3 -5
  806. package/components/TokenInput/TokenInput.md +26 -35
  807. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
  808. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  809. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +1 -0
  810. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  811. package/components/TokenInput/TokenInputMenu.d.ts +7 -0
  812. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +8 -2
  813. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  814. package/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  815. package/components/TooltipMenu/TooltipMenu.md +28 -0
  816. package/index.d.ts +1 -0
  817. package/index.js +1 -0
  818. package/index.js.map +1 -1
  819. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  820. package/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  821. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +1 -1
  822. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -1
  823. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +33 -10
  824. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  825. package/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  826. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +40 -40
  827. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  828. package/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  829. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +19 -10
  830. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  831. package/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  832. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +4 -0
  833. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  834. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  835. package/internal/DateSelect/DateSelect/DateSelect.js +32 -16
  836. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  837. package/internal/DateSelect/DateSelect.d.ts +2 -0
  838. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +6 -3
  839. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  840. package/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  841. package/internal/DateSelect/locale/index/index.js +8 -0
  842. package/internal/DateSelect/locale/index/index.js.map +1 -0
  843. package/internal/DateSelect/locale/index/package.json +6 -0
  844. package/internal/DateSelect/locale/index.d.ts +4 -0
  845. package/internal/DateSelect/locale/locales/en/en.js +5 -0
  846. package/internal/DateSelect/locale/locales/en/en.js.map +1 -0
  847. package/internal/DateSelect/locale/locales/en/package.json +6 -0
  848. package/internal/DateSelect/locale/locales/en.d.ts +2 -0
  849. package/internal/DateSelect/locale/locales/ru/package.json +6 -0
  850. package/internal/DateSelect/locale/locales/ru/ru.js +5 -0
  851. package/internal/DateSelect/locale/locales/ru/ru.js.map +1 -0
  852. package/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  853. package/internal/DateSelect/locale/package.json +6 -0
  854. package/internal/DateSelect/locale/types/package.json +6 -0
  855. package/internal/DateSelect/locale/types/types.js +1 -0
  856. package/internal/DateSelect/locale/types/types.js.map +1 -0
  857. package/internal/DateSelect/locale/types.d.ts +5 -0
  858. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +2 -0
  859. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  860. package/internal/DropdownContainer/DropdownContainer.d.ts +3 -2
  861. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +6 -5
  862. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  863. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  864. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  865. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  866. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  867. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  868. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -1
  869. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  870. package/internal/InputLikeText/InputLikeText/InputLikeText.js +20 -8
  871. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  872. package/internal/InputLikeText/InputLikeText.d.ts +1 -0
  873. package/internal/InternalMenu/InternalMenu/InternalMenu.js +11 -6
  874. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  875. package/internal/InternalMenu/InternalMenu.d.ts +13 -4
  876. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +10 -7
  877. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  878. package/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  879. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js +6 -0
  880. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js.map +1 -0
  881. package/internal/InternalMenu/isIconPaddingEnabled/package.json +6 -0
  882. package/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  883. package/internal/Menu/Menu/Menu.js +197 -42
  884. package/internal/Menu/Menu/Menu.js.map +1 -1
  885. package/internal/Menu/Menu.d.ts +42 -8
  886. package/internal/Menu/Menu.styles/Menu.styles.js +20 -5
  887. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  888. package/internal/Menu/Menu.styles.d.ts +6 -1
  889. package/internal/MenuMessage/MenuMessage/MenuMessage.js +19 -2
  890. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  891. package/internal/MenuMessage/MenuMessage.d.ts +2 -0
  892. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +11 -2
  893. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
  894. package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  895. package/internal/MobilePopup/MobilePopup/MobilePopup.js +1 -0
  896. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  897. package/internal/MobilePopup/MobilePopup.d.ts +2 -2
  898. package/internal/Popup/Popup/Popup.js +9 -3
  899. package/internal/Popup/Popup/Popup.js.map +1 -1
  900. package/internal/Popup/Popup.d.ts +7 -2
  901. package/internal/PopupMenu/PopupMenu/PopupMenu.js +28 -5
  902. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  903. package/internal/PopupMenu/PopupMenu.d.ts +5 -2
  904. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  905. package/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  906. package/internal/ThemePlayground/darkTheme/darkTheme.js +1 -1
  907. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  908. package/internal/ThemePlayground/darkTheme.d.ts +1 -1
  909. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  910. package/internal/themes/DarkTheme/DarkTheme.js +13 -0
  911. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  912. package/internal/themes/DarkTheme.d.ts +2 -0
  913. package/internal/themes/DefaultTheme/DefaultTheme.js +750 -106
  914. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  915. package/internal/themes/DefaultTheme.d.ts +280 -19
  916. package/internal/themes/Theme2022/Theme2022.js +79 -56
  917. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  918. package/internal/themes/Theme2022.d.ts +28 -4
  919. package/internal/themes/Theme2022Dark/Theme2022Dark.js +11 -26
  920. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  921. package/internal/themes/Theme2022Dark.d.ts +5 -7
  922. package/lib/locale/types/types.js.map +1 -1
  923. package/lib/locale/types.d.ts +6 -0
  924. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +4 -3
  925. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  926. package/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  927. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js +2 -2
  928. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js.map +1 -1
  929. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  930. package/lib/types/props/package.json +6 -0
  931. package/lib/types/props/props.js +1 -0
  932. package/lib/types/props/props.js.map +1 -0
  933. package/lib/types/props.d.ts +1 -0
  934. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["DateSelect.styles.ts"],"names":["css","memoizeStyle","styles","root","t","dateSelectTextColorDefault","dateSelectFontSize","dateSelectLineHeight","dateSelectLinkColor","root2022","disabled","caption","arrow","dateSelectTextColorDisabled","arrowDisabled","menuHolder","dateSelectMenuBg","dateSelectPopupBoxShadow","isTopCapped","isBotCapped","itemsHolder","menuItem","menuItemSelected","dateSelectMenuItemBgSelected","dateSelectMenuItemFontSelected","menuItemActive","dateSelectMenuItemBgActive","dateSelectMenuItemFontActive","menuItemDisabled","dateSelectMenuItemBgDisabled","menu","dateSelectTextColorInvert","menuUp","menuDown"],"mappings":"4ZAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,IADiC,gBAC5BC,CAD4B,EAClB;AACb,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACC,0BADb;;;AAIeD,IAAAA,CAAC,CAACE,kBAJjB;AAKiBF,IAAAA,CAAC,CAACG,oBALnB;;;;;;;;AAaaH,IAAAA,CAAC,CAACI,mBAbf;;;AAgBD,GAlBgC;;AAoBjCC,EAAAA,QApBiC,sBAoBtB;AACT,WAAOT,GAAP;;;;AAID,GAzBgC;;AA2BjCU,EAAAA,QA3BiC,sBA2BtB;AACT,WAAOV,GAAP;;;;AAID,GAhCgC;;AAkCjCW,EAAAA,OAlCiC,qBAkCvB;AACR,WAAOX,GAAP;;;AAGD,GAtCgC;;AAwCjCY,EAAAA,KAxCiC,iBAwC3BR,CAxC2B,EAwCjB;AACd,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACS,2BADb;;AAGiBT,IAAAA,CAAC,CAACG,oBAHnB;;;;;;;;AAWD,GApDgC;AAqDjCO,EAAAA,aArDiC,2BAqDjB;AACd,WAAOd,GAAP;;;AAGD,GAzDgC;;AA2DjCe,EAAAA,UA3DiC,sBA2DtBX,CA3DsB,EA2DZ;AACnB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACY,gBADlB;AAEgBZ,IAAAA,CAAC,CAACa,wBAFlB;;AAIWb,IAAAA,CAAC,CAACC,0BAJb;AAKeD,IAAAA,CAAC,CAACE,kBALjB;;;;;;AAWD,GAvEgC;;AAyEjCY,EAAAA,WAzEiC,yBAyEnB;AACZ,WAAOlB,GAAP;;;;AAID,GA9EgC;;AAgFjCmB,EAAAA,WAhFiC,yBAgFnB;AACZ,WAAOnB,GAAP;;;AAGD,GApFgC;;AAsFjCoB,EAAAA,WAtFiC,yBAsFnB;AACZ,WAAOpB,GAAP;;;;AAID,GA3FgC;;AA6FjCqB,EAAAA,QA7FiC,oBA6FxBjB,CA7FwB,EA6Fd;AACjB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACC,0BADb;;;;;;;;;AAUD,GAxGgC;;AA0GjCiB,EAAAA,gBA1GiC,4BA0GhBlB,CA1GgB,EA0GN;AACzB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACmB,4BADlB;AAEWnB,IAAAA,CAAC,CAACoB,8BAFb;;AAID,GA/GgC;;AAiHjCC,EAAAA,cAjHiC,0BAiHlBrB,CAjHkB,EAiHR;AACvB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACsB,0BADlB;AAEWtB,IAAAA,CAAC,CAACuB,4BAFb;;AAID,GAtHgC;;AAwHjCC,EAAAA,gBAxHiC,4BAwHhBxB,CAxHgB,EAwHN;AACzB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACyB,4BADlB;AAEWzB,IAAAA,CAAC,CAACS,2BAFb;;;AAKD,GA9HgC;;AAgIjCiB,EAAAA,IAhIiC,gBAgI5B1B,CAhI4B,EAgIlB;AACb,WAAOJ,GAAP;;;;;;;;;AASgBI,IAAAA,CAAC,CAACY,gBATlB;AAUWZ,IAAAA,CAAC,CAACC,0BAVb;;;AAakBD,IAAAA,CAAC,CAACsB,0BAbpB;AAcatB,IAAAA,CAAC,CAAC2B,yBAdf;;;AAiBD,GAlJgC;;AAoJjCC,EAAAA,MApJiC,oBAoJxB;AACP,WAAOhC,GAAP;;;;;;AAMD,GA3JgC;;AA6JjCiC,EAAAA,QA7JiC,sBA6JtB;AACT,WAAOjC,GAAP;;;;;;AAMD,GApKgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n display: inline-block;\n font-size: ${t.dateSelectFontSize};\n line-height: ${t.dateSelectLineHeight};\n outline: 0;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n\n &:hover {\n color: ${t.dateSelectLinkColor};\n }\n `;\n },\n\n root2022() {\n return css`\n display: inline-flex;\n justify-content: space-between;\n `;\n },\n\n disabled() {\n return css`\n color: inherit !important; // override root:hover style\n cursor: default;\n `;\n },\n\n caption() {\n return css`\n position: relative;\n `;\n },\n\n arrow(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDisabled};\n float: right;\n line-height: ${t.dateSelectLineHeight};\n opacity: 1;\n position: absolute;\n right: 4px;\n top: 0;\n transform: scaleX(0.7);\n transition: opacity 0.2s ease-out;\n `;\n },\n arrowDisabled() {\n return css`\n opacity: 0;\n `;\n },\n\n menuHolder(t: Theme) {\n return css`\n background: ${t.dateSelectMenuBg};\n box-shadow: ${t.dateSelectPopupBoxShadow};\n box-sizing: content-box;\n color: ${t.dateSelectTextColorDefault};\n font-size: ${t.dateSelectFontSize};\n margin-top: -11px;\n overflow: hidden;\n position: absolute;\n z-index: 1000;\n `;\n },\n\n isTopCapped() {\n return css`\n margin-top: 0;\n padding-top: 5px;\n `;\n },\n\n isBotCapped() {\n return css`\n padding-bottom: 5px;\n `;\n },\n\n itemsHolder() {\n return css`\n overflow: hidden;\n position: relative;\n `;\n },\n\n menuItem(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n height: 24px;\n line-height: 24px;\n padding-left: 10px;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n `;\n },\n\n menuItemSelected(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgSelected};\n color: ${t.dateSelectMenuItemFontSelected};\n `;\n },\n\n menuItemActive(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectMenuItemFontActive};\n `;\n },\n\n menuItemDisabled(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgDisabled};\n color: ${t.dateSelectTextColorDisabled};\n pointer-events: none;\n `;\n },\n\n menu(t: Theme) {\n return css`\n box-sizing: border-box;\n cursor: pointer;\n height: 16px;\n line-height: 0;\n padding-left: 18px;\n text-align: left;\n user-select: none;\n\n background: ${t.dateSelectMenuBg};\n color: ${t.dateSelectTextColorDefault};\n\n &:hover {\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectTextColorInvert};\n }\n `;\n },\n\n menuUp() {\n return css`\n span {\n position: relative;\n top: -0.5px;\n }\n `;\n },\n\n menuDown() {\n return css`\n span {\n position: relative;\n top: -1px;\n }\n `;\n },\n});\n"]}
1
+ {"version":3,"sources":["DateSelect.styles.ts"],"names":["css","memoizeStyle","prefix","globalClasses","arrow","styles","root","t","dateSelectTextColorDefault","dateSelectFontSize","dateSelectLineHeight","dateSelectLinkColor","transitionDuration","transitionTimingFunction","root2022","disabled","caption","dateSelectTextColorDisabled","arrowDisabled","menuHolder","dateSelectMenuBg","dateSelectPopupBoxShadow","isTopCapped","isBotCapped","itemsHolder","menuItem","menuItemSelected","dateSelectMenuItemBgSelected","dateSelectMenuItemFontSelected","menuItemActive","dateSelectMenuItemBgActive","dateSelectMenuItemFontActive","menuItemDisabled","dateSelectMenuItemBgDisabled","menu","dateSelectTextColorInvert","menuUp","menuDown"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const globalClasses = prefix('select')({\n arrow: 'arrow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n display: inline-block;\n font: inherit;\n font-size: ${t.dateSelectFontSize};\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ${t.dateSelectLineHeight};\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ${t.dateSelectLinkColor};\n }\n\n & .${globalClasses.arrow} {\n transition: fill ${t.transitionDuration} ${t.transitionTimingFunction};\n }\n\n &:hover .${globalClasses.arrow} {\n fill: ${t.dateSelectTextColorDefault} !important;\n }\n `;\n },\n\n root2022() {\n return css`\n display: inline-flex;\n justify-content: space-between;\n `;\n },\n\n disabled() {\n return css`\n color: inherit !important; // override root:hover style\n cursor: default;\n `;\n },\n\n caption() {\n return css`\n position: relative;\n `;\n },\n\n arrow(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDisabled};\n float: right;\n line-height: ${t.dateSelectLineHeight};\n opacity: 1;\n position: absolute;\n right: 4px;\n top: 0;\n transform: scaleX(0.7);\n transition: opacity 0.2s ease-out;\n `;\n },\n arrowDisabled() {\n return css`\n opacity: 0;\n `;\n },\n\n menuHolder(t: Theme) {\n return css`\n background: ${t.dateSelectMenuBg};\n box-shadow: ${t.dateSelectPopupBoxShadow};\n box-sizing: content-box;\n color: ${t.dateSelectTextColorDefault};\n font-size: ${t.dateSelectFontSize};\n margin-top: -11px;\n overflow: hidden;\n position: absolute;\n z-index: 1000;\n `;\n },\n\n isTopCapped() {\n return css`\n margin-top: 0;\n padding-top: 5px;\n `;\n },\n\n isBotCapped() {\n return css`\n padding-bottom: 5px;\n `;\n },\n\n itemsHolder() {\n return css`\n overflow: hidden;\n position: relative;\n `;\n },\n\n menuItem(t: Theme) {\n return css`\n display: flex;\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n height: 24px;\n padding: 0;\n padding-left: 10px;\n width: 100%;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n border: none;\n font: inherit;\n line-height: 24px;\n background-color: transparent;\n `;\n },\n\n menuItemSelected(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgSelected};\n color: ${t.dateSelectMenuItemFontSelected};\n `;\n },\n\n menuItemActive(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectMenuItemFontActive};\n `;\n },\n\n menuItemDisabled(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgDisabled};\n color: ${t.dateSelectTextColorDisabled};\n pointer-events: none;\n `;\n },\n\n menu(t: Theme) {\n return css`\n box-sizing: border-box;\n cursor: pointer;\n height: 16px;\n line-height: 0;\n padding-left: 18px;\n text-align: left;\n user-select: none;\n\n background: ${t.dateSelectMenuBg};\n color: ${t.dateSelectTextColorDefault};\n\n &:hover {\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectTextColorInvert};\n }\n `;\n },\n\n menuUp() {\n return css`\n span {\n position: relative;\n top: -0.5px;\n }\n `;\n },\n\n menuDown() {\n return css`\n span {\n position: relative;\n top: -1px;\n }\n `;\n },\n});\n"]}
@@ -1,4 +1,7 @@
1
1
  import { Theme } from '../../lib/theming/Theme';
2
+ export declare const globalClasses: {
3
+ arrow: string;
4
+ };
2
5
  export declare const styles: {
3
6
  root(t: Theme): string;
4
7
  root2022(): string;
@@ -0,0 +1,8 @@
1
+ import { LocaleHelper } from "../../../../lib/locale/LocaleHelper";
2
+ import { componentsLocales as en_GB } from "../locales/en";
3
+ import { componentsLocales as ru_RU } from "../locales/ru";
4
+ export * from "../types";
5
+ export var DateSelectHelper = new LocaleHelper({
6
+ ru_RU: ru_RU,
7
+ en_GB: en_GB
8
+ });
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["index.ts"],"names":["LocaleHelper","componentsLocales","en_GB","ru_RU","DateSelectHelper"],"mappings":"AAAA,SAASA,YAAT,QAA6B,kCAA7B;;AAEA,SAASC,iBAAiB,IAAIC,KAA9B,QAA2C,cAA3C;AACA,SAASD,iBAAiB,IAAIE,KAA9B,QAA2C,cAA3C;;;AAGA,cAAc,SAAd;;AAEA,OAAO,IAAMC,gBAAgB,GAAG,IAAIJ,YAAJ,CAAmC;AACjEG,EAAAA,KAAK,EAALA,KADiE;AAEjED,EAAAA,KAAK,EAALA,KAFiE,EAAnC,CAAzB","sourcesContent":["import { LocaleHelper } from '../../../lib/locale/LocaleHelper';\n\nimport { componentsLocales as en_GB } from './locales/en';\nimport { componentsLocales as ru_RU } from './locales/ru';\nimport { DateSelectLocale } from './types';\n\nexport * from './types';\n\nexport const DateSelectHelper = new LocaleHelper<DateSelectLocale>({\n ru_RU,\n en_GB,\n});\n"]}
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../../cjs/internal/DateSelect/locale/index.js",
3
+ "module": "index",
4
+ "types": "../index.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,4 @@
1
+ import { LocaleHelper } from '../../../lib/locale/LocaleHelper';
2
+ import { DateSelectLocale } from './types';
3
+ export * from './types';
4
+ export declare const DateSelectHelper: LocaleHelper<DateSelectLocale>;
@@ -0,0 +1,5 @@
1
+ export var componentsLocales = {
2
+ selectMonthAriaLabel: 'month',
3
+ selectYearAriaLabel: 'year',
4
+ selectChosenAriaLabel: 'Chosen'
5
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["en.ts"],"names":["componentsLocales","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel"],"mappings":";;AAEA,OAAO,IAAMA,iBAAmC,GAAG;AACjDC,EAAAA,oBAAoB,EAAE,OAD2B;AAEjDC,EAAAA,mBAAmB,EAAE,MAF4B;AAGjDC,EAAAA,qBAAqB,EAAE,QAH0B,EAA5C","sourcesContent":["import { DateSelectLocale } from '../types';\n\nexport const componentsLocales: DateSelectLocale = {\n selectMonthAriaLabel: 'month',\n selectYearAriaLabel: 'year',\n selectChosenAriaLabel: 'Chosen',\n};\n"]}
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../../../cjs/internal/DateSelect/locale/locales/en.js",
3
+ "module": "en",
4
+ "types": "../en.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,2 @@
1
+ import { DateSelectLocale } from '../types';
2
+ export declare const componentsLocales: DateSelectLocale;
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../../../cjs/internal/DateSelect/locale/locales/ru.js",
3
+ "module": "ru",
4
+ "types": "../ru.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,5 @@
1
+ export var componentsLocales = {
2
+ selectMonthAriaLabel: 'месяц',
3
+ selectYearAriaLabel: 'год',
4
+ selectChosenAriaLabel: 'Выбранный'
5
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ru.ts"],"names":["componentsLocales","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel"],"mappings":";;AAEA,OAAO,IAAMA,iBAAmC,GAAG;AACjDC,EAAAA,oBAAoB,EAAE,OAD2B;AAEjDC,EAAAA,mBAAmB,EAAE,KAF4B;AAGjDC,EAAAA,qBAAqB,EAAE,WAH0B,EAA5C","sourcesContent":["import { DateSelectLocale } from '../types';\n\nexport const componentsLocales: DateSelectLocale = {\n selectMonthAriaLabel: 'месяц',\n selectYearAriaLabel: 'год',\n selectChosenAriaLabel: 'Выбранный',\n};\n"]}
@@ -0,0 +1,2 @@
1
+ import { DateSelectLocale } from '../types';
2
+ export declare const componentsLocales: DateSelectLocale;
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../cjs/internal/DateSelect/locale/index.js",
3
+ "module": "index",
4
+ "types": "index.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../../../cjs/internal/DateSelect/locale/types.js",
3
+ "module": "types",
4
+ "types": "../types.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -0,0 +1,5 @@
1
+ export interface DateSelectLocale {
2
+ selectMonthAriaLabel?: string;
3
+ selectYearAriaLabel?: string;
4
+ selectChosenAriaLabel?: string;
5
+ }
@@ -183,6 +183,8 @@ export var DropdownContainer = /*#__PURE__*/function (_React$PureComponent) {
183
183
  }
184
184
 
185
185
  var content = /*#__PURE__*/React.createElement(ZIndex, {
186
+ "data-tid": this.props['data-tid'],
187
+ id: this.props.id,
186
188
  priority: 'DropdownContainer',
187
189
  wrapperRef: this.ZIndexRef,
188
190
  style: style,
@@ -1 +1 @@
1
- {"version":3,"sources":["DropdownContainer.tsx"],"names":["React","LayoutEvents","RenderContainer","ZIndex","createPropsGetter","cx","isIE11","getDOMRect","styles","getManualPosition","getTopAlignment","DropdownContainer","props","getProps","defaultProps","ZIndexRef","element","dom","isElement","node","Element","position","target","getParent","targetRect","document","body","docEl","documentElement","Error","scrollX","window","pageXOffset","scrollLeft","scrollY","pageYOffset","scrollTop","left","right","align","docWidth","offsetWidth","offsetX","offsetY","bottom","top","distanceToBottom","clientHeight","dropdownHeight","getHeight","state","isDocumentElementRoot","scrollHeight","menuPos","setState","minWidth","getMinWidth","disablePortal","convertToRelativePosition","child","children","item","height","width","targetHeight","getIsDocumentElementRoot","componentDidMount","layoutSub","addListener","componentWillUnmount","remove","render","style","undefined","maxWidth","hasFixedWidth","content","alignRight","PureComponent","__KONTUR_REACT_UI__","htmlPosition","getComputedStyle","bodyPosition","hasLimitedHeightRoot","hasStaticRoot"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { RenderContainer } from '../RenderContainer';\nimport { ZIndex } from '../ZIndex';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './DropdownContainer.styles';\nimport { getManualPosition, getTopAlignment } from './getManualPosition';\n\nexport interface DropdownContainerPosition {\n top: Nullable<number>;\n bottom: Nullable<number>;\n left: Nullable<number>;\n right: Nullable<number>;\n}\n\nexport interface DropdownContainerProps {\n align?: 'left' | 'right';\n getParent: () => Nullable<Element>;\n children?: React.ReactNode;\n disablePortal?: boolean;\n offsetY?: number;\n offsetX?: number;\n hasFixedWidth?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n}\n\nexport interface DropdownContainerState {\n position: Nullable<DropdownContainerPosition>;\n minWidth: number;\n isDocumentElementRoot?: boolean;\n}\n\ntype DefaultProps = Required<Pick<DropdownContainerProps, 'align' | 'disablePortal' | 'offsetY' | 'offsetX'>>;\n\nexport class DropdownContainer extends React.PureComponent<DropdownContainerProps, DropdownContainerState> {\n public static __KONTUR_REACT_UI__ = 'DropdownContainer';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n disablePortal: false,\n offsetX: 0,\n offsetY: -1,\n };\n\n private getProps = createPropsGetter(DropdownContainer.defaultProps);\n\n private dom: Nullable<HTMLDivElement>;\n private layoutSub: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n\n constructor(props: DropdownContainerProps) {\n super(props);\n\n this.state = { position: null, minWidth: 0, isDocumentElementRoot: getIsDocumentElementRoot() };\n }\n\n public componentDidMount() {\n this.position();\n this.layoutSub = LayoutEvents.addListener(this.position);\n }\n\n public componentWillUnmount() {\n if (this.layoutSub) {\n this.layoutSub.remove();\n }\n }\n\n public render() {\n let style: React.CSSProperties = {\n position: 'absolute',\n top: '0',\n };\n if (this.state.position) {\n const { top, bottom, left, right } = this.state.position;\n style = {\n ...style,\n top: top !== null ? top : undefined,\n bottom: bottom !== null ? bottom : undefined,\n left: left !== null ? left : undefined,\n right: right !== null ? right : undefined,\n minWidth: this.state.minWidth,\n maxWidth: this.props.hasFixedWidth ? this.state.minWidth : undefined,\n };\n }\n\n const content = (\n <ZIndex\n priority={'DropdownContainer'}\n wrapperRef={this.ZIndexRef}\n style={style}\n className={cx({\n [styles.alignRight()]: this.getProps().align === 'right' && !isIE11,\n })}\n >\n {this.props.children}\n </ZIndex>\n );\n\n return this.props.disablePortal ? content : <RenderContainer>{content}</RenderContainer>;\n }\n\n private ZIndexRef = (element: Nullable<HTMLDivElement>) => {\n this.dom = element;\n };\n\n private isElement = (node: Nullable<Element>): node is Element => {\n return node instanceof Element;\n };\n\n public position = () => {\n const target = this.props.getParent();\n const dom = this.dom;\n\n if (target && this.isElement(target) && dom) {\n const targetRect = getDOMRect(target);\n const { body, documentElement: docEl } = document;\n\n if (!docEl) {\n throw Error('There is no \"documentElement\" in \"document\"');\n }\n\n const scrollX = window.pageXOffset || docEl.scrollLeft || 0;\n const scrollY = window.pageYOffset || docEl.scrollTop || 0;\n\n let left = null;\n let right = null;\n\n if (this.getProps().align === 'right') {\n const docWidth = docEl.offsetWidth || 0;\n right = docWidth - (targetRect.right + scrollX) + this.getProps().offsetX;\n } else {\n left = targetRect.left + scrollX + this.getProps().offsetX;\n }\n\n const offsetY = this.getProps().offsetY || 0;\n let bottom = null;\n let top: number | null = targetRect.bottom + scrollY + offsetY;\n\n const distanceToBottom = docEl.clientHeight - targetRect.bottom;\n const dropdownHeight = this.getHeight();\n\n const clientHeight = this.state.isDocumentElementRoot ? docEl.clientHeight : body.scrollHeight;\n if (distanceToBottom < dropdownHeight && targetRect.top > dropdownHeight) {\n top = null;\n bottom = getTopAlignment({ clientHeight, offsetY, scrollY, target });\n }\n\n const position = {\n top,\n left,\n right,\n bottom,\n ...getManualPosition({ menuPos: this.props.menuPos, target, offsetY, clientHeight, scrollY }),\n };\n\n this.setState({\n minWidth: this.getMinWidth(),\n position: this.getProps().disablePortal ? this.convertToRelativePosition(position) : position,\n });\n }\n };\n\n private getHeight = () => {\n if (!this.isElement(this.dom)) {\n return 0;\n }\n const child = this.dom.children.item(0);\n return getDOMRect(child).height;\n };\n\n private getMinWidth = () => {\n const target = this.props.getParent();\n return getDOMRect(target).width;\n };\n\n private convertToRelativePosition = (position: DropdownContainerPosition): DropdownContainerPosition => {\n const target = this.props.getParent();\n const offsetX = this.getProps().offsetX || 0;\n const offsetY = this.getProps().offsetY || 0;\n const { top, bottom, left, right } = position;\n if (target && this.isElement(target)) {\n const targetHeight = getDOMRect(target).height;\n return {\n top: top !== null ? targetHeight + offsetY : null,\n bottom: bottom !== null ? targetHeight + offsetY : null,\n left: left !== null ? offsetX : null,\n right: right !== null ? offsetX : null,\n };\n }\n return {\n top: offsetY,\n bottom: null,\n left: offsetX,\n right: null,\n };\n };\n}\n\nconst getIsDocumentElementRoot = () => {\n const { body, documentElement } = document;\n const htmlPosition = getComputedStyle(documentElement).position;\n const bodyPosition = getComputedStyle(body).position;\n\n const hasLimitedHeightRoot = body.scrollHeight > body.clientHeight;\n const hasStaticRoot = htmlPosition === 'static' && bodyPosition === 'static';\n return hasLimitedHeightRoot || hasStaticRoot;\n};\n"]}
1
+ {"version":3,"sources":["DropdownContainer.tsx"],"names":["React","LayoutEvents","RenderContainer","ZIndex","createPropsGetter","cx","isIE11","getDOMRect","styles","getManualPosition","getTopAlignment","DropdownContainer","props","getProps","defaultProps","ZIndexRef","element","dom","isElement","node","Element","position","target","getParent","targetRect","document","body","docEl","documentElement","Error","scrollX","window","pageXOffset","scrollLeft","scrollY","pageYOffset","scrollTop","left","right","align","docWidth","offsetWidth","offsetX","offsetY","bottom","top","distanceToBottom","clientHeight","dropdownHeight","getHeight","state","isDocumentElementRoot","scrollHeight","menuPos","setState","minWidth","getMinWidth","disablePortal","convertToRelativePosition","child","children","item","height","width","targetHeight","getIsDocumentElementRoot","componentDidMount","layoutSub","addListener","componentWillUnmount","remove","render","style","undefined","maxWidth","hasFixedWidth","content","id","alignRight","PureComponent","__KONTUR_REACT_UI__","htmlPosition","getComputedStyle","bodyPosition","hasLimitedHeightRoot","hasStaticRoot"],"mappings":"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","sourcesContent":["import React, { HTMLAttributes } from 'react';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { RenderContainer } from '../RenderContainer';\nimport { ZIndex } from '../ZIndex';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { CommonProps } from '../CommonWrapper';\n\nimport { styles } from './DropdownContainer.styles';\nimport { getManualPosition, getTopAlignment } from './getManualPosition';\n\nexport interface DropdownContainerPosition {\n top: Nullable<number>;\n bottom: Nullable<number>;\n left: Nullable<number>;\n right: Nullable<number>;\n}\n\nexport interface DropdownContainerProps\n extends Pick<CommonProps, 'data-tid'>,\n Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n align?: 'left' | 'right';\n getParent: () => Nullable<Element>;\n children?: React.ReactNode;\n disablePortal?: boolean;\n offsetY?: number;\n offsetX?: number;\n hasFixedWidth?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n}\n\nexport interface DropdownContainerState {\n position: Nullable<DropdownContainerPosition>;\n minWidth: number;\n isDocumentElementRoot?: boolean;\n}\n\ntype DefaultProps = Required<Pick<DropdownContainerProps, 'align' | 'disablePortal' | 'offsetY' | 'offsetX'>>;\n\nexport class DropdownContainer extends React.PureComponent<DropdownContainerProps, DropdownContainerState> {\n public static __KONTUR_REACT_UI__ = 'DropdownContainer';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n disablePortal: false,\n offsetX: 0,\n offsetY: -1,\n };\n\n private getProps = createPropsGetter(DropdownContainer.defaultProps);\n\n private dom: Nullable<HTMLDivElement>;\n private layoutSub: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n\n constructor(props: DropdownContainerProps) {\n super(props);\n\n this.state = { position: null, minWidth: 0, isDocumentElementRoot: getIsDocumentElementRoot() };\n }\n\n public componentDidMount() {\n this.position();\n this.layoutSub = LayoutEvents.addListener(this.position);\n }\n\n public componentWillUnmount() {\n if (this.layoutSub) {\n this.layoutSub.remove();\n }\n }\n\n public render() {\n let style: React.CSSProperties = {\n position: 'absolute',\n top: '0',\n };\n if (this.state.position) {\n const { top, bottom, left, right } = this.state.position;\n style = {\n ...style,\n top: top !== null ? top : undefined,\n bottom: bottom !== null ? bottom : undefined,\n left: left !== null ? left : undefined,\n right: right !== null ? right : undefined,\n minWidth: this.state.minWidth,\n maxWidth: this.props.hasFixedWidth ? this.state.minWidth : undefined,\n };\n }\n\n const content = (\n <ZIndex\n data-tid={this.props['data-tid']}\n id={this.props.id}\n priority={'DropdownContainer'}\n wrapperRef={this.ZIndexRef}\n style={style}\n className={cx({\n [styles.alignRight()]: this.getProps().align === 'right' && !isIE11,\n })}\n >\n {this.props.children}\n </ZIndex>\n );\n\n return this.props.disablePortal ? content : <RenderContainer>{content}</RenderContainer>;\n }\n\n private ZIndexRef = (element: Nullable<HTMLDivElement>) => {\n this.dom = element;\n };\n\n private isElement = (node: Nullable<Element>): node is Element => {\n return node instanceof Element;\n };\n\n public position = () => {\n const target = this.props.getParent();\n const dom = this.dom;\n\n if (target && this.isElement(target) && dom) {\n const targetRect = getDOMRect(target);\n const { body, documentElement: docEl } = document;\n\n if (!docEl) {\n throw Error('There is no \"documentElement\" in \"document\"');\n }\n\n const scrollX = window.pageXOffset || docEl.scrollLeft || 0;\n const scrollY = window.pageYOffset || docEl.scrollTop || 0;\n\n let left = null;\n let right = null;\n\n if (this.getProps().align === 'right') {\n const docWidth = docEl.offsetWidth || 0;\n right = docWidth - (targetRect.right + scrollX) + this.getProps().offsetX;\n } else {\n left = targetRect.left + scrollX + this.getProps().offsetX;\n }\n\n const offsetY = this.getProps().offsetY || 0;\n let bottom = null;\n let top: number | null = targetRect.bottom + scrollY + offsetY;\n\n const distanceToBottom = docEl.clientHeight - targetRect.bottom;\n const dropdownHeight = this.getHeight();\n\n const clientHeight = this.state.isDocumentElementRoot ? docEl.clientHeight : body.scrollHeight;\n if (distanceToBottom < dropdownHeight && targetRect.top > dropdownHeight) {\n top = null;\n bottom = getTopAlignment({ clientHeight, offsetY, scrollY, target });\n }\n\n const position = {\n top,\n left,\n right,\n bottom,\n ...getManualPosition({ menuPos: this.props.menuPos, target, offsetY, clientHeight, scrollY }),\n };\n\n this.setState({\n minWidth: this.getMinWidth(),\n position: this.getProps().disablePortal ? this.convertToRelativePosition(position) : position,\n });\n }\n };\n\n private getHeight = () => {\n if (!this.isElement(this.dom)) {\n return 0;\n }\n const child = this.dom.children.item(0);\n return getDOMRect(child).height;\n };\n\n private getMinWidth = () => {\n const target = this.props.getParent();\n return getDOMRect(target).width;\n };\n\n private convertToRelativePosition = (position: DropdownContainerPosition): DropdownContainerPosition => {\n const target = this.props.getParent();\n const offsetX = this.getProps().offsetX || 0;\n const offsetY = this.getProps().offsetY || 0;\n const { top, bottom, left, right } = position;\n if (target && this.isElement(target)) {\n const targetHeight = getDOMRect(target).height;\n return {\n top: top !== null ? targetHeight + offsetY : null,\n bottom: bottom !== null ? targetHeight + offsetY : null,\n left: left !== null ? offsetX : null,\n right: right !== null ? offsetX : null,\n };\n }\n return {\n top: offsetY,\n bottom: null,\n left: offsetX,\n right: null,\n };\n };\n}\n\nconst getIsDocumentElementRoot = () => {\n const { body, documentElement } = document;\n const htmlPosition = getComputedStyle(documentElement).position;\n const bodyPosition = getComputedStyle(body).position;\n\n const hasLimitedHeightRoot = body.scrollHeight > body.clientHeight;\n const hasStaticRoot = htmlPosition === 'static' && bodyPosition === 'static';\n return hasLimitedHeightRoot || hasStaticRoot;\n};\n"]}
@@ -1,12 +1,13 @@
1
- import React from 'react';
1
+ import React, { HTMLAttributes } from 'react';
2
2
  import { Nullable } from '../../typings/utility-types';
3
+ import { CommonProps } from '../CommonWrapper';
3
4
  export interface DropdownContainerPosition {
4
5
  top: Nullable<number>;
5
6
  bottom: Nullable<number>;
6
7
  left: Nullable<number>;
7
8
  right: Nullable<number>;
8
9
  }
9
- export interface DropdownContainerProps {
10
+ export interface DropdownContainerProps extends Pick<CommonProps, 'data-tid'>, Pick<HTMLAttributes<HTMLDivElement>, 'id'> {
10
11
  align?: 'left' | 'right';
11
12
  getParent: () => Nullable<Element>;
12
13
  children?: React.ReactNode;
@@ -1,6 +1,7 @@
1
1
  import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
2
+ import { forwardRefAndName } from "../../../../lib/forwardRefAndName";
2
3
  import { formatBytes } from "../../../../lib/utils";
3
- import { TextWidthHelper } from "../../../../internal/TextWidthHelper/TextWidthHelper";
4
+ import { TextWidthHelper } from "../../../TextWidthHelper/TextWidthHelper";
4
5
  import { truncate } from "../../../../lib/stringUtils";
5
6
  import { FileUploaderControlContext } from "../../FileUploaderControlContext";
6
7
  import { cx } from "../../../../lib/theming/Emotion";
@@ -44,7 +45,7 @@ export var FileUploaderFileDataTids = {
44
45
  fileSize: 'FileUploader__fileSize',
45
46
  fileIcon: 'FileUploader__fileIcon'
46
47
  };
47
- export var FileUploaderFile = function FileUploaderFile(props) {
48
+ export var FileUploaderFile = forwardRefAndName('FileUploaderFile', function (props, ref) {
48
49
  var _cx, _cx2;
49
50
 
50
51
  var file = props.file,
@@ -149,7 +150,8 @@ export var FileUploaderFile = function FileUploaderFile(props) {
149
150
  "data-tid": FileUploaderFileDataTids.file,
150
151
  className: jsStyles.root(),
151
152
  onMouseEnter: handleMouseEnter,
152
- onMouseLeave: handleMouseLeave
153
+ onMouseLeave: handleMouseLeave,
154
+ ref: ref
153
155
  }, /*#__PURE__*/React.createElement(Tooltip, {
154
156
  "data-tid": FileUploaderFileDataTids.fileTooltip,
155
157
  pos: "right middle",
@@ -184,5 +186,4 @@ export var FileUploaderFile = function FileUploaderFile(props) {
184
186
  isInvalid: isInvalid,
185
187
  size: size
186
188
  })))));
187
- };
188
- FileUploaderFile.displayName = 'FileUploaderFile';
189
+ });
@@ -1 +1 @@
1
- {"version":3,"sources":["FileUploaderFile.tsx"],"names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","formatBytes","TextWidthHelper","truncate","FileUploaderControlContext","cx","ThemeContext","keyListener","isKeyEnter","Hint","Tooltip","getDOMRect","useFileUploaderSize","jsStyles","FileUploaderFileStatusIcon","getTruncatedName","fileNameWidth","fileNameElementWidth","name","charWidth","Math","ceil","length","maxCharsCountInSpan","calcTruncatedName","textHelperRef","fileNameElementRef","current","getTextWidth","width","MIN_CHARS_LENGTH","FileUploaderFileDataTids","file","fileTooltip","fileName","fileSize","fileIcon","FileUploaderFile","props","showSize","error","multiple","size","id","originalFile","status","validationResult","hovered","setHovered","focusedByTab","setFocusedByTab","truncatedFileName","setTruncatedFileName","removeFile","setIsMinLengthReached","isMinLengthReached","theme","formattedSize","truncatedName","removeUploadFile","handleRemove","event","preventDefault","stopPropagation","isValid","message","isInvalid","sizeIconClass","small","iconSmall","medium","iconMedium","large","iconLarge","renderTooltipContent","sizeContentClass","contentSmall","contentMedium","contentLarge","contentClassNames","content","handleMouseEnter","handleMouseLeave","handleFocus","requestAnimationFrame","isTabPressed","handleBlur","handleIconKeyDown","e","iconClassNames","icon","focusedIcon","iconMultiple","isTruncated","root","displayName"],"mappings":"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","sourcesContent":["import React, { ReactNode, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { FileUploaderAttachedFile } from '../fileUtils';\nimport { formatBytes } from '../../../lib/utils';\nimport { TextWidthHelper } from '../../../internal/TextWidthHelper/TextWidthHelper';\nimport { truncate } from '../../../lib/stringUtils';\nimport { FileUploaderControlContext } from '../FileUploaderControlContext';\nimport { cx } from '../../../lib/theming/Emotion';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { keyListener } from '../../../lib/events/keyListener';\nimport { isKeyEnter } from '../../../lib/events/keyboard/identifiers';\nimport { Nullable } from '../../../typings/utility-types';\nimport { Hint } from '../../../components/Hint';\nimport { Tooltip } from '../../../components/Tooltip';\nimport { getDOMRect } from '../../../lib/dom/getDOMRect';\nimport { FileUploaderSize } from '../../../components/FileUploader';\nimport { useFileUploaderSize } from '../hooks/useFileUploaderSize';\n\nimport { jsStyles } from './FileUploaderFile.styles';\nimport { FileUploaderFileStatusIcon } from './FileUploaderFileStatusIcon';\n\ninterface FileUploaderFileProps {\n file: FileUploaderAttachedFile;\n showSize?: boolean;\n multiple?: boolean;\n size: FileUploaderSize;\n /** Состояние ошибки контрола файла */\n error?: boolean;\n}\n\nconst getTruncatedName = (fileNameWidth: number, fileNameElementWidth: number, name: string) => {\n if (!fileNameWidth && !fileNameElementWidth) {\n return null;\n }\n\n if (fileNameWidth <= fileNameElementWidth) {\n return name;\n }\n\n const charWidth = Math.ceil(fileNameWidth / name.length);\n const maxCharsCountInSpan = Math.ceil(fileNameElementWidth / charWidth);\n\n return truncate(name, maxCharsCountInSpan);\n};\n\nconst calcTruncatedName = (\n textHelperRef: React.RefObject<TextWidthHelper>,\n fileNameElementRef: React.RefObject<HTMLSpanElement>,\n name: string,\n) => {\n const fileNameWidth = textHelperRef.current?.getTextWidth() || 0;\n const fileNameElementWidth = getDOMRect(fileNameElementRef.current).width;\n\n return getTruncatedName(fileNameWidth, fileNameElementWidth, name);\n};\n\nconst MIN_CHARS_LENGTH = 3;\n\nexport const FileUploaderFileDataTids = {\n file: 'FileUploader__file',\n fileTooltip: 'FileUploader__fileTooltip',\n fileName: 'FileUploader__fileName',\n fileSize: 'FileUploader__fileSize',\n fileIcon: 'FileUploader__fileIcon',\n} as const;\n\nexport const FileUploaderFile = (props: FileUploaderFileProps) => {\n const { file, showSize, error, multiple, size } = props;\n const { id, originalFile, status, validationResult } = file;\n const { name, size: fileSize } = originalFile;\n\n const [hovered, setHovered] = useState<boolean>(false);\n const [focusedByTab, setFocusedByTab] = useState(false);\n const [truncatedFileName, setTruncatedFileName] = useState<Nullable<string>>(null);\n\n const textHelperRef = useRef<TextWidthHelper>(null);\n const fileNameElementRef = useRef<HTMLSpanElement>(null);\n\n const { removeFile, setIsMinLengthReached, isMinLengthReached } = useContext(FileUploaderControlContext);\n const theme = useContext(ThemeContext);\n\n const formattedSize = useMemo(() => formatBytes(fileSize, 1), [fileSize]);\n\n useEffect(() => {\n if (setIsMinLengthReached) {\n const truncatedName = calcTruncatedName(textHelperRef, fileNameElementRef, name);\n\n setIsMinLengthReached((truncatedName?.length ?? 0) <= MIN_CHARS_LENGTH);\n }\n }, [name, isMinLengthReached]);\n\n useEffect(() => {\n const truncatedName = calcTruncatedName(textHelperRef, fileNameElementRef, name);\n\n setTruncatedFileName(truncatedName);\n });\n\n const removeUploadFile = useCallback(() => {\n removeFile(id);\n }, [removeFile, id]);\n\n const handleRemove = useCallback(\n (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n event.stopPropagation();\n removeUploadFile();\n },\n [removeUploadFile],\n );\n\n const { isValid, message } = validationResult;\n\n const isInvalid = error || !isValid;\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(),\n medium: jsStyles.iconMedium(),\n large: jsStyles.iconLarge(),\n });\n\n const renderTooltipContent = useCallback((): ReactNode => {\n return !isValid && !error && message ? message : null;\n }, [isValid, error, message]);\n\n const sizeContentClass = useFileUploaderSize(size, {\n small: jsStyles.contentSmall(theme),\n medium: jsStyles.contentMedium(theme),\n large: jsStyles.contentLarge(theme),\n });\n\n const contentClassNames = cx(jsStyles.content(), {\n [sizeContentClass]: true,\n [jsStyles.error(theme)]: isInvalid,\n });\n\n const handleMouseEnter = useCallback(() => {\n setHovered(true);\n }, []);\n\n const handleMouseLeave = useCallback(() => {\n setHovered(false);\n }, []);\n\n const handleFocus = useCallback(() => {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n }, []);\n\n const handleBlur = useCallback(() => {\n setFocusedByTab(false);\n }, []);\n\n const handleIconKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLElement>) => {\n if (isKeyEnter(e)) {\n removeUploadFile();\n }\n },\n [removeUploadFile],\n );\n\n const iconClassNames = cx(jsStyles.icon(theme), {\n [jsStyles.focusedIcon(theme)]: focusedByTab,\n [sizeIconClass]: true,\n [jsStyles.iconMultiple()]: multiple,\n });\n\n const isTruncated = truncatedFileName !== name;\n\n return (\n <div\n data-tid={FileUploaderFileDataTids.file}\n className={jsStyles.root()}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <Tooltip data-tid={FileUploaderFileDataTids.fileTooltip} pos=\"right middle\" render={renderTooltipContent}>\n <div className={contentClassNames}>\n <TextWidthHelper ref={textHelperRef} text={name} />\n <Hint maxWidth={'100%'} text={isTruncated ? name : null}>\n <span data-tid={FileUploaderFileDataTids.fileName} ref={fileNameElementRef} className={jsStyles.name()}>\n {truncatedFileName}\n </span>\n </Hint>\n {!!showSize && formattedSize && (\n <span data-tid={FileUploaderFileDataTids.fileSize} className={jsStyles.size()}>\n {formattedSize}\n </span>\n )}\n <div\n className={iconClassNames}\n data-tid={FileUploaderFileDataTids.fileIcon}\n tabIndex={0}\n onClick={handleRemove}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleIconKeyDown}\n >\n <FileUploaderFileStatusIcon\n status={status}\n hovered={hovered}\n focusedByTab={focusedByTab}\n isInvalid={isInvalid}\n size={size}\n />\n </div>\n </div>\n </Tooltip>\n </div>\n );\n};\n\nFileUploaderFile.displayName = 'FileUploaderFile';\n"]}
1
+ {"version":3,"sources":["FileUploaderFile.tsx"],"names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","forwardRefAndName","formatBytes","TextWidthHelper","truncate","FileUploaderControlContext","cx","ThemeContext","keyListener","isKeyEnter","Hint","Tooltip","getDOMRect","useFileUploaderSize","jsStyles","FileUploaderFileStatusIcon","getTruncatedName","fileNameWidth","fileNameElementWidth","name","charWidth","Math","ceil","length","maxCharsCountInSpan","calcTruncatedName","textHelperRef","fileNameElementRef","current","getTextWidth","width","MIN_CHARS_LENGTH","FileUploaderFileDataTids","file","fileTooltip","fileName","fileSize","fileIcon","FileUploaderFile","props","ref","showSize","error","multiple","size","id","originalFile","status","validationResult","hovered","setHovered","focusedByTab","setFocusedByTab","truncatedFileName","setTruncatedFileName","removeFile","setIsMinLengthReached","isMinLengthReached","theme","formattedSize","truncatedName","removeUploadFile","handleRemove","event","preventDefault","stopPropagation","isValid","message","isInvalid","sizeIconClass","small","iconSmall","medium","iconMedium","large","iconLarge","renderTooltipContent","sizeContentClass","contentSmall","contentMedium","contentLarge","contentClassNames","content","handleMouseEnter","handleMouseLeave","handleFocus","requestAnimationFrame","isTabPressed","handleBlur","handleIconKeyDown","e","iconClassNames","icon","focusedIcon","iconMultiple","isTruncated","root"],"mappings":"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","sourcesContent":["import React, { ReactNode, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { forwardRefAndName } from '../../../lib/forwardRefAndName';\nimport { FileUploaderAttachedFile } from '../fileUtils';\nimport { formatBytes } from '../../../lib/utils';\nimport { TextWidthHelper } from '../../TextWidthHelper/TextWidthHelper';\nimport { truncate } from '../../../lib/stringUtils';\nimport { FileUploaderControlContext } from '../FileUploaderControlContext';\nimport { cx } from '../../../lib/theming/Emotion';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { keyListener } from '../../../lib/events/keyListener';\nimport { isKeyEnter } from '../../../lib/events/keyboard/identifiers';\nimport { Nullable } from '../../../typings/utility-types';\nimport { Hint } from '../../../components/Hint';\nimport { Tooltip } from '../../../components/Tooltip';\nimport { getDOMRect } from '../../../lib/dom/getDOMRect';\nimport { useFileUploaderSize } from '../hooks/useFileUploaderSize';\nimport { SizeProp } from '../../../lib/types/props';\n\nimport { jsStyles } from './FileUploaderFile.styles';\nimport { FileUploaderFileStatusIcon } from './FileUploaderFileStatusIcon';\n\ninterface FileUploaderFileProps {\n file: FileUploaderAttachedFile;\n showSize?: boolean;\n multiple?: boolean;\n size: SizeProp;\n /** Состояние ошибки контрола файла */\n error?: boolean;\n}\n\nconst getTruncatedName = (fileNameWidth: number, fileNameElementWidth: number, name: string) => {\n if (!fileNameWidth && !fileNameElementWidth) {\n return null;\n }\n\n if (fileNameWidth <= fileNameElementWidth) {\n return name;\n }\n\n const charWidth = Math.ceil(fileNameWidth / name.length);\n const maxCharsCountInSpan = Math.ceil(fileNameElementWidth / charWidth);\n\n return truncate(name, maxCharsCountInSpan);\n};\n\nconst calcTruncatedName = (\n textHelperRef: React.RefObject<TextWidthHelper>,\n fileNameElementRef: React.RefObject<HTMLSpanElement>,\n name: string,\n) => {\n const fileNameWidth = textHelperRef.current?.getTextWidth() || 0;\n const fileNameElementWidth = getDOMRect(fileNameElementRef.current).width;\n\n return getTruncatedName(fileNameWidth, fileNameElementWidth, name);\n};\n\nconst MIN_CHARS_LENGTH = 3;\n\nexport const FileUploaderFileDataTids = {\n file: 'FileUploader__file',\n fileTooltip: 'FileUploader__fileTooltip',\n fileName: 'FileUploader__fileName',\n fileSize: 'FileUploader__fileSize',\n fileIcon: 'FileUploader__fileIcon',\n} as const;\n\nexport const FileUploaderFile = forwardRefAndName<HTMLDivElement, FileUploaderFileProps>(\n 'FileUploaderFile',\n (props, ref) => {\n const { file, showSize, error, multiple, size } = props;\n const { id, originalFile, status, validationResult } = file;\n const { name, size: fileSize } = originalFile;\n\n const [hovered, setHovered] = useState<boolean>(false);\n const [focusedByTab, setFocusedByTab] = useState(false);\n const [truncatedFileName, setTruncatedFileName] = useState<Nullable<string>>(null);\n\n const textHelperRef = useRef<TextWidthHelper>(null);\n const fileNameElementRef = useRef<HTMLSpanElement>(null);\n\n const { removeFile, setIsMinLengthReached, isMinLengthReached } = useContext(FileUploaderControlContext);\n const theme = useContext(ThemeContext);\n\n const formattedSize = useMemo(() => formatBytes(fileSize, 1), [fileSize]);\n\n useEffect(() => {\n if (setIsMinLengthReached) {\n const truncatedName = calcTruncatedName(textHelperRef, fileNameElementRef, name);\n\n setIsMinLengthReached((truncatedName?.length ?? 0) <= MIN_CHARS_LENGTH);\n }\n }, [name, isMinLengthReached]);\n\n useEffect(() => {\n const truncatedName = calcTruncatedName(textHelperRef, fileNameElementRef, name);\n\n setTruncatedFileName(truncatedName);\n });\n\n const removeUploadFile = useCallback(() => {\n removeFile(id);\n }, [removeFile, id]);\n\n const handleRemove = useCallback(\n (event: React.MouseEvent<HTMLElement>) => {\n event.preventDefault();\n event.stopPropagation();\n removeUploadFile();\n },\n [removeUploadFile],\n );\n\n const { isValid, message } = validationResult;\n\n const isInvalid = error || !isValid;\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(),\n medium: jsStyles.iconMedium(),\n large: jsStyles.iconLarge(),\n });\n\n const renderTooltipContent = useCallback((): ReactNode => {\n return !isValid && !error && message ? message : null;\n }, [isValid, error, message]);\n\n const sizeContentClass = useFileUploaderSize(size, {\n small: jsStyles.contentSmall(theme),\n medium: jsStyles.contentMedium(theme),\n large: jsStyles.contentLarge(theme),\n });\n\n const contentClassNames = cx(jsStyles.content(), {\n [sizeContentClass]: true,\n [jsStyles.error(theme)]: isInvalid,\n });\n\n const handleMouseEnter = useCallback(() => {\n setHovered(true);\n }, []);\n\n const handleMouseLeave = useCallback(() => {\n setHovered(false);\n }, []);\n\n const handleFocus = useCallback(() => {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n }, []);\n\n const handleBlur = useCallback(() => {\n setFocusedByTab(false);\n }, []);\n\n const handleIconKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLElement>) => {\n if (isKeyEnter(e)) {\n removeUploadFile();\n }\n },\n [removeUploadFile],\n );\n\n const iconClassNames = cx(jsStyles.icon(theme), {\n [jsStyles.focusedIcon(theme)]: focusedByTab,\n [sizeIconClass]: true,\n [jsStyles.iconMultiple()]: multiple,\n });\n\n const isTruncated = truncatedFileName !== name;\n\n return (\n <div\n data-tid={FileUploaderFileDataTids.file}\n className={jsStyles.root()}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n ref={ref}\n >\n <Tooltip data-tid={FileUploaderFileDataTids.fileTooltip} pos=\"right middle\" render={renderTooltipContent}>\n <div className={contentClassNames}>\n <TextWidthHelper ref={textHelperRef} text={name} />\n <Hint maxWidth={'100%'} text={isTruncated ? name : null}>\n <span data-tid={FileUploaderFileDataTids.fileName} ref={fileNameElementRef} className={jsStyles.name()}>\n {truncatedFileName}\n </span>\n </Hint>\n {!!showSize && formattedSize && (\n <span data-tid={FileUploaderFileDataTids.fileSize} className={jsStyles.size()}>\n {formattedSize}\n </span>\n )}\n <div\n className={iconClassNames}\n data-tid={FileUploaderFileDataTids.fileIcon}\n tabIndex={0}\n onClick={handleRemove}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleIconKeyDown}\n >\n <FileUploaderFileStatusIcon\n status={status}\n hovered={hovered}\n focusedByTab={focusedByTab}\n isInvalid={isInvalid}\n size={size}\n />\n </div>\n </div>\n </Tooltip>\n </div>\n );\n },\n);\n"]}
@@ -1,10 +1,10 @@
1
1
  import { FileUploaderAttachedFile } from '../fileUtils';
2
- import { FileUploaderSize } from '../../../components/FileUploader';
2
+ import { SizeProp } from '../../../lib/types/props';
3
3
  interface FileUploaderFileProps {
4
4
  file: FileUploaderAttachedFile;
5
5
  showSize?: boolean;
6
6
  multiple?: boolean;
7
- size: FileUploaderSize;
7
+ size: SizeProp;
8
8
  /** Состояние ошибки контрола файла */
9
9
  error?: boolean;
10
10
  }
@@ -15,8 +15,5 @@ export declare const FileUploaderFileDataTids: {
15
15
  readonly fileSize: "FileUploader__fileSize";
16
16
  readonly fileIcon: "FileUploader__fileIcon";
17
17
  };
18
- export declare const FileUploaderFile: {
19
- (props: FileUploaderFileProps): JSX.Element;
20
- displayName: string;
21
- };
18
+ export declare const FileUploaderFile: import("../../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, FileUploaderFileProps>;
22
19
  export {};
@@ -1 +1 @@
1
- {"version":3,"sources":["FileUploaderFileStatusIcon.tsx"],"names":["React","useContext","ThemeContext","isTheme2022","DeleteIcon","ErrorIcon","OkIcon","FileUploaderFileStatus","LoadingIcon","DeleteIcon2022","ErrorIcon2022","OkIcon2022","jsStyles","FileUploaderFileStatusIcon","hovered","focusedByTab","isInvalid","status","size","theme","IconDelete","deleteIcon","IconError","IconOk","fileUploaderIconColor","Loading","Uploaded"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;;AAEA,SAASC,YAAT,QAA6B,mCAA7B;AACA,SAASC,WAAT,QAA4B,mCAA5B;AACA,SAASC,UAAT,EAAqBC,SAArB,EAAgCC,MAAhC,QAA8C,kBAA9C;AACA,SAASC,sBAAT,QAAuC,cAAvC;;AAEA,SAASC,WAAT,QAA4B,6BAA5B;;AAEA,SAASJ,UAAU,IAAIK,cAAvB,QAA6C,cAA7C;AACA,SAASJ,SAAS,IAAIK,aAAtB,QAA2C,aAA3C;AACA,SAASJ,MAAM,IAAIK,UAAnB,QAAqC,UAArC;AACA,SAASC,QAAT,QAAyB,2BAAzB;;;;;;;;;;AAUA,OAAO,IAAMC,0BAAoF,GAAG,SAAvFA,0BAAuF;;;;;;AAM9F,KALJC,OAKI,QALJA,OAKI,CAJJC,YAII,QAJJA,YAII,CAHJC,SAGI,QAHJA,SAGI,CAFJC,MAEI,QAFJA,MAEI,CADJC,IACI,QADJA,IACI;AACJ,MAAMC,KAAK,GAAGlB,UAAU,CAACC,YAAD,CAAxB;;AAEA,MAAIkB,UAAU,gBAAG,oBAAC,UAAD,IAAY,SAAS,EAAER,QAAQ,CAACS,UAAT,CAAoBF,KAApB,CAAvB,GAAjB;AACA,MAAIG,SAAS,gBAAG,oBAAC,SAAD,OAAhB;AACA,MAAIC,MAAM,gBAAG,oBAAC,MAAD,IAAQ,KAAK,EAAEJ,KAAK,CAACK,qBAArB,GAAb;;AAEA,MAAIrB,WAAW,CAACgB,KAAD,CAAf,EAAwB;AACtBC,IAAAA,UAAU,gBAAG,oBAAC,cAAD,IAAgB,IAAI,EAAEF,IAAtB,EAA4B,SAAS,EAAEN,QAAQ,CAACS,UAAT,CAAoBF,KAApB,CAAvC,GAAb;AACAG,IAAAA,SAAS,gBAAG,oBAAC,aAAD,IAAe,IAAI,EAAEJ,IAArB,GAAZ;AACAK,IAAAA,MAAM,gBAAG,oBAAC,UAAD,IAAY,IAAI,EAAEL,IAAlB,EAAwB,KAAK,EAAEC,KAAK,CAACK,qBAArC,GAAT;AACD;;AAED,MAAIV,OAAO,IAAIC,YAAf,EAA6B;AAC3B,WAAOK,UAAP;AACD;;AAED,MAAIJ,SAAJ,EAAe;AACb,WAAOM,SAAP;AACD;;AAED,UAAQL,MAAR;AACE,SAAKV,sBAAsB,CAACkB,OAA5B;AACE,0BAAO,oBAAC,WAAD,IAAa,IAAI,EAAEP,IAAnB,GAAP;AACF,SAAKX,sBAAsB,CAACmB,QAA5B;AACE,aAAOH,MAAP;AACF;AACE,aAAOH,UAAP,CANJ;;AAQD,CAnCM","sourcesContent":["import React, { useContext } from 'react';\n\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { isTheme2022 } from '../../../lib/theming/ThemeHelpers';\nimport { DeleteIcon, ErrorIcon, OkIcon } from '../../icons/16px';\nimport { FileUploaderFileStatus } from '../fileUtils';\nimport { FileUploaderSize } from '../../../components/FileUploader';\nimport { LoadingIcon } from '../../icons2022/LoadingIcon';\n\nimport { DeleteIcon as DeleteIcon2022 } from './DeleteIcon';\nimport { ErrorIcon as ErrorIcon2022 } from './ErrorIcon';\nimport { OkIcon as OkIcon2022 } from './OkIcon';\nimport { jsStyles } from './FileUploaderFile.styles';\n\ninterface FileUploaderFileStatusIconProps {\n hovered: boolean;\n focusedByTab: boolean;\n isInvalid: boolean;\n status: FileUploaderFileStatus;\n size: FileUploaderSize;\n}\n\nexport const FileUploaderFileStatusIcon: React.FunctionComponent<FileUploaderFileStatusIconProps> = ({\n hovered,\n focusedByTab,\n isInvalid,\n status,\n size,\n}) => {\n const theme = useContext(ThemeContext);\n\n let IconDelete = <DeleteIcon className={jsStyles.deleteIcon(theme)} />;\n let IconError = <ErrorIcon />;\n let IconOk = <OkIcon color={theme.fileUploaderIconColor} />;\n\n if (isTheme2022(theme)) {\n IconDelete = <DeleteIcon2022 size={size} className={jsStyles.deleteIcon(theme)} />;\n IconError = <ErrorIcon2022 size={size} />;\n IconOk = <OkIcon2022 size={size} color={theme.fileUploaderIconColor} />;\n }\n\n if (hovered || focusedByTab) {\n return IconDelete;\n }\n\n if (isInvalid) {\n return IconError;\n }\n\n switch (status) {\n case FileUploaderFileStatus.Loading:\n return <LoadingIcon size={size} />;\n case FileUploaderFileStatus.Uploaded:\n return IconOk;\n default:\n return IconDelete;\n }\n};\n"]}
1
+ {"version":3,"sources":["FileUploaderFileStatusIcon.tsx"],"names":["React","useContext","ThemeContext","isTheme2022","DeleteIcon","ErrorIcon","OkIcon","FileUploaderFileStatus","LoadingIcon","DeleteIcon2022","ErrorIcon2022","OkIcon2022","jsStyles","FileUploaderFileStatusIcon","hovered","focusedByTab","isInvalid","status","size","theme","IconDelete","deleteIcon","IconError","IconOk","fileUploaderIconColor","Loading","Uploaded"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;;AAEA,SAASC,YAAT,QAA6B,mCAA7B;AACA,SAASC,WAAT,QAA4B,mCAA5B;AACA,SAASC,UAAT,EAAqBC,SAArB,EAAgCC,MAAhC,QAA8C,kBAA9C;AACA,SAASC,sBAAT,QAAuC,cAAvC;AACA,SAASC,WAAT,QAA4B,6BAA5B;;;AAGA,SAASJ,UAAU,IAAIK,cAAvB,QAA6C,cAA7C;AACA,SAASJ,SAAS,IAAIK,aAAtB,QAA2C,aAA3C;AACA,SAASJ,MAAM,IAAIK,UAAnB,QAAqC,UAArC;AACA,SAASC,QAAT,QAAyB,2BAAzB;;;;;;;;;;AAUA,OAAO,IAAMC,0BAAoF,GAAG,SAAvFA,0BAAuF;;;;;;AAM9F,KALJC,OAKI,QALJA,OAKI,CAJJC,YAII,QAJJA,YAII,CAHJC,SAGI,QAHJA,SAGI,CAFJC,MAEI,QAFJA,MAEI,CADJC,IACI,QADJA,IACI;AACJ,MAAMC,KAAK,GAAGlB,UAAU,CAACC,YAAD,CAAxB;;AAEA,MAAIkB,UAAU,gBAAG,oBAAC,UAAD,IAAY,SAAS,EAAER,QAAQ,CAACS,UAAT,CAAoBF,KAApB,CAAvB,GAAjB;AACA,MAAIG,SAAS,gBAAG,oBAAC,SAAD,OAAhB;AACA,MAAIC,MAAM,gBAAG,oBAAC,MAAD,IAAQ,KAAK,EAAEJ,KAAK,CAACK,qBAArB,GAAb;;AAEA,MAAIrB,WAAW,CAACgB,KAAD,CAAf,EAAwB;AACtBC,IAAAA,UAAU,gBAAG,oBAAC,cAAD,IAAgB,IAAI,EAAEF,IAAtB,EAA4B,SAAS,EAAEN,QAAQ,CAACS,UAAT,CAAoBF,KAApB,CAAvC,GAAb;AACAG,IAAAA,SAAS,gBAAG,oBAAC,aAAD,IAAe,IAAI,EAAEJ,IAArB,GAAZ;AACAK,IAAAA,MAAM,gBAAG,oBAAC,UAAD,IAAY,IAAI,EAAEL,IAAlB,EAAwB,KAAK,EAAEC,KAAK,CAACK,qBAArC,GAAT;AACD;;AAED,MAAIV,OAAO,IAAIC,YAAf,EAA6B;AAC3B,WAAOK,UAAP;AACD;;AAED,MAAIJ,SAAJ,EAAe;AACb,WAAOM,SAAP;AACD;;AAED,UAAQL,MAAR;AACE,SAAKV,sBAAsB,CAACkB,OAA5B;AACE,0BAAO,oBAAC,WAAD,IAAa,IAAI,EAAEP,IAAnB,GAAP;AACF,SAAKX,sBAAsB,CAACmB,QAA5B;AACE,aAAOH,MAAP;AACF;AACE,aAAOH,UAAP,CANJ;;AAQD,CAnCM","sourcesContent":["import React, { useContext } from 'react';\n\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { isTheme2022 } from '../../../lib/theming/ThemeHelpers';\nimport { DeleteIcon, ErrorIcon, OkIcon } from '../../icons/16px';\nimport { FileUploaderFileStatus } from '../fileUtils';\nimport { LoadingIcon } from '../../icons2022/LoadingIcon';\nimport { SizeProp } from '../../../lib/types/props';\n\nimport { DeleteIcon as DeleteIcon2022 } from './DeleteIcon';\nimport { ErrorIcon as ErrorIcon2022 } from './ErrorIcon';\nimport { OkIcon as OkIcon2022 } from './OkIcon';\nimport { jsStyles } from './FileUploaderFile.styles';\n\ninterface FileUploaderFileStatusIconProps {\n hovered: boolean;\n focusedByTab: boolean;\n isInvalid: boolean;\n status: FileUploaderFileStatus;\n size: SizeProp;\n}\n\nexport const FileUploaderFileStatusIcon: React.FunctionComponent<FileUploaderFileStatusIconProps> = ({\n hovered,\n focusedByTab,\n isInvalid,\n status,\n size,\n}) => {\n const theme = useContext(ThemeContext);\n\n let IconDelete = <DeleteIcon className={jsStyles.deleteIcon(theme)} />;\n let IconError = <ErrorIcon />;\n let IconOk = <OkIcon color={theme.fileUploaderIconColor} />;\n\n if (isTheme2022(theme)) {\n IconDelete = <DeleteIcon2022 size={size} className={jsStyles.deleteIcon(theme)} />;\n IconError = <ErrorIcon2022 size={size} />;\n IconOk = <OkIcon2022 size={size} color={theme.fileUploaderIconColor} />;\n }\n\n if (hovered || focusedByTab) {\n return IconDelete;\n }\n\n if (isInvalid) {\n return IconError;\n }\n\n switch (status) {\n case FileUploaderFileStatus.Loading:\n return <LoadingIcon size={size} />;\n case FileUploaderFileStatus.Uploaded:\n return IconOk;\n default:\n return IconDelete;\n }\n};\n"]}
@@ -1,12 +1,12 @@
1
1
  import React from 'react';
2
2
  import { FileUploaderFileStatus } from '../fileUtils';
3
- import { FileUploaderSize } from '../../../components/FileUploader';
3
+ import { SizeProp } from '../../../lib/types/props';
4
4
  interface FileUploaderFileStatusIconProps {
5
5
  hovered: boolean;
6
6
  focusedByTab: boolean;
7
7
  isInvalid: boolean;
8
8
  status: FileUploaderFileStatus;
9
- size: FileUploaderSize;
9
+ size: SizeProp;
10
10
  }
11
11
  export declare const FileUploaderFileStatusIcon: React.FunctionComponent<FileUploaderFileStatusIconProps>;
12
12
  export {};
@@ -1 +1 @@
1
- {"version":3,"sources":["FileUploaderFileList.tsx"],"names":["React","useContext","FileUploaderControlContext","ThemeContext","FileUploaderFile","cx","useFileUploaderSize","jsStyles","FileUploaderFileDataTids","fileList","FileUploaderFileList","props","renderFile","size","files","theme","fileWrapperClass","small","fileWrapperSmall","medium","fileWrapperMedium","large","fileWrapperLarge","map","file","id","fileWrapper","displayName"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;;AAEA,SAASC,0BAAT,QAA2C,+BAA3C;AACA,SAASC,YAAT,QAA6B,mCAA7B;AACA,SAASC,gBAAT,QAAiC,sCAAjC;;;AAGA,SAASC,EAAT,QAAmB,8BAAnB;AACA,SAASC,mBAAT,QAAoC,8BAApC;;AAEA,SAASC,QAAT,QAAyB,+BAAzB;;;;;;;AAOA,OAAO,IAAMC,wBAAwB,GAAG;AACtCC,EAAAA,QAAQ,EAAE,wBAD4B,EAAjC;;;AAIP,OAAO,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAsC;AACxE,MAAQC,UAAR,GAA6BD,KAA7B,CAAQC,UAAR,CAAoBC,IAApB,GAA6BF,KAA7B,CAAoBE,IAApB;AACA,oBAAkBZ,UAAU,CAACC,0BAAD,CAA5B,CAAQY,KAAR,eAAQA,KAAR;AACA,MAAMC,KAAK,GAAGd,UAAU,CAACE,YAAD,CAAxB;;AAEA,MAAMa,gBAAgB,GAAGV,mBAAmB,CAACO,IAAD,EAAO;AACjDI,IAAAA,KAAK,EAAEV,QAAQ,CAACW,gBAAT,CAA0BH,KAA1B,CAD0C;AAEjDI,IAAAA,MAAM,EAAEZ,QAAQ,CAACa,iBAAT,CAA2BL,KAA3B,CAFyC;AAGjDM,IAAAA,KAAK,EAAEd,QAAQ,CAACe,gBAAT,CAA0BP,KAA1B,CAH0C,EAAP,CAA5C;;;AAMA;AACE,iCAAK,YAAUP,wBAAwB,CAACC,QAAxC;AACGK,IAAAA,KAAK,CAACS,GAAN,CAAU,UAACC,IAAD;AACT,qCAAK,GAAG,EAAEA,IAAI,CAACC,EAAf,EAAmB,SAAS,EAAEpB,EAAE,CAACE,QAAQ,CAACmB,WAAT,CAAqBX,KAArB,CAAD,EAA8BC,gBAA9B,CAAhC;AACE,qCAAK,SAAS,EAAET,QAAQ,CAACiB,IAAT,EAAhB;AACGZ,QAAAA,UAAU,CAACY,IAAD,eAAO,oBAAC,gBAAD,IAAkB,IAAI,EAAEA,IAAxB,EAA8B,QAAQ,MAAtC,EAAuC,QAAQ,MAA/C,EAAgD,IAAI,EAAEX,IAAtD,GAAP,CADb,CADF,CADS,GAAV,CADH,CADF;;;;;;AAWD,CAtBM;;AAwBPH,oBAAoB,CAACiB,WAArB,GAAmC,sBAAnC","sourcesContent":["import React, { useContext } from 'react';\n\nimport { FileUploaderControlContext } from '../FileUploaderControlContext';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { FileUploaderFile } from '../FileUploaderFile/FileUploaderFile';\nimport { FileUploaderAttachedFile } from '../fileUtils';\nimport { FileUploaderSize } from '../../../components/FileUploader';\nimport { cx } from '../../../lib/theming/Emotion';\nimport { useFileUploaderSize } from '../hooks/useFileUploaderSize';\n\nimport { jsStyles } from './FileUploaderFileList.styles';\n\ninterface FileUploaderFileListProps {\n renderFile: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n size: FileUploaderSize;\n}\n\nexport const FileUploaderFileDataTids = {\n fileList: 'FileUploader__fileList',\n} as const;\n\nexport const FileUploaderFileList = (props: FileUploaderFileListProps) => {\n const { renderFile, size } = props;\n const { files } = useContext(FileUploaderControlContext);\n const theme = useContext(ThemeContext);\n\n const fileWrapperClass = useFileUploaderSize(size, {\n small: jsStyles.fileWrapperSmall(theme),\n medium: jsStyles.fileWrapperMedium(theme),\n large: jsStyles.fileWrapperLarge(theme),\n });\n\n return (\n <div data-tid={FileUploaderFileDataTids.fileList}>\n {files.map((file) => (\n <div key={file.id} className={cx(jsStyles.fileWrapper(theme), fileWrapperClass)}>\n <div className={jsStyles.file()}>\n {renderFile(file, <FileUploaderFile file={file} showSize multiple size={size} />)}\n </div>\n </div>\n ))}\n </div>\n );\n};\n\nFileUploaderFileList.displayName = 'FileUploaderFileList';\n"]}
1
+ {"version":3,"sources":["FileUploaderFileList.tsx"],"names":["React","useContext","FileUploaderControlContext","ThemeContext","FileUploaderFile","cx","useFileUploaderSize","jsStyles","FileUploaderFileDataTids","fileList","FileUploaderFileList","props","renderFile","size","files","theme","fileWrapperClass","small","fileWrapperSmall","medium","fileWrapperMedium","large","fileWrapperLarge","map","file","id","fileWrapper","displayName"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;;AAEA,SAASC,0BAAT,QAA2C,+BAA3C;AACA,SAASC,YAAT,QAA6B,mCAA7B;AACA,SAASC,gBAAT,QAAiC,sCAAjC;;AAEA,SAASC,EAAT,QAAmB,8BAAnB;AACA,SAASC,mBAAT,QAAoC,8BAApC;;;AAGA,SAASC,QAAT,QAAyB,+BAAzB;;;;;;;AAOA,OAAO,IAAMC,wBAAwB,GAAG;AACtCC,EAAAA,QAAQ,EAAE,wBAD4B,EAAjC;;;AAIP,OAAO,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAsC;AACxE,MAAQC,UAAR,GAA6BD,KAA7B,CAAQC,UAAR,CAAoBC,IAApB,GAA6BF,KAA7B,CAAoBE,IAApB;AACA,oBAAkBZ,UAAU,CAACC,0BAAD,CAA5B,CAAQY,KAAR,eAAQA,KAAR;AACA,MAAMC,KAAK,GAAGd,UAAU,CAACE,YAAD,CAAxB;;AAEA,MAAMa,gBAAgB,GAAGV,mBAAmB,CAACO,IAAD,EAAO;AACjDI,IAAAA,KAAK,EAAEV,QAAQ,CAACW,gBAAT,CAA0BH,KAA1B,CAD0C;AAEjDI,IAAAA,MAAM,EAAEZ,QAAQ,CAACa,iBAAT,CAA2BL,KAA3B,CAFyC;AAGjDM,IAAAA,KAAK,EAAEd,QAAQ,CAACe,gBAAT,CAA0BP,KAA1B,CAH0C,EAAP,CAA5C;;;AAMA;AACE,iCAAK,YAAUP,wBAAwB,CAACC,QAAxC;AACGK,IAAAA,KAAK,CAACS,GAAN,CAAU,UAACC,IAAD;AACT,qCAAK,GAAG,EAAEA,IAAI,CAACC,EAAf,EAAmB,SAAS,EAAEpB,EAAE,CAACE,QAAQ,CAACmB,WAAT,CAAqBX,KAArB,CAAD,EAA8BC,gBAA9B,CAAhC;AACE,qCAAK,SAAS,EAAET,QAAQ,CAACiB,IAAT,EAAhB;AACGZ,QAAAA,UAAU,CAACY,IAAD,eAAO,oBAAC,gBAAD,IAAkB,IAAI,EAAEA,IAAxB,EAA8B,QAAQ,MAAtC,EAAuC,QAAQ,MAA/C,EAAgD,IAAI,EAAEX,IAAtD,GAAP,CADb,CADF,CADS,GAAV,CADH,CADF;;;;;;AAWD,CAtBM;;AAwBPH,oBAAoB,CAACiB,WAArB,GAAmC,sBAAnC","sourcesContent":["import React, { useContext } from 'react';\n\nimport { FileUploaderControlContext } from '../FileUploaderControlContext';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext';\nimport { FileUploaderFile } from '../FileUploaderFile/FileUploaderFile';\nimport { FileUploaderAttachedFile } from '../fileUtils';\nimport { cx } from '../../../lib/theming/Emotion';\nimport { useFileUploaderSize } from '../hooks/useFileUploaderSize';\nimport { SizeProp } from '../../../lib/types/props';\n\nimport { jsStyles } from './FileUploaderFileList.styles';\n\ninterface FileUploaderFileListProps {\n renderFile: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n size: SizeProp;\n}\n\nexport const FileUploaderFileDataTids = {\n fileList: 'FileUploader__fileList',\n} as const;\n\nexport const FileUploaderFileList = (props: FileUploaderFileListProps) => {\n const { renderFile, size } = props;\n const { files } = useContext(FileUploaderControlContext);\n const theme = useContext(ThemeContext);\n\n const fileWrapperClass = useFileUploaderSize(size, {\n small: jsStyles.fileWrapperSmall(theme),\n medium: jsStyles.fileWrapperMedium(theme),\n large: jsStyles.fileWrapperLarge(theme),\n });\n\n return (\n <div data-tid={FileUploaderFileDataTids.fileList}>\n {files.map((file) => (\n <div key={file.id} className={cx(jsStyles.fileWrapper(theme), fileWrapperClass)}>\n <div className={jsStyles.file()}>\n {renderFile(file, <FileUploaderFile file={file} showSize multiple size={size} />)}\n </div>\n </div>\n ))}\n </div>\n );\n};\n\nFileUploaderFileList.displayName = 'FileUploaderFileList';\n"]}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { FileUploaderAttachedFile } from '../fileUtils';
3
- import { FileUploaderSize } from '../../../components/FileUploader';
3
+ import { SizeProp } from '../../../lib/types/props';
4
4
  interface FileUploaderFileListProps {
5
5
  renderFile: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;
6
- size: FileUploaderSize;
6
+ size: SizeProp;
7
7
  }
8
8
  export declare const FileUploaderFileDataTids: {
9
9
  readonly fileList: "FileUploader__fileList";
@@ -1 +1 @@
1
- {"version":3,"sources":["useFileUploaderSize.ts"],"names":["useMemo","useFileUploaderSize","size","small","medium","large"],"mappings":"AAAA,SAASA,OAAT,QAAwB,OAAxB;;;;AAIA,OAAO,SAASC,mBAAT,CAAgCC,IAAhC,QAA+G,KAArDC,KAAqD,QAArDA,KAAqD,CAA9CC,MAA8C,QAA9CA,MAA8C,CAAtCC,KAAsC,QAAtCA,KAAsC;AACpH,SAAOL,OAAO,CAAC,YAAM;AACnB,YAAQE,IAAR;AACE,WAAK,OAAL;AACE,eAAOG,KAAP;AACF,WAAK,QAAL;AACE,eAAOD,MAAP;AACF,WAAK,OAAL;AACE,eAAOD,KAAP;AACF;AACE,eAAOA,KAAP,CARJ;;AAUD,GAXa,EAWX,CAACD,IAAD,CAXW,CAAd;AAYD","sourcesContent":["import { useMemo } from 'react';\n\nimport { FileUploaderSize } from '../../../components/FileUploader';\n\nexport function useFileUploaderSize<T>(size: FileUploaderSize, { small, medium, large }: Record<FileUploaderSize, T>) {\n return useMemo(() => {\n switch (size) {\n case 'large':\n return large;\n case 'medium':\n return medium;\n case 'small':\n return small;\n default:\n return small;\n }\n }, [size]);\n}\n"]}
1
+ {"version":3,"sources":["useFileUploaderSize.ts"],"names":["useMemo","useFileUploaderSize","size","small","medium","large"],"mappings":"AAAA,SAASA,OAAT,QAAwB,OAAxB;;;;AAIA,OAAO,SAASC,mBAAT,CAAgCC,IAAhC,QAA+F,KAA7CC,KAA6C,QAA7CA,KAA6C,CAAtCC,MAAsC,QAAtCA,MAAsC,CAA9BC,KAA8B,QAA9BA,KAA8B;AACpG,SAAOL,OAAO,CAAC,YAAM;AACnB,YAAQE,IAAR;AACE,WAAK,OAAL;AACE,eAAOG,KAAP;AACF,WAAK,QAAL;AACE,eAAOD,MAAP;AACF,WAAK,OAAL;AACE,eAAOD,KAAP;AACF;AACE,eAAOA,KAAP,CARJ;;AAUD,GAXa,EAWX,CAACD,IAAD,CAXW,CAAd;AAYD","sourcesContent":["import { useMemo } from 'react';\n\nimport { SizeProp } from '../../../lib/types/props';\n\nexport function useFileUploaderSize<T>(size: SizeProp, { small, medium, large }: Record<SizeProp, T>) {\n return useMemo(() => {\n switch (size) {\n case 'large':\n return large;\n case 'medium':\n return medium;\n case 'small':\n return small;\n default:\n return small;\n }\n }, [size]);\n}\n"]}
@@ -1,2 +1,2 @@
1
- import { FileUploaderSize } from '../../../components/FileUploader';
2
- export declare function useFileUploaderSize<T>(size: FileUploaderSize, { small, medium, large }: Record<FileUploaderSize, T>): T;
1
+ import { SizeProp } from '../../../lib/types/props';
2
+ export declare function useFileUploaderSize<T>(size: SizeProp, { small, medium, large }: Record<SizeProp, T>): T;
@@ -10,6 +10,7 @@ var _class, _class2, _temp; // TODO: Enable this rule in functional components.
10
10
 
11
11
  import React from 'react';
12
12
  import ReactDOM from 'react-dom';
13
+ import debounce from 'lodash.debounce';
13
14
  import { isNonNullable } from "../../../lib/utils";
14
15
  import { isKeyTab, isShortcutPaste } from "../../../lib/events/keyboard/identifiers";
15
16
  import { MouseDrag } from "../../../lib/events/MouseDrag";
@@ -54,6 +55,7 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
54
55
  _this.frozen = false;
55
56
  _this.frozenBlur = false;
56
57
  _this.dragging = false;
58
+ _this.selectNodeContentsDebounced = debounce(selectNodeContents, 0);
57
59
 
58
60
  _this.selectInnerNode = function (node, start, end) {
59
61
  if (start === void 0) {
@@ -76,9 +78,8 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
76
78
  _this.frozen = true;
77
79
  _this.frozenBlur = true;
78
80
  _this.lastSelectedInnerNode = [node, start, end];
79
- setTimeout(function () {
80
- return selectNodeContents(node, start, end);
81
- }, 0);
81
+
82
+ _this.selectNodeContentsDebounced(node, start, end);
82
83
 
83
84
  if (_this.focusTimeout) {
84
85
  clearInterval(_this.focusTimeout);
@@ -127,7 +128,7 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
127
128
  text: suffix,
128
129
  side: "right"
129
130
  }) : _this.renderRightSide();
130
- var className = cx(styles.root(), jsInputStyles.root(_this.theme), _this.getSizeClassName(), (_cx = {}, _cx[jsInputStyles.disabled(_this.theme)] = !!disabled, _cx[jsInputStyles.borderless()] = !!borderless, _cx[jsInputStyles.focus(_this.theme)] = focused, _cx[jsInputStyles.blink(_this.theme)] = blinking, _cx[jsInputStyles.warning(_this.theme)] = !!warning, _cx[jsInputStyles.error(_this.theme)] = !!error, _cx[jsInputStyles.focusFallback(_this.theme)] = focused && (isIE11 || isEdge), _cx[jsInputStyles.warningFallback(_this.theme)] = !!warning && (isIE11 || isEdge), _cx[jsInputStyles.errorFallback(_this.theme)] = !!error && (isIE11 || isEdge), _cx[jsInputStyles.hideBlinkingCursor()] = isMobile, _cx));
131
+ var className = cx(styles.root(), jsInputStyles.root(_this.theme), _this.getSizeClassName(), (_cx = {}, _cx[jsInputStyles.disabled(_this.theme)] = !!disabled, _cx[jsInputStyles.borderless()] = !!borderless, _cx[jsInputStyles.focus(_this.theme)] = focused, _cx[jsInputStyles.hovering(_this.theme)] = !focused && !disabled && !warning && !error && !borderless, _cx[jsInputStyles.blink(_this.theme)] = blinking, _cx[jsInputStyles.warning(_this.theme)] = !!warning, _cx[jsInputStyles.error(_this.theme)] = !!error, _cx[jsInputStyles.focusFallback(_this.theme)] = focused && (isIE11 || isEdge), _cx[jsInputStyles.warningFallback(_this.theme)] = !!warning && (isIE11 || isEdge), _cx[jsInputStyles.errorFallback(_this.theme)] = !!error && (isIE11 || isEdge), _cx[jsInputStyles.hideBlinkingCursor()] = isMobile, _cx));
131
132
  var wrapperClass = cx(jsInputStyles.wrapper(), (_cx2 = {}, _cx2[styles.userSelectContain()] = focused, _cx2));
132
133
  var context = InputLayoutContextDefault;
133
134
  Object.assign(context, {
@@ -351,13 +352,21 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
351
352
  if (_this.state.focused) {
352
353
  return;
353
354
  }
354
- }
355
+ } // Auto-batching React@18 creates problems that are fixed with flushSync
356
+ // https://github.com/skbkontur/retail-ui/pull/3144#issuecomment-1535235366
357
+
355
358
 
356
- ReactDOM.flushSync(function () {
359
+ if (React.version.search('18') === 0) {
360
+ ReactDOM.flushSync(function () {
361
+ return _this.setState({
362
+ focused: true
363
+ });
364
+ });
365
+ } else {
357
366
  _this.setState({
358
367
  focused: true
359
368
  });
360
- });
369
+ }
361
370
 
362
371
  if (_this.props.onFocus) {
363
372
  _this.props.onFocus(e);
@@ -365,6 +374,8 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
365
374
  };
366
375
 
367
376
  _this.handleBlur = function (e) {
377
+ _this.selectNodeContentsDebounced.cancel();
378
+
368
379
  if (isMobile) {
369
380
  e.target.removeAttribute('contenteditable');
370
381
  }
@@ -475,7 +486,8 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
475
486
 
476
487
  _proto.getNode = function getNode() {
477
488
  return this.node;
478
- };
489
+ } // Async call required for Firefox
490
+ ;
479
491
 
480
492
  _proto.componentDidMount = function componentDidMount() {
481
493
  if (this.node) {