@skbkontur/react-ui 0.0.0-a8f1c3e7a1 → 0.0.0-aa4659ca48

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 (1206) hide show
  1. package/CHANGELOG.md +217 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +17 -26
  4. package/cjs/components/Autocomplete/Autocomplete.js +61 -56
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/ArrowLeftIcon.d.ts +1 -1
  7. package/cjs/components/Button/ArrowRightIcon.d.ts +1 -1
  8. package/cjs/components/Button/Button.d.ts +27 -14
  9. package/cjs/components/Button/Button.js +44 -20
  10. package/cjs/components/Button/Button.js.map +1 -1
  11. package/cjs/components/Button/Button.mixins.d.ts +0 -1
  12. package/cjs/components/Button/Button.mixins.js +2 -9
  13. package/cjs/components/Button/Button.mixins.js.map +1 -1
  14. package/cjs/components/Button/Button.styles.d.ts +3 -3
  15. package/cjs/components/Button/Button.styles.js +48 -58
  16. package/cjs/components/Button/Button.styles.js.map +1 -1
  17. package/cjs/components/Button/ButtonArrow.js +13 -14
  18. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  19. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  20. package/cjs/components/Calendar/Calendar.js +1 -0
  21. package/cjs/components/Calendar/Calendar.js.map +1 -1
  22. package/cjs/components/Center/Center.d.ts +2 -0
  23. package/cjs/components/Center/Center.js +1 -0
  24. package/cjs/components/Center/Center.js.map +1 -1
  25. package/cjs/components/Checkbox/Checkbox.d.ts +7 -16
  26. package/cjs/components/Checkbox/Checkbox.js +24 -54
  27. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  28. package/cjs/components/Checkbox/Checkbox.styles.d.ts +0 -3
  29. package/cjs/components/Checkbox/Checkbox.styles.js +16 -43
  30. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  31. package/cjs/components/Checkbox/CheckedIcon.d.ts +1 -1
  32. package/cjs/components/Checkbox/IndeterminateIcon.d.ts +1 -1
  33. package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
  34. package/cjs/components/ComboBox/ComboBox.js +26 -1
  35. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  36. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +15 -45
  37. package/cjs/components/CurrencyInput/CurrencyInput.js +17 -55
  38. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  39. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
  40. package/cjs/components/CurrencyInput/CursorHelper.js +5 -2
  41. package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
  42. package/cjs/components/CurrencyInput/constants.js +1 -2
  43. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  44. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  45. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  46. package/cjs/components/DateInput/CalendarIcon.d.ts +1 -1
  47. package/cjs/components/DateInput/DateInput.d.ts +5 -2
  48. package/cjs/components/DateInput/DateInput.js +7 -25
  49. package/cjs/components/DateInput/DateInput.js.map +1 -1
  50. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  51. package/cjs/components/DateInput/helpers/InternalDateMediator.js +1 -10
  52. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  53. package/cjs/components/DatePicker/DatePicker.d.ts +8 -35
  54. package/cjs/components/DatePicker/DatePicker.js +6 -60
  55. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  56. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +34 -28
  57. package/cjs/components/DateRangePicker/DateRangePicker.js +24 -1
  58. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  59. package/cjs/components/DateRangePicker/DateRangePickerInput.js +2 -2
  60. package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
  61. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  62. package/cjs/components/Dropdown/Dropdown.js +2 -82
  63. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  64. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  65. package/cjs/components/DropdownMenu/DropdownMenu.js +3 -1
  66. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  67. package/cjs/components/FileUploader/FileUploader.js +1 -0
  68. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  69. package/cjs/components/FileUploader/UploadIcon.d.ts +1 -1
  70. package/cjs/components/FxInput/FxInput.d.ts +25 -21
  71. package/cjs/components/FxInput/FxInput.js +129 -68
  72. package/cjs/components/FxInput/FxInput.js.map +1 -1
  73. package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
  74. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  75. package/cjs/components/FxInput/MathFunctionIcon.d.ts +1 -1
  76. package/cjs/components/FxInput/UndoIcon.d.ts +1 -1
  77. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  78. package/cjs/components/Gapped/Gapped.js +1 -25
  79. package/cjs/components/Gapped/Gapped.js.map +1 -1
  80. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  81. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  82. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  83. package/cjs/components/GlobalLoader/useParams.d.ts +2 -2
  84. package/cjs/components/Group/Group.d.ts +4 -4
  85. package/cjs/components/Group/Group.js +80 -41
  86. package/cjs/components/Group/Group.js.map +1 -1
  87. package/cjs/components/Group/Group.styles.d.ts +1 -1
  88. package/cjs/components/Group/Group.styles.js +7 -7
  89. package/cjs/components/Group/Group.styles.js.map +1 -1
  90. package/cjs/components/Hint/Hint.d.ts +2 -0
  91. package/cjs/components/Hint/Hint.js +1 -0
  92. package/cjs/components/Hint/Hint.js.map +1 -1
  93. package/cjs/components/Input/Input.d.ts +33 -66
  94. package/cjs/components/Input/Input.js +31 -181
  95. package/cjs/components/Input/Input.js.map +1 -1
  96. package/cjs/components/Input/Input.styles.d.ts +0 -7
  97. package/cjs/components/Input/Input.styles.js +14 -76
  98. package/cjs/components/Input/Input.styles.js.map +1 -1
  99. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -0
  100. package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
  101. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  102. package/cjs/components/Kebab/Kebab.d.ts +4 -2
  103. package/cjs/components/Kebab/Kebab.js +9 -29
  104. package/cjs/components/Kebab/Kebab.js.map +1 -1
  105. package/cjs/components/Kebab/KebabIcon.d.ts +1 -1
  106. package/cjs/components/Link/Link.d.ts +12 -10
  107. package/cjs/components/Link/Link.js +11 -2
  108. package/cjs/components/Link/Link.js.map +1 -1
  109. package/cjs/components/Loader/Loader.d.ts +7 -36
  110. package/cjs/components/Loader/Loader.js +9 -59
  111. package/cjs/components/Loader/Loader.js.map +1 -1
  112. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  113. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
  114. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  115. package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
  116. package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  117. package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
  118. package/cjs/components/MaskedInput/MaskedInput.js +44 -9
  119. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  120. package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -1
  121. package/cjs/components/MenuFooter/MenuFooter.js +0 -1
  122. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  123. package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -1
  124. package/cjs/components/MenuHeader/MenuHeader.js +0 -1
  125. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  126. package/cjs/components/MenuItem/MenuItem.d.ts +2 -17
  127. package/cjs/components/MenuItem/MenuItem.js +5 -34
  128. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  129. package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -2
  130. package/cjs/components/MenuItem/MenuItem.styles.js +12 -17
  131. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  132. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -1
  133. package/cjs/components/MiniModal/MiniModal.styles.js +4 -2
  134. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  135. package/cjs/components/MiniModal/MiniModalBody.js +10 -2
  136. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  137. package/cjs/components/Modal/Modal.d.ts +1 -1
  138. package/cjs/components/Modal/Modal.js +2 -18
  139. package/cjs/components/Modal/Modal.js.map +1 -1
  140. package/cjs/components/Modal/Modal.styles.d.ts +8 -21
  141. package/cjs/components/Modal/Modal.styles.js +82 -168
  142. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  143. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  144. package/cjs/components/Modal/ModalBody.js +2 -6
  145. package/cjs/components/Modal/ModalBody.js.map +1 -1
  146. package/cjs/components/Modal/ModalClose.js +1 -6
  147. package/cjs/components/Modal/ModalClose.js.map +1 -1
  148. package/cjs/components/Modal/ModalFooter.js +2 -5
  149. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  150. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  151. package/cjs/components/Modal/ModalHeader.js +9 -7
  152. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  153. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  154. package/cjs/components/Paging/DotsIcon.js +13 -0
  155. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  156. package/cjs/components/Paging/ForwardIcon.d.ts +4 -1
  157. package/cjs/components/Paging/ForwardIcon.js +13 -1
  158. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  159. package/cjs/components/Paging/NavigationHelper.js +5 -7
  160. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  161. package/cjs/components/Paging/Paging.d.ts +14 -3
  162. package/cjs/components/Paging/Paging.js +116 -58
  163. package/cjs/components/Paging/Paging.js.map +1 -1
  164. package/cjs/components/Paging/Paging.styles.d.ts +16 -1
  165. package/cjs/components/Paging/Paging.styles.js +123 -28
  166. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  167. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  168. package/cjs/components/Paging/PagingHelper.js +18 -11
  169. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  170. package/cjs/components/PasswordInput/ClosedIcon.d.ts +1 -1
  171. package/cjs/components/PasswordInput/OpenedIcon.d.ts +1 -1
  172. package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -18
  173. package/cjs/components/PasswordInput/PasswordInput.js +22 -46
  174. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  175. package/cjs/components/Radio/Radio.d.ts +4 -1
  176. package/cjs/components/Radio/Radio.js +9 -10
  177. package/cjs/components/Radio/Radio.js.map +1 -1
  178. package/cjs/components/Radio/Radio.styles.d.ts +0 -2
  179. package/cjs/components/Radio/Radio.styles.js +19 -31
  180. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  181. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -1
  182. package/cjs/components/RadioGroup/RadioGroup.js +1 -15
  183. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  184. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
  185. package/cjs/components/RadioGroup/RadioGroup.styles.js +5 -10
  186. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  187. package/cjs/components/ResponsiveLayout/decorator.d.ts +4 -2
  188. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +3 -14
  189. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
  190. package/cjs/components/ScrollContainer/ScrollContainer.js +3 -19
  191. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  192. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  193. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +10 -20
  194. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  195. package/cjs/components/Select/ArrowDownIcon.d.ts +1 -1
  196. package/cjs/components/Select/Select.d.ts +4 -1
  197. package/cjs/components/Select/Select.js +10 -6
  198. package/cjs/components/Select/Select.js.map +1 -1
  199. package/cjs/components/SidePage/SidePage.js +5 -12
  200. package/cjs/components/SidePage/SidePage.js.map +1 -1
  201. package/cjs/components/SidePage/SidePage.styles.d.ts +2 -7
  202. package/cjs/components/SidePage/SidePage.styles.js +41 -74
  203. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  204. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  205. package/cjs/components/SidePage/SidePageBody.js +1 -0
  206. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  207. package/cjs/components/SidePage/SidePageCloseButton.js +3 -7
  208. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  209. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  210. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  211. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  212. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  213. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  214. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  215. package/cjs/components/SidePage/SidePageHeader.d.ts +10 -7
  216. package/cjs/components/SidePage/SidePageHeader.js +31 -51
  217. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  218. package/cjs/components/SingleToast/SingleToast.d.ts +17 -4
  219. package/cjs/components/SingleToast/SingleToast.js +28 -5
  220. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  221. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  222. package/cjs/components/Spinner/Spinner.js +2 -33
  223. package/cjs/components/Spinner/Spinner.js.map +1 -1
  224. package/cjs/components/Spinner/Spinner.styles.js +10 -15
  225. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  226. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  227. package/cjs/components/Sticky/Sticky.js +4 -30
  228. package/cjs/components/Sticky/Sticky.js.map +1 -1
  229. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  230. package/cjs/components/Switcher/Switcher.js +8 -26
  231. package/cjs/components/Switcher/Switcher.js.map +1 -1
  232. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -1
  233. package/cjs/components/Switcher/Switcher.styles.js +14 -17
  234. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  235. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  236. package/cjs/components/Tabs/Indicator.js +1 -0
  237. package/cjs/components/Tabs/Indicator.js.map +1 -1
  238. package/cjs/components/Tabs/Tab.d.ts +2 -0
  239. package/cjs/components/Tabs/Tab.js +1 -0
  240. package/cjs/components/Tabs/Tab.js.map +1 -1
  241. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  242. package/cjs/components/Tabs/Tabs.js +1 -0
  243. package/cjs/components/Tabs/Tabs.js.map +1 -1
  244. package/cjs/components/Textarea/Textarea.d.ts +10 -47
  245. package/cjs/components/Textarea/Textarea.js +28 -66
  246. package/cjs/components/Textarea/Textarea.js.map +1 -1
  247. package/cjs/components/Textarea/Textarea.styles.js +3 -2
  248. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  249. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  250. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  251. package/cjs/components/Toast/Toast.d.ts +30 -16
  252. package/cjs/components/Toast/Toast.js +57 -52
  253. package/cjs/components/Toast/Toast.js.map +1 -1
  254. package/cjs/components/Toast/ToastView.d.ts +7 -15
  255. package/cjs/components/Toast/ToastView.js +19 -22
  256. package/cjs/components/Toast/ToastView.js.map +1 -1
  257. package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
  258. package/cjs/components/Toast/ToastView.styles.js +43 -9
  259. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  260. package/cjs/components/Toggle/Toggle.d.ts +4 -11
  261. package/cjs/components/Toggle/Toggle.js +4 -14
  262. package/cjs/components/Toggle/Toggle.js.map +1 -1
  263. package/cjs/components/Token/Token.d.ts +2 -0
  264. package/cjs/components/Token/Token.js +1 -0
  265. package/cjs/components/Token/Token.js.map +1 -1
  266. package/cjs/components/TokenInput/TokenInput.d.ts +9 -3
  267. package/cjs/components/TokenInput/TokenInput.js +74 -58
  268. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  269. package/cjs/components/Tooltip/Tooltip.d.ts +14 -10
  270. package/cjs/components/Tooltip/Tooltip.js +96 -19
  271. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  272. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  273. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  274. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  275. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  276. package/cjs/components/TooltipMenu/TooltipMenu.js +4 -2
  277. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  278. package/cjs/components/__stories__/Form.js +95 -0
  279. package/cjs/components/__stories__/Form.js.map +1 -0
  280. package/cjs/index.d.ts +2 -0
  281. package/cjs/index.js +1 -0
  282. package/cjs/index.js.map +1 -1
  283. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  284. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
  285. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  286. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  287. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
  288. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
  289. package/cjs/internal/ClearCrossIcon/CrossIcon.d.ts +1 -1
  290. package/cjs/internal/CloseButtonIcon/CrossIcon.d.ts +1 -1
  291. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  292. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  293. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  294. package/cjs/internal/CommonWrapper/types.d.ts +1 -1
  295. package/cjs/internal/CommonWrapper/types.js.map +1 -1
  296. package/cjs/internal/ComponentTable.js +2 -3
  297. package/cjs/internal/ComponentTable.js.map +1 -1
  298. package/cjs/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
  299. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +1 -1
  300. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  301. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  302. package/cjs/internal/CustomComboBox/ComboBoxView.js +48 -6
  303. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  304. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
  305. package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -10
  306. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  307. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
  308. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +18 -24
  309. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  310. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  311. package/cjs/internal/DateSelect/DateSelect.js +2 -19
  312. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  313. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
  314. package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
  315. package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
  316. package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
  317. package/cjs/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
  318. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  319. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  320. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  321. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  322. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  323. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  324. package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -13
  325. package/cjs/internal/InputLikeText/InputLikeText.js +17 -111
  326. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  327. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  328. package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
  329. package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
  330. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  331. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
  332. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  333. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  334. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
  335. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
  336. package/cjs/internal/Menu/Menu.d.ts +4 -3
  337. package/cjs/internal/Menu/Menu.js +4 -10
  338. package/cjs/internal/Menu/Menu.js.map +1 -1
  339. package/cjs/internal/Menu/Menu.styles.d.ts +0 -2
  340. package/cjs/internal/Menu/Menu.styles.js +9 -23
  341. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  342. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  343. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  344. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  345. package/cjs/internal/Popup/Popup.d.ts +41 -61
  346. package/cjs/internal/Popup/Popup.js +58 -118
  347. package/cjs/internal/Popup/Popup.js.map +1 -1
  348. package/cjs/internal/Popup/PopupPin.d.ts +16 -42
  349. package/cjs/internal/Popup/PopupPin.js +130 -224
  350. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  351. package/cjs/internal/Popup/PopupPin.styles.d.ts +5 -1
  352. package/cjs/internal/Popup/PopupPin.styles.js +25 -3
  353. package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
  354. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  355. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  356. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  357. package/cjs/internal/PopupMenu/validatePositions.js +5 -2
  358. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  359. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  360. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  361. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  362. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  363. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  364. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  365. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
  366. package/cjs/internal/ResizeDetector/ResizeDetector.js +8 -1
  367. package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  368. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
  369. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js +7 -1
  370. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
  371. package/cjs/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  372. package/cjs/internal/SpinnerIcon/SpinnerIcon.js +1 -55
  373. package/cjs/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
  374. package/cjs/internal/ThemePlayground/HintPlayground.js +7 -4
  375. package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
  376. package/cjs/internal/ThemePlayground/Playground.js +5 -1
  377. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  378. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  379. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  380. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  381. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  382. package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
  383. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  384. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  385. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  386. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  387. package/cjs/internal/icons2022/LoadingIcon.d.ts +1 -1
  388. package/cjs/internal/icons2022/LoadingIcon.js +0 -1
  389. package/cjs/internal/icons2022/LoadingIcon.js.map +1 -1
  390. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  391. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  392. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  393. package/cjs/internal/icons2022/iconSizer.d.ts +1 -1
  394. package/cjs/internal/themes/BasicTheme.d.ts +86 -57
  395. package/cjs/internal/themes/BasicTheme.js +144 -67
  396. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  397. package/cjs/internal/themes/DarkTheme6_0.d.ts +1 -0
  398. package/cjs/internal/themes/DarkTheme6_0.js +575 -0
  399. package/cjs/internal/themes/DarkTheme6_0.js.map +1 -0
  400. package/cjs/internal/themes/LightTheme6_0.d.ts +1 -0
  401. package/cjs/internal/themes/{LightTheme5_0.js → LightTheme6_0.js} +4 -4
  402. package/cjs/internal/themes/{LightTheme5_0.js.map → LightTheme6_0.js.map} +1 -1
  403. package/cjs/lib/blink.d.ts +15 -0
  404. package/cjs/lib/blink.js +65 -0
  405. package/cjs/lib/blink.js.map +1 -0
  406. package/cjs/lib/client.d.ts +0 -2
  407. package/cjs/lib/client.js +1 -3
  408. package/cjs/lib/client.js.map +1 -1
  409. package/cjs/lib/createPropsGetter.d.ts +1 -1
  410. package/cjs/lib/currentEnvironment.js +0 -1
  411. package/cjs/lib/currentEnvironment.js.map +1 -1
  412. package/cjs/lib/date/InternalDate.js +5 -4
  413. package/cjs/lib/date/InternalDate.js.map +1 -1
  414. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  415. package/cjs/lib/date/InternalDateGetter.js +2 -2
  416. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  417. package/cjs/lib/delay.mts +3 -0
  418. package/cjs/lib/dom/getDOMRect.d.ts +1 -1
  419. package/cjs/lib/dom/getScrollWidth.js +4 -2
  420. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  421. package/cjs/lib/events/MouseDrag.js +1 -7
  422. package/cjs/lib/events/MouseDrag.js.map +1 -1
  423. package/cjs/lib/events/keyboard/identifiers.js +2 -10
  424. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  425. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
  426. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
  427. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +1 -13
  428. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  429. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  430. package/cjs/lib/forwardRefAndName.js +0 -1
  431. package/cjs/lib/forwardRefAndName.js.map +1 -1
  432. package/cjs/lib/listenFocusOutside.js +3 -1
  433. package/cjs/lib/listenFocusOutside.js.map +1 -1
  434. package/cjs/lib/locale/decorators.d.ts +3 -2
  435. package/cjs/lib/needsPolyfillPlaceholder.js +1 -3
  436. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  437. package/cjs/lib/rootNode/getRootNode.js +2 -2
  438. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  439. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +3 -2
  440. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  441. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  442. package/cjs/lib/size/SizeControlContext.d.ts +6 -0
  443. package/cjs/lib/size/SizeControlContext.js +16 -0
  444. package/cjs/lib/size/SizeControlContext.js.map +1 -0
  445. package/cjs/lib/size/SizeDecorator.d.ts +33 -0
  446. package/cjs/lib/size/SizeDecorator.js +41 -0
  447. package/cjs/lib/size/SizeDecorator.js.map +1 -0
  448. package/cjs/lib/size/constants.d.ts +2 -0
  449. package/cjs/lib/size/constants.js +3 -0
  450. package/cjs/lib/size/constants.js.map +1 -0
  451. package/cjs/lib/size/index.d.ts +1 -0
  452. package/cjs/lib/size/index.js +1 -0
  453. package/cjs/lib/size/index.js.map +1 -0
  454. package/cjs/lib/size/useSizeControl.d.ts +2 -0
  455. package/cjs/lib/size/useSizeControl.js +10 -0
  456. package/cjs/lib/size/useSizeControl.js.map +1 -0
  457. package/cjs/lib/styles/Mixins.js +1 -3
  458. package/cjs/lib/styles/Mixins.js.map +1 -1
  459. package/cjs/lib/theming/Emotion.d.ts +7 -7
  460. package/cjs/lib/theming/ThemeHelpers.js +1 -1
  461. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  462. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  463. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  464. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -3
  465. package/cjs/lib/theming/themes/DarkTheme.js +3 -7
  466. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  467. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -3
  468. package/cjs/lib/theming/themes/LightTheme.js +3 -7
  469. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  470. package/cjs/lib/typeGuards.js +1 -1
  471. package/cjs/lib/typeGuards.js.map +1 -1
  472. package/cjs/lib/utils.d.ts +20 -5
  473. package/cjs/lib/utils.js +39 -16
  474. package/cjs/lib/utils.js.map +1 -1
  475. package/cjs/lib/withClassWrapper.js +5 -2
  476. package/cjs/lib/withClassWrapper.js.map +1 -1
  477. package/cjs/test-setup.d.ts +1 -0
  478. package/cjs/vitest.config.d.ts +2 -0
  479. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -47
  480. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  481. package/components/Autocomplete/Autocomplete.d.ts +17 -26
  482. package/components/Button/ArrowLeftIcon.d.ts +1 -1
  483. package/components/Button/ArrowRightIcon.d.ts +1 -1
  484. package/components/Button/Button/Button.js +45 -27
  485. package/components/Button/Button/Button.js.map +1 -1
  486. package/components/Button/Button.d.ts +27 -14
  487. package/components/Button/Button.mixins/Button.mixins.js +1 -4
  488. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  489. package/components/Button/Button.mixins.d.ts +0 -1
  490. package/components/Button/Button.styles/Button.styles.js +29 -29
  491. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  492. package/components/Button/Button.styles.d.ts +3 -3
  493. package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
  494. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  495. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  496. package/components/Calendar/Calendar.d.ts +2 -0
  497. package/components/Center/Center/Center.js.map +1 -1
  498. package/components/Center/Center.d.ts +2 -0
  499. package/components/Checkbox/Checkbox/Checkbox.js +17 -43
  500. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  501. package/components/Checkbox/Checkbox.d.ts +7 -16
  502. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +16 -25
  503. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  504. package/components/Checkbox/Checkbox.styles.d.ts +0 -3
  505. package/components/Checkbox/CheckedIcon.d.ts +1 -1
  506. package/components/Checkbox/IndeterminateIcon.d.ts +1 -1
  507. package/components/ComboBox/ComboBox/ComboBox.js +2 -1
  508. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  509. package/components/ComboBox/ComboBox.d.ts +22 -3
  510. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +20 -61
  511. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  512. package/components/CurrencyInput/CurrencyInput.d.ts +15 -45
  513. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
  514. package/components/CurrencyInput/CursorHelper/CursorHelper.js +3 -1
  515. package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
  516. package/components/CurrencyInput/constants/constants.js +0 -1
  517. package/components/CurrencyInput/constants/constants.js.map +1 -1
  518. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  519. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  520. package/components/DateInput/CalendarIcon.d.ts +1 -1
  521. package/components/DateInput/DateInput/DateInput.js +14 -24
  522. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  523. package/components/DateInput/DateInput.d.ts +5 -2
  524. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  525. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  526. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  527. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  528. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  529. package/components/DatePicker/DatePicker.d.ts +8 -35
  530. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +14 -1
  531. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  532. package/components/DateRangePicker/DateRangePicker.d.ts +34 -28
  533. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +2 -2
  534. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
  535. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  536. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  537. package/components/Dropdown/Dropdown.d.ts +2 -47
  538. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +4 -3
  539. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  540. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  541. package/components/FileUploader/FileUploader/FileUploader.js +1 -0
  542. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  543. package/components/FileUploader/UploadIcon.d.ts +1 -1
  544. package/components/FxInput/FxInput/FxInput.js +112 -72
  545. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  546. package/components/FxInput/FxInput.d.ts +25 -21
  547. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
  548. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  549. package/components/FxInput/MathFunctionIcon.d.ts +1 -1
  550. package/components/FxInput/UndoIcon.d.ts +1 -1
  551. package/components/Gapped/Gapped/Gapped.js +1 -16
  552. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  553. package/components/Gapped/Gapped.d.ts +2 -15
  554. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  555. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  556. package/components/GlobalLoader/useParams.d.ts +2 -2
  557. package/components/Group/Group/Group.js +68 -37
  558. package/components/Group/Group/Group.js.map +1 -1
  559. package/components/Group/Group.d.ts +4 -4
  560. package/components/Group/Group.styles/Group.styles.js +5 -5
  561. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  562. package/components/Group/Group.styles.d.ts +1 -1
  563. package/components/Hint/Hint/Hint.js.map +1 -1
  564. package/components/Hint/Hint.d.ts +2 -0
  565. package/components/Input/Input/Input.js +42 -166
  566. package/components/Input/Input/Input.js.map +1 -1
  567. package/components/Input/Input.d.ts +33 -66
  568. package/components/Input/Input.styles/Input.styles.js +15 -37
  569. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  570. package/components/Input/Input.styles.d.ts +0 -7
  571. package/components/Input/InputLayout/InputLayout/InputLayout.js +5 -2
  572. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  573. package/components/Input/InputLayout/InputLayout.d.ts +1 -0
  574. package/components/Kebab/Kebab/Kebab.js +8 -26
  575. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  576. package/components/Kebab/Kebab.d.ts +4 -2
  577. package/components/Kebab/KebabIcon.d.ts +1 -1
  578. package/components/Link/Link/Link.js +5 -2
  579. package/components/Link/Link/Link.js.map +1 -1
  580. package/components/Link/Link.d.ts +12 -10
  581. package/components/Loader/Loader/Loader.js +4 -37
  582. package/components/Loader/Loader/Loader.js.map +1 -1
  583. package/components/Loader/Loader.d.ts +7 -36
  584. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
  585. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
  586. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  587. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
  588. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
  589. package/components/MaskedInput/MaskedInput/MaskedInput.js +29 -7
  590. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  591. package/components/MaskedInput/MaskedInput.d.ts +9 -0
  592. package/components/MenuFooter/MenuFooter/MenuFooter.js +0 -2
  593. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  594. package/components/MenuFooter/MenuFooter.d.ts +1 -1
  595. package/components/MenuHeader/MenuHeader/MenuHeader.js +0 -2
  596. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  597. package/components/MenuHeader/MenuHeader.d.ts +1 -1
  598. package/components/MenuItem/MenuItem/MenuItem.js +3 -17
  599. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  600. package/components/MenuItem/MenuItem.d.ts +2 -17
  601. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +12 -15
  602. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  603. package/components/MenuItem/MenuItem.styles.d.ts +1 -2
  604. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +2 -2
  605. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  606. package/components/MiniModal/MiniModal.styles.d.ts +1 -1
  607. package/components/MiniModal/MiniModalBody/MiniModalBody.js +11 -5
  608. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  609. package/components/Modal/Modal/Modal.js +8 -16
  610. package/components/Modal/Modal/Modal.js.map +1 -1
  611. package/components/Modal/Modal.d.ts +1 -1
  612. package/components/Modal/Modal.styles/Modal.styles.js +55 -95
  613. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  614. package/components/Modal/Modal.styles.d.ts +8 -21
  615. package/components/Modal/ModalBody/ModalBody.js +1 -3
  616. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  617. package/components/Modal/ModalBody.d.ts +2 -0
  618. package/components/Modal/ModalClose/ModalClose.js +1 -3
  619. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  620. package/components/Modal/ModalFooter/ModalFooter.js +2 -4
  621. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  622. package/components/Modal/ModalHeader/ModalHeader.js +4 -4
  623. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  624. package/components/Modal/ModalHeader.d.ts +5 -0
  625. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  626. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  627. package/components/Paging/DotsIcon/package.json +6 -0
  628. package/components/Paging/DotsIcon.d.ts +3 -0
  629. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  630. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  631. package/components/Paging/ForwardIcon.d.ts +4 -1
  632. package/components/Paging/NavigationHelper/NavigationHelper.js +4 -7
  633. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  634. package/components/Paging/Paging/Paging.js +89 -57
  635. package/components/Paging/Paging/Paging.js.map +1 -1
  636. package/components/Paging/Paging.d.ts +14 -3
  637. package/components/Paging/Paging.styles/Paging.styles.js +61 -16
  638. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  639. package/components/Paging/Paging.styles.d.ts +16 -1
  640. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  641. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  642. package/components/Paging/PagingHelper.d.ts +1 -1
  643. package/components/PasswordInput/ClosedIcon.d.ts +1 -1
  644. package/components/PasswordInput/OpenedIcon.d.ts +1 -1
  645. package/components/PasswordInput/PasswordInput/PasswordInput.js +17 -37
  646. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  647. package/components/PasswordInput/PasswordInput.d.ts +10 -18
  648. package/components/Radio/Radio/Radio.js +10 -11
  649. package/components/Radio/Radio/Radio.js.map +1 -1
  650. package/components/Radio/Radio.d.ts +4 -1
  651. package/components/Radio/Radio.styles/Radio.styles.js +19 -25
  652. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  653. package/components/Radio/Radio.styles.d.ts +0 -2
  654. package/components/RadioGroup/RadioGroup/RadioGroup.js +18 -23
  655. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  656. package/components/RadioGroup/RadioGroup.d.ts +2 -1
  657. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +5 -8
  658. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  659. package/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
  660. package/components/ResponsiveLayout/decorator.d.ts +4 -2
  661. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +2 -15
  662. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  663. package/components/ScrollContainer/ScrollContainer.d.ts +3 -14
  664. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
  665. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +10 -13
  666. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  667. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  668. package/components/Select/ArrowDownIcon.d.ts +1 -1
  669. package/components/Select/Select/Select.js +14 -13
  670. package/components/Select/Select/Select.js.map +1 -1
  671. package/components/Select/Select.d.ts +4 -1
  672. package/components/SidePage/SidePage/SidePage.js +6 -11
  673. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  674. package/components/SidePage/SidePage.styles/SidePage.styles.js +27 -43
  675. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  676. package/components/SidePage/SidePage.styles.d.ts +2 -7
  677. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  678. package/components/SidePage/SidePageBody.d.ts +2 -0
  679. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +1 -3
  680. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  681. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  682. package/components/SidePage/SidePageContainer.d.ts +2 -0
  683. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  684. package/components/SidePage/SidePageFooter.d.ts +2 -0
  685. package/components/SidePage/SidePageHeader/SidePageHeader.js +32 -65
  686. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  687. package/components/SidePage/SidePageHeader.d.ts +10 -7
  688. package/components/SingleToast/SingleToast/SingleToast.js +23 -14
  689. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  690. package/components/SingleToast/SingleToast.d.ts +17 -4
  691. package/components/Spinner/Spinner/Spinner.js +1 -19
  692. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  693. package/components/Spinner/Spinner.d.ts +2 -18
  694. package/components/Spinner/Spinner.styles/Spinner.styles.js +2 -3
  695. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  696. package/components/Sticky/Sticky/Sticky.js +6 -21
  697. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  698. package/components/Sticky/Sticky.d.ts +2 -13
  699. package/components/Switcher/Switcher/Switcher.js +14 -22
  700. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  701. package/components/Switcher/Switcher.d.ts +6 -21
  702. package/components/Switcher/Switcher.styles/Switcher.styles.js +9 -11
  703. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  704. package/components/Switcher/Switcher.styles.d.ts +1 -1
  705. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  706. package/components/Tabs/Indicator.d.ts +2 -0
  707. package/components/Tabs/Tab/Tab.js.map +1 -1
  708. package/components/Tabs/Tab.d.ts +2 -0
  709. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  710. package/components/Tabs/Tabs.d.ts +2 -0
  711. package/components/Textarea/Textarea/Textarea.js +26 -60
  712. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  713. package/components/Textarea/Textarea.d.ts +10 -47
  714. package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
  715. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  716. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  717. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  718. package/components/Toast/Toast/Toast.js +46 -41
  719. package/components/Toast/Toast/Toast.js.map +1 -1
  720. package/components/Toast/Toast.d.ts +30 -16
  721. package/components/Toast/ToastView/ToastView.js +20 -22
  722. package/components/Toast/ToastView/ToastView.js.map +1 -1
  723. package/components/Toast/ToastView.d.ts +7 -15
  724. package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
  725. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  726. package/components/Toast/ToastView.styles.d.ts +4 -0
  727. package/components/Toggle/Toggle/Toggle.js +11 -20
  728. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  729. package/components/Toggle/Toggle.d.ts +4 -11
  730. package/components/Token/Token/Token.js.map +1 -1
  731. package/components/Token/Token.d.ts +2 -0
  732. package/components/TokenInput/TokenInput/TokenInput.js +106 -88
  733. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  734. package/components/TokenInput/TokenInput.d.ts +9 -3
  735. package/components/Tooltip/Tooltip/Tooltip.js +96 -48
  736. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  737. package/components/Tooltip/Tooltip.d.ts +14 -10
  738. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  739. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  740. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  741. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +4 -3
  742. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  743. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  744. package/components/__stories__/Form/Form.js +98 -0
  745. package/components/__stories__/Form/Form.js.map +1 -0
  746. package/components/__stories__/Form/package.json +6 -0
  747. package/index.d.ts +2 -0
  748. package/index.js +2 -0
  749. package/index.js.map +1 -1
  750. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
  751. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  752. package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  753. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
  754. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
  755. package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  756. package/internal/ClearCrossIcon/CrossIcon.d.ts +1 -1
  757. package/internal/CloseButtonIcon/CrossIcon.d.ts +1 -1
  758. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  759. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  760. package/internal/CommonWrapper/types/types.js.map +1 -1
  761. package/internal/CommonWrapper/types.d.ts +1 -1
  762. package/internal/ComponentTable/ComponentTable.js +0 -2
  763. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  764. package/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
  765. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +0 -1
  766. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  767. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +69 -40
  768. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  769. package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  770. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +18 -19
  771. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  772. package/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
  773. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +18 -23
  774. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  775. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
  776. package/internal/DateSelect/DateSelect/DateSelect.js +2 -11
  777. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  778. package/internal/DateSelect/DateSelect.d.ts +0 -10
  779. package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
  780. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
  781. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
  782. package/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
  783. package/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
  784. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  785. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  786. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  787. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  788. package/internal/InputLikeText/InputLikeText/InputLikeText.js +22 -115
  789. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  790. package/internal/InputLikeText/InputLikeText.d.ts +4 -13
  791. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
  792. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
  793. package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  794. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
  795. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  796. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
  797. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  798. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
  799. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
  800. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
  801. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  802. package/internal/Menu/Menu/Menu.js +2 -5
  803. package/internal/Menu/Menu/Menu.js.map +1 -1
  804. package/internal/Menu/Menu.d.ts +4 -3
  805. package/internal/Menu/Menu.styles/Menu.styles.js +9 -15
  806. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  807. package/internal/Menu/Menu.styles.d.ts +0 -2
  808. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  809. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  810. package/internal/Popup/Popup/Popup.js +29 -94
  811. package/internal/Popup/Popup/Popup.js.map +1 -1
  812. package/internal/Popup/Popup.d.ts +41 -61
  813. package/internal/Popup/PopupPin/PopupPin.js +115 -172
  814. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  815. package/internal/Popup/PopupPin.d.ts +16 -42
  816. package/internal/Popup/PopupPin.styles/PopupPin.styles.js +15 -3
  817. package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
  818. package/internal/Popup/PopupPin.styles.d.ts +5 -1
  819. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  820. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  821. package/internal/PopupMenu/validatePositions/validatePositions.js +3 -1
  822. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  823. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  824. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  825. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  826. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  827. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  828. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  829. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js +1 -1
  830. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
  831. package/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
  832. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js +4 -1
  833. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
  834. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
  835. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js +0 -41
  836. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js.map +1 -1
  837. package/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  838. package/internal/ThemePlayground/HintPlayground/HintPlayground.js +10 -8
  839. package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
  840. package/internal/ThemePlayground/Playground/Playground.js +8 -5
  841. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  842. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  843. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  844. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  845. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  846. package/internal/ThemePlayground/helpers.d.ts +1 -1
  847. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  848. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  849. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  850. package/internal/ZIndex/ZIndex.d.ts +3 -3
  851. package/internal/icons2022/LoadingIcon/LoadingIcon.js +0 -1
  852. package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
  853. package/internal/icons2022/LoadingIcon.d.ts +1 -1
  854. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  855. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  856. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  857. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  858. package/internal/icons2022/iconSizer.d.ts +1 -1
  859. package/internal/themes/BasicTheme/BasicTheme.js +176 -103
  860. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  861. package/internal/themes/BasicTheme.d.ts +86 -57
  862. package/internal/themes/DarkTheme6_0/DarkTheme6_0.js +409 -0
  863. package/internal/themes/DarkTheme6_0/DarkTheme6_0.js.map +1 -0
  864. package/internal/themes/DarkTheme6_0/package.json +6 -0
  865. package/internal/themes/DarkTheme6_0.d.ts +1 -0
  866. package/internal/themes/{LightTheme5_0/LightTheme5_0.js → LightTheme6_0/LightTheme6_0.js} +5 -5
  867. package/internal/themes/{LightTheme5_0/LightTheme5_0.js.map → LightTheme6_0/LightTheme6_0.js.map} +1 -1
  868. package/internal/themes/LightTheme6_0/package.json +6 -0
  869. package/internal/themes/LightTheme6_0.d.ts +1 -0
  870. package/lib/blink/blink.js +63 -0
  871. package/lib/blink/blink.js.map +1 -0
  872. package/lib/blink/package.json +6 -0
  873. package/lib/blink.d.ts +15 -0
  874. package/lib/client/client.js +0 -2
  875. package/lib/client/client.js.map +1 -1
  876. package/lib/client.d.ts +0 -2
  877. package/lib/createPropsGetter.d.ts +1 -1
  878. package/lib/currentEnvironment/currentEnvironment.js +2 -3
  879. package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
  880. package/lib/date/InternalDate/InternalDate.js +5 -4
  881. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  882. package/lib/date/InternalDateGetter/InternalDateGetter.js +2 -2
  883. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  884. package/lib/date/InternalDateGetter.d.ts +1 -1
  885. package/lib/delay.d.mts +1 -0
  886. package/lib/delay.mts +3 -0
  887. package/lib/dom/getDOMRect.d.ts +1 -1
  888. package/lib/dom/getScrollWidth/getScrollWidth.js +3 -1
  889. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  890. package/lib/events/MouseDrag/MouseDrag.js +0 -7
  891. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  892. package/lib/events/keyboard/identifiers/identifiers.js +1 -10
  893. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  894. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
  895. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +1 -7
  896. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  897. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
  898. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  899. package/lib/forwardRefAndName.d.ts +1 -1
  900. package/lib/listenFocusOutside/listenFocusOutside.js +3 -1
  901. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  902. package/lib/locale/decorators.d.ts +3 -2
  903. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +1 -2
  904. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  905. package/lib/rootNode/getRootNode/getRootNode.js +1 -1
  906. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  907. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  908. package/lib/rootNode/rootNodeDecorator.d.ts +3 -2
  909. package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
  910. package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
  911. package/lib/size/SizeControlContext/package.json +6 -0
  912. package/lib/size/SizeControlContext.d.ts +6 -0
  913. package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
  914. package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
  915. package/lib/size/SizeDecorator/package.json +6 -0
  916. package/lib/size/SizeDecorator.d.ts +33 -0
  917. package/lib/size/constants/constants.js +1 -0
  918. package/lib/size/constants/constants.js.map +1 -0
  919. package/lib/size/constants/package.json +6 -0
  920. package/lib/size/constants.d.ts +2 -0
  921. package/lib/size/index/index.js +1 -0
  922. package/lib/size/index/index.js.map +1 -0
  923. package/{internal/InternalMaskedInput → lib/size}/index/package.json +1 -1
  924. package/lib/size/index.d.ts +1 -0
  925. package/{internal/InternalMaskedInput → lib/size}/package.json +1 -1
  926. package/lib/size/useSizeControl/package.json +6 -0
  927. package/lib/size/useSizeControl/useSizeControl.js +7 -0
  928. package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
  929. package/lib/size/useSizeControl.d.ts +2 -0
  930. package/lib/styles/Mixins/Mixins.js +1 -1
  931. package/lib/styles/Mixins/Mixins.js.map +1 -1
  932. package/lib/theming/Emotion.d.ts +7 -7
  933. package/lib/theming/ThemeHelpers/ThemeHelpers.js +1 -1
  934. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  935. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  936. package/lib/theming/ThemeVersions.d.ts +1 -1
  937. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -7
  938. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  939. package/lib/theming/themes/DarkTheme.d.ts +1 -3
  940. package/lib/theming/themes/LightTheme/LightTheme.js +3 -7
  941. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  942. package/lib/theming/themes/LightTheme.d.ts +1 -3
  943. package/lib/typeGuards/typeGuards.js +1 -1
  944. package/lib/typeGuards/typeGuards.js.map +1 -1
  945. package/lib/utils/utils.js +32 -14
  946. package/lib/utils/utils.js.map +1 -1
  947. package/lib/utils.d.ts +20 -5
  948. package/lib/withClassWrapper/withClassWrapper.js +3 -1
  949. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  950. package/package.json +23 -39
  951. package/test-setup.d.ts +1 -0
  952. package/vitest.config.d.ts +2 -0
  953. package/cjs/components/Autocomplete/Autocomplete.md +0 -113
  954. package/cjs/components/Button/Button.md +0 -261
  955. package/cjs/components/Calendar/Calendar.md +0 -276
  956. package/cjs/components/Calendar/CalendarDay.md +0 -70
  957. package/cjs/components/Center/Center.md +0 -26
  958. package/cjs/components/Checkbox/Checkbox.md +0 -171
  959. package/cjs/components/ComboBox/ComboBox.md +0 -574
  960. package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
  961. package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
  962. package/cjs/components/DateInput/DateInput.md +0 -111
  963. package/cjs/components/DatePicker/DatePicker.md +0 -368
  964. package/cjs/components/Dropdown/Dropdown.md +0 -45
  965. package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
  966. package/cjs/components/FileUploader/FileUploader.md +0 -131
  967. package/cjs/components/FxInput/FxInput.md +0 -31
  968. package/cjs/components/Gapped/Gapped.md +0 -44
  969. package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
  970. package/cjs/components/Group/Group.md +0 -19
  971. package/cjs/components/Hint/Hint.md +0 -86
  972. package/cjs/components/Input/Input.md +0 -86
  973. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
  974. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +0 -46
  975. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +0 -1
  976. package/cjs/components/Kebab/Kebab.md +0 -306
  977. package/cjs/components/Link/Link.md +0 -182
  978. package/cjs/components/Loader/Loader.md +0 -33
  979. package/cjs/components/MaskedInput/MaskedInput.md +0 -114
  980. package/cjs/components/MenuFooter/MenuFooter.md +0 -27
  981. package/cjs/components/MenuHeader/MenuHeader.md +0 -35
  982. package/cjs/components/MenuItem/MenuItem.md +0 -139
  983. package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
  984. package/cjs/components/MiniModal/MiniModal.md +0 -231
  985. package/cjs/components/Modal/Modal.md +0 -56
  986. package/cjs/components/Paging/Paging.md +0 -57
  987. package/cjs/components/PasswordInput/PasswordInput.md +0 -29
  988. package/cjs/components/Radio/Radio.md +0 -57
  989. package/cjs/components/RadioGroup/RadioGroup.md +0 -44
  990. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  991. package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
  992. package/cjs/components/Select/Select.md +0 -113
  993. package/cjs/components/SidePage/SidePage.md +0 -65
  994. package/cjs/components/SingleToast/SingleToast.md +0 -36
  995. package/cjs/components/Spinner/Spinner.md +0 -36
  996. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  997. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +0 -197
  998. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +0 -1
  999. package/cjs/components/Sticky/Sticky.md +0 -28
  1000. package/cjs/components/Switcher/Switcher.md +0 -111
  1001. package/cjs/components/Tabs/Tab.md +0 -73
  1002. package/cjs/components/Tabs/Tabs.md +0 -54
  1003. package/cjs/components/Textarea/Textarea.md +0 -58
  1004. package/cjs/components/Toast/Toast.md +0 -69
  1005. package/cjs/components/Toast/ToastStatic.d.ts +0 -10
  1006. package/cjs/components/Toast/ToastStatic.js +0 -53
  1007. package/cjs/components/Toast/ToastStatic.js.map +0 -1
  1008. package/cjs/components/Toggle/Toggle.md +0 -110
  1009. package/cjs/components/Token/Token.md +0 -48
  1010. package/cjs/components/TokenInput/TokenInput.md +0 -277
  1011. package/cjs/components/Tooltip/Tooltip.md +0 -322
  1012. package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
  1013. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  1014. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  1015. package/cjs/internal/DataTids/DataTids.js +0 -50
  1016. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  1017. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  1018. package/cjs/internal/DataTids/DataTids.styles.js +0 -42
  1019. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  1020. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  1021. package/cjs/internal/DataTids/componentsDataTids.js +0 -15
  1022. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  1023. package/cjs/internal/InputLikeText/HiddenInput.d.ts +0 -13
  1024. package/cjs/internal/InputLikeText/HiddenInput.js +0 -43
  1025. package/cjs/internal/InputLikeText/HiddenInput.js.map +0 -1
  1026. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
  1027. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +0 -241
  1028. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
  1029. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
  1030. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js +0 -30
  1031. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +0 -1
  1032. package/cjs/internal/InternalMaskedInput/index.d.ts +0 -1
  1033. package/cjs/internal/InternalMaskedInput/index.js +0 -1
  1034. package/cjs/internal/InternalMaskedInput/index.js.map +0 -1
  1035. package/cjs/internal/ThemePlayground/Playground.md +0 -7
  1036. package/cjs/internal/themes/BasicLightTheme.d.ts +0 -5
  1037. package/cjs/internal/themes/BasicLightTheme.js +0 -6
  1038. package/cjs/internal/themes/BasicLightTheme.js.map +0 -1
  1039. package/cjs/internal/themes/DarkTheme5_0.d.ts +0 -1
  1040. package/cjs/internal/themes/DarkTheme5_0.js +0 -570
  1041. package/cjs/internal/themes/DarkTheme5_0.js.map +0 -1
  1042. package/cjs/internal/themes/DarkTheme5_1.d.ts +0 -1
  1043. package/cjs/internal/themes/DarkTheme5_1.js +0 -41
  1044. package/cjs/internal/themes/DarkTheme5_1.js.map +0 -1
  1045. package/cjs/internal/themes/DarkTheme5_2.d.ts +0 -1
  1046. package/cjs/internal/themes/DarkTheme5_2.js +0 -29
  1047. package/cjs/internal/themes/DarkTheme5_2.js.map +0 -1
  1048. package/cjs/internal/themes/LightTheme5_0.d.ts +0 -1
  1049. package/cjs/internal/themes/LightTheme5_1.d.ts +0 -1
  1050. package/cjs/internal/themes/LightTheme5_1.js +0 -41
  1051. package/cjs/internal/themes/LightTheme5_1.js.map +0 -1
  1052. package/cjs/internal/themes/LightTheme5_2.d.ts +0 -1
  1053. package/cjs/internal/themes/LightTheme5_2.js +0 -27
  1054. package/cjs/internal/themes/LightTheme5_2.js.map +0 -1
  1055. package/cjs/lib/SSRSafe.d.ts +0 -2
  1056. package/cjs/lib/SSRSafe.js +0 -5
  1057. package/cjs/lib/SSRSafe.js.map +0 -1
  1058. package/cjs/lib/events/fixClickFocusIE.d.ts +0 -1
  1059. package/cjs/lib/events/fixClickFocusIE.js +0 -20
  1060. package/cjs/lib/events/fixClickFocusIE.js.map +0 -1
  1061. package/cjs/lib/events/stopPropagation.d.ts +0 -1
  1062. package/cjs/lib/events/stopPropagation.js +0 -7
  1063. package/cjs/lib/events/stopPropagation.js.map +0 -1
  1064. package/cjs/lib/events/tabListener.d.ts +0 -1
  1065. package/cjs/lib/events/tabListener.js +0 -2
  1066. package/cjs/lib/events/tabListener.js.map +0 -1
  1067. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  1068. package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
  1069. package/cjs/lib/theming/ThemeContext.md +0 -265
  1070. package/components/Autocomplete/Autocomplete.md +0 -113
  1071. package/components/Button/Button.md +0 -261
  1072. package/components/Calendar/Calendar.md +0 -276
  1073. package/components/Calendar/CalendarDay.md +0 -70
  1074. package/components/Center/Center.md +0 -26
  1075. package/components/Checkbox/Checkbox.md +0 -171
  1076. package/components/ComboBox/ComboBox.md +0 -574
  1077. package/components/CurrencyInput/CurrencyInput.md +0 -39
  1078. package/components/CurrencyLabel/CurrencyLabel.md +0 -29
  1079. package/components/DateInput/DateInput.md +0 -111
  1080. package/components/DatePicker/DatePicker.md +0 -368
  1081. package/components/Dropdown/Dropdown.md +0 -45
  1082. package/components/DropdownMenu/DropdownMenu.md +0 -290
  1083. package/components/FileUploader/FileUploader.md +0 -131
  1084. package/components/FxInput/FxInput.md +0 -31
  1085. package/components/Gapped/Gapped.md +0 -44
  1086. package/components/GlobalLoader/GlobalLoader.md +0 -97
  1087. package/components/Group/Group.md +0 -19
  1088. package/components/Hint/Hint.md +0 -86
  1089. package/components/Input/Input.md +0 -86
  1090. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +0 -29
  1091. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +0 -1
  1092. package/components/Input/InputLayout/PolyfillPlaceholder/package.json +0 -6
  1093. package/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
  1094. package/components/Kebab/Kebab.md +0 -306
  1095. package/components/Link/Link.md +0 -182
  1096. package/components/Loader/Loader.md +0 -33
  1097. package/components/MaskedInput/MaskedInput.md +0 -114
  1098. package/components/MenuFooter/MenuFooter.md +0 -27
  1099. package/components/MenuHeader/MenuHeader.md +0 -35
  1100. package/components/MenuItem/MenuItem.md +0 -139
  1101. package/components/MenuSeparator/MenuSeparator.md +0 -14
  1102. package/components/MiniModal/MiniModal.md +0 -231
  1103. package/components/Modal/Modal.md +0 -56
  1104. package/components/Paging/Paging.md +0 -57
  1105. package/components/PasswordInput/PasswordInput.md +0 -29
  1106. package/components/Radio/Radio.md +0 -57
  1107. package/components/RadioGroup/RadioGroup.md +0 -44
  1108. package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  1109. package/components/ScrollContainer/ScrollContainer.md +0 -224
  1110. package/components/Select/Select.md +0 -113
  1111. package/components/SidePage/SidePage.md +0 -65
  1112. package/components/SingleToast/SingleToast.md +0 -36
  1113. package/components/Spinner/Spinner.md +0 -36
  1114. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +0 -146
  1115. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +0 -1
  1116. package/components/Spinner/SpinnerFallbackAnimation/package.json +0 -6
  1117. package/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  1118. package/components/Sticky/Sticky.md +0 -28
  1119. package/components/Switcher/Switcher.md +0 -111
  1120. package/components/Tabs/Tab.md +0 -73
  1121. package/components/Tabs/Tabs.md +0 -54
  1122. package/components/Textarea/Textarea.md +0 -58
  1123. package/components/Toast/Toast.md +0 -69
  1124. package/components/Toast/ToastStatic/ToastStatic.js +0 -39
  1125. package/components/Toast/ToastStatic/ToastStatic.js.map +0 -1
  1126. package/components/Toast/ToastStatic/package.json +0 -6
  1127. package/components/Toast/ToastStatic.d.ts +0 -10
  1128. package/components/Toggle/Toggle.md +0 -110
  1129. package/components/Token/Token.md +0 -48
  1130. package/components/TokenInput/TokenInput.md +0 -277
  1131. package/components/Tooltip/Tooltip.md +0 -322
  1132. package/components/TooltipMenu/TooltipMenu.md +0 -241
  1133. package/internal/DataTids/DATATIDS.md +0 -12
  1134. package/internal/DataTids/DataTids/DataTids.js +0 -69
  1135. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  1136. package/internal/DataTids/DataTids/package.json +0 -6
  1137. package/internal/DataTids/DataTids.d.ts +0 -12
  1138. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
  1139. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  1140. package/internal/DataTids/DataTids.styles/package.json +0 -6
  1141. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  1142. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
  1143. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  1144. package/internal/DataTids/componentsDataTids/package.json +0 -6
  1145. package/internal/DataTids/componentsDataTids.d.ts +0 -5
  1146. package/internal/InputLikeText/HiddenInput/HiddenInput.js +0 -42
  1147. package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +0 -1
  1148. package/internal/InputLikeText/HiddenInput/package.json +0 -6
  1149. package/internal/InputLikeText/HiddenInput.d.ts +0 -13
  1150. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +0 -191
  1151. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
  1152. package/internal/InternalMaskedInput/InternalMaskedInput/package.json +0 -6
  1153. package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
  1154. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js +0 -14
  1155. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map +0 -1
  1156. package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +0 -6
  1157. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
  1158. package/internal/InternalMaskedInput/index/index.js +0 -1
  1159. package/internal/InternalMaskedInput/index/index.js.map +0 -1
  1160. package/internal/InternalMaskedInput/index.d.ts +0 -1
  1161. package/internal/ThemePlayground/Playground.md +0 -7
  1162. package/internal/themes/BasicLightTheme/BasicLightTheme.js +0 -6
  1163. package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +0 -1
  1164. package/internal/themes/BasicLightTheme/package.json +0 -6
  1165. package/internal/themes/BasicLightTheme.d.ts +0 -5
  1166. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +0 -409
  1167. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +0 -1
  1168. package/internal/themes/DarkTheme5_0/package.json +0 -6
  1169. package/internal/themes/DarkTheme5_0.d.ts +0 -1
  1170. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +0 -52
  1171. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +0 -1
  1172. package/internal/themes/DarkTheme5_1/package.json +0 -6
  1173. package/internal/themes/DarkTheme5_1.d.ts +0 -1
  1174. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +0 -27
  1175. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +0 -1
  1176. package/internal/themes/DarkTheme5_2/package.json +0 -6
  1177. package/internal/themes/DarkTheme5_2.d.ts +0 -1
  1178. package/internal/themes/LightTheme5_0/package.json +0 -6
  1179. package/internal/themes/LightTheme5_0.d.ts +0 -1
  1180. package/internal/themes/LightTheme5_1/LightTheme5_1.js +0 -52
  1181. package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +0 -1
  1182. package/internal/themes/LightTheme5_1/package.json +0 -6
  1183. package/internal/themes/LightTheme5_1.d.ts +0 -1
  1184. package/internal/themes/LightTheme5_2/LightTheme5_2.js +0 -27
  1185. package/internal/themes/LightTheme5_2/LightTheme5_2.js.map +0 -1
  1186. package/internal/themes/LightTheme5_2/package.json +0 -6
  1187. package/internal/themes/LightTheme5_2.d.ts +0 -1
  1188. package/lib/SSRSafe/SSRSafe.js +0 -4
  1189. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  1190. package/lib/SSRSafe/package.json +0 -6
  1191. package/lib/SSRSafe.d.ts +0 -2
  1192. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +0 -18
  1193. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +0 -1
  1194. package/lib/events/fixClickFocusIE/package.json +0 -6
  1195. package/lib/events/fixClickFocusIE.d.ts +0 -1
  1196. package/lib/events/stopPropagation/package.json +0 -6
  1197. package/lib/events/stopPropagation/stopPropagation.js +0 -7
  1198. package/lib/events/stopPropagation/stopPropagation.js.map +0 -1
  1199. package/lib/events/stopPropagation.d.ts +0 -1
  1200. package/lib/events/tabListener/package.json +0 -6
  1201. package/lib/events/tabListener/tabListener.js +0 -2
  1202. package/lib/events/tabListener/tabListener.js.map +0 -1
  1203. package/lib/events/tabListener.d.ts +0 -1
  1204. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  1205. package/lib/locale/LOCALECONTEXT.md +0 -222
  1206. package/lib/theming/ThemeContext.md +0 -265
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_utils","_identifiers","_ThemeContext","_ThemeFactory","_Popup","_RenderLayer","_CommonWrapper","_decorator","_rootNode","_createPropsGetter","_Menu","_validatePositions","_PopupMenu2","_tids","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_class","_PopupMenu","PopupMenuType","Dropdown","Tooltip","Positions","PopupMenu","rootNode","responsiveLayout","_React$Component","_this","_len","arguments","length","args","Array","_key","apply","concat","rootId","PopupIds","root","getRandomID","getProps","createPropsGetter","defaultProps","state","menuVisible","firstItemShouldBeSelected","captionWrapper","savedFocusableElement","menu","open","showMenu","close","hideMenu","menuRef","element","handleOpen","focus","passPropsToCaption","caption","_this$props$popupMenu","React","cloneElement","id","props","popupMenuId","renderCaption","opened","openMenu","closeMenu","toggleMenu","corners","default","createElement","PopupMenuDataTids","className","styles","ref","onClick","handleCaptionClick","onKeyDown","handleCaptionKeyDown","hideMenuWithoutFocusing","saveFocus","setState","handleChangeMenuVisible","restoreFocus","e","someKeys","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleKeyDown","isKeyEscape","globalObject","document","activeElement","focusShouldBeRestored","onOpen","onClose","onChangeMenuState","handleItemSelection","event","isDefaultPrevented","type","_inheritsLoose2","_proto","render","_this2","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","menuOffsetY","popupMenuMenuOffsetY","renderMain","_this$props$popupMenu2","_this$getProps","popupHasPin","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","RenderLayer","onClickOutside","onFocusOutside","active","container","style","width","children","Popup","anchorElement","hasShadow","margin","popupMargin","hasPin","pinOffset","popupPinOffset","positions","getPositions","mobileOnCloseRequest","isMobileLayout","menuWidth","Menu","maxHeight","menuMaxHeight","onItemClick","preventIconsOffset","cyclicSelection","initialSelectedItemIndex","header","footer","isValidPositions","Component","__KONTUR_REACT_UI__","displayName","Type"],"sources":["PopupMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { getRandomID } from '../../lib/utils';\nimport type { HTMLProps } from '../../typings/html';\nimport {\n isKeyArrowVertical,\n isKeyEnter,\n isKeyEscape,\n isKeySpace,\n someKeys,\n} from '../../lib/events/keyboard/identifiers';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupPositionsType } from '../Popup';\nimport { Popup, PopupIds } from '../Popup';\nimport { RenderLayer } from '../RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { MenuProps } from '../Menu';\nimport { Menu } from '../Menu';\n\nimport { isValidPositions } from './validatePositions';\nimport { styles } from './PopupMenu.styles';\nimport { PopupMenuDataTids } from './tids';\n\nexport * from './tids';\n\nexport interface PopupMenuCaptionProps {\n opened: boolean;\n openMenu: (firstItemShouldBeSelected?: boolean) => void;\n closeMenu: (restoreFocus?: boolean) => void;\n toggleMenu: () => void;\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\nexport interface PopupMenuProps\n extends CommonProps,\n Pick<MenuProps, 'preventIconsOffset'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<AriaAttributes, 'aria-label'> {\n children?: React.ReactNode;\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Ширина контейнера и caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо ```caption```,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: React.ReactNode | ((props: PopupMenuCaptionProps) => React.ReactNode);\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n\n /** Массив разрешенных положений меню относительно caption'а. */\n positions?: PopupPositionsType[];\n /** Колбэк, вызываемый после открытия/закрытия меню */\n onChangeMenuState?: (isOpened: boolean, restoreFocus: boolean) => void;\n /** Пропсы, передающиеся в Popup */\n popupHasPin?: boolean;\n popupMargin?: number;\n popupPinOffset?: number;\n type?: 'dropdown' | 'tooltip';\n disableAnimations?: boolean;\n /** Действие при открытии меню */\n onOpen?: () => void;\n /** Действие при закрытии меню */\n onClose?: () => void;\n /**\n * Позволяет задать `id` выпадающему меню.\n *\n * Это может пригодиться при реализации a11y. Например, для того, чтобы связать `aria-controls` с выпадающим меню.\n */\n popupMenuId?: HTMLProps['id'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ninterface PopupMenuState {\n menuVisible: boolean;\n firstItemShouldBeSelected?: boolean;\n}\n\nexport const PopupMenuType = {\n Dropdown: 'dropdown',\n Tooltip: 'tooltip',\n} as const;\n\nconst Positions: PopupPositionsType[] = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n 'left top',\n 'left middle',\n 'left bottom',\n];\n\ntype DefaultProps = Required<Pick<PopupMenuProps, 'positions' | 'type' | 'popupHasPin' | 'disableAnimations'>>;\n\n@rootNode\n@responsiveLayout\nexport class PopupMenu extends React.Component<PopupMenuProps, PopupMenuState> {\n public static __KONTUR_REACT_UI__ = 'PopupMenu';\n public static displayName = 'PopupMenu';\n\n private isMobileLayout!: boolean;\n private rootId = PopupIds.root + getRandomID();\n\n public static defaultProps: DefaultProps = {\n positions: Positions,\n type: PopupMenuType.Tooltip,\n popupHasPin: true,\n disableAnimations: false,\n };\n\n private getProps = createPropsGetter(PopupMenu.defaultProps);\n\n public static Type = PopupMenuType;\n\n public state = {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n };\n\n private captionWrapper: HTMLSpanElement | null = null;\n private savedFocusableElement: HTMLElement | null = null;\n private menu: Nullable<Menu> = null;\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n menuOffsetY: theme.popupMenuMenuOffsetY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { popupHasPin, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <RenderLayer\n onClickOutside={this.hideMenuWithoutFocusing}\n onFocusOutside={this.hideMenuWithoutFocusing}\n active={this.state.menuVisible}\n >\n <div data-tid={PopupMenuDataTids.root} className={styles.container()} style={{ width: this.props.width }}>\n {this.renderCaption()}\n {this.captionWrapper && this.props.children && (\n <Popup\n id={this.props.popupMenuId ?? this.rootId}\n anchorElement={this.captionWrapper}\n opened={this.state.menuVisible}\n hasShadow\n margin={this.props.popupMargin}\n hasPin={popupHasPin}\n pinOffset={this.props.popupPinOffset}\n positions={this.getPositions()}\n disableAnimations={disableAnimations}\n onOpen={this.handleOpen}\n mobileOnCloseRequest={this.hideMenu}\n width={this.isMobileLayout ? 'auto' : this.props.menuWidth || 'auto'}\n >\n <Menu\n maxHeight={this.isMobileLayout ? 'none' : this.props.menuMaxHeight || 'none'}\n onKeyDown={this.handleKeyDown}\n onItemClick={this.handleItemSelection}\n preventIconsOffset={this.props.preventIconsOffset}\n cyclicSelection={false}\n ref={this.menuRef}\n initialSelectedItemIndex={this.state.firstItemShouldBeSelected ? 0 : -1}\n header={this.props.header}\n footer={this.props.footer}\n >\n {this.props.children}\n </Menu>\n </Popup>\n )}\n </div>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n public open = (): void => this.showMenu();\n public close = (): void => this.hideMenu();\n\n private menuRef = (element: Nullable<Menu>) => (this.menu = element);\n\n private handleOpen = () => {\n if (this.menu) {\n this.menu.focus();\n }\n };\n\n private passPropsToCaption = (caption: React.ReactNode) => {\n if (typeof caption === 'string' || typeof caption === 'number') {\n return caption;\n }\n\n return React.cloneElement(caption as React.ReactElement, {\n id: this.props.id,\n 'aria-controls': this.props.popupMenuId ?? this.rootId,\n 'aria-expanded': this.state.menuVisible ? 'true' : 'false',\n 'aria-label': this.props['aria-label'],\n });\n };\n\n private renderCaption = () => {\n if (typeof this.props.caption === 'function') {\n const caption = this.props.caption({\n opened: this.state.menuVisible,\n openMenu: this.showMenu,\n closeMenu: this.hideMenu,\n toggleMenu: this.toggleMenu,\n corners: this.props.corners,\n });\n\n return (\n <span\n data-tid={PopupMenuDataTids.caption}\n className={styles.caption()}\n ref={(element) => (this.captionWrapper = element)}\n >\n {this.passPropsToCaption(caption)}\n </span>\n );\n }\n\n return (\n <span\n data-tid={PopupMenuDataTids.caption}\n onClick={this.handleCaptionClick}\n onKeyDown={this.handleCaptionKeyDown}\n ref={(element) => (this.captionWrapper = element)}\n className={styles.caption()}\n >\n {this.passPropsToCaption(this.props.caption)}\n </span>\n );\n };\n\n private hideMenuWithoutFocusing = () => this.hideMenu();\n\n private getPositions(): Readonly<PopupPositionsType[]> {\n const positions = this.getProps().positions;\n if (positions && isValidPositions(positions)) {\n return positions;\n }\n\n return Positions;\n }\n\n private showMenu = (firstItemShouldBeSelected?: boolean): void => {\n this.saveFocus();\n this.setState(\n {\n menuVisible: true,\n firstItemShouldBeSelected,\n },\n () => {\n this.handleChangeMenuVisible(false);\n },\n );\n };\n\n private hideMenu = (restoreFocus?: boolean): void => {\n this.setState(\n {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n },\n () => {\n this.handleChangeMenuVisible(!!restoreFocus);\n },\n );\n };\n\n private toggleMenu = (): void => {\n this.state.menuVisible ? this.hideMenu() : this.showMenu();\n };\n\n private handleCaptionClick = (): void => {\n this.toggleMenu();\n };\n\n private handleCaptionKeyDown = (e: React.KeyboardEvent<HTMLElement>): void => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n this.showMenu(true);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (isKeyEscape(e)) {\n const restoreFocus = true;\n this.hideMenu(restoreFocus);\n }\n };\n\n private saveFocus = (): void => {\n if (globalObject.document) {\n this.savedFocusableElement = globalObject.document.activeElement as HTMLElement;\n }\n };\n\n private restoreFocus = (): void => {\n if (this.savedFocusableElement) {\n this.savedFocusableElement.focus();\n this.savedFocusableElement = null;\n }\n };\n\n private handleChangeMenuVisible = (focusShouldBeRestored: boolean): void => {\n if (focusShouldBeRestored) {\n this.restoreFocus();\n }\n\n if (this.state.menuVisible && this.props.onOpen) {\n this.props.onOpen();\n }\n\n if (!this.state.menuVisible && this.props.onClose) {\n this.props.onClose();\n }\n\n if (typeof this.props.onChangeMenuState === 'function') {\n this.props.onChangeMenuState(this.state.menuVisible, focusShouldBeRestored);\n }\n };\n\n private handleItemSelection = (event: React.SyntheticEvent<HTMLElement>): void => {\n if (event.isDefaultPrevented()) {\n return;\n }\n\n if (event.type === 'keydown') {\n event.preventDefault();\n }\n\n const restoreFocus = event.type === 'keydown';\n this.hideMenu(restoreFocus);\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_utils","_identifiers","_ThemeContext","_ThemeFactory","_Popup","_RenderLayer","_CommonWrapper","_decorator","_rootNode","_createPropsGetter","_Menu","_validatePositions","_PopupMenu2","_tids","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_class","_PopupMenu","PopupMenuType","Dropdown","Tooltip","Positions","PopupMenu","rootNode","responsiveLayout","_React$Component","_this","_len","arguments","length","args","Array","_key","apply","concat","rootId","PopupIds","root","getRandomID","getProps","createPropsGetter","defaultProps","state","menuVisible","firstItemShouldBeSelected","captionWrapper","savedFocusableElement","menu","open","showMenu","close","hideMenu","menuRef","element","handleOpen","focus","passPropsToCaption","caption","_this$props$popupMenu","React","cloneElement","id","props","popupMenuId","renderCaption","opened","openMenu","closeMenu","toggleMenu","corners","default","createElement","PopupMenuDataTids","className","styles","ref","onClick","handleCaptionClick","onKeyDown","handleCaptionKeyDown","hideMenuWithoutFocusing","saveFocus","setState","handleChangeMenuVisible","restoreFocus","e","someKeys","isKeyEnter","isKeySpace","isKeyArrowVertical","preventDefault","handleKeyDown","isKeyEscape","globalObject","document","activeElement","focusShouldBeRestored","onOpen","onClose","onChangeMenuState","handleItemSelection","event","isDefaultPrevented","type","_inheritsLoose2","_proto","render","_this2","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","menuOffsetY","popupMenuMenuOffsetY","renderMain","_this$props$popupMenu2","_this$getProps","popupHasPin","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","RenderLayer","onClickOutside","onFocusOutside","active","container","style","width","children","Popup","anchorElement","hasShadow","margin","popupMargin","hasPin","pinOffset","popupPinOffset","positions","getPositions","mobileOnCloseRequest","isMobileLayout","menuWidth","Menu","maxHeight","menuMaxHeight","onItemClick","preventIconsOffset","cyclicSelection","initialSelectedItemIndex","header","footer","isValidPositions","Component","__KONTUR_REACT_UI__","displayName","Type"],"sources":["PopupMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { getRandomID } from '../../lib/utils';\nimport type { HTMLProps } from '../../typings/html';\nimport {\n isKeyArrowVertical,\n isKeyEnter,\n isKeyEscape,\n isKeySpace,\n someKeys,\n} from '../../lib/events/keyboard/identifiers';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupPositionsType } from '../Popup';\nimport { Popup, PopupIds } from '../Popup';\nimport { RenderLayer } from '../RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { MenuProps } from '../Menu';\nimport { Menu } from '../Menu';\n\nimport { isValidPositions } from './validatePositions';\nimport { styles } from './PopupMenu.styles';\nimport { PopupMenuDataTids } from './tids';\n\nexport * from './tids';\n\nexport interface PopupMenuCaptionProps {\n opened: boolean;\n openMenu: (firstItemShouldBeSelected?: boolean) => void;\n closeMenu: (restoreFocus?: boolean) => void;\n toggleMenu: () => void;\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\nexport interface PopupMenuProps\n extends CommonProps,\n Pick<MenuProps, 'preventIconsOffset'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<AriaAttributes, 'aria-label'> {\n children?: React.ReactNode;\n /** Максимальная высота меню */\n menuMaxHeight?: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Ширина контейнера и caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо ```caption```,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: React.ReactNode | ((props: PopupMenuCaptionProps) => React.ReactNode);\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n\n /** Массив разрешенных положений меню относительно caption'а. */\n positions?: PopupPositionsType[];\n /** Колбэк, вызываемый после открытия/закрытия меню */\n onChangeMenuState?: (isOpened: boolean, restoreFocus: boolean) => void;\n /** Пропсы, передающиеся в Popup */\n popupHasPin?: boolean;\n popupMargin?: number;\n popupPinOffset?: number;\n type?: 'dropdown' | 'tooltip';\n disableAnimations?: boolean;\n /** Действие при открытии меню */\n onOpen?: () => void;\n /** Действие при закрытии меню */\n onClose?: () => void;\n /**\n * Позволяет задать `id` выпадающему меню.\n *\n * Это может пригодиться при реализации a11y. Например, для того, чтобы связать `aria-controls` с выпадающим меню.\n */\n popupMenuId?: HTMLProps['id'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ninterface PopupMenuState {\n menuVisible: boolean;\n firstItemShouldBeSelected?: boolean;\n}\n\nexport const PopupMenuType = {\n Dropdown: 'dropdown',\n Tooltip: 'tooltip',\n} as const;\n\nconst Positions: PopupPositionsType[] = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n 'left top',\n 'left middle',\n 'left bottom',\n];\n\ntype DefaultProps = Required<Pick<PopupMenuProps, 'positions' | 'type' | 'popupHasPin' | 'disableAnimations'>>;\n\n@rootNode\n@responsiveLayout\nexport class PopupMenu extends React.Component<PopupMenuProps, PopupMenuState> {\n public static __KONTUR_REACT_UI__ = 'PopupMenu';\n public static displayName = 'PopupMenu';\n\n private isMobileLayout!: boolean;\n private rootId = PopupIds.root + getRandomID();\n\n public static defaultProps: DefaultProps = {\n positions: Positions,\n type: PopupMenuType.Tooltip,\n popupHasPin: true,\n disableAnimations: false,\n };\n\n private getProps = createPropsGetter(PopupMenu.defaultProps);\n\n public static Type = PopupMenuType;\n\n public state = {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n };\n\n private captionWrapper: HTMLSpanElement | null = null;\n private savedFocusableElement: HTMLElement | null = null;\n private menu: Nullable<Menu> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n menuOffsetY: theme.popupMenuMenuOffsetY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { popupHasPin, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <RenderLayer\n onClickOutside={this.hideMenuWithoutFocusing}\n onFocusOutside={this.hideMenuWithoutFocusing}\n active={this.state.menuVisible}\n >\n <div data-tid={PopupMenuDataTids.root} className={styles.container()} style={{ width: this.props.width }}>\n {this.renderCaption()}\n {this.captionWrapper && this.props.children && (\n <Popup\n id={this.props.popupMenuId ?? this.rootId}\n anchorElement={this.captionWrapper}\n opened={this.state.menuVisible}\n hasShadow\n margin={this.props.popupMargin}\n hasPin={popupHasPin}\n pinOffset={this.props.popupPinOffset}\n positions={this.getPositions()}\n disableAnimations={disableAnimations}\n onOpen={this.handleOpen}\n mobileOnCloseRequest={this.hideMenu}\n width={this.isMobileLayout ? 'auto' : this.props.menuWidth || 'auto'}\n >\n <Menu\n maxHeight={this.isMobileLayout ? 'none' : this.props.menuMaxHeight || 'none'}\n onKeyDown={this.handleKeyDown}\n onItemClick={this.handleItemSelection}\n preventIconsOffset={this.props.preventIconsOffset}\n cyclicSelection={false}\n ref={this.menuRef}\n initialSelectedItemIndex={this.state.firstItemShouldBeSelected ? 0 : -1}\n header={this.props.header}\n footer={this.props.footer}\n >\n {this.props.children}\n </Menu>\n </Popup>\n )}\n </div>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n public open = (): void => this.showMenu();\n public close = (): void => this.hideMenu();\n\n private menuRef = (element: Nullable<Menu>) => (this.menu = element);\n\n private handleOpen = () => {\n if (this.menu) {\n this.menu.focus();\n }\n };\n\n private passPropsToCaption = (caption: React.ReactNode) => {\n if (typeof caption === 'string' || typeof caption === 'number') {\n return caption;\n }\n\n return React.cloneElement(caption as React.ReactElement, {\n id: this.props.id,\n 'aria-controls': this.props.popupMenuId ?? this.rootId,\n 'aria-expanded': this.state.menuVisible ? 'true' : 'false',\n 'aria-label': this.props['aria-label'],\n });\n };\n\n private renderCaption = () => {\n if (typeof this.props.caption === 'function') {\n const caption = this.props.caption({\n opened: this.state.menuVisible,\n openMenu: this.showMenu,\n closeMenu: this.hideMenu,\n toggleMenu: this.toggleMenu,\n corners: this.props.corners,\n });\n\n return (\n <span\n data-tid={PopupMenuDataTids.caption}\n className={styles.caption()}\n ref={(element) => (this.captionWrapper = element)}\n >\n {this.passPropsToCaption(caption)}\n </span>\n );\n }\n\n return (\n <span\n data-tid={PopupMenuDataTids.caption}\n onClick={this.handleCaptionClick}\n onKeyDown={this.handleCaptionKeyDown}\n ref={(element) => (this.captionWrapper = element)}\n className={styles.caption()}\n >\n {this.passPropsToCaption(this.props.caption)}\n </span>\n );\n };\n\n private hideMenuWithoutFocusing = () => this.hideMenu();\n\n private getPositions(): Readonly<PopupPositionsType[]> {\n const positions = this.getProps().positions;\n if (positions && isValidPositions(positions)) {\n return positions;\n }\n\n return Positions;\n }\n\n private showMenu = (firstItemShouldBeSelected?: boolean): void => {\n this.saveFocus();\n this.setState(\n {\n menuVisible: true,\n firstItemShouldBeSelected,\n },\n () => {\n this.handleChangeMenuVisible(false);\n },\n );\n };\n\n private hideMenu = (restoreFocus?: boolean): void => {\n this.setState(\n {\n menuVisible: false,\n firstItemShouldBeSelected: false,\n },\n () => {\n this.handleChangeMenuVisible(!!restoreFocus);\n },\n );\n };\n\n private toggleMenu = (): void => {\n this.state.menuVisible ? this.hideMenu() : this.showMenu();\n };\n\n private handleCaptionClick = (): void => {\n this.toggleMenu();\n };\n\n private handleCaptionKeyDown = (e: React.KeyboardEvent<HTMLElement>): void => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n this.showMenu(true);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (isKeyEscape(e)) {\n const restoreFocus = true;\n this.hideMenu(restoreFocus);\n }\n };\n\n private saveFocus = (): void => {\n if (globalObject.document) {\n this.savedFocusableElement = globalObject.document.activeElement as HTMLElement;\n }\n };\n\n private restoreFocus = (): void => {\n if (this.savedFocusableElement) {\n this.savedFocusableElement.focus();\n this.savedFocusableElement = null;\n }\n };\n\n private handleChangeMenuVisible = (focusShouldBeRestored: boolean): void => {\n if (focusShouldBeRestored) {\n this.restoreFocus();\n }\n\n if (this.state.menuVisible && this.props.onOpen) {\n this.props.onOpen();\n }\n\n if (!this.state.menuVisible && this.props.onClose) {\n this.props.onClose();\n }\n\n if (typeof this.props.onChangeMenuState === 'function') {\n this.props.onChangeMenuState(this.state.menuVisible, focusShouldBeRestored);\n }\n };\n\n private handleItemSelection = (event: React.SyntheticEvent<HTMLElement>): void => {\n if (event.isDefaultPrevented()) {\n return;\n }\n\n if (event.type === 'keydown') {\n event.preventDefault();\n }\n\n const restoreFocus = event.type === 'keydown';\n this.hideMenu(restoreFocus);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,6 @@
1
- "use strict";exports.__esModule = true;exports.isValidPositions = void 0;var _currentEnvironment = require("../../lib/currentEnvironment");
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.isValidPositions = void 0;var _warning = _interopRequireDefault(require("warning"));
2
+
3
+ var _currentEnvironment = require("../../lib/currentEnvironment");
2
4
 
3
5
  var _Popup = require("../Popup");
4
6
 
@@ -16,6 +18,7 @@ var isValidPositions = exports.isValidPositions = function isValidPositions(posi
16
18
  return true;
17
19
  }
18
20
 
19
- throw new Error("Unxpected position \"" + item + "\"");
21
+ (0, _warning.default)(false, "Unexpected position \"" + item + "\"");
22
+ return false;
20
23
  });
21
24
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_currentEnvironment","require","_Popup","isValidPosition","position","PopupPositions","includes","isValidPositions","exports","positions","every","item","isProductionEnv","Error"],"sources":["validatePositions.ts"],"sourcesContent":["import { isProductionEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../Popup';\nimport { PopupPositions } from '../Popup';\n\nconst isValidPosition = (position: PopupPositionsType): boolean => {\n return PopupPositions.includes(position);\n};\n\nexport const isValidPositions = (positions: PopupPositionsType[]): boolean => {\n return positions.every((item) => {\n if (isProductionEnv) {\n return isValidPosition(item);\n }\n\n if (isValidPosition(item)) {\n return true;\n }\n\n throw new Error(`Unxpected position \"${item}\"`);\n });\n};\n"],"mappings":"yEAAA,IAAAA,mBAAA,GAAAC,OAAA;;AAEA,IAAAC,MAAA,GAAAD,OAAA;;AAEA,IAAME,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,QAA4B,EAAc;EACjE,OAAOC,qBAAc,CAACC,QAAQ,CAACF,QAAQ,CAAC;AAC1C,CAAC;;AAEM,IAAMG,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAIE,SAA+B,EAAc;EAC5E,OAAOA,SAAS,CAACC,KAAK,CAAC,UAACC,IAAI,EAAK;IAC/B,IAAIC,mCAAe,EAAE;MACnB,OAAOT,eAAe,CAACQ,IAAI,CAAC;IAC9B;;IAEA,IAAIR,eAAe,CAACQ,IAAI,CAAC,EAAE;MACzB,OAAO,IAAI;IACb;;IAEA,MAAM,IAAIE,KAAK,2BAAwBF,IAAI,OAAG,CAAC;EACjD,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_warning","_interopRequireDefault","require","_currentEnvironment","_Popup","isValidPosition","position","PopupPositions","includes","isValidPositions","exports","positions","every","item","isProductionEnv","warning"],"sources":["validatePositions.ts"],"sourcesContent":["import warning from 'warning';\n\nimport { isProductionEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../Popup';\nimport { PopupPositions } from '../Popup';\n\nconst isValidPosition = (position: PopupPositionsType): boolean => {\n return PopupPositions.includes(position);\n};\n\nexport const isValidPositions = (positions: PopupPositionsType[]): boolean => {\n return positions.every((item) => {\n if (isProductionEnv) {\n return isValidPosition(item);\n }\n\n if (isValidPosition(item)) {\n return true;\n }\n\n warning(false, `Unexpected position \"${item}\"`);\n return false;\n });\n};\n"],"mappings":"sKAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,mBAAA,GAAAD,OAAA;;AAEA,IAAAE,MAAA,GAAAF,OAAA;;AAEA,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,QAA4B,EAAc;EACjE,OAAOC,qBAAc,CAACC,QAAQ,CAACF,QAAQ,CAAC;AAC1C,CAAC;;AAEM,IAAMG,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAIE,SAA+B,EAAc;EAC5E,OAAOA,SAAS,CAACC,KAAK,CAAC,UAACC,IAAI,EAAK;IAC/B,IAAIC,mCAAe,EAAE;MACnB,OAAOT,eAAe,CAACQ,IAAI,CAAC;IAC9B;;IAEA,IAAIR,eAAe,CAACQ,IAAI,CAAC,EAAE;MACzB,OAAO,IAAI;IACb;;IAEA,IAAAE,gBAAO,EAAC,KAAK,6BAA0BF,IAAI,OAAG,CAAC;IAC/C,OAAO,KAAK;EACd,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
@@ -1,5 +1,4 @@
1
1
  import React from 'react';
2
- import propTypes from 'prop-types';
3
2
  import type { Nullable } from '../../typings/utility-types';
4
3
  import type { PortalProps, RenderContainerProps } from './RenderContainerTypes';
5
4
  interface RenderInnerContainerProps extends RenderContainerProps {
@@ -8,11 +7,6 @@ interface RenderInnerContainerProps extends RenderContainerProps {
8
7
  }
9
8
  export declare const Portal: {
10
9
  ({ container, rt_rootID, children }: PortalProps): React.JSX.Element;
11
- propTypes: {
12
- container: propTypes.Requireable<HTMLElement>;
13
- rt_rootID: propTypes.Validator<string>;
14
- children: propTypes.Validator<NonNullable<propTypes.ReactNodeLike>>;
15
- };
16
10
  __KONTUR_REACT_UI__: string;
17
11
  displayName: string;
18
12
  };
@@ -1,10 +1,7 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.RenderInnerContainer = exports.Portal = void 0;var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _reactDom = _interopRequireDefault(require("react-dom"));
3
- var _propTypes = _interopRequireDefault(require("prop-types"));
4
- var _globalObject = require("@skbkontur/global-object");
5
3
 
6
4
 
7
- var _SSRSafe = require("../../lib/SSRSafe");
8
5
 
9
6
 
10
7
  var _RenderContainer = require("./RenderContainer");
@@ -67,11 +64,5 @@ RenderInnerContainer = exports.RenderInnerContainer = /*#__PURE__*/function (_Re
67
64
  };return RenderInnerContainer;}(_react.default.Component);RenderInnerContainer.__KONTUR_REACT_UI__ = 'RenderInnerContainer';RenderInnerContainer.displayName = 'RenderInnerContainer';
68
65
 
69
66
 
70
- Portal.propTypes = {
71
- container: (0, _SSRSafe.safePropTypesInstanceOf)(_globalObject.globalObject.HTMLElement),
72
- rt_rootID: _propTypes.default.string.isRequired,
73
- children: _propTypes.default.node.isRequired
74
- };
75
-
76
67
  Portal.__KONTUR_REACT_UI__ = 'Portal';
77
68
  Portal.displayName = 'Portal';
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactDom","_propTypes","_globalObject","_SSRSafe","_RenderContainer","SSRPlaceholder","default","createElement","Portal","exports","_ref","_ref2","container","rt_rootID","children","Fragment","ReactDOM","createPortal","PORTAL_INLET_ATTR","RenderInnerContainer","_React$Component","apply","arguments","_inheritsLoose2","_proto","prototype","render","_this$props","props","anchor","domContainer","rootId","inner","key","React","Component","__KONTUR_REACT_UI__","displayName","propTypes","safePropTypesInstanceOf","globalObject","HTMLElement","string","isRequired","node"],"sources":["RenderInnerContainer.tsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport propTypes from 'prop-types';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { Nullable } from '../../typings/utility-types';\nimport { safePropTypesInstanceOf } from '../../lib/SSRSafe';\n\nimport type { PortalProps, RenderContainerProps } from './RenderContainerTypes';\nimport { PORTAL_INLET_ATTR } from './RenderContainer';\n\ninterface RenderInnerContainerProps extends RenderContainerProps {\n domContainer: Nullable<HTMLElement>;\n rootId: string;\n}\n\n// Заглушка нужна для корректной гидрации порталов после SSR,\n// которую реакт сам пока не поддерживает.\n// @see https://github.com/facebook/react/issues/13097\n// А также для вставки актуального render-container-id на клиенте.\n//\n// Дело в том, что во время гидрации, структура HTML на сервере\n// и на клиенте должна совпадать, иначе возможны артефакты.\n// Алгоритм там примерно такой. Клиент во время гидрации идет\n// по этим двум деревьям и сравнивает узлы. Элементы разных типов\n// он подменяет на свои. А те, что совпадают, он оставляет как есть\n// вместе со всеми атрибутами, навесив только обработчики событий.\n//\n// Поэтому, для портала, который рендерится только на клиенте,\n// нужно использовать серверную заглушку, чтобы при гидрации\n// он не испортил какой-то другой элемент. Null не подходит,\n// т.к. на сервере он тоже не рендерится.\n// А элемент с render-container-id нужно отрендерить с нуля.\n\nconst SSRPlaceholder = () => <script data-id=\"ssr-placeholder\" />;\n\nexport const Portal = ({ container, rt_rootID, children }: PortalProps) => {\n // container exists only in browser\n return (\n <React.Fragment>\n {container ? ReactDOM.createPortal(children, container) : <SSRPlaceholder />}\n {container ? <noscript {...{ [PORTAL_INLET_ATTR]: rt_rootID }} /> : <SSRPlaceholder />}\n </React.Fragment>\n );\n};\n\nexport class RenderInnerContainer extends React.Component<RenderInnerContainerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderInnerContainer';\n public static displayName = 'RenderInnerContainer';\n\n public render() {\n const { anchor, children, domContainer, rootId } = this.props;\n let inner = anchor;\n\n if (children) {\n inner = (\n <React.Fragment>\n {anchor}\n <Portal key=\"portal-ref\" rt_rootID={rootId} container={domContainer}>\n {children}\n </Portal>\n </React.Fragment>\n );\n }\n\n return inner;\n }\n}\n\nPortal.propTypes = {\n container: safePropTypesInstanceOf(globalObject.HTMLElement),\n rt_rootID: propTypes.string.isRequired,\n children: propTypes.node.isRequired,\n};\n\nPortal.__KONTUR_REACT_UI__ = 'Portal';\nPortal.displayName = 'Portal';\n"],"mappings":"yRAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;;;AAGA,IAAAI,QAAA,GAAAJ,OAAA;;;AAGA,IAAAK,gBAAA,GAAAL,OAAA;;;;;;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAA,uBAASR,MAAA,CAAAS,OAAA,CAAAC,aAAA,aAAQ,WAAQ,iBAAiB,EAAE,CAAC;;AAE1D,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAAE,IAAA,EAAwD,KAAAC,KAAA,KAAlDC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS,CAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;EACrD;EACA;IACEjB,MAAA,CAAAS,OAAA,CAAAC,aAAA,CAACV,MAAA,CAAAS,OAAK,CAACS,QAAQ;IACZH,SAAS,gBAAGI,iBAAQ,CAACC,YAAY,CAACH,QAAQ,EAAEF,SAAS,CAAC,gBAAGf,MAAA,CAAAS,OAAA,CAAAC,aAAA,CAACF,cAAc,MAAE,CAAC;IAC3EO,SAAS,gBAAGf,MAAA,CAAAS,OAAA,CAAAC,aAAA,cAAAI,KAAA,OAAAA,KAAA,CAAiBO,kCAAiB,IAAGL,SAAS,EAAAF,KAAA,CAAK,CAAC,gBAAGd,MAAA,CAAAS,OAAA,CAAAC,aAAA,CAACF,cAAc,MAAE;IACvE,CAAC;;AAErB,CAAC,CAAC;;AAEWc,oBAAoB,GAAAV,OAAA,CAAAU,oBAAA,0BAAAC,gBAAA,YAAAD,qBAAA,UAAAC,gBAAA,CAAAC,KAAA,OAAAC,SAAA,eAAAC,eAAA,CAAAjB,OAAA,EAAAa,oBAAA,EAAAC,gBAAA,MAAAI,MAAA,GAAAL,oBAAA,CAAAM,SAAA,CAAAD,MAAA;;;;EAIxBE,MAAM,GAAb,SAAAA,OAAA,EAAgB;IACd,IAAAC,WAAA,GAAmD,IAAI,CAACC,KAAK,CAArDC,MAAM,GAAAF,WAAA,CAANE,MAAM,CAAEf,QAAQ,GAAAa,WAAA,CAARb,QAAQ,CAAEgB,YAAY,GAAAH,WAAA,CAAZG,YAAY,CAAEC,MAAM,GAAAJ,WAAA,CAANI,MAAM;IAC9C,IAAIC,KAAK,GAAGH,MAAM;;IAElB,IAAIf,QAAQ,EAAE;MACZkB,KAAK;MACHnC,MAAA,CAAAS,OAAA,CAAAC,aAAA,CAACV,MAAA,CAAAS,OAAK,CAACS,QAAQ;MACZc,MAAM;MACPhC,MAAA,CAAAS,OAAA,CAAAC,aAAA,CAACC,MAAM,IAACyB,GAAG,EAAC,YAAY,EAACpB,SAAS,EAAEkB,MAAO,EAACnB,SAAS,EAAEkB,YAAa;MACjEhB;MACK;MACM,CACjB;;IACH;;IAEA,OAAOkB,KAAK;EACd,CAAC,QAAAb,oBAAA,GApBuCe,cAAK,CAACC,SAAS,EAA5ChB,oBAAoB,CACjBiB,mBAAmB,GAAG,sBAAsB,CAD/CjB,oBAAoB,CAEjBkB,WAAW,GAAG,sBAAsB;;;AAqBpD7B,MAAM,CAAC8B,SAAS,GAAG;EACjB1B,SAAS,EAAE,IAAA2B,gCAAuB,EAACC,0BAAY,CAACC,WAAW,CAAC;EAC5D5B,SAAS,EAAEyB,kBAAS,CAACI,MAAM,CAACC,UAAU;EACtC7B,QAAQ,EAAEwB,kBAAS,CAACM,IAAI,CAACD;AAC3B,CAAC;;AAEDnC,MAAM,CAAC4B,mBAAmB,GAAG,QAAQ;AACrC5B,MAAM,CAAC6B,WAAW,GAAG,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactDom","_RenderContainer","SSRPlaceholder","default","createElement","Portal","exports","_ref","_ref2","container","rt_rootID","children","Fragment","ReactDOM","createPortal","PORTAL_INLET_ATTR","RenderInnerContainer","_React$Component","apply","arguments","_inheritsLoose2","_proto","prototype","render","_this$props","props","anchor","domContainer","rootId","inner","key","React","Component","__KONTUR_REACT_UI__","displayName"],"sources":["RenderInnerContainer.tsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport type { Nullable } from '../../typings/utility-types';\n\nimport type { PortalProps, RenderContainerProps } from './RenderContainerTypes';\nimport { PORTAL_INLET_ATTR } from './RenderContainer';\n\ninterface RenderInnerContainerProps extends RenderContainerProps {\n domContainer: Nullable<HTMLElement>;\n rootId: string;\n}\n\n// Заглушка нужна для корректной гидрации порталов после SSR,\n// которую реакт сам пока не поддерживает.\n// @see https://github.com/facebook/react/issues/13097\n// А также для вставки актуального render-container-id на клиенте.\n//\n// Дело в том, что во время гидрации, структура HTML на сервере\n// и на клиенте должна совпадать, иначе возможны артефакты.\n// Алгоритм там примерно такой. Клиент во время гидрации идет\n// по этим двум деревьям и сравнивает узлы. Элементы разных типов\n// он подменяет на свои. А те, что совпадают, он оставляет как есть\n// вместе со всеми атрибутами, навесив только обработчики событий.\n//\n// Поэтому, для портала, который рендерится только на клиенте,\n// нужно использовать серверную заглушку, чтобы при гидрации\n// он не испортил какой-то другой элемент. Null не подходит,\n// т.к. на сервере он тоже не рендерится.\n// А элемент с render-container-id нужно отрендерить с нуля.\n\nconst SSRPlaceholder = () => <script data-id=\"ssr-placeholder\" />;\n\nexport const Portal = ({ container, rt_rootID, children }: PortalProps) => {\n // container exists only in browser\n return (\n <React.Fragment>\n {container ? ReactDOM.createPortal(children, container) : <SSRPlaceholder />}\n {container ? <noscript {...{ [PORTAL_INLET_ATTR]: rt_rootID }} /> : <SSRPlaceholder />}\n </React.Fragment>\n );\n};\n\nexport class RenderInnerContainer extends React.Component<RenderInnerContainerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderInnerContainer';\n public static displayName = 'RenderInnerContainer';\n\n public render() {\n const { anchor, children, domContainer, rootId } = this.props;\n let inner = anchor;\n\n if (children) {\n inner = (\n <React.Fragment>\n {anchor}\n <Portal key=\"portal-ref\" rt_rootID={rootId} container={domContainer}>\n {children}\n </Portal>\n </React.Fragment>\n );\n }\n\n return inner;\n }\n}\n\nPortal.__KONTUR_REACT_UI__ = 'Portal';\nPortal.displayName = 'Portal';\n"],"mappings":"yRAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;;;;;AAKA,IAAAE,gBAAA,GAAAF,OAAA;;;;;;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAA,uBAASL,MAAA,CAAAM,OAAA,CAAAC,aAAA,aAAQ,WAAQ,iBAAiB,EAAE,CAAC;;AAE1D,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,SAATA,MAAMA,CAAAE,IAAA,EAAwD,KAAAC,KAAA,KAAlDC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS,CAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;EACrD;EACA;IACEd,MAAA,CAAAM,OAAA,CAAAC,aAAA,CAACP,MAAA,CAAAM,OAAK,CAACS,QAAQ;IACZH,SAAS,gBAAGI,iBAAQ,CAACC,YAAY,CAACH,QAAQ,EAAEF,SAAS,CAAC,gBAAGZ,MAAA,CAAAM,OAAA,CAAAC,aAAA,CAACF,cAAc,MAAE,CAAC;IAC3EO,SAAS,gBAAGZ,MAAA,CAAAM,OAAA,CAAAC,aAAA,cAAAI,KAAA,OAAAA,KAAA,CAAiBO,kCAAiB,IAAGL,SAAS,EAAAF,KAAA,CAAK,CAAC,gBAAGX,MAAA,CAAAM,OAAA,CAAAC,aAAA,CAACF,cAAc,MAAE;IACvE,CAAC;;AAErB,CAAC,CAAC;;AAEWc,oBAAoB,GAAAV,OAAA,CAAAU,oBAAA,0BAAAC,gBAAA,YAAAD,qBAAA,UAAAC,gBAAA,CAAAC,KAAA,OAAAC,SAAA,eAAAC,eAAA,CAAAjB,OAAA,EAAAa,oBAAA,EAAAC,gBAAA,MAAAI,MAAA,GAAAL,oBAAA,CAAAM,SAAA,CAAAD,MAAA;;;;EAIxBE,MAAM,GAAb,SAAAA,OAAA,EAAgB;IACd,IAAAC,WAAA,GAAmD,IAAI,CAACC,KAAK,CAArDC,MAAM,GAAAF,WAAA,CAANE,MAAM,CAAEf,QAAQ,GAAAa,WAAA,CAARb,QAAQ,CAAEgB,YAAY,GAAAH,WAAA,CAAZG,YAAY,CAAEC,MAAM,GAAAJ,WAAA,CAANI,MAAM;IAC9C,IAAIC,KAAK,GAAGH,MAAM;;IAElB,IAAIf,QAAQ,EAAE;MACZkB,KAAK;MACHhC,MAAA,CAAAM,OAAA,CAAAC,aAAA,CAACP,MAAA,CAAAM,OAAK,CAACS,QAAQ;MACZc,MAAM;MACP7B,MAAA,CAAAM,OAAA,CAAAC,aAAA,CAACC,MAAM,IAACyB,GAAG,EAAC,YAAY,EAACpB,SAAS,EAAEkB,MAAO,EAACnB,SAAS,EAAEkB,YAAa;MACjEhB;MACK;MACM,CACjB;;IACH;;IAEA,OAAOkB,KAAK;EACd,CAAC,QAAAb,oBAAA,GApBuCe,cAAK,CAACC,SAAS,EAA5ChB,oBAAoB,CACjBiB,mBAAmB,GAAG,sBAAsB,CAD/CjB,oBAAoB,CAEjBkB,WAAW,GAAG,sBAAsB;;;AAqBpD7B,MAAM,CAAC4B,mBAAmB,GAAG,QAAQ;AACrC5B,MAAM,CAAC6B,WAAW,GAAG,QAAQ","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { CommonProps } from '../CommonWrapper';
3
+ import type { TGetRootNode } from '../../lib/rootNode';
3
4
  import type { Nullable } from '../../typings/utility-types';
4
5
  export interface RenderLayerProps extends CommonProps {
5
6
  children: JSX.Element;
@@ -12,12 +13,10 @@ type DefaultProps = Required<Pick<RenderLayerProps, 'active'>>;
12
13
  export declare class RenderLayer extends React.Component<RenderLayerProps> {
13
14
  static __KONTUR_REACT_UI__: string;
14
15
  static displayName: string;
15
- static propTypes: {
16
- active(props: RenderLayerProps, propName: keyof RenderLayerProps, componentName: string): Error | undefined;
17
- };
18
16
  static defaultProps: DefaultProps;
19
17
  private getProps;
20
18
  private focusOutsideListenerToken;
19
+ getRootNode: TGetRootNode;
21
20
  private setRootNode;
22
21
  componentDidMount(): void;
23
22
  componentDidUpdate(prevProps: RenderLayerProps): void;
@@ -29,17 +29,6 @@ RenderLayer = exports.RenderLayer = (0, _rootNode.rootNode)(_class = (_RenderLay
29
29
 
30
30
 
31
31
 
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
32
  getProps = (0, _createPropsGetter.createPropsGetter)(RenderLayer.defaultProps);_this.
44
33
 
45
34
  focusOutsideListenerToken =
@@ -110,6 +99,8 @@ RenderLayer = exports.RenderLayer = (0, _rootNode.rootNode)(_class = (_RenderLay
110
99
 
111
100
 
112
101
 
102
+
103
+
113
104
 
114
105
 
115
106
 
@@ -130,4 +121,4 @@ RenderLayer = exports.RenderLayer = (0, _rootNode.rootNode)(_class = (_RenderLay
130
121
  if (_this.props.onClickOutside) {
131
122
  _this.props.onClickOutside(event);
132
123
  }
133
- };return _this;}(0, _inheritsLoose2.default)(RenderLayer, _React$Component);var _proto = RenderLayer.prototype;_proto.componentDidMount = function componentDidMount() {if (this.getProps().active) {this.attachListeners();}};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var active = this.getProps().active;if (!prevProps.active && active) {this.attachListeners();}if (prevProps.active && !active) {this.detachListeners();}};_proto.componentWillUnmount = function componentWillUnmount() {if (this.getProps().active) {this.detachListeners();}};_proto.render = function render() {return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), _react.default.Children.only(this.props.children));};_proto.getAnchorNode = function getAnchorNode() {var getAnchorElement = this.props.getAnchorElement;return getAnchorElement ? getAnchorElement() : (0, _rootNode.getRootNode)(this);};_proto.attachListeners = function attachListeners() {var _globalObject$documen;var node = this.getAnchorNode();if (!node) {return;}this.focusOutsideListenerToken = (0, _listenFocusOutside.listen)(function () {return [node];}, this.handleFocusOutside);_globalObject.globalObject.addEventListener == null || _globalObject.globalObject.addEventListener('blur', this.handleFocusOutside);(_globalObject$documen = _globalObject.globalObject.document) == null || _globalObject$documen.addEventListener('ontouchstart' in _globalObject.globalObject.document.documentElement && 'onpointerup' in _globalObject.globalObject.document.documentElement ? 'pointerup' : 'mousedown', this.handleNativeDocClick);};_proto.detachListeners = function detachListeners() {var _globalObject$documen2;if (this.focusOutsideListenerToken) {this.focusOutsideListenerToken.remove();this.focusOutsideListenerToken = null;}_globalObject.globalObject.removeEventListener == null || _globalObject.globalObject.removeEventListener('blur', this.handleFocusOutside);(_globalObject$documen2 = _globalObject.globalObject.document) == null || _globalObject$documen2.removeEventListener('ontouchstart' in _globalObject.globalObject.document.documentElement && 'onpointerup' in _globalObject.globalObject.document.documentElement ? 'pointerup' : 'mousedown', this.handleNativeDocClick);};return RenderLayer;}(_react.default.Component), _RenderLayer.__KONTUR_REACT_UI__ = 'RenderLayer', _RenderLayer.displayName = 'RenderLayer', _RenderLayer.propTypes = { active: function active(props, propName, componentName) {var active = props.active,onClickOutside = props.onClickOutside,onFocusOutside = props.onFocusOutside;if (active && !(onClickOutside || onFocusOutside)) {return new Error("[" + componentName + "]: using the component without either 'onClickOutside' or 'onFocusOutside' callback is pointless.");}} }, _RenderLayer.defaultProps = { active: true }, _RenderLayer)) || _class;
124
+ };return _this;}(0, _inheritsLoose2.default)(RenderLayer, _React$Component);var _proto = RenderLayer.prototype;_proto.componentDidMount = function componentDidMount() {if (this.getProps().active) {this.attachListeners();}};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var _this$getProps = this.getProps(),active = _this$getProps.active;if (!prevProps.active && active) {this.attachListeners();}if (prevProps.active && !active) {this.detachListeners();}};_proto.componentWillUnmount = function componentWillUnmount() {if (this.getProps().active) {this.detachListeners();}};_proto.render = function render() {return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), _react.default.Children.only(this.props.children));};_proto.getAnchorNode = function getAnchorNode() {var getAnchorElement = this.props.getAnchorElement;return getAnchorElement ? getAnchorElement() : (0, _rootNode.getRootNode)(this);};_proto.attachListeners = function attachListeners() {var _globalObject$documen;var node = this.getAnchorNode();if (!node) {return;}this.focusOutsideListenerToken = (0, _listenFocusOutside.listen)(function () {return [node];}, this.handleFocusOutside);_globalObject.globalObject.addEventListener == null || _globalObject.globalObject.addEventListener('blur', this.handleFocusOutside);(_globalObject$documen = _globalObject.globalObject.document) == null || _globalObject$documen.addEventListener('ontouchstart' in _globalObject.globalObject.document.documentElement && 'onpointerup' in _globalObject.globalObject.document.documentElement ? 'pointerup' : 'mousedown', this.handleNativeDocClick);};_proto.detachListeners = function detachListeners() {var _globalObject$documen2;if (this.focusOutsideListenerToken) {this.focusOutsideListenerToken.remove();this.focusOutsideListenerToken = null;}_globalObject.globalObject.removeEventListener == null || _globalObject.globalObject.removeEventListener('blur', this.handleFocusOutside);(_globalObject$documen2 = _globalObject.globalObject.document) == null || _globalObject$documen2.removeEventListener('ontouchstart' in _globalObject.globalObject.document.documentElement && 'onpointerup' in _globalObject.globalObject.document.documentElement ? 'pointerup' : 'mousedown', this.handleNativeDocClick);};return RenderLayer;}(_react.default.Component), _RenderLayer.__KONTUR_REACT_UI__ = 'RenderLayer', _RenderLayer.displayName = 'RenderLayer', _RenderLayer.defaultProps = { active: true }, _RenderLayer)) || _class;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_listenFocusOutside","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_class","_RenderLayer","RenderLayer","exports","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","focusOutsideListenerToken","handleFocusOutside","event","props","onFocusOutside","handleNativeDocClick","target","srcElement","node","getAnchorNode","isInstanceOf","globalObject","Element","containsTargetOrRenderContainer","onClickOutside","_inheritsLoose2","default","_proto","prototype","componentDidMount","active","attachListeners","componentDidUpdate","prevProps","detachListeners","componentWillUnmount","render","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","React","Children","only","children","getAnchorElement","getRootNode","_globalObject$documen","listenFocusOutside","addEventListener","document","documentElement","_globalObject$documen2","remove","removeEventListener","Component","__KONTUR_REACT_UI__","displayName","propTypes","propName","componentName","Error"],"sources":["RenderLayer.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { listen as listenFocusOutside, containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport type { Nullable } from '../../typings/utility-types';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nexport interface RenderLayerProps extends CommonProps {\n children: JSX.Element;\n onClickOutside?: (e: Event) => void;\n onFocusOutside?: (e: Event) => void;\n active?: boolean;\n getAnchorElement?: () => Nullable<Element>;\n}\n\ntype DefaultProps = Required<Pick<RenderLayerProps, 'active'>>;\n\n@rootNode\nexport class RenderLayer extends React.Component<RenderLayerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderLayer';\n public static displayName = 'RenderLayer';\n\n public static propTypes = {\n active(props: RenderLayerProps, propName: keyof RenderLayerProps, componentName: string) {\n const { active, onClickOutside, onFocusOutside } = props;\n if (active && !(onClickOutside || onFocusOutside)) {\n return new Error(\n `[${componentName}]: using the component without either 'onClickOutside' or 'onFocusOutside' callback is pointless.`,\n );\n }\n },\n };\n\n public static defaultProps: DefaultProps = {\n active: true,\n };\n\n private getProps = createPropsGetter(RenderLayer.defaultProps);\n\n private focusOutsideListenerToken: {\n remove: () => void;\n } | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.getProps().active) {\n this.attachListeners();\n }\n }\n\n public componentDidUpdate(prevProps: RenderLayerProps) {\n const active = this.getProps().active;\n if (!prevProps.active && active) {\n this.attachListeners();\n }\n if (prevProps.active && !active) {\n this.detachListeners();\n }\n }\n\n public componentWillUnmount() {\n if (this.getProps().active) {\n this.detachListeners();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {React.Children.only(this.props.children)}\n </CommonWrapper>\n );\n }\n\n private getAnchorNode(): Nullable<Element> {\n const { getAnchorElement } = this.props;\n return getAnchorElement ? getAnchorElement() : getRootNode(this);\n }\n\n private attachListeners() {\n const node = this.getAnchorNode();\n if (!node) {\n return;\n }\n\n this.focusOutsideListenerToken = listenFocusOutside(() => [node], this.handleFocusOutside);\n globalObject.addEventListener?.('blur', this.handleFocusOutside);\n globalObject.document?.addEventListener(\n 'ontouchstart' in globalObject.document.documentElement && 'onpointerup' in globalObject.document.documentElement\n ? 'pointerup'\n : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private detachListeners() {\n if (this.focusOutsideListenerToken) {\n this.focusOutsideListenerToken.remove();\n this.focusOutsideListenerToken = null;\n }\n\n globalObject.removeEventListener?.('blur', this.handleFocusOutside);\n globalObject.document?.removeEventListener(\n 'ontouchstart' in globalObject.document.documentElement && 'onpointerup' in globalObject.document.documentElement\n ? 'pointerup'\n : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private handleFocusOutside = (event: Event) => {\n if (this.props.onFocusOutside) {\n this.props.onFocusOutside(event);\n }\n };\n\n private handleNativeDocClick = (event: Event) => {\n const target = event.target || event.srcElement;\n const node = this.getAnchorNode();\n\n if (!node || (isInstanceOf(target, globalObject.Element) && containsTargetOrRenderContainer(target)(node))) {\n return;\n }\n\n if (this.props.onClickOutside) {\n this.props.onClickOutside(event);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_listenFocusOutside","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_class","_RenderLayer","RenderLayer","exports","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","focusOutsideListenerToken","handleFocusOutside","event","props","onFocusOutside","handleNativeDocClick","target","srcElement","node","getAnchorNode","isInstanceOf","globalObject","Element","containsTargetOrRenderContainer","onClickOutside","_inheritsLoose2","default","_proto","prototype","componentDidMount","active","attachListeners","componentDidUpdate","prevProps","_this$getProps","detachListeners","componentWillUnmount","render","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","React","Children","only","children","getAnchorElement","getRootNode","_globalObject$documen","listenFocusOutside","addEventListener","document","documentElement","_globalObject$documen2","remove","removeEventListener","Component","__KONTUR_REACT_UI__","displayName"],"sources":["RenderLayer.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { listen as listenFocusOutside, containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport type { Nullable } from '../../typings/utility-types';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nexport interface RenderLayerProps extends CommonProps {\n children: JSX.Element;\n onClickOutside?: (e: Event) => void;\n onFocusOutside?: (e: Event) => void;\n active?: boolean;\n getAnchorElement?: () => Nullable<Element>;\n}\n\ntype DefaultProps = Required<Pick<RenderLayerProps, 'active'>>;\n\n@rootNode\nexport class RenderLayer extends React.Component<RenderLayerProps> {\n public static __KONTUR_REACT_UI__ = 'RenderLayer';\n public static displayName = 'RenderLayer';\n\n public static defaultProps: DefaultProps = {\n active: true,\n };\n\n private getProps = createPropsGetter(RenderLayer.defaultProps);\n\n private focusOutsideListenerToken: {\n remove: () => void;\n } | null = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.getProps().active) {\n this.attachListeners();\n }\n }\n\n public componentDidUpdate(prevProps: RenderLayerProps) {\n const { active } = this.getProps();\n\n if (!prevProps.active && active) {\n this.attachListeners();\n }\n if (prevProps.active && !active) {\n this.detachListeners();\n }\n }\n\n public componentWillUnmount() {\n if (this.getProps().active) {\n this.detachListeners();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {React.Children.only(this.props.children)}\n </CommonWrapper>\n );\n }\n\n private getAnchorNode(): Nullable<Element> {\n const { getAnchorElement } = this.props;\n return getAnchorElement ? getAnchorElement() : getRootNode(this);\n }\n\n private attachListeners() {\n const node = this.getAnchorNode();\n if (!node) {\n return;\n }\n\n this.focusOutsideListenerToken = listenFocusOutside(() => [node], this.handleFocusOutside);\n globalObject.addEventListener?.('blur', this.handleFocusOutside);\n globalObject.document?.addEventListener(\n 'ontouchstart' in globalObject.document.documentElement && 'onpointerup' in globalObject.document.documentElement\n ? 'pointerup'\n : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private detachListeners() {\n if (this.focusOutsideListenerToken) {\n this.focusOutsideListenerToken.remove();\n this.focusOutsideListenerToken = null;\n }\n\n globalObject.removeEventListener?.('blur', this.handleFocusOutside);\n globalObject.document?.removeEventListener(\n 'ontouchstart' in globalObject.document.documentElement && 'onpointerup' in globalObject.document.documentElement\n ? 'pointerup'\n : 'mousedown',\n this.handleNativeDocClick,\n );\n }\n\n private handleFocusOutside = (event: Event) => {\n if (this.props.onFocusOutside) {\n this.props.onFocusOutside(event);\n }\n };\n\n private handleNativeDocClick = (event: Event) => {\n const target = event.target || event.srcElement;\n const node = this.getAnchorNode();\n\n if (!node || (isInstanceOf(target, globalObject.Element) && containsTargetOrRenderContainer(target)(node))) {\n return;\n }\n\n if (this.props.onClickOutside) {\n this.props.onClickOutside(event);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  export interface ResizeDetectorProps {
3
3
  onResize?: (event: UIEvent) => void;
4
4
  fullHeight?: boolean;
5
+ alignBaseline?: boolean;
5
6
  }
