@skbkontur/react-ui 0.0.0-f50cd2db6e → 0.0.0-fed57d84fb

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 (1213) hide show
  1. package/CHANGELOG.md +243 -0
  2. package/README.md +1 -1
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +3 -1
  4. package/cjs/components/Autocomplete/Autocomplete.js +21 -15
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +7 -8
  7. package/cjs/components/Button/Button.js +9 -12
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +2 -1
  10. package/cjs/components/Button/Button.styles.js +43 -33
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Center/Center.d.ts +3 -0
  13. package/cjs/components/Center/Center.js +8 -3
  14. package/cjs/components/Center/Center.js.map +1 -1
  15. package/cjs/components/Checkbox/Checkbox.d.ts +10 -2
  16. package/cjs/components/Checkbox/Checkbox.js +37 -3
  17. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  18. package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -0
  19. package/cjs/components/Checkbox/Checkbox.styles.js +27 -24
  20. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  21. package/cjs/components/ComboBox/ComboBox.d.ts +3 -3
  22. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  23. package/cjs/components/CurrencyInput/CurrencyHelper.js +18 -12
  24. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  25. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +5 -2
  26. package/cjs/components/CurrencyInput/CurrencyInput.js +41 -15
  27. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  28. package/cjs/components/CurrencyInput/CurrencyInputHelper.js +7 -5
  29. package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
  30. package/cjs/components/CurrencyInput/CursorHelper.js +19 -16
  31. package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
  32. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +3 -0
  33. package/cjs/components/CurrencyLabel/CurrencyLabel.js +6 -2
  34. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  35. package/cjs/components/DateInput/DateInput.d.ts +2 -2
  36. package/cjs/components/DateInput/DateInput.js +5 -1
  37. package/cjs/components/DateInput/DateInput.js.map +1 -1
  38. package/cjs/components/DateInput/DateInput.styles.js +2 -2
  39. package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
  40. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +2 -2
  41. package/cjs/components/DateInput/helpers/InternalDateMediator.js +12 -2
  42. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  43. package/cjs/components/DateInput/helpers/inputNumber.d.ts +1 -1
  44. package/cjs/components/DateInput/helpers/inputNumber.js +45 -12
  45. package/cjs/components/DateInput/helpers/inputNumber.js.map +1 -1
  46. package/cjs/components/DatePicker/DatePicker.d.ts +8 -6
  47. package/cjs/components/DatePicker/DatePicker.js +28 -12
  48. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  49. package/cjs/components/DatePicker/Picker.js +7 -2
  50. package/cjs/components/DatePicker/Picker.js.map +1 -1
  51. package/cjs/components/Dropdown/Dropdown.d.ts +5 -2
  52. package/cjs/components/Dropdown/Dropdown.js +7 -2
  53. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  54. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +3 -6
  55. package/cjs/components/DropdownMenu/DropdownMenu.js +2 -16
  56. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  57. package/cjs/components/FileUploader/FileUploader.d.ts +47 -0
  58. package/cjs/components/FileUploader/FileUploader.js +292 -0
  59. package/cjs/components/FileUploader/FileUploader.js.map +1 -0
  60. package/cjs/components/FileUploader/FileUploader.md +67 -0
  61. package/cjs/components/FileUploader/FileUploader.styles.d.ts +22 -0
  62. package/cjs/components/FileUploader/FileUploader.styles.js +173 -0
  63. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -0
  64. package/cjs/components/FileUploader/index.d.ts +5 -0
  65. package/cjs/components/FileUploader/index.js +5 -0
  66. package/cjs/components/FileUploader/index.js.map +1 -0
  67. package/cjs/components/FileUploader/locale/index.d.ts +4 -0
  68. package/cjs/components/FileUploader/locale/index.js +11 -0
  69. package/cjs/components/FileUploader/locale/index.js.map +1 -0
  70. package/cjs/components/FileUploader/locale/locales/en.d.ts +2 -0
  71. package/cjs/components/FileUploader/locale/locales/en.js +7 -0
  72. package/cjs/components/FileUploader/locale/locales/en.js.map +1 -0
  73. package/cjs/components/FileUploader/locale/locales/ru.d.ts +2 -0
  74. package/cjs/components/FileUploader/locale/locales/ru.js +7 -0
  75. package/cjs/components/FileUploader/locale/locales/ru.js.map +1 -0
  76. package/cjs/components/FileUploader/locale/types.d.ts +6 -0
  77. package/cjs/components/FileUploader/locale/types.js +1 -0
  78. package/cjs/components/FileUploader/locale/types.js.map +1 -0
  79. package/cjs/components/FxInput/FxInput.d.ts +3 -0
  80. package/cjs/components/FxInput/FxInput.js +7 -3
  81. package/cjs/components/FxInput/FxInput.js.map +1 -1
  82. package/cjs/components/Gapped/Gapped.d.ts +4 -0
  83. package/cjs/components/Gapped/Gapped.js +13 -7
  84. package/cjs/components/Gapped/Gapped.js.map +1 -1
  85. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +113 -0
  86. package/cjs/components/GlobalLoader/GlobalLoader.js +271 -0
  87. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -0
  88. package/cjs/components/GlobalLoader/GlobalLoader.md +98 -0
  89. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +13 -0
  90. package/cjs/components/GlobalLoader/GlobalLoaderView.js +73 -0
  91. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -0
  92. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -0
  93. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +190 -0
  94. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -0
  95. package/cjs/components/GlobalLoader/index.d.ts +1 -0
  96. package/cjs/components/GlobalLoader/index.js +1 -0
  97. package/cjs/components/GlobalLoader/index.js.map +1 -0
  98. package/cjs/components/GlobalLoader/useParams.d.ts +22 -0
  99. package/cjs/components/GlobalLoader/useParams.js +45 -0
  100. package/cjs/components/GlobalLoader/useParams.js.map +1 -0
  101. package/cjs/components/Group/Group.d.ts +3 -0
  102. package/cjs/components/Group/Group.js +80 -33
  103. package/cjs/components/Group/Group.js.map +1 -1
  104. package/cjs/components/Hint/Hint.d.ts +8 -3
  105. package/cjs/components/Hint/Hint.js +9 -17
  106. package/cjs/components/Hint/Hint.js.map +1 -1
  107. package/cjs/components/Input/Input.d.ts +7 -8
  108. package/cjs/components/Input/Input.js +22 -25
  109. package/cjs/components/Input/Input.js.map +1 -1
  110. package/cjs/components/Kebab/Kebab.d.ts +4 -15
  111. package/cjs/components/Kebab/Kebab.js +5 -29
  112. package/cjs/components/Kebab/Kebab.js.map +1 -1
  113. package/cjs/components/Link/Link.d.ts +4 -1
  114. package/cjs/components/Link/Link.js +9 -5
  115. package/cjs/components/Link/Link.js.map +1 -1
  116. package/cjs/components/Link/Link.styles.d.ts +1 -1
  117. package/cjs/components/Link/Link.styles.js +3 -3
  118. package/cjs/components/Link/Link.styles.js.map +1 -1
  119. package/cjs/components/Loader/Loader.d.ts +4 -0
  120. package/cjs/components/Loader/Loader.js +15 -10
  121. package/cjs/components/Loader/Loader.js.map +1 -1
  122. package/cjs/components/MenuHeader/MenuHeader.d.ts +3 -0
  123. package/cjs/components/MenuHeader/MenuHeader.js +7 -2
  124. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  125. package/cjs/components/MenuItem/MenuItem.d.ts +6 -2
  126. package/cjs/components/MenuItem/MenuItem.js +12 -9
  127. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  128. package/cjs/components/MenuItem/MenuItem.styles.js +3 -2
  129. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  130. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +3 -0
  131. package/cjs/components/MenuSeparator/MenuSeparator.js +7 -3
  132. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  133. package/cjs/components/Modal/Modal.d.ts +6 -1
  134. package/cjs/components/Modal/Modal.js +13 -6
  135. package/cjs/components/Modal/Modal.js.map +1 -1
  136. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  137. package/cjs/components/Modal/Modal.styles.js +26 -14
  138. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  139. package/cjs/components/Modal/ModalClose.js +3 -2
  140. package/cjs/components/Modal/ModalClose.js.map +1 -1
  141. package/cjs/components/Modal/ModalFooter.d.ts +3 -0
  142. package/cjs/components/Modal/ModalFooter.js +10 -4
  143. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  144. package/cjs/components/Modal/ModalHeader.d.ts +3 -0
  145. package/cjs/components/Modal/ModalHeader.js +10 -4
  146. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  147. package/cjs/components/Paging/Paging.d.ts +20 -3
  148. package/cjs/components/Paging/Paging.js +29 -10
  149. package/cjs/components/Paging/Paging.js.map +1 -1
  150. package/cjs/components/Paging/PagingDefaultComponent.d.ts +9 -0
  151. package/cjs/components/Paging/PagingDefaultComponent.js +21 -0
  152. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -0
  153. package/cjs/components/PasswordInput/PasswordInput.d.ts +7 -0
  154. package/cjs/components/PasswordInput/PasswordInput.js +36 -11
  155. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  156. package/cjs/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
  157. package/cjs/components/PasswordInput/PasswordInputIcon.js +15 -0
  158. package/cjs/components/PasswordInput/PasswordInputIcon.js.map +1 -0
  159. package/cjs/components/Radio/Radio.d.ts +5 -2
  160. package/cjs/components/Radio/Radio.js +7 -3
  161. package/cjs/components/Radio/Radio.js.map +1 -1
  162. package/cjs/components/Radio/Radio.styles.js +4 -7
  163. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  164. package/cjs/components/RadioGroup/RadioGroup.d.ts +11 -2
  165. package/cjs/components/RadioGroup/RadioGroup.js +22 -5
  166. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  167. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +7 -2
  168. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  169. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +1 -1
  170. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +14 -7
  171. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  172. package/cjs/components/ResponsiveLayout/useResponsiveLayout.js +1 -1
  173. package/cjs/components/ResponsiveLayout/useResponsiveLayout.js.map +1 -1
  174. package/cjs/components/ScrollContainer/ScrollBar.js +4 -2
  175. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  176. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +4 -0
  177. package/cjs/components/ScrollContainer/ScrollContainer.js +19 -7
  178. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  179. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -0
  180. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +12 -8
  181. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  182. package/cjs/components/Select/Select.d.ts +13 -8
  183. package/cjs/components/Select/Select.js +57 -18
  184. package/cjs/components/Select/Select.js.map +1 -1
  185. package/cjs/components/SidePage/SidePage.d.ts +8 -1
  186. package/cjs/components/SidePage/SidePage.js +25 -11
  187. package/cjs/components/SidePage/SidePage.js.map +1 -1
  188. package/cjs/components/SidePage/SidePage.styles.d.ts +1 -0
  189. package/cjs/components/SidePage/SidePage.styles.js +14 -6
  190. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  191. package/cjs/components/SidePage/SidePageBody.d.ts +3 -0
  192. package/cjs/components/SidePage/SidePageBody.js +10 -3
  193. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  194. package/cjs/components/SidePage/SidePageContainer.d.ts +3 -0
  195. package/cjs/components/SidePage/SidePageContainer.js +7 -2
  196. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  197. package/cjs/components/SidePage/SidePageContext.d.ts +2 -0
  198. package/cjs/components/SidePage/SidePageContext.js +3 -0
  199. package/cjs/components/SidePage/SidePageContext.js.map +1 -1
  200. package/cjs/components/SidePage/SidePageFooter.d.ts +3 -0
  201. package/cjs/components/SidePage/SidePageFooter.js +16 -6
  202. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  203. package/cjs/components/SidePage/SidePageHeader.d.ts +7 -0
  204. package/cjs/components/SidePage/SidePageHeader.js +44 -28
  205. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  206. package/cjs/components/Spinner/Spinner.d.ts +11 -1
  207. package/cjs/components/Spinner/Spinner.js +28 -9
  208. package/cjs/components/Spinner/Spinner.js.map +1 -1
  209. package/cjs/components/Spinner/Spinner.md +1 -0
  210. package/cjs/components/Spinner/Spinner.styles.d.ts +2 -1
  211. package/cjs/components/Spinner/Spinner.styles.js +14 -11
  212. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  213. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +16 -5
  214. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  215. package/cjs/components/Sticky/Sticky.d.ts +9 -1
  216. package/cjs/components/Sticky/Sticky.js +16 -6
  217. package/cjs/components/Sticky/Sticky.js.map +1 -1
  218. package/cjs/components/Switcher/Switcher.d.ts +5 -1
  219. package/cjs/components/Switcher/Switcher.js +8 -3
  220. package/cjs/components/Switcher/Switcher.js.map +1 -1
  221. package/cjs/components/Switcher/Switcher.styles.js +5 -3
  222. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  223. package/cjs/components/Tabs/Indicator.js +6 -3
  224. package/cjs/components/Tabs/Indicator.js.map +1 -1
  225. package/cjs/components/Tabs/Tab.d.ts +5 -2
  226. package/cjs/components/Tabs/Tab.js +7 -2
  227. package/cjs/components/Tabs/Tab.js.map +1 -1
  228. package/cjs/components/Tabs/Tabs.d.ts +7 -1
  229. package/cjs/components/Tabs/Tabs.js +20 -7
  230. package/cjs/components/Tabs/Tabs.js.map +1 -1
  231. package/cjs/components/Textarea/Textarea.d.ts +10 -6
  232. package/cjs/components/Textarea/Textarea.js +14 -9
  233. package/cjs/components/Textarea/Textarea.js.map +1 -1
  234. package/cjs/components/Textarea/TextareaCounter.d.ts +1 -2
  235. package/cjs/components/Textarea/TextareaCounter.js +25 -16
  236. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  237. package/cjs/components/Toast/Toast.d.ts +6 -0
  238. package/cjs/components/Toast/Toast.js +9 -2
  239. package/cjs/components/Toast/Toast.js.map +1 -1
  240. package/cjs/components/Toast/Toast.styles.js +2 -2
  241. package/cjs/components/Toast/Toast.styles.js.map +1 -1
  242. package/cjs/components/Toast/ToastStatic.js +1 -1
  243. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  244. package/cjs/components/Toast/ToastView.js +6 -5
  245. package/cjs/components/Toast/ToastView.js.map +1 -1
  246. package/cjs/components/Toast/ToastView.styles.d.ts +1 -1
  247. package/cjs/components/Toast/ToastView.styles.js +3 -2
  248. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  249. package/cjs/components/Toggle/Toggle.d.ts +6 -3
  250. package/cjs/components/Toggle/Toggle.js +7 -3
  251. package/cjs/components/Toggle/Toggle.js.map +1 -1
  252. package/cjs/components/Toggle/Toggle.styles.js +12 -10
  253. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  254. package/cjs/components/Token/Token.d.ts +5 -2
  255. package/cjs/components/Token/Token.js +20 -3
  256. package/cjs/components/Token/Token.js.map +1 -1
  257. package/cjs/components/Token/Token.styles.js +13 -6
  258. package/cjs/components/Token/Token.styles.js.map +1 -1
  259. package/cjs/components/TokenInput/TextWidthHelper.js +2 -1
  260. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  261. package/cjs/components/TokenInput/TokenInput.d.ts +16 -2
  262. package/cjs/components/TokenInput/TokenInput.js +37 -14
  263. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  264. package/cjs/components/TokenInput/TokenInput.styles.js +3 -2
  265. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  266. package/cjs/components/TokenInput/TokenInputMenu.js +4 -3
  267. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  268. package/cjs/components/Tooltip/Tooltip.d.ts +19 -24
  269. package/cjs/components/Tooltip/Tooltip.js +44 -37
  270. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  271. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +6 -3
  272. package/cjs/components/TooltipMenu/TooltipMenu.js +9 -2
  273. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  274. package/cjs/hooks/useDrop.d.ts +11 -0
  275. package/cjs/hooks/useDrop.js +77 -0
  276. package/cjs/hooks/useDrop.js.map +1 -0
  277. package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -0
  278. package/cjs/hooks/useEffectWithoutInitCall.js +13 -0
  279. package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -0
  280. package/cjs/hooks/useMemoObject.d.ts +1 -0
  281. package/cjs/hooks/useMemoObject.js +5 -0
  282. package/cjs/hooks/useMemoObject.js.map +1 -0
  283. package/cjs/index.d.ts +5 -0
  284. package/cjs/index.js +6 -1
  285. package/cjs/index.js.map +1 -1
  286. package/cjs/internal/BGRuler.js +3 -1
  287. package/cjs/internal/BGRuler.js.map +1 -1
  288. package/cjs/internal/Calendar/Calendar.d.ts +6 -0
  289. package/cjs/internal/Calendar/Calendar.js +12 -5
  290. package/cjs/internal/Calendar/Calendar.js.map +1 -1
  291. package/cjs/internal/Calendar/CalendarDateShape.d.ts +1 -1
  292. package/cjs/internal/Calendar/MonthView.js +5 -4
  293. package/cjs/internal/Calendar/MonthView.js.map +1 -1
  294. package/cjs/internal/Calendar/MonthViewModel.js +36 -17
  295. package/cjs/internal/Calendar/MonthViewModel.js.map +1 -1
  296. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  297. package/cjs/internal/CommonWrapper/CommonWrapper.js +22 -6
  298. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  299. package/cjs/internal/ComponentTable.d.ts +4 -2
  300. package/cjs/internal/ComponentTable.js +1 -0
  301. package/cjs/internal/ComponentTable.js.map +1 -1
  302. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -0
  303. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +28 -5
  304. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  305. package/cjs/internal/CustomComboBox/ComboBoxView.js +4 -2
  306. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  307. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +3 -0
  308. package/cjs/internal/CustomComboBox/CustomComboBox.js +9 -4
  309. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  310. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +16 -16
  311. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +35 -35
  312. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  313. package/cjs/internal/DataTids/DATATIDS.md +12 -0
  314. package/cjs/internal/DataTids/DataTids.d.ts +12 -0
  315. package/cjs/internal/DataTids/DataTids.js +46 -0
  316. package/cjs/internal/DataTids/DataTids.js.map +1 -0
  317. package/cjs/internal/DataTids/DataTids.styles.d.ts +7 -0
  318. package/cjs/internal/DataTids/DataTids.styles.js +41 -0
  319. package/cjs/internal/DataTids/DataTids.styles.js.map +1 -0
  320. package/cjs/internal/DataTids/componentsDataTids.d.ts +5 -0
  321. package/cjs/internal/DataTids/componentsDataTids.js +16 -0
  322. package/cjs/internal/DataTids/componentsDataTids.js.map +1 -0
  323. package/cjs/internal/DateSelect/DateSelect.d.ts +4 -0
  324. package/cjs/internal/DateSelect/DateSelect.js +30 -13
  325. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  326. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +2 -1
  327. package/cjs/internal/DropdownContainer/DropdownContainer.js +28 -18
  328. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  329. package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -0
  330. package/cjs/internal/DropdownContainer/DropdownContainer.styles.js +9 -0
  331. package/cjs/internal/DropdownContainer/DropdownContainer.styles.js.map +1 -0
  332. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
  333. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +16 -0
  334. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -0
  335. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
  336. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +108 -0
  337. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -0
  338. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +19 -0
  339. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +197 -0
  340. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -0
  341. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
  342. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +68 -0
  343. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -0
  344. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +13 -0
  345. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +34 -0
  346. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
  347. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -0
  348. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +22 -0
  349. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -0
  350. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
  351. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js +16 -0
  352. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js.map +1 -0
  353. package/cjs/internal/FileUploaderControl/fileUtils.d.ts +14 -0
  354. package/cjs/internal/FileUploaderControl/fileUtils.js +26 -0
  355. package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -0
  356. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
  357. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js +4 -0
  358. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js.map +1 -0
  359. package/cjs/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
  360. package/cjs/internal/FileUploaderControl/hooks/useUpload.js +51 -0
  361. package/cjs/internal/FileUploaderControl/hooks/useUpload.js.map +1 -0
  362. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
  363. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js +23 -0
  364. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -0
  365. package/cjs/internal/InputLikeText/InputLikeText.d.ts +5 -1
  366. package/cjs/internal/InputLikeText/InputLikeText.js +10 -4
  367. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  368. package/cjs/internal/InternalMenu/InternalMenu.d.ts +3 -0
  369. package/cjs/internal/InternalMenu/InternalMenu.js +13 -14
  370. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  371. package/cjs/internal/InternalMenu/InternalMenu.styles.js +2 -1
  372. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  373. package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -0
  374. package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.js +16 -0
  375. package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.js.map +1 -0
  376. package/cjs/internal/MaskedInput/MaskedInput.d.ts +3 -0
  377. package/cjs/internal/MaskedInput/MaskedInput.js +16 -5
  378. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  379. package/cjs/internal/Menu/Menu.d.ts +5 -0
  380. package/cjs/internal/Menu/Menu.js +54 -23
  381. package/cjs/internal/Menu/Menu.js.map +1 -1
  382. package/cjs/internal/Menu/Menu.styles.d.ts +3 -0
  383. package/cjs/internal/Menu/Menu.styles.js +27 -5
  384. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  385. package/cjs/internal/MobilePopup/MobilePopup.d.ts +4 -0
  386. package/cjs/internal/MobilePopup/MobilePopup.js +10 -3
  387. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  388. package/cjs/internal/Popup/Popup.d.ts +12 -6
  389. package/cjs/internal/Popup/Popup.js +38 -39
  390. package/cjs/internal/Popup/Popup.js.map +1 -1
  391. package/cjs/internal/Popup/PopupHelper.d.ts +2 -2
  392. package/cjs/internal/Popup/PopupHelper.js +4 -2
  393. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  394. package/cjs/internal/Popup/PopupPin.js +2 -1
  395. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  396. package/cjs/internal/Popup/types.d.ts +2 -0
  397. package/cjs/internal/Popup/types.js +1 -0
  398. package/cjs/internal/Popup/types.js.map +1 -0
  399. package/cjs/internal/PopupMenu/PopupMenu.d.ts +11 -3
  400. package/cjs/internal/PopupMenu/PopupMenu.js +39 -7
  401. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  402. package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
  403. package/cjs/internal/PopupMenu/validatePositions.js +8 -10
  404. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  405. package/cjs/internal/RenderContainer/RenderContainer.js +9 -0
  406. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  407. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +2 -0
  408. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
  409. package/cjs/internal/RenderContainer/RenderInnerContainer.js +9 -1
  410. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  411. package/cjs/internal/RenderLayer/RenderLayer.js +4 -1
  412. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  413. package/cjs/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
  414. package/cjs/internal/TextWidthHelper/TextWidthHelper.js +36 -0
  415. package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -0
  416. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
  417. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js +23 -0
  418. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -0
  419. package/cjs/internal/ThemePlayground/CheckboxPlayground.js +1 -0
  420. package/cjs/internal/ThemePlayground/CheckboxPlayground.js.map +1 -1
  421. package/cjs/internal/ThemePlayground/Playground.d.ts +1 -0
  422. package/cjs/internal/ThemePlayground/Playground.js +20 -21
  423. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  424. package/cjs/internal/ThemePlayground/RadioPlayground.js.map +1 -1
  425. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +4 -0
  426. package/cjs/internal/ThemePlayground/SizesGroup.js +20 -0
  427. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -0
  428. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -2
  429. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +11 -14
  430. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  431. package/cjs/internal/ThemePlayground/ThemeEditor.js +8 -1
  432. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  433. package/cjs/internal/ThemePlayground/VariableValue.js +18 -6
  434. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  435. package/cjs/internal/ThemePlayground/constants.d.ts +2 -1
  436. package/cjs/internal/ThemePlayground/constants.js +4 -2
  437. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  438. package/cjs/internal/ThemePlayground/darkTheme.d.ts +14 -0
  439. package/cjs/internal/ThemePlayground/darkTheme.js +14 -0
  440. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  441. package/cjs/internal/ThemeShowcase/ThemeShowcase.js +42 -42
  442. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  443. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +4 -2
  444. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js +37 -22
  445. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
  446. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  447. package/cjs/internal/ThemeShowcase/VariablesCollector.js +10 -6
  448. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  449. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +3 -1
  450. package/cjs/internal/ZIndex/ZIndexStorage.js +14 -6
  451. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  452. package/cjs/internal/icons/16px/index.d.ts +19 -16
  453. package/cjs/internal/icons/16px/index.js +86 -37
  454. package/cjs/internal/icons/16px/index.js.map +1 -1
  455. package/cjs/internal/icons/20px/svg.js +6 -0
  456. package/cjs/internal/icons/20px/svg.js.map +1 -1
  457. package/cjs/internal/icons/SpinnerIcon.d.ts +4 -1
  458. package/cjs/internal/icons/SpinnerIcon.js +7 -4
  459. package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
  460. package/cjs/internal/themes/DarkTheme.d.ts +34 -0
  461. package/cjs/internal/themes/DarkTheme.js +55 -3
  462. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  463. package/cjs/internal/themes/DefaultTheme.d.ts +62 -4
  464. package/cjs/internal/themes/DefaultTheme.js +119 -18
  465. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  466. package/cjs/internal/themes/NotFlat.d.ts +6 -0
  467. package/cjs/internal/themes/NotFlat.js +12 -2
  468. package/cjs/internal/themes/NotFlat.js.map +1 -1
  469. package/cjs/internal/themes/OldColors.d.ts +6 -0
  470. package/cjs/internal/themes/OldColors.js +35 -17
  471. package/cjs/internal/themes/OldColors.js.map +1 -1
  472. package/cjs/internal/themes/Theme2022.d.ts +66 -0
  473. package/cjs/internal/themes/Theme2022.js +100 -0
  474. package/cjs/internal/themes/Theme2022.js.map +1 -0
  475. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -0
  476. package/cjs/internal/themes/Theme2022Dark.js +9 -0
  477. package/cjs/internal/themes/Theme2022Dark.js.map +1 -0
  478. package/cjs/lib/ConditionalHandler.d.ts +3 -2
  479. package/cjs/lib/ConditionalHandler.js +5 -3
  480. package/cjs/lib/ConditionalHandler.js.map +1 -1
  481. package/cjs/lib/InstanceWithAnchorElement.d.ts +5 -0
  482. package/cjs/lib/InstanceWithAnchorElement.js +9 -0
  483. package/cjs/lib/InstanceWithAnchorElement.js.map +1 -0
  484. package/cjs/lib/ModalStack.d.ts +1 -1
  485. package/cjs/lib/ModalStack.js +16 -17
  486. package/cjs/lib/ModalStack.js.map +1 -1
  487. package/cjs/lib/SSRSafe.d.ts +1 -0
  488. package/cjs/lib/SSRSafe.js +9 -1
  489. package/cjs/lib/SSRSafe.js.map +1 -1
  490. package/cjs/lib/animation/index.d.ts +1 -1
  491. package/cjs/lib/animation/index.js +3 -3
  492. package/cjs/lib/animation/index.js.map +1 -1
  493. package/cjs/lib/date/InternalDate.js +23 -9
  494. package/cjs/lib/date/InternalDate.js.map +1 -1
  495. package/cjs/lib/date/InternalDateCalculator.js +16 -2
  496. package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
  497. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  498. package/cjs/lib/date/InternalDateGetter.js +27 -7
  499. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  500. package/cjs/lib/date/InternalDateTransformer.js +11 -2
  501. package/cjs/lib/date/InternalDateTransformer.js.map +1 -1
  502. package/cjs/lib/date/InternalDateValidator.js +52 -17
  503. package/cjs/lib/date/InternalDateValidator.js.map +1 -1
  504. package/cjs/lib/date/types.d.ts +4 -0
  505. package/cjs/lib/date/types.js.map +1 -1
  506. package/cjs/lib/dom/getDOMRect.d.ts +11 -0
  507. package/cjs/lib/dom/getDOMRect.js +36 -0
  508. package/cjs/lib/dom/getDOMRect.js.map +1 -0
  509. package/cjs/lib/events/MouseDrag.js +5 -1
  510. package/cjs/lib/events/MouseDrag.js.map +1 -1
  511. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +2 -1
  512. package/cjs/lib/events/keyboard/KeyboardMapKeys.js +1 -0
  513. package/cjs/lib/events/keyboard/KeyboardMapKeys.js.map +1 -1
  514. package/cjs/lib/events/keyboard/extractCode.js +7 -5
  515. package/cjs/lib/events/keyboard/extractCode.js.map +1 -1
  516. package/cjs/lib/listenFocusOutside.js +1 -1
  517. package/cjs/lib/listenFocusOutside.js.map +1 -1
  518. package/cjs/lib/locale/types.d.ts +2 -0
  519. package/cjs/lib/locale/types.js +2 -0
  520. package/cjs/lib/locale/types.js.map +1 -1
  521. package/cjs/lib/locale/useLocaleForControl.d.ts +3 -0
  522. package/cjs/lib/locale/useLocaleForControl.js +14 -0
  523. package/cjs/lib/locale/useLocaleForControl.js.map +1 -0
  524. package/cjs/lib/needsPolyfillPlaceholder.d.ts +6 -0
  525. package/cjs/lib/needsPolyfillPlaceholder.js +19 -0
  526. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -0
  527. package/cjs/lib/rootNode/getRootNode.d.ts +9 -0
  528. package/cjs/lib/rootNode/getRootNode.js +44 -12
  529. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  530. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +20 -1
  531. package/cjs/lib/rootNode/rootNodeDecorator.js +42 -5
  532. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  533. package/cjs/lib/stringUtils.d.ts +1 -0
  534. package/cjs/lib/stringUtils.js +15 -0
  535. package/cjs/lib/stringUtils.js.map +1 -0
  536. package/cjs/lib/styles/ColorFactory.js +9 -9
  537. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  538. package/cjs/lib/styles/ColorHelpers.d.ts +1 -0
  539. package/cjs/lib/styles/ColorHelpers.js +33 -10
  540. package/cjs/lib/styles/ColorHelpers.js.map +1 -1
  541. package/cjs/lib/styles/ColorObject.js +3 -2
  542. package/cjs/lib/styles/ColorObject.js.map +1 -1
  543. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -0
  544. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js +9 -0
  545. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -0
  546. package/cjs/lib/taskWithDelayAndMinimalDuration.js +3 -1
  547. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  548. package/cjs/lib/theming/AnimationKeyframes.js +1 -1
  549. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  550. package/cjs/lib/theming/Emotion.js +5 -2
  551. package/cjs/lib/theming/Emotion.js.map +1 -1
  552. package/cjs/lib/theming/ThemeFactory.d.ts +1 -1
  553. package/cjs/lib/theming/ThemeFactory.js +9 -4
  554. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  555. package/cjs/lib/theming/ThemeHelpers.d.ts +1 -0
  556. package/cjs/lib/theming/ThemeHelpers.js +16 -2
  557. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  558. package/cjs/lib/theming/themes/Theme2022.d.ts +1 -0
  559. package/cjs/lib/theming/themes/Theme2022.js +6 -0
  560. package/cjs/lib/theming/themes/Theme2022.js.map +1 -0
  561. package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -0
  562. package/cjs/lib/theming/themes/Theme2022Dark.js +9 -0
  563. package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -0
  564. package/cjs/lib/theming/useTheme.d.ts +1 -0
  565. package/cjs/lib/theming/useTheme.js +7 -0
  566. package/cjs/lib/theming/useTheme.js.map +1 -0
  567. package/cjs/lib/uidUtils.d.ts +1 -0
  568. package/cjs/lib/uidUtils.js +5 -0
  569. package/cjs/lib/uidUtils.js.map +1 -0
  570. package/cjs/lib/utils.d.ts +48 -0
  571. package/cjs/lib/utils.js +117 -3
  572. package/cjs/lib/utils.js.map +1 -1
  573. package/cjs/typings/html-props.d.ts +123 -0
  574. package/components/Autocomplete/Autocomplete/Autocomplete.js +18 -20
  575. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  576. package/components/Autocomplete/Autocomplete.d.ts +3 -1
  577. package/components/Button/Button/Button.js +13 -20
  578. package/components/Button/Button/Button.js.map +1 -1
  579. package/components/Button/Button.d.ts +7 -8
  580. package/components/Button/Button.styles/Button.styles.js +35 -32
  581. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  582. package/components/Button/Button.styles.d.ts +2 -1
  583. package/components/Center/Center/Center.js +10 -5
  584. package/components/Center/Center/Center.js.map +1 -1
  585. package/components/Center/Center.d.ts +3 -0
  586. package/components/Checkbox/Checkbox/Checkbox.js +33 -2
  587. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  588. package/components/Checkbox/Checkbox.d.ts +10 -2
  589. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +22 -18
  590. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  591. package/components/Checkbox/Checkbox.styles.d.ts +1 -0
  592. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  593. package/components/ComboBox/ComboBox.d.ts +3 -3
  594. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +12 -11
  595. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  596. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +45 -22
  597. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  598. package/components/CurrencyInput/CurrencyInput.d.ts +5 -2
  599. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js +7 -1
  600. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
  601. package/components/CurrencyInput/CursorHelper/CursorHelper.js +18 -11
  602. package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
  603. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +6 -1
  604. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  605. package/components/CurrencyLabel/CurrencyLabel.d.ts +3 -0
  606. package/components/DateInput/DateInput/DateInput.js +9 -1
  607. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  608. package/components/DateInput/DateInput.d.ts +2 -2
  609. package/components/DateInput/DateInput.styles/DateInput.styles.js +2 -2
  610. package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
  611. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +16 -10
  612. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  613. package/components/DateInput/helpers/InternalDateMediator.d.ts +2 -2
  614. package/components/DateInput/helpers/inputNumber/inputNumber.js +53 -16
  615. package/components/DateInput/helpers/inputNumber/inputNumber.js.map +1 -1
  616. package/components/DateInput/helpers/inputNumber.d.ts +1 -1
  617. package/components/DatePicker/DatePicker/DatePicker.js +25 -15
  618. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  619. package/components/DatePicker/DatePicker.d.ts +8 -6
  620. package/components/DatePicker/Picker/Picker.js +3 -1
  621. package/components/DatePicker/Picker/Picker.js.map +1 -1
  622. package/components/Dropdown/Dropdown/Dropdown.js +9 -5
  623. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  624. package/components/Dropdown/Dropdown.d.ts +5 -2
  625. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +3 -16
  626. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  627. package/components/DropdownMenu/DropdownMenu.d.ts +3 -6
  628. package/components/FileUploader/FileUploader/FileUploader.js +280 -0
  629. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -0
  630. package/components/FileUploader/FileUploader/package.json +6 -0
  631. package/components/FileUploader/FileUploader.d.ts +47 -0
  632. package/components/FileUploader/FileUploader.md +67 -0
  633. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +65 -0
  634. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -0
  635. package/components/FileUploader/FileUploader.styles/package.json +6 -0
  636. package/components/FileUploader/FileUploader.styles.d.ts +22 -0
  637. package/components/FileUploader/index/index.js +3 -0
  638. package/components/FileUploader/index/index.js.map +1 -0
  639. package/components/FileUploader/index/package.json +6 -0
  640. package/components/FileUploader/index.d.ts +5 -0
  641. package/components/FileUploader/locale/index/index.js +8 -0
  642. package/components/FileUploader/locale/index/index.js.map +1 -0
  643. package/components/FileUploader/locale/index/package.json +6 -0
  644. package/components/FileUploader/locale/index.d.ts +4 -0
  645. package/components/FileUploader/locale/locales/en/en.js +6 -0
  646. package/components/FileUploader/locale/locales/en/en.js.map +1 -0
  647. package/components/FileUploader/locale/locales/en/package.json +6 -0
  648. package/components/FileUploader/locale/locales/en.d.ts +2 -0
  649. package/components/FileUploader/locale/locales/ru/package.json +6 -0
  650. package/components/FileUploader/locale/locales/ru/ru.js +6 -0
  651. package/components/FileUploader/locale/locales/ru/ru.js.map +1 -0
  652. package/components/FileUploader/locale/locales/ru.d.ts +2 -0
  653. package/components/FileUploader/locale/package.json +6 -0
  654. package/components/FileUploader/locale/types/package.json +6 -0
  655. package/components/FileUploader/locale/types/types.js +1 -0
  656. package/components/FileUploader/locale/types/types.js.map +1 -0
  657. package/components/FileUploader/locale/types.d.ts +6 -0
  658. package/components/FileUploader/package.json +6 -0
  659. package/components/FxInput/FxInput/FxInput.js +6 -2
  660. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  661. package/components/FxInput/FxInput.d.ts +3 -0
  662. package/components/Gapped/Gapped/Gapped.js +16 -8
  663. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  664. package/components/Gapped/Gapped.d.ts +4 -0
  665. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +223 -0
  666. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -0
  667. package/components/GlobalLoader/GlobalLoader/package.json +6 -0
  668. package/components/GlobalLoader/GlobalLoader.d.ts +113 -0
  669. package/components/GlobalLoader/GlobalLoader.md +98 -0
  670. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +73 -0
  671. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -0
  672. package/components/GlobalLoader/GlobalLoaderView/package.json +6 -0
  673. package/components/GlobalLoader/GlobalLoaderView.d.ts +13 -0
  674. package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +53 -0
  675. package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -0
  676. package/components/GlobalLoader/GlobalLoaderView.styles/package.json +6 -0
  677. package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -0
  678. package/components/GlobalLoader/index/index.js +1 -0
  679. package/components/GlobalLoader/index/index.js.map +1 -0
  680. package/components/GlobalLoader/index/package.json +6 -0
  681. package/components/GlobalLoader/index.d.ts +1 -0
  682. package/components/GlobalLoader/package.json +6 -0
  683. package/components/GlobalLoader/useParams/package.json +6 -0
  684. package/components/GlobalLoader/useParams/useParams.js +51 -0
  685. package/components/GlobalLoader/useParams/useParams.js.map +1 -0
  686. package/components/GlobalLoader/useParams.d.ts +22 -0
  687. package/components/Group/Group/Group.js +66 -30
  688. package/components/Group/Group/Group.js.map +1 -1
  689. package/components/Group/Group.d.ts +3 -0
  690. package/components/Hint/Hint/Hint.js +9 -1
  691. package/components/Hint/Hint/Hint.js.map +1 -1
  692. package/components/Hint/Hint.d.ts +8 -3
  693. package/components/Input/Input/Input.js +18 -31
  694. package/components/Input/Input/Input.js.map +1 -1
  695. package/components/Input/Input.d.ts +7 -8
  696. package/components/Kebab/Kebab/Kebab.js +3 -13
  697. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  698. package/components/Kebab/Kebab.d.ts +4 -15
  699. package/components/Link/Link/Link.js +12 -7
  700. package/components/Link/Link/Link.js.map +1 -1
  701. package/components/Link/Link.d.ts +4 -1
  702. package/components/Link/Link.styles/Link.styles.js +2 -2
  703. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  704. package/components/Link/Link.styles.d.ts +1 -1
  705. package/components/Loader/Loader/Loader.js +21 -18
  706. package/components/Loader/Loader/Loader.js.map +1 -1
  707. package/components/Loader/Loader.d.ts +4 -0
  708. package/components/MenuHeader/MenuHeader/MenuHeader.js +4 -0
  709. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  710. package/components/MenuHeader/MenuHeader.d.ts +3 -0
  711. package/components/MenuItem/MenuItem/MenuItem.js +18 -17
  712. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  713. package/components/MenuItem/MenuItem.d.ts +6 -2
  714. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +1 -1
  715. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  716. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +4 -0
  717. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  718. package/components/MenuSeparator/MenuSeparator.d.ts +3 -0
  719. package/components/Modal/Modal/Modal.js +11 -5
  720. package/components/Modal/Modal/Modal.js.map +1 -1
  721. package/components/Modal/Modal.d.ts +6 -1
  722. package/components/Modal/Modal.styles/Modal.styles.js +15 -12
  723. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  724. package/components/Modal/Modal.styles.d.ts +1 -0
  725. package/components/Modal/ModalClose/ModalClose.js +2 -1
  726. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  727. package/components/Modal/ModalFooter/ModalFooter.js +8 -4
  728. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  729. package/components/Modal/ModalFooter.d.ts +3 -0
  730. package/components/Modal/ModalHeader/ModalHeader.js +7 -3
  731. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  732. package/components/Modal/ModalHeader.d.ts +3 -0
  733. package/components/Paging/Paging/Paging.js +24 -18
  734. package/components/Paging/Paging/Paging.js.map +1 -1
  735. package/components/Paging/Paging.d.ts +20 -3
  736. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js +19 -0
  737. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -0
  738. package/components/Paging/PagingDefaultComponent/package.json +6 -0
  739. package/components/Paging/PagingDefaultComponent.d.ts +9 -0
  740. package/components/PasswordInput/PasswordInput/PasswordInput.js +39 -14
  741. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  742. package/components/PasswordInput/PasswordInput.d.ts +7 -0
  743. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js +15 -0
  744. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js.map +1 -0
  745. package/components/PasswordInput/PasswordInputIcon/package.json +6 -0
  746. package/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
  747. package/components/Radio/Radio/Radio.js +10 -5
  748. package/components/Radio/Radio/Radio.js.map +1 -1
  749. package/components/Radio/Radio.d.ts +5 -2
  750. package/components/Radio/Radio.styles/Radio.styles.js +2 -1
  751. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  752. package/components/RadioGroup/RadioGroup/RadioGroup.js +25 -13
  753. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  754. package/components/RadioGroup/RadioGroup.d.ts +11 -2
  755. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +5 -0
  756. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  757. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +15 -7
  758. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  759. package/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +1 -1
  760. package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js +1 -1
  761. package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js.map +1 -1
  762. package/components/ScrollContainer/ScrollBar/ScrollBar.js +6 -2
  763. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  764. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +11 -4
  765. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  766. package/components/ScrollContainer/ScrollContainer.d.ts +4 -0
  767. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +11 -8
  768. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  769. package/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -0
  770. package/components/Select/Select/Select.js +51 -22
  771. package/components/Select/Select/Select.js.map +1 -1
  772. package/components/Select/Select.d.ts +13 -8
  773. package/components/SidePage/SidePage/SidePage.js +27 -15
  774. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  775. package/components/SidePage/SidePage.d.ts +8 -1
  776. package/components/SidePage/SidePage.styles/SidePage.styles.js +9 -6
  777. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  778. package/components/SidePage/SidePage.styles.d.ts +1 -0
  779. package/components/SidePage/SidePageBody/SidePageBody.js +10 -6
  780. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  781. package/components/SidePage/SidePageBody.d.ts +3 -0
  782. package/components/SidePage/SidePageContainer/SidePageContainer.js +10 -6
  783. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  784. package/components/SidePage/SidePageContainer.d.ts +3 -0
  785. package/components/SidePage/SidePageContext/SidePageContext.js +3 -0
  786. package/components/SidePage/SidePageContext/SidePageContext.js.map +1 -1
  787. package/components/SidePage/SidePageContext.d.ts +2 -0
  788. package/components/SidePage/SidePageFooter/SidePageFooter.js +15 -11
  789. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  790. package/components/SidePage/SidePageFooter.d.ts +3 -0
  791. package/components/SidePage/SidePageHeader/SidePageHeader.js +41 -23
  792. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  793. package/components/SidePage/SidePageHeader.d.ts +7 -0
  794. package/components/Spinner/Spinner/Spinner.js +19 -8
  795. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  796. package/components/Spinner/Spinner.d.ts +11 -1
  797. package/components/Spinner/Spinner.md +1 -0
  798. package/components/Spinner/Spinner.styles/Spinner.styles.js +13 -10
  799. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  800. package/components/Spinner/Spinner.styles.d.ts +2 -1
  801. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +18 -4
  802. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  803. package/components/Sticky/Sticky/Sticky.js +13 -8
  804. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  805. package/components/Sticky/Sticky.d.ts +9 -1
  806. package/components/Switcher/Switcher/Switcher.js +4 -0
  807. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  808. package/components/Switcher/Switcher.d.ts +5 -1
  809. package/components/Switcher/Switcher.styles/Switcher.styles.js +3 -1
  810. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  811. package/components/Tabs/Indicator/Indicator.js +4 -1
  812. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  813. package/components/Tabs/Tab/Tab.js +4 -0
  814. package/components/Tabs/Tab/Tab.js.map +1 -1
  815. package/components/Tabs/Tab.d.ts +5 -2
  816. package/components/Tabs/Tabs/Tabs.js +11 -6
  817. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  818. package/components/Tabs/Tabs.d.ts +7 -1
  819. package/components/Textarea/Textarea/Textarea.js +21 -15
  820. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  821. package/components/Textarea/Textarea.d.ts +10 -6
  822. package/components/Textarea/TextareaCounter/TextareaCounter.js +20 -8
  823. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  824. package/components/Textarea/TextareaCounter.d.ts +1 -2
  825. package/components/Toast/Toast/Toast.js +16 -10
  826. package/components/Toast/Toast/Toast.js.map +1 -1
  827. package/components/Toast/Toast.d.ts +6 -0
  828. package/components/Toast/Toast.styles/Toast.styles.js +2 -2
  829. package/components/Toast/Toast.styles/Toast.styles.js.map +1 -1
  830. package/components/Toast/ToastStatic/ToastStatic.js +2 -2
  831. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  832. package/components/Toast/ToastView/ToastView.js +5 -4
  833. package/components/Toast/ToastView/ToastView.js.map +1 -1
  834. package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
  835. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  836. package/components/Toast/ToastView.styles.d.ts +1 -1
  837. package/components/Toggle/Toggle/Toggle.js +8 -4
  838. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  839. package/components/Toggle/Toggle.d.ts +6 -3
  840. package/components/Toggle/Toggle.styles/Toggle.styles.js +3 -4
  841. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  842. package/components/Token/Token/Token.js +16 -1
  843. package/components/Token/Token/Token.js.map +1 -1
  844. package/components/Token/Token.d.ts +5 -2
  845. package/components/Token/Token.styles/Token.styles.js +11 -4
  846. package/components/Token/Token.styles/Token.styles.js.map +1 -1
  847. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -2
  848. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  849. package/components/TokenInput/TokenInput/TokenInput.js +31 -17
  850. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  851. package/components/TokenInput/TokenInput.d.ts +16 -2
  852. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
  853. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  854. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +2 -0
  855. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  856. package/components/Tooltip/Tooltip/Tooltip.js +42 -22
  857. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  858. package/components/Tooltip/Tooltip.d.ts +19 -24
  859. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +18 -12
  860. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  861. package/components/TooltipMenu/TooltipMenu.d.ts +6 -3
  862. package/hooks/useDrop/package.json +6 -0
  863. package/hooks/useDrop/useDrop.js +61 -0
  864. package/hooks/useDrop/useDrop.js.map +1 -0
  865. package/hooks/useDrop.d.ts +11 -0
  866. package/hooks/useEffectWithoutInitCall/package.json +6 -0
  867. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +11 -0
  868. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -0
  869. package/hooks/useEffectWithoutInitCall.d.ts +2 -0
  870. package/hooks/useMemoObject/package.json +6 -0
  871. package/hooks/useMemoObject/useMemoObject.js +6 -0
  872. package/hooks/useMemoObject/useMemoObject.js.map +1 -0
  873. package/hooks/useMemoObject.d.ts +1 -0
  874. package/index.d.ts +5 -0
  875. package/index.js +6 -1
  876. package/index.js.map +1 -1
  877. package/internal/BGRuler/BGRuler.js +2 -1
  878. package/internal/BGRuler/BGRuler.js.map +1 -1
  879. package/internal/Calendar/Calendar/Calendar.js +13 -5
  880. package/internal/Calendar/Calendar/Calendar.js.map +1 -1
  881. package/internal/Calendar/Calendar.d.ts +6 -0
  882. package/internal/Calendar/CalendarDateShape.d.ts +1 -1
  883. package/internal/Calendar/MonthView/MonthView.js +4 -3
  884. package/internal/Calendar/MonthView/MonthView.js.map +1 -1
  885. package/internal/Calendar/MonthViewModel/MonthViewModel.js +35 -18
  886. package/internal/Calendar/MonthViewModel/MonthViewModel.js.map +1 -1
  887. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +24 -11
  888. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  889. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  890. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  891. package/internal/ComponentTable.d.ts +4 -2
  892. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +34 -19
  893. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  894. package/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -0
  895. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +2 -0
  896. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  897. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +21 -17
  898. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  899. package/internal/CustomComboBox/CustomComboBox.d.ts +3 -0
  900. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +35 -35
  901. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  902. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +16 -16
  903. package/internal/DataTids/DATATIDS.md +12 -0
  904. package/internal/DataTids/DataTids/DataTids.js +69 -0
  905. package/internal/DataTids/DataTids/DataTids.js.map +1 -0
  906. package/internal/DataTids/DataTids/package.json +6 -0
  907. package/internal/DataTids/DataTids.d.ts +12 -0
  908. package/internal/DataTids/DataTids.styles/DataTids.styles.js +22 -0
  909. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +1 -0
  910. package/internal/DataTids/DataTids.styles/package.json +6 -0
  911. package/internal/DataTids/DataTids.styles.d.ts +7 -0
  912. package/internal/DataTids/componentsDataTids/componentsDataTids.js +14 -0
  913. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +1 -0
  914. package/internal/DataTids/componentsDataTids/package.json +6 -0
  915. package/internal/DataTids/componentsDataTids.d.ts +5 -0
  916. package/internal/DateSelect/DateSelect/DateSelect.js +29 -18
  917. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  918. package/internal/DateSelect/DateSelect.d.ts +4 -0
  919. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +32 -35
  920. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  921. package/internal/DropdownContainer/DropdownContainer.d.ts +2 -1
  922. package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js +10 -0
  923. package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js.map +1 -0
  924. package/internal/DropdownContainer/DropdownContainer.styles/package.json +6 -0
  925. package/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -0
  926. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js +2 -0
  927. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -0
  928. package/internal/FileUploaderControl/FileUploaderControlContext/package.json +6 -0
  929. package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
  930. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +89 -0
  931. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -0
  932. package/internal/FileUploaderControl/FileUploaderControlProvider/package.json +6 -0
  933. package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
  934. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +187 -0
  935. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -0
  936. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/package.json +6 -0
  937. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +19 -0
  938. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +32 -0
  939. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -0
  940. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/package.json +6 -0
  941. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
  942. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +30 -0
  943. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
  944. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/package.json +6 -0
  945. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +13 -0
  946. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +14 -0
  947. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -0
  948. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/package.json +6 -0
  949. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -0
  950. package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js +16 -0
  951. package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js.map +1 -0
  952. package/internal/FileUploaderControl/FileUploaderFileValidationResult/package.json +6 -0
  953. package/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
  954. package/internal/FileUploaderControl/fileUtils/fileUtils.js +19 -0
  955. package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -0
  956. package/internal/FileUploaderControl/fileUtils/package.json +6 -0
  957. package/internal/FileUploaderControl/fileUtils.d.ts +14 -0
  958. package/internal/FileUploaderControl/hooks/useControlLocale/package.json +6 -0
  959. package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js +5 -0
  960. package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js.map +1 -0
  961. package/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
  962. package/internal/FileUploaderControl/hooks/useUpload/package.json +6 -0
  963. package/internal/FileUploaderControl/hooks/useUpload/useUpload.js +56 -0
  964. package/internal/FileUploaderControl/hooks/useUpload/useUpload.js.map +1 -0
  965. package/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
  966. package/internal/FileUploaderControl/withFileUploaderControlProvider/package.json +6 -0
  967. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js +19 -0
  968. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -0
  969. package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
  970. package/internal/InputLikeText/InputLikeText/InputLikeText.js +8 -2
  971. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  972. package/internal/InputLikeText/InputLikeText.d.ts +5 -1
  973. package/internal/InternalMenu/InternalMenu/InternalMenu.js +20 -22
  974. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  975. package/internal/InternalMenu/InternalMenu.d.ts +3 -0
  976. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +1 -1
  977. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  978. package/internal/InternalMenu/addIconPaddingIfPartOfMenu/addIconPaddingIfPartOfMenu.js +14 -0
  979. package/internal/InternalMenu/addIconPaddingIfPartOfMenu/addIconPaddingIfPartOfMenu.js.map +1 -0
  980. package/internal/InternalMenu/addIconPaddingIfPartOfMenu/package.json +6 -0
  981. package/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -0
  982. package/internal/MaskedInput/MaskedInput/MaskedInput.js +14 -3
  983. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  984. package/internal/MaskedInput/MaskedInput.d.ts +3 -0
  985. package/internal/Menu/Menu/Menu.js +45 -25
  986. package/internal/Menu/Menu/Menu.js.map +1 -1
  987. package/internal/Menu/Menu.d.ts +5 -0
  988. package/internal/Menu/Menu.styles/Menu.styles.js +13 -4
  989. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  990. package/internal/Menu/Menu.styles.d.ts +3 -0
  991. package/internal/MobilePopup/MobilePopup/MobilePopup.js +6 -0
  992. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  993. package/internal/MobilePopup/MobilePopup.d.ts +4 -0
  994. package/internal/Popup/Popup/Popup.js +37 -28
  995. package/internal/Popup/Popup/Popup.js.map +1 -1
  996. package/internal/Popup/Popup.d.ts +12 -6
  997. package/internal/Popup/PopupHelper/PopupHelper.js +3 -1
  998. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  999. package/internal/Popup/PopupHelper.d.ts +2 -2
  1000. package/internal/Popup/PopupPin/PopupPin.js +2 -0
  1001. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  1002. package/internal/Popup/types/package.json +6 -0
  1003. package/internal/Popup/types/types.js +1 -0
  1004. package/internal/Popup/types/types.js.map +1 -0
  1005. package/internal/Popup/types.d.ts +2 -0
  1006. package/internal/PopupMenu/PopupMenu/PopupMenu.js +19 -6
  1007. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1008. package/internal/PopupMenu/PopupMenu.d.ts +11 -3
  1009. package/internal/PopupMenu/validatePositions/validatePositions.js +8 -8
  1010. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  1011. package/internal/PopupMenu/validatePositions.d.ts +2 -2
  1012. package/internal/RenderContainer/RenderContainer/RenderContainer.js +9 -0
  1013. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  1014. package/internal/RenderContainer/RenderContainerTypes.d.ts +2 -0
  1015. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +11 -2
  1016. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  1017. package/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
  1018. package/internal/RenderLayer/RenderLayer/RenderLayer.js +5 -1
  1019. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1020. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +50 -0
  1021. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -0
  1022. package/internal/TextWidthHelper/TextWidthHelper/package.json +6 -0
  1023. package/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
  1024. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js +14 -0
  1025. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js.map +1 -0
  1026. package/internal/TextWidthHelper/TextWidthHelper.styles/package.json +6 -0
  1027. package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
  1028. package/internal/ThemePlayground/CheckboxPlayground/CheckboxPlayground.js.map +1 -1
  1029. package/internal/ThemePlayground/Playground/Playground.js +26 -35
  1030. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  1031. package/internal/ThemePlayground/Playground.d.ts +1 -0
  1032. package/internal/ThemePlayground/RadioPlayground/RadioPlayground.js.map +1 -1
  1033. package/internal/ThemePlayground/SizesGroup/SizesGroup.js +29 -0
  1034. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -0
  1035. package/internal/ThemePlayground/SizesGroup/package.json +6 -0
  1036. package/internal/ThemePlayground/SizesGroup.d.ts +4 -0
  1037. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +15 -18
  1038. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  1039. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -2
  1040. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js +5 -1
  1041. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  1042. package/internal/ThemePlayground/VariableValue/VariableValue.js +16 -5
  1043. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1044. package/internal/ThemePlayground/constants/constants.js +5 -1
  1045. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  1046. package/internal/ThemePlayground/constants.d.ts +2 -1
  1047. package/internal/ThemePlayground/darkTheme/darkTheme.js +14 -0
  1048. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  1049. package/internal/ThemePlayground/darkTheme.d.ts +14 -0
  1050. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +12 -13
  1051. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  1052. package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js +26 -20
  1053. package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
  1054. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +4 -2
  1055. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +12 -6
  1056. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  1057. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  1058. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +13 -6
  1059. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1060. package/internal/ZIndex/ZIndexStorage.d.ts +3 -1
  1061. package/internal/icons/16px/index/index.js +67 -17
  1062. package/internal/icons/16px/index/index.js.map +1 -1
  1063. package/internal/icons/16px/index.d.ts +19 -16
  1064. package/internal/icons/20px/svg/svg.js +5 -0
  1065. package/internal/icons/20px/svg/svg.js.map +1 -1
  1066. package/internal/icons/SpinnerIcon/SpinnerIcon.js +7 -5
  1067. package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
  1068. package/internal/icons/SpinnerIcon.d.ts +4 -1
  1069. package/internal/themes/DarkTheme/DarkTheme.js +65 -3
  1070. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  1071. package/internal/themes/DarkTheme.d.ts +34 -0
  1072. package/internal/themes/DefaultTheme/DefaultTheme.js +159 -24
  1073. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1074. package/internal/themes/DefaultTheme.d.ts +62 -4
  1075. package/internal/themes/NotFlat/NotFlat.js +15 -0
  1076. package/internal/themes/NotFlat/NotFlat.js.map +1 -1
  1077. package/internal/themes/NotFlat.d.ts +6 -0
  1078. package/internal/themes/OldColors/OldColors.js +31 -19
  1079. package/internal/themes/OldColors/OldColors.js.map +1 -1
  1080. package/internal/themes/OldColors.d.ts +6 -0
  1081. package/internal/themes/Theme2022/Theme2022.js +78 -0
  1082. package/internal/themes/Theme2022/Theme2022.js.map +1 -0
  1083. package/internal/themes/Theme2022/package.json +6 -0
  1084. package/internal/themes/Theme2022.d.ts +66 -0
  1085. package/internal/themes/Theme2022Dark/Theme2022Dark.js +17 -0
  1086. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
  1087. package/internal/themes/Theme2022Dark/package.json +6 -0
  1088. package/internal/themes/Theme2022Dark.d.ts +5 -0
  1089. package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
  1090. package/lib/ConditionalHandler.d.ts +3 -2
  1091. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js +3 -0
  1092. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -0
  1093. package/lib/InstanceWithAnchorElement/package.json +6 -0
  1094. package/lib/InstanceWithAnchorElement.d.ts +5 -0
  1095. package/lib/ModalStack/ModalStack.js +9 -13
  1096. package/lib/ModalStack/ModalStack.js.map +1 -1
  1097. package/lib/ModalStack.d.ts +1 -1
  1098. package/lib/SSRSafe/SSRSafe.js +7 -0
  1099. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1100. package/lib/SSRSafe.d.ts +1 -0
  1101. package/lib/animation/index/index.js +1 -1
  1102. package/lib/animation/index/index.js.map +1 -1
  1103. package/lib/animation/index.d.ts +1 -1
  1104. package/lib/date/InternalDate/InternalDate.js +16 -1
  1105. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  1106. package/lib/date/InternalDateCalculator/InternalDateCalculator.js +14 -2
  1107. package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
  1108. package/lib/date/InternalDateGetter/InternalDateGetter.js +23 -7
  1109. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  1110. package/lib/date/InternalDateGetter.d.ts +1 -1
  1111. package/lib/date/InternalDateTransformer/InternalDateTransformer.js +11 -1
  1112. package/lib/date/InternalDateTransformer/InternalDateTransformer.js.map +1 -1
  1113. package/lib/date/InternalDateValidator/InternalDateValidator.js +75 -34
  1114. package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
  1115. package/lib/date/types/types.js.map +1 -1
  1116. package/lib/date/types.d.ts +4 -0
  1117. package/lib/dom/getDOMRect/getDOMRect.js +40 -0
  1118. package/lib/dom/getDOMRect/getDOMRect.js.map +1 -0
  1119. package/lib/dom/getDOMRect/package.json +6 -0
  1120. package/lib/dom/getDOMRect.d.ts +11 -0
  1121. package/lib/events/MouseDrag/MouseDrag.js +5 -1
  1122. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1123. package/lib/events/keyboard/KeyboardMapKeys/KeyboardMapKeys.js.map +1 -1
  1124. package/lib/events/keyboard/KeyboardMapKeys.d.ts +2 -1
  1125. package/lib/events/keyboard/extractCode/extractCode.js +5 -5
  1126. package/lib/events/keyboard/extractCode/extractCode.js.map +1 -1
  1127. package/lib/listenFocusOutside/listenFocusOutside.js +1 -1
  1128. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1129. package/lib/locale/types/types.js.map +1 -1
  1130. package/lib/locale/types.d.ts +2 -0
  1131. package/lib/locale/useLocaleForControl/package.json +6 -0
  1132. package/lib/locale/useLocaleForControl/useLocaleForControl.js +12 -0
  1133. package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -0
  1134. package/lib/locale/useLocaleForControl.d.ts +3 -0
  1135. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +21 -0
  1136. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -0
  1137. package/lib/needsPolyfillPlaceholder/package.json +6 -0
  1138. package/lib/needsPolyfillPlaceholder.d.ts +6 -0
  1139. package/lib/rootNode/getRootNode/getRootNode.js +41 -13
  1140. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1141. package/lib/rootNode/getRootNode.d.ts +9 -0
  1142. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +26 -2
  1143. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  1144. package/lib/rootNode/rootNodeDecorator.d.ts +20 -1
  1145. package/lib/stringUtils/package.json +6 -0
  1146. package/lib/stringUtils/stringUtils.js +15 -0
  1147. package/lib/stringUtils/stringUtils.js.map +1 -0
  1148. package/lib/stringUtils.d.ts +1 -0
  1149. package/lib/styles/ColorFactory/ColorFactory.js +9 -9
  1150. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  1151. package/lib/styles/ColorHelpers/ColorHelpers.js +26 -9
  1152. package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
  1153. package/lib/styles/ColorHelpers.d.ts +1 -0
  1154. package/lib/styles/ColorObject/ColorObject.js +2 -2
  1155. package/lib/styles/ColorObject/ColorObject.js.map +1 -1
  1156. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js +9 -0
  1157. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js.map +1 -0
  1158. package/lib/styles/getLabGrotesqueBaselineCompensation/package.json +6 -0
  1159. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -0
  1160. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +4 -1
  1161. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  1162. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +1 -1
  1163. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  1164. package/lib/theming/Emotion/Emotion.js +5 -2
  1165. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1166. package/lib/theming/ThemeFactory/ThemeFactory.js +8 -4
  1167. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  1168. package/lib/theming/ThemeFactory.d.ts +1 -1
  1169. package/lib/theming/ThemeHelpers/ThemeHelpers.js +14 -1
  1170. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  1171. package/lib/theming/ThemeHelpers.d.ts +1 -0
  1172. package/lib/theming/themes/Theme2022/Theme2022.js +4 -0
  1173. package/lib/theming/themes/Theme2022/Theme2022.js.map +1 -0
  1174. package/lib/theming/themes/Theme2022/package.json +6 -0
  1175. package/lib/theming/themes/Theme2022.d.ts +1 -0
  1176. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +5 -0
  1177. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
  1178. package/lib/theming/themes/Theme2022Dark/package.json +6 -0
  1179. package/lib/theming/themes/Theme2022Dark.d.ts +1 -0
  1180. package/lib/theming/useTheme/package.json +6 -0
  1181. package/lib/theming/useTheme/useTheme.js +5 -0
  1182. package/lib/theming/useTheme/useTheme.js.map +1 -0
  1183. package/lib/theming/useTheme.d.ts +1 -0
  1184. package/lib/uidUtils/package.json +6 -0
  1185. package/lib/uidUtils/uidUtils.js +4 -0
  1186. package/lib/uidUtils/uidUtils.js.map +1 -0
  1187. package/lib/uidUtils.d.ts +1 -0
  1188. package/lib/utils/utils.js +120 -0
  1189. package/lib/utils/utils.js.map +1 -1
  1190. package/lib/utils.d.ts +48 -0
  1191. package/package.json +14 -5
  1192. package/typings/html-props.d.ts +123 -0
  1193. package/cjs/components/Button/Corners.d.ts +0 -6
  1194. package/cjs/components/Button/Corners.js +0 -5
  1195. package/cjs/components/Button/Corners.js.map +0 -1
  1196. package/cjs/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
  1197. package/cjs/internal/PopupMenu/PopupMenuPositions.js +0 -15
  1198. package/cjs/internal/PopupMenu/PopupMenuPositions.js.map +0 -1
  1199. package/cjs/lib/polyfillPlaceholder.d.ts +0 -1
  1200. package/cjs/lib/polyfillPlaceholder.js +0 -17
  1201. package/cjs/lib/polyfillPlaceholder.js.map +0 -1
  1202. package/components/Button/Corners/Corners.js +0 -6
  1203. package/components/Button/Corners/Corners.js.map +0 -1
  1204. package/components/Button/Corners/package.json +0 -6
  1205. package/components/Button/Corners.d.ts +0 -6
  1206. package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js +0 -1
  1207. package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js.map +0 -1
  1208. package/internal/PopupMenu/PopupMenuPositions/package.json +0 -6
  1209. package/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
  1210. package/lib/polyfillPlaceholder/package.json +0 -6
  1211. package/lib/polyfillPlaceholder/polyfillPlaceholder.js +0 -12
  1212. package/lib/polyfillPlaceholder/polyfillPlaceholder.js.map +0 -1
  1213. package/lib/polyfillPlaceholder.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["TokenInputMenu.tsx"],"names":["React","ThemeFactory","Popup","ComboBoxMenu","ThemeContext","TokenInputMenu","menu","getMenuRef","getPopupMargin","paddingY","parseInt","theme","tokenInputPaddingY","outlineWidth","controlOutlineWidth","marginY","tokenMarginY","menuRef","node","render","create","popupMargin","renderMain","props","loading","maxMenuHeight","renderTotalCount","totalCount","opened","items","renderNotFound","renderItem","onValueChange","renderAddButton","anchorElement","menuWidth","menuAlign","undefined","Component","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Popup } from '../../internal/Popup';\nimport { ComboBoxMenu, ComboBoxMenuProps } from '../../internal/CustomComboBox';\nimport { Menu } from '../../internal/Menu';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nimport { TokenInputMenuAlign, TokenInputProps } from './TokenInput';\n\nexport interface TokenInputMenuProps<T> extends ComboBoxMenuProps<T> {\n anchorElement: HTMLElement;\n menuWidth: TokenInputProps<string>['menuWidth'];\n menuAlign: TokenInputMenuAlign;\n}\n\nexport class TokenInputMenu<T = string> extends React.Component<TokenInputMenuProps<T>> {\n public static __KONTUR_REACT_UI__ = 'TokenInputMenu';\n\n private theme!: Theme;\n\n private menu: Menu | null = null;\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 popupMargin: this.getPopupMargin() + 'px',\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getMenuRef = (): any | null => this.menu;\n\n private renderMain() {\n const {\n loading,\n maxMenuHeight,\n renderTotalCount,\n totalCount,\n opened,\n items,\n renderNotFound,\n renderItem,\n onValueChange,\n renderAddButton,\n anchorElement,\n menuWidth,\n menuAlign,\n } = this.props;\n\n return (\n <Popup\n opened={opened!}\n positions={['bottom left', 'top left']}\n anchorElement={anchorElement}\n popupOffset={menuAlign === 'left' ? 0 : 5}\n margin={menuAlign === 'left' ? 1 : undefined}\n hasShadow={true}\n width={menuAlign === 'cursor' ? 'auto' : menuWidth}\n withoutMobile\n >\n <ComboBoxMenu\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={onValueChange}\n opened={opened}\n refMenu={this.menuRef}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n totalCount={totalCount}\n renderAddButton={renderAddButton}\n />\n </Popup>\n );\n }\n\n private getPopupMargin = (): number => {\n const paddingY = parseInt(this.theme.tokenInputPaddingY, 10) || 0;\n const outlineWidth = parseInt(this.theme.controlOutlineWidth, 10) || 0;\n const marginY = parseInt(this.theme.tokenMarginY, 10) || 0;\n return paddingY + outlineWidth + marginY;\n };\n\n private menuRef = (node: any) => (this.menu = node);\n}\n"]}
