@skbkontur/react-ui 0.0.0-7b63c63db3 → 0.0.0-7feb61cdde

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 (2098) hide show
  1. package/CHANGELOG.md +424 -0
  2. package/README.md +29 -25
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +13 -18
  4. package/cjs/components/Autocomplete/Autocomplete.js +44 -10
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Autocomplete/Autocomplete.md +15 -1
  7. package/cjs/components/Autocomplete/getAutocompleteTheme.d.ts +2 -0
  8. package/cjs/components/Autocomplete/getAutocompleteTheme.js +11 -0
  9. package/cjs/components/Autocomplete/getAutocompleteTheme.js.map +1 -0
  10. package/cjs/components/Autocomplete/locale/index.d.ts +4 -0
  11. package/cjs/components/Autocomplete/locale/index.js +11 -0
  12. package/cjs/components/Autocomplete/locale/index.js.map +1 -0
  13. package/cjs/components/Autocomplete/locale/locales/en.d.ts +2 -0
  14. package/cjs/components/Autocomplete/locale/locales/en.js +6 -0
  15. package/cjs/components/Autocomplete/locale/locales/en.js.map +1 -0
  16. package/cjs/components/Autocomplete/locale/locales/ru.d.ts +2 -0
  17. package/cjs/components/Autocomplete/locale/locales/ru.js +6 -0
  18. package/cjs/components/Autocomplete/locale/locales/ru.js.map +1 -0
  19. package/cjs/components/Autocomplete/locale/types.d.ts +5 -0
  20. package/cjs/components/Autocomplete/locale/types.js +1 -0
  21. package/cjs/components/Autocomplete/locale/types.js.map +1 -0
  22. package/cjs/components/Button/ArrowLeftIcon.d.ts +3 -0
  23. package/cjs/components/Button/ArrowLeftIcon.js +15 -0
  24. package/cjs/components/Button/ArrowLeftIcon.js.map +1 -0
  25. package/cjs/components/Button/ArrowRightIcon.d.ts +3 -0
  26. package/cjs/components/Button/ArrowRightIcon.js +15 -0
  27. package/cjs/components/Button/ArrowRightIcon.js.map +1 -0
  28. package/cjs/components/Button/Button.d.ts +15 -11
  29. package/cjs/components/Button/Button.js +83 -5
  30. package/cjs/components/Button/Button.js.map +1 -1
  31. package/cjs/components/Button/Button.md +42 -8
  32. package/cjs/components/Button/Button.mixins.js +15 -6
  33. package/cjs/components/Button/Button.mixins.js.map +1 -1
  34. package/cjs/components/Button/Button.styles.d.ts +31 -1
  35. package/cjs/components/Button/Button.styles.js +346 -69
  36. package/cjs/components/Button/Button.styles.js.map +1 -1
  37. package/cjs/components/Button/ButtonArrow.d.ts +8 -0
  38. package/cjs/components/Button/ButtonArrow.js +100 -0
  39. package/cjs/components/Button/ButtonArrow.js.map +1 -0
  40. package/cjs/components/Button/ButtonIcon.d.ts +9 -0
  41. package/cjs/components/Button/ButtonIcon.js +74 -0
  42. package/cjs/components/Button/ButtonIcon.js.map +1 -0
  43. package/cjs/components/Button/getInnerLinkTheme.d.ts +2 -0
  44. package/cjs/components/Button/getInnerLinkTheme.js +16 -0
  45. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -0
  46. package/cjs/components/Calendar/Calendar.d.ts +104 -0
  47. package/cjs/components/Calendar/Calendar.js +475 -0
  48. package/cjs/components/Calendar/Calendar.js.map +1 -0
  49. package/cjs/components/Calendar/Calendar.md +147 -0
  50. package/cjs/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
  51. package/cjs/components/Calendar/Calendar.styles.js +33 -0
  52. package/cjs/components/Calendar/Calendar.styles.js.map +1 -0
  53. package/{internal → cjs/components}/Calendar/CalendarUtils.d.ts +19 -2
  54. package/cjs/components/Calendar/CalendarUtils.js +117 -0
  55. package/cjs/components/Calendar/CalendarUtils.js.map +1 -0
  56. package/cjs/{internal → components}/Calendar/DayCellView.js +13 -2
  57. package/cjs/components/Calendar/DayCellView.js.map +1 -0
  58. package/cjs/{internal → components}/Calendar/DayCellView.styles.d.ts +5 -0
  59. package/cjs/{internal → components}/Calendar/DayCellView.styles.js +21 -3
  60. package/cjs/components/Calendar/DayCellView.styles.js.map +1 -0
  61. package/cjs/{internal → components}/Calendar/Month.js +16 -11
  62. package/cjs/components/Calendar/Month.js.map +1 -0
  63. package/cjs/{internal → components}/Calendar/MonthView.d.ts +1 -1
  64. package/cjs/{internal → components}/Calendar/MonthView.js +1 -1
  65. package/cjs/{internal → components}/Calendar/MonthView.js.map +1 -1
  66. package/cjs/{internal → components}/Calendar/MonthViewModel.d.ts +1 -1
  67. package/cjs/components/Calendar/config.d.ts +2 -0
  68. package/cjs/components/Calendar/locale/index.d.ts +4 -0
  69. package/cjs/components/Calendar/locale/index.js +11 -0
  70. package/cjs/components/Calendar/locale/index.js.map +1 -0
  71. package/cjs/components/Calendar/locale/locales/en.d.ts +2 -0
  72. package/cjs/components/Calendar/locale/locales/en.js +16 -0
  73. package/cjs/components/Calendar/locale/locales/en.js.map +1 -0
  74. package/cjs/components/Calendar/locale/locales/ru.d.ts +2 -0
  75. package/cjs/components/Calendar/locale/locales/ru.js +16 -0
  76. package/cjs/components/Calendar/locale/locales/ru.js.map +1 -0
  77. package/cjs/components/Calendar/locale/types.d.ts +3 -0
  78. package/cjs/components/Calendar/locale/types.js +1 -0
  79. package/cjs/components/Calendar/locale/types.js.map +1 -0
  80. package/cjs/components/Center/Center.d.ts +4 -3
  81. package/cjs/components/Center/Center.js +9 -3
  82. package/cjs/components/Center/Center.js.map +1 -1
  83. package/cjs/components/Checkbox/Checkbox.d.ts +5 -1
  84. package/cjs/components/Checkbox/Checkbox.js +45 -17
  85. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  86. package/cjs/components/Checkbox/Checkbox.md +49 -1
  87. package/cjs/components/Checkbox/Checkbox.styles.d.ts +2 -1
  88. package/cjs/components/Checkbox/Checkbox.styles.js +10 -6
  89. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  90. package/cjs/components/Checkbox/CheckedIcon.d.ts +3 -0
  91. package/cjs/components/Checkbox/CheckedIcon.js +14 -0
  92. package/cjs/components/Checkbox/CheckedIcon.js.map +1 -0
  93. package/cjs/components/Checkbox/IndeterminateIcon.d.ts +3 -0
  94. package/cjs/components/Checkbox/IndeterminateIcon.js +13 -0
  95. package/cjs/components/Checkbox/IndeterminateIcon.js.map +1 -0
  96. package/cjs/components/ComboBox/ComboBox.d.ts +30 -15
  97. package/cjs/components/ComboBox/ComboBox.js +34 -2
  98. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  99. package/cjs/components/ComboBox/ComboBox.md +84 -1
  100. package/cjs/components/CurrencyInput/CurrencyHelper.js +1 -1
  101. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  102. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +7 -10
  103. package/cjs/components/CurrencyInput/CurrencyInput.js +42 -11
  104. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  105. package/cjs/components/CurrencyInput/CurrencyInput.md +13 -0
  106. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
  107. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js +14 -2
  108. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
  109. package/cjs/components/CurrencyInput/constants.d.ts +3 -0
  110. package/cjs/components/CurrencyInput/constants.js +6 -2
  111. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  112. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +5 -9
  113. package/cjs/components/CurrencyLabel/CurrencyLabel.js +18 -15
  114. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  115. package/cjs/components/CurrencyLabel/CurrencyLabel.md +6 -0
  116. package/cjs/components/DateInput/CalendarIcon.d.ts +3 -0
  117. package/cjs/components/DateInput/CalendarIcon.js +15 -0
  118. package/cjs/components/DateInput/CalendarIcon.js.map +1 -0
  119. package/cjs/components/DateInput/DateFragmentsView.d.ts +1 -1
  120. package/cjs/components/DateInput/DateFragmentsView.js +10 -1
  121. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  122. package/cjs/components/DateInput/DateInput.d.ts +9 -12
  123. package/cjs/components/DateInput/DateInput.js +15 -8
  124. package/cjs/components/DateInput/DateInput.js.map +1 -1
  125. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -2
  126. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
  127. package/cjs/components/DateInput/helpers/SelectionHelpers.js +2 -2
  128. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  129. package/cjs/components/DatePicker/DatePicker.d.ts +25 -27
  130. package/cjs/components/DatePicker/DatePicker.js +130 -57
  131. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  132. package/cjs/components/DatePicker/DatePicker.md +18 -0
  133. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -0
  134. package/cjs/components/DatePicker/DatePicker.styles.js +36 -1
  135. package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
  136. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +1 -1
  137. package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
  138. package/cjs/components/DatePicker/Picker.d.ts +8 -9
  139. package/cjs/components/DatePicker/Picker.js +52 -38
  140. package/cjs/components/DatePicker/Picker.js.map +1 -1
  141. package/cjs/components/DatePicker/locale/locales/en.js +3 -15
  142. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  143. package/cjs/components/DatePicker/locale/locales/ru.js +3 -15
  144. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  145. package/cjs/components/DatePicker/locale/types.d.ts +2 -2
  146. package/cjs/components/Dropdown/Dropdown.d.ts +8 -2
  147. package/cjs/components/Dropdown/Dropdown.js +22 -4
  148. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  149. package/cjs/components/Dropdown/getDropdownTheme.d.ts +2 -0
  150. package/cjs/components/Dropdown/getDropdownTheme.js +12 -0
  151. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -0
  152. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +8 -8
  153. package/cjs/components/DropdownMenu/DropdownMenu.js +9 -12
  154. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  155. package/cjs/components/DropdownMenu/DropdownMenu.md +68 -1
  156. package/cjs/components/DropdownMenu/getDropdownMenuTheme.d.ts +2 -0
  157. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js +11 -0
  158. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -0
  159. package/cjs/components/FileUploader/FileUploader.d.ts +12 -2
  160. package/cjs/components/FileUploader/FileUploader.js +111 -34
  161. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  162. package/cjs/components/FileUploader/FileUploader.md +13 -1
  163. package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -0
  164. package/cjs/components/FileUploader/FileUploader.mixins.js +10 -0
  165. package/cjs/components/FileUploader/FileUploader.mixins.js.map +1 -0
  166. package/cjs/components/FileUploader/FileUploader.styles.d.ts +18 -2
  167. package/cjs/components/FileUploader/FileUploader.styles.js +166 -36
  168. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  169. package/cjs/components/FileUploader/UploadIcon.d.ts +3 -0
  170. package/cjs/components/FileUploader/UploadIcon.js +15 -0
  171. package/cjs/components/FileUploader/UploadIcon.js.map +1 -0
  172. package/cjs/components/FxInput/FxInput.d.ts +7 -6
  173. package/cjs/components/FxInput/FxInput.js +53 -21
  174. package/cjs/components/FxInput/FxInput.js.map +1 -1
  175. package/cjs/components/FxInput/FxInput.md +13 -0
  176. package/cjs/components/FxInput/FxInputRestoreBtn.d.ts +5 -0
  177. package/cjs/components/FxInput/FxInputRestoreBtn.js +75 -0
  178. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -0
  179. package/cjs/components/FxInput/MathFunctionIcon.d.ts +3 -0
  180. package/cjs/components/FxInput/MathFunctionIcon.js +15 -0
  181. package/cjs/components/FxInput/MathFunctionIcon.js.map +1 -0
  182. package/cjs/components/FxInput/UndoIcon.d.ts +3 -0
  183. package/cjs/components/FxInput/UndoIcon.js +15 -0
  184. package/cjs/components/FxInput/UndoIcon.js.map +1 -0
  185. package/cjs/components/Gapped/Gapped.d.ts +7 -8
  186. package/cjs/components/Gapped/Gapped.js +12 -6
  187. package/cjs/components/Gapped/Gapped.js.map +1 -1
  188. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +7 -14
  189. package/cjs/components/GlobalLoader/GlobalLoader.js +13 -9
  190. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  191. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
  192. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  193. package/cjs/components/Group/Group.d.ts +3 -0
  194. package/cjs/components/Group/Group.js +35 -16
  195. package/cjs/components/Group/Group.js.map +1 -1
  196. package/cjs/components/Hint/Hint.d.ts +9 -15
  197. package/cjs/components/Hint/Hint.js +14 -25
  198. package/cjs/components/Hint/Hint.js.map +1 -1
  199. package/cjs/components/Hint/Hint.md +43 -0
  200. package/cjs/components/Hint/Hint.styles.d.ts +0 -1
  201. package/cjs/components/Hint/Hint.styles.js +2 -10
  202. package/cjs/components/Hint/Hint.styles.js.map +1 -1
  203. package/cjs/components/Input/Input.d.ts +30 -9
  204. package/cjs/components/Input/Input.js +128 -18
  205. package/cjs/components/Input/Input.js.map +1 -1
  206. package/cjs/components/Input/Input.md +66 -1
  207. package/cjs/components/Input/Input.styles.d.ts +2 -0
  208. package/cjs/components/Input/Input.styles.js +58 -41
  209. package/cjs/components/Input/Input.styles.js.map +1 -1
  210. package/cjs/components/Input/InputLayout/InputLayout.d.ts +10 -0
  211. package/cjs/components/Input/InputLayout/InputLayout.js +32 -0
  212. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -0
  213. package/cjs/components/Input/InputLayout/InputLayout.styles.d.ts +11 -0
  214. package/cjs/components/Input/InputLayout/InputLayout.styles.js +49 -0
  215. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -0
  216. package/cjs/components/Input/InputLayout/InputLayoutAside.d.ts +8 -0
  217. package/cjs/components/Input/InputLayout/InputLayoutAside.js +30 -0
  218. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -0
  219. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.d.ts +7 -0
  220. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +60 -0
  221. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -0
  222. package/cjs/components/Input/InputLayout/InputLayoutAsideText.d.ts +6 -0
  223. package/cjs/components/Input/InputLayout/InputLayoutAsideText.js +27 -0
  224. package/cjs/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -0
  225. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +9 -0
  226. package/cjs/components/Input/InputLayout/InputLayoutContext.js +17 -0
  227. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -0
  228. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.d.ts +10 -0
  229. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +46 -0
  230. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +1 -0
  231. package/cjs/components/Kebab/Kebab.d.ts +18 -17
  232. package/cjs/components/Kebab/Kebab.js +64 -19
  233. package/cjs/components/Kebab/Kebab.js.map +1 -1
  234. package/cjs/components/Kebab/Kebab.styles.d.ts +8 -4
  235. package/cjs/components/Kebab/Kebab.styles.js +52 -21
  236. package/cjs/components/Kebab/Kebab.styles.js.map +1 -1
  237. package/cjs/components/Kebab/KebabIcon.d.ts +3 -0
  238. package/cjs/components/Kebab/KebabIcon.js +15 -0
  239. package/cjs/components/Kebab/KebabIcon.js.map +1 -0
  240. package/cjs/components/Link/Link.d.ts +25 -11
  241. package/cjs/components/Link/Link.js +91 -29
  242. package/cjs/components/Link/Link.js.map +1 -1
  243. package/cjs/components/Link/Link.md +11 -0
  244. package/cjs/components/Link/Link.mixins.d.ts +2 -0
  245. package/cjs/components/Link/Link.mixins.js +20 -2
  246. package/cjs/components/Link/Link.mixins.js.map +1 -1
  247. package/cjs/components/Link/Link.styles.d.ts +9 -0
  248. package/cjs/components/Link/Link.styles.js +99 -17
  249. package/cjs/components/Link/Link.styles.js.map +1 -1
  250. package/cjs/components/Loader/Loader.d.ts +24 -11
  251. package/cjs/components/Loader/Loader.js +26 -8
  252. package/cjs/components/Loader/Loader.js.map +1 -1
  253. package/cjs/components/Loader/Loader.md +30 -23
  254. package/cjs/components/Loader/Loader.styles.js +2 -1
  255. package/cjs/components/Loader/Loader.styles.js.map +1 -1
  256. package/cjs/components/Loader/__stories__/LoaderAndButton.js +6 -0
  257. package/cjs/components/Loader/__stories__/LoaderAndButton.js.map +1 -1
  258. package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -1
  259. package/cjs/components/MenuHeader/MenuHeader.js +1 -1
  260. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  261. package/cjs/components/MenuItem/MenuItem.d.ts +20 -4
  262. package/cjs/components/MenuItem/MenuItem.js +75 -28
  263. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  264. package/cjs/components/MenuItem/MenuItem.styles.d.ts +5 -0
  265. package/cjs/components/MenuItem/MenuItem.styles.js +42 -17
  266. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  267. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +1 -1
  268. package/cjs/components/MenuSeparator/MenuSeparator.js +13 -2
  269. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  270. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -0
  271. package/cjs/components/MenuSeparator/MenuSeparator.styles.js +10 -3
  272. package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
  273. package/cjs/components/Modal/Modal.d.ts +6 -5
  274. package/cjs/components/Modal/Modal.js +25 -6
  275. package/cjs/components/Modal/Modal.js.map +1 -1
  276. package/cjs/components/Modal/Modal.styles.d.ts +6 -5
  277. package/cjs/components/Modal/Modal.styles.js +55 -43
  278. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  279. package/cjs/components/Modal/ModalBody.js +5 -6
  280. package/cjs/components/Modal/ModalBody.js.map +1 -1
  281. package/cjs/components/Modal/ModalClose.js +6 -2
  282. package/cjs/components/Modal/ModalClose.js.map +1 -1
  283. package/cjs/components/Modal/ModalFooter.d.ts +14 -0
  284. package/cjs/components/Modal/ModalFooter.js +38 -16
  285. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  286. package/cjs/components/Modal/ModalHeader.js +20 -19
  287. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  288. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  289. package/cjs/components/Modal/ModalSeparator.js +21 -0
  290. package/cjs/components/Modal/ModalSeparator.js.map +1 -0
  291. package/cjs/components/Modal/getModalBodyTheme.d.ts +2 -0
  292. package/cjs/components/Modal/getModalBodyTheme.js +11 -0
  293. package/cjs/components/Modal/getModalBodyTheme.js.map +1 -0
  294. package/cjs/components/Modal/getModalTheme.d.ts +2 -0
  295. package/cjs/components/Modal/getModalTheme.js +11 -0
  296. package/cjs/components/Modal/getModalTheme.js.map +1 -0
  297. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  298. package/cjs/components/Paging/ForwardIcon.js +15 -0
  299. package/cjs/components/Paging/ForwardIcon.js.map +1 -0
  300. package/cjs/components/Paging/Paging.d.ts +7 -10
  301. package/cjs/components/Paging/Paging.js +53 -23
  302. package/cjs/components/Paging/Paging.js.map +1 -1
  303. package/cjs/components/Paging/Paging.md +13 -0
  304. package/cjs/components/Paging/Paging.styles.d.ts +6 -2
  305. package/cjs/components/Paging/Paging.styles.js +43 -16
  306. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  307. package/cjs/components/Paging/PagingDefaultComponent.d.ts +3 -3
  308. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
  309. package/cjs/components/PasswordInput/ClosedIcon.d.ts +3 -0
  310. package/cjs/components/PasswordInput/ClosedIcon.js +15 -0
  311. package/cjs/components/PasswordInput/ClosedIcon.js.map +1 -0
  312. package/cjs/components/PasswordInput/OpenedIcon.d.ts +3 -0
  313. package/cjs/components/PasswordInput/OpenedIcon.js +15 -0
  314. package/cjs/components/PasswordInput/OpenedIcon.js.map +1 -0
  315. package/cjs/components/PasswordInput/PasswordInput.d.ts +4 -3
  316. package/cjs/components/PasswordInput/PasswordInput.js +24 -12
  317. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  318. package/cjs/components/PasswordInput/PasswordInputIcon.d.ts +5 -3
  319. package/cjs/components/PasswordInput/PasswordInputIcon.js +8 -3
  320. package/cjs/components/PasswordInput/PasswordInputIcon.js.map +1 -1
  321. package/cjs/components/Radio/Radio.d.ts +4 -3
  322. package/cjs/components/Radio/Radio.js +11 -4
  323. package/cjs/components/Radio/Radio.js.map +1 -1
  324. package/cjs/components/Radio/Radio.styles.js +1 -1
  325. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  326. package/cjs/components/RadioGroup/RadioGroup.d.ts +7 -19
  327. package/cjs/components/RadioGroup/RadioGroup.js +19 -20
  328. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  329. package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +6 -5
  330. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +5 -9
  331. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  332. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +31 -0
  333. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +16 -13
  334. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  335. package/cjs/components/ResponsiveLayout/decorator.d.ts +1 -1
  336. package/cjs/components/ResponsiveLayout/types.d.ts +9 -1
  337. package/cjs/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
  338. package/cjs/components/ResponsiveLayout/useResponsiveLayout.js +31 -15
  339. package/cjs/components/ResponsiveLayout/useResponsiveLayout.js.map +1 -1
  340. package/cjs/components/ScrollContainer/ScrollBar.d.ts +12 -2
  341. package/cjs/components/ScrollContainer/ScrollBar.js +67 -10
  342. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  343. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +3 -2
  344. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  345. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +30 -8
  346. package/cjs/components/ScrollContainer/ScrollContainer.helpers.js +8 -4
  347. package/cjs/components/ScrollContainer/ScrollContainer.helpers.js.map +1 -1
  348. package/cjs/components/ScrollContainer/ScrollContainer.js +64 -11
  349. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  350. package/cjs/components/ScrollContainer/ScrollContainer.md +52 -0
  351. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +9 -0
  352. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +48 -21
  353. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  354. package/cjs/components/Select/ArrowDownIcon.d.ts +3 -0
  355. package/cjs/components/Select/ArrowDownIcon.js +15 -0
  356. package/cjs/components/Select/ArrowDownIcon.js.map +1 -0
  357. package/cjs/components/Select/Item.d.ts +4 -2
  358. package/cjs/components/Select/Item.js +3 -0
  359. package/cjs/components/Select/Item.js.map +1 -1
  360. package/cjs/components/Select/Select.d.ts +13 -38
  361. package/cjs/components/Select/Select.js +30 -22
  362. package/cjs/components/Select/Select.js.map +1 -1
  363. package/cjs/components/Select/Select.md +14 -0
  364. package/cjs/components/Select/Select.styles.js +4 -4
  365. package/cjs/components/Select/Select.styles.js.map +1 -1
  366. package/cjs/components/Select/selectTheme.js +2 -0
  367. package/cjs/components/Select/selectTheme.js.map +1 -1
  368. package/cjs/components/SidePage/SidePage.d.ts +11 -8
  369. package/cjs/components/SidePage/SidePage.js +19 -1
  370. package/cjs/components/SidePage/SidePage.js.map +1 -1
  371. package/cjs/components/SidePage/SidePage.styles.js +3 -2
  372. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  373. package/cjs/components/SidePage/SidePageFooter.d.ts +15 -5
  374. package/cjs/components/SidePage/SidePageFooter.js +28 -1
  375. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  376. package/cjs/components/SidePage/SidePageHeader.d.ts +4 -1
  377. package/cjs/components/SidePage/SidePageHeader.js +21 -2
  378. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  379. package/cjs/components/Spinner/Spinner.d.ts +19 -8
  380. package/cjs/components/Spinner/Spinner.js +21 -10
  381. package/cjs/components/Spinner/Spinner.js.map +1 -1
  382. package/cjs/components/Spinner/Spinner.md +1 -1
  383. package/cjs/components/Spinner/Spinner.styles.d.ts +4 -1
  384. package/cjs/components/Spinner/Spinner.styles.js +36 -12
  385. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  386. package/cjs/components/Sticky/Sticky.d.ts +7 -6
  387. package/cjs/components/Sticky/Sticky.js +10 -3
  388. package/cjs/components/Sticky/Sticky.js.map +1 -1
  389. package/cjs/components/Switcher/Switcher.d.ts +16 -5
  390. package/cjs/components/Switcher/Switcher.js +79 -35
  391. package/cjs/components/Switcher/Switcher.js.map +1 -1
  392. package/cjs/components/Switcher/Switcher.md +97 -0
  393. package/cjs/components/Switcher/helpers.d.ts +1 -0
  394. package/cjs/components/Switcher/helpers.js +1 -0
  395. package/cjs/components/Switcher/helpers.js.map +1 -0
  396. package/cjs/components/Tabs/Indicator.d.ts +1 -1
  397. package/cjs/components/Tabs/Indicator.js +1 -1
  398. package/cjs/components/Tabs/Indicator.js.map +1 -1
  399. package/cjs/components/Tabs/Indicator.styles.js +3 -2
  400. package/cjs/components/Tabs/Indicator.styles.js.map +1 -1
  401. package/cjs/components/Tabs/Tab.d.ts +9 -13
  402. package/cjs/components/Tabs/Tab.js +14 -19
  403. package/cjs/components/Tabs/Tab.js.map +1 -1
  404. package/cjs/components/Tabs/Tabs.d.ts +9 -13
  405. package/cjs/components/Tabs/Tabs.js +17 -10
  406. package/cjs/components/Tabs/Tabs.js.map +1 -1
  407. package/cjs/components/Textarea/Textarea.d.ts +9 -10
  408. package/cjs/components/Textarea/Textarea.js +15 -7
  409. package/cjs/components/Textarea/Textarea.js.map +1 -1
  410. package/cjs/components/Textarea/Textarea.md +19 -0
  411. package/cjs/components/Textarea/Textarea.styles.d.ts +1 -0
  412. package/cjs/components/Textarea/Textarea.styles.js +21 -13
  413. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  414. package/cjs/components/Textarea/TextareaCounter.d.ts +2 -2
  415. package/cjs/components/Textarea/TextareaCounter.js +19 -5
  416. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  417. package/cjs/components/Toast/Toast.d.ts +6 -3
  418. package/cjs/components/Toast/Toast.js +16 -9
  419. package/cjs/components/Toast/Toast.js.map +1 -1
  420. package/cjs/components/Toast/Toast.md +133 -0
  421. package/cjs/components/Toast/ToastStatic.d.ts +3 -2
  422. package/cjs/components/Toast/ToastStatic.js +5 -5
  423. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  424. package/cjs/components/Toast/ToastView.js +18 -0
  425. package/cjs/components/Toast/ToastView.js.map +1 -1
  426. package/cjs/components/Toast/ToastView.styles.js +11 -3
  427. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  428. package/cjs/components/Toggle/Toggle.d.ts +14 -7
  429. package/cjs/components/Toggle/Toggle.js +28 -5
  430. package/cjs/components/Toggle/Toggle.js.map +1 -1
  431. package/cjs/components/Toggle/Toggle.styles.d.ts +3 -0
  432. package/cjs/components/Toggle/Toggle.styles.js +119 -31
  433. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  434. package/cjs/components/Token/Token.d.ts +6 -1
  435. package/cjs/components/Token/Token.js +24 -2
  436. package/cjs/components/Token/Token.js.map +1 -1
  437. package/cjs/components/Token/Token.styles.d.ts +6 -0
  438. package/cjs/components/Token/Token.styles.js +68 -10
  439. package/cjs/components/Token/Token.styles.js.map +1 -1
  440. package/cjs/components/TokenInput/TokenInput.d.ts +72 -18
  441. package/cjs/components/TokenInput/TokenInput.js +186 -66
  442. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  443. package/cjs/components/TokenInput/TokenInput.md +126 -0
  444. package/cjs/components/TokenInput/TokenInput.styles.d.ts +1 -0
  445. package/cjs/components/TokenInput/TokenInput.styles.js +22 -12
  446. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  447. package/cjs/components/TokenInput/TokenInputMenu.d.ts +2 -1
  448. package/cjs/components/TokenInput/TokenInputMenu.js +3 -1
  449. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  450. package/cjs/components/Tooltip/Tooltip.d.ts +14 -21
  451. package/cjs/components/Tooltip/Tooltip.js +39 -37
  452. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  453. package/cjs/components/Tooltip/Tooltip.styles.js +3 -3
  454. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  455. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +8 -7
  456. package/cjs/components/TooltipMenu/TooltipMenu.js +11 -5
  457. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  458. package/cjs/components/TooltipMenu/TooltipMenu.md +28 -1
  459. package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -2
  460. package/cjs/hooks/useEffectWithoutInitCall.js +2 -2
  461. package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -1
  462. package/cjs/hooks/useMemoObject.d.ts +2 -1
  463. package/cjs/hooks/useMemoObject.js +2 -0
  464. package/cjs/hooks/useMemoObject.js.map +1 -1
  465. package/cjs/index.d.ts +3 -0
  466. package/cjs/index.js +55 -54
  467. package/cjs/index.js.map +1 -1
  468. package/cjs/internal/BGRuler.d.ts +13 -15
  469. package/cjs/internal/BGRuler.js +16 -8
  470. package/cjs/internal/BGRuler.js.map +1 -1
  471. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.d.ts +35 -0
  472. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +98 -0
  473. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -0
  474. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +7 -0
  475. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +41 -0
  476. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -0
  477. package/cjs/internal/CloseButtonIcon/CrossIcon.d.ts +3 -0
  478. package/cjs/internal/CloseButtonIcon/CrossIcon.js +14 -0
  479. package/cjs/internal/CloseButtonIcon/CrossIcon.js.map +1 -0
  480. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
  481. package/cjs/internal/CommonWrapper/CommonWrapper.js +5 -4
  482. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  483. package/cjs/internal/ComponentCombinator.d.ts +6 -8
  484. package/cjs/internal/ComponentCombinator.js +6 -2
  485. package/cjs/internal/ComponentCombinator.js.map +1 -1
  486. package/cjs/internal/ComponentTable.d.ts +7 -8
  487. package/cjs/internal/ComponentTable.js +14 -3
  488. package/cjs/internal/ComponentTable.js.map +1 -1
  489. package/cjs/internal/CustomComboBox/ArrowDownIcon.d.ts +3 -0
  490. package/cjs/internal/CustomComboBox/ArrowDownIcon.js +15 -0
  491. package/cjs/internal/CustomComboBox/ArrowDownIcon.js.map +1 -0
  492. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -6
  493. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +16 -9
  494. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  495. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +11 -14
  496. package/cjs/internal/CustomComboBox/ComboBoxView.js +47 -10
  497. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  498. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +5 -2
  499. package/cjs/internal/CustomComboBox/CustomComboBox.js +23 -10
  500. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  501. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +8 -6
  502. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  503. package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -0
  504. package/cjs/internal/CustomComboBox/getComboBoxTheme.js +11 -0
  505. package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -0
  506. package/cjs/internal/DataTids/DataTids.d.ts +5 -5
  507. package/cjs/internal/DataTids/DataTids.js +4 -0
  508. package/cjs/internal/DataTids/DataTids.js.map +1 -1
  509. package/cjs/internal/DateSelect/DateSelect.d.ts +5 -6
  510. package/cjs/internal/DateSelect/DateSelect.js +46 -12
  511. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  512. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +1 -0
  513. package/cjs/internal/DateSelect/DateSelect.styles.js +23 -16
  514. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  515. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +8 -7
  516. package/cjs/internal/DropdownContainer/DropdownContainer.js +19 -11
  517. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  518. package/cjs/internal/DropdownContainer/getManualPosition.d.ts +19 -0
  519. package/cjs/internal/DropdownContainer/getManualPosition.js +41 -0
  520. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -0
  521. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
  522. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +2 -0
  523. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -1
  524. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +4 -1
  525. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -1
  526. package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +3 -0
  527. package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.js +15 -0
  528. package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.js.map +1 -0
  529. package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +3 -0
  530. package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.js +15 -0
  531. package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.js.map +1 -0
  532. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
  533. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +57 -36
  534. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  535. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
  536. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +49 -7
  537. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -1
  538. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +12 -0
  539. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +58 -0
  540. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -0
  541. package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +3 -0
  542. package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.js +15 -0
  543. package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.js.map +1 -0
  544. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
  545. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +15 -3
  546. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  547. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
  548. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +19 -1
  549. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
  550. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
  551. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js +18 -0
  552. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -0
  553. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
  554. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -1
  555. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
  556. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  557. package/cjs/internal/InputLikeText/InputLikeText.d.ts +5 -3
  558. package/cjs/internal/InputLikeText/InputLikeText.js +47 -13
  559. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  560. package/cjs/internal/InternalMenu/InternalMenu.d.ts +4 -9
  561. package/cjs/internal/InternalMenu/InternalMenu.js +60 -22
  562. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  563. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +5 -4
  564. package/cjs/internal/InternalMenu/InternalMenu.styles.js +15 -18
  565. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  566. package/cjs/internal/MaskedInput/MaskedInput.d.ts +5 -2
  567. package/cjs/internal/MaskedInput/MaskedInput.js +20 -7
  568. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  569. package/cjs/internal/Menu/Menu.d.ts +5 -7
  570. package/cjs/internal/Menu/Menu.js +42 -10
  571. package/cjs/internal/Menu/Menu.js.map +1 -1
  572. package/cjs/internal/Menu/Menu.styles.d.ts +2 -0
  573. package/cjs/internal/Menu/Menu.styles.js +23 -8
  574. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  575. package/cjs/internal/MenuMessage/MenuMessage.d.ts +10 -0
  576. package/cjs/internal/MenuMessage/MenuMessage.js +43 -0
  577. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -0
  578. package/cjs/{components/DatePicker/Picker.styles.d.ts → internal/MenuMessage/MenuMessage.styles.d.ts} +1 -1
  579. package/cjs/internal/MenuMessage/MenuMessage.styles.js +33 -0
  580. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -0
  581. package/cjs/internal/MenuMessage/index.d.ts +1 -0
  582. package/cjs/internal/MenuMessage/index.js +1 -0
  583. package/cjs/internal/MenuMessage/index.js.map +1 -0
  584. package/cjs/internal/MobilePopup/MobilePopup.d.ts +13 -12
  585. package/cjs/internal/MobilePopup/MobilePopup.js +6 -60
  586. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  587. package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +3 -3
  588. package/cjs/internal/MobilePopup/MobilePopup.styles.js +22 -24
  589. package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
  590. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -4
  591. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +26 -37
  592. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  593. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +2 -4
  594. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +8 -32
  595. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
  596. package/cjs/internal/NativeDateInput/utils.d.ts +1 -1
  597. package/cjs/internal/NativeDateInput/utils.js.map +1 -1
  598. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  599. package/cjs/internal/Popup/Popup.d.ts +18 -18
  600. package/cjs/internal/Popup/Popup.js +60 -22
  601. package/cjs/internal/Popup/Popup.js.map +1 -1
  602. package/cjs/internal/Popup/PopupHelper.d.ts +1 -1
  603. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  604. package/cjs/internal/Popup/PopupPin.d.ts +1 -1
  605. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  606. package/cjs/internal/PopupMenu/PopupMenu.d.ts +16 -11
  607. package/cjs/internal/PopupMenu/PopupMenu.js +30 -3
  608. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  609. package/cjs/internal/RenderLayer/RenderLayer.d.ts +6 -4
  610. package/cjs/internal/RenderLayer/RenderLayer.js +19 -4
  611. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  612. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
  613. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js +7 -0
  614. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js.map +1 -1
  615. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
  616. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js +2 -3
  617. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js.map +1 -1
  618. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
  619. package/cjs/internal/ThemePlayground/FxInputPlayground.js +5 -5
  620. package/cjs/internal/ThemePlayground/FxInputPlayground.js.map +1 -1
  621. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +1 -1
  622. package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
  623. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
  624. package/cjs/internal/ThemePlayground/PagingPlayground.js +5 -2
  625. package/cjs/internal/ThemePlayground/PagingPlayground.js.map +1 -1
  626. package/cjs/internal/ThemePlayground/Playground.d.ts +1 -1
  627. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  628. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
  629. package/cjs/internal/ThemePlayground/SelectPlayground.js +6 -0
  630. package/cjs/internal/ThemePlayground/SelectPlayground.js.map +1 -1
  631. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -2
  632. package/cjs/internal/ThemePlayground/SizesGroup.js +2 -0
  633. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  634. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
  635. package/cjs/internal/ThemePlayground/SwitcherPlayground.js +6 -1
  636. package/cjs/internal/ThemePlayground/SwitcherPlayground.js.map +1 -1
  637. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +14 -4
  638. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  639. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
  640. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  641. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
  642. package/cjs/internal/ThemePlayground/TogglePlayground.js +4 -10
  643. package/cjs/internal/ThemePlayground/TogglePlayground.js.map +1 -1
  644. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
  645. package/cjs/internal/ThemePlayground/TokenInputPlayground.js +3 -0
  646. package/cjs/internal/ThemePlayground/TokenInputPlayground.js.map +1 -1
  647. package/cjs/internal/ThemePlayground/VariableValue.d.ts +6 -8
  648. package/cjs/internal/ThemePlayground/VariableValue.js +6 -1
  649. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  650. package/cjs/internal/ThemePlayground/constants.js +2 -1
  651. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  652. package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
  653. package/cjs/internal/ThemePlayground/helpers.js +4 -2
  654. package/cjs/internal/ThemePlayground/helpers.js.map +1 -1
  655. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  656. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  657. package/cjs/internal/ZIndex/ZIndex.d.ts +22 -12
  658. package/cjs/internal/ZIndex/ZIndex.js +54 -13
  659. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  660. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  661. package/cjs/internal/ZIndex/ZIndexStorage.js +1 -6
  662. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  663. package/cjs/internal/icons/16px/index.js +3 -2
  664. package/cjs/internal/icons/16px/index.js.map +1 -1
  665. package/cjs/internal/icons/20px/svg.js +2 -1
  666. package/cjs/internal/icons/20px/svg.js.map +1 -1
  667. package/cjs/internal/icons/CloudIcon.js +1 -1
  668. package/cjs/internal/icons/CloudIcon.js.map +1 -1
  669. package/cjs/internal/icons/CrossIcon.js +2 -1
  670. package/cjs/internal/icons/CrossIcon.js.map +1 -1
  671. package/cjs/internal/icons/SpinnerIcon.d.ts +20 -14
  672. package/cjs/internal/icons/SpinnerIcon.js +15 -2
  673. package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
  674. package/cjs/internal/icons/SpinnerIcon.styles.js +2 -1
  675. package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
  676. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +2 -0
  677. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.js +14 -0
  678. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.js.map +1 -0
  679. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +2 -0
  680. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.js +14 -0
  681. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.js.map +1 -0
  682. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +2 -0
  683. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.js +14 -0
  684. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.js.map +1 -0
  685. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +2 -0
  686. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.js +14 -0
  687. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.js.map +1 -0
  688. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +2 -0
  689. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.js +14 -0
  690. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.js.map +1 -0
  691. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +2 -0
  692. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.js +14 -0
  693. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.js.map +1 -0
  694. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +2 -0
  695. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.js +12 -0
  696. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.js.map +1 -0
  697. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +2 -0
  698. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.js +14 -0
  699. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.js.map +1 -0
  700. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +2 -0
  701. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.js +14 -0
  702. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.js.map +1 -0
  703. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +2 -0
  704. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.js +14 -0
  705. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.js.map +1 -0
  706. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +2 -0
  707. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.js +14 -0
  708. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.js.map +1 -0
  709. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +2 -0
  710. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.js +14 -0
  711. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.js.map +1 -0
  712. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +2 -0
  713. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.js +14 -0
  714. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.js.map +1 -0
  715. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +2 -0
  716. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.js +14 -0
  717. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.js.map +1 -0
  718. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +2 -0
  719. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js +15 -0
  720. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js.map +1 -0
  721. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +2 -0
  722. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.js +18 -0
  723. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.js.map +1 -0
  724. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +2 -0
  725. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.js +18 -0
  726. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.js.map +1 -0
  727. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +2 -0
  728. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.js +18 -0
  729. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.js.map +1 -0
  730. package/cjs/internal/icons2022/BaseIcon.d.ts +11 -0
  731. package/cjs/internal/icons2022/BaseIcon.js +54 -0
  732. package/cjs/internal/icons2022/BaseIcon.js.map +1 -0
  733. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +2 -0
  734. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.js +24 -0
  735. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.js.map +1 -0
  736. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +2 -0
  737. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.js +24 -0
  738. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.js.map +1 -0
  739. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +2 -0
  740. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.js +26 -0
  741. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.js.map +1 -0
  742. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +2 -0
  743. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.js +12 -0
  744. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.js.map +1 -0
  745. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +2 -0
  746. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.js +12 -0
  747. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.js.map +1 -0
  748. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +2 -0
  749. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.js +12 -0
  750. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.js.map +1 -0
  751. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +2 -0
  752. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.js +12 -0
  753. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.js.map +1 -0
  754. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +2 -0
  755. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.js +12 -0
  756. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.js.map +1 -0
  757. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +2 -0
  758. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.js +12 -0
  759. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.js.map +1 -0
  760. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +2 -0
  761. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.js +14 -0
  762. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.js.map +1 -0
  763. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +2 -0
  764. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.js +14 -0
  765. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.js.map +1 -0
  766. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +2 -0
  767. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.js +14 -0
  768. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.js.map +1 -0
  769. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +2 -0
  770. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.js +21 -0
  771. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.js.map +1 -0
  772. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +2 -0
  773. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.js +21 -0
  774. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.js.map +1 -0
  775. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +2 -0
  776. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.js +23 -0
  777. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.js.map +1 -0
  778. package/cjs/internal/icons2022/LoadingIcon.d.ts +4 -0
  779. package/cjs/internal/icons2022/LoadingIcon.js +44 -0
  780. package/cjs/internal/icons2022/LoadingIcon.js.map +1 -0
  781. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +2 -0
  782. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.js +15 -0
  783. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.js.map +1 -0
  784. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +2 -0
  785. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.js +15 -0
  786. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.js.map +1 -0
  787. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +2 -0
  788. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.js +15 -0
  789. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.js.map +1 -0
  790. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +2 -0
  791. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.js +19 -0
  792. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.js.map +1 -0
  793. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +2 -0
  794. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.js +19 -0
  795. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.js.map +1 -0
  796. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +2 -0
  797. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.js +19 -0
  798. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.js.map +1 -0
  799. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +2 -0
  800. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.js +19 -0
  801. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.js.map +1 -0
  802. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +2 -0
  803. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.js +15 -0
  804. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.js.map +1 -0
  805. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +2 -0
  806. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.js +15 -0
  807. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.js.map +1 -0
  808. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +2 -0
  809. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.js +15 -0
  810. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.js.map +1 -0
  811. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +2 -0
  812. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.js +18 -0
  813. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.js.map +1 -0
  814. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +2 -0
  815. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.js +18 -0
  816. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.js.map +1 -0
  817. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +2 -0
  818. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.js +14 -0
  819. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.js.map +1 -0
  820. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +2 -0
  821. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.js +16 -0
  822. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.js.map +1 -0
  823. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +2 -0
  824. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.js +16 -0
  825. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.js.map +1 -0
  826. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +2 -0
  827. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.js +16 -0
  828. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.js.map +1 -0
  829. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +2 -0
  830. package/cjs/internal/icons2022/XIcon/XIcon16Light.js +12 -0
  831. package/cjs/internal/icons2022/XIcon/XIcon16Light.js.map +1 -0
  832. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +2 -0
  833. package/cjs/internal/icons2022/XIcon/XIcon16Regular.js +12 -0
  834. package/cjs/internal/icons2022/XIcon/XIcon16Regular.js.map +1 -0
  835. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +2 -0
  836. package/cjs/internal/icons2022/XIcon/XIcon20Light.js +12 -0
  837. package/cjs/internal/icons2022/XIcon/XIcon20Light.js.map +1 -0
  838. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +2 -0
  839. package/cjs/internal/icons2022/XIcon/XIcon20Regular.js +12 -0
  840. package/cjs/internal/icons2022/XIcon/XIcon20Regular.js.map +1 -0
  841. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +2 -0
  842. package/cjs/internal/icons2022/XIcon/XIcon24Regular.js +12 -0
  843. package/cjs/internal/icons2022/XIcon/XIcon24Regular.js.map +1 -0
  844. package/cjs/internal/icons2022/iconConstants.d.ts +8 -0
  845. package/cjs/internal/icons2022/iconConstants.js +11 -0
  846. package/cjs/internal/icons2022/iconConstants.js.map +1 -0
  847. package/cjs/internal/icons2022/iconSizer.d.ts +11 -0
  848. package/cjs/internal/icons2022/iconSizer.js +35 -0
  849. package/cjs/internal/icons2022/iconSizer.js.map +1 -0
  850. package/cjs/internal/themes/DarkTheme.d.ts +3 -0
  851. package/cjs/internal/themes/DarkTheme.js +8 -5
  852. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  853. package/cjs/internal/themes/DefaultTheme.d.ts +185 -4
  854. package/cjs/internal/themes/DefaultTheme.js +371 -25
  855. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  856. package/cjs/internal/themes/NotFlat.d.ts +1 -0
  857. package/cjs/internal/themes/NotFlat.js +2 -1
  858. package/cjs/internal/themes/NotFlat.js.map +1 -1
  859. package/cjs/internal/themes/Theme2022.d.ts +235 -19
  860. package/cjs/internal/themes/Theme2022.js +462 -63
  861. package/cjs/internal/themes/Theme2022.js.map +1 -1
  862. package/cjs/internal/themes/Theme2022Dark.d.ts +190 -1
  863. package/cjs/internal/themes/Theme2022Dark.js +344 -4
  864. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  865. package/cjs/lib/ConditionalHandler.js.map +1 -1
  866. package/cjs/lib/InstanceWithAnchorElement.d.ts +1 -1
  867. package/cjs/lib/InstanceWithAnchorElement.js.map +1 -1
  868. package/cjs/lib/ModalStack.js +6 -4
  869. package/cjs/lib/ModalStack.js.map +1 -1
  870. package/cjs/lib/SSRSafe.d.ts +3 -1
  871. package/cjs/lib/SSRSafe.js +15 -1
  872. package/cjs/lib/SSRSafe.js.map +1 -1
  873. package/cjs/lib/Upgrades.js +5 -0
  874. package/cjs/lib/Upgrades.js.map +1 -1
  875. package/cjs/lib/animation/index.js +1 -0
  876. package/cjs/lib/animation/index.js.map +1 -1
  877. package/cjs/lib/callChildRef/callChildRef.js +1 -1
  878. package/cjs/lib/callChildRef/callChildRef.js.map +1 -1
  879. package/cjs/lib/chars.d.ts +8 -0
  880. package/cjs/lib/chars.js +8 -0
  881. package/cjs/lib/chars.js.map +1 -0
  882. package/cjs/lib/createPropsGetter.d.ts +2 -1
  883. package/cjs/lib/createPropsGetter.js +3 -0
  884. package/cjs/lib/createPropsGetter.js.map +1 -1
  885. package/cjs/lib/currentEnvironment.js +33 -12
  886. package/cjs/lib/currentEnvironment.js.map +1 -1
  887. package/cjs/lib/date/InternalDate.d.ts +1 -1
  888. package/cjs/lib/date/InternalDate.js +1 -1
  889. package/cjs/lib/date/InternalDate.js.map +1 -1
  890. package/cjs/lib/date/InternalDateCalculator.d.ts +1 -1
  891. package/cjs/lib/date/InternalDateCalculator.js +1 -1
  892. package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
  893. package/cjs/lib/date/InternalDateValidator.d.ts +1 -1
  894. package/cjs/lib/date/InternalDateValidator.js +9 -2
  895. package/cjs/lib/date/InternalDateValidator.js.map +1 -1
  896. package/cjs/lib/extractKeyboardAction.d.ts +1 -1
  897. package/cjs/lib/extractKeyboardAction.js.map +1 -1
  898. package/cjs/lib/filterProps.js +0 -1
  899. package/cjs/lib/filterProps.js.map +1 -1
  900. package/cjs/lib/forwardRefAndName.d.ts +4 -0
  901. package/cjs/lib/forwardRefAndName.js +22 -1
  902. package/cjs/lib/forwardRefAndName.js.map +1 -1
  903. package/cjs/lib/listenFocusOutside.d.ts +1 -1
  904. package/cjs/lib/listenFocusOutside.js +1 -1
  905. package/cjs/lib/listenFocusOutside.js.map +1 -1
  906. package/cjs/lib/locale/LOCALECONTEXT.md +1 -0
  907. package/cjs/lib/locale/decorators.js +0 -3
  908. package/cjs/lib/locale/decorators.js.map +1 -1
  909. package/cjs/lib/locale/types.d.ts +2 -0
  910. package/cjs/lib/locale/types.js +2 -0
  911. package/cjs/lib/locale/types.js.map +1 -1
  912. package/cjs/lib/locale/useLocaleForControl.d.ts +1 -1
  913. package/cjs/lib/locale/useLocaleForControl.js.map +1 -1
  914. package/cjs/lib/memo.d.ts +3 -1
  915. package/cjs/lib/memo.js +3 -3
  916. package/cjs/lib/memo.js.map +1 -1
  917. package/cjs/lib/net/fetch.js +4 -4
  918. package/cjs/lib/net/fetch.js.map +1 -1
  919. package/cjs/lib/reactGetTextContent.js +0 -1
  920. package/cjs/lib/reactGetTextContent.js.map +1 -1
  921. package/cjs/lib/rootNode/getRootNode.d.ts +3 -3
  922. package/cjs/lib/rootNode/getRootNode.js +40 -15
  923. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  924. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +9 -9
  925. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  926. package/cjs/lib/styles/ColorFactory.js +2 -2
  927. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  928. package/cjs/lib/styles/ColorFunctions.js.map +1 -1
  929. package/cjs/lib/theming/AnimationKeyframes.d.ts +3 -5
  930. package/cjs/lib/theming/AnimationKeyframes.js +8 -22
  931. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  932. package/cjs/lib/theming/Emotion.js +1 -0
  933. package/cjs/lib/theming/Emotion.js.map +1 -1
  934. package/cjs/lib/theming/ThemeContext.md +26 -18
  935. package/cjs/lib/theming/ThemeFactory.d.ts +1 -1
  936. package/cjs/lib/theming/ThemeFactory.js +10 -1
  937. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  938. package/cjs/lib/theming/ThemeHelpers.d.ts +19 -4
  939. package/cjs/lib/theming/ThemeHelpers.js +45 -6
  940. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  941. package/cjs/lib/theming/themes/DarkTheme.js +1 -1
  942. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  943. package/cjs/lib/theming/themes/Theme2022.d.ts +1 -1
  944. package/cjs/lib/theming/themes/Theme2022.js +2 -1
  945. package/cjs/lib/theming/themes/Theme2022.js.map +1 -1
  946. package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -1
  947. package/cjs/lib/theming/themes/Theme2022Dark.js +4 -3
  948. package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -1
  949. package/cjs/lib/utils.d.ts +9 -5
  950. package/cjs/lib/utils.js +26 -8
  951. package/cjs/lib/utils.js.map +1 -1
  952. package/cjs/lib/withClassWrapper.js +1 -4
  953. package/cjs/lib/withClassWrapper.js.map +1 -1
  954. package/cjs/typings/event-types.d.ts +2 -2
  955. package/cjs/typings/global.d.ts +4 -0
  956. package/{typings/html-props.d.ts → cjs/typings/html.d.ts} +3 -2
  957. package/cjs/typings/utility-types.d.ts +6 -0
  958. package/components/Autocomplete/Autocomplete/Autocomplete.js +59 -21
  959. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  960. package/components/Autocomplete/Autocomplete.d.ts +13 -18
  961. package/components/Autocomplete/Autocomplete.md +15 -1
  962. package/components/Autocomplete/getAutocompleteTheme/getAutocompleteTheme.js +6 -0
  963. package/components/Autocomplete/getAutocompleteTheme/getAutocompleteTheme.js.map +1 -0
  964. package/components/Autocomplete/getAutocompleteTheme/package.json +6 -0
  965. package/components/Autocomplete/getAutocompleteTheme.d.ts +2 -0
  966. package/components/Autocomplete/locale/index/index.js +8 -0
  967. package/components/Autocomplete/locale/index/index.js.map +1 -0
  968. package/components/Autocomplete/locale/index/package.json +6 -0
  969. package/components/Autocomplete/locale/index.d.ts +4 -0
  970. package/components/Autocomplete/locale/locales/en/en.js +5 -0
  971. package/components/Autocomplete/locale/locales/en/en.js.map +1 -0
  972. package/components/Autocomplete/locale/locales/en/package.json +6 -0
  973. package/components/Autocomplete/locale/locales/en.d.ts +2 -0
  974. package/components/Autocomplete/locale/locales/ru/package.json +6 -0
  975. package/components/Autocomplete/locale/locales/ru/ru.js +5 -0
  976. package/components/Autocomplete/locale/locales/ru/ru.js.map +1 -0
  977. package/components/Autocomplete/locale/locales/ru.d.ts +2 -0
  978. package/components/Autocomplete/locale/package.json +6 -0
  979. package/components/Autocomplete/locale/types/package.json +6 -0
  980. package/components/Autocomplete/locale/types/types.js +1 -0
  981. package/components/Autocomplete/locale/types/types.js.map +1 -0
  982. package/components/Autocomplete/locale/types.d.ts +5 -0
  983. package/components/Button/ArrowLeftIcon/ArrowLeftIcon.js +17 -0
  984. package/components/Button/ArrowLeftIcon/ArrowLeftIcon.js.map +1 -0
  985. package/components/Button/ArrowLeftIcon/package.json +6 -0
  986. package/components/Button/ArrowLeftIcon.d.ts +3 -0
  987. package/components/Button/ArrowRightIcon/ArrowRightIcon.js +17 -0
  988. package/components/Button/ArrowRightIcon/ArrowRightIcon.js.map +1 -0
  989. package/components/Button/ArrowRightIcon/package.json +6 -0
  990. package/components/Button/ArrowRightIcon.d.ts +3 -0
  991. package/components/Button/Button/Button.js +119 -71
  992. package/components/Button/Button/Button.js.map +1 -1
  993. package/components/Button/Button.d.ts +15 -11
  994. package/components/Button/Button.md +42 -8
  995. package/components/Button/Button.mixins/Button.mixins.js +3 -3
  996. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  997. package/components/Button/Button.styles/Button.styles.js +148 -63
  998. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  999. package/components/Button/Button.styles.d.ts +31 -1
  1000. package/components/Button/ButtonArrow/ButtonArrow.js +72 -0
  1001. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -0
  1002. package/components/Button/ButtonArrow/package.json +6 -0
  1003. package/components/Button/ButtonArrow.d.ts +8 -0
  1004. package/components/Button/ButtonIcon/ButtonIcon.js +65 -0
  1005. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -0
  1006. package/components/Button/ButtonIcon/package.json +6 -0
  1007. package/components/Button/ButtonIcon.d.ts +9 -0
  1008. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +11 -0
  1009. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -0
  1010. package/components/Button/getInnerLinkTheme/package.json +6 -0
  1011. package/components/Button/getInnerLinkTheme.d.ts +2 -0
  1012. package/{internal → components}/Calendar/Calendar/Calendar.js +140 -69
  1013. package/components/Calendar/Calendar/Calendar.js.map +1 -0
  1014. package/{internal → components}/Calendar/Calendar/package.json +1 -1
  1015. package/components/Calendar/Calendar.d.ts +104 -0
  1016. package/components/Calendar/Calendar.md +147 -0
  1017. package/components/Calendar/Calendar.styles/Calendar.styles.js +17 -0
  1018. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -0
  1019. package/{internal → components}/Calendar/Calendar.styles/package.json +1 -1
  1020. package/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
  1021. package/{internal → components}/Calendar/CalendarDateShape/package.json +1 -1
  1022. package/{internal → components}/Calendar/CalendarScrollEvents/package.json +1 -1
  1023. package/{internal → components}/Calendar/CalendarUtils/CalendarUtils.js +34 -0
  1024. package/components/Calendar/CalendarUtils/CalendarUtils.js.map +1 -0
  1025. package/{internal → components}/Calendar/CalendarUtils/package.json +1 -1
  1026. package/{cjs/internal → components}/Calendar/CalendarUtils.d.ts +19 -2
  1027. package/{internal → components}/Calendar/DayCellView/DayCellView.js +10 -3
  1028. package/components/Calendar/DayCellView/DayCellView.js.map +1 -0
  1029. package/{internal → components}/Calendar/DayCellView/package.json +1 -1
  1030. package/{internal → components}/Calendar/DayCellView.styles/DayCellView.styles.js +12 -3
  1031. package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -0
  1032. package/{internal → components}/Calendar/DayCellView.styles/package.json +1 -1
  1033. package/{internal → components}/Calendar/DayCellView.styles.d.ts +5 -0
  1034. package/{internal → components}/Calendar/DayCellViewModel/package.json +1 -1
  1035. package/{internal → components}/Calendar/Month/Month.js +20 -11
  1036. package/components/Calendar/Month/Month.js.map +1 -0
  1037. package/{internal → components}/Calendar/Month/package.json +1 -1
  1038. package/{internal → components}/Calendar/MonthView/MonthView.js +1 -1
  1039. package/components/Calendar/MonthView/MonthView.js.map +1 -0
  1040. package/{internal → components}/Calendar/MonthView/package.json +1 -1
  1041. package/{internal → components}/Calendar/MonthView.d.ts +1 -1
  1042. package/{internal → components}/Calendar/MonthView.styles/package.json +1 -1
  1043. package/{internal → components}/Calendar/MonthViewModel/package.json +1 -1
  1044. package/{internal → components}/Calendar/MonthViewModel.d.ts +1 -1
  1045. package/{internal → components}/Calendar/config/package.json +1 -1
  1046. package/components/Calendar/config.d.ts +2 -0
  1047. package/{internal → components}/Calendar/index/package.json +1 -1
  1048. package/components/Calendar/locale/index/index.js +8 -0
  1049. package/components/Calendar/locale/index/index.js.map +1 -0
  1050. package/components/Calendar/locale/index/package.json +6 -0
  1051. package/components/Calendar/locale/index.d.ts +4 -0
  1052. package/components/Calendar/locale/locales/en/en.js +3 -0
  1053. package/components/Calendar/locale/locales/en/en.js.map +1 -0
  1054. package/components/Calendar/locale/locales/en/package.json +6 -0
  1055. package/components/Calendar/locale/locales/en.d.ts +2 -0
  1056. package/components/Calendar/locale/locales/ru/package.json +6 -0
  1057. package/components/Calendar/locale/locales/ru/ru.js +3 -0
  1058. package/components/Calendar/locale/locales/ru/ru.js.map +1 -0
  1059. package/components/Calendar/locale/locales/ru.d.ts +2 -0
  1060. package/components/Calendar/locale/package.json +6 -0
  1061. package/components/Calendar/locale/types/package.json +6 -0
  1062. package/components/Calendar/locale/types/types.js +1 -0
  1063. package/components/Calendar/locale/types/types.js.map +1 -0
  1064. package/components/Calendar/locale/types.d.ts +3 -0
  1065. package/{internal → components}/Calendar/package.json +1 -1
  1066. package/components/Center/Center/Center.js +7 -5
  1067. package/components/Center/Center/Center.js.map +1 -1
  1068. package/components/Center/Center.d.ts +4 -3
  1069. package/components/Checkbox/Checkbox/Checkbox.js +33 -11
  1070. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  1071. package/components/Checkbox/Checkbox.d.ts +5 -1
  1072. package/components/Checkbox/Checkbox.md +49 -1
  1073. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +9 -6
  1074. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  1075. package/components/Checkbox/Checkbox.styles.d.ts +2 -1
  1076. package/components/Checkbox/CheckedIcon/CheckedIcon.js +18 -0
  1077. package/components/Checkbox/CheckedIcon/CheckedIcon.js.map +1 -0
  1078. package/components/Checkbox/CheckedIcon/package.json +6 -0
  1079. package/components/Checkbox/CheckedIcon.d.ts +3 -0
  1080. package/components/Checkbox/IndeterminateIcon/IndeterminateIcon.js +21 -0
  1081. package/components/Checkbox/IndeterminateIcon/IndeterminateIcon.js.map +1 -0
  1082. package/components/Checkbox/IndeterminateIcon/package.json +6 -0
  1083. package/components/Checkbox/IndeterminateIcon.d.ts +3 -0
  1084. package/components/ComboBox/ComboBox/ComboBox.js +3 -1
  1085. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  1086. package/components/ComboBox/ComboBox.d.ts +30 -15
  1087. package/components/ComboBox/ComboBox.md +84 -1
  1088. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +3 -3
  1089. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  1090. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +54 -23
  1091. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  1092. package/components/CurrencyInput/CurrencyInput.d.ts +7 -10
  1093. package/components/CurrencyInput/CurrencyInput.md +13 -0
  1094. package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js +4 -2
  1095. package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js.map +1 -1
  1096. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
  1097. package/components/CurrencyInput/constants/constants.js +4 -1
  1098. package/components/CurrencyInput/constants/constants.js.map +1 -1
  1099. package/components/CurrencyInput/constants.d.ts +3 -0
  1100. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +25 -16
  1101. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  1102. package/components/CurrencyLabel/CurrencyLabel.d.ts +5 -9
  1103. package/components/CurrencyLabel/CurrencyLabel.md +6 -0
  1104. package/components/DateInput/CalendarIcon/CalendarIcon.js +17 -0
  1105. package/components/DateInput/CalendarIcon/CalendarIcon.js.map +1 -0
  1106. package/components/DateInput/CalendarIcon/package.json +6 -0
  1107. package/components/DateInput/CalendarIcon.d.ts +3 -0
  1108. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +11 -1
  1109. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  1110. package/components/DateInput/DateFragmentsView.d.ts +1 -1
  1111. package/components/DateInput/DateInput/DateInput.js +24 -6
  1112. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  1113. package/components/DateInput/DateInput.d.ts +9 -12
  1114. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +0 -1
  1115. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  1116. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +2 -2
  1117. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  1118. package/components/DatePicker/DatePicker/DatePicker.js +132 -71
  1119. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  1120. package/components/DatePicker/DatePicker.d.ts +25 -27
  1121. package/components/DatePicker/DatePicker.md +18 -0
  1122. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js +7 -1
  1123. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
  1124. package/components/DatePicker/DatePicker.styles.d.ts +3 -0
  1125. package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
  1126. package/components/DatePicker/DatePickerHelpers.d.ts +1 -1
  1127. package/components/DatePicker/Picker/Picker.js +68 -63
  1128. package/components/DatePicker/Picker/Picker.js.map +1 -1
  1129. package/components/DatePicker/Picker.d.ts +8 -9
  1130. package/components/DatePicker/locale/locales/en/en.js +3 -3
  1131. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  1132. package/components/DatePicker/locale/locales/ru/ru.js +3 -3
  1133. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  1134. package/components/DatePicker/locale/types.d.ts +2 -2
  1135. package/components/Dropdown/Dropdown/Dropdown.js +17 -6
  1136. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  1137. package/components/Dropdown/Dropdown.d.ts +8 -2
  1138. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +7 -0
  1139. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -0
  1140. package/components/Dropdown/getDropdownTheme/package.json +6 -0
  1141. package/components/Dropdown/getDropdownTheme.d.ts +2 -0
  1142. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +12 -7
  1143. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  1144. package/components/DropdownMenu/DropdownMenu.d.ts +8 -8
  1145. package/components/DropdownMenu/DropdownMenu.md +68 -1
  1146. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js +6 -0
  1147. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js.map +1 -0
  1148. package/components/DropdownMenu/getDropdownMenuTheme/package.json +6 -0
  1149. package/components/DropdownMenu/getDropdownMenuTheme.d.ts +2 -0
  1150. package/components/FileUploader/FileUploader/FileUploader.js +81 -27
  1151. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  1152. package/components/FileUploader/FileUploader.d.ts +12 -2
  1153. package/components/FileUploader/FileUploader.md +13 -1
  1154. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js +8 -0
  1155. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js.map +1 -0
  1156. package/components/FileUploader/FileUploader.mixins/package.json +6 -0
  1157. package/components/FileUploader/FileUploader.mixins.d.ts +1 -0
  1158. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +68 -24
  1159. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  1160. package/components/FileUploader/FileUploader.styles.d.ts +18 -2
  1161. package/components/FileUploader/UploadIcon/UploadIcon.js +17 -0
  1162. package/components/FileUploader/UploadIcon/UploadIcon.js.map +1 -0
  1163. package/components/FileUploader/UploadIcon/package.json +6 -0
  1164. package/components/FileUploader/UploadIcon.d.ts +3 -0
  1165. package/components/FxInput/FxInput/FxInput.js +56 -22
  1166. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  1167. package/components/FxInput/FxInput.d.ts +7 -6
  1168. package/components/FxInput/FxInput.md +13 -0
  1169. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +62 -0
  1170. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -0
  1171. package/components/FxInput/FxInputRestoreBtn/package.json +6 -0
  1172. package/components/FxInput/FxInputRestoreBtn.d.ts +5 -0
  1173. package/components/FxInput/MathFunctionIcon/MathFunctionIcon.js +17 -0
  1174. package/components/FxInput/MathFunctionIcon/MathFunctionIcon.js.map +1 -0
  1175. package/components/FxInput/MathFunctionIcon/package.json +6 -0
  1176. package/components/FxInput/MathFunctionIcon.d.ts +3 -0
  1177. package/components/FxInput/UndoIcon/UndoIcon.js +17 -0
  1178. package/components/FxInput/UndoIcon/UndoIcon.js.map +1 -0
  1179. package/components/FxInput/UndoIcon/package.json +6 -0
  1180. package/components/FxInput/UndoIcon.d.ts +3 -0
  1181. package/components/Gapped/Gapped/Gapped.js +17 -8
  1182. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  1183. package/components/Gapped/Gapped.d.ts +7 -8
  1184. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +35 -16
  1185. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  1186. package/components/GlobalLoader/GlobalLoader.d.ts +7 -14
  1187. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  1188. package/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
  1189. package/components/Group/Group/Group.js +33 -10
  1190. package/components/Group/Group/Group.js.map +1 -1
  1191. package/components/Group/Group.d.ts +3 -0
  1192. package/components/Hint/Hint/Hint.js +42 -39
  1193. package/components/Hint/Hint/Hint.js.map +1 -1
  1194. package/components/Hint/Hint.d.ts +9 -15
  1195. package/components/Hint/Hint.md +43 -0
  1196. package/components/Hint/Hint.styles/Hint.styles.js +2 -5
  1197. package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
  1198. package/components/Hint/Hint.styles.d.ts +0 -1
  1199. package/components/Input/Input/Input.js +127 -31
  1200. package/components/Input/Input/Input.js.map +1 -1
  1201. package/components/Input/Input.d.ts +30 -9
  1202. package/components/Input/Input.md +66 -1
  1203. package/components/Input/Input.styles/Input.styles.js +46 -40
  1204. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  1205. package/components/Input/Input.styles.d.ts +2 -0
  1206. package/components/Input/InputLayout/InputLayout/InputLayout.js +34 -0
  1207. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -0
  1208. package/components/Input/InputLayout/InputLayout/package.json +6 -0
  1209. package/components/Input/InputLayout/InputLayout.d.ts +10 -0
  1210. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +32 -0
  1211. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -0
  1212. package/components/Input/InputLayout/InputLayout.styles/package.json +6 -0
  1213. package/components/Input/InputLayout/InputLayout.styles.d.ts +11 -0
  1214. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +28 -0
  1215. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -0
  1216. package/components/Input/InputLayout/InputLayoutAside/package.json +6 -0
  1217. package/components/Input/InputLayout/InputLayoutAside.d.ts +8 -0
  1218. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +52 -0
  1219. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -0
  1220. package/components/Input/InputLayout/InputLayoutAsideIcon/package.json +6 -0
  1221. package/components/Input/InputLayout/InputLayoutAsideIcon.d.ts +7 -0
  1222. package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js +18 -0
  1223. package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js.map +1 -0
  1224. package/components/Input/InputLayout/InputLayoutAsideText/package.json +6 -0
  1225. package/components/Input/InputLayout/InputLayoutAsideText.d.ts +6 -0
  1226. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js +7 -0
  1227. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -0
  1228. package/components/Input/InputLayout/InputLayoutContext/package.json +6 -0
  1229. package/components/Input/InputLayout/InputLayoutContext.d.ts +9 -0
  1230. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +33 -0
  1231. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +1 -0
  1232. package/components/Input/InputLayout/PolyfillPlaceholder/package.json +6 -0
  1233. package/components/Input/InputLayout/PolyfillPlaceholder.d.ts +10 -0
  1234. package/components/Kebab/Kebab/Kebab.js +60 -16
  1235. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  1236. package/components/Kebab/Kebab.d.ts +18 -17
  1237. package/components/Kebab/Kebab.styles/Kebab.styles.js +26 -14
  1238. package/components/Kebab/Kebab.styles/Kebab.styles.js.map +1 -1
  1239. package/components/Kebab/Kebab.styles.d.ts +8 -4
  1240. package/components/Kebab/KebabIcon/KebabIcon.js +17 -0
  1241. package/components/Kebab/KebabIcon/KebabIcon.js.map +1 -0
  1242. package/components/Kebab/KebabIcon/package.json +6 -0
  1243. package/components/Kebab/KebabIcon.d.ts +3 -0
  1244. package/components/Link/Link/Link.js +50 -24
  1245. package/components/Link/Link/Link.js.map +1 -1
  1246. package/components/Link/Link.d.ts +25 -11
  1247. package/components/Link/Link.md +11 -0
  1248. package/components/Link/Link.mixins/Link.mixins.js +6 -0
  1249. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  1250. package/components/Link/Link.mixins.d.ts +2 -0
  1251. package/components/Link/Link.styles/Link.styles.js +35 -14
  1252. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  1253. package/components/Link/Link.styles.d.ts +9 -0
  1254. package/components/Loader/Loader/Loader.js +27 -23
  1255. package/components/Loader/Loader/Loader.js.map +1 -1
  1256. package/components/Loader/Loader.d.ts +24 -11
  1257. package/components/Loader/Loader.md +30 -23
  1258. package/components/Loader/Loader.styles/Loader.styles.js +1 -1
  1259. package/components/Loader/Loader.styles/Loader.styles.js.map +1 -1
  1260. package/components/Loader/__stories__/LoaderAndButton/LoaderAndButton.js.map +1 -1
  1261. package/components/MenuHeader/MenuHeader/MenuHeader.js +1 -1
  1262. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  1263. package/components/MenuHeader/MenuHeader.d.ts +1 -1
  1264. package/components/MenuItem/MenuItem/MenuItem.js +52 -16
  1265. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  1266. package/components/MenuItem/MenuItem.d.ts +20 -4
  1267. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +32 -10
  1268. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  1269. package/components/MenuItem/MenuItem.styles.d.ts +5 -0
  1270. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +11 -4
  1271. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  1272. package/components/MenuSeparator/MenuSeparator.d.ts +1 -1
  1273. package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js +5 -2
  1274. package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
  1275. package/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -0
  1276. package/components/Modal/Modal/Modal.js +36 -14
  1277. package/components/Modal/Modal/Modal.js.map +1 -1
  1278. package/components/Modal/Modal.d.ts +6 -5
  1279. package/components/Modal/Modal.styles/Modal.styles.js +34 -31
  1280. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  1281. package/components/Modal/Modal.styles.d.ts +6 -5
  1282. package/components/Modal/ModalBody/ModalBody.js +7 -6
  1283. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  1284. package/components/Modal/ModalClose/ModalClose.js +6 -1
  1285. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  1286. package/components/Modal/ModalFooter/ModalFooter.js +16 -13
  1287. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  1288. package/components/Modal/ModalFooter.d.ts +14 -0
  1289. package/components/Modal/ModalHeader/ModalHeader.js +10 -13
  1290. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  1291. package/components/Modal/ModalSeparator/ModalSeparator.js +13 -0
  1292. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -0
  1293. package/components/Modal/ModalSeparator/package.json +6 -0
  1294. package/components/Modal/ModalSeparator.d.ts +5 -0
  1295. package/components/Modal/getModalBodyTheme/getModalBodyTheme.js +6 -0
  1296. package/components/Modal/getModalBodyTheme/getModalBodyTheme.js.map +1 -0
  1297. package/components/Modal/getModalBodyTheme/package.json +6 -0
  1298. package/components/Modal/getModalBodyTheme.d.ts +2 -0
  1299. package/components/Modal/getModalTheme/getModalTheme.js +6 -0
  1300. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -0
  1301. package/components/Modal/getModalTheme/package.json +6 -0
  1302. package/components/Modal/getModalTheme.d.ts +2 -0
  1303. package/components/Paging/ForwardIcon/ForwardIcon.js +17 -0
  1304. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -0
  1305. package/components/Paging/ForwardIcon/package.json +6 -0
  1306. package/components/Paging/ForwardIcon.d.ts +3 -0
  1307. package/components/Paging/Paging/Paging.js +48 -27
  1308. package/components/Paging/Paging/Paging.js.map +1 -1
  1309. package/components/Paging/Paging.d.ts +7 -10
  1310. package/components/Paging/Paging.md +13 -0
  1311. package/components/Paging/Paging.styles/Paging.styles.js +27 -15
  1312. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  1313. package/components/Paging/Paging.styles.d.ts +6 -2
  1314. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
  1315. package/components/Paging/PagingDefaultComponent.d.ts +3 -3
  1316. package/components/PasswordInput/ClosedIcon/ClosedIcon.js +17 -0
  1317. package/components/PasswordInput/ClosedIcon/ClosedIcon.js.map +1 -0
  1318. package/components/PasswordInput/ClosedIcon/package.json +6 -0
  1319. package/components/PasswordInput/ClosedIcon.d.ts +3 -0
  1320. package/components/PasswordInput/OpenedIcon/OpenedIcon.js +17 -0
  1321. package/components/PasswordInput/OpenedIcon/OpenedIcon.js.map +1 -0
  1322. package/components/PasswordInput/OpenedIcon/package.json +6 -0
  1323. package/components/PasswordInput/OpenedIcon.d.ts +3 -0
  1324. package/components/PasswordInput/PasswordInput/PasswordInput.js +24 -19
  1325. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  1326. package/components/PasswordInput/PasswordInput.d.ts +4 -3
  1327. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js +12 -3
  1328. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js.map +1 -1
  1329. package/components/PasswordInput/PasswordInputIcon.d.ts +5 -3
  1330. package/components/Radio/Radio/Radio.js +11 -6
  1331. package/components/Radio/Radio/Radio.js.map +1 -1
  1332. package/components/Radio/Radio.d.ts +4 -3
  1333. package/components/Radio/Radio.styles/Radio.styles.js +1 -1
  1334. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  1335. package/components/RadioGroup/RadioGroup/RadioGroup.js +21 -28
  1336. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  1337. package/components/RadioGroup/RadioGroup.d.ts +7 -19
  1338. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +5 -8
  1339. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  1340. package/components/ResponsiveLayout/ResponsiveLayout.d.ts +6 -5
  1341. package/components/ResponsiveLayout/ResponsiveLayout.md +31 -0
  1342. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +20 -12
  1343. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  1344. package/components/ResponsiveLayout/decorator.d.ts +1 -1
  1345. package/components/ResponsiveLayout/types.d.ts +9 -1
  1346. package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js +42 -17
  1347. package/components/ResponsiveLayout/useResponsiveLayout/useResponsiveLayout.js.map +1 -1
  1348. package/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
  1349. package/components/ScrollContainer/ScrollBar/ScrollBar.js +67 -10
  1350. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  1351. package/components/ScrollContainer/ScrollBar.d.ts +12 -2
  1352. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +46 -16
  1353. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  1354. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +3 -2
  1355. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  1356. package/components/ScrollContainer/ScrollContainer.d.ts +30 -8
  1357. package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js +8 -5
  1358. package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js.map +1 -1
  1359. package/components/ScrollContainer/ScrollContainer.md +52 -0
  1360. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +30 -7
  1361. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  1362. package/components/ScrollContainer/ScrollContainer.styles.d.ts +9 -0
  1363. package/components/Select/ArrowDownIcon/ArrowDownIcon.js +17 -0
  1364. package/components/Select/ArrowDownIcon/ArrowDownIcon.js.map +1 -0
  1365. package/components/Select/ArrowDownIcon/package.json +6 -0
  1366. package/components/Select/ArrowDownIcon.d.ts +3 -0
  1367. package/components/Select/Item/Item.js.map +1 -1
  1368. package/components/Select/Item.d.ts +4 -2
  1369. package/components/Select/Select/Select.js +44 -56
  1370. package/components/Select/Select/Select.js.map +1 -1
  1371. package/components/Select/Select.d.ts +13 -38
  1372. package/components/Select/Select.md +14 -0
  1373. package/components/Select/Select.styles/Select.styles.js +4 -4
  1374. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  1375. package/components/Select/selectTheme/selectTheme.js +1 -0
  1376. package/components/Select/selectTheme/selectTheme.js.map +1 -1
  1377. package/components/SidePage/SidePage/SidePage.js +20 -6
  1378. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  1379. package/components/SidePage/SidePage.d.ts +11 -8
  1380. package/components/SidePage/SidePage.styles/SidePage.styles.js +1 -1
  1381. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  1382. package/components/SidePage/SidePageFooter/SidePageFooter.js +17 -2
  1383. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  1384. package/components/SidePage/SidePageFooter.d.ts +15 -5
  1385. package/components/SidePage/SidePageHeader/SidePageHeader.js +19 -3
  1386. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  1387. package/components/SidePage/SidePageHeader.d.ts +4 -1
  1388. package/components/Spinner/Spinner/Spinner.js +15 -13
  1389. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  1390. package/components/Spinner/Spinner.d.ts +19 -8
  1391. package/components/Spinner/Spinner.md +1 -1
  1392. package/components/Spinner/Spinner.styles/Spinner.styles.js +17 -8
  1393. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  1394. package/components/Spinner/Spinner.styles.d.ts +4 -1
  1395. package/components/Sticky/Sticky/Sticky.js +8 -5
  1396. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  1397. package/components/Sticky/Sticky.d.ts +7 -6
  1398. package/components/Switcher/Switcher/Switcher.js +84 -39
  1399. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  1400. package/components/Switcher/Switcher.d.ts +16 -5
  1401. package/components/Switcher/Switcher.md +97 -0
  1402. package/components/Switcher/helpers/helpers.js +3 -0
  1403. package/components/Switcher/helpers/helpers.js.map +1 -0
  1404. package/components/Switcher/helpers/package.json +6 -0
  1405. package/components/Switcher/helpers.d.ts +1 -0
  1406. package/components/Tabs/Indicator/Indicator.js +1 -1
  1407. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  1408. package/components/Tabs/Indicator.d.ts +1 -1
  1409. package/components/Tabs/Indicator.styles/Indicator.styles.js +1 -1
  1410. package/components/Tabs/Indicator.styles/Indicator.styles.js.map +1 -1
  1411. package/components/Tabs/Tab/Tab.js +18 -15
  1412. package/components/Tabs/Tab/Tab.js.map +1 -1
  1413. package/components/Tabs/Tab.d.ts +9 -13
  1414. package/components/Tabs/Tabs/Tabs.js +15 -18
  1415. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  1416. package/components/Tabs/Tabs.d.ts +9 -13
  1417. package/components/Textarea/Textarea/Textarea.js +26 -17
  1418. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  1419. package/components/Textarea/Textarea.d.ts +9 -10
  1420. package/components/Textarea/Textarea.md +19 -0
  1421. package/components/Textarea/Textarea.styles/Textarea.styles.js +15 -12
  1422. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  1423. package/components/Textarea/Textarea.styles.d.ts +1 -0
  1424. package/components/Textarea/TextareaCounter/TextareaCounter.js +15 -7
  1425. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  1426. package/components/Textarea/TextareaCounter.d.ts +2 -2
  1427. package/components/Toast/Toast/Toast.js +16 -9
  1428. package/components/Toast/Toast/Toast.js.map +1 -1
  1429. package/components/Toast/Toast.d.ts +6 -3
  1430. package/components/Toast/Toast.md +133 -0
  1431. package/components/Toast/ToastStatic/ToastStatic.js +5 -5
  1432. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  1433. package/components/Toast/ToastStatic.d.ts +3 -2
  1434. package/components/Toast/ToastView/ToastView.js +17 -0
  1435. package/components/Toast/ToastView/ToastView.js.map +1 -1
  1436. package/components/Toast/ToastView.styles/ToastView.styles.js +3 -1
  1437. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  1438. package/components/Toggle/Toggle/Toggle.js +25 -13
  1439. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  1440. package/components/Toggle/Toggle.d.ts +14 -7
  1441. package/components/Toggle/Toggle.styles/Toggle.styles.js +29 -20
  1442. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  1443. package/components/Toggle/Toggle.styles.d.ts +3 -0
  1444. package/components/Token/Token/Token.js +27 -15
  1445. package/components/Token/Token/Token.js.map +1 -1
  1446. package/components/Token/Token.d.ts +6 -1
  1447. package/components/Token/Token.styles/Token.styles.js +28 -10
  1448. package/components/Token/Token.styles/Token.styles.js.map +1 -1
  1449. package/components/Token/Token.styles.d.ts +6 -0
  1450. package/components/TokenInput/TokenInput/TokenInput.js +186 -134
  1451. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  1452. package/components/TokenInput/TokenInput.d.ts +72 -18
  1453. package/components/TokenInput/TokenInput.md +126 -0
  1454. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +15 -12
  1455. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  1456. package/components/TokenInput/TokenInput.styles.d.ts +1 -0
  1457. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +3 -2
  1458. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  1459. package/components/TokenInput/TokenInputMenu.d.ts +2 -1
  1460. package/components/Tooltip/Tooltip/Tooltip.js +76 -72
  1461. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  1462. package/components/Tooltip/Tooltip.d.ts +14 -21
  1463. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +1 -1
  1464. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  1465. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +15 -13
  1466. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  1467. package/components/TooltipMenu/TooltipMenu.d.ts +8 -7
  1468. package/components/TooltipMenu/TooltipMenu.md +28 -1
  1469. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +2 -2
  1470. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -1
  1471. package/hooks/useEffectWithoutInitCall.d.ts +2 -2
  1472. package/hooks/useMemoObject/useMemoObject.js.map +1 -1
  1473. package/hooks/useMemoObject.d.ts +2 -1
  1474. package/index.d.ts +3 -0
  1475. package/index.js +4 -1
  1476. package/index.js.map +1 -1
  1477. package/internal/BGRuler/BGRuler.js +11 -6
  1478. package/internal/BGRuler/BGRuler.js.map +1 -1
  1479. package/internal/BGRuler.d.ts +13 -15
  1480. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +66 -0
  1481. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -0
  1482. package/internal/CloseButtonIcon/CloseButtonIcon/package.json +6 -0
  1483. package/internal/CloseButtonIcon/CloseButtonIcon.d.ts +35 -0
  1484. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +20 -0
  1485. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -0
  1486. package/internal/CloseButtonIcon/CloseButtonIcon.styles/package.json +6 -0
  1487. package/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +7 -0
  1488. package/internal/CloseButtonIcon/CrossIcon/CrossIcon.js +23 -0
  1489. package/internal/CloseButtonIcon/CrossIcon/CrossIcon.js.map +1 -0
  1490. package/internal/CloseButtonIcon/CrossIcon/package.json +6 -0
  1491. package/internal/CloseButtonIcon/CrossIcon.d.ts +3 -0
  1492. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +3 -2
  1493. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  1494. package/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
  1495. package/internal/ComponentCombinator/ComponentCombinator.js +8 -5
  1496. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  1497. package/internal/ComponentCombinator.d.ts +6 -8
  1498. package/internal/ComponentTable/ComponentTable.js +16 -4
  1499. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  1500. package/internal/ComponentTable.d.ts +7 -8
  1501. package/internal/CustomComboBox/ArrowDownIcon/ArrowDownIcon.js +17 -0
  1502. package/internal/CustomComboBox/ArrowDownIcon/ArrowDownIcon.js.map +1 -0
  1503. package/internal/CustomComboBox/ArrowDownIcon/package.json +6 -0
  1504. package/internal/CustomComboBox/ArrowDownIcon.d.ts +3 -0
  1505. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +30 -34
  1506. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  1507. package/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -6
  1508. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +62 -17
  1509. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  1510. package/internal/CustomComboBox/ComboBoxView.d.ts +11 -14
  1511. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +30 -17
  1512. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  1513. package/internal/CustomComboBox/CustomComboBox.d.ts +5 -2
  1514. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +9 -6
  1515. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  1516. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +6 -0
  1517. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -0
  1518. package/internal/CustomComboBox/getComboBoxTheme/package.json +6 -0
  1519. package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -0
  1520. package/internal/DataTids/DataTids/DataTids.js.map +1 -1
  1521. package/internal/DataTids/DataTids.d.ts +5 -5
  1522. package/internal/DateSelect/DateSelect/DateSelect.js +54 -16
  1523. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  1524. package/internal/DateSelect/DateSelect.d.ts +5 -6
  1525. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +19 -16
  1526. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  1527. package/internal/DateSelect/DateSelect.styles.d.ts +1 -0
  1528. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +23 -14
  1529. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  1530. package/internal/DropdownContainer/DropdownContainer.d.ts +8 -7
  1531. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +36 -0
  1532. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -0
  1533. package/internal/DropdownContainer/getManualPosition/package.json +6 -0
  1534. package/internal/DropdownContainer/getManualPosition.d.ts +19 -0
  1535. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -1
  1536. package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
  1537. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +7 -1
  1538. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -1
  1539. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon/DeleteIcon.js +17 -0
  1540. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon/DeleteIcon.js.map +1 -0
  1541. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon/package.json +6 -0
  1542. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +3 -0
  1543. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon/ErrorIcon.js +17 -0
  1544. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon/ErrorIcon.js.map +1 -0
  1545. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon/package.json +6 -0
  1546. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +3 -0
  1547. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +48 -47
  1548. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  1549. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
  1550. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +26 -5
  1551. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -1
  1552. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
  1553. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js +60 -0
  1554. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -0
  1555. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/package.json +6 -0
  1556. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +12 -0
  1557. package/internal/FileUploaderControl/FileUploaderFile/OkIcon/OkIcon.js +17 -0
  1558. package/internal/FileUploaderControl/FileUploaderFile/OkIcon/OkIcon.js.map +1 -0
  1559. package/internal/FileUploaderControl/FileUploaderFile/OkIcon/package.json +6 -0
  1560. package/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +3 -0
  1561. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +13 -3
  1562. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  1563. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
  1564. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +10 -1
  1565. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -1
  1566. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
  1567. package/internal/FileUploaderControl/hooks/useFileUploaderSize/package.json +6 -0
  1568. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js +21 -0
  1569. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -0
  1570. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
  1571. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -1
  1572. package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
  1573. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
  1574. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  1575. package/internal/InputLikeText/InputLikeText/InputLikeText.js +46 -17
  1576. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1577. package/internal/InputLikeText/InputLikeText.d.ts +5 -3
  1578. package/internal/InternalMenu/InternalMenu/InternalMenu.js +62 -23
  1579. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1580. package/internal/InternalMenu/InternalMenu.d.ts +4 -9
  1581. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +13 -10
  1582. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  1583. package/internal/InternalMenu/InternalMenu.styles.d.ts +5 -4
  1584. package/internal/MaskedInput/MaskedInput/MaskedInput.js +16 -7
  1585. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  1586. package/internal/MaskedInput/MaskedInput.d.ts +5 -2
  1587. package/internal/Menu/Menu/Menu.js +32 -11
  1588. package/internal/Menu/Menu/Menu.js.map +1 -1
  1589. package/internal/Menu/Menu.d.ts +5 -7
  1590. package/internal/Menu/Menu.styles/Menu.styles.js +13 -7
  1591. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  1592. package/internal/Menu/Menu.styles.d.ts +2 -0
  1593. package/internal/MenuMessage/MenuMessage/MenuMessage.js +31 -0
  1594. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -0
  1595. package/internal/MenuMessage/MenuMessage/package.json +6 -0
  1596. package/internal/MenuMessage/MenuMessage.d.ts +10 -0
  1597. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +23 -0
  1598. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -0
  1599. package/internal/MenuMessage/MenuMessage.styles/package.json +6 -0
  1600. package/{components/DatePicker/Picker.styles.d.ts → internal/MenuMessage/MenuMessage.styles.d.ts} +1 -1
  1601. package/internal/MenuMessage/index/index.js +1 -0
  1602. package/internal/MenuMessage/index/index.js.map +1 -0
  1603. package/internal/MenuMessage/index/package.json +6 -0
  1604. package/internal/MenuMessage/index.d.ts +1 -0
  1605. package/internal/MenuMessage/package.json +6 -0
  1606. package/internal/MobilePopup/MobilePopup/MobilePopup.js +23 -53
  1607. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  1608. package/internal/MobilePopup/MobilePopup.d.ts +13 -12
  1609. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +11 -11
  1610. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
  1611. package/internal/MobilePopup/MobilePopup.styles.d.ts +3 -3
  1612. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +11 -35
  1613. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  1614. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -4
  1615. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +6 -12
  1616. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
  1617. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +2 -4
  1618. package/internal/NativeDateInput/utils/utils.js.map +1 -1
  1619. package/internal/NativeDateInput/utils.d.ts +1 -1
  1620. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  1621. package/internal/Popup/Popup/Popup.js +69 -38
  1622. package/internal/Popup/Popup/Popup.js.map +1 -1
  1623. package/internal/Popup/Popup.d.ts +18 -18
  1624. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  1625. package/internal/Popup/PopupHelper.d.ts +1 -1
  1626. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  1627. package/internal/Popup/PopupPin.d.ts +1 -1
  1628. package/internal/PopupMenu/PopupMenu/PopupMenu.js +25 -6
  1629. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1630. package/internal/PopupMenu/PopupMenu.d.ts +16 -11
  1631. package/internal/RenderLayer/RenderLayer/RenderLayer.js +20 -13
  1632. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1633. package/internal/RenderLayer/RenderLayer.d.ts +6 -4
  1634. package/internal/ThemePlayground/AnotherInputsPlayground/AnotherInputsPlayground.js.map +1 -1
  1635. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
  1636. package/internal/ThemePlayground/CurrencyInputPlayground/CurrencyInputPlayground.js.map +1 -1
  1637. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
  1638. package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js +10 -6
  1639. package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js.map +1 -1
  1640. package/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
  1641. package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
  1642. package/internal/ThemePlayground/HintPlayground.d.ts +1 -1
  1643. package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js +2 -2
  1644. package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js.map +1 -1
  1645. package/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
  1646. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  1647. package/internal/ThemePlayground/Playground.d.ts +1 -1
  1648. package/internal/ThemePlayground/SelectPlayground/SelectPlayground.js.map +1 -1
  1649. package/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
  1650. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  1651. package/internal/ThemePlayground/SizesGroup.d.ts +2 -2
  1652. package/internal/ThemePlayground/SwitcherPlayground/SwitcherPlayground.js.map +1 -1
  1653. package/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
  1654. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +13 -3
  1655. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  1656. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  1657. package/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
  1658. package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js +5 -17
  1659. package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js.map +1 -1
  1660. package/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
  1661. package/internal/ThemePlayground/TokenInputPlayground/TokenInputPlayground.js.map +1 -1
  1662. package/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
  1663. package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -2
  1664. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1665. package/internal/ThemePlayground/VariableValue.d.ts +6 -8
  1666. package/internal/ThemePlayground/constants/constants.js +3 -0
  1667. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  1668. package/internal/ThemePlayground/helpers/helpers.js +0 -1
  1669. package/internal/ThemePlayground/helpers/helpers.js.map +1 -1
  1670. package/internal/ThemePlayground/helpers.d.ts +1 -1
  1671. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  1672. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  1673. package/internal/ZIndex/ZIndex/ZIndex.js +48 -24
  1674. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1675. package/internal/ZIndex/ZIndex.d.ts +22 -12
  1676. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +1 -6
  1677. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1678. package/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  1679. package/internal/icons/16px/index/index.js +3 -2
  1680. package/internal/icons/16px/index/index.js.map +1 -1
  1681. package/internal/icons/20px/svg/svg.js +2 -1
  1682. package/internal/icons/20px/svg/svg.js.map +1 -1
  1683. package/internal/icons/CloudIcon/CloudIcon.js +3 -1
  1684. package/internal/icons/CloudIcon/CloudIcon.js.map +1 -1
  1685. package/internal/icons/CrossIcon/CrossIcon.js +2 -1
  1686. package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
  1687. package/internal/icons/SpinnerIcon/SpinnerIcon.js +12 -2
  1688. package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
  1689. package/internal/icons/SpinnerIcon.d.ts +20 -14
  1690. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js +1 -1
  1691. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
  1692. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light/ArrowALeftIcon16Light.js +11 -0
  1693. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light/ArrowALeftIcon16Light.js.map +1 -0
  1694. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light/package.json +6 -0
  1695. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +2 -0
  1696. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light/ArrowALeftIcon20Light.js +12 -0
  1697. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light/ArrowALeftIcon20Light.js.map +1 -0
  1698. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light/package.json +6 -0
  1699. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +2 -0
  1700. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular/ArrowALeftIcon24Regular.js +12 -0
  1701. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular/ArrowALeftIcon24Regular.js.map +1 -0
  1702. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular/package.json +6 -0
  1703. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +2 -0
  1704. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light/ArrowARightIcon16Light.js +11 -0
  1705. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light/ArrowARightIcon16Light.js.map +1 -0
  1706. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light/package.json +6 -0
  1707. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +2 -0
  1708. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light/ArrowARightIcon20Light.js +12 -0
  1709. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light/ArrowARightIcon20Light.js.map +1 -0
  1710. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light/package.json +6 -0
  1711. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +2 -0
  1712. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular/ArrowARightIcon24Regular.js +12 -0
  1713. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular/ArrowARightIcon24Regular.js.map +1 -0
  1714. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular/package.json +6 -0
  1715. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +2 -0
  1716. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light/ArrowAUp16Light.js +11 -0
  1717. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light/ArrowAUp16Light.js.map +1 -0
  1718. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light/package.json +6 -0
  1719. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +2 -0
  1720. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular/ArrowCDownIcon16Regular.js +11 -0
  1721. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular/ArrowCDownIcon16Regular.js.map +1 -0
  1722. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular/package.json +6 -0
  1723. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +2 -0
  1724. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular/ArrowCDownIcon20Regular.js +12 -0
  1725. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular/ArrowCDownIcon20Regular.js.map +1 -0
  1726. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular/package.json +6 -0
  1727. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +2 -0
  1728. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular/ArrowCDownIcon24Regular.js +12 -0
  1729. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular/ArrowCDownIcon24Regular.js.map +1 -0
  1730. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular/package.json +6 -0
  1731. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +2 -0
  1732. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light/ArrowCRightIcon16Light.js +11 -0
  1733. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light/ArrowCRightIcon16Light.js.map +1 -0
  1734. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light/package.json +6 -0
  1735. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +2 -0
  1736. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light/ArrowCRightIcon20Light.js +12 -0
  1737. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light/ArrowCRightIcon20Light.js.map +1 -0
  1738. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light/package.json +6 -0
  1739. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +2 -0
  1740. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular/ArrowCRightIcon24Regular.js +12 -0
  1741. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular/ArrowCRightIcon24Regular.js.map +1 -0
  1742. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular/package.json +6 -0
  1743. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +2 -0
  1744. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular/ArrowCUpIcon16Regular.js +11 -0
  1745. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular/ArrowCUpIcon16Regular.js.map +1 -0
  1746. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular/package.json +6 -0
  1747. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +2 -0
  1748. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular/ArrowCollapseCVOpenIcon16Regular.js +13 -0
  1749. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular/ArrowCollapseCVOpenIcon16Regular.js.map +1 -0
  1750. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular/package.json +6 -0
  1751. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +2 -0
  1752. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light/ArrowShapeDRadiusUpLeftIcon16Light.js +13 -0
  1753. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light/ArrowShapeDRadiusUpLeftIcon16Light.js.map +1 -0
  1754. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light/package.json +6 -0
  1755. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +2 -0
  1756. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light/ArrowShapeDRadiusUpLeftIcon20Light.js +14 -0
  1757. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light/ArrowShapeDRadiusUpLeftIcon20Light.js.map +1 -0
  1758. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light/package.json +6 -0
  1759. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +2 -0
  1760. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular/ArrowShapeDRadiusUpLeftIcon24Regular.js +14 -0
  1761. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular/ArrowShapeDRadiusUpLeftIcon24Regular.js.map +1 -0
  1762. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular/package.json +6 -0
  1763. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +2 -0
  1764. package/internal/icons2022/BaseIcon/BaseIcon.js +44 -0
  1765. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -0
  1766. package/internal/icons2022/BaseIcon/package.json +6 -0
  1767. package/internal/icons2022/BaseIcon.d.ts +11 -0
  1768. package/internal/icons2022/CalendarIcon/CalendarIcon16Light/CalendarIcon16Light.js +29 -0
  1769. package/internal/icons2022/CalendarIcon/CalendarIcon16Light/CalendarIcon16Light.js.map +1 -0
  1770. package/internal/icons2022/CalendarIcon/CalendarIcon16Light/package.json +6 -0
  1771. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +2 -0
  1772. package/internal/icons2022/CalendarIcon/CalendarIcon20Light/CalendarIcon20Light.js +30 -0
  1773. package/internal/icons2022/CalendarIcon/CalendarIcon20Light/CalendarIcon20Light.js.map +1 -0
  1774. package/internal/icons2022/CalendarIcon/CalendarIcon20Light/package.json +6 -0
  1775. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +2 -0
  1776. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular/CalendarIcon24Regular.js +30 -0
  1777. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular/CalendarIcon24Regular.js.map +1 -0
  1778. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular/package.json +6 -0
  1779. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +2 -0
  1780. package/internal/icons2022/CheckAIcon/CheckAIcon16Light/CheckAIcon16Light.js +11 -0
  1781. package/internal/icons2022/CheckAIcon/CheckAIcon16Light/CheckAIcon16Light.js.map +1 -0
  1782. package/internal/icons2022/CheckAIcon/CheckAIcon16Light/package.json +6 -0
  1783. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +2 -0
  1784. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular/CheckAIcon16Regular.js +11 -0
  1785. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular/CheckAIcon16Regular.js.map +1 -0
  1786. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular/package.json +6 -0
  1787. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +2 -0
  1788. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid/CheckAIcon16Solid.js +11 -0
  1789. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid/CheckAIcon16Solid.js.map +1 -0
  1790. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid/package.json +6 -0
  1791. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +2 -0
  1792. package/internal/icons2022/CheckAIcon/CheckAIcon20Light/CheckAIcon20Light.js +12 -0
  1793. package/internal/icons2022/CheckAIcon/CheckAIcon20Light/CheckAIcon20Light.js.map +1 -0
  1794. package/internal/icons2022/CheckAIcon/CheckAIcon20Light/package.json +6 -0
  1795. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +2 -0
  1796. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid/CheckAIcon20Solid.js +12 -0
  1797. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid/CheckAIcon20Solid.js.map +1 -0
  1798. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid/package.json +6 -0
  1799. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +2 -0
  1800. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular/CheckAIcon24Regular.js +12 -0
  1801. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular/CheckAIcon24Regular.js.map +1 -0
  1802. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular/package.json +6 -0
  1803. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +2 -0
  1804. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light/EyeClosedIcon16Light.js +11 -0
  1805. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light/EyeClosedIcon16Light.js.map +1 -0
  1806. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light/package.json +6 -0
  1807. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +2 -0
  1808. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light/EyeClosedIcon20Light.js +12 -0
  1809. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light/EyeClosedIcon20Light.js.map +1 -0
  1810. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light/package.json +6 -0
  1811. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +2 -0
  1812. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular/EyeClosedIcon24Regular.js +12 -0
  1813. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular/EyeClosedIcon24Regular.js.map +1 -0
  1814. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular/package.json +6 -0
  1815. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +2 -0
  1816. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light/EyeOpenIcon16Light.js +17 -0
  1817. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light/EyeOpenIcon16Light.js.map +1 -0
  1818. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light/package.json +6 -0
  1819. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +2 -0
  1820. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light/EyeOpenIcon20Light.js +18 -0
  1821. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light/EyeOpenIcon20Light.js.map +1 -0
  1822. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light/package.json +6 -0
  1823. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +2 -0
  1824. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular/EyeOpenIcon24Regular.js +18 -0
  1825. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular/EyeOpenIcon24Regular.js.map +1 -0
  1826. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular/package.json +6 -0
  1827. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +2 -0
  1828. package/internal/icons2022/LoadingIcon/LoadingIcon.js +43 -0
  1829. package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -0
  1830. package/internal/icons2022/LoadingIcon/package.json +6 -0
  1831. package/internal/icons2022/LoadingIcon.d.ts +4 -0
  1832. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light/MathFunctionIcon16Light.js +13 -0
  1833. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light/MathFunctionIcon16Light.js.map +1 -0
  1834. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light/package.json +6 -0
  1835. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +2 -0
  1836. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light/MathFunctionIcon20Light.js +14 -0
  1837. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light/MathFunctionIcon20Light.js.map +1 -0
  1838. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light/package.json +6 -0
  1839. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +2 -0
  1840. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular/MathFunctionIcon24Regular.js +14 -0
  1841. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular/MathFunctionIcon24Regular.js.map +1 -0
  1842. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular/package.json +6 -0
  1843. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +2 -0
  1844. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light/MinusCircleIcon16Light.js +15 -0
  1845. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light/MinusCircleIcon16Light.js.map +1 -0
  1846. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light/package.json +6 -0
  1847. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +2 -0
  1848. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular/MinusCircleIcon16Regular.js +15 -0
  1849. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular/MinusCircleIcon16Regular.js.map +1 -0
  1850. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular/package.json +6 -0
  1851. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +2 -0
  1852. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light/MinusCircleIcon20Light.js +16 -0
  1853. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light/MinusCircleIcon20Light.js.map +1 -0
  1854. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light/package.json +6 -0
  1855. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +2 -0
  1856. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular/MinusCircleIcon24Regular.js +16 -0
  1857. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular/MinusCircleIcon24Regular.js.map +1 -0
  1858. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular/package.json +6 -0
  1859. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +2 -0
  1860. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light/NetUploadIcon16Light.js +13 -0
  1861. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light/NetUploadIcon16Light.js.map +1 -0
  1862. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light/package.json +6 -0
  1863. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +2 -0
  1864. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light/NetUploadIcon20Light.js +14 -0
  1865. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light/NetUploadIcon20Light.js.map +1 -0
  1866. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light/package.json +6 -0
  1867. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +2 -0
  1868. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular/NetUploadIcon24Regular.js +14 -0
  1869. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular/NetUploadIcon24Regular.js.map +1 -0
  1870. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular/package.json +6 -0
  1871. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +2 -0
  1872. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid/QuestionCircleIcon16Solid.js +13 -0
  1873. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid/QuestionCircleIcon16Solid.js.map +1 -0
  1874. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid/package.json +6 -0
  1875. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +2 -0
  1876. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular/SearchLoupeIcon16Regular.js +13 -0
  1877. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular/SearchLoupeIcon16Regular.js.map +1 -0
  1878. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular/package.json +6 -0
  1879. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +2 -0
  1880. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid/ShapeSquareIcon16Solid.js +11 -0
  1881. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid/ShapeSquareIcon16Solid.js.map +1 -0
  1882. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid/package.json +6 -0
  1883. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +2 -0
  1884. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light/UiMenuDotsThreeVIcon16Light.js +15 -0
  1885. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light/UiMenuDotsThreeVIcon16Light.js.map +1 -0
  1886. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light/package.json +6 -0
  1887. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +2 -0
  1888. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular/UiMenuDotsThreeVIcon20Regular.js +16 -0
  1889. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular/UiMenuDotsThreeVIcon20Regular.js.map +1 -0
  1890. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular/package.json +6 -0
  1891. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +2 -0
  1892. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular/UiMenuDotsThreeVIcon24Regular.js +16 -0
  1893. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular/UiMenuDotsThreeVIcon24Regular.js.map +1 -0
  1894. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular/package.json +6 -0
  1895. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +2 -0
  1896. package/internal/icons2022/XIcon/XIcon16Light/XIcon16Light.js +11 -0
  1897. package/internal/icons2022/XIcon/XIcon16Light/XIcon16Light.js.map +1 -0
  1898. package/internal/icons2022/XIcon/XIcon16Light/package.json +6 -0
  1899. package/internal/icons2022/XIcon/XIcon16Light.d.ts +2 -0
  1900. package/internal/icons2022/XIcon/XIcon16Regular/XIcon16Regular.js +11 -0
  1901. package/internal/icons2022/XIcon/XIcon16Regular/XIcon16Regular.js.map +1 -0
  1902. package/internal/icons2022/XIcon/XIcon16Regular/package.json +6 -0
  1903. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +2 -0
  1904. package/internal/icons2022/XIcon/XIcon20Light/XIcon20Light.js +12 -0
  1905. package/internal/icons2022/XIcon/XIcon20Light/XIcon20Light.js.map +1 -0
  1906. package/internal/icons2022/XIcon/XIcon20Light/package.json +6 -0
  1907. package/internal/icons2022/XIcon/XIcon20Light.d.ts +2 -0
  1908. package/internal/icons2022/XIcon/XIcon20Regular/XIcon20Regular.js +12 -0
  1909. package/internal/icons2022/XIcon/XIcon20Regular/XIcon20Regular.js.map +1 -0
  1910. package/internal/icons2022/XIcon/XIcon20Regular/package.json +6 -0
  1911. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +2 -0
  1912. package/internal/icons2022/XIcon/XIcon24Regular/XIcon24Regular.js +12 -0
  1913. package/internal/icons2022/XIcon/XIcon24Regular/XIcon24Regular.js.map +1 -0
  1914. package/internal/icons2022/XIcon/XIcon24Regular/package.json +6 -0
  1915. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +2 -0
  1916. package/internal/icons2022/iconConstants/iconConstants.js +7 -0
  1917. package/internal/icons2022/iconConstants/iconConstants.js.map +1 -0
  1918. package/internal/icons2022/iconConstants/package.json +6 -0
  1919. package/internal/icons2022/iconConstants.d.ts +8 -0
  1920. package/internal/icons2022/iconSizer/iconSizer.js +39 -0
  1921. package/internal/icons2022/iconSizer/iconSizer.js.map +1 -0
  1922. package/internal/icons2022/iconSizer/package.json +6 -0
  1923. package/internal/icons2022/iconSizer.d.ts +11 -0
  1924. package/internal/themes/DarkTheme/DarkTheme.js +4 -3
  1925. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  1926. package/internal/themes/DarkTheme.d.ts +3 -0
  1927. package/internal/themes/DefaultTheme/DefaultTheme.js +498 -36
  1928. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1929. package/internal/themes/DefaultTheme.d.ts +185 -4
  1930. package/internal/themes/NotFlat/NotFlat.js +1 -0
  1931. package/internal/themes/NotFlat/NotFlat.js.map +1 -1
  1932. package/internal/themes/NotFlat.d.ts +1 -0
  1933. package/internal/themes/Theme2022/Theme2022.js +432 -21
  1934. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  1935. package/internal/themes/Theme2022.d.ts +235 -19
  1936. package/internal/themes/Theme2022Dark/Theme2022Dark.js +287 -2
  1937. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1938. package/internal/themes/Theme2022Dark.d.ts +190 -1
  1939. package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
  1940. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -1
  1941. package/lib/InstanceWithAnchorElement.d.ts +1 -1
  1942. package/lib/ModalStack/ModalStack.js +4 -3
  1943. package/lib/ModalStack/ModalStack.js.map +1 -1
  1944. package/lib/SSRSafe/SSRSafe.js +12 -0
  1945. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1946. package/lib/SSRSafe.d.ts +3 -1
  1947. package/lib/Upgrades/Upgrades.js +4 -1
  1948. package/lib/Upgrades/Upgrades.js.map +1 -1
  1949. package/lib/animation/index/index.js +1 -1
  1950. package/lib/animation/index/index.js.map +1 -1
  1951. package/lib/callChildRef/callChildRef/callChildRef.js +1 -1
  1952. package/lib/callChildRef/callChildRef/callChildRef.js.map +1 -1
  1953. package/lib/chars/chars.js +8 -0
  1954. package/lib/chars/chars.js.map +1 -0
  1955. package/lib/chars/package.json +6 -0
  1956. package/lib/chars.d.ts +8 -0
  1957. package/lib/createPropsGetter/createPropsGetter.js +1 -0
  1958. package/lib/createPropsGetter/createPropsGetter.js.map +1 -1
  1959. package/lib/createPropsGetter.d.ts +2 -1
  1960. package/lib/currentEnvironment/currentEnvironment.js +34 -14
  1961. package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
  1962. package/lib/date/InternalDate/InternalDate.js +1 -1
  1963. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  1964. package/lib/date/InternalDate.d.ts +1 -1
  1965. package/lib/date/InternalDateCalculator/InternalDateCalculator.js +1 -2
  1966. package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
  1967. package/lib/date/InternalDateCalculator.d.ts +1 -1
  1968. package/lib/date/InternalDateValidator/InternalDateValidator.js +8 -2
  1969. package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
  1970. package/lib/date/InternalDateValidator.d.ts +1 -1
  1971. package/lib/extractKeyboardAction/extractKeyboardAction.js.map +1 -1
  1972. package/lib/extractKeyboardAction.d.ts +1 -1
  1973. package/lib/filterProps/filterProps.js +0 -1
  1974. package/lib/filterProps/filterProps.js.map +1 -1
  1975. package/lib/forwardRefAndName/forwardRefAndName.js +11 -0
  1976. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  1977. package/lib/forwardRefAndName.d.ts +4 -0
  1978. package/lib/listenFocusOutside/listenFocusOutside.js +1 -1
  1979. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1980. package/lib/listenFocusOutside.d.ts +1 -1
  1981. package/lib/locale/LOCALECONTEXT.md +1 -0
  1982. package/lib/locale/decorators/decorators.js.map +1 -1
  1983. package/lib/locale/types/types.js.map +1 -1
  1984. package/lib/locale/types.d.ts +2 -0
  1985. package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -1
  1986. package/lib/locale/useLocaleForControl.d.ts +1 -1
  1987. package/lib/memo/memo.js +2 -4
  1988. package/lib/memo/memo.js.map +1 -1
  1989. package/lib/memo.d.ts +3 -1
  1990. package/lib/net/fetch/fetch.js +2 -3
  1991. package/lib/net/fetch/fetch.js.map +1 -1
  1992. package/lib/reactGetTextContent/reactGetTextContent.js +0 -1
  1993. package/lib/reactGetTextContent/reactGetTextContent.js.map +1 -1
  1994. package/lib/rootNode/getRootNode/getRootNode.js +32 -14
  1995. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1996. package/lib/rootNode/getRootNode.d.ts +3 -3
  1997. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  1998. package/lib/rootNode/rootNodeDecorator.d.ts +9 -9
  1999. package/lib/styles/ColorFactory/ColorFactory.js +3 -1
  2000. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  2001. package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
  2002. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +8 -14
  2003. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  2004. package/lib/theming/AnimationKeyframes.d.ts +3 -5
  2005. package/lib/theming/Emotion/Emotion.js.map +1 -1
  2006. package/lib/theming/ThemeContext.md +26 -18
  2007. package/lib/theming/ThemeFactory/ThemeFactory.js +11 -2
  2008. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  2009. package/lib/theming/ThemeFactory.d.ts +1 -1
  2010. package/lib/theming/ThemeHelpers/ThemeHelpers.js +37 -5
  2011. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  2012. package/lib/theming/ThemeHelpers.d.ts +19 -4
  2013. package/lib/theming/themes/DarkTheme/DarkTheme.js +2 -2
  2014. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  2015. package/lib/theming/themes/Theme2022/Theme2022.js +2 -1
  2016. package/lib/theming/themes/Theme2022/Theme2022.js.map +1 -1
  2017. package/lib/theming/themes/Theme2022.d.ts +1 -1
  2018. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +2 -1
  2019. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  2020. package/lib/theming/themes/Theme2022Dark.d.ts +1 -1
  2021. package/lib/utils/utils.js +6 -3
  2022. package/lib/utils/utils.js.map +1 -1
  2023. package/lib/utils.d.ts +9 -5
  2024. package/lib/withClassWrapper/withClassWrapper.js +1 -4
  2025. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  2026. package/package.json +10 -26
  2027. package/typings/event-types.d.ts +2 -2
  2028. package/typings/global.d.ts +4 -0
  2029. package/{cjs/typings/html-props.d.ts → typings/html.d.ts} +3 -2
  2030. package/typings/utility-types.d.ts +6 -0
  2031. package/cjs/components/DatePicker/Picker.styles.js +0 -38
  2032. package/cjs/components/DatePicker/Picker.styles.js.map +0 -1
  2033. package/cjs/internal/Calendar/Calendar.d.ts +0 -72
  2034. package/cjs/internal/Calendar/Calendar.js +0 -382
  2035. package/cjs/internal/Calendar/Calendar.js.map +0 -1
  2036. package/cjs/internal/Calendar/Calendar.styles.js +0 -23
  2037. package/cjs/internal/Calendar/Calendar.styles.js.map +0 -1
  2038. package/cjs/internal/Calendar/CalendarUtils.js +0 -71
  2039. package/cjs/internal/Calendar/CalendarUtils.js.map +0 -1
  2040. package/cjs/internal/Calendar/DayCellView.js.map +0 -1
  2041. package/cjs/internal/Calendar/DayCellView.styles.js.map +0 -1
  2042. package/cjs/internal/Calendar/Month.js.map +0 -1
  2043. package/cjs/internal/Calendar/config.d.ts +0 -9
  2044. package/components/DatePicker/Picker.styles/Picker.styles.js +0 -13
  2045. package/components/DatePicker/Picker.styles/Picker.styles.js.map +0 -1
  2046. package/components/DatePicker/Picker.styles/package.json +0 -6
  2047. package/internal/Calendar/Calendar/Calendar.js.map +0 -1
  2048. package/internal/Calendar/Calendar.d.ts +0 -72
  2049. package/internal/Calendar/Calendar.styles/Calendar.styles.js +0 -14
  2050. package/internal/Calendar/Calendar.styles/Calendar.styles.js.map +0 -1
  2051. package/internal/Calendar/CalendarUtils/CalendarUtils.js.map +0 -1
  2052. package/internal/Calendar/DayCellView/DayCellView.js.map +0 -1
  2053. package/internal/Calendar/DayCellView.styles/DayCellView.styles.js.map +0 -1
  2054. package/internal/Calendar/Month/Month.js.map +0 -1
  2055. package/internal/Calendar/MonthView/MonthView.js.map +0 -1
  2056. package/internal/Calendar/config.d.ts +0 -9
  2057. /package/cjs/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
  2058. /package/cjs/{internal → components}/Calendar/CalendarDateShape.js +0 -0
  2059. /package/cjs/{internal → components}/Calendar/CalendarDateShape.js.map +0 -0
  2060. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
  2061. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js +0 -0
  2062. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js.map +0 -0
  2063. /package/cjs/{internal → components}/Calendar/DayCellView.d.ts +0 -0
  2064. /package/cjs/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
  2065. /package/cjs/{internal → components}/Calendar/DayCellViewModel.js +0 -0
  2066. /package/cjs/{internal → components}/Calendar/DayCellViewModel.js.map +0 -0
  2067. /package/cjs/{internal → components}/Calendar/Month.d.ts +0 -0
  2068. /package/cjs/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
  2069. /package/cjs/{internal → components}/Calendar/MonthView.styles.js +0 -0
  2070. /package/cjs/{internal → components}/Calendar/MonthView.styles.js.map +0 -0
  2071. /package/cjs/{internal → components}/Calendar/MonthViewModel.js +0 -0
  2072. /package/cjs/{internal → components}/Calendar/MonthViewModel.js.map +0 -0
  2073. /package/cjs/{internal → components}/Calendar/config.js +0 -0
  2074. /package/cjs/{internal → components}/Calendar/config.js.map +0 -0
  2075. /package/cjs/{internal → components}/Calendar/index.d.ts +0 -0
  2076. /package/cjs/{internal → components}/Calendar/index.js +0 -0
  2077. /package/cjs/{internal → components}/Calendar/index.js.map +0 -0
  2078. /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js +0 -0
  2079. /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js.map +0 -0
  2080. /package/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
  2081. /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js +0 -0
  2082. /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js.map +0 -0
  2083. /package/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
  2084. /package/{internal → components}/Calendar/DayCellView.d.ts +0 -0
  2085. /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js +0 -0
  2086. /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js.map +0 -0
  2087. /package/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
  2088. /package/{internal → components}/Calendar/Month.d.ts +0 -0
  2089. /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js +0 -0
  2090. /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js.map +0 -0
  2091. /package/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
  2092. /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js +0 -0
  2093. /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js.map +0 -0
  2094. /package/{internal → components}/Calendar/config/config.js +0 -0
  2095. /package/{internal → components}/Calendar/config/config.js.map +0 -0
  2096. /package/{internal → components}/Calendar/index/index.js +0 -0
  2097. /package/{internal → components}/Calendar/index/index.js.map +0 -0
  2098. /package/{internal → components}/Calendar/index.d.ts +0 -0
