@skbkontur/react-ui 0.0.0-b4292e4d5b → 0.0.0-b821a2f064

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 (887) hide show
  1. package/CHANGELOG.md +130 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +2 -1
  3. package/cjs/components/Autocomplete/Autocomplete.js +1 -0
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Button/Button.d.ts +7 -2
  6. package/cjs/components/Button/Button.js +21 -4
  7. package/cjs/components/Button/Button.js.map +1 -1
  8. package/cjs/components/Button/Button.md +68 -0
  9. package/cjs/components/Button/Button.mixins.js +1 -1
  10. package/cjs/components/Button/Button.mixins.js.map +1 -1
  11. package/cjs/components/Button/Button.styles.d.ts +2 -1
  12. package/cjs/components/Button/Button.styles.js +11 -3
  13. package/cjs/components/Button/Button.styles.js.map +1 -1
  14. package/cjs/components/Button/ButtonArrow.js +1 -1
  15. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  16. package/cjs/components/Button/ButtonIcon.d.ts +3 -2
  17. package/cjs/components/Button/ButtonIcon.js +2 -4
  18. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  19. package/cjs/components/Button/getInnerLinkTheme.js +1 -0
  20. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  21. package/cjs/components/Calendar/Calendar.js +7 -6
  22. package/cjs/components/Calendar/Calendar.js.map +1 -1
  23. package/cjs/components/Checkbox/Checkbox.d.ts +6 -2
  24. package/cjs/components/Checkbox/Checkbox.js +12 -7
  25. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  26. package/cjs/components/ComboBox/ComboBox.d.ts +2 -1
  27. package/cjs/components/ComboBox/ComboBox.js +1 -0
  28. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  29. package/cjs/components/CurrencyInput/CurrencyInput.js +2 -1
  30. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  31. package/cjs/components/DateInput/DateFragmentsView.js +2 -1
  32. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  33. package/cjs/components/DateInput/DateInput.d.ts +2 -1
  34. package/cjs/components/DateInput/DateInput.js +15 -6
  35. package/cjs/components/DateInput/DateInput.js.map +1 -1
  36. package/cjs/components/DateInput/helpers/SelectionHelpers.js +11 -10
  37. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  38. package/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  39. package/cjs/components/DatePicker/DatePicker.js +1 -0
  40. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  41. package/cjs/components/Dropdown/Dropdown.d.ts +3 -2
  42. package/cjs/components/Dropdown/Dropdown.js +1 -0
  43. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  44. package/cjs/components/Dropdown/getDropdownTheme.js +21 -22
  45. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  46. package/cjs/components/FileUploader/FileUploader.d.ts +6 -2
  47. package/cjs/components/FileUploader/FileUploader.js +9 -5
  48. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  49. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
  50. package/cjs/components/FileUploader/FileUploader.styles.js +10 -2
  51. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  52. package/cjs/components/FxInput/FxInput.js +1 -0
  53. package/cjs/components/FxInput/FxInput.js.map +1 -1
  54. package/cjs/components/FxInput/FxInputRestoreBtn.js +1 -0
  55. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  56. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  57. package/cjs/components/GlobalLoader/GlobalLoader.js +10 -15
  58. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  59. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  60. package/cjs/components/GlobalLoader/GlobalLoaderView.js +3 -5
  61. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  62. package/cjs/components/Hint/Hint.js +5 -4
  63. package/cjs/components/Hint/Hint.js.map +1 -1
  64. package/cjs/components/Input/Input.d.ts +6 -2
  65. package/cjs/components/Input/Input.js +16 -10
  66. package/cjs/components/Input/Input.js.map +1 -1
  67. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -1
  68. package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
  69. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  70. package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -7
  71. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  72. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +1 -0
  73. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  74. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  75. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
  76. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  77. package/cjs/components/Kebab/Kebab.js +2 -1
  78. package/cjs/components/Kebab/Kebab.js.map +1 -1
  79. package/cjs/components/Link/Link.d.ts +6 -1
  80. package/cjs/components/Link/Link.js +19 -8
  81. package/cjs/components/Link/Link.js.map +1 -1
  82. package/cjs/components/Link/Link.md +69 -0
  83. package/cjs/components/Link/Link.styles.d.ts +1 -0
  84. package/cjs/components/Link/Link.styles.js +30 -22
  85. package/cjs/components/Link/Link.styles.js.map +1 -1
  86. package/cjs/components/Loader/Loader.js +8 -7
  87. package/cjs/components/Loader/Loader.js.map +1 -1
  88. package/cjs/components/MenuFooter/MenuFooter.d.ts +6 -2
  89. package/cjs/components/MenuFooter/MenuFooter.js +4 -0
  90. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  91. package/cjs/components/MenuHeader/MenuHeader.d.ts +6 -2
  92. package/cjs/components/MenuHeader/MenuHeader.js +4 -0
  93. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  94. package/cjs/components/MenuItem/MenuItem.d.ts +6 -2
  95. package/cjs/components/MenuItem/MenuItem.js +6 -1
  96. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  97. package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
  98. package/cjs/components/MiniModal/MiniModal.js +47 -0
  99. package/cjs/components/MiniModal/MiniModal.js.map +1 -0
  100. package/cjs/components/MiniModal/MiniModal.md +233 -0
  101. package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
  102. package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
  103. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
  104. package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
  105. package/cjs/components/MiniModal/MiniModalBody.js +24 -0
  106. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
  107. package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
  108. package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
  109. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
  110. package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
  111. package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
  112. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
  113. package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
  114. package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
  115. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
  116. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  117. package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
  118. package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
  119. package/cjs/components/MiniModal/index.d.ts +5 -0
  120. package/cjs/components/MiniModal/index.js +5 -0
  121. package/cjs/components/MiniModal/index.js.map +1 -0
  122. package/cjs/components/Modal/Modal.d.ts +6 -0
  123. package/cjs/components/Modal/Modal.js +15 -1
  124. package/cjs/components/Modal/Modal.js.map +1 -1
  125. package/cjs/components/Modal/Modal.styles.d.ts +5 -0
  126. package/cjs/components/Modal/Modal.styles.js +56 -39
  127. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  128. package/cjs/components/Modal/ModalClose.js +2 -1
  129. package/cjs/components/Modal/ModalClose.js.map +1 -1
  130. package/cjs/components/Modal/ModalHeader.js +1 -1
  131. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  132. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  133. package/cjs/components/Modal/ModalSeparator.js +5 -0
  134. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  135. package/cjs/components/Modal/getModalTheme.d.ts +2 -2
  136. package/cjs/components/Modal/getModalTheme.js +6 -2
  137. package/cjs/components/Modal/getModalTheme.js.map +1 -1
  138. package/cjs/components/Paging/NavigationHelper.js +2 -1
  139. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  140. package/cjs/components/Paging/Paging.js +16 -15
  141. package/cjs/components/Paging/Paging.js.map +1 -1
  142. package/cjs/components/Paging/Paging.styles.d.ts +0 -1
  143. package/cjs/components/Paging/Paging.styles.js +5 -10
  144. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  145. package/cjs/components/PasswordInput/PasswordInput.js +4 -2
  146. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  147. package/cjs/components/Radio/Radio.d.ts +6 -2
  148. package/cjs/components/Radio/Radio.js +6 -1
  149. package/cjs/components/Radio/Radio.js.map +1 -1
  150. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
  151. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  152. package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
  153. package/cjs/components/ScrollContainer/ScrollBar.js +14 -45
  154. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  155. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
  156. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  157. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +19 -3
  158. package/cjs/components/ScrollContainer/ScrollContainer.js +94 -20
  159. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  160. package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
  161. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  162. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
  163. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  164. package/cjs/components/Select/Select.d.ts +5 -3
  165. package/cjs/components/Select/Select.js +10 -7
  166. package/cjs/components/Select/Select.js.map +1 -1
  167. package/cjs/components/SidePage/SidePage.js +12 -3
  168. package/cjs/components/SidePage/SidePage.js.map +1 -1
  169. package/cjs/components/SidePage/SidePageCloseButton.js +2 -1
  170. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  171. package/cjs/components/SidePage/SidePageHeader.d.ts +1 -0
  172. package/cjs/components/SidePage/SidePageHeader.js +8 -6
  173. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  174. package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
  175. package/cjs/components/SingleToast/SingleToast.js +20 -0
  176. package/cjs/components/SingleToast/SingleToast.js.map +1 -0
  177. package/cjs/components/SingleToast/SingleToast.md +35 -0
  178. package/cjs/components/SingleToast/index.d.ts +1 -0
  179. package/cjs/components/SingleToast/index.js +1 -0
  180. package/cjs/components/SingleToast/index.js.map +1 -0
  181. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
  182. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  183. package/cjs/components/Sticky/Sticky.js +7 -7
  184. package/cjs/components/Sticky/Sticky.js.map +1 -1
  185. package/cjs/components/Switcher/Switcher.d.ts +7 -3
  186. package/cjs/components/Switcher/Switcher.js +4 -0
  187. package/cjs/components/Switcher/Switcher.js.map +1 -1
  188. package/cjs/components/Tabs/Indicator.js +2 -1
  189. package/cjs/components/Tabs/Indicator.js.map +1 -1
  190. package/cjs/components/Tabs/Tab.d.ts +16 -32
  191. package/cjs/components/Tabs/Tab.js +8 -25
  192. package/cjs/components/Tabs/Tab.js.map +1 -1
  193. package/cjs/components/Tabs/Tab.md +71 -0
  194. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  195. package/cjs/components/Tabs/Tabs.d.ts +13 -18
  196. package/cjs/components/Tabs/Tabs.js +4 -9
  197. package/cjs/components/Tabs/Tabs.js.map +1 -1
  198. package/cjs/components/Tabs/Tabs.md +7 -22
  199. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  200. package/cjs/components/Tabs/TabsContext.d.ts +3 -2
  201. package/cjs/components/Tabs/TabsContext.js +1 -0
  202. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  203. package/cjs/components/Tabs/helpers.d.ts +5 -5
  204. package/cjs/components/Tabs/helpers.js +3 -2
  205. package/cjs/components/Tabs/helpers.js.map +1 -1
  206. package/cjs/components/Textarea/Textarea.d.ts +6 -2
  207. package/cjs/components/Textarea/Textarea.js +23 -9
  208. package/cjs/components/Textarea/Textarea.js.map +1 -1
  209. package/cjs/components/Textarea/TextareaCounter.d.ts +4 -3
  210. package/cjs/components/Textarea/TextareaCounter.js +3 -1
  211. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  212. package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
  213. package/cjs/components/Textarea/TextareaHelpers.js +7 -2
  214. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  215. package/cjs/components/Toast/Toast.d.ts +10 -3
  216. package/cjs/components/Toast/Toast.js +26 -8
  217. package/cjs/components/Toast/Toast.js.map +1 -1
  218. package/cjs/components/Toast/Toast.md +0 -105
  219. package/cjs/components/Toast/ToastStatic.js +4 -3
  220. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  221. package/cjs/components/Toggle/Toggle.d.ts +6 -2
  222. package/cjs/components/Toggle/Toggle.js +4 -0
  223. package/cjs/components/Toggle/Toggle.js.map +1 -1
  224. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  225. package/cjs/components/TokenInput/TokenInput.js +42 -9
  226. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  227. package/cjs/components/Tooltip/Tooltip.js +5 -5
  228. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  229. package/cjs/hooks/useDrop.js +3 -2
  230. package/cjs/hooks/useDrop.js.map +1 -1
  231. package/cjs/index.d.ts +4 -0
  232. package/cjs/index.js +4 -0
  233. package/cjs/index.js.map +1 -1
  234. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +2 -1
  235. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  236. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +2 -1
  237. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +1 -0
  238. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  239. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +6 -9
  240. package/cjs/internal/CustomComboBox/ComboBoxView.js +16 -34
  241. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  242. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -2
  243. package/cjs/internal/CustomComboBox/CustomComboBox.js +13 -8
  244. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  245. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +6 -2
  246. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  247. package/cjs/internal/DateSelect/DateSelect.js +19 -16
  248. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  249. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  250. package/cjs/internal/DropdownContainer/DropdownContainer.js +13 -13
  251. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  252. package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
  253. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
  254. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -3
  255. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +4 -3
  256. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  257. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  258. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +1 -1
  259. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  260. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  261. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -1
  262. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  263. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  264. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -1
  265. package/cjs/internal/FocusTrap/FocusTrap.js +6 -5
  266. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  267. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +19 -20
  268. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  269. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +2 -1
  270. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  271. package/cjs/internal/InputLikeText/InputLikeText.js +16 -16
  272. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  273. package/cjs/internal/InternalMenu/InternalMenu.js +7 -7
  274. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  275. package/cjs/internal/Menu/Menu.js +6 -6
  276. package/cjs/internal/Menu/Menu.js.map +1 -1
  277. package/cjs/internal/MenuMessage/MenuMessage.d.ts +3 -3
  278. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  279. package/cjs/internal/Popup/Popup.js +11 -8
  280. package/cjs/internal/Popup/Popup.js.map +1 -1
  281. package/cjs/internal/Popup/PopupHelper.js +9 -7
  282. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  283. package/cjs/internal/PopupMenu/PopupMenu.js +3 -2
  284. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  285. package/cjs/internal/RenderContainer/RenderContainer.js +12 -12
  286. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  287. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
  288. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  289. package/cjs/internal/RenderLayer/RenderLayer.js +3 -2
  290. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  291. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  292. package/cjs/internal/ThemePlayground/SizesGroup.js +1 -0
  293. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  294. package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
  295. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  296. package/cjs/internal/ThemePlayground/constants.js +1 -0
  297. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  298. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  299. package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
  300. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  301. package/cjs/internal/ZIndex/ZIndex.js +2 -2
  302. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  303. package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
  304. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  305. package/cjs/internal/icons/16px/index.d.ts +19 -19
  306. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  307. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  308. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  309. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  310. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  311. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  312. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  313. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  314. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  315. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  316. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  317. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  318. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  319. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  320. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  321. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  322. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  323. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  324. package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
  325. package/cjs/internal/icons2022/BaseIcon.js +3 -7
  326. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  327. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  328. package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
  329. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
  330. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  331. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  332. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  333. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  334. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  335. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  336. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  337. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  338. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  339. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  340. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  341. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  342. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  343. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  344. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  345. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  346. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
  347. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
  348. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  349. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  350. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  351. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  352. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  353. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  354. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  355. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  356. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  357. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  358. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  359. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  360. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  361. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  362. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  363. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  364. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  365. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  366. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  367. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  368. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  369. package/cjs/internal/themes/DefaultTheme.d.ts +46 -2
  370. package/cjs/internal/themes/DefaultTheme.js +102 -6
  371. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  372. package/cjs/internal/themes/Theme2022.d.ts +4 -3
  373. package/cjs/internal/themes/Theme2022.js +14 -6
  374. package/cjs/internal/themes/Theme2022.js.map +1 -1
  375. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -4
  376. package/cjs/internal/themes/Theme2022Dark.js +10 -5
  377. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  378. package/cjs/lib/LayoutEvents.js +5 -4
  379. package/cjs/lib/LayoutEvents.js.map +1 -1
  380. package/cjs/lib/ModalStack.js +2 -3
  381. package/cjs/lib/ModalStack.js.map +1 -1
  382. package/cjs/lib/SSRSafe.d.ts +1 -6
  383. package/cjs/lib/SSRSafe.js +4 -48
  384. package/cjs/lib/SSRSafe.js.map +1 -1
  385. package/cjs/lib/Upgrades.d.ts +1 -0
  386. package/cjs/lib/Upgrades.js +3 -1
  387. package/cjs/lib/Upgrades.js.map +1 -1
  388. package/cjs/lib/animation/index.js +6 -4
  389. package/cjs/lib/animation/index.js.map +1 -1
  390. package/cjs/lib/chars.d.ts +1 -1
  391. package/cjs/lib/chars.js +2 -2
  392. package/cjs/lib/chars.js.map +1 -1
  393. package/cjs/lib/client.d.ts +1 -7
  394. package/cjs/lib/client.js +6 -6
  395. package/cjs/lib/client.js.map +1 -1
  396. package/cjs/lib/dom/getScrollWidth.js +4 -4
  397. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  398. package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
  399. package/cjs/lib/dom/tabbableHelpers.js +7 -2
  400. package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
  401. package/cjs/lib/events/MouseDrag.js +11 -11
  402. package/cjs/lib/events/MouseDrag.js.map +1 -1
  403. package/cjs/lib/events/fixClickFocusIE.js +5 -3
  404. package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
  405. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
  406. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  407. package/cjs/lib/events/keyListener.js +9 -11
  408. package/cjs/lib/events/keyListener.js.map +1 -1
  409. package/cjs/lib/events/keyboard/identifiers.js +4 -2
  410. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  411. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +50 -0
  412. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +4 -0
  413. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
  414. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
  415. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  416. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +12 -0
  417. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  418. package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
  419. package/cjs/lib/featureFlagsContext/index.js +3 -0
  420. package/cjs/lib/featureFlagsContext/index.js.map +1 -0
  421. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  422. package/cjs/lib/forwardRefAndName.js +4 -1
  423. package/cjs/lib/forwardRefAndName.js.map +1 -1
  424. package/cjs/lib/listenFocusOutside.js +14 -15
  425. package/cjs/lib/listenFocusOutside.js.map +1 -1
  426. package/cjs/lib/needsPolyfillPlaceholder.js +5 -3
  427. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  428. package/cjs/lib/net/fetch.js +24 -18
  429. package/cjs/lib/net/fetch.js.map +1 -1
  430. package/cjs/lib/rootNode/getRootNode.js +5 -6
  431. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  432. package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
  433. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  434. package/cjs/lib/theming/Emotion.js +4 -2
  435. package/cjs/lib/theming/Emotion.js.map +1 -1
  436. package/cjs/lib/types/props.d.ts +1 -0
  437. package/cjs/lib/types/props.js +1 -0
  438. package/cjs/lib/types/props.js.map +1 -0
  439. package/cjs/lib/utils.js +4 -5
  440. package/cjs/lib/utils.js.map +1 -1
  441. package/cjs/typings/global.d.ts +3 -4
  442. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  443. package/components/Autocomplete/Autocomplete.d.ts +2 -1
  444. package/components/Button/Button/Button.js +11 -3
  445. package/components/Button/Button/Button.js.map +1 -1
  446. package/components/Button/Button.d.ts +7 -2
  447. package/components/Button/Button.md +68 -0
  448. package/components/Button/Button.mixins/Button.mixins.js +1 -1
  449. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  450. package/components/Button/Button.styles/Button.styles.js +6 -2
  451. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  452. package/components/Button/Button.styles.d.ts +2 -1
  453. package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
  454. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  455. package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
  456. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  457. package/components/Button/ButtonIcon.d.ts +3 -2
  458. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +1 -0
  459. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  460. package/components/Calendar/Calendar/Calendar.js +7 -6
  461. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  462. package/components/Checkbox/Checkbox/Checkbox.js +14 -5
  463. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  464. package/components/Checkbox/Checkbox.d.ts +6 -2
  465. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  466. package/components/ComboBox/ComboBox.d.ts +2 -1
  467. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +2 -1
  468. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  469. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -1
  470. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  471. package/components/DateInput/DateInput/DateInput.js +23 -9
  472. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  473. package/components/DateInput/DateInput.d.ts +2 -1
  474. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -10
  475. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  476. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  477. package/components/DatePicker/DatePicker.d.ts +2 -1
  478. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  479. package/components/Dropdown/Dropdown.d.ts +3 -2
  480. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +21 -22
  481. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  482. package/components/FileUploader/FileUploader/FileUploader.js +9 -5
  483. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  484. package/components/FileUploader/FileUploader.d.ts +6 -2
  485. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +2 -2
  486. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  487. package/components/FileUploader/FileUploader.styles.d.ts +1 -1
  488. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  489. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  490. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +25 -29
  491. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  492. package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  493. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +2 -3
  494. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  495. package/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  496. package/components/Hint/Hint/Hint.js +5 -5
  497. package/components/Hint/Hint/Hint.js.map +1 -1
  498. package/components/Input/Input/Input.js +18 -11
  499. package/components/Input/Input/Input.js.map +1 -1
  500. package/components/Input/Input.d.ts +6 -2
  501. package/components/Input/InputLayout/InputLayout.d.ts +1 -1
  502. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
  503. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  504. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +1 -2
  505. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  506. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  507. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -1
  508. package/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  509. package/components/Kebab/Kebab/Kebab.js +2 -1
  510. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  511. package/components/Kebab/Kebab.d.ts +2 -1
  512. package/components/Link/Link/Link.js +8 -6
  513. package/components/Link/Link/Link.js.map +1 -1
  514. package/components/Link/Link.d.ts +6 -1
  515. package/components/Link/Link.md +69 -0
  516. package/components/Link/Link.styles/Link.styles.js +25 -22
  517. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  518. package/components/Link/Link.styles.d.ts +1 -0
  519. package/components/Loader/Loader/Loader.js +9 -6
  520. package/components/Loader/Loader/Loader.js.map +1 -1
  521. package/components/MenuFooter/MenuFooter/MenuFooter.js +4 -0
  522. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  523. package/components/MenuFooter/MenuFooter.d.ts +6 -2
  524. package/components/MenuHeader/MenuHeader/MenuHeader.js +4 -0
  525. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  526. package/components/MenuHeader/MenuHeader.d.ts +6 -2
  527. package/components/MenuItem/MenuItem/MenuItem.js +7 -2
  528. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  529. package/components/MenuItem/MenuItem.d.ts +6 -2
  530. package/components/MiniModal/MiniModal/MiniModal.js +38 -0
  531. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
  532. package/components/MiniModal/MiniModal/package.json +6 -0
  533. package/components/MiniModal/MiniModal.d.ts +18 -0
  534. package/components/MiniModal/MiniModal.md +233 -0
  535. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
  536. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
  537. package/components/MiniModal/MiniModal.styles/package.json +6 -0
  538. package/components/MiniModal/MiniModal.styles.d.ts +14 -0
  539. package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
  540. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
  541. package/components/MiniModal/MiniModalBody/package.json +6 -0
  542. package/components/MiniModal/MiniModalBody.d.ts +7 -0
  543. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
  544. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
  545. package/components/MiniModal/MiniModalFooter/package.json +6 -0
  546. package/components/MiniModal/MiniModalFooter.d.ts +18 -0
  547. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
  548. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
  549. package/components/MiniModal/MiniModalHeader/package.json +6 -0
  550. package/components/MiniModal/MiniModalHeader.d.ts +17 -0
  551. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
  552. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
  553. package/components/MiniModal/MiniModalIndent/package.json +6 -0
  554. package/components/MiniModal/MiniModalIndent.d.ts +6 -0
  555. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
  556. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
  557. package/components/MiniModal/getMiniModalTheme/package.json +6 -0
  558. package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  559. package/components/MiniModal/index/index.js +5 -0
  560. package/components/MiniModal/index/index.js.map +1 -0
  561. package/components/MiniModal/index/package.json +6 -0
  562. package/components/MiniModal/index.d.ts +5 -0
  563. package/components/MiniModal/package.json +6 -0
  564. package/components/Modal/Modal/Modal.js +18 -14
  565. package/components/Modal/Modal/Modal.js.map +1 -1
  566. package/components/Modal/Modal.d.ts +6 -0
  567. package/components/Modal/Modal.styles/Modal.styles.js +44 -37
  568. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  569. package/components/Modal/Modal.styles.d.ts +5 -0
  570. package/components/Modal/ModalClose/ModalClose.js +2 -1
  571. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  572. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  573. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  574. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
  575. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  576. package/components/Modal/ModalSeparator.d.ts +5 -0
  577. package/components/Modal/getModalTheme/getModalTheme.js +8 -3
  578. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
  579. package/components/Modal/getModalTheme.d.ts +2 -2
  580. package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
  581. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  582. package/components/Paging/Paging/Paging.js +16 -11
  583. package/components/Paging/Paging/Paging.js.map +1 -1
  584. package/components/Paging/Paging.styles/Paging.styles.js +3 -6
  585. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  586. package/components/Paging/Paging.styles.d.ts +0 -1
  587. package/components/PasswordInput/PasswordInput/PasswordInput.js +4 -2
  588. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  589. package/components/Radio/Radio/Radio.js +6 -1
  590. package/components/Radio/Radio/Radio.js.map +1 -1
  591. package/components/Radio/Radio.d.ts +6 -2
  592. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
  593. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  594. package/components/ScrollContainer/ScrollBar/ScrollBar.js +16 -50
  595. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  596. package/components/ScrollContainer/ScrollBar.d.ts +4 -7
  597. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +98 -22
  598. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  599. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
  600. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  601. package/components/ScrollContainer/ScrollContainer.d.ts +19 -3
  602. package/components/ScrollContainer/ScrollContainer.md +29 -2
  603. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
  604. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  605. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  606. package/components/Select/Select/Select.js +9 -8
  607. package/components/Select/Select/Select.js.map +1 -1
  608. package/components/Select/Select.d.ts +5 -3
  609. package/components/SidePage/SidePage/SidePage.js +8 -7
  610. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  611. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +2 -1
  612. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  613. package/components/SidePage/SidePageHeader/SidePageHeader.js +6 -4
  614. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  615. package/components/SidePage/SidePageHeader.d.ts +1 -0
  616. package/components/SingleToast/SingleToast/SingleToast.js +53 -0
  617. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
  618. package/components/SingleToast/SingleToast/package.json +6 -0
  619. package/components/SingleToast/SingleToast.d.ts +11 -0
  620. package/components/SingleToast/SingleToast.md +35 -0
  621. package/components/SingleToast/index/index.js +1 -0
  622. package/components/SingleToast/index/index.js.map +1 -0
  623. package/components/SingleToast/index/package.json +6 -0
  624. package/components/SingleToast/index.d.ts +1 -0
  625. package/components/SingleToast/package.json +6 -0
  626. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
  627. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  628. package/components/Sticky/Sticky/Sticky.js +10 -6
  629. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  630. package/components/Switcher/Switcher/Switcher.js +4 -0
  631. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  632. package/components/Switcher/Switcher.d.ts +7 -3
  633. package/components/Tabs/Indicator/Indicator.js +2 -1
  634. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  635. package/components/Tabs/Tab/Tab.js +7 -14
  636. package/components/Tabs/Tab/Tab.js.map +1 -1
  637. package/components/Tabs/Tab.d.ts +16 -32
  638. package/components/Tabs/Tab.md +71 -0
  639. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  640. package/components/Tabs/Tabs/Tabs.js +3 -4
  641. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  642. package/components/Tabs/Tabs.d.ts +13 -18
  643. package/components/Tabs/Tabs.md +7 -22
  644. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  645. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  646. package/components/Tabs/TabsContext.d.ts +3 -2
  647. package/components/Tabs/helpers/helpers.js +3 -0
  648. package/components/Tabs/helpers/helpers.js.map +1 -1
  649. package/components/Tabs/helpers.d.ts +5 -5
  650. package/components/Textarea/Textarea/Textarea.js +25 -13
  651. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  652. package/components/Textarea/Textarea.d.ts +6 -2
  653. package/components/Textarea/TextareaCounter/TextareaCounter.js +2 -3
  654. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  655. package/components/Textarea/TextareaCounter.d.ts +4 -3
  656. package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
  657. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  658. package/components/Textarea/TextareaHelpers.d.ts +1 -1
  659. package/components/Toast/Toast/Toast.js +16 -7
  660. package/components/Toast/Toast/Toast.js.map +1 -1
  661. package/components/Toast/Toast.d.ts +10 -3
  662. package/components/Toast/Toast.md +0 -105
  663. package/components/Toast/ToastStatic/ToastStatic.js +4 -4
  664. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  665. package/components/Toggle/Toggle/Toggle.js +4 -0
  666. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  667. package/components/Toggle/Toggle.d.ts +6 -2
  668. package/components/TokenInput/TokenInput/TokenInput.js +51 -11
  669. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  670. package/components/TokenInput/TokenInput.d.ts +2 -0
  671. package/components/Tooltip/Tooltip/Tooltip.js +5 -5
  672. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  673. package/hooks/useDrop/useDrop.js +3 -2
  674. package/hooks/useDrop/useDrop.js.map +1 -1
  675. package/index.d.ts +4 -0
  676. package/index.js +4 -0
  677. package/index.js.map +1 -1
  678. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
  679. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  680. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  681. package/internal/CustomComboBox/ComboBoxMenu.d.ts +2 -1
  682. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +21 -32
  683. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  684. package/internal/CustomComboBox/ComboBoxView.d.ts +6 -9
  685. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +11 -6
  686. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  687. package/internal/CustomComboBox/CustomComboBox.d.ts +4 -2
  688. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +7 -2
  689. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  690. package/internal/DateSelect/DateSelect/DateSelect.js +19 -20
  691. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  692. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +18 -17
  693. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  694. package/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  695. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
  696. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
  697. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +3 -2
  698. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  699. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -3
  700. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  701. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  702. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  703. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  704. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -1
  705. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  706. package/internal/FocusTrap/FocusTrap/FocusTrap.js +8 -3
  707. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  708. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -26
  709. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  710. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +2 -1
  711. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  712. package/internal/InputLikeText/InputLikeText/InputLikeText.js +28 -19
  713. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  714. package/internal/InternalMenu/InternalMenu/InternalMenu.js +9 -9
  715. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  716. package/internal/Menu/Menu/Menu.js +8 -8
  717. package/internal/Menu/Menu/Menu.js.map +1 -1
  718. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  719. package/internal/MenuMessage/MenuMessage.d.ts +3 -3
  720. package/internal/Popup/Popup/Popup.js +11 -13
  721. package/internal/Popup/Popup/Popup.js.map +1 -1
  722. package/internal/Popup/PopupHelper/PopupHelper.js +8 -5
  723. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  724. package/internal/PopupMenu/PopupMenu/PopupMenu.js +3 -2
  725. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  726. package/internal/RenderContainer/RenderContainer/RenderContainer.js +17 -10
  727. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  728. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  729. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  730. package/internal/RenderLayer/RenderLayer/RenderLayer.js +10 -5
  731. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  732. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  733. package/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  734. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  735. package/internal/ThemePlayground/constants/constants.js +3 -0
  736. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  737. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
  738. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  739. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  740. package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
  741. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  742. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
  743. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  744. package/internal/icons/16px/index.d.ts +19 -19
  745. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  746. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  747. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  748. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  749. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  750. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  751. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  752. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  753. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  754. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  755. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  756. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  757. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  758. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  759. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  760. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  761. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  762. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  763. package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
  764. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  765. package/internal/icons2022/BaseIcon.d.ts +1 -1
  766. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
  767. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
  768. package/internal/icons2022/BaseIcon.styles/package.json +6 -0
  769. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  770. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  771. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  772. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  773. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  774. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  775. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  776. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  777. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  778. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  779. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  780. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  781. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  782. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  783. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  784. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  785. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
  786. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
  787. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
  788. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  789. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  790. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  791. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  792. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  793. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  794. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  795. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  796. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  797. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  798. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  799. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  800. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  801. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  802. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  803. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  804. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  805. package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  806. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  807. package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  808. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  809. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  810. package/internal/themes/DefaultTheme/DefaultTheme.js +146 -6
  811. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  812. package/internal/themes/DefaultTheme.d.ts +46 -2
  813. package/internal/themes/Theme2022/Theme2022.js +18 -4
  814. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  815. package/internal/themes/Theme2022.d.ts +4 -3
  816. package/internal/themes/Theme2022Dark/Theme2022Dark.js +14 -4
  817. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  818. package/internal/themes/Theme2022Dark.d.ts +5 -4
  819. package/lib/LayoutEvents/LayoutEvents.js +5 -4
  820. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  821. package/lib/ModalStack/ModalStack.js +2 -2
  822. package/lib/ModalStack/ModalStack.js.map +1 -1
  823. package/lib/SSRSafe/SSRSafe.js +3 -35
  824. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  825. package/lib/SSRSafe.d.ts +1 -6
  826. package/lib/Upgrades/Upgrades.js +3 -1
  827. package/lib/Upgrades/Upgrades.js.map +1 -1
  828. package/lib/Upgrades.d.ts +1 -0
  829. package/lib/animation/index/index.js +6 -3
  830. package/lib/animation/index/index.js.map +1 -1
  831. package/lib/chars/chars.js +1 -1
  832. package/lib/chars/chars.js.map +1 -1
  833. package/lib/chars.d.ts +1 -1
  834. package/lib/client/client.js +7 -6
  835. package/lib/client/client.js.map +1 -1
  836. package/lib/client.d.ts +1 -7
  837. package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
  838. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  839. package/lib/dom/tabbableHelpers/tabbableHelpers.js +3 -2
  840. package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
  841. package/lib/dom/tabbableHelpers.d.ts +2 -1
  842. package/lib/events/MouseDrag/MouseDrag.js +15 -11
  843. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  844. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +3 -2
  845. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
  846. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
  847. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  848. package/lib/events/keyListener/keyListener.js +9 -12
  849. package/lib/events/keyListener/keyListener.js.map +1 -1
  850. package/lib/events/keyboard/identifiers/identifiers.js +2 -1
  851. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  852. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +50 -0
  853. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
  854. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
  855. package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
  856. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +4 -0
  857. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -0
  858. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  859. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
  860. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  861. package/lib/featureFlagsContext/index/index.js +2 -0
  862. package/lib/featureFlagsContext/index/index.js.map +1 -0
  863. package/lib/featureFlagsContext/index/package.json +6 -0
  864. package/lib/featureFlagsContext/index.d.ts +2 -0
  865. package/lib/featureFlagsContext/package.json +6 -0
  866. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  867. package/lib/forwardRefAndName.d.ts +1 -1
  868. package/lib/listenFocusOutside/listenFocusOutside.js +18 -10
  869. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  870. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -3
  871. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  872. package/lib/net/fetch/fetch.js +29 -21
  873. package/lib/net/fetch/fetch.js.map +1 -1
  874. package/lib/rootNode/getRootNode/getRootNode.js +5 -6
  875. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  876. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
  877. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  878. package/lib/theming/Emotion/Emotion.js +6 -1
  879. package/lib/theming/Emotion/Emotion.js.map +1 -1
  880. package/lib/types/props/package.json +6 -0
  881. package/lib/types/props/props.js +1 -0
  882. package/lib/types/props/props.js.map +1 -0
  883. package/lib/types/props.d.ts +1 -0
  884. package/lib/utils/utils.js +4 -5
  885. package/lib/utils/utils.js.map +1 -1
  886. package/package.json +4 -4
  887. package/typings/global.d.ts +3 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["Loader.tsx"],"names":["types","LoaderDataTids","veil","spinner","Loader","rootNode","props","getProps","defaultProps","childrenRef","element","childrenContainerNode","spinnerRef","spinnerContainerNode","checkSpinnerPosition","containerTop","top","containerRight","right","containerBottom","bottom","containerLeft","left","containerHeight","height","containerWidth","width","windowHeight","window","innerHeight","windowWidth","innerWidth","setState","isStickySpinner","spinnerStyle","Math","abs","spinnerHeight","spinnerNode","disableChildrenFocus","childrenObserver","makeObservable","tabbableElements","forEach","el","hasAttribute","setAttribute","tabIndex","toString","enableChildrenFocus","makeUnobservable","Array","from","document","querySelectorAll","getAttribute","removeAttribute","target","config","childList","subtree","observer","MutationObserver","observe","disconnect","state","isSpinnerVisible","isLoaderActive","spinnerTask","TaskWithDelayAndMinimalDuration","delayBeforeTaskStart","delayBeforeSpinnerShow","durationOfTask","minimalDelayBeforeSpinnerHide","taskStartCallback","taskStopCallback","componentDidMount","active","start","layoutEvents","LayoutEvents","addListener","componentDidUpdate","prevProps","prevState","component","update","stop","componentWillUnmount","remove","clearTask","getDerivedStateFromProps","render","theme","renderMain","caption","type","setRootNode","styles","loader","children","renderSpinner","spinnerContainer","spinnerContainerSticky","spinnerComponentWrapper","undefined","React","Component","__KONTUR_REACT_UI__","isTestEnv","propTypes","PropTypes","bool","Spinner","node","className","string","oneOf","number"],"mappings":"6VAAA;AACA;AACA;;;AAGA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,yC;;AAEA,IAAMA,KAAK,GAAG,CAAC,MAAD,EAAS,QAAT,EAAmB,KAAnB,CAAd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CO,IAAMC,cAAc,GAAG;AAC5BC,EAAAA,IAAI,EAAE,cADsB;AAE5BC,EAAAA,OAAO,EAAE,iBAFmB,EAAvB,C;;;;;;;AASP;AACA;AACA;AACA;AACA,G;;AAEaC,M,OADZC,kB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DC,kBAAYC,KAAZ,EAAgC;AAC9B,wCAAMA,KAAN,UAD8B,MAjDxBC,QAiDwB,GAjDb,0CAAkBH,MAAM,CAACI,YAAzB,CAiDa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkIxBC,IAAAA,WAlIwB,GAkIV,UAACC,OAAD,EAAoC;AACxD,YAAKC,qBAAL,GAA6BD,OAA7B;AACD,KApI+B;;AAsIxBE,IAAAA,UAtIwB,GAsIX,UAACF,OAAD,EAAoC;AACvD,YAAKG,oBAAL,GAA4BH,OAA5B;AACD,KAxI+B;;;;;;;;;;;;;;;;;;;;;AA6JxBI,IAAAA,oBA7JwB,GA6JD,YAAM;AACnC,UAAI,CAAC,MAAKD,oBAAV,EAAgC;AAC9B;AACD;;AAED;;;;;;;AAOI,mCAAW,MAAKA,oBAAhB,CAPJ,CACOE,YADP,eACEC,GADF,CAESC,cAFT,eAEEC,KAFF,CAGUC,eAHV,eAGEC,MAHF,CAIQC,aAJR,eAIEC,IAJF,CAKUC,eALV,eAKEC,MALF,CAMSC,cANT,eAMEC,KANF;;AASA,UAAMC,YAAY,GAAGC,MAAM,CAACC,WAA5B;AACA,UAAMC,WAAW,GAAGF,MAAM,CAACG,UAA3B;;AAEA;AACA;AACA,UAAIJ,YAAY,IAAIJ,eAAhB,IAAmCO,WAAW,IAAIL,cAAtD,EAAsE;AACpE,cAAKO,QAAL,CAAc;AACZC,UAAAA,eAAe,EAAE,KADL;AAEZC,UAAAA,YAAY,EAAE,EAFF,EAAd;;AAIA;AACD;;AAED,UAAMA,YAKL;;;;;AAAG;AACFlB,QAAAA,GAAG,EAAE,EADH;AAEFE,QAAAA,KAAK,EAAE,CAFL;AAGFE,QAAAA,MAAM,EAAE,EAHN;AAIFE,QAAAA,IAAI,EAAE,CAJJ,EALJ;;;AAYA;AACA;AACA;AACA,UAAIP,YAAY,GAAG,CAAnB,EAAsB;AACpBmB,QAAAA,YAAY,CAAClB,GAAb,GAAmBD,YAAY,GAAG,EAAlC;AACD;;AAED;AACA;AACA,UAAII,eAAe,GAAGQ,YAAtB,EAAoC;AAClCO,QAAAA,YAAY,CAACd,MAAb,GAAsBe,IAAI,CAACC,GAAL,CAAST,YAAY,GAAGR,eAAxB,IAA2C,EAAjE;AACD;;AAED;AACA;;AAEA,UAAMkB,aAAa,GAAG,6BAAW,MAAKC,WAAhB,EAA6Bd,MAAnD;;AAEA,UAAIa,aAAa,IAAIH,YAAY,CAACd,MAAb,IAAuBO,YAAY,GAAGU,aAA3D,EAA0E;AACxE,eAAOH,YAAY,CAAClB,GAApB;AACD;;AAED;AACA;AACA;AACA,UAAIK,aAAa,GAAG,CAApB,EAAuB;AACrBa,QAAAA,YAAY,CAACZ,IAAb,GAAoBD,aAApB;AACD;;AAED;AACA;AACA,UAAIJ,cAAc,GAAGa,WAArB,EAAkC;AAChCI,QAAAA,YAAY,CAAChB,KAAb,GAAqBY,WAAW,GAAGb,cAAnC;AACD;;AAED,YAAKe,QAAL,CAAc;AACZC,QAAAA,eAAe,EAAE,IADL;AAEZC,QAAAA,YAAY,EAAZA,YAFY,EAAd;;AAID,KA3O+B;;AA6OxBK,IAAAA,oBA7OwB,GA6OD,YAAM;AACnC,UAAI,CAAC,MAAKC,gBAAV,EAA4B;AAC1B,cAAKC,cAAL;AACD;AACD,UAAMC,gBAAgB,GAAG,0CAAoB,MAAK/B,qBAAzB,CAAzB;AACA+B,MAAAA,gBAAgB,CAACC,OAAjB,CAAyB,UAACC,EAAD,EAAQ;AAC/B,YAAI,CAACA,EAAE,CAACC,YAAH,CAAgB,iBAAhB,CAAL,EAAyC;AACvCD,UAAAA,EAAE,CAACE,YAAH,CAAgB,iBAAhB,EAAmCF,EAAE,CAACG,QAAH,CAAYC,QAAZ,EAAnC;AACD;AACDJ,QAAAA,EAAE,CAACG,QAAH,GAAc,CAAC,CAAf;AACD,OALD;AAMD,KAxP+B;;AA0PxBE,IAAAA,mBA1PwB,GA0PF,YAAM;AAClC,YAAKC,gBAAL;AACA;AACAC,MAAAA,KAAK,CAACC,IAAN,CAAWC,QAAQ,CAACC,gBAAT,CAA0B,mBAA1B,CAAX,EAA2DX,OAA3D,CAAmE,UAACC,EAAD,EAAQ;AACzEA,QAAAA,EAAE,CAACE,YAAH,CAAgB,UAAhB,sBAA4BF,EAAE,CAACW,YAAH,CAAgB,iBAAhB,CAA5B,+BAAkE,GAAlE;AACAX,QAAAA,EAAE,CAACY,eAAH,CAAmB,iBAAnB;AACD,OAHD;AAID,KAjQ+B;;AAmQxBf,IAAAA,cAnQwB,GAmQP,YAAM;AAC7B,UAAMgB,MAAM,GAAG,MAAK9C,qBAApB;AACA,UAAI,CAAC8C,MAAL,EAAa;AACX;AACD;AACD,UAAMC,MAAM,GAAG;AACbC,QAAAA,SAAS,EAAE,IADE;AAEbC,QAAAA,OAAO,EAAE,IAFI,EAAf;;AAIA,UAAMC,QAAQ,GAAG,IAAIC,gBAAJ,CAAqB,MAAKvB,oBAA1B,CAAjB;AACAsB,MAAAA,QAAQ,CAACE,OAAT,CAAiBN,MAAjB,EAAyBC,MAAzB;AACA,YAAKlB,gBAAL,GAAwBqB,QAAxB;AACD,KA/Q+B;;AAiRxBX,IAAAA,gBAjRwB,GAiRL,YAAM;AAC/B,qCAAKV,gBAAL,2CAAuBwB,UAAvB;AACA,YAAKxB,gBAAL,GAAwB,IAAxB;AACD,KApR+B,CAG9B,MAAK3B,oBAAL,GAA4B,IAA5B,CACA,MAAKF,qBAAL,GAA6B,IAA7B,CACA,MAAK6B,gBAAL,GAAwB,IAAxB,CACA,MAAKF,WAAL,GAAmB,IAAnB,CAEA,MAAK2B,KAAL,GAAa,EACXhC,eAAe,EAAE,KADN,EAEXiC,gBAAgB,EAAE,KAFP,EAGXC,cAAc,EAAE,KAHL,EAAb,CAMA,MAAKC,WAAL,GAAmB,IAAIC,gEAAJ,CAAoC,EACrDC,oBAAoB,EAAE,MAAK/D,QAAL,GAAgBgE,sBADe,EAErDC,cAAc,EAAE,MAAKjE,QAAL,GAAgBkE,6BAFqB,EAGrDC,iBAAiB,EAAE,qCAAM,MAAK1C,QAAL,CAAc,EAAEkC,gBAAgB,EAAE,IAApB,EAAd,CAAN,EAHkC,EAIrDS,gBAAgB,EAAE,oCAAM,MAAK3C,QAAL,CAAc,EAAEkC,gBAAgB,EAAE,KAApB,EAAd,CAAN,EAJmC,EAApC,CAAnB,CAd8B,aAoB/B,C,qCAEMU,iB,GAAP,6BAA2B,CACzB,IAAMC,MAAM,GAAG,KAAKtE,QAAL,GAAgBsE,MAA/B,CACA,KAAK/D,oBAAL,GACA+D,MAAM,IAAI,KAAKT,WAAL,CAAiBU,KAAjB,EAAV,CACA,KAAKC,YAAL,GAAoBC,YAAY,CAACC,WAAb,CAAyB,qBAAS,KAAKnE,oBAAd,EAAoC,EAApC,CAAzB,CAApB,CAEA,IAAI+D,MAAJ,EAAY,CACV,KAAKtC,oBAAL,GACD,CACF,C,QAEM2C,kB,GAAP,4BAA0BC,SAA1B,EAA4DC,SAA5D,EAA8F,CAC5F,IAAQC,SAAR,GAAsB,KAAK/E,KAA3B,CAAQ+E,SAAR,CACA,qBAA0E,KAAK9E,QAAL,EAA1E,CAAQsE,MAAR,kBAAQA,MAAR,CAAgBN,sBAAhB,kBAAgBA,sBAAhB,CAAwCE,6BAAxC,kBAAwCA,6BAAxC,CACA,IAAQN,cAAR,GAA2B,KAAKF,KAAhC,CAAQE,cAAR,CAEA,IAAKU,MAAM,IAAI,CAACM,SAAS,CAACN,MAAtB,IAAiCM,SAAS,CAACE,SAAV,KAAwBA,SAA7D,EAAwE,CACtE,KAAKvE,oBAAL,GACD,CAED,IACEyD,sBAAsB,KAAKY,SAAS,CAACZ,sBAArC,IACAE,6BAA6B,KAAKU,SAAS,CAACV,6BAF9C,EAGE,CACA,KAAKL,WAAL,CAAiBkB,MAAjB,CAAwB,EACtBhB,oBAAoB,EAAEC,sBADA,EAEtBC,cAAc,EAAEC,6BAFM,EAAxB,EAID,CAED,IAAII,MAAM,KAAKM,SAAS,CAACN,MAAzB,EAAiC,CAC/BA,MAAM,GAAG,KAAKT,WAAL,CAAiBU,KAAjB,EAAH,GAA8B,KAAKV,WAAL,CAAiBmB,IAAjB,EAApC,CACD,CAED,IAAIpB,cAAc,KAAKiB,SAAS,CAACjB,cAAjC,EAAiD,CAC/C,IAAIA,cAAJ,EAAoB,CAClB,KAAK5B,oBAAL,GACD,CAFD,MAEO,CACL,KAAKU,mBAAL,GACD,CACF,CACF,C,QAEMuC,oB,GAAP,gCAA8B,CAC5B,KAAKtC,gBAAL,GACA,IAAI,KAAK6B,YAAT,EAAuB,CACrB,KAAKA,YAAL,CAAkBU,MAAlB,GACD,CACD,KAAKrB,WAAL,CAAiBsB,SAAjB,GACD,C,QAEaC,wB,GAAd,kCAAuCrF,KAAvC,EAA2D2D,KAA3D,EAAqG,CACnG,IAAI3D,KAAK,CAACuE,MAAN,IAAgB,CAACZ,KAAK,CAACE,cAA3B,EAA2C,CACzC,OAAO,EACLA,cAAc,EAAE,IADX,EAAP,CAGD,CACD,IAAIF,KAAK,CAACE,cAAN,IAAwB,EAAE7D,KAAK,CAACuE,MAAN,IAAgBZ,KAAK,CAACC,gBAAxB,CAA5B,EAAuE,CACrE,OAAO,EACLC,cAAc,EAAE,KADX,EAAP,CAGD,CAED,OAAOF,KAAP,CACD,C,QAEM2B,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,OAAO,MAAI,CAACC,UAAL,EAAP,CACD,CAJH,CADF,CAQD,C,QAEOA,U,GAAR,sBAAqB,SACnB,kBAA+B,KAAKxF,KAApC,CAAQyF,OAAR,eAAQA,OAAR,CAAiBV,SAAjB,eAAiBA,SAAjB,CACA,IAAMW,IAAI,GAAG,KAAKzF,QAAL,GAAgByF,IAA7B,CACA,IAAQ7B,cAAR,GAA2B,KAAKF,KAAhC,CAAQE,cAAR,CAEA,oBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,KAAK8B,WAAjC,IAAkD,KAAK3F,KAAvD,gBACE,sCAAK,SAAS,EAAE4F,eAAOC,MAAP,EAAhB,EAAiC,YAAUhC,cAAc,GAAGlE,cAAc,CAACC,IAAlB,GAAyB,EAAlF,iBACE,6BAAC,cAAD,IACE,WAAW,EAAEiE,cADf,EAEE,aAAa,EAAEA,cAFjB,EAGE,KAAK,EAAE,EAAE3C,MAAM,EAAE,MAAV,EAHT,EAIE,UAAU,EAAE,KAAKf,WAJnB,IAMG,KAAKH,KAAL,CAAW8F,QANd,CADF,EASGjC,cAAc,iBACb,6BAAC,cAAD,IACE,UAAU,EAAE,KAAKvD,UADnB,EAEE,SAAS,EAAE,gCACRsF,eAAOrB,MAAP,CAAc,KAAKgB,KAAnB,CADQ,IACoB1B,cADpB,OAFb,IAMG,KAAKF,KAAL,CAAWC,gBAAX,IAA+B,KAAKmC,aAAL,CAAmBL,IAAnB,EAAyBD,OAAzB,EAAkCV,SAAlC,CANlC,CAVJ,CADF,CADF,CAwBD,C,QAUOgB,a,GAAR,uBAAsBL,IAAtB,EAAyCD,OAAzC,EAAoEV,SAApE,EAAiG,wBAC/F,oBACE,uCACE,YAAUpF,cAAc,CAACE,OAD3B,EAEE,SAAS,EAAE,iBAAG+F,eAAOI,gBAAP,EAAH,mBAAiCJ,eAAOK,sBAAP,EAAjC,IAAmE,KAAKtC,KAAL,CAAWhC,eAA9E,QAFb,EAGE,KAAK,EAAE,KAAKgC,KAAL,CAAW/B,YAHpB,iBAKE,sCACE,SAAS,EAAEgE,eAAOM,uBAAP,EADb,EAEE,GAAG,EAAE,aAAC9F,OAAD,EAAa,CAChB,MAAI,CAAC4B,WAAL,GAAmB5B,OAAnB,CACD,CAJH,IAMG2E,SAAS,KAAKoB,SAAd,GAA0BpB,SAA1B,gBAAsC,6BAAC,gBAAD,IAAS,IAAI,EAAEW,IAAf,EAAqB,OAAO,EAAED,OAA9B,GANzC,CALF,CADF,CAgBD,C,iBAtNyBW,eAAMC,S,WAClBC,mB,GAAsB,Q,UAEtBpG,Y,GAA6B,EACzCwF,IAAI,EAAE,QADmC,EAEzCnB,MAAM,EAAE,KAFiC,EAGzCN,sBAAsB,EAAEsC,gCAAY,CAAZ,GAAgB,GAHC,EAIzCpC,6BAA6B,EAAEoC,gCAAY,CAAZ,GAAgB,IAJN,E,UAS7BC,S,GAAY,EACxB;AACJ;AACA,KACIjC,MAAM,EAAEkC,mBAAUC,IAJM,EAMxB;AACJ;AACA;AACA;AACA,KACIjB,OAAO,EAAEkB,iBAAQH,SAAR,CAAkBf,OAXH,EAaxBV,SAAS,EAAE0B,mBAAUG,IAbG,EAexB;AACJ;AACA,KACIC,SAAS,EAAEJ,mBAAUK,MAlBG,EAoBxB;AACJ;AACA;AACA;AACA,KACIpB,IAAI,EAAEe,mBAAUM,KAAV,CAAgBrH,KAAhB,CAzBkB,EA0BxB;AACJ;AACA;AACA,KACIuE,sBAAsB,EAAEwC,mBAAUO,MA9BV,EA+BxB;AACJ;AACA;AACA,KACI7C,6BAA6B,EAAEsC,mBAAUO,MAnCjB,E","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\n\nimport { AnyObject } from '../../lib/utils';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Spinner, SpinnerProps } from '../Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { TaskWithDelayAndMinimalDuration } from '../../lib/taskWithDelayAndMinimalDuration';\nimport { getTabbableElements } from '../../lib/dom/tabbableHelpers';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Loader.styles';\n\nconst types = ['mini', 'normal', 'big'] as const;\n\nexport type LoaderType = typeof types[number];\n\nexport interface LoaderProps extends CommonProps {\n children?: React.ReactNode;\n /**\n * Флаг переключения состояния лоадера\n * @default false\n */\n active?: boolean;\n /**\n * Подпись под спиннером\n */\n caption?: SpinnerProps['caption'];\n /**\n * Компонент заменяющий спиннер.\n */\n component?: React.ReactNode;\n /**\n * Размер спиннера и текста\n *\n * @default normal\n */\n type?: LoaderType;\n /**\n * Время в миллисекундах для показа вуали без спиннера.\n * @default 300\n */\n delayBeforeSpinnerShow?: number;\n /**\n * Минимальное время в миллисекундах для показа спиннера\n * @default 1000\n */\n minimalDelayBeforeSpinnerHide?: number;\n}\n\nexport interface LoaderState {\n isStickySpinner: boolean;\n isSpinnerVisible: boolean;\n isLoaderActive: boolean;\n spinnerStyle?: AnyObject;\n}\n\nexport const LoaderDataTids = {\n veil: 'Loader__Veil',\n spinner: 'Loader__Spinner',\n} as const;\n\ntype DefaultProps = Required<\n Pick<LoaderProps, 'type' | 'active' | 'delayBeforeSpinnerShow' | 'minimalDelayBeforeSpinnerHide'>\n>;\n\n/**\n * Компонент `Loader` принимает внутрь себя контент, поверх которого в активном состоянии `Loader`'а будет отрисован спиннер\n *\n * Если вам нужен только сам спиннер без дополнительнго функционала - используйте компонент [Spinner](https://tech.skbkontur.ru/react-ui/#/Components/Spinner)\n */\n@rootNode\nexport class Loader extends React.Component<LoaderProps, LoaderState> {\n public static __KONTUR_REACT_UI__ = 'Loader';\n\n public static defaultProps: DefaultProps = {\n type: 'normal',\n active: false,\n delayBeforeSpinnerShow: isTestEnv ? 0 : 300,\n minimalDelayBeforeSpinnerHide: isTestEnv ? 0 : 1000,\n };\n\n private getProps = createPropsGetter(Loader.defaultProps);\n\n public static propTypes = {\n /**\n * показываем лоадер или нет\n */\n active: PropTypes.bool,\n\n /**\n * Текст рядом с лоадером.\n *\n * @default \"Загрузка\"\n */\n caption: Spinner.propTypes.caption,\n\n component: PropTypes.node,\n\n /**\n * Класс для обертки\n */\n className: PropTypes.string,\n\n /**\n * Тип спиннера: mini, normal, big\n *\n * @default normal\n */\n type: PropTypes.oneOf(types),\n /**\n * Время в миллисекундах для показа вуали без спиннера.\n * @default 300\n */\n delayBeforeSpinnerShow: PropTypes.number,\n /**\n * Минимальное время в миллисекундах для показа спиннера\n * @default 1000\n */\n minimalDelayBeforeSpinnerHide: PropTypes.number,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private spinnerContainerNode: Nullable<HTMLDivElement>;\n private childrenContainerNode: Nullable<HTMLDivElement>;\n private spinnerNode: Nullable<HTMLDivElement>;\n private layoutEvents: Nullable<{ remove: () => void }>;\n private spinnerTask: TaskWithDelayAndMinimalDuration;\n private childrenObserver: Nullable<MutationObserver>;\n\n constructor(props: LoaderProps) {\n super(props);\n\n this.spinnerContainerNode = null;\n this.childrenContainerNode = null;\n this.childrenObserver = null;\n this.spinnerNode = null;\n\n this.state = {\n isStickySpinner: false,\n isSpinnerVisible: false,\n isLoaderActive: false,\n };\n\n this.spinnerTask = new TaskWithDelayAndMinimalDuration({\n delayBeforeTaskStart: this.getProps().delayBeforeSpinnerShow,\n durationOfTask: this.getProps().minimalDelayBeforeSpinnerHide,\n taskStartCallback: () => this.setState({ isSpinnerVisible: true }),\n taskStopCallback: () => this.setState({ isSpinnerVisible: false }),\n });\n }\n\n public componentDidMount() {\n const active = this.getProps().active;\n this.checkSpinnerPosition();\n active && this.spinnerTask.start();\n this.layoutEvents = LayoutEvents.addListener(debounce(this.checkSpinnerPosition, 10));\n\n if (active) {\n this.disableChildrenFocus();\n }\n }\n\n public componentDidUpdate(prevProps: Readonly<LoaderProps>, prevState: Readonly<LoaderState>) {\n const { component } = this.props;\n const { active, delayBeforeSpinnerShow, minimalDelayBeforeSpinnerHide } = this.getProps();\n const { isLoaderActive } = this.state;\n\n if ((active && !prevProps.active) || prevProps.component !== component) {\n this.checkSpinnerPosition();\n }\n\n if (\n delayBeforeSpinnerShow !== prevProps.delayBeforeSpinnerShow ||\n minimalDelayBeforeSpinnerHide !== prevProps.minimalDelayBeforeSpinnerHide\n ) {\n this.spinnerTask.update({\n delayBeforeTaskStart: delayBeforeSpinnerShow,\n durationOfTask: minimalDelayBeforeSpinnerHide,\n });\n }\n\n if (active !== prevProps.active) {\n active ? this.spinnerTask.start() : this.spinnerTask.stop();\n }\n\n if (isLoaderActive !== prevState.isLoaderActive) {\n if (isLoaderActive) {\n this.disableChildrenFocus();\n } else {\n this.enableChildrenFocus();\n }\n }\n }\n\n public componentWillUnmount() {\n this.makeUnobservable();\n if (this.layoutEvents) {\n this.layoutEvents.remove();\n }\n this.spinnerTask.clearTask();\n }\n\n public static getDerivedStateFromProps(props: LoaderProps, state: LoaderState): Partial<LoaderState> {\n if (props.active && !state.isLoaderActive) {\n return {\n isLoaderActive: true,\n };\n }\n if (state.isLoaderActive && !(props.active || state.isSpinnerVisible)) {\n return {\n isLoaderActive: false,\n };\n }\n\n return state;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { caption, component } = this.props;\n const type = this.getProps().type;\n const { isLoaderActive } = this.state;\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div className={styles.loader()} data-tid={isLoaderActive ? LoaderDataTids.veil : ''}>\n <ZIndex\n applyZIndex={isLoaderActive}\n coverChildren={isLoaderActive}\n style={{ height: '100%' }}\n wrapperRef={this.childrenRef}\n >\n {this.props.children}\n </ZIndex>\n {isLoaderActive && (\n <ZIndex\n wrapperRef={this.spinnerRef}\n className={cx({\n [styles.active(this.theme)]: isLoaderActive,\n })}\n >\n {this.state.isSpinnerVisible && this.renderSpinner(type, caption, component)}\n </ZIndex>\n )}\n </div>\n </CommonWrapper>\n );\n }\n\n private childrenRef = (element: HTMLDivElement | null) => {\n this.childrenContainerNode = element;\n };\n\n private spinnerRef = (element: HTMLDivElement | null) => {\n this.spinnerContainerNode = element;\n };\n\n private renderSpinner(type?: LoaderType, caption?: React.ReactNode, component?: React.ReactNode) {\n return (\n <span\n data-tid={LoaderDataTids.spinner}\n className={cx(styles.spinnerContainer(), { [styles.spinnerContainerSticky()]: this.state.isStickySpinner })}\n style={this.state.spinnerStyle}\n >\n <div\n className={styles.spinnerComponentWrapper()}\n ref={(element) => {\n this.spinnerNode = element;\n }}\n >\n {component !== undefined ? component : <Spinner type={type} caption={caption} />}\n </div>\n </span>\n );\n }\n\n private checkSpinnerPosition = () => {\n if (!this.spinnerContainerNode) {\n return;\n }\n\n const {\n top: containerTop,\n right: containerRight,\n bottom: containerBottom,\n left: containerLeft,\n height: containerHeight,\n width: containerWidth,\n } = getDOMRect(this.spinnerContainerNode);\n\n const windowHeight = window.innerHeight;\n const windowWidth = window.innerWidth;\n\n // Если контейнер не больше высоты и не шире окна,\n // то просто выравниваем по центру\n if (windowHeight >= containerHeight && windowWidth >= containerWidth) {\n this.setState({\n isStickySpinner: false,\n spinnerStyle: {},\n });\n return;\n }\n\n const spinnerStyle: {\n top?: number;\n right: number;\n bottom: number;\n left: number;\n } = {\n top: 30,\n right: 0,\n bottom: 30,\n left: 0,\n };\n\n // ПО ВЕРТИКАЛИ\n // Если верхний край контейнера ниже верхнего края окна,\n // то сдвигаем и лоадер\n if (containerTop > 0) {\n spinnerStyle.top = containerTop + 30;\n }\n\n // Если нижний край контейнера выше нижнего края окна,\n // то сдвигаем и лоадер\n if (containerBottom < windowHeight) {\n spinnerStyle.bottom = Math.abs(windowHeight - containerBottom) + 30;\n }\n\n // Если знаем высоту спиннера и нижний край контейнера поднимается\n // выше отступа на высоту спиннера, то убираем верхнюю позицию лоадера\n\n const spinnerHeight = getDOMRect(this.spinnerNode).height;\n\n if (spinnerHeight && spinnerStyle.bottom >= windowHeight - spinnerHeight) {\n delete spinnerStyle.top;\n }\n\n // ПО ГОРИЗОНТАЛИ\n // Если левый край контейнера правее левого края окна,\n // то сдвигаем и лоадер\n if (containerLeft > 0) {\n spinnerStyle.left = containerLeft;\n }\n\n // Если правый край контейнера левее правого края окна,\n // то сдвигаем и лоадер\n if (containerRight < windowWidth) {\n spinnerStyle.right = windowWidth - containerRight;\n }\n\n this.setState({\n isStickySpinner: true,\n spinnerStyle,\n });\n };\n\n private disableChildrenFocus = () => {\n if (!this.childrenObserver) {\n this.makeObservable();\n }\n const tabbableElements = getTabbableElements(this.childrenContainerNode);\n tabbableElements.forEach((el) => {\n if (!el.hasAttribute('origin-tabindex')) {\n el.setAttribute('origin-tabindex', el.tabIndex.toString());\n }\n el.tabIndex = -1;\n });\n };\n\n private enableChildrenFocus = () => {\n this.makeUnobservable();\n // NOTE: NodeList doesn't support 'forEach' method in IE11 and other older browsers\n Array.from(document.querySelectorAll('[origin-tabindex]')).forEach((el) => {\n el.setAttribute('tabindex', el.getAttribute('origin-tabindex') ?? '0');\n el.removeAttribute('origin-tabindex');\n });\n };\n\n private makeObservable = () => {\n const target = this.childrenContainerNode;\n if (!target) {\n return;\n }\n const config = {\n childList: true,\n subtree: true,\n };\n const observer = new MutationObserver(this.disableChildrenFocus);\n observer.observe(target, config);\n this.childrenObserver = observer;\n };\n\n private makeUnobservable = () => {\n this.childrenObserver?.disconnect();\n this.childrenObserver = null;\n };\n}\n"]}