6
7
  export declare class ResizeDetector extends React.Component<React.PropsWithChildren<ResizeDetectorProps>> {
7
8
  static __KONTUR_REACT_UI__: string;
@@ -9,6 +9,7 @@ var _ResizeDetector2 = require("./ResizeDetector.styles");var
9
9
 
10
10
 
11
11
 
12
+
12
13
  ResizeDetector = exports.ResizeDetector = /*#__PURE__*/function (_React$Component) {function ResizeDetector() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
13
14
 
14
15
 
@@ -28,6 +29,12 @@ ResizeDetector = exports.ResizeDetector = /*#__PURE__*/function (_React$Componen
28
29
 
29
30
 
30
31
 
32
+
33
+
34
+
35
+
36
+
37
+
31
38
 
32
39
 
33
40
 
@@ -42,4 +49,4 @@ ResizeDetector = exports.ResizeDetector = /*#__PURE__*/function (_React$Componen
42
49
  if (iframe && iframe.contentWindow) {
43
50
  _this.iframeWindow = iframe.contentWindow;
44
51
  }
45
- };return _this;}(0, _inheritsLoose2.default)(ResizeDetector, _React$Component);var _proto = ResizeDetector.prototype;_proto.componentDidMount = function componentDidMount() {if (this.iframeWindow) {this.iframeWindow.addEventListener('resize', this.handleResize);}};_proto.render = function render() {var _cx;return /*#__PURE__*/_react.default.createElement("div", { className: _ResizeDetector2.styles.root() }, /*#__PURE__*/_react.default.createElement("iframe", { title: "resizeDetector", ref: this.iframeRef, className: _ResizeDetector2.styles.iframe(), tabIndex: -1 }), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx = {}, _cx[_ResizeDetector2.styles.content()] = true, _cx[_ResizeDetector2.styles.fullHeight()] = this.props.fullHeight, _cx)) }, this.props.children));};return ResizeDetector;}(_react.default.Component);ResizeDetector.__KONTUR_REACT_UI__ = 'ResizeDetector';ResizeDetector.displayName = 'ResizeDetector';
52
+ };return _this;}(0, _inheritsLoose2.default)(ResizeDetector, _React$Component);var _proto = ResizeDetector.prototype;_proto.componentDidMount = function componentDidMount() {if (this.iframeWindow) {this.iframeWindow.addEventListener('resize', this.handleResize);}};_proto.render = function render() {var _cx;return /*#__PURE__*/_react.default.createElement("div", { className: _ResizeDetector2.styles.root() }, /*#__PURE__*/_react.default.createElement("iframe", { title: "resizeDetector", ref: this.iframeRef, className: _ResizeDetector2.styles.iframe(), tabIndex: -1 }), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx = {}, _cx[_ResizeDetector2.styles.content()] = true, _cx[_ResizeDetector2.styles.fullHeight()] = this.props.fullHeight, _cx[_ResizeDetector2.styles.flex()] = this.props.alignBaseline, _cx)) }, this.props.children));};return ResizeDetector;}(_react.default.Component);ResizeDetector.__KONTUR_REACT_UI__ = 'ResizeDetector';ResizeDetector.displayName = 'ResizeDetector';
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_Emotion","_ResizeDetector2","ResizeDetector","exports","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","iframeWindow","handleResize","event","props","onResize","iframeRef","iframe","contentWindow","_inheritsLoose2","default","_proto","prototype","componentDidMount","addEventListener","render","_cx","createElement","className","styles","root","title","ref","tabIndex","cx","content","fullHeight","children","React","Component","__KONTUR_REACT_UI__","displayName"],"sources":["ResizeDetector.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './ResizeDetector.styles';\n\nexport interface ResizeDetectorProps {\n onResize?: (event: UIEvent) => void;\n fullHeight?: boolean;\n}\n\nexport class ResizeDetector extends React.Component<React.PropsWithChildren<ResizeDetectorProps>> {\n public static __KONTUR_REACT_UI__ = 'ResizeDetector';\n public static displayName = 'ResizeDetector';\n\n private iframeWindow: Window | null = null;\n\n public componentDidMount() {\n if (this.iframeWindow) {\n this.iframeWindow.addEventListener('resize', this.handleResize);\n }\n }\n\n public render() {\n return (\n <div className={styles.root()}>\n <iframe title=\"resizeDetector\" ref={this.iframeRef} className={styles.iframe()} tabIndex={-1} />\n <div className={cx({ [styles.content()]: true, [styles.fullHeight()]: this.props.fullHeight })}>\n {this.props.children}\n </div>\n </div>\n );\n }\n\n private handleResize = (event: UIEvent) => {\n if (this.props.onResize) {\n this.props.onResize(event);\n }\n };\n\n private iframeRef = (iframe: HTMLIFrameElement) => {\n if (iframe && iframe.contentWindow) {\n this.iframeWindow = iframe.contentWindow;\n }\n };\n}\n"],"mappings":"kQAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,QAAA,GAAAD,OAAA;;AAEA,IAAAE,gBAAA,GAAAF,OAAA,4BAAiD;;;;;;;AAOpCG,cAAc,GAAAC,OAAA,CAAAD,cAAA,0BAAAE,gBAAA,YAAAF,eAAA,OAAAG,KAAA,UAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,KAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GAAAN,KAAA,GAAAD,gBAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,gBAAA,SAAAU,MAAA,CAAAL,IAAA,WAAAJ,KAAA;;;;IAIjBU,YAAY,GAAkB,IAAI,CAAAV,KAAA;;;;;;;;;;;;;;;;;;;IAmBlCW,YAAY,GAAG,UAACC,KAAc,EAAK;MACzC,IAAIZ,KAAA,CAAKa,KAAK,CAACC,QAAQ,EAAE;QACvBd,KAAA,CAAKa,KAAK,CAACC,QAAQ,CAACF,KAAK,CAAC;MAC5B;IACF,CAAC,CAAAZ,KAAA;;IAEOe,SAAS,GAAG,UAACC,MAAyB,EAAK;MACjD,IAAIA,MAAM,IAAIA,MAAM,CAACC,aAAa,EAAE;QAClCjB,KAAA,CAAKU,YAAY,GAAGM,MAAM,CAACC,aAAa;MAC1C;IACF,CAAC,QAAAjB,KAAA,MAAAkB,eAAA,CAAAC,OAAA,EAAAtB,cAAA,EAAAE,gBAAA,MAAAqB,MAAA,GAAAvB,cAAA,CAAAwB,SAAA,CAAAD,MAAA,CA3BME,iBAAiB,GAAxB,SAAAA,kBAAA,EAA2B,CACzB,IAAI,IAAI,CAACZ,YAAY,EAAE,CACrB,IAAI,CAACA,YAAY,CAACa,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACZ,YAAY,CAAC,CACjE,CACF,CAAC,CAAAS,MAAA,CAEMI,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,GAAA,CACd,oBACEjC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,UAAKC,SAAS,EAAEC,uBAAM,CAACC,IAAI,CAAC,CAAE,iBAC5BrC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,aAAQI,KAAK,EAAC,gBAAgB,EAACC,GAAG,EAAE,IAAI,CAAChB,SAAU,EAACY,SAAS,EAAEC,uBAAM,CAACZ,MAAM,CAAC,CAAE,EAACgB,QAAQ,EAAE,CAAC,CAAE,EAAE,CAAC,eAChGxC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,UAAKC,SAAS,EAAE,IAAAM,WAAE,GAAAR,GAAA,OAAAA,GAAA,CAAIG,uBAAM,CAACM,OAAO,CAAC,CAAC,IAAG,IAAI,EAAAT,GAAA,CAAGG,uBAAM,CAACO,UAAU,CAAC,CAAC,IAAG,IAAI,CAACtB,KAAK,CAACsB,UAAU,EAAAV,GAAA,CAAE,CAAE,IAC5F,IAAI,CAACZ,KAAK,CAACuB,QACT,CACF,CAAC,CAEV,CAAC,QAAAvC,cAAA,GArBiCwC,cAAK,CAACC,SAAS,EAAtCzC,cAAc,CACX0C,mBAAmB,GAAG,gBAAgB,CADzC1C,cAAc,CAEX2C,WAAW,GAAG,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Emotion","_ResizeDetector2","ResizeDetector","exports","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","iframeWindow","handleResize","event","props","onResize","iframeRef","iframe","contentWindow","_inheritsLoose2","default","_proto","prototype","componentDidMount","addEventListener","render","_cx","createElement","className","styles","root","title","ref","tabIndex","cx","content","fullHeight","flex","alignBaseline","children","React","Component","__KONTUR_REACT_UI__","displayName"],"sources":["ResizeDetector.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './ResizeDetector.styles';\n\nexport interface ResizeDetectorProps {\n onResize?: (event: UIEvent) => void;\n fullHeight?: boolean;\n alignBaseline?: boolean;\n}\n\nexport class ResizeDetector extends React.Component<React.PropsWithChildren<ResizeDetectorProps>> {\n public static __KONTUR_REACT_UI__ = 'ResizeDetector';\n public static displayName = 'ResizeDetector';\n\n private iframeWindow: Window | null = null;\n\n public componentDidMount() {\n if (this.iframeWindow) {\n this.iframeWindow.addEventListener('resize', this.handleResize);\n }\n }\n\n public render() {\n return (\n <div className={styles.root()}>\n <iframe title=\"resizeDetector\" ref={this.iframeRef} className={styles.iframe()} tabIndex={-1} />\n <div\n className={cx({\n [styles.content()]: true,\n [styles.fullHeight()]: this.props.fullHeight,\n [styles.flex()]: this.props.alignBaseline,\n })}\n >\n {this.props.children}\n </div>\n </div>\n );\n }\n\n private handleResize = (event: UIEvent) => {\n if (this.props.onResize) {\n this.props.onResize(event);\n }\n };\n\n private iframeRef = (iframe: HTMLIFrameElement) => {\n if (iframe && iframe.contentWindow) {\n this.iframeWindow = iframe.contentWindow;\n }\n };\n}\n"],"mappings":"kQAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,QAAA,GAAAD,OAAA;;AAEA,IAAAE,gBAAA,GAAAF,OAAA,4BAAiD;;;;;;;;AAQpCG,cAAc,GAAAC,OAAA,CAAAD,cAAA,0BAAAE,gBAAA,YAAAF,eAAA,OAAAG,KAAA,UAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,KAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GAAAN,KAAA,GAAAD,gBAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,gBAAA,SAAAU,MAAA,CAAAL,IAAA,WAAAJ,KAAA;;;;IAIjBU,YAAY,GAAkB,IAAI,CAAAV,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;IAyBlCW,YAAY,GAAG,UAACC,KAAc,EAAK;MACzC,IAAIZ,KAAA,CAAKa,KAAK,CAACC,QAAQ,EAAE;QACvBd,KAAA,CAAKa,KAAK,CAACC,QAAQ,CAACF,KAAK,CAAC;MAC5B;IACF,CAAC,CAAAZ,KAAA;;IAEOe,SAAS,GAAG,UAACC,MAAyB,EAAK;MACjD,IAAIA,MAAM,IAAIA,MAAM,CAACC,aAAa,EAAE;QAClCjB,KAAA,CAAKU,YAAY,GAAGM,MAAM,CAACC,aAAa;MAC1C;IACF,CAAC,QAAAjB,KAAA,MAAAkB,eAAA,CAAAC,OAAA,EAAAtB,cAAA,EAAAE,gBAAA,MAAAqB,MAAA,GAAAvB,cAAA,CAAAwB,SAAA,CAAAD,MAAA,CAjCME,iBAAiB,GAAxB,SAAAA,kBAAA,EAA2B,CACzB,IAAI,IAAI,CAACZ,YAAY,EAAE,CACrB,IAAI,CAACA,YAAY,CAACa,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAACZ,YAAY,CAAC,CACjE,CACF,CAAC,CAAAS,MAAA,CAEMI,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,GAAA,CACd,oBACEjC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,UAAKC,SAAS,EAAEC,uBAAM,CAACC,IAAI,CAAC,CAAE,iBAC5BrC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,aAAQI,KAAK,EAAC,gBAAgB,EAACC,GAAG,EAAE,IAAI,CAAChB,SAAU,EAACY,SAAS,EAAEC,uBAAM,CAACZ,MAAM,CAAC,CAAE,EAACgB,QAAQ,EAAE,CAAC,CAAE,EAAE,CAAC,eAChGxC,MAAA,CAAA2B,OAAA,CAAAO,aAAA,UACEC,SAAS,EAAE,IAAAM,WAAE,GAAAR,GAAA,OAAAA,GAAA,CACVG,uBAAM,CAACM,OAAO,CAAC,CAAC,IAAG,IAAI,EAAAT,GAAA,CACvBG,uBAAM,CAACO,UAAU,CAAC,CAAC,IAAG,IAAI,CAACtB,KAAK,CAACsB,UAAU,EAAAV,GAAA,CAC3CG,uBAAM,CAACQ,IAAI,CAAC,CAAC,IAAG,IAAI,CAACvB,KAAK,CAACwB,aAAa,EAAAZ,GAAA,CAC1C,CAAE,IAEF,IAAI,CAACZ,KAAK,CAACyB,QACT,CACF,CAAC,CAEV,CAAC,QAAAzC,cAAA,GA3BiC0C,cAAK,CAACC,SAAS,EAAtC3C,cAAc,CACX4C,mBAAmB,GAAG,gBAAgB,CADzC5C,cAAc,CAEX6C,WAAW,GAAG,gBAAgB","ignoreList":[]}
@@ -3,4 +3,5 @@ export declare const styles: {
3
3
  iframe(): string;
4
4
  content(): string;
5
5
  fullHeight(): string;
6
+ flex(): string;
6
7
  };
