@skbkontur/react-ui 5.2.1 → 5.3.0

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 (554) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js +49 -46
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +2 -0
  7. package/cjs/components/Button/Button.js +29 -1
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +6 -0
  10. package/cjs/components/Button/Button.styles.js +107 -75
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  13. package/cjs/components/Calendar/Calendar.js +1 -0
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Center/Center.d.ts +2 -0
  16. package/cjs/components/Center/Center.js +1 -0
  17. package/cjs/components/Center/Center.js.map +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
  19. package/cjs/components/Checkbox/Checkbox.js +2 -14
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
  22. package/cjs/components/ComboBox/ComboBox.js +1 -0
  23. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  24. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  25. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
  26. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  27. package/cjs/components/CurrencyInput/constants.js +1 -2
  28. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  29. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  30. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  31. package/cjs/components/DateInput/DateInput.d.ts +2 -0
  32. package/cjs/components/DateInput/DateInput.js +1 -0
  33. package/cjs/components/DateInput/DateInput.js.map +1 -1
  34. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  35. package/cjs/components/DatePicker/DatePicker.js +6 -60
  36. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  37. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  38. package/cjs/components/Dropdown/Dropdown.js +2 -82
  39. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  40. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  41. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  42. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  43. package/cjs/components/FxInput/FxInput.d.ts +2 -5
  44. package/cjs/components/FxInput/FxInput.js +2 -7
  45. package/cjs/components/FxInput/FxInput.js.map +1 -1
  46. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  47. package/cjs/components/Gapped/Gapped.js +1 -24
  48. package/cjs/components/Gapped/Gapped.js.map +1 -1
  49. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  50. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  51. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  52. package/cjs/components/Group/Group.d.ts +5 -4
  53. package/cjs/components/Group/Group.js +91 -40
  54. package/cjs/components/Group/Group.js.map +1 -1
  55. package/cjs/components/Group/Group.styles.d.ts +1 -0
  56. package/cjs/components/Group/Group.styles.js +12 -6
  57. package/cjs/components/Group/Group.styles.js.map +1 -1
  58. package/cjs/components/Hint/Hint.d.ts +2 -0
  59. package/cjs/components/Hint/Hint.js +1 -0
  60. package/cjs/components/Hint/Hint.js.map +1 -1
  61. package/cjs/components/Input/Input.d.ts +2 -0
  62. package/cjs/components/Input/Input.js +1 -0
  63. package/cjs/components/Input/Input.js.map +1 -1
  64. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  65. package/cjs/components/Kebab/Kebab.js +2 -26
  66. package/cjs/components/Kebab/Kebab.js.map +1 -1
  67. package/cjs/components/Link/Link.d.ts +2 -0
  68. package/cjs/components/Link/Link.js +1 -0
  69. package/cjs/components/Link/Link.js.map +1 -1
  70. package/cjs/components/Loader/Loader.d.ts +6 -36
  71. package/cjs/components/Loader/Loader.js +3 -57
  72. package/cjs/components/Loader/Loader.js.map +1 -1
  73. package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
  74. package/cjs/components/MaskedInput/MaskedInput.js +17 -1
  75. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  76. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  77. package/cjs/components/MenuItem/MenuItem.js +2 -22
  78. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  79. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  80. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  81. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  82. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  83. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  84. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  85. package/cjs/components/Modal/Modal.styles.js +36 -28
  86. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  87. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  88. package/cjs/components/Modal/ModalBody.js +1 -0
  89. package/cjs/components/Modal/ModalBody.js.map +1 -1
  90. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  91. package/cjs/components/Modal/ModalHeader.js +8 -1
  92. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  93. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  94. package/cjs/components/Paging/DotsIcon.js +13 -0
  95. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  96. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  97. package/cjs/components/Paging/ForwardIcon.js +13 -1
  98. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  99. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  100. package/cjs/components/Paging/NavigationHelper.js +8 -6
  101. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  102. package/cjs/components/Paging/Paging.d.ts +13 -2
  103. package/cjs/components/Paging/Paging.js +120 -50
  104. package/cjs/components/Paging/Paging.js.map +1 -1
  105. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  106. package/cjs/components/Paging/Paging.styles.js +151 -22
  107. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  108. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  109. package/cjs/components/Paging/PagingHelper.js +18 -11
  110. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  111. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -7
  112. package/cjs/components/PasswordInput/PasswordInput.js +2 -11
  113. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  114. package/cjs/components/Radio/Radio.d.ts +2 -0
  115. package/cjs/components/Radio/Radio.js +1 -0
  116. package/cjs/components/Radio/Radio.js.map +1 -1
  117. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  118. package/cjs/components/RadioGroup/RadioGroup.js +1 -0
  119. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  120. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  121. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  122. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  123. package/cjs/components/Select/Select.d.ts +2 -0
  124. package/cjs/components/Select/Select.js +1 -0
  125. package/cjs/components/Select/Select.js.map +1 -1
  126. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  127. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  128. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  129. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  130. package/cjs/components/SidePage/SidePageBody.js +1 -0
  131. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  132. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  133. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  134. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  135. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  136. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  137. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  138. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  139. package/cjs/components/SidePage/SidePageHeader.js +60 -19
  140. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  141. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  142. package/cjs/components/Spinner/Spinner.js +2 -32
  143. package/cjs/components/Spinner/Spinner.js.map +1 -1
  144. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  145. package/cjs/components/Sticky/Sticky.js +2 -22
  146. package/cjs/components/Sticky/Sticky.js.map +1 -1
  147. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  148. package/cjs/components/Switcher/Switcher.js +11 -20
  149. package/cjs/components/Switcher/Switcher.js.map +1 -1
  150. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  151. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  152. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  153. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  154. package/cjs/components/Tabs/Indicator.js +1 -0
  155. package/cjs/components/Tabs/Indicator.js.map +1 -1
  156. package/cjs/components/Tabs/Tab.d.ts +2 -0
  157. package/cjs/components/Tabs/Tab.js +1 -0
  158. package/cjs/components/Tabs/Tab.js.map +1 -1
  159. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  160. package/cjs/components/Tabs/Tabs.js +1 -0
  161. package/cjs/components/Tabs/Tabs.js.map +1 -1
  162. package/cjs/components/Textarea/Textarea.d.ts +2 -44
  163. package/cjs/components/Textarea/Textarea.js +2 -56
  164. package/cjs/components/Textarea/Textarea.js.map +1 -1
  165. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  166. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  167. package/cjs/components/Toast/Toast.d.ts +2 -0
  168. package/cjs/components/Toast/Toast.js +1 -0
  169. package/cjs/components/Toast/Toast.js.map +1 -1
  170. package/cjs/components/Toast/ToastView.d.ts +2 -14
  171. package/cjs/components/Toast/ToastView.js +3 -22
  172. package/cjs/components/Toast/ToastView.js.map +1 -1
  173. package/cjs/components/Toggle/Toggle.d.ts +2 -10
  174. package/cjs/components/Toggle/Toggle.js +1 -11
  175. package/cjs/components/Toggle/Toggle.js.map +1 -1
  176. package/cjs/components/Token/Token.d.ts +2 -0
  177. package/cjs/components/Token/Token.js +1 -0
  178. package/cjs/components/Token/Token.js.map +1 -1
  179. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  180. package/cjs/components/TokenInput/TokenInput.js +1 -0
  181. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  182. package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
  183. package/cjs/components/Tooltip/Tooltip.js +95 -13
  184. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  185. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  186. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  187. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  188. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  189. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  190. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  191. package/cjs/index.d.ts +1 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  194. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  195. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  196. package/cjs/internal/ComponentTable.js +2 -3
  197. package/cjs/internal/ComponentTable.js.map +1 -1
  198. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  199. package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -0
  200. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  201. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  202. package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
  203. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  204. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  205. package/cjs/internal/DateSelect/DateSelect.js +1 -18
  206. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  207. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  208. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  209. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  210. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  211. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  212. package/cjs/internal/InputLikeText/InputLikeText.d.ts +2 -0
  213. package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
  214. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  215. package/cjs/internal/Menu/Menu.d.ts +2 -0
  216. package/cjs/internal/Menu/Menu.js +1 -0
  217. package/cjs/internal/Menu/Menu.js.map +1 -1
  218. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  219. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  220. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  221. package/cjs/internal/Popup/Popup.d.ts +41 -59
  222. package/cjs/internal/Popup/Popup.js +36 -79
  223. package/cjs/internal/Popup/Popup.js.map +1 -1
  224. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  225. package/cjs/internal/Popup/PopupPin.js +2 -35
  226. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  227. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  228. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  229. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  230. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  231. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  232. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  233. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  234. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  235. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  236. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  237. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  238. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  239. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  240. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  241. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  242. package/cjs/internal/ThemePlayground/Playground.js +1 -1
  243. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  244. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  245. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  246. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  247. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  248. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  249. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  250. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  251. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  252. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  253. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  254. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  255. package/cjs/internal/themes/BasicTheme.d.ts +112 -20
  256. package/cjs/internal/themes/BasicTheme.js +149 -18
  257. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  258. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  259. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  260. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  261. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  262. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  263. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  264. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  265. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  266. package/cjs/lib/delay.mts +3 -0
  267. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  268. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  269. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +11 -1
  270. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  271. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  272. package/cjs/lib/forwardRefAndName.js +0 -1
  273. package/cjs/lib/forwardRefAndName.js.map +1 -1
  274. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  275. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  276. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  277. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  278. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  279. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  280. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  281. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  282. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  283. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  284. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  285. package/cjs/lib/utils.d.ts +4 -0
  286. package/cjs/lib/utils.js +5 -1
  287. package/cjs/lib/utils.js.map +1 -1
  288. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
  289. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  290. package/components/Autocomplete/Autocomplete.d.ts +6 -23
  291. package/components/Button/Button/Button.js +26 -5
  292. package/components/Button/Button/Button.js.map +1 -1
  293. package/components/Button/Button.d.ts +2 -0
  294. package/components/Button/Button.styles/Button.styles.js +78 -60
  295. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  296. package/components/Button/Button.styles.d.ts +6 -0
  297. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  298. package/components/Calendar/Calendar.d.ts +2 -0
  299. package/components/Center/Center/Center.js.map +1 -1
  300. package/components/Center/Center.d.ts +2 -0
  301. package/components/Checkbox/Checkbox/Checkbox.js +0 -11
  302. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  303. package/components/Checkbox/Checkbox.d.ts +2 -12
  304. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  305. package/components/ComboBox/ComboBox.d.ts +2 -0
  306. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -36
  307. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  308. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  309. package/components/CurrencyInput/constants/constants.js +0 -1
  310. package/components/CurrencyInput/constants/constants.js.map +1 -1
  311. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  312. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  313. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  314. package/components/DateInput/DateInput.d.ts +2 -0
  315. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  316. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  317. package/components/DatePicker/DatePicker.d.ts +6 -33
  318. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  319. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  320. package/components/Dropdown/Dropdown.d.ts +2 -47
  321. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  322. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  323. package/components/FxInput/FxInput/FxInput.js +1 -5
  324. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  325. package/components/FxInput/FxInput.d.ts +2 -5
  326. package/components/Gapped/Gapped/Gapped.js +1 -15
  327. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  328. package/components/Gapped/Gapped.d.ts +2 -15
  329. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  330. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  331. package/components/Group/Group/Group.js +64 -28
  332. package/components/Group/Group/Group.js.map +1 -1
  333. package/components/Group/Group.d.ts +5 -4
  334. package/components/Group/Group.styles/Group.styles.js +9 -6
  335. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  336. package/components/Group/Group.styles.d.ts +1 -0
  337. package/components/Hint/Hint/Hint.js.map +1 -1
  338. package/components/Hint/Hint.d.ts +2 -0
  339. package/components/Input/Input/Input.js.map +1 -1
  340. package/components/Input/Input.d.ts +2 -0
  341. package/components/Kebab/Kebab/Kebab.js +2 -20
  342. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  343. package/components/Kebab/Kebab.d.ts +2 -1
  344. package/components/Link/Link/Link.js.map +1 -1
  345. package/components/Link/Link.d.ts +2 -0
  346. package/components/Loader/Loader/Loader.js +0 -33
  347. package/components/Loader/Loader/Loader.js.map +1 -1
  348. package/components/Loader/Loader.d.ts +6 -36
  349. package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
  350. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  351. package/components/MaskedInput/MaskedInput.d.ts +1 -0
  352. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  353. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  354. package/components/MenuItem/MenuItem.d.ts +2 -12
  355. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  356. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  357. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  358. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  359. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  360. package/components/Modal/Modal.styles/Modal.styles.js +31 -28
  361. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  362. package/components/Modal/Modal.styles.d.ts +1 -0
  363. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  364. package/components/Modal/ModalBody.d.ts +2 -0
  365. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  366. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  367. package/components/Modal/ModalHeader.d.ts +5 -0
  368. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  369. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  370. package/components/Paging/DotsIcon/package.json +6 -0
  371. package/components/Paging/DotsIcon.d.ts +3 -0
  372. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  373. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  374. package/components/Paging/ForwardIcon.d.ts +3 -0
  375. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  376. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  377. package/components/Paging/NavigationHelper.d.ts +3 -2
  378. package/components/Paging/Paging/Paging.js +96 -47
  379. package/components/Paging/Paging/Paging.js.map +1 -1
  380. package/components/Paging/Paging.d.ts +13 -2
  381. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  382. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  383. package/components/Paging/Paging.styles.d.ts +24 -1
  384. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  385. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  386. package/components/Paging/PagingHelper.d.ts +1 -1
  387. package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -7
  388. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  389. package/components/PasswordInput/PasswordInput.d.ts +2 -7
  390. package/components/Radio/Radio/Radio.js.map +1 -1
  391. package/components/Radio/Radio.d.ts +2 -0
  392. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  393. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  394. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  395. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  396. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  397. package/components/Select/Select/Select.js.map +1 -1
  398. package/components/Select/Select.d.ts +2 -0
  399. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  400. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  401. package/components/SidePage/SidePage.styles.d.ts +3 -1
  402. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  403. package/components/SidePage/SidePageBody.d.ts +2 -0
  404. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  405. package/components/SidePage/SidePageContainer.d.ts +2 -0
  406. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  407. package/components/SidePage/SidePageFooter.d.ts +2 -0
  408. package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
  409. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  410. package/components/SidePage/SidePageHeader.d.ts +12 -2
  411. package/components/Spinner/Spinner/Spinner.js +1 -18
  412. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  413. package/components/Spinner/Spinner.d.ts +2 -18
  414. package/components/Sticky/Sticky/Sticky.js +1 -13
  415. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  416. package/components/Sticky/Sticky.d.ts +2 -13
  417. package/components/Switcher/Switcher/Switcher.js +19 -16
  418. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  419. package/components/Switcher/Switcher.d.ts +6 -21
  420. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  421. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  422. package/components/Switcher/Switcher.styles.d.ts +1 -0
  423. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  424. package/components/Tabs/Indicator.d.ts +2 -0
  425. package/components/Tabs/Tab/Tab.js.map +1 -1
  426. package/components/Tabs/Tab.d.ts +2 -0
  427. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  428. package/components/Tabs/Tabs.d.ts +2 -0
  429. package/components/Textarea/Textarea/Textarea.js +1 -44
  430. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  431. package/components/Textarea/Textarea.d.ts +2 -44
  432. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  433. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  434. package/components/Toast/Toast/Toast.js.map +1 -1
  435. package/components/Toast/Toast.d.ts +2 -0
  436. package/components/Toast/ToastView/ToastView.js +3 -17
  437. package/components/Toast/ToastView/ToastView.js.map +1 -1
  438. package/components/Toast/ToastView.d.ts +2 -14
  439. package/components/Toggle/Toggle/Toggle.js +1 -10
  440. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  441. package/components/Toggle/Toggle.d.ts +2 -10
  442. package/components/Token/Token/Token.js.map +1 -1
  443. package/components/Token/Token.d.ts +2 -0
  444. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  445. package/components/TokenInput/TokenInput.d.ts +2 -0
  446. package/components/Tooltip/Tooltip/Tooltip.js +67 -20
  447. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  448. package/components/Tooltip/Tooltip.d.ts +14 -9
  449. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  450. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  451. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  452. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  453. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  454. package/index.d.ts +1 -0
  455. package/index.js +1 -0
  456. package/index.js.map +1 -1
  457. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  458. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  459. package/internal/ComponentTable/ComponentTable.js +0 -2
  460. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  461. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  462. package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  463. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  464. package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  465. package/internal/DateSelect/DateSelect/DateSelect.js +1 -10
  466. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  467. package/internal/DateSelect/DateSelect.d.ts +0 -10
  468. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  469. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  470. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  471. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  472. package/internal/InputLikeText/InputLikeText.d.ts +2 -0
  473. package/internal/Menu/Menu/Menu.js.map +1 -1
  474. package/internal/Menu/Menu.d.ts +2 -0
  475. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  476. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  477. package/internal/Popup/Popup/Popup.js +14 -64
  478. package/internal/Popup/Popup/Popup.js.map +1 -1
  479. package/internal/Popup/Popup.d.ts +41 -59
  480. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  481. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  482. package/internal/Popup/PopupPin.d.ts +23 -33
  483. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  484. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  485. package/internal/Popup/PopupPinNew/package.json +6 -0
  486. package/internal/Popup/PopupPinNew.d.ts +31 -0
  487. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  488. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  489. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  490. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  491. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  492. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  493. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  494. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  495. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  496. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  497. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  498. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  499. package/internal/ThemePlayground/Playground/Playground.js +4 -3
  500. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  501. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  502. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  503. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  504. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  505. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  506. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  507. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  508. package/internal/ZIndex/ZIndex.d.ts +3 -3
  509. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  510. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  511. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  512. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  513. package/internal/themes/BasicTheme/BasicTheme.js +170 -26
  514. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  515. package/internal/themes/BasicTheme.d.ts +112 -20
  516. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  517. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  518. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  519. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  520. package/internal/themes/DarkTheme5_3/package.json +6 -0
  521. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  522. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  523. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  524. package/internal/themes/LightTheme5_3/package.json +6 -0
  525. package/internal/themes/LightTheme5_3.d.ts +1 -0
  526. package/lib/delay.d.mts +1 -0
  527. package/lib/delay.mts +3 -0
  528. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  529. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -1
  530. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  531. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  532. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  533. package/lib/forwardRefAndName.d.ts +1 -1
  534. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  535. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  536. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  537. package/lib/theming/ThemeVersions.d.ts +1 -1
  538. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  539. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  540. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  541. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  542. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  543. package/lib/theming/themes/LightTheme.d.ts +1 -0
  544. package/lib/utils/utils.js +2 -0
  545. package/lib/utils/utils.js.map +1 -1
  546. package/lib/utils.d.ts +4 -0
  547. package/package.json +10 -13
  548. package/cjs/lib/SSRSafe.d.ts +0 -2
  549. package/cjs/lib/SSRSafe.js +0 -5
  550. package/cjs/lib/SSRSafe.js.map +0 -1
  551. package/lib/SSRSafe/SSRSafe.js +0 -4
  552. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  553. package/lib/SSRSafe/package.json +0 -6
  554. package/lib/SSRSafe.d.ts +0 -2