1
+ {"version":3,"sources":["Loader.tsx"],"names":["types","LoaderDataTids","veil","spinner","Loader","rootNode","props","getProps","defaultProps","childrenRef","element","childrenContainerNode","spinnerRef","spinnerContainerNode","checkSpinnerPosition","globalObject","containerTop","top","containerRight","right","containerBottom","bottom","containerLeft","left","containerHeight","height","containerWidth","width","windowHeight","innerHeight","windowWidth","innerWidth","setState","isStickySpinner","spinnerStyle","Math","abs","spinnerHeight","spinnerNode","disableChildrenFocus","childrenObserver","makeObservable","tabbableElements","forEach","el","hasAttribute","setAttribute","tabIndex","toString","enableChildrenFocus","makeUnobservable","Array","from","document","querySelectorAll","getAttribute","removeAttribute","target","MutationObserver","config","childList","subtree","observer","observe","disconnect","state","isSpinnerVisible","isLoaderActive","spinnerTask","TaskWithDelayAndMinimalDuration","delayBeforeTaskStart","delayBeforeSpinnerShow","durationOfTask","minimalDelayBeforeSpinnerHide","taskStartCallback","taskStopCallback","componentDidMount","active","start","layoutEvents","LayoutEvents","addListener","componentDidUpdate","prevProps","prevState","component","update","stop","componentWillUnmount","remove","clearTask","getDerivedStateFromProps","render","theme","renderMain","caption","type","setRootNode","styles","loader","children","renderSpinner","spinnerContainer","spinnerContainerSticky","spinnerComponentWrapper","undefined","React","Component","__KONTUR_REACT_UI__","isTestEnv","propTypes","PropTypes","bool","Spinner","node","className","string","oneOf","number"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport debounce from 'lodash.debounce';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { AnyObject } from '../../lib/utils';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Spinner, SpinnerProps } from '../Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { TaskWithDelayAndMinimalDuration } from '../../lib/taskWithDelayAndMinimalDuration';\nimport { getTabbableElements } from '../../lib/dom/tabbableHelpers';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Loader.styles';\n\nconst types = ['mini', 'normal', 'big'] as const;\n\nexport type LoaderType = typeof types[number];\n\nexport interface LoaderProps extends CommonProps {\n children?: React.ReactNode;\n /**\n * Флаг переключения состояния лоадера\n * @default false\n */\n active?: boolean;\n /**\n * Подпись под спиннером\n */\n caption?: SpinnerProps['caption'];\n /**\n * Компонент заменяющий спиннер.\n */\n component?: React.ReactNode;\n /**\n * Размер спиннера и текста\n *\n * @default normal\n */\n type?: LoaderType;\n /**\n * Время в миллисекундах для показа вуали без спиннера.\n * @default 300\n */\n delayBeforeSpinnerShow?: number;\n /**\n * Минимальное время в миллисекундах для показа спиннера\n * @default 1000\n */\n minimalDelayBeforeSpinnerHide?: number;\n}\n\nexport interface LoaderState {\n isStickySpinner: boolean;\n isSpinnerVisible: boolean;\n isLoaderActive: boolean;\n spinnerStyle?: AnyObject;\n}\n\nexport const LoaderDataTids = {\n veil: 'Loader__Veil',\n spinner: 'Loader__Spinner',\n} as const;\n\ntype DefaultProps = Required<\n Pick<LoaderProps, 'type' | 'active' | 'delayBeforeSpinnerShow' | 'minimalDelayBeforeSpinnerHide'>\n>;\n\n/**\n * Компонент `Loader` принимает внутрь себя контент, поверх которого в активном состоянии `Loader`'а будет отрисован спиннер\n *\n * Если вам нужен только сам спиннер без дополнительнго функционала - используйте компонент [Spinner](https://tech.skbkontur.ru/react-ui/#/Components/Spinner)\n */\n@rootNode\nexport class Loader extends React.Component<LoaderProps, LoaderState> {\n public static __KONTUR_REACT_UI__ = 'Loader';\n\n public static defaultProps: DefaultProps = {\n type: 'normal',\n active: false,\n delayBeforeSpinnerShow: isTestEnv ? 0 : 300,\n minimalDelayBeforeSpinnerHide: isTestEnv ? 0 : 1000,\n };\n\n private getProps = createPropsGetter(Loader.defaultProps);\n\n public static propTypes = {\n /**\n * показываем лоадер или нет\n */\n active: PropTypes.bool,\n\n /**\n * Текст рядом с лоадером.\n *\n * @default \"Загрузка\"\n */\n caption: Spinner.propTypes.caption,\n\n component: PropTypes.node,\n\n /**\n * Класс для обертки\n */\n className: PropTypes.string,\n\n /**\n * Тип спиннера: mini, normal, big\n *\n * @default normal\n */\n type: PropTypes.oneOf(types),\n /**\n * Время в миллисекундах для показа вуали без спиннера.\n * @default 300\n */\n delayBeforeSpinnerShow: PropTypes.number,\n /**\n * Минимальное время в миллисекундах для показа спиннера\n * @default 1000\n */\n minimalDelayBeforeSpinnerHide: PropTypes.number,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private spinnerContainerNode: Nullable<HTMLDivElement>;\n private childrenContainerNode: Nullable<HTMLDivElement>;\n private spinnerNode: Nullable<HTMLDivElement>;\n private layoutEvents: Nullable<{ remove: () => void }>;\n private spinnerTask: TaskWithDelayAndMinimalDuration;\n private childrenObserver: Nullable<MutationObserver>;\n\n constructor(props: LoaderProps) {\n super(props);\n\n this.spinnerContainerNode = null;\n this.childrenContainerNode = null;\n this.childrenObserver = null;\n this.spinnerNode = null;\n\n this.state = {\n isStickySpinner: false,\n isSpinnerVisible: false,\n isLoaderActive: false,\n };\n\n this.spinnerTask = new TaskWithDelayAndMinimalDuration({\n delayBeforeTaskStart: this.getProps().delayBeforeSpinnerShow,\n durationOfTask: this.getProps().minimalDelayBeforeSpinnerHide,\n taskStartCallback: () => this.setState({ isSpinnerVisible: true }),\n taskStopCallback: () => this.setState({ isSpinnerVisible: false }),\n });\n }\n\n public componentDidMount() {\n const active = this.getProps().active;\n this.checkSpinnerPosition();\n active && this.spinnerTask.start();\n this.layoutEvents = LayoutEvents.addListener(debounce(this.checkSpinnerPosition, 10));\n\n if (active) {\n this.disableChildrenFocus();\n }\n }\n\n public componentDidUpdate(prevProps: Readonly<LoaderProps>, prevState: Readonly<LoaderState>) {\n const { component } = this.props;\n const { active, delayBeforeSpinnerShow, minimalDelayBeforeSpinnerHide } = this.getProps();\n const { isLoaderActive } = this.state;\n\n if ((active && !prevProps.active) || prevProps.component !== component) {\n this.checkSpinnerPosition();\n }\n\n if (\n delayBeforeSpinnerShow !== prevProps.delayBeforeSpinnerShow ||\n minimalDelayBeforeSpinnerHide !== prevProps.minimalDelayBeforeSpinnerHide\n ) {\n this.spinnerTask.update({\n delayBeforeTaskStart: delayBeforeSpinnerShow,\n durationOfTask: minimalDelayBeforeSpinnerHide,\n });\n }\n\n if (active !== prevProps.active) {\n active ? this.spinnerTask.start() : this.spinnerTask.stop();\n }\n\n if (isLoaderActive !== prevState.isLoaderActive) {\n if (isLoaderActive) {\n this.disableChildrenFocus();\n } else {\n this.enableChildrenFocus();\n }\n }\n }\n\n public componentWillUnmount() {\n this.makeUnobservable();\n if (this.layoutEvents) {\n this.layoutEvents.remove();\n }\n this.spinnerTask.clearTask();\n }\n\n public static getDerivedStateFromProps(props: LoaderProps, state: LoaderState): Partial<LoaderState> {\n if (props.active && !state.isLoaderActive) {\n return {\n isLoaderActive: true,\n };\n }\n if (state.isLoaderActive && !(props.active || state.isSpinnerVisible)) {\n return {\n isLoaderActive: false,\n };\n }\n\n return state;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { caption, component } = this.props;\n const type = this.getProps().type;\n const { isLoaderActive } = this.state;\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div className={styles.loader()} data-tid={isLoaderActive ? LoaderDataTids.veil : ''}>\n <ZIndex\n applyZIndex={isLoaderActive}\n coverChildren={isLoaderActive}\n style={{ height: '100%' }}\n wrapperRef={this.childrenRef}\n >\n {this.props.children}\n </ZIndex>\n {isLoaderActive && (\n <ZIndex\n wrapperRef={this.spinnerRef}\n className={cx({\n [styles.active(this.theme)]: isLoaderActive,\n })}\n >\n {this.state.isSpinnerVisible && this.renderSpinner(type, caption, component)}\n </ZIndex>\n )}\n </div>\n </CommonWrapper>\n );\n }\n\n private childrenRef = (element: HTMLDivElement | null) => {\n this.childrenContainerNode = element;\n };\n\n private spinnerRef = (element: HTMLDivElement | null) => {\n this.spinnerContainerNode = element;\n };\n\n private renderSpinner(type?: LoaderType, caption?: React.ReactNode, component?: React.ReactNode) {\n return (\n <span\n data-tid={LoaderDataTids.spinner}\n className={cx(styles.spinnerContainer(), { [styles.spinnerContainerSticky()]: this.state.isStickySpinner })}\n style={this.state.spinnerStyle}\n >\n <div\n className={styles.spinnerComponentWrapper()}\n ref={(element) => {\n this.spinnerNode = element;\n }}\n >\n {component !== undefined ? component : <Spinner type={type} caption={caption} />}\n </div>\n </span>\n );\n }\n\n private checkSpinnerPosition = () => {\n if (!this.spinnerContainerNode || !isBrowser(globalObject)) {\n return;\n }\n\n const {\n top: containerTop,\n right: containerRight,\n bottom: containerBottom,\n left: containerLeft,\n height: containerHeight,\n width: containerWidth,\n } = getDOMRect(this.spinnerContainerNode);\n\n const windowHeight = globalObject.innerHeight;\n const windowWidth = globalObject.innerWidth;\n\n // Если контейнер не больше высоты и не шире окна,\n // то просто выравниваем по центру\n if (windowHeight >= containerHeight && windowWidth >= containerWidth) {\n this.setState({\n isStickySpinner: false,\n spinnerStyle: {},\n });\n return;\n }\n\n const spinnerStyle: {\n top?: number;\n right: number;\n bottom: number;\n left: number;\n } = {\n top: 30,\n right: 0,\n bottom: 30,\n left: 0,\n };\n\n // ПО ВЕРТИКАЛИ\n // Если верхний край контейнера ниже верхнего края окна,\n // то сдвигаем и лоадер\n if (containerTop > 0) {\n spinnerStyle.top = containerTop + 30;\n }\n\n // Если нижний край контейнера выше нижнего края окна,\n // то сдвигаем и лоадер\n if (containerBottom < windowHeight) {\n spinnerStyle.bottom = Math.abs(windowHeight - containerBottom) + 30;\n }\n\n // Если знаем высоту спиннера и нижний край контейнера поднимается\n // выше отступа на высоту спиннера, то убираем верхнюю позицию лоадера\n\n const spinnerHeight = getDOMRect(this.spinnerNode).height;\n\n if (spinnerHeight && spinnerStyle.bottom >= windowHeight - spinnerHeight) {\n delete spinnerStyle.top;\n }\n\n // ПО ГОРИЗОНТАЛИ\n // Если левый край контейнера правее левого края окна,\n // то сдвигаем и лоадер\n if (containerLeft > 0) {\n spinnerStyle.left = containerLeft;\n }\n\n // Если правый край контейнера левее правого края окна,\n // то сдвигаем и лоадер\n if (containerRight < windowWidth) {\n spinnerStyle.right = windowWidth - containerRight;\n }\n\n this.setState({\n isStickySpinner: true,\n spinnerStyle,\n });\n };\n\n private disableChildrenFocus = () => {\n if (!this.childrenObserver) {\n this.makeObservable();\n }\n const tabbableElements = getTabbableElements(this.childrenContainerNode);\n tabbableElements.forEach((el) => {\n if (!el.hasAttribute('origin-tabindex')) {\n el.setAttribute('origin-tabindex', el.tabIndex.toString());\n }\n el.tabIndex = -1;\n });\n };\n\n private enableChildrenFocus = () => {\n this.makeUnobservable();\n // NOTE: NodeList doesn't support 'forEach' method in IE11 and other older browsers\n Array.from(globalObject.document?.querySelectorAll('[origin-tabindex]') ?? []).forEach((el) => {\n el.setAttribute('tabindex', el.getAttribute('origin-tabindex') ?? '0');\n el.removeAttribute('origin-tabindex');\n });\n };\n\n private makeObservable = () => {\n const target = this.childrenContainerNode;\n if (!target || !globalObject.MutationObserver) {\n return;\n }\n const config = {\n childList: true,\n subtree: true,\n };\n const observer = new globalObject.MutationObserver(this.disableChildrenFocus);\n observer.observe(target, config);\n this.childrenObserver = observer;\n };\n\n private makeUnobservable = () => {\n this.childrenObserver?.disconnect();\n this.childrenObserver = null;\n };\n}\n"]}
@@ -1,11 +1,15 @@
1
1
  import React, { ReactNode } from 'react';
2
2
  import { CommonProps } from '../../internal/CommonWrapper';
3
- export declare type MenuFooterSize = 'small' | 'medium' | 'large';
3
+ import { SizeProp } from '../../lib/types/props';
4
+ /**
5
+ * @deprecated use SizeProp
6
+ */
7
+ export declare type MenuFooterSize = SizeProp;
4
8
  export interface MenuFooterProps extends CommonProps {
5
9
  _enableIconPadding?: boolean;
6
10
  children: ReactNode;
7
11
  /** Размер */
8
- size?: MenuFooterSize;
12
+ size?: SizeProp;
9
13
  }
10
14
  export declare const MenuFooterDataTids: {
11
15
  readonly root: "MenuFooter__root";
@@ -4,6 +4,7 @@ var _ThemeContext = require("../../lib/theming/ThemeContext");
4
4
  var _CommonWrapper = require("../../internal/CommonWrapper");
5
5
  var _Emotion = require("../../lib/theming/Emotion");
6
6
 
7
+
7
8
  var _MenuFooter = require("./MenuFooter.styles");var _excluded = ["_enableIconPadding", "children", "size"];function _getRequireWildcardCache(nodeInterop) {if (typeof WeakMap !== "function") return null;var cacheBabelInterop = new WeakMap();var cacheNodeInterop = new WeakMap();return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {return nodeInterop ? cacheNodeInterop : cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj, nodeInterop) {if (!nodeInterop && obj && obj.__esModule) {return obj;}if (obj === null || typeof obj !== "object" && typeof obj !== "function") {return { default: obj };}var cache = _getRequireWildcardCache(nodeInterop);if (cache && cache.has(obj)) {return cache.get(obj);}var newObj = {};var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;for (var key in obj) {if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;if (desc && (desc.get || desc.set)) {Object.defineProperty(newObj, key, desc);} else {newObj[key] = obj[key];}}}newObj.default = obj;if (cache) {cache.set(obj, newObj);}return newObj;}
8
9
 
9
10
 
@@ -15,6 +16,9 @@ var _MenuFooter = require("./MenuFooter.styles");var _excluded = ["_enableIconPa
15
16
 
16
17
 
17
18
 
19
+
20
+
21
+
18
22
  var MenuFooterDataTids = {
19
23
  root: 'MenuFooter__root' };
20
24
 
@@ -1 +1 @@
1
- {"version":3,"sources":["MenuFooter.tsx"],"names":["MenuFooterDataTids","root","MenuFooter","_enableIconPadding","children","size","rest","theme","ThemeContext","getRootSizeClassName","styles","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","__KONTUR_REACT_UI__","__MENU_FOOTER__","isMenuFooter","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"mappings":"mVAAA;;AAEA;AACA;AACA;;AAEA,iD;;;;;;;;;;;AAWO,IAAMA,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B,EAA3B;;;AAIP;AACA;AACA;AACA;AACA;AACA;AACA,G;AACA,SAASC,UAAT,OAAwG,0CAAlFC,kBAAkF,CAAlFA,kBAAkF,sCAA7D,KAA6D,yBAAtDC,QAAsD,QAAtDA,QAAsD,kBAA5CC,IAA4C,CAA5CA,IAA4C,0BAArC,OAAqC,aAAzBC,IAAyB;AACtG,MAAMC,KAAK,GAAG,uBAAWC,0BAAX,CAAd;;AAEA,WAASC,oBAAT,GAAgC;AAC9B,YAAQJ,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOC,SAAP,CAAiBJ,KAAjB,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOE,UAAP,CAAkBL,KAAlB,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOG,SAAP,CAAiBN,KAAjB,CAAP,CAPJ;;AASD;AACD,WAASO,+BAAT,GAA2C;AACzC,YAAQT,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOM,qBAAP,CAA6BT,KAA7B,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP,CAPJ;;AASD;;AAED;AACE,iCAAC,4BAAD,EAAmBD,IAAnB;AACE;AACE,kBAAUN,kBAAkB,CAACC,IAD/B;AAEE,MAAA,SAAS,EAAE,iBAAGQ,oBAAoB,EAAvB;AACRC,yBAAOT,IAAP,CAAYM,KAAZ,CADQ,IACa,IADb;AAERO,MAAAA,+BAA+B,EAFvB,IAE4BX,kBAF5B,OAFb;;;AAOGC,IAAAA,QAPH,CADF,CADF;;;;AAaD;;AAEDF,UAAU,CAACe,mBAAX,GAAiC,YAAjC;AACAf,UAAU,CAACgB,eAAX,GAA6B,IAA7B;;;;AAIO,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,EAA0E;AACpG,SAAO,4BAAMC,cAAN,CAAsCD,KAAtC;AACHE,EAAAA,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,KAAK,CAACM,IAA3C,EAAiD,iBAAjD,CADG;AAEH,OAFJ;AAGD,CAJM,C","sourcesContent":["import React, { ReactNode, useContext } from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './MenuFooter.styles';\n\nexport type MenuFooterSize = 'small' | 'medium' | 'large';\n\nexport interface MenuFooterProps extends CommonProps {\n _enableIconPadding?: boolean;\n children: ReactNode;\n /** Размер */\n size?: MenuFooterSize;\n}\n\nexport const MenuFooterDataTids = {\n root: 'MenuFooter__root',\n} as const;\n\n/**\n * Футер меню.\n *\n * _Примечание_: `футер меню`, в отличие от `элемента меню` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuFooter`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\nfunction MenuFooter({ _enableIconPadding = false, children, size = 'small', ...rest }: MenuFooterProps) {\n const theme = useContext(ThemeContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n data-tid={MenuFooterDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuFooter.__KONTUR_REACT_UI__ = 'MenuFooter';\nMenuFooter.__MENU_FOOTER__ = true;\n\nexport { MenuFooter };\n\nexport const isMenuFooter = (child: React.ReactNode): child is React.ReactElement<MenuFooterProps> => {\n return React.isValidElement<MenuFooterProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_FOOTER__')\n : false;\n};\n"]}
1
+ {"version":3,"sources":["MenuFooter.tsx"],"names":["MenuFooterDataTids","root","MenuFooter","_enableIconPadding","children","size","rest","theme","ThemeContext","getRootSizeClassName","styles","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","__KONTUR_REACT_UI__","__MENU_FOOTER__","isMenuFooter","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"mappings":"mVAAA;;AAEA;AACA;AACA;;;AAGA,iD;;;;;;;;;;;;;;AAcO,IAAMA,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B,EAA3B;;;AAIP;AACA;AACA;AACA;AACA;AACA;AACA,G;AACA,SAASC,UAAT,OAAwG,0CAAlFC,kBAAkF,CAAlFA,kBAAkF,sCAA7D,KAA6D,yBAAtDC,QAAsD,QAAtDA,QAAsD,kBAA5CC,IAA4C,CAA5CA,IAA4C,0BAArC,OAAqC,aAAzBC,IAAyB;AACtG,MAAMC,KAAK,GAAG,uBAAWC,0BAAX,CAAd;;AAEA,WAASC,oBAAT,GAAgC;AAC9B,YAAQJ,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOC,SAAP,CAAiBJ,KAAjB,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOE,UAAP,CAAkBL,KAAlB,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOG,SAAP,CAAiBN,KAAjB,CAAP,CAPJ;;AASD;AACD,WAASO,+BAAT,GAA2C;AACzC,YAAQT,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOM,qBAAP,CAA6BT,KAA7B,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP,CAPJ;;AASD;;AAED;AACE,iCAAC,4BAAD,EAAmBD,IAAnB;AACE;AACE,kBAAUN,kBAAkB,CAACC,IAD/B;AAEE,MAAA,SAAS,EAAE,iBAAGQ,oBAAoB,EAAvB;AACRC,yBAAOT,IAAP,CAAYM,KAAZ,CADQ,IACa,IADb;AAERO,MAAAA,+BAA+B,EAFvB,IAE4BX,kBAF5B,OAFb;;;AAOGC,IAAAA,QAPH,CADF,CADF;;;;AAaD;;AAEDF,UAAU,CAACe,mBAAX,GAAiC,YAAjC;AACAf,UAAU,CAACgB,eAAX,GAA6B,IAA7B;;;;AAIO,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,EAA0E;AACpG,SAAO,4BAAMC,cAAN,CAAsCD,KAAtC;AACHE,EAAAA,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,KAAK,CAACM,IAA3C,EAAiD,iBAAjD,CADG;AAEH,OAFJ;AAGD,CAJM,C","sourcesContent":["import React, { ReactNode, useContext } from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './MenuFooter.styles';\n\n/**\n * @deprecated use SizeProp\n */\nexport type MenuFooterSize = SizeProp;\n\nexport interface MenuFooterProps extends CommonProps {\n _enableIconPadding?: boolean;\n children: ReactNode;\n /** Размер */\n size?: SizeProp;\n}\n\nexport const MenuFooterDataTids = {\n root: 'MenuFooter__root',\n} as const;\n\n/**\n * Футер меню.\n *\n * _Примечание_: `футер меню`, в отличие от `элемента меню` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuFooter`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\nfunction MenuFooter({ _enableIconPadding = false, children, size = 'small', ...rest }: MenuFooterProps) {\n const theme = useContext(ThemeContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n data-tid={MenuFooterDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuFooter.__KONTUR_REACT_UI__ = 'MenuFooter';\nMenuFooter.__MENU_FOOTER__ = true;\n\nexport { MenuFooter };\n\nexport const isMenuFooter = (child: React.ReactNode): child is React.ReactElement<MenuFooterProps> => {\n return React.isValidElement<MenuFooterProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_FOOTER__')\n : false;\n};\n"]}
@@ -1,11 +1,15 @@
1
1
  import React, { ReactNode } from 'react';
2
2
  import { CommonProps } from '../../internal/CommonWrapper';
3
- export declare type MenuHeaderSize = 'small' | 'medium' | 'large';
3
+ import { SizeProp } from '../../lib/types/props';
4
+ /**
5
+ * @deprecated use SizeProp
6
+ */
7
+ export declare type MenuHeaderSize = SizeProp;
4
8
  export interface MenuHeaderProps extends CommonProps {
5
9
  _enableIconPadding?: boolean;
6
10
  children: ReactNode;
7
11
  /** Размер */
8
- size?: MenuHeaderSize;
12
+ size?: SizeProp;
9
13
  }
10
14
  export declare const MenuHeaderDataTids: {
11
15
  readonly root: "MenuHeader__root";
@@ -4,6 +4,7 @@ var _ThemeContext = require("../../lib/theming/ThemeContext");
4
4
  var _CommonWrapper = require("../../internal/CommonWrapper");
5
5
  var _Emotion = require("../../lib/theming/Emotion");
6
6
 
7
+
7
8
  var _MenuHeader = require("./MenuHeader.styles");var _excluded = ["_enableIconPadding", "children", "size"];function _getRequireWildcardCache(nodeInterop) {if (typeof WeakMap !== "function") return null;var cacheBabelInterop = new WeakMap();var cacheNodeInterop = new WeakMap();return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {return nodeInterop ? cacheNodeInterop : cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj, nodeInterop) {if (!nodeInterop && obj && obj.__esModule) {return obj;}if (obj === null || typeof obj !== "object" && typeof obj !== "function") {return { default: obj };}var cache = _getRequireWildcardCache(nodeInterop);if (cache && cache.has(obj)) {return cache.get(obj);}var newObj = {};var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;for (var key in obj) {if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;if (desc && (desc.get || desc.set)) {Object.defineProperty(newObj, key, desc);} else {newObj[key] = obj[key];}}}newObj.default = obj;if (cache) {cache.set(obj, newObj);}return newObj;}
8
9
 
9
10
 
@@ -15,6 +16,9 @@ var _MenuHeader = require("./MenuHeader.styles");var _excluded = ["_enableIconPa
15
16
 
16
17
 
17
18
 
19
+
20
+
21
+
18
22
  var MenuHeaderDataTids = {
19
23
  root: 'MenuHeader__root' };
20
24
 
@@ -1 +1 @@
1
- {"version":3,"sources":["MenuHeader.tsx"],"names":["MenuHeaderDataTids","root","MenuHeader","_enableIconPadding","children","size","rest","theme","ThemeContext","getRootSizeClassName","styles","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","__KONTUR_REACT_UI__","__MENU_HEADER__","isMenuHeader","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"mappings":"mVAAA;;AAEA;AACA;AACA;;AAEA,iD;;;;;;;;;;;AAWO,IAAMA,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B,EAA3B;;;AAIP;AACA;AACA;AACA;AACA;AACA;AACA,G;AACA,SAASC,UAAT,OAAwG,0CAAlFC,kBAAkF,CAAlFA,kBAAkF,sCAA7D,KAA6D,yBAAtDC,QAAsD,QAAtDA,QAAsD,kBAA5CC,IAA4C,CAA5CA,IAA4C,0BAArC,OAAqC,aAAzBC,IAAyB;AACtG,MAAMC,KAAK,GAAG,uBAAWC,0BAAX,CAAd;;AAEA,WAASC,oBAAT,GAAgC;AAC9B,YAAQJ,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOC,SAAP,CAAiBJ,KAAjB,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOE,UAAP,CAAkBL,KAAlB,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOG,SAAP,CAAiBN,KAAjB,CAAP,CAPJ;;AASD;AACD,WAASO,+BAAT,GAA2C;AACzC,YAAQT,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOM,qBAAP,CAA6BT,KAA7B,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP,CAPJ;;AASD;;AAED;AACE,iCAAC,4BAAD,EAAmBD,IAAnB;AACE;AACE,kBAAUN,kBAAkB,CAACC,IAD/B;AAEE,MAAA,SAAS,EAAE,iBAAGQ,oBAAoB,EAAvB;AACRC,yBAAOT,IAAP,CAAYM,KAAZ,CADQ,IACa,IADb;AAERO,MAAAA,+BAA+B,EAFvB,IAE4BX,kBAF5B,OAFb;;;AAOGC,IAAAA,QAPH,CADF,CADF;;;;AAaD;;AAEDF,UAAU,CAACe,mBAAX,GAAiC,YAAjC;AACAf,UAAU,CAACgB,eAAX,GAA6B,IAA7B;;;;AAIO,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,EAA0E;AACpG,SAAO,4BAAMC,cAAN,CAAsCD,KAAtC;AACHE,EAAAA,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,KAAK,CAACM,IAA3C,EAAiD,iBAAjD,CADG;AAEH,OAFJ;AAGD,CAJM,C","sourcesContent":["import React, { ReactNode, useContext } from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './MenuHeader.styles';\n\nexport type MenuHeaderSize = 'small' | 'medium' | 'large';\n\nexport interface MenuHeaderProps extends CommonProps {\n _enableIconPadding?: boolean;\n children: ReactNode;\n /** Размер */\n size?: MenuHeaderSize;\n}\n\nexport const MenuHeaderDataTids = {\n root: 'MenuHeader__root',\n} as const;\n\n/**\n * `Заголовок меню` используется для того, чтобы разделить `элементы меню` на категории в рамках одного меню.\n *\n * _Примечание_: `заголовок меню`, в отличие от `элемента меню` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuHeader`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\nfunction MenuHeader({ _enableIconPadding = false, children, size = 'small', ...rest }: MenuHeaderProps) {\n const theme = useContext(ThemeContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n data-tid={MenuHeaderDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuHeader.__KONTUR_REACT_UI__ = 'MenuHeader';\nMenuHeader.__MENU_HEADER__ = true;\n\nexport { MenuHeader };\n\nexport const isMenuHeader = (child: React.ReactNode): child is React.ReactElement<MenuHeaderProps> => {\n return React.isValidElement<MenuHeaderProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_HEADER__')\n : false;\n};\n"]}
1
+ {"version":3,"sources":["MenuHeader.tsx"],"names":["MenuHeaderDataTids","root","MenuHeader","_enableIconPadding","children","size","rest","theme","ThemeContext","getRootSizeClassName","styles","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","__KONTUR_REACT_UI__","__MENU_HEADER__","isMenuHeader","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"mappings":"mVAAA;;AAEA;AACA;AACA;;;AAGA,iD;;;;;;;;;;;;;;AAcO,IAAMA,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B,EAA3B;;;AAIP;AACA;AACA;AACA;AACA;AACA;AACA,G;AACA,SAASC,UAAT,OAAwG,0CAAlFC,kBAAkF,CAAlFA,kBAAkF,sCAA7D,KAA6D,yBAAtDC,QAAsD,QAAtDA,QAAsD,kBAA5CC,IAA4C,CAA5CA,IAA4C,0BAArC,OAAqC,aAAzBC,IAAyB;AACtG,MAAMC,KAAK,GAAG,uBAAWC,0BAAX,CAAd;;AAEA,WAASC,oBAAT,GAAgC;AAC9B,YAAQJ,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOC,SAAP,CAAiBJ,KAAjB,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOE,UAAP,CAAkBL,KAAlB,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOG,SAAP,CAAiBN,KAAjB,CAAP,CAPJ;;AASD;AACD,WAASO,+BAAT,GAA2C;AACzC,YAAQT,IAAR;AACE,WAAK,OAAL;AACE,eAAOK,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP;AACF,WAAK,QAAL;AACE,eAAOG,mBAAOM,qBAAP,CAA6BT,KAA7B,CAAP;AACF,WAAK,OAAL;AACA;AACE,eAAOG,mBAAOK,oBAAP,CAA4BR,KAA5B,CAAP,CAPJ;;AASD;;AAED;AACE,iCAAC,4BAAD,EAAmBD,IAAnB;AACE;AACE,kBAAUN,kBAAkB,CAACC,IAD/B;AAEE,MAAA,SAAS,EAAE,iBAAGQ,oBAAoB,EAAvB;AACRC,yBAAOT,IAAP,CAAYM,KAAZ,CADQ,IACa,IADb;AAERO,MAAAA,+BAA+B,EAFvB,IAE4BX,kBAF5B,OAFb;;;AAOGC,IAAAA,QAPH,CADF,CADF;;;;AAaD;;AAEDF,UAAU,CAACe,mBAAX,GAAiC,YAAjC;AACAf,UAAU,CAACgB,eAAX,GAA6B,IAA7B;;;;AAIO,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD,EAA0E;AACpG,SAAO,4BAAMC,cAAN,CAAsCD,KAAtC;AACHE,EAAAA,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCL,KAAK,CAACM,IAA3C,EAAiD,iBAAjD,CADG;AAEH,OAFJ;AAGD,CAJM,C","sourcesContent":["import React, { ReactNode, useContext } from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './MenuHeader.styles';\n\n/**\n * @deprecated use SizeProp\n */\nexport type MenuHeaderSize = SizeProp;\n\nexport interface MenuHeaderProps extends CommonProps {\n _enableIconPadding?: boolean;\n children: ReactNode;\n /** Размер */\n size?: SizeProp;\n}\n\nexport const MenuHeaderDataTids = {\n root: 'MenuHeader__root',\n} as const;\n\n/**\n * `Заголовок меню` используется для того, чтобы разделить `элементы меню` на категории в рамках одного меню.\n *\n * _Примечание_: `заголовок меню`, в отличие от `элемента меню` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuHeader`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\nfunction MenuHeader({ _enableIconPadding = false, children, size = 'small', ...rest }: MenuHeaderProps) {\n const theme = useContext(ThemeContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n data-tid={MenuHeaderDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuHeader.__KONTUR_REACT_UI__ = 'MenuHeader';\nMenuHeader.__MENU_HEADER__ = true;\n\nexport { MenuHeader };\n\nexport const isMenuHeader = (child: React.ReactNode): child is React.ReactElement<MenuHeaderProps> => {\n return React.isValidElement<MenuHeaderProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_HEADER__')\n : false;\n};\n"]}
@@ -1,7 +1,11 @@
1
1
  import React, { AriaAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { CommonProps } from '../../internal/CommonWrapper';
4
- export declare type MenuItemSize = 'small' | 'medium' | 'large';
4
+ import { SizeProp } from '../../lib/types/props';
5
+ /**
6
+ * @deprecated use SizeProp
7
+ */
8
+ export declare type MenuItemSize = SizeProp;
5
9
  export declare type MenuItemState = null | 'hover' | 'selected' | void;
6
10
  export interface MenuItemProps extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>, Omit<CommonProps, 'children'> {
7
11
  /**
@@ -27,7 +31,7 @@ export interface MenuItemProps extends Pick<AriaAttributes, 'aria-describedby' |
27
31
  /**
28
32
  * Размер
29
33
  */
30
- size?: MenuItemSize;
34
+ size?: SizeProp;
31
35
  /**
32
36
  * @ignore
33
37
  */
@@ -2,6 +2,7 @@
2
2
 
3
3
  var _react = _interopRequireDefault(require("react"));
4
4
  var _propTypes = _interopRequireDefault(require("prop-types"));
5
+ var _globalObject = require("@skbkontur/global-object");
5
6
 
6
7
 
7
8
  var _utils = require("../../lib/utils");
@@ -11,6 +12,7 @@ var _CommonWrapper = require("../../internal/CommonWrapper");
11
12
  var _Emotion = require("../../lib/theming/Emotion");
12
13
  var _rootNode = require("../../lib/rootNode");
13
14
 
15
+
14
16
  var _MenuItem = require("./MenuItem.styles");var _excluded = ["link", "comment", "icon", "loose", "state", "size", "_enableIconPadding", "component", "onMouseEnter", "onMouseLeave", "isMobile", "href", "disabled", "rel"];var _class, _class2, _temp;
15
17
 
16
18
 
@@ -89,6 +91,9 @@ var _MenuItem = require("./MenuItem.styles");var _excluded = ["link", "comment",
89
91
 
90
92
 
91
93
 
94
+
95
+
96
+
92
97
 
93
98
 
94
99
 
@@ -325,7 +330,7 @@ MenuItem = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/func
325
330
  }
326
331
 
327
332
  return 'button';
328
- };return _this;}var _proto = MenuItem.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.componentDidMount = function componentDidMount() {if (this.rootRef) {this.setState({ iconOffsetTop: window.getComputedStyle(this.rootRef).getPropertyValue('padding-top') });}};_proto.getRootSizeClassName = function getRootSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.rootLarge(this.theme);case 'medium':return _MenuItem.styles.rootMedium(this.theme);case 'small':default:return _MenuItem.styles.rootSmall(this.theme);}};_proto.getIconSizeClassName = function getIconSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.iconLarge(this.theme);case 'medium':return _MenuItem.styles.iconMedium(this.theme);case 'small':default:return _MenuItem.styles.iconSmall(this.theme);}};_proto.getWithIconSizeClassName = function getWithIconSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.withIconLarge(this.theme);case 'medium':return _MenuItem.styles.withIconMedium(this.theme);case 'small':default:return _MenuItem.styles.withIconSmall(this.theme);}};return MenuItem;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'MenuItem', _class2.__MENU_ITEM__ = true, _class2.propTypes = { comment: _propTypes.default.node, disabled: _propTypes.default.bool, href: _propTypes.default.string, icon: _propTypes.default.node, loose: _propTypes.default.bool, state: _propTypes.default.string, target: _propTypes.default.string, onClick: _propTypes.default.func, size: _propTypes.default.string }, _temp)) || _class;exports.MenuItem = MenuItem;
333
+ };return _this;}var _proto = MenuItem.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.componentDidMount = function componentDidMount() {if (this.rootRef && (0, _globalObject.isBrowser)(_globalObject.globalObject)) {this.setState({ iconOffsetTop: _globalObject.globalObject.getComputedStyle(this.rootRef).getPropertyValue('padding-top') });}};_proto.getRootSizeClassName = function getRootSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.rootLarge(this.theme);case 'medium':return _MenuItem.styles.rootMedium(this.theme);case 'small':default:return _MenuItem.styles.rootSmall(this.theme);}};_proto.getIconSizeClassName = function getIconSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.iconLarge(this.theme);case 'medium':return _MenuItem.styles.iconMedium(this.theme);case 'small':default:return _MenuItem.styles.iconSmall(this.theme);}};_proto.getWithIconSizeClassName = function getWithIconSizeClassName() {switch (this.props.size) {case 'large':return _MenuItem.styles.withIconLarge(this.theme);case 'medium':return _MenuItem.styles.withIconMedium(this.theme);case 'small':default:return _MenuItem.styles.withIconSmall(this.theme);}};return MenuItem;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'MenuItem', _class2.__MENU_ITEM__ = true, _class2.propTypes = { comment: _propTypes.default.node, disabled: _propTypes.default.bool, href: _propTypes.default.string, icon: _propTypes.default.node, loose: _propTypes.default.bool, state: _propTypes.default.string, target: _propTypes.default.string, onClick: _propTypes.default.func, size: _propTypes.default.string }, _temp)) || _class;exports.MenuItem = MenuItem;
329
334
 
