@skbkontur/react-ui 2.17.6 → 2.17.7-sidepage-header

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 (1099) hide show
  1. package/CHANGELOG.md +2194 -2183
  2. package/README.md +61 -61
  3. package/cjs/components/Autocomplete/Autocomplete.js +23 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Autocomplete/Autocomplete.md +7 -7
  6. package/cjs/components/Autocomplete/index.js.map +1 -1
  7. package/cjs/components/Button/Button.js +4 -4
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.md +89 -89
  10. package/cjs/components/Button/Button.mixins.js.map +1 -1
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Button/Corners.js.map +1 -1
  13. package/cjs/components/Button/index.js.map +1 -1
  14. package/cjs/components/Center/Center.js +3 -3
  15. package/cjs/components/Center/Center.js.map +1 -1
  16. package/cjs/components/Center/Center.md +5 -5
  17. package/cjs/components/Center/Center.styles.js.map +1 -1
  18. package/cjs/components/Center/index.js.map +1 -1
  19. package/cjs/components/Checkbox/Checkbox.js +9 -9
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/Checkbox/Checkbox.md +63 -63
  22. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  23. package/cjs/components/Checkbox/index.js.map +1 -1
  24. package/cjs/components/ComboBox/ComboBox.js +20 -20
  25. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  26. package/cjs/components/ComboBox/ComboBox.md +432 -432
  27. package/cjs/components/ComboBox/index.js.map +1 -1
  28. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  29. package/cjs/components/CurrencyInput/CurrencyInput.js +7 -7
  30. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  31. package/cjs/components/CurrencyInput/CurrencyInput.md +20 -20
  32. package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
  33. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
  34. package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
  35. package/cjs/components/CurrencyInput/SelectionHelper.js.map +1 -1
  36. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  37. package/cjs/components/CurrencyInput/index.js.map +1 -1
  38. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  39. package/cjs/components/CurrencyLabel/index.js.map +1 -1
  40. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  41. package/cjs/components/DateInput/DateFragmentsView.styles.js.map +1 -1
  42. package/cjs/components/DateInput/DateInput.js.map +1 -1
  43. package/cjs/components/DateInput/DateInput.md +104 -104
  44. package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
  45. package/cjs/components/DateInput/ViewDateInputValidateChecks.js.map +1 -1
  46. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
  47. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  48. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  49. package/cjs/components/DateInput/helpers/inputNumber.js.map +1 -1
  50. package/cjs/components/DateInput/index.js.map +1 -1
  51. package/cjs/components/DatePicker/DatePicker.js +15 -15
  52. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  53. package/cjs/components/DatePicker/DatePicker.md +310 -310
  54. package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
  55. package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
  56. package/cjs/components/DatePicker/Picker.js.map +1 -1
  57. package/cjs/components/DatePicker/Picker.styles.js.map +1 -1
  58. package/cjs/components/DatePicker/index.js.map +1 -1
  59. package/cjs/components/DatePicker/locale/index.js.map +1 -1
  60. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  61. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  62. package/cjs/components/Dropdown/Dropdown.js +24 -24
  63. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  64. package/cjs/components/Dropdown/Dropdown.md +12 -12
  65. package/cjs/components/Dropdown/index.js.map +1 -1
  66. package/cjs/components/DropdownMenu/DropdownMenu.js +2 -2
  67. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  68. package/cjs/components/DropdownMenu/DropdownMenu.md +73 -73
  69. package/cjs/components/DropdownMenu/index.js.map +1 -1
  70. package/cjs/components/Fias/Fias.js +2 -2
  71. package/cjs/components/Fias/Fias.js.map +1 -1
  72. package/cjs/components/Fias/Fias.md +451 -451
  73. package/cjs/components/Fias/Fias.styles.js.map +1 -1
  74. package/cjs/components/Fias/FiasModal.js.map +1 -1
  75. package/cjs/components/Fias/FiasSearch/FiasSearch.js +2 -2
  76. package/cjs/components/Fias/FiasSearch/FiasSearch.js.map +1 -1
  77. package/cjs/components/Fias/FiasSearch/FiasSearch.md +78 -78
  78. package/cjs/components/Fias/Form/FiasComboBox.js.map +1 -1
  79. package/cjs/components/Fias/Form/FiasCountrySelector.js.map +1 -1
  80. package/cjs/components/Fias/Form/FiasForm.js.map +1 -1
  81. package/cjs/components/Fias/Form/FiasForm.styles.js.map +1 -1
  82. package/cjs/components/Fias/api/FiasAPI.js.map +1 -1
  83. package/cjs/components/Fias/api/FiasAPIResultFactory.js.map +1 -1
  84. package/cjs/components/Fias/api/FiasMockAPI.js.map +1 -1
  85. package/cjs/components/Fias/api/data.json +285 -285
  86. package/cjs/components/Fias/constants/abbreviations.js.map +1 -1
  87. package/cjs/components/Fias/index.js.map +1 -1
  88. package/cjs/components/Fias/locale/index.js.map +1 -1
  89. package/cjs/components/Fias/locale/locales/ru.js.map +1 -1
  90. package/cjs/components/Fias/logger/FiasLogger.js.map +1 -1
  91. package/cjs/components/Fias/models/FiasAddress.js.map +1 -1
  92. package/cjs/components/Fias/models/FiasAddressElement.js.map +1 -1
  93. package/cjs/components/Fias/models/FiasData.js.map +1 -1
  94. package/cjs/components/Fias/types.js.map +1 -1
  95. package/cjs/components/FxInput/FxInput.js.map +1 -1
  96. package/cjs/components/FxInput/FxInput.md +13 -13
  97. package/cjs/components/FxInput/index.js.map +1 -1
  98. package/cjs/components/Gapped/Gapped.js +8 -8
  99. package/cjs/components/Gapped/Gapped.js.map +1 -1
  100. package/cjs/components/Gapped/index.js.map +1 -1
  101. package/cjs/components/Group/Group.js.map +1 -1
  102. package/cjs/components/Group/Group.md +26 -26
  103. package/cjs/components/Group/Group.styles.js.map +1 -1
  104. package/cjs/components/Group/index.js.map +1 -1
  105. package/cjs/components/Hint/Hint.js.map +1 -1
  106. package/cjs/components/Hint/Hint.md +3 -3
  107. package/cjs/components/Hint/Hint.styles.js.map +1 -1
  108. package/cjs/components/Hint/index.js.map +1 -1
  109. package/cjs/components/Input/Input.js +13 -13
  110. package/cjs/components/Input/Input.js.map +1 -1
  111. package/cjs/components/Input/Input.styles.js.map +1 -1
  112. package/cjs/components/Input/index.js.map +1 -1
  113. package/cjs/components/Kebab/Kebab.js +6 -6
  114. package/cjs/components/Kebab/Kebab.js.map +1 -1
  115. package/cjs/components/Kebab/Kebab.md +45 -45
  116. package/cjs/components/Kebab/Kebab.styles.js.map +1 -1
  117. package/cjs/components/Kebab/__stories__/Kebab.items.js.map +1 -1
  118. package/cjs/components/Kebab/index.js.map +1 -1
  119. package/cjs/components/Link/Link.js +5 -5
  120. package/cjs/components/Link/Link.js.map +1 -1
  121. package/cjs/components/Link/Link.md +11 -11
  122. package/cjs/components/Link/Link.mixins.js.map +1 -1
  123. package/cjs/components/Link/Link.styles.js.map +1 -1
  124. package/cjs/components/Link/index.js.map +1 -1
  125. package/cjs/components/Loader/Loader.js +20 -20
  126. package/cjs/components/Loader/Loader.js.map +1 -1
  127. package/cjs/components/Loader/Loader.md +25 -25
  128. package/cjs/components/Loader/Loader.styles.js.map +1 -1
  129. package/cjs/components/Loader/__stories__/LoaderAndButton.js.map +1 -1
  130. package/cjs/components/Loader/index.js.map +1 -1
  131. package/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
  132. package/cjs/components/LocaleProvider/index.js.map +1 -1
  133. package/cjs/components/Logotype/Logotype.js +2 -2
  134. package/cjs/components/Logotype/Logotype.js.map +1 -1
  135. package/cjs/components/Logotype/Logotype.md +33 -33
  136. package/cjs/components/Logotype/Logotype.styles.js.map +1 -1
  137. package/cjs/components/Logotype/ProductWidget.js.map +1 -1
  138. package/cjs/components/Logotype/index.js.map +1 -1
  139. package/cjs/components/Logotype/locale/index.js.map +1 -1
  140. package/cjs/components/Logotype/locale/locales/en.js.map +1 -1
  141. package/cjs/components/Logotype/locale/locales/ru.js.map +1 -1
  142. package/cjs/components/MenuHeader/MenuHeader.js +2 -2
  143. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  144. package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  145. package/cjs/components/MenuHeader/index.js.map +1 -1
  146. package/cjs/components/MenuItem/MenuItem.js +2 -2
  147. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  148. package/cjs/components/MenuItem/MenuItem.md +7 -7
  149. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  150. package/cjs/components/MenuItem/index.js.map +1 -1
  151. package/cjs/components/MenuSeparator/MenuSeparator.js +2 -2
  152. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  153. package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
  154. package/cjs/components/MenuSeparator/index.js.map +1 -1
  155. package/cjs/components/Modal/Modal.js +13 -13
  156. package/cjs/components/Modal/Modal.js.map +1 -1
  157. package/cjs/components/Modal/Modal.md +37 -37
  158. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  159. package/cjs/components/Modal/ModalBody.js +4 -4
  160. package/cjs/components/Modal/ModalBody.js.map +1 -1
  161. package/cjs/components/Modal/ModalClose.js.map +1 -1
  162. package/cjs/components/Modal/ModalContext.js.map +1 -1
  163. package/cjs/components/Modal/ModalFooter.js +4 -4
  164. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  165. package/cjs/components/Modal/ModalHeader.js +4 -4
  166. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  167. package/cjs/components/Modal/helpers.js.map +1 -1
  168. package/cjs/components/Modal/index.js.map +1 -1
  169. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  170. package/cjs/components/Paging/Paging.js +10 -10
  171. package/cjs/components/Paging/Paging.js.map +1 -1
  172. package/cjs/components/Paging/Paging.md +43 -43
  173. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  174. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  175. package/cjs/components/Paging/index.js.map +1 -1
  176. package/cjs/components/Paging/locale/index.js.map +1 -1
  177. package/cjs/components/Paging/locale/locales/en.js.map +1 -1
  178. package/cjs/components/Paging/locale/locales/ru.js.map +1 -1
  179. package/cjs/components/PasswordInput/PasswordInput.js +6 -6
  180. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  181. package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  182. package/cjs/components/PasswordInput/index.js.map +1 -1
  183. package/cjs/components/Radio/Radio.js +4 -4
  184. package/cjs/components/Radio/Radio.js.map +1 -1
  185. package/cjs/components/Radio/Radio.md +14 -14
  186. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  187. package/cjs/components/Radio/index.js.map +1 -1
  188. package/cjs/components/RadioGroup/Prevent.js.map +1 -1
  189. package/cjs/components/RadioGroup/RadioGroup.js +46 -46
  190. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  191. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  192. package/cjs/components/RadioGroup/index.js.map +1 -1
  193. package/cjs/components/ScrollContainer/ScrollContainer.js +6 -6
  194. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  195. package/cjs/components/ScrollContainer/ScrollContainer.md +94 -94
  196. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  197. package/cjs/components/ScrollContainer/index.js.map +1 -1
  198. package/cjs/components/Select/Item.js.map +1 -1
  199. package/cjs/components/Select/Select.js +2 -2
  200. package/cjs/components/Select/Select.js.map +1 -1
  201. package/cjs/components/Select/Select.md +23 -23
  202. package/cjs/components/Select/Select.styles.js.map +1 -1
  203. package/cjs/components/Select/index.js.map +1 -1
  204. package/cjs/components/Select/locale/index.js.map +1 -1
  205. package/cjs/components/Select/locale/locales/en.js.map +1 -1
  206. package/cjs/components/Select/locale/locales/ru.js.map +1 -1
  207. package/cjs/components/Select/selectTheme.js.map +1 -1
  208. package/cjs/components/SidePage/SidePage.d.ts +2 -0
  209. package/cjs/components/SidePage/SidePage.js +21 -16
  210. package/cjs/components/SidePage/SidePage.js.map +1 -1
  211. package/cjs/components/SidePage/SidePage.md +48 -48
  212. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  213. package/cjs/components/SidePage/SidePageBody.js +4 -4
  214. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  215. package/cjs/components/SidePage/SidePageContainer.js +4 -4
  216. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  217. package/cjs/components/SidePage/SidePageContext.d.ts +2 -0
  218. package/cjs/components/SidePage/SidePageContext.js +3 -0
  219. package/cjs/components/SidePage/SidePageContext.js.map +1 -1
  220. package/cjs/components/SidePage/SidePageFooter.js +4 -4
  221. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  222. package/cjs/components/SidePage/SidePageHeader.d.ts +5 -0
  223. package/cjs/components/SidePage/SidePageHeader.js +24 -7
  224. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  225. package/cjs/components/SidePage/helpers.js.map +1 -1
  226. package/cjs/components/SidePage/index.js.map +1 -1
  227. package/cjs/components/Spinner/Spinner.js +16 -16
  228. package/cjs/components/Spinner/Spinner.js.map +1 -1
  229. package/cjs/components/Spinner/Spinner.md +34 -34
  230. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  231. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  232. package/cjs/components/Spinner/index.js.map +1 -1
  233. package/cjs/components/Spinner/locale/index.js.map +1 -1
  234. package/cjs/components/Spinner/locale/locales/en.js.map +1 -1
  235. package/cjs/components/Spinner/locale/locales/ru.js.map +1 -1
  236. package/cjs/components/Sticky/Sticky.d.ts +1 -1
  237. package/cjs/components/Sticky/Sticky.js +4 -4
  238. package/cjs/components/Sticky/Sticky.js.map +1 -1
  239. package/cjs/components/Sticky/Sticky.md +27 -27
  240. package/cjs/components/Sticky/Sticky.styles.js.map +1 -1
  241. package/cjs/components/Sticky/index.js.map +1 -1
  242. package/cjs/components/Switcher/Switcher.js.map +1 -1
  243. package/cjs/components/Switcher/Switcher.md +10 -10
  244. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  245. package/cjs/components/Switcher/index.js.map +1 -1
  246. package/cjs/components/Switcher/switcherTheme.js.map +1 -1
  247. package/cjs/components/Tabs/Indicator.js.map +1 -1
  248. package/cjs/components/Tabs/Indicator.styles.js.map +1 -1
  249. package/cjs/components/Tabs/Tab.js +14 -14
  250. package/cjs/components/Tabs/Tab.js.map +1 -1
  251. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  252. package/cjs/components/Tabs/Tabs.js +4 -4
  253. package/cjs/components/Tabs/Tabs.js.map +1 -1
  254. package/cjs/components/Tabs/Tabs.md +36 -36
  255. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  256. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  257. package/cjs/components/Tabs/index.js.map +1 -1
  258. package/cjs/components/Textarea/Textarea.js +12 -12
  259. package/cjs/components/Textarea/Textarea.js.map +1 -1
  260. package/cjs/components/Textarea/Textarea.md +25 -25
  261. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  262. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  263. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  264. package/cjs/components/Textarea/index.js.map +1 -1
  265. package/cjs/components/ThemeConsumer/ThemeConsumer.js.map +1 -1
  266. package/cjs/components/ThemeConsumer/index.js.map +1 -1
  267. package/cjs/components/ThemeProvider/ThemeProvider.js.map +1 -1
  268. package/cjs/components/ThemeProvider/index.js.map +1 -1
  269. package/cjs/components/Toast/Toast.js +19 -19
  270. package/cjs/components/Toast/Toast.js.map +1 -1
  271. package/cjs/components/Toast/Toast.md +41 -41
  272. package/cjs/components/Toast/Toast.styles.js.map +1 -1
  273. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  274. package/cjs/components/Toast/ToastView.js +4 -4
  275. package/cjs/components/Toast/ToastView.js.map +1 -1
  276. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  277. package/cjs/components/Toast/index.js.map +1 -1
  278. package/cjs/components/Toggle/Toggle.js +2 -2
  279. package/cjs/components/Toggle/Toggle.js.map +1 -1
  280. package/cjs/components/Toggle/Toggle.md +24 -24
  281. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  282. package/cjs/components/Toggle/index.js.map +1 -1
  283. package/cjs/components/Token/Token.js.map +1 -1
  284. package/cjs/components/Token/Token.styles.js.map +1 -1
  285. package/cjs/components/Token/index.js.map +1 -1
  286. package/cjs/components/TokenInput/TextWidthHelper.js +3 -3
  287. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  288. package/cjs/components/TokenInput/TokenInput.js +17 -17
  289. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  290. package/cjs/components/TokenInput/TokenInput.md +77 -77
  291. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  292. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  293. package/cjs/components/TokenInput/TokenInputReducer.js.map +1 -1
  294. package/cjs/components/TokenInput/index.js.map +1 -1
  295. package/cjs/components/TokenInput/locale/index.js.map +1 -1
  296. package/cjs/components/TokenInput/locale/locales/en.js.map +1 -1
  297. package/cjs/components/TokenInput/locale/locales/ru.js.map +1 -1
  298. package/cjs/components/Tooltip/Tooltip.js +8 -8
  299. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  300. package/cjs/components/Tooltip/Tooltip.md +301 -301
  301. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  302. package/cjs/components/Tooltip/index.js.map +1 -1
  303. package/cjs/components/TooltipMenu/TooltipMenu.js +7 -7
  304. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  305. package/cjs/components/TooltipMenu/TooltipMenu.md +115 -115
  306. package/cjs/components/TooltipMenu/index.js.map +1 -1
  307. package/cjs/components/TopBar/TopBar.js +38 -38
  308. package/cjs/components/TopBar/TopBar.js.map +1 -1
  309. package/cjs/components/TopBar/TopBar.md +111 -111
  310. package/cjs/components/TopBar/TopBar.styles.js.map +1 -1
  311. package/cjs/components/TopBar/TopBarButtonItem.js +4 -4
  312. package/cjs/components/TopBar/TopBarButtonItem.js.map +1 -1
  313. package/cjs/components/TopBar/TopBarDivider.js +4 -4
  314. package/cjs/components/TopBar/TopBarDivider.js.map +1 -1
  315. package/cjs/components/TopBar/TopBarDropdown.js +4 -4
  316. package/cjs/components/TopBar/TopBarDropdown.js.map +1 -1
  317. package/cjs/components/TopBar/TopBarEnd.js +4 -4
  318. package/cjs/components/TopBar/TopBarEnd.js.map +1 -1
  319. package/cjs/components/TopBar/TopBarItem.js +4 -4
  320. package/cjs/components/TopBar/TopBarItem.js.map +1 -1
  321. package/cjs/components/TopBar/TopBarLogout.js +4 -4
  322. package/cjs/components/TopBar/TopBarLogout.js.map +1 -1
  323. package/cjs/components/TopBar/TopBarOrganizations.js +4 -4
  324. package/cjs/components/TopBar/TopBarOrganizations.js.map +1 -1
  325. package/cjs/components/TopBar/TopBarStart.js +4 -4
  326. package/cjs/components/TopBar/TopBarStart.js.map +1 -1
  327. package/cjs/components/TopBar/TopBarUser.js +6 -6
  328. package/cjs/components/TopBar/TopBarUser.js.map +1 -1
  329. package/cjs/components/TopBar/index.js.map +1 -1
  330. package/cjs/components/TopBar/locale/index.js.map +1 -1
  331. package/cjs/components/TopBar/locale/locales/en.js.map +1 -1
  332. package/cjs/components/TopBar/locale/locales/ru.js.map +1 -1
  333. package/cjs/index.js.map +1 -1
  334. package/cjs/internal/BGRuler.js +5 -5
  335. package/cjs/internal/BGRuler.js.map +1 -1
  336. package/cjs/internal/Calendar/Calendar.js +3 -3
  337. package/cjs/internal/Calendar/Calendar.js.map +1 -1
  338. package/cjs/internal/Calendar/Calendar.styles.js.map +1 -1
  339. package/cjs/internal/Calendar/CalendarDateShape.js.map +1 -1
  340. package/cjs/internal/Calendar/CalendarScrollEvents.js.map +1 -1
  341. package/cjs/internal/Calendar/CalendarUtils.js.map +1 -1
  342. package/cjs/internal/Calendar/DayCellView.js.map +1 -1
  343. package/cjs/internal/Calendar/DayCellView.styles.js.map +1 -1
  344. package/cjs/internal/Calendar/DayCellViewModel.js.map +1 -1
  345. package/cjs/internal/Calendar/Month.js.map +1 -1
  346. package/cjs/internal/Calendar/MonthView.js.map +1 -1
  347. package/cjs/internal/Calendar/MonthView.styles.js.map +1 -1
  348. package/cjs/internal/Calendar/MonthViewModel.js.map +1 -1
  349. package/cjs/internal/Calendar/config.js.map +1 -1
  350. package/cjs/internal/Calendar/index.js.map +1 -1
  351. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  352. package/cjs/internal/CommonWrapper/index.js.map +1 -1
  353. package/cjs/internal/ComponentCombinator.js.map +1 -1
  354. package/cjs/internal/ComponentTable.js.map +1 -1
  355. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  356. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  357. package/cjs/internal/CustomComboBox/CustomComboBox.js +10 -10
  358. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  359. package/cjs/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
  360. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  361. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
  362. package/cjs/internal/CustomComboBox/index.js.map +1 -1
  363. package/cjs/internal/CustomComboBox/locale/index.js.map +1 -1
  364. package/cjs/internal/CustomComboBox/locale/locales/en.js.map +1 -1
  365. package/cjs/internal/CustomComboBox/locale/locales/ru.js.map +1 -1
  366. package/cjs/internal/DateSelect/DateSelect.js +2 -2
  367. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  368. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  369. package/cjs/internal/DateSelect/index.js.map +1 -1
  370. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  371. package/cjs/internal/DropdownContainer/index.js.map +1 -1
  372. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  373. package/cjs/internal/FocusTrap/index.js.map +1 -1
  374. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  375. package/cjs/internal/HideBodyVerticalScroll/index.js.map +1 -1
  376. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  377. package/cjs/internal/IgnoreLayerClick/index.js.map +1 -1
  378. package/cjs/internal/InputLikeText/HiddenInput.js +4 -4
  379. package/cjs/internal/InputLikeText/HiddenInput.js.map +1 -1
  380. package/cjs/internal/InputLikeText/InputLikeText.js +6 -6
  381. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  382. package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
  383. package/cjs/internal/InputLikeText/index.js.map +1 -1
  384. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  385. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  386. package/cjs/internal/InternalMenu/index.js.map +1 -1
  387. package/cjs/internal/InternalMenu/isActiveElement.js.map +1 -1
  388. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js +6 -6
  389. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  390. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
  391. package/cjs/internal/MaskCharLowLine/index.js.map +1 -1
  392. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  393. package/cjs/internal/MaskedInput/MaskedInput.styles.js.map +1 -1
  394. package/cjs/internal/MaskedInput/index.js.map +1 -1
  395. package/cjs/internal/Menu/Menu.js +10 -10
  396. package/cjs/internal/Menu/Menu.js.map +1 -1
  397. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  398. package/cjs/internal/Menu/index.js.map +1 -1
  399. package/cjs/internal/Menu/isActiveElement.js.map +1 -1
  400. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  401. package/cjs/internal/Popup/Popup.js +31 -31
  402. package/cjs/internal/Popup/Popup.js.map +1 -1
  403. package/cjs/internal/Popup/Popup.styles.js.map +1 -1
  404. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  405. package/cjs/internal/Popup/PopupPin.js +16 -16
  406. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  407. package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
  408. package/cjs/internal/Popup/index.js.map +1 -1
  409. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  410. package/cjs/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
  411. package/cjs/internal/PopupMenu/PopupMenuPositions.js.map +1 -1
  412. package/cjs/internal/PopupMenu/index.js.map +1 -1
  413. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  414. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  415. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  416. package/cjs/internal/RenderContainer/index.js.map +1 -1
  417. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  418. package/cjs/internal/RenderLayer/index.js.map +1 -1
  419. package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  420. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
  421. package/cjs/internal/ResizeDetector/index.js.map +1 -1
  422. package/cjs/internal/SpinnerOld/SpinnerOld.js +12 -12
  423. package/cjs/internal/SpinnerOld/SpinnerOld.js.map +1 -1
  424. package/cjs/internal/SpinnerOld/SpinnerOld.styles.js.map +1 -1
  425. package/cjs/internal/SpinnerOld/SpinnerOldCloudIcon.js.map +1 -1
  426. package/cjs/internal/SpinnerOld/index.js.map +1 -1
  427. package/cjs/internal/SpinnerOld/locale/index.js.map +1 -1
  428. package/cjs/internal/SpinnerOld/locale/locales/en.js.map +1 -1
  429. package/cjs/internal/SpinnerOld/locale/locales/ru.js.map +1 -1
  430. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js.map +1 -1
  431. package/cjs/internal/ThemePlayground/CheckboxPlayground.js.map +1 -1
  432. package/cjs/internal/ThemePlayground/ComponentsGroup.js.map +1 -1
  433. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js.map +1 -1
  434. package/cjs/internal/ThemePlayground/FxInputPlayground.js.map +1 -1
  435. package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
  436. package/cjs/internal/ThemePlayground/PagingPlayground.js.map +1 -1
  437. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  438. package/cjs/internal/ThemePlayground/Playground.md +7 -7
  439. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  440. package/cjs/internal/ThemePlayground/RadioPlayground.js.map +1 -1
  441. package/cjs/internal/ThemePlayground/SelectPlayground.js.map +1 -1
  442. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  443. package/cjs/internal/ThemePlayground/SwitcherPlayground.js.map +1 -1
  444. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  445. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  446. package/cjs/internal/ThemePlayground/TogglePlayground.js.map +1 -1
  447. package/cjs/internal/ThemePlayground/TokenInputPlayground.js.map +1 -1
  448. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  449. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  450. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  451. package/cjs/internal/ThemePlayground/helpers.js.map +1 -1
  452. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  453. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
  454. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  455. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  456. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  457. package/cjs/internal/ZIndex/index.js.map +1 -1
  458. package/cjs/internal/icons/16px/icon.styles.js.map +1 -1
  459. package/cjs/internal/icons/16px/index.js.map +1 -1
  460. package/cjs/internal/icons/20px/Icon.js +2 -2
  461. package/cjs/internal/icons/20px/Icon.js.map +1 -1
  462. package/cjs/internal/icons/20px/icon.styles.js.map +1 -1
  463. package/cjs/internal/icons/20px/index.js.map +1 -1
  464. package/cjs/internal/icons/20px/svg.js.map +1 -1
  465. package/cjs/internal/icons/CloudIcon.js.map +1 -1
  466. package/cjs/internal/icons/CrossIcon.js.map +1 -1
  467. package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
  468. package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
  469. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  470. package/cjs/internal/themes/FlatTheme.js.map +1 -1
  471. package/cjs/internal/themes/Theme8px.js.map +1 -1
  472. package/cjs/lib/ConditionalHandler.js +2 -2
  473. package/cjs/lib/ConditionalHandler.js.map +1 -1
  474. package/cjs/lib/LayoutEvents.js.map +1 -1
  475. package/cjs/lib/MockDate.js.map +1 -1
  476. package/cjs/lib/ModalStack.js +4 -4
  477. package/cjs/lib/ModalStack.js.map +1 -1
  478. package/cjs/lib/SSRSafe.js.map +1 -1
  479. package/cjs/lib/Supports.js.map +1 -1
  480. package/cjs/lib/Upgrades.js.map +1 -1
  481. package/cjs/lib/animation/index.js.map +1 -1
  482. package/cjs/lib/animation/presets.js.map +1 -1
  483. package/cjs/lib/animation/stepper.js.map +1 -1
  484. package/cjs/lib/client.js.map +1 -1
  485. package/cjs/lib/createPropsGetter.js.map +1 -1
  486. package/cjs/lib/currentEnvironment.js.map +1 -1
  487. package/cjs/lib/date/InternalDate.js +3 -3
  488. package/cjs/lib/date/InternalDate.js.map +1 -1
  489. package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
  490. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  491. package/cjs/lib/date/InternalDateSetter.js.map +1 -1
  492. package/cjs/lib/date/InternalDateTransformer.js.map +1 -1
  493. package/cjs/lib/date/InternalDateValidator.js.map +1 -1
  494. package/cjs/lib/date/constants.js.map +1 -1
  495. package/cjs/lib/date/localeSets.js.map +1 -1
  496. package/cjs/lib/date/types.js.map +1 -1
  497. package/cjs/lib/dom/getFocusableElements.js +33 -33
  498. package/cjs/lib/dom/getFocusableElements.js.map +1 -1
  499. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  500. package/cjs/lib/events/MouseDrag.js +26 -26
  501. package/cjs/lib/events/MouseDrag.js.map +1 -1
  502. package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
  503. package/cjs/lib/events/keyboard/KeyboardMapKeys.js.map +1 -1
  504. package/cjs/lib/events/keyboard/extractCode.js.map +1 -1
  505. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  506. package/cjs/lib/events/stopPropagation.js.map +1 -1
  507. package/cjs/lib/events/tabListener.js.map +1 -1
  508. package/cjs/lib/extractKeyboardAction.js.map +1 -1
  509. package/cjs/lib/filterProps.js.map +1 -1
  510. package/cjs/lib/listenFocusOutside.js +9 -9
  511. package/cjs/lib/listenFocusOutside.js.map +1 -1
  512. package/cjs/lib/locale/LOCALECONTEXT.md +246 -246
  513. package/cjs/lib/locale/LocaleContext.js.map +1 -1
  514. package/cjs/lib/locale/LocaleHelper.js.map +1 -1
  515. package/cjs/lib/locale/constants.js.map +1 -1
  516. package/cjs/lib/locale/decorators.js.map +1 -1
  517. package/cjs/lib/locale/index.js.map +1 -1
  518. package/cjs/lib/locale/types.js.map +1 -1
  519. package/cjs/lib/memo.js.map +1 -1
  520. package/cjs/lib/net/fetch.js.map +1 -1
  521. package/cjs/lib/polyfillPlaceholder.js.map +1 -1
  522. package/cjs/lib/reactGetTextContent.js.map +1 -1
  523. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  524. package/cjs/lib/styles/ColorFunctions.js.map +1 -1
  525. package/cjs/lib/styles/ColorHelpers.js.map +1 -1
  526. package/cjs/lib/styles/ColorKeywords.js.map +1 -1
  527. package/cjs/lib/styles/ColorObject.js.map +1 -1
  528. package/cjs/lib/styles/DimensionFunctions.js.map +1 -1
  529. package/cjs/lib/styles/HoldSelectionColor.js.map +1 -1
  530. package/cjs/lib/styles/Mixins.js.map +1 -1
  531. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  532. package/cjs/lib/theming/Emotion.js.map +1 -1
  533. package/cjs/lib/theming/ThemeContext.js.map +1 -1
  534. package/cjs/lib/theming/ThemeContext.md +248 -248
  535. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  536. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  537. package/cjs/lib/theming/themes/DefaultTheme.js.map +1 -1
  538. package/cjs/lib/theming/themes/DefaultTheme8px.js.map +1 -1
  539. package/cjs/lib/theming/themes/FlatTheme.js.map +1 -1
  540. package/cjs/lib/theming/themes/FlatTheme8px.js.map +1 -1
  541. package/cjs/lib/utils.js +2 -2
  542. package/cjs/lib/utils.js.map +1 -1
  543. package/cjs/typings/console.d.ts +3 -3
  544. package/cjs/typings/event-types.d.ts +4 -4
  545. package/cjs/typings/fonts.d.ts +12 -12
  546. package/cjs/typings/global.d.ts +6 -6
  547. package/cjs/typings/images.d.ts +1 -1
  548. package/cjs/typings/normalize-wheel.d.ts +5 -5
  549. package/cjs/typings/stylis-plugin-extra-scope.d.ts +3 -3
  550. package/cjs/typings/utility-types.d.ts +14 -14
  551. package/components/Autocomplete/Autocomplete/Autocomplete.js +23 -23
  552. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  553. package/components/Autocomplete/Autocomplete.md +7 -7
  554. package/components/Autocomplete/index/index.js.map +1 -1
  555. package/components/Button/Button/Button.js +4 -4
  556. package/components/Button/Button/Button.js.map +1 -1
  557. package/components/Button/Button.md +89 -89
  558. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  559. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  560. package/components/Button/Corners/Corners.js.map +1 -1
  561. package/components/Button/index/index.js.map +1 -1
  562. package/components/Center/Center/Center.js +3 -3
  563. package/components/Center/Center/Center.js.map +1 -1
  564. package/components/Center/Center.md +5 -5
  565. package/components/Center/Center.styles/Center.styles.js.map +1 -1
  566. package/components/Center/index/index.js.map +1 -1
  567. package/components/Checkbox/Checkbox/Checkbox.js +9 -9
  568. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  569. package/components/Checkbox/Checkbox.md +63 -63
  570. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  571. package/components/Checkbox/index/index.js.map +1 -1
  572. package/components/ComboBox/ComboBox/ComboBox.js +20 -20
  573. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  574. package/components/ComboBox/ComboBox.md +432 -432
  575. package/components/ComboBox/index/index.js.map +1 -1
  576. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  577. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +7 -7
  578. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  579. package/components/CurrencyInput/CurrencyInput.md +20 -20
  580. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
  581. package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js.map +1 -1
  582. package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
  583. package/components/CurrencyInput/SelectionHelper/SelectionHelper.js.map +1 -1
  584. package/components/CurrencyInput/constants/constants.js.map +1 -1
  585. package/components/CurrencyInput/index/index.js.map +1 -1
  586. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  587. package/components/CurrencyLabel/index/index.js.map +1 -1
  588. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  589. package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js.map +1 -1
  590. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  591. package/components/DateInput/DateInput.md +104 -104
  592. package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
  593. package/components/DateInput/ViewDateInputValidateChecks/ViewDateInputValidateChecks.js.map +1 -1
  594. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  595. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  596. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  597. package/components/DateInput/helpers/inputNumber/inputNumber.js.map +1 -1
  598. package/components/DateInput/index/index.js.map +1 -1
  599. package/components/DatePicker/DatePicker/DatePicker.js +15 -15
  600. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  601. package/components/DatePicker/DatePicker.md +310 -310
  602. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
  603. package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
  604. package/components/DatePicker/Picker/Picker.js.map +1 -1
  605. package/components/DatePicker/Picker.styles/Picker.styles.js.map +1 -1
  606. package/components/DatePicker/index/index.js.map +1 -1
  607. package/components/DatePicker/locale/index/index.js.map +1 -1
  608. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  609. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  610. package/components/Dropdown/Dropdown/Dropdown.js +24 -24
  611. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  612. package/components/Dropdown/Dropdown.md +12 -12
  613. package/components/Dropdown/index/index.js.map +1 -1
  614. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -2
  615. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  616. package/components/DropdownMenu/DropdownMenu.md +73 -73
  617. package/components/DropdownMenu/index/index.js.map +1 -1
  618. package/components/Fias/Fias/Fias.js +2 -2
  619. package/components/Fias/Fias/Fias.js.map +1 -1
  620. package/components/Fias/Fias.md +451 -451
  621. package/components/Fias/Fias.styles/Fias.styles.js.map +1 -1
  622. package/components/Fias/FiasModal/FiasModal.js.map +1 -1
  623. package/components/Fias/FiasSearch/FiasSearch/FiasSearch.js +2 -2
  624. package/components/Fias/FiasSearch/FiasSearch/FiasSearch.js.map +1 -1
  625. package/components/Fias/FiasSearch/FiasSearch.md +78 -78
  626. package/components/Fias/Form/FiasComboBox/FiasComboBox.js.map +1 -1
  627. package/components/Fias/Form/FiasCountrySelector/FiasCountrySelector.js.map +1 -1
  628. package/components/Fias/Form/FiasForm/FiasForm.js.map +1 -1
  629. package/components/Fias/Form/FiasForm.styles/FiasForm.styles.js.map +1 -1
  630. package/components/Fias/api/FiasAPI/FiasAPI.js.map +1 -1
  631. package/components/Fias/api/FiasAPIResultFactory/FiasAPIResultFactory.js.map +1 -1
  632. package/components/Fias/api/FiasMockAPI/FiasMockAPI.js.map +1 -1
  633. package/components/Fias/api/data.json +285 -285
  634. package/components/Fias/constants/abbreviations/abbreviations.js.map +1 -1
  635. package/components/Fias/index/index.js.map +1 -1
  636. package/components/Fias/locale/index/index.js.map +1 -1
  637. package/components/Fias/locale/locales/ru/ru.js.map +1 -1
  638. package/components/Fias/logger/FiasLogger/FiasLogger.js.map +1 -1
  639. package/components/Fias/models/FiasAddress/FiasAddress.js.map +1 -1
  640. package/components/Fias/models/FiasAddressElement/FiasAddressElement.js.map +1 -1
  641. package/components/Fias/models/FiasData/FiasData.js.map +1 -1
  642. package/components/Fias/types/types.js.map +1 -1
  643. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  644. package/components/FxInput/FxInput.md +13 -13
  645. package/components/FxInput/index/index.js.map +1 -1
  646. package/components/Gapped/Gapped/Gapped.js +8 -8
  647. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  648. package/components/Gapped/index/index.js.map +1 -1
  649. package/components/Group/Group/Group.js.map +1 -1
  650. package/components/Group/Group.md +26 -26
  651. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  652. package/components/Group/index/index.js.map +1 -1
  653. package/components/Hint/Hint/Hint.js.map +1 -1
  654. package/components/Hint/Hint.md +3 -3
  655. package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
  656. package/components/Hint/index/index.js.map +1 -1
  657. package/components/Input/Input/Input.js +13 -13
  658. package/components/Input/Input/Input.js.map +1 -1
  659. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  660. package/components/Input/index/index.js.map +1 -1
  661. package/components/Kebab/Kebab/Kebab.js +6 -6
  662. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  663. package/components/Kebab/Kebab.md +45 -45
  664. package/components/Kebab/Kebab.styles/Kebab.styles.js.map +1 -1
  665. package/components/Kebab/__stories__/Kebab.items/Kebab.items.js.map +1 -1
  666. package/components/Kebab/index/index.js.map +1 -1
  667. package/components/Link/Link/Link.js +5 -5
  668. package/components/Link/Link/Link.js.map +1 -1
  669. package/components/Link/Link.md +11 -11
  670. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  671. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  672. package/components/Link/index/index.js.map +1 -1
  673. package/components/Loader/Loader/Loader.js +20 -20
  674. package/components/Loader/Loader/Loader.js.map +1 -1
  675. package/components/Loader/Loader.md +25 -25
  676. package/components/Loader/Loader.styles/Loader.styles.js.map +1 -1
  677. package/components/Loader/__stories__/LoaderAndButton/LoaderAndButton.js.map +1 -1
  678. package/components/Loader/index/index.js.map +1 -1
  679. package/components/LocaleProvider/LocaleProvider/LocaleProvider.js.map +1 -1
  680. package/components/LocaleProvider/index/index.js.map +1 -1
  681. package/components/Logotype/Logotype/Logotype.js +2 -2
  682. package/components/Logotype/Logotype/Logotype.js.map +1 -1
  683. package/components/Logotype/Logotype.md +33 -33
  684. package/components/Logotype/Logotype.styles/Logotype.styles.js.map +1 -1
  685. package/components/Logotype/ProductWidget/ProductWidget.js.map +1 -1
  686. package/components/Logotype/index/index.js.map +1 -1
  687. package/components/Logotype/locale/index/index.js.map +1 -1
  688. package/components/Logotype/locale/locales/en/en.js.map +1 -1
  689. package/components/Logotype/locale/locales/ru/ru.js.map +1 -1
  690. package/components/MenuHeader/MenuHeader/MenuHeader.js +2 -2
  691. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  692. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
  693. package/components/MenuHeader/index/index.js.map +1 -1
  694. package/components/MenuItem/MenuItem/MenuItem.js +2 -2
  695. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  696. package/components/MenuItem/MenuItem.md +7 -7
  697. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  698. package/components/MenuItem/index/index.js.map +1 -1
  699. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +2 -2
  700. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  701. package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
  702. package/components/MenuSeparator/index/index.js.map +1 -1
  703. package/components/Modal/Modal/Modal.js +13 -13
  704. package/components/Modal/Modal/Modal.js.map +1 -1
  705. package/components/Modal/Modal.md +37 -37
  706. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  707. package/components/Modal/ModalBody/ModalBody.js +4 -4
  708. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  709. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  710. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  711. package/components/Modal/ModalFooter/ModalFooter.js +4 -4
  712. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  713. package/components/Modal/ModalHeader/ModalHeader.js +4 -4
  714. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  715. package/components/Modal/helpers/helpers.js.map +1 -1
  716. package/components/Modal/index/index.js.map +1 -1
  717. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  718. package/components/Paging/Paging/Paging.js +10 -10
  719. package/components/Paging/Paging/Paging.js.map +1 -1
  720. package/components/Paging/Paging.md +43 -43
  721. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  722. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  723. package/components/Paging/index/index.js.map +1 -1
  724. package/components/Paging/locale/index/index.js.map +1 -1
  725. package/components/Paging/locale/locales/en/en.js.map +1 -1
  726. package/components/Paging/locale/locales/ru/ru.js.map +1 -1
  727. package/components/PasswordInput/PasswordInput/PasswordInput.js +6 -6
  728. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  729. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
  730. package/components/PasswordInput/index/index.js.map +1 -1
  731. package/components/Radio/Radio/Radio.js +4 -4
  732. package/components/Radio/Radio/Radio.js.map +1 -1
  733. package/components/Radio/Radio.md +14 -14
  734. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  735. package/components/Radio/index/index.js.map +1 -1
  736. package/components/RadioGroup/Prevent/Prevent.js.map +1 -1
  737. package/components/RadioGroup/RadioGroup/RadioGroup.js +46 -46
  738. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  739. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  740. package/components/RadioGroup/index/index.js.map +1 -1
  741. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +6 -6
  742. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  743. package/components/ScrollContainer/ScrollContainer.md +94 -94
  744. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  745. package/components/ScrollContainer/index/index.js.map +1 -1
  746. package/components/Select/Item/Item.js.map +1 -1
  747. package/components/Select/Select/Select.js +2 -2
  748. package/components/Select/Select/Select.js.map +1 -1
  749. package/components/Select/Select.md +23 -23
  750. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  751. package/components/Select/index/index.js.map +1 -1
  752. package/components/Select/locale/index/index.js.map +1 -1
  753. package/components/Select/locale/locales/en/en.js.map +1 -1
  754. package/components/Select/locale/locales/ru/ru.js.map +1 -1
  755. package/components/Select/selectTheme/selectTheme.js.map +1 -1
  756. package/components/SidePage/SidePage/SidePage.js +22 -15
  757. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  758. package/components/SidePage/SidePage.d.ts +2 -0
  759. package/components/SidePage/SidePage.md +48 -48
  760. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  761. package/components/SidePage/SidePageBody/SidePageBody.js +4 -4
  762. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  763. package/components/SidePage/SidePageContainer/SidePageContainer.js +4 -4
  764. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  765. package/components/SidePage/SidePageContext/SidePageContext.js +3 -0
  766. package/components/SidePage/SidePageContext/SidePageContext.js.map +1 -1
  767. package/components/SidePage/SidePageContext.d.ts +2 -0
  768. package/components/SidePage/SidePageFooter/SidePageFooter.js +4 -4
  769. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  770. package/components/SidePage/SidePageHeader/SidePageHeader.js +23 -6
  771. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  772. package/components/SidePage/SidePageHeader.d.ts +5 -0
  773. package/components/SidePage/helpers/helpers.js.map +1 -1
  774. package/components/SidePage/index/index.js.map +1 -1
  775. package/components/Spinner/Spinner/Spinner.js +16 -16
  776. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  777. package/components/Spinner/Spinner.md +34 -34
  778. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  779. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  780. package/components/Spinner/index/index.js.map +1 -1
  781. package/components/Spinner/locale/index/index.js.map +1 -1
  782. package/components/Spinner/locale/locales/en/en.js.map +1 -1
  783. package/components/Spinner/locale/locales/ru/ru.js.map +1 -1
  784. package/components/Sticky/Sticky/Sticky.js +4 -4
  785. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  786. package/components/Sticky/Sticky.d.ts +1 -1
  787. package/components/Sticky/Sticky.md +27 -27
  788. package/components/Sticky/Sticky.styles/Sticky.styles.js.map +1 -1
  789. package/components/Sticky/index/index.js.map +1 -1
  790. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  791. package/components/Switcher/Switcher.md +10 -10
  792. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  793. package/components/Switcher/index/index.js.map +1 -1
  794. package/components/Switcher/switcherTheme/switcherTheme.js.map +1 -1
  795. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  796. package/components/Tabs/Indicator.styles/Indicator.styles.js.map +1 -1
  797. package/components/Tabs/Tab/Tab.js +14 -14
  798. package/components/Tabs/Tab/Tab.js.map +1 -1
  799. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  800. package/components/Tabs/Tabs/Tabs.js +4 -4
  801. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  802. package/components/Tabs/Tabs.md +36 -36
  803. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  804. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  805. package/components/Tabs/index/index.js.map +1 -1
  806. package/components/Textarea/Textarea/Textarea.js +12 -12
  807. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  808. package/components/Textarea/Textarea.md +25 -25
  809. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  810. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  811. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  812. package/components/Textarea/index/index.js.map +1 -1
  813. package/components/ThemeConsumer/ThemeConsumer/ThemeConsumer.js.map +1 -1
  814. package/components/ThemeConsumer/index/index.js.map +1 -1
  815. package/components/ThemeProvider/ThemeProvider/ThemeProvider.js.map +1 -1
  816. package/components/ThemeProvider/index/index.js.map +1 -1
  817. package/components/Toast/Toast/Toast.js +19 -19
  818. package/components/Toast/Toast/Toast.js.map +1 -1
  819. package/components/Toast/Toast.md +41 -41
  820. package/components/Toast/Toast.styles/Toast.styles.js.map +1 -1
  821. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  822. package/components/Toast/ToastView/ToastView.js +4 -4
  823. package/components/Toast/ToastView/ToastView.js.map +1 -1
  824. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  825. package/components/Toast/index/index.js.map +1 -1
  826. package/components/Toggle/Toggle/Toggle.js +2 -2
  827. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  828. package/components/Toggle/Toggle.md +24 -24
  829. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  830. package/components/Toggle/index/index.js.map +1 -1
  831. package/components/Token/Token/Token.js.map +1 -1
  832. package/components/Token/Token.styles/Token.styles.js.map +1 -1
  833. package/components/Token/index/index.js.map +1 -1
  834. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -3
  835. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  836. package/components/TokenInput/TokenInput/TokenInput.js +28 -17
  837. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  838. package/components/TokenInput/TokenInput.md +77 -77
  839. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  840. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  841. package/components/TokenInput/TokenInputReducer/TokenInputReducer.js.map +1 -1
  842. package/components/TokenInput/index/index.js.map +1 -1
  843. package/components/TokenInput/locale/index/index.js.map +1 -1
  844. package/components/TokenInput/locale/locales/en/en.js.map +1 -1
  845. package/components/TokenInput/locale/locales/ru/ru.js.map +1 -1
  846. package/components/Tooltip/Tooltip/Tooltip.js +8 -8
  847. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  848. package/components/Tooltip/Tooltip.md +301 -301
  849. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  850. package/components/Tooltip/index/index.js.map +1 -1
  851. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +7 -7
  852. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  853. package/components/TooltipMenu/TooltipMenu.md +115 -115
  854. package/components/TooltipMenu/index/index.js.map +1 -1
  855. package/components/TopBar/TopBar/TopBar.js +38 -38
  856. package/components/TopBar/TopBar/TopBar.js.map +1 -1
  857. package/components/TopBar/TopBar.md +111 -111
  858. package/components/TopBar/TopBar.styles/TopBar.styles.js.map +1 -1
  859. package/components/TopBar/TopBarButtonItem/TopBarButtonItem.js +4 -4
  860. package/components/TopBar/TopBarButtonItem/TopBarButtonItem.js.map +1 -1
  861. package/components/TopBar/TopBarDivider/TopBarDivider.js +4 -4
  862. package/components/TopBar/TopBarDivider/TopBarDivider.js.map +1 -1
  863. package/components/TopBar/TopBarDropdown/TopBarDropdown.js +4 -4
  864. package/components/TopBar/TopBarDropdown/TopBarDropdown.js.map +1 -1
  865. package/components/TopBar/TopBarEnd/TopBarEnd.js +4 -4
  866. package/components/TopBar/TopBarEnd/TopBarEnd.js.map +1 -1
  867. package/components/TopBar/TopBarItem/TopBarItem.js +4 -4
  868. package/components/TopBar/TopBarItem/TopBarItem.js.map +1 -1
  869. package/components/TopBar/TopBarLogout/TopBarLogout.js +4 -4
  870. package/components/TopBar/TopBarLogout/TopBarLogout.js.map +1 -1
  871. package/components/TopBar/TopBarOrganizations/TopBarOrganizations.js +4 -4
  872. package/components/TopBar/TopBarOrganizations/TopBarOrganizations.js.map +1 -1
  873. package/components/TopBar/TopBarStart/TopBarStart.js +4 -4
  874. package/components/TopBar/TopBarStart/TopBarStart.js.map +1 -1
  875. package/components/TopBar/TopBarUser/TopBarUser.js +6 -6
  876. package/components/TopBar/TopBarUser/TopBarUser.js.map +1 -1
  877. package/components/TopBar/index/index.js.map +1 -1
  878. package/components/TopBar/locale/index/index.js.map +1 -1
  879. package/components/TopBar/locale/locales/en/en.js.map +1 -1
  880. package/components/TopBar/locale/locales/ru/ru.js.map +1 -1
  881. package/index.js.map +1 -1
  882. package/internal/BGRuler/BGRuler.js +5 -5
  883. package/internal/BGRuler/BGRuler.js.map +1 -1
  884. package/internal/Calendar/Calendar/Calendar.js +3 -3
  885. package/internal/Calendar/Calendar/Calendar.js.map +1 -1
  886. package/internal/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
  887. package/internal/Calendar/CalendarDateShape/CalendarDateShape.js.map +1 -1
  888. package/internal/Calendar/CalendarScrollEvents/CalendarScrollEvents.js.map +1 -1
  889. package/internal/Calendar/CalendarUtils/CalendarUtils.js.map +1 -1
  890. package/internal/Calendar/DayCellView/DayCellView.js.map +1 -1
  891. package/internal/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  892. package/internal/Calendar/DayCellViewModel/DayCellViewModel.js.map +1 -1
  893. package/internal/Calendar/Month/Month.js.map +1 -1
  894. package/internal/Calendar/MonthView/MonthView.js.map +1 -1
  895. package/internal/Calendar/MonthView.styles/MonthView.styles.js.map +1 -1
  896. package/internal/Calendar/MonthViewModel/MonthViewModel.js.map +1 -1
  897. package/internal/Calendar/config/config.js.map +1 -1
  898. package/internal/Calendar/index/index.js.map +1 -1
  899. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  900. package/internal/CommonWrapper/index/index.js.map +1 -1
  901. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  902. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  903. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  904. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  905. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -10
  906. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  907. package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js.map +1 -1
  908. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  909. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
  910. package/internal/CustomComboBox/index/index.js.map +1 -1
  911. package/internal/CustomComboBox/locale/index/index.js.map +1 -1
  912. package/internal/CustomComboBox/locale/locales/en/en.js.map +1 -1
  913. package/internal/CustomComboBox/locale/locales/ru/ru.js.map +1 -1
  914. package/internal/DateSelect/DateSelect/DateSelect.js +2 -2
  915. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  916. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  917. package/internal/DateSelect/index/index.js.map +1 -1
  918. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  919. package/internal/DropdownContainer/index/index.js.map +1 -1
  920. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  921. package/internal/FocusTrap/index/index.js.map +1 -1
  922. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  923. package/internal/HideBodyVerticalScroll/index/index.js.map +1 -1
  924. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  925. package/internal/IgnoreLayerClick/index/index.js.map +1 -1
  926. package/internal/InputLikeText/HiddenInput/HiddenInput.js +4 -4
  927. package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +1 -1
  928. package/internal/InputLikeText/InputLikeText/InputLikeText.js +6 -6
  929. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  930. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
  931. package/internal/InputLikeText/index/index.js.map +1 -1
  932. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  933. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  934. package/internal/InternalMenu/index/index.js.map +1 -1
  935. package/internal/InternalMenu/isActiveElement/isActiveElement.js.map +1 -1
  936. package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js +6 -6
  937. package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  938. package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js.map +1 -1
  939. package/internal/MaskCharLowLine/index/index.js.map +1 -1
  940. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  941. package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +1 -1
  942. package/internal/MaskedInput/index/index.js.map +1 -1
  943. package/internal/Menu/Menu/Menu.js +10 -10
  944. package/internal/Menu/Menu/Menu.js.map +1 -1
  945. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  946. package/internal/Menu/index/index.js.map +1 -1
  947. package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
  948. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  949. package/internal/Popup/Popup/Popup.js +31 -31
  950. package/internal/Popup/Popup/Popup.js.map +1 -1
  951. package/internal/Popup/Popup.styles/Popup.styles.js.map +1 -1
  952. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  953. package/internal/Popup/PopupPin/PopupPin.js +16 -16
  954. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  955. package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
  956. package/internal/Popup/index/index.js.map +1 -1
  957. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  958. package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js.map +1 -1
  959. package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js.map +1 -1
  960. package/internal/PopupMenu/index/index.js.map +1 -1
  961. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  962. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  963. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  964. package/internal/RenderContainer/index/index.js.map +1 -1
  965. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  966. package/internal/RenderLayer/index/index.js.map +1 -1
  967. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
  968. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
  969. package/internal/ResizeDetector/index/index.js.map +1 -1
  970. package/internal/SpinnerOld/SpinnerOld/SpinnerOld.js +12 -12
  971. package/internal/SpinnerOld/SpinnerOld/SpinnerOld.js.map +1 -1
  972. package/internal/SpinnerOld/SpinnerOld.styles/SpinnerOld.styles.js.map +1 -1
  973. package/internal/SpinnerOld/SpinnerOldCloudIcon/SpinnerOldCloudIcon.js.map +1 -1
  974. package/internal/SpinnerOld/index/index.js.map +1 -1
  975. package/internal/SpinnerOld/locale/index/index.js.map +1 -1
  976. package/internal/SpinnerOld/locale/locales/en/en.js.map +1 -1
  977. package/internal/SpinnerOld/locale/locales/ru/ru.js.map +1 -1
  978. package/internal/ThemePlayground/AnotherInputsPlayground/AnotherInputsPlayground.js.map +1 -1
  979. package/internal/ThemePlayground/CheckboxPlayground/CheckboxPlayground.js.map +1 -1
  980. package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js.map +1 -1
  981. package/internal/ThemePlayground/CurrencyInputPlayground/CurrencyInputPlayground.js.map +1 -1
  982. package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js.map +1 -1
  983. package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
  984. package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js.map +1 -1
  985. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  986. package/internal/ThemePlayground/Playground.md +7 -7
  987. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  988. package/internal/ThemePlayground/RadioPlayground/RadioPlayground.js.map +1 -1
  989. package/internal/ThemePlayground/SelectPlayground/SelectPlayground.js.map +1 -1
  990. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  991. package/internal/ThemePlayground/SwitcherPlayground/SwitcherPlayground.js.map +1 -1
  992. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  993. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  994. package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js.map +1 -1
  995. package/internal/ThemePlayground/TokenInputPlayground/TokenInputPlayground.js.map +1 -1
  996. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  997. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  998. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  999. package/internal/ThemePlayground/helpers/helpers.js.map +1 -1
  1000. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  1001. package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
  1002. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  1003. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1004. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1005. package/internal/ZIndex/index/index.js.map +1 -1
  1006. package/internal/icons/16px/icon.styles/icon.styles.js.map +1 -1
  1007. package/internal/icons/16px/index/index.js.map +1 -1
  1008. package/internal/icons/20px/Icon/Icon.js +2 -2
  1009. package/internal/icons/20px/Icon/Icon.js.map +1 -1
  1010. package/internal/icons/20px/icon.styles/icon.styles.js.map +1 -1
  1011. package/internal/icons/20px/index/index.js.map +1 -1
  1012. package/internal/icons/20px/svg/svg.js.map +1 -1
  1013. package/internal/icons/CloudIcon/CloudIcon.js.map +1 -1
  1014. package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
  1015. package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
  1016. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
  1017. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1018. package/internal/themes/FlatTheme/FlatTheme.js.map +1 -1
  1019. package/internal/themes/Theme8px/Theme8px.js.map +1 -1
  1020. package/lib/ConditionalHandler/ConditionalHandler.js +2 -2
  1021. package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
  1022. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  1023. package/lib/MockDate/MockDate.js.map +1 -1
  1024. package/lib/ModalStack/ModalStack.js +4 -4
  1025. package/lib/ModalStack/ModalStack.js.map +1 -1
  1026. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1027. package/lib/Supports/Supports.js.map +1 -1
  1028. package/lib/Upgrades/Upgrades.js.map +1 -1
  1029. package/lib/animation/index/index.js.map +1 -1
  1030. package/lib/animation/presets/presets.js.map +1 -1
  1031. package/lib/animation/stepper/stepper.js.map +1 -1
  1032. package/lib/client/client.js.map +1 -1
  1033. package/lib/createPropsGetter/createPropsGetter.js.map +1 -1
  1034. package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
  1035. package/lib/date/InternalDate/InternalDate.js +3 -3
  1036. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  1037. package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
  1038. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  1039. package/lib/date/InternalDateSetter/InternalDateSetter.js.map +1 -1
  1040. package/lib/date/InternalDateTransformer/InternalDateTransformer.js.map +1 -1
  1041. package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
  1042. package/lib/date/constants/constants.js.map +1 -1
  1043. package/lib/date/localeSets/localeSets.js.map +1 -1
  1044. package/lib/date/types/types.js.map +1 -1
  1045. package/lib/dom/getFocusableElements/getFocusableElements.js +33 -33
  1046. package/lib/dom/getFocusableElements/getFocusableElements.js.map +1 -1
  1047. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  1048. package/lib/events/MouseDrag/MouseDrag.js +26 -26
  1049. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1050. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
  1051. package/lib/events/keyboard/KeyboardMapKeys/KeyboardMapKeys.js.map +1 -1
  1052. package/lib/events/keyboard/extractCode/extractCode.js.map +1 -1
  1053. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  1054. package/lib/events/stopPropagation/stopPropagation.js.map +1 -1
  1055. package/lib/events/tabListener/tabListener.js.map +1 -1
  1056. package/lib/extractKeyboardAction/extractKeyboardAction.js.map +1 -1
  1057. package/lib/filterProps/filterProps.js.map +1 -1
  1058. package/lib/listenFocusOutside/listenFocusOutside.js +9 -9
  1059. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1060. package/lib/locale/LOCALECONTEXT.md +246 -246
  1061. package/lib/locale/LocaleContext/LocaleContext.js.map +1 -1
  1062. package/lib/locale/LocaleHelper/LocaleHelper.js.map +1 -1
  1063. package/lib/locale/constants/constants.js.map +1 -1
  1064. package/lib/locale/decorators/decorators.js.map +1 -1
  1065. package/lib/locale/index/index.js.map +1 -1
  1066. package/lib/locale/types/types.js.map +1 -1
  1067. package/lib/memo/memo.js.map +1 -1
  1068. package/lib/net/fetch/fetch.js.map +1 -1
  1069. package/lib/polyfillPlaceholder/polyfillPlaceholder.js.map +1 -1
  1070. package/lib/reactGetTextContent/reactGetTextContent.js.map +1 -1
  1071. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  1072. package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
  1073. package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
  1074. package/lib/styles/ColorKeywords/ColorKeywords.js.map +1 -1
  1075. package/lib/styles/ColorObject/ColorObject.js.map +1 -1
  1076. package/lib/styles/DimensionFunctions/DimensionFunctions.js.map +1 -1
  1077. package/lib/styles/HoldSelectionColor/HoldSelectionColor.js.map +1 -1
  1078. package/lib/styles/Mixins/Mixins.js.map +1 -1
  1079. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  1080. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1081. package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
  1082. package/lib/theming/ThemeContext.md +248 -248
  1083. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  1084. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  1085. package/lib/theming/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1086. package/lib/theming/themes/DefaultTheme8px/DefaultTheme8px.js.map +1 -1
  1087. package/lib/theming/themes/FlatTheme/FlatTheme.js.map +1 -1
  1088. package/lib/theming/themes/FlatTheme8px/FlatTheme8px.js.map +1 -1
  1089. package/lib/utils/utils.js +2 -2
  1090. package/lib/utils/utils.js.map +1 -1
  1091. package/package.json +2 -5
  1092. package/typings/console.d.ts +3 -3
  1093. package/typings/event-types.d.ts +4 -4
  1094. package/typings/fonts.d.ts +12 -12
  1095. package/typings/global.d.ts +6 -6
  1096. package/typings/images.d.ts +1 -1
  1097. package/typings/normalize-wheel.d.ts +5 -5
  1098. package/typings/stylis-plugin-extra-scope.d.ts +3 -3
  1099. package/typings/utility-types.d.ts +14 -14
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupHelper.tsx"],"names":["getPositionObject","position","x","split","direction","align","getElementAbsoluteRect","element","rect","_getElementRelativeRect","convertRectToAbsolute","isAbsoluteRectFullyVisible","coordinates","popupRect","windowRelativeRect","_getWindowRelativeRect","windowAbsoluteRect","absoluteRect","top","left","height","width","_rectContainsRect","canBecomeFullyVisible","positionName","availableScrollDistances","getBoundingClientRect","right","bottom","_getViewProperty","clientWidth","window","innerWidth","clientHeight","innerHeight","offset","_getAbsoluteOffset","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","outerRect","innerRect","getProperty","views","document","documentElement","body","map","find","Boolean","PopupHelper","isFullyVisible"],"mappings":";;;;;;;;;;;;;;;;;;;AAmBA,SAASA,iBAAT,CAA2BC,QAA3B,EAA6D;AAC3D,MAAMC,CAAC,GAAGD,QAAQ,CAACE,KAAT,CAAe,GAAf,CAAV;;AAEA,SAAO;AACLC,IAAAA,SAAS,EAAEF,CAAC,CAAC,CAAD,CADP;AAELG,IAAAA,KAAK,EAAEH,CAAC,CAAC,CAAD,CAFH,EAAP;;AAID;;AAED,SAASI,sBAAT,CAAgCC,OAAhC,EAA4D;AAC1D,MAAMC,IAAI,GAAGC,uBAAuB,CAACF,OAAD,CAApC;AACA,SAAOG,qBAAqB,CAACF,IAAD,CAA5B;AACD;;AAED,SAASG,0BAAT,CAAoCC,WAApC,EAAyDC,SAAzD,EAAmF;AACjF,MAAMC,kBAAkB,GAAGC,sBAAsB,EAAjD;AACA,MAAMC,kBAAkB,GAAGN,qBAAqB,CAACI,kBAAD,CAAhD;AACA,MAAMG,YAAY,GAAG;AACnBC,IAAAA,GAAG,EAAEN,WAAW,CAACM,GADE;AAEnBC,IAAAA,IAAI,EAAEP,WAAW,CAACO,IAFC;AAGnBC,IAAAA,MAAM,EAAEP,SAAS,CAACO,MAHC;AAInBC,IAAAA,KAAK,EAAER,SAAS,CAACQ,KAJE,EAArB;;;AAOA,SAAOC,iBAAiB,CAACN,kBAAD,EAAqBC,YAArB,CAAxB;AACD;;AAED,SAASM,qBAAT,CAA+BC,YAA/B,EAA4DZ,WAA5D,EAAiF;AAC/E,MAAMX,QAAQ,GAAGD,iBAAiB,CAACwB,YAAD,CAAlC;;AAEA,MAAIvB,QAAQ,CAACG,SAAT,KAAuB,KAA3B,EAAkC;AAChC,QAAMqB,wBAAwB,GAAGf,qBAAqB,CAACK,sBAAsB,EAAvB,CAAtD;AACA,WAAOH,WAAW,CAACM,GAAZ,GAAkBO,wBAAwB,CAACP,GAA3C,IAAkD,CAAzD;AACD;;AAED,MAAIjB,QAAQ,CAACG,SAAT,KAAuB,MAA3B,EAAmC;AACjC,QAAMqB,yBAAwB,GAAGf,qBAAqB,CAACK,sBAAsB,EAAvB,CAAtD;AACA,WAAOH,WAAW,CAACO,IAAZ,GAAmBM,yBAAwB,CAACN,IAA5C,IAAoD,CAA3D;AACD;;AAED;AACA,SAAO,IAAP;AACD;;AAED,SAASV,uBAAT,CAAiCF,OAAjC,EAAuD;AACrD,MAAMC,IAAI,GAAGD,OAAO,CAACmB,qBAAR,EAAb;;AAEA,SAAO;AACLR,IAAAA,GAAG,EAAEV,IAAI,CAACU,GADL;AAELC,IAAAA,IAAI,EAAEX,IAAI,CAACW,IAFN;AAGLE,IAAAA,KAAK,EAAEb,IAAI,CAACmB,KAAL,GAAanB,IAAI,CAACW,IAHpB;AAILC,IAAAA,MAAM,EAAEZ,IAAI,CAACoB,MAAL,GAAcpB,IAAI,CAACU,GAJtB,EAAP;;AAMD;;AAED,SAASH,sBAAT,GAAwC;AACtC,SAAO;AACLG,IAAAA,GAAG,EAAE,CADA;AAELC,IAAAA,IAAI,EAAE,CAFD;AAGLE,IAAAA,KAAK,EAAEQ,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAAC4B,WAAN,EAAF,CAAhB,IAAwCC,MAAM,CAACC,UAHjD;AAILZ,IAAAA,MAAM,EAAES,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAAC+B,YAAN,EAAF,CAAhB,IAAyCF,MAAM,CAACG,WAJnD,EAAP;;AAMD;;AAED,SAASxB,qBAAT,CAA+BF,IAA/B,EAAiD;AAC/C,MAAM2B,MAAM,GAAGC,kBAAkB,EAAjC;;AAEA,SAAO;AACLlB,IAAAA,GAAG,EAAEV,IAAI,CAACU,GAAL,GAAWiB,MAAM,CAACjB,GADlB;AAELC,IAAAA,IAAI,EAAEX,IAAI,CAACW,IAAL,GAAYgB,MAAM,CAAChB,IAFpB;AAGLE,IAAAA,KAAK,EAAEb,IAAI,CAACa,KAHP;AAILD,IAAAA,MAAM,EAAEZ,IAAI,CAACY,MAJR,EAAP;;AAMD;;AAED,SAASgB,kBAAT,GAAsC;AACpC,MAAMC,SAAS,GAAGN,MAAM,CAACO,WAAP,IAAsBT,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAACmC,SAAN,EAAF,CAAxD;AACA,MAAME,UAAU,GAAGR,MAAM,CAACS,WAAP,IAAsBX,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAACqC,UAAN,EAAF,CAAzD;;AAEA,MAAME,SAAS,GAAGZ,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAACuC,SAAN,EAAF,CAAlC;AACA,MAAMC,UAAU,GAAGb,gBAAgB,CAAC,UAAA3B,CAAC,UAAIA,CAAC,CAACwC,UAAN,EAAF,CAAnC;;AAEA,MAAMxB,GAAG,GAAGmB,SAAS,GAAGI,SAAxB;AACA,MAAMtB,IAAI,GAAGoB,UAAU,GAAGG,UAA1B;;AAEA,SAAO;AACLxB,IAAAA,GAAG,EAAHA,GADK;AAELC,IAAAA,IAAI,EAAJA,IAFK,EAAP;;AAID;;AAED,SAASG,iBAAT,CAA2BqB,SAA3B,EAA4CC,SAA5C,EAAsE;AACpE;AACEA,IAAAA,SAAS,CAAC1B,GAAV,GAAgByB,SAAS,CAACzB,GAA1B;AACA0B,IAAAA,SAAS,CAAC1B,GAAV,GAAgB0B,SAAS,CAACxB,MAA1B,GAAmCuB,SAAS,CAACzB,GAAV,GAAgByB,SAAS,CAACvB,MAD7D;AAEAwB,IAAAA,SAAS,CAACzB,IAAV,GAAiBwB,SAAS,CAACxB,IAF3B;AAGAyB,IAAAA,SAAS,CAACzB,IAAV,GAAiByB,SAAS,CAACvB,KAA3B,GAAmCsB,SAAS,CAACxB,IAAV,GAAiBwB,SAAS,CAACtB,KAJhE;;AAMD;;AAED,SAASQ,gBAAT,CAA0BgB,WAA1B,EAA2E;AACzE,MAAMC,KAAK,GAAG,CAACC,QAAQ,CAACC,eAAV,EAA2BD,QAAQ,CAACE,IAApC,CAAd;AACA,SAAOH,KAAK,CAACI,GAAN,CAAU,UAAAhD,CAAC,UAAIA,CAAC,IAAI2C,WAAW,CAAC3C,CAAD,CAApB,EAAX,EAAoCiD,IAApC,CAAyCC,OAAzC,KAAqD,CAA5D;AACD;;AAEM,IAAMC,WAAW,GAAG;AACzBrD,EAAAA,iBAAiB,EAAjBA,iBADyB;AAEzBM,EAAAA,sBAAsB,EAAtBA,sBAFyB;AAGzBgD,EAAAA,cAAc,EAAE3C,0BAHS;AAIzBY,EAAAA,qBAAqB,EAArBA,qBAJyB,EAApB,C","sourcesContent":["import { PopupPosition } from './Popup';\r\n\r\nexport interface Rect {\r\n top: number;\r\n left: number;\r\n width: number;\r\n height: number;\r\n}\r\n\r\nexport interface Offset {\r\n top: number;\r\n left: number;\r\n}\r\n\r\nexport interface PositionObject {\r\n direction: string;\r\n align: string;\r\n}\r\n\r\nfunction getPositionObject(position: string): PositionObject {\r\n const x = position.split(' ');\r\n\r\n return {\r\n direction: x[0],\r\n align: x[1],\r\n };\r\n}\r\n\r\nfunction getElementAbsoluteRect(element: HTMLElement): Rect {\r\n const rect = _getElementRelativeRect(element);\r\n return convertRectToAbsolute(rect);\r\n}\r\n\r\nfunction isAbsoluteRectFullyVisible(coordinates: Offset, popupRect: Rect): boolean {\r\n const windowRelativeRect = _getWindowRelativeRect();\r\n const windowAbsoluteRect = convertRectToAbsolute(windowRelativeRect);\r\n const absoluteRect = {\r\n top: coordinates.top,\r\n left: coordinates.left,\r\n height: popupRect.height,\r\n width: popupRect.width,\r\n };\r\n\r\n return _rectContainsRect(windowAbsoluteRect, absoluteRect);\r\n}\r\n\r\nfunction canBecomeFullyVisible(positionName: PopupPosition, coordinates: Offset) {\r\n const position = getPositionObject(positionName);\r\n\r\n if (position.direction === 'top') {\r\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\r\n return coordinates.top + availableScrollDistances.top >= 0;\r\n }\r\n\r\n if (position.direction === 'left') {\r\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\r\n return coordinates.left + availableScrollDistances.left >= 0;\r\n }\r\n\r\n // NOTE: for bottom/right cases browser will always expand document size\r\n return true;\r\n}\r\n\r\nfunction _getElementRelativeRect(element: HTMLElement) {\r\n const rect = element.getBoundingClientRect();\r\n\r\n return {\r\n top: rect.top,\r\n left: rect.left,\r\n width: rect.right - rect.left,\r\n height: rect.bottom - rect.top,\r\n };\r\n}\r\n\r\nfunction _getWindowRelativeRect(): Rect {\r\n return {\r\n top: 0,\r\n left: 0,\r\n width: _getViewProperty(x => x.clientWidth) || window.innerWidth,\r\n height: _getViewProperty(x => x.clientHeight) || window.innerHeight,\r\n };\r\n}\r\n\r\nfunction convertRectToAbsolute(rect: Rect): Rect {\r\n const offset = _getAbsoluteOffset();\r\n\r\n return {\r\n top: rect.top + offset.top,\r\n left: rect.left + offset.left,\r\n width: rect.width,\r\n height: rect.height,\r\n };\r\n}\r\n\r\nfunction _getAbsoluteOffset(): Offset {\r\n const scrollTop = window.pageYOffset || _getViewProperty(x => x.scrollTop);\r\n const scrollLeft = window.pageXOffset || _getViewProperty(x => x.scrollLeft);\r\n\r\n const clientTop = _getViewProperty(x => x.clientTop);\r\n const clientLeft = _getViewProperty(x => x.clientLeft);\r\n\r\n const top = scrollTop - clientTop;\r\n const left = scrollLeft - clientLeft;\r\n\r\n return {\r\n top,\r\n left,\r\n };\r\n}\r\n\r\nfunction _rectContainsRect(outerRect: Rect, innerRect: Rect): boolean {\r\n return (\r\n innerRect.top > outerRect.top &&\r\n innerRect.top + innerRect.height < outerRect.top + outerRect.height &&\r\n innerRect.left > outerRect.left &&\r\n innerRect.left + innerRect.width < outerRect.left + outerRect.width\r\n );\r\n}\r\n\r\nfunction _getViewProperty(getProperty: (e: HTMLElement) => number): number {\r\n const views = [document.documentElement, document.body];\r\n return views.map(x => x && getProperty(x)).find(Boolean) || 0;\r\n}\r\n\r\nexport const PopupHelper = {\r\n getPositionObject,\r\n getElementAbsoluteRect,\r\n isFullyVisible: isAbsoluteRectFullyVisible,\r\n canBecomeFullyVisible,\r\n};\r\n"]}
1
+ {"version":3,"sources":["PopupHelper.tsx"],"names":["getPositionObject","position","x","split","direction","align","getElementAbsoluteRect","element","rect","_getElementRelativeRect","convertRectToAbsolute","isAbsoluteRectFullyVisible","coordinates","popupRect","windowRelativeRect","_getWindowRelativeRect","windowAbsoluteRect","absoluteRect","top","left","height","width","_rectContainsRect","canBecomeFullyVisible","positionName","availableScrollDistances","getBoundingClientRect","right","bottom","_getViewProperty","clientWidth","window","innerWidth","clientHeight","innerHeight","offset","_getAbsoluteOffset","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","outerRect","innerRect","getProperty","views","document","documentElement","body","map","find","Boolean","PopupHelper","isFullyVisible"],"mappings":"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","sourcesContent":["import { PopupPosition } from './Popup';\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\nexport interface Offset {\n top: number;\n left: number;\n}\n\nexport interface PositionObject {\n direction: string;\n align: string;\n}\n\nfunction getPositionObject(position: string): PositionObject {\n const x = position.split(' ');\n\n return {\n direction: x[0],\n align: x[1],\n };\n}\n\nfunction getElementAbsoluteRect(element: HTMLElement): Rect {\n const rect = _getElementRelativeRect(element);\n return convertRectToAbsolute(rect);\n}\n\nfunction isAbsoluteRectFullyVisible(coordinates: Offset, popupRect: Rect): boolean {\n const windowRelativeRect = _getWindowRelativeRect();\n const windowAbsoluteRect = convertRectToAbsolute(windowRelativeRect);\n const absoluteRect = {\n top: coordinates.top,\n left: coordinates.left,\n height: popupRect.height,\n width: popupRect.width,\n };\n\n return _rectContainsRect(windowAbsoluteRect, absoluteRect);\n}\n\nfunction canBecomeFullyVisible(positionName: PopupPosition, coordinates: Offset) {\n const position = getPositionObject(positionName);\n\n if (position.direction === 'top') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.top + availableScrollDistances.top >= 0;\n }\n\n if (position.direction === 'left') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.left + availableScrollDistances.left >= 0;\n }\n\n // NOTE: for bottom/right cases browser will always expand document size\n return true;\n}\n\nfunction _getElementRelativeRect(element: HTMLElement) {\n const rect = element.getBoundingClientRect();\n\n return {\n top: rect.top,\n left: rect.left,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n };\n}\n\nfunction _getWindowRelativeRect(): Rect {\n return {\n top: 0,\n left: 0,\n width: _getViewProperty(x => x.clientWidth) || window.innerWidth,\n height: _getViewProperty(x => x.clientHeight) || window.innerHeight,\n };\n}\n\nfunction convertRectToAbsolute(rect: Rect): Rect {\n const offset = _getAbsoluteOffset();\n\n return {\n top: rect.top + offset.top,\n left: rect.left + offset.left,\n width: rect.width,\n height: rect.height,\n };\n}\n\nfunction _getAbsoluteOffset(): Offset {\n const scrollTop = window.pageYOffset || _getViewProperty(x => x.scrollTop);\n const scrollLeft = window.pageXOffset || _getViewProperty(x => x.scrollLeft);\n\n const clientTop = _getViewProperty(x => x.clientTop);\n const clientLeft = _getViewProperty(x => x.clientLeft);\n\n const top = scrollTop - clientTop;\n const left = scrollLeft - clientLeft;\n\n return {\n top,\n left,\n };\n}\n\nfunction _rectContainsRect(outerRect: Rect, innerRect: Rect): boolean {\n return (\n innerRect.top > outerRect.top &&\n innerRect.top + innerRect.height < outerRect.top + outerRect.height &&\n innerRect.left > outerRect.left &&\n innerRect.left + innerRect.width < outerRect.left + outerRect.width\n );\n}\n\nfunction _getViewProperty(getProperty: (e: HTMLElement) => number): number {\n const views = [document.documentElement, document.body];\n return views.map(x => x && getProperty(x)).find(Boolean) || 0;\n}\n\nexport const PopupHelper = {\n getPositionObject,\n getElementAbsoluteRect,\n isFullyVisible: isAbsoluteRectFullyVisible,\n canBecomeFullyVisible,\n};\n"]}
@@ -271,20 +271,20 @@ PopupPin = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default
271
271
  default:
272
272
  throw new Error("Unexpected align '" + align + "'");}
