@skbkontur/react-ui 0.0.0-5188be76c1 → 0.0.0-53ccdcbfcc

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 (1139) hide show
  1. package/CHANGELOG.md +164 -16
  2. package/cjs/components/Button/Button.d.ts +1 -0
  3. package/cjs/components/Button/Button.js +18 -6
  4. package/cjs/components/Button/Button.js.map +1 -1
  5. package/cjs/components/Button/Button.md +68 -0
  6. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  7. package/cjs/components/Button/Button.mixins.js +54 -53
  8. package/cjs/components/Button/Button.mixins.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +2 -1
  10. package/cjs/components/Button/Button.styles.js +200 -161
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Button/ButtonArrow.js +1 -1
  13. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  14. package/cjs/components/Button/ButtonIcon.js +1 -4
  15. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  16. package/cjs/components/Button/getInnerLinkTheme.js +1 -0
  17. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  18. package/cjs/components/Calendar/Calendar.js +8 -6
  19. package/cjs/components/Calendar/Calendar.js.map +1 -1
  20. package/cjs/components/Checkbox/Checkbox.js +8 -7
  21. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  22. package/cjs/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  23. package/cjs/components/Clickable/ArrowLeftIcon.js +15 -0
  24. package/cjs/components/Clickable/ArrowLeftIcon.js.map +1 -0
  25. package/cjs/components/Clickable/ArrowRightIcon.d.ts +3 -0
  26. package/cjs/components/Clickable/ArrowRightIcon.js +15 -0
  27. package/cjs/components/Clickable/ArrowRightIcon.js.map +1 -0
  28. package/cjs/components/Clickable/Clickable.d.ts +95 -0
  29. package/cjs/components/Clickable/Clickable.js +248 -0
  30. package/cjs/components/Clickable/Clickable.js.map +1 -0
  31. package/cjs/components/Clickable/Clickable.md +210 -0
  32. package/cjs/components/Clickable/Clickable.styles.d.ts +11 -0
  33. package/cjs/components/Clickable/Clickable.styles.js +31 -0
  34. package/cjs/components/Clickable/Clickable.styles.js.map +1 -0
  35. package/cjs/components/Clickable/ClickableButton.d.ts +5 -0
  36. package/cjs/components/Clickable/ClickableButton.js +43 -0
  37. package/cjs/components/Clickable/ClickableButton.js.map +1 -0
  38. package/cjs/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  39. package/cjs/components/Clickable/ClickableButton.mixins.js +134 -0
  40. package/cjs/components/Clickable/ClickableButton.mixins.js.map +1 -0
  41. package/cjs/components/Clickable/ClickableButton.styles.d.ts +63 -0
  42. package/cjs/components/Clickable/ClickableButton.styles.js +604 -0
  43. package/cjs/components/Clickable/ClickableButton.styles.js.map +1 -0
  44. package/cjs/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  45. package/cjs/components/Clickable/ClickableButtonArrow.js +32 -0
  46. package/cjs/components/Clickable/ClickableButtonArrow.js.map +1 -0
  47. package/cjs/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  48. package/cjs/components/Clickable/ClickableButtonArrow.styles.js +40 -0
  49. package/cjs/components/Clickable/ClickableButtonArrow.styles.js.map +1 -0
  50. package/cjs/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  51. package/cjs/components/Clickable/ClickableButtonCaption.js +57 -0
  52. package/cjs/components/Clickable/ClickableButtonCaption.js.map +1 -0
  53. package/cjs/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  54. package/cjs/components/Clickable/ClickableButtonCaption.styles.js +23 -0
  55. package/cjs/components/Clickable/ClickableButtonCaption.styles.js.map +1 -0
  56. package/cjs/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  57. package/cjs/components/Clickable/ClickableButtonIcon.js +64 -0
  58. package/cjs/components/Clickable/ClickableButtonIcon.js.map +1 -0
  59. package/cjs/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  60. package/cjs/components/Clickable/ClickableButtonIcon.styles.js +108 -0
  61. package/cjs/components/Clickable/ClickableButtonIcon.styles.js.map +1 -0
  62. package/cjs/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  63. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js +19 -0
  64. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js.map +1 -0
  65. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  66. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js +17 -0
  67. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js.map +1 -0
  68. package/cjs/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  69. package/cjs/components/Clickable/ClickableButtonOutline.js +36 -0
  70. package/cjs/components/Clickable/ClickableButtonOutline.js.map +1 -0
  71. package/cjs/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  72. package/cjs/components/Clickable/ClickableButtonOutline.styles.js +25 -0
  73. package/cjs/components/Clickable/ClickableButtonOutline.styles.js.map +1 -0
  74. package/cjs/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  75. package/cjs/components/Clickable/ClickableButtonWrapper.js +27 -0
  76. package/cjs/components/Clickable/ClickableButtonWrapper.js.map +1 -0
  77. package/cjs/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  78. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js +27 -0
  79. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js.map +1 -0
  80. package/cjs/components/Clickable/ClickableLink.d.ts +5 -0
  81. package/cjs/components/Clickable/ClickableLink.js +28 -0
  82. package/cjs/components/Clickable/ClickableLink.js.map +1 -0
  83. package/cjs/components/Clickable/ClickableLink.styles.d.ts +21 -0
  84. package/cjs/components/Clickable/ClickableLink.styles.js +134 -0
  85. package/cjs/components/Clickable/ClickableLink.styles.js.map +1 -0
  86. package/cjs/components/Clickable/ClickableLinkChild.d.ts +7 -0
  87. package/cjs/components/Clickable/ClickableLinkChild.js +40 -0
  88. package/cjs/components/Clickable/ClickableLinkChild.js.map +1 -0
  89. package/cjs/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  90. package/cjs/components/Clickable/ClickableLinkChild.styles.js +42 -0
  91. package/cjs/components/Clickable/ClickableLinkChild.styles.js.map +1 -0
  92. package/cjs/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  93. package/cjs/components/Clickable/ClickableLinkIcon.js +30 -0
  94. package/cjs/components/Clickable/ClickableLinkIcon.js.map +1 -0
  95. package/cjs/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  96. package/cjs/components/Clickable/ClickableLinkIcon.styles.js +20 -0
  97. package/cjs/components/Clickable/ClickableLinkIcon.styles.js.map +1 -0
  98. package/cjs/components/Clickable/index.d.ts +1 -0
  99. package/cjs/components/Clickable/index.js +1 -0
  100. package/cjs/components/Clickable/index.js.map +1 -0
  101. package/cjs/components/Clickable/utils.d.ts +6 -0
  102. package/cjs/components/Clickable/utils.js +47 -0
  103. package/cjs/components/Clickable/utils.js.map +1 -0
  104. package/cjs/components/CurrencyInput/CurrencyInput.js +3 -1
  105. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  106. package/cjs/components/DateInput/DateFragmentsView.js +2 -1
  107. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  108. package/cjs/components/DateInput/DateInput.js +2 -1
  109. package/cjs/components/DateInput/DateInput.js.map +1 -1
  110. package/cjs/components/DateInput/helpers/SelectionHelpers.js +11 -10
  111. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  112. package/cjs/components/Dropdown/getDropdownTheme.js +21 -22
  113. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  114. package/cjs/components/FileUploader/FileUploader.js +5 -5
  115. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  116. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
  117. package/cjs/components/FileUploader/FileUploader.styles.js +10 -2
  118. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  119. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  120. package/cjs/components/GlobalLoader/GlobalLoader.js +11 -16
  121. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  122. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  123. package/cjs/components/GlobalLoader/GlobalLoaderView.js +3 -5
  124. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  125. package/cjs/components/Group/Group.js +7 -5
  126. package/cjs/components/Group/Group.js.map +1 -1
  127. package/cjs/components/Group/Group.md +24 -0
  128. package/cjs/components/Hint/Hint.js +5 -5
  129. package/cjs/components/Hint/Hint.js.map +1 -1
  130. package/cjs/components/Input/Input.d.ts +22 -5
  131. package/cjs/components/Input/Input.js +43 -22
  132. package/cjs/components/Input/Input.js.map +1 -1
  133. package/cjs/components/Input/Input.typings.d.ts +7 -0
  134. package/cjs/components/Input/Input.typings.js +1 -0
  135. package/cjs/components/Input/Input.typings.js.map +1 -0
  136. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -1
  137. package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
  138. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  139. package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -7
  140. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  141. package/cjs/components/Input/index.d.ts +1 -0
  142. package/cjs/components/Input/index.js +2 -1
  143. package/cjs/components/Input/index.js.map +1 -1
  144. package/cjs/components/Kebab/Kebab.js +3 -2
  145. package/cjs/components/Kebab/Kebab.js.map +1 -1
  146. package/cjs/components/Link/Link.js +11 -7
  147. package/cjs/components/Link/Link.js.map +1 -1
  148. package/cjs/components/Link/Link.md +69 -0
  149. package/cjs/components/Link/Link.styles.d.ts +1 -0
  150. package/cjs/components/Link/Link.styles.js +30 -22
  151. package/cjs/components/Link/Link.styles.js.map +1 -1
  152. package/cjs/components/Loader/Loader.js +8 -7
  153. package/cjs/components/Loader/Loader.js.map +1 -1
  154. package/cjs/components/MaskedInput/MaskedInput.d.ts +24 -0
  155. package/cjs/components/MaskedInput/MaskedInput.js +78 -0
  156. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -0
  157. package/cjs/components/MaskedInput/MaskedInput.md +21 -0
  158. package/cjs/components/MaskedInput/index.js.map +1 -0
  159. package/cjs/components/MenuHeader/MenuHeader.js +3 -1
  160. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  161. package/cjs/components/MenuItem/MenuItem.d.ts +21 -0
  162. package/cjs/components/MenuItem/MenuItem.js +113 -15
  163. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  164. package/cjs/components/MenuItem/MenuItem.md +20 -6
  165. package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
  166. package/cjs/components/MiniModal/MiniModal.js +47 -0
  167. package/cjs/components/MiniModal/MiniModal.js.map +1 -0
  168. package/cjs/components/MiniModal/MiniModal.md +233 -0
  169. package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
  170. package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
  171. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
  172. package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
  173. package/cjs/components/MiniModal/MiniModalBody.js +24 -0
  174. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
  175. package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
  176. package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
  177. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
  178. package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
  179. package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
  180. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
  181. package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
  182. package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
  183. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
  184. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  185. package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
  186. package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
  187. package/cjs/components/MiniModal/index.d.ts +5 -0
  188. package/cjs/components/MiniModal/index.js +5 -0
  189. package/cjs/components/MiniModal/index.js.map +1 -0
  190. package/cjs/components/Modal/Modal.d.ts +6 -0
  191. package/cjs/components/Modal/Modal.js +15 -1
  192. package/cjs/components/Modal/Modal.js.map +1 -1
  193. package/cjs/components/Modal/Modal.styles.d.ts +5 -0
  194. package/cjs/components/Modal/Modal.styles.js +56 -39
  195. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  196. package/cjs/components/Modal/ModalClose.js +2 -1
  197. package/cjs/components/Modal/ModalClose.js.map +1 -1
  198. package/cjs/components/Modal/ModalHeader.js +1 -1
  199. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  200. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  201. package/cjs/components/Modal/ModalSeparator.js +5 -0
  202. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  203. package/cjs/components/Modal/getModalTheme.d.ts +2 -2
  204. package/cjs/components/Modal/getModalTheme.js +6 -2
  205. package/cjs/components/Modal/getModalTheme.js.map +1 -1
  206. package/cjs/components/Paging/NavigationHelper.js +2 -1
  207. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  208. package/cjs/components/Paging/Paging.js +16 -14
  209. package/cjs/components/Paging/Paging.js.map +1 -1
  210. package/cjs/components/Paging/Paging.styles.d.ts +0 -1
  211. package/cjs/components/Paging/Paging.styles.js +3 -9
  212. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  213. package/cjs/components/PasswordInput/PasswordInput.js +4 -2
  214. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  215. package/cjs/components/Radio/Radio.js +2 -1
  216. package/cjs/components/Radio/Radio.js.map +1 -1
  217. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
  218. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  219. package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
  220. package/cjs/components/ScrollContainer/ScrollBar.js +15 -45
  221. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  222. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
  223. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  224. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +18 -3
  225. package/cjs/components/ScrollContainer/ScrollContainer.js +102 -21
  226. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  227. package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
  228. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  229. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
  230. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  231. package/cjs/components/Select/Item.d.ts +1 -0
  232. package/cjs/components/Select/Item.js +2 -1
  233. package/cjs/components/Select/Item.js.map +1 -1
  234. package/cjs/components/Select/Select.d.ts +2 -0
  235. package/cjs/components/Select/Select.js +25 -8
  236. package/cjs/components/Select/Select.js.map +1 -1
  237. package/cjs/components/Select/Select.md +12 -0
  238. package/cjs/components/SidePage/SidePage.d.ts +3 -1
  239. package/cjs/components/SidePage/SidePage.js +36 -5
  240. package/cjs/components/SidePage/SidePage.js.map +1 -1
  241. package/cjs/components/SidePage/SidePageCloseButton.js +2 -1
  242. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  243. package/cjs/components/SidePage/SidePageHeader.d.ts +1 -0
  244. package/cjs/components/SidePage/SidePageHeader.js +8 -6
  245. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  246. package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
  247. package/cjs/components/SingleToast/SingleToast.js +20 -0
  248. package/cjs/components/SingleToast/SingleToast.js.map +1 -0
  249. package/cjs/components/SingleToast/SingleToast.md +35 -0
  250. package/cjs/components/SingleToast/index.d.ts +1 -0
  251. package/cjs/components/SingleToast/index.js +1 -0
  252. package/cjs/components/SingleToast/index.js.map +1 -0
  253. package/cjs/components/Spinner/Spinner.d.ts +1 -0
  254. package/cjs/components/Spinner/Spinner.js +16 -1
  255. package/cjs/components/Spinner/Spinner.js.map +1 -1
  256. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
  257. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  258. package/cjs/components/Sticky/Sticky.js +5 -10
  259. package/cjs/components/Sticky/Sticky.js.map +1 -1
  260. package/cjs/components/Switcher/Switcher.d.ts +1 -1
  261. package/cjs/components/Switcher/Switcher.js.map +1 -1
  262. package/cjs/components/Tabs/Indicator.js +3 -1
  263. package/cjs/components/Tabs/Indicator.js.map +1 -1
  264. package/cjs/components/Tabs/Tab.js +2 -1
  265. package/cjs/components/Tabs/Tab.js.map +1 -1
  266. package/cjs/components/Tabs/Tabs.js +3 -1
  267. package/cjs/components/Tabs/Tabs.js.map +1 -1
  268. package/cjs/components/Textarea/Textarea.d.ts +1 -0
  269. package/cjs/components/Textarea/Textarea.js +38 -11
  270. package/cjs/components/Textarea/Textarea.js.map +1 -1
  271. package/cjs/components/Textarea/TextareaCounter.d.ts +1 -1
  272. package/cjs/components/Textarea/TextareaCounter.js +2 -1
  273. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  274. package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
  275. package/cjs/components/Textarea/TextareaHelpers.js +7 -2
  276. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  277. package/cjs/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  278. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js +20 -0
  279. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js.map +1 -0
  280. package/cjs/components/Toast/Toast.d.ts +10 -3
  281. package/cjs/components/Toast/Toast.js +26 -8
  282. package/cjs/components/Toast/Toast.js.map +1 -1
  283. package/cjs/components/Toast/Toast.md +0 -105
  284. package/cjs/components/Toast/ToastStatic.js +4 -3
  285. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  286. package/cjs/components/Token/Token.js +1 -6
  287. package/cjs/components/Token/Token.js.map +1 -1
  288. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  289. package/cjs/components/TokenInput/TokenInput.js +42 -9
  290. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  291. package/cjs/components/TokenInput/TokenInput.md +71 -0
  292. package/cjs/components/Tooltip/Tooltip.d.ts +6 -1
  293. package/cjs/components/Tooltip/Tooltip.js +15 -5
  294. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  295. package/cjs/components/Tooltip/Tooltip.md +24 -0
  296. package/cjs/hooks/useDrop.js +3 -2
  297. package/cjs/hooks/useDrop.js.map +1 -1
  298. package/cjs/index.d.ts +5 -0
  299. package/cjs/index.js +5 -0
  300. package/cjs/index.js.map +1 -1
  301. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +2 -1
  302. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  303. package/cjs/internal/ComponentCombinator.d.ts +7 -8
  304. package/cjs/internal/ComponentCombinator.js +2 -5
  305. package/cjs/internal/ComponentCombinator.js.map +1 -1
  306. package/cjs/internal/ComponentTable.d.ts +7 -19
  307. package/cjs/internal/ComponentTable.js +50 -77
  308. package/cjs/internal/ComponentTable.js.map +1 -1
  309. package/cjs/internal/CustomComboBox/CustomComboBox.js +4 -3
  310. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  311. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +3 -2
  312. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  313. package/cjs/internal/DateSelect/DateSelect.js +20 -16
  314. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  315. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  316. package/cjs/internal/DropdownContainer/DropdownContainer.js +14 -13
  317. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  318. package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
  319. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
  320. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -1
  321. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +2 -1
  322. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  323. package/cjs/internal/FocusTrap/FocusTrap.js +8 -6
  324. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  325. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +19 -20
  326. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  327. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  328. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  329. package/cjs/internal/InputLikeText/InputLikeText.js +17 -16
  330. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  331. package/cjs/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  332. package/cjs/internal/{MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput.js} +11 -8
  333. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  334. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -0
  335. package/cjs/internal/InternalMaskedInput/index.d.ts +1 -0
  336. package/cjs/internal/InternalMaskedInput/index.js +1 -0
  337. package/cjs/internal/InternalMaskedInput/index.js.map +1 -0
  338. package/cjs/internal/InternalMenu/InternalMenu.js +8 -7
  339. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  340. package/cjs/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  341. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  342. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js +52 -0
  343. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js.map +1 -0
  344. package/cjs/internal/MaskedInputElement/MaskedInputElement.js +196 -0
  345. package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -0
  346. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +29 -0
  347. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -0
  348. package/cjs/internal/MaskedInputElement/index.d.ts +1 -0
  349. package/cjs/internal/MaskedInputElement/index.js +1 -0
  350. package/cjs/internal/MaskedInputElement/index.js.map +1 -0
  351. package/cjs/internal/Menu/Menu.d.ts +6 -0
  352. package/cjs/internal/Menu/Menu.js +84 -16
  353. package/cjs/internal/Menu/Menu.js.map +1 -1
  354. package/cjs/internal/Menu/MenuContext.d.ts +10 -0
  355. package/cjs/internal/Menu/MenuContext.js +16 -0
  356. package/cjs/internal/Menu/MenuContext.js.map +1 -0
  357. package/cjs/internal/Menu/MenuNavigation.d.ts +26 -0
  358. package/cjs/internal/Menu/MenuNavigation.js +107 -0
  359. package/cjs/internal/Menu/MenuNavigation.js.map +1 -0
  360. package/cjs/internal/Menu/isActiveElement.js +1 -1
  361. package/cjs/internal/Menu/isActiveElement.js.map +1 -1
  362. package/cjs/internal/MenuMessage/MenuMessage.d.ts +1 -1
  363. package/cjs/internal/Popup/Popup.js +12 -8
  364. package/cjs/internal/Popup/Popup.js.map +1 -1
  365. package/cjs/internal/Popup/PopupHelper.js +9 -7
  366. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  367. package/cjs/internal/PopupMenu/PopupMenu.js +3 -2
  368. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  369. package/cjs/internal/RenderContainer/RenderContainer.d.ts +0 -1
  370. package/cjs/internal/RenderContainer/RenderContainer.js +18 -22
  371. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  372. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
  373. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  374. package/cjs/internal/RenderLayer/RenderLayer.js +5 -3
  375. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  376. package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
  377. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  378. package/cjs/internal/ThemePlayground/constants.js +1 -0
  379. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  380. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  381. package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
  382. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  383. package/cjs/internal/ZIndex/ZIndex.js +2 -2
  384. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  385. package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
  386. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  387. package/cjs/internal/icons/16px/index.d.ts +19 -19
  388. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  389. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  390. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  391. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  392. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  393. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  394. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  395. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  396. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  397. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  398. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  399. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  400. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  401. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  402. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  403. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  404. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  405. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  406. package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
  407. package/cjs/internal/icons2022/BaseIcon.js +3 -7
  408. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  409. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  410. package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
  411. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
  412. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  413. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  414. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  415. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  416. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  417. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  418. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  419. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  420. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  421. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  422. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  423. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  424. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  425. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  426. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  427. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  428. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
  429. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
  430. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  431. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  432. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  433. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  434. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  435. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  436. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  437. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  438. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  439. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  440. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  441. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  442. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  443. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  444. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  445. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  446. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  447. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  448. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  449. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  450. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  451. package/cjs/internal/themes/DefaultTheme.d.ts +67 -2
  452. package/cjs/internal/themes/DefaultTheme.js +134 -7
  453. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  454. package/cjs/internal/themes/Theme2022.d.ts +22 -7
  455. package/cjs/internal/themes/Theme2022.js +40 -11
  456. package/cjs/internal/themes/Theme2022.js.map +1 -1
  457. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -9
  458. package/cjs/internal/themes/Theme2022Dark.js +10 -10
  459. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  460. package/cjs/lib/LayoutEvents.js +5 -4
  461. package/cjs/lib/LayoutEvents.js.map +1 -1
  462. package/cjs/lib/ModalStack.js +2 -3
  463. package/cjs/lib/ModalStack.js.map +1 -1
  464. package/cjs/lib/SSRSafe.d.ts +1 -6
  465. package/cjs/lib/SSRSafe.js +4 -48
  466. package/cjs/lib/SSRSafe.js.map +1 -1
  467. package/cjs/lib/Upgrades.d.ts +1 -0
  468. package/cjs/lib/Upgrades.js +3 -1
  469. package/cjs/lib/Upgrades.js.map +1 -1
  470. package/cjs/lib/animation/index.js +6 -4
  471. package/cjs/lib/animation/index.js.map +1 -1
  472. package/cjs/lib/chars.d.ts +1 -1
  473. package/cjs/lib/chars.js +2 -2
  474. package/cjs/lib/chars.js.map +1 -1
  475. package/cjs/lib/client.d.ts +2 -7
  476. package/cjs/lib/client.js +9 -7
  477. package/cjs/lib/client.js.map +1 -1
  478. package/cjs/lib/dom/getScrollWidth.js +4 -4
  479. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  480. package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
  481. package/cjs/lib/dom/tabbableHelpers.js +8 -2
  482. package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
  483. package/cjs/lib/events/MouseDrag.js +11 -11
  484. package/cjs/lib/events/MouseDrag.js.map +1 -1
  485. package/cjs/lib/events/fixClickFocusIE.js +6 -3
  486. package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
  487. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
  488. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  489. package/cjs/lib/events/keyListener.js +9 -11
  490. package/cjs/lib/events/keyListener.js.map +1 -1
  491. package/cjs/lib/events/keyboard/identifiers.js +5 -2
  492. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  493. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  494. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  495. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
  496. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
  497. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  498. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +20 -0
  499. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  500. package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
  501. package/cjs/lib/featureFlagsContext/index.js +3 -0
  502. package/cjs/lib/featureFlagsContext/index.js.map +1 -0
  503. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  504. package/cjs/lib/forwardRefAndName.js +4 -1
  505. package/cjs/lib/forwardRefAndName.js.map +1 -1
  506. package/cjs/lib/isInstanceOf.d.ts +1 -0
  507. package/cjs/lib/isInstanceOf.js +6 -0
  508. package/cjs/lib/isInstanceOf.js.map +1 -0
  509. package/cjs/lib/listenFocusOutside.js +15 -15
  510. package/cjs/lib/listenFocusOutside.js.map +1 -1
  511. package/cjs/lib/needsPolyfillPlaceholder.js +5 -3
  512. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  513. package/cjs/lib/net/fetch.js +24 -18
  514. package/cjs/lib/net/fetch.js.map +1 -1
  515. package/cjs/lib/rootNode/getRootNode.js +6 -6
  516. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  517. package/cjs/lib/styles/ColorFactory.js +13 -11
  518. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  519. package/cjs/lib/styles/ColorHelpers.d.ts +1 -1
  520. package/cjs/lib/styles/ColorHelpers.js +3 -7
  521. package/cjs/lib/styles/ColorHelpers.js.map +1 -1
  522. package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
  523. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  524. package/cjs/lib/theming/Emotion.js +4 -2
  525. package/cjs/lib/theming/Emotion.js.map +1 -1
  526. package/cjs/lib/utils.d.ts +7 -0
  527. package/cjs/lib/utils.js +29 -7
  528. package/cjs/lib/utils.js.map +1 -1
  529. package/cjs/typings/global.d.ts +3 -4
  530. package/cjs/typings/react-ref.d.ts +29 -0
  531. package/cjs/typings/utility-types.d.ts +2 -0
  532. package/components/Button/Button/Button.js +16 -3
  533. package/components/Button/Button/Button.js.map +1 -1
  534. package/components/Button/Button.d.ts +1 -0
  535. package/components/Button/Button.md +68 -0
  536. package/components/Button/Button.mixins/Button.mixins.js +58 -13
  537. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  538. package/components/Button/Button.mixins.d.ts +6 -6
  539. package/components/Button/Button.styles/Button.styles.js +210 -24
  540. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  541. package/components/Button/Button.styles.d.ts +2 -1
  542. package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
  543. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  544. package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
  545. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  546. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +1 -0
  547. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  548. package/components/Calendar/Calendar/Calendar.js +8 -6
  549. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  550. package/components/Checkbox/Checkbox/Checkbox.js +10 -5
  551. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  552. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js +17 -0
  553. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js.map +1 -0
  554. package/components/Clickable/ArrowLeftIcon/package.json +6 -0
  555. package/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  556. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js +17 -0
  557. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js.map +1 -0
  558. package/components/Clickable/ArrowRightIcon/package.json +6 -0
  559. package/components/Clickable/ArrowRightIcon.d.ts +3 -0
  560. package/components/Clickable/Clickable/Clickable.js +165 -0
  561. package/components/Clickable/Clickable/Clickable.js.map +1 -0
  562. package/components/Clickable/Clickable/package.json +6 -0
  563. package/components/Clickable/Clickable.d.ts +95 -0
  564. package/components/Clickable/Clickable.md +210 -0
  565. package/components/Clickable/Clickable.styles/Clickable.styles.js +13 -0
  566. package/components/Clickable/Clickable.styles/Clickable.styles.js.map +1 -0
  567. package/components/Clickable/Clickable.styles/package.json +6 -0
  568. package/components/Clickable/Clickable.styles.d.ts +11 -0
  569. package/components/Clickable/ClickableButton/ClickableButton.js +31 -0
  570. package/components/Clickable/ClickableButton/ClickableButton.js.map +1 -0
  571. package/components/Clickable/ClickableButton/package.json +6 -0
  572. package/components/Clickable/ClickableButton.d.ts +5 -0
  573. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js +81 -0
  574. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js.map +1 -0
  575. package/components/Clickable/ClickableButton.mixins/package.json +6 -0
  576. package/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  577. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js +313 -0
  578. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js.map +1 -0
  579. package/components/Clickable/ClickableButton.styles/package.json +6 -0
  580. package/components/Clickable/ClickableButton.styles.d.ts +63 -0
  581. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js +21 -0
  582. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js.map +1 -0
  583. package/components/Clickable/ClickableButtonArrow/package.json +6 -0
  584. package/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  585. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js +22 -0
  586. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js.map +1 -0
  587. package/components/Clickable/ClickableButtonArrow.styles/package.json +6 -0
  588. package/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  589. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js +37 -0
  590. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js.map +1 -0
  591. package/components/Clickable/ClickableButtonCaption/package.json +6 -0
  592. package/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  593. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js +16 -0
  594. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js.map +1 -0
  595. package/components/Clickable/ClickableButtonCaption.styles/package.json +6 -0
  596. package/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  597. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js +51 -0
  598. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js.map +1 -0
  599. package/components/Clickable/ClickableButtonIcon/package.json +6 -0
  600. package/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  601. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js +58 -0
  602. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js.map +1 -0
  603. package/components/Clickable/ClickableButtonIcon.styles/package.json +6 -0
  604. package/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  605. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js +18 -0
  606. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js.map +1 -0
  607. package/components/Clickable/ClickableButtonLoadingIcon/package.json +6 -0
  608. package/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  609. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js +10 -0
  610. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js.map +1 -0
  611. package/components/Clickable/ClickableButtonLoadingIcon.styles/package.json +6 -0
  612. package/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  613. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js +22 -0
  614. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js.map +1 -0
  615. package/components/Clickable/ClickableButtonOutline/package.json +6 -0
  616. package/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  617. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js +16 -0
  618. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js.map +1 -0
  619. package/components/Clickable/ClickableButtonOutline.styles/package.json +6 -0
  620. package/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  621. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js +18 -0
  622. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js.map +1 -0
  623. package/components/Clickable/ClickableButtonWrapper/package.json +6 -0
  624. package/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  625. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js +19 -0
  626. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js.map +1 -0
  627. package/components/Clickable/ClickableButtonWrapper.styles/package.json +6 -0
  628. package/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  629. package/components/Clickable/ClickableLink/ClickableLink.js +24 -0
  630. package/components/Clickable/ClickableLink/ClickableLink.js.map +1 -0
  631. package/components/Clickable/ClickableLink/package.json +6 -0
  632. package/components/Clickable/ClickableLink.d.ts +5 -0
  633. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js +52 -0
  634. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js.map +1 -0
  635. package/components/Clickable/ClickableLink.styles/package.json +6 -0
  636. package/components/Clickable/ClickableLink.styles.d.ts +21 -0
  637. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js +20 -0
  638. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js.map +1 -0
  639. package/components/Clickable/ClickableLinkChild/package.json +6 -0
  640. package/components/Clickable/ClickableLinkChild.d.ts +7 -0
  641. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js +24 -0
  642. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js.map +1 -0
  643. package/components/Clickable/ClickableLinkChild.styles/package.json +6 -0
  644. package/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  645. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js +21 -0
  646. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js.map +1 -0
  647. package/components/Clickable/ClickableLinkIcon/package.json +6 -0
  648. package/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  649. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js +16 -0
  650. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js.map +1 -0
  651. package/components/Clickable/ClickableLinkIcon.styles/package.json +6 -0
  652. package/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  653. package/components/Clickable/index/index.js +1 -0
  654. package/components/Clickable/index/index.js.map +1 -0
  655. package/{internal/MaskedInput → components/Clickable}/index/package.json +1 -1
  656. package/components/Clickable/index.d.ts +1 -0
  657. package/{internal/MaskedInput → components/Clickable}/package.json +1 -1
  658. package/components/Clickable/utils/package.json +6 -0
  659. package/components/Clickable/utils/utils.js +44 -0
  660. package/components/Clickable/utils/utils.js.map +1 -0
  661. package/components/Clickable/utils.d.ts +6 -0
  662. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +3 -1
  663. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  664. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -1
  665. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  666. package/components/DateInput/DateInput/DateInput.js +2 -1
  667. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  668. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -10
  669. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  670. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +21 -22
  671. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  672. package/components/FileUploader/FileUploader/FileUploader.js +5 -5
  673. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  674. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +2 -2
  675. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  676. package/components/FileUploader/FileUploader.styles.d.ts +1 -1
  677. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +30 -34
  678. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  679. package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  680. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +2 -3
  681. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  682. package/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  683. package/components/Group/Group/Group.js +9 -10
  684. package/components/Group/Group/Group.js.map +1 -1
  685. package/components/Group/Group.md +24 -0
  686. package/components/Hint/Hint/Hint.js +6 -7
  687. package/components/Hint/Hint/Hint.js.map +1 -1
  688. package/components/Input/Input/Input.js +28 -16
  689. package/components/Input/Input/Input.js.map +1 -1
  690. package/components/Input/Input.d.ts +22 -5
  691. package/components/Input/Input.typings/Input.typings.js +1 -0
  692. package/components/Input/Input.typings/Input.typings.js.map +1 -0
  693. package/components/Input/Input.typings/package.json +6 -0
  694. package/components/Input/Input.typings.d.ts +7 -0
  695. package/components/Input/InputLayout/InputLayout.d.ts +1 -1
  696. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
  697. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  698. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +1 -2
  699. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  700. package/components/Input/index/index.js +2 -1
  701. package/components/Input/index/index.js.map +1 -1
  702. package/components/Input/index.d.ts +1 -0
  703. package/components/Kebab/Kebab/Kebab.js +3 -2
  704. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  705. package/components/Link/Link/Link.js +5 -4
  706. package/components/Link/Link/Link.js.map +1 -1
  707. package/components/Link/Link.md +69 -0
  708. package/components/Link/Link.styles/Link.styles.js +25 -22
  709. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  710. package/components/Link/Link.styles.d.ts +1 -0
  711. package/components/Loader/Loader/Loader.js +9 -6
  712. package/components/Loader/Loader/Loader.js.map +1 -1
  713. package/components/MaskedInput/MaskedInput/MaskedInput.js +62 -0
  714. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -0
  715. package/{internal → components}/MaskedInput/MaskedInput/package.json +1 -1
  716. package/components/MaskedInput/MaskedInput.d.ts +24 -0
  717. package/components/MaskedInput/MaskedInput.md +21 -0
  718. package/components/MaskedInput/index/index.js.map +1 -0
  719. package/components/MaskedInput/index/package.json +6 -0
  720. package/components/MaskedInput/package.json +6 -0
  721. package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -1
  722. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  723. package/components/MenuItem/MenuItem/MenuItem.js +129 -19
  724. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  725. package/components/MenuItem/MenuItem.d.ts +21 -0
  726. package/components/MenuItem/MenuItem.md +20 -6
  727. package/components/MiniModal/MiniModal/MiniModal.js +38 -0
  728. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
  729. package/components/MiniModal/MiniModal/package.json +6 -0
  730. package/components/MiniModal/MiniModal.d.ts +18 -0
  731. package/components/MiniModal/MiniModal.md +233 -0
  732. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
  733. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
  734. package/components/MiniModal/MiniModal.styles/package.json +6 -0
  735. package/components/MiniModal/MiniModal.styles.d.ts +14 -0
  736. package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
  737. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
  738. package/components/MiniModal/MiniModalBody/package.json +6 -0
  739. package/components/MiniModal/MiniModalBody.d.ts +7 -0
  740. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
  741. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
  742. package/components/MiniModal/MiniModalFooter/package.json +6 -0
  743. package/components/MiniModal/MiniModalFooter.d.ts +18 -0
  744. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
  745. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
  746. package/components/MiniModal/MiniModalHeader/package.json +6 -0
  747. package/components/MiniModal/MiniModalHeader.d.ts +17 -0
  748. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
  749. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
  750. package/components/MiniModal/MiniModalIndent/package.json +6 -0
  751. package/components/MiniModal/MiniModalIndent.d.ts +6 -0
  752. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
  753. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
  754. package/components/MiniModal/getMiniModalTheme/package.json +6 -0
  755. package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  756. package/components/MiniModal/index/index.js +5 -0
  757. package/components/MiniModal/index/index.js.map +1 -0
  758. package/components/MiniModal/index/package.json +6 -0
  759. package/components/MiniModal/index.d.ts +5 -0
  760. package/components/MiniModal/package.json +6 -0
  761. package/components/Modal/Modal/Modal.js +18 -14
  762. package/components/Modal/Modal/Modal.js.map +1 -1
  763. package/components/Modal/Modal.d.ts +6 -0
  764. package/components/Modal/Modal.styles/Modal.styles.js +44 -37
  765. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  766. package/components/Modal/Modal.styles.d.ts +5 -0
  767. package/components/Modal/ModalClose/ModalClose.js +2 -1
  768. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  769. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  770. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  771. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
  772. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  773. package/components/Modal/ModalSeparator.d.ts +5 -0
  774. package/components/Modal/getModalTheme/getModalTheme.js +8 -3
  775. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
  776. package/components/Modal/getModalTheme.d.ts +2 -2
  777. package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
  778. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  779. package/components/Paging/Paging/Paging.js +16 -10
  780. package/components/Paging/Paging/Paging.js.map +1 -1
  781. package/components/Paging/Paging.styles/Paging.styles.js +2 -5
  782. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  783. package/components/Paging/Paging.styles.d.ts +0 -1
  784. package/components/PasswordInput/PasswordInput/PasswordInput.js +4 -2
  785. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  786. package/components/Radio/Radio/Radio.js +2 -1
  787. package/components/Radio/Radio/Radio.js.map +1 -1
  788. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
  789. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  790. package/components/ScrollContainer/ScrollBar/ScrollBar.js +17 -50
  791. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  792. package/components/ScrollContainer/ScrollBar.d.ts +4 -7
  793. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +109 -22
  794. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  795. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
  796. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  797. package/components/ScrollContainer/ScrollContainer.d.ts +18 -3
  798. package/components/ScrollContainer/ScrollContainer.md +29 -2
  799. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
  800. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  801. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  802. package/components/Select/Item/Item.js +3 -1
  803. package/components/Select/Item/Item.js.map +1 -1
  804. package/components/Select/Item.d.ts +1 -0
  805. package/components/Select/Select/Select.js +23 -16
  806. package/components/Select/Select/Select.js.map +1 -1
  807. package/components/Select/Select.d.ts +2 -0
  808. package/components/Select/Select.md +12 -0
  809. package/components/SidePage/SidePage/SidePage.js +34 -9
  810. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  811. package/components/SidePage/SidePage.d.ts +3 -1
  812. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +2 -1
  813. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  814. package/components/SidePage/SidePageHeader/SidePageHeader.js +6 -4
  815. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  816. package/components/SidePage/SidePageHeader.d.ts +1 -0
  817. package/components/SingleToast/SingleToast/SingleToast.js +53 -0
  818. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
  819. package/components/SingleToast/SingleToast/package.json +6 -0
  820. package/components/SingleToast/SingleToast.d.ts +11 -0
  821. package/components/SingleToast/SingleToast.md +35 -0
  822. package/components/SingleToast/index/index.js +1 -0
  823. package/components/SingleToast/index/index.js.map +1 -0
  824. package/components/SingleToast/index/package.json +6 -0
  825. package/components/SingleToast/index.d.ts +1 -0
  826. package/components/SingleToast/package.json +6 -0
  827. package/components/Spinner/Spinner/Spinner.js +10 -4
  828. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  829. package/components/Spinner/Spinner.d.ts +1 -0
  830. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
  831. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  832. package/components/Sticky/Sticky/Sticky.js +5 -6
  833. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  834. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  835. package/components/Switcher/Switcher.d.ts +1 -1
  836. package/components/Tabs/Indicator/Indicator.js +3 -1
  837. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  838. package/components/Tabs/Tab/Tab.js +2 -1
  839. package/components/Tabs/Tab/Tab.js.map +1 -1
  840. package/components/Tabs/Tabs/Tabs.js +3 -1
  841. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  842. package/components/Textarea/Textarea/Textarea.js +33 -19
  843. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  844. package/components/Textarea/Textarea.d.ts +1 -0
  845. package/components/Textarea/TextareaCounter/TextareaCounter.js +2 -3
  846. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  847. package/components/Textarea/TextareaCounter.d.ts +1 -1
  848. package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
  849. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  850. package/components/Textarea/TextareaHelpers.d.ts +1 -1
  851. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js +21 -0
  852. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js.map +1 -0
  853. package/components/Textarea/TextareaWithSafari17Workaround/package.json +6 -0
  854. package/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  855. package/components/Toast/Toast/Toast.js +16 -7
  856. package/components/Toast/Toast/Toast.js.map +1 -1
  857. package/components/Toast/Toast.d.ts +10 -3
  858. package/components/Toast/Toast.md +0 -105
  859. package/components/Toast/ToastStatic/ToastStatic.js +4 -4
  860. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  861. package/components/Token/Token/Token.js +4 -3
  862. package/components/Token/Token/Token.js.map +1 -1
  863. package/components/TokenInput/TokenInput/TokenInput.js +51 -11
  864. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  865. package/components/TokenInput/TokenInput.d.ts +2 -0
  866. package/components/TokenInput/TokenInput.md +71 -0
  867. package/components/Tooltip/Tooltip/Tooltip.js +10 -7
  868. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  869. package/components/Tooltip/Tooltip.d.ts +6 -1
  870. package/components/Tooltip/Tooltip.md +24 -0
  871. package/hooks/useDrop/useDrop.js +3 -2
  872. package/hooks/useDrop/useDrop.js.map +1 -1
  873. package/index.d.ts +5 -0
  874. package/index.js +5 -0
  875. package/index.js.map +1 -1
  876. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
  877. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  878. package/internal/ComponentCombinator/ComponentCombinator.js +4 -8
  879. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  880. package/internal/ComponentCombinator.d.ts +7 -8
  881. package/internal/ComponentTable/ComponentTable.js +66 -103
  882. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  883. package/internal/ComponentTable.d.ts +7 -19
  884. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +4 -3
  885. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  886. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +3 -2
  887. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  888. package/internal/DateSelect/DateSelect/DateSelect.js +20 -20
  889. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  890. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +19 -17
  891. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  892. package/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  893. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
  894. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
  895. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +2 -1
  896. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  897. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -1
  898. package/internal/FocusTrap/FocusTrap/FocusTrap.js +9 -3
  899. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  900. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -26
  901. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  902. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  903. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  904. package/internal/InputLikeText/InputLikeText/InputLikeText.js +29 -19
  905. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  906. package/internal/{MaskedInput/MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js} +13 -9
  907. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  908. package/internal/InternalMaskedInput/InternalMaskedInput/package.json +6 -0
  909. package/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  910. package/{cjs/internal/MaskedInput/MaskedInput.styles.js.map → internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map} +1 -1
  911. package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +6 -0
  912. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +6 -0
  913. package/internal/InternalMaskedInput/index/index.js +1 -0
  914. package/internal/InternalMaskedInput/index/index.js.map +1 -0
  915. package/internal/InternalMaskedInput/index/package.json +6 -0
  916. package/internal/InternalMaskedInput/index.d.ts +1 -0
  917. package/internal/InternalMaskedInput/package.json +6 -0
  918. package/internal/InternalMenu/InternalMenu/InternalMenu.js +10 -9
  919. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  920. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +206 -0
  921. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -0
  922. package/internal/MaskedInputElement/MaskedInputElement/package.json +6 -0
  923. package/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  924. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js +43 -0
  925. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js.map +1 -0
  926. package/internal/MaskedInputElement/MaskedInputElement.helpers/package.json +6 -0
  927. package/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  928. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +16 -0
  929. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -0
  930. package/internal/MaskedInputElement/MaskedInputElement.styles/package.json +6 -0
  931. package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +6 -0
  932. package/internal/MaskedInputElement/index/index.js +1 -0
  933. package/internal/MaskedInputElement/index/index.js.map +1 -0
  934. package/internal/MaskedInputElement/index/package.json +6 -0
  935. package/internal/MaskedInputElement/index.d.ts +1 -0
  936. package/internal/MaskedInputElement/package.json +6 -0
  937. package/internal/Menu/Menu/Menu.js +144 -62
  938. package/internal/Menu/Menu/Menu.js.map +1 -1
  939. package/internal/Menu/Menu.d.ts +6 -0
  940. package/internal/Menu/MenuContext/MenuContext.js +5 -0
  941. package/internal/Menu/MenuContext/MenuContext.js.map +1 -0
  942. package/internal/Menu/MenuContext/package.json +6 -0
  943. package/internal/Menu/MenuContext.d.ts +10 -0
  944. package/internal/Menu/MenuNavigation/MenuNavigation.js +123 -0
  945. package/internal/Menu/MenuNavigation/MenuNavigation.js.map +1 -0
  946. package/internal/Menu/MenuNavigation/package.json +6 -0
  947. package/internal/Menu/MenuNavigation.d.ts +26 -0
  948. package/internal/Menu/isActiveElement/isActiveElement.js +1 -1
  949. package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
  950. package/internal/MenuMessage/MenuMessage.d.ts +1 -1
  951. package/internal/Popup/Popup/Popup.js +12 -13
  952. package/internal/Popup/Popup/Popup.js.map +1 -1
  953. package/internal/Popup/PopupHelper/PopupHelper.js +8 -5
  954. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  955. package/internal/PopupMenu/PopupMenu/PopupMenu.js +3 -2
  956. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  957. package/internal/RenderContainer/RenderContainer/RenderContainer.js +26 -16
  958. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  959. package/internal/RenderContainer/RenderContainer.d.ts +0 -1
  960. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  961. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  962. package/internal/RenderLayer/RenderLayer/RenderLayer.js +11 -5
  963. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  964. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  965. package/internal/ThemePlayground/constants/constants.js +3 -0
  966. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  967. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
  968. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  969. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  970. package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
  971. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  972. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
  973. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  974. package/internal/icons/16px/index.d.ts +19 -19
  975. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  976. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  977. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  978. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  979. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  980. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  981. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  982. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  983. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  984. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  985. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  986. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  987. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  988. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  989. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  990. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  991. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  992. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  993. package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
  994. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  995. package/internal/icons2022/BaseIcon.d.ts +1 -1
  996. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
  997. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
  998. package/internal/icons2022/BaseIcon.styles/package.json +6 -0
  999. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  1000. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  1001. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  1002. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  1003. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  1004. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  1005. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  1006. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  1007. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  1008. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  1009. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  1010. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  1011. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  1012. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  1013. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  1014. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  1015. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
  1016. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
  1017. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
  1018. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  1019. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  1020. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  1021. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  1022. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  1023. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  1024. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  1025. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  1026. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  1027. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  1028. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  1029. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  1030. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  1031. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  1032. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  1033. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  1034. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  1035. package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  1036. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  1037. package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  1038. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  1039. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  1040. package/internal/themes/DefaultTheme/DefaultTheme.js +178 -6
  1041. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1042. package/internal/themes/DefaultTheme.d.ts +67 -2
  1043. package/internal/themes/Theme2022/Theme2022.js +62 -15
  1044. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  1045. package/internal/themes/Theme2022.d.ts +22 -7
  1046. package/internal/themes/Theme2022Dark/Theme2022Dark.js +18 -13
  1047. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1048. package/internal/themes/Theme2022Dark.d.ts +5 -9
  1049. package/lib/LayoutEvents/LayoutEvents.js +5 -4
  1050. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  1051. package/lib/ModalStack/ModalStack.js +2 -2
  1052. package/lib/ModalStack/ModalStack.js.map +1 -1
  1053. package/lib/SSRSafe/SSRSafe.js +3 -35
  1054. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1055. package/lib/SSRSafe.d.ts +1 -6
  1056. package/lib/Upgrades/Upgrades.js +3 -1
  1057. package/lib/Upgrades/Upgrades.js.map +1 -1
  1058. package/lib/Upgrades.d.ts +1 -0
  1059. package/lib/animation/index/index.js +6 -3
  1060. package/lib/animation/index/index.js.map +1 -1
  1061. package/lib/chars/chars.js +1 -1
  1062. package/lib/chars/chars.js.map +1 -1
  1063. package/lib/chars.d.ts +1 -1
  1064. package/lib/client/client.js +9 -7
  1065. package/lib/client/client.js.map +1 -1
  1066. package/lib/client.d.ts +2 -7
  1067. package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
  1068. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  1069. package/lib/dom/tabbableHelpers/tabbableHelpers.js +4 -2
  1070. package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
  1071. package/lib/dom/tabbableHelpers.d.ts +2 -1
  1072. package/lib/events/MouseDrag/MouseDrag.js +15 -11
  1073. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1074. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +4 -2
  1075. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
  1076. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
  1077. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  1078. package/lib/events/keyListener/keyListener.js +9 -12
  1079. package/lib/events/keyListener/keyListener.js.map +1 -1
  1080. package/lib/events/keyboard/identifiers/identifiers.js +3 -1
  1081. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  1082. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  1083. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
  1084. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
  1085. package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
  1086. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  1087. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +10 -0
  1088. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  1089. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
  1090. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  1091. package/lib/featureFlagsContext/index/index.js +2 -0
  1092. package/lib/featureFlagsContext/index/index.js.map +1 -0
  1093. package/lib/featureFlagsContext/index/package.json +6 -0
  1094. package/lib/featureFlagsContext/index.d.ts +2 -0
  1095. package/lib/featureFlagsContext/package.json +6 -0
  1096. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  1097. package/lib/forwardRefAndName.d.ts +1 -1
  1098. package/lib/isInstanceOf/isInstanceOf.js +3 -0
  1099. package/lib/isInstanceOf/isInstanceOf.js.map +1 -0
  1100. package/lib/isInstanceOf/package.json +6 -0
  1101. package/lib/isInstanceOf.d.ts +1 -0
  1102. package/lib/listenFocusOutside/listenFocusOutside.js +19 -10
  1103. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1104. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -3
  1105. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  1106. package/lib/net/fetch/fetch.js +29 -21
  1107. package/lib/net/fetch/fetch.js.map +1 -1
  1108. package/lib/rootNode/getRootNode/getRootNode.js +6 -6
  1109. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1110. package/lib/styles/ColorFactory/ColorFactory.js +13 -9
  1111. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  1112. package/lib/styles/ColorHelpers/ColorHelpers.js +3 -7
  1113. package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
  1114. package/lib/styles/ColorHelpers.d.ts +1 -1
  1115. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
  1116. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  1117. package/lib/theming/Emotion/Emotion.js +6 -1
  1118. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1119. package/lib/utils/utils.js +31 -6
  1120. package/lib/utils/utils.js.map +1 -1
  1121. package/lib/utils.d.ts +7 -0
  1122. package/package.json +4 -4
  1123. package/typings/global.d.ts +3 -4
  1124. package/typings/react-ref.d.ts +29 -0
  1125. package/typings/utility-types.d.ts +2 -0
  1126. package/cjs/internal/MaskedInput/MaskedInput.js.map +0 -1
  1127. package/cjs/internal/MaskedInput/index.js.map +0 -1
  1128. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +0 -1
  1129. package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +0 -1
  1130. package/internal/MaskedInput/MaskedInput.styles/package.json +0 -6
  1131. package/internal/MaskedInput/index/index.js.map +0 -1
  1132. /package/cjs/{internal → components}/MaskedInput/index.d.ts +0 -0
  1133. /package/cjs/{internal → components}/MaskedInput/index.js +0 -0
  1134. /package/cjs/internal/{MaskedInput/MaskedInput.styles.d.ts → InternalMaskedInput/InternalMaskedInput.styles.d.ts} +0 -0
  1135. /package/cjs/internal/{MaskedInput/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles.js} +0 -0
  1136. /package/{internal/MaskedInput/MaskedInput.styles.d.ts → cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts} +0 -0
  1137. /package/{internal → components}/MaskedInput/index/index.js +0 -0
  1138. /package/{internal → components}/MaskedInput/index.d.ts +0 -0
  1139. /package/internal/{MaskedInput/MaskedInput.styles/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js} +0 -0
