@skbkontur/react-ui 0.0.0-6dd088a035 → 0.0.0-70dd810c5c

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 (708) hide show
  1. package/CHANGELOG.md +129 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js +49 -46
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +2 -0
  7. package/cjs/components/Button/Button.js +32 -4
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +6 -0
  10. package/cjs/components/Button/Button.styles.js +109 -76
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  13. package/cjs/components/Calendar/Calendar.js +1 -0
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Calendar/CalendarDay.js +18 -2
  16. package/cjs/components/Calendar/CalendarDay.js.map +1 -1
  17. package/cjs/components/Calendar/DayCellView.js +7 -15
  18. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  19. package/cjs/components/Center/Center.d.ts +2 -0
  20. package/cjs/components/Center/Center.js +1 -0
  21. package/cjs/components/Center/Center.js.map +1 -1
  22. package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
  23. package/cjs/components/Checkbox/Checkbox.js +2 -14
  24. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  25. package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
  26. package/cjs/components/ComboBox/ComboBox.js +1 -0
  27. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  28. package/cjs/components/ComboBox/ComboBox.md +2 -2
  29. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  30. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
  31. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  32. package/cjs/components/CurrencyInput/constants.js +1 -2
  33. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  34. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  35. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  36. package/cjs/components/DateInput/DateInput.d.ts +2 -0
  37. package/cjs/components/DateInput/DateInput.js +20 -11
  38. package/cjs/components/DateInput/DateInput.js.map +1 -1
  39. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  40. package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
  41. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  42. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  43. package/cjs/components/DatePicker/DatePicker.js +6 -60
  44. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  45. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +3 -1
  46. package/cjs/components/DateRangePicker/DateRangePicker.js +61 -23
  47. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  48. package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  49. package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
  50. package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
  51. package/cjs/components/DateRangePicker/DateRangePickerInput.js +4 -8
  52. package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
  53. package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js +17 -17
  54. package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
  55. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  56. package/cjs/components/Dropdown/Dropdown.js +2 -82
  57. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  58. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  59. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  60. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  61. package/cjs/components/DropdownMenu/DropdownMenu.md +8 -8
  62. package/cjs/components/FileUploader/FileUploader.js +26 -10
  63. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  64. package/cjs/components/FxInput/FxInput.d.ts +3 -6
  65. package/cjs/components/FxInput/FxInput.js +2 -7
  66. package/cjs/components/FxInput/FxInput.js.map +1 -1
  67. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  68. package/cjs/components/Gapped/Gapped.js +1 -24
  69. package/cjs/components/Gapped/Gapped.js.map +1 -1
  70. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  71. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  72. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  73. package/cjs/components/Group/Group.d.ts +5 -4
  74. package/cjs/components/Group/Group.js +91 -40
  75. package/cjs/components/Group/Group.js.map +1 -1
  76. package/cjs/components/Group/Group.md +4 -4
  77. package/cjs/components/Group/Group.styles.d.ts +1 -0
  78. package/cjs/components/Group/Group.styles.js +12 -6
  79. package/cjs/components/Group/Group.styles.js.map +1 -1
  80. package/cjs/components/Hint/Hint.d.ts +2 -0
  81. package/cjs/components/Hint/Hint.js +5 -4
  82. package/cjs/components/Hint/Hint.js.map +1 -1
  83. package/cjs/components/Input/Input.d.ts +2 -0
  84. package/cjs/components/Input/Input.js +1 -0
  85. package/cjs/components/Input/Input.js.map +1 -1
  86. package/cjs/components/Input/Input.md +4 -5
  87. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  88. package/cjs/components/Kebab/Kebab.js +2 -26
  89. package/cjs/components/Kebab/Kebab.js.map +1 -1
  90. package/cjs/components/Kebab/Kebab.md +32 -32
  91. package/cjs/components/Link/Link.d.ts +2 -0
  92. package/cjs/components/Link/Link.js +6 -0
  93. package/cjs/components/Link/Link.js.map +1 -1
  94. package/cjs/components/Link/Link.mixins.js +1 -2
  95. package/cjs/components/Link/Link.mixins.js.map +1 -1
  96. package/cjs/components/Link/Link.styles.js +3 -2
  97. package/cjs/components/Link/Link.styles.js.map +1 -1
  98. package/cjs/components/Loader/Loader.d.ts +6 -36
  99. package/cjs/components/Loader/Loader.js +3 -57
  100. package/cjs/components/Loader/Loader.js.map +1 -1
  101. package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
  102. package/cjs/components/MaskedInput/MaskedInput.js +17 -1
  103. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  104. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  105. package/cjs/components/MenuItem/MenuItem.js +2 -22
  106. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  107. package/cjs/components/MenuItem/MenuItem.md +6 -6
  108. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  109. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  110. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  111. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  112. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  113. package/cjs/components/Modal/Modal.js +4 -2
  114. package/cjs/components/Modal/Modal.js.map +1 -1
  115. package/cjs/components/Modal/Modal.styles.d.ts +2 -1
  116. package/cjs/components/Modal/Modal.styles.js +40 -32
  117. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  118. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  119. package/cjs/components/Modal/ModalBody.js +1 -0
  120. package/cjs/components/Modal/ModalBody.js.map +1 -1
  121. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  122. package/cjs/components/Modal/ModalHeader.js +8 -1
  123. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  124. package/cjs/components/Modal/ModalSeparator.js +1 -1
  125. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  126. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  127. package/cjs/components/Paging/DotsIcon.js +13 -0
  128. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  129. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  130. package/cjs/components/Paging/ForwardIcon.js +13 -1
  131. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  132. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  133. package/cjs/components/Paging/NavigationHelper.js +8 -6
  134. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  135. package/cjs/components/Paging/Paging.d.ts +13 -2
  136. package/cjs/components/Paging/Paging.js +120 -50
  137. package/cjs/components/Paging/Paging.js.map +1 -1
  138. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  139. package/cjs/components/Paging/Paging.styles.js +151 -22
  140. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  141. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  142. package/cjs/components/Paging/PagingHelper.js +18 -11
  143. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  144. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -7
  145. package/cjs/components/PasswordInput/PasswordInput.js +2 -11
  146. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  147. package/cjs/components/Radio/Radio.d.ts +2 -0
  148. package/cjs/components/Radio/Radio.js +1 -0
  149. package/cjs/components/Radio/Radio.js.map +1 -1
  150. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  151. package/cjs/components/RadioGroup/RadioGroup.js +2 -1
  152. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  153. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -1
  154. package/cjs/components/RadioGroup/RadioGroup.styles.js +1 -1
  155. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  156. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  157. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  158. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  159. package/cjs/components/Select/Select.d.ts +5 -0
  160. package/cjs/components/Select/Select.js +5 -1
  161. package/cjs/components/Select/Select.js.map +1 -1
  162. package/cjs/components/Select/Select.md +3 -3
  163. package/cjs/components/SidePage/SidePage.js +1 -1
  164. package/cjs/components/SidePage/SidePage.js.map +1 -1
  165. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  166. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  167. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  168. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  169. package/cjs/components/SidePage/SidePageBody.js +1 -0
  170. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  171. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  172. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  173. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  174. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  175. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  176. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  177. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  178. package/cjs/components/SidePage/SidePageHeader.js +63 -19
  179. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  180. package/cjs/components/SingleToast/SingleToast.d.ts +3 -3
  181. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  182. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  183. package/cjs/components/Spinner/Spinner.js +2 -32
  184. package/cjs/components/Spinner/Spinner.js.map +1 -1
  185. package/cjs/components/Sticky/Sticky.d.ts +5 -13
  186. package/cjs/components/Sticky/Sticky.js +12 -18
  187. package/cjs/components/Sticky/Sticky.js.map +1 -1
  188. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  189. package/cjs/components/Switcher/Switcher.js +11 -20
  190. package/cjs/components/Switcher/Switcher.js.map +1 -1
  191. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  192. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  193. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  194. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  195. package/cjs/components/Tabs/Indicator.js +1 -0
  196. package/cjs/components/Tabs/Indicator.js.map +1 -1
  197. package/cjs/components/Tabs/Tab.d.ts +2 -0
  198. package/cjs/components/Tabs/Tab.js +1 -0
  199. package/cjs/components/Tabs/Tab.js.map +1 -1
  200. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  201. package/cjs/components/Tabs/Tabs.js +1 -0
  202. package/cjs/components/Tabs/Tabs.js.map +1 -1
  203. package/cjs/components/Textarea/Textarea.d.ts +2 -44
  204. package/cjs/components/Textarea/Textarea.js +16 -68
  205. package/cjs/components/Textarea/Textarea.js.map +1 -1
  206. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  207. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  208. package/cjs/components/Toast/Toast.d.ts +6 -2
  209. package/cjs/components/Toast/Toast.js +12 -2
  210. package/cjs/components/Toast/Toast.js.map +1 -1
  211. package/cjs/components/Toast/ToastView.d.ts +2 -14
  212. package/cjs/components/Toast/ToastView.js +3 -22
  213. package/cjs/components/Toast/ToastView.js.map +1 -1
  214. package/cjs/components/Toggle/Toggle.d.ts +3 -10
  215. package/cjs/components/Toggle/Toggle.js +6 -13
  216. package/cjs/components/Toggle/Toggle.js.map +1 -1
  217. package/cjs/components/Token/Token.d.ts +2 -0
  218. package/cjs/components/Token/Token.js +1 -0
  219. package/cjs/components/Token/Token.js.map +1 -1
  220. package/cjs/components/Token/Token.md +0 -83
  221. package/cjs/components/TokenInput/TokenInput.d.ts +4 -2
  222. package/cjs/components/TokenInput/TokenInput.js +3 -1
  223. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  224. package/cjs/components/TokenInput/TokenInput.md +2 -33
  225. package/cjs/components/TokenInput/TokenInputMenu.d.ts +12 -3
  226. package/cjs/components/TokenInput/TokenInputMenu.js +23 -1
  227. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  228. package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
  229. package/cjs/components/Tooltip/Tooltip.js +95 -13
  230. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  231. package/cjs/components/Tooltip/Tooltip.md +8 -8
  232. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  233. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  234. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  235. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  236. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  237. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  238. package/cjs/components/TooltipMenu/TooltipMenu.md +12 -12
  239. package/cjs/components/__stories__/iframe.creevey.mts +124 -0
  240. package/cjs/components/__stories__/iframeStoriesImplementation.js +73 -0
  241. package/cjs/components/__stories__/iframeStoriesImplementation.js.map +1 -0
  242. package/cjs/index.d.ts +1 -0
  243. package/cjs/index.js.map +1 -1
  244. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  245. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  246. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  247. package/cjs/internal/ComponentTable.js +2 -3
  248. package/cjs/internal/ComponentTable.js.map +1 -1
  249. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  250. package/cjs/internal/CustomComboBox/ComboBoxView.js +3 -1
  251. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  252. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  253. package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
  254. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  255. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  256. package/cjs/internal/DateSelect/DateSelect.js +12 -18
  257. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  258. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  259. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  260. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  261. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +7 -3
  262. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +36 -13
  263. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  264. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  265. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  266. package/cjs/internal/InputLikeText/InputLikeText.d.ts +2 -0
  267. package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
  268. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  269. package/cjs/internal/Menu/Menu.d.ts +2 -0
  270. package/cjs/internal/Menu/Menu.js +1 -0
  271. package/cjs/internal/Menu/Menu.js.map +1 -1
  272. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  273. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  274. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  275. package/cjs/internal/Popup/Popup.d.ts +43 -60
  276. package/cjs/internal/Popup/Popup.js +41 -81
  277. package/cjs/internal/Popup/Popup.js.map +1 -1
  278. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  279. package/cjs/internal/Popup/PopupPin.js +2 -35
  280. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  281. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  282. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  283. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  284. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  285. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  286. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  287. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  288. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  289. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  290. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  291. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  292. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  293. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  294. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  295. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  296. package/cjs/internal/ThemePlayground/Playground.js +16 -16
  297. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  298. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  299. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  300. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  301. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  302. package/cjs/internal/ThemePlayground/SizesGroup.js +4 -4
  303. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  304. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +1 -1
  305. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  306. package/cjs/internal/ThemePlayground/VariableValue.js +4 -4
  307. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  308. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  309. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  310. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  311. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  312. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  313. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  314. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  315. package/cjs/internal/themes/BasicTheme.d.ts +114 -20
  316. package/cjs/internal/themes/BasicTheme.js +152 -19
  317. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  318. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  319. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  320. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  321. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  322. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  323. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  324. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  325. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  326. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  327. package/cjs/lib/date/InternalDateGetter.js +8 -1
  328. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  329. package/cjs/lib/delay.mts +3 -0
  330. package/cjs/lib/events/keyListener.d.ts +7 -0
  331. package/cjs/lib/events/keyListener.js +21 -2
  332. package/cjs/lib/events/keyListener.js.map +1 -1
  333. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +9 -2
  334. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +9 -2
  335. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +16 -2
  336. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  337. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  338. package/cjs/lib/forwardRefAndName.js +0 -1
  339. package/cjs/lib/forwardRefAndName.js.map +1 -1
  340. package/cjs/lib/getMenuPositions.d.ts +21 -1
  341. package/cjs/lib/getMenuPositions.js +45 -8
  342. package/cjs/lib/getMenuPositions.js.map +1 -1
  343. package/cjs/lib/globalObject.d.ts +18 -0
  344. package/cjs/lib/globalObject.js +45 -0
  345. package/cjs/lib/globalObject.js.map +1 -0
  346. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  347. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  348. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  349. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  350. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  351. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  352. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  353. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  354. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  355. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  356. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  357. package/cjs/lib/utils.d.ts +4 -0
  358. package/cjs/lib/utils.js +5 -1
  359. package/cjs/lib/utils.js.map +1 -1
  360. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
  361. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  362. package/components/Autocomplete/Autocomplete.d.ts +6 -23
  363. package/components/Button/Button/Button.js +29 -7
  364. package/components/Button/Button/Button.js.map +1 -1
  365. package/components/Button/Button.d.ts +2 -0
  366. package/components/Button/Button.styles/Button.styles.js +79 -61
  367. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  368. package/components/Button/Button.styles.d.ts +6 -0
  369. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  370. package/components/Calendar/Calendar.d.ts +2 -0
  371. package/components/Calendar/CalendarDay/CalendarDay.js +9 -2
  372. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  373. package/components/Calendar/DayCellView/DayCellView.js +6 -10
  374. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  375. package/components/Center/Center/Center.js.map +1 -1
  376. package/components/Center/Center.d.ts +2 -0
  377. package/components/Checkbox/Checkbox/Checkbox.js +0 -11
  378. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  379. package/components/Checkbox/Checkbox.d.ts +2 -12
  380. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  381. package/components/ComboBox/ComboBox.d.ts +2 -0
  382. package/components/ComboBox/ComboBox.md +2 -2
  383. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -36
  384. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  385. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  386. package/components/CurrencyInput/constants/constants.js +0 -1
  387. package/components/CurrencyInput/constants/constants.js.map +1 -1
  388. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  389. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  390. package/components/DateInput/DateInput/DateInput.js +14 -11
  391. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  392. package/components/DateInput/DateInput.d.ts +2 -0
  393. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  394. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  395. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  396. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  397. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  398. package/components/DatePicker/DatePicker.d.ts +6 -33
  399. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +41 -22
  400. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  401. package/components/DateRangePicker/DateRangePicker.d.ts +3 -1
  402. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
  403. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
  404. package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  405. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +5 -8
  406. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
  407. package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js +16 -15
  408. package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js.map +1 -1
  409. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  410. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  411. package/components/Dropdown/Dropdown.d.ts +2 -47
  412. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  413. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  414. package/components/DropdownMenu/DropdownMenu.md +8 -8
  415. package/components/FileUploader/FileUploader/FileUploader.js +19 -8
  416. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  417. package/components/FxInput/FxInput/FxInput.js +1 -5
  418. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  419. package/components/FxInput/FxInput.d.ts +3 -6
  420. package/components/Gapped/Gapped/Gapped.js +1 -15
  421. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  422. package/components/Gapped/Gapped.d.ts +2 -15
  423. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  424. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  425. package/components/Group/Group/Group.js +64 -28
  426. package/components/Group/Group/Group.js.map +1 -1
  427. package/components/Group/Group.d.ts +5 -4
  428. package/components/Group/Group.md +4 -4
  429. package/components/Group/Group.styles/Group.styles.js +9 -6
  430. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  431. package/components/Group/Group.styles.d.ts +1 -0
  432. package/components/Hint/Hint/Hint.js +5 -5
  433. package/components/Hint/Hint/Hint.js.map +1 -1
  434. package/components/Hint/Hint.d.ts +2 -0
  435. package/components/Input/Input/Input.js.map +1 -1
  436. package/components/Input/Input.d.ts +2 -0
  437. package/components/Input/Input.md +4 -5
  438. package/components/Kebab/Kebab/Kebab.js +2 -20
  439. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  440. package/components/Kebab/Kebab.d.ts +2 -1
  441. package/components/Kebab/Kebab.md +32 -32
  442. package/components/Link/Link/Link.js +4 -0
  443. package/components/Link/Link/Link.js.map +1 -1
  444. package/components/Link/Link.d.ts +2 -0
  445. package/components/Link/Link.mixins/Link.mixins.js +1 -1
  446. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  447. package/components/Link/Link.styles/Link.styles.js +1 -1
  448. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  449. package/components/Loader/Loader/Loader.js +0 -33
  450. package/components/Loader/Loader/Loader.js.map +1 -1
  451. package/components/Loader/Loader.d.ts +6 -36
  452. package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
  453. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  454. package/components/MaskedInput/MaskedInput.d.ts +1 -0
  455. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  456. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  457. package/components/MenuItem/MenuItem.d.ts +2 -12
  458. package/components/MenuItem/MenuItem.md +6 -6
  459. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  460. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  461. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  462. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  463. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  464. package/components/Modal/Modal/Modal.js +3 -1
  465. package/components/Modal/Modal/Modal.js.map +1 -1
  466. package/components/Modal/Modal.styles/Modal.styles.js +32 -29
  467. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  468. package/components/Modal/Modal.styles.d.ts +2 -1
  469. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  470. package/components/Modal/ModalBody.d.ts +2 -0
  471. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  472. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  473. package/components/Modal/ModalHeader.d.ts +5 -0
  474. package/components/Modal/ModalSeparator/ModalSeparator.js +1 -1
  475. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  476. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  477. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  478. package/components/Paging/DotsIcon/package.json +6 -0
  479. package/components/Paging/DotsIcon.d.ts +3 -0
  480. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  481. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  482. package/components/Paging/ForwardIcon.d.ts +3 -0
  483. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  484. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  485. package/components/Paging/NavigationHelper.d.ts +3 -2
  486. package/components/Paging/Paging/Paging.js +96 -47
  487. package/components/Paging/Paging/Paging.js.map +1 -1
  488. package/components/Paging/Paging.d.ts +13 -2
  489. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  490. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  491. package/components/Paging/Paging.styles.d.ts +24 -1
  492. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  493. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  494. package/components/Paging/PagingHelper.d.ts +1 -1
  495. package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -7
  496. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  497. package/components/PasswordInput/PasswordInput.d.ts +2 -7
  498. package/components/Radio/Radio/Radio.js.map +1 -1
  499. package/components/Radio/Radio.d.ts +2 -0
  500. package/components/RadioGroup/RadioGroup/RadioGroup.js +1 -1
  501. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  502. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  503. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +1 -1
  504. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  505. package/components/RadioGroup/RadioGroup.styles.d.ts +1 -1
  506. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  507. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  508. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  509. package/components/Select/Select/Select.js +3 -2
  510. package/components/Select/Select/Select.js.map +1 -1
  511. package/components/Select/Select.d.ts +5 -0
  512. package/components/Select/Select.md +3 -3
  513. package/components/SidePage/SidePage/SidePage.js +1 -1
  514. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  515. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  516. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  517. package/components/SidePage/SidePage.styles.d.ts +3 -1
  518. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  519. package/components/SidePage/SidePageBody.d.ts +2 -0
  520. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  521. package/components/SidePage/SidePageContainer.d.ts +2 -0
  522. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  523. package/components/SidePage/SidePageFooter.d.ts +2 -0
  524. package/components/SidePage/SidePageHeader/SidePageHeader.js +62 -35
  525. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  526. package/components/SidePage/SidePageHeader.d.ts +12 -2
  527. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  528. package/components/SingleToast/SingleToast.d.ts +3 -3
  529. package/components/Spinner/Spinner/Spinner.js +1 -18
  530. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  531. package/components/Spinner/Spinner.d.ts +2 -18
  532. package/components/Sticky/Sticky/Sticky.js +10 -14
  533. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  534. package/components/Sticky/Sticky.d.ts +5 -13
  535. package/components/Switcher/Switcher/Switcher.js +19 -16
  536. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  537. package/components/Switcher/Switcher.d.ts +6 -21
  538. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  539. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  540. package/components/Switcher/Switcher.styles.d.ts +1 -0
  541. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  542. package/components/Tabs/Indicator.d.ts +2 -0
  543. package/components/Tabs/Tab/Tab.js.map +1 -1
  544. package/components/Tabs/Tab.d.ts +2 -0
  545. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  546. package/components/Tabs/Tabs.d.ts +2 -0
  547. package/components/Textarea/Textarea/Textarea.js +10 -51
  548. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  549. package/components/Textarea/Textarea.d.ts +2 -44
  550. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  551. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  552. package/components/Toast/Toast/Toast.js +6 -8
  553. package/components/Toast/Toast/Toast.js.map +1 -1
  554. package/components/Toast/Toast.d.ts +6 -2
  555. package/components/Toast/ToastView/ToastView.js +3 -17
  556. package/components/Toast/ToastView/ToastView.js.map +1 -1
  557. package/components/Toast/ToastView.d.ts +2 -14
  558. package/components/Toggle/Toggle/Toggle.js +7 -14
  559. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  560. package/components/Toggle/Toggle.d.ts +3 -10
  561. package/components/Token/Token/Token.js.map +1 -1
  562. package/components/Token/Token.d.ts +2 -0
  563. package/components/Token/Token.md +0 -83
  564. package/components/TokenInput/TokenInput/TokenInput.js +2 -1
  565. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  566. package/components/TokenInput/TokenInput.d.ts +4 -2
  567. package/components/TokenInput/TokenInput.md +2 -33
  568. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +16 -6
  569. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  570. package/components/TokenInput/TokenInputMenu.d.ts +12 -3
  571. package/components/Tooltip/Tooltip/Tooltip.js +67 -20
  572. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  573. package/components/Tooltip/Tooltip.d.ts +14 -9
  574. package/components/Tooltip/Tooltip.md +8 -8
  575. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  576. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  577. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  578. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  579. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  580. package/components/TooltipMenu/TooltipMenu.md +12 -12
  581. package/components/__stories__/iframe.creevey.mts +124 -0
  582. package/components/__stories__/iframeStoriesImplementation/iframeStoriesImplementation.js +90 -0
  583. package/components/__stories__/iframeStoriesImplementation/iframeStoriesImplementation.js.map +1 -0
  584. package/components/__stories__/iframeStoriesImplementation/package.json +6 -0
  585. package/index.d.ts +1 -0
  586. package/index.js +1 -0
  587. package/index.js.map +1 -1
  588. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  589. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  590. package/internal/ComponentTable/ComponentTable.js +0 -2
  591. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  592. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +2 -0
  593. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  594. package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  595. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  596. package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  597. package/internal/DateSelect/DateSelect/DateSelect.js +3 -10
  598. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  599. package/internal/DateSelect/DateSelect.d.ts +0 -10
  600. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  601. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  602. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +46 -17
  603. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  604. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +7 -3
  605. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  606. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  607. package/internal/InputLikeText/InputLikeText.d.ts +2 -0
  608. package/internal/Menu/Menu/Menu.js.map +1 -1
  609. package/internal/Menu/Menu.d.ts +2 -0
  610. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  611. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  612. package/internal/Popup/Popup/Popup.js +23 -69
  613. package/internal/Popup/Popup/Popup.js.map +1 -1
  614. package/internal/Popup/Popup.d.ts +43 -60
  615. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  616. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  617. package/internal/Popup/PopupPin.d.ts +23 -33
  618. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  619. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  620. package/internal/Popup/PopupPinNew/package.json +6 -0
  621. package/internal/Popup/PopupPinNew.d.ts +31 -0
  622. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  623. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  624. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  625. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  626. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  627. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  628. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  629. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  630. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  631. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  632. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  633. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  634. package/internal/ThemePlayground/Playground/Playground.js +17 -16
  635. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  636. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  637. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  638. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  639. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  640. package/internal/ThemePlayground/SizesGroup/SizesGroup.js +4 -4
  641. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  642. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +2 -2
  643. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  644. package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -4
  645. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  646. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  647. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  648. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  649. package/internal/ZIndex/ZIndex.d.ts +3 -3
  650. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  651. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  652. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  653. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  654. package/internal/themes/BasicTheme/BasicTheme.js +172 -26
  655. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  656. package/internal/themes/BasicTheme.d.ts +114 -20
  657. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  658. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  659. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  660. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  661. package/internal/themes/DarkTheme5_3/package.json +6 -0
  662. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  663. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  664. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  665. package/internal/themes/LightTheme5_3/package.json +6 -0
  666. package/internal/themes/LightTheme5_3.d.ts +1 -0
  667. package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
  668. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  669. package/lib/date/InternalDateGetter.d.ts +1 -1
  670. package/lib/delay.d.mts +1 -0
  671. package/lib/delay.mts +3 -0
  672. package/lib/events/keyListener/keyListener.js +17 -1
  673. package/lib/events/keyListener/keyListener.js.map +1 -1
  674. package/lib/events/keyListener.d.ts +7 -0
  675. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +9 -2
  676. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +9 -2
  677. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  678. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +9 -2
  679. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  680. package/lib/forwardRefAndName.d.ts +1 -1
  681. package/lib/getMenuPositions/getMenuPositions.js +33 -4
  682. package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
  683. package/lib/getMenuPositions.d.ts +21 -1
  684. package/lib/globalObject/globalObject.js +20 -0
  685. package/lib/globalObject/globalObject.js.map +1 -0
  686. package/lib/globalObject/package.json +6 -0
  687. package/lib/globalObject.d.ts +18 -0
  688. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  689. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  690. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  691. package/lib/theming/ThemeVersions.d.ts +1 -1
  692. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  693. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  694. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  695. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  696. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  697. package/lib/theming/themes/LightTheme.d.ts +1 -0
  698. package/lib/utils/utils.js +2 -0
  699. package/lib/utils/utils.js.map +1 -1
  700. package/lib/utils.d.ts +4 -0
  701. package/package.json +16 -18
  702. package/cjs/lib/SSRSafe.d.ts +0 -2
  703. package/cjs/lib/SSRSafe.js +0 -5
  704. package/cjs/lib/SSRSafe.js.map +0 -1
  705. package/lib/SSRSafe/SSRSafe.js +0 -4
  706. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  707. package/lib/SSRSafe/package.json +0 -6
  708. package/lib/SSRSafe.d.ts +0 -2
