@skbkontur/react-ui 3.12.2 → 3.12.3-popup-fix

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 (811) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +113 -113
  3. package/cjs/components/Autocomplete/index.d.ts +1 -1
  4. package/cjs/components/Button/Button.d.ts +161 -161
  5. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  6. package/cjs/components/Button/Button.styles.d.ts +68 -68
  7. package/cjs/components/Button/Corners.d.ts +6 -6
  8. package/cjs/components/Button/index.d.ts +1 -1
  9. package/cjs/components/Center/Center.d.ts +25 -25
  10. package/cjs/components/Center/Center.styles.d.ts +7 -7
  11. package/cjs/components/Center/index.d.ts +1 -1
  12. package/cjs/components/Checkbox/Checkbox.d.ts +96 -96
  13. package/cjs/components/Checkbox/Checkbox.styles.d.ts +22 -22
  14. package/cjs/components/Checkbox/index.d.ts +1 -1
  15. package/cjs/components/ComboBox/ComboBox.d.ts +184 -184
  16. package/cjs/components/ComboBox/index.d.ts +1 -1
  17. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  18. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  19. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  20. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  21. package/cjs/components/CurrencyInput/CursorHelper.d.ts +10 -10
  22. package/cjs/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  23. package/cjs/components/CurrencyInput/constants.d.ts +2 -2
  24. package/cjs/components/CurrencyInput/index.d.ts +1 -1
  25. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  26. package/cjs/components/CurrencyLabel/index.d.ts +1 -1
  27. package/cjs/components/DateInput/DateFragmentsView.d.ts +20 -20
  28. package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  29. package/cjs/components/DateInput/DateInput.d.ts +107 -107
  30. package/cjs/components/DateInput/DateInput.styles.d.ts +10 -10
  31. package/cjs/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  32. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  33. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  34. package/cjs/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  35. package/cjs/components/DateInput/helpers/inputNumber.d.ts +5 -5
  36. package/cjs/components/DateInput/index.d.ts +1 -1
  37. package/cjs/components/DatePicker/DatePicker.d.ts +131 -131
  38. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -3
  39. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  40. package/cjs/components/DatePicker/Picker.d.ts +33 -33
  41. package/cjs/components/DatePicker/Picker.styles.d.ts +5 -5
  42. package/cjs/components/DatePicker/index.d.ts +1 -1
  43. package/cjs/components/DatePicker/locale/index.d.ts +4 -4
  44. package/cjs/components/DatePicker/locale/locales/en.d.ts +2 -2
  45. package/cjs/components/DatePicker/locale/locales/ru.d.ts +2 -2
  46. package/cjs/components/DatePicker/locale/types.d.ts +5 -5
  47. package/cjs/components/Dropdown/Dropdown.d.ts +124 -124
  48. package/cjs/components/Dropdown/index.d.ts +1 -1
  49. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +65 -65
  50. package/cjs/components/DropdownMenu/index.d.ts +1 -1
  51. package/cjs/components/FxInput/FxInput.d.ts +50 -50
  52. package/cjs/components/FxInput/index.d.ts +1 -1
  53. package/cjs/components/Gapped/Gapped.d.ts +58 -58
  54. package/cjs/components/Gapped/index.d.ts +1 -1
  55. package/cjs/components/Group/Group.d.ts +14 -14
  56. package/cjs/components/Group/Group.styles.d.ts +8 -8
  57. package/cjs/components/Group/index.d.ts +1 -1
  58. package/cjs/components/Hint/Hint.d.ts +85 -81
  59. package/cjs/components/Hint/Hint.js +9 -1
  60. package/cjs/components/Hint/Hint.js.map +1 -1
  61. package/cjs/components/Hint/Hint.styles.d.ts +5 -5
  62. package/cjs/components/Hint/index.d.ts +1 -1
  63. package/cjs/components/Input/Input.d.ts +157 -157
  64. package/cjs/components/Input/Input.styles.d.ts +42 -42
  65. package/cjs/components/Input/index.d.ts +1 -1
  66. package/cjs/components/Kebab/Kebab.d.ts +71 -71
  67. package/cjs/components/Kebab/Kebab.styles.d.ts +12 -12
  68. package/cjs/components/Kebab/index.d.ts +1 -1
  69. package/cjs/components/Link/Link.d.ts +72 -72
  70. package/cjs/components/Link/Link.mixins.d.ts +3 -3
  71. package/cjs/components/Link/Link.styles.d.ts +15 -15
  72. package/cjs/components/Link/index.d.ts +1 -1
  73. package/cjs/components/Loader/Loader.d.ts +100 -100
  74. package/cjs/components/Loader/Loader.styles.d.ts +8 -8
  75. package/cjs/components/Loader/index.d.ts +1 -1
  76. package/cjs/components/MenuHeader/MenuHeader.d.ts +20 -20
  77. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  78. package/cjs/components/MenuHeader/index.d.ts +1 -1
  79. package/cjs/components/MenuItem/MenuItem.d.ts +94 -94
  80. package/cjs/components/MenuItem/MenuItem.styles.d.ts +13 -13
  81. package/cjs/components/MenuItem/index.d.ts +1 -1
  82. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  83. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  84. package/cjs/components/MenuSeparator/index.d.ts +1 -1
  85. package/cjs/components/Modal/Modal.d.ts +87 -87
  86. package/cjs/components/Modal/Modal.styles.d.ts +26 -26
  87. package/cjs/components/Modal/ModalBody.d.ts +21 -21
  88. package/cjs/components/Modal/ModalClose.d.ts +2 -2
  89. package/cjs/components/Modal/ModalContext.d.ts +15 -15
  90. package/cjs/components/Modal/ModalFooter.d.ts +21 -21
  91. package/cjs/components/Modal/ModalHeader.d.ts +17 -17
  92. package/cjs/components/Modal/index.d.ts +4 -4
  93. package/cjs/components/Paging/NavigationHelper.d.ts +7 -7
  94. package/cjs/components/Paging/Paging.d.ts +90 -90
  95. package/cjs/components/Paging/Paging.styles.d.ts +16 -16
  96. package/cjs/components/Paging/PagingHelper.d.ts +2 -2
  97. package/cjs/components/Paging/index.d.ts +1 -1
  98. package/cjs/components/Paging/locale/index.d.ts +4 -4
  99. package/cjs/components/Paging/locale/locales/en.d.ts +2 -2
  100. package/cjs/components/Paging/locale/locales/ru.d.ts +2 -2
  101. package/cjs/components/Paging/locale/types.d.ts +3 -3
  102. package/cjs/components/PasswordInput/PasswordInput.d.ts +49 -49
  103. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  104. package/cjs/components/PasswordInput/index.d.ts +1 -1
  105. package/cjs/components/Radio/Radio.d.ts +77 -77
  106. package/cjs/components/Radio/Radio.styles.d.ts +19 -19
  107. package/cjs/components/Radio/index.d.ts +1 -1
  108. package/cjs/components/RadioGroup/Prevent.d.ts +8 -8
  109. package/cjs/components/RadioGroup/RadioGroup.d.ts +117 -117
  110. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  111. package/cjs/components/RadioGroup/RadioGroupContext.d.ts +10 -10
  112. package/cjs/components/RadioGroup/index.d.ts +1 -1
  113. package/cjs/components/ScrollContainer/ScrollBar.d.ts +37 -37
  114. package/cjs/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  115. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +84 -84
  116. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  117. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +17 -17
  118. package/cjs/components/ScrollContainer/index.d.ts +1 -1
  119. package/cjs/components/Select/Item.d.ts +7 -7
  120. package/cjs/components/Select/Select.d.ts +179 -179
  121. package/cjs/components/Select/Select.styles.d.ts +17 -17
  122. package/cjs/components/Select/index.d.ts +1 -1
  123. package/cjs/components/Select/locale/index.d.ts +4 -4
  124. package/cjs/components/Select/locale/locales/en.d.ts +2 -2
  125. package/cjs/components/Select/locale/locales/ru.d.ts +2 -2
  126. package/cjs/components/Select/locale/types.d.ts +4 -4
  127. package/cjs/components/Select/selectTheme.d.ts +3 -3
  128. package/cjs/components/SidePage/SidePage.d.ts +109 -109
  129. package/cjs/components/SidePage/SidePage.styles.d.ts +37 -37
  130. package/cjs/components/SidePage/SidePageBody.d.ts +19 -19
  131. package/cjs/components/SidePage/SidePageContainer.d.ts +15 -15
  132. package/cjs/components/SidePage/SidePageContext.d.ts +17 -17
  133. package/cjs/components/SidePage/SidePageFooter.d.ts +36 -36
  134. package/cjs/components/SidePage/SidePageHeader.d.ts +44 -44
  135. package/cjs/components/SidePage/index.d.ts +5 -5
  136. package/cjs/components/Spinner/Spinner.d.ts +56 -56
  137. package/cjs/components/Spinner/Spinner.styles.d.ts +12 -12
  138. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  139. package/cjs/components/Spinner/index.d.ts +1 -1
  140. package/cjs/components/Spinner/locale/index.d.ts +4 -4
  141. package/cjs/components/Spinner/locale/locales/en.d.ts +2 -2
  142. package/cjs/components/Spinner/locale/locales/ru.d.ts +2 -2
  143. package/cjs/components/Spinner/locale/types.d.ts +4 -4
  144. package/cjs/components/Sticky/Sticky.d.ts +59 -59
  145. package/cjs/components/Sticky/Sticky.styles.d.ts +7 -7
  146. package/cjs/components/Sticky/index.d.ts +1 -1
  147. package/cjs/components/Switcher/Switcher.d.ts +56 -56
  148. package/cjs/components/Switcher/Switcher.styles.d.ts +10 -10
  149. package/cjs/components/Switcher/index.d.ts +1 -1
  150. package/cjs/components/Switcher/switcherTheme.d.ts +2 -2
  151. package/cjs/components/Tabs/Indicator.d.ts +28 -28
  152. package/cjs/components/Tabs/Indicator.styles.d.ts +8 -8
  153. package/cjs/components/Tabs/Tab.d.ts +121 -121
  154. package/cjs/components/Tabs/Tab.styles.d.ts +27 -27
  155. package/cjs/components/Tabs/Tabs.d.ts +62 -62
  156. package/cjs/components/Tabs/Tabs.styles.d.ts +5 -5
  157. package/cjs/components/Tabs/TabsContext.d.ts +14 -14
  158. package/cjs/components/Tabs/index.d.ts +2 -2
  159. package/cjs/components/Textarea/Textarea.d.ts +185 -185
  160. package/cjs/components/Textarea/Textarea.styles.d.ts +15 -15
  161. package/cjs/components/Textarea/TextareaCounter.d.ts +13 -13
  162. package/cjs/components/Textarea/TextareaHelpers.d.ts +11 -11
  163. package/cjs/components/Textarea/index.d.ts +1 -1
  164. package/cjs/components/Toast/Toast.d.ts +58 -58
  165. package/cjs/components/Toast/Toast.styles.d.ts +6 -6
  166. package/cjs/components/Toast/ToastStatic.d.ts +8 -8
  167. package/cjs/components/Toast/ToastView.d.ts +38 -38
  168. package/cjs/components/Toast/ToastView.styles.d.ts +8 -8
  169. package/cjs/components/Toast/index.d.ts +1 -1
  170. package/cjs/components/Toggle/Toggle.d.ts +107 -107
  171. package/cjs/components/Toggle/Toggle.styles.d.ts +30 -30
  172. package/cjs/components/Toggle/index.d.ts +1 -1
  173. package/cjs/components/Token/Token.d.ts +36 -36
  174. package/cjs/components/Token/Token.styles.d.ts +29 -29
  175. package/cjs/components/Token/index.d.ts +1 -1
  176. package/cjs/components/TokenInput/TextWidthHelper.d.ts +18 -18
  177. package/cjs/components/TokenInput/TokenInput.d.ts +194 -194
  178. package/cjs/components/TokenInput/TokenInput.styles.d.ts +15 -15
  179. package/cjs/components/TokenInput/TokenInputMenu.d.ts +18 -18
  180. package/cjs/components/TokenInput/TokenInputReducer.d.ts +25 -25
  181. package/cjs/components/TokenInput/index.d.ts +1 -1
  182. package/cjs/components/TokenInput/locale/index.d.ts +4 -4
  183. package/cjs/components/TokenInput/locale/locales/en.d.ts +2 -2
  184. package/cjs/components/TokenInput/locale/locales/ru.d.ts +2 -2
  185. package/cjs/components/TokenInput/locale/types.d.ts +4 -4
  186. package/cjs/components/Tooltip/Tooltip.d.ts +162 -160
  187. package/cjs/components/Tooltip/Tooltip.js +10 -7
  188. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  189. package/cjs/components/Tooltip/Tooltip.styles.d.ts +5 -5
  190. package/cjs/components/Tooltip/index.d.ts +1 -1
  191. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +65 -65
  192. package/cjs/components/TooltipMenu/index.d.ts +1 -1
  193. package/cjs/index.d.ts +49 -49
  194. package/cjs/internal/BGRuler.d.ts +30 -30
  195. package/cjs/internal/Calendar/Calendar.d.ts +66 -66
  196. package/cjs/internal/Calendar/Calendar.styles.d.ts +5 -5
  197. package/cjs/internal/Calendar/CalendarDateShape.d.ts +14 -14
  198. package/cjs/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  199. package/cjs/internal/Calendar/CalendarUtils.d.ts +19 -19
  200. package/cjs/internal/Calendar/DayCellView.d.ts +13 -13
  201. package/cjs/internal/Calendar/DayCellView.styles.d.ts +7 -7
  202. package/cjs/internal/Calendar/DayCellViewModel.d.ts +8 -8
  203. package/cjs/internal/Calendar/Month.d.ts +33 -33
  204. package/cjs/internal/Calendar/MonthView.d.ts +21 -21
  205. package/cjs/internal/Calendar/MonthView.styles.d.ts +9 -9
  206. package/cjs/internal/Calendar/MonthViewModel.d.ts +14 -14
  207. package/cjs/internal/Calendar/config.d.ts +9 -9
  208. package/cjs/internal/Calendar/index.d.ts +2 -2
  209. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +32 -31
  210. package/cjs/internal/CommonWrapper/CommonWrapper.js +17 -3
  211. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  212. package/cjs/internal/CommonWrapper/index.d.ts +1 -1
  213. package/cjs/internal/ComponentCombinator.d.ts +25 -25
  214. package/cjs/internal/ComponentTable.d.ts +21 -21
  215. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  216. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +90 -90
  217. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +136 -136
  218. package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  219. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  220. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  221. package/cjs/internal/CustomComboBox/index.d.ts +2 -2
  222. package/cjs/internal/CustomComboBox/locale/index.d.ts +4 -4
  223. package/cjs/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  224. package/cjs/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  225. package/cjs/internal/CustomComboBox/locale/types.d.ts +5 -5
  226. package/cjs/internal/DateSelect/DateSelect.d.ts +93 -93
  227. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  228. package/cjs/internal/DateSelect/index.d.ts +1 -1
  229. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +44 -44
  230. package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -3
  231. package/cjs/internal/DropdownContainer/index.d.ts +1 -1
  232. package/cjs/internal/FocusTrap/FocusTrap.d.ts +17 -17
  233. package/cjs/internal/FocusTrap/index.d.ts +1 -1
  234. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  235. package/cjs/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  236. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  237. package/cjs/internal/IgnoreLayerClick/index.d.ts +1 -1
  238. package/cjs/internal/InputLikeText/HiddenInput.d.ts +13 -13
  239. package/cjs/internal/InputLikeText/InputLikeText.d.ts +73 -73
  240. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  241. package/cjs/internal/InputLikeText/index.d.ts +1 -1
  242. package/cjs/internal/InternalMenu/InternalMenu.d.ts +63 -63
  243. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  244. package/cjs/internal/InternalMenu/index.d.ts +1 -1
  245. package/cjs/internal/InternalMenu/isActiveElement.d.ts +3 -3
  246. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  247. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  248. package/cjs/internal/MaskCharLowLine/index.d.ts +1 -1
  249. package/cjs/internal/MaskedInput/MaskedInput.d.ts +40 -40
  250. package/cjs/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  251. package/cjs/internal/MaskedInput/index.d.ts +1 -1
  252. package/cjs/internal/Menu/Menu.d.ts +65 -65
  253. package/cjs/internal/Menu/Menu.styles.d.ts +9 -9
  254. package/cjs/internal/Menu/index.d.ts +1 -1
  255. package/cjs/internal/Menu/isActiveElement.d.ts +3 -3
  256. package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  257. package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  258. package/cjs/internal/NativeDateInput/index.d.ts +1 -1
  259. package/cjs/internal/NativeDateInput/utils.d.ts +7 -7
  260. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  261. package/cjs/internal/Popup/Popup.d.ts +161 -162
  262. package/cjs/internal/Popup/Popup.js +14 -13
  263. package/cjs/internal/Popup/Popup.js.map +1 -1
  264. package/cjs/internal/Popup/Popup.styles.d.ts +16 -16
  265. package/cjs/internal/Popup/PopupHelper.d.ts +26 -26
  266. package/cjs/internal/Popup/PopupPin.d.ts +56 -56
  267. package/cjs/internal/Popup/PopupPin.styles.d.ts +3 -3
  268. package/cjs/internal/Popup/index.d.ts +1 -1
  269. package/cjs/internal/Popup/types.d.ts +1 -1
  270. package/cjs/internal/PopupMenu/PopupMenu.d.ts +85 -85
  271. package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  272. package/cjs/internal/PopupMenu/index.d.ts +1 -1
  273. package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
  274. package/cjs/internal/RenderContainer/RenderContainer.d.ts +16 -16
  275. package/cjs/internal/RenderContainer/RenderContainer.js +9 -0
  276. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  277. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +12 -11
  278. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
  279. package/cjs/internal/RenderContainer/index.d.ts +1 -1
  280. package/cjs/internal/RenderLayer/RenderLayer.d.ts +29 -29
  281. package/cjs/internal/RenderLayer/index.d.ts +1 -1
  282. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  283. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  284. package/cjs/internal/ResizeDetector/index.d.ts +1 -1
  285. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  286. package/cjs/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  287. package/cjs/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  288. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  289. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  290. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  291. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  292. package/cjs/internal/ThemePlayground/Playground.d.ts +31 -31
  293. package/cjs/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  294. package/cjs/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  295. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  296. package/cjs/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  297. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  298. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  299. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  300. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  301. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  302. package/cjs/internal/ThemePlayground/VariableValue.d.ts +45 -45
  303. package/cjs/internal/ThemePlayground/constants.d.ts +18 -18
  304. package/cjs/internal/ThemePlayground/darkTheme.d.ts +255 -255
  305. package/cjs/internal/ThemePlayground/helpers.d.ts +2 -2
  306. package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  307. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  308. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  309. package/cjs/internal/ZIndex/ZIndex.d.ts +36 -36
  310. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  311. package/cjs/internal/ZIndex/index.d.ts +1 -1
  312. package/cjs/internal/icons/16px/icon.styles.d.ts +4 -4
  313. package/cjs/internal/icons/16px/index.d.ts +22 -22
  314. package/cjs/internal/icons/20px/Icon.d.ts +30 -30
  315. package/cjs/internal/icons/20px/icon.styles.d.ts +4 -4
  316. package/cjs/internal/icons/20px/index.d.ts +2 -2
  317. package/cjs/internal/icons/20px/svg.d.ts +14 -14
  318. package/cjs/internal/icons/CloudIcon.d.ts +1 -1
  319. package/cjs/internal/icons/CrossIcon.d.ts +1 -1
  320. package/cjs/internal/icons/SpinnerIcon.d.ts +26 -26
  321. package/cjs/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  322. package/cjs/internal/themes/DefaultTheme.d.ts +766 -766
  323. package/cjs/internal/themes/FlatTheme.d.ts +132 -132
  324. package/cjs/internal/themes/Theme8px.d.ts +271 -271
  325. package/cjs/lib/ConditionalHandler.d.ts +11 -11
  326. package/cjs/lib/InstanceWithAnchorElement.d.ts +5 -0
  327. package/cjs/lib/InstanceWithAnchorElement.js +9 -0
  328. package/cjs/lib/InstanceWithAnchorElement.js.map +1 -0
  329. package/cjs/lib/LayoutEvents.d.ts +4 -4
  330. package/cjs/lib/ModalStack.d.ts +14 -14
  331. package/cjs/lib/SSRSafe.d.ts +4 -4
  332. package/cjs/lib/Supports.d.ts +1 -1
  333. package/cjs/lib/Upgrades.d.ts +6 -6
  334. package/cjs/lib/animation/index.d.ts +6 -6
  335. package/cjs/lib/animation/presets.d.ts +18 -18
  336. package/cjs/lib/animation/stepper.d.ts +1 -1
  337. package/cjs/lib/callChildRef/callChildRef.d.ts +3 -3
  338. package/cjs/lib/client.d.ts +16 -16
  339. package/cjs/lib/createPropsGetter.d.ts +2 -2
  340. package/cjs/lib/currentEnvironment.d.ts +3 -3
  341. package/cjs/lib/date/InternalDate.d.ts +58 -58
  342. package/cjs/lib/date/InternalDateCalculator.d.ts +6 -6
  343. package/cjs/lib/date/InternalDateGetter.d.ts +15 -15
  344. package/cjs/lib/date/InternalDateSetter.d.ts +6 -6
  345. package/cjs/lib/date/InternalDateTransformer.d.ts +12 -12
  346. package/cjs/lib/date/InternalDateValidator.d.ts +12 -12
  347. package/cjs/lib/date/constants.d.ts +28 -28
  348. package/cjs/lib/date/localeSets.d.ts +5 -5
  349. package/cjs/lib/date/types.d.ts +90 -90
  350. package/cjs/lib/dom/getScrollWidth.d.ts +1 -1
  351. package/cjs/lib/dom/tabbableHelpers.d.ts +16 -16
  352. package/cjs/lib/events/MouseDrag.d.ts +58 -58
  353. package/cjs/lib/events/fixClickFocusIE.d.ts +1 -1
  354. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  355. package/cjs/lib/events/keyListener.d.ts +7 -7
  356. package/cjs/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  357. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  358. package/cjs/lib/events/keyboard/extractCode.d.ts +3 -3
  359. package/cjs/lib/events/keyboard/identifiers.d.ts +48 -48
  360. package/cjs/lib/events/stopPropagation.d.ts +1 -1
  361. package/cjs/lib/events/tabListener.d.ts +1 -1
  362. package/cjs/lib/extractKeyboardAction.d.ts +13 -13
  363. package/cjs/lib/filterProps.d.ts +12 -12
  364. package/cjs/lib/forwardRefAndName.d.ts +5 -5
  365. package/cjs/lib/getDisplayName.d.ts +3 -3
  366. package/cjs/lib/listenFocusOutside.d.ts +8 -8
  367. package/cjs/lib/locale/LocaleContext.d.ts +7 -7
  368. package/cjs/lib/locale/LocaleHelper.d.ts +9 -9
  369. package/cjs/lib/locale/constants.d.ts +2 -2
  370. package/cjs/lib/locale/decorators.d.ts +36 -36
  371. package/cjs/lib/locale/index.d.ts +3 -3
  372. package/cjs/lib/locale/types.d.ts +19 -19
  373. package/cjs/lib/memo.d.ts +1 -1
  374. package/cjs/lib/net/fetch.d.ts +13 -13
  375. package/cjs/lib/polyfillPlaceholder.d.ts +1 -1
  376. package/cjs/lib/reactGetTextContent.d.ts +2 -2
  377. package/cjs/lib/rootNode/getRootNode.d.ts +3 -3
  378. package/cjs/lib/rootNode/getRootNode.js +5 -4
  379. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  380. package/cjs/lib/rootNode/index.d.ts +2 -2
  381. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +47 -33
  382. package/cjs/lib/rootNode/rootNodeDecorator.js +39 -4
  383. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  384. package/cjs/lib/styles/ColorFactory.d.ts +11 -11
  385. package/cjs/lib/styles/ColorFunctions.d.ts +11 -11
  386. package/cjs/lib/styles/ColorHelpers.d.ts +20 -20
  387. package/cjs/lib/styles/ColorKeywords.d.ts +150 -150
  388. package/cjs/lib/styles/ColorObject.d.ts +52 -52
  389. package/cjs/lib/styles/DimensionFunctions.d.ts +1 -1
  390. package/cjs/lib/styles/HoldSelectionColor.d.ts +1 -1
  391. package/cjs/lib/styles/Mixins.d.ts +2 -2
  392. package/cjs/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  393. package/cjs/lib/theming/AnimationKeyframes.d.ts +9 -9
  394. package/cjs/lib/theming/Emotion.d.ts +15 -15
  395. package/cjs/lib/theming/Theme.d.ts +3 -3
  396. package/cjs/lib/theming/ThemeContext.d.ts +2 -2
  397. package/cjs/lib/theming/ThemeFactory.d.ts +8 -8
  398. package/cjs/lib/theming/ThemeHelpers.d.ts +11 -11
  399. package/cjs/lib/theming/themes/DefaultTheme.d.ts +1 -1
  400. package/cjs/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  401. package/cjs/lib/theming/themes/FlatTheme.d.ts +1 -1
  402. package/cjs/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  403. package/cjs/lib/theming/useTheme.d.ts +1 -1
  404. package/cjs/lib/utils.d.ts +63 -63
  405. package/cjs/lib/withClassWrapper.d.ts +71 -71
  406. package/components/Autocomplete/Autocomplete.d.ts +113 -113
  407. package/components/Autocomplete/index.d.ts +1 -1
  408. package/components/Button/Button.d.ts +161 -161
  409. package/components/Button/Button.mixins.d.ts +6 -6
  410. package/components/Button/Button.styles.d.ts +68 -68
  411. package/components/Button/Corners.d.ts +6 -6
  412. package/components/Button/index.d.ts +1 -1
  413. package/components/Center/Center.d.ts +25 -25
  414. package/components/Center/Center.styles.d.ts +7 -7
  415. package/components/Center/index.d.ts +1 -1
  416. package/components/Checkbox/Checkbox.d.ts +96 -96
  417. package/components/Checkbox/Checkbox.styles.d.ts +22 -22
  418. package/components/Checkbox/index.d.ts +1 -1
  419. package/components/ComboBox/ComboBox.d.ts +184 -184
  420. package/components/ComboBox/index.d.ts +1 -1
  421. package/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  422. package/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  423. package/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  424. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  425. package/components/CurrencyInput/CursorHelper.d.ts +10 -10
  426. package/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  427. package/components/CurrencyInput/constants.d.ts +2 -2
  428. package/components/CurrencyInput/index.d.ts +1 -1
  429. package/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  430. package/components/CurrencyLabel/index.d.ts +1 -1
  431. package/components/DateInput/DateFragmentsView.d.ts +20 -20
  432. package/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  433. package/components/DateInput/DateInput.d.ts +107 -107
  434. package/components/DateInput/DateInput.styles.d.ts +10 -10
  435. package/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  436. package/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  437. package/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  438. package/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  439. package/components/DateInput/helpers/inputNumber.d.ts +5 -5
  440. package/components/DateInput/index.d.ts +1 -1
  441. package/components/DatePicker/DatePicker.d.ts +131 -131
  442. package/components/DatePicker/DatePicker.styles.d.ts +3 -3
  443. package/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  444. package/components/DatePicker/Picker.d.ts +33 -33
  445. package/components/DatePicker/Picker.styles.d.ts +5 -5
  446. package/components/DatePicker/index.d.ts +1 -1
  447. package/components/DatePicker/locale/index.d.ts +4 -4
  448. package/components/DatePicker/locale/locales/en.d.ts +2 -2
  449. package/components/DatePicker/locale/locales/ru.d.ts +2 -2
  450. package/components/DatePicker/locale/types.d.ts +5 -5
  451. package/components/Dropdown/Dropdown.d.ts +124 -124
  452. package/components/Dropdown/index.d.ts +1 -1
  453. package/components/DropdownMenu/DropdownMenu.d.ts +65 -65
  454. package/components/DropdownMenu/index.d.ts +1 -1
  455. package/components/FxInput/FxInput.d.ts +50 -50
  456. package/components/FxInput/index.d.ts +1 -1
  457. package/components/Gapped/Gapped.d.ts +58 -58
  458. package/components/Gapped/index.d.ts +1 -1
  459. package/components/Group/Group.d.ts +14 -14
  460. package/components/Group/Group.styles.d.ts +8 -8
  461. package/components/Group/index.d.ts +1 -1
  462. package/components/Hint/Hint/Hint.js +9 -1
  463. package/components/Hint/Hint/Hint.js.map +1 -1
  464. package/components/Hint/Hint.d.ts +85 -81
  465. package/components/Hint/Hint.styles.d.ts +5 -5
  466. package/components/Hint/index.d.ts +1 -1
  467. package/components/Input/Input.d.ts +157 -157
  468. package/components/Input/Input.styles.d.ts +42 -42
  469. package/components/Input/index.d.ts +1 -1
  470. package/components/Kebab/Kebab.d.ts +71 -71
  471. package/components/Kebab/Kebab.styles.d.ts +12 -12
  472. package/components/Kebab/index.d.ts +1 -1
  473. package/components/Link/Link.d.ts +72 -72
  474. package/components/Link/Link.mixins.d.ts +3 -3
  475. package/components/Link/Link.styles.d.ts +15 -15
  476. package/components/Link/index.d.ts +1 -1
  477. package/components/Loader/Loader.d.ts +100 -100
  478. package/components/Loader/Loader.styles.d.ts +8 -8
  479. package/components/Loader/index.d.ts +1 -1
  480. package/components/MenuHeader/MenuHeader.d.ts +20 -20
  481. package/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  482. package/components/MenuHeader/index.d.ts +1 -1
  483. package/components/MenuItem/MenuItem.d.ts +94 -94
  484. package/components/MenuItem/MenuItem.styles.d.ts +13 -13
  485. package/components/MenuItem/index.d.ts +1 -1
  486. package/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  487. package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  488. package/components/MenuSeparator/index.d.ts +1 -1
  489. package/components/Modal/Modal.d.ts +87 -87
  490. package/components/Modal/Modal.styles.d.ts +26 -26
  491. package/components/Modal/ModalBody.d.ts +21 -21
  492. package/components/Modal/ModalClose.d.ts +2 -2
  493. package/components/Modal/ModalContext.d.ts +15 -15
  494. package/components/Modal/ModalFooter.d.ts +21 -21
  495. package/components/Modal/ModalHeader.d.ts +17 -17
  496. package/components/Modal/index.d.ts +4 -4
  497. package/components/Paging/NavigationHelper.d.ts +7 -7
  498. package/components/Paging/Paging.d.ts +90 -90
  499. package/components/Paging/Paging.styles.d.ts +16 -16
  500. package/components/Paging/PagingHelper.d.ts +2 -2
  501. package/components/Paging/index.d.ts +1 -1
  502. package/components/Paging/locale/index.d.ts +4 -4
  503. package/components/Paging/locale/locales/en.d.ts +2 -2
  504. package/components/Paging/locale/locales/ru.d.ts +2 -2
  505. package/components/Paging/locale/types.d.ts +3 -3
  506. package/components/PasswordInput/PasswordInput.d.ts +49 -49
  507. package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  508. package/components/PasswordInput/index.d.ts +1 -1
  509. package/components/Radio/Radio.d.ts +77 -77
  510. package/components/Radio/Radio.styles.d.ts +19 -19
  511. package/components/Radio/index.d.ts +1 -1
  512. package/components/RadioGroup/Prevent.d.ts +8 -8
  513. package/components/RadioGroup/RadioGroup.d.ts +117 -117
  514. package/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  515. package/components/RadioGroup/RadioGroupContext.d.ts +10 -10
  516. package/components/RadioGroup/index.d.ts +1 -1
  517. package/components/ScrollContainer/ScrollBar.d.ts +37 -37
  518. package/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  519. package/components/ScrollContainer/ScrollContainer.d.ts +84 -84
  520. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  521. package/components/ScrollContainer/ScrollContainer.styles.d.ts +17 -17
  522. package/components/ScrollContainer/index.d.ts +1 -1
  523. package/components/Select/Item.d.ts +7 -7
  524. package/components/Select/Select.d.ts +179 -179
  525. package/components/Select/Select.styles.d.ts +17 -17
  526. package/components/Select/index.d.ts +1 -1
  527. package/components/Select/locale/index.d.ts +4 -4
  528. package/components/Select/locale/locales/en.d.ts +2 -2
  529. package/components/Select/locale/locales/ru.d.ts +2 -2
  530. package/components/Select/locale/types.d.ts +4 -4
  531. package/components/Select/selectTheme.d.ts +3 -3
  532. package/components/SidePage/SidePage.d.ts +109 -109
  533. package/components/SidePage/SidePage.styles.d.ts +37 -37
  534. package/components/SidePage/SidePageBody.d.ts +19 -19
  535. package/components/SidePage/SidePageContainer.d.ts +15 -15
  536. package/components/SidePage/SidePageContext.d.ts +17 -17
  537. package/components/SidePage/SidePageFooter.d.ts +36 -36
  538. package/components/SidePage/SidePageHeader.d.ts +44 -44
  539. package/components/SidePage/index.d.ts +5 -5
  540. package/components/Spinner/Spinner.d.ts +56 -56
  541. package/components/Spinner/Spinner.styles.d.ts +12 -12
  542. package/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  543. package/components/Spinner/index.d.ts +1 -1
  544. package/components/Spinner/locale/index.d.ts +4 -4
  545. package/components/Spinner/locale/locales/en.d.ts +2 -2
  546. package/components/Spinner/locale/locales/ru.d.ts +2 -2
  547. package/components/Spinner/locale/types.d.ts +4 -4
  548. package/components/Sticky/Sticky.d.ts +59 -59
  549. package/components/Sticky/Sticky.styles.d.ts +7 -7
  550. package/components/Sticky/index.d.ts +1 -1
  551. package/components/Switcher/Switcher.d.ts +56 -56
  552. package/components/Switcher/Switcher.styles.d.ts +10 -10
  553. package/components/Switcher/index.d.ts +1 -1
  554. package/components/Switcher/switcherTheme.d.ts +2 -2
  555. package/components/Tabs/Indicator.d.ts +28 -28
  556. package/components/Tabs/Indicator.styles.d.ts +8 -8
  557. package/components/Tabs/Tab.d.ts +121 -121
  558. package/components/Tabs/Tab.styles.d.ts +27 -27
  559. package/components/Tabs/Tabs.d.ts +62 -62
  560. package/components/Tabs/Tabs.styles.d.ts +5 -5
  561. package/components/Tabs/TabsContext.d.ts +14 -14
  562. package/components/Tabs/index.d.ts +2 -2
  563. package/components/Textarea/Textarea.d.ts +185 -185
  564. package/components/Textarea/Textarea.styles.d.ts +15 -15
  565. package/components/Textarea/TextareaCounter.d.ts +13 -13
  566. package/components/Textarea/TextareaHelpers.d.ts +11 -11
  567. package/components/Textarea/index.d.ts +1 -1
  568. package/components/Toast/Toast.d.ts +58 -58
  569. package/components/Toast/Toast.styles.d.ts +6 -6
  570. package/components/Toast/ToastStatic.d.ts +8 -8
  571. package/components/Toast/ToastView.d.ts +38 -38
  572. package/components/Toast/ToastView.styles.d.ts +8 -8
  573. package/components/Toast/index.d.ts +1 -1
  574. package/components/Toggle/Toggle.d.ts +107 -107
  575. package/components/Toggle/Toggle.styles.d.ts +30 -30
  576. package/components/Toggle/index.d.ts +1 -1
  577. package/components/Token/Token.d.ts +36 -36
  578. package/components/Token/Token.styles.d.ts +29 -29
  579. package/components/Token/index.d.ts +1 -1
  580. package/components/TokenInput/TextWidthHelper.d.ts +18 -18
  581. package/components/TokenInput/TokenInput.d.ts +194 -194
  582. package/components/TokenInput/TokenInput.styles.d.ts +15 -15
  583. package/components/TokenInput/TokenInputMenu.d.ts +18 -18
  584. package/components/TokenInput/TokenInputReducer.d.ts +25 -25
  585. package/components/TokenInput/index.d.ts +1 -1
  586. package/components/TokenInput/locale/index.d.ts +4 -4
  587. package/components/TokenInput/locale/locales/en.d.ts +2 -2
  588. package/components/TokenInput/locale/locales/ru.d.ts +2 -2
  589. package/components/TokenInput/locale/types.d.ts +4 -4
  590. package/components/Tooltip/Tooltip/Tooltip.js +11 -8
  591. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  592. package/components/Tooltip/Tooltip.d.ts +162 -160
  593. package/components/Tooltip/Tooltip.styles.d.ts +5 -5
  594. package/components/Tooltip/index.d.ts +1 -1
  595. package/components/TooltipMenu/TooltipMenu.d.ts +65 -65
  596. package/components/TooltipMenu/index.d.ts +1 -1
  597. package/index.d.ts +49 -49
  598. package/internal/BGRuler.d.ts +30 -30
  599. package/internal/Calendar/Calendar.d.ts +66 -66
  600. package/internal/Calendar/Calendar.styles.d.ts +5 -5
  601. package/internal/Calendar/CalendarDateShape.d.ts +14 -14
  602. package/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  603. package/internal/Calendar/CalendarUtils.d.ts +19 -19
  604. package/internal/Calendar/DayCellView.d.ts +13 -13
  605. package/internal/Calendar/DayCellView.styles.d.ts +7 -7
  606. package/internal/Calendar/DayCellViewModel.d.ts +8 -8
  607. package/internal/Calendar/Month.d.ts +33 -33
  608. package/internal/Calendar/MonthView.d.ts +21 -21
  609. package/internal/Calendar/MonthView.styles.d.ts +9 -9
  610. package/internal/Calendar/MonthViewModel.d.ts +14 -14
  611. package/internal/Calendar/config.d.ts +9 -9
  612. package/internal/Calendar/index.d.ts +2 -2
  613. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +19 -4
  614. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  615. package/internal/CommonWrapper/CommonWrapper.d.ts +32 -31
  616. package/internal/CommonWrapper/index.d.ts +1 -1
  617. package/internal/ComponentCombinator.d.ts +25 -25
  618. package/internal/ComponentTable.d.ts +21 -21
  619. package/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  620. package/internal/CustomComboBox/ComboBoxView.d.ts +90 -90
  621. package/internal/CustomComboBox/CustomComboBox.d.ts +136 -136
  622. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  623. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  624. package/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  625. package/internal/CustomComboBox/index.d.ts +2 -2
  626. package/internal/CustomComboBox/locale/index.d.ts +4 -4
  627. package/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  628. package/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  629. package/internal/CustomComboBox/locale/types.d.ts +5 -5
  630. package/internal/DateSelect/DateSelect.d.ts +93 -93
  631. package/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  632. package/internal/DateSelect/index.d.ts +1 -1
  633. package/internal/DropdownContainer/DropdownContainer.d.ts +44 -44
  634. package/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -3
  635. package/internal/DropdownContainer/index.d.ts +1 -1
  636. package/internal/FocusTrap/FocusTrap.d.ts +17 -17
  637. package/internal/FocusTrap/index.d.ts +1 -1
  638. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  639. package/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  640. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  641. package/internal/IgnoreLayerClick/index.d.ts +1 -1
  642. package/internal/InputLikeText/HiddenInput.d.ts +13 -13
  643. package/internal/InputLikeText/InputLikeText.d.ts +73 -73
  644. package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  645. package/internal/InputLikeText/index.d.ts +1 -1
  646. package/internal/InternalMenu/InternalMenu.d.ts +63 -63
  647. package/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  648. package/internal/InternalMenu/index.d.ts +1 -1
  649. package/internal/InternalMenu/isActiveElement.d.ts +3 -3
  650. package/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  651. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  652. package/internal/MaskCharLowLine/index.d.ts +1 -1
  653. package/internal/MaskedInput/MaskedInput.d.ts +40 -40
  654. package/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  655. package/internal/MaskedInput/index.d.ts +1 -1
  656. package/internal/Menu/Menu.d.ts +65 -65
  657. package/internal/Menu/Menu.styles.d.ts +9 -9
  658. package/internal/Menu/index.d.ts +1 -1
  659. package/internal/Menu/isActiveElement.d.ts +3 -3
  660. package/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  661. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  662. package/internal/NativeDateInput/index.d.ts +1 -1
  663. package/internal/NativeDateInput/utils.d.ts +7 -7
  664. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  665. package/internal/Popup/Popup/Popup.js +17 -18
  666. package/internal/Popup/Popup/Popup.js.map +1 -1
  667. package/internal/Popup/Popup.d.ts +161 -162
  668. package/internal/Popup/Popup.styles.d.ts +16 -16
  669. package/internal/Popup/PopupHelper.d.ts +26 -26
  670. package/internal/Popup/PopupPin.d.ts +56 -56
  671. package/internal/Popup/PopupPin.styles.d.ts +3 -3
  672. package/internal/Popup/index.d.ts +1 -1
  673. package/internal/Popup/types.d.ts +1 -1
  674. package/internal/PopupMenu/PopupMenu.d.ts +85 -85
  675. package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  676. package/internal/PopupMenu/index.d.ts +1 -1
  677. package/internal/PopupMenu/validatePositions.d.ts +2 -2
  678. package/internal/RenderContainer/RenderContainer/RenderContainer.js +9 -0
  679. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  680. package/internal/RenderContainer/RenderContainer.d.ts +16 -16
  681. package/internal/RenderContainer/RenderContainerTypes.d.ts +12 -11
  682. package/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
  683. package/internal/RenderContainer/index.d.ts +1 -1
  684. package/internal/RenderLayer/RenderLayer.d.ts +29 -29
  685. package/internal/RenderLayer/index.d.ts +1 -1
  686. package/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  687. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  688. package/internal/ResizeDetector/index.d.ts +1 -1
  689. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  690. package/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  691. package/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  692. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  693. package/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  694. package/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  695. package/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  696. package/internal/ThemePlayground/Playground.d.ts +31 -31
  697. package/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  698. package/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  699. package/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  700. package/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  701. package/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  702. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  703. package/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  704. package/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  705. package/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  706. package/internal/ThemePlayground/VariableValue.d.ts +45 -45
  707. package/internal/ThemePlayground/constants.d.ts +18 -18
  708. package/internal/ThemePlayground/darkTheme.d.ts +255 -255
  709. package/internal/ThemePlayground/helpers.d.ts +2 -2
  710. package/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  711. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  712. package/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  713. package/internal/ZIndex/ZIndex.d.ts +36 -36
  714. package/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  715. package/internal/ZIndex/index.d.ts +1 -1
  716. package/internal/icons/16px/icon.styles.d.ts +4 -4
  717. package/internal/icons/16px/index.d.ts +22 -22
  718. package/internal/icons/20px/Icon.d.ts +30 -30
  719. package/internal/icons/20px/icon.styles.d.ts +4 -4
  720. package/internal/icons/20px/index.d.ts +2 -2
  721. package/internal/icons/20px/svg.d.ts +14 -14
  722. package/internal/icons/CloudIcon.d.ts +1 -1
  723. package/internal/icons/CrossIcon.d.ts +1 -1
  724. package/internal/icons/SpinnerIcon.d.ts +26 -26
  725. package/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  726. package/internal/themes/DefaultTheme.d.ts +766 -766
  727. package/internal/themes/FlatTheme.d.ts +132 -132
  728. package/internal/themes/Theme8px.d.ts +271 -271
  729. package/lib/ConditionalHandler.d.ts +11 -11
  730. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js +3 -0
  731. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -0
  732. package/lib/InstanceWithAnchorElement/package.json +6 -0
  733. package/lib/InstanceWithAnchorElement.d.ts +5 -0
  734. package/lib/LayoutEvents.d.ts +4 -4
  735. package/lib/ModalStack.d.ts +14 -14
  736. package/lib/SSRSafe.d.ts +4 -4
  737. package/lib/Supports.d.ts +1 -1
  738. package/lib/Upgrades.d.ts +6 -6
  739. package/lib/animation/index.d.ts +6 -6
  740. package/lib/animation/presets.d.ts +18 -18
  741. package/lib/animation/stepper.d.ts +1 -1
  742. package/lib/callChildRef/callChildRef.d.ts +3 -3
  743. package/lib/client.d.ts +16 -16
  744. package/lib/createPropsGetter.d.ts +2 -2
  745. package/lib/currentEnvironment.d.ts +3 -3
  746. package/lib/date/InternalDate.d.ts +58 -58
  747. package/lib/date/InternalDateCalculator.d.ts +6 -6
  748. package/lib/date/InternalDateGetter.d.ts +15 -15
  749. package/lib/date/InternalDateSetter.d.ts +6 -6
  750. package/lib/date/InternalDateTransformer.d.ts +12 -12
  751. package/lib/date/InternalDateValidator.d.ts +12 -12
  752. package/lib/date/constants.d.ts +28 -28
  753. package/lib/date/localeSets.d.ts +5 -5
  754. package/lib/date/types.d.ts +90 -90
  755. package/lib/dom/getScrollWidth.d.ts +1 -1
  756. package/lib/dom/tabbableHelpers.d.ts +16 -16
  757. package/lib/events/MouseDrag.d.ts +58 -58
  758. package/lib/events/fixClickFocusIE.d.ts +1 -1
  759. package/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  760. package/lib/events/keyListener.d.ts +7 -7
  761. package/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  762. package/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  763. package/lib/events/keyboard/extractCode.d.ts +3 -3
  764. package/lib/events/keyboard/identifiers.d.ts +48 -48
  765. package/lib/events/stopPropagation.d.ts +1 -1
  766. package/lib/events/tabListener.d.ts +1 -1
  767. package/lib/extractKeyboardAction.d.ts +13 -13
  768. package/lib/filterProps.d.ts +12 -12
  769. package/lib/forwardRefAndName.d.ts +5 -5
  770. package/lib/getDisplayName.d.ts +3 -3
  771. package/lib/listenFocusOutside.d.ts +8 -8
  772. package/lib/locale/LocaleContext.d.ts +7 -7
  773. package/lib/locale/LocaleHelper.d.ts +9 -9
  774. package/lib/locale/constants.d.ts +2 -2
  775. package/lib/locale/decorators.d.ts +36 -36
  776. package/lib/locale/index.d.ts +3 -3
  777. package/lib/locale/types.d.ts +19 -19
  778. package/lib/memo.d.ts +1 -1
  779. package/lib/net/fetch.d.ts +13 -13
  780. package/lib/polyfillPlaceholder.d.ts +1 -1
  781. package/lib/reactGetTextContent.d.ts +2 -2
  782. package/lib/rootNode/getRootNode/getRootNode.js +3 -4
  783. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  784. package/lib/rootNode/getRootNode.d.ts +3 -3
  785. package/lib/rootNode/index.d.ts +2 -2
  786. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +24 -3
  787. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  788. package/lib/rootNode/rootNodeDecorator.d.ts +47 -33
  789. package/lib/styles/ColorFactory.d.ts +11 -11
  790. package/lib/styles/ColorFunctions.d.ts +11 -11
  791. package/lib/styles/ColorHelpers.d.ts +20 -20
  792. package/lib/styles/ColorKeywords.d.ts +150 -150
  793. package/lib/styles/ColorObject.d.ts +52 -52
  794. package/lib/styles/DimensionFunctions.d.ts +1 -1
  795. package/lib/styles/HoldSelectionColor.d.ts +1 -1
  796. package/lib/styles/Mixins.d.ts +2 -2
  797. package/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  798. package/lib/theming/AnimationKeyframes.d.ts +9 -9
  799. package/lib/theming/Emotion.d.ts +15 -15
  800. package/lib/theming/Theme.d.ts +3 -3
  801. package/lib/theming/ThemeContext.d.ts +2 -2
  802. package/lib/theming/ThemeFactory.d.ts +8 -8
  803. package/lib/theming/ThemeHelpers.d.ts +11 -11
  804. package/lib/theming/themes/DefaultTheme.d.ts +1 -1
  805. package/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  806. package/lib/theming/themes/FlatTheme.d.ts +1 -1
  807. package/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  808. package/lib/theming/useTheme.d.ts +1 -1
  809. package/lib/utils.d.ts +63 -63
  810. package/lib/withClassWrapper.d.ts +71 -71
  811. package/package.json +2 -5