@@ -0,0 +1,3 @@
1
+ export function isInstanceOf(instance, constructor) {
2
+ return !!constructor && instance instanceof constructor;
3
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["isInstanceOf.ts"],"names":["isInstanceOf","instance","constructor"],"mappings":"AAAA,OAAO,SAASA,YAAT;AACLC,QADK;AAELC,WAFK;AAGwB;AAC7B,SAAO,CAAC,CAACA,WAAF,IAAiBD,QAAQ,YAAYC,WAA5C;AACD","sourcesContent":["export function isInstanceOf<C extends new (...args: any) => any>(\n instance?: unknown,\n constructor?: C,\n): instance is InstanceType<C> {\n return !!constructor && instance instanceof constructor;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../../cjs/lib/isInstanceOf.js",
3
+ "module": "isInstanceOf",
4
+ "types": "../isInstanceOf.d.ts",
5
+ "sideEffects": false
6
+ }
@@ -0,0 +1 @@
1
+ export declare function isInstanceOf<C extends new (...args: any) => any>(instance?: unknown, constructor?: C): instance is InstanceType<C>;
@@ -1,9 +1,14 @@
1
+ var _globalObject$documen2;
2
+
1
3
  import ReactDOM from 'react-dom';
2
4
  import debounce from 'lodash.debounce';
3
- import { isBrowser, isFirefox } from "../client";
5
+ import { globalObject } from '@skbkontur/global-object';
6
+ import { isInstanceOf } from "../isInstanceOf";
7
+ import { isFirefox } from "../client";
4
8
  var handlers = [];
5
9
 
6
10
  function addHandleEvent() {
11
+ var _globalObject$documen;
7
12
  /**
8
13
  * Firefox do not supports 'focusin' event.
9
14
  * Focus events bubbles multiple time
@@ -12,7 +17,9 @@ function addHandleEvent() {
12
17
  * Mozilla Firefix
13
18
  * ¯\_(ツ)_/¯
14
19
  */
15
- document.body.addEventListener(isFirefox ? 'focus' : 'focusin', isFirefox ? debounce(handleNativeFocus, 0, {
20
+
21
+
22
+ (_globalObject$documen = globalObject.document) == null ? void 0 : _globalObject$documen.body.addEventListener(isFirefox ? 'focus' : 'focusin', isFirefox ? debounce(handleNativeFocus, 0, {
16
23
  leading: true,
17
24
  trailing: false
18
25
  }) : handleNativeFocus, {
@@ -20,12 +27,10 @@ function addHandleEvent() {
20
27
  });
21
28
  }
22
29
 
23
- if (isBrowser) {
24
- if (document.readyState === 'complete') {
25
- addHandleEvent();
26
- } else {
27
- window.addEventListener('load', addHandleEvent);
28
- }
30
+ if (((_globalObject$documen2 = globalObject.document) == null ? void 0 : _globalObject$documen2.readyState) === 'complete') {
31
+ addHandleEvent();
32
+ } else {
33
+ globalObject.addEventListener == null ? void 0 : globalObject.addEventListener('load', addHandleEvent);
29
34
  }
30
35
 
31
36
  function handleNativeFocus(event) {
@@ -67,16 +72,20 @@ export function containsTargetOrRenderContainer(target) {
67
72
  */
68
73
 
69
74
  export function findRenderContainer(node, rootNode, container) {
75
+ var _globalObject$documen3, _globalObject$documen4;
76
+
70
77
  var currentNode = node.parentNode;
71
78
 
72
- if (!currentNode || node === rootNode || currentNode === rootNode || currentNode === document.body || currentNode === document.documentElement || !(currentNode instanceof Element)) {
79
+ if (!currentNode || node === rootNode || currentNode === rootNode || currentNode === ((_globalObject$documen3 = globalObject.document) == null ? void 0 : _globalObject$documen3.body) || currentNode === ((_globalObject$documen4 = globalObject.document) == null ? void 0 : _globalObject$documen4.documentElement) || !isInstanceOf(currentNode, globalObject.Element)) {
73
80
  return container ? container : null;
74
81
  }
75
82
 
76
83
  var newContainerId = currentNode.getAttribute('data-rendered-container-id');
77
84
 
78
85
  if (newContainerId) {
79
- var nextNode = document.querySelector("[data-render-container-id~=\"" + newContainerId + "\"]");
86
+ var _globalObject$documen5;
87
+
88
+ var nextNode = (_globalObject$documen5 = globalObject.document) == null ? void 0 : _globalObject$documen5.querySelector("[data-render-container-id~=\"" + newContainerId + "\"]");
80
89
 
81
90
  if (!nextNode) {
82
91
  throw Error("Origin node for render container was not found");
@@ -1 +1 @@
1
- {"version":3,"sources":["listenFocusOutside.ts"],"names":["ReactDOM","debounce","isBrowser","isFirefox","handlers","addHandleEvent","document","body","addEventListener","handleNativeFocus","leading","trailing","capture","readyState","window","event","target","srcElement","forEach","handler","elements","some","containsTargetOrRenderContainer","unstable_batchedUpdates","callback","element","contains","container","findRenderContainer","node","rootNode","currentNode","parentNode","documentElement","Element","newContainerId","getAttribute","nextNode","querySelector","Error","listen","push","remove","index","indexOf","splice"],"mappings":"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","sourcesContent":["import ReactDOM from 'react-dom';\nimport debounce from 'lodash.debounce';\n\nimport { isBrowser, isFirefox } from './client';\n\ninterface FocusOutsideEventHandler {\n elements: Element[] | (() => Element[]);\n callback: (event: Event) => void;\n}\n\nconst handlers: FocusOutsideEventHandler[] = [];\n\nfunction addHandleEvent() {\n /**\n * Firefox do not supports 'focusin' event.\n * Focus events bubbles multiple time\n * without possibilty to cancell bubbling.\n * Using debounce to capture only first focus event\n * Mozilla Firefix\n * ¯\\_(ツ)_/¯\n */\n document.body.addEventListener(\n isFirefox ? 'focus' : ('focusin' as 'focus'),\n isFirefox ? debounce(handleNativeFocus, 0, { leading: true, trailing: false }) : handleNativeFocus,\n { capture: true },\n );\n}\n\nif (isBrowser) {\n if (document.readyState === 'complete') {\n addHandleEvent();\n } else {\n window.addEventListener('load', addHandleEvent);\n }\n}\n\nfunction handleNativeFocus(event: UIEvent) {\n // FIXME: not safe casting\n const target: Element = (event.target || event.srcElement) as Element;\n\n handlers.forEach((handler) => {\n let elements = handler.elements;\n if (typeof elements === 'function') {\n elements = elements();\n }\n\n if (elements.some(containsTargetOrRenderContainer(target))) {\n return;\n }\n ReactDOM.unstable_batchedUpdates(() => handler.callback(event));\n });\n}\n\nexport function containsTargetOrRenderContainer(target: Element) {\n return (element: Element) => {\n if (!element) {\n return false;\n }\n if (element.contains(target)) {\n return true;\n }\n const container = findRenderContainer(target, element);\n return !!container && element.contains(container);\n };\n}\n\n/**\n * Searches RenderContainer placed in \"rootNode\" for \"node\"\n */\nexport function findRenderContainer(node: Element, rootNode: Element, container?: Element): Element | null {\n const currentNode = node.parentNode;\n if (\n !currentNode ||\n node === rootNode ||\n currentNode === rootNode ||\n currentNode === document.body ||\n currentNode === document.documentElement ||\n !(currentNode instanceof Element)\n ) {\n return container ? container : null;\n }\n\n const newContainerId = currentNode.getAttribute('data-rendered-container-id');\n if (newContainerId) {\n const nextNode = document.querySelector(`[data-render-container-id~=\"${newContainerId}\"]`);\n\n if (!nextNode) {\n throw Error(`Origin node for render container was not found`);\n }\n\n return findRenderContainer(nextNode, rootNode, nextNode);\n }\n\n return findRenderContainer(currentNode, rootNode, container);\n}\n\nexport function listen(elements: Element[] | (() => Element[]), callback: (event: Event) => void) {\n const handler = {\n elements,\n callback,\n };\n handlers.push(handler);\n\n return {\n remove() {\n const index = handlers.indexOf(handler);\n if (index > -1) {\n handlers.splice(index, 1);\n }\n },\n };\n}\n"]}
1
+ {"version":3,"sources":["listenFocusOutside.ts"],"names":["ReactDOM","debounce","globalObject","isInstanceOf","isFirefox","handlers","addHandleEvent","document","body","addEventListener","handleNativeFocus","leading","trailing","capture","readyState","event","target","srcElement","forEach","handler","elements","some","containsTargetOrRenderContainer","unstable_batchedUpdates","callback","element","contains","container","findRenderContainer","node","rootNode","currentNode","parentNode","documentElement","Element","newContainerId","getAttribute","nextNode","querySelector","Error","listen","push","remove","index","indexOf","splice"],"mappings":"2BAAA,OAAOA,QAAP,MAAqB,WAArB;AACA,OAAOC,QAAP,MAAqB,iBAArB;AACA,SAASC,YAAT,QAA6B,0BAA7B;;AAEA,SAASC,YAAT,QAA6B,gBAA7B;AACA,SAASC,SAAT,QAA0B,UAA1B;;;;;;;AAOA,IAAMC,QAAoC,GAAG,EAA7C;;AAEA,SAASC,cAAT,GAA0B;AACxB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACE,2BAAAJ,YAAY,CAACK,QAAb,2CAAuBC,IAAvB,CAA4BC,gBAA5B;AACEL,EAAAA,SAAS,GAAG,OAAH,GAAc,SADzB;AAEEA,EAAAA,SAAS,GAAGH,QAAQ,CAACS,iBAAD,EAAoB,CAApB,EAAuB,EAAEC,OAAO,EAAE,IAAX,EAAiBC,QAAQ,EAAE,KAA3B,EAAvB,CAAX,GAAwEF,iBAFnF;AAGE,IAAEG,OAAO,EAAE,IAAX,EAHF;;AAKD;;AAED,IAAI,2BAAAX,YAAY,CAACK,QAAb,4CAAuBO,UAAvB,MAAsC,UAA1C,EAAsD;AACpDR,EAAAA,cAAc;AACf,CAFD,MAEO;AACLJ,EAAAA,YAAY,CAACO,gBAAb,oBAAAP,YAAY,CAACO,gBAAb,CAAgC,MAAhC,EAAwCH,cAAxC;AACD;;AAED,SAASI,iBAAT,CAA2BK,KAA3B,EAA2C;AACzC;AACA,MAAMC,MAAe,GAAID,KAAK,CAACC,MAAN,IAAgBD,KAAK,CAACE,UAA/C;;AAEAZ,EAAAA,QAAQ,CAACa,OAAT,CAAiB,UAACC,OAAD,EAAa;AAC5B,QAAIC,QAAQ,GAAGD,OAAO,CAACC,QAAvB;AACA,QAAI,OAAOA,QAAP,KAAoB,UAAxB,EAAoC;AAClCA,MAAAA,QAAQ,GAAGA,QAAQ,EAAnB;AACD;;AAED,QAAIA,QAAQ,CAACC,IAAT,CAAcC,+BAA+B,CAACN,MAAD,CAA7C,CAAJ,EAA4D;AAC1D;AACD;AACDhB,IAAAA,QAAQ,CAACuB,uBAAT,CAAiC,oBAAMJ,OAAO,CAACK,QAAR,CAAiBT,KAAjB,CAAN,EAAjC;AACD,GAVD;AAWD;;AAED,OAAO,SAASO,+BAAT,CAAyCN,MAAzC,EAA0D;AAC/D,SAAO,UAACS,OAAD,EAAsB;AAC3B,QAAI,CAACA,OAAL,EAAc;AACZ,aAAO,KAAP;AACD;AACD,QAAIA,OAAO,CAACC,QAAR,CAAiBV,MAAjB,CAAJ,EAA8B;AAC5B,aAAO,IAAP;AACD;AACD,QAAMW,SAAS,GAAGC,mBAAmB,CAACZ,MAAD,EAASS,OAAT,CAArC;AACA,WAAO,CAAC,CAACE,SAAF,IAAeF,OAAO,CAACC,QAAR,CAAiBC,SAAjB,CAAtB;AACD,GATD;AAUD;;AAED;AACA;AACA;AACA,OAAO,SAASC,mBAAT,CAA6BC,IAA7B,EAA4CC,QAA5C,EAA+DH,SAA/D,EAAoG;AACzG,MAAMI,WAAW,GAAGF,IAAI,CAACG,UAAzB;AACA;AACE,GAACD,WAAD;AACAF,EAAAA,IAAI,KAAKC,QADT;AAEAC,EAAAA,WAAW,KAAKD,QAFhB;AAGAC,EAAAA,WAAW,gCAAK7B,YAAY,CAACK,QAAlB,qBAAK,uBAAuBC,IAA5B,CAHX;AAIAuB,EAAAA,WAAW,gCAAK7B,YAAY,CAACK,QAAlB,qBAAK,uBAAuB0B,eAA5B,CAJX;AAKA,GAAC9B,YAAY,CAAC4B,WAAD,EAAc7B,YAAY,CAACgC,OAA3B,CANf;AAOE;AACA,WAAOP,SAAS,GAAGA,SAAH,GAAe,IAA/B;AACD;;AAED,MAAMQ,cAAc,GAAGJ,WAAW,CAACK,YAAZ,CAAyB,4BAAzB,CAAvB;AACA,MAAID,cAAJ,EAAoB;AAClB,QAAME,QAAQ,6BAAGnC,YAAY,CAACK,QAAhB,qBAAG,uBAAuB+B,aAAvB,mCAAoEH,cAApE,SAAjB;;AAEA,QAAI,CAACE,QAAL,EAAe;AACb,YAAME,KAAK,kDAAX;AACD;;AAED,WAAOX,mBAAmB,CAACS,QAAD,EAAWP,QAAX,EAAqBO,QAArB,CAA1B;AACD;;AAED,SAAOT,mBAAmB,CAACG,WAAD,EAAcD,QAAd,EAAwBH,SAAxB,CAA1B;AACD;;AAED,OAAO,SAASa,MAAT,CAAgBpB,QAAhB,EAAyDI,QAAzD,EAA2F;AAChG,MAAML,OAAO,GAAG;AACdC,IAAAA,QAAQ,EAARA,QADc;AAEdI,IAAAA,QAAQ,EAARA,QAFc,EAAhB;;AAIAnB,EAAAA,QAAQ,CAACoC,IAAT,CAActB,OAAd;;AAEA,SAAO;AACLuB,IAAAA,MADK,oBACI;AACP,UAAMC,KAAK,GAAGtC,QAAQ,CAACuC,OAAT,CAAiBzB,OAAjB,CAAd;AACA,UAAIwB,KAAK,GAAG,CAAC,CAAb,EAAgB;AACdtC,QAAAA,QAAQ,CAACwC,MAAT,CAAgBF,KAAhB,EAAuB,CAAvB;AACD;AACF,KANI,EAAP;;AAQD","sourcesContent":["import ReactDOM from 'react-dom';\nimport debounce from 'lodash.debounce';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from './isInstanceOf';\nimport { isFirefox } from './client';\n\ninterface FocusOutsideEventHandler {\n elements: Element[] | (() => Element[]);\n callback: (event: Event) => void;\n}\n\nconst handlers: FocusOutsideEventHandler[] = [];\n\nfunction addHandleEvent() {\n /**\n * Firefox do not supports 'focusin' event.\n * Focus events bubbles multiple time\n * without possibilty to cancell bubbling.\n * Using debounce to capture only first focus event\n * Mozilla Firefix\n * ¯\\_(ツ)_/¯\n */\n globalObject.document?.body.addEventListener(\n isFirefox ? 'focus' : ('focusin' as 'focus'),\n isFirefox ? debounce(handleNativeFocus, 0, { leading: true, trailing: false }) : handleNativeFocus,\n { capture: true },\n );\n}\n\nif (globalObject.document?.readyState === 'complete') {\n addHandleEvent();\n} else {\n globalObject.addEventListener?.('load', addHandleEvent);\n}\n\nfunction handleNativeFocus(event: UIEvent) {\n // FIXME: not safe casting\n const target: Element = (event.target || event.srcElement) as Element;\n\n handlers.forEach((handler) => {\n let elements = handler.elements;\n if (typeof elements === 'function') {\n elements = elements();\n }\n\n if (elements.some(containsTargetOrRenderContainer(target))) {\n return;\n }\n ReactDOM.unstable_batchedUpdates(() => handler.callback(event));\n });\n}\n\nexport function containsTargetOrRenderContainer(target: Element) {\n return (element: Element) => {\n if (!element) {\n return false;\n }\n if (element.contains(target)) {\n return true;\n }\n const container = findRenderContainer(target, element);\n return !!container && element.contains(container);\n };\n}\n\n/**\n * Searches RenderContainer placed in \"rootNode\" for \"node\"\n */\nexport function findRenderContainer(node: Element, rootNode: Element, container?: Element): Element | null {\n const currentNode = node.parentNode;\n if (\n !currentNode ||\n node === rootNode ||\n currentNode === rootNode ||\n currentNode === globalObject.document?.body ||\n currentNode === globalObject.document?.documentElement ||\n !isInstanceOf(currentNode, globalObject.Element)\n ) {\n return container ? container : null;\n }\n\n const newContainerId = currentNode.getAttribute('data-rendered-container-id');\n if (newContainerId) {\n const nextNode = globalObject.document?.querySelector(`[data-render-container-id~=\"${newContainerId}\"]`);\n\n if (!nextNode) {\n throw Error(`Origin node for render container was not found`);\n }\n\n return findRenderContainer(nextNode, rootNode, nextNode);\n }\n\n return findRenderContainer(currentNode, rootNode, container);\n}\n\nexport function listen(elements: Element[] | (() => Element[]), callback: (event: Event) => void) {\n const handler = {\n elements,\n callback,\n };\n handlers.push(handler);\n\n return {\n remove() {\n const index = handlers.indexOf(handler);\n if (index > -1) {\n handlers.splice(index, 1);\n }\n },\n };\n}\n"]}
@@ -1,8 +1,9 @@
1
- import { canUseDOM, isIE11 } from "../client";
1
+ import { globalObject } from '@skbkontur/global-object';
2
+ import { isIE11 } from "../client";
2
3
 
3
4
  var needsPolyfillPlaceholderInternal = function needsPolyfillPlaceholderInternal() {
4
- if (canUseDOM) {
5
- var supportsPlaceholder = ('placeholder' in document.createElement('input'));
5
+ if (globalObject.document) {
6
+ var supportsPlaceholder = ('placeholder' in globalObject.document.createElement('input'));
6
7
 
7
8
  if (!supportsPlaceholder || isIE11) {
8
9
  return true;
@@ -1 +1 @@
1
- {"version":3,"sources":["needsPolyfillPlaceholder.ts"],"names":["canUseDOM","isIE11","needsPolyfillPlaceholderInternal","supportsPlaceholder","document","createElement","needsPolyfillPlaceholder"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,MAApB,QAAkC,UAAlC;;AAEA,IAAMC,gCAAgC,GAAG,SAAnCA,gCAAmC,GAAM;AAC7C,MAAIF,SAAJ,EAAe;AACb,QAAMG,mBAAmB,IAAG,iBAAiBC,QAAQ,CAACC,aAAT,CAAuB,OAAvB,CAApB,CAAzB;AACA,QAAI,CAACF,mBAAD,IAAwBF,MAA5B,EAAoC;AAClC,aAAO,IAAP;AACD;AACF;;AAED,SAAO,KAAP;AACD,CATD;;AAWA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMK,wBAAwB,GAAGJ,gCAAgC,EAAjE","sourcesContent":["import { canUseDOM, isIE11 } from './client';\n\nconst needsPolyfillPlaceholderInternal = () => {\n if (canUseDOM) {\n const supportsPlaceholder = 'placeholder' in document.createElement('input');\n if (!supportsPlaceholder || isIE11) {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Определяет поддерживает ли браузер аттрибут `placeholder` для тега `input`\n *\n * Равен true, если браузеру нужен полифил для placeholder. Иначе - false\n */\nexport const needsPolyfillPlaceholder = needsPolyfillPlaceholderInternal();\n"]}
1
+ {"version":3,"sources":["needsPolyfillPlaceholder.ts"],"names":["globalObject","isIE11","needsPolyfillPlaceholderInternal","document","supportsPlaceholder","createElement","needsPolyfillPlaceholder"],"mappings":"AAAA,SAASA,YAAT,QAA6B,0BAA7B;;AAEA,SAASC,MAAT,QAAuB,UAAvB;;AAEA,IAAMC,gCAAgC,GAAG,SAAnCA,gCAAmC,GAAM;AAC7C,MAAIF,YAAY,CAACG,QAAjB,EAA2B;AACzB,QAAMC,mBAAmB,IAAG,iBAAiBJ,YAAY,CAACG,QAAb,CAAsBE,aAAtB,CAAoC,OAApC,CAApB,CAAzB;AACA,QAAI,CAACD,mBAAD,IAAwBH,MAA5B,EAAoC;AAClC,aAAO,IAAP;AACD;AACF;;AAED,SAAO,KAAP;AACD,CATD;;AAWA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMK,wBAAwB,GAAGJ,gCAAgC,EAAjE","sourcesContent":["import { globalObject } from '@skbkontur/global-object';\n\nimport { isIE11 } from './client';\n\nconst needsPolyfillPlaceholderInternal = () => {\n if (globalObject.document) {\n const supportsPlaceholder = 'placeholder' in globalObject.document.createElement('input');\n if (!supportsPlaceholder || isIE11) {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Определяет поддерживает ли браузер аттрибут `placeholder` для тега `input`\n *\n * Равен true, если браузеру нужен полифил для placeholder. Иначе - false\n */\nexport const needsPolyfillPlaceholder = needsPolyfillPlaceholderInternal();\n"]}
@@ -1,4 +1,4 @@
1
- import { globalThat } from "../../SSRSafe";
1
+ import { globalObject } from '@skbkontur/global-object';
2
2
  export function fetch(uri, options) {
3
3
  if (options === void 0) {
4
4
  options = {};
@@ -7,32 +7,40 @@ export function fetch(uri, options) {
7
7
  var method = options.method || 'GET';
8
8
  var xhr = createXHR();
9
9
  var promise = new Promise(function (resolve, reject) {
10
- xhr.onerror = reject;
11
- xhr.ontimeout = reject;
10
+ if (xhr) {
11
+ xhr.onerror = reject;
12
+ xhr.ontimeout = reject;
12
13
 
13
- xhr.onload = function () {
14
- resolve({
15
- ok: xhr.status >= 200 && xhr.status < 300,
16
- status: xhr.status,
17
- statusText: xhr.statusText,
18
- text: function text() {
19
- return Promise.resolve(xhr.responseText);
20
- },
21
- json: function json() {
22
- return Promise.resolve(JSON.parse(xhr.responseText));
23
- }
24
- });
25
- };
14
+ xhr.onload = function () {
15
+ resolve({
16
+ ok: xhr.status >= 200 && xhr.status < 300,
17
+ status: xhr.status,
18
+ statusText: xhr.statusText,
19
+ text: function text() {
20
+ return Promise.resolve(xhr.responseText);
21
+ },
22
+ json: function json() {
23
+ return Promise.resolve(JSON.parse(xhr.responseText));
24
+ }
25
+ });
26
+ };
27
+ }
26
28
  });
27
- xhr.open(method, uri);
28
- xhr.send(options.body);
29
+
30
+ if (xhr) {
31
+ xhr.open(method, uri);
32
+ xhr.send(options.body);
33
+ }
34
+
29
35
  return promise;
30
36
  }
31
37
 
32
38
  function createXHR() {
33
- if ('XDomainRequest' in globalThat) {
34
- return new XDomainRequest();
39
+ if (globalObject.XDomainRequest) {
40
+ return new globalObject.XDomainRequest();
35
41
  }
36
42
 
37
- return new XMLHttpRequest();
43
+ if (globalObject.XMLHttpRequest) {
44
+ return new globalObject.XMLHttpRequest();
45
+ }
38
46
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["fetch.ts"],"names":["globalThat","fetch","uri","options","method","xhr","createXHR","promise","Promise","resolve","reject","onerror","ontimeout","onload","ok","status","statusText","text","responseText","json","JSON","parse","open","send","body","XDomainRequest","XMLHttpRequest"],"mappings":"AAAA,SAASA,UAAT,QAA2B,YAA3B;;;;;;;;;;;;AAYA,OAAO,SAASC,KAAT,CAAeC,GAAf,EAA4BC,OAA5B,EAA8F,KAAlEA,OAAkE,cAAlEA,OAAkE,GAAZ,EAAY;AACnG,MAAMC,MAAM,GAAGD,OAAO,CAACC,MAAR,IAAkB,KAAjC;AACA,MAAMC,GAAG,GAAGC,SAAS,EAArB;;AAEA,MAAMC,OAAO,GAAG,IAAIC,OAAJ,CAA6B,UAACC,OAAD,EAAUC,MAAV,EAAqB;AAChEL,IAAAA,GAAG,CAACM,OAAJ,GAAcD,MAAd;AACAL,IAAAA,GAAG,CAACO,SAAJ,GAAgBF,MAAhB;;AAEAL,IAAAA,GAAG,CAACQ,MAAJ,GAAa,YAAM;AACjBJ,MAAAA,OAAO,CAAC;AACNK,QAAAA,EAAE,EAAET,GAAG,CAACU,MAAJ,IAAc,GAAd,IAAqBV,GAAG,CAACU,MAAJ,GAAa,GADhC;AAENA,QAAAA,MAAM,EAAEV,GAAG,CAACU,MAFN;AAGNC,QAAAA,UAAU,EAAEX,GAAG,CAACW,UAHV;AAINC,QAAAA,IAAI,EAAE,wBAAMT,OAAO,CAACC,OAAR,CAAgBJ,GAAG,CAACa,YAApB,CAAN,EAJA;AAKNC,QAAAA,IAAI,EAAE,wBAAMX,OAAO,CAACC,OAAR,CAAgBW,IAAI,CAACC,KAAL,CAAWhB,GAAG,CAACa,YAAf,CAAhB,CAAN,EALA,EAAD,CAAP;;AAOD,KARD;AASD,GAbe,CAAhB;;AAeAb,EAAAA,GAAG,CAACiB,IAAJ,CAASlB,MAAT,EAAiBF,GAAjB;AACAG,EAAAA,GAAG,CAACkB,IAAJ,CAASpB,OAAO,CAACqB,IAAjB;;AAEA,SAAOjB,OAAP;AACD;;AAED,SAASD,SAAT,GAAqB;AACnB,MAAI,oBAAoBN,UAAxB,EAAoC;AAClC,WAAO,IAAIyB,cAAJ,EAAP;AACD;AACD,SAAO,IAAIC,cAAJ,EAAP;AACD","sourcesContent":["import { globalThat } from '../SSRSafe';\n\ninterface ApiResponseType {\n ok: boolean;\n status: number;\n statusText: string;\n text: () => Promise<string>;\n json: () => Promise<Record<string, any>>;\n}\n\ntype Result = Promise<ApiResponseType>;\n\nexport function fetch(uri: string, options: { method?: 'GET' | 'POST'; body?: string } = {}): Result {\n const method = options.method || 'GET';\n const xhr = createXHR();\n\n const promise = new Promise<ApiResponseType>((resolve, reject) => {\n xhr.onerror = reject;\n xhr.ontimeout = reject;\n\n xhr.onload = () => {\n resolve({\n ok: xhr.status >= 200 && xhr.status < 300,\n status: xhr.status,\n statusText: xhr.statusText,\n text: () => Promise.resolve(xhr.responseText),\n json: () => Promise.resolve(JSON.parse(xhr.responseText)),\n });\n };\n });\n\n xhr.open(method, uri);\n xhr.send(options.body);\n\n return promise;\n}\n\nfunction createXHR() {\n if ('XDomainRequest' in globalThat) {\n return new XDomainRequest();\n }\n return new XMLHttpRequest();\n}\n"]}
1
+ {"version":3,"sources":["fetch.ts"],"names":["globalObject","fetch","uri","options","method","xhr","createXHR","promise","Promise","resolve","reject","onerror","ontimeout","onload","ok","status","statusText","text","responseText","json","JSON","parse","open","send","body","XDomainRequest","XMLHttpRequest"],"mappings":"AAAA,SAASA,YAAT,QAA6B,0BAA7B;;;;;;;;;;;;AAYA,OAAO,SAASC,KAAT,CAAeC,GAAf,EAA4BC,OAA5B,EAA8F,KAAlEA,OAAkE,cAAlEA,OAAkE,GAAZ,EAAY;AACnG,MAAMC,MAAM,GAAGD,OAAO,CAACC,MAAR,IAAkB,KAAjC;AACA,MAAMC,GAAG,GAAGC,SAAS,EAArB;;AAEA,MAAMC,OAAO,GAAG,IAAIC,OAAJ,CAA6B,UAACC,OAAD,EAAUC,MAAV,EAAqB;AAChE,QAAIL,GAAJ,EAAS;AACPA,MAAAA,GAAG,CAACM,OAAJ,GAAcD,MAAd;AACAL,MAAAA,GAAG,CAACO,SAAJ,GAAgBF,MAAhB;;AAEAL,MAAAA,GAAG,CAACQ,MAAJ,GAAa,YAAM;AACjBJ,QAAAA,OAAO,CAAC;AACNK,UAAAA,EAAE,EAAET,GAAG,CAACU,MAAJ,IAAc,GAAd,IAAqBV,GAAG,CAACU,MAAJ,GAAa,GADhC;AAENA,UAAAA,MAAM,EAAEV,GAAG,CAACU,MAFN;AAGNC,UAAAA,UAAU,EAAEX,GAAG,CAACW,UAHV;AAINC,UAAAA,IAAI,EAAE,wBAAMT,OAAO,CAACC,OAAR,CAAgBJ,GAAG,CAACa,YAApB,CAAN,EAJA;AAKNC,UAAAA,IAAI,EAAE,wBAAMX,OAAO,CAACC,OAAR,CAAgBW,IAAI,CAACC,KAAL,CAAWhB,GAAG,CAACa,YAAf,CAAhB,CAAN,EALA,EAAD,CAAP;;AAOD,OARD;AASD;AACF,GAfe,CAAhB;;AAiBA,MAAIb,GAAJ,EAAS;AACPA,IAAAA,GAAG,CAACiB,IAAJ,CAASlB,MAAT,EAAiBF,GAAjB;AACAG,IAAAA,GAAG,CAACkB,IAAJ,CAASpB,OAAO,CAACqB,IAAjB;AACD;;AAED,SAAOjB,OAAP;AACD;;AAED,SAASD,SAAT,GAAqB;AACnB,MAAIN,YAAY,CAACyB,cAAjB,EAAiC;AAC/B,WAAO,IAAIzB,YAAY,CAACyB,cAAjB,EAAP;AACD;AACD,MAAIzB,YAAY,CAAC0B,cAAjB,EAAiC;AAC/B,WAAO,IAAI1B,YAAY,CAAC0B,cAAjB,EAAP;AACD;AACF","sourcesContent":["import { globalObject } from '@skbkontur/global-object';\n\ninterface ApiResponseType {\n ok: boolean;\n status: number;\n statusText: string;\n text: () => Promise<string>;\n json: () => Promise<Record<string, any>>;\n}\n\ntype Result = Promise<ApiResponseType>;\n\nexport function fetch(uri: string, options: { method?: 'GET' | 'POST'; body?: string } = {}): Result {\n const method = options.method || 'GET';\n const xhr = createXHR();\n\n const promise = new Promise<ApiResponseType>((resolve, reject) => {\n if (xhr) {\n xhr.onerror = reject;\n xhr.ontimeout = reject;\n\n xhr.onload = () => {\n resolve({\n ok: xhr.status >= 200 && xhr.status < 300,\n status: xhr.status,\n statusText: xhr.statusText,\n text: () => Promise.resolve(xhr.responseText),\n json: () => Promise.resolve(JSON.parse(xhr.responseText)),\n });\n };\n }\n });\n\n if (xhr) {\n xhr.open(method, uri);\n xhr.send(options.body);\n }\n\n return promise;\n}\n\nfunction createXHR() {\n if (globalObject.XDomainRequest) {\n return new globalObject.XDomainRequest();\n }\n if (globalObject.XMLHttpRequest) {\n return new globalObject.XMLHttpRequest();\n }\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  /* eslint-disable react/no-find-dom-node */
2
2
  import { findDOMNode } from 'react-dom';
3
3
  import warning from 'warning';
4
- import { isElement, isNode } from "../../SSRSafe";
5
- import { canUseDOM } from "../../client";
4
+ import { globalObject } from '@skbkontur/global-object';
5
+ import { isInstanceOf } from "../../../lib/isInstanceOf";
6
6
  import { isInstanceWithRootNode } from "../rootNodeDecorator";
7
7
  /**
8
8
  * Extracts component's root Element (HTMLElement/SVGElement) out of it's instance
@@ -22,13 +22,13 @@ export var getRootNode = function getRootNode(instance) {
22
22
  * 3. class Component instance (object)
23
23
  * 4. literally anything, returned from useImperativeHandle
24
24
  */
25
- if (!canUseDOM || !instance) {
25
+ if (!globalObject.document || !instance) {
26
26
  // instance can be `null` if component was unmounted
27
27
  // also checking undefined for convenient usage
28
28
  return null;
29
29
  }
30
30
 
31
- if (isElement(instance)) {
31
+ if (isInstanceOf(instance, globalObject.Element)) {
32
32
  // instance can be an Element already if its coming
33
33
  // from Refs of intrinsic elements (<div />, <button />, etc.)
34
34
  return instance;
@@ -41,7 +41,7 @@ export var getRootNode = function getRootNode(instance) {
41
41
  // the "getRootNode" method, but we can ignore it here
42
42
  // because we'd already checked the instance on being an Element
43
43
  // which is a subclass of Node, so, just fixing types here
44
- if (!isNode(instance)) {
44
+ if (!isInstanceOf(instance, globalObject.Node)) {
45
45
  rootNode = instance.getRootNode();
46
46
  }
47
47
  }
@@ -67,5 +67,5 @@ export var getRootNode = function getRootNode(instance) {
67
67
  } // the findDOMNode can also return Text, but we are only interested in Elements, so just filter it
68
68
 
69
69
 
70
- return isElement(rootNode) ? rootNode : null;
70
+ return isInstanceOf(rootNode, globalObject.Element) ? rootNode : null;
71
71
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["getRootNode.ts"],"names":["findDOMNode","warning","isElement","isNode","canUseDOM","isInstanceWithRootNode","getRootNode","instance","rootNode","undefined","e","message"],"mappings":"AAAA;AACA,SAASA,WAAT,QAA4B,WAA5B;;AAEA,OAAOC,OAAP,MAAoB,SAApB;;;AAGA,SAASC,SAAT,EAAoBC,MAApB,QAAkC,YAAlC;AACA,SAASC,SAAT,QAA0B,WAA1B;;AAEA,SAASC,sBAAT,QAAuC,qBAAvC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,QAAD,EAAgE;AACzF;AACF;AACA;AACA;AACA;AACA;AACA;;AAEE,MAAI,CAACH,SAAD,IAAc,CAACG,QAAnB,EAA6B;AAC3B;AACA;AACA,WAAO,IAAP;AACD;;AAED,MAAIL,SAAS,CAACK,QAAD,CAAb,EAAyB;AACvB;AACA;AACA,WAAOA,QAAP;AACD;;AAED,MAAIC,QAAJ;;AAEA,MAAIH,sBAAsB,CAACE,QAAD,CAA1B,EAAsC;AACpC;AACA;AACA;AACA;AACA,QAAI,CAACJ,MAAM,CAACI,QAAD,CAAX,EAAuB;AACrBC,MAAAA,QAAQ,GAAGD,QAAQ,CAACD,WAAT,EAAX;AACD;AACF;;AAED,MAAIE,QAAQ,KAAKC,SAAjB,EAA4B;AAC1B;AACA;AACA,WAAOD,QAAP;AACD;;AAED,MAAI;AACF;AACA;AACA;AACA;AACAA,IAAAA,QAAQ,GAAGR,WAAW,CAACO,QAAD,CAAtB;AACD,GAND,CAME,OAAOG,CAAP,EAAU;AACV;AACA;AACA;AACAT,IAAAA,OAAO;AACL,SADK;AAEL;AACE,QADF;AAEE,mGAFF;AAGE,UAHF;AAIES,IAAAA,CAAC,CAACC,OANC,CAAP;;AAQA,WAAO,IAAP;AACD;;AAED;AACA,SAAOT,SAAS,CAACM,QAAD,CAAT,GAAsBA,QAAtB,GAAiC,IAAxC;AACD,CA9DM","sourcesContent":["/* eslint-disable react/no-find-dom-node */\nimport { findDOMNode } from 'react-dom';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { isElement, isNode } from '../SSRSafe';\nimport { canUseDOM } from '../client';\n\nimport { isInstanceWithRootNode } from './rootNodeDecorator';\n\n/**\n * Extracts component's root Element (HTMLElement/SVGElement) out of it's instance\n * following the \"StrictMode support convention\" (@see README.md#strictmode, #2518).\n *\n * Replaces findDOMNode but falls back to it if \"convention\" is not respected.\n *\n * @param instance Component's instance provided by React.Ref or `this` inside class-components.\n * @returns Component's root `Element` or null\n */\n\nexport const getRootNode = (instance: Nullable<React.ReactInstance>): Nullable<Element> => {\n /**\n * Options of what instance can be:\n * 1. null or undefined\n * 2. DOM Element\n * 3. class Component instance (object)\n * 4. literally anything, returned from useImperativeHandle\n */\n\n if (!canUseDOM || !instance) {\n // instance can be `null` if component was unmounted\n // also checking undefined for convenient usage\n return null;\n }\n\n if (isElement(instance)) {\n // instance can be an Element already if its coming\n // from Refs of intrinsic elements (<div />, <button />, etc.)\n return instance;\n }\n\n let rootNode;\n\n if (isInstanceWithRootNode(instance)) {\n // it happened to be that native Node interface also has\n // the \"getRootNode\" method, but we can ignore it here\n // because we'd already checked the instance on being an Element\n // which is a subclass of Node, so, just fixing types here\n if (!isNode(instance)) {\n rootNode = instance.getRootNode();\n }\n }\n\n if (rootNode !== undefined) {\n // the getter exists and has returned something, it should be what we are looking for\n // probably its an Element or null (which is also OK, e.g. Popup/Tooltip/Hint before opening)\n return rootNode;\n }\n\n try {\n // rootNode is undefined, which means that the getter doesn't exists or returns the undefined\n // anyway, it tell us that the convention is not respected,\n // so, we have to fall back to the deprecated findDOMNode, which breaks StrictMode\n // instance can still be a class component or an imperative handle (i.e., anything, except null/undefined/Element)\n rootNode = findDOMNode(instance);\n } catch (e) {\n // but findDOMNode doesn`t accept everything that instance can be at this point,\n // so we have to handle exceptions\n // see https://github.com/facebook/react/blob/cae63505/packages/react-dom/src/__tests__/findDOMNode-test.js#L66-L86\n warning(\n false,\n '[getRootNode]: can`t fallback to findDOMNode.' +\n '\\n' +\n 'See https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/README.md#strictmode' +\n '\\n\\n' +\n e.message,\n );\n return null;\n }\n\n // the findDOMNode can also return Text, but we are only interested in Elements, so just filter it\n return isElement(rootNode) ? rootNode : null;\n};\n"]}
1
+ {"version":3,"sources":["getRootNode.ts"],"names":["findDOMNode","warning","globalObject","isInstanceOf","isInstanceWithRootNode","getRootNode","instance","document","Element","rootNode","Node","undefined","e","message"],"mappings":"AAAA;AACA,SAASA,WAAT,QAA4B,WAA5B;;AAEA,OAAOC,OAAP,MAAoB,SAApB;AACA,SAASC,YAAT,QAA6B,0BAA7B;;AAEA,SAASC,YAAT,QAA6B,wBAA7B;;;AAGA,SAASC,sBAAT,QAAuC,qBAAvC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,QAAD,EAAgE;AACzF;AACF;AACA;AACA;AACA;AACA;AACA;;AAEE,MAAI,CAACJ,YAAY,CAACK,QAAd,IAA0B,CAACD,QAA/B,EAAyC;AACvC;AACA;AACA,WAAO,IAAP;AACD;;AAED,MAAIH,YAAY,CAACG,QAAD,EAAWJ,YAAY,CAACM,OAAxB,CAAhB,EAAkD;AAChD;AACA;AACA,WAAOF,QAAP;AACD;;AAED,MAAIG,QAAJ;;AAEA,MAAIL,sBAAsB,CAACE,QAAD,CAA1B,EAAsC;AACpC;AACA;AACA;AACA;AACA,QAAI,CAACH,YAAY,CAACG,QAAD,EAAWJ,YAAY,CAACQ,IAAxB,CAAjB,EAAgD;AAC9CD,MAAAA,QAAQ,GAAGH,QAAQ,CAACD,WAAT,EAAX;AACD;AACF;;AAED,MAAII,QAAQ,KAAKE,SAAjB,EAA4B;AAC1B;AACA;AACA,WAAOF,QAAP;AACD;;AAED,MAAI;AACF;AACA;AACA;AACA;AACAA,IAAAA,QAAQ,GAAGT,WAAW,CAACM,QAAD,CAAtB;AACD,GAND,CAME,OAAOM,CAAP,EAAU;AACV;AACA;AACA;AACAX,IAAAA,OAAO;AACL,SADK;AAEL;AACE,QADF;AAEE,mGAFF;AAGE,UAHF;AAIEW,IAAAA,CAAC,CAACC,OANC,CAAP;;AAQA,WAAO,IAAP;AACD;;AAED;AACA,SAAOV,YAAY,CAACM,QAAD,EAAWP,YAAY,CAACM,OAAxB,CAAZ,GAA+CC,QAA/C,GAA0D,IAAjE;AACD,CA9DM","sourcesContent":["/* eslint-disable react/no-find-dom-node */\nimport { findDOMNode } from 'react-dom';\nimport React from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { Nullable } from '../../typings/utility-types';\n\nimport { isInstanceWithRootNode } from './rootNodeDecorator';\n\n/**\n * Extracts component's root Element (HTMLElement/SVGElement) out of it's instance\n * following the \"StrictMode support convention\" (@see README.md#strictmode, #2518).\n *\n * Replaces findDOMNode but falls back to it if \"convention\" is not respected.\n *\n * @param instance Component's instance provided by React.Ref or `this` inside class-components.\n * @returns Component's root `Element` or null\n */\n\nexport const getRootNode = (instance: Nullable<React.ReactInstance>): Nullable<Element> => {\n /**\n * Options of what instance can be:\n * 1. null or undefined\n * 2. DOM Element\n * 3. class Component instance (object)\n * 4. literally anything, returned from useImperativeHandle\n */\n\n if (!globalObject.document || !instance) {\n // instance can be `null` if component was unmounted\n // also checking undefined for convenient usage\n return null;\n }\n\n if (isInstanceOf(instance, globalObject.Element)) {\n // instance can be an Element already if its coming\n // from Refs of intrinsic elements (<div />, <button />, etc.)\n return instance;\n }\n\n let rootNode;\n\n if (isInstanceWithRootNode(instance)) {\n // it happened to be that native Node interface also has\n // the \"getRootNode\" method, but we can ignore it here\n // because we'd already checked the instance on being an Element\n // which is a subclass of Node, so, just fixing types here\n if (!isInstanceOf(instance, globalObject.Node)) {\n rootNode = instance.getRootNode();\n }\n }\n\n if (rootNode !== undefined) {\n // the getter exists and has returned something, it should be what we are looking for\n // probably its an Element or null (which is also OK, e.g. Popup/Tooltip/Hint before opening)\n return rootNode;\n }\n\n try {\n // rootNode is undefined, which means that the getter doesn't exists or returns the undefined\n // anyway, it tell us that the convention is not respected,\n // so, we have to fall back to the deprecated findDOMNode, which breaks StrictMode\n // instance can still be a class component or an imperative handle (i.e., anything, except null/undefined/Element)\n rootNode = findDOMNode(instance);\n } catch (e) {\n // but findDOMNode doesn`t accept everything that instance can be at this point,\n // so we have to handle exceptions\n // see https://github.com/facebook/react/blob/cae63505/packages/react-dom/src/__tests__/findDOMNode-test.js#L66-L86\n warning(\n false,\n '[getRootNode]: can`t fallback to findDOMNode.' +\n '\\n' +\n 'See https://github.com/skbkontur/retail-ui/blob/master/packages/react-ui/README.md#strictmode' +\n '\\n\\n' +\n e.message,\n );\n return null;\n }\n\n // the findDOMNode can also return Text, but we are only interested in Elements, so just filter it\n return isInstanceOf(rootNode, globalObject.Element) ? rootNode : null;\n};\n"]}
@@ -2,10 +2,8 @@ import warning from 'warning';
2
2
  import { clamp, extractColorParts, hue2rgb, parseHSLParts, parseRGBParts } from "../ColorHelpers";
3
3
  import { ColorKeywords } from "../ColorKeywords";
4
4
  import { ColorObject } from "../ColorObject";
5
- var RGB_REGEX = /rgb\(\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*\)/;
6
- var RGBA_REGEX = /rgba\(\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*\)/;
7
- var HSL_REGEX = /hsl\(\s*(\d{1,3})\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*\)/;
8
- var HSLA_REGEX = /hsla\(\s*(\d{1,3})\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*,\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*\)/;
5
+ var RGB_REGEX = /(?:rgba|rgb)\(\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,?\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*,?\s*(\d{1,3}(?:(?:\.\d+)?%)?)\s*(?:\)|(?:,|\/)?\s*(0|0\.\d+|1|1\.0+|\d{1,3}(?:(?:\.\d+)?%))\s*\))/;
6
+ var HSL_REGEX = /(?:hsla|hsl)\(\s*(\d{1,3}(?:deg)?\b)\s*,?\s*(\d{1,3}\.?\d*%|[0-1](?:\.\d*)?\b)\s*,?\s*(\d{1,3}\.?\d*%|[0-1](?:\.\d*)?\b)\s*(?:\)|(?:,|\/)?\s*(\d{1,3}\.?\d*%|\d+(?:\.\d*)?)\s*\))/;
9
7
  var HEX_REGEX = /^#([0-9a-f]{3}|[0-9a-f]{6})$/;
10
8
  export var ColorFactory = /*#__PURE__*/function () {
11
9
  function ColorFactory() {}
@@ -28,10 +26,14 @@ export var ColorFactory = /*#__PURE__*/function () {
28
26
 
29
27
  if (lowercasedTrimmedInput === 'transparent') {
30
28
  return new ColorObject([0, 0, 0], 0, 'transparent');
31
- } else if (this.isKeyword(lowercasedTrimmedInput)) {
29
+ }
30
+
31
+ if (this.isKeyword(lowercasedTrimmedInput)) {
32
32
  return this.fromKeyword(lowercasedTrimmedInput);
33
- } else if (lowercasedTrimmedInput.startsWith('rgb')) {
34
- var parts = extractColorParts(lowercasedTrimmedInput, RGB_REGEX, RGBA_REGEX);
33
+ }
34
+
35
+ if (lowercasedTrimmedInput.startsWith('rgb')) {
36
+ var parts = extractColorParts(lowercasedTrimmedInput, RGB_REGEX);
35
37
 
36
38
  var _parseRGBParts = parseRGBParts(parts),
37
39
  r = _parseRGBParts.r,
@@ -44,8 +46,10 @@ export var ColorFactory = /*#__PURE__*/function () {
44
46
  b = clamp(b, 255);
45
47
  a = clamp(a, 1);
46
48
  return this.fromRGB(r, g, b, a);
47
- } else if (lowercasedTrimmedInput.startsWith('hsl')) {
48
- var _parts = extractColorParts(lowercasedTrimmedInput, HSL_REGEX, HSLA_REGEX);
49
+ }
50
+
51
+ if (lowercasedTrimmedInput.startsWith('hsl')) {
52
+ var _parts = extractColorParts(lowercasedTrimmedInput, HSL_REGEX);
49
53
 
50
54
  var _parseHSLParts = parseHSLParts(_parts),
51
55
  h = _parseHSLParts.h,
@@ -1 +1 @@
1
- {"version":3,"sources":["ColorFactory.ts"],"names":["warning","clamp","extractColorParts","hue2rgb","parseHSLParts","parseRGBParts","ColorKeywords","ColorObject","RGB_REGEX","RGBA_REGEX","HSL_REGEX","HSLA_REGEX","HEX_REGEX","ColorFactory","create","input","cache","Object","freeze","instantiate","lowercasedTrimmedInput","toLowerCase","trim","isKeyword","fromKeyword","startsWith","parts","r","g","b","a","fromRGB","h","s","l","fromHSL","fromHex","prototype","hasOwnProperty","call","keyword","hexString","type","test","Error","colorCode","substring","rgb","length","match","forEach","c","i","parseInt","split","gray","Math","round","hDeg","t1","t2"],"mappings":"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","sourcesContent":["import warning from 'warning';\n\nimport { clamp, extractColorParts, hue2rgb, parseHSLParts, parseRGBParts } from './ColorHelpers';\nimport { ColorKeywords } from './ColorKeywords';\nimport { ColorKeywordsType, ColorObject, ColorType, RGBTuple } from './ColorObject';\n\ninterface ColorFactoryCacheType {\n [key: string]: ColorObject;\n}\n\nconst RGB_REGEX =\n /rgb\\(\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*\\)/;\nconst RGBA_REGEX =\n /rgba\\(\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*\\)/;\nconst HSL_REGEX =\n /hsl\\(\\s*(\\d{1,3})\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*\\)/;\nconst HSLA_REGEX =\n /hsla\\(\\s*(\\d{1,3})\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*,\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*\\)/;\nconst HEX_REGEX = /^#([0-9a-f]{3}|[0-9a-f]{6})$/;\n\nexport class ColorFactory {\n public static create(input: string) {\n if (!this.cache[input]) {\n this.cache[input] = Object.freeze(this.instantiate(input));\n }\n\n return this.cache[input];\n }\n\n private static cache: ColorFactoryCacheType = Object.create(null);\n\n private static instantiate(input: string) {\n if (typeof input !== 'string') {\n warning(false, `Invalid type of input (${typeof input}), expected a string. Returning transparent color`);\n return new ColorObject([0, 0, 0], 1.0, 'transparent');\n }\n const lowercasedTrimmedInput = input.toLowerCase().trim();\n\n if (lowercasedTrimmedInput === 'transparent') {\n return new ColorObject([0, 0, 0], 0, 'transparent');\n } else if (this.isKeyword(lowercasedTrimmedInput)) {\n return this.fromKeyword(lowercasedTrimmedInput);\n } else if (lowercasedTrimmedInput.startsWith('rgb')) {\n const parts = extractColorParts(lowercasedTrimmedInput, RGB_REGEX, RGBA_REGEX);\n let { r, g, b, a } = parseRGBParts(parts);\n\n r = clamp(r, 255);\n g = clamp(g, 255);\n b = clamp(b, 255);\n a = clamp(a, 1);\n\n return this.fromRGB(r, g, b, a);\n } else if (lowercasedTrimmedInput.startsWith('hsl')) {\n const parts = extractColorParts(lowercasedTrimmedInput, HSL_REGEX, HSLA_REGEX);\n let { h, s, l, a } = parseHSLParts(parts);\n\n h = clamp(h, 360);\n s = clamp(s, 1);\n l = clamp(l, 1);\n a = clamp(a, 1);\n\n return this.fromHSL(h, s, l, a);\n }\n\n return this.fromHex(lowercasedTrimmedInput);\n }\n\n private static isKeyword(input: string): input is ColorKeywordsType {\n return Object.prototype.hasOwnProperty.call(ColorKeywords, input);\n }\n\n private static fromKeyword(keyword: ColorKeywordsType) {\n return this.fromHex(ColorKeywords[keyword], keyword);\n }\n\n private static fromHex(hexString: string, type: ColorType = 'hex') {\n if (!HEX_REGEX.test(hexString)) {\n throw new Error(`${hexString} is not a valid hex color string`);\n }\n\n const colorCode = hexString.substring(1);\n const rgb: RGBTuple = [0, 0, 0];\n if (colorCode.length === 6) {\n colorCode.match(/.{2}/g)?.forEach((c, i) => {\n rgb[i] = parseInt(c, 16);\n });\n } else if (colorCode.length === 3) {\n colorCode.split('').forEach((c, i) => {\n rgb[i] = parseInt(c + c, 16);\n });\n }\n return new ColorObject(rgb, 1.0, type);\n }\n\n private static fromRGB(r: number, g: number, b: number, a = 1.0) {\n return new ColorObject([r, g, b], a, a < 1 ? 'rgba' : 'rgb');\n }\n\n private static fromHSL(h: number, s: number, l: number, a = 1.0) {\n if (s === 0) {\n const gray = Math.round(l * 255);\n return new ColorObject([gray, gray, gray], a, a < 1 ? 'hsla' : 'hsl');\n }\n\n const hDeg = h / 360;\n const t1 = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const t2 = l * 2 - t1;\n\n const r = hue2rgb(hDeg + 1 / 3, t1, t2);\n const g = hue2rgb(hDeg, t1, t2);\n const b = hue2rgb(hDeg - 1 / 3, t1, t2);\n\n const rgb: RGBTuple = [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];\n return new ColorObject(rgb, a, a < 1 ? 'hsla' : 'hsl');\n }\n}\n"]}
1
+ {"version":3,"sources":["ColorFactory.ts"],"names":["warning","clamp","extractColorParts","hue2rgb","parseHSLParts","parseRGBParts","ColorKeywords","ColorObject","RGB_REGEX","HSL_REGEX","HEX_REGEX","ColorFactory","create","input","cache","Object","freeze","instantiate","lowercasedTrimmedInput","toLowerCase","trim","isKeyword","fromKeyword","startsWith","parts","r","g","b","a","fromRGB","h","s","l","fromHSL","fromHex","prototype","hasOwnProperty","call","keyword","hexString","type","test","Error","colorCode","substring","rgb","length","match","forEach","c","i","parseInt","split","gray","Math","round","hDeg","t1","t2"],"mappings":"AAAA,OAAOA,OAAP,MAAoB,SAApB;;AAEA,SAASC,KAAT,EAAgBC,iBAAhB,EAAmCC,OAAnC,EAA4CC,aAA5C,EAA2DC,aAA3D,QAAgF,gBAAhF;AACA,SAASC,aAAT,QAA8B,iBAA9B;AACA,SAA4BC,WAA5B,QAAoE,eAApE;;;;;;AAMA,IAAMC,SAAS;AACb,kLADF;AAEA,IAAMC,SAAS;AACb,mLADF;AAEA,IAAMC,SAAS,GAAG,8BAAlB;;AAEA,WAAaC,YAAb;AACgBC,EAAAA,MADhB,GACE,gBAAqBC,KAArB,EAAoC;AAClC,QAAI,CAAC,KAAKC,KAAL,CAAWD,KAAX,CAAL,EAAwB;AACtB,WAAKC,KAAL,CAAWD,KAAX,IAAoBE,MAAM,CAACC,MAAP,CAAc,KAAKC,WAAL,CAAiBJ,KAAjB,CAAd,CAApB;AACD;;AAED,WAAO,KAAKC,KAAL,CAAWD,KAAX,CAAP;AACD,GAPH;;;;AAWiBI,EAAAA,WAXjB,GAWE,qBAA2BJ,KAA3B,EAA0C;AACxC,QAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;AAC7Bb,MAAAA,OAAO,CAAC,KAAD,8BAAkC,OAAOa,KAAzC,uDAAP;AACA,aAAO,IAAIN,WAAJ,CAAgB,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAhB,EAA2B,GAA3B,EAAgC,aAAhC,CAAP;AACD;AACD,QAAMW,sBAAsB,GAAGL,KAAK,CAACM,WAAN,GAAoBC,IAApB,EAA/B;;AAEA,QAAIF,sBAAsB,KAAK,aAA/B,EAA8C;AAC5C,aAAO,IAAIX,WAAJ,CAAgB,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAhB,EAA2B,CAA3B,EAA8B,aAA9B,CAAP;AACD;;AAED,QAAI,KAAKc,SAAL,CAAeH,sBAAf,CAAJ,EAA4C;AAC1C,aAAO,KAAKI,WAAL,CAAiBJ,sBAAjB,CAAP;AACD;;AAED,QAAIA,sBAAsB,CAACK,UAAvB,CAAkC,KAAlC,CAAJ,EAA8C;AAC5C,UAAMC,KAAK,GAAGtB,iBAAiB,CAACgB,sBAAD,EAAyBV,SAAzB,CAA/B;AACA,2BAAqBH,aAAa,CAACmB,KAAD,CAAlC,CAAMC,CAAN,kBAAMA,CAAN,CAASC,CAAT,kBAASA,CAAT,CAAYC,CAAZ,kBAAYA,CAAZ,CAAeC,CAAf,kBAAeA,CAAf;;AAEAH,MAAAA,CAAC,GAAGxB,KAAK,CAACwB,CAAD,EAAI,GAAJ,CAAT;AACAC,MAAAA,CAAC,GAAGzB,KAAK,CAACyB,CAAD,EAAI,GAAJ,CAAT;AACAC,MAAAA,CAAC,GAAG1B,KAAK,CAAC0B,CAAD,EAAI,GAAJ,CAAT;AACAC,MAAAA,CAAC,GAAG3B,KAAK,CAAC2B,CAAD,EAAI,CAAJ,CAAT;;AAEA,aAAO,KAAKC,OAAL,CAAaJ,CAAb,EAAgBC,CAAhB,EAAmBC,CAAnB,EAAsBC,CAAtB,CAAP;AACD;;AAED,QAAIV,sBAAsB,CAACK,UAAvB,CAAkC,KAAlC,CAAJ,EAA8C;AAC5C,UAAMC,MAAK,GAAGtB,iBAAiB,CAACgB,sBAAD,EAAyBT,SAAzB,CAA/B;AACA,2BAAqBL,aAAa,CAACoB,MAAD,CAAlC,CAAMM,CAAN,kBAAMA,CAAN,CAASC,CAAT,kBAASA,CAAT,CAAYC,CAAZ,kBAAYA,CAAZ,CAAeJ,EAAf,kBAAeA,CAAf;;AAEAE,MAAAA,CAAC,GAAG7B,KAAK,CAAC6B,CAAD,EAAI,GAAJ,CAAT;AACAC,MAAAA,CAAC,GAAG9B,KAAK,CAAC8B,CAAD,EAAI,CAAJ,CAAT;AACAC,MAAAA,CAAC,GAAG/B,KAAK,CAAC+B,CAAD,EAAI,CAAJ,CAAT;AACAJ,MAAAA,EAAC,GAAG3B,KAAK,CAAC2B,EAAD,EAAI,CAAJ,CAAT;;AAEA,aAAO,KAAKK,OAAL,CAAaH,CAAb,EAAgBC,CAAhB,EAAmBC,CAAnB,EAAsBJ,EAAtB,CAAP;AACD;;AAED,WAAO,KAAKM,OAAL,CAAahB,sBAAb,CAAP;AACD,GAnDH;;AAqDiBG,EAAAA,SArDjB,GAqDE,mBAAyBR,KAAzB,EAAoE;AAClE,WAAOE,MAAM,CAACoB,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqC/B,aAArC,EAAoDO,KAApD,CAAP;AACD,GAvDH;;AAyDiBS,EAAAA,WAzDjB,GAyDE,qBAA2BgB,OAA3B,EAAuD;AACrD,WAAO,KAAKJ,OAAL,CAAa5B,aAAa,CAACgC,OAAD,CAA1B,EAAqCA,OAArC,CAAP;AACD,GA3DH;;AA6DiBJ,EAAAA,OA7DjB,GA6DE,iBAAuBK,SAAvB,EAA0CC,IAA1C,EAAmE,KAAzBA,IAAyB,cAAzBA,IAAyB,GAAP,KAAO;AACjE,QAAI,CAAC9B,SAAS,CAAC+B,IAAV,CAAeF,SAAf,CAAL,EAAgC;AAC9B,YAAM,IAAIG,KAAJ,CAAaH,SAAb,sCAAN;AACD;;AAED,QAAMI,SAAS,GAAGJ,SAAS,CAACK,SAAV,CAAoB,CAApB,CAAlB;AACA,QAAMC,GAAa,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAAtB;AACA,QAAIF,SAAS,CAACG,MAAV,KAAqB,CAAzB,EAA4B;AAC1B,0BAAAH,SAAS,CAACI,KAAV,CAAgB,OAAhB,uCAA0BC,OAA1B,CAAkC,UAACC,CAAD,EAAIC,CAAJ,EAAU;AAC1CL,QAAAA,GAAG,CAACK,CAAD,CAAH,GAASC,QAAQ,CAACF,CAAD,EAAI,EAAJ,CAAjB;AACD,OAFD;AAGD,KAJD,MAIO,IAAIN,SAAS,CAACG,MAAV,KAAqB,CAAzB,EAA4B;AACjCH,MAAAA,SAAS,CAACS,KAAV,CAAgB,EAAhB,EAAoBJ,OAApB,CAA4B,UAACC,CAAD,EAAIC,CAAJ,EAAU;AACpCL,QAAAA,GAAG,CAACK,CAAD,CAAH,GAASC,QAAQ,CAACF,CAAC,GAAGA,CAAL,EAAQ,EAAR,CAAjB;AACD,OAFD;AAGD;AACD,WAAO,IAAI1C,WAAJ,CAAgBsC,GAAhB,EAAqB,GAArB,EAA0BL,IAA1B,CAAP;AACD,GA9EH;;AAgFiBX,EAAAA,OAhFjB,GAgFE,iBAAuBJ,CAAvB,EAAkCC,CAAlC,EAA6CC,CAA7C,EAAwDC,CAAxD,EAAiE,KAATA,CAAS,cAATA,CAAS,GAAL,GAAK;AAC/D,WAAO,IAAIrB,WAAJ,CAAgB,CAACkB,CAAD,EAAIC,CAAJ,EAAOC,CAAP,CAAhB,EAA2BC,CAA3B,EAA8BA,CAAC,GAAG,CAAJ,GAAQ,MAAR,GAAiB,KAA/C,CAAP;AACD,GAlFH;;AAoFiBK,EAAAA,OApFjB,GAoFE,iBAAuBH,CAAvB,EAAkCC,CAAlC,EAA6CC,CAA7C,EAAwDJ,CAAxD,EAAiE,KAATA,CAAS,cAATA,CAAS,GAAL,GAAK;AAC/D,QAAIG,CAAC,KAAK,CAAV,EAAa;AACX,UAAMsB,IAAI,GAAGC,IAAI,CAACC,KAAL,CAAWvB,CAAC,GAAG,GAAf,CAAb;AACA,aAAO,IAAIzB,WAAJ,CAAgB,CAAC8C,IAAD,EAAOA,IAAP,EAAaA,IAAb,CAAhB,EAAoCzB,CAApC,EAAuCA,CAAC,GAAG,CAAJ,GAAQ,MAAR,GAAiB,KAAxD,CAAP;AACD;;AAED,QAAM4B,IAAI,GAAG1B,CAAC,GAAG,GAAjB;AACA,QAAM2B,EAAE,GAAGzB,CAAC,GAAG,GAAJ,GAAUA,CAAC,IAAI,IAAID,CAAR,CAAX,GAAwBC,CAAC,GAAGD,CAAJ,GAAQC,CAAC,GAAGD,CAA/C;AACA,QAAM2B,EAAE,GAAG1B,CAAC,GAAG,CAAJ,GAAQyB,EAAnB;;AAEA,QAAMhC,CAAC,GAAGtB,OAAO,CAACqD,IAAI,GAAG,IAAI,CAAZ,EAAeC,EAAf,EAAmBC,EAAnB,CAAjB;AACA,QAAMhC,CAAC,GAAGvB,OAAO,CAACqD,IAAD,EAAOC,EAAP,EAAWC,EAAX,CAAjB;AACA,QAAM/B,CAAC,GAAGxB,OAAO,CAACqD,IAAI,GAAG,IAAI,CAAZ,EAAeC,EAAf,EAAmBC,EAAnB,CAAjB;;AAEA,QAAMb,GAAa,GAAG,CAACS,IAAI,CAACC,KAAL,CAAW9B,CAAC,GAAG,GAAf,CAAD,EAAsB6B,IAAI,CAACC,KAAL,CAAW7B,CAAC,GAAG,GAAf,CAAtB,EAA2C4B,IAAI,CAACC,KAAL,CAAW5B,CAAC,GAAG,GAAf,CAA3C,CAAtB;AACA,WAAO,IAAIpB,WAAJ,CAAgBsC,GAAhB,EAAqBjB,CAArB,EAAwBA,CAAC,GAAG,CAAJ,GAAQ,MAAR,GAAiB,KAAzC,CAAP;AACD,GApGH,yBAAajB,Y,CASIG,K,GAA+BC,MAAM,CAACH,MAAP,CAAc,IAAd,C","sourcesContent":["import warning from 'warning';\n\nimport { clamp, extractColorParts, hue2rgb, parseHSLParts, parseRGBParts } from './ColorHelpers';\nimport { ColorKeywords } from './ColorKeywords';\nimport { ColorKeywordsType, ColorObject, ColorType, RGBTuple } from './ColorObject';\n\ninterface ColorFactoryCacheType {\n [key: string]: ColorObject;\n}\n\nconst RGB_REGEX =\n /(?:rgba|rgb)\\(\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,?\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*,?\\s*(\\d{1,3}(?:(?:\\.\\d+)?%)?)\\s*(?:\\)|(?:,|\\/)?\\s*(0|0\\.\\d+|1|1\\.0+|\\d{1,3}(?:(?:\\.\\d+)?%))\\s*\\))/;\nconst HSL_REGEX =\n /(?:hsla|hsl)\\(\\s*(\\d{1,3}(?:deg)?\\b)\\s*,?\\s*(\\d{1,3}\\.?\\d*%|[0-1](?:\\.\\d*)?\\b)\\s*,?\\s*(\\d{1,3}\\.?\\d*%|[0-1](?:\\.\\d*)?\\b)\\s*(?:\\)|(?:,|\\/)?\\s*(\\d{1,3}\\.?\\d*%|\\d+(?:\\.\\d*)?)\\s*\\))/;\nconst HEX_REGEX = /^#([0-9a-f]{3}|[0-9a-f]{6})$/;\n\nexport class ColorFactory {\n public static create(input: string) {\n if (!this.cache[input]) {\n this.cache[input] = Object.freeze(this.instantiate(input));\n }\n\n return this.cache[input];\n }\n\n private static cache: ColorFactoryCacheType = Object.create(null);\n\n private static instantiate(input: string) {\n if (typeof input !== 'string') {\n warning(false, `Invalid type of input (${typeof input}), expected a string. Returning transparent color`);\n return new ColorObject([0, 0, 0], 1.0, 'transparent');\n }\n const lowercasedTrimmedInput = input.toLowerCase().trim();\n\n if (lowercasedTrimmedInput === 'transparent') {\n return new ColorObject([0, 0, 0], 0, 'transparent');\n }\n\n if (this.isKeyword(lowercasedTrimmedInput)) {\n return this.fromKeyword(lowercasedTrimmedInput);\n }\n\n if (lowercasedTrimmedInput.startsWith('rgb')) {\n const parts = extractColorParts(lowercasedTrimmedInput, RGB_REGEX);\n let { r, g, b, a } = parseRGBParts(parts);\n\n r = clamp(r, 255);\n g = clamp(g, 255);\n b = clamp(b, 255);\n a = clamp(a, 1);\n\n return this.fromRGB(r, g, b, a);\n }\n\n if (lowercasedTrimmedInput.startsWith('hsl')) {\n const parts = extractColorParts(lowercasedTrimmedInput, HSL_REGEX);\n let { h, s, l, a } = parseHSLParts(parts);\n\n h = clamp(h, 360);\n s = clamp(s, 1);\n l = clamp(l, 1);\n a = clamp(a, 1);\n\n return this.fromHSL(h, s, l, a);\n }\n\n return this.fromHex(lowercasedTrimmedInput);\n }\n\n private static isKeyword(input: string): input is ColorKeywordsType {\n return Object.prototype.hasOwnProperty.call(ColorKeywords, input);\n }\n\n private static fromKeyword(keyword: ColorKeywordsType) {\n return this.fromHex(ColorKeywords[keyword], keyword);\n }\n\n private static fromHex(hexString: string, type: ColorType = 'hex') {\n if (!HEX_REGEX.test(hexString)) {\n throw new Error(`${hexString} is not a valid hex color string`);\n }\n\n const colorCode = hexString.substring(1);\n const rgb: RGBTuple = [0, 0, 0];\n if (colorCode.length === 6) {\n colorCode.match(/.{2}/g)?.forEach((c, i) => {\n rgb[i] = parseInt(c, 16);\n });\n } else if (colorCode.length === 3) {\n colorCode.split('').forEach((c, i) => {\n rgb[i] = parseInt(c + c, 16);\n });\n }\n return new ColorObject(rgb, 1.0, type);\n }\n\n private static fromRGB(r: number, g: number, b: number, a = 1.0) {\n return new ColorObject([r, g, b], a, a < 1 ? 'rgba' : 'rgb');\n }\n\n private static fromHSL(h: number, s: number, l: number, a = 1.0) {\n if (s === 0) {\n const gray = Math.round(l * 255);\n return new ColorObject([gray, gray, gray], a, a < 1 ? 'hsla' : 'hsl');\n }\n\n const hDeg = h / 360;\n const t1 = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const t2 = l * 2 - t1;\n\n const r = hue2rgb(hDeg + 1 / 3, t1, t2);\n const g = hue2rgb(hDeg, t1, t2);\n const b = hue2rgb(hDeg - 1 / 3, t1, t2);\n\n const rgb: RGBTuple = [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];\n return new ColorObject(rgb, a, a < 1 ? 'hsla' : 'hsl');\n }\n}\n"]}
@@ -19,15 +19,11 @@ export function roundToPrecision(n, precision) {
19
19
 
20
20
  return parseFloat(n.toFixed(precision));
21
21
  }
22
- export function extractColorParts(input, solidRegex, alphaRegex) {
23
- var parts = solidRegex.exec(input);
24
-
25
- if (!parts && alphaRegex) {
26
- parts = alphaRegex.exec(input);
27
- }
22
+ export function extractColorParts(input, regex) {
23
+ var parts = regex.exec(input);
28
24
 
29
25
  if (!parts) {
30
- throw new Error(input + " does not match color patterns: [\n " + solidRegex + "\n " + alphaRegex + "\n ]");
26
+ throw new Error(input + " does not match color patterns: [\n " + regex + "\n ]");
31
27
  }
32
28
 
33
29
  return parts;
@@ -1 +1 @@
1
- {"version":3,"sources":["ColorHelpers.ts"],"names":["startsWithOneOf","clamp","val","max","Math","min","integerFromPercent","n","size","round","parseFloat","floatFromPercent","toFixed","roundToPrecision","precision","extractColorParts","input","solidRegex","alphaRegex","parts","exec","Error","parseRGBParts","r","parseToInteger","g","b","a","parseToFloat","isNaN","parseHSLParts","h","parseInt","s","l","part","endsWith","calculateHue","hue","hue2rgb","t1","t2","calculatedHue","isColor","colorStarters"],"mappings":"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","sourcesContent":["import { startsWithOneOf } from '../utils';\n\nexport function clamp(val: number, max = 1) {\n return Math.min(max, Math.max(0, val));\n}\n\nexport function integerFromPercent(n: string, size: number) {\n return Math.round((parseFloat(n) * size) / 100);\n}\n\nexport function floatFromPercent(n: string) {\n return parseFloat((parseFloat(n) / 100).toFixed(5));\n}\n\nexport function roundToPrecision(n: number, precision = 2) {\n return parseFloat(n.toFixed(precision));\n}\n\nexport function extractColorParts(input: string, solidRegex: RegExp, alphaRegex?: RegExp) {\n let parts = solidRegex.exec(input);\n if (!parts && alphaRegex) {\n parts = alphaRegex.exec(input);\n }\n\n if (!parts) {\n throw new Error(`${input} does not match color patterns: [\n ${solidRegex}\n ${alphaRegex}\n ]`);\n }\n\n return parts;\n}\n\nexport function parseRGBParts(parts: string[]) {\n const r = parseToInteger(parts[1], 255);\n const g = parseToInteger(parts[2], 255);\n const b = parseToInteger(parts[3], 255);\n const a = parts[4] ? parseToFloat(parts[4]) : 1.0;\n\n if (isNaN(r)) {\n throw new Error(`Could not parse red=${parts[1]} to number`);\n }\n if (isNaN(g)) {\n throw new Error(`Could not parse green=${parts[2]} to number`);\n }\n if (isNaN(b)) {\n throw new Error(`Could not parse blue=${parts[3]} to number`);\n }\n if (isNaN(a)) {\n throw new Error(`Could not parse alpha=${parts[4]} to number`);\n }\n return { r, g, b, a };\n}\n\nexport function parseHSLParts(parts: string[]) {\n const h = parseInt(parts[1], 10);\n const s = parseToFloat(parts[2]);\n const l = parseToFloat(parts[3]);\n const a = parts[4] ? parseToFloat(parts[4]) : 1.0;\n\n if (isNaN(h)) {\n throw new Error(`Could not parse hue=${parts[1]} to number`);\n } else if (isNaN(s)) {\n throw new Error(`Could not parse saturation=${parts[2]} to number`);\n } else if (isNaN(l)) {\n throw new Error(`Could not parse lightness=${parts[3]} to number`);\n } else if (isNaN(a)) {\n throw new Error(`Could not parse alpha=${parts[4]} to number`);\n }\n\n return { h, s, l, a };\n}\n\nexport function parseToInteger(part: string, size: number) {\n return part.endsWith('%') ? integerFromPercent(part, size) : parseInt(part, 10);\n}\n\nexport function parseToFloat(part: string) {\n return part.endsWith('%') ? floatFromPercent(part) : parseFloat(part);\n}\n\nconst calculateHue = (hue: number) => {\n if (hue < 0) {\n return hue + 1;\n }\n\n if (hue > 1) {\n return hue - 1;\n }\n\n return hue;\n};\n\nexport function hue2rgb(hue: number, t1: number, t2: number) {\n const calculatedHue = calculateHue(hue);\n\n if (calculatedHue < 1 / 6) {\n return t2 + (t1 - t2) * 6 * calculatedHue;\n }\n\n if (calculatedHue < 1 / 2) {\n return t1;\n }\n\n if (calculatedHue < 2 / 3) {\n return t2 + (t1 - t2) * (2 / 3 - calculatedHue) * 6;\n }\n\n return t2;\n}\n\nexport const isColor = (input: string) => {\n const colorStarters = ['#', 'rgb', 'hsl'];\n\n if (input) {\n return startsWithOneOf(colorStarters, input);\n }\n\n return false;\n};\n"]}
1
+ {"version":3,"sources":["ColorHelpers.ts"],"names":["startsWithOneOf","clamp","val","max","Math","min","integerFromPercent","n","size","round","parseFloat","floatFromPercent","toFixed","roundToPrecision","precision","extractColorParts","input","regex","parts","exec","Error","parseRGBParts","r","parseToInteger","g","b","a","parseToFloat","isNaN","parseHSLParts","h","parseInt","s","l","part","endsWith","calculateHue","hue","hue2rgb","t1","t2","calculatedHue","isColor","colorStarters"],"mappings":"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","sourcesContent":["import { startsWithOneOf } from '../utils';\n\nexport function clamp(val: number, max = 1) {\n return Math.min(max, Math.max(0, val));\n}\n\nexport function integerFromPercent(n: string, size: number) {\n return Math.round((parseFloat(n) * size) / 100);\n}\n\nexport function floatFromPercent(n: string) {\n return parseFloat((parseFloat(n) / 100).toFixed(5));\n}\n\nexport function roundToPrecision(n: number, precision = 2) {\n return parseFloat(n.toFixed(precision));\n}\n\nexport function extractColorParts(input: string, regex: RegExp) {\n const parts = regex.exec(input);\n\n if (!parts) {\n throw new Error(`${input} does not match color patterns: [\n ${regex}\n ]`);\n }\n\n return parts;\n}\n\nexport function parseRGBParts(parts: string[]) {\n const r = parseToInteger(parts[1], 255);\n const g = parseToInteger(parts[2], 255);\n const b = parseToInteger(parts[3], 255);\n const a = parts[4] ? parseToFloat(parts[4]) : 1.0;\n\n if (isNaN(r)) {\n throw new Error(`Could not parse red=${parts[1]} to number`);\n }\n if (isNaN(g)) {\n throw new Error(`Could not parse green=${parts[2]} to number`);\n }\n if (isNaN(b)) {\n throw new Error(`Could not parse blue=${parts[3]} to number`);\n }\n if (isNaN(a)) {\n throw new Error(`Could not parse alpha=${parts[4]} to number`);\n }\n return { r, g, b, a };\n}\n\nexport function parseHSLParts(parts: string[]) {\n const h = parseInt(parts[1], 10);\n const s = parseToFloat(parts[2]);\n const l = parseToFloat(parts[3]);\n const a = parts[4] ? parseToFloat(parts[4]) : 1.0;\n\n if (isNaN(h)) {\n throw new Error(`Could not parse hue=${parts[1]} to number`);\n } else if (isNaN(s)) {\n throw new Error(`Could not parse saturation=${parts[2]} to number`);\n } else if (isNaN(l)) {\n throw new Error(`Could not parse lightness=${parts[3]} to number`);\n } else if (isNaN(a)) {\n throw new Error(`Could not parse alpha=${parts[4]} to number`);\n }\n\n return { h, s, l, a };\n}\n\nexport function parseToInteger(part: string, size: number) {\n return part.endsWith('%') ? integerFromPercent(part, size) : parseInt(part, 10);\n}\n\nexport function parseToFloat(part: string) {\n return part.endsWith('%') ? floatFromPercent(part) : parseFloat(part);\n}\n\nconst calculateHue = (hue: number) => {\n if (hue < 0) {\n return hue + 1;\n }\n\n if (hue > 1) {\n return hue - 1;\n }\n\n return hue;\n};\n\nexport function hue2rgb(hue: number, t1: number, t2: number) {\n const calculatedHue = calculateHue(hue);\n\n if (calculatedHue < 1 / 6) {\n return t2 + (t1 - t2) * 6 * calculatedHue;\n }\n\n if (calculatedHue < 1 / 2) {\n return t1;\n }\n\n if (calculatedHue < 2 / 3) {\n return t2 + (t1 - t2) * (2 / 3 - calculatedHue) * 6;\n }\n\n return t2;\n}\n\nexport const isColor = (input: string) => {\n const colorStarters = ['#', 'rgb', 'hsl'];\n\n if (input) {\n return startsWithOneOf(colorStarters, input);\n }\n\n return false;\n};\n"]}
@@ -2,7 +2,7 @@ export declare function clamp(val: number, max?: number): number;
2
2
  export declare function integerFromPercent(n: string, size: number): number;
3
3
  export declare function floatFromPercent(n: string): number;
4
4
  export declare function roundToPrecision(n: number, precision?: number): number;
5
- export declare function extractColorParts(input: string, solidRegex: RegExp, alphaRegex?: RegExp): RegExpExecArray;
5
+ export declare function extractColorParts(input: string, regex: RegExp): RegExpExecArray;
6
6
  export declare function parseRGBParts(parts: string[]): {
7
7
  r: number;
8
8
  g: number;
@@ -1,11 +1,12 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import { globalObject } from '@skbkontur/global-object';
2
3
  export var TaskWithDelayAndMinimalDuration = function TaskWithDelayAndMinimalDuration(initialValues) {
3
4
  var _this = this;
4
5
 
5
6
  this.isTaskActive = false;
6
7
 
7
8
  this.setTimeoutBeforeTaskStart = function () {
8
- _this.timeoutBeforeTaskStart = setTimeout(function () {
9
+ _this.timeoutBeforeTaskStart = globalObject.setTimeout(function () {
9
10
  _this.isTaskActive && _this.taskParams.taskStartCallback();
10
11
 
11
12
  _this.clearTimeoutBeforeTaskStart();
@@ -15,7 +16,7 @@ export var TaskWithDelayAndMinimalDuration = function TaskWithDelayAndMinimalDur
15
16
  };
16
17
 
17
18
  this.setTimeoutBeforeTaskStop = function () {
18
- _this.timeoutBeforeTaskStop = setTimeout(function () {
19
+ _this.timeoutBeforeTaskStop = globalObject.setTimeout(function () {
19
20
  !_this.isTaskActive && _this.taskParams.taskStopCallback();
20
21
 
21
22
  _this.clearTimeoutBeforeTaskStop();
@@ -23,12 +24,12 @@ export var TaskWithDelayAndMinimalDuration = function TaskWithDelayAndMinimalDur
23
24
  };
24
25
 
25
26
  this.clearTimeoutBeforeTaskStart = function () {
26
- _this.timeoutBeforeTaskStart && clearTimeout(_this.timeoutBeforeTaskStart);
27
+ _this.timeoutBeforeTaskStart && globalObject.clearTimeout(_this.timeoutBeforeTaskStart);
27
28
  _this.timeoutBeforeTaskStart = null;
28
29
  };
29
30
 
30
31
  this.clearTimeoutBeforeTaskStop = function () {
31
- _this.timeoutBeforeTaskStop && clearTimeout(_this.timeoutBeforeTaskStop);
32
+ _this.timeoutBeforeTaskStop && globalObject.clearTimeout(_this.timeoutBeforeTaskStop);
32
33
  _this.timeoutBeforeTaskStop = null;
33
34
  };
34
35
 
@@ -1 +1 @@
1
- {"version":3,"sources":["taskWithDelayAndMinimalDuration.ts"],"names":["TaskWithDelayAndMinimalDuration","initialValues","isTaskActive","setTimeoutBeforeTaskStart","timeoutBeforeTaskStart","setTimeout","taskParams","taskStartCallback","clearTimeoutBeforeTaskStart","setTimeoutBeforeTaskStop","delayBeforeTaskStart","timeoutBeforeTaskStop","taskStopCallback","clearTimeoutBeforeTaskStop","durationOfTask","clearTimeout","start","update","updateData","stop","clearTask"],"mappings":";;;;;;;;;AASA,WAAaA,+BAAb;;;;;;AAME,yCAAYC,aAAZ,EAAiE,uBAFzDC,YAEyD,GAF1C,KAE0C;;;;AAIzDC,EAAAA,yBAJyD,GAI7B,YAAM;AACxC,IAAA,KAAI,CAACC,sBAAL,GAA8BC,UAAU,CAAC,YAAM;AAC7C,MAAA,KAAI,CAACH,YAAL,IAAqB,KAAI,CAACI,UAAL,CAAgBC,iBAAhB,EAArB;AACA,MAAA,KAAI,CAACC,2BAAL;AACA,MAAA,KAAI,CAACC,wBAAL;AACD,KAJuC,EAIrC,KAAI,CAACH,UAAL,CAAgBI,oBAJqB,CAAxC;AAKD,GAVgE;;AAYzDD,EAAAA,wBAZyD,GAY9B,YAAM;AACvC,IAAA,KAAI,CAACE,qBAAL,GAA6BN,UAAU,CAAC,YAAM;AAC5C,OAAC,KAAI,CAACH,YAAN,IAAsB,KAAI,CAACI,UAAL,CAAgBM,gBAAhB,EAAtB;AACA,MAAA,KAAI,CAACC,0BAAL;AACD,KAHsC,EAGpC,KAAI,CAACP,UAAL,CAAgBQ,cAHoB,CAAvC;AAID,GAjBgE;;AAmBzDN,EAAAA,2BAnByD,GAmB3B,YAAM;AAC1C,IAAA,KAAI,CAACJ,sBAAL,IAA+BW,YAAY,CAAC,KAAI,CAACX,sBAAN,CAA3C;AACA,IAAA,KAAI,CAACA,sBAAL,GAA8B,IAA9B;AACD,GAtBgE;;AAwBzDS,EAAAA,0BAxByD,GAwB5B,YAAM;AACzC,IAAA,KAAI,CAACF,qBAAL,IAA8BI,YAAY,CAAC,KAAI,CAACJ,qBAAN,CAA1C;AACA,IAAA,KAAI,CAACA,qBAAL,GAA6B,IAA7B;AACD,GA3BgE;;AA6B1DK,EAAAA,KA7B0D,GA6BlD,YAAM;AACnB,QAAI,KAAI,CAACd,YAAT,EAAuB;AACrB;AACD;;AAED,IAAA,KAAI,CAACA,YAAL,GAAoB,IAApB;;AAEA,QAAI,KAAI,CAACE,sBAAT,EAAiC;AAC/B,MAAA,KAAI,CAACI,2BAAL;AACD;;AAED,IAAA,KAAI,CAACL,yBAAL;AACD,GAzCgE;;AA2C1Dc,EAAAA,MA3C0D,GA2CjD,UAACC,UAAD,EAA+D;AAC7E,IAAA,KAAI,CAACZ,UAAL,gBAAuB,KAAI,CAACA,UAA5B,EAA2CY,UAA3C;AACD,GA7CgE;;AA+C1DC,EAAAA,IA/C0D,GA+CnD,YAAM;AAClB,QAAI,CAAC,KAAI,CAACjB,YAAV,EAAwB;AACtB;AACD;;AAED,IAAA,KAAI,CAACA,YAAL,GAAoB,KAApB;;AAEA,QAAI,CAAC,KAAI,CAACE,sBAAN,IAAgC,CAAC,KAAI,CAACO,qBAA1C,EAAiE;AAC/D,MAAA,KAAI,CAACL,UAAL,CAAgBM,gBAAhB;AACD;;AAED,QAAI,KAAI,CAACR,sBAAT,EAAiC;AAC/B,MAAA,KAAI,CAACI,2BAAL;AACD;AACF,GA7DgE;;AA+D1DY,EAAAA,SA/D0D,GA+D9C,YAAM;AACvB,IAAA,KAAI,CAACZ,2BAAL;AACA,IAAA,KAAI,CAACK,0BAAL;AACD,GAlEgE,CAC/D,KAAKP,UAAL,GAAkBL,aAAlB,CACD,CARH","sourcesContent":["import { Nullable } from '../typings/utility-types';\n\nexport interface TaskWithDelayAndMinimalDurationProps {\n delayBeforeTaskStart: number;\n durationOfTask: number;\n taskStartCallback: () => void;\n taskStopCallback: () => void;\n}\n\nexport class TaskWithDelayAndMinimalDuration {\n private timeoutBeforeTaskStart: Nullable<NodeJS.Timeout>;\n private timeoutBeforeTaskStop: Nullable<NodeJS.Timeout>;\n private taskParams: TaskWithDelayAndMinimalDurationProps;\n private isTaskActive = false;\n\n constructor(initialValues: TaskWithDelayAndMinimalDurationProps) {\n this.taskParams = initialValues;\n }\n\n private setTimeoutBeforeTaskStart = () => {\n this.timeoutBeforeTaskStart = setTimeout(() => {\n this.isTaskActive && this.taskParams.taskStartCallback();\n this.clearTimeoutBeforeTaskStart();\n this.setTimeoutBeforeTaskStop();\n }, this.taskParams.delayBeforeTaskStart);\n };\n\n private setTimeoutBeforeTaskStop = () => {\n this.timeoutBeforeTaskStop = setTimeout(() => {\n !this.isTaskActive && this.taskParams.taskStopCallback();\n this.clearTimeoutBeforeTaskStop();\n }, this.taskParams.durationOfTask);\n };\n\n private clearTimeoutBeforeTaskStart = () => {\n this.timeoutBeforeTaskStart && clearTimeout(this.timeoutBeforeTaskStart);\n this.timeoutBeforeTaskStart = null;\n };\n\n private clearTimeoutBeforeTaskStop = () => {\n this.timeoutBeforeTaskStop && clearTimeout(this.timeoutBeforeTaskStop);\n this.timeoutBeforeTaskStop = null;\n };\n\n public start = () => {\n if (this.isTaskActive) {\n return;\n }\n\n this.isTaskActive = true;\n\n if (this.timeoutBeforeTaskStart) {\n this.clearTimeoutBeforeTaskStart();\n }\n\n this.setTimeoutBeforeTaskStart();\n };\n\n public update = (updateData: Partial<TaskWithDelayAndMinimalDurationProps>) => {\n this.taskParams = { ...this.taskParams, ...updateData };\n };\n\n public stop = () => {\n if (!this.isTaskActive) {\n return;\n }\n\n this.isTaskActive = false;\n\n if (!this.timeoutBeforeTaskStart && !this.timeoutBeforeTaskStop) {\n this.taskParams.taskStopCallback();\n }\n\n if (this.timeoutBeforeTaskStart) {\n this.clearTimeoutBeforeTaskStart();\n }\n };\n\n public clearTask = () => {\n this.clearTimeoutBeforeTaskStart();\n this.clearTimeoutBeforeTaskStop();\n };\n}\n"]}
1
+ {"version":3,"sources":["taskWithDelayAndMinimalDuration.ts"],"names":["globalObject","TaskWithDelayAndMinimalDuration","initialValues","isTaskActive","setTimeoutBeforeTaskStart","timeoutBeforeTaskStart","setTimeout","taskParams","taskStartCallback","clearTimeoutBeforeTaskStart","setTimeoutBeforeTaskStop","delayBeforeTaskStart","timeoutBeforeTaskStop","taskStopCallback","clearTimeoutBeforeTaskStop","durationOfTask","clearTimeout","start","update","updateData","stop","clearTask"],"mappings":"0DAAA,SAASA,YAAT,QAAwC,0BAAxC;;;;;;;;;AASA,WAAaC,+BAAb;;;;;;AAME,yCAAYC,aAAZ,EAAiE,uBAFzDC,YAEyD,GAF1C,KAE0C;;;;AAIzDC,EAAAA,yBAJyD,GAI7B,YAAM;AACxC,IAAA,KAAI,CAACC,sBAAL,GAA8BL,YAAY,CAACM,UAAb,CAAwB,YAAM;AAC1D,MAAA,KAAI,CAACH,YAAL,IAAqB,KAAI,CAACI,UAAL,CAAgBC,iBAAhB,EAArB;AACA,MAAA,KAAI,CAACC,2BAAL;AACA,MAAA,KAAI,CAACC,wBAAL;AACD,KAJ6B,EAI3B,KAAI,CAACH,UAAL,CAAgBI,oBAJW,CAA9B;AAKD,GAVgE;;AAYzDD,EAAAA,wBAZyD,GAY9B,YAAM;AACvC,IAAA,KAAI,CAACE,qBAAL,GAA6BZ,YAAY,CAACM,UAAb,CAAwB,YAAM;AACzD,OAAC,KAAI,CAACH,YAAN,IAAsB,KAAI,CAACI,UAAL,CAAgBM,gBAAhB,EAAtB;AACA,MAAA,KAAI,CAACC,0BAAL;AACD,KAH4B,EAG1B,KAAI,CAACP,UAAL,CAAgBQ,cAHU,CAA7B;AAID,GAjBgE;;AAmBzDN,EAAAA,2BAnByD,GAmB3B,YAAM;AAC1C,IAAA,KAAI,CAACJ,sBAAL,IAA+BL,YAAY,CAACgB,YAAb,CAA0B,KAAI,CAACX,sBAA/B,CAA/B;AACA,IAAA,KAAI,CAACA,sBAAL,GAA8B,IAA9B;AACD,GAtBgE;;AAwBzDS,EAAAA,0BAxByD,GAwB5B,YAAM;AACzC,IAAA,KAAI,CAACF,qBAAL,IAA8BZ,YAAY,CAACgB,YAAb,CAA0B,KAAI,CAACJ,qBAA/B,CAA9B;AACA,IAAA,KAAI,CAACA,qBAAL,GAA6B,IAA7B;AACD,GA3BgE;;AA6B1DK,EAAAA,KA7B0D,GA6BlD,YAAM;AACnB,QAAI,KAAI,CAACd,YAAT,EAAuB;AACrB;AACD;;AAED,IAAA,KAAI,CAACA,YAAL,GAAoB,IAApB;;AAEA,QAAI,KAAI,CAACE,sBAAT,EAAiC;AAC/B,MAAA,KAAI,CAACI,2BAAL;AACD;;AAED,IAAA,KAAI,CAACL,yBAAL;AACD,GAzCgE;;AA2C1Dc,EAAAA,MA3C0D,GA2CjD,UAACC,UAAD,EAA+D;AAC7E,IAAA,KAAI,CAACZ,UAAL,gBAAuB,KAAI,CAACA,UAA5B,EAA2CY,UAA3C;AACD,GA7CgE;;AA+C1DC,EAAAA,IA/C0D,GA+CnD,YAAM;AAClB,QAAI,CAAC,KAAI,CAACjB,YAAV,EAAwB;AACtB;AACD;;AAED,IAAA,KAAI,CAACA,YAAL,GAAoB,KAApB;;AAEA,QAAI,CAAC,KAAI,CAACE,sBAAN,IAAgC,CAAC,KAAI,CAACO,qBAA1C,EAAiE;AAC/D,MAAA,KAAI,CAACL,UAAL,CAAgBM,gBAAhB;AACD;;AAED,QAAI,KAAI,CAACR,sBAAT,EAAiC;AAC/B,MAAA,KAAI,CAACI,2BAAL;AACD;AACF,GA7DgE;;AA+D1DY,EAAAA,SA/D0D,GA+D9C,YAAM;AACvB,IAAA,KAAI,CAACZ,2BAAL;AACA,IAAA,KAAI,CAACK,0BAAL;AACD,GAlEgE,CAC/D,KAAKP,UAAL,GAAkBL,aAAlB,CACD,CARH","sourcesContent":["import { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nexport interface TaskWithDelayAndMinimalDurationProps {\n delayBeforeTaskStart: number;\n durationOfTask: number;\n taskStartCallback: () => void;\n taskStopCallback: () => void;\n}\n\nexport class TaskWithDelayAndMinimalDuration {\n private timeoutBeforeTaskStart: SafeTimer;\n private timeoutBeforeTaskStop: SafeTimer;\n private taskParams: TaskWithDelayAndMinimalDurationProps;\n private isTaskActive = false;\n\n constructor(initialValues: TaskWithDelayAndMinimalDurationProps) {\n this.taskParams = initialValues;\n }\n\n private setTimeoutBeforeTaskStart = () => {\n this.timeoutBeforeTaskStart = globalObject.setTimeout(() => {\n this.isTaskActive && this.taskParams.taskStartCallback();\n this.clearTimeoutBeforeTaskStart();\n this.setTimeoutBeforeTaskStop();\n }, this.taskParams.delayBeforeTaskStart);\n };\n\n private setTimeoutBeforeTaskStop = () => {\n this.timeoutBeforeTaskStop = globalObject.setTimeout(() => {\n !this.isTaskActive && this.taskParams.taskStopCallback();\n this.clearTimeoutBeforeTaskStop();\n }, this.taskParams.durationOfTask);\n };\n\n private clearTimeoutBeforeTaskStart = () => {\n this.timeoutBeforeTaskStart && globalObject.clearTimeout(this.timeoutBeforeTaskStart);\n this.timeoutBeforeTaskStart = null;\n };\n\n private clearTimeoutBeforeTaskStop = () => {\n this.timeoutBeforeTaskStop && globalObject.clearTimeout(this.timeoutBeforeTaskStop);\n this.timeoutBeforeTaskStop = null;\n };\n\n public start = () => {\n if (this.isTaskActive) {\n return;\n }\n\n this.isTaskActive = true;\n\n if (this.timeoutBeforeTaskStart) {\n this.clearTimeoutBeforeTaskStart();\n }\n\n this.setTimeoutBeforeTaskStart();\n };\n\n public update = (updateData: Partial<TaskWithDelayAndMinimalDurationProps>) => {\n this.taskParams = { ...this.taskParams, ...updateData };\n };\n\n public stop = () => {\n if (!this.isTaskActive) {\n return;\n }\n\n this.isTaskActive = false;\n\n if (!this.timeoutBeforeTaskStart && !this.timeoutBeforeTaskStop) {\n this.taskParams.taskStopCallback();\n }\n\n if (this.timeoutBeforeTaskStart) {\n this.clearTimeoutBeforeTaskStart();\n }\n };\n\n public clearTask = () => {\n this.clearTimeoutBeforeTaskStart();\n this.clearTimeoutBeforeTaskStop();\n };\n}\n"]}
@@ -1,6 +1,10 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
+
3
+ var _globalObject$documen;
4
+
2
5
  import createEmotion from '@emotion/css/create-instance';
3
6
  import extraScopePlugin from 'stylis-plugin-extra-scope';
7
+ import { globalObject } from '@skbkontur/global-object';
4
8
  import { Upgrade } from "../../Upgrades";
5
9
  var REACT_UI_PREFIX = Upgrade.getSpecificityClassName();
6
10
  var scope = new Array(Upgrade.getSpecificityLevel()).fill("." + REACT_UI_PREFIX).join('');
@@ -8,7 +12,8 @@ var scope = new Array(Upgrade.getSpecificityLevel()).fill("." + REACT_UI_PREFIX)
8
12
  var _createEmotion = createEmotion({
9
13
  key: REACT_UI_PREFIX,
10
14
  prepend: true,
11
- stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined
15
+ stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined,
16
+ container: (_globalObject$documen = globalObject.document) == null ? void 0 : _globalObject$documen.head
12
17
  }),
13
18
  flush = _createEmotion.flush,
14
19
  hydrate = _createEmotion.hydrate,
@@ -1 +1 @@
1
- {"version":3,"sources":["Emotion.ts"],"names":["createEmotion","extraScopePlugin","Upgrade","REACT_UI_PREFIX","getSpecificityClassName","scope","Array","getSpecificityLevel","fill","join","key","prepend","stylisPlugins","undefined","flush","hydrate","cx","merge","getRegisteredStyles","injectGlobal","keyframes","css","sheet","cache","isZeroArgs","fn","length","memoize","isCalled","result","WeakMap","arg","has","set","get","memoizeStyle","styles","Object","keys","forEach","className","prefix","component","app","classes","reduce","acc"],"mappings":"0DAAA,OAAOA,aAAP,MAA0B,8BAA1B;AACA,OAAOC,gBAAP,MAA6B,2BAA7B;;AAEA,SAASC,OAAT,QAAwB,aAAxB;;;;;AAKA,IAAMC,eAAe,GAAGD,OAAO,CAACE,uBAAR,EAAxB;;AAEA,IAAMC,KAAK,GAAG,IAAIC,KAAJ,CAAUJ,OAAO,CAACK,mBAAR,EAAV,EAAyCC,IAAzC,OAAkDL,eAAlD,EAAqEM,IAArE,CAA0E,EAA1E,CAAd;;AAEO;AACLT,aAAa,CAAC;AACZU,EAAAA,GAAG,EAAEP,eADO;AAEZQ,EAAAA,OAAO,EAAE,IAFG;AAGZC,EAAAA,aAAa,EAAEP,KAAK,GAAG,CAACJ,gBAAgB,CAACI,KAAD,CAAjB,CAAH,GAA+BQ,SAHvC,EAAD,CADR,CAAQC,KAAR,kBAAQA,KAAR,CAAeC,OAAf,kBAAeA,OAAf,CAAwBC,EAAxB,kBAAwBA,EAAxB,CAA4BC,KAA5B,kBAA4BA,KAA5B,CAAmCC,mBAAnC,kBAAmCA,mBAAnC,CAAwDC,YAAxD,kBAAwDA,YAAxD,CAAsEC,SAAtE,kBAAsEA,SAAtE,CAAiFC,GAAjF,kBAAiFA,GAAjF,CAAsFC,KAAtF,kBAAsFA,KAAtF,CAA6FC,KAA7F,kBAA6FA,KAA7F,C;;;AAOP,SAASC,UAAT,CAAwDC,EAAxD,EAAsG;AACpG,SAAOA,EAAE,CAACC,MAAH,KAAc,CAArB;AACD;;AAED,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAyBF,EAAzB,EAA0F;AACxG,MAAID,UAAU,CAACC,EAAD,CAAd,EAAoB;AAClB,QAAIG,QAAQ,GAAG,KAAf;AACA,QAAIC,MAAJ;AACA,WAAO,YAAM;AACX,UAAI,CAACD,QAAL,EAAe;AACbA,QAAAA,QAAQ,GAAG,IAAX;AACAC,QAAAA,MAAM,GAAGJ,EAAE,EAAX;AACD;AACD,aAAOI,MAAP;AACD,KAND;AAOD;;AAED,MAAMN,KAAK,GAAG,IAAIO,OAAJ,EAAd;AACA,SAAO,UAACC,GAAD,EAAY;AACjB,QAAI,CAACR,KAAK,CAACS,GAAN,CAAUD,GAAV,CAAL,EAAqB;AACnBR,MAAAA,KAAK,CAACU,GAAN,CAAUF,GAAV,EAAeN,EAAE,CAACM,GAAD,CAAjB;AACD;;AAED,WAAOR,KAAK,CAACW,GAAN,CAAUH,GAAV,CAAP;AACD,GAND;AAOD,CArBD;;AAuBA,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe;AAC1BC,MAD0B;AAEpB;AACNC,EAAAA,MAAM,CAACC,IAAP,CAAYF,MAAZ,EAAoBG,OAApB,CAA4B,UAACC,SAAD,UAAgBJ,MAAM,CAACI,SAAD,CAAN,GAA+Bb,OAAO,CAACS,MAAM,CAACI,SAAD,CAAP,CAAtD,EAA5B;AACA,SAAOJ,MAAP;AACD,CALM;;AAOP,OAAO,IAAMK,MAAM;AACjB,SADWA,MACX,CAACC,SAAD,EAAoBC,GAApB,OAAoBA,GAApB,cAAoBA,GAApB,GAA0BxC,eAA1B;AACA,cAAmCyC,OAAnC;AACEP,QAAAA,MAAM,CAACC,IAAP,CAAYM,OAAZ,EAAqBC,MAArB,CAA4B,UAACC,GAAD,EAAMpC,GAAN,EAAc;AACxC,8BAAYoC,GAAZ,6BAAkBpC,GAAlB,IAA2BiC,GAA3B,SAAkCD,SAAlC,SAA+CE,OAAO,CAAClC,GAAD,CAAtD;AACD,SAFD,EAEG,EAFH,CADF,GADA,GADK","sourcesContent":["import createEmotion from '@emotion/css/create-instance';\nimport extraScopePlugin from 'stylis-plugin-extra-scope';\n\nimport { Upgrade } from '../Upgrades';\nimport { AnyObject, FunctionWithParams } from '../utils';\n\nimport { Theme } from './Theme';\n\nconst REACT_UI_PREFIX = Upgrade.getSpecificityClassName();\n\nconst scope = new Array(Upgrade.getSpecificityLevel()).fill(`.${REACT_UI_PREFIX}`).join('');\n\nexport const { flush, hydrate, cx, merge, getRegisteredStyles, injectGlobal, keyframes, css, sheet, cache } =\n createEmotion({\n key: REACT_UI_PREFIX,\n prepend: true,\n stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined,\n });\n\nfunction isZeroArgs<R, T extends FunctionWithParams<R>>(fn: T | FunctionWithParams<R>): fn is () => R {\n return fn.length === 0;\n}\n\nconst memoize = <A extends AnyObject, R>(fn: (() => R) | ((arg: A) => R)): (() => R) | ((arg: A) => R) => {\n if (isZeroArgs(fn)) {\n let isCalled = false;\n let result: R;\n return () => {\n if (!isCalled) {\n isCalled = true;\n result = fn();\n }\n return result;\n };\n }\n\n const cache = new WeakMap();\n return (arg: A) => {\n if (!cache.has(arg)) {\n cache.set(arg, fn(arg));\n }\n\n return cache.get(arg);\n };\n};\n\nexport const memoizeStyle = <S extends { [className: string]: (() => string) | ((t: Theme) => string) }>(\n styles: S,\n): S => {\n Object.keys(styles).forEach((className) => (styles[className as keyof S] = memoize(styles[className]) as S[keyof S]));\n return styles;\n};\n\nexport const prefix =\n (component: string, app = REACT_UI_PREFIX) =>\n <T extends Record<string, string>>(classes: T): T =>\n Object.keys(classes).reduce((acc, key) => {\n return { ...acc, [key]: `${app}-${component}-${classes[key]}` };\n }, {} as T);\n"]}
1
+ {"version":3,"sources":["Emotion.ts"],"names":["createEmotion","extraScopePlugin","globalObject","Upgrade","REACT_UI_PREFIX","getSpecificityClassName","scope","Array","getSpecificityLevel","fill","join","key","prepend","stylisPlugins","undefined","container","document","head","flush","hydrate","cx","merge","getRegisteredStyles","injectGlobal","keyframes","css","sheet","cache","isZeroArgs","fn","length","memoize","isCalled","result","WeakMap","arg","has","set","get","memoizeStyle","styles","Object","keys","forEach","className","prefix","component","app","classes","reduce","acc"],"mappings":"oFAAA,OAAOA,aAAP,MAA0B,8BAA1B;AACA,OAAOC,gBAAP,MAA6B,2BAA7B;AACA,SAASC,YAAT,QAA6B,0BAA7B;;AAEA,SAASC,OAAT,QAAwB,aAAxB;;;;;AAKA,IAAMC,eAAe,GAAGD,OAAO,CAACE,uBAAR,EAAxB;;AAEA,IAAMC,KAAK,GAAG,IAAIC,KAAJ,CAAUJ,OAAO,CAACK,mBAAR,EAAV,EAAyCC,IAAzC,OAAkDL,eAAlD,EAAqEM,IAArE,CAA0E,EAA1E,CAAd;;AAEO;AACLV,aAAa,CAAC;AACZW,EAAAA,GAAG,EAAEP,eADO;AAEZQ,EAAAA,OAAO,EAAE,IAFG;AAGZC,EAAAA,aAAa,EAAEP,KAAK,GAAG,CAACL,gBAAgB,CAACK,KAAD,CAAjB,CAAH,GAA+BQ,SAHvC;AAIZC,EAAAA,SAAS,2BAAEb,YAAY,CAACc,QAAf,qBAAE,sBAAuBC,IAJtB,EAAD,CADR,CAAQC,KAAR,kBAAQA,KAAR,CAAeC,OAAf,kBAAeA,OAAf,CAAwBC,EAAxB,kBAAwBA,EAAxB,CAA4BC,KAA5B,kBAA4BA,KAA5B,CAAmCC,mBAAnC,kBAAmCA,mBAAnC,CAAwDC,YAAxD,kBAAwDA,YAAxD,CAAsEC,SAAtE,kBAAsEA,SAAtE,CAAiFC,GAAjF,kBAAiFA,GAAjF,CAAsFC,KAAtF,kBAAsFA,KAAtF,CAA6FC,KAA7F,kBAA6FA,KAA7F,C;;;AAQP,SAASC,UAAT,CAAwDC,EAAxD,EAAsG;AACpG,SAAOA,EAAE,CAACC,MAAH,KAAc,CAArB;AACD;;AAED,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAAyBF,EAAzB,EAA0F;AACxG,MAAID,UAAU,CAACC,EAAD,CAAd,EAAoB;AAClB,QAAIG,QAAQ,GAAG,KAAf;AACA,QAAIC,MAAJ;AACA,WAAO,YAAM;AACX,UAAI,CAACD,QAAL,EAAe;AACbA,QAAAA,QAAQ,GAAG,IAAX;AACAC,QAAAA,MAAM,GAAGJ,EAAE,EAAX;AACD;AACD,aAAOI,MAAP;AACD,KAND;AAOD;;AAED,MAAMN,KAAK,GAAG,IAAIO,OAAJ,EAAd;AACA,SAAO,UAACC,GAAD,EAAY;AACjB,QAAI,CAACR,KAAK,CAACS,GAAN,CAAUD,GAAV,CAAL,EAAqB;AACnBR,MAAAA,KAAK,CAACU,GAAN,CAAUF,GAAV,EAAeN,EAAE,CAACM,GAAD,CAAjB;AACD;;AAED,WAAOR,KAAK,CAACW,GAAN,CAAUH,GAAV,CAAP;AACD,GAND;AAOD,CArBD;;AAuBA,OAAO,IAAMI,YAAY,GAAG,SAAfA,YAAe;AAC1BC,MAD0B;AAEpB;AACNC,EAAAA,MAAM,CAACC,IAAP,CAAYF,MAAZ,EAAoBG,OAApB,CAA4B,UAACC,SAAD,UAAgBJ,MAAM,CAACI,SAAD,CAAN,GAA+Bb,OAAO,CAACS,MAAM,CAACI,SAAD,CAAP,CAAtD,EAA5B;AACA,SAAOJ,MAAP;AACD,CALM;;AAOP,OAAO,IAAMK,MAAM;AACjB,SADWA,MACX,CAACC,SAAD,EAAoBC,GAApB,OAAoBA,GAApB,cAAoBA,GAApB,GAA0B3C,eAA1B;AACA,cAAmC4C,OAAnC;AACEP,QAAAA,MAAM,CAACC,IAAP,CAAYM,OAAZ,EAAqBC,MAArB,CAA4B,UAACC,GAAD,EAAMvC,GAAN,EAAc;AACxC,8BAAYuC,GAAZ,6BAAkBvC,GAAlB,IAA2BoC,GAA3B,SAAkCD,SAAlC,SAA+CE,OAAO,CAACrC,GAAD,CAAtD;AACD,SAFD,EAEG,EAFH,CADF,GADA,GADK","sourcesContent":["import createEmotion from '@emotion/css/create-instance';\nimport extraScopePlugin from 'stylis-plugin-extra-scope';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { Upgrade } from '../Upgrades';\nimport { AnyObject, FunctionWithParams } from '../utils';\n\nimport { Theme } from './Theme';\n\nconst REACT_UI_PREFIX = Upgrade.getSpecificityClassName();\n\nconst scope = new Array(Upgrade.getSpecificityLevel()).fill(`.${REACT_UI_PREFIX}`).join('');\n\nexport const { flush, hydrate, cx, merge, getRegisteredStyles, injectGlobal, keyframes, css, sheet, cache } =\n createEmotion({\n key: REACT_UI_PREFIX,\n prepend: true,\n stylisPlugins: scope ? [extraScopePlugin(scope)] : undefined,\n container: globalObject.document?.head,\n });\n\nfunction isZeroArgs<R, T extends FunctionWithParams<R>>(fn: T | FunctionWithParams<R>): fn is () => R {\n return fn.length === 0;\n}\n\nconst memoize = <A extends AnyObject, R>(fn: (() => R) | ((arg: A) => R)): (() => R) | ((arg: A) => R) => {\n if (isZeroArgs(fn)) {\n let isCalled = false;\n let result: R;\n return () => {\n if (!isCalled) {\n isCalled = true;\n result = fn();\n }\n return result;\n };\n }\n\n const cache = new WeakMap();\n return (arg: A) => {\n if (!cache.has(arg)) {\n cache.set(arg, fn(arg));\n }\n\n return cache.get(arg);\n };\n};\n\nexport const memoizeStyle = <S extends { [className: string]: (() => string) | ((t: Theme) => string) }>(\n styles: S,\n): S => {\n Object.keys(styles).forEach((className) => (styles[className as keyof S] = memoize(styles[className]) as S[keyof S]));\n return styles;\n};\n\nexport const prefix =\n (component: string, app = REACT_UI_PREFIX) =>\n <T extends Record<string, string>>(classes: T): T =>\n Object.keys(classes).reduce((acc, key) => {\n return { ...acc, [key]: `${app}-${component}-${classes[key]}` };\n }, {} as T);\n"]}