@@ -1,9 +1,10 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.PopupPositions = exports.PopupDataTids = exports.Popup = exports.DefaultPosition = void 0;var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.PopupPositions = exports.PopupDataTids = exports.Popup = exports.DefaultPosition = exports.DUMMY_LOCATION = void 0;var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _propTypes = _interopRequireDefault(require("prop-types"));
3
3
  var _reactTransitionGroup = require("react-transition-group");
4
4
  var _raf = _interopRequireDefault(require("raf"));
5
5
  var _warning = _interopRequireDefault(require("warning"));
6
6
 
7
+ var _getDOMRect = require("../../lib/dom/getDOMRect");
7
8
 
8
9
  var LayoutEvents = _interopRequireWildcard(require("../../lib/LayoutEvents"));
9
10
  var _ZIndex = require("../ZIndex");
@@ -22,6 +23,7 @@ var _MobilePopup = require("../MobilePopup");
22
23
  var _rootNode = require("../../lib/rootNode");
23
24
  var _callChildRef = require("../../lib/callChildRef/callChildRef");
24
25
  var _InstanceWithAnchorElement = require("../../lib/InstanceWithAnchorElement");
26
+ var _createPropsGetter = require("../../lib/createPropsGetter");
25
27
 
26
28
  var _PopupPin = require("./PopupPin");