@@ -1,160 +1,162 @@
1
- import React from 'react';
2
- import { PopupPositionsType } from '../../internal/Popup';
3
- import { Nullable } from '../../typings/utility-types';
4
- import { CommonProps } from '../../internal/CommonWrapper';
5
- export declare type TooltipTrigger =
6
- /** Наведение на children и на тултип */
7
- 'hover'
8
- /** Клик на children */
9
- | 'click'
10
- /** Фокус на children */
11
- | 'focus'
12
- /** Наведение на children и на тултип и фокус на children */
13
- | 'hover&focus'
14
- /** Просто открыт */
15
- | 'opened'
16
- /** Просто закрыт */
17
- | 'closed'
18
- /** Наведение ТОЛЬКО на children, а не на тултип */
19
- | 'hoverAnchor'
20
- /** Управление через публичные функции show и hide */
21
- | 'manual';
22
- export interface TooltipProps extends CommonProps {
23
- /**
24
- * Относительно какого элемента позиционировать тултип
25
- */
26
- anchorElement?: HTMLElement;
27
- /**
28
- * Если не указан `anchorElement` то тултип будет позиционироваться
29
- * относительно дочерних элементов
30
- */
31
- children?: React.ReactNode;
32
- className?: string;
33
- /**
34
- * Показывать крестик для закрытия тултипа. По-умолчанию крестик
35
- * показывается если проп *trigger* не `hover` и не `focus`.
36
- */
37
- closeButton?: boolean;
38
- /**
39
- * Функция, которая возвращает содержимое тултипа.
40
- *
41
- * Если эта функция вернула `null`, то тултип не показывается.
42
- */
43
- render?: Nullable<() => React.ReactNode>;
44
- /**
45
- * Значение по умолчанию: `"top left"`.
46
- */
47
- pos: PopupPositionsType;
48
- /**
49
- * Триггер открытия тултипа
50
- * ```ts
51
- * type TooltipTrigger =
52
- * | 'hover'
53
- * | 'click'
54
- * | 'focus'
55
- * | 'hover&focus'
56
- * | 'opened'
57
- * | 'closed'
58
- * | 'hoverAnchor'
59
- * | 'manual';
60
- * ```
61
- */
62
- trigger: TooltipTrigger;
63
- /**
64
- * Хэндлер, вызываемый при клике по крестику
65
- */
66
- onCloseClick?: React.MouseEventHandler<HTMLElement>;
67
- /**
68
- * Хэндлер, вызываемый при клике по крестику или
69
- * снаружи тултипа
70
- */
71
- onCloseRequest?: () => void;
72
- /**
73
- * Хэндлер, вызываемый при закрытии тултипа
74
- */
75
- onClose?: () => void;
76
- /**
77
- * Хэндлер, вызываемый при открытии тултипа
78
- */
79
- onOpen?: () => void;
80
- /**
81
- * Список позиций, которые тултип будет занимать.
82
- * Если положение тултипа в определенной позиции
83
- * будет выходить за край экрана, то будет выбрана
84
- * следующая позиция. Обязательно должен включать
85
- * позицию указанную в `pos`
86
- */
87
- allowedPositions: PopupPositionsType[];
88
- /**
89
- * Флаг отключения анимации.
90
- * @default false
91
- */
92
- disableAnimations: boolean;
93
- /**
94
- * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.
95
- *
96
- * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.
97
- */
98
- useWrapper: boolean;
99
- }
100
- export interface TooltipState {
101
- opened: boolean;
102
- focused: boolean;
103
- }
104
- export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipState> {
105
- static __KONTUR_REACT_UI__: string;
106
- static propTypes: {
107
- children(props: TooltipProps, propName: keyof TooltipProps, componentName: string): void;
108
- };
109
- static defaultProps: {
110
- pos: "top left";
111
- trigger: string;
112
- allowedPositions: ("top left" | "top center" | "top right" | "right top" | "right middle" | "right bottom" | "bottom right" | "bottom center" | "bottom left" | "left bottom" | "left middle" | "left top")[];
113
- disableAnimations: boolean;
114
- useWrapper: boolean;
115
- closeOnChildrenMouseLeave: boolean;
116
- };
117
- static delay: number;
118
- private static triggersWithoutCloseButton;
119
- state: TooltipState;
120
- private theme;
121
- private hoverTimeout;
122
- private contentElement;
123
- private positions;
124
- private clickedOutside;
125
- private setRootNode;
126
- componentDidUpdate(prevProps: TooltipProps): void;
127
- componentWillUnmount(): void;
128
- render(): JSX.Element;
129
- renderContent: () => JSX.Element | null;
130
- renderCloseButton(): JSX.Element | null;
131
- /**
132
- * Программно открывает тултип.
133
- * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
134
- * @public
135
- */
136
- show(): void;
137
- /**
138
- * Программно закрывает тултип.
139
- * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
140
- * @public
141
- */
142
- hide(): void;
143
- private renderMain;
144
- private getRenderLayerAnchorElement;
145
- private renderPopup;
146
- private refContent;
147
- private getPositions;
148
- private getProps;
149
- private open;
150
- private close;
151
- private clearHoverTimeout;
152
- private handleMouseEnter;
153
- private handleMouseLeave;
154
- private handleClick;
155
- private handleClickOutsideAnchor;
156
- private isClickOutsideContent;
157
- private handleFocus;
158
- private handleBlur;
159
- private handleCloseButtonClick;
160
- }
1
+ import React from 'react';
2
+ import { PopupPositionsType } from '../../internal/Popup';
3
+ import { Nullable } from '../../typings/utility-types';
4
+ import { CommonProps } from '../../internal/CommonWrapper';
5
+ import { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';
6
+ export declare type TooltipTrigger =
7
+ /** Наведение на children и на тултип */
8
+ 'hover'
9
+ /** Клик на children */
10
+ | 'click'
11
+ /** Фокус на children */
12
+ | 'focus'
13
+ /** Наведение на children и на тултип и фокус на children */
14
+ | 'hover&focus'
15
+ /** Просто открыт */
16
+ | 'opened'
17
+ /** Просто закрыт */
18
+ | 'closed'
19
+ /** Наведение ТОЛЬКО на children, а не на тултип */
20
+ | 'hoverAnchor'
21
+ /** Управление через публичные функции show и hide */
22
+ | 'manual';
23
+ export interface TooltipProps extends CommonProps {
24
+ /**
25
+ * Относительно какого элемента позиционировать тултип
26
+ */
27
+ anchorElement?: HTMLElement;
28
+ /**
29
+ * Если не указан `anchorElement` то тултип будет позиционироваться
30
+ * относительно дочерних элементов
31
+ */
32
+ children?: React.ReactNode;
33
+ className?: string;
34
+ /**
35
+ * Показывать крестик для закрытия тултипа. По-умолчанию крестик
36
+ * показывается если проп *trigger* не `hover` и не `focus`.
37
+ */
38
+ closeButton?: boolean;
39
+ /**
40
+ * Функция, которая возвращает содержимое тултипа.
41
+ *
42
+ * Если эта функция вернула `null`, то тултип не показывается.
43
+ */
44
+ render?: Nullable<() => React.ReactNode>;
45
+ /**
46
+ * Значение по умолчанию: `"top left"`.
47
+ */
48
+ pos: PopupPositionsType;
49
+ /**
50
+ * Триггер открытия тултипа
51
+ * ```ts
52
+ * type TooltipTrigger =
53
+ * | 'hover'
54
+ * | 'click'
55
+ * | 'focus'
56
+ * | 'hover&focus'
57
+ * | 'opened'
58
+ * | 'closed'
59
+ * | 'hoverAnchor'
60
+ * | 'manual';
61
+ * ```
62
+ */
63
+ trigger: TooltipTrigger;
64
+ /**
65
+ * Хэндлер, вызываемый при клике по крестику
66
+ */
67
+ onCloseClick?: React.MouseEventHandler<HTMLElement>;
68
+ /**
69
+ * Хэндлер, вызываемый при клике по крестику или
70
+ * снаружи тултипа
71
+ */
72
+ onCloseRequest?: () => void;
73
+ /**
74
+ * Хэндлер, вызываемый при закрытии тултипа
75
+ */
76
+ onClose?: () => void;
77
+ /**
78
+ * Хэндлер, вызываемый при открытии тултипа
79
+ */
80
+ onOpen?: () => void;
81
+ /**
82
+ * Список позиций, которые тултип будет занимать.
83
+ * Если положение тултипа в определенной позиции
84
+ * будет выходить за край экрана, то будет выбрана
85
+ * следующая позиция. Обязательно должен включать
86
+ * позицию указанную в `pos`
87
+ */
88
+ allowedPositions: PopupPositionsType[];
89
+ /**
90
+ * Флаг отключения анимации.
91
+ * @default false
92
+ */
93
+ disableAnimations: boolean;
94
+ /**
95
+ * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.
96
+ *
97
+ * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.
98
+ */
99
+ useWrapper: boolean;
100
+ }
101
+ export interface TooltipState {
102
+ opened: boolean;
103
+ focused: boolean;
104
+ }
105
+ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {
106
+ static __KONTUR_REACT_UI__: string;
107
+ static propTypes: {
108
+ children(props: TooltipProps, propName: keyof TooltipProps, componentName: string): void;
109
+ };
110
+ static defaultProps: {
111
+ pos: "top left";
112
+ trigger: string;
113
+ allowedPositions: ("top left" | "top center" | "top right" | "right top" | "right middle" | "right bottom" | "bottom right" | "bottom center" | "bottom left" | "left bottom" | "left middle" | "left top")[];
114
+ disableAnimations: boolean;
115
+ useWrapper: boolean;
116
+ closeOnChildrenMouseLeave: boolean;
117
+ };
118
+ static delay: number;
119
+ private static triggersWithoutCloseButton;
120
+ state: TooltipState;
121
+ private theme;
122
+ private hoverTimeout;
123
+ private contentElement;
124
+ private positions;
125
+ private clickedOutside;
126
+ private setRootNode;
127
+ private popupRef;
128
+ componentDidUpdate(prevProps: TooltipProps): void;
129
+ componentWillUnmount(): void;
130
+ render(): JSX.Element;
131
+ renderContent: () => JSX.Element | null;
132
+ renderCloseButton(): JSX.Element | null;
133
+ getAnchorElement: () => Nullable<HTMLElement>;
134
+ /**
135
+ * Программно открывает тултип.
136
+ * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
137
+ * @public
138
+ */
139
+ show(): void;
140
+ /**
141
+ * Программно закрывает тултип.
142
+ * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
143
+ * @public
144
+ */
145
+ hide(): void;
146
+ private renderMain;
147
+ private renderPopup;
148
+ private refContent;
149
+ private getPositions;
150
+ private getProps;
151
+ private open;
152
+ private close;
153
+ private clearHoverTimeout;
154
+ private handleMouseEnter;
155
+ private handleMouseLeave;
156
+ private handleClick;
157
+ private handleClickOutsideAnchor;
158
+ private isClickOutsideContent;
159
+ private handleFocus;
160
+ private handleBlur;
161
+ private handleCloseButtonClick;
162
+ }
@@ -1,4 +1,4 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.Tooltip = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.Tooltip = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _warning = _interopRequireDefault(require("warning"));
3
3
  var _lodash = _interopRequireDefault(require("lodash.isequal"));
4
4
 
@@ -15,6 +15,7 @@ var _currentEnvironment = require("../../lib/currentEnvironment");
15
15
  var _CommonWrapper = require("../../internal/CommonWrapper");
16
16
  var _rootNode = require("../../lib/rootNode");
17
17
 
18
+
18
19
  var _Tooltip = require("./Tooltip.styles");var _class, _class2, _temp;
19
20
 
20
21
 
@@ -185,6 +186,7 @@ Tooltip = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/funct
185
186
  clickedOutside = true;_this.
186
187
  setRootNode = void 0;_this.
187
188
 
189
+ popupRef = /*#__PURE__*/_react.default.createRef();_this.
188
190
 
189
191
 
190
192
 
@@ -262,6 +264,10 @@ Tooltip = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/funct
262
264
 
263
265
 
264
266
 
267
+ getAnchorElement = function () {var _this$popupRef$curren;
268
+ return (_this$popupRef$curren = _this.popupRef.current) == null ? void 0 : _this$popupRef$curren.anchorElement;
269
+ };_this.
270
+
265
271
 
266
272
 
267
273
 
@@ -303,9 +309,6 @@ Tooltip = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/funct
303
309
 
304
310
 
305
311
 
306
- getRenderLayerAnchorElement = function () {
307
- return (0, _rootNode.getRootNode)((0, _assertThisInitialized2.default)(_this));
308
- };_this.
309
312
 
310
313
 
311
314
 
@@ -530,12 +533,12 @@ Tooltip = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/funct
530
533
  }