1
+ {"version":3,"sources":["TokenInputMenu.tsx"],"names":["React","ThemeFactory","Popup","ComboBoxMenu","ThemeContext","TokenInputDataTids","TokenInputMenu","menu","getMenuRef","getPopupMargin","paddingY","parseInt","theme","tokenInputPaddingY","outlineWidth","controlOutlineWidth","marginY","tokenMarginY","menuRef","node","render","create","popupMargin","renderMain","props","loading","maxMenuHeight","renderTotalCount","totalCount","opened","items","renderNotFound","renderItem","onValueChange","renderAddButton","anchorElement","menuWidth","menuAlign","tokenInputMenu","undefined","Component","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Popup } from '../../internal/Popup';\nimport { ComboBoxMenu, ComboBoxMenuProps } from '../../internal/CustomComboBox';\nimport { Menu } from '../../internal/Menu';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nimport { TokenInputDataTids, TokenInputMenuAlign, TokenInputProps } from './TokenInput';\n\nexport interface TokenInputMenuProps<T> extends ComboBoxMenuProps<T> {\n anchorElement: HTMLElement;\n menuWidth: TokenInputProps<string>['menuWidth'];\n menuAlign: TokenInputMenuAlign;\n}\n\nexport class TokenInputMenu<T = string> extends React.Component<TokenInputMenuProps<T>> {\n public static __KONTUR_REACT_UI__ = 'TokenInputMenu';\n\n private theme!: Theme;\n\n private menu: Menu | null = null;\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 popupMargin: this.getPopupMargin() + 'px',\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getMenuRef = (): any | null => this.menu;\n\n private renderMain() {\n const {\n loading,\n maxMenuHeight,\n renderTotalCount,\n totalCount,\n opened,\n items,\n renderNotFound,\n renderItem,\n onValueChange,\n renderAddButton,\n anchorElement,\n menuWidth,\n menuAlign,\n } = this.props;\n\n return (\n <Popup\n data-tid={TokenInputDataTids.tokenInputMenu}\n opened={opened!}\n positions={['bottom left', 'top left']}\n anchorElement={anchorElement}\n popupOffset={menuAlign === 'left' ? 0 : 5}\n margin={menuAlign === 'left' ? 1 : undefined}\n hasShadow\n width={menuAlign === 'cursor' ? 'auto' : menuWidth}\n withoutMobile\n >\n <ComboBoxMenu\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={onValueChange}\n opened={opened}\n refMenu={this.menuRef}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n totalCount={totalCount}\n renderAddButton={renderAddButton}\n />\n </Popup>\n );\n }\n\n private getPopupMargin = (): number => {\n const paddingY = parseInt(this.theme.tokenInputPaddingY, 10) || 0;\n const outlineWidth = parseInt(this.theme.controlOutlineWidth, 10) || 0;\n const marginY = parseInt(this.theme.tokenMarginY, 10) || 0;\n return paddingY + outlineWidth + marginY;\n };\n\n private menuRef = (node: any) => (this.menu = node);\n}\n"]}
@@ -1,5 +1,4 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
3
2
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
4
3
 