27
29
  var _PopupHelper = require("./PopupHelper");
@@ -52,7 +54,11 @@ var DUMMY_LOCATION = {
52
54
  position: DefaultPosition,
53
55
  coordinates: {
54
56
  top: -9999,
55
- left: -9999 } };
57
+ left: -9999 } };exports.DUMMY_LOCATION = DUMMY_LOCATION;
58
+
59
+
60
+
61
+
56
62
 
57
63
 
58
64
 
@@ -121,6 +127,13 @@ var PopupDataTids = {
121
127
 
122
128
 
123
129
 
130
+
131
+
132
+
133
+
134
+
135
+
136
+
124
137
  Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(Popup, _React$Component);function Popup() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
125
138
 
126
139
 
@@ -195,6 +208,8 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
195
208
 
196
209
 
197
210
 
211
+
212
+ getProps = (0, _createPropsGetter.createPropsGetter)(Popup.defaultProps);_this.
198
213
 
199
214
 
200
215
 
@@ -207,6 +222,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
207
222
 
208
223
 
209
224
  refForTransition = /*#__PURE__*/_react.default.createRef();_this.
225
+ hasAnchorElementListeners = false;_this.
210
226
 
211
227
  anchorElement = null;_this.
212
228
 
@@ -316,6 +332,13 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
316
332
 
317
333
 
318
334
 
335
+
336
+
337
+
338
+
339
+
340
+
341
+
319
342
 
320
343
 
321
344
 
@@ -344,6 +367,16 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
344
367
 
345
368
 
346
369
 
370
+
371
+
372
+
373
+
374
+
375
+
376
+
377
+
378
+
379
+
347
380
 
348
381
 
349
382
 
@@ -387,13 +420,15 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
387
420
 
388
421
  calculateWidth = function (width) {
389
422
  if (typeof width === 'string' && width.includes('%')) {
390
- return _this.anchorElement ? _this.anchorElement.offsetWidth * parseFloat(width) / 100 : 0;
423
+ var anchorWidth = Math.floor((0, _getDOMRect.getDOMRect)(_this.anchorElement).width);
424
+ return _this.anchorElement ? anchorWidth * parseFloat(width) / 100 : 0;
391
425
  }
392
426
  return width;
393
427
  };_this.
394
428
 
395
429
  content = function (children) {
396
- var _this$props = _this.props,backgroundColor = _this$props.backgroundColor,width = _this$props.width;
430
+ var backgroundColor = _this.props.backgroundColor;
431
+ var width = _this.getProps().width;
397
432
 
398
433
  return /*#__PURE__*/(
399
434
  _react.default.createElement("div", { className: _Popup.styles.content(_this.theme), "data-tid": PopupDataTids.content, ref: _this.refForTransition }, /*#__PURE__*/
@@ -460,6 +495,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
460
495
 
461
496
 
462
497
 
498
+
463
499
 
464
500
 
465
501
  resetLocation = function () {
@@ -500,6 +536,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
500
536
 
501
537
 
502
538
 
539
+
503
540
 
504
541
 
505
542
  handleLayoutEvent = function () {
@@ -529,27 +566,31 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
529
566
  }
530
567
 
531
568
  var location = _this.getLocation(popupElement, _this.state.location);
569
+ if (location) {
570
+ _this.props.onPositionChange == null ? void 0 : _this.props.onPositionChange(location == null ? void 0 : location.position);
571
+ }
572
+
532
573
  if (!_this.locationEquals(_this.state.location, location)) {
533
574
  _this.setState({ location: location });
534
575
  }
535
- };return _this;}var _proto = Popup.prototype;_proto.componentDidMount = function componentDidMount() {this.updateLocation();this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);};Popup.getDerivedStateFromProps = function getDerivedStateFromProps(props, state) {/**
576
+ };return _this;}var _proto = Popup.prototype;_proto.componentDidMount = function componentDidMount() {this.updateLocation();this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);if (!this.hasAnchorElementListeners) {this.addEventListeners(this.anchorElement);}};Popup.getDerivedStateFromProps = function getDerivedStateFromProps(props, state) {/**
536
577
  * Delaying updateLocation to ensure it happens after props update
537
- */if (props.opened) {if (!state.location) {return { location: DUMMY_LOCATION };}} else if (state.location) {return { location: DUMMY_LOCATION };}return state;};_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {var hadNoLocation = prevState.location === DUMMY_LOCATION;var hasLocation = this.state.location !== DUMMY_LOCATION;var wasClosed = prevProps.opened && !this.props.opened;if (this.isMobileLayout && prevState.location === null && this.state.location === null) {this.setState({ location: DUMMY_LOCATION });}if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {this.props.onOpen();}if (wasClosed && !hasLocation && this.props.onClose) {this.props.onClose();}if (this.props.opened) {this.delayUpdateLocation();}};_proto.componentWillUnmount = function componentWillUnmount() {this.cancelDelayedUpdateLocation();this.removeEventListeners(this.anchorElement);if (this.layoutEventsToken) {this.layoutEventsToken.remove();this.layoutEventsToken = null;}if (this.state.location && this.props.onClose) {this.props.onClose();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMobile = function renderMobile() {var opened = this.props.opened;var children = this.renderChildren();return children ? /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { opened: opened, withoutRenderContainer: true, onCloseRequest: this.props.mobileOnCloseRequest }, this.content(children)) : null;};_proto.renderMain = function renderMain() {var _this3 = this;var location = this.state.location;var _this$props2 = this.props,anchorElement = _this$props2.anchorElement,useWrapper = _this$props2.useWrapper;var anchor = null;if ((0, _SSRSafe.isHTMLElement)(anchorElement)) {this.updateAnchorElement(anchorElement);} else if ( /*#__PURE__*/_react.default.isValidElement(anchorElement)) {anchor = useWrapper ? /*#__PURE__*/_react.default.createElement("span", null, anchorElement) : anchorElement;} else {anchor = /*#__PURE__*/_react.default.createElement("span", null, anchorElement);}var anchorWithRef = anchor && /*#__PURE__*/_react.default.isValidElement(anchor) && (0, _utils.isRefableElement)(anchor) ? /*#__PURE__*/_react.default.cloneElement(anchor, { ref: function ref(instance) {var _anchor;_this3.updateAnchorElement(instance);var originalRef = (_anchor = anchor) == null ? void 0 : _anchor.ref;originalRef && (0, _callChildRef.callChildRef)(originalRef, instance);} }) : null; // we need to get anchor's DOM node
578
+ */if (props.opened) {if (!state.location) {return { location: DUMMY_LOCATION };}} else if (state.location) {return { location: DUMMY_LOCATION };}return state;};_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {var hadNoLocation = prevState.location === DUMMY_LOCATION;var hasLocation = this.state.location !== DUMMY_LOCATION;var wasClosed = prevProps.opened && !this.props.opened;if (this.isMobileLayout && prevState.location === null && this.state.location === null) {this.setState({ location: DUMMY_LOCATION });}if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {this.props.onOpen();}if (wasClosed && !hasLocation && this.props.onClose) {this.props.onClose();}if (this.props.opened) {this.delayUpdateLocation();}};_proto.componentWillUnmount = function componentWillUnmount() {this.cancelDelayedUpdateLocation();if (this.hasAnchorElementListeners) {this.removeEventListeners(this.anchorElement);}if (this.layoutEventsToken) {this.layoutEventsToken.remove();this.layoutEventsToken = null;}if (this.state.location && this.props.onClose) {this.props.onClose();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMobile = function renderMobile() {var opened = this.props.opened;var children = this.renderChildren();return children ? /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { opened: opened, withoutRenderContainer: true, onCloseRequest: this.props.mobileOnCloseRequest }, this.content(children)) : null;};_proto.renderMain = function renderMain() {var _this3 = this;var location = this.state.location;var anchorElement = this.props.anchorElement;var useWrapper = this.getProps().useWrapper;var anchor = null;if ((0, _SSRSafe.isElement)(anchorElement)) {this.updateAnchorElement(anchorElement);} else if ( /*#__PURE__*/_react.default.isValidElement(anchorElement)) {anchor = useWrapper ? /*#__PURE__*/_react.default.createElement("span", null, anchorElement) : anchorElement;} else {anchor = /*#__PURE__*/_react.default.createElement("span", null, anchorElement);}var anchorWithRef = anchor && /*#__PURE__*/_react.default.isValidElement(anchor) && (0, _utils.isRefableElement)(anchor) ? /*#__PURE__*/_react.default.cloneElement(anchor, { ref: function ref(instance) {var _anchor;_this3.updateAnchorElement(instance);var originalRef = (_anchor = anchor) == null ? void 0 : _anchor.ref;originalRef && (0, _callChildRef.callChildRef)(originalRef, instance);} }) : null; // we need to get anchor's DOM node
538
579
  // so we either set our own ref on it via cloning
539
580
  // or relay on findDOMNode (inside getRootNode)
540
581
  // which should be called within updateAnchorElement
541
582
  // in the case when the anchor is not refable
542
- var canGetAnchorNode = !!anchorWithRef || (0, _SSRSafe.isHTMLElement)(anchorElement);return /*#__PURE__*/_react.default.createElement(_RenderContainer.RenderContainer, { anchor: anchorWithRef || anchor, ref: canGetAnchorNode ? null : this.updateAnchorElement }, this.isMobileLayout && !this.props.withoutMobile ? this.renderMobile() : location && this.renderContent(location));};_proto.addEventListeners = function addEventListeners(element) {if (element && (0, _SSRSafe.isHTMLElement)(element)) {element.addEventListener('mouseenter', this.handleMouseEnter);element.addEventListener('mouseleave', this.handleMouseLeave);element.addEventListener('click', this.handleClick);element.addEventListener('focusin', this.handleFocus);element.addEventListener('focusout', this.handleBlur);}};_proto.removeEventListeners = function removeEventListeners(element) {if (element && (0, _SSRSafe.isHTMLElement)(element)) {element.removeEventListener('mouseenter', this.handleMouseEnter);element.removeEventListener('mouseleave', this.handleMouseLeave);element.removeEventListener('click', this.handleClick);element.removeEventListener('focusin', this.handleFocus);element.removeEventListener('focusout', this.handleBlur);}};_proto.renderContent = function renderContent(location) {var _this4 = this;var _this$props3 = this.props,disableAnimations = _this$props3.disableAnimations,maxWidth = _this$props3.maxWidth,hasShadow = _this$props3.hasShadow,ignoreHover = _this$props3.ignoreHover,opened = _this$props3.opened;var children = this.renderChildren();var _PopupHelper$getPosit = _PopupHelper.PopupHelper.getPositionObject(location.position),direction = _PopupHelper$getPosit.direction;var rootStyle = (0, _extends3.default)({}, location.coordinates, { maxWidth: maxWidth });var shouldFallbackShadow = _client.isIE11 || _client.isEdge || _client.isSafari;return /*#__PURE__*/_react.default.createElement(_reactTransitionGroup.Transition, { timeout: TRANSITION_TIMEOUT, appear: !disableAnimations, in: Boolean(opened && children), mountOnEnter: true, unmountOnExit: true, enter: !disableAnimations, exit: !disableAnimations, onExited: this.resetLocation, nodeRef: this.refForTransition }, function (state) {var _extends2, _ref;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends3.default)({}, _this4.props, { rootNodeRef: _this4.setRootNode }), /*#__PURE__*/_react.default.createElement(_ZIndex.ZIndex, { "data-tid": 'Popup__root', wrapperRef: _this4.refPopupElement, priority: 'Popup', className: (0, _Emotion.cx)((0, _extends3.default)((_extends2 = {}, _extends2[_Popup.styles.popup(_this4.theme)] = true, _extends2[_Popup.styles.shadow(_this4.theme)] = hasShadow && !shouldFallbackShadow, _extends2[_Popup.styles.shadowFallback(_this4.theme)] = hasShadow && shouldFallbackShadow, _extends2[_Popup.styles.popupIgnoreHover()] = ignoreHover, _extends2), disableAnimations ? {} : (_ref = {}, _ref[_Popup.styles["transition-enter-" + direction](_this4.theme)] = true, _ref[_Popup.styles.transitionEnter()] = state === 'entering', _ref[_Popup.styles.transitionEnterActive()] = state === 'entered', _ref[_Popup.styles.transitionExit()] = state === 'exiting', _ref))), style: rootStyle, onMouseEnter: _this4.handleMouseEnter, onMouseLeave: _this4.handleMouseLeave }, _this4.content(children), !_this4.isMobileLayout && _this4.renderPin(location.position)));});};_proto.renderChildren = function renderChildren() {return (0, _utils.isFunction)(this.props.children) ? this.props.children() : this.props.children;};_proto.renderPin = function renderPin(positionName) {/**
583
+ var canGetAnchorNode = !!anchorWithRef || (0, _SSRSafe.isElement)(anchorElement);return /*#__PURE__*/_react.default.createElement(_RenderContainer.RenderContainer, { anchor: anchorWithRef || anchor, ref: canGetAnchorNode ? null : this.updateAnchorElement }, this.isMobileLayout && !this.props.withoutMobile ? this.renderMobile() : location && this.renderContent(location));};_proto.addEventListeners = function addEventListeners(element) {if (element && (0, _SSRSafe.isElement)(element)) {// @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657
584
+ element.addEventListener('mouseenter', this.handleMouseEnter); // @ts-expect-error: See the comment above
585
+ element.addEventListener('mouseleave', this.handleMouseLeave); // @ts-expect-error: See the comment above
586
+ element.addEventListener('click', this.handleClick);element.addEventListener('focusin', this.handleFocus);element.addEventListener('focusout', this.handleBlur);this.hasAnchorElementListeners = true;}};_proto.removeEventListeners = function removeEventListeners(element) {if (element && (0, _SSRSafe.isElement)(element)) {// @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657
587
+ element.removeEventListener('mouseenter', this.handleMouseEnter); // @ts-expect-error: See the comment above
588
+ element.removeEventListener('mouseleave', this.handleMouseLeave); // @ts-expect-error: See the comment above
589
+ element.removeEventListener('click', this.handleClick);element.removeEventListener('focusin', this.handleFocus);element.removeEventListener('focusout', this.handleBlur);this.hasAnchorElementListeners = false;}};_proto.renderContent = function renderContent(location) {var _this4 = this;var _this$props = this.props,maxWidth = _this$props.maxWidth,opened = _this$props.opened;var _this$getProps = this.getProps(),hasShadow = _this$getProps.hasShadow,disableAnimations = _this$getProps.disableAnimations,ignoreHover = _this$getProps.ignoreHover;var children = this.renderChildren();var _PopupHelper$getPosit = _PopupHelper.PopupHelper.getPositionObject(location.position),direction = _PopupHelper$getPosit.direction;var rootStyle = (0, _extends3.default)({}, location.coordinates, { maxWidth: maxWidth });var shouldFallbackShadow = _client.isIE11 || _client.isEdge || _client.isSafari;return /*#__PURE__*/_react.default.createElement(_reactTransitionGroup.Transition, { timeout: TRANSITION_TIMEOUT, appear: !disableAnimations, in: Boolean(opened && children), mountOnEnter: true, unmountOnExit: true, enter: !disableAnimations, exit: !disableAnimations, onExited: this.resetLocation, nodeRef: this.refForTransition }, function (state) {var _extends2, _ref;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends3.default)({}, _this4.props, { rootNodeRef: _this4.setRootNode }), /*#__PURE__*/_react.default.createElement(_ZIndex.ZIndex, { "data-tid": 'Popup__root', wrapperRef: _this4.refPopupElement, priority: 'Popup', className: (0, _Emotion.cx)((0, _extends3.default)((_extends2 = {}, _extends2[_Popup.styles.popup(_this4.theme)] = true, _extends2[_Popup.styles.shadow(_this4.theme)] = hasShadow && !shouldFallbackShadow, _extends2[_Popup.styles.shadowFallback(_this4.theme)] = hasShadow && shouldFallbackShadow, _extends2[_Popup.styles.popupIgnoreHover()] = ignoreHover, _extends2), disableAnimations ? {} : (_ref = {}, _ref[_Popup.styles["transition-enter-" + direction](_this4.theme)] = true, _ref[_Popup.styles.transitionEnter()] = state === 'entering', _ref[_Popup.styles.transitionEnterActive()] = state === 'entered', _ref[_Popup.styles.transitionExit()] = state === 'exiting', _ref))), style: rootStyle, onMouseEnter: _this4.handleMouseEnter, onMouseLeave: _this4.handleMouseLeave }, _this4.content(children), (!_this4.isMobileLayout || _this4.props.withoutMobile) && _this4.renderPin(location.position)));});};_proto.renderChildren = function renderChildren() {return (0, _utils.isFunction)(this.props.children) ? this.props.children() : this.props.children;};_proto.renderPin = function renderPin(positionName) {/**
543
590
  * Box-shadow does not appear under the pin. Borders are used instead.
544
591
  * In non-ie browsers drop-shadow filter is used. It is applying
545
592
  * shadow to the pin too.
546
- */var isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;var pinBorder = _client.isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;var _this$props4 = this.props,pinSize = _this$props4.pinSize,hasShadow = _this$props4.hasShadow,backgroundColor = _this$props4.backgroundColor,borderColor = _this$props4.borderColor;var position = _PopupHelper.PopupHelper.getPositionObject(positionName);return this.props.hasPin && /*#__PURE__*/_react.default.createElement(_PopupPin.PopupPin, { popupElement: this.lastPopupElement, popupPosition: positionName, size: pinSize || parseInt(this.theme.popupPinSize), offset: this.getPinOffset(position.align), borderWidth: hasShadow ? 1 : 0, backgroundColor: backgroundColor || this.theme.popupBackground, borderColor: borderColor || pinBorder });};_proto.delayUpdateLocation = function delayUpdateLocation() {this.cancelDelayedUpdateLocation();this.locationUpdateId = (0, _raf.default)(this.updateLocation);};_proto.cancelDelayedUpdateLocation = function cancelDelayedUpdateLocation() {if (this.locationUpdateId) {_raf.default.cancel(this.locationUpdateId);this.locationUpdateId = null;}};_proto.locationEquals = function locationEquals(x, y) {if (x === y) {return true;}if ((0, _utils.isNullable)(x) || (0, _utils.isNullable)(y)) {return false;}if (!_client.isIE11 && !_client.isEdge) {
547
- return (
548
- x.coordinates.left === y.coordinates.left &&
549
- x.coordinates.top === y.coordinates.top &&
550
- x.position === y.position);
551
-
552
- }
593
+ */var isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;var pinBorder = _client.isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;var _this$props2 = this.props,pinSize = _this$props2.pinSize,backgroundColor = _this$props2.backgroundColor,borderColor = _this$props2.borderColor;var _this$getProps2 = this.getProps(),hasShadow = _this$getProps2.hasShadow,hasPin = _this$getProps2.hasPin;var position = _PopupHelper.PopupHelper.getPositionObject(positionName);return hasPin && /*#__PURE__*/_react.default.createElement(_PopupPin.PopupPin, { popupElement: this.lastPopupElement, popupPosition: positionName, size: pinSize || parseInt(this.theme.popupPinSize), offset: this.getPinOffset(position.align), borderWidth: hasShadow ? 1 : 0, backgroundColor: backgroundColor || this.theme.popupBackground, borderColor: borderColor || pinBorder });};_proto.delayUpdateLocation = function delayUpdateLocation() {this.cancelDelayedUpdateLocation();this.locationUpdateId = (0, _raf.default)(this.updateLocation);};_proto.cancelDelayedUpdateLocation = function cancelDelayedUpdateLocation() {if (this.locationUpdateId) {_raf.default.cancel(this.locationUpdateId);this.locationUpdateId = null;}};_proto.locationEquals = function locationEquals(x, y) {if (x === y) {return true;}if ((0, _utils.isNullable)(x) || (0, _utils.isNullable)(y)) {return false;}if (!_client.isIE11 && !_client.isEdge) {return x.coordinates.left === y.coordinates.left && x.coordinates.top === y.coordinates.top && x.position === y.position;}
553
594
 
554
595
  // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность
555
596
  // уйти в бесконечный ререндер
@@ -562,15 +603,12 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
562
603
  };_proto.