273
273
 
274
- };return PopupPin;}(_react.default.Component);exports.PopupPin = PopupPin;PopupPin.__KONTUR_REACT_UI__ = 'PopupPin';PopupPin.propTypes = { /**
275
- * Цвет фон пина
276
- */backgroundColor: _propTypes.default.string, /**
277
- * Цвет границы пина
278
- */borderColor: _propTypes.default.string, /**
279
- * Ширина границы пина
280
- */borderWidth: _propTypes.default.number, /**
281
- * Смещение пина от края попапа. Край задаётся в пропе position вторым словом
282
- */offset: _propTypes.default.number, /**
283
- * Ссылка на попап
284
- */popupElement: _propTypes.default.any, /**
285
- * Позиция поапа, по которой будет вычеслено положение пина
286
- */popupPosition: _propTypes.default.string, /**
287
- * Сторона пина без учёта границы.
288
- * Пин представляет собой равносторонний треугольник, высота от попапа
289
- * до "носика" пина будет соответствовать формуле (size* √3)/2
274
+ };return PopupPin;}(_react.default.Component);exports.PopupPin = PopupPin;PopupPin.__KONTUR_REACT_UI__ = 'PopupPin';PopupPin.propTypes = { /**
275
+ * Цвет фон пина
276
+ */backgroundColor: _propTypes.default.string, /**
277
+ * Цвет границы пина
278
+ */borderColor: _propTypes.default.string, /**
279
+ * Ширина границы пина
280
+ */borderWidth: _propTypes.default.number, /**
281
+ * Смещение пина от края попапа. Край задаётся в пропе position вторым словом
282
+ */offset: _propTypes.default.number, /**
283
+ * Ссылка на попап
284
+ */popupElement: _propTypes.default.any, /**
285
+ * Позиция поапа, по которой будет вычеслено положение пина
286
+ */popupPosition: _propTypes.default.string, /**
287
+ * Сторона пина без учёта границы.
288
+ * Пин представляет собой равносторонний треугольник, высота от попапа
289
+ * до "носика" пина будет соответствовать формуле (size* √3)/2
290
290
  */size: _propTypes.default.number };
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupPin.tsx"],"names":["borderStyles","position","borderStyle","borderTopColor","borderBottomColor","borderLeftColor","borderRightColor","PopupPin","render","props","popupElement","options","getPinOptions","PopupHelper","getElementAbsoluteRect","getPositionObject","popupPosition","size","offset","borderWidth","styleOuter","getOuterStyle","activeBorder","outerSize","borderColor","styleInner","getInnerStyle","backgroundColor","styleWrapper","getWrapperStyle","outerLeft","outerTop","jsStyles","wrapper","getPopupOppositeDirection","popupDirection","direction","TypeError","left","top","width","height","borderWitdth","popupRect","pinSize","pinOffset","bordersDelta","getPinLeftCoordinate","align","innerTop","innerLeft","getPinTopCoordinate","Error","pinHeight","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","string","number","any"],"mappings":"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","sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\nimport { Nullable } from '../../typings/utility-types';\r\n\r\nimport { PopupHelper, PositionObject, Rect } from './PopupHelper';\r\nimport { jsStyles } from './PopupPin.styles';\r\n\r\nconst borderStyles = {\r\n position: 'absolute',\r\n borderStyle: 'solid',\r\n borderTopColor: 'transparent',\r\n borderBottomColor: 'transparent',\r\n borderLeftColor: 'transparent',\r\n borderRightColor: 'transparent',\r\n};\r\n\r\ninterface Props {\r\n backgroundColor: string;\r\n borderColor: string;\r\n borderWidth: number;\r\n offset: number;\r\n popupElement: Nullable<HTMLElement>;\r\n popupPosition: string;\r\n size: number;\r\n}\r\n\r\nexport class PopupPin extends React.Component<Props> {\r\n public static __KONTUR_REACT_UI__ = 'PopupPin';\r\n\r\n public static propTypes = {\r\n /**\r\n * Цвет фон пина\r\n */\r\n backgroundColor: PropTypes.string,\r\n\r\n /**\r\n * Цвет границы пина\r\n */\r\n borderColor: PropTypes.string,\r\n\r\n /**\r\n * Ширина границы пина\r\n */\r\n borderWidth: PropTypes.number,\r\n\r\n /**\r\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\r\n */\r\n offset: PropTypes.number,\r\n\r\n /**\r\n * Ссылка на попап\r\n */\r\n popupElement: PropTypes.any,\r\n\r\n /**\r\n * Позиция поапа, по которой будет вычеслено положение пина\r\n */\r\n popupPosition: PropTypes.string,\r\n\r\n /**\r\n * Сторона пина без учёта границы.\r\n * Пин представляет собой равносторонний треугольник, высота от попапа\r\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\r\n */\r\n size: PropTypes.number,\r\n };\r\n\r\n public render() {\r\n if (!this.props.popupElement) {\r\n return null;\r\n }\r\n\r\n const options = this.getPinOptions(\r\n PopupHelper.getElementAbsoluteRect(this.props.popupElement),\r\n PopupHelper.getPositionObject(this.props.popupPosition),\r\n this.props.size,\r\n this.props.offset,\r\n this.props.borderWidth,\r\n );\r\n\r\n const styleOuter: React.CSSProperties = this.getOuterStyle(\r\n options.activeBorder,\r\n options.outerSize,\r\n this.props.borderColor,\r\n );\r\n\r\n const styleInner: React.CSSProperties = this.getInnerStyle(\r\n options.activeBorder,\r\n this.props.size,\r\n this.props.backgroundColor,\r\n );\r\n\r\n const styleWrapper = this.getWrapperStyle(options.outerLeft, options.outerTop, options.outerSize);\r\n\r\n return (\r\n <div className={jsStyles.wrapper()} style={styleWrapper}>\r\n <div style={styleOuter}>\r\n <div style={styleInner} />\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private getPopupOppositeDirection(): 'bottom' | 'top' | 'left' | 'right' {\r\n const popupDirection = PopupHelper.getPositionObject(this.props.popupPosition).direction;\r\n switch (popupDirection) {\r\n case 'top':\r\n return 'bottom';\r\n case 'bottom':\r\n return 'top';\r\n case 'left':\r\n return 'right';\r\n case 'right':\r\n return 'left';\r\n default:\r\n throw new TypeError('Unknown direction ' + popupDirection);\r\n }\r\n }\r\n\r\n private getWrapperStyle(left: number, top: number, borderWidth: number) {\r\n const direction = this.getPopupOppositeDirection();\r\n switch (direction) {\r\n case 'top':\r\n case 'bottom':\r\n return {\r\n [direction]: -borderWidth + 'px',\r\n left: left + 'px',\r\n width: borderWidth * 2 + 'px',\r\n height: borderWidth + 'px',\r\n };\r\n case 'left':\r\n case 'right':\r\n return {\r\n [direction]: -borderWidth + 'px',\r\n top: top + 'px',\r\n height: borderWidth * 2 + 'px',\r\n width: borderWidth + 'px',\r\n };\r\n default:\r\n throw new TypeError('Unknown direction ' + direction);\r\n }\r\n }\r\n\r\n private getOuterStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\r\n const direction = this.getPopupOppositeDirection();\r\n switch (direction) {\r\n case 'top':\r\n case 'bottom':\r\n return {\r\n ...borderStyles,\r\n [direction]: -borderWitdth + 'px',\r\n left: '0px',\r\n borderWidth: borderWitdth + 'px',\r\n ['border' + activeBorder + 'Color']: borderColor,\r\n } as React.CSSProperties;\r\n case 'left':\r\n case 'right':\r\n return {\r\n ...borderStyles,\r\n [direction]: -borderWitdth + 'px',\r\n top: '0px',\r\n borderWidth: borderWitdth + 'px',\r\n ['border' + activeBorder + 'Color']: borderColor,\r\n } as React.CSSProperties;\r\n default:\r\n throw new TypeError('Unknown direction ' + direction);\r\n }\r\n }\r\n\r\n private getInnerStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\r\n const direction = this.getPopupOppositeDirection();\r\n switch (direction) {\r\n case 'top':\r\n case 'bottom':\r\n return {\r\n ...borderStyles,\r\n [direction]: -borderWitdth + 2 + 'px',\r\n left: -borderWitdth + 'px',\r\n borderWidth: borderWitdth + 'px',\r\n ['border' + activeBorder + 'Color']: borderColor,\r\n } as React.CSSProperties;\r\n case 'left':\r\n case 'right':\r\n return {\r\n ...borderStyles,\r\n [direction]: -borderWitdth + 2 + 'px',\r\n top: -borderWitdth + 'px',\r\n borderWidth: borderWitdth + 'px',\r\n ['border' + activeBorder + 'Color']: borderColor,\r\n } as React.CSSProperties;\r\n default:\r\n throw new TypeError('Unknown direction ' + direction);\r\n }\r\n }\r\n\r\n private getPinOptions(\r\n popupRect: Rect,\r\n popupPosition: PositionObject,\r\n pinSize: number,\r\n pinOffset: number,\r\n borderWidth: number,\r\n ) {\r\n const bordersDelta = 2 * borderWidth;\r\n const outerSize = pinSize + bordersDelta;\r\n\r\n switch (popupPosition.direction) {\r\n case 'top':\r\n return {\r\n outerTop: popupRect.height,\r\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\r\n innerTop: -outerSize,\r\n innerLeft: -outerSize + bordersDelta,\r\n activeBorder: 'Top',\r\n outerSize,\r\n };\r\n case 'bottom':\r\n return {\r\n outerTop: -2 * outerSize,\r\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\r\n innerTop: -outerSize + 2 * bordersDelta,\r\n innerLeft: -outerSize + bordersDelta,\r\n activeBorder: 'Bottom',\r\n outerSize,\r\n };\r\n case 'left':\r\n return {\r\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\r\n outerLeft: popupRect.width,\r\n innerTop: -outerSize + bordersDelta,\r\n innerLeft: -outerSize,\r\n activeBorder: 'Left',\r\n outerSize,\r\n };\r\n case 'right':\r\n return {\r\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\r\n outerLeft: -2 * outerSize,\r\n innerTop: -outerSize + bordersDelta,\r\n innerLeft: -outerSize + 2 * bordersDelta,\r\n activeBorder: 'Right',\r\n outerSize,\r\n };\r\n default:\r\n throw new Error('Direction must be one of top, right, bottom, left');\r\n }\r\n }\r\n\r\n private getPinTopCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\r\n switch (align) {\r\n case 'top':\r\n return pinOffset;\r\n case 'middle':\r\n return popupRect.height / 2 - pinHeight;\r\n case 'bottom':\r\n return popupRect.height - pinOffset - 2 * pinHeight;\r\n default:\r\n throw new Error(`Unexpected align '${align}'`);\r\n }\r\n }\r\n\r\n private getPinLeftCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\r\n switch (align) {\r\n case 'left':\r\n return pinOffset;\r\n case 'center':\r\n return popupRect.width / 2 - pinHeight;\r\n case 'right':\r\n return popupRect.width - pinOffset - 2 * pinHeight;\r\n default:\r\n throw new Error(`Unexpected align '${align}'`);\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["PopupPin.tsx"],"names":["borderStyles","position","borderStyle","borderTopColor","borderBottomColor","borderLeftColor","borderRightColor","PopupPin","render","props","popupElement","options","getPinOptions","PopupHelper","getElementAbsoluteRect","getPositionObject","popupPosition","size","offset","borderWidth","styleOuter","getOuterStyle","activeBorder","outerSize","borderColor","styleInner","getInnerStyle","backgroundColor","styleWrapper","getWrapperStyle","outerLeft","outerTop","jsStyles","wrapper","getPopupOppositeDirection","popupDirection","direction","TypeError","left","top","width","height","borderWitdth","popupRect","pinSize","pinOffset","bordersDelta","getPinLeftCoordinate","align","innerTop","innerLeft","getPinTopCoordinate","Error","pinHeight","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","string","number","any"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable } from '../../typings/utility-types';\n\nimport { PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { jsStyles } from './PopupPin.styles';\n\nconst borderStyles = {\n position: 'absolute',\n borderStyle: 'solid',\n borderTopColor: 'transparent',\n borderBottomColor: 'transparent',\n borderLeftColor: 'transparent',\n borderRightColor: 'transparent',\n};\n\ninterface Props {\n backgroundColor: string;\n borderColor: string;\n borderWidth: number;\n offset: number;\n popupElement: Nullable<HTMLElement>;\n popupPosition: string;\n size: number;\n}\n\nexport class PopupPin extends React.Component<Props> {\n public static __KONTUR_REACT_UI__ = 'PopupPin';\n\n public static propTypes = {\n /**\n * Цвет фон пина\n */\n backgroundColor: PropTypes.string,\n\n /**\n * Цвет границы пина\n */\n borderColor: PropTypes.string,\n\n /**\n * Ширина границы пина\n */\n borderWidth: PropTypes.number,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n offset: PropTypes.number,\n\n /**\n * Ссылка на попап\n */\n popupElement: PropTypes.any,\n\n /**\n * Позиция поапа, по которой будет вычеслено положение пина\n */\n popupPosition: PropTypes.string,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n size: PropTypes.number,\n };\n\n public render() {\n if (!this.props.popupElement) {\n return null;\n }\n\n const options = this.getPinOptions(\n PopupHelper.getElementAbsoluteRect(this.props.popupElement),\n PopupHelper.getPositionObject(this.props.popupPosition),\n this.props.size,\n this.props.offset,\n this.props.borderWidth,\n );\n\n const styleOuter: React.CSSProperties = this.getOuterStyle(\n options.activeBorder,\n options.outerSize,\n this.props.borderColor,\n );\n\n const styleInner: React.CSSProperties = this.getInnerStyle(\n options.activeBorder,\n this.props.size,\n this.props.backgroundColor,\n );\n\n const styleWrapper = this.getWrapperStyle(options.outerLeft, options.outerTop, options.outerSize);\n\n return (\n <div className={jsStyles.wrapper()} style={styleWrapper}>\n <div style={styleOuter}>\n <div style={styleInner} />\n </div>\n </div>\n );\n }\n\n private getPopupOppositeDirection(): 'bottom' | 'top' | 'left' | 'right' {\n const popupDirection = PopupHelper.getPositionObject(this.props.popupPosition).direction;\n switch (popupDirection) {\n case 'top':\n return 'bottom';\n case 'bottom':\n return 'top';\n case 'left':\n return 'right';\n case 'right':\n return 'left';\n default:\n throw new TypeError('Unknown direction ' + popupDirection);\n }\n }\n\n private getWrapperStyle(left: number, top: number, borderWidth: number) {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n [direction]: -borderWidth + 'px',\n left: left + 'px',\n width: borderWidth * 2 + 'px',\n height: borderWidth + 'px',\n };\n case 'left':\n case 'right':\n return {\n [direction]: -borderWidth + 'px',\n top: top + 'px',\n height: borderWidth * 2 + 'px',\n width: borderWidth + 'px',\n };\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getOuterStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n left: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n top: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getInnerStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n left: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n top: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getPinOptions(\n popupRect: Rect,\n popupPosition: PositionObject,\n pinSize: number,\n pinOffset: number,\n borderWidth: number,\n ) {\n const bordersDelta = 2 * borderWidth;\n const outerSize = pinSize + bordersDelta;\n\n switch (popupPosition.direction) {\n case 'top':\n return {\n outerTop: popupRect.height,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Top',\n outerSize,\n };\n case 'bottom':\n return {\n outerTop: -2 * outerSize,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize + 2 * bordersDelta,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Bottom',\n outerSize,\n };\n case 'left':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: popupRect.width,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize,\n activeBorder: 'Left',\n outerSize,\n };\n case 'right':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: -2 * outerSize,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize + 2 * bordersDelta,\n activeBorder: 'Right',\n outerSize,\n };\n default:\n throw new Error('Direction must be one of top, right, bottom, left');\n }\n }\n\n private getPinTopCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'top':\n return pinOffset;\n case 'middle':\n return popupRect.height / 2 - pinHeight;\n case 'bottom':\n return popupRect.height - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getPinLeftCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'left':\n return pinOffset;\n case 'center':\n return popupRect.width / 2 - pinHeight;\n case 'right':\n return popupRect.width - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupPin.styles.ts"],"names":["styles","wrapper","css","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,OADa,qBACH;AACR,eAAOC,YAAP;;;;;AAKD,GAPY,EAAf;;;AAUO,IAAMC,QAAQ,GAAG,2BAAaH,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\r\n\r\nconst styles = {\r\n wrapper() {\r\n return css`\r\n overflow: hidden;\r\n position: absolute;\r\n pointer-events: none;\r\n `;\r\n },\r\n};\r\n\r\nexport const jsStyles = memoizeStyle(styles);\r\n"]}
1
+ {"version":3,"sources":["PopupPin.styles.ts"],"names":["styles","wrapper","css","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,OADa,qBACH;AACR,eAAOC,YAAP;;;;;AAKD,GAPY,EAAf;;;AAUO,IAAMC,QAAQ,GAAG,2BAAaH,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nconst styles = {\n wrapper() {\n return css`\n overflow: hidden;\n position: absolute;\n pointer-events: none;\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './Popup';\r\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './Popup';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupMenu.tsx"],"names":["PopupMenuType","Dropdown","Tooltip","PopupMenu","state","menuVisible","firstItemShouldBeSelected","captionWrapper","savedFocusableElement","menu","open","showMenu","close","hideMenu","refInternalMenu","element","handleOpen","focus","renderCaption","props","caption","opened","openMenu","closeMenu","toggleMenu","jsStyles","handleCaptionClick","handleCaptionKeyDown","hideMenuWithoutFocusing","saveFocus","setState","handleChangeMenuVisible","restoreFocus","e","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleKeyDown","document","activeElement","focusShouldBeRestored","onChangeMenuState","handleItemSelection","event","isDefaultPrevented","type","render","container","width","children","popupMargin","popupHasPin","popupPinOffset","getPositions","disableAnimations","menuMaxHeight","menuWidth","header","footer","positions","PopupMenuPositions","React","Component","__KONTUR_REACT_UI__","defaultProps","Type"],"mappings":"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","sourcesContent":["import React from 'react';\r\n\r\nimport {\r\n isKeyArrowVertical,\r\n isKeyEnter,\r\n isKeyEscape,\r\n isKeySpace,\r\n someKeys,\r\n} from '../../lib/events/keyboard/identifiers';\r\nimport { InternalMenu } from '../InternalMenu';\r\nimport { Popup, PopupPosition } from '../Popup';\r\nimport { RenderLayer } from '../RenderLayer';\r\nimport { Nullable } from '../../typings/utility-types';\r\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\r\n\r\nimport { PopupMenuPositions } from './PopupMenuPositions';\r\nimport { isValidPositions } from './validatePositions';\r\nimport { jsStyles } from './PopupMenu.styles';\r\n\r\nexport interface PopupMenuCaptionProps {\r\n opened: boolean;\r\n openMenu: (firstItemShouldBeSelected?: boolean) => void;\r\n closeMenu: (restoreFocus?: boolean) => void;\r\n toggleMenu: () => void;\r\n}\r\n\r\nexport interface PopupMenuProps extends CommonProps {\r\n children?: React.ReactNode;\r\n /** Максимальная высота меню */\r\n menuMaxHeight?: number | string;\r\n /** Ширина меню */\r\n menuWidth?: number | string;\r\n /** Ширина контейнера и caption */\r\n width?: React.CSSProperties['width'];\r\n\r\n /**\r\n * Элемент или функция возвращающая элемент,\r\n * если передана, используется вместо ```caption```,\r\n * в таком случае управлять открытием и закрытием меню\r\n * придется в этой функции\r\n */\r\n caption: React.ReactNode | ((props: PopupMenuCaptionProps) => React.ReactNode);\r\n\r\n header?: React.ReactNode;\r\n footer?: React.ReactNode;\r\n\r\n /** Массив разрешенных положений меню относительно caption'а. */\r\n positions?: PopupPosition[];\r\n /** Колбэк, вызываемый после открытия/закрытия меню */\r\n onChangeMenuState?: (isOpened: boolean, restoreFocus: boolean) => void;\r\n /** Пропсы, передающиеся в Popup */\r\n popupHasPin?: boolean;\r\n popupMargin?: number;\r\n popupPinOffset?: number;\r\n type?: 'dropdown' | 'tooltip';\r\n disableAnimations: boolean;\r\n}\r\n\r\ninterface PopupMenuState {\r\n menuVisible: boolean;\r\n firstItemShouldBeSelected?: boolean;\r\n}\r\n\r\nexport const PopupMenuType = {\r\n Dropdown: 'dropdown',\r\n Tooltip: 'tooltip',\r\n};\r\n\r\nexport class PopupMenu extends React.Component<PopupMenuProps, PopupMenuState> {\r\n public static __KONTUR_REACT_UI__ = 'PopupMenu';\r\n\r\n public static defaultProps = {\r\n positions: PopupMenuPositions,\r\n type: PopupMenuType.Tooltip,\r\n popupHasPin: true,\r\n popupMargin: 0,\r\n disableAnimations: false,\r\n };\r\n\r\n public static Type = PopupMenuType;\r\n\r\n public state = {\r\n menuVisible: false,\r\n firstItemShouldBeSelected: false,\r\n };\r\n\r\n private captionWrapper: HTMLSpanElement | null = null;\r\n private savedFocusableElement: HTMLElement | null = null;\r\n private menu: Nullable<InternalMenu> = null;\r\n\r\n public render() {\r\n return (\r\n <CommonWrapper {...this.props}>\r\n <RenderLayer\r\n onClickOutside={this.hideMenuWithoutFocusing}\r\n onFocusOutside={this.hideMenuWithoutFocusing}\r\n active={this.state.menuVisible}\r\n >\r\n <div className={jsStyles.container()} style={{ width: this.props.width }}>\r\n {this.renderCaption()}\r\n {this.captionWrapper && this.props.children && (\r\n <Popup\r\n anchorElement={this.captionWrapper}\r\n opened={this.state.menuVisible}\r\n hasShadow\r\n margin={this.props.popupMargin}\r\n hasPin={this.props.popupHasPin}\r\n pinOffset={this.props.popupPinOffset}\r\n positions={this.getPositions()}\r\n disableAnimations={this.props.disableAnimations}\r\n onOpen={this.handleOpen}\r\n >\r\n <InternalMenu\r\n hasShadow={false}\r\n maxHeight={this.props.menuMaxHeight || 'none'}\r\n onKeyDown={this.handleKeyDown}\r\n width={this.props.menuWidth || 'auto'}\r\n onItemClick={this.handleItemSelection}\r\n cyclicSelection={false}\r\n ref={this.refInternalMenu}\r\n initialSelectedItemIndex={this.state.firstItemShouldBeSelected ? 0 : -1}\r\n header={this.props.header}\r\n footer={this.props.footer}\r\n >\r\n {this.props.children}\r\n </InternalMenu>\r\n </Popup>\r\n )}\r\n </div>\r\n </RenderLayer>\r\n </CommonWrapper>\r\n );\r\n }\r\n\r\n public open = (): void => this.showMenu();\r\n public close = (): void => this.hideMenu();\r\n\r\n private refInternalMenu = (element: Nullable<InternalMenu>) => (this.menu = element);\r\n\r\n private handleOpen = () => {\r\n if (this.menu) {\r\n this.menu.focus();\r\n }\r\n };\r\n\r\n private renderCaption = () => {\r\n if (typeof this.props.caption === 'function') {\r\n const caption = this.props.caption({\r\n opened: this.state.menuVisible,\r\n openMenu: this.showMenu,\r\n closeMenu: this.hideMenu,\r\n toggleMenu: this.toggleMenu,\r\n });\r\n\r\n return (\r\n <span\r\n data-tid=\"PopupMenu__caption\"\r\n className={jsStyles.caption()}\r\n ref={element => (this.captionWrapper = element)}\r\n >\r\n {caption}\r\n </span>\r\n );\r\n }\r\n\r\n return (\r\n <span\r\n data-tid=\"PopupMenu__caption\"\r\n onClick={this.handleCaptionClick}\r\n onKeyDown={this.handleCaptionKeyDown}\r\n ref={element => (this.captionWrapper = element)}\r\n className={jsStyles.caption()}\r\n >\r\n {this.props.caption}\r\n </span>\r\n );\r\n };\r\n\r\n private hideMenuWithoutFocusing = () => this.hideMenu();\r\n\r\n private getPositions() {\r\n if (this.props.positions && isValidPositions(this.props.positions)) {\r\n return this.props.positions;\r\n }\r\n\r\n return PopupMenuPositions;\r\n }\r\n\r\n private showMenu = (firstItemShouldBeSelected?: boolean): void => {\r\n this.saveFocus();\r\n this.setState(\r\n {\r\n menuVisible: true,\r\n firstItemShouldBeSelected,\r\n },\r\n () => {\r\n this.handleChangeMenuVisible(false);\r\n },\r\n );\r\n };\r\n\r\n private hideMenu = (restoreFocus?: boolean): void => {\r\n this.setState(\r\n {\r\n menuVisible: false,\r\n firstItemShouldBeSelected: false,\r\n },\r\n () => {\r\n this.handleChangeMenuVisible(!!restoreFocus);\r\n },\r\n );\r\n };\r\n\r\n private toggleMenu = (): void => {\r\n this.state.menuVisible ? this.hideMenu() : this.showMenu();\r\n };\r\n\r\n private handleCaptionClick = (): void => {\r\n this.toggleMenu();\r\n };\r\n\r\n private handleCaptionKeyDown = (e: React.KeyboardEvent<HTMLElement>): void => {\r\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\r\n e.preventDefault();\r\n this.showMenu(true);\r\n }\r\n };\r\n\r\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\r\n if (isKeyEscape(e)) {\r\n const restoreFocus = true;\r\n this.hideMenu(restoreFocus);\r\n }\r\n };\r\n\r\n private saveFocus = (): void => {\r\n if (document) {\r\n this.savedFocusableElement = document.activeElement as HTMLElement;\r\n }\r\n };\r\n\r\n private restoreFocus = (): void => {\r\n if (this.savedFocusableElement) {\r\n this.savedFocusableElement.focus();\r\n this.savedFocusableElement = null;\r\n }\r\n };\r\n\r\n private handleChangeMenuVisible = (focusShouldBeRestored: boolean): void => {\r\n if (focusShouldBeRestored) {\r\n this.restoreFocus();\r\n }\r\n if (typeof this.props.onChangeMenuState === 'function') {\r\n this.props.onChangeMenuState(this.state.menuVisible, focusShouldBeRestored);\r\n }\r\n };\r\n\r\n private handleItemSelection = (event: React.SyntheticEvent<HTMLElement>): void => {\r\n if (event.isDefaultPrevented()) {\r\n return;\r\n }\r\n\r\n if (event.type === 'keydown') {\r\n event.preventDefault();\r\n }\r\n\r\n const restoreFocus = event.type === 'keydown';\r\n this.hideMenu(restoreFocus);\r\n };\r\n}\r\n"]}
1
+ {"version":3,"sources":["PopupMenu.tsx"],"names":["PopupMenuType","Dropdown","Tooltip","PopupMenu","state","menuVisible","firstItemShouldBeSelected","captionWrapper","savedFocusableElement","menu","open","showMenu","close","hideMenu","refInternalMenu","element","handleOpen","focus","renderCaption","props","caption","opened","openMenu","closeMenu","toggleMenu","jsStyles","handleCaptionClick","handleCaptionKeyDown","hideMenuWithoutFocusing","saveFocus","setState","handleChangeMenuVisible","restoreFocus","e","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleKeyDown","document","activeElement","focusShouldBeRestored","onChangeMenuState","handleItemSelection","event","isDefaultPrevented","type","render","container","width","children","popupMargin","popupHasPin","popupPinOffset","getPositions","disableAnimations","menuMaxHeight","menuWidth","header","footer","positions","PopupMenuPositions","React","Component","__KONTUR_REACT_UI__","defaultProps","Type"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport {\n isKeyArrowVertical,\n isKeyEnter,\n isKeyEscape,\n isKeySpace,\n someKeys,\n} from '../../lib/events/keyboard/identifiers';\nimport { InternalMenu } from '../InternalMenu';\nimport { Popup, PopupPosition } from '../Popup';\nimport { RenderLayer } from '../RenderLayer';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { PopupMenuPositions } from './PopupMenuPositions';\nimport { isValidPositions } from './validatePositions';\nimport { jsStyles } from './PopupMenu.styles';\n\nexport interface PopupMenuCaptionProps {\n opened: boolean;\n openMenu: (firstItemShouldBeSelected?: boolean) => void;\n closeMenu: (restoreFocus?: boolean) => void;\n toggleMenu: () => void;\n}\n\nexport interface PopupMenuProps extends CommonProps {\n children?: React.ReactNode;\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Ширина контейнера и caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо ```caption```,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: React.ReactNode | ((props: PopupMenuCaptionProps) => React.ReactNode);\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n\n /** Массив разрешенных положений меню относительно caption'а. */\n positions?: PopupPosition[];\n /** Колбэк, вызываемый после открытия/закрытия меню */\n onChangeMenuState?: (isOpened: boolean, restoreFocus: boolean) => void;\n /** Пропсы, передающиеся в Popup */\n popupHasPin?: boolean;\n popupMargin?: number;\n popupPinOffset?: number;\n type?: 'dropdown' | 'tooltip';\n disableAnimations: boolean;\n}\n\ninterface PopupMenuState {\n menuVisible: boolean;\n firstItemShouldBeSelected?: boolean;\n}\n\nexport const PopupMenuType = {\n Dropdown: 'dropdown',\n Tooltip: 'tooltip',\n};\n\nexport class PopupMenu extends React.Component<PopupMenuProps, PopupMenuState> {\n public static __KONTUR_REACT_UI__ = 'PopupMenu';\n\n public static defaultProps = {\n positions: PopupMenuPositions,\n type: PopupMenuType.Tooltip,\n popupHasPin: true,\n popupMargin: 0,\n disableAnimations: false,\n };\n\n public static Type = PopupMenuType;\n\n public state = {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n };\n\n private captionWrapper: HTMLSpanElement | null = null;\n private savedFocusableElement: HTMLElement | null = null;\n private menu: Nullable<InternalMenu> = null;\n\n public render() {\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer\n onClickOutside={this.hideMenuWithoutFocusing}\n onFocusOutside={this.hideMenuWithoutFocusing}\n active={this.state.menuVisible}\n >\n <div className={jsStyles.container()} style={{ width: this.props.width }}>\n {this.renderCaption()}\n {this.captionWrapper && this.props.children && (\n <Popup\n anchorElement={this.captionWrapper}\n opened={this.state.menuVisible}\n hasShadow\n margin={this.props.popupMargin}\n hasPin={this.props.popupHasPin}\n pinOffset={this.props.popupPinOffset}\n positions={this.getPositions()}\n disableAnimations={this.props.disableAnimations}\n onOpen={this.handleOpen}\n >\n <InternalMenu\n hasShadow={false}\n maxHeight={this.props.menuMaxHeight || 'none'}\n onKeyDown={this.handleKeyDown}\n width={this.props.menuWidth || 'auto'}\n onItemClick={this.handleItemSelection}\n cyclicSelection={false}\n ref={this.refInternalMenu}\n initialSelectedItemIndex={this.state.firstItemShouldBeSelected ? 0 : -1}\n header={this.props.header}\n footer={this.props.footer}\n >\n {this.props.children}\n </InternalMenu>\n </Popup>\n )}\n </div>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n public open = (): void => this.showMenu();\n public close = (): void => this.hideMenu();\n\n private refInternalMenu = (element: Nullable<InternalMenu>) => (this.menu = element);\n\n private handleOpen = () => {\n if (this.menu) {\n this.menu.focus();\n }\n };\n\n private renderCaption = () => {\n if (typeof this.props.caption === 'function') {\n const caption = this.props.caption({\n opened: this.state.menuVisible,\n openMenu: this.showMenu,\n closeMenu: this.hideMenu,\n toggleMenu: this.toggleMenu,\n });\n\n return (\n <span\n data-tid=\"PopupMenu__caption\"\n className={jsStyles.caption()}\n ref={element => (this.captionWrapper = element)}\n >\n {caption}\n </span>\n );\n }\n\n return (\n <span\n data-tid=\"PopupMenu__caption\"\n onClick={this.handleCaptionClick}\n onKeyDown={this.handleCaptionKeyDown}\n ref={element => (this.captionWrapper = element)}\n className={jsStyles.caption()}\n >\n {this.props.caption}\n </span>\n );\n };\n\n private hideMenuWithoutFocusing = () => this.hideMenu();\n\n private getPositions() {\n if (this.props.positions && isValidPositions(this.props.positions)) {\n return this.props.positions;\n }\n\n return PopupMenuPositions;\n }\n\n private showMenu = (firstItemShouldBeSelected?: boolean): void => {\n this.saveFocus();\n this.setState(\n {\n menuVisible: true,\n firstItemShouldBeSelected,\n },\n () => {\n this.handleChangeMenuVisible(false);\n },\n );\n };\n\n private hideMenu = (restoreFocus?: boolean): void => {\n this.setState(\n {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n },\n () => {\n this.handleChangeMenuVisible(!!restoreFocus);\n },\n );\n };\n\n private toggleMenu = (): void => {\n this.state.menuVisible ? this.hideMenu() : this.showMenu();\n };\n\n private handleCaptionClick = (): void => {\n this.toggleMenu();\n };\n\n private handleCaptionKeyDown = (e: React.KeyboardEvent<HTMLElement>): void => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n this.showMenu(true);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (isKeyEscape(e)) {\n const restoreFocus = true;\n this.hideMenu(restoreFocus);\n }\n };\n\n private saveFocus = (): void => {\n if (document) {\n this.savedFocusableElement = document.activeElement as HTMLElement;\n }\n };\n\n private restoreFocus = (): void => {\n if (this.savedFocusableElement) {\n this.savedFocusableElement.focus();\n this.savedFocusableElement = null;\n }\n };\n\n private handleChangeMenuVisible = (focusShouldBeRestored: boolean): void => {\n if (focusShouldBeRestored) {\n this.restoreFocus();\n }\n if (typeof this.props.onChangeMenuState === 'function') {\n this.props.onChangeMenuState(this.state.menuVisible, focusShouldBeRestored);\n }\n };\n\n private handleItemSelection = (event: React.SyntheticEvent<HTMLElement>): void => {\n if (event.isDefaultPrevented()) {\n return;\n }\n\n if (event.type === 'keydown') {\n event.preventDefault();\n }\n\n const restoreFocus = event.type === 'keydown';\n this.hideMenu(restoreFocus);\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupMenu.styles.ts"],"names":["styles","caption","css","container","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,OADa,qBACH;AACR,eAAOC,YAAP;;;;AAID,GANY;AAObC,EAAAA,SAPa,uBAOD;AACV,eAAOD,YAAP;;;AAGD,GAXY,EAAf;;;AAcO,IAAME,QAAQ,GAAG,2BAAaJ,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\r\n\r\nconst styles = {\r\n caption() {\r\n return css`\r\n display: inline-block;\r\n width: 100%;\r\n `;\r\n },\r\n container() {\r\n return css`\r\n display: inline-block;\r\n `;\r\n },\r\n};\r\n\r\nexport const jsStyles = memoizeStyle(styles);\r\n"]}
1
+ {"version":3,"sources":["PopupMenu.styles.ts"],"names":["styles","caption","css","container","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,OADa,qBACH;AACR,eAAOC,YAAP;;;;AAID,GANY;AAObC,EAAAA,SAPa,uBAOD;AACV,eAAOD,YAAP;;;AAGD,GAXY,EAAf;;;AAcO,IAAME,QAAQ,GAAG,2BAAaJ,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nconst styles = {\n caption() {\n return css`\n display: inline-block;\n width: 100%;\n `;\n },\n container() {\n return css`\n display: inline-block;\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupMenuPositions.tsx"],"names":["PopupMenuPositions"],"mappings":";;AAEO,IAAMA,kBAAmC,GAAG;AACjD,UADiD;AAEjD,YAFiD;AAGjD,WAHiD;AAIjD,WAJiD;AAKjD,cALiD;AAMjD,cANiD;AAOjD,aAPiD;AAQjD,eARiD;AASjD,cATiD;AAUjD,UAViD;AAWjD,aAXiD;AAYjD,aAZiD,CAA5C,C","sourcesContent":["import { PopupPosition } from '../Popup';\r\n\r\nexport const PopupMenuPositions: PopupPosition[] = [\r\n 'top left',\r\n 'top center',\r\n 'top right',\r\n 'right top',\r\n 'right middle',\r\n 'right bottom',\r\n 'bottom left',\r\n 'bottom center',\r\n 'bottom right',\r\n 'left top',\r\n 'left middle',\r\n 'left bottom',\r\n];\r\n"]}
1
+ {"version":3,"sources":["PopupMenuPositions.tsx"],"names":["PopupMenuPositions"],"mappings":";;AAEO,IAAMA,kBAAmC,GAAG;AACjD,UADiD;AAEjD,YAFiD;AAGjD,WAHiD;AAIjD,WAJiD;AAKjD,cALiD;AAMjD,cANiD;AAOjD,aAPiD;AAQjD,eARiD;AASjD,cATiD;AAUjD,UAViD;AAWjD,aAXiD;AAYjD,aAZiD,CAA5C,C","sourcesContent":["import { PopupPosition } from '../Popup';\n\nexport const PopupMenuPositions: PopupPosition[] = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n 'left top',\n 'left middle',\n 'left bottom',\n];\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './PopupMenu';\r\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './PopupMenu';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["validatePositions.tsx"],"names":["isValidPosition","position","PopupMenuPositions","includes","isValidPositions","positions","every","item","isProductionEnv","Error"],"mappings":"yEAAA;;;AAGA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,QAAD,EAAsC;AAC5D,SAAOC,uCAAmBC,QAAnB,CAA4BF,QAA5B,CAAP;AACD,CAFD;;AAIO,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,SAAD,EAAyC;AACvE,SAAOA,SAAS,CAACC,KAAV,CAAgB,UAAAC,IAAI,EAAI;AAC7B,QAAIC,mCAAJ,EAAqB;AACnB,aAAOR,eAAe,CAACO,IAAD,CAAtB;AACD,KAFD,MAEO;AACL,UAAIP,eAAe,CAACO,IAAD,CAAnB,EAA2B;AACzB,eAAO,IAAP;AACD,OAFD,MAEO;AACL,cAAM,IAAIE,KAAJ,2BAAiCF,IAAjC,QAAN;AACD;AACF;AACF,GAVM,CAAP;AAWD,CAZM,C","sourcesContent":["import { isProductionEnv } from '../../lib/currentEnvironment';\r\nimport { PopupPosition } from '../Popup';\r\n\r\nimport { PopupMenuPositions } from './PopupMenuPositions';\r\n\r\nconst isValidPosition = (position: PopupPosition): boolean => {\r\n return PopupMenuPositions.includes(position);\r\n};\r\n\r\nexport const isValidPositions = (positions: PopupPosition[]): boolean => {\r\n return positions.every(item => {\r\n if (isProductionEnv) {\r\n return isValidPosition(item);\r\n } else {\r\n if (isValidPosition(item)) {\r\n return true;\r\n } else {\r\n throw new Error(`Unxpected position \"${item}\"`);\r\n }\r\n }\r\n });\r\n};\r\n"]}
1
+ {"version":3,"sources":["validatePositions.tsx"],"names":["isValidPosition","position","PopupMenuPositions","includes","isValidPositions","positions","every","item","isProductionEnv","Error"],"mappings":"yEAAA;;;AAGA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,QAAD,EAAsC;AAC5D,SAAOC,uCAAmBC,QAAnB,CAA4BF,QAA5B,CAAP;AACD,CAFD;;AAIO,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,SAAD,EAAyC;AACvE,SAAOA,SAAS,CAACC,KAAV,CAAgB,UAAAC,IAAI,EAAI;AAC7B,QAAIC,mCAAJ,EAAqB;AACnB,aAAOR,eAAe,CAACO,IAAD,CAAtB;AACD,KAFD,MAEO;AACL,UAAIP,eAAe,CAACO,IAAD,CAAnB,EAA2B;AACzB,eAAO,IAAP;AACD,OAFD,MAEO;AACL,cAAM,IAAIE,KAAJ,2BAAiCF,IAAjC,QAAN;AACD;AACF;AACF,GAVM,CAAP;AAWD,CAZM,C","sourcesContent":["import { isProductionEnv } from '../../lib/currentEnvironment';\nimport { PopupPosition } from '../Popup';\n\nimport { PopupMenuPositions } from './PopupMenuPositions';\n\nconst isValidPosition = (position: PopupPosition): boolean => {\n return PopupMenuPositions.includes(position);\n};\n\nexport const isValidPositions = (positions: PopupPosition[]): boolean => {\n return positions.every(item => {\n if (isProductionEnv) {\n return isValidPosition(item);\n } else {\n if (isValidPosition(item)) {\n return true;\n } else {\n throw new Error(`Unxpected position \"${item}\"`);\n }\n }\n });\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["RenderContainer.tsx"],"names":["RenderContainer","props","domContainer","rootId","getRootId","isBrowser","children","mountContainer","UNSAFE_componentWillReceiveProps","nextProps","unmountContainer","componentWillUnmount","destroyContainer","render","createContainer","canUseDOM","document","createElement","setAttribute","Upgrade","getSpecificityClassName","parentNode","body","appendChild","window","ReactTesting","addRenderContainer","removeChild","removeRenderContainer","React","Component","__KONTUR_REACT_UI__"],"mappings":"6UAAA;;AAEA;;AAEA;AACA;;AAEA,8D;;;AAGaA,e;;;;;;;;AAQX,2BAAYC,KAAZ,EAAyC;AACvC,wCAAMA,KAAN,UADuC,MAJjCC,YAIiC,GAJK,IAIL,OAFxBC,MAEwB,GAFPH,eAAe,CAACI,SAAhB,EAEO;;AAGvC,QAAIC,qBAAaJ,KAAK,CAACK,QAAvB,EAAiC;AAC/B,YAAKC,cAAL;AACD,KALsC;AAMxC,G;;AAEMC,EAAAA,gC,GAAP,0CAAwCC,SAAxC,EAAyF;AACvF,QAAI,CAAC,KAAKR,KAAL,CAAWK,QAAZ,IAAwBG,SAAS,CAACH,QAAtC,EAAgD;AAC9C,WAAKC,cAAL;AACD;AACD,QAAI,KAAKN,KAAL,CAAWK,QAAX,IAAuB,CAACG,SAAS,CAACH,QAAtC,EAAgD;AAC9C,WAAKI,gBAAL;AACD;AACF,G;;AAEMC,EAAAA,oB,GAAP,gCAA8B;AAC5B,SAAKC,gBAAL;AACD,G;;AAEMC,EAAAA,M,GAAP,kBAAgB;AACd,wBAAO,6BAAC,0CAAD,6BAA0B,KAAKZ,KAA/B,IAAsC,YAAY,EAAE,KAAKC,YAAzD,EAAuE,MAAM,EAAE,KAAKC,MAApF,IAAP;AACD,G;;AAEOW,EAAAA,e,GAAR,2BAA0B;AACxB,QAAIC,iBAAJ,EAAe;AACb,UAAMb,YAAY,GAAGc,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAArB;AACAf,MAAAA,YAAY,CAACgB,YAAb,CAA0B,OAA1B,EAAmCC,kBAAQC,uBAAR,EAAnC;AACAlB,MAAAA,YAAY,CAACgB,YAAb,CAA0B,4BAA1B,OAA2D,KAAKf,MAAhE;AACA,WAAKD,YAAL,GAAoBA,YAApB;AACD;AACF,G;;AAEOK,EAAAA,c,GAAR,0BAAyB;AACvB,QAAI,CAAC,KAAKL,YAAV,EAAwB;AACtB,WAAKY,eAAL;AACD;AACD,QAAI,KAAKZ,YAAL,IAAqB,KAAKA,YAAL,CAAkBmB,UAAlB,KAAiCL,QAAQ,CAACM,IAAnE,EAAyE;AACvEN,MAAAA,QAAQ,CAACM,IAAT,CAAcC,WAAd,CAA0B,KAAKrB,YAA/B;AACA,UAAIsB,MAAM,CAACC,YAAX,EAAyB;AACvBD,QAAAA,MAAM,CAACC,YAAP,CAAoBC,kBAApB,CAAuC,KAAKvB,MAA5C,EAAoD,IAApD;AACD;AACF;AACF,G;;AAEOS,EAAAA,gB,GAAR,4BAA2B;AACzB,QAAI,KAAKV,YAAT,EAAuB;AACrB,WAAKQ,gBAAL;AACA,WAAKR,YAAL,GAAoB,IAApB;AACD;AACF,G;;AAEOQ,EAAAA,gB,GAAR,4BAA2B;AACzB,QAAI,KAAKR,YAAL,IAAqB,KAAKA,YAAL,CAAkBmB,UAA3C,EAAuD;AACrD,WAAKnB,YAAL,CAAkBmB,UAAlB,CAA6BM,WAA7B,CAAyC,KAAKzB,YAA9C;;AAEA,UAAIsB,MAAM,CAACC,YAAX,EAAyB;AACvBD,QAAAA,MAAM,CAACC,YAAP,CAAoBG,qBAApB,CAA0C,KAAKzB,MAA/C;AACD;AACF;AACF,G,0BArEkC0B,eAAMC,S,4CAA9B9B,e,CACG+B,mB,GAAsB,iB,CADzB/B,e,CAGII,S,GAAY,oBAAM,yBAAN,E","sourcesContent":["import React from 'react';\r\n\r\nimport { canUseDOM, isBrowser } from '../../lib/client';\r\nimport { Nullable } from '../../typings/utility-types';\r\nimport { getRandomID } from '../../lib/utils';\r\nimport { Upgrade } from '../../lib/Upgrades';\r\n\r\nimport { RenderInnerContainer } from './RenderInnerContainer';\r\nimport { RenderContainerProps } from './RenderContainerTypes';\r\n\r\nexport class RenderContainer extends React.Component<RenderContainerProps> {\r\n public static __KONTUR_REACT_UI__ = 'RenderContainer';\r\n\r\n private static getRootId = () => getRandomID();\r\n private domContainer: Nullable<HTMLElement> = null;\r\n\r\n private readonly rootId: string = RenderContainer.getRootId();\r\n\r\n constructor(props: RenderContainerProps) {\r\n super(props);\r\n\r\n if (isBrowser && props.children) {\r\n this.mountContainer();\r\n }\r\n }\r\n\r\n public UNSAFE_componentWillReceiveProps(nextProps: Readonly<RenderContainerProps>): void {\r\n if (!this.props.children && nextProps.children) {\r\n this.mountContainer();\r\n }\r\n if (this.props.children && !nextProps.children) {\r\n this.unmountContainer();\r\n }\r\n }\r\n\r\n public componentWillUnmount() {\r\n this.destroyContainer();\r\n }\r\n\r\n public render() {\r\n return <RenderInnerContainer {...this.props} domContainer={this.domContainer} rootId={this.rootId} />;\r\n }\r\n\r\n private createContainer() {\r\n if (canUseDOM) {\r\n const domContainer = document.createElement('div');\r\n domContainer.setAttribute('class', Upgrade.getSpecificityClassName());\r\n domContainer.setAttribute('data-rendered-container-id', `${this.rootId}`);\r\n this.domContainer = domContainer;\r\n }\r\n }\r\n\r\n private mountContainer() {\r\n if (!this.domContainer) {\r\n this.createContainer();\r\n }\r\n if (this.domContainer && this.domContainer.parentNode !== document.body) {\r\n document.body.appendChild(this.domContainer);\r\n if (window.ReactTesting) {\r\n window.ReactTesting.addRenderContainer(this.rootId, this);\r\n }\r\n }\r\n }\r\n\r\n private destroyContainer() {\r\n if (this.domContainer) {\r\n this.unmountContainer();\r\n this.domContainer = null;\r\n }\r\n }\r\n\r\n private unmountContainer() {\r\n if (this.domContainer && this.domContainer.parentNode) {\r\n this.domContainer.parentNode.removeChild(this.domContainer);\r\n\r\n if (window.ReactTesting) {\r\n window.ReactTesting.removeRenderContainer(this.rootId);\r\n }\r\n }\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["RenderContainer.tsx"],"names":["RenderContainer","props","domContainer","rootId","getRootId","isBrowser","children","mountContainer","UNSAFE_componentWillReceiveProps","nextProps","unmountContainer","componentWillUnmount","destroyContainer","render","createContainer","canUseDOM","document","createElement","setAttribute","Upgrade","getSpecificityClassName","parentNode","body","appendChild","window","ReactTesting","addRenderContainer","removeChild","removeRenderContainer","React","Component","__KONTUR_REACT_UI__"],"mappings":"6UAAA;;AAEA;;AAEA;AACA;;AAEA,8D;;;AAGaA,e;;;;;;;;AAQX,2BAAYC,KAAZ,EAAyC;AACvC,wCAAMA,KAAN,UADuC,MAJjCC,YAIiC,GAJK,IAIL,OAFxBC,MAEwB,GAFPH,eAAe,CAACI,SAAhB,EAEO;;AAGvC,QAAIC,qBAAaJ,KAAK,CAACK,QAAvB,EAAiC;AAC/B,YAAKC,cAAL;AACD,KALsC;AAMxC,G;;AAEMC,EAAAA,gC,GAAP,0CAAwCC,SAAxC,EAAyF;AACvF,QAAI,CAAC,KAAKR,KAAL,CAAWK,QAAZ,IAAwBG,SAAS,CAACH,QAAtC,EAAgD;AAC9C,WAAKC,cAAL;AACD;AACD,QAAI,KAAKN,KAAL,CAAWK,QAAX,IAAuB,CAACG,SAAS,CAACH,QAAtC,EAAgD;AAC9C,WAAKI,gBAAL;AACD;AACF,G;;AAEMC,EAAAA,oB,GAAP,gCAA8B;AAC5B,SAAKC,gBAAL;AACD,G;;AAEMC,EAAAA,M,GAAP,kBAAgB;AACd,wBAAO,6BAAC,0CAAD,6BAA0B,KAAKZ,KAA/B,IAAsC,YAAY,EAAE,KAAKC,YAAzD,EAAuE,MAAM,EAAE,KAAKC,MAApF,IAAP;AACD,G;;AAEOW,EAAAA,e,GAAR,2BAA0B;AACxB,QAAIC,iBAAJ,EAAe;AACb,UAAMb,YAAY,GAAGc,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAArB;AACAf,MAAAA,YAAY,CAACgB,YAAb,CAA0B,OAA1B,EAAmCC,kBAAQC,uBAAR,EAAnC;AACAlB,MAAAA,YAAY,CAACgB,YAAb,CAA0B,4BAA1B,OAA2D,KAAKf,MAAhE;AACA,WAAKD,YAAL,GAAoBA,YAApB;AACD;AACF,G;;AAEOK,EAAAA,c,GAAR,0BAAyB;AACvB,QAAI,CAAC,KAAKL,YAAV,EAAwB;AACtB,WAAKY,eAAL;AACD;AACD,QAAI,KAAKZ,YAAL,IAAqB,KAAKA,YAAL,CAAkBmB,UAAlB,KAAiCL,QAAQ,CAACM,IAAnE,EAAyE;AACvEN,MAAAA,QAAQ,CAACM,IAAT,CAAcC,WAAd,CAA0B,KAAKrB,YAA/B;AACA,UAAIsB,MAAM,CAACC,YAAX,EAAyB;AACvBD,QAAAA,MAAM,CAACC,YAAP,CAAoBC,kBAApB,CAAuC,KAAKvB,MAA5C,EAAoD,IAApD;AACD;AACF;AACF,G;;AAEOS,EAAAA,gB,GAAR,4BAA2B;AACzB,QAAI,KAAKV,YAAT,EAAuB;AACrB,WAAKQ,gBAAL;AACA,WAAKR,YAAL,GAAoB,IAApB;AACD;AACF,G;;AAEOQ,EAAAA,gB,GAAR,4BAA2B;AACzB,QAAI,KAAKR,YAAL,IAAqB,KAAKA,YAAL,CAAkBmB,UAA3C,EAAuD;AACrD,WAAKnB,YAAL,CAAkBmB,UAAlB,CAA6BM,WAA7B,CAAyC,KAAKzB,YAA9C;;AAEA,UAAIsB,MAAM,CAACC,YAAX,EAAyB;AACvBD,QAAAA,MAAM,CAACC,YAAP,CAAoBG,qBAApB,CAA0C,KAAKzB,MAA/C;AACD;AACF;AACF,G,0BArEkC0B,eAAMC,S,4CAA9B9B,e,CACG+B,mB,GAAsB,iB,CADzB/B,e,CAGII,S,GAAY,oBAAM,yBAAN,E","sourcesContent":["import React from 'react';\n\nimport { canUseDOM, isBrowser } from '../../lib/client';\nimport { Nullable } from '../../typings/utility-types';\nimport { getRandomID } from '../../lib/utils';\nimport { Upgrade } from '../../lib/Upgrades';\n\nimport { RenderInnerContainer } from './RenderInnerContainer';\nimport { RenderContainerProps } from './RenderContainerTypes';\n\nexport class RenderContainer extends React.Component<RenderContainerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderContainer';\n\n private static getRootId = () => getRandomID();\n private domContainer: Nullable<HTMLElement> = null;\n\n private readonly rootId: string = RenderContainer.getRootId();\n\n constructor(props: RenderContainerProps) {\n super(props);\n\n if (isBrowser && props.children) {\n this.mountContainer();\n }\n }\n\n public UNSAFE_componentWillReceiveProps(nextProps: Readonly<RenderContainerProps>): void {\n if (!this.props.children && nextProps.children) {\n this.mountContainer();\n }\n if (this.props.children && !nextProps.children) {\n this.unmountContainer();\n }\n }\n\n public componentWillUnmount() {\n this.destroyContainer();\n }\n\n public render() {\n return <RenderInnerContainer {...this.props} domContainer={this.domContainer} rootId={this.rootId} />;\n }\n\n private createContainer() {\n if (canUseDOM) {\n const domContainer = document.createElement('div');\n domContainer.setAttribute('class', Upgrade.getSpecificityClassName());\n domContainer.setAttribute('data-rendered-container-id', `${this.rootId}`);\n this.domContainer = domContainer;\n }\n }\n\n private mountContainer() {\n if (!this.domContainer) {\n this.createContainer();\n }\n if (this.domContainer && this.domContainer.parentNode !== document.body) {\n document.body.appendChild(this.domContainer);\n if (window.ReactTesting) {\n window.ReactTesting.addRenderContainer(this.rootId, this);\n }\n }\n }\n\n private destroyContainer() {\n if (this.domContainer) {\n this.unmountContainer();\n this.domContainer = null;\n }\n }\n\n private unmountContainer() {\n if (this.domContainer && this.domContainer.parentNode) {\n this.domContainer.parentNode.removeChild(this.domContainer);\n\n if (window.ReactTesting) {\n window.ReactTesting.removeRenderContainer(this.rootId);\n }\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["RenderInnerContainer.tsx"],"names":["SSRPlaceholder","Portal","container","rt_rootID","children","ReactDOM","createPortal","RenderInnerContainer","render","props","anchor","domContainer","rootId","inner","React","Component","__KONTUR_REACT_UI__"],"mappings":"iRAAA;AACA;;;AAGA;;;;;;;;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,wBAAM,yCAAQ,WAAQ,iBAAhB,GAAN,EAAvB;;AAEO,IAAMC,MAA4C,GAAG,SAA/CA,MAA+C,OAAwC,KAArCC,SAAqC,QAArCA,SAAqC,CAA1BC,SAA0B,QAA1BA,SAA0B,CAAfC,QAAe,QAAfA,QAAe;AAClG;AACA;AACE,iCAAC,cAAD,CAAO,QAAP;AACGF,IAAAA,SAAS,gBAAGG,kBAASC,YAAT,CAAsBF,QAAtB,EAAgCF,SAAhC,CAAH,gBAAgD,6BAAC,cAAD,OAD5D;AAEGA,IAAAA,SAAS,gBAAG,2CAAU,4BAA0BC,SAApC,GAAH,gBAAuD,6BAAC,cAAD,OAFnE,CADF;;;AAMD,CARM,C;;AAUMI,oB;;;AAGJC,EAAAA,M,GAAP,kBAAgB;AACqC,SAAKC,KAD1C,CACNC,MADM,eACNA,MADM,CACEN,QADF,eACEA,QADF,CACYO,YADZ,eACYA,YADZ,CAC0BC,MAD1B,eAC0BA,MAD1B;AAEd,QAAIC,KAAK,GAAGH,MAAZ;;AAEA,QAAIN,QAAJ,EAAc;AACZS,MAAAA,KAAK;AACH,mCAAC,cAAD,CAAO,QAAP;AACGH,MAAAA,MADH;AAEE,mCAAC,MAAD,IAAQ,GAAG,EAAC,YAAZ,EAAyB,SAAS,EAAEE,MAApC,EAA4C,SAAS,EAAED,YAAvD;AACE,mCAAC,4BAAD,EAAmB,KAAKF,KAAxB,EAAgCL,QAAhC,CADF,CAFF,CADF;;;;AAQD;;AAED,WAAOS,KAAP;AACD,G,+BAnBuCC,eAAMC,S,sDAAnCR,oB,CACGS,mB,GAAsB,sB","sourcesContent":["import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\nimport { Nullable } from '../../typings/utility-types';\r\nimport { CommonWrapper } from '../CommonWrapper';\r\n\r\nimport { PortalProps, RenderContainerProps } from './RenderContainerTypes';\r\n\r\ninterface RenderInnerContainerProps extends RenderContainerProps {\r\n domContainer: Nullable<HTMLElement>;\r\n rootId: string;\r\n}\r\n\r\n// Заглушка нужна для корректной гидрации порталов после SSR,\r\n// которую реакт сам пока не поддерживает.\r\n// @see https://github.com/facebook/react/issues/13097\r\n// А также для вставки актуального render-container-id на клиенте.\r\n//\r\n// Дело в том, что во время гидрации, структура HTML на сервере\r\n// и на клиенте должна совпадать, иначе возможны артефакты.\r\n// Алгоритм там примерно такой. Клиент во время гидрации идет\r\n// по этим двум деревьям и сравнивает узлы. Элементы разных типов\r\n// он подменяет на свои. А те, что совпадают, он оставляет как есть\r\n// вместе со всеми атрибутами, навесив только обработчики событий.\r\n//\r\n// Поэтому, для портала, который рендерится только на клиенте,\r\n// нужно использовать серверную заглушку, чтобы при гидрации\r\n// он не испортил какой-то другой элемент. Null не подходит,\r\n// т.к. на сервере он тоже не рендерится.\r\n// А элемент с render-container-id нужно отрендерить с нуля.\r\n\r\nconst SSRPlaceholder = () => <script data-id=\"ssr-placeholder\" />;\r\n\r\nexport const Portal: React.FunctionComponent<PortalProps> = ({ container, rt_rootID, children }) => {\r\n // container exists only in browser\r\n return (\r\n <React.Fragment>\r\n {container ? ReactDOM.createPortal(children, container) : <SSRPlaceholder />}\r\n {container ? <noscript data-render-container-id={rt_rootID} /> : <SSRPlaceholder />}\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nexport class RenderInnerContainer extends React.Component<RenderInnerContainerProps> {\r\n public static __KONTUR_REACT_UI__ = 'RenderInnerContainer';\r\n\r\n public render() {\r\n const { anchor, children, domContainer, rootId } = this.props;\r\n let inner = anchor;\r\n\r\n if (children) {\r\n inner = (\r\n <React.Fragment>\r\n {anchor}\r\n <Portal key=\"portal-ref\" rt_rootID={rootId} container={domContainer}>\r\n <CommonWrapper {...this.props}>{children}</CommonWrapper>\r\n </Portal>\r\n </React.Fragment>\r\n );\r\n }\r\n\r\n return inner;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["RenderInnerContainer.tsx"],"names":["SSRPlaceholder","Portal","container","rt_rootID","children","ReactDOM","createPortal","RenderInnerContainer","render","props","anchor","domContainer","rootId","inner","React","Component","__KONTUR_REACT_UI__"],"mappings":"iRAAA;AACA;;;AAGA;;;;;;;;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,wBAAM,yCAAQ,WAAQ,iBAAhB,GAAN,EAAvB;;AAEO,IAAMC,MAA4C,GAAG,SAA/CA,MAA+C,OAAwC,KAArCC,SAAqC,QAArCA,SAAqC,CAA1BC,SAA0B,QAA1BA,SAA0B,CAAfC,QAAe,QAAfA,QAAe;AAClG;AACA;AACE,iCAAC,cAAD,CAAO,QAAP;AACGF,IAAAA,SAAS,gBAAGG,kBAASC,YAAT,CAAsBF,QAAtB,EAAgCF,SAAhC,CAAH,gBAAgD,6BAAC,cAAD,OAD5D;AAEGA,IAAAA,SAAS,gBAAG,2CAAU,4BAA0BC,SAApC,GAAH,gBAAuD,6BAAC,cAAD,OAFnE,CADF;;;AAMD,CARM,C;;AAUMI,oB;;;AAGJC,EAAAA,M,GAAP,kBAAgB;AACqC,SAAKC,KAD1C,CACNC,MADM,eACNA,MADM,CACEN,QADF,eACEA,QADF,CACYO,YADZ,eACYA,YADZ,CAC0BC,MAD1B,eAC0BA,MAD1B;AAEd,QAAIC,KAAK,GAAGH,MAAZ;;AAEA,QAAIN,QAAJ,EAAc;AACZS,MAAAA,KAAK;AACH,mCAAC,cAAD,CAAO,QAAP;AACGH,MAAAA,MADH;AAEE,mCAAC,MAAD,IAAQ,GAAG,EAAC,YAAZ,EAAyB,SAAS,EAAEE,MAApC,EAA4C,SAAS,EAAED,YAAvD;AACE,mCAAC,4BAAD,EAAmB,KAAKF,KAAxB,EAAgCL,QAAhC,CADF,CAFF,CADF;;;;AAQD;;AAED,WAAOS,KAAP;AACD,G,+BAnBuCC,eAAMC,S,sDAAnCR,oB,CACGS,mB,GAAsB,sB","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonWrapper } from '../CommonWrapper';\n\nimport { PortalProps, RenderContainerProps } from './RenderContainerTypes';\n\ninterface RenderInnerContainerProps extends RenderContainerProps {\n domContainer: Nullable<HTMLElement>;\n rootId: string;\n}\n\n// Заглушка нужна для корректной гидрации порталов после SSR,\n// которую реакт сам пока не поддерживает.\n// @see https://github.com/facebook/react/issues/13097\n// А также для вставки актуального render-container-id на клиенте.\n//\n// Дело в том, что во время гидрации, структура HTML на сервере\n// и на клиенте должна совпадать, иначе возможны артефакты.\n// Алгоритм там примерно такой. Клиент во время гидрации идет\n// по этим двум деревьям и сравнивает узлы. Элементы разных типов\n// он подменяет на свои. А те, что совпадают, он оставляет как есть\n// вместе со всеми атрибутами, навесив только обработчики событий.\n//\n// Поэтому, для портала, который рендерится только на клиенте,\n// нужно использовать серверную заглушку, чтобы при гидрации\n// он не испортил какой-то другой элемент. Null не подходит,\n// т.к. на сервере он тоже не рендерится.\n// А элемент с render-container-id нужно отрендерить с нуля.\n\nconst SSRPlaceholder = () => <script data-id=\"ssr-placeholder\" />;\n\nexport const Portal: React.FunctionComponent<PortalProps> = ({ container, rt_rootID, children }) => {\n // container exists only in browser\n return (\n <React.Fragment>\n {container ? ReactDOM.createPortal(children, container) : <SSRPlaceholder />}\n {container ? <noscript data-render-container-id={rt_rootID} /> : <SSRPlaceholder />}\n </React.Fragment>\n );\n};\n\nexport class RenderInnerContainer extends React.Component<RenderInnerContainerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderInnerContainer';\n\n public render() {\n const { anchor, children, domContainer, rootId } = this.props;\n let inner = anchor;\n\n if (children) {\n inner = (\n <React.Fragment>\n {anchor}\n <Portal key=\"portal-ref\" rt_rootID={rootId} container={domContainer}>\n <CommonWrapper {...this.props}>{children}</CommonWrapper>\n </Portal>\n </React.Fragment>\n );\n }\n\n return inner;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './RenderContainer';\r\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './RenderContainer';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["RenderLayer.tsx"],"names":["RenderLayer","focusOutsideListenerToken","handleFocusOutside","event","props","onFocusOutside","handleNativeDocClick","target","srcElement","node","getDomNode","Element","onClickOutside","componentDidMount","active","attachListeners","componentDidUpdate","prevProps","detachListeners","componentWillUnmount","render","React","Children","only","children","window","addEventListener","document","documentElement","remove","removeEventListener","Component","__KONTUR_REACT_UI__","propTypes","propName","componentName","Error","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\r\nimport { findDOMNode } from 'react-dom';\r\n\r\nimport { listen as listenFocusOutside, containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\r\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\r\n\r\nexport interface RenderLayerProps extends CommonProps {\r\n children: JSX.Element;\r\n onClickOutside?: (e: Event) => void;\r\n onFocusOutside?: (e: Event) => void;\r\n active?: boolean;\r\n}\r\n\r\nexport class RenderLayer extends React.Component<RenderLayerProps> {\r\n public static __KONTUR_REACT_UI__ = 'RenderLayer';\r\n\r\n public static propTypes = {\r\n active(props: RenderLayerProps, propName: keyof RenderLayerProps, componentName: string) {\r\n const { active, onClickOutside, onFocusOutside } = props;\r\n if (active && !(onClickOutside || onFocusOutside)) {\r\n return new Error(\r\n `[${componentName}]: using the component without either 'onClickOutside' or 'onFocusOutside' callback is pointless.`,\r\n );\r\n }\r\n },\r\n };\r\n\r\n public static defaultProps = {\r\n active: true,\r\n };\r\n\r\n private focusOutsideListenerToken: {\r\n remove: () => void;\r\n } | null = null;\r\n\r\n public componentDidMount() {\r\n if (this.props.active) {\r\n this.attachListeners();\r\n }\r\n }\r\n\r\n public componentDidUpdate(prevProps: RenderLayerProps) {\r\n if (!prevProps.active && this.props.active) {\r\n this.attachListeners();\r\n }\r\n if (prevProps.active && !this.props.active) {\r\n this.detachListeners();\r\n }\r\n }\r\n\r\n public componentWillUnmount() {\r\n if (this.props.active) {\r\n this.detachListeners();\r\n }\r\n }\r\n\r\n public render() {\r\n return <CommonWrapper {...this.props}>{React.Children.only(this.props.children)}</CommonWrapper>;\r\n }\r\n\r\n private attachListeners() {\r\n this.focusOutsideListenerToken = listenFocusOutside(() => [this.getDomNode()], this.handleFocusOutside);\r\n window.addEventListener('blur', this.handleFocusOutside);\r\n document.addEventListener(\r\n 'ontouchstart' in document.documentElement ? 'touchstart' : 'mousedown',\r\n this.handleNativeDocClick,\r\n );\r\n }\r\n\r\n private detachListeners() {\r\n if (this.focusOutsideListenerToken) {\r\n this.focusOutsideListenerToken.remove();\r\n this.focusOutsideListenerToken = null;\r\n }\r\n\r\n window.removeEventListener('blur', this.handleFocusOutside);\r\n document.removeEventListener(\r\n 'ontouchstart' in document.documentElement ? 'touchstart' : 'mousedown',\r\n this.handleNativeDocClick,\r\n );\r\n }\r\n\r\n private getDomNode() {\r\n return findDOMNode(this) as HTMLElement;\r\n }\r\n\r\n private handleFocusOutside = (event: Event) => {\r\n if (this.props.onFocusOutside) {\r\n this.props.onFocusOutside(event);\r\n }\r\n };\r\n\r\n private handleNativeDocClick = (event: Event) => {\r\n const target = event.target || event.srcElement;\r\n const node = this.getDomNode();\r\n\r\n if (target instanceof Element && containsTargetOrRenderContainer(target)(node)) {\r\n return;\r\n }\r\n\r\n if (this.props.onClickOutside) {\r\n this.props.onClickOutside(event);\r\n }\r\n };\r\n}\r\n"]}
1
+ {"version":3,"sources":["RenderLayer.tsx"],"names":["RenderLayer","focusOutsideListenerToken","handleFocusOutside","event","props","onFocusOutside","handleNativeDocClick","target","srcElement","node","getDomNode","Element","onClickOutside","componentDidMount","active","attachListeners","componentDidUpdate","prevProps","detachListeners","componentWillUnmount","render","React","Children","only","children","window","addEventListener","document","documentElement","remove","removeEventListener","Component","__KONTUR_REACT_UI__","propTypes","propName","componentName","Error","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { findDOMNode } from 'react-dom';\n\nimport { listen as listenFocusOutside, containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\n\nexport interface RenderLayerProps extends CommonProps {\n children: JSX.Element;\n onClickOutside?: (e: Event) => void;\n onFocusOutside?: (e: Event) => void;\n active?: boolean;\n}\n\nexport class RenderLayer extends React.Component<RenderLayerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderLayer';\n\n public static propTypes = {\n active(props: RenderLayerProps, propName: keyof RenderLayerProps, componentName: string) {\n const { active, onClickOutside, onFocusOutside } = props;\n if (active && !(onClickOutside || onFocusOutside)) {\n return new Error(\n `[${componentName}]: using the component without either 'onClickOutside' or 'onFocusOutside' callback is pointless.`,\n );\n }\n },\n };\n\n public static defaultProps = {\n active: true,\n };\n\n private focusOutsideListenerToken: {\n remove: () => void;\n } | null = null;\n\n public componentDidMount() {\n if (this.props.active) {\n this.attachListeners();\n }\n }\n\n public componentDidUpdate(prevProps: RenderLayerProps) {\n if (!prevProps.active && this.props.active) {\n this.attachListeners();\n }\n if (prevProps.active && !this.props.active) {\n this.detachListeners();\n }\n }\n\n public componentWillUnmount() {\n if (this.props.active) {\n this.detachListeners();\n }\n }\n\n public render() {\n return <CommonWrapper {...this.props}>{React.Children.only(this.props.children)}</CommonWrapper>;\n }\n\n private attachListeners() {\n this.focusOutsideListenerToken = listenFocusOutside(() => [this.getDomNode()], this.handleFocusOutside);\n window.addEventListener('blur', this.handleFocusOutside);\n document.addEventListener(\n 'ontouchstart' in document.documentElement ? 'touchstart' : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private detachListeners() {\n if (this.focusOutsideListenerToken) {\n this.focusOutsideListenerToken.remove();\n this.focusOutsideListenerToken = null;\n }\n\n window.removeEventListener('blur', this.handleFocusOutside);\n document.removeEventListener(\n 'ontouchstart' in document.documentElement ? 'touchstart' : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private getDomNode() {\n return findDOMNode(this) as HTMLElement;\n }\n\n private handleFocusOutside = (event: Event) => {\n if (this.props.onFocusOutside) {\n this.props.onFocusOutside(event);\n }\n };\n\n private handleNativeDocClick = (event: Event) => {\n const target = event.target || event.srcElement;\n const node = this.getDomNode();\n\n if (target instanceof Element && containsTargetOrRenderContainer(target)(node)) {\n return;\n }\n\n if (this.props.onClickOutside) {\n this.props.onClickOutside(event);\n }\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './RenderLayer';\r\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './RenderLayer';\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["ResizeDetector.tsx"],"names":["ResizeDetector","iframeWindow","handleResize","event","props","onResize","iframeRef","iframe","contentWindow","componentDidMount","addEventListener","render","jsStyles","root","content","children","React","Component","__KONTUR_REACT_UI__"],"mappings":"0PAAA;;AAEA,yD;;;;;;AAMaA,c;;;AAGHC,IAAAA,Y,GAA8B,I;;;;;;;;;;;;;;;;;AAiB9BC,IAAAA,Y,GAAe,UAACC,KAAD,EAAoB;AACzC,UAAI,MAAKC,KAAL,CAAWC,QAAf,EAAyB;AACvB,cAAKD,KAAL,CAAWC,QAAX,CAAoBF,KAApB;AACD;AACF,K;;AAEOG,IAAAA,S,GAAY,UAACC,MAAD,EAA+B;AACjD,UAAIA,MAAM,IAAIA,MAAM,CAACC,aAArB,EAAoC;AAClC,cAAKP,YAAL,GAAoBM,MAAM,CAACC,aAA3B;AACD;AACF,K,4DAzBMC,iB,GAAP,6BAA2B,CACzB,IAAI,KAAKR,YAAT,EAAuB,CACrB,KAAKA,YAAL,CAAkBS,gBAAlB,CAAmC,QAAnC,EAA6C,KAAKR,YAAlD,EACD,CACF,C,QAEMS,M,GAAP,kBAAgB,CACd,oBACE,sCAAK,SAAS,EAAEC,yBAASC,IAAT,EAAhB,iBACE,yCAAQ,KAAK,EAAC,gBAAd,EAA+B,GAAG,EAAE,KAAKP,SAAzC,EAAoD,SAAS,EAAEM,yBAASL,MAAT,EAA/D,EAAkF,QAAQ,EAAE,CAAC,CAA7F,GADF,eAEE,sCAAK,SAAS,EAAEK,yBAASE,OAAT,EAAhB,IAAqC,KAAKV,KAAL,CAAWW,QAAhD,CAFF,CADF,CAMD,C,yBAlBiCC,eAAMC,S,0CAA7BjB,c,CACGkB,mB,GAAsB,gB","sourcesContent":["import React from 'react';\r\n\r\nimport { jsStyles } from './ResizeDetector.styles';\r\n\r\nexport interface ResizeDetectorProps {\r\n onResize?: (event: UIEvent) => void;\r\n}\r\n\r\nexport class ResizeDetector extends React.Component<ResizeDetectorProps> {\r\n public static __KONTUR_REACT_UI__ = 'ResizeDetector';\r\n\r\n private iframeWindow: Window | null = null;\r\n\r\n public componentDidMount() {\r\n if (this.iframeWindow) {\r\n this.iframeWindow.addEventListener('resize', this.handleResize);\r\n }\r\n }\r\n\r\n public render() {\r\n return (\r\n <div className={jsStyles.root()}>\r\n <iframe title=\"resizeDetector\" ref={this.iframeRef} className={jsStyles.iframe()} tabIndex={-1} />\r\n <div className={jsStyles.content()}>{this.props.children}</div>\r\n </div>\r\n );\r\n }\r\n\r\n private handleResize = (event: UIEvent) => {\r\n if (this.props.onResize) {\r\n this.props.onResize(event);\r\n }\r\n };\r\n\r\n private iframeRef = (iframe: HTMLIFrameElement) => {\r\n if (iframe && iframe.contentWindow) {\r\n this.iframeWindow = iframe.contentWindow;\r\n }\r\n };\r\n}\r\n"]}
1
+ {"version":3,"sources":["ResizeDetector.tsx"],"names":["ResizeDetector","iframeWindow","handleResize","event","props","onResize","iframeRef","iframe","contentWindow","componentDidMount","addEventListener","render","jsStyles","root","content","children","React","Component","__KONTUR_REACT_UI__"],"mappings":"0PAAA;;AAEA,yD;;;;;;AAMaA,c;;;AAGHC,IAAAA,Y,GAA8B,I;;;;;;;;;;;;;;;;;AAiB9BC,IAAAA,Y,GAAe,UAACC,KAAD,EAAoB;AACzC,UAAI,MAAKC,KAAL,CAAWC,QAAf,EAAyB;AACvB,cAAKD,KAAL,CAAWC,QAAX,CAAoBF,KAApB;AACD;AACF,K;;AAEOG,IAAAA,S,GAAY,UAACC,MAAD,EAA+B;AACjD,UAAIA,MAAM,IAAIA,MAAM,CAACC,aAArB,EAAoC;AAClC,cAAKP,YAAL,GAAoBM,MAAM,CAACC,aAA3B;AACD;AACF,K,4DAzBMC,iB,GAAP,6BAA2B,CACzB,IAAI,KAAKR,YAAT,EAAuB,CACrB,KAAKA,YAAL,CAAkBS,gBAAlB,CAAmC,QAAnC,EAA6C,KAAKR,YAAlD,EACD,CACF,C,QAEMS,M,GAAP,kBAAgB,CACd,oBACE,sCAAK,SAAS,EAAEC,yBAASC,IAAT,EAAhB,iBACE,yCAAQ,KAAK,EAAC,gBAAd,EAA+B,GAAG,EAAE,KAAKP,SAAzC,EAAoD,SAAS,EAAEM,yBAASL,MAAT,EAA/D,EAAkF,QAAQ,EAAE,CAAC,CAA7F,GADF,eAEE,sCAAK,SAAS,EAAEK,yBAASE,OAAT,EAAhB,IAAqC,KAAKV,KAAL,CAAWW,QAAhD,CAFF,CADF,CAMD,C,yBAlBiCC,eAAMC,S,0CAA7BjB,c,CACGkB,mB,GAAsB,gB","sourcesContent":["import React from 'react';\n\nimport { jsStyles } from './ResizeDetector.styles';\n\nexport interface ResizeDetectorProps {\n onResize?: (event: UIEvent) => void;\n}\n\nexport class ResizeDetector extends React.Component<ResizeDetectorProps> {\n public static __KONTUR_REACT_UI__ = 'ResizeDetector';\n\n private iframeWindow: Window | null = null;\n\n public componentDidMount() {\n if (this.iframeWindow) {\n this.iframeWindow.addEventListener('resize', this.handleResize);\n }\n }\n\n public render() {\n return (\n <div className={jsStyles.root()}>\n <iframe title=\"resizeDetector\" ref={this.iframeRef} className={jsStyles.iframe()} tabIndex={-1} />\n <div className={jsStyles.content()}>{this.props.children}</div>\n </div>\n );\n }\n\n private handleResize = (event: UIEvent) => {\n if (this.props.onResize) {\n this.props.onResize(event);\n }\n };\n\n private iframeRef = (iframe: HTMLIFrameElement) => {\n if (iframe && iframe.contentWindow) {\n this.iframeWindow = iframe.contentWindow;\n }\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["ResizeDetector.styles.ts"],"names":["styles","root","css","iframe","content","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,eAAOC,YAAP;;;AAGD,GALY;;AAObC,EAAAA,MAPa,oBAOJ;AACP,eAAOD,YAAP;;;;;;;;;;;AAWD,GAnBY;;AAqBbE,EAAAA,OArBa,qBAqBH;AACR,eAAOF,YAAP;;;AAGD,GAzBY,EAAf;;;AA4BO,IAAMG,QAAQ,GAAG,2BAAaL,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\r\n\r\nconst styles = {\r\n root() {\r\n return css`\r\n position: relative;\r\n `;\r\n },\r\n\r\n iframe() {\r\n return css`\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n padding: 0;\r\n margin: 0;\r\n border: 0;\r\n background: transparent;\r\n `;\r\n },\r\n\r\n content() {\r\n return css`\r\n position: relative;\r\n `;\r\n },\r\n};\r\n\r\nexport const jsStyles = memoizeStyle(styles);\r\n"]}
1
+ {"version":3,"sources":["ResizeDetector.styles.ts"],"names":["styles","root","css","iframe","content","jsStyles"],"mappings":"8QAAA,oD;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,eAAOC,YAAP;;;AAGD,GALY;;AAObC,EAAAA,MAPa,oBAOJ;AACP,eAAOD,YAAP;;;;;;;;;;;AAWD,GAnBY;;AAqBbE,EAAAA,OArBa,qBAqBH;AACR,eAAOF,YAAP;;;AAGD,GAzBY,EAAf;;;AA4BO,IAAMG,QAAQ,GAAG,2BAAaL,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nconst styles = {\n root() {\n return css`\n position: relative;\n `;\n },\n\n iframe() {\n return css`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n padding: 0;\n margin: 0;\n border: 0;\n background: transparent;\n `;\n },\n\n content() {\n return css`\n position: relative;\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './ResizeDetector';\r\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './ResizeDetector';\n"]}
@@ -30,8 +30,8 @@ var types = {
30
30
 
31
31
 
32
32
 
33
- /**
34
- * @deprecated Контур-специфичный компонент, будет удален в 3.0.0, перенесен в `@skbkontur/react-ui-addons` смотри [миграцию](https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/MIGRATION.md)
33
+ /**
34
+ * @deprecated Контур-специфичный компонент, будет удален в 3.0.0, перенесен в `@skbkontur/react-ui-addons` смотри [миграцию](https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/MIGRATION.md)
35
35
  */var
36
36
 
37
37
  SpinnerOld = (_dec = (0, _decorators.locale)('Spinner', _locale.SpinnerLocaleHelper), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(SpinnerOld, _React$Component);
@@ -123,14 +123,14 @@ SpinnerOld = (_dec = (0, _decorators.locale)('Spinner', _locale.SpinnerLocaleHel
123
123
 
124
124
  renderCaption = function (type, caption) {
125
125
  return /*#__PURE__*/_react.default.createElement("span", { className: (0, _classnames.default)(_SpinnerOld.jsStyles[type](_this.theme), _SpinnerOld.jsStyles.caption(_this.theme)) }, caption);
126
- };return _this;}var _proto = SpinnerOld.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _this$props = this.props,type = _this$props.type,_this$props$caption = _this$props.caption,caption = _this$props$caption === void 0 ? this.locale.loading : _this$props$caption;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, this.props, /*#__PURE__*/_react.default.createElement("div", { className: _SpinnerOld.jsStyles.spinner() }, /*#__PURE__*/_react.default.createElement("span", { className: _SpinnerOld.jsStyles.inner() }, this.renderSpinnerOld(type)), caption && this.renderCaption(type, caption)));};return SpinnerOld;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'SpinnerOld', _class2.propTypes = { /**
127
- * Текст рядом с мини-лоадером.
128
- *
129
- * 'Загрузка' - значение по-умолчанию
130
- */caption: PropTypes.node, dimmed: PropTypes.bool, /**
131
- * Тип спиннера: mini, normal, big
132
- *
133
- * Значение по-умолчанию - normal
134
- *
135
- * SpinnerOld.types - все доступные типы
126
+ };return _this;}var _proto = SpinnerOld.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _this$props = this.props,type = _this$props.type,_this$props$caption = _this$props.caption,caption = _this$props$caption === void 0 ? this.locale.loading : _this$props$caption;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, this.props, /*#__PURE__*/_react.default.createElement("div", { className: _SpinnerOld.jsStyles.spinner() }, /*#__PURE__*/_react.default.createElement("span", { className: _SpinnerOld.jsStyles.inner() }, this.renderSpinnerOld(type)), caption && this.renderCaption(type, caption)));};return SpinnerOld;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'SpinnerOld', _class2.propTypes = { /**
127
+ * Текст рядом с мини-лоадером.
128
+ *
129
+ * 'Загрузка' - значение по-умолчанию
130
+ */caption: PropTypes.node, dimmed: PropTypes.bool, /**
131
+ * Тип спиннера: mini, normal, big
132
+ *
133
+ * Значение по-умолчанию - normal
134
+ *
135
+ * SpinnerOld.types - все доступные типы
136
136
  */type: PropTypes.oneOf(Object.keys(types)) }, _class2.defaultProps = { type: 'normal' }, _class2.Types = types, _temp)) || _class);exports.SpinnerOld = SpinnerOld;
@@ -1 +1 @@
1
- {"version":3,"sources":["SpinnerOld.tsx"],"names":["types","big","mini","normal","SpinnerOld","SpinnerLocaleHelper","props","theme","locale","renderCloud","type","dimmed","cloudClassName","jsStyles","cloudDimmed","cloud","cloudWrapper","cloudStroke","renderCircle","circleClassName","circleDimmed","circle","renderSpinnerOld","renderCaption","caption","render","renderMain","loading","spinner","inner","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","node","bool","oneOf","Object","keys","defaultProps","Types"],"mappings":"6UAAA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,kC;;AAEA,IAAMA,KAA6C,GAAG;AACpDC,EAAAA,GAAG,EAAE,KAD+C;AAEpDC,EAAAA,IAAI,EAAE,MAF8C;AAGpDC,EAAAA,MAAM,EAAE,QAH4C,EAAtD;;;;;;;;;;;;;;;AAkBA;AACA;AACA,G;;AAEaC,U,WADZ,wBAAO,SAAP,EAAkBC,2BAAlB,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCC,sBAAmBC,KAAnB,EAA2C;AACzC,wCAAMA,KAAN,UADyC,MAHnCC,KAGmC,gBAF1BC,MAE0B;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BnCC,IAAAA,WA5BmC,GA4BrB,UAACC,IAAD,EAA2C;AACvDC,MAAAA,MADuD,GAC5C,MAAKL,KADuC,CACvDK,MADuD;AAE/D,UAAMC,cAAc,GAAGD,MAAM,GAAGE,qBAASC,WAAT,CAAqB,MAAKP,KAA1B,CAAH,GAAsCM,qBAASE,KAAT,CAAe,MAAKR,KAApB,CAAnE;;AAEA;AACE,+CAAM,SAAS,EAAEM,qBAASG,YAAT,EAAjB;AACE,qCAAC,wCAAD;AACE,UAAA,MAAM,EAAEL,MADV;AAEE,UAAA,IAAI,EAAED,IAFR;AAGE,UAAA,SAAS,EAAEE,cAHb;AAIE,UAAA,eAAe,EAAEC,qBAASI,WAAT,CAAqB,MAAKV,KAA1B,CAJnB,GADF,CADF;;;;AAUD,KA1C0C;;AA4CnCW,IAAAA,YA5CmC,GA4CpB,YAAM;AAC3B,UAAMX,KAAK,GAAG,MAAKA,KAAnB,CAD2B;AAEnBI,MAAAA,MAFmB,GAER,MAAKL,KAFG,CAEnBK,MAFmB;AAG3B,UAAMQ,eAAe,GAAGR,MAAM,GAAGE,qBAASO,YAAT,CAAsBb,KAAtB,CAAH,GAAkCM,qBAASQ,MAAT,CAAgBd,KAAhB,CAAhE;;AAEA,0BAAO,6BAAC,wBAAD,IAAa,MAAM,EAAEI,MAArB,EAA6B,IAAI,EAAC,MAAlC,EAAyC,SAAS,EAAEQ,eAApD,GAAP;AACD,KAlD0C;;AAoDnCG,IAAAA,gBApDmC,GAoDhB,UAACZ,IAAD,EAA0B;AACnD,aAAOA,IAAI,KAAK,MAAT,GAAkB,MAAKQ,YAAL,EAAlB,GAAwC,MAAKT,WAAL,CAAiBC,IAAjB,CAA/C;AACD,KAtD0C;;AAwDnCa,IAAAA,aAxDmC,GAwDnB,UAACb,IAAD,EAAuBc,OAAvB,EAAoD;AAC1E,0BAAO,uCAAM,SAAS,EAAE,yBAAGX,qBAASH,IAAT,EAAe,MAAKH,KAApB,CAAH,EAA+BM,qBAASW,OAAT,CAAiB,MAAKjB,KAAtB,CAA/B,CAAjB,IAAgFiB,OAAhF,CAAP;AACD,KA1D0C,cAE1C,C,yCAEMC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAAAlB,KAAK,EAAI,CACR,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,OAAO,MAAI,CAACmB,UAAL,EAAP,CACD,CAJH,CADF,CAQD,C,QAEOA,U,GAAR,sBAAqB,mBAC6B,KAAKpB,KADlC,CACXI,IADW,eACXA,IADW,mCACLc,OADK,CACLA,OADK,oCACK,KAAKhB,MAAL,CAAYmB,OADjB,uBAGnB,oBACE,6BAAC,4BAAD,EAAmB,KAAKrB,KAAxB,eACE,sCAAK,SAAS,EAAEO,qBAASe,OAAT,EAAhB,iBACE,uCAAM,SAAS,EAAEf,qBAASgB,KAAT,EAAjB,IAAoC,KAAKP,gBAAL,CAAsBZ,IAAtB,CAApC,CADF,EAEGc,OAAO,IAAI,KAAKD,aAAL,CAAmBb,IAAnB,EAAyBc,OAAzB,CAFd,CADF,CADF,CAQD,C,qBAzD6BM,eAAMC,S,WACtBC,mB,GAAsB,Y,UAEtBC,S,GAAY,EACxB;AACJ;AACA;AACA;AACA,KACIT,OAAO,EAAEU,SAAS,CAACC,IANK,EAQxBxB,MAAM,EAAEuB,SAAS,CAACE,IARM,EAUxB;AACJ;AACA;AACA;AACA;AACA;AACA,KACI1B,IAAI,EAAEwB,SAAS,CAACG,KAAV,CAAgBC,MAAM,CAACC,IAAP,CAAYvC,KAAZ,CAAhB,CAjBkB,E,UAoBZwC,Y,GAAgC,EAC5C9B,IAAI,EAAE,QADsC,E,UAIhC+B,K,GAAsBzC,K","sourcesContent":["import React from 'react';\r\nimport * as PropTypes from 'prop-types';\r\nimport cn from 'classnames';\r\n\r\nimport { locale } from '../../lib/locale/decorators';\r\nimport { Theme } from '../../lib/theming/Theme';\r\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\r\nimport { SpinnerIcon } from '../icons/SpinnerIcon';\r\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\r\n\r\nimport { SpinnerOldCloudIcon } from './SpinnerOldCloudIcon';\r\nimport { jsStyles } from './SpinnerOld.styles';\r\nimport { SpinnerLocale, SpinnerLocaleHelper } from './locale';\r\n\r\nconst types: Record<SpinnerOldType, SpinnerOldType> = {\r\n big: 'big',\r\n mini: 'mini',\r\n normal: 'normal',\r\n};\r\n\r\nexport type SpinnerOldType = 'mini' | 'normal' | 'big';\r\n\r\nexport interface SpinnerOldProps extends CommonProps {\r\n caption?: React.ReactNode;\r\n dimmed?: boolean;\r\n /**\r\n * Тип спиннера\r\n * @default mini\r\n */\r\n type: SpinnerOldType;\r\n}\r\n\r\n/**\r\n * @deprecated Контур-специфичный компонент, будет удален в 3.0.0, перенесен в `@skbkontur/react-ui-addons` смотри [миграцию](https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/MIGRATION.md)\r\n */\r\n@locale('Spinner', SpinnerLocaleHelper)\r\nexport class SpinnerOld extends React.Component<SpinnerOldProps> {\r\n public static __KONTUR_REACT_UI__ = 'SpinnerOld';\r\n\r\n public static propTypes = {\r\n /**\r\n * Текст рядом с мини-лоадером.\r\n *\r\n * 'Загрузка' - значение по-умолчанию\r\n */\r\n caption: PropTypes.node,\r\n\r\n dimmed: PropTypes.bool,\r\n\r\n /**\r\n * Тип спиннера: mini, normal, big\r\n *\r\n * Значение по-умолчанию - normal\r\n *\r\n * SpinnerOld.types - все доступные типы\r\n */\r\n type: PropTypes.oneOf(Object.keys(types)),\r\n };\r\n\r\n public static defaultProps: SpinnerOldProps = {\r\n type: 'normal',\r\n };\r\n\r\n public static Types: typeof types = types;\r\n private theme!: Theme;\r\n private readonly locale!: SpinnerLocale;\r\n\r\n public constructor(props: SpinnerOldProps) {\r\n super(props);\r\n }\r\n\r\n public render() {\r\n return (\r\n <ThemeContext.Consumer>\r\n {theme => {\r\n this.theme = theme;\r\n return this.renderMain();\r\n }}\r\n </ThemeContext.Consumer>\r\n );\r\n }\r\n\r\n private renderMain() {\r\n const { type, caption = this.locale.loading } = this.props;\r\n\r\n return (\r\n <CommonWrapper {...this.props}>\r\n <div className={jsStyles.spinner()}>\r\n <span className={jsStyles.inner()}>{this.renderSpinnerOld(type)}</span>\r\n {caption && this.renderCaption(type, caption)}\r\n </div>\r\n </CommonWrapper>\r\n );\r\n }\r\n\r\n private renderCloud = (type: Exclude<SpinnerOldType, 'mini'>) => {\r\n const { dimmed } = this.props;\r\n const cloudClassName = dimmed ? jsStyles.cloudDimmed(this.theme) : jsStyles.cloud(this.theme);\r\n\r\n return (\r\n <span className={jsStyles.cloudWrapper()}>\r\n <SpinnerOldCloudIcon\r\n dimmed={dimmed}\r\n size={type}\r\n className={cloudClassName}\r\n strokeClassName={jsStyles.cloudStroke(this.theme)}\r\n />\r\n </span>\r\n );\r\n };\r\n\r\n private renderCircle = () => {\r\n const theme = this.theme;\r\n const { dimmed } = this.props;\r\n const circleClassName = dimmed ? jsStyles.circleDimmed(theme) : jsStyles.circle(theme);\r\n\r\n return <SpinnerIcon dimmed={dimmed} size=\"mini\" className={circleClassName} />;\r\n };\r\n\r\n private renderSpinnerOld = (type: SpinnerOldType) => {\r\n return type === 'mini' ? this.renderCircle() : this.renderCloud(type);\r\n };\r\n\r\n private renderCaption = (type: SpinnerOldType, caption: React.ReactNode) => {\r\n return <span className={cn(jsStyles[type](this.theme), jsStyles.caption(this.theme))}>{caption}</span>;\r\n };\r\n}\r\n"]}
1
+ {"version":3,"sources":["SpinnerOld.tsx"],"names":["types","big","mini","normal","SpinnerOld","SpinnerLocaleHelper","props","theme","locale","renderCloud","type","dimmed","cloudClassName","jsStyles","cloudDimmed","cloud","cloudWrapper","cloudStroke","renderCircle","circleClassName","circleDimmed","circle","renderSpinnerOld","renderCaption","caption","render","renderMain","loading","spinner","inner","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","node","bool","oneOf","Object","keys","defaultProps","Types"],"mappings":"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","sourcesContent":["import React from 'react';\nimport * as PropTypes from 'prop-types';\nimport cn from 'classnames';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { SpinnerIcon } from '../icons/SpinnerIcon';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { SpinnerOldCloudIcon } from './SpinnerOldCloudIcon';\nimport { jsStyles } from './SpinnerOld.styles';\nimport { SpinnerLocale, SpinnerLocaleHelper } from './locale';\n\nconst types: Record<SpinnerOldType, SpinnerOldType> = {\n big: 'big',\n mini: 'mini',\n normal: 'normal',\n};\n\nexport type SpinnerOldType = 'mini' | 'normal' | 'big';\n\nexport interface SpinnerOldProps extends CommonProps {\n caption?: React.ReactNode;\n dimmed?: boolean;\n /**\n * Тип спиннера\n * @default mini\n */\n type: SpinnerOldType;\n}\n\n/**\n * @deprecated Контур-специфичный компонент, будет удален в 3.0.0, перенесен в `@skbkontur/react-ui-addons` смотри [миграцию](https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/MIGRATION.md)\n */\n@locale('Spinner', SpinnerLocaleHelper)\nexport class SpinnerOld extends React.Component<SpinnerOldProps> {\n public static __KONTUR_REACT_UI__ = 'SpinnerOld';\n\n public static propTypes = {\n /**\n * Текст рядом с мини-лоадером.\n *\n * 'Загрузка' - значение по-умолчанию\n */\n caption: PropTypes.node,\n\n dimmed: PropTypes.bool,\n\n /**\n * Тип спиннера: mini, normal, big\n *\n * Значение по-умолчанию - normal\n *\n * SpinnerOld.types - все доступные типы\n */\n type: PropTypes.oneOf(Object.keys(types)),\n };\n\n public static defaultProps: SpinnerOldProps = {\n type: 'normal',\n };\n\n public static Types: typeof types = types;\n private theme!: Theme;\n private readonly locale!: SpinnerLocale;\n\n public constructor(props: SpinnerOldProps) {\n super(props);\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 { type, caption = this.locale.loading } = this.props;\n\n return (\n <CommonWrapper {...this.props}>\n <div className={jsStyles.spinner()}>\n <span className={jsStyles.inner()}>{this.renderSpinnerOld(type)}</span>\n {caption && this.renderCaption(type, caption)}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderCloud = (type: Exclude<SpinnerOldType, 'mini'>) => {\n const { dimmed } = this.props;\n const cloudClassName = dimmed ? jsStyles.cloudDimmed(this.theme) : jsStyles.cloud(this.theme);\n\n return (\n <span className={jsStyles.cloudWrapper()}>\n <SpinnerOldCloudIcon\n dimmed={dimmed}\n size={type}\n className={cloudClassName}\n strokeClassName={jsStyles.cloudStroke(this.theme)}\n />\n </span>\n );\n };\n\n private renderCircle = () => {\n const theme = this.theme;\n const { dimmed } = this.props;\n const circleClassName = dimmed ? jsStyles.circleDimmed(theme) : jsStyles.circle(theme);\n\n return <SpinnerIcon dimmed={dimmed} size=\"mini\" className={circleClassName} />;\n };\n\n private renderSpinnerOld = (type: SpinnerOldType) => {\n return type === 'mini' ? this.renderCircle() : this.renderCloud(type);\n };\n\n private renderCaption = (type: SpinnerOldType, caption: React.ReactNode) => {\n return <span className={cn(jsStyles[type](this.theme), jsStyles.caption(this.theme))}>{caption}</span>;\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["SpinnerOld.styles.ts"],"names":["styles","cloudStroke","t","css","spinnerOldBgColor","cloudWrapper","cloud","spinnerColor","isIE11","AnimationKeyframes","spinnerCloudOffset","spinnerCloudLength","cloudDimmed","spinnerOldDimmedColor","circle","spinnerOldColor","spinnerCircleOffset","spinnerCircleLength","spinnerCircleRotate","circleDimmed","caption","spinnerOldCaptionColor","spinner","inner","mini","spinnerOldCaptionGapSmall","spinnerOldFontSizeSmall","spinnerOldLineHeightSmall","normal","spinnerOldFontSizeMedium","spinnerOldLineHeightMedium","spinnerOldCaptionGapMedium","big","spinnerOldFontSizeLarge","spinnerOldLineHeightLarge","spinnerOldCaptionGapLarge","jsStyles"],"mappings":"8QAAA;;AAEA;AACA,0C;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,WADa,uBACDC,CADC,EACS;AACpB,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACE,iBADd;;AAGD,GALY;AAMbC,EAAAA,YANa,0BAME;AACb,eAAOF,YAAP;;;;AAID,GAXY;AAYbG,EAAAA,KAZa,iBAYPJ,CAZO,EAYG;AACd,eAAOC,YAAP;;;AAGYD,IAAAA,CAAC,CAACK,YAHd;;AAKI,KAACC,cAAD;;AAEaC,2CAAmBC,kBAAnB,CAAsCR,CAAtC,CAFb;AAGIO,2CAAmBE,kBAAnB,CAAsCT,CAAtC,CAHJ;AAIIO,2CAAmBF,YAAnB,CAAgCL,CAAhC,CAJJ,wCALJ;;;AAYD,GAzBY;AA0BbU,EAAAA,WA1Ba,uBA0BDV,CA1BC,EA0BS;AACpB,eAAOC,YAAP;;;AAGYD,IAAAA,CAAC,CAACW,qBAHd;;AAKI,KAACL,cAAD;;AAEaC,2CAAmBC,kBAAnB,CAAsCR,CAAtC,CAFb;AAGIO,2CAAmBE,kBAAnB,CAAsCT,CAAtC,CAHJ,iEALJ;;;AAWD,GAtCY;AAuCbY,EAAAA,MAvCa,kBAuCNZ,CAvCM,EAuCI;AACf,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACa,eADd;;AAGI,KAACP,cAAD;;AAEaC,2CAAmBO,mBAAnB,CAAuCd,CAAvC,CAFb;AAGIO,2CAAmBQ,mBAAnB,CAAuCf,CAAvC,CAHJ;AAIIO,2CAAmBS,mBAAnB,CAAuChB,CAAvC,CAJJ;AAKIO,2CAAmBF,YAAnB,CAAgCL,CAAhC,CALJ,wCAHJ;;;AAWD,GAnDY;AAoDbiB,EAAAA,YApDa,wBAoDAjB,CApDA,EAoDU;AACrB,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACW,qBADd;;AAGI,KAACL,cAAD;;AAEaC,2CAAmBO,mBAAnB,CAAuCd,CAAvC,CAFb;AAGIO,2CAAmBQ,mBAAnB,CAAuCf,CAAvC,CAHJ;AAIIO,2CAAmBS,mBAAnB,CAAuChB,CAAvC,CAJJ,mCAHJ;;;AAUD,GA/DY;;AAiEbkB,EAAAA,OAjEa,mBAiELlB,CAjEK,EAiEK;AAChB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACmB,sBADb;;AAGD,GArEY;;AAuEbC,EAAAA,OAvEa,qBAuEH;AACR,eAAOnB,YAAP;;;;AAID,GA5EY;;AA8EboB,EAAAA,KA9Ea,mBA8EL;AACN,eAAOpB,YAAP;;;AAGD,GAlFY;;AAoFbqB,EAAAA,IApFa,gBAoFRtB,CApFQ,EAoFE;AACb,eAAOC,YAAP;AACiBD,IAAAA,CAAC,CAACuB,yBADnB;AAEevB,IAAAA,CAAC,CAACwB,uBAFjB;AAGiBxB,IAAAA,CAAC,CAACyB,yBAHnB;;AAKD,GA1FY;;AA4FbC,EAAAA,MA5Fa,kBA4FN1B,CA5FM,EA4FI;AACf,eAAOC,YAAP;;AAEeD,IAAAA,CAAC,CAAC2B,wBAFjB;AAGiB3B,IAAAA,CAAC,CAAC4B,0BAHnB;AAIgB5B,IAAAA,CAAC,CAAC6B,0BAJlB;;AAMD,GAnGY;;AAqGbC,EAAAA,GArGa,eAqGT9B,CArGS,EAqGC;AACZ,eAAOC,YAAP;;AAEeD,IAAAA,CAAC,CAAC+B,uBAFjB;AAGiB/B,IAAAA,CAAC,CAACgC,yBAHnB;AAIgBhC,IAAAA,CAAC,CAACiC,yBAJlB;;AAMD,GA5GY,EAAf;;;AA+GO,IAAMC,QAAQ,GAAG,2BAAapC,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\r\nimport { Theme } from '../../lib/theming/Theme';\r\nimport { AnimationKeyframes } from '../../lib/theming/AnimationKeyframes';\r\nimport { isIE11 } from '../../lib/client';\r\n\r\nconst styles = {\r\n cloudStroke(t: Theme) {\r\n return css`\r\n stroke: ${t.spinnerOldBgColor};\r\n `;\r\n },\r\n cloudWrapper() {\r\n return css`\r\n fill: none;\r\n stroke-linecap: round;\r\n `;\r\n },\r\n cloud(t: Theme) {\r\n return css`\r\n stroke-dasharray: 20, 86;\r\n stroke-dashoffset: 15;\r\n stroke: ${t.spinnerColor};\r\n\r\n ${!isIE11 &&\r\n `\r\n animation: ${AnimationKeyframes.spinnerCloudOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\r\n ${AnimationKeyframes.spinnerCloudLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\r\n ${AnimationKeyframes.spinnerColor(t)} 6s ease-in-out infinite;\r\n `}\r\n `;\r\n },\r\n cloudDimmed(t: Theme) {\r\n return css`\r\n stroke-dasharray: 20, 86;\r\n stroke-dashoffset: 15;\r\n stroke: ${t.spinnerOldDimmedColor};\r\n\r\n ${!isIE11 &&\r\n `\r\n animation: ${AnimationKeyframes.spinnerCloudOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\r\n ${AnimationKeyframes.spinnerCloudLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite;\r\n `}\r\n `;\r\n },\r\n circle(t: Theme) {\r\n return css`\r\n stroke: ${t.spinnerOldColor};\r\n\r\n ${!isIE11 &&\r\n `\r\n animation: ${AnimationKeyframes.spinnerCircleOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\r\n ${AnimationKeyframes.spinnerCircleLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\r\n ${AnimationKeyframes.spinnerCircleRotate(t)} 2s linear infinite,\r\n ${AnimationKeyframes.spinnerColor(t)} 6s ease-in-out infinite;\r\n `}\r\n `;\r\n },\r\n circleDimmed(t: Theme) {\r\n return css`\r\n stroke: ${t.spinnerOldDimmedColor};\r\n\r\n ${!isIE11 &&\r\n `\r\n animation: ${AnimationKeyframes.spinnerCircleOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\r\n ${AnimationKeyframes.spinnerCircleLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\r\n ${AnimationKeyframes.spinnerCircleRotate(t)} 2s linear infinite;\r\n `}\r\n `;\r\n },\r\n\r\n caption(t: Theme) {\r\n return css`\r\n color: ${t.spinnerOldCaptionColor};\r\n `;\r\n },\r\n\r\n spinner() {\r\n return css`\r\n display: inline-block;\r\n text-align: center;\r\n `;\r\n },\r\n\r\n inner() {\r\n return css`\r\n display: inline-block;\r\n `;\r\n },\r\n\r\n mini(t: Theme) {\r\n return css`\r\n margin-left: ${t.spinnerOldCaptionGapSmall};\r\n font-size: ${t.spinnerOldFontSizeSmall};\r\n line-height: ${t.spinnerOldLineHeightSmall};\r\n `;\r\n },\r\n\r\n normal(t: Theme) {\r\n return css`\r\n display: block;\r\n font-size: ${t.spinnerOldFontSizeMedium};\r\n line-height: ${t.spinnerOldLineHeightMedium};\r\n margin-top: ${t.spinnerOldCaptionGapMedium};\r\n `;\r\n },\r\n\r\n big(t: Theme) {\r\n return css`\r\n display: block;\r\n font-size: ${t.spinnerOldFontSizeLarge};\r\n line-height: ${t.spinnerOldLineHeightLarge};\r\n margin-top: ${t.spinnerOldCaptionGapLarge};\r\n `;\r\n },\r\n};\r\n\r\nexport const jsStyles = memoizeStyle(styles);\r\n"]}
1
+ {"version":3,"sources":["SpinnerOld.styles.ts"],"names":["styles","cloudStroke","t","css","spinnerOldBgColor","cloudWrapper","cloud","spinnerColor","isIE11","AnimationKeyframes","spinnerCloudOffset","spinnerCloudLength","cloudDimmed","spinnerOldDimmedColor","circle","spinnerOldColor","spinnerCircleOffset","spinnerCircleLength","spinnerCircleRotate","circleDimmed","caption","spinnerOldCaptionColor","spinner","inner","mini","spinnerOldCaptionGapSmall","spinnerOldFontSizeSmall","spinnerOldLineHeightSmall","normal","spinnerOldFontSizeMedium","spinnerOldLineHeightMedium","spinnerOldCaptionGapMedium","big","spinnerOldFontSizeLarge","spinnerOldLineHeightLarge","spinnerOldCaptionGapLarge","jsStyles"],"mappings":"8QAAA;;AAEA;AACA,0C;;AAEA,IAAMA,MAAM,GAAG;AACbC,EAAAA,WADa,uBACDC,CADC,EACS;AACpB,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACE,iBADd;;AAGD,GALY;AAMbC,EAAAA,YANa,0BAME;AACb,eAAOF,YAAP;;;;AAID,GAXY;AAYbG,EAAAA,KAZa,iBAYPJ,CAZO,EAYG;AACd,eAAOC,YAAP;;;AAGYD,IAAAA,CAAC,CAACK,YAHd;;AAKI,KAACC,cAAD;;AAEaC,2CAAmBC,kBAAnB,CAAsCR,CAAtC,CAFb;AAGIO,2CAAmBE,kBAAnB,CAAsCT,CAAtC,CAHJ;AAIIO,2CAAmBF,YAAnB,CAAgCL,CAAhC,CAJJ,wCALJ;;;AAYD,GAzBY;AA0BbU,EAAAA,WA1Ba,uBA0BDV,CA1BC,EA0BS;AACpB,eAAOC,YAAP;;;AAGYD,IAAAA,CAAC,CAACW,qBAHd;;AAKI,KAACL,cAAD;;AAEaC,2CAAmBC,kBAAnB,CAAsCR,CAAtC,CAFb;AAGIO,2CAAmBE,kBAAnB,CAAsCT,CAAtC,CAHJ,iEALJ;;;AAWD,GAtCY;AAuCbY,EAAAA,MAvCa,kBAuCNZ,CAvCM,EAuCI;AACf,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACa,eADd;;AAGI,KAACP,cAAD;;AAEaC,2CAAmBO,mBAAnB,CAAuCd,CAAvC,CAFb;AAGIO,2CAAmBQ,mBAAnB,CAAuCf,CAAvC,CAHJ;AAIIO,2CAAmBS,mBAAnB,CAAuChB,CAAvC,CAJJ;AAKIO,2CAAmBF,YAAnB,CAAgCL,CAAhC,CALJ,wCAHJ;;;AAWD,GAnDY;AAoDbiB,EAAAA,YApDa,wBAoDAjB,CApDA,EAoDU;AACrB,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACW,qBADd;;AAGI,KAACL,cAAD;;AAEaC,2CAAmBO,mBAAnB,CAAuCd,CAAvC,CAFb;AAGIO,2CAAmBQ,mBAAnB,CAAuCf,CAAvC,CAHJ;AAIIO,2CAAmBS,mBAAnB,CAAuChB,CAAvC,CAJJ,mCAHJ;;;AAUD,GA/DY;;AAiEbkB,EAAAA,OAjEa,mBAiELlB,CAjEK,EAiEK;AAChB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACmB,sBADb;;AAGD,GArEY;;AAuEbC,EAAAA,OAvEa,qBAuEH;AACR,eAAOnB,YAAP;;;;AAID,GA5EY;;AA8EboB,EAAAA,KA9Ea,mBA8EL;AACN,eAAOpB,YAAP;;;AAGD,GAlFY;;AAoFbqB,EAAAA,IApFa,gBAoFRtB,CApFQ,EAoFE;AACb,eAAOC,YAAP;AACiBD,IAAAA,CAAC,CAACuB,yBADnB;AAEevB,IAAAA,CAAC,CAACwB,uBAFjB;AAGiBxB,IAAAA,CAAC,CAACyB,yBAHnB;;AAKD,GA1FY;;AA4FbC,EAAAA,MA5Fa,kBA4FN1B,CA5FM,EA4FI;AACf,eAAOC,YAAP;;AAEeD,IAAAA,CAAC,CAAC2B,wBAFjB;AAGiB3B,IAAAA,CAAC,CAAC4B,0BAHnB;AAIgB5B,IAAAA,CAAC,CAAC6B,0BAJlB;;AAMD,GAnGY;;AAqGbC,EAAAA,GArGa,eAqGT9B,CArGS,EAqGC;AACZ,eAAOC,YAAP;;AAEeD,IAAAA,CAAC,CAAC+B,uBAFjB;AAGiB/B,IAAAA,CAAC,CAACgC,yBAHnB;AAIgBhC,IAAAA,CAAC,CAACiC,yBAJlB;;AAMD,GA5GY,EAAf;;;AA+GO,IAAMC,QAAQ,GAAG,2BAAapC,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { AnimationKeyframes } from '../../lib/theming/AnimationKeyframes';\nimport { isIE11 } from '../../lib/client';\n\nconst styles = {\n cloudStroke(t: Theme) {\n return css`\n stroke: ${t.spinnerOldBgColor};\n `;\n },\n cloudWrapper() {\n return css`\n fill: none;\n stroke-linecap: round;\n `;\n },\n cloud(t: Theme) {\n return css`\n stroke-dasharray: 20, 86;\n stroke-dashoffset: 15;\n stroke: ${t.spinnerColor};\n\n ${!isIE11 &&\n `\n animation: ${AnimationKeyframes.spinnerCloudOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCloudLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ${AnimationKeyframes.spinnerColor(t)} 6s ease-in-out infinite;\n `}\n `;\n },\n cloudDimmed(t: Theme) {\n return css`\n stroke-dasharray: 20, 86;\n stroke-dashoffset: 15;\n stroke: ${t.spinnerOldDimmedColor};\n\n ${!isIE11 &&\n `\n animation: ${AnimationKeyframes.spinnerCloudOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCloudLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite;\n `}\n `;\n },\n circle(t: Theme) {\n return css`\n stroke: ${t.spinnerOldColor};\n\n ${!isIE11 &&\n `\n animation: ${AnimationKeyframes.spinnerCircleOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCircleLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ${AnimationKeyframes.spinnerCircleRotate(t)} 2s linear infinite,\n ${AnimationKeyframes.spinnerColor(t)} 6s ease-in-out infinite;\n `}\n `;\n },\n circleDimmed(t: Theme) {\n return css`\n stroke: ${t.spinnerOldDimmedColor};\n\n ${!isIE11 &&\n `\n animation: ${AnimationKeyframes.spinnerCircleOffset(t)} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCircleLength(t)} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ${AnimationKeyframes.spinnerCircleRotate(t)} 2s linear infinite;\n `}\n `;\n },\n\n caption(t: Theme) {\n return css`\n color: ${t.spinnerOldCaptionColor};\n `;\n },\n\n spinner() {\n return css`\n display: inline-block;\n text-align: center;\n `;\n },\n\n inner() {\n return css`\n display: inline-block;\n `;\n },\n\n mini(t: Theme) {\n return css`\n margin-left: ${t.spinnerOldCaptionGapSmall};\n font-size: ${t.spinnerOldFontSizeSmall};\n line-height: ${t.spinnerOldLineHeightSmall};\n `;\n },\n\n normal(t: Theme) {\n return css`\n display: block;\n font-size: ${t.spinnerOldFontSizeMedium};\n line-height: ${t.spinnerOldLineHeightMedium};\n margin-top: ${t.spinnerOldCaptionGapMedium};\n `;\n },\n\n big(t: Theme) {\n return css`\n display: block;\n font-size: ${t.spinnerOldFontSizeLarge};\n line-height: ${t.spinnerOldLineHeightLarge};\n margin-top: ${t.spinnerOldCaptionGapLarge};\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["SpinnerOldCloudIcon.tsx"],"names":["CLOUD_SVG_PATH","SPINNER_CLOUD_SIZE","height","width","SpinnerOldCloudIcon","size","strokeClassName","className","dimmed","pathRef","React","useRef","isIE11","isTestEnv","fallbackAnimationRef","useContext","ThemeContext","red","yellow","green","brand","useEffect","setStyleProperty","path","current","style","setProperty","SpinnerFallbackAnimationRunner","fallbackAnimation","stop","removeAttribute","multiply"],"mappings":"8LAAA;;AAEA;;;;;;AAMA;AACA;AACA;;AAEA,IAAMA,cAAc,meAApB;;;;;;;;;AASO,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,MAAM,EAAE,EADwB;AAEhCC,EAAAA,KAAK,EAAE,EAFyB,EAA3B,C;;;;;;;;;;AAYA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,OAA4E,KAAzEC,IAAyE,QAAzEA,IAAyE,CAAnEC,eAAmE,QAAnEA,eAAmE,CAAlDC,SAAkD,QAAlDA,SAAkD,CAAvCC,MAAuC,QAAvCA,MAAuC;AAC7G,MAAMC,OAAO,GAAGC,eAAMC,MAAN,CAA6B,IAA7B,CAAhB;;AAEA,MAAIC,kBAAU,CAACC,6BAAf,EAA0B;AACxB;AACA;AACA;;AAEA;AACA,QAAMC,oBAAoB,GAAGJ,eAAMC,MAAN,CAAoD,IAApD,CAA7B;AACA;AAPwB,4BAQcD,eAAMK,UAAN,CAAiBC,0BAAjB,CARd,CAQhBC,GARgB,qBAQhBA,GARgB,CAQXC,MARW,qBAQXA,MARW,CAQHC,KARG,qBAQHA,KARG,CAQIC,KARJ,qBAQIA,KARJ;AASxB;AACAV,mBAAMW,SAAN,CAAgB,YAAM;AACpB,UAAIT,kBAAU,CAACC,6BAAf,EAA0B;AACxB,YAAMS,gBAAoD,GAAG,SAAvDA,gBAAuD,GAAa;AACxE,cAAMC,IAAI,GAAGd,OAAO,CAACe,OAArB;AACA,cAAID,IAAJ,EAAU;AACR,2BAAAA,IAAI,CAACE,KAAL,EAAWC,WAAX;AACD;AACF,SALD;;AAOAZ,QAAAA,oBAAoB,CAACU,OAArB,GAA+B,IAAIG,wDAAJ;;AAE3B,6DAAsB,EAAtB,EAA0B,GAA1B,EAA+B,IAA/B,EAAqCL,gBAArC,CAF2B;AAG3B,6DAAsB,CAAC,EAAD,EAAK,EAAL,CAAtB,EAAgC,CAAC,EAAD,EAAK,EAAL,CAAhC,EAA0C,IAA1C,EAAgDA,gBAAhD,CAH2B;AAIvBd,QAAAA,MAAM,GAAG,EAAH,GAAQ,CAAC,oDAAqB,CAACS,GAAD,EAAMC,MAAN,EAAcC,KAAd,EAAqBC,KAArB,CAArB,EAAkD,IAAlD,EAAwDE,gBAAxD,CAAD,CAJS;;AAM7B,eAAO,EANsB,CAA/B;;;AASA,eAAO,YAAM;AACX,cAAMM,iBAAiB,GAAGd,oBAAoB,CAACU,OAA/C;AACA,cAAMD,IAAI,GAAGd,OAAO,CAACe,OAArB;AACA,cAAII,iBAAJ,EAAuB;AACrBA,YAAAA,iBAAiB,CAACC,IAAlB;AACD;AACD,cAAIN,IAAJ,EAAU;AACRA,YAAAA,IAAI,CAACO,eAAL,CAAqB,OAArB;AACD;AACF,SATD;AAUD;AACF,KA7BD,EA6BG,CAACtB,MAAD,EAASS,GAAT,EAAcC,MAAd,EAAsBC,KAAtB,EAA6BC,KAA7B,CA7BH;AA8BD;;AAED,MAAMW,QAAQ,GAAG1B,IAAI,KAAK,KAAT,GAAiB,CAAjB,GAAqB,CAAtC;AACA;AACE,0CAAK,KAAK,EAAEJ,kBAAkB,CAACE,KAAnB,GAA2B4B,QAAvC,EAAiD,MAAM,EAAE9B,kBAAkB,CAACC,MAAnB,GAA4B6B,QAArF,EAA+F,OAAO,EAAC,WAAvG;AACE,2CAAM,CAAC,EAAE/B,cAAT,EAAyB,WAAW,EAAC,GAArC,EAAyC,SAAS,EAAEM,eAApD,GADF;AAEE,2CAAM,CAAC,EAAEN,cAAT,EAAyB,WAAW,EAAC,GAArC,EAAyC,SAAS,EAAEO,SAApD,EAA+D,GAAG,EAAEE,OAApE,GAFF,CADF;;;AAMD,CApDM,C","sourcesContent":["import React from 'react';\r\n\r\nimport {\r\n SpinnerFallbackAnimationRunner,\r\n createOffsetAnimation,\r\n createLengthAnimation,\r\n createColorAnimation,\r\n} from '../../components/Spinner/SpinnerFallbackAnimation';\r\nimport { isTestEnv } from '../../lib/currentEnvironment';\r\nimport { isIE11 } from '../../lib/client';\r\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\r\n\r\nconst CLOUD_SVG_PATH = `M32.0297086,9.1495774 L31.5978628,8.5870774 C29.3570968,\r\n 5.67148577 25.9305165,4 22.1999329,4 C17.3429265,\r\n 4 12.9026663,7.04270463 11.154144,11.5717304 L10.901479,\r\n 12.2253114 L10.2421341,12.4725311 C6.50853057,13.8727758 4,\r\n 17.4719751 4,21.428492 C4,26.7061833 8.32047079,\r\n 31 13.6314689,31 L32.0297086,31 C38.078569,31 43,26.1036477 43,\r\n 20.0862989 C43,14.3602091 38.493302,9.5769573 32.7403918,\r\n 9.19661922 L32.0297086,9.1495774 Z`;\r\n\r\nexport const SPINNER_CLOUD_SIZE = {\r\n height: 35,\r\n width: 47,\r\n};\r\n\r\nexport interface SpinnerOldCloudIconProps {\r\n className: string;\r\n size: 'normal' | 'big';\r\n strokeClassName?: string;\r\n dimmed?: boolean;\r\n}\r\n\r\nexport const SpinnerOldCloudIcon = ({ size, strokeClassName, className, dimmed }: SpinnerOldCloudIconProps) => {\r\n const pathRef = React.useRef<SVGPathElement>(null);\r\n\r\n if (isIE11 && !isTestEnv) {\r\n // This condition will not change during app's life time\r\n // So its OK to use hooks here\r\n // https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level\r\n\r\n // eslint-disable-next-line react-hooks/rules-of-hooks\r\n const fallbackAnimationRef = React.useRef<SpinnerFallbackAnimationRunner | null>(null);\r\n // eslint-disable-next-line react-hooks/rules-of-hooks\r\n const { red, yellow, green, brand } = React.useContext(ThemeContext);\r\n // eslint-disable-next-line react-hooks/rules-of-hooks\r\n React.useEffect(() => {\r\n if (isIE11 && !isTestEnv) {\r\n const setStyleProperty: CSSStyleDeclaration['setProperty'] = (...args) => {\r\n const path = pathRef.current;\r\n if (path) {\r\n path.style.setProperty(...args);\r\n }\r\n };\r\n\r\n fallbackAnimationRef.current = new SpinnerFallbackAnimationRunner(\r\n [\r\n createOffsetAnimation(10, 116, 1000, setStyleProperty),\r\n createLengthAnimation([10, 96], [50, 56], 2000, setStyleProperty),\r\n ...(dimmed ? [] : [createColorAnimation([red, yellow, green, brand], 1500, setStyleProperty)]),\r\n ],\r\n 1000 / 60,\r\n );\r\n\r\n return () => {\r\n const fallbackAnimation = fallbackAnimationRef.current;\r\n const path = pathRef.current;\r\n if (fallbackAnimation) {\r\n fallbackAnimation.stop();\r\n }\r\n if (path) {\r\n path.removeAttribute('style');\r\n }\r\n };\r\n }\r\n }, [dimmed, red, yellow, green, brand]);\r\n }\r\n\r\n const multiply = size === 'big' ? 2 : 1;\r\n return (\r\n <svg width={SPINNER_CLOUD_SIZE.width * multiply} height={SPINNER_CLOUD_SIZE.height * multiply} viewBox=\"0 0 47 35\">\r\n <path d={CLOUD_SVG_PATH} strokeWidth=\"2\" className={strokeClassName} />\r\n <path d={CLOUD_SVG_PATH} strokeWidth=\"2\" className={className} ref={pathRef} />\r\n </svg>\r\n );\r\n};\r\n"]}
1
+ {"version":3,"sources":["SpinnerOldCloudIcon.tsx"],"names":["CLOUD_SVG_PATH","SPINNER_CLOUD_SIZE","height","width","SpinnerOldCloudIcon","size","strokeClassName","className","dimmed","pathRef","React","useRef","isIE11","isTestEnv","fallbackAnimationRef","useContext","ThemeContext","red","yellow","green","brand","useEffect","setStyleProperty","path","current","style","setProperty","SpinnerFallbackAnimationRunner","fallbackAnimation","stop","removeAttribute","multiply"],"mappings":"8LAAA;;AAEA;;;;;;AAMA;AACA;AACA;;AAEA,IAAMA,cAAc,meAApB;;;;;;;;;AASO,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,MAAM,EAAE,EADwB;AAEhCC,EAAAA,KAAK,EAAE,EAFyB,EAA3B,C;;;;;;;;;;AAYA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,OAA4E,KAAzEC,IAAyE,QAAzEA,IAAyE,CAAnEC,eAAmE,QAAnEA,eAAmE,CAAlDC,SAAkD,QAAlDA,SAAkD,CAAvCC,MAAuC,QAAvCA,MAAuC;AAC7G,MAAMC,OAAO,GAAGC,eAAMC,MAAN,CAA6B,IAA7B,CAAhB;;AAEA,MAAIC,kBAAU,CAACC,6BAAf,EAA0B;AACxB;AACA;AACA;;AAEA;AACA,QAAMC,oBAAoB,GAAGJ,eAAMC,MAAN,CAAoD,IAApD,CAA7B;AACA;AAPwB,4BAQcD,eAAMK,UAAN,CAAiBC,0BAAjB,CARd,CAQhBC,GARgB,qBAQhBA,GARgB,CAQXC,MARW,qBAQXA,MARW,CAQHC,KARG,qBAQHA,KARG,CAQIC,KARJ,qBAQIA,KARJ;AASxB;AACAV,mBAAMW,SAAN,CAAgB,YAAM;AACpB,UAAIT,kBAAU,CAACC,6BAAf,EAA0B;AACxB,YAAMS,gBAAoD,GAAG,SAAvDA,gBAAuD,GAAa;AACxE,cAAMC,IAAI,GAAGd,OAAO,CAACe,OAArB;AACA,cAAID,IAAJ,EAAU;AACR,2BAAAA,IAAI,CAACE,KAAL,EAAWC,WAAX;AACD;AACF,SALD;;AAOAZ,QAAAA,oBAAoB,CAACU,OAArB,GAA+B,IAAIG,wDAAJ;;AAE3B,6DAAsB,EAAtB,EAA0B,GAA1B,EAA+B,IAA/B,EAAqCL,gBAArC,CAF2B;AAG3B,6DAAsB,CAAC,EAAD,EAAK,EAAL,CAAtB,EAAgC,CAAC,EAAD,EAAK,EAAL,CAAhC,EAA0C,IAA1C,EAAgDA,gBAAhD,CAH2B;AAIvBd,QAAAA,MAAM,GAAG,EAAH,GAAQ,CAAC,oDAAqB,CAACS,GAAD,EAAMC,MAAN,EAAcC,KAAd,EAAqBC,KAArB,CAArB,EAAkD,IAAlD,EAAwDE,gBAAxD,CAAD,CAJS;;AAM7B,eAAO,EANsB,CAA/B;;;AASA,eAAO,YAAM;AACX,cAAMM,iBAAiB,GAAGd,oBAAoB,CAACU,OAA/C;AACA,cAAMD,IAAI,GAAGd,OAAO,CAACe,OAArB;AACA,cAAII,iBAAJ,EAAuB;AACrBA,YAAAA,iBAAiB,CAACC,IAAlB;AACD;AACD,cAAIN,IAAJ,EAAU;AACRA,YAAAA,IAAI,CAACO,eAAL,CAAqB,OAArB;AACD;AACF,SATD;AAUD;AACF,KA7BD,EA6BG,CAACtB,MAAD,EAASS,GAAT,EAAcC,MAAd,EAAsBC,KAAtB,EAA6BC,KAA7B,CA7BH;AA8BD;;AAED,MAAMW,QAAQ,GAAG1B,IAAI,KAAK,KAAT,GAAiB,CAAjB,GAAqB,CAAtC;AACA;AACE,0CAAK,KAAK,EAAEJ,kBAAkB,CAACE,KAAnB,GAA2B4B,QAAvC,EAAiD,MAAM,EAAE9B,kBAAkB,CAACC,MAAnB,GAA4B6B,QAArF,EAA+F,OAAO,EAAC,WAAvG;AACE,2CAAM,CAAC,EAAE/B,cAAT,EAAyB,WAAW,EAAC,GAArC,EAAyC,SAAS,EAAEM,eAApD,GADF;AAEE,2CAAM,CAAC,EAAEN,cAAT,EAAyB,WAAW,EAAC,GAArC,EAAyC,SAAS,EAAEO,SAApD,EAA+D,GAAG,EAAEE,OAApE,GAFF,CADF;;;AAMD,CApDM,C","sourcesContent":["import React from 'react';\n\nimport {\n SpinnerFallbackAnimationRunner,\n createOffsetAnimation,\n createLengthAnimation,\n createColorAnimation,\n} from '../../components/Spinner/SpinnerFallbackAnimation';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { isIE11 } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nconst CLOUD_SVG_PATH = `M32.0297086,9.1495774 L31.5978628,8.5870774 C29.3570968,\n 5.67148577 25.9305165,4 22.1999329,4 C17.3429265,\n 4 12.9026663,7.04270463 11.154144,11.5717304 L10.901479,\n 12.2253114 L10.2421341,12.4725311 C6.50853057,13.8727758 4,\n 17.4719751 4,21.428492 C4,26.7061833 8.32047079,\n 31 13.6314689,31 L32.0297086,31 C38.078569,31 43,26.1036477 43,\n 20.0862989 C43,14.3602091 38.493302,9.5769573 32.7403918,\n 9.19661922 L32.0297086,9.1495774 Z`;\n\nexport const SPINNER_CLOUD_SIZE = {\n height: 35,\n width: 47,\n};\n\nexport interface SpinnerOldCloudIconProps {\n className: string;\n size: 'normal' | 'big';\n strokeClassName?: string;\n dimmed?: boolean;\n}\n\nexport const SpinnerOldCloudIcon = ({ size, strokeClassName, className, dimmed }: SpinnerOldCloudIconProps) => {\n const pathRef = React.useRef<SVGPathElement>(null);\n\n if (isIE11 && !isTestEnv) {\n // This condition will not change during app's life time\n // So its OK to use hooks here\n // https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const fallbackAnimationRef = React.useRef<SpinnerFallbackAnimationRunner | null>(null);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { red, yellow, green, brand } = React.useContext(ThemeContext);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n if (isIE11 && !isTestEnv) {\n const setStyleProperty: CSSStyleDeclaration['setProperty'] = (...args) => {\n const path = pathRef.current;\n if (path) {\n path.style.setProperty(...args);\n }\n };\n\n fallbackAnimationRef.current = new SpinnerFallbackAnimationRunner(\n [\n createOffsetAnimation(10, 116, 1000, setStyleProperty),\n createLengthAnimation([10, 96], [50, 56], 2000, setStyleProperty),\n ...(dimmed ? [] : [createColorAnimation([red, yellow, green, brand], 1500, setStyleProperty)]),\n ],\n 1000 / 60,\n );\n\n return () => {\n const fallbackAnimation = fallbackAnimationRef.current;\n const path = pathRef.current;\n if (fallbackAnimation) {\n fallbackAnimation.stop();\n }\n if (path) {\n path.removeAttribute('style');\n }\n };\n }\n }, [dimmed, red, yellow, green, brand]);\n }\n\n const multiply = size === 'big' ? 2 : 1;\n return (\n <svg width={SPINNER_CLOUD_SIZE.width * multiply} height={SPINNER_CLOUD_SIZE.height * multiply} viewBox=\"0 0 47 35\">\n <path d={CLOUD_SVG_PATH} strokeWidth=\"2\" className={strokeClassName} />\n <path d={CLOUD_SVG_PATH} strokeWidth=\"2\" className={className} ref={pathRef} />\n </svg>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './SpinnerOld';\r\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":"uCAAA","sourcesContent":["export * from './SpinnerOld';\n"]}