@@ -3,6 +3,7 @@ var _warning = _interopRequireDefault(require("warning"));
3
3
 
4
4
  var _globalObject = require("@skbkontur/global-object");
5
5
 
6
+
6
7
  var _utils = require("../../lib/utils");
7
8
  var _ThemeFactory = require("../../lib/theming/ThemeFactory");
8
9
 
@@ -25,6 +26,7 @@ var _CloseButtonIcon = require("../../internal/CloseButtonIcon/CloseButtonIcon")
25
26
  var _isInstanceOf = require("../../lib/isInstanceOf");
26
27
 
27
28
  var _featureFlagsContext = require("../../lib/featureFlagsContext");
29
+ var _Emotion = require("../../lib/theming/Emotion");
28
30
 
29
31
  var _Tooltip2 = require("./Tooltip.styles");var _class, _Tooltip;
30
32
 
@@ -65,6 +67,24 @@ var _Tooltip2 = require("./Tooltip.styles");var _class, _Tooltip;
65
67
 
66
68
 
67
69
 
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
68
88
 
69
89
 
70
90
 
@@ -114,16 +134,6 @@ var OldPositions = [
114
134
 
115
135
 
116
136
 
117
- /**
118
- * `Tooltip` — это подсказка, которую пользователь открывает сам, кликом по элементу.
119
- *
120
- * `Tooltip` используется для коротких поясняющих текстов, если необходимо дать разъяснение к деталям интерфейса, упомянутой информации или помочь с заполнением полей.
121
- * Если эти подробности не нужны постоянно, но могут помочь пользователю в момент когда он испытывает трудности.
122
- *
123
- * Для подсказки, всплывающей по наведению используйте Hint.
124
- */var
125
-
126
- Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PURE__*/function (_React$PureComponent) {function Tooltip() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;_this.
127
137
 
128
138
 
129
139
 
@@ -136,7 +146,14 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
136
146
 
137
147
 
138
148
 
149
+ /**
150
+ * `Tooltip` — это подсказка, которая объясняет состояние контрола или даёт контекстную справку.
151
+ *
152
+ * Открывается по клику, фокусом на элемент или по наведению. В отличие от `Hint`, `Tooltip` может содержать
153
+ * изображения, кнопки, ссылки и прочие интерактивные элементы.
154
+ */var
139
155
 
156
+ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PURE__*/function (_React$PureComponent) {function Tooltip() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;_this.
140
157
 
141
158
 
142
159
 
@@ -153,14 +170,22 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
153
170
 
154
171
 
155
172
 
173
+
174
+
175
+
176
+
177
+
178
+
156
179
  state = { opened: false, focused: false };_this.
157
180
 
158
181
 
159
182
 
183
+
160
184
  contentElement = null;_this.
161
185
  clickedOutside = true;_this.
162
186
 
163
187
 
188
+
164
189
  popupRef = /*#__PURE__*/_react.default.createRef();_this.
165
190
 
166
191
 
@@ -205,6 +230,13 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
205
230
 
206
231
 
207
232
 
233
+
234
+
235
+
236
+
237
+
238
+
239
+
208
240
 
209
241
 
210
242
 
@@ -220,7 +252,11 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
220
252
  }
221
253
 
222
254
  return /*#__PURE__*/(
223
- _react.default.createElement("div", { ref: _this.refContent, className: _Tooltip2.styles.tooltipContent(_this.theme), "data-tid": TooltipDataTids.content },
255
+ _react.default.createElement("div", {
256
+ ref: _this.refContent,
257
+ className: (0, _Emotion.cx)(_Tooltip2.styles.tooltipContent(_this.theme), _this.sizeVariables.contentStyle),
258
+ "data-tid": TooltipDataTids.content },
259
+
224
260
  content,
225
261
  _this.renderCloseButton()
226
262
  ));
@@ -527,7 +563,53 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
527
563
  }
528
564
 
529
565
  _this.close();
530
- };return _this;}(0, _inheritsLoose2.default)(Tooltip, _React$PureComponent);var _proto = Tooltip.prototype;_proto.getAllowedPositions = function getAllowedPositions() {return this.props.allowedPositions ? this.props.allowedPositions : OldPositions;};_proto.componentDidUpdate = function componentDidUpdate() {var _this$getProps = this.getProps(),trigger = _this$getProps.trigger;if (trigger === 'closed' && this.state.opened) {this.close();}};_proto.componentWillUnmount = function componentWillUnmount() {this.clearHoverTimeout();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_featureFlagsContext.ReactUIFeatureFlagsContext.Consumer, null, function (flags) {_this2.featureFlags = (0, _featureFlagsContext.getFullReactUIFlagsContext)(flags);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ popupMargin: theme.tooltipMargin, popupBorder: theme.tooltipBorder, popupBorderRadius: theme.tooltipBorderRadius, popupPinSize: theme.tooltipPinSize, popupPinOffsetX: theme.tooltipPinOffsetX, popupPinOffsetY: theme.tooltipPinOffsetY, popupBackground: theme.tooltipBg }, theme) }, _this2.renderMain());});});};_proto.renderCloseButton = function renderCloseButton() {var hasCross = this.props.closeButton === undefined ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger) : this.props.closeButton;if (!hasCross) {return null;}var icon = /*#__PURE__*/_react.default.createElement(_CloseButtonIcon.CloseButtonIcon, { tabbable: false, side: parseInt(this.theme.tooltipCloseBtnSide), color: this.theme.tooltipCloseBtnColor, colorHover: this.theme.tooltipCloseBtnHoverColor });return /*#__PURE__*/_react.default.createElement("div", { className: _Tooltip2.styles.cross(this.theme), onClick: this.handleCloseButtonClick, "data-tid": TooltipDataTids.crossIcon }, icon);}; /**
566
+ };_this.
567
+
568
+ getSizeVariables = function () {
569
+ switch (_this.props.size) {
570
+ case 'small':
571
+ return {
572
+ closeButtonStyle: _Tooltip2.styles.closeButtonSmall(_this.theme),
573
+ contentStyle: _Tooltip2.styles.tooltipContentSmall(_this.theme),
574
+ borderRadius: _this.theme.tooltipBorderRadiusSmall,
575
+ pinSize: _this.theme.tooltipPinSizeSmall,
576
+ pinOffsetX: _this.theme.tooltipPinOffsetXSmall,
577
+ pinOffsetY: _this.theme.tooltipPinOffsetYSmall,
578
+ margin: _this.theme.tooltipMarginSmall
579
+ };
580
+ case 'medium':
581
+ return {
582
+ closeButtonStyle: _Tooltip2.styles.closeButtonMedium(_this.theme),
583
+ contentStyle: _Tooltip2.styles.tooltipContentMedium(_this.theme),
584
+ borderRadius: _this.theme.tooltipBorderRadiusMedium,
585
+ pinSize: _this.theme.tooltipPinSizeMedium,
586
+ pinOffsetX: _this.theme.tooltipPinOffsetXMedium,
587
+ pinOffsetY: _this.theme.tooltipPinOffsetYMedium,
588
+ margin: _this.theme.tooltipMarginMedium
589
+ };
590
+ case 'large':
591
+ return {
592
+ closeButtonStyle: _Tooltip2.styles.closeButtonLarge(_this.theme),
593
+ contentStyle: _Tooltip2.styles.tooltipContentLarge(_this.theme),
594
+ borderRadius: _this.theme.tooltipBorderRadiusLarge,
595
+ pinSize: _this.theme.tooltipPinSizeLarge,
596
+ pinOffsetX: _this.theme.tooltipPinOffsetXLarge,
597
+ pinOffsetY: _this.theme.tooltipPinOffsetYLarge,
598
+ margin: _this.theme.tooltipMarginLarge
599
+ };
600
+ default:
601
+ console.error("Can't get size variables: invalid value in size prop '" + _this.props.size + "'. Returning default");
602
+ return {
603
+ closeButtonStyle: _Tooltip2.styles.closeButtonSmall(_this.theme),
604
+ contentStyle: _Tooltip2.styles.tooltipContentSmall(_this.theme),
605
+ borderRadius: _this.theme.tooltipBorderRadiusSmall,
606
+ pinSize: _this.theme.tooltipPinSizeSmall,
607
+ pinOffsetX: _this.theme.tooltipPinOffsetXSmall,
608
+ pinOffsetY: _this.theme.tooltipPinOffsetYSmall,
609
+ margin: _this.theme.tooltipMarginSmall
610
+ };
611
+ }
612
+ };return _this;}(0, _inheritsLoose2.default)(Tooltip, _React$PureComponent);var _proto = Tooltip.prototype;_proto.validateProps = function validateProps(props) {(0, _warning.default)(props.children || props.anchorElement, "[Tooltip]: you must provide either 'children' or 'anchorElement' prop for Tooltip to work properly");};_proto.getAllowedPositions = function getAllowedPositions() {return this.props.allowedPositions ? this.props.allowedPositions : OldPositions;};_proto.componentDidMount = function componentDidMount() {this.validateProps(this.getProps());};_proto.componentDidUpdate = function componentDidUpdate() {var _this$getProps = this.getProps(),trigger = _this$getProps.trigger;this.validateProps(this.getProps());if (trigger === 'closed' && this.state.opened) {this.close();}};_proto.componentWillUnmount = function componentWillUnmount() {this.clearHoverTimeout();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_featureFlagsContext.ReactUIFeatureFlagsContext.Consumer, null, function (flags) {_this2.featureFlags = (0, _featureFlagsContext.getFullReactUIFlagsContext)(flags);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;_this2.sizeVariables = _this2.getSizeVariables();return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ popupBackground: theme.tooltipBg, popupBorder: theme.tooltipBorder, popupBorderRadius: _this2.sizeVariables.borderRadius, popupPinSize: _this2.sizeVariables.pinSize, popupPinOffsetX: _this2.sizeVariables.pinOffsetX, popupPinOffsetY: _this2.sizeVariables.pinOffsetY, popupMargin: _this2.sizeVariables.margin }, theme) }, _this2.renderMain());});});};_proto.renderCloseButton = function renderCloseButton() {var hasCross = this.props.closeButton === undefined ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger) : this.props.closeButton;if (!hasCross) {return null;}var icon = /*#__PURE__*/_react.default.createElement(_CloseButtonIcon.CloseButtonIcon, { tabbable: false, side: parseInt(this.theme.tooltipCloseBtnSide), color: this.theme.tooltipCloseBtnColor, colorHover: this.theme.tooltipCloseBtnHoverColor });return /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Tooltip2.styles.closeButton(this.theme), this.sizeVariables.closeButtonStyle), onClick: this.handleCloseButtonClick, "data-tid": TooltipDataTids.crossIcon }, icon);}; /**
531
613
  * Программно открывает тултип.
532
614
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
533
615
  * @public
@@ -535,4 +617,4 @@ Tooltip = exports.Tooltip = (0, _rootNode.rootNode)(_class = (_Tooltip = /*#__PU
535
617
  * Программно закрывает тултип.
536
618
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
537
619
  * @public
538
- */;_proto.hide = function hide() {var trigger = this.getProps().trigger;if (trigger === 'opened' || trigger === 'closed') {(0, _warning.default)(true, "Function 'hide' is not supported with trigger specified '" + trigger + "'");return;}this.close();};_proto.renderMain = function renderMain() {var props = this.props;var content = this.renderContent();var _this$getPopupAndLaye = this.getPopupAndLayerProps(),popupProps = _this$getPopupAndLaye.popupProps,_this$getPopupAndLaye2 = _this$getPopupAndLaye.layerProps,layerProps = _this$getPopupAndLaye2 === void 0 ? { active: false } : _this$getPopupAndLaye2;var anchorElement = props.children || props.anchorElement;var popup = this.renderPopup(anchorElement, popupProps, content);return /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, (0, _extends2.default)({}, layerProps, { getAnchorElement: this.getAnchorElement }), popup);};_proto.renderPopup = function renderPopup(anchorElement, popupProps, content) {var _this$getProps2 = this.getProps(),disableAnimations = _this$getProps2.disableAnimations,trigger = _this$getProps2.trigger;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_Popup.Popup, (0, _extends2.default)({ "data-tid": TooltipDataTids.root, anchorElement: anchorElement, hasPin: true, hasShadow: true, maxWidth: "none", opened: this.state.opened, disableAnimations: disableAnimations, positions: this.getPositions(), pos: this.props.pos, ignoreHover: trigger === 'hoverAnchor', onOpen: this.props.onOpen, onClose: this.props.onClose, tryPreserveFirstRenderedPosition: true, ref: this.popupRef, withoutMobile: true }, popupProps), content));};_proto.getPopupAndLayerProps = function getPopupAndLayerProps() {var props = this.props;var useWrapper = !!props.children && this.getProps().useWrapper;var trigger = this.getProps().trigger;switch (trigger) {case 'opened':return { layerProps: { active: true, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { opened: true, useWrapper: useWrapper } };case 'closed':return { popupProps: { opened: false, useWrapper: useWrapper } };case 'hoverAnchor':case 'hover':return { popupProps: { onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, useWrapper: useWrapper } };case 'manual':return { popupProps: { useWrapper: useWrapper } };case 'click':return { layerProps: { active: this.state.opened, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { onClick: this.handleClick, useWrapper: useWrapper } };case 'focus':return { popupProps: { onFocus: this.handleFocus, onBlur: this.handleBlur, useWrapper: useWrapper } };case 'hover&focus':return { layerProps: { active: this.state.opened, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, useWrapper: useWrapper } };default:throw new Error('Unknown trigger specified: ' + trigger);}};_proto.clearHoverTimeout = function clearHoverTimeout() {if (this.hoverTimeout) {_globalObject.globalObject.clearTimeout(this.hoverTimeout);this.hoverTimeout = null;}};_proto.isClickOutsideContent = function isClickOutsideContent(event) {if (this.contentElement && (0, _isInstanceOf.isInstanceOf)(event.target, _globalObject.globalObject.Element)) {return !(0, _listenFocusOutside.containsTargetOrRenderContainer)(event.target)(this.contentElement);}return true;};return Tooltip;}(_react.default.PureComponent), _Tooltip.__KONTUR_REACT_UI__ = 'Tooltip', _Tooltip.displayName = 'Tooltip', _Tooltip.propTypes = { children: function children(props, propName, componentName) {var children = props[propName];(0, _warning.default)(children || props.anchorElement, "[" + componentName + "]: you must provide either 'children' or 'anchorElement' prop for " + componentName + " to work properly");(0, _warning.default)(!(Array.isArray(children) && props.useWrapper === false), "[" + componentName + "]: you provided multiple children, but useWrapper={false} - forcing wrapper <span/> for positioning to work correctly");} }, _Tooltip.defaultProps = { trigger: 'hover', disableAnimations: _currentEnvironment.isTestEnv, useWrapper: false, delayBeforeShow: DEFAULT_DELAY }, _Tooltip.delay = DEFAULT_DELAY, _Tooltip.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _Tooltip)) || _class;
620
+ */;_proto.hide = function hide() {var trigger = this.getProps().trigger;if (trigger === 'opened' || trigger === 'closed') {(0, _warning.default)(true, "Function 'hide' is not supported with trigger specified '" + trigger + "'");return;}this.close();};_proto.renderMain = function renderMain() {var props = this.props;var content = this.renderContent();var _this$getPopupAndLaye = this.getPopupAndLayerProps(),popupProps = _this$getPopupAndLaye.popupProps,_this$getPopupAndLaye2 = _this$getPopupAndLaye.layerProps,layerProps = _this$getPopupAndLaye2 === void 0 ? { active: false } : _this$getPopupAndLaye2;var anchorElement = props.children || props.anchorElement;var popup = this.renderPopup(anchorElement, popupProps, content);return /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, (0, _extends2.default)({}, layerProps, { getAnchorElement: this.getAnchorElement }), popup);};_proto.renderPopup = function renderPopup(anchorElement, popupProps, content) {var _this$getProps2 = this.getProps(),disableAnimations = _this$getProps2.disableAnimations,trigger = _this$getProps2.trigger;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_Popup.Popup, (0, _extends2.default)({ "data-tid": TooltipDataTids.root, anchorElement: anchorElement, hasPin: true, hasShadow: true, maxWidth: "none", opened: this.state.opened, disableAnimations: disableAnimations, positions: this.getPositions(), pos: this.props.pos, ignoreHover: trigger === 'hoverAnchor', onOpen: this.props.onOpen, onClose: this.props.onClose, tryPreserveFirstRenderedPosition: true, ref: this.popupRef, withoutMobile: true }, popupProps), content));};_proto.getPopupAndLayerProps = function getPopupAndLayerProps() {var props = this.props;var useWrapper = !!props.children && this.getProps().useWrapper;var trigger = this.getProps().trigger;switch (trigger) {case 'opened':return { layerProps: { active: true, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { opened: true, useWrapper: useWrapper } };case 'closed':return { popupProps: { opened: false, useWrapper: useWrapper } };case 'hoverAnchor':case 'hover':return { popupProps: { onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, useWrapper: useWrapper } };case 'manual':return { popupProps: { useWrapper: useWrapper } };case 'click':return { layerProps: { active: this.state.opened, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { onClick: this.handleClick, useWrapper: useWrapper } };case 'focus':return { popupProps: { onFocus: this.handleFocus, onBlur: this.handleBlur, useWrapper: useWrapper } };case 'hover&focus':return { layerProps: { active: this.state.opened, onClickOutside: this.handleClickOutsideAnchor }, popupProps: { onFocus: this.handleFocus, onBlur: this.handleBlur, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, useWrapper: useWrapper } };default:throw new Error('Unknown trigger specified: ' + trigger);}};_proto.clearHoverTimeout = function clearHoverTimeout() {if (this.hoverTimeout) {_globalObject.globalObject.clearTimeout(this.hoverTimeout);this.hoverTimeout = null;}};_proto.isClickOutsideContent = function isClickOutsideContent(event) {if (this.contentElement && (0, _isInstanceOf.isInstanceOf)(event.target, _globalObject.globalObject.Element)) {return !(0, _listenFocusOutside.containsTargetOrRenderContainer)(event.target)(this.contentElement);}return true;};return Tooltip;}(_react.default.PureComponent), _Tooltip.__KONTUR_REACT_UI__ = 'Tooltip', _Tooltip.displayName = 'Tooltip', _Tooltip.defaultProps = { size: 'small', trigger: 'hover', disableAnimations: _currentEnvironment.isTestEnv, useWrapper: false, delayBeforeShow: DEFAULT_DELAY }, _Tooltip.delay = DEFAULT_DELAY, _Tooltip.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _Tooltip)) || _class;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_globalObject","_utils","_ThemeFactory","_Popup","_RenderLayer","_listenFocusOutside","_ThemeContext","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_CloseButtonIcon","_isInstanceOf","_featureFlagsContext","_Tooltip2","_class","_Tooltip","DEFAULT_DELAY","TooltipDataTids","exports","root","content","crossIcon","OldPositions","Tooltip","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","opened","focused","contentElement","clickedOutside","popupRef","React","createRef","renderContent","props","render","isNullable","default","createElement","ref","refContent","className","styles","tooltipContent","theme","renderCloseButton","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","allowedPositions","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","hoverTimeout","globalObject","setTimeout","delayBeforeShow","handleMouseLeave","relatedTarget","delay","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","_inheritsLoose2","_proto","prototype","getAllowedPositions","componentDidUpdate","_this$getProps","componentWillUnmount","_this2","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","ThemeContext","Provider","value","ThemeFactory","create","popupMargin","tooltipMargin","popupBorder","tooltipBorder","popupBorderRadius","tooltipBorderRadius","popupPinSize","tooltipPinSize","popupPinOffsetX","tooltipPinOffsetX","popupPinOffsetY","tooltipPinOffsetY","popupBackground","tooltipBg","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","includes","icon","CloseButtonIcon","tabbable","side","parseInt","tooltipCloseBtnSide","color","tooltipCloseBtnColor","colorHover","tooltipCloseBtnHoverColor","cross","onClick","show","warning","hide","_this$getPopupAndLaye","getPopupAndLayerProps","popupProps","_this$getPopupAndLaye2","layerProps","active","children","popup","renderPopup","RenderLayer","_extends2","_this$getProps2","disableAnimations","CommonWrapper","rootNodeRef","setRootNode","Popup","hasPin","hasShadow","maxWidth","positions","pos","ignoreHover","onOpen","onClose","tryPreserveFirstRenderedPosition","withoutMobile","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onFocus","onBlur","Error","clearTimeout","isInstanceOf","Element","containsTargetOrRenderContainer","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","propName","componentName","isArray","isTestEnv"],"sources":["Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNullable } from '../../lib/utils';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupProps, PopupPositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Popup } from '../../internal/Popup';\nimport type { RenderLayerProps } from '../../internal/RenderLayer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Tooltip.styles';\n\nexport type TooltipTrigger =\n /** Наведение на children и на тултип */\n | 'hover'\n /** Клик на children */\n | 'click'\n /** Фокус на children */\n | 'focus'\n /** Наведение на children и на тултип и фокус на children */\n | 'hover&focus'\n /** Просто открыт */\n | 'opened'\n /** Просто закрыт */\n | 'closed'\n /** Наведение ТОЛЬКО на children, а не на тултип */\n | 'hoverAnchor'\n /** Управление через публичные функции show и hide */\n | 'manual';\n\nexport interface TooltipProps extends CommonProps {\n /** Указывает элемент, относительно которого позиционировать тултип. */\n anchorElement?: HTMLElement;\n /** @ignore */\n children?: React.ReactNode;\n /** Задает HTML-атрибут class. */\n className?: string;\n /** Отображает крестик для закрытия тултипа. По-умолчанию крестик виден, если проп *trigger* не равен `hover` или `focus`. */\n closeButton?: boolean;\n /** Задает функцию, которая возвращает содержимое тултипа. Если функция вернула `null`, то тултип не показывается. */\n render?: Nullable<() => React.ReactNode>;\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPositionsType;\n /** Задает триггер открытия тултипа. */\n trigger?: TooltipTrigger;\n /** Задает хендлер, который вызывается при клике по крестику. */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n /** Задает хендлер, который вызывается при клике по крестику или снаружи тултипа. */\n onCloseRequest?: (event?: Event | React.MouseEvent) => void;\n /** Задает хендлер, который вызывается при закрытии тултипа. */\n onClose?: () => void;\n /** Задает хендлер, который вызывается при открытии тултипа. */\n onOpen?: () => void;\n /** Задает список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция.\n * Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPositionsType[];\n /** Отключает анимацию.\n * @default false */\n disableAnimations?: boolean;\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n}\n\nconst DEFAULT_DELAY = 100;\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nexport const TooltipDataTids = {\n root: 'Tooltip__root',\n content: 'Tooltip__content',\n crossIcon: 'Tooltip__crossIcon',\n} as const;\n\nconst OldPositions: PopupPositionsType[] = [\n 'right bottom',\n 'right middle',\n 'right top',\n 'top right',\n 'top center',\n 'top left',\n 'left top',\n 'left middle',\n 'left bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n];\n\ntype DefaultProps = Required<Pick<TooltipProps, 'trigger' | 'disableAnimations' | 'useWrapper' | 'delayBeforeShow'>>;\n\n/**\n * `Tooltip` — это подсказка, которую пользователь открывает сам, кликом по элементу.\n *\n * `Tooltip` используется для коротких поясняющих текстов, если необходимо дать разъяснение к деталям интерфейса, упомянутой информации или помочь с заполнением полей.\n * Если эти подробности не нужны постоянно, но могут помочь пользователю в момент когда он испытывает трудности.\n *\n * Для подсказки, всплывающей по наведению используйте Hint.\n */\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n public static displayName = 'Tooltip';\n\n public static propTypes = {\n children(props: TooltipProps, propName: keyof TooltipProps, componentName: string) {\n const children = props[propName];\n warning(\n children || props.anchorElement,\n `[${componentName}]: you must provide either 'children' or 'anchorElement' prop for ${componentName} to work properly`,\n );\n warning(\n !(Array.isArray(children) && props.useWrapper === false),\n `[${componentName}]: you provided multiple children, but useWrapper={false} - forcing wrapper <span/> for positioning to work correctly`,\n );\n },\n };\n\n public static defaultProps: DefaultProps = {\n trigger: 'hover',\n disableAnimations: isTestEnv,\n useWrapper: false,\n delayBeforeShow: DEFAULT_DELAY,\n };\n\n private getProps = createPropsGetter(Tooltip.defaultProps);\n\n public static delay = DEFAULT_DELAY;\n private static triggersWithoutCloseButton: TooltipTrigger[] = ['hover', 'hoverAnchor', 'focus', 'hover&focus'];\n\n public state: TooltipState = { opened: false, focused: false };\n private theme!: Theme;\n public featureFlags!: ReactUIFeatureFlags;\n private hoverTimeout: SafeTimer;\n private contentElement: Nullable<HTMLElement> = null;\n private clickedOutside = true;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions ? this.props.allowedPositions : OldPositions;\n }\n\n public componentDidUpdate() {\n const { trigger } = this.getProps();\n if (trigger === 'closed' && this.state.opened) {\n this.close();\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.tooltipMargin,\n popupBorder: theme.tooltipBorder,\n popupBorderRadius: theme.tooltipBorderRadius,\n popupPinSize: theme.tooltipPinSize,\n popupPinOffsetX: theme.tooltipPinOffsetX,\n popupPinOffsetY: theme.tooltipPinOffsetY,\n popupBackground: theme.tooltipBg,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (isNullable(content)) {\n return null;\n }\n\n return (\n <div ref={this.refContent} className={styles.tooltipContent(this.theme)} data-tid={TooltipDataTids.content}>\n {content}\n {this.renderCloseButton()}\n </div>\n );\n };\n\n public renderCloseButton() {\n const hasCross =\n this.props.closeButton === undefined\n ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n const icon = (\n <CloseButtonIcon\n tabbable={false}\n side={parseInt(this.theme.tooltipCloseBtnSide)}\n color={this.theme.tooltipCloseBtnColor}\n colorHover={this.theme.tooltipCloseBtnHoverColor}\n />\n );\n\n return (\n <div\n className={styles.cross(this.theme)}\n onClick={this.handleCloseButtonClick}\n data-tid={TooltipDataTids.crossIcon}\n >\n {icon}\n </div>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n /**\n * Программно открывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public show() {\n if (this.state.opened) {\n return;\n }\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.close();\n }\n\n private renderMain() {\n const props = this.props;\n const content = this.renderContent();\n const { popupProps, layerProps = { active: false } } = this.getPopupAndLayerProps();\n const anchorElement = props.children || props.anchorElement;\n const popup = this.renderPopup(anchorElement, popupProps, content);\n\n return (\n <RenderLayer {...layerProps} getAnchorElement={this.getAnchorElement}>\n {popup}\n </RenderLayer>\n );\n }\n\n private renderPopup(\n anchorElement: React.ReactNode | HTMLElement,\n popupProps: Partial<PopupProps>,\n content: JSX.Element | null,\n ) {\n const { disableAnimations, trigger } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n data-tid={TooltipDataTids.root}\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={disableAnimations}\n positions={this.getPositions()}\n pos={this.props.pos}\n ignoreHover={trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n withoutMobile\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private getPositions = (): PopupPositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPopupAndLayerProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && this.getProps().useWrapper;\n const trigger = this.getProps().trigger;\n\n switch (trigger) {\n case 'opened':\n return {\n layerProps: {\n active: true,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n opened: true,\n useWrapper,\n },\n };\n\n case 'closed':\n return {\n popupProps: {\n opened: false,\n useWrapper,\n },\n };\n\n case 'hoverAnchor':\n case 'hover':\n return {\n popupProps: {\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n case 'manual':\n return {\n popupProps: {\n useWrapper,\n },\n };\n case 'click':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onClick: this.handleClick,\n useWrapper,\n },\n };\n\n case 'focus':\n return {\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n useWrapper,\n },\n };\n\n case 'hover&focus':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n\n default:\n throw new Error('Unknown trigger specified: ' + trigger);\n }\n }\n\n private open = () => this.setState({ opened: true });\n\n private close = () => this.setState({ opened: false });\n\n private clearHoverTimeout() {\n if (this.hoverTimeout) {\n globalObject.clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.getProps().trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n this.hoverTimeout = globalObject.setTimeout(this.open, this.getProps().delayBeforeShow);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n const trigger = this.getProps().trigger;\n if (\n (trigger === 'hover&focus' && this.state.focused) ||\n (trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = globalObject.setTimeout(this.close, Tooltip.delay);\n }\n };\n\n private handleClick = () => {\n this.open();\n };\n\n private handleClickOutsideAnchor = (event: Event) => {\n this.clickedOutside = this.isClickOutsideContent(event);\n if (this.clickedOutside) {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && isInstanceOf(event.target, globalObject.Element)) {\n return !containsTargetOrRenderContainer(event.target)(this.contentElement);\n }\n\n return true;\n }\n\n private handleFocus = () => {\n this.setState({ focused: true });\n this.open();\n };\n\n private handleBlur = () => {\n const trigger = this.getProps().trigger;\n if (trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (trigger === 'focus') {\n this.close();\n }\n\n this.clickedOutside = true;\n this.setState({ focused: false });\n };\n\n private handleCloseButtonClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n\n if (this.props.onCloseClick) {\n this.props.onCloseClick(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n\n this.close();\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_globalObject","_utils","_ThemeFactory","_Popup","_RenderLayer","_listenFocusOutside","_ThemeContext","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_CloseButtonIcon","_isInstanceOf","_featureFlagsContext","_Emotion","_Tooltip2","_class","_Tooltip","DEFAULT_DELAY","TooltipDataTids","exports","root","content","crossIcon","OldPositions","Tooltip","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","opened","focused","contentElement","clickedOutside","popupRef","React","createRef","renderContent","props","render","isNullable","default","createElement","ref","refContent","className","cx","styles","tooltipContent","theme","sizeVariables","contentStyle","renderCloseButton","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","allowedPositions","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","hoverTimeout","globalObject","setTimeout","delayBeforeShow","handleMouseLeave","relatedTarget","delay","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","getSizeVariables","size","closeButtonStyle","closeButtonSmall","tooltipContentSmall","borderRadius","tooltipBorderRadiusSmall","pinSize","tooltipPinSizeSmall","pinOffsetX","tooltipPinOffsetXSmall","pinOffsetY","tooltipPinOffsetYSmall","margin","tooltipMarginSmall","closeButtonMedium","tooltipContentMedium","tooltipBorderRadiusMedium","tooltipPinSizeMedium","tooltipPinOffsetXMedium","tooltipPinOffsetYMedium","tooltipMarginMedium","closeButtonLarge","tooltipContentLarge","tooltipBorderRadiusLarge","tooltipPinSizeLarge","tooltipPinOffsetXLarge","tooltipPinOffsetYLarge","tooltipMarginLarge","console","error","_inheritsLoose2","_proto","prototype","validateProps","warning","children","getAllowedPositions","componentDidMount","componentDidUpdate","_this$getProps","componentWillUnmount","_this2","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","ThemeContext","Provider","value","ThemeFactory","create","popupBackground","tooltipBg","popupBorder","tooltipBorder","popupBorderRadius","popupPinSize","popupPinOffsetX","popupPinOffsetY","popupMargin","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","includes","icon","CloseButtonIcon","tabbable","side","parseInt","tooltipCloseBtnSide","color","tooltipCloseBtnColor","colorHover","tooltipCloseBtnHoverColor","onClick","show","hide","_this$getPopupAndLaye","getPopupAndLayerProps","popupProps","_this$getPopupAndLaye2","layerProps","active","popup","renderPopup","RenderLayer","_extends2","_this$getProps2","disableAnimations","CommonWrapper","rootNodeRef","setRootNode","Popup","hasPin","hasShadow","maxWidth","positions","pos","ignoreHover","onOpen","onClose","tryPreserveFirstRenderedPosition","withoutMobile","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onFocus","onBlur","Error","clearTimeout","isInstanceOf","Element","containsTargetOrRenderContainer","PureComponent","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { SizeProp } from 'react-ui/lib/types/props';\n\nimport { isNullable } from '../../lib/utils';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupProps, PopupPositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Popup } from '../../internal/Popup';\nimport type { RenderLayerProps } from '../../internal/RenderLayer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './Tooltip.styles';\n\nexport type TooltipTrigger =\n /** Наведение на children и на тултип */\n | 'hover'\n /** Клик на children */\n | 'click'\n /** Фокус на children */\n | 'focus'\n /** Наведение на children и на тултип и фокус на children */\n | 'hover&focus'\n /** Просто открыт */\n | 'opened'\n /** Просто закрыт */\n | 'closed'\n /** Наведение ТОЛЬКО на children, а не на тултип */\n | 'hoverAnchor'\n /** Управление через публичные функции show и hide */\n | 'manual';\n\nexport interface TooltipProps extends CommonProps {\n /** Указывает элемент, относительно которого позиционировать тултип. */\n anchorElement?: HTMLElement;\n\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает HTML-атрибут class. */\n className?: string;\n\n /** Отображает крестик для закрытия тултипа. По-умолчанию крестик виден, если проп *trigger* не равен `hover` или `focus`. */\n closeButton?: boolean;\n\n /** Задает функцию, которая возвращает содержимое тултипа. Если функция вернула `null`, то тултип не показывается. */\n render?: Nullable<() => React.ReactNode>;\n\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPositionsType;\n\n /** Задает размер тултипа.\n * @default 'small' */\n size?: SizeProp;\n\n /** Задает триггер открытия тултипа. */\n trigger?: TooltipTrigger;\n\n /** Задает хендлер, который вызывается при клике по крестику. */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n\n /** Задает хендлер, который вызывается при клике по крестику или снаружи тултипа. */\n onCloseRequest?: (event?: Event | React.MouseEvent) => void;\n\n /** Задает хендлер, который вызывается при закрытии тултипа. */\n onClose?: () => void;\n\n /** Задает хендлер, который вызывается при открытии тултипа. */\n onOpen?: () => void;\n\n /** Задает список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция.\n * Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPositionsType[];\n\n /** Отключает анимацию.\n * @default false */\n disableAnimations?: boolean;\n\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n}\n\nconst DEFAULT_DELAY = 100;\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nexport const TooltipDataTids = {\n root: 'Tooltip__root',\n content: 'Tooltip__content',\n crossIcon: 'Tooltip__crossIcon',\n} as const;\n\nconst OldPositions: PopupPositionsType[] = [\n 'right bottom',\n 'right middle',\n 'right top',\n 'top right',\n 'top center',\n 'top left',\n 'left top',\n 'left middle',\n 'left bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n];\n\ninterface TooltipSizeVariables {\n closeButtonStyle: string;\n contentStyle: string;\n borderRadius: string;\n pinSize: string;\n pinOffsetX: string;\n pinOffsetY: string;\n margin: string;\n}\n\ntype DefaultProps = Required<\n Pick<TooltipProps, 'size' | 'trigger' | 'disableAnimations' | 'useWrapper' | 'delayBeforeShow'>\n>;\n\n/**\n * `Tooltip` — это подсказка, которая объясняет состояние контрола или даёт контекстную справку.\n *\n * Открывается по клику, фокусом на элемент или по наведению. В отличие от `Hint`, `Tooltip` может содержать\n * изображения, кнопки, ссылки и прочие интерактивные элементы.\n */\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n public static displayName = 'Tooltip';\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n trigger: 'hover',\n disableAnimations: isTestEnv,\n useWrapper: false,\n delayBeforeShow: DEFAULT_DELAY,\n };\n\n private getProps = createPropsGetter(Tooltip.defaultProps);\n private validateProps(props: TooltipProps): void {\n warning(\n props.children || props.anchorElement,\n `[Tooltip]: you must provide either 'children' or 'anchorElement' prop for Tooltip to work properly`,\n );\n }\n\n public static delay = DEFAULT_DELAY;\n private static triggersWithoutCloseButton: TooltipTrigger[] = ['hover', 'hoverAnchor', 'focus', 'hover&focus'];\n\n public state: TooltipState = { opened: false, focused: false };\n private theme!: Theme;\n private sizeVariables!: TooltipSizeVariables;\n public featureFlags!: ReactUIFeatureFlags;\n private hoverTimeout: SafeTimer;\n private contentElement: Nullable<HTMLElement> = null;\n private clickedOutside = true;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions ? this.props.allowedPositions : OldPositions;\n }\n\n public componentDidMount(): void {\n this.validateProps(this.getProps());\n }\n\n public componentDidUpdate() {\n const { trigger } = this.getProps();\n\n this.validateProps(this.getProps());\n if (trigger === 'closed' && this.state.opened) {\n this.close();\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n this.sizeVariables = this.getSizeVariables();\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupBackground: theme.tooltipBg,\n popupBorder: theme.tooltipBorder,\n popupBorderRadius: this.sizeVariables.borderRadius,\n popupPinSize: this.sizeVariables.pinSize,\n popupPinOffsetX: this.sizeVariables.pinOffsetX,\n popupPinOffsetY: this.sizeVariables.pinOffsetY,\n popupMargin: this.sizeVariables.margin,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (isNullable(content)) {\n return null;\n }\n\n return (\n <div\n ref={this.refContent}\n className={cx(styles.tooltipContent(this.theme), this.sizeVariables.contentStyle)}\n data-tid={TooltipDataTids.content}\n >\n {content}\n {this.renderCloseButton()}\n </div>\n );\n };\n\n public renderCloseButton() {\n const hasCross =\n this.props.closeButton === undefined\n ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n const icon = (\n <CloseButtonIcon\n tabbable={false}\n side={parseInt(this.theme.tooltipCloseBtnSide)}\n color={this.theme.tooltipCloseBtnColor}\n colorHover={this.theme.tooltipCloseBtnHoverColor}\n />\n );\n\n return (\n <div\n className={cx(styles.closeButton(this.theme), this.sizeVariables.closeButtonStyle)}\n onClick={this.handleCloseButtonClick}\n data-tid={TooltipDataTids.crossIcon}\n >\n {icon}\n </div>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n /**\n * Программно открывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public show() {\n if (this.state.opened) {\n return;\n }\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.close();\n }\n\n private renderMain() {\n const props = this.props;\n const content = this.renderContent();\n const { popupProps, layerProps = { active: false } } = this.getPopupAndLayerProps();\n const anchorElement = props.children || props.anchorElement;\n const popup = this.renderPopup(anchorElement, popupProps, content);\n\n return (\n <RenderLayer {...layerProps} getAnchorElement={this.getAnchorElement}>\n {popup}\n </RenderLayer>\n );\n }\n\n private renderPopup(\n anchorElement: React.ReactNode | HTMLElement,\n popupProps: Partial<PopupProps>,\n content: JSX.Element | null,\n ) {\n const { disableAnimations, trigger } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n data-tid={TooltipDataTids.root}\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={disableAnimations}\n positions={this.getPositions()}\n pos={this.props.pos}\n ignoreHover={trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n withoutMobile\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private getPositions = (): PopupPositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPopupAndLayerProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && this.getProps().useWrapper;\n const trigger = this.getProps().trigger;\n\n switch (trigger) {\n case 'opened':\n return {\n layerProps: {\n active: true,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n opened: true,\n useWrapper,\n },\n };\n\n case 'closed':\n return {\n popupProps: {\n opened: false,\n useWrapper,\n },\n };\n\n case 'hoverAnchor':\n case 'hover':\n return {\n popupProps: {\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n case 'manual':\n return {\n popupProps: {\n useWrapper,\n },\n };\n case 'click':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onClick: this.handleClick,\n useWrapper,\n },\n };\n\n case 'focus':\n return {\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n useWrapper,\n },\n };\n\n case 'hover&focus':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n\n default:\n throw new Error('Unknown trigger specified: ' + trigger);\n }\n }\n\n private open = () => this.setState({ opened: true });\n\n private close = () => this.setState({ opened: false });\n\n private clearHoverTimeout() {\n if (this.hoverTimeout) {\n globalObject.clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.getProps().trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n this.hoverTimeout = globalObject.setTimeout(this.open, this.getProps().delayBeforeShow);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n const trigger = this.getProps().trigger;\n if (\n (trigger === 'hover&focus' && this.state.focused) ||\n (trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = globalObject.setTimeout(this.close, Tooltip.delay);\n }\n };\n\n private handleClick = () => {\n this.open();\n };\n\n private handleClickOutsideAnchor = (event: Event) => {\n this.clickedOutside = this.isClickOutsideContent(event);\n if (this.clickedOutside) {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && isInstanceOf(event.target, globalObject.Element)) {\n return !containsTargetOrRenderContainer(event.target)(this.contentElement);\n }\n\n return true;\n }\n\n private handleFocus = () => {\n this.setState({ focused: true });\n this.open();\n };\n\n private handleBlur = () => {\n const trigger = this.getProps().trigger;\n if (trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (trigger === 'focus') {\n this.close();\n }\n\n this.clickedOutside = true;\n this.setState({ focused: false });\n };\n\n private handleCloseButtonClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n\n if (this.props.onCloseClick) {\n this.props.onCloseClick(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n\n this.close();\n };\n\n private getSizeVariables = (): TooltipSizeVariables => {\n switch (this.props.size) {\n case 'small':\n return {\n closeButtonStyle: styles.closeButtonSmall(this.theme),\n contentStyle: styles.tooltipContentSmall(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusSmall,\n pinSize: this.theme.tooltipPinSizeSmall,\n pinOffsetX: this.theme.tooltipPinOffsetXSmall,\n pinOffsetY: this.theme.tooltipPinOffsetYSmall,\n margin: this.theme.tooltipMarginSmall,\n };\n case 'medium':\n return {\n closeButtonStyle: styles.closeButtonMedium(this.theme),\n contentStyle: styles.tooltipContentMedium(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusMedium,\n pinSize: this.theme.tooltipPinSizeMedium,\n pinOffsetX: this.theme.tooltipPinOffsetXMedium,\n pinOffsetY: this.theme.tooltipPinOffsetYMedium,\n margin: this.theme.tooltipMarginMedium,\n };\n case 'large':\n return {\n closeButtonStyle: styles.closeButtonLarge(this.theme),\n contentStyle: styles.tooltipContentLarge(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusLarge,\n pinSize: this.theme.tooltipPinSizeLarge,\n pinOffsetX: this.theme.tooltipPinOffsetXLarge,\n pinOffsetY: this.theme.tooltipPinOffsetYLarge,\n margin: this.theme.tooltipMarginLarge,\n };\n default:\n console.error(`Can't get size variables: invalid value in size prop '${this.props.size}'. Returning default`);\n return {\n closeButtonStyle: styles.closeButtonSmall(this.theme),\n contentStyle: styles.tooltipContentSmall(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusSmall,\n pinSize: this.theme.tooltipPinSizeSmall,\n pinOffsetX: this.theme.tooltipPinOffsetXSmall,\n pinOffsetY: this.theme.tooltipPinOffsetYSmall,\n margin: this.theme.tooltipMarginSmall,\n };\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,11 @@
1
1
  import type { Theme } from '../../lib/theming/Theme';
2
2
  export declare const styles: {
3
- cross(t: Theme): string;
3
+ closeButton(t: Theme): string;
4
+ closeButtonSmall(t: Theme): string;
5
+ closeButtonMedium(t: Theme): string;
6
+ closeButtonLarge(t: Theme): string;
4
7
  tooltipContent(t: Theme): string;
8
+ tooltipContentSmall(t: Theme): string;
9
+ tooltipContentMedium(t: Theme): string;
10
+ tooltipContentLarge(t: Theme): string;
5
11
  };
@@ -1,18 +1,17 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2;
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
2
2
 
3
3
 
4
4
  var styles = exports.styles = (0, _Emotion.memoizeStyle)({
5
- cross: function cross(t) {
6
- return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n cursor: pointer;\n height: ", ";\n line-height: 0;\n padding: ", ";\n position: absolute;\n right: 0;\n top: 0;\n width: ", ";\n box-sizing: content-box;\n\n &:hover {\n color: ", ";\n }\n "])),
7
- t.tooltipCloseBtnColor,
8
-
9
- t.tooltipCloseBtnSide,
5
+ closeButton: function closeButton(t) {
6
+ return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n position: absolute;\n box-sizing: content-box;\n right: 0;\n top: 0;\n width: ", ";\n height: ", ";\n color: ", ";\n cursor: pointer;\n line-height: 0;\n\n &:hover {\n color: ", ";\n }\n "])),
10
7
 
11
- t.tooltipCloseBtnPadding,
12
8
 
13
9
 
14
10
 
15
11
  t.tooltipCloseBtnSide,
12
+ t.tooltipCloseBtnSide,
13
+ t.tooltipCloseBtnColor,
14
+
16
15
 
17
16
 
18
17
 
@@ -21,13 +20,52 @@ var styles = exports.styles = (0, _Emotion.memoizeStyle)({
21
20
 
22
21
  },
23
22
 
23
+ closeButtonSmall: function closeButtonSmall(t) {
24
+ return (0, _Emotion.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", ";\n "])),
25
+ t.tooltipCloseBtnPaddingSmall);
26
+
27
+ },
28
+
29
+ closeButtonMedium: function closeButtonMedium(t) {
30
+ return (0, _Emotion.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", ";\n "])),
31
+ t.tooltipCloseBtnPaddingMedium);
32
+
33
+ },
34
+
35
+ closeButtonLarge: function closeButtonLarge(t) {
36
+ return (0, _Emotion.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", ";\n "])),
37
+ t.tooltipCloseBtnPaddingLarge);
38
+
39
+ },
40
+
24
41
  tooltipContent: function tooltipContent(t) {
25
- return (0, _Emotion.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n padding: ", " ", ";\n position: relative;\n font-size: ", ";\n line-height: ", ";\n "])),
26
- t.tooltipTextColor,
27
- t.tooltipPaddingY, t.tooltipPaddingX,
42
+ return (0, _Emotion.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n position: relative;\n color: ", ";\n "])),
43
+
44
+ t.tooltipTextColor);
45
+
46
+ },
47
+
48
+ tooltipContentSmall: function tooltipContentSmall(t) {
49
+ return (0, _Emotion.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])),
50
+ t.tooltipPaddingYSmall, t.tooltipPaddingXSmall,
51
+ t.tooltipFontSizeSmall,
52
+ t.tooltipLineHeightSmall);
53
+
54
+ },
55
+
56
+ tooltipContentMedium: function tooltipContentMedium(t) {
57
+ return (0, _Emotion.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])),
58
+ t.tooltipPaddingYMedium, t.tooltipPaddingXMedium,
59
+ t.tooltipFontSizeMedium,
60
+ t.tooltipLineHeightMedium);
61
+
62
+ },
28
63
 
29
- t.tooltipFontSize,
30
- t.tooltipLineHeight);
64
+ tooltipContentLarge: function tooltipContentLarge(t) {
65
+ return (0, _Emotion.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])),
66
+ t.tooltipPaddingYLarge, t.tooltipPaddingXLarge,
67
+ t.tooltipFontSizeLarge,
68
+ t.tooltipLineHeightLarge);
31
69
 
32
70
  }
33
71
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","styles","exports","memoizeStyle","cross","t","css","_taggedTemplateLiteralLoose2","default","tooltipCloseBtnColor","tooltipCloseBtnSide","tooltipCloseBtnPadding","tooltipCloseBtnHoverColor","tooltipContent","tooltipTextColor","tooltipPaddingY","tooltipPaddingX","tooltipFontSize","tooltipLineHeight"],"sources":["Tooltip.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n cross(t: Theme) {\n return css`\n color: ${t.tooltipCloseBtnColor};\n cursor: pointer;\n height: ${t.tooltipCloseBtnSide};\n line-height: 0;\n padding: ${t.tooltipCloseBtnPadding};\n position: absolute;\n right: 0;\n top: 0;\n width: ${t.tooltipCloseBtnSide};\n box-sizing: content-box;\n\n &:hover {\n color: ${t.tooltipCloseBtnHoverColor};\n }\n `;\n },\n\n tooltipContent(t: Theme) {\n return css`\n color: ${t.tooltipTextColor};\n padding: ${t.tooltipPaddingY} ${t.tooltipPaddingX};\n position: relative;\n font-size: ${t.tooltipFontSize};\n line-height: ${t.tooltipLineHeight};\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA;;;AAGvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,KAAK,WAAAA,MAACC,CAAQ,EAAE;IACd,WAAOC,YAAG,EAAAP,eAAA,KAAAA,eAAA,OAAAQ,4BAAA,CAAAC,OAAA;IACCH,CAAC,CAACI,oBAAoB;;IAErBJ,CAAC,CAACK,mBAAmB;;IAEpBL,CAAC,CAACM,sBAAsB;;;;IAI1BN,CAAC,CAACK,mBAAmB;;;;IAInBL,CAAC,CAACO,yBAAyB;;;EAG1C,CAAC;;EAEDC,cAAc,WAAAA,eAACR,CAAQ,EAAE;IACvB,WAAOC,YAAG,EAAAN,gBAAA,KAAAA,gBAAA,OAAAO,4BAAA,CAAAC,OAAA;IACCH,CAAC,CAACS,gBAAgB;IAChBT,CAAC,CAACU,eAAe,EAAIV,CAAC,CAACW,eAAe;;IAEpCX,CAAC,CAACY,eAAe;IACfZ,CAAC,CAACa,iBAAiB;;EAEtC;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","styles","exports","memoizeStyle","closeButton","t","css","_taggedTemplateLiteralLoose2","default","tooltipCloseBtnSide","tooltipCloseBtnColor","tooltipCloseBtnHoverColor","closeButtonSmall","tooltipCloseBtnPaddingSmall","closeButtonMedium","tooltipCloseBtnPaddingMedium","closeButtonLarge","tooltipCloseBtnPaddingLarge","tooltipContent","tooltipTextColor","tooltipContentSmall","tooltipPaddingYSmall","tooltipPaddingXSmall","tooltipFontSizeSmall","tooltipLineHeightSmall","tooltipContentMedium","tooltipPaddingYMedium","tooltipPaddingXMedium","tooltipFontSizeMedium","tooltipLineHeightMedium","tooltipContentLarge","tooltipPaddingYLarge","tooltipPaddingXLarge","tooltipFontSizeLarge","tooltipLineHeightLarge"],"sources":["Tooltip.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n closeButton(t: Theme) {\n return css`\n position: absolute;\n box-sizing: content-box;\n right: 0;\n top: 0;\n width: ${t.tooltipCloseBtnSide};\n height: ${t.tooltipCloseBtnSide};\n color: ${t.tooltipCloseBtnColor};\n cursor: pointer;\n line-height: 0;\n\n &:hover {\n color: ${t.tooltipCloseBtnHoverColor};\n }\n `;\n },\n\n closeButtonSmall(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingSmall};\n `;\n },\n\n closeButtonMedium(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingMedium};\n `;\n },\n\n closeButtonLarge(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingLarge};\n `;\n },\n\n tooltipContent(t: Theme) {\n return css`\n position: relative;\n color: ${t.tooltipTextColor};\n `;\n },\n\n tooltipContentSmall(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYSmall} ${t.tooltipPaddingXSmall};\n font-size: ${t.tooltipFontSizeSmall};\n line-height: ${t.tooltipLineHeightSmall};\n `;\n },\n\n tooltipContentMedium(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYMedium} ${t.tooltipPaddingXMedium};\n font-size: ${t.tooltipFontSizeMedium};\n line-height: ${t.tooltipLineHeightMedium};\n `;\n },\n\n tooltipContentLarge(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYLarge} ${t.tooltipPaddingXLarge};\n font-size: ${t.tooltipFontSizeLarge};\n line-height: ${t.tooltipLineHeightLarge};\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;;;AAGvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,WAAW,WAAAA,YAACC,CAAQ,EAAE;IACpB,WAAOC,YAAG,EAAAb,eAAA,KAAAA,eAAA,OAAAc,4BAAA,CAAAC,OAAA;;;;;IAKCH,CAAC,CAACI,mBAAmB;IACpBJ,CAAC,CAACI,mBAAmB;IACtBJ,CAAC,CAACK,oBAAoB;;;;;IAKpBL,CAAC,CAACM,yBAAyB;;;EAG1C,CAAC;;EAEDC,gBAAgB,WAAAA,iBAACP,CAAQ,EAAE;IACzB,WAAOC,YAAG,EAAAZ,gBAAA,KAAAA,gBAAA,OAAAa,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAACQ,2BAA2B;;EAE5C,CAAC;;EAEDC,iBAAiB,WAAAA,kBAACT,CAAQ,EAAE;IAC1B,WAAOC,YAAG,EAAAX,gBAAA,KAAAA,gBAAA,OAAAY,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAACU,4BAA4B;;EAE7C,CAAC;;EAEDC,gBAAgB,WAAAA,iBAACX,CAAQ,EAAE;IACzB,WAAOC,YAAG,EAAAV,gBAAA,KAAAA,gBAAA,OAAAW,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAACY,2BAA2B;;EAE5C,CAAC;;EAEDC,cAAc,WAAAA,eAACb,CAAQ,EAAE;IACvB,WAAOC,YAAG,EAAAT,gBAAA,KAAAA,gBAAA,OAAAU,4BAAA,CAAAC,OAAA;;IAECH,CAAC,CAACc,gBAAgB;;EAE/B,CAAC;;EAEDC,mBAAmB,WAAAA,oBAACf,CAAQ,EAAE;IAC5B,WAAOC,YAAG,EAAAR,gBAAA,KAAAA,gBAAA,OAAAS,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAACgB,oBAAoB,EAAIhB,CAAC,CAACiB,oBAAoB;IAC9CjB,CAAC,CAACkB,oBAAoB;IACpBlB,CAAC,CAACmB,sBAAsB;;EAE3C,CAAC;;EAEDC,oBAAoB,WAAAA,qBAACpB,CAAQ,EAAE;IAC7B,WAAOC,YAAG,EAAAP,gBAAA,KAAAA,gBAAA,OAAAQ,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAACqB,qBAAqB,EAAIrB,CAAC,CAACsB,qBAAqB;IAChDtB,CAAC,CAACuB,qBAAqB;IACrBvB,CAAC,CAACwB,uBAAuB;;EAE5C,CAAC;;EAEDC,mBAAmB,WAAAA,oBAACzB,CAAQ,EAAE;IAC5B,WAAOC,YAAG,EAAAN,gBAAA,KAAAA,gBAAA,OAAAO,4BAAA,CAAAC,OAAA;IACGH,CAAC,CAAC0B,oBAAoB,EAAI1B,CAAC,CAAC2B,oBAAoB;IAC9C3B,CAAC,CAAC4B,oBAAoB;IACpB5B,CAAC,CAAC6B,sBAAsB;;EAE3C;AACF,CAAC,CAAC","ignoreList":[]}
@@ -5,6 +5,7 @@ import type { MenuItemProps } from '../MenuItem';
5
5
  import type { MenuHeaderProps } from '../MenuHeader';
6
6
  import type { PopupPositionsType } from '../../internal/Popup';
7
7
  import type { CommonProps } from '../../internal/CommonWrapper';
8
+ import type { TGetRootNode } from '../../lib/rootNode';
8
9
  export type TooltipMenuChildType = React.ReactElement<MenuItemProps | unknown | MenuHeaderProps>;
9
10
  export interface TooltipMenuProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'preventIconsOffset'> {
10
11
  /** @ignore */
@@ -17,10 +18,10 @@ export interface TooltipMenuProps extends Pick<AriaAttributes, 'aria-label'>, Co
17
18
  * В случае функции, внутри нее необходимо управлять открытием и закрытием меню. */
18
19
  caption: PopupMenuProps['caption'];
19
20
  /** Задает элемент, который будет отрендерен в шапке меню.
20
- * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`. */
21
+ * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`. */
21
22
  header?: React.ReactNode;
22
23
  /** Задает элемент, который будет отрендерен в подвале меню.
23
- * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator). */
24
+ * Перед элементом переданным в `footer` будет отрендерен MenuSeparator. */
24
25
  footer?: React.ReactNode;
25
26
  /** Определяет список позиций, доступных для расположения выпадашки относительно caption.
26
27
  * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка. */
@@ -46,6 +47,7 @@ type DefaultProps = Required<Pick<TooltipMenuProps, 'disableAnimations'>>;
46
47
  export declare class TooltipMenu extends React.Component<TooltipMenuProps> {
47
48
  static __KONTUR_REACT_UI__: string;
48
49
  static displayName: string;
50
+ getRootNode: TGetRootNode;
49
51
  private setRootNode;
50
52
  static defaultProps: DefaultProps;
51
53
  private getProps;
@@ -73,6 +73,7 @@ TooltipMenu = exports.TooltipMenu = (0, _rootNode.rootNode)(_class = (_TooltipMe
73
73
 
74
74
 
75
75
 
76
+
76
77
  function TooltipMenu(props) {var _this;
77
78
  _this = _React$Component.call(this, props) || this;_this.getProps = (0, _createPropsGetter.createPropsGetter)(TooltipMenu.defaultProps);
78
79
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeFactory","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_class","_TooltipMenu","TooltipMenuDataTids","exports","root","TooltipMenu","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","popupPinOffsetX","tooltipMenuPinOffsetX","popupPinOffsetY","tooltipMenuPinOffsetY","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","_this$getProps","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","menuMaxHeight","menuWidth","header","footer","preventIconsOffset","positions","onOpen","onClose","popupHasPin","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["TooltipMenu.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport type { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { MenuHeaderProps } from '../MenuHeader';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | unknown | MenuHeaderProps>;\n\nexport interface TooltipMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'preventIconsOffset'> {\n /** @ignore */\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Задает максимальную высоту меню. */\n menuMaxHeight?: number | string;\n /** Задает ширину меню. */\n menuWidth?: number | string;\n /** Задает элемент или функцию возвращающую элемент, которые используется вместо `caption`.\n * В случае функции, внутри нее необходимо управлять открытием и закрытием меню. */\n caption: PopupMenuProps['caption'];\n /** Задает элемент, который будет отрендерен в шапке меню.\n * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`. */\n header?: React.ReactNode;\n /** Задает элемент, который будет отрендерен в подвале меню.\n * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator). */\n footer?: React.ReactNode;\n /** Определяет список позиций, доступных для расположения выпадашки относительно caption.\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка. */\n positions?: PopupPositionsType[];\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n}\n\nexport const TooltipMenuDataTids = {\n root: 'TooltipMenu__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TooltipMenuProps, 'disableAnimations'>>;\n\n/**\n * Меню `TooltipMenu` раскрывается по клику на переданный в `caption` элемент.\n *\n * Положение меню задаётся с помощью массива `positions` и работает так:\n * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,\n * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.\n *\n * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.\n *\n * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.\n */\n@rootNode\nexport class TooltipMenu extends React.Component<TooltipMenuProps> {\n public static __KONTUR_REACT_UI__ = 'TooltipMenu';\n public static displayName = 'TooltipMenu';\n\n private setRootNode!: TSetRootNode;\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(TooltipMenu.defaultProps);\n\n constructor(props: TooltipMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffsetX: theme.tooltipMenuPinOffsetX,\n popupPinOffsetY: theme.tooltipMenuPinOffsetY,\n popupMargin: theme.tooltipMenuMargin,\n popupPinSize: theme.tooltipMenuPinSize,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n\n const { disableAnimations } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n aria-label={this.props['aria-label']}\n data-tid={TooltipMenuDataTids.root}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n caption={this.props.caption}\n header={this.props.header}\n footer={this.props.footer}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={this.props.positions}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n popupHasPin\n disableAnimations={disableAnimations}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeFactory","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_class","_TooltipMenu","TooltipMenuDataTids","exports","root","TooltipMenu","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","popupPinOffsetX","tooltipMenuPinOffsetX","popupPinOffsetY","tooltipMenuPinOffsetY","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","_this$getProps","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","menuMaxHeight","menuWidth","header","footer","preventIconsOffset","positions","onOpen","onClose","popupHasPin","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["TooltipMenu.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport type { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { MenuHeaderProps } from '../MenuHeader';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | unknown | MenuHeaderProps>;\n\nexport interface TooltipMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'preventIconsOffset'> {\n /** @ignore */\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Задает максимальную высоту меню. */\n menuMaxHeight?: number | string;\n /** Задает ширину меню. */\n menuWidth?: number | string;\n /** Задает элемент или функцию возвращающую элемент, которые используется вместо `caption`.\n * В случае функции, внутри нее необходимо управлять открытием и закрытием меню. */\n caption: PopupMenuProps['caption'];\n /** Задает элемент, который будет отрендерен в шапке меню.\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`. */\n header?: React.ReactNode;\n /** Задает элемент, который будет отрендерен в подвале меню.\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator. */\n footer?: React.ReactNode;\n /** Определяет список позиций, доступных для расположения выпадашки относительно caption.\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка. */\n positions?: PopupPositionsType[];\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n}\n\nexport const TooltipMenuDataTids = {\n root: 'TooltipMenu__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TooltipMenuProps, 'disableAnimations'>>;\n\n/**\n * Меню `TooltipMenu` раскрывается по клику на переданный в `caption` элемент.\n *\n * Положение меню задаётся с помощью массива `positions` и работает так:\n * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,\n * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.\n *\n * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.\n *\n * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.\n */\n@rootNode\nexport class TooltipMenu extends React.Component<TooltipMenuProps> {\n public static __KONTUR_REACT_UI__ = 'TooltipMenu';\n public static displayName = 'TooltipMenu';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(TooltipMenu.defaultProps);\n\n constructor(props: TooltipMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffsetX: theme.tooltipMenuPinOffsetX,\n popupPinOffsetY: theme.tooltipMenuPinOffsetY,\n popupMargin: theme.tooltipMenuMargin,\n popupPinSize: theme.tooltipMenuPinSize,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n\n const { disableAnimations } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n aria-label={this.props['aria-label']}\n data-tid={TooltipMenuDataTids.root}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n caption={this.props.caption}\n header={this.props.header}\n footer={this.props.footer}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={this.props.positions}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n popupHasPin\n disableAnimations={disableAnimations}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n}\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;;AAEA,IAAAG,UAAA,GAAAH,OAAA;;AAEA,IAAAI,mBAAA,GAAAJ,OAAA;;;;AAIA,IAAAK,cAAA,GAAAL,OAAA;;AAEA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAP,OAAA,gCAAgE,IAAAQ,MAAA,EAAAC,YAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BzD,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG;EACjCE,IAAI,EAAE;AACR,CAAU;;;;AAIV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAVA;;AAYaC,WAAW,GAAAF,OAAA,CAAAE,WAAA,OADvBC,kBAAQ,EAAAN,MAAA,IAAAC,YAAA,0BAAAM,gBAAA;;;;;;;;;;;;;EAcP,SAAAF,YAAYG,KAAuB,EAAE,KAAAC,KAAA;IACnCA,KAAA,GAAAF,gBAAA,CAAAG,IAAA,OAAMF,KAAK,CAAC,SAACC,KAAA,CAHPE,QAAQ,GAAG,IAAAC,oCAAiB,EAACP,WAAW,CAACQ,YAAY,CAAC;;IAK5D,IAAI,CAACL,KAAK,CAACM,OAAO,IAAI,CAACC,mCAAe,EAAE;MACtC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC;IAClD,CAAC,OAAAP,KAAA;EACH,CAAC,IAAAQ,eAAA,CAAAC,OAAA,EAAAb,WAAA,EAAAE,gBAAA,MAAAY,MAAA,GAAAd,WAAA,CAAAe,SAAA,CAAAD,MAAA;;EAEME,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA;IACd;MACEhC,MAAA,CAAA4B,OAAA,CAAAK,aAAA,CAAC7B,aAAA,CAAA8B,YAAY,CAACC,QAAQ;MACnB,UAACC,KAAK,EAAK;QACV;UACEpC,MAAA,CAAA4B,OAAA,CAAAK,aAAA,CAAC7B,aAAA,CAAA8B,YAAY,CAACG,QAAQ;YACpBC,KAAK,EAAEC,0BAAY,CAACC,MAAM;cACxB;gBACEC,eAAe,EAAEL,KAAK,CAACM,qBAAqB;gBAC5CC,eAAe,EAAEP,KAAK,CAACQ,qBAAqB;gBAC5CC,WAAW,EAAET,KAAK,CAACU,iBAAiB;gBACpCC,YAAY,EAAEX,KAAK,CAACY;cACtB,CAAC;cACDZ;YACF,CAAE;;UAEDJ,MAAI,CAACiB,UAAU,CAAC;UACI,CAAC;;MAE5B;MACqB,CAAC;;EAE5B,CAAC,CAAApB,MAAA;;EAEMoB,UAAU,GAAjB,SAAAA,WAAA,EAAoB;IAClB,IAAI,CAAC,IAAI,CAAC/B,KAAK,CAACM,OAAO,EAAE;MACvB,OAAO,IAAI;IACb;;IAEA,IAAA0B,cAAA,GAA8B,IAAI,CAAC7B,QAAQ,CAAC,CAAC,CAArC8B,iBAAiB,GAAAD,cAAA,CAAjBC,iBAAiB;;IAEzB;MACEnD,MAAA,CAAA4B,OAAA,CAAAK,aAAA,CAAC1B,cAAA,CAAA6C,aAAa,MAAAC,SAAA,CAAAzB,OAAA,IAAC0B,WAAW,EAAE,IAAI,CAACC,WAAY,IAAK,IAAI,CAACrC,KAAK;MAC1DlB,MAAA,CAAA4B,OAAA,CAAAK,aAAA,CAAC5B,UAAA,CAAAmD,SAAS;QACR,cAAY,IAAI,CAACtC,KAAK,CAAC,YAAY,CAAE;QACrC,YAAUN,mBAAmB,CAACE,IAAK;QACnC2C,aAAa,EAAE,IAAI,CAACvC,KAAK,CAACuC,aAAc;QACxCC,SAAS,EAAE,IAAI,CAACxC,KAAK,CAACwC,SAAU;QAChClC,OAAO,EAAE,IAAI,CAACN,KAAK,CAACM,OAAQ;QAC5BmC,MAAM,EAAE,IAAI,CAACzC,KAAK,CAACyC,MAAO;QAC1BC,MAAM,EAAE,IAAI,CAAC1C,KAAK,CAAC0C,MAAO;QAC1BC,kBAAkB,EAAE,IAAI,CAAC3C,KAAK,CAAC2C,kBAAmB;QAClDC,SAAS,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,SAAU;QAChCC,MAAM,EAAE,IAAI,CAAC7C,KAAK,CAAC6C,MAAO;QAC1BC,OAAO,EAAE,IAAI,CAAC9C,KAAK,CAAC8C,OAAQ;QAC5BC,WAAW;QACXd,iBAAiB,EAAEA,iBAAkB;;MAEpC,IAAI,CAACjC,KAAK,CAACgD;MACH;MACE,CAAC;;EAEpB,CAAC,QAAAnD,WAAA,GAzE8BoD,cAAK,CAACC,SAAS,GAAAzD,YAAA,CAChC0D,mBAAmB,GAAG,aAAa,EAAA1D,YAAA,CACnC2D,WAAW,GAAG,aAAa,EAAA3D,YAAA,CAK3BY,YAAY,GAAiB,EACzC4B,iBAAiB,EAAEoB,6BAAS,CAC9B,CAAC,EAAA5D,YAAA,MAAAD,MAAA","ignoreList":[]}
package/cjs/index.d.ts CHANGED
@@ -56,5 +56,6 @@ export * from './lib/theming/themes/LightTheme';
56
56
  export * from './lib/theming/themes/DarkTheme';
57
57
  export * from './lib/types/props';
58
58
  export * from './internal/Popup/types';
59
+ export type { PopupMenuCaptionProps } from './internal/PopupMenu';
59
60
  export * as ColorFunctions from './lib/styles/ColorFunctions';
60
61
  export * as DimensionFunctions from './lib/styles/DimensionFunctions';