330
335
 
331
336
  var isMenuItem = (0, _utils.isReactUIComponent)('MenuItem');exports.isMenuItem = isMenuItem;
@@ -1 +1 @@
1
- {"version":3,"sources":["MenuItem.tsx"],"names":["MenuItemDataTids","root","comment","MenuItem","rootNode","state","iconOffsetTop","mouseEntered","rootRef","renderMain","props","link","icon","loose","size","_enableIconPadding","component","onMouseEnter","onMouseLeave","isMobile","href","disabled","rel","rest","hover","iconElement","top","styles","theme","getIconSizeClassName","className","getRootSizeClassName","rootMobile","selected","getWithIconSizeClassName","Boolean","children","content","Component","getComponent","setRootRef","handleMouseEnterFix","handleMouseLeave","undefined","mobileContentWithIcon","commentHover","e","element","render","setRootNode","componentDidMount","setState","window","getComputedStyle","getPropertyValue","rootLarge","rootMedium","rootSmall","iconLarge","iconMedium","iconSmall","withIconLarge","withIconMedium","withIconSmall","React","__KONTUR_REACT_UI__","__MENU_ITEM__","propTypes","PropTypes","node","bool","string","target","onClick","func","isMenuItem"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { isExternalLink, isFunction, isNonNullable, isReactUIComponent } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './MenuItem.styles';\n\nexport type MenuItemSize = 'small' | 'medium' | 'large';\n\nexport type MenuItemState = null | 'hover' | 'selected' | void;\n\nexport interface MenuItemProps\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Omit<CommonProps, 'children'> {\n /**\n * @ignore\n */\n _enableIconPadding?: boolean;\n /**\n * Добавляет описание для элемента меню.\n */\n comment?: React.ReactNode;\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * Добавляет элементу меню иконку.\n */\n icon?: React.ReactElement<any>;\n /**\n * Меняет цвет текста на синий.\n */\n link?: boolean;\n /**\n * Размер\n */\n size?: MenuItemSize;\n /**\n * @ignore\n */\n loose?: boolean;\n /**\n * @ignore\n */\n state?: MenuItemState;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /**\n * HTML-событие `mouseenter`.\n */\n onMouseEnter?: React.MouseEventHandler;\n /**\n * HTML-событие `mouseleave`.\n */\n onMouseLeave?: React.MouseEventHandler;\n children?: React.ReactNode | ((state: MenuItemState) => React.ReactNode);\n /**\n * HTML-атрибут `target`.\n */\n target?: React.AnchorHTMLAttributes<HTMLAnchorElement>['target'];\n /**\n * HTML-атрибут `title`.\n */\n title?: React.AnchorHTMLAttributes<HTMLAnchorElement>['title'];\n /**\n * HTML-атрибут `href`.\n */\n href?: React.AnchorHTMLAttributes<HTMLAnchorElement>['href'];\n /**\n * HTML-атрибут `rel`.\n *\n * Для внешних ссылок аттрибут rel по умолчанию равен \"noopener noreferrer\"\n */\n rel?: React.AnchorHTMLAttributes<HTMLAnchorElement>['rel'];\n /**\n * Заменяет корневой элемент, на компонент переданный в проп.\n *\n * По умолчанию корневой элемент рендерится как `button`. <br />Если передан `href`, то вместо `button` рендерится `a`.\n */\n component?: React.ComponentType<any>;\n\n isMobile?: boolean;\n}\n\nexport const MenuItemDataTids = {\n root: 'MenuItem__root',\n comment: 'MenuItem__comment',\n} as const;\n\n/**\n *\n * `MenuItem` - это вложенный компонент, задающий базовые стили для элемента меню и позволяющий навигироваться по элементам меню с помощью клавиатуры.\n *\n * Сущности в которых может быть использован `MenuItem`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\n@rootNode\nexport class MenuItem extends React.Component<MenuItemProps> {\n public static __KONTUR_REACT_UI__ = 'MenuItem';\n public static __MENU_ITEM__ = true;\n\n public static propTypes = {\n comment: PropTypes.node,\n\n disabled: PropTypes.bool,\n\n href: PropTypes.string,\n\n icon: PropTypes.node,\n\n loose: PropTypes.bool,\n\n state: PropTypes.string,\n\n target: PropTypes.string,\n\n onClick: PropTypes.func,\n\n size: PropTypes.string,\n };\n\n public state = {\n iconOffsetTop: 0,\n };\n\n private theme!: Theme;\n private mouseEntered = false;\n private setRootNode!: TSetRootNode;\n private rootRef: Nullable<HTMLElement> = null;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public componentDidMount() {\n if (this.rootRef) {\n this.setState({ iconOffsetTop: window.getComputedStyle(this.rootRef).getPropertyValue('padding-top') });\n }\n }\n\n private getRootSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getIconSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.iconLarge(this.theme);\n case 'medium':\n return styles.iconMedium(this.theme);\n case 'small':\n default:\n return styles.iconSmall(this.theme);\n }\n }\n\n private getWithIconSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.withIconLarge(this.theme);\n case 'medium':\n return styles.withIconMedium(this.theme);\n case 'small':\n default:\n return styles.withIconSmall(this.theme);\n }\n }\n\n private renderMain = (props: CommonWrapperRestProps<MenuItemProps>) => {\n const {\n link,\n comment,\n icon,\n loose,\n state,\n size,\n _enableIconPadding,\n component,\n onMouseEnter,\n onMouseLeave,\n isMobile,\n href,\n disabled,\n rel = this.props.href && isExternalLink(this.props.href) ? 'noopener noreferrer' : this.props.rel,\n ...rest\n } = props;\n\n const hover = state === 'hover' && !disabled;\n\n let iconElement = null;\n if (icon) {\n iconElement = (\n <div\n style={{ top: this.state.iconOffsetTop }}\n className={cx({\n [styles.icon(this.theme)]: true,\n [this.getIconSizeClassName()]: true,\n })}\n >\n {icon}\n </div>\n );\n }\n\n const className = cx({\n [styles.root(this.theme)]: true,\n [this.getRootSizeClassName()]: true,\n [styles.rootMobile(this.theme)]: isMobile,\n [styles.loose()]: !!loose,\n [styles.hover(this.theme)]: hover,\n [styles.selected(this.theme)]: state === 'selected',\n [styles.link(this.theme)]: !!link,\n [this.getWithIconSizeClassName()]: Boolean(iconElement) || !!_enableIconPadding,\n [styles.disabled(this.theme)]: !!this.props.disabled,\n });\n\n const { children } = this.props;\n\n let content = children;\n if (isFunction(children)) {\n content = children(this.props.state);\n }\n\n const Component = this.getComponent();\n\n return (\n <Component\n ref={this.setRootRef}\n data-tid={MenuItemDataTids.root}\n {...rest}\n disabled={disabled}\n state={state}\n onMouseOver={this.handleMouseEnterFix}\n onMouseLeave={this.handleMouseLeave}\n className={className}\n href={href}\n rel={href ? rel : undefined}\n tabIndex={-1}\n >\n {iconElement}\n <span\n className={cx({\n [styles.mobileContentWithIcon()]: isMobile && isNonNullable(icon),\n })}\n >\n {content}\n </span>\n {this.props.comment && (\n <div\n data-tid={MenuItemDataTids.comment}\n className={cx({\n [styles.comment(this.theme)]: true,\n [styles.commentHover(this.theme)]: hover,\n })}\n >\n {comment}\n </div>\n )}\n </Component>\n );\n };\n\n // https://github.com/facebook/react/issues/10109\n // Mouseenter event not triggered when cursor moves from disabled button\n private handleMouseEnterFix = (e: React.MouseEvent<HTMLElement>) => {\n if (!this.mouseEntered && this.props.onMouseEnter) {\n this.mouseEntered = true;\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: React.MouseEvent<HTMLElement>) => {\n this.mouseEntered = false;\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private setRootRef = (element: HTMLElement) => {\n this.rootRef = element;\n };\n\n private getComponent = () => {\n const { disabled, component, href } = this.props;\n\n if (component) {\n return component;\n }\n\n if (disabled) {\n return 'button';\n }\n\n if (href) {\n return 'a';\n }\n\n return 'button';\n };\n}\n\nexport const isMenuItem = isReactUIComponent('MenuItem');\n"]}
1
+ {"version":3,"sources":["MenuItem.tsx"],"names":["MenuItemDataTids","root","comment","MenuItem","rootNode","state","iconOffsetTop","mouseEntered","rootRef","renderMain","props","link","icon","loose","size","_enableIconPadding","component","onMouseEnter","onMouseLeave","isMobile","href","disabled","rel","rest","hover","iconElement","top","styles","theme","getIconSizeClassName","className","getRootSizeClassName","rootMobile","selected","getWithIconSizeClassName","Boolean","children","content","Component","getComponent","setRootRef","handleMouseEnterFix","handleMouseLeave","undefined","mobileContentWithIcon","commentHover","e","element","render","setRootNode","componentDidMount","globalObject","setState","getComputedStyle","getPropertyValue","rootLarge","rootMedium","rootSmall","iconLarge","iconMedium","iconSmall","withIconLarge","withIconMedium","withIconSmall","React","__KONTUR_REACT_UI__","__MENU_ITEM__","propTypes","PropTypes","node","bool","string","target","onClick","func","isMenuItem"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { isExternalLink, isFunction, isNonNullable, isReactUIComponent } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './MenuItem.styles';\n\n/**\n * @deprecated use SizeProp\n */\nexport type MenuItemSize = SizeProp;\n\nexport type MenuItemState = null | 'hover' | 'selected' | void;\n\nexport interface MenuItemProps\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Omit<CommonProps, 'children'> {\n /**\n * @ignore\n */\n _enableIconPadding?: boolean;\n /**\n * Добавляет описание для элемента меню.\n */\n comment?: React.ReactNode;\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * Добавляет элементу меню иконку.\n */\n icon?: React.ReactElement<any>;\n /**\n * Меняет цвет текста на синий.\n */\n link?: boolean;\n /**\n * Размер\n */\n size?: SizeProp;\n /**\n * @ignore\n */\n loose?: boolean;\n /**\n * @ignore\n */\n state?: MenuItemState;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n /**\n * HTML-событие `mouseenter`.\n */\n onMouseEnter?: React.MouseEventHandler;\n /**\n * HTML-событие `mouseleave`.\n */\n onMouseLeave?: React.MouseEventHandler;\n children?: React.ReactNode | ((state: MenuItemState) => React.ReactNode);\n /**\n * HTML-атрибут `target`.\n */\n target?: React.AnchorHTMLAttributes<HTMLAnchorElement>['target'];\n /**\n * HTML-атрибут `title`.\n */\n title?: React.AnchorHTMLAttributes<HTMLAnchorElement>['title'];\n /**\n * HTML-атрибут `href`.\n */\n href?: React.AnchorHTMLAttributes<HTMLAnchorElement>['href'];\n /**\n * HTML-атрибут `rel`.\n *\n * Для внешних ссылок аттрибут rel по умолчанию равен \"noopener noreferrer\"\n */\n rel?: React.AnchorHTMLAttributes<HTMLAnchorElement>['rel'];\n /**\n * Заменяет корневой элемент, на компонент переданный в проп.\n *\n * По умолчанию корневой элемент рендерится как `button`. <br />Если передан `href`, то вместо `button` рендерится `a`.\n */\n component?: React.ComponentType<any>;\n\n isMobile?: boolean;\n}\n\nexport const MenuItemDataTids = {\n root: 'MenuItem__root',\n comment: 'MenuItem__comment',\n} as const;\n\n/**\n *\n * `MenuItem` - это вложенный компонент, задающий базовые стили для элемента меню и позволяющий навигироваться по элементам меню с помощью клавиатуры.\n *\n * Сущности в которых может быть использован `MenuItem`: [DropdownMenu](#/Components/DropdownMenu), [Kebab](#/Components/Kebab), [TooltipMenu](#/Components/TooltipMenu) и [Select](#/Components/Select).\n */\n@rootNode\nexport class MenuItem extends React.Component<MenuItemProps> {\n public static __KONTUR_REACT_UI__ = 'MenuItem';\n public static __MENU_ITEM__ = true;\n\n public static propTypes = {\n comment: PropTypes.node,\n\n disabled: PropTypes.bool,\n\n href: PropTypes.string,\n\n icon: PropTypes.node,\n\n loose: PropTypes.bool,\n\n state: PropTypes.string,\n\n target: PropTypes.string,\n\n onClick: PropTypes.func,\n\n size: PropTypes.string,\n };\n\n public state = {\n iconOffsetTop: 0,\n };\n\n private theme!: Theme;\n private mouseEntered = false;\n private setRootNode!: TSetRootNode;\n private rootRef: Nullable<HTMLElement> = null;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public componentDidMount() {\n if (this.rootRef && isBrowser(globalObject)) {\n this.setState({ iconOffsetTop: globalObject.getComputedStyle(this.rootRef).getPropertyValue('padding-top') });\n }\n }\n\n private getRootSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getIconSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.iconLarge(this.theme);\n case 'medium':\n return styles.iconMedium(this.theme);\n case 'small':\n default:\n return styles.iconSmall(this.theme);\n }\n }\n\n private getWithIconSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.withIconLarge(this.theme);\n case 'medium':\n return styles.withIconMedium(this.theme);\n case 'small':\n default:\n return styles.withIconSmall(this.theme);\n }\n }\n\n private renderMain = (props: CommonWrapperRestProps<MenuItemProps>) => {\n const {\n link,\n comment,\n icon,\n loose,\n state,\n size,\n _enableIconPadding,\n component,\n onMouseEnter,\n onMouseLeave,\n isMobile,\n href,\n disabled,\n rel = this.props.href && isExternalLink(this.props.href) ? 'noopener noreferrer' : this.props.rel,\n ...rest\n } = props;\n\n const hover = state === 'hover' && !disabled;\n\n let iconElement = null;\n if (icon) {\n iconElement = (\n <div\n style={{ top: this.state.iconOffsetTop }}\n className={cx({\n [styles.icon(this.theme)]: true,\n [this.getIconSizeClassName()]: true,\n })}\n >\n {icon}\n </div>\n );\n }\n\n const className = cx({\n [styles.root(this.theme)]: true,\n [this.getRootSizeClassName()]: true,\n [styles.rootMobile(this.theme)]: isMobile,\n [styles.loose()]: !!loose,\n [styles.hover(this.theme)]: hover,\n [styles.selected(this.theme)]: state === 'selected',\n [styles.link(this.theme)]: !!link,\n [this.getWithIconSizeClassName()]: Boolean(iconElement) || !!_enableIconPadding,\n [styles.disabled(this.theme)]: !!this.props.disabled,\n });\n\n const { children } = this.props;\n\n let content = children;\n if (isFunction(children)) {\n content = children(this.props.state);\n }\n\n const Component = this.getComponent();\n\n return (\n <Component\n ref={this.setRootRef}\n data-tid={MenuItemDataTids.root}\n {...rest}\n disabled={disabled}\n state={state}\n onMouseOver={this.handleMouseEnterFix}\n onMouseLeave={this.handleMouseLeave}\n className={className}\n href={href}\n rel={href ? rel : undefined}\n tabIndex={-1}\n >\n {iconElement}\n <span\n className={cx({\n [styles.mobileContentWithIcon()]: isMobile && isNonNullable(icon),\n })}\n >\n {content}\n </span>\n {this.props.comment && (\n <div\n data-tid={MenuItemDataTids.comment}\n className={cx({\n [styles.comment(this.theme)]: true,\n [styles.commentHover(this.theme)]: hover,\n })}\n >\n {comment}\n </div>\n )}\n </Component>\n );\n };\n\n // https://github.com/facebook/react/issues/10109\n // Mouseenter event not triggered when cursor moves from disabled button\n private handleMouseEnterFix = (e: React.MouseEvent<HTMLElement>) => {\n if (!this.mouseEntered && this.props.onMouseEnter) {\n this.mouseEntered = true;\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: React.MouseEvent<HTMLElement>) => {\n this.mouseEntered = false;\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private setRootRef = (element: HTMLElement) => {\n this.rootRef = element;\n };\n\n private getComponent = () => {\n const { disabled, component, href } = this.props;\n\n if (component) {\n return component;\n }\n\n if (disabled) {\n return 'button';\n }\n\n if (href) {\n return 'a';\n }\n\n return 'button';\n };\n}\n\nexport const isMenuItem = isReactUIComponent('MenuItem');\n"]}
@@ -0,0 +1,18 @@
1
+ import { Modal, ModalProps } from '../Modal';
2
+ import { MiniModalFooter } from './MiniModalFooter';
3
+ import { MiniModalHeader } from './MiniModalHeader';
4
+ import { MiniModalBody } from './MiniModalBody';
5
+ import { MiniModalIndent } from './MiniModalIndent';
6
+ export declare const MiniModalDataTids: {
7
+ readonly icon: "MiniModal__icon";
8
+ readonly title: "MiniModal__title";
9
+ readonly description: "MiniModal__description";
10
+ readonly actions: "MiniModal__actions";
11
+ readonly indent: "MiniModal__indent";
12
+ };
13
+ export declare const MiniModal: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<Modal, ModalProps> & {
14
+ Header: typeof MiniModalHeader;
15
+ Indent: typeof MiniModalIndent;
16
+ Footer: typeof MiniModalFooter;
17
+ Body: typeof MiniModalBody;
18
+ };
@@ -0,0 +1,47 @@
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.MiniModalDataTids = exports.MiniModal = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _react = _interopRequireWildcard(require("react"));
2
+
3
+ var _Modal = require("../Modal");
4
+ var _ThemeContext = require("../../lib/theming/ThemeContext");
5
+ var _forwardRefAndName = require("../../lib/forwardRefAndName");
6
+
7
+ var _getMiniModalTheme = require("./getMiniModalTheme");
8
+ var _MiniModalFooter = require("./MiniModalFooter");
9
+ var _MiniModalHeader = require("./MiniModalHeader");
10
+ var _MiniModalBody = require("./MiniModalBody");
11
+ var _MiniModalIndent = require("./MiniModalIndent");var _excluded = ["children", "theme"];function _getRequireWildcardCache(nodeInterop) {if (typeof WeakMap !== "function") return null;var cacheBabelInterop = new WeakMap();var cacheNodeInterop = new WeakMap();return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {return nodeInterop ? cacheNodeInterop : cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj, nodeInterop) {if (!nodeInterop && obj && obj.__esModule) {return obj;}if (obj === null || typeof obj !== "object" && typeof obj !== "function") {return { default: obj };}var cache = _getRequireWildcardCache(nodeInterop);if (cache && cache.has(obj)) {return cache.get(obj);}var newObj = {};var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;for (var key in obj) {if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;if (desc && (desc.get || desc.set)) {Object.defineProperty(newObj, key, desc);} else {newObj[key] = obj[key];}}}newObj.default = obj;if (cache) {cache.set(obj, newObj);}return newObj;}
12
+
13
+ var MiniModalDataTids = {
14
+ icon: 'MiniModal__icon',
15
+ title: 'MiniModal__title',
16
+ description: 'MiniModal__description',
17
+ actions: 'MiniModal__actions',
18
+ indent: 'MiniModal__indent' };exports.MiniModalDataTids = MiniModalDataTids;
19
+
20
+
21
+ var MiniModal = (0, _forwardRefAndName.forwardRefAndName)(
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+ 'MiniModal', function (_ref, ref) {var children = _ref.children,propsTheme = _ref.theme,rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
31
+ var contextTheme = (0, _react.useContext)(_ThemeContext.ThemeContext);
32
+
33
+ return /*#__PURE__*/(
34
+ _react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getMiniModalTheme.getMiniModalTheme)(contextTheme, propsTheme) }, /*#__PURE__*/
35
+ _react.default.createElement(_Modal.Modal, (0, _extends2.default)({ width: 400, noClose: true, ref: ref }, rest),
36
+ children)));
37
+
38
+
39
+
40
+ });exports.MiniModal = MiniModal;
41
+
42
+ MiniModal.__KONTUR_REACT_UI__ = 'MiniModal';
43
+
44
+ MiniModal.Header = _MiniModalHeader.MiniModalHeader;
45
+ MiniModal.Footer = _MiniModalFooter.MiniModalFooter;
46
+ MiniModal.Indent = _MiniModalIndent.MiniModalIndent;
47
+ MiniModal.Body = _MiniModalBody.MiniModalBody;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["MiniModal.tsx"],"names":["MiniModalDataTids","icon","title","description","actions","indent","MiniModal","ref","children","propsTheme","theme","rest","contextTheme","ThemeContext","__KONTUR_REACT_UI__","Header","MiniModalHeader","Footer","MiniModalFooter","Indent","MiniModalIndent","Body","MiniModalBody"],"mappings":"iYAAA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,oD;;AAEO,IAAMA,iBAAiB,GAAG;AAC/BC,EAAAA,IAAI,EAAE,iBADyB;AAE/BC,EAAAA,KAAK,EAAE,kBAFwB;AAG/BC,EAAAA,WAAW,EAAE,wBAHkB;AAI/BC,EAAAA,OAAO,EAAE,oBAJsB;AAK/BC,EAAAA,MAAM,EAAE,mBALuB,EAA1B,C;;;AAQA,IAAMC,SAAS,GAAG;;;;;;;;;AASvB,WATuB,EASV,gBAA2CC,GAA3C,EAAmD,KAAhDC,QAAgD,QAAhDA,QAAgD,CAA/BC,UAA+B,QAAtCC,KAAsC,CAAhBC,IAAgB;AAChE,MAAMC,YAAY,GAAG,uBAAWC,0BAAX,CAArB;;AAEA;AACE,iCAAC,0BAAD,CAAc,QAAd,IAAuB,KAAK,EAAE,0CAAkBD,YAAlB,EAAgCH,UAAhC,CAA9B;AACE,iCAAC,YAAD,2BAAO,KAAK,EAAE,GAAd,EAAmB,OAAO,MAA1B,EAA2B,GAAG,EAAEF,GAAhC,IAAyCI,IAAzC;AACGH,IAAAA,QADH,CADF,CADF;;;;AAOD,CAnBwB,CAAlB,C;;AAqBPF,SAAS,CAACQ,mBAAV,GAAgC,WAAhC;;AAEAR,SAAS,CAACS,MAAV,GAAmBC,gCAAnB;AACAV,SAAS,CAACW,MAAV,GAAmBC,gCAAnB;AACAZ,SAAS,CAACa,MAAV,GAAmBC,gCAAnB;AACAd,SAAS,CAACe,IAAV,GAAiBC,4BAAjB","sourcesContent":["import React, { useContext } from 'react';\n\nimport { Modal, ModalProps } from '../Modal';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nimport { getMiniModalTheme } from './getMiniModalTheme';\nimport { MiniModalFooter } from './MiniModalFooter';\nimport { MiniModalHeader } from './MiniModalHeader';\nimport { MiniModalBody } from './MiniModalBody';\nimport { MiniModalIndent } from './MiniModalIndent';\n\nexport const MiniModalDataTids = {\n icon: 'MiniModal__icon',\n title: 'MiniModal__title',\n description: 'MiniModal__description',\n actions: 'MiniModal__actions',\n indent: 'MiniModal__indent',\n} as const;\n\nexport const MiniModal = forwardRefAndName<\n Modal,\n ModalProps,\n {\n Header: typeof MiniModalHeader;\n Indent: typeof MiniModalIndent;\n Footer: typeof MiniModalFooter;\n Body: typeof MiniModalBody;\n }\n>('MiniModal', ({ children, theme: propsTheme, ...rest }, ref) => {\n const contextTheme = useContext(ThemeContext);\n\n return (\n <ThemeContext.Provider value={getMiniModalTheme(contextTheme, propsTheme)}>\n <Modal width={400} noClose ref={ref} {...rest}>\n {children}\n </Modal>\n </ThemeContext.Provider>\n );\n});\n\nMiniModal.__KONTUR_REACT_UI__ = 'MiniModal';\n\nMiniModal.Header = MiniModalHeader;\nMiniModal.Footer = MiniModalFooter;\nMiniModal.Indent = MiniModalIndent;\nMiniModal.Body = MiniModalBody;\n"]}