5
4
  var _class, _class2, _temp;
@@ -7,8 +6,9 @@ var _class, _class2, _temp;
7
6
  import React from 'react';
8
7
  import warning from 'warning';
9
8
  import isEqual from 'lodash.isequal';
9
+ import { isNullable } from "../../../lib/utils";
10
10
  import { ThemeFactory } from "../../../lib/theming/ThemeFactory";
11
- import { Popup } from "../../../internal/Popup";
11
+ import { DefaultPosition, Popup } from "../../../internal/Popup";
12
12
  import { RenderLayer } from "../../../internal/RenderLayer";
13
13
  import { CrossIcon } from "../../../internal/icons/CrossIcon";
14
14
  import { containsTargetOrRenderContainer } from "../../../lib/listenFocusOutside";
@@ -16,10 +16,14 @@ import { ThemeContext } from "../../../lib/theming/ThemeContext";
16
16
  import { isTestEnv } from "../../../lib/currentEnvironment";
17
17
  import { CommonWrapper } from "../../../internal/CommonWrapper";
18
18
  import { responsiveLayout } from "../../ResponsiveLayout/decorator";
19
- import { getRootNode, rootNode } from "../../../lib/rootNode";
19
+ import { rootNode } from "../../../lib/rootNode";
20
20
  import { styles } from "../Tooltip.styles";