@@ -1,6 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.DropdownDataTids = exports.Dropdown = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
2
2
  var _react = _interopRequireDefault(require("react"));
3
- var _propTypes = _interopRequireDefault(require("prop-types"));
4
3
 
5
4
  var _filterProps = require("../../lib/filterProps");
6
5
  var _MenuHeader = require("../MenuHeader");
@@ -147,68 +146,6 @@ Dropdown = exports.Dropdown = (0, _rootNode.rootNode)(_class = (_Dropdown = /*#_
147
146
 
148
147
 
149
148
 
150
-
151
-
152
-
153
-
154
-
155
-
156
-
157
-
158
-
159
-
160
-
161
-
162
-
163
-
164
-
165
-
166
-
167
-
168
-
169
-
170
-
171
-
172
-
173
-
174
-
175
-
176
-
177
-
178
-
179
-
180
-
181
-
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
-
190
-
191
-
192
-
193
-
194
-
195
-
196
-
197
-
198
-
199
-
200
-
201
-
202
-
203
-
204
-
205
-
206
-
207
-
208
-
209
-
210
-
211
-
212
149
 
213
150
 
214
151
 
@@ -255,22 +192,5 @@ Dropdown = exports.Dropdown = (0, _rootNode.rootNode)(_class = (_Dropdown = /*#_
255
192
  * @public
256
193
  */_proto.open = function open() {if (this._select) {this._select.open();}} /**
257
194
  * @public
258
- */;_proto.close = function close() {if (this._select) {this._select.close();}};return Dropdown;}(_react.default.Component), _Dropdown.__KONTUR_REACT_UI__ = 'Dropdown', _Dropdown.displayName = 'Dropdown', _Dropdown.Header = _MenuHeader.MenuHeader, _Dropdown.MenuItem = _MenuItem.MenuItem, _Dropdown.Separator = _MenuSeparator.MenuSeparator, _Dropdown.propTypes = { /**
259
- * Подпись на кнопке.
260
- */caption: _propTypes.default.node.isRequired, /**
261
- * Отключает использование портала
262
- */disablePortal: _propTypes.default.bool, /**
263
- * Визуально отключает Dropdown
264
- */disabled: _propTypes.default.bool, /**
265
- * Визуально показать наличие ошибки.
266
- */error: _propTypes.default.bool, /**
267
- * Иконка слева от текста кнопки
268
- */icon: _propTypes.default.node, maxMenuHeight: _propTypes.default.number, menuAlign: _propTypes.default.oneOf(['left', 'right']), menuWidth: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), size: _propTypes.default.oneOf(['small', 'medium', 'large']), /**
269
- * Смотри Button.
270
- */use: _propTypes.default.any, /**
271
- * Визуально показать наличие предупреждения.
272
- */warning: _propTypes.default.bool, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), /**
273
- * Вызывается при закрытии меню.
274
- */onClose: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, /**
275
- * Вызывается при открытии меню.
276
- */onOpen: _propTypes.default.func }, _Dropdown)) || _class;function renderValue(value) {return value;}
195
+ */;_proto.close = function close() {if (this._select) {this._select.close();}};return Dropdown;}(_react.default.Component), _Dropdown.__KONTUR_REACT_UI__ = 'Dropdown', _Dropdown.displayName = 'Dropdown', _Dropdown.Header = _MenuHeader.MenuHeader, _Dropdown.MenuItem = _MenuItem.MenuItem, _Dropdown.Separator = _MenuSeparator.MenuSeparator, _Dropdown)) || _class;function renderValue(value) {return value;
196
+ }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_filterProps","_MenuHeader","_MenuItem","_MenuSeparator","_Select","_CommonWrapper","_rootNode","_ThemeContext","_getDropdownTheme","_excluded","_class","_Dropdown","PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","corners","id","DropdownDataTids","exports","root","Dropdown","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","caption","icon","rest","_objectWithoutPropertiesLoose2","default","items","React","Children","map","children","item","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","Select","ref","_refSelect","filterProps","value","_icon","renderValue","element","_select","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","theme","getDropdownTheme","Provider","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator","propTypes","PropTypes","node","isRequired","bool","number","oneOf","oneOfType","string","any","func"],"sources":["Dropdown.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { filterProps } from '../../lib/filterProps';\nimport { MenuHeader } from '../MenuHeader';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { Select } from '../Select';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { ButtonUse } from '../Button';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { getDropdownTheme } from './getDropdownTheme';\n\nconst PASS_PROPS = {\n _renderButton: true,\n error: true,\n disabled: true,\n disablePortal: true,\n menuAlign: true,\n menuWidth: true,\n maxMenuHeight: true,\n use: true,\n size: true,\n warning: true,\n width: true,\n onOpen: true,\n onClose: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n menuPos: true,\n corners: true,\n id: true,\n 'aria-describedby': true,\n 'aria-label': true,\n};\n\nexport interface DropdownProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Задает подпись на кнопке. */\n caption: React.ReactNode;\n\n /** Добавляет иконку слева от текста кнопки. */\n icon?: React.ReactElement<any>;\n\n /** Задает ширину выпадающего меню. */\n width?: React.CSSProperties['width'];\n\n /** @ignore */\n _renderButton?: (params: any) => JSX.Element;\n\n /** Отключает использование портала. */\n disablePortal?: boolean;\n\n /** Делает компонент недоступным.*/\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает максимальную высоту меню. */\n maxMenuHeight?: number;\n\n /** Задает текущую позицию выпадающего окна вручную.\n */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание выпадающего меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает длину меню. */\n menuWidth?: number | string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задаёт стиль кнопки. */\n use?: ButtonUse;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /** Задает функцию, которая вызывается при закрытии меню. */\n onClose?: () => void;\n\n /** Задает функцию, которая вызывается при открытии меню. */\n onOpen?: () => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\ntype DropdownSelectType = Select<React.ReactNode, React.ReactNode>;\n\nexport const DropdownDataTids = {\n root: 'Dropdown__root',\n} as const;\n\n/**\n * Выпадающее меню `Dropdown`. Содержит несколько команд, объединенных по смыслу.\n *\n * Используйте кнопку-меню:\n * * когда не хватает места для нескольких кнопок.\n * * когда названия действий очень длинные.\n * * когда действия редко используются или объединены по смыслу.\n *\n * Не используйте `Dropdown` для выбора значения из набора вариантов. В таком случае воспользуйтесь компонентом Select.\n */\n@rootNode\nexport class Dropdown extends React.Component<DropdownProps> {\n public static __KONTUR_REACT_UI__ = 'Dropdown';\n public static displayName = 'Dropdown';\n\n public static Header = MenuHeader;\n public static MenuItem = MenuItem;\n public static Separator = MenuSeparator;\n\n public static propTypes = {\n /**\n * Подпись на кнопке.\n */\n caption: PropTypes.node.isRequired,\n\n /**\n * Отключает использование портала\n */\n disablePortal: PropTypes.bool,\n\n /**\n * Визуально отключает Dropdown\n */\n disabled: PropTypes.bool,\n\n /**\n * Визуально показать наличие ошибки.\n */\n error: PropTypes.bool,\n\n /**\n * Иконка слева от текста кнопки\n */\n icon: PropTypes.node,\n\n maxMenuHeight: PropTypes.number,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n menuWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n\n /**\n * Смотри Button.\n */\n use: PropTypes.any,\n\n /**\n * Визуально показать наличие предупреждения.\n */\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n /**\n * Вызывается при закрытии меню.\n */\n onClose: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n /**\n * Вызывается при открытии меню.\n */\n onOpen: PropTypes.func,\n };\n\n private _select: Nullable<DropdownSelectType>;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getDropdownTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = () => {\n const { caption, icon, ...rest } = this.props;\n const items = React.Children.map(this.props.children, (item) => item) || [];\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...rest}>\n <Select<React.ReactNode, React.ReactNode>\n data-tid={DropdownDataTids.root}\n ref={this._refSelect}\n {...filterProps(rest, PASS_PROPS)}\n value={caption}\n items={items}\n _icon={icon}\n renderValue={renderValue}\n />\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n */\n public open() {\n if (this._select) {\n this._select.open();\n }\n }\n\n /**\n * @public\n */\n public close() {\n if (this._select) {\n this._select.close();\n }\n }\n\n private _refSelect = (element: DropdownSelectType): void => {\n this._select = element;\n };\n}\n\nfunction renderValue(value: any) {\n return value;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_filterProps","_MenuHeader","_MenuItem","_MenuSeparator","_Select","_CommonWrapper","_rootNode","_ThemeContext","_getDropdownTheme","_excluded","_class","_Dropdown","PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","corners","id","DropdownDataTids","exports","root","Dropdown","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","caption","icon","rest","_objectWithoutPropertiesLoose2","default","items","React","Children","map","children","item","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","Select","ref","_refSelect","filterProps","value","_icon","renderValue","element","_select","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","theme","getDropdownTheme","Provider","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator"],"sources":["Dropdown.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { filterProps } from '../../lib/filterProps';\nimport { MenuHeader } from '../MenuHeader';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { Select } from '../Select';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { ButtonUse } from '../Button';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { getDropdownTheme } from './getDropdownTheme';\n\nconst PASS_PROPS = {\n _renderButton: true,\n error: true,\n disabled: true,\n disablePortal: true,\n menuAlign: true,\n menuWidth: true,\n maxMenuHeight: true,\n use: true,\n size: true,\n warning: true,\n width: true,\n onOpen: true,\n onClose: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n menuPos: true,\n corners: true,\n id: true,\n 'aria-describedby': true,\n 'aria-label': true,\n};\n\nexport interface DropdownProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Задает подпись на кнопке. */\n caption: React.ReactNode;\n\n /** Добавляет иконку слева от текста кнопки. */\n icon?: React.ReactElement<any>;\n\n /** Задает ширину выпадающего меню. */\n width?: React.CSSProperties['width'];\n\n /** @ignore */\n _renderButton?: (params: any) => JSX.Element;\n\n /** Отключает использование портала. */\n disablePortal?: boolean;\n\n /** Делает компонент недоступным.*/\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает максимальную высоту меню. */\n maxMenuHeight?: number;\n\n /** Задает текущую позицию выпадающего окна вручную.\n */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание выпадающего меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает длину меню. */\n menuWidth?: number | string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задаёт стиль кнопки. */\n use?: ButtonUse;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /** Задает функцию, которая вызывается при закрытии меню. */\n onClose?: () => void;\n\n /** Задает функцию, которая вызывается при открытии меню. */\n onOpen?: () => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\ntype DropdownSelectType = Select<React.ReactNode, React.ReactNode>;\n\nexport const DropdownDataTids = {\n root: 'Dropdown__root',\n} as const;\n\n/**\n * Выпадающее меню `Dropdown`. Содержит несколько команд, объединенных по смыслу.\n *\n * Используйте кнопку-меню:\n * * когда не хватает места для нескольких кнопок.\n * * когда названия действий очень длинные.\n * * когда действия редко используются или объединены по смыслу.\n *\n * Не используйте `Dropdown` для выбора значения из набора вариантов. В таком случае воспользуйтесь компонентом Select.\n */\n@rootNode\nexport class Dropdown extends React.Component<DropdownProps> {\n public static __KONTUR_REACT_UI__ = 'Dropdown';\n public static displayName = 'Dropdown';\n\n public static Header = MenuHeader;\n public static MenuItem = MenuItem;\n public static Separator = MenuSeparator;\n\n private _select: Nullable<DropdownSelectType>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getDropdownTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = () => {\n const { caption, icon, ...rest } = this.props;\n const items = React.Children.map(this.props.children, (item) => item) || [];\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...rest}>\n <Select<React.ReactNode, React.ReactNode>\n data-tid={DropdownDataTids.root}\n ref={this._refSelect}\n {...filterProps(rest, PASS_PROPS)}\n value={caption}\n items={items}\n _icon={icon}\n renderValue={renderValue}\n />\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n */\n public open() {\n if (this._select) {\n this._select.open();\n }\n }\n\n /**\n * @public\n */\n public close() {\n if (this._select) {\n this._select.close();\n }\n }\n\n private _refSelect = (element: DropdownSelectType): void => {\n this._select = element;\n };\n}\n\nfunction renderValue(value: any) {\n return value;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import type { PopupMenuProps } from '../../internal/PopupMenu';
4
4
  import type { PopupPositionsType } from '../../internal/Popup';
5
5
  import type { CommonProps } from '../../internal/CommonWrapper';
6
+ import type { TGetRootNode } from '../../lib/rootNode';
6
7
  export interface DropdownMenuProps extends Pick<AriaAttributes, 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>, CommonProps {
7
8
  /** Максимальная высота меню */
8
9
  menuMaxHeight?: React.CSSProperties['maxWidth'];
@@ -20,13 +21,13 @@ export interface DropdownMenuProps extends Pick<AriaAttributes, 'aria-label'>, P
20
21
  /**
21
22
  * Произвольный элемент, который будет отрендерен в шапке меню.
22
23
  *
23
- * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.
24
+ * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.
24
25
  */
25
26
  header?: React.ReactNode;
26
27
  /**
27
28
  * Произвольный элемент, который будет отрендерен в подвале меню.
28
29
  *
29
- * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator).
30
+ * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.
30
31
  */
31
32
  footer?: React.ReactNode;
32
33
  /**
@@ -55,6 +56,7 @@ export declare class DropdownMenu extends React.Component<DropdownMenuProps> {
55
56
  static defaultProps: DefaultProps;
56
57
  private getProps;
57
58
  private popupMenu;
59
+ getRootNode: TGetRootNode;
58
60
  private setRootNode;
59
61
  constructor(props: DropdownMenuProps);
60
62
  render(): React.JSX.Element;
@@ -86,6 +86,7 @@ DropdownMenu = exports.DropdownMenu = (0, _rootNode.rootNode)(_class = (_Dropdow
86
86
 
87
87
 
88
88
 
89
+
89
90
  function DropdownMenu(props) {var _this;
90
91
  _this = _React$Component.call(this, props) || this;_this.getProps = (0, _createPropsGetter.createPropsGetter)(DropdownMenu.defaultProps);_this.popupMenu = null;_this.
91
92
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -117,12 +117,12 @@ import { Button, MenuHeader, MenuItem, MenuSeparator } from '@skbkontur/react-ui
117
117
 
118
118
  ```jsx harmony
119
119
  import { Button, MenuHeader, MenuItem, MenuSeparator, DropdownMenu } from '@skbkontur/react-ui';
120
- import OkIcon from '@skbkontur/react-icons/Ok';
120
+ import { CheckAIcon16Regular } from '@skbkontur/icons/icons/CheckAIcon/CheckAIcon16Regular';;
121
121
 
122
122
  <DropdownMenu caption={<Button use="primary">Открыть меню</Button>}>
123
123
  <MenuHeader>MenuHeader</MenuHeader>
124
- <MenuItem icon={<OkIcon />}>MenuItem1</MenuItem>
125
- <MenuItem icon={<OkIcon />}>MenuItem2</MenuItem>
124
+ <MenuItem icon={<CheckAIcon16Regular />}>MenuItem1</MenuItem>
125
+ <MenuItem icon={<CheckAIcon16Regular />}>MenuItem2</MenuItem>
126
126
  <MenuItem>MenuItem3</MenuItem>
127
127
  </DropdownMenu>;
128
128
  ```
@@ -131,12 +131,12 @@ import OkIcon from '@skbkontur/react-icons/Ok';
131
131
 
132
132
  ```jsx harmony
133
133
  import { Button, MenuHeader, MenuItem, MenuSeparator, DropdownMenu } from '@skbkontur/react-ui';
134
- import OkIcon from '@skbkontur/react-icons/Ok';
134
+ import { CheckAIcon16Regular } from '@skbkontur/icons/icons/CheckAIcon/CheckAIcon16Regular';;
135
135
 
136
136
  <DropdownMenu preventIconsOffset caption={<Button use="primary">Открыть меню</Button>}>
137
137
  <MenuHeader>MenuHeader</MenuHeader>
138
- <MenuItem icon={<OkIcon />}>MenuItem1</MenuItem>
139
- <MenuItem icon={<OkIcon />}>MenuItem2</MenuItem>
138
+ <MenuItem icon={<CheckAIcon16Regular />}>MenuItem1</MenuItem>
139
+ <MenuItem icon={<CheckAIcon16Regular />}>MenuItem2</MenuItem>
140
140
  <MenuItem>MenuItem3</MenuItem>
141
141
  </DropdownMenu>
142
142
  ```
@@ -162,13 +162,13 @@ import { Button, MenuHeader, MenuItem, MenuSeparator } from '@skbkontur/react-ui
162
162
  В `caption` можно передать любой элемент.
163
163
 
164
164
  ```jsx harmony
165
- import MenuIcon from '@skbkontur/react-icons/Menu';
165
+ import { UiMenuBars3HIcon16Regular } from '@skbkontur/icons/icons/UiMenuBars3HIcon/UiMenuBars3HIcon16Regular';
166
166
  import { MenuItem } from '@skbkontur/react-ui';
167
167
 
168
168
  <DropdownMenu
169
169
  caption={
170
170
  <span style={{ display: 'inline-block' }} tabIndex="0">
171
- <MenuIcon size={32} />
171
+ <UiMenuBars3HIcon16Regular size={32} />
172
172
  </span>
173
173
  }
174
174
  menuWidth="300px"
@@ -1,6 +1,6 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;exports.__esModule = true;exports.FileUploaderDataTids = exports.FileUploader = void 0;var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _react = _interopRequireWildcard(require("react"));
2
- var _globalObject = require("@skbkontur/global-object");
3
2
 
3
+ var _globalObject = require("../../lib/globalObject");
4
4
 
5
5
  var _fileUtils = require("../../internal/FileUploaderControl/fileUtils");
6
6
  var _Emotion = require("../../lib/theming/Emotion");
@@ -203,10 +203,6 @@ var _FileUploader = (0, _forwardRefAndName.forwardRefAndName)('FileUploader', fu
203
203
  var _useDrop = (0, _useDrop3.useDrop)({ onDrop: handleDrop }),isDraggable = _useDrop.isDraggable,labelRef = _useDrop.ref;
204
204
  var _useDrop2 = (0, _useDrop3.useDrop)(),isWindowDraggable = _useDrop2.isDraggable,windowRef = _useDrop2.ref;
205
205
 
206
- if ((0, _globalObject.isBrowser)(_globalObject.globalObject)) {
207
- windowRef.current = _globalObject.globalObject.document;
208
- }
209
-
210
206
  var focus = (0, _react.useCallback)(function () {var _inputRef$current;
211
207
  _keyListener.keyListener.isTabPressed = true;
212
208
  (_inputRef$current = inputRef.current) == null || _inputRef$current.focus();
@@ -237,10 +233,22 @@ var _FileUploader = (0, _forwardRefAndName.forwardRefAndName)('FileUploader', fu
237
233
  [handleRemoveFile, removeFile]
238
234
  );
239
235
 
236
+ var handleReset = (0, _react.useCallback)(function () {
237
+ reset();
238
+ var dataTransfer = new DataTransfer();
239
+ inputRef.current && (inputRef.current.files = dataTransfer.files);
240
+ }, [reset, handleRemoveFile]);
241
+
240
242
  (0, _react.useImperativeHandle)(
241
243
  ref,
242
- function () {return { focus: focus, blur: blur, reset: reset, removeFile: handleExternalFileDeletion, getRootNode: function getRootNode() {return rootNodeRef.current;} };},
243
- [ref, blur, focus, reset, handleExternalFileDeletion]
244
+ function () {return {
245
+ focus: focus,
246
+ blur: blur,
247
+ reset: handleReset,
248
+ removeFile: handleExternalFileDeletion,
249
+ getRootNode: function getRootNode() {return rootNodeRef.current;}
250
+ };},
251
+ [ref, blur, focus, handleReset, handleExternalFileDeletion]
244
252
  );
245
253
 
246
254
  var _useState2 = (0, _react.useState)(false),focusedByTab = _useState2[0],setFocusedByTab = _useState2[1];
@@ -250,10 +258,10 @@ var _FileUploader = (0, _forwardRefAndName.forwardRefAndName)('FileUploader', fu
250
258
  };
251
259
 
252
260
  var handleFocus = function handleFocus(e) {
253
- if (!disabled) {
261
+ if (!disabled) {var _getOwnerGlobalObject, _getOwnerGlobalObject2;
254
262
  // focus event fires before keyDown eventlistener
255
263
  // so we should check tabPressed in async way
256
- _globalObject.globalObject.requestAnimationFrame == null || _globalObject.globalObject.requestAnimationFrame(function () {
264
+ (_getOwnerGlobalObject = (_getOwnerGlobalObject2 = (0, _globalObject.getOwnerGlobalObject)()).requestAnimationFrame) == null || _getOwnerGlobalObject.call(_getOwnerGlobalObject2, function () {
257
265
  if (_keyListener.keyListener.isTabPressed) {
258
266
  setFocusedByTab(true);
259
267
  }
@@ -327,7 +335,15 @@ var _FileUploader = (0, _forwardRefAndName.forwardRefAndName)('FileUploader', fu
327
335
  "data-tid": FileUploaderDataTids.root,
328
336
  className: _FileUploader2.jsStyles.root(theme),
329
337
  style: (0, _useMemoObject.useMemoObject)({ width: width }),
330
- ref: rootNodeRef },
338
+ ref: function ref(node) {
339
+ rootNodeRef.current = node;
340
+ if (node) {
341
+ var globalObject = (0, _globalObject.getOwnerGlobalObject)(node);
342
+ if ((0, _globalObject.isBrowser)(globalObject)) {
343
+ windowRef.current = globalObject.document;
344
+ }
345
+ }
346
+ } },
331
347
 
332
348
  !hideFiles && !isSingleMode && !!files.length && /*#__PURE__*/
333
349
  _react.default.createElement(_FileUploaderFileList.FileUploaderFileList, { renderFile: renderFile, size: size, onRemove: handleRemoveFile }), /*#__PURE__*/
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_globalObject","_fileUtils","_Emotion","_useMemoObject","_FileUploaderControlContext","_useControlLocale","_useUpload","_useDrop3","_ThemeContext","_withFileUploaderControlProvider","_keyListener","_FileUploaderFile","_FileUploaderFileList","_CommonWrapper","_FileUploaderFileValidationResult","_useFileUploaderSize","_forwardRefAndName","_FocusControlWrapper","_UploadIcon","_FileUploader2","_excluded","stopPropagation","e","FileUploaderDataTids","exports","root","content","link","input","defaultRenderFile","file","fileNode","_FileUploader","forwardRefAndName","props","ref","_cx","theme","useContext","ThemeContext","initialFiles","disabled","error","warning","_props$multiple","multiple","_props$width","width","fileUploaderWidth","_props$hideFiles","hideFiles","onBlur","onFocus","onChange","request","validateBeforeUpload","onRequestSuccess","onRequestError","_props$size","size","_props$renderFile","renderFile","inputProps","_objectWithoutPropertiesLoose2","default","_useContext","FileUploaderControlContext","files","setFiles","removeFile","reset","setFileValidationResult","isMinLengthReached","locale","useControlLocale","inputRef","useRef","fileDivRef","isAsync","isSingleMode","_useState","useState","isLinkVisible","setIsLinkVisible","upload","useUpload","tryValidateAndUpload","useCallback","forEach","_ref","_asyncToGenerator2","_regenerator","mark","_callee","validationMessage","wrap","_callee$","_context","prev","next","t0","sent","id","FileUploaderFileValidationResult","stop","_x","apply","arguments","sizeClassName","useFileUploaderSize","small","jsStyles","sizeSmall","medium","sizeMedium","large","sizeLarge","sizeIconClass","iconSmall","iconMedium","iconLarge","contentInnerClass","contentInnerSmall","contentInnerMedium","contentInnerLarge","handleChange","newFiles","length","filesArray","Array","from","attachedFiles","map","getAttachedFile","handleDrop","event","dataTransfer","_dataTransfer$files","_useDrop","useDrop","onDrop","isDraggable","labelRef","_useDrop2","isWindowDraggable","windowRef","isBrowser","globalObject","current","document","focus","_inputRef$current","keyListener","isTabPressed","blur","_inputRef$current2","handleRemoveFile","fileId","DataTransfer","filter","f","items","add","originalFile","handleExternalFileDeletion","useImperativeHandle","getRootNode","rootNodeRef","_useState2","focusedByTab","setFocusedByTab","handleInputChange","target","handleFocus","requestAnimationFrame","handleBlur","_useState3","hovered","setHovered","uploadButtonClassNames","cx","uploadButton","uploadButtonFocus","dragOver","canDrop","uploadButtonWrapperClassNames","windowDragOver","uploadButtonIconClassNames","icon","iconDisabled","hasOneFile","hasOneFileForSingle","contentClassNames","contentWithFiles","linkClassNames","linkHovered","linkDisabled","useEffect","iconSizes","parseInt","btnIconSizeSmall","btnIconSizeMedium","btnIconSizeLarge","createElement","UploadIcon","CommonWrapper","className","style","useMemoObject","FileUploaderFileList","onRemove","onMouseEnter","onMouseLeave","choosedFile","chooseFile","String","fromCharCode","globalClasses","afterLinkText","afterLinkText_HasFiles","singleFile","FileUploaderFile","Fragment","orDragHere","FocusControlWrapper","onBlurWhenDisabled","_extends2","tabIndex","type","visuallyHidden","onClick","FileUploader","withFileUploaderControlProvider","React","memo","displayName"],"sources":["FileUploader.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport type { FileUploaderAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { getAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { useMemoObject } from '../../hooks/useMemoObject';\nimport { FileUploaderControlContext } from '../../internal/FileUploaderControl/FileUploaderControlContext';\nimport { useControlLocale } from '../../internal/FileUploaderControl/hooks/useControlLocale';\nimport { useUpload } from '../../internal/FileUploaderControl/hooks/useUpload';\nimport { useDrop } from '../../hooks/useDrop';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';\nimport { withFileUploaderControlProvider } from '../../internal/FileUploaderControl/withFileUploaderControlProvider';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { FileUploaderFile } from '../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile';\nimport { FileUploaderFileList } from '../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FileUploaderFileValidationResult } from '../../internal/FileUploaderControl/FileUploaderFileValidationResult';\nimport { useFileUploaderSize } from '../../internal/FileUploaderControl/hooks/useFileUploaderSize';\nimport type { SizeProp } from '../../lib/types/props';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { UploadIcon } from './UploadIcon';\nimport { globalClasses, jsStyles } from './FileUploader.styles';\n\nconst stopPropagation: React.ReactEventHandler = (e) => e.stopPropagation();\n\ntype FileUploaderOverriddenProps = 'size';\n\ninterface _FileUploaderProps\n extends CommonProps,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, FileUploaderOverriddenProps> {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n /** Начальное состояние загруженных файлов */\n initialFiles?: File[];\n /** Состояние ошибки всего контрола */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает длину компонента. */\n width?: React.CSSProperties['width'];\n\n /** Задаёт размер контрола. */\n size?: SizeProp;\n\n /** Скрывает отображение файлов. */\n hideFiles?: boolean;\n\n /** Задает функцию, через которую отправляются файлы. Используется для отслеживания статуса загрузки файла.\n * @param {FileUploaderAttachedFile} file - файл, статус загрузки которого необходимо отследить. */\n request?: (file: FileUploaderAttachedFile) => Promise<void>;\n\n /** Задает функцию, которая вызывается при удачной попытке отправки через request. */\n onRequestSuccess?: (fileId: string) => void;\n\n /** Задает функцию, которая вызывается при неудачной попытке отправки через request. */\n onRequestError?: (fileId: string) => void;\n\n /** Определяет функцию валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. Чтобы вывести валидацию ошибки, промис должен вернуть строку. * */\n validateBeforeUpload?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;\n\n /** Задает функцию, которая позволяет кастомизировать файлы. Через нее можно вешать кастомные валидации на каждый файл. */\n renderFile?: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n}\n\nexport interface FileUploaderRef extends InstanceWithRootNode {\n focus: () => void;\n blur: () => void;\n /** Сбрасывает выбранные файлы */\n reset: () => void;\n removeFile: (fileId: string) => void;\n}\n\nexport const FileUploaderDataTids = {\n root: 'FileUploader__root',\n content: 'FileUploader__content',\n link: 'FileUploader__link',\n input: 'FileUploader__input',\n} as const;\n\nconst defaultRenderFile = (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => fileNode;\n\nconst _FileUploader = forwardRefAndName<FileUploaderRef, _FileUploaderProps>('FileUploader', (props, ref) => {\n const theme = useContext(ThemeContext);\n\n const {\n initialFiles,\n disabled,\n error,\n warning,\n multiple = false,\n width = theme.fileUploaderWidth,\n hideFiles = false,\n onBlur,\n onFocus,\n onChange,\n request,\n validateBeforeUpload,\n onRequestSuccess,\n onRequestError,\n size = 'small',\n renderFile = defaultRenderFile,\n ...inputProps\n } = props;\n\n const { files, setFiles, removeFile, reset, setFileValidationResult, isMinLengthReached } =\n useContext(FileUploaderControlContext);\n\n const locale = useControlLocale();\n\n const inputRef = useRef<HTMLInputElement>(null);\n const fileDivRef = useRef<HTMLDivElement>(null);\n\n const isAsync = !!request;\n const isSingleMode = !multiple;\n\n const [isLinkVisible, setIsLinkVisible] = useState(true);\n const upload = useUpload(request, onRequestSuccess, onRequestError);\n\n const tryValidateAndUpload = useCallback(\n (files: FileUploaderAttachedFile[]) => {\n files.forEach(async (file) => {\n const validationMessage = validateBeforeUpload && (await validateBeforeUpload(file));\n\n if (!validationMessage) {\n isAsync && upload(file);\n } else {\n setFileValidationResult(file.id, FileUploaderFileValidationResult.error(validationMessage));\n }\n });\n },\n [validateBeforeUpload, isAsync, upload, setFileValidationResult],\n );\n\n const sizeClassName = useFileUploaderSize(size, {\n small: jsStyles.sizeSmall(theme),\n medium: jsStyles.sizeMedium(theme),\n large: jsStyles.sizeLarge(theme),\n });\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(theme),\n medium: jsStyles.iconMedium(theme),\n large: jsStyles.iconLarge(theme),\n });\n\n const contentInnerClass = useFileUploaderSize(size, {\n small: jsStyles.contentInnerSmall(theme),\n medium: jsStyles.contentInnerMedium(theme),\n large: jsStyles.contentInnerLarge(theme),\n });\n\n /** common part **/\n const handleChange = useCallback(\n (newFiles: FileList | null) => {\n if (!newFiles || !newFiles.length) {\n return;\n }\n\n let filesArray = Array.from(newFiles);\n\n if (isSingleMode) {\n filesArray = [filesArray[0]];\n }\n\n const attachedFiles = filesArray.map(getAttachedFile);\n\n if (isSingleMode && attachedFiles.length && files.length) {\n removeFile(files[0].id);\n }\n\n if (attachedFiles.length) {\n setFiles(attachedFiles);\n tryValidateAndUpload(attachedFiles);\n }\n },\n [tryValidateAndUpload, setFiles, isSingleMode, files, removeFile],\n );\n\n const handleDrop = useCallback(\n (event: DragEvent) => {\n if (disabled) {\n return;\n }\n\n const { dataTransfer } = event;\n if (dataTransfer) {\n if (dataTransfer.files?.length > 0) {\n handleChange(dataTransfer.files);\n }\n }\n },\n [handleChange, disabled],\n );\n\n const { isDraggable, ref: labelRef } = useDrop<HTMLLabelElement>({ onDrop: handleDrop });\n const { isDraggable: isWindowDraggable, ref: windowRef } = useDrop<Document>();\n\n if (isBrowser(globalObject)) {\n windowRef.current = globalObject.document;\n }\n\n const focus = useCallback(() => {\n keyListener.isTabPressed = true;\n inputRef.current?.focus();\n }, []);\n\n const blur = useCallback(() => {\n inputRef.current?.blur();\n }, []);\n\n const handleRemoveFile = useCallback(\n (fileId: string) => {\n const dataTransfer = new DataTransfer();\n files\n .filter((f) => f.id !== fileId)\n .forEach((file) => {\n dataTransfer.items.add(file.originalFile);\n });\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n },\n [files],\n );\n\n const handleExternalFileDeletion = useCallback(\n (fileId: string) => {\n removeFile(fileId);\n handleRemoveFile(fileId);\n },\n [handleRemoveFile, removeFile],\n );\n\n useImperativeHandle(\n ref,\n () => ({ focus, blur, reset, removeFile: handleExternalFileDeletion, getRootNode: () => rootNodeRef.current }),\n [ref, blur, focus, reset, handleExternalFileDeletion],\n );\n\n const [focusedByTab, setFocusedByTab] = useState(false);\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n handleChange(event.target.files);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n onFocus?.(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocusedByTab(false);\n if (!disabled) {\n onBlur?.(e);\n }\n };\n\n const [hovered, setHovered] = useState(false);\n\n const uploadButtonClassNames = cx(\n jsStyles.uploadButton(theme),\n sizeClassName,\n focusedByTab && jsStyles.uploadButtonFocus(theme),\n disabled && jsStyles.disabled(theme),\n !disabled && hovered && jsStyles.hovered(theme),\n !!warning && jsStyles.warning(theme),\n !!error && jsStyles.error(theme),\n isDraggable && !disabled && jsStyles.dragOver(theme),\n );\n\n const canDrop = isWindowDraggable && !disabled;\n const uploadButtonWrapperClassNames = cx(canDrop && jsStyles.windowDragOver(theme));\n\n const uploadButtonIconClassNames = cx(jsStyles.icon(theme), sizeIconClass, disabled && jsStyles.iconDisabled(theme));\n\n const hasOneFile = files.length === 1;\n const hasOneFileForSingle = isSingleMode && hasOneFile && !hideFiles;\n\n const contentClassNames = cx(jsStyles.content(), hasOneFileForSingle && jsStyles.contentWithFiles());\n\n const linkClassNames = cx(\n jsStyles.link(theme),\n !disabled && hovered && jsStyles.linkHovered(theme),\n disabled && jsStyles.linkDisabled(theme),\n );\n\n useEffect(() => {\n setIsLinkVisible(hasOneFileForSingle ? !isMinLengthReached : true);\n }, [isMinLengthReached, hasOneFileForSingle]);\n\n useEffect(() => {\n if (!files || !files.length || !inputRef.current) {\n return;\n }\n\n const dataTransfer = new DataTransfer();\n files.forEach((file) => dataTransfer.items.add(file.originalFile));\n inputRef.current.files = dataTransfer.files;\n }, []);\n\n const rootNodeRef = useRef(null);\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.btnIconSizeSmall),\n medium: parseInt(theme.btnIconSizeMedium),\n large: parseInt(theme.btnIconSizeLarge),\n };\n const icon = <UploadIcon size={iconSizes[size]} />;\n\n return (\n <CommonWrapper {...props}>\n <div\n data-tid={FileUploaderDataTids.root}\n className={jsStyles.root(theme)}\n style={useMemoObject({ width })}\n ref={rootNodeRef}\n >\n {!hideFiles && !isSingleMode && !!files.length && (\n <FileUploaderFileList renderFile={renderFile} size={size} onRemove={handleRemoveFile} />\n )}\n <div className={uploadButtonWrapperClassNames}>\n <label\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n ref={labelRef}\n className={uploadButtonClassNames}\n >\n <div\n data-tid={FileUploaderDataTids.content}\n className={cx(contentClassNames, { [contentInnerClass]: !files.length || !isSingleMode })}\n >\n {isLinkVisible && (\n <span data-tid={FileUploaderDataTids.link} className={linkClassNames}>\n {hasOneFileForSingle ? locale.choosedFile : locale.chooseFile}\n </span>\n )}\n {isLinkVisible && String.fromCharCode(0xa0) /* &nbsp; */}\n <div\n className={cx(\n globalClasses.afterLinkText,\n hasOneFileForSingle ? jsStyles.afterLinkText_HasFiles(theme) : jsStyles.afterLinkText(theme),\n )}\n >\n {hasOneFileForSingle ? (\n <div ref={fileDivRef} className={jsStyles.singleFile()}>\n {renderFile(files[0], <FileUploaderFile file={files[0]} size={size} onRemove={handleRemoveFile} />)}\n </div>\n ) : (\n <>\n {locale.orDragHere}&nbsp;\n <div className={uploadButtonIconClassNames}>{icon}</div>\n </>\n )}\n </div>\n </div>\n <FocusControlWrapper onBlurWhenDisabled={() => setFocusedByTab(false)}>\n <input\n {...inputProps}\n data-tid={FileUploaderDataTids.input}\n ref={inputRef}\n tabIndex={disabled ? -1 : 0}\n type=\"file\"\n disabled={disabled}\n multiple={multiple}\n className={jsStyles.visuallyHidden()}\n onClick={stopPropagation}\n onChange={handleInputChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </FocusControlWrapper>\n </label>\n </div>\n </div>\n </CommonWrapper>\n );\n});\n\nexport interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {}\n\n/**\n * `FileUploader` — контрол для выбора пользователем файла на компьютере и отображения статуса его отправки на сервер.\n *\n * Можно использовать для синхронной отправки данных, например, в форме. Или же можно использовать в асинхронном режиме.\n */\nexport const FileUploader = withFileUploaderControlProvider<FileUploaderProps, FileUploaderRef>(\n React.memo(_FileUploader),\n);\nFileUploader.displayName = 'FileUploader';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_globalObject","_fileUtils","_Emotion","_useMemoObject","_FileUploaderControlContext","_useControlLocale","_useUpload","_useDrop3","_ThemeContext","_withFileUploaderControlProvider","_keyListener","_FileUploaderFile","_FileUploaderFileList","_CommonWrapper","_FileUploaderFileValidationResult","_useFileUploaderSize","_forwardRefAndName","_FocusControlWrapper","_UploadIcon","_FileUploader2","_excluded","stopPropagation","e","FileUploaderDataTids","exports","root","content","link","input","defaultRenderFile","file","fileNode","_FileUploader","forwardRefAndName","props","ref","_cx","theme","useContext","ThemeContext","initialFiles","disabled","error","warning","_props$multiple","multiple","_props$width","width","fileUploaderWidth","_props$hideFiles","hideFiles","onBlur","onFocus","onChange","request","validateBeforeUpload","onRequestSuccess","onRequestError","_props$size","size","_props$renderFile","renderFile","inputProps","_objectWithoutPropertiesLoose2","default","_useContext","FileUploaderControlContext","files","setFiles","removeFile","reset","setFileValidationResult","isMinLengthReached","locale","useControlLocale","inputRef","useRef","fileDivRef","isAsync","isSingleMode","_useState","useState","isLinkVisible","setIsLinkVisible","upload","useUpload","tryValidateAndUpload","useCallback","forEach","_ref","_asyncToGenerator2","_regenerator","mark","_callee","validationMessage","wrap","_callee$","_context","prev","next","t0","sent","id","FileUploaderFileValidationResult","stop","_x","apply","arguments","sizeClassName","useFileUploaderSize","small","jsStyles","sizeSmall","medium","sizeMedium","large","sizeLarge","sizeIconClass","iconSmall","iconMedium","iconLarge","contentInnerClass","contentInnerSmall","contentInnerMedium","contentInnerLarge","handleChange","newFiles","length","filesArray","Array","from","attachedFiles","map","getAttachedFile","handleDrop","event","dataTransfer","_dataTransfer$files","_useDrop","useDrop","onDrop","isDraggable","labelRef","_useDrop2","isWindowDraggable","windowRef","focus","_inputRef$current","keyListener","isTabPressed","current","blur","_inputRef$current2","handleRemoveFile","fileId","DataTransfer","filter","f","items","add","originalFile","handleExternalFileDeletion","handleReset","useImperativeHandle","getRootNode","rootNodeRef","_useState2","focusedByTab","setFocusedByTab","handleInputChange","target","handleFocus","_getOwnerGlobalObject","_getOwnerGlobalObject2","getOwnerGlobalObject","requestAnimationFrame","call","handleBlur","_useState3","hovered","setHovered","uploadButtonClassNames","cx","uploadButton","uploadButtonFocus","dragOver","canDrop","uploadButtonWrapperClassNames","windowDragOver","uploadButtonIconClassNames","icon","iconDisabled","hasOneFile","hasOneFileForSingle","contentClassNames","contentWithFiles","linkClassNames","linkHovered","linkDisabled","useEffect","iconSizes","parseInt","btnIconSizeSmall","btnIconSizeMedium","btnIconSizeLarge","createElement","UploadIcon","CommonWrapper","className","style","useMemoObject","node","globalObject","isBrowser","document","FileUploaderFileList","onRemove","onMouseEnter","onMouseLeave","choosedFile","chooseFile","String","fromCharCode","globalClasses","afterLinkText","afterLinkText_HasFiles","singleFile","FileUploaderFile","Fragment","orDragHere","FocusControlWrapper","onBlurWhenDisabled","_extends2","tabIndex","type","visuallyHidden","onClick","FileUploader","withFileUploaderControlProvider","React","memo","displayName"],"sources":["FileUploader.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';\n\nimport { getOwnerGlobalObject, isBrowser } from '../../lib/globalObject';\nimport type { FileUploaderAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { getAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { useMemoObject } from '../../hooks/useMemoObject';\nimport { FileUploaderControlContext } from '../../internal/FileUploaderControl/FileUploaderControlContext';\nimport { useControlLocale } from '../../internal/FileUploaderControl/hooks/useControlLocale';\nimport { useUpload } from '../../internal/FileUploaderControl/hooks/useUpload';\nimport { useDrop } from '../../hooks/useDrop';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';\nimport { withFileUploaderControlProvider } from '../../internal/FileUploaderControl/withFileUploaderControlProvider';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { FileUploaderFile } from '../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile';\nimport { FileUploaderFileList } from '../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FileUploaderFileValidationResult } from '../../internal/FileUploaderControl/FileUploaderFileValidationResult';\nimport { useFileUploaderSize } from '../../internal/FileUploaderControl/hooks/useFileUploaderSize';\nimport type { SizeProp } from '../../lib/types/props';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { UploadIcon } from './UploadIcon';\nimport { globalClasses, jsStyles } from './FileUploader.styles';\n\nconst stopPropagation: React.ReactEventHandler = (e) => e.stopPropagation();\n\ntype FileUploaderOverriddenProps = 'size';\n\ninterface _FileUploaderProps\n extends CommonProps,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, FileUploaderOverriddenProps> {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n /** Начальное состояние загруженных файлов */\n initialFiles?: File[];\n /** Состояние ошибки всего контрола */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает длину компонента. */\n width?: React.CSSProperties['width'];\n\n /** Задаёт размер контрола. */\n size?: SizeProp;\n\n /** Скрывает отображение файлов. */\n hideFiles?: boolean;\n\n /** Задает функцию, через которую отправляются файлы. Используется для отслеживания статуса загрузки файла.\n * @param {FileUploaderAttachedFile} file - файл, статус загрузки которого необходимо отследить. */\n request?: (file: FileUploaderAttachedFile) => Promise<void>;\n\n /** Задает функцию, которая вызывается при удачной попытке отправки через request. */\n onRequestSuccess?: (fileId: string) => void;\n\n /** Задает функцию, которая вызывается при неудачной попытке отправки через request. */\n onRequestError?: (fileId: string) => void;\n\n /** Определяет функцию валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. Чтобы вывести валидацию ошибки, промис должен вернуть строку. * */\n validateBeforeUpload?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;\n\n /** Задает функцию, которая позволяет кастомизировать файлы. Через нее можно вешать кастомные валидации на каждый файл. */\n renderFile?: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n}\n\nexport interface FileUploaderRef extends InstanceWithRootNode {\n focus: () => void;\n blur: () => void;\n /** Сбрасывает выбранные файлы */\n reset: () => void;\n removeFile: (fileId: string) => void;\n}\n\nexport const FileUploaderDataTids = {\n root: 'FileUploader__root',\n content: 'FileUploader__content',\n link: 'FileUploader__link',\n input: 'FileUploader__input',\n} as const;\n\nconst defaultRenderFile = (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => fileNode;\n\nconst _FileUploader = forwardRefAndName<FileUploaderRef, _FileUploaderProps>('FileUploader', (props, ref) => {\n const theme = useContext(ThemeContext);\n\n const {\n initialFiles,\n disabled,\n error,\n warning,\n multiple = false,\n width = theme.fileUploaderWidth,\n hideFiles = false,\n onBlur,\n onFocus,\n onChange,\n request,\n validateBeforeUpload,\n onRequestSuccess,\n onRequestError,\n size = 'small',\n renderFile = defaultRenderFile,\n ...inputProps\n } = props;\n\n const { files, setFiles, removeFile, reset, setFileValidationResult, isMinLengthReached } =\n useContext(FileUploaderControlContext);\n\n const locale = useControlLocale();\n\n const inputRef = useRef<HTMLInputElement>(null);\n const fileDivRef = useRef<HTMLDivElement>(null);\n\n const isAsync = !!request;\n const isSingleMode = !multiple;\n\n const [isLinkVisible, setIsLinkVisible] = useState(true);\n const upload = useUpload(request, onRequestSuccess, onRequestError);\n\n const tryValidateAndUpload = useCallback(\n (files: FileUploaderAttachedFile[]) => {\n files.forEach(async (file) => {\n const validationMessage = validateBeforeUpload && (await validateBeforeUpload(file));\n\n if (!validationMessage) {\n isAsync && upload(file);\n } else {\n setFileValidationResult(file.id, FileUploaderFileValidationResult.error(validationMessage));\n }\n });\n },\n [validateBeforeUpload, isAsync, upload, setFileValidationResult],\n );\n\n const sizeClassName = useFileUploaderSize(size, {\n small: jsStyles.sizeSmall(theme),\n medium: jsStyles.sizeMedium(theme),\n large: jsStyles.sizeLarge(theme),\n });\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(theme),\n medium: jsStyles.iconMedium(theme),\n large: jsStyles.iconLarge(theme),\n });\n\n const contentInnerClass = useFileUploaderSize(size, {\n small: jsStyles.contentInnerSmall(theme),\n medium: jsStyles.contentInnerMedium(theme),\n large: jsStyles.contentInnerLarge(theme),\n });\n\n /** common part **/\n const handleChange = useCallback(\n (newFiles: FileList | null) => {\n if (!newFiles || !newFiles.length) {\n return;\n }\n\n let filesArray = Array.from(newFiles);\n\n if (isSingleMode) {\n filesArray = [filesArray[0]];\n }\n\n const attachedFiles = filesArray.map(getAttachedFile);\n\n if (isSingleMode && attachedFiles.length && files.length) {\n removeFile(files[0].id);\n }\n\n if (attachedFiles.length) {\n setFiles(attachedFiles);\n tryValidateAndUpload(attachedFiles);\n }\n },\n [tryValidateAndUpload, setFiles, isSingleMode, files, removeFile],\n );\n\n const handleDrop = useCallback(\n (event: DragEvent) => {\n if (disabled) {\n return;\n }\n\n const { dataTransfer } = event;\n if (dataTransfer) {\n if (dataTransfer.files?.length > 0) {\n handleChange(dataTransfer.files);\n }\n }\n },\n [handleChange, disabled],\n );\n\n const { isDraggable, ref: labelRef } = useDrop<HTMLLabelElement>({ onDrop: handleDrop });\n const { isDraggable: isWindowDraggable, ref: windowRef } = useDrop<Document>();\n\n const focus = useCallback(() => {\n keyListener.isTabPressed = true;\n inputRef.current?.focus();\n }, []);\n\n const blur = useCallback(() => {\n inputRef.current?.blur();\n }, []);\n\n const handleRemoveFile = useCallback(\n (fileId: string) => {\n const dataTransfer = new DataTransfer();\n files\n .filter((f) => f.id !== fileId)\n .forEach((file) => {\n dataTransfer.items.add(file.originalFile);\n });\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n },\n [files],\n );\n\n const handleExternalFileDeletion = useCallback(\n (fileId: string) => {\n removeFile(fileId);\n handleRemoveFile(fileId);\n },\n [handleRemoveFile, removeFile],\n );\n\n const handleReset = useCallback(() => {\n reset();\n const dataTransfer = new DataTransfer();\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n }, [reset, handleRemoveFile]);\n\n useImperativeHandle(\n ref,\n () => ({\n focus,\n blur,\n reset: handleReset,\n removeFile: handleExternalFileDeletion,\n getRootNode: () => rootNodeRef.current,\n }),\n [ref, blur, focus, handleReset, handleExternalFileDeletion],\n );\n\n const [focusedByTab, setFocusedByTab] = useState(false);\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n handleChange(event.target.files);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n getOwnerGlobalObject().requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n onFocus?.(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocusedByTab(false);\n if (!disabled) {\n onBlur?.(e);\n }\n };\n\n const [hovered, setHovered] = useState(false);\n\n const uploadButtonClassNames = cx(\n jsStyles.uploadButton(theme),\n sizeClassName,\n focusedByTab && jsStyles.uploadButtonFocus(theme),\n disabled && jsStyles.disabled(theme),\n !disabled && hovered && jsStyles.hovered(theme),\n !!warning && jsStyles.warning(theme),\n !!error && jsStyles.error(theme),\n isDraggable && !disabled && jsStyles.dragOver(theme),\n );\n\n const canDrop = isWindowDraggable && !disabled;\n const uploadButtonWrapperClassNames = cx(canDrop && jsStyles.windowDragOver(theme));\n\n const uploadButtonIconClassNames = cx(jsStyles.icon(theme), sizeIconClass, disabled && jsStyles.iconDisabled(theme));\n\n const hasOneFile = files.length === 1;\n const hasOneFileForSingle = isSingleMode && hasOneFile && !hideFiles;\n\n const contentClassNames = cx(jsStyles.content(), hasOneFileForSingle && jsStyles.contentWithFiles());\n\n const linkClassNames = cx(\n jsStyles.link(theme),\n !disabled && hovered && jsStyles.linkHovered(theme),\n disabled && jsStyles.linkDisabled(theme),\n );\n\n useEffect(() => {\n setIsLinkVisible(hasOneFileForSingle ? !isMinLengthReached : true);\n }, [isMinLengthReached, hasOneFileForSingle]);\n\n useEffect(() => {\n if (!files || !files.length || !inputRef.current) {\n return;\n }\n\n const dataTransfer = new DataTransfer();\n files.forEach((file) => dataTransfer.items.add(file.originalFile));\n inputRef.current.files = dataTransfer.files;\n }, []);\n\n const rootNodeRef: React.MutableRefObject<Nullable<HTMLDivElement>> = useRef(null);\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.btnIconSizeSmall),\n medium: parseInt(theme.btnIconSizeMedium),\n large: parseInt(theme.btnIconSizeLarge),\n };\n const icon = <UploadIcon size={iconSizes[size]} />;\n\n return (\n <CommonWrapper {...props}>\n <div\n data-tid={FileUploaderDataTids.root}\n className={jsStyles.root(theme)}\n style={useMemoObject({ width })}\n ref={(node) => {\n rootNodeRef.current = node;\n if (node) {\n const globalObject = getOwnerGlobalObject(node);\n if (isBrowser(globalObject)) {\n windowRef.current = globalObject.document;\n }\n }\n }}\n >\n {!hideFiles && !isSingleMode && !!files.length && (\n <FileUploaderFileList renderFile={renderFile} size={size} onRemove={handleRemoveFile} />\n )}\n <div className={uploadButtonWrapperClassNames}>\n <label\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n ref={labelRef}\n className={uploadButtonClassNames}\n >\n <div\n data-tid={FileUploaderDataTids.content}\n className={cx(contentClassNames, { [contentInnerClass]: !files.length || !isSingleMode })}\n >\n {isLinkVisible && (\n <span data-tid={FileUploaderDataTids.link} className={linkClassNames}>\n {hasOneFileForSingle ? locale.choosedFile : locale.chooseFile}\n </span>\n )}\n {isLinkVisible && String.fromCharCode(0xa0) /* &nbsp; */}\n <div\n className={cx(\n globalClasses.afterLinkText,\n hasOneFileForSingle ? jsStyles.afterLinkText_HasFiles(theme) : jsStyles.afterLinkText(theme),\n )}\n >\n {hasOneFileForSingle ? (\n <div ref={fileDivRef} className={jsStyles.singleFile()}>\n {renderFile(files[0], <FileUploaderFile file={files[0]} size={size} onRemove={handleRemoveFile} />)}\n </div>\n ) : (\n <>\n {locale.orDragHere}&nbsp;\n <div className={uploadButtonIconClassNames}>{icon}</div>\n </>\n )}\n </div>\n </div>\n <FocusControlWrapper onBlurWhenDisabled={() => setFocusedByTab(false)}>\n <input\n {...inputProps}\n data-tid={FileUploaderDataTids.input}\n ref={inputRef}\n tabIndex={disabled ? -1 : 0}\n type=\"file\"\n disabled={disabled}\n multiple={multiple}\n className={jsStyles.visuallyHidden()}\n onClick={stopPropagation}\n onChange={handleInputChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </FocusControlWrapper>\n </label>\n </div>\n </div>\n </CommonWrapper>\n );\n});\n\nexport interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {}\n\n/**\n * `FileUploader` — контрол для выбора пользователем файла на компьютере и отображения статуса его отправки на сервер.\n *\n * Можно использовать для синхронной отправки данных, например, в форме. Или же можно использовать в асинхронном режиме.\n */\nexport const FileUploader = withFileUploaderControlProvider<FileUploaderProps, FileUploaderRef>(\n React.memo(_FileUploader),\n);\nFileUploader.displayName = 'FileUploader';\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import type { InputProps } from '../Input';
5
4
  import { Input } from '../Input';
6
5
  import type { CurrencyInputProps } from '../CurrencyInput';
@@ -8,6 +7,7 @@ import { CurrencyInput } from '../CurrencyInput';
8
7
  import type { DefaultizedProps } from '../../lib/createPropsGetter';
9
8
  import type { Override } from '../../typings/utility-types';
10
9
  import type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
10
+ import type { TGetRootNode } from '../../lib/rootNode';
11
11
  export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Override<CurrencyInputProps, {
12
12
  /** Устанавливает авто-режим. */
13
13
  auto?: boolean;
@@ -18,7 +18,7 @@ export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, Common
18
18
  /** Задает функцию, вызывающуюся при изменении value. */
19
19
  onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];
20
20
  /** Задает значение инпута. */
21
- value?: React.ReactText;
21
+ value?: string | number;
22
22
  /** Задает ref инпута. */
23
23
  refInput?: (element: CurrencyInput | Input | null) => void;
24
24
  /** Убирает лишние нули после запятой. */
@@ -44,14 +44,11 @@ type DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;
44
44
  export declare class FxInput extends React.Component<FxInputProps> {
45
45
  static __KONTUR_REACT_UI__: string;
46
46
  static displayName: string;
47
- static propTypes: {
48
- auto: PropTypes.Requireable<boolean>;
49
- type: PropTypes.Requireable<string>;
50
- };
51
47
  static defaultProps: DefaultProps;
52
48
  private theme;
53
49
  private input;
54
50
  private getProps;
51
+ getRootNode: TGetRootNode;
55
52
  private setRootNode;
56
53
  render(): React.JSX.Element;
57
54
  renderMain: (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => React.JSX.Element;