@@ -1,4 +1,4 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4;
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
2
2
 
3
3
  var styles = exports.styles = (0, _Emotion.memoizeStyle)({
4
4
  root: function root() {
@@ -33,5 +33,11 @@ var styles = exports.styles = (0, _Emotion.memoizeStyle)({
33
33
  return (0, _Emotion.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n height: 100%;\n "])));
34
34
 
35
35
 
36
+ },
37
+
38
+ flex: function flex() {
39
+ return (0, _Emotion.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n display: flex;\n "])));
40
+
41
+
36
42
  }
37
43
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","_templateObject3","_templateObject4","styles","exports","memoizeStyle","root","css","_taggedTemplateLiteralLoose2","default","iframe","content","fullHeight"],"sources":["ResizeDetector.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n position: relative;\n height: 100%;\n `;\n },\n\n iframe() {\n return css`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n padding: 0;\n margin: 0;\n border: 0;\n background: transparent;\n opacity: 0;\n `;\n },\n\n content() {\n return css`\n position: relative;\n `;\n },\n\n fullHeight() {\n return css`\n height: 100%;\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;;AAEvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,IAAI,WAAAA,KAAA,EAAG;IACL,WAAOC,YAAG,EAAAR,eAAA,KAAAA,eAAA,OAAAS,4BAAA,CAAAC,OAAA;;;;EAIZ,CAAC;;EAEDC,MAAM,WAAAA,OAAA,EAAG;IACP,WAAOH,YAAG,EAAAP,gBAAA,KAAAA,gBAAA,OAAAQ,4BAAA,CAAAC,OAAA;;;;;;;;;;;;EAYZ,CAAC;;EAEDE,OAAO,WAAAA,QAAA,EAAG;IACR,WAAOJ,YAAG,EAAAN,gBAAA,KAAAA,gBAAA,OAAAO,4BAAA,CAAAC,OAAA;;;EAGZ,CAAC;;EAEDG,UAAU,WAAAA,WAAA,EAAG;IACX,WAAOL,YAAG,EAAAL,gBAAA,KAAAA,gBAAA,OAAAM,4BAAA,CAAAC,OAAA;;;EAGZ;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","styles","exports","memoizeStyle","root","css","_taggedTemplateLiteralLoose2","default","iframe","content","fullHeight","flex"],"sources":["ResizeDetector.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n position: relative;\n height: 100%;\n `;\n },\n\n iframe() {\n return css`\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n padding: 0;\n margin: 0;\n border: 0;\n background: transparent;\n opacity: 0;\n `;\n },\n\n content() {\n return css`\n position: relative;\n `;\n },\n\n fullHeight() {\n return css`\n height: 100%;\n `;\n },\n\n flex() {\n return css`\n display: flex;\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;;AAEvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,IAAI,WAAAA,KAAA,EAAG;IACL,WAAOC,YAAG,EAAAT,eAAA,KAAAA,eAAA,OAAAU,4BAAA,CAAAC,OAAA;;;;EAIZ,CAAC;;EAEDC,MAAM,WAAAA,OAAA,EAAG;IACP,WAAOH,YAAG,EAAAR,gBAAA,KAAAA,gBAAA,OAAAS,4BAAA,CAAAC,OAAA;;;;;;;;;;;;EAYZ,CAAC;;EAEDE,OAAO,WAAAA,QAAA,EAAG;IACR,WAAOJ,YAAG,EAAAP,gBAAA,KAAAA,gBAAA,OAAAQ,4BAAA,CAAAC,OAAA;;;EAGZ,CAAC;;EAEDG,UAAU,WAAAA,WAAA,EAAG;IACX,WAAOL,YAAG,EAAAN,gBAAA,KAAAA,gBAAA,OAAAO,4BAAA,CAAAC,OAAA;;;EAGZ,CAAC;;EAEDI,IAAI,WAAAA,KAAA,EAAG;IACL,WAAON,YAAG,EAAAL,gBAAA,KAAAA,gBAAA,OAAAM,4BAAA,CAAAC,OAAA;;;EAGZ;AACF,CAAC,CAAC","ignoreList":[]}
@@ -7,7 +7,6 @@ interface SpinnerIconSize {
7
7
  export interface SpinnerIconProps {
8
8
  className?: string;
9
9
  size: SpinnerIconSize | keyof typeof sizes;
10
- dimmed?: boolean;
11
10
  inline?: boolean;
12
11
  width?: number;
13
12
  color?: React.CSSProperties['color'];
@@ -29,5 +28,5 @@ export declare const sizes: {
29
28
  readonly radius: 6;
30
29
  };
31
30
  };
32
- export declare const SpinnerIcon: ({ size, className, dimmed, inline, width, color }: SpinnerIconProps) => React.JSX.Element;
31
+ export declare const SpinnerIcon: ({ size, className, inline, width, color }: SpinnerIconProps) => React.JSX.Element;
33
32
  export {};
@@ -1,15 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.sizes = exports.SpinnerIcon = void 0;var _react = _interopRequireDefault(require("react"));
2
2
 
3
- var _client = require("../../lib/client");
4
- var _SpinnerFallbackAnimation = require("../../components/Spinner/SpinnerFallbackAnimation");
5
-
6
-
7
-
8
-
9
-
10
-
11
- var _currentEnvironment = require("../../lib/currentEnvironment");
12
- var _ThemeContext = require("../../lib/theming/ThemeContext");
13
3
  var _Emotion = require("../../lib/theming/Emotion");
14
4
 
15
5
  var _SpinnerIcon = require("./SpinnerIcon.styles");
@@ -28,7 +18,6 @@ var _SpinnerIcon = require("./SpinnerIcon.styles");
28
18
 
29
19
 
30
20
 
31
-
32
21
  var sizes = exports.sizes = {
33
22
  big: {
34
23
  size: 96,
@@ -51,51 +40,9 @@ var isSizeAlias = function isSizeAlias(size) {
51
40
  return typeof size === 'string' && size in sizes;
52
41
  };
53
42
 
54
- var SpinnerIcon = exports.SpinnerIcon = function SpinnerIcon(_ref) {var _cx, _cx2;var size = _ref.size,className = _ref.className,dimmed = _ref.dimmed,inline = _ref.inline,width = _ref.width,color = _ref.color;
43
+ var SpinnerIcon = exports.SpinnerIcon = function SpinnerIcon(_ref) {var _cx, _cx2;var size = _ref.size,className = _ref.className,inline = _ref.inline,width = _ref.width,color = _ref.color;
55
44
  var _size = isSizeAlias(size) ? sizes[size] : size;
56
45
  var currentSize = inline ? sizes.mini : _size;
57
- var svgRef = _react.default.useRef(null);
58
-
59
- if (_client.isIE11 && !_currentEnvironment.isTestEnv) {
60
- // This condition will not change during app's life time
61
- // So its OK to use hooks here
62
- // https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level
63
-
64
- // eslint-disable-next-line react-hooks/rules-of-hooks
65
- var fallbackAnimationRef = _react.default.useRef(null);
66
- // eslint-disable-next-line react-hooks/rules-of-hooks
67
- var _React$useContext = _react.default.useContext(_ThemeContext.ThemeContext),red = _React$useContext.red,yellow = _React$useContext.yellow,green = _React$useContext.green,brand = _React$useContext.brand;
68
- // eslint-disable-next-line react-hooks/rules-of-hooks
69
- _react.default.useEffect(function () {
70
- var svg = svgRef.current;
71
-
72
- var setStyleProperty = function setStyleProperty() {
73
- if (svg) {var _svg$style;
74
- (_svg$style = svg.style).setProperty.apply(_svg$style, arguments);
75
- }
76
- };
77
-
78
- fallbackAnimationRef.current = new _SpinnerFallbackAnimation.SpinnerFallbackAnimationRunner([
79
-
80
- (0, _SpinnerFallbackAnimation.createOffsetAnimation)(0, -230, 1000, setStyleProperty, '%'),
81
- (0, _SpinnerFallbackAnimation.createLengthAnimation)([62, 168], [187, 43], 2000, setStyleProperty, '%'),
82
- (0, _SpinnerFallbackAnimation.createRotationAnimation)(0, 360, 2000, setStyleProperty)].concat(
83
- dimmed ? [] : [(0, _SpinnerFallbackAnimation.createColorAnimation)([red, yellow, green, brand], 1500, setStyleProperty)]),
84
-
85
- 1000 / 60
86
- );
87
-
88
- return function () {
89
- var fallbackAnimation = fallbackAnimationRef.current;
90
- if (fallbackAnimation) {
91
- fallbackAnimation.stop();
92
- }
93
- if (svg) {
94
- svg.removeAttribute('style');
95
- }
96
- };
97
- }, [dimmed, red, yellow, green, brand]);
98
- }
99
46
 
100
47
  return /*#__PURE__*/(
101
48
  _react.default.createElement("span", { className: (0, _Emotion.cx)(_SpinnerIcon.styles.root(), (_cx = {}, _cx[_SpinnerIcon.styles.rootInline()] = inline, _cx)) }, /*#__PURE__*/
@@ -111,7 +58,6 @@ var SpinnerIcon = exports.SpinnerIcon = function SpinnerIcon(_ref) {var _cx, _cx
111
58
  strokeDasharray: 10 * currentSize.radius / 6 + ", " + 27 * currentSize.radius / 6,
112
59
  strokeDashoffset: "0",
113
60
  strokeWidth: width || currentSize.width,
114
- ref: svgRef,
115
61
  focusable: "false",
116
62
  "aria-hidden": "true" }, /*#__PURE__*/
117
63
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_client","_SpinnerFallbackAnimation","_currentEnvironment","_ThemeContext","_Emotion","_SpinnerIcon","sizes","exports","big","size","width","radius","normal","mini","isSizeAlias","SpinnerIcon","_ref","_cx","_cx2","className","dimmed","inline","color","_size","currentSize","svgRef","React","useRef","isIE11","isTestEnv","fallbackAnimationRef","_React$useContext","useContext","ThemeContext","red","yellow","green","brand","useEffect","svg","current","setStyleProperty","_svg$style","style","setProperty","apply","arguments","SpinnerFallbackAnimationRunner","createOffsetAnimation","createLengthAnimation","createRotationAnimation","concat","createColorAnimation","fallbackAnimation","stop","removeAttribute","default","createElement","cx","styles","root","rootInline","viewBox","icon","iconInline","height","fill","stroke","strokeDasharray","strokeDashoffset","strokeWidth","ref","focusable","cy","r"],"sources":["SpinnerIcon.tsx"],"sourcesContent":["import React from 'react';\n\nimport { isIE11 } from '../../lib/client';\nimport {\n SpinnerFallbackAnimationRunner,\n createOffsetAnimation,\n createLengthAnimation,\n createColorAnimation,\n createRotationAnimation,\n} from '../../components/Spinner/SpinnerFallbackAnimation';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './SpinnerIcon.styles';\n\ninterface SpinnerIconSize {\n size: number;\n width: number;\n radius: number;\n}\n\nexport interface SpinnerIconProps {\n className?: string;\n size: SpinnerIconSize | keyof typeof sizes;\n dimmed?: boolean;\n inline?: boolean;\n width?: number;\n color?: React.CSSProperties['color'];\n}\n\nexport const sizes = {\n big: {\n size: 96,\n width: 4,\n radius: 32,\n },\n normal: {\n size: 48,\n width: 2,\n radius: 16,\n },\n mini: {\n size: 16,\n width: 1.5,\n radius: 6,\n },\n} as const;\n\nconst isSizeAlias = (size: unknown): size is keyof typeof sizes => {\n return typeof size === 'string' && size in sizes;\n};\n\nexport const SpinnerIcon = ({ size, className, dimmed, inline, width, color }: SpinnerIconProps) => {\n const _size = isSizeAlias(size) ? sizes[size] : size;\n const currentSize = inline ? sizes.mini : _size;\n const svgRef = React.useRef<SVGSVGElement>(null);\n\n if (isIE11 && !isTestEnv) {\n // This condition will not change during app's life time\n // So its OK to use hooks here\n // https://reactjs.org/docs/hooks-rules.html#only-call-hooks-at-the-top-level\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const fallbackAnimationRef = React.useRef<SpinnerFallbackAnimationRunner | null>(null);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { red, yellow, green, brand } = React.useContext(ThemeContext);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n React.useEffect(() => {\n const svg = svgRef.current;\n\n const setStyleProperty: CSSStyleDeclaration['setProperty'] = (...args) => {\n if (svg) {\n svg.style.setProperty(...args);\n }\n };\n\n fallbackAnimationRef.current = new SpinnerFallbackAnimationRunner(\n [\n createOffsetAnimation(0, -230, 1000, setStyleProperty, '%'),\n createLengthAnimation([62, 168], [187, 43], 2000, setStyleProperty, '%'),\n createRotationAnimation(0, 360, 2000, setStyleProperty),\n ...(dimmed ? [] : [createColorAnimation([red, yellow, green, brand], 1500, setStyleProperty)]),\n ],\n 1000 / 60,\n );\n\n return () => {\n const fallbackAnimation = fallbackAnimationRef.current;\n if (fallbackAnimation) {\n fallbackAnimation.stop();\n }\n if (svg) {\n svg.removeAttribute('style');\n }\n };\n }, [dimmed, red, yellow, green, brand]);\n }\n\n return (\n <span className={cx(styles.root(), { [styles.rootInline()]: inline })}>\n <svg\n viewBox={`0 0 ${currentSize.size} ${currentSize.size}`}\n className={cx(styles.icon(), className, {\n [styles.iconInline()]: inline,\n })}\n width={currentSize.size}\n height={currentSize.size}\n fill=\"none\"\n stroke={color}\n strokeDasharray={`${(10 * currentSize.radius) / 6}, ${(27 * currentSize.radius) / 6}`}\n strokeDashoffset=\"0\"\n strokeWidth={width || currentSize.width}\n ref={svgRef}\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <circle cx={currentSize.size / 2} cy={currentSize.size / 2} r={currentSize.radius} />\n </svg>\n </span>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Emotion","_SpinnerIcon","sizes","exports","big","size","width","radius","normal","mini","isSizeAlias","SpinnerIcon","_ref","_cx","_cx2","className","inline","color","_size","currentSize","default","createElement","cx","styles","root","rootInline","viewBox","icon","iconInline","height","fill","stroke","strokeDasharray","strokeDashoffset","strokeWidth","focusable","cy","r"],"sources":["SpinnerIcon.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './SpinnerIcon.styles';\n\ninterface SpinnerIconSize {\n size: number;\n width: number;\n radius: number;\n}\n\nexport interface SpinnerIconProps {\n className?: string;\n size: SpinnerIconSize | keyof typeof sizes;\n inline?: boolean;\n width?: number;\n color?: React.CSSProperties['color'];\n}\n\nexport const sizes = {\n big: {\n size: 96,\n width: 4,\n radius: 32,\n },\n normal: {\n size: 48,\n width: 2,\n radius: 16,\n },\n mini: {\n size: 16,\n width: 1.5,\n radius: 6,\n },\n} as const;\n\nconst isSizeAlias = (size: unknown): size is keyof typeof sizes => {\n return typeof size === 'string' && size in sizes;\n};\n\nexport const SpinnerIcon = ({ size, className, inline, width, color }: SpinnerIconProps) => {\n const _size = isSizeAlias(size) ? sizes[size] : size;\n const currentSize = inline ? sizes.mini : _size;\n\n return (\n <span className={cx(styles.root(), { [styles.rootInline()]: inline })}>\n <svg\n viewBox={`0 0 ${currentSize.size} ${currentSize.size}`}\n className={cx(styles.icon(), className, {\n [styles.iconInline()]: inline,\n })}\n width={currentSize.size}\n height={currentSize.size}\n fill=\"none\"\n stroke={color}\n strokeDasharray={`${(10 * currentSize.radius) / 6}, ${(27 * currentSize.radius) / 6}`}\n strokeDashoffset=\"0\"\n strokeWidth={width || currentSize.width}\n focusable=\"false\"\n aria-hidden=\"true\"\n >\n <circle cx={currentSize.size / 2} cy={currentSize.size / 2} r={currentSize.radius} />\n </svg>\n </span>\n );\n};\n"],"mappings":"iLAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,QAAA,GAAAD,OAAA;;AAEA,IAAAE,YAAA,GAAAF,OAAA;;;;;;;;;;;;;;;;AAgBO,IAAMG,KAAK,GAAAC,OAAA,CAAAD,KAAA,GAAG;EACnBE,GAAG,EAAE;IACHC,IAAI,EAAE,EAAE;IACRC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV,CAAC;EACDC,MAAM,EAAE;IACNH,IAAI,EAAE,EAAE;IACRC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV,CAAC;EACDE,IAAI,EAAE;IACJJ,IAAI,EAAE,EAAE;IACRC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE;EACV;AACF,CAAU;;AAEV,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAIL,IAAa,EAAiC;EACjE,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,IAAIH,KAAK;AAClD,CAAC;;AAEM,IAAMS,WAAW,GAAAR,OAAA,CAAAQ,WAAA,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAoE,KAAAC,GAAA,EAAAC,IAAA,KAA9DT,IAAI,GAAAO,IAAA,CAAJP,IAAI,CAAEU,SAAS,GAAAH,IAAA,CAATG,SAAS,CAAEC,MAAM,GAAAJ,IAAA,CAANI,MAAM,CAAEV,KAAK,GAAAM,IAAA,CAALN,KAAK,CAAEW,KAAK,GAAAL,IAAA,CAALK,KAAK;EACjE,IAAMC,KAAK,GAAGR,WAAW,CAACL,IAAI,CAAC,GAAGH,KAAK,CAACG,IAAI,CAAC,GAAGA,IAAI;EACpD,IAAMc,WAAW,GAAGH,MAAM,GAAGd,KAAK,CAACO,IAAI,GAAGS,KAAK;;EAE/C;IACErB,MAAA,CAAAuB,OAAA,CAAAC,aAAA,WAAMN,SAAS,EAAE,IAAAO,WAAE,EAACC,mBAAM,CAACC,IAAI,CAAC,CAAC,GAAAX,GAAA,OAAAA,GAAA,CAAKU,mBAAM,CAACE,UAAU,CAAC,CAAC,IAAGT,MAAM,EAAAH,GAAA,CAAE,CAAE;IACpEhB,MAAA,CAAAuB,OAAA,CAAAC,aAAA;MACEK,OAAO,WAASP,WAAW,CAACd,IAAI,SAAIc,WAAW,CAACd,IAAO;MACvDU,SAAS,EAAE,IAAAO,WAAE,EAACC,mBAAM,CAACI,IAAI,CAAC,CAAC,EAAEZ,SAAS,GAAAD,IAAA,OAAAA,IAAA;MACnCS,mBAAM,CAACK,UAAU,CAAC,CAAC,IAAGZ,MAAM,EAAAF,IAAA;MAC9B,CAAE;MACHR,KAAK,EAAEa,WAAW,CAACd,IAAK;MACxBwB,MAAM,EAAEV,WAAW,CAACd,IAAK;MACzByB,IAAI,EAAC,MAAM;MACXC,MAAM,EAAEd,KAAM;MACde,eAAe,EAAM,EAAE,GAAGb,WAAW,CAACZ,MAAM,GAAI,CAAC,UAAM,EAAE,GAAGY,WAAW,CAACZ,MAAM,GAAI,CAAI;MACtF0B,gBAAgB,EAAC,GAAG;MACpBC,WAAW,EAAE5B,KAAK,IAAIa,WAAW,CAACb,KAAM;MACxC6B,SAAS,EAAC,OAAO;MACjB,eAAY,MAAM;;IAElBtC,MAAA,CAAAuB,OAAA,CAAAC,aAAA,aAAQC,EAAE,EAAEH,WAAW,CAACd,IAAI,GAAG,CAAE,EAAC+B,EAAE,EAAEjB,WAAW,CAACd,IAAI,GAAG,CAAE,EAACgC,CAAC,EAAElB,WAAW,CAACZ,MAAO,EAAE;IACjF;IACD,CAAC;;AAEX,CAAC","ignoreList":[]}