531
534
 
532
535
  _this.close();
533
- };return _this;}var _proto = Tooltip.prototype;_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (this.props.trigger === 'closed' && this.state.opened) {this.close();}var _this$props = this.props,allowedPositions = _this$props.allowedPositions,pos = _this$props.pos;var posChanged = prevProps.pos !== pos;var allowedChanged = !(0, _lodash.default)(prevProps.allowedPositions, allowedPositions);if (posChanged || allowedChanged) {this.positions = null;}};_proto.componentWillUnmount = function componentWillUnmount() {this.clearHoverTimeout();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ popupPinOffset: theme.tooltipPinOffset, popupMargin: theme.tooltipMargin, popupBorder: theme.tooltipBorder, popupBorderRadius: theme.tooltipBorderRadius, popupPinSize: theme.tooltipPinSize, popupPinOffsetX: theme.tooltipPinOffsetX, popupPinOffsetY: theme.tooltipPinOffsetY }, theme) }, _this2.renderMain());});};_proto.renderCloseButton = function renderCloseButton() {var hasCross = this.props.closeButton === undefined ? !Tooltip.triggersWithoutCloseButton.includes(this.props.trigger) : this.props.closeButton;if (!hasCross) {return null;}return /*#__PURE__*/_react.default.createElement("div", { className: _Tooltip.styles.cross(this.theme), onClick: this.handleCloseButtonClick }, /*#__PURE__*/_react.default.createElement(_CrossIcon.CrossIcon, null));} /**
536
+ };return _this;}var _proto = Tooltip.prototype;_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (this.props.trigger === 'closed' && this.state.opened) {this.close();}var _this$props = this.props,allowedPositions = _this$props.allowedPositions,pos = _this$props.pos;var posChanged = prevProps.pos !== pos;var allowedChanged = !(0, _lodash.default)(prevProps.allowedPositions, allowedPositions);if (posChanged || allowedChanged) {this.positions = null;}};_proto.componentWillUnmount = function componentWillUnmount() {this.clearHoverTimeout();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ popupPinOffset: theme.tooltipPinOffset, popupMargin: theme.tooltipMargin, popupBorder: theme.tooltipBorder, popupBorderRadius: theme.tooltipBorderRadius, popupPinSize: theme.tooltipPinSize, popupPinOffsetX: theme.tooltipPinOffsetX, popupPinOffsetY: theme.tooltipPinOffsetY }, theme) }, _this2.renderMain());});};_proto.renderCloseButton = function renderCloseButton() {var hasCross = this.props.closeButton === undefined ? !Tooltip.triggersWithoutCloseButton.includes(this.props.trigger) : this.props.closeButton;if (!hasCross) {return null;}return /*#__PURE__*/_react.default.createElement("div", { className: _Tooltip.styles.cross(this.theme), onClick: this.handleCloseButtonClick }, /*#__PURE__*/_react.default.createElement(_CrossIcon.CrossIcon, null));}; /**
534
537
  * Программно открывает тултип.
535
538
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
536
539
  * @public
537
- */;_proto.show = function show() {if (this.state.opened) return;if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {(0, _warning.default)(true, "Function 'show' is not supported with trigger specified '" + this.props.trigger + "'");return;}this.open();} /**
540
+ */_proto.show = function show() {if (this.state.opened) return;if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {(0, _warning.default)(true, "Function 'show' is not supported with trigger specified '" + this.props.trigger + "'");return;}this.open();} /**
538
541
  * Программно закрывает тултип.
539
542
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
540
543
  * @public
541
- */;_proto.hide = function hide() {if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {(0, _warning.default)(true, "Function 'hide' is not supported with trigger specified '" + this.props.trigger + "'");return;}this.close();};_proto.renderMain = function renderMain() {var props = this.props;var content = this.renderContent();var _this$getProps = this.getProps(),popupProps = _this$getProps.popupProps,_this$getProps$layerP = _this$getProps.layerProps,layerProps = _this$getProps$layerP === void 0 ? { active: false } : _this$getProps$layerP;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.getRenderLayerAnchorElement }), popup);};_proto.renderPopup = function renderPopup(anchorElement, popupProps, content) {return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_Popup.Popup, (0, _extends2.default)({ anchorElement: anchorElement, hasPin: true, hasShadow: true, maxWidth: "none", opened: this.state.opened, disableAnimations: this.props.disableAnimations, positions: this.getPositions(), ignoreHover: this.props.trigger === 'hoverAnchor', onOpen: this.props.onOpen, onClose: this.props.onClose, tryPreserveFirstRenderedPosition: true }, popupProps), content));};_proto.getPositions = function getPositions() {if (!this.positions) {var allowedPositions = this.props.allowedPositions;var index = allowedPositions.indexOf(this.props.pos);if (index === -1) {throw new Error('Unexpected position passed to Tooltip. Expected one of: ' + allowedPositions.join(', '));}this.positions = [].concat(allowedPositions.slice(index), allowedPositions.slice(0, index));}return this.positions;};_proto.getProps = function getProps() {var props = this.props;var useWrapper = !!props.children && props.useWrapper;switch (props.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: ' + props.trigger);}};_proto.clearHoverTimeout = function clearHoverTimeout() {if (this.hoverTimeout) {clearTimeout(this.hoverTimeout);this.hoverTimeout = null;}};_proto.isClickOutsideContent = function isClickOutsideContent(event) {if (this.contentElement && event.target instanceof Element) {return !(0, _listenFocusOutside.containsTargetOrRenderContainer)(event.target)(this.contentElement);}return true;};return Tooltip;}(_react.default.PureComponent), _class2.__KONTUR_REACT_UI__ = 'Tooltip', _class2.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");} }, _class2.defaultProps = { pos: _Popup.DefaultPosition, trigger: 'hover', allowedPositions: Positions, disableAnimations: _currentEnvironment.isTestEnv, useWrapper: false, closeOnChildrenMouseLeave: false }, _class2.delay = 100, _class2.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _temp)) || _class;exports.Tooltip = Tooltip;
544
+ */;_proto.hide = function hide() {if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {(0, _warning.default)(true, "Function 'hide' is not supported with trigger specified '" + this.props.trigger + "'");return;}this.close();};_proto.renderMain = function renderMain() {var props = this.props;var content = this.renderContent();var _this$getProps = this.getProps(),popupProps = _this$getProps.popupProps,_this$getProps$layerP = _this$getProps.layerProps,layerProps = _this$getProps$layerP === void 0 ? { active: false } : _this$getProps$layerP;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) {return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_Popup.Popup, (0, _extends2.default)({ anchorElement: anchorElement, hasPin: true, hasShadow: true, maxWidth: "none", opened: this.state.opened, disableAnimations: this.props.disableAnimations, positions: this.getPositions(), ignoreHover: this.props.trigger === 'hoverAnchor', onOpen: this.props.onOpen, onClose: this.props.onClose, tryPreserveFirstRenderedPosition: true, ref: this.popupRef }, popupProps), content));};_proto.getPositions = function getPositions() {if (!this.positions) {var allowedPositions = this.props.allowedPositions;var index = allowedPositions.indexOf(this.props.pos);if (index === -1) {throw new Error('Unexpected position passed to Tooltip. Expected one of: ' + allowedPositions.join(', '));}this.positions = [].concat(allowedPositions.slice(index), allowedPositions.slice(0, index));}return this.positions;};_proto.getProps = function getProps() {var props = this.props;var useWrapper = !!props.children && props.useWrapper;switch (props.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: ' + props.trigger);}};_proto.clearHoverTimeout = function clearHoverTimeout() {if (this.hoverTimeout) {clearTimeout(this.hoverTimeout);this.hoverTimeout = null;}};_proto.isClickOutsideContent = function isClickOutsideContent(event) {if (this.contentElement && event.target instanceof Element) {return !(0, _listenFocusOutside.containsTargetOrRenderContainer)(event.target)(this.contentElement);}return true;};return Tooltip;}(_react.default.PureComponent), _class2.__KONTUR_REACT_UI__ = 'Tooltip', _class2.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");} }, _class2.defaultProps = { pos: _Popup.DefaultPosition, trigger: 'hover', allowedPositions: Positions, disableAnimations: _currentEnvironment.isTestEnv, useWrapper: false, closeOnChildrenMouseLeave: false }, _class2.delay = 100, _class2.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _temp)) || _class;exports.Tooltip = Tooltip;
@@ -1 +1 @@
1
- {"version":3,"sources":["Tooltip.tsx"],"names":["Positions","Tooltip","rootNode","state","opened","focused","theme","hoverTimeout","contentElement","positions","clickedOutside","setRootNode","renderContent","content","props","render","refContent","styles","tooltipContent","renderCloseButton","getRenderLayerAnchorElement","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","window","setTimeout","delay","handleMouseLeave","relatedTarget","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","componentDidUpdate","prevProps","allowedPositions","pos","posChanged","allowedChanged","componentWillUnmount","ThemeFactory","create","popupPinOffset","tooltipPinOffset","popupMargin","tooltipMargin","popupBorder","tooltipBorder","popupBorderRadius","tooltipBorderRadius","popupPinSize","tooltipPinSize","popupPinOffsetX","tooltipPinOffsetX","popupPinOffsetY","tooltipPinOffsetY","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","includes","cross","show","hide","getProps","popupProps","layerProps","active","anchorElement","children","popup","renderPopup","disableAnimations","getPositions","onOpen","onClose","index","indexOf","Error","join","slice","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","clearTimeout","Element","React","PureComponent","__KONTUR_REACT_UI__","propTypes","propName","componentName","Array","isArray","defaultProps","DefaultPosition","isTestEnv","closeOnChildrenMouseLeave"],"mappings":"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","sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport isEqual from 'lodash.isequal';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { DefaultPosition, Popup, PopupProps, PopupPositionsType } from '../../internal/Popup';\nimport { RenderLayer, RenderLayerProps } from '../../internal/RenderLayer';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { Nullable } from '../../typings/utility-types';\nimport { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\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 * Относительно какого элемента позиционировать тултип\n */\n anchorElement?: HTMLElement;\n\n /**\n * Если не указан `anchorElement` то тултип будет позиционироваться\n * относительно дочерних элементов\n */\n children?: React.ReactNode;\n\n className?: string;\n\n /**\n * Показывать крестик для закрытия тултипа. По-умолчанию крестик\n * показывается если проп *trigger* не `hover` и не `focus`.\n */\n closeButton?: boolean;\n\n /**\n * Функция, которая возвращает содержимое тултипа.\n *\n * Если эта функция вернула `null`, то тултип не показывается.\n */\n render?: Nullable<() => React.ReactNode>;\n\n /**\n * Значение по умолчанию: `\"top left\"`.\n */\n pos: PopupPositionsType;\n\n /**\n * Триггер открытия тултипа\n * ```ts\n * type TooltipTrigger =\n * | 'hover'\n * | 'click'\n * | 'focus'\n * | 'hover&focus'\n * | 'opened'\n * | 'closed'\n * | 'hoverAnchor'\n * | 'manual';\n * ```\n */\n trigger: TooltipTrigger;\n\n /**\n * Хэндлер, вызываемый при клике по крестику\n */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n\n /**\n * Хэндлер, вызываемый при клике по крестику или\n * снаружи тултипа\n */\n onCloseRequest?: () => void;\n\n /**\n * Хэндлер, вызываемый при закрытии тултипа\n */\n onClose?: () => void;\n\n /**\n * Хэндлер, вызываемый при открытии тултипа\n */\n onOpen?: () => void;\n\n /**\n * Список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции\n * будет выходить за край экрана, то будет выбрана\n * следующая позиция. Обязательно должен включать\n * позицию указанную в `pos`\n */\n allowedPositions: PopupPositionsType[];\n\n /**\n * Флаг отключения анимации.\n * @default false\n */\n disableAnimations: boolean;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper: boolean;\n}\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nconst Positions: 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\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> {\n public static __KONTUR_REACT_UI__ = '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 = {\n pos: DefaultPosition,\n trigger: 'hover',\n allowedPositions: Positions,\n disableAnimations: isTestEnv,\n useWrapper: false,\n closeOnChildrenMouseLeave: false,\n };\n\n public static delay = 100;\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 hoverTimeout: Nullable<number> = null;\n private contentElement: Nullable<HTMLElement> = null;\n private positions: Nullable<PopupPositionsType[]> = null;\n private clickedOutside = true;\n private setRootNode!: TSetRootNode;\n\n public componentDidUpdate(prevProps: TooltipProps) {\n if (this.props.trigger === 'closed' && this.state.opened) {\n this.close();\n }\n\n const { allowedPositions, pos } = this.props;\n const posChanged = prevProps.pos !== pos;\n const allowedChanged = !isEqual(prevProps.allowedPositions, allowedPositions);\n\n if (posChanged || allowedChanged) {\n this.positions = null;\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.tooltipPinOffset,\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 },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (content == null) {\n return null;\n }\n\n return (\n <div ref={this.refContent} className={styles.tooltipContent(this.theme)}>\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.props.trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n return (\n <div className={styles.cross(this.theme)} onClick={this.handleCloseButtonClick}>\n <CrossIcon />\n </div>\n );\n }\n\n /**\n * Программно открывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public show() {\n if (this.state.opened) return;\n if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${this.props.trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${this.props.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.getProps();\n const anchorElement = props.children || props.anchorElement;\n const popup = this.renderPopup(anchorElement, popupProps, content);\n\n return (\n <RenderLayer {...layerProps} getAnchorElement={this.getRenderLayerAnchorElement}>\n {popup}\n </RenderLayer>\n );\n }\n\n private getRenderLayerAnchorElement = () => {\n return getRootNode(this);\n };\n\n private renderPopup(\n anchorElement: React.ReactNode | HTMLElement,\n popupProps: Partial<PopupProps>,\n content: JSX.Element | null,\n ) {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={this.props.disableAnimations}\n positions={this.getPositions()}\n ignoreHover={this.props.trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPositions() {\n if (!this.positions) {\n const allowedPositions = this.props.allowedPositions;\n const index = allowedPositions.indexOf(this.props.pos);\n if (index === -1) {\n throw new Error('Unexpected position passed to Tooltip. Expected one of: ' + allowedPositions.join(', '));\n }\n\n this.positions = [...allowedPositions.slice(index), ...allowedPositions.slice(0, index)];\n }\n\n return this.positions;\n }\n\n private getProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && props.useWrapper;\n switch (props.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: ' + props.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 clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.props.trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n\n this.hoverTimeout = window.setTimeout(this.open, Tooltip.delay);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (\n (this.props.trigger === 'hover&focus' && this.state.focused) ||\n (this.props.trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (this.props.trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = window.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();\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && event.target instanceof 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 if (this.props.trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (this.props.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();\n }\n\n this.close();\n };\n}\n"]}
1
+ {"version":3,"sources":["Tooltip.tsx"],"names":["Positions","Tooltip","rootNode","state","opened","focused","theme","hoverTimeout","contentElement","positions","clickedOutside","setRootNode","popupRef","React","createRef","renderContent","content","props","render","refContent","styles","tooltipContent","renderCloseButton","getAnchorElement","current","anchorElement","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","window","setTimeout","delay","handleMouseLeave","relatedTarget","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","componentDidUpdate","prevProps","allowedPositions","pos","posChanged","allowedChanged","componentWillUnmount","ThemeFactory","create","popupPinOffset","tooltipPinOffset","popupMargin","tooltipMargin","popupBorder","tooltipBorder","popupBorderRadius","tooltipBorderRadius","popupPinSize","tooltipPinSize","popupPinOffsetX","tooltipPinOffsetX","popupPinOffsetY","tooltipPinOffsetY","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","includes","cross","show","hide","getProps","popupProps","layerProps","active","children","popup","renderPopup","disableAnimations","getPositions","onOpen","onClose","index","indexOf","Error","join","slice","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","clearTimeout","Element","PureComponent","__KONTUR_REACT_UI__","propTypes","propName","componentName","Array","isArray","defaultProps","DefaultPosition","isTestEnv","closeOnChildrenMouseLeave"],"mappings":"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","sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport isEqual from 'lodash.isequal';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { DefaultPosition, Popup, PopupProps, PopupPositionsType } from '../../internal/Popup';\nimport { RenderLayer, RenderLayerProps } from '../../internal/RenderLayer';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { Nullable } from '../../typings/utility-types';\nimport { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\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 * Относительно какого элемента позиционировать тултип\n */\n anchorElement?: HTMLElement;\n\n /**\n * Если не указан `anchorElement` то тултип будет позиционироваться\n * относительно дочерних элементов\n */\n children?: React.ReactNode;\n\n className?: string;\n\n /**\n * Показывать крестик для закрытия тултипа. По-умолчанию крестик\n * показывается если проп *trigger* не `hover` и не `focus`.\n */\n closeButton?: boolean;\n\n /**\n * Функция, которая возвращает содержимое тултипа.\n *\n * Если эта функция вернула `null`, то тултип не показывается.\n */\n render?: Nullable<() => React.ReactNode>;\n\n /**\n * Значение по умолчанию: `\"top left\"`.\n */\n pos: PopupPositionsType;\n\n /**\n * Триггер открытия тултипа\n * ```ts\n * type TooltipTrigger =\n * | 'hover'\n * | 'click'\n * | 'focus'\n * | 'hover&focus'\n * | 'opened'\n * | 'closed'\n * | 'hoverAnchor'\n * | 'manual';\n * ```\n */\n trigger: TooltipTrigger;\n\n /**\n * Хэндлер, вызываемый при клике по крестику\n */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n\n /**\n * Хэндлер, вызываемый при клике по крестику или\n * снаружи тултипа\n */\n onCloseRequest?: () => void;\n\n /**\n * Хэндлер, вызываемый при закрытии тултипа\n */\n onClose?: () => void;\n\n /**\n * Хэндлер, вызываемый при открытии тултипа\n */\n onOpen?: () => void;\n\n /**\n * Список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции\n * будет выходить за край экрана, то будет выбрана\n * следующая позиция. Обязательно должен включать\n * позицию указанную в `pos`\n */\n allowedPositions: PopupPositionsType[];\n\n /**\n * Флаг отключения анимации.\n * @default false\n */\n disableAnimations: boolean;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper: boolean;\n}\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nconst Positions: 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\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = '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 = {\n pos: DefaultPosition,\n trigger: 'hover',\n allowedPositions: Positions,\n disableAnimations: isTestEnv,\n useWrapper: false,\n closeOnChildrenMouseLeave: false,\n };\n\n public static delay = 100;\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 hoverTimeout: Nullable<number> = null;\n private contentElement: Nullable<HTMLElement> = null;\n private positions: Nullable<PopupPositionsType[]> = null;\n private clickedOutside = true;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n public componentDidUpdate(prevProps: TooltipProps) {\n if (this.props.trigger === 'closed' && this.state.opened) {\n this.close();\n }\n\n const { allowedPositions, pos } = this.props;\n const posChanged = prevProps.pos !== pos;\n const allowedChanged = !isEqual(prevProps.allowedPositions, allowedPositions);\n\n if (posChanged || allowedChanged) {\n this.positions = null;\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.tooltipPinOffset,\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 },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (content == null) {\n return null;\n }\n\n return (\n <div ref={this.refContent} className={styles.tooltipContent(this.theme)}>\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.props.trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n return (\n <div className={styles.cross(this.theme)} onClick={this.handleCloseButtonClick}>\n <CrossIcon />\n </div>\n );\n }\n\n public getAnchorElement = (): Nullable<HTMLElement> => {\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) return;\n if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${this.props.trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${this.props.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.getProps();\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 return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={this.props.disableAnimations}\n positions={this.getPositions()}\n ignoreHover={this.props.trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPositions() {\n if (!this.positions) {\n const allowedPositions = this.props.allowedPositions;\n const index = allowedPositions.indexOf(this.props.pos);\n if (index === -1) {\n throw new Error('Unexpected position passed to Tooltip. Expected one of: ' + allowedPositions.join(', '));\n }\n\n this.positions = [...allowedPositions.slice(index), ...allowedPositions.slice(0, index)];\n }\n\n return this.positions;\n }\n\n private getProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && props.useWrapper;\n switch (props.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: ' + props.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 clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.props.trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n\n this.hoverTimeout = window.setTimeout(this.open, Tooltip.delay);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (\n (this.props.trigger === 'hover&focus' && this.state.focused) ||\n (this.props.trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (this.props.trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = window.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();\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && event.target instanceof 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 if (this.props.trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (this.props.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();\n }\n\n this.close();\n };\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Theme } from '../../lib/theming/Theme';
2
- export declare const styles: {
3
- cross(t: Theme): string;
4
- tooltipContent(t: Theme): string;
5
- };
1
+ import { Theme } from '../../lib/theming/Theme';
2
+ export declare const styles: {
3
+ cross(t: Theme): string;
4
+ tooltipContent(t: Theme): string;
5
+ };
@@ -1 +1 @@
1
- export * from './Tooltip';
1
+ export * from './Tooltip';