563
604
 
564
605
  getLocation = function getLocation(popupElement, location) {
565
- var _this$props5 = this.props,positions = _this$props5.positions,tryPreserveFirstRenderedPosition = _this$props5.tryPreserveFirstRenderedPosition;
606
+ var _this$props3 = this.props,positions = _this$props3.positions,tryPreserveFirstRenderedPosition = _this$props3.tryPreserveFirstRenderedPosition;
566
607
  var anchorElement = this.anchorElement;
567
608
 
568
- (0, _warning.default)(
569
- anchorElement && (0, _SSRSafe.isHTMLElement)(anchorElement),
570
- 'Anchor element is not defined or not instance of HTMLElement');
571
-
609
+ (0, _warning.default)(anchorElement && (0, _SSRSafe.isElement)(anchorElement), 'Anchor element is not defined or not instance of Element');
572
610
 
573
- if (!(anchorElement && (0, _SSRSafe.isHTMLElement)(anchorElement))) {
611
+ if (!(anchorElement && (0, _SSRSafe.isElement)(anchorElement))) {
574
612
  return location;
575
613
  }
576
614
 
@@ -613,7 +651,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
613
651
  };_proto.
614
652
 
615
653
  getPinnedPopupOffset = function getPinnedPopupOffset(anchorRect, position) {
616
- if (!this.props.hasPin || /center|middle/.test(position.align)) {
654
+ if (!this.getProps().hasPin || /center|middle/.test(position.align)) {
617
655
  return 0;
618
656
  }
619
657
 
@@ -634,7 +672,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
634
672
  marginFromProps :
635
673
  parseInt(this.theme.popupMargin) || 0;
636
674
  var position = _PopupHelper.PopupHelper.getPositionObject(positionName);
637
- var popupOffset = this.props.popupOffset + this.getPinnedPopupOffset(anchorRect, position);
675
+ var popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);
638
676
 
639
677
  switch (position.direction) {
640
678
  case 'top':
@@ -1 +1 @@
1
- {"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","content","contentInner","popupPin","Popup","responsiveLayout","rootNode","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","offsetWidth","parseFloat","children","backgroundColor","styles","theme","resetLocation","cancelDelayedUpdateLocation","setState","refPopupElement","element","lastPopupElement","handleLayoutEvent","updateLocation","popupElement","getLocation","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","mobileOnCloseRequest","useWrapper","anchor","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","disableAnimations","maxWidth","hasShadow","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","setRootNode","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","raf","cancel","x","y","Math","abs","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","defaultProps","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport raf from 'raf';\nimport warning from 'warning';\n\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { isFunction, isNonNullable, isNullable, isRefableElement } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isHTMLElement, safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nconst DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps extends CommonProps, PopupHandlerProps {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin: boolean;\n hasShadow: boolean;\n disableAnimations: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper: boolean;\n ignoreHover: boolean;\n width: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(() => HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupElement: Nullable<HTMLElement>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n\n public anchorElement: Nullable<HTMLElement> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n this.removeEventListeners(this.anchorElement);\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement, useWrapper } = this.props;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isHTMLElement(anchorElement)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isHTMLElement(anchorElement);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<HTMLElement>) {\n if (element && isHTMLElement(element)) {\n element.addEventListener('mouseenter', this.handleMouseEnter);\n element.addEventListener('mouseleave', this.handleMouseLeave);\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private removeEventListeners(element: Nullable<HTMLElement>) {\n if (element && isHTMLElement(element)) {\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n return this.anchorElement ? (this.anchorElement.offsetWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor, width } = this.props;\n\n return (\n <div className={styles.content(this.theme)} data-tid={PopupDataTids.content} ref={this.refForTransition}>\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { disableAnimations, maxWidth, hasShadow, ignoreHover, opened } = this.props;\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n data-tid={'Popup__root'}\n wrapperRef={this.refPopupElement}\n priority={'Popup'}\n className={cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {!this.isMobileLayout && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupElement = (element: Nullable<HTMLElement>) => {\n this.lastPopupElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, hasShadow, backgroundColor, borderColor } = this.props;\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n this.props.hasPin && (\n <PopupPin\n popupElement={this.lastPopupElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = raf(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n raf.cancel(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupElement = this.lastPopupElement;\n\n if (!popupElement) {\n return;\n }\n\n const location = this.getLocation(popupElement, this.state.location);\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: HTMLElement, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(\n anchorElement && isHTMLElement(anchorElement),\n 'Anchor element is not defined or not instance of HTMLElement',\n );\n\n if (!(anchorElement && isHTMLElement(anchorElement))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.props.hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.props.popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","content","contentInner","popupPin","Popup","responsiveLayout","rootNode","getProps","defaultProps","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","hasAnchorElementListeners","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","anchorWidth","Math","floor","parseFloat","children","backgroundColor","styles","theme","resetLocation","cancelDelayedUpdateLocation","setState","refPopupElement","element","lastPopupElement","handleLayoutEvent","updateLocation","popupElement","getLocation","onPositionChange","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","mobileOnCloseRequest","useWrapper","anchor","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","maxWidth","hasShadow","disableAnimations","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","setRootNode","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","raf","cancel","x","y","abs","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport raf from 'raf';\nimport warning from 'warning';\n\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { isFunction, isNonNullable, isNullable, isRefableElement } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isElement, safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nexport const DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps extends Omit<CommonProps, 'children'>, PopupHandlerProps {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin?: boolean;\n hasShadow?: boolean;\n disableAnimations?: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset?: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n ignoreHover?: boolean;\n width?: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n /**\n * Возвращает текущую позицию попапа\n */\n onPositionChange?: (pos: PopupPositionsType) => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n PopupProps,\n 'popupOffset' | 'hasPin' | 'hasShadow' | 'disableAnimations' | 'useWrapper' | 'ignoreHover' | 'width'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(() => HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n private getProps = createPropsGetter(Popup.defaultProps);\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupElement: Nullable<Element>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n private hasAnchorElementListeners = false;\n\n public anchorElement: Nullable<Element> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n\n if (!this.hasAnchorElementListeners) {\n this.addEventListeners(this.anchorElement);\n }\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n if (this.hasAnchorElementListeners) {\n this.removeEventListeners(this.anchorElement);\n }\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement } = this.props;\n const useWrapper = this.getProps().useWrapper;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isElement(anchorElement)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isElement(anchorElement);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.addEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.addEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = true;\n }\n }\n\n private removeEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = false;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n const anchorWidth = Math.floor(getDOMRect(this.anchorElement).width);\n return this.anchorElement ? (anchorWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor } = this.props;\n const width = this.getProps().width;\n\n return (\n <div className={styles.content(this.theme)} data-tid={PopupDataTids.content} ref={this.refForTransition}>\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { maxWidth, opened } = this.props;\n const { hasShadow, disableAnimations, ignoreHover } = this.getProps();\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n data-tid={'Popup__root'}\n wrapperRef={this.refPopupElement}\n priority={'Popup'}\n className={cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {(!this.isMobileLayout || this.props.withoutMobile) && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupElement = (element: Nullable<Element>) => {\n this.lastPopupElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, backgroundColor, borderColor } = this.props;\n const { hasShadow, hasPin } = this.getProps();\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n hasPin && (\n <PopupPin\n popupElement={this.lastPopupElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = raf(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n raf.cancel(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupElement = this.lastPopupElement;\n\n if (!popupElement) {\n return;\n }\n\n const location = this.getLocation(popupElement, this.state.location);\n if (location) {\n this.props.onPositionChange?.(location?.position);\n }\n\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: Element, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(anchorElement && isElement(anchorElement), 'Anchor element is not defined or not instance of Element');\n\n if (!(anchorElement && isElement(anchorElement))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.getProps().hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
@@ -14,7 +14,7 @@ export interface PositionObject {
14
14
  align: string;
15
15
  }
16
16
  declare function getPositionObject(position: string): PositionObject;
17
- declare function getElementAbsoluteRect(element: HTMLElement): Rect;
17
+ declare function getElementAbsoluteRect(element: Element): Rect;
18
18
  declare function isAbsoluteRectFullyVisible(coordinates: Offset, popupRect: Rect): boolean;
19
19
  declare function canBecomeFullyVisible(positionName: PopupPositionsType, coordinates: Offset): boolean;
20
20
  export declare const PopupHelper: {
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupHelper.tsx"],"names":["getPositionObject","position","x","split","direction","align","getElementAbsoluteRect","element","rect","_getElementRelativeRect","convertRectToAbsolute","isAbsoluteRectFullyVisible","coordinates","popupRect","windowRelativeRect","_getWindowRelativeRect","windowAbsoluteRect","absoluteRect","top","left","height","width","_rectContainsRect","canBecomeFullyVisible","positionName","availableScrollDistances","right","bottom","_getViewProperty","clientWidth","window","innerWidth","clientHeight","innerHeight","offset","_getAbsoluteOffset","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","outerRect","innerRect","getProperty","views","document","documentElement","body","map","find","Boolean","PopupHelper","isFullyVisible"],"mappings":"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","sourcesContent":["import { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { PopupPositionsType } from './Popup';\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\nexport interface Offset {\n top: number;\n left: number;\n}\n\nexport interface PositionObject {\n direction: string;\n align: string;\n}\n\nfunction getPositionObject(position: string): PositionObject {\n const x = position.split(' ');\n\n return {\n direction: x[0],\n align: x[1],\n };\n}\n\nfunction getElementAbsoluteRect(element: HTMLElement): Rect {\n const rect = _getElementRelativeRect(element);\n return convertRectToAbsolute(rect);\n}\n\nfunction isAbsoluteRectFullyVisible(coordinates: Offset, popupRect: Rect): boolean {\n const windowRelativeRect = _getWindowRelativeRect();\n const windowAbsoluteRect = convertRectToAbsolute(windowRelativeRect);\n const absoluteRect = {\n top: coordinates.top,\n left: coordinates.left,\n height: popupRect.height,\n width: popupRect.width,\n };\n\n return _rectContainsRect(windowAbsoluteRect, absoluteRect);\n}\n\n// Can become fully visible by scrolling into viewport\nfunction canBecomeFullyVisible(positionName: PopupPositionsType, coordinates: Offset) {\n const position = getPositionObject(positionName);\n\n if (position.direction === 'top') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.top + availableScrollDistances.top >= 0;\n }\n\n if (position.direction === 'left') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.left + availableScrollDistances.left >= 0;\n }\n\n // NOTE: for bottom/right cases browser will always expand document size\n return true;\n}\n\nfunction _getElementRelativeRect(element: HTMLElement) {\n const rect = getDOMRect(element);\n\n return {\n top: rect.top,\n left: rect.left,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n };\n}\n\nfunction _getWindowRelativeRect(): Rect {\n return {\n top: 0,\n left: 0,\n width: _getViewProperty((x) => x.clientWidth) || window.innerWidth,\n height: _getViewProperty((x) => x.clientHeight) || window.innerHeight,\n };\n}\n\nfunction convertRectToAbsolute(rect: Rect): Rect {\n const offset = _getAbsoluteOffset();\n\n return {\n top: rect.top + offset.top,\n left: rect.left + offset.left,\n width: rect.width,\n height: rect.height,\n };\n}\n\nfunction _getAbsoluteOffset(): Offset {\n const scrollTop = window.pageYOffset || _getViewProperty((x) => x.scrollTop);\n const scrollLeft = window.pageXOffset || _getViewProperty((x) => x.scrollLeft);\n\n const clientTop = _getViewProperty((x) => x.clientTop);\n const clientLeft = _getViewProperty((x) => x.clientLeft);\n\n const top = scrollTop - clientTop;\n const left = scrollLeft - clientLeft;\n\n return {\n top,\n left,\n };\n}\n\nfunction _rectContainsRect(outerRect: Rect, innerRect: Rect): boolean {\n return (\n innerRect.top > outerRect.top &&\n innerRect.top + innerRect.height < outerRect.top + outerRect.height &&\n innerRect.left > outerRect.left &&\n innerRect.left + innerRect.width < outerRect.left + outerRect.width\n );\n}\n\nfunction _getViewProperty(getProperty: (e: HTMLElement) => number): number {\n const views = [document.documentElement, document.body];\n return views.map((x) => x && getProperty(x)).find(Boolean) || 0;\n}\n\nexport const PopupHelper = {\n getPositionObject,\n getElementAbsoluteRect,\n isFullyVisible: isAbsoluteRectFullyVisible,\n canBecomeFullyVisible,\n};\n"]}
1
+ {"version":3,"sources":["PopupHelper.tsx"],"names":["getPositionObject","position","x","split","direction","align","getElementAbsoluteRect","element","rect","_getElementRelativeRect","convertRectToAbsolute","isAbsoluteRectFullyVisible","coordinates","popupRect","windowRelativeRect","_getWindowRelativeRect","windowAbsoluteRect","absoluteRect","top","left","height","width","_rectContainsRect","canBecomeFullyVisible","positionName","availableScrollDistances","right","bottom","_getViewProperty","clientWidth","window","innerWidth","clientHeight","innerHeight","offset","_getAbsoluteOffset","scrollTop","pageYOffset","scrollLeft","pageXOffset","clientTop","clientLeft","outerRect","innerRect","getProperty","views","document","documentElement","body","map","find","Boolean","PopupHelper","isFullyVisible"],"mappings":"oEAAA;;;;;;;;;;;;;;;;;;;;;AAqBA,SAASA,iBAAT,CAA2BC,QAA3B,EAA6D;AAC3D,MAAMC,CAAC,GAAGD,QAAQ,CAACE,KAAT,CAAe,GAAf,CAAV;;AAEA,SAAO;AACLC,IAAAA,SAAS,EAAEF,CAAC,CAAC,CAAD,CADP;AAELG,IAAAA,KAAK,EAAEH,CAAC,CAAC,CAAD,CAFH,EAAP;;AAID;;AAED,SAASI,sBAAT,CAAgCC,OAAhC,EAAwD;AACtD,MAAMC,IAAI,GAAGC,uBAAuB,CAACF,OAAD,CAApC;AACA,SAAOG,qBAAqB,CAACF,IAAD,CAA5B;AACD;;AAED,SAASG,0BAAT,CAAoCC,WAApC,EAAyDC,SAAzD,EAAmF;AACjF,MAAMC,kBAAkB,GAAGC,sBAAsB,EAAjD;AACA,MAAMC,kBAAkB,GAAGN,qBAAqB,CAACI,kBAAD,CAAhD;AACA,MAAMG,YAAY,GAAG;AACnBC,IAAAA,GAAG,EAAEN,WAAW,CAACM,GADE;AAEnBC,IAAAA,IAAI,EAAEP,WAAW,CAACO,IAFC;AAGnBC,IAAAA,MAAM,EAAEP,SAAS,CAACO,MAHC;AAInBC,IAAAA,KAAK,EAAER,SAAS,CAACQ,KAJE,EAArB;;;AAOA,SAAOC,iBAAiB,CAACN,kBAAD,EAAqBC,YAArB,CAAxB;AACD;;AAED;AACA,SAASM,qBAAT,CAA+BC,YAA/B,EAAiEZ,WAAjE,EAAsF;AACpF,MAAMX,QAAQ,GAAGD,iBAAiB,CAACwB,YAAD,CAAlC;;AAEA,MAAIvB,QAAQ,CAACG,SAAT,KAAuB,KAA3B,EAAkC;AAChC,QAAMqB,wBAAwB,GAAGf,qBAAqB,CAACK,sBAAsB,EAAvB,CAAtD;AACA,WAAOH,WAAW,CAACM,GAAZ,GAAkBO,wBAAwB,CAACP,GAA3C,IAAkD,CAAzD;AACD;;AAED,MAAIjB,QAAQ,CAACG,SAAT,KAAuB,MAA3B,EAAmC;AACjC,QAAMqB,yBAAwB,GAAGf,qBAAqB,CAACK,sBAAsB,EAAvB,CAAtD;AACA,WAAOH,WAAW,CAACO,IAAZ,GAAmBM,yBAAwB,CAACN,IAA5C,IAAoD,CAA3D;AACD;;AAED;AACA,SAAO,IAAP;AACD;;AAED,SAASV,uBAAT,CAAiCF,OAAjC,EAAmD;AACjD,MAAMC,IAAI,GAAG,4BAAWD,OAAX,CAAb;;AAEA,SAAO;AACLW,IAAAA,GAAG,EAAEV,IAAI,CAACU,GADL;AAELC,IAAAA,IAAI,EAAEX,IAAI,CAACW,IAFN;AAGLE,IAAAA,KAAK,EAAEb,IAAI,CAACkB,KAAL,GAAalB,IAAI,CAACW,IAHpB;AAILC,IAAAA,MAAM,EAAEZ,IAAI,CAACmB,MAAL,GAAcnB,IAAI,CAACU,GAJtB,EAAP;;AAMD;;AAED,SAASH,sBAAT,GAAwC;AACtC,SAAO;AACLG,IAAAA,GAAG,EAAE,CADA;AAELC,IAAAA,IAAI,EAAE,CAFD;AAGLE,IAAAA,KAAK,EAAEO,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAAC2B,WAAT,EAAD,CAAhB,IAA0CC,MAAM,CAACC,UAHnD;AAILX,IAAAA,MAAM,EAAEQ,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAAC8B,YAAT,EAAD,CAAhB,IAA2CF,MAAM,CAACG,WAJrD,EAAP;;AAMD;;AAED,SAASvB,qBAAT,CAA+BF,IAA/B,EAAiD;AAC/C,MAAM0B,MAAM,GAAGC,kBAAkB,EAAjC;;AAEA,SAAO;AACLjB,IAAAA,GAAG,EAAEV,IAAI,CAACU,GAAL,GAAWgB,MAAM,CAAChB,GADlB;AAELC,IAAAA,IAAI,EAAEX,IAAI,CAACW,IAAL,GAAYe,MAAM,CAACf,IAFpB;AAGLE,IAAAA,KAAK,EAAEb,IAAI,CAACa,KAHP;AAILD,IAAAA,MAAM,EAAEZ,IAAI,CAACY,MAJR,EAAP;;AAMD;;AAED,SAASe,kBAAT,GAAsC;AACpC,MAAMC,SAAS,GAAGN,MAAM,CAACO,WAAP,IAAsBT,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAACkC,SAAT,EAAD,CAAxD;AACA,MAAME,UAAU,GAAGR,MAAM,CAACS,WAAP,IAAsBX,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAACoC,UAAT,EAAD,CAAzD;;AAEA,MAAME,SAAS,GAAGZ,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAACsC,SAAT,EAAD,CAAlC;AACA,MAAMC,UAAU,GAAGb,gBAAgB,CAAC,UAAC1B,CAAD,UAAOA,CAAC,CAACuC,UAAT,EAAD,CAAnC;;AAEA,MAAMvB,GAAG,GAAGkB,SAAS,GAAGI,SAAxB;AACA,MAAMrB,IAAI,GAAGmB,UAAU,GAAGG,UAA1B;;AAEA,SAAO;AACLvB,IAAAA,GAAG,EAAHA,GADK;AAELC,IAAAA,IAAI,EAAJA,IAFK,EAAP;;AAID;;AAED,SAASG,iBAAT,CAA2BoB,SAA3B,EAA4CC,SAA5C,EAAsE;AACpE;AACEA,IAAAA,SAAS,CAACzB,GAAV,GAAgBwB,SAAS,CAACxB,GAA1B;AACAyB,IAAAA,SAAS,CAACzB,GAAV,GAAgByB,SAAS,CAACvB,MAA1B,GAAmCsB,SAAS,CAACxB,GAAV,GAAgBwB,SAAS,CAACtB,MAD7D;AAEAuB,IAAAA,SAAS,CAACxB,IAAV,GAAiBuB,SAAS,CAACvB,IAF3B;AAGAwB,IAAAA,SAAS,CAACxB,IAAV,GAAiBwB,SAAS,CAACtB,KAA3B,GAAmCqB,SAAS,CAACvB,IAAV,GAAiBuB,SAAS,CAACrB,KAJhE;;AAMD;;AAED,SAASO,gBAAT,CAA0BgB,WAA1B,EAAuE;AACrE,MAAMC,KAAK,GAAG,CAACC,QAAQ,CAACC,eAAV,EAA2BD,QAAQ,CAACE,IAApC,CAAd;AACA,SAAOH,KAAK,CAACI,GAAN,CAAU,UAAC/C,CAAD,UAAOA,CAAC,IAAI0C,WAAW,CAAC1C,CAAD,CAAvB,EAAV,EAAsCgD,IAAtC,CAA2CC,OAA3C,KAAuD,CAA9D;AACD;;AAEM,IAAMC,WAAW,GAAG;AACzBpD,EAAAA,iBAAiB,EAAjBA,iBADyB;AAEzBM,EAAAA,sBAAsB,EAAtBA,sBAFyB;AAGzB+C,EAAAA,cAAc,EAAE1C,0BAHS;AAIzBY,EAAAA,qBAAqB,EAArBA,qBAJyB,EAApB,C","sourcesContent":["import { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { PopupPositionsType } from './Popup';\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\nexport interface Offset {\n top: number;\n left: number;\n}\n\nexport interface PositionObject {\n direction: string;\n align: string;\n}\n\nfunction getPositionObject(position: string): PositionObject {\n const x = position.split(' ');\n\n return {\n direction: x[0],\n align: x[1],\n };\n}\n\nfunction getElementAbsoluteRect(element: Element): Rect {\n const rect = _getElementRelativeRect(element);\n return convertRectToAbsolute(rect);\n}\n\nfunction isAbsoluteRectFullyVisible(coordinates: Offset, popupRect: Rect): boolean {\n const windowRelativeRect = _getWindowRelativeRect();\n const windowAbsoluteRect = convertRectToAbsolute(windowRelativeRect);\n const absoluteRect = {\n top: coordinates.top,\n left: coordinates.left,\n height: popupRect.height,\n width: popupRect.width,\n };\n\n return _rectContainsRect(windowAbsoluteRect, absoluteRect);\n}\n\n// Can become fully visible by scrolling into viewport\nfunction canBecomeFullyVisible(positionName: PopupPositionsType, coordinates: Offset) {\n const position = getPositionObject(positionName);\n\n if (position.direction === 'top') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.top + availableScrollDistances.top >= 0;\n }\n\n if (position.direction === 'left') {\n const availableScrollDistances = convertRectToAbsolute(_getWindowRelativeRect());\n return coordinates.left + availableScrollDistances.left >= 0;\n }\n\n // NOTE: for bottom/right cases browser will always expand document size\n return true;\n}\n\nfunction _getElementRelativeRect(element: Element) {\n const rect = getDOMRect(element);\n\n return {\n top: rect.top,\n left: rect.left,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top,\n };\n}\n\nfunction _getWindowRelativeRect(): Rect {\n return {\n top: 0,\n left: 0,\n width: _getViewProperty((x) => x.clientWidth) || window.innerWidth,\n height: _getViewProperty((x) => x.clientHeight) || window.innerHeight,\n };\n}\n\nfunction convertRectToAbsolute(rect: Rect): Rect {\n const offset = _getAbsoluteOffset();\n\n return {\n top: rect.top + offset.top,\n left: rect.left + offset.left,\n width: rect.width,\n height: rect.height,\n };\n}\n\nfunction _getAbsoluteOffset(): Offset {\n const scrollTop = window.pageYOffset || _getViewProperty((x) => x.scrollTop);\n const scrollLeft = window.pageXOffset || _getViewProperty((x) => x.scrollLeft);\n\n const clientTop = _getViewProperty((x) => x.clientTop);\n const clientLeft = _getViewProperty((x) => x.clientLeft);\n\n const top = scrollTop - clientTop;\n const left = scrollLeft - clientLeft;\n\n return {\n top,\n left,\n };\n}\n\nfunction _rectContainsRect(outerRect: Rect, innerRect: Rect): boolean {\n return (\n innerRect.top > outerRect.top &&\n innerRect.top + innerRect.height < outerRect.top + outerRect.height &&\n innerRect.left > outerRect.left &&\n innerRect.left + innerRect.width < outerRect.left + outerRect.width\n );\n}\n\nfunction _getViewProperty(getProperty: (e: Element) => number): number {\n const views = [document.documentElement, document.body];\n return views.map((x) => x && getProperty(x)).find(Boolean) || 0;\n}\n\nexport const PopupHelper = {\n getPositionObject,\n getElementAbsoluteRect,\n isFullyVisible: isAbsoluteRectFullyVisible,\n canBecomeFullyVisible,\n};\n"]}
@@ -6,7 +6,7 @@ interface Props {
6
6
  borderColor: string;
7
7
  borderWidth: number;
8
8
  offset: number;
9
- popupElement: Nullable<HTMLElement>;
9
+ popupElement: Nullable<Element>;
10
10
  popupPosition: string;
11
11
  size: number;
12
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["PopupPin.tsx"],"names":["borderStyles","position","borderStyle","borderTopColor","borderBottomColor","borderLeftColor","borderRightColor","PopupPin","render","props","popupElement","options","getPinOptions","PopupHelper","getElementAbsoluteRect","getPositionObject","popupPosition","size","offset","borderWidth","styleOuter","getOuterStyle","activeBorder","outerSize","borderColor","styleInner","getInnerStyle","backgroundColor","styleWrapper","getWrapperStyle","outerLeft","outerTop","PopupDataTids","popupPin","styles","wrapper","getPopupOppositeDirection","popupDirection","direction","TypeError","left","top","width","height","borderWitdth","popupRect","pinSize","pinOffset","bordersDelta","getPinLeftCoordinate","align","innerTop","innerLeft","getPinTopCoordinate","Error","pinHeight","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","string","number","any"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable } from '../../typings/utility-types';\n\nimport { PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './PopupPin.styles';\nimport { PopupDataTids } from './Popup';\n\nconst borderStyles = {\n position: 'absolute',\n borderStyle: 'solid',\n borderTopColor: 'transparent',\n borderBottomColor: 'transparent',\n borderLeftColor: 'transparent',\n borderRightColor: 'transparent',\n};\n\ninterface Props {\n backgroundColor: string;\n borderColor: string;\n borderWidth: number;\n offset: number;\n popupElement: Nullable<HTMLElement>;\n popupPosition: string;\n size: number;\n}\n\nexport class PopupPin extends React.Component<Props> {\n public static __KONTUR_REACT_UI__ = 'PopupPin';\n\n public static propTypes = {\n /**\n * Цвет фон пина\n */\n backgroundColor: PropTypes.string,\n\n /**\n * Цвет границы пина\n */\n borderColor: PropTypes.string,\n\n /**\n * Ширина границы пина\n */\n borderWidth: PropTypes.number,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n offset: PropTypes.number,\n\n /**\n * Ссылка на попап\n */\n popupElement: PropTypes.any,\n\n /**\n * Позиция поапа, по которой будет вычеслено положение пина\n */\n popupPosition: PropTypes.string,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n size: PropTypes.number,\n };\n\n public render() {\n if (!this.props.popupElement) {\n return null;\n }\n\n const options = this.getPinOptions(\n PopupHelper.getElementAbsoluteRect(this.props.popupElement),\n PopupHelper.getPositionObject(this.props.popupPosition),\n this.props.size,\n this.props.offset,\n this.props.borderWidth,\n );\n\n const styleOuter: React.CSSProperties = this.getOuterStyle(\n options.activeBorder,\n options.outerSize,\n this.props.borderColor,\n );\n\n const styleInner: React.CSSProperties = this.getInnerStyle(\n options.activeBorder,\n this.props.size,\n this.props.backgroundColor,\n );\n\n const styleWrapper = this.getWrapperStyle(options.outerLeft, options.outerTop, options.outerSize);\n\n return (\n <div data-tid={PopupDataTids.popupPin} className={styles.wrapper()} style={styleWrapper}>\n <div style={styleOuter}>\n <div style={styleInner} />\n </div>\n </div>\n );\n }\n\n private getPopupOppositeDirection(): 'bottom' | 'top' | 'left' | 'right' {\n const popupDirection = PopupHelper.getPositionObject(this.props.popupPosition).direction;\n switch (popupDirection) {\n case 'top':\n return 'bottom';\n case 'bottom':\n return 'top';\n case 'left':\n return 'right';\n case 'right':\n return 'left';\n default:\n throw new TypeError('Unknown direction ' + popupDirection);\n }\n }\n\n private getWrapperStyle(left: number, top: number, borderWidth: number) {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n [direction]: -borderWidth + 'px',\n left: left + 'px',\n width: borderWidth * 2 + 'px',\n height: borderWidth + 'px',\n };\n case 'left':\n case 'right':\n return {\n [direction]: -borderWidth + 'px',\n top: top + 'px',\n height: borderWidth * 2 + 'px',\n width: borderWidth + 'px',\n };\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getOuterStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n left: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n top: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getInnerStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n left: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n top: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getPinOptions(\n popupRect: Rect,\n popupPosition: PositionObject,\n pinSize: number,\n pinOffset: number,\n borderWidth: number,\n ) {\n const bordersDelta = 2 * borderWidth;\n const outerSize = pinSize + bordersDelta;\n\n switch (popupPosition.direction) {\n case 'top':\n return {\n outerTop: popupRect.height,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Top',\n outerSize,\n };\n case 'bottom':\n return {\n outerTop: -2 * outerSize,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize + 2 * bordersDelta,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Bottom',\n outerSize,\n };\n case 'left':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: popupRect.width,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize,\n activeBorder: 'Left',\n outerSize,\n };\n case 'right':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: -2 * outerSize,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize + 2 * bordersDelta,\n activeBorder: 'Right',\n outerSize,\n };\n default:\n throw new Error('Direction must be one of top, right, bottom, left');\n }\n }\n\n private getPinTopCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'top':\n return pinOffset;\n case 'middle':\n return popupRect.height / 2 - pinHeight;\n case 'bottom':\n return popupRect.height - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getPinLeftCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'left':\n return pinOffset;\n case 'center':\n return popupRect.width / 2 - pinHeight;\n case 'right':\n return popupRect.width - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["PopupPin.tsx"],"names":["borderStyles","position","borderStyle","borderTopColor","borderBottomColor","borderLeftColor","borderRightColor","PopupPin","render","props","popupElement","options","getPinOptions","PopupHelper","getElementAbsoluteRect","getPositionObject","popupPosition","size","offset","borderWidth","styleOuter","getOuterStyle","activeBorder","outerSize","borderColor","styleInner","getInnerStyle","backgroundColor","styleWrapper","getWrapperStyle","outerLeft","outerTop","PopupDataTids","popupPin","styles","wrapper","getPopupOppositeDirection","popupDirection","direction","TypeError","left","top","width","height","borderWitdth","popupRect","pinSize","pinOffset","bordersDelta","getPinLeftCoordinate","align","innerTop","innerLeft","getPinTopCoordinate","Error","pinHeight","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","string","number","any"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable } from '../../typings/utility-types';\n\nimport { PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './PopupPin.styles';\nimport { PopupDataTids } from './Popup';\n\nconst borderStyles = {\n position: 'absolute',\n borderStyle: 'solid',\n borderTopColor: 'transparent',\n borderBottomColor: 'transparent',\n borderLeftColor: 'transparent',\n borderRightColor: 'transparent',\n};\n\ninterface Props {\n backgroundColor: string;\n borderColor: string;\n borderWidth: number;\n offset: number;\n popupElement: Nullable<Element>;\n popupPosition: string;\n size: number;\n}\n\nexport class PopupPin extends React.Component<Props> {\n public static __KONTUR_REACT_UI__ = 'PopupPin';\n\n public static propTypes = {\n /**\n * Цвет фон пина\n */\n backgroundColor: PropTypes.string,\n\n /**\n * Цвет границы пина\n */\n borderColor: PropTypes.string,\n\n /**\n * Ширина границы пина\n */\n borderWidth: PropTypes.number,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n offset: PropTypes.number,\n\n /**\n * Ссылка на попап\n */\n popupElement: PropTypes.any,\n\n /**\n * Позиция поапа, по которой будет вычеслено положение пина\n */\n popupPosition: PropTypes.string,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n size: PropTypes.number,\n };\n\n public render() {\n if (!this.props.popupElement) {\n return null;\n }\n\n const options = this.getPinOptions(\n PopupHelper.getElementAbsoluteRect(this.props.popupElement),\n PopupHelper.getPositionObject(this.props.popupPosition),\n this.props.size,\n this.props.offset,\n this.props.borderWidth,\n );\n\n const styleOuter: React.CSSProperties = this.getOuterStyle(\n options.activeBorder,\n options.outerSize,\n this.props.borderColor,\n );\n\n const styleInner: React.CSSProperties = this.getInnerStyle(\n options.activeBorder,\n this.props.size,\n this.props.backgroundColor,\n );\n\n const styleWrapper = this.getWrapperStyle(options.outerLeft, options.outerTop, options.outerSize);\n\n return (\n <div data-tid={PopupDataTids.popupPin} className={styles.wrapper()} style={styleWrapper}>\n <div style={styleOuter}>\n <div style={styleInner} />\n </div>\n </div>\n );\n }\n\n private getPopupOppositeDirection(): 'bottom' | 'top' | 'left' | 'right' {\n const popupDirection = PopupHelper.getPositionObject(this.props.popupPosition).direction;\n switch (popupDirection) {\n case 'top':\n return 'bottom';\n case 'bottom':\n return 'top';\n case 'left':\n return 'right';\n case 'right':\n return 'left';\n default:\n throw new TypeError('Unknown direction ' + popupDirection);\n }\n }\n\n private getWrapperStyle(left: number, top: number, borderWidth: number) {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n [direction]: -borderWidth + 'px',\n left: left + 'px',\n width: borderWidth * 2 + 'px',\n height: borderWidth + 'px',\n };\n case 'left':\n case 'right':\n return {\n [direction]: -borderWidth + 'px',\n top: top + 'px',\n height: borderWidth * 2 + 'px',\n width: borderWidth + 'px',\n };\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getOuterStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n left: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 'px',\n top: '0px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getInnerStyle(activeBorder: string, borderWitdth: number, borderColor: string): React.CSSProperties {\n const direction = this.getPopupOppositeDirection();\n switch (direction) {\n case 'top':\n case 'bottom':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n left: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n case 'left':\n case 'right':\n return {\n ...borderStyles,\n [direction]: -borderWitdth + 2 + 'px',\n top: -borderWitdth + 'px',\n borderWidth: borderWitdth + 'px',\n ['border' + activeBorder + 'Color']: borderColor,\n } as React.CSSProperties;\n default:\n throw new TypeError('Unknown direction ' + direction);\n }\n }\n\n private getPinOptions(\n popupRect: Rect,\n popupPosition: PositionObject,\n pinSize: number,\n pinOffset: number,\n borderWidth: number,\n ) {\n const bordersDelta = 2 * borderWidth;\n const outerSize = pinSize + bordersDelta;\n\n switch (popupPosition.direction) {\n case 'top':\n return {\n outerTop: popupRect.height,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Top',\n outerSize,\n };\n case 'bottom':\n return {\n outerTop: -2 * outerSize,\n outerLeft: this.getPinLeftCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n innerTop: -outerSize + 2 * bordersDelta,\n innerLeft: -outerSize + bordersDelta,\n activeBorder: 'Bottom',\n outerSize,\n };\n case 'left':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: popupRect.width,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize,\n activeBorder: 'Left',\n outerSize,\n };\n case 'right':\n return {\n outerTop: this.getPinTopCoordinate(popupRect, popupPosition.align, pinSize, pinOffset) - bordersDelta,\n outerLeft: -2 * outerSize,\n innerTop: -outerSize + bordersDelta,\n innerLeft: -outerSize + 2 * bordersDelta,\n activeBorder: 'Right',\n outerSize,\n };\n default:\n throw new Error('Direction must be one of top, right, bottom, left');\n }\n }\n\n private getPinTopCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'top':\n return pinOffset;\n case 'middle':\n return popupRect.height / 2 - pinHeight;\n case 'bottom':\n return popupRect.height - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getPinLeftCoordinate(popupRect: Rect, align: string, pinHeight: number, pinOffset: number) {\n switch (align) {\n case 'left':\n return pinOffset;\n case 'center':\n return popupRect.width / 2 - pinHeight;\n case 'right':\n return popupRect.width - pinOffset - 2 * pinHeight;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}