21
+ export var TooltipDataTids = {
22
+ root: 'Tooltip__root',
23
+ content: 'Tooltip__content'
24
+ };
21
25
  var Positions = ['right bottom', 'right middle', 'right top', 'top right', 'top center', 'top left', 'left top', 'left middle', 'left bottom', 'bottom left', 'bottom center', 'bottom right'];
22
- export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
26
+ export var Tooltip = rootNode(_class = responsiveLayout(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
23
27
  _inheritsLoose(Tooltip, _React$PureComponent);
24
28
 
25
29
  function Tooltip() {
@@ -38,22 +42,26 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
38
42
  _this.contentElement = null;
39
43
  _this.positions = null;
40
44
  _this.clickedOutside = true;
45
+ _this.popupRef = /*#__PURE__*/React.createRef();
41
46
 
42
47
  _this.renderContent = function () {
43
48
  var content = _this.props.render ? _this.props.render() : null;
44
49
 
45
- if (content == null) {
50
+ if (isNullable(content)) {
46
51
  return null;
47
52
  }
48
53
 
49
54
  return /*#__PURE__*/React.createElement("div", {
50
55
  ref: _this.refContent,
51
- className: styles.tooltipContent(_this.theme)
56
+ className: styles.tooltipContent(_this.theme),
57
+ "data-tid": TooltipDataTids.content
52
58
  }, content, _this.renderCloseButton());
53
59
  };
54
60
 
55
- _this.getRenderLayerAnchorElement = function () {
56
- return getRootNode(_assertThisInitialized(_this));
61
+ _this.getAnchorElement = function () {
62
+ var _this$popupRef$curren;
63
+
64
+ return (_this$popupRef$curren = _this.popupRef.current) == null ? void 0 : _this$popupRef$curren.anchorElement;
57
65
  };
58
66
 
59
67
  _this.mobileCloseHandler = function () {
@@ -70,7 +78,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
70
78
 
71
79
  _this.open = function () {
72
80
  return _this.setState({
73
- opened: true
81
+ opened: false
74
82
  });
75
83
  };
76
84
 
@@ -114,8 +122,8 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
114
122
  _this.open();
115
123
  };
116
124
 
117
- _this.handleClickOutsideAnchor = function (event) {
118
- _this.clickedOutside = _this.isClickOutsideContent(event);
125
+ _this.handleClickOutside = function (event) {
126
+ _this.clickedOutside = _this.isClickOutsideContent(event) && _this.isClickOutsideAnchor(event);
119
127
 
120
128
  if (_this.clickedOutside) {
121
129
  if (_this.props.onCloseRequest) {
@@ -223,16 +231,18 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
223
231
  className: styles.cross(this.theme),
224
232
  onClick: this.handleCloseButtonClick
225
233
  }, /*#__PURE__*/React.createElement(CrossIcon, null));
226
- }
234
+ };
227
235
  /**
228
236
  * Программно открывает тултип.
229
237
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
230
238
  * @public
231
239
  */
232
- ;
240
+
233
241
 
234
242
  _proto.show = function show() {
235
- if (this.state.opened) return;
243
+ if (this.state.opened) {
244
+ return;
245
+ }
236
246
 
237
247
  if (this.props.trigger === 'opened' || this.props.trigger === 'closed') {
238
248
  warning(true, "Function 'show' is not supported with trigger specified '" + this.props.trigger + "'");
@@ -276,7 +286,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
276
286
  }
277
287
 
278
288
  return /*#__PURE__*/React.createElement(RenderLayer, _extends({}, layerProps, {
279
- getAnchorElement: this.getRenderLayerAnchorElement
289
+ getAnchorElement: this.getAnchorElement
280
290
  }), popup);
281
291
  };
282
292
 
@@ -284,6 +294,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
284
294
  return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
285
295
  rootNodeRef: this.setRootNode
286
296
  }, this.props), /*#__PURE__*/React.createElement(Popup, _extends({
297
+ "data-tid": TooltipDataTids.root,
287
298
  anchorElement: anchorElement,
288
299
  hasPin: true,
289
300
  hasShadow: true,
@@ -295,7 +306,8 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
295
306
  onOpen: this.props.onOpen,
296
307
  onClose: this.props.onClose,
297
308
  mobileOnCloseRequest: this.mobileCloseHandler,
298
- tryPreserveFirstRenderedPosition: true
309
+ tryPreserveFirstRenderedPosition: true,
310
+ ref: this.popupRef
299
311
  }, popupProps), content));
300
312
  };
301
313
 
@@ -323,7 +335,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
323
335
  return {
324
336
  layerProps: {
325
337
  active: true,
326
- onClickOutside: this.handleClickOutsideAnchor
338
+ onClickOutside: this.handleClickOutside
327
339
  },
328
340
  popupProps: {
329
341
  opened: true,
@@ -360,7 +372,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
360
372
  return {
361
373
  layerProps: {
362
374
  active: this.state.opened,
363
- onClickOutside: this.handleClickOutsideAnchor
375
+ onClickOutside: this.handleClickOutside
364
376
  },
365
377
  popupProps: {
366
378
  onClick: this.handleClick,
@@ -381,7 +393,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
381
393
  return {
382
394
  layerProps: {
383
395
  active: this.state.opened,
384
- onClickOutside: this.handleClickOutsideAnchor
396
+ onClickOutside: this.handleClickOutside
385
397
  },
386
398
  popupProps: {
387
399
  onFocus: this.handleFocus,
@@ -405,8 +417,16 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
405
417
  };
406
418
 
407
419
  _proto.isClickOutsideContent = function isClickOutsideContent(event) {
408
- if (this.contentElement && event.target instanceof Element) {
409
- return !containsTargetOrRenderContainer(event.target)(this.contentElement);
420
+ return this.isClickOutside(event, this.contentElement);
421
+ };
422
+
423
+ _proto.isClickOutsideAnchor = function isClickOutsideAnchor(event) {
424
+ return this.isClickOutside(event, this.getAnchorElement());
425
+ };
426
+
427
+ _proto.isClickOutside = function isClickOutside(event, target) {
428
+ if (target && event.target instanceof Element) {
429
+ return !containsTargetOrRenderContainer(event.target)(target);
410
430
  }
411
431
 
412
432
  return true;
@@ -420,7 +440,7 @@ export var Tooltip = responsiveLayout(_class = rootNode(_class = (_temp = _class
420
440
  warning(!(Array.isArray(children) && props.useWrapper === false), "[" + componentName + "]: you provided multiple children, but useWrapper={false} - forcing wrapper <span/> for positioning to work correctly");
421
441
  }
422
442
  }, _class2.defaultProps = {
423
- pos: 'top left',
443
+ pos: DefaultPosition,
424
444
  trigger: 'hover',
425
445
  allowedPositions: Positions,
426
446
  disableAnimations: isTestEnv,
@@ -1 +1 @@
1
- {"version":3,"sources":["Tooltip.tsx"],"names":["React","warning","isEqual","ThemeFactory","Popup","RenderLayer","CrossIcon","containsTargetOrRenderContainer","ThemeContext","isTestEnv","CommonWrapper","responsiveLayout","getRootNode","rootNode","styles","Positions","Tooltip","state","opened","focused","hoverTimeout","contentElement","positions","clickedOutside","renderContent","content","props","render","refContent","tooltipContent","theme","renderCloseButton","getRenderLayerAnchorElement","mobileCloseHandler","trigger","close","node","open","setState","handleMouseEnter","event","isHoverAnchor","target","clearHoverTimeout","window","setTimeout","delay","handleMouseLeave","isMobileLayout","relatedTarget","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","componentDidUpdate","prevProps","allowedPositions","pos","posChanged","allowedChanged","componentWillUnmount","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","setRootNode","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","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 { Popup, PopupPosition, PopupProps } 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 { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Tooltip.styles';\n\nconst Positions: PopupPosition[] = [\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\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 pos: PopupPosition;\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 * ```ts\n * type PopupPosition =\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 allowedPositions: PopupPosition[];\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\n@responsiveLayout\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n\n private isMobileLayout!: boolean;\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: 'top left',\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<PopupPosition[]> = 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 || this.isMobileLayout) {\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 if (this.isMobileLayout) {\n return popup;\n }\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 mobileOnCloseRequest={this.mobileCloseHandler}\n tryPreserveFirstRenderedPosition\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private mobileCloseHandler = () => {\n if (this.props.trigger === 'manual' || this.props.trigger === 'closed' || this.props.trigger === 'opened') {\n return;\n }\n\n this.close();\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\n switch (this.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 (this.isMobileLayout) {\n return;\n }\n\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":["React","warning","isEqual","isNullable","ThemeFactory","DefaultPosition","Popup","RenderLayer","CrossIcon","containsTargetOrRenderContainer","ThemeContext","isTestEnv","CommonWrapper","responsiveLayout","rootNode","styles","TooltipDataTids","root","content","Positions","Tooltip","state","opened","focused","hoverTimeout","contentElement","positions","clickedOutside","popupRef","createRef","renderContent","props","render","refContent","tooltipContent","theme","renderCloseButton","getAnchorElement","current","anchorElement","mobileCloseHandler","trigger","close","node","open","setState","handleMouseEnter","event","isHoverAnchor","target","clearHoverTimeout","window","setTimeout","delay","handleMouseLeave","isMobileLayout","relatedTarget","handleClick","handleClickOutside","isClickOutsideContent","isClickOutsideAnchor","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","componentDidUpdate","prevProps","allowedPositions","pos","posChanged","allowedChanged","componentWillUnmount","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","setRootNode","disableAnimations","getPositions","onOpen","onClose","index","indexOf","Error","join","slice","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onClick","onFocus","onBlur","clearTimeout","isClickOutside","Element","PureComponent","__KONTUR_REACT_UI__","propTypes","propName","componentName","Array","isArray","defaultProps","closeOnChildrenMouseLeave"],"mappings":"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","sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport isEqual from 'lodash.isequal';\n\nimport { isNullable } from '../../lib/utils';\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 { responsiveLayout } from '../ResponsiveLayout/decorator';\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\nexport const TooltipDataTids = {\n root: 'Tooltip__root',\n content: 'Tooltip__content',\n} as const;\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\n@responsiveLayout\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n\n private isMobileLayout!: boolean;\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 (isNullable(content)) {\n return null;\n }\n\n return (\n <div ref={this.refContent} className={styles.tooltipContent(this.theme)} data-tid={TooltipDataTids.content}>\n {content}\n {this.renderCloseButton()}\n </div>\n );\n };\n\n public renderCloseButton() {\n const hasCross =\n this.props.closeButton === undefined\n ? !Tooltip.triggersWithoutCloseButton.includes(this.props.trigger)\n : this.props.closeButton;\n\n if (!hasCross || this.isMobileLayout) {\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) {\n return;\n }\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 if (this.isMobileLayout) {\n return popup;\n }\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 data-tid={TooltipDataTids.root}\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 mobileOnCloseRequest={this.mobileCloseHandler}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private mobileCloseHandler = () => {\n if (this.props.trigger === 'manual' || this.props.trigger === 'closed' || this.props.trigger === 'opened') {\n return;\n }\n\n this.close();\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\n switch (this.props.trigger) {\n case 'opened':\n return {\n layerProps: {\n active: true,\n onClickOutside: this.handleClickOutside,\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.handleClickOutside,\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.handleClickOutside,\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: false });\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 (this.isMobileLayout) {\n return;\n }\n\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 handleClickOutside = (event: Event) => {\n this.clickedOutside = this.isClickOutsideContent(event) && this.isClickOutsideAnchor(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 return this.isClickOutside(event, this.contentElement);\n }\n\n private isClickOutsideAnchor(event: Event) {\n return this.isClickOutside(event, this.getAnchorElement());\n }\n\n private isClickOutside(event: Event, target: Nullable<HTMLElement>) {\n if (target && event.target instanceof Element) {\n return !containsTargetOrRenderContainer(event.target)(target);\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,7 +1,8 @@
1
1
  import React from 'react';
2
- import { PopupPosition } from '../../internal/Popup';
2
+ import { PopupPositionsType } from '../../internal/Popup';
3
3
  import { Nullable } from '../../typings/utility-types';
4
4
  import { CommonProps } from '../../internal/CommonWrapper';
5
+ import { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';
5
6
  export declare type TooltipTrigger =
6
7
  /** Наведение на children и на тултип */
7
8
  'hover'
@@ -41,7 +42,10 @@ export interface TooltipProps extends CommonProps {
41
42
  * Если эта функция вернула `null`, то тултип не показывается.
42
43
  */
43
44
  render?: Nullable<() => React.ReactNode>;
44
- pos: PopupPosition;
45
+ /**
46
+ * Значение по умолчанию: `"top left"`.
47
+ */
48
+ pos: PopupPositionsType;
45
49
  /**
46
50
  * Триггер открытия тултипа
47
51
  * ```ts
@@ -80,24 +84,8 @@ export interface TooltipProps extends CommonProps {
80
84
  * будет выходить за край экрана, то будет выбрана
81
85
  * следующая позиция. Обязательно должен включать
82
86
  * позицию указанную в `pos`
83
- *
84
- * ```ts
85
- * type PopupPosition =
86
- * 'right bottom',
87
- * | 'right middle',
88
- * | 'right top',
89
- * | 'top right',
90
- * | 'top center',
91
- * | 'top left',
92
- * | 'left top',
93
- * | 'left middle',
94
- * | 'left bottom',
95
- * | 'bottom left',
96
- * | 'bottom center',
97
- * | 'bottom right'
98
- * ```
99
87
  */
100
- allowedPositions: PopupPosition[];
88
+ allowedPositions: PopupPositionsType[];
101
89
  /**
102
90
  * Флаг отключения анимации.
103
91
  * @default false
@@ -114,16 +102,20 @@ export interface TooltipState {
114
102
  opened: boolean;
115
103
  focused: boolean;
116
104
  }
117
- export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipState> {
105
+ export declare const TooltipDataTids: {
106
+ readonly root: "Tooltip__root";
107
+ readonly content: "Tooltip__content";
108
+ };
109
+ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {
118
110
  static __KONTUR_REACT_UI__: string;
119
111
  private isMobileLayout;
120
112
  static propTypes: {
121
113
  children(props: TooltipProps, propName: keyof TooltipProps, componentName: string): void;
122
114
  };
123
115
  static defaultProps: {
124
- pos: string;
116
+ pos: "top left";
125
117
  trigger: string;
126
- allowedPositions: PopupPosition[];
118
+ 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")[];
127
119
  disableAnimations: boolean;
128
120
  useWrapper: boolean;
129
121
  closeOnChildrenMouseLeave: boolean;
@@ -137,11 +129,13 @@ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipSt
137
129
  private positions;
138
130
  private clickedOutside;
139
131
  private setRootNode;
132
+ private popupRef;
140
133
  componentDidUpdate(prevProps: TooltipProps): void;
141
134
  componentWillUnmount(): void;
142
135
  render(): JSX.Element;
143
136
  renderContent: () => JSX.Element | null;
144
137
  renderCloseButton(): JSX.Element | null;
138
+ getAnchorElement: () => Nullable<HTMLElement>;
145
139
  /**
146
140
  * Программно открывает тултип.
147
141
  * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>
@@ -155,7 +149,6 @@ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipSt
155
149
  */
156
150
  hide(): void;
157
151
  private renderMain;
158
- private getRenderLayerAnchorElement;
159
152
  private renderPopup;
160
153
  private mobileCloseHandler;
161
154
  private refContent;
@@ -167,8 +160,10 @@ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipSt
167
160
  private handleMouseEnter;
168
161
  private handleMouseLeave;
169
162
  private handleClick;
170
- private handleClickOutsideAnchor;
163
+ private handleClickOutside;
171
164
  private isClickOutsideContent;
165
+ private isClickOutsideAnchor;
166
+ private isClickOutside;
172
167
  private handleFocus;
173
168
  private handleBlur;
174
169
  private handleCloseButtonClick;
@@ -10,19 +10,22 @@ import { PopupMenu } from "../../../internal/PopupMenu";
10
10
  import { isProductionEnv, isTestEnv } from "../../../lib/currentEnvironment";
11
11
  import { CommonWrapper } from "../../../internal/CommonWrapper";
12
12
  import { rootNode } from "../../../lib/rootNode";
13
- export
13
+ export var TooltipMenuDataTids = {
14
+ root: 'TooltipMenu__root'
15
+ };
14
16
  /**
15
- * Меню, раскрывающееся по клику на переданный в `caption` элемент.
16
- *
17
- * Положение меню задаётся с помощью массива `positions` и работает так:
18
- * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,
19
- * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.
20
- *
21
- * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.
22
- *
23
- * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.
24
- */
25
- var TooltipMenu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
17
+ * Меню, раскрывающееся по клику на переданный в `caption` элемент.
18
+ *
19
+ * Положение меню задаётся с помощью массива `positions` и работает так:
20
+ * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,
21
+ * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.
22
+ *
23
+ * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.
24
+ *
25
+ * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.
26
+ */
27
+
28
+ export var TooltipMenu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
26
29
  _inheritsLoose(TooltipMenu, _React$Component);
27
30
 
28
31
  function TooltipMenu(props) {
@@ -61,12 +64,15 @@ var TooltipMenu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_R
61
64
  return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
62
65
  rootNodeRef: this.setRootNode
63
66
  }, this.props), /*#__PURE__*/React.createElement(PopupMenu, {
67
+ "data-tid": TooltipMenuDataTids.root,
64
68
  menuMaxHeight: this.props.menuMaxHeight,
65
69
  menuWidth: this.props.menuWidth,
66
70
  caption: this.props.caption,
67
71
  header: this.props.header,
68
72
  footer: this.props.footer,
69
73
  positions: this.props.positions,
74
+ onOpen: this.props.onOpen,
75
+ onClose: this.props.onClose,
70
76
  popupHasPin: true,
71
77
  disableAnimations: this.props.disableAnimations
72
78
  }, this.props.children));
@@ -1 +1 @@
1
- {"version":3,"sources":["TooltipMenu.tsx"],"names":["React","ThemeFactory","ThemeContext","PopupMenu","isProductionEnv","isTestEnv","CommonWrapper","rootNode","TooltipMenu","props","caption","Error","render","theme","create","popupPinOffset","tooltipMenuPinOffset","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","setRootNode","menuMaxHeight","menuWidth","header","footer","positions","disableAnimations","children","Component","__KONTUR_REACT_UI__","defaultProps"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,SAAT,QAA0C,0BAA1C;;AAEA,SAASC,eAAT,EAA0BC,SAA1B,QAA2C,8BAA3C;;;AAGA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,QAAT,QAAuC,oBAAvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDA,OAZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAEA,IAAaC,WAAb,GADCD,QACD,qHAOE,qBAAYE,KAAZ,EAAqC,WACnC,oCAAMA,KAAN,UAEA,IAAI,CAACA,KAAK,CAACC,OAAP,IAAkB,CAACN,eAAvB,EAAwC;AACtC,YAAM,IAAIO,KAAJ,CAAU,+BAAV,CAAN;AACD,KALkC;AAMpC,GAbH;;AAeSC,EAAAA,MAfT,GAeE,kBAAgB;AACd;AACE,0BAAC,YAAD,CAAc,QAAd;AACG,gBAACC,KAAD,EAAW;AACV;AACE,8BAAC,YAAD,CAAc,QAAd;AACE,YAAA,KAAK,EAAEZ,YAAY,CAACa,MAAb;AACL;AACEC,cAAAA,cAAc,EAAEF,KAAK,CAACG,oBADxB;AAEEC,cAAAA,WAAW,EAAEJ,KAAK,CAACK,iBAFrB;AAGEC,cAAAA,YAAY,EAAEN,KAAK,CAACO,kBAHtB,EADK;;AAMLP,YAAAA,KANK,CADT;;;AAUG,UAAA,MAAI,CAACQ,UAAL,EAVH,CADF;;;AAcD,OAhBH,CADF;;;AAoBD,GApCH;;AAsCSA,EAAAA,UAtCT,GAsCE,sBAAoB;AAClB,QAAI,CAAC,KAAKZ,KAAL,CAAWC,OAAhB,EAAyB;AACvB,aAAO,IAAP;AACD;;AAED;AACE,0BAAC,aAAD,aAAe,WAAW,EAAE,KAAKY,WAAjC,IAAkD,KAAKb,KAAvD;AACE,0BAAC,SAAD;AACE,QAAA,aAAa,EAAE,KAAKA,KAAL,CAAWc,aAD5B;AAEE,QAAA,SAAS,EAAE,KAAKd,KAAL,CAAWe,SAFxB;AAGE,QAAA,OAAO,EAAE,KAAKf,KAAL,CAAWC,OAHtB;AAIE,QAAA,MAAM,EAAE,KAAKD,KAAL,CAAWgB,MAJrB;AAKE,QAAA,MAAM,EAAE,KAAKhB,KAAL,CAAWiB,MALrB;AAME,QAAA,SAAS,EAAE,KAAKjB,KAAL,CAAWkB,SANxB;AAOE,QAAA,WAAW,EAAE,IAPf;AAQE,QAAA,iBAAiB,EAAE,KAAKlB,KAAL,CAAWmB,iBARhC;;AAUG,WAAKnB,KAAL,CAAWoB,QAVd,CADF,CADF;;;;AAgBD,GA3DH,sBAAiC7B,KAAK,CAAC8B,SAAvC,WACgBC,mBADhB,GACsC,aADtC,UAIgBC,YAJhB,GAI+B,EAC3BJ,iBAAiB,EAAEvB,SADQ,EAJ/B","sourcesContent":["import React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { PopupMenu, PopupMenuProps } from '../../internal/PopupMenu';\nimport { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport { MenuHeaderProps } from '../MenuHeader';\nimport { PopupPosition } from '../../internal/Popup';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | {} | MenuHeaderProps>;\n\nexport interface TooltipMenuProps extends CommonProps {\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [`MenuHeader`](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [`MenuSeparator`](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /** Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n */\n positions?: PopupPosition[];\n /**\n * Не показывать анимацию\n */\n disableAnimations: boolean;\n}\n\n/**\n * Меню, раскрывающееся по клику на переданный в `caption` элемент.\n *\n * Положение меню задаётся с помощью массива `positions` и работает так:\n * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,\n * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.\n *\n * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.\n *\n * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.\n */\n@rootNode\nexport class TooltipMenu extends React.Component<TooltipMenuProps> {\n public static __KONTUR_REACT_UI__ = 'TooltipMenu';\n private setRootNode!: TSetRootNode;\n\n public static defaultProps = {\n disableAnimations: isTestEnv,\n };\n constructor(props: TooltipMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.tooltipMenuPinOffset,\n popupMargin: theme.tooltipMenuMargin,\n popupPinSize: theme.tooltipMenuPinSize,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n caption={this.props.caption}\n header={this.props.header}\n footer={this.props.footer}\n positions={this.props.positions}\n popupHasPin={true}\n disableAnimations={this.props.disableAnimations}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["TooltipMenu.tsx"],"names":["React","ThemeFactory","ThemeContext","PopupMenu","isProductionEnv","isTestEnv","CommonWrapper","rootNode","TooltipMenuDataTids","root","TooltipMenu","props","caption","Error","render","theme","create","popupPinOffset","tooltipMenuPinOffset","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","setRootNode","menuMaxHeight","menuWidth","header","footer","positions","onOpen","onClose","disableAnimations","children","Component","__KONTUR_REACT_UI__","defaultProps"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,SAAT,QAA0C,0BAA1C;;AAEA,SAASC,eAAT,EAA0BC,SAA1B,QAA2C,8BAA3C;;;AAGA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,QAAT,QAAuC,oBAAvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,OAAO,IAAMC,mBAAmB,GAAG;AACjCC,EAAAA,IAAI,EAAE,mBAD2B,EAA5B;;;AAIP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAaC,WAAb,GADCH,QACD;;;;;;;AAOE,uBAAYI,KAAZ,EAAqC;AACnC,wCAAMA,KAAN;;AAEA,QAAI,CAACA,KAAK,CAACC,OAAP,IAAkB,CAACR,eAAvB,EAAwC;AACtC,YAAM,IAAIS,KAAJ,CAAU,+BAAV,CAAN;AACD,KALkC;AAMpC,GAbH;;AAeSC,EAAAA,MAfT,GAeE,kBAAgB;AACd;AACE,0BAAC,YAAD,CAAc,QAAd;AACG,gBAACC,KAAD,EAAW;AACV;AACE,8BAAC,YAAD,CAAc,QAAd;AACE,YAAA,KAAK,EAAEd,YAAY,CAACe,MAAb;AACL;AACEC,cAAAA,cAAc,EAAEF,KAAK,CAACG,oBADxB;AAEEC,cAAAA,WAAW,EAAEJ,KAAK,CAACK,iBAFrB;AAGEC,cAAAA,YAAY,EAAEN,KAAK,CAACO,kBAHtB,EADK;;AAMLP,YAAAA,KANK,CADT;;;AAUG,UAAA,MAAI,CAACQ,UAAL,EAVH,CADF;;;AAcD,OAhBH,CADF;;;AAoBD,GApCH;;AAsCSA,EAAAA,UAtCT,GAsCE,sBAAoB;AAClB,QAAI,CAAC,KAAKZ,KAAL,CAAWC,OAAhB,EAAyB;AACvB,aAAO,IAAP;AACD;;AAED;AACE,0BAAC,aAAD,aAAe,WAAW,EAAE,KAAKY,WAAjC,IAAkD,KAAKb,KAAvD;AACE,0BAAC,SAAD;AACE,oBAAUH,mBAAmB,CAACC,IADhC;AAEE,QAAA,aAAa,EAAE,KAAKE,KAAL,CAAWc,aAF5B;AAGE,QAAA,SAAS,EAAE,KAAKd,KAAL,CAAWe,SAHxB;AAIE,QAAA,OAAO,EAAE,KAAKf,KAAL,CAAWC,OAJtB;AAKE,QAAA,MAAM,EAAE,KAAKD,KAAL,CAAWgB,MALrB;AAME,QAAA,MAAM,EAAE,KAAKhB,KAAL,CAAWiB,MANrB;AAOE,QAAA,SAAS,EAAE,KAAKjB,KAAL,CAAWkB,SAPxB;AAQE,QAAA,MAAM,EAAE,KAAKlB,KAAL,CAAWmB,MARrB;AASE,QAAA,OAAO,EAAE,KAAKnB,KAAL,CAAWoB,OATtB;AAUE,QAAA,WAAW,MAVb;AAWE,QAAA,iBAAiB,EAAE,KAAKpB,KAAL,CAAWqB,iBAXhC;;AAaG,WAAKrB,KAAL,CAAWsB,QAbd,CADF,CADF;;;;AAmBD,GA9DH,sBAAiCjC,KAAK,CAACkC,SAAvC,WACgBC,mBADhB,GACsC,aADtC,UAIgBC,YAJhB,GAI+B,EAC3BJ,iBAAiB,EAAE3B,SADQ,EAJ/B","sourcesContent":["import React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { PopupMenu, PopupMenuProps } from '../../internal/PopupMenu';\nimport { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport { MenuHeaderProps } from '../MenuHeader';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | {} | MenuHeaderProps>;\n\nexport interface TooltipMenuProps extends CommonProps, Pick<PopupMenuProps, 'onOpen' | 'onClose'> {\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [`MenuHeader`](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [`MenuSeparator`](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /** Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n */\n positions?: PopupPositionsType[];\n /**\n * Не показывать анимацию\n */\n disableAnimations: boolean;\n}\n\nexport const TooltipMenuDataTids = {\n root: 'TooltipMenu__root',\n} as const;\n\n/**\n * Меню, раскрывающееся по клику на переданный в `caption` элемент.\n *\n * Положение меню задаётся с помощью массива `positions` и работает так:\n * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,\n * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.\n *\n * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.\n *\n * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.\n */\n@rootNode\nexport class TooltipMenu extends React.Component<TooltipMenuProps> {\n public static __KONTUR_REACT_UI__ = 'TooltipMenu';\n private setRootNode!: TSetRootNode;\n\n public static defaultProps = {\n disableAnimations: isTestEnv,\n };\n constructor(props: TooltipMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.tooltipMenuPinOffset,\n popupMargin: theme.tooltipMenuMargin,\n popupPinSize: theme.tooltipMenuPinSize,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n data-tid={TooltipMenuDataTids.root}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n caption={this.props.caption}\n header={this.props.header}\n footer={this.props.footer}\n positions={this.props.positions}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n popupHasPin\n disableAnimations={this.props.disableAnimations}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n}\n"]}
@@ -2,10 +2,10 @@ import React from 'react';
2
2
  import { PopupMenuProps } from '../../internal/PopupMenu';
3
3
  import { MenuItemProps } from '../MenuItem';
4
4
  import { MenuHeaderProps } from '../MenuHeader';
5
- import { PopupPosition } from '../../internal/Popup';
5
+ import { PopupPositionsType } from '../../internal/Popup';
6
6
  import { CommonProps } from '../../internal/CommonWrapper';
7
7
  export declare type TooltipMenuChildType = React.ReactElement<MenuItemProps | {} | MenuHeaderProps>;
8
- export interface TooltipMenuProps extends CommonProps {
8
+ export interface TooltipMenuProps extends CommonProps, Pick<PopupMenuProps, 'onOpen' | 'onClose'> {
9
9
  children?: TooltipMenuChildType | TooltipMenuChildType[];
10
10
  /** Максимальная высота меню */
11
11
  menuMaxHeight?: number | string;
@@ -36,12 +36,15 @@ export interface TooltipMenuProps extends CommonProps {
36
36
  *
37
37
  * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`
38
38
  */
39
- positions?: PopupPosition[];
39
+ positions?: PopupPositionsType[];
40
40
  /**
41
41
  * Не показывать анимацию
42
42
  */
43
43
  disableAnimations: boolean;
44
44
  }
45
+ export declare const TooltipMenuDataTids: {
46
+ readonly root: "TooltipMenu__root";
47
+ };
45
48
  /**
46
49
  * Меню, раскрывающееся по клику на переданный в `caption` элемент.
47
50
  *
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../cjs/hooks/useDrop.js",
3
+ "module": "useDrop",
4
+ "types": "../useDrop.d.ts",
5
+ "sideEffects": false
6
+ }