@skbkontur/react-ui 5.2.1 → 5.3.1

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 (555) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js +49 -46
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +2 -0
  7. package/cjs/components/Button/Button.js +29 -1
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +6 -0
  10. package/cjs/components/Button/Button.styles.js +107 -75
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  13. package/cjs/components/Calendar/Calendar.js +1 -0
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Center/Center.d.ts +2 -0
  16. package/cjs/components/Center/Center.js +1 -0
  17. package/cjs/components/Center/Center.js.map +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
  19. package/cjs/components/Checkbox/Checkbox.js +2 -14
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
  22. package/cjs/components/ComboBox/ComboBox.js +1 -0
  23. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  24. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  25. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
  26. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  27. package/cjs/components/CurrencyInput/constants.js +1 -2
  28. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  29. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  30. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  31. package/cjs/components/DateInput/DateInput.d.ts +2 -0
  32. package/cjs/components/DateInput/DateInput.js +1 -0
  33. package/cjs/components/DateInput/DateInput.js.map +1 -1
  34. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  35. package/cjs/components/DatePicker/DatePicker.js +6 -60
  36. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  37. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  38. package/cjs/components/Dropdown/Dropdown.js +2 -82
  39. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  40. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  41. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  42. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  43. package/cjs/components/FxInput/FxInput.d.ts +2 -5
  44. package/cjs/components/FxInput/FxInput.js +2 -7
  45. package/cjs/components/FxInput/FxInput.js.map +1 -1
  46. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  47. package/cjs/components/Gapped/Gapped.js +1 -24
  48. package/cjs/components/Gapped/Gapped.js.map +1 -1
  49. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  50. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  51. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  52. package/cjs/components/Group/Group.d.ts +5 -4
  53. package/cjs/components/Group/Group.js +91 -40
  54. package/cjs/components/Group/Group.js.map +1 -1
  55. package/cjs/components/Group/Group.styles.d.ts +1 -0
  56. package/cjs/components/Group/Group.styles.js +12 -6
  57. package/cjs/components/Group/Group.styles.js.map +1 -1
  58. package/cjs/components/Hint/Hint.d.ts +2 -0
  59. package/cjs/components/Hint/Hint.js +1 -0
  60. package/cjs/components/Hint/Hint.js.map +1 -1
  61. package/cjs/components/Input/Input.d.ts +2 -0
  62. package/cjs/components/Input/Input.js +1 -0
  63. package/cjs/components/Input/Input.js.map +1 -1
  64. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  65. package/cjs/components/Kebab/Kebab.js +2 -26
  66. package/cjs/components/Kebab/Kebab.js.map +1 -1
  67. package/cjs/components/Link/Link.d.ts +2 -0
  68. package/cjs/components/Link/Link.js +1 -0
  69. package/cjs/components/Link/Link.js.map +1 -1
  70. package/cjs/components/Loader/Loader.d.ts +6 -36
  71. package/cjs/components/Loader/Loader.js +3 -57
  72. package/cjs/components/Loader/Loader.js.map +1 -1
  73. package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
  74. package/cjs/components/MaskedInput/MaskedInput.js +17 -1
  75. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  76. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  77. package/cjs/components/MenuItem/MenuItem.js +2 -22
  78. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  79. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  80. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  81. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  82. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  83. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  84. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  85. package/cjs/components/Modal/Modal.styles.js +36 -28
  86. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  87. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  88. package/cjs/components/Modal/ModalBody.js +1 -0
  89. package/cjs/components/Modal/ModalBody.js.map +1 -1
  90. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  91. package/cjs/components/Modal/ModalHeader.js +8 -1
  92. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  93. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  94. package/cjs/components/Paging/DotsIcon.js +13 -0
  95. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  96. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  97. package/cjs/components/Paging/ForwardIcon.js +13 -1
  98. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  99. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  100. package/cjs/components/Paging/NavigationHelper.js +8 -6
  101. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  102. package/cjs/components/Paging/Paging.d.ts +13 -2
  103. package/cjs/components/Paging/Paging.js +120 -50
  104. package/cjs/components/Paging/Paging.js.map +1 -1
  105. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  106. package/cjs/components/Paging/Paging.styles.js +151 -22
  107. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  108. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  109. package/cjs/components/Paging/PagingHelper.js +18 -11
  110. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  111. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -7
  112. package/cjs/components/PasswordInput/PasswordInput.js +2 -11
  113. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  114. package/cjs/components/Radio/Radio.d.ts +2 -0
  115. package/cjs/components/Radio/Radio.js +1 -0
  116. package/cjs/components/Radio/Radio.js.map +1 -1
  117. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  118. package/cjs/components/RadioGroup/RadioGroup.js +1 -0
  119. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  120. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  121. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  122. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  123. package/cjs/components/Select/Select.d.ts +2 -0
  124. package/cjs/components/Select/Select.js +2 -1
  125. package/cjs/components/Select/Select.js.map +1 -1
  126. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  127. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  128. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  129. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  130. package/cjs/components/SidePage/SidePageBody.js +1 -0
  131. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  132. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  133. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  134. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  135. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  136. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  137. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  138. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  139. package/cjs/components/SidePage/SidePageHeader.js +60 -19
  140. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  141. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  142. package/cjs/components/Spinner/Spinner.js +2 -32
  143. package/cjs/components/Spinner/Spinner.js.map +1 -1
  144. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  145. package/cjs/components/Sticky/Sticky.js +2 -22
  146. package/cjs/components/Sticky/Sticky.js.map +1 -1
  147. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  148. package/cjs/components/Switcher/Switcher.js +11 -20
  149. package/cjs/components/Switcher/Switcher.js.map +1 -1
  150. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  151. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  152. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  153. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  154. package/cjs/components/Tabs/Indicator.js +1 -0
  155. package/cjs/components/Tabs/Indicator.js.map +1 -1
  156. package/cjs/components/Tabs/Tab.d.ts +2 -0
  157. package/cjs/components/Tabs/Tab.js +1 -0
  158. package/cjs/components/Tabs/Tab.js.map +1 -1
  159. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  160. package/cjs/components/Tabs/Tabs.js +1 -0
  161. package/cjs/components/Tabs/Tabs.js.map +1 -1
  162. package/cjs/components/Textarea/Textarea.d.ts +2 -44
  163. package/cjs/components/Textarea/Textarea.js +2 -56
  164. package/cjs/components/Textarea/Textarea.js.map +1 -1
  165. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  166. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  167. package/cjs/components/Toast/Toast.d.ts +2 -0
  168. package/cjs/components/Toast/Toast.js +1 -0
  169. package/cjs/components/Toast/Toast.js.map +1 -1
  170. package/cjs/components/Toast/ToastView.d.ts +2 -14
  171. package/cjs/components/Toast/ToastView.js +3 -22
  172. package/cjs/components/Toast/ToastView.js.map +1 -1
  173. package/cjs/components/Toggle/Toggle.d.ts +2 -10
  174. package/cjs/components/Toggle/Toggle.js +1 -11
  175. package/cjs/components/Toggle/Toggle.js.map +1 -1
  176. package/cjs/components/Token/Token.d.ts +2 -0
  177. package/cjs/components/Token/Token.js +1 -0
  178. package/cjs/components/Token/Token.js.map +1 -1
  179. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  180. package/cjs/components/TokenInput/TokenInput.js +1 -0
  181. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  182. package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
  183. package/cjs/components/Tooltip/Tooltip.js +95 -13
  184. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  185. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  186. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  187. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  188. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  189. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  190. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  191. package/cjs/index.d.ts +1 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  194. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  195. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  196. package/cjs/internal/ComponentTable.js +2 -3
  197. package/cjs/internal/ComponentTable.js.map +1 -1
  198. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  199. package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -0
  200. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  201. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  202. package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
  203. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  204. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  205. package/cjs/internal/DateSelect/DateSelect.js +1 -18
  206. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  207. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  208. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  209. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  210. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  211. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  212. package/cjs/internal/InputLikeText/InputLikeText.d.ts +2 -0
  213. package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
  214. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  215. package/cjs/internal/Menu/Menu.d.ts +2 -0
  216. package/cjs/internal/Menu/Menu.js +1 -0
  217. package/cjs/internal/Menu/Menu.js.map +1 -1
  218. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  219. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  220. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  221. package/cjs/internal/Popup/Popup.d.ts +41 -59
  222. package/cjs/internal/Popup/Popup.js +36 -79
  223. package/cjs/internal/Popup/Popup.js.map +1 -1
  224. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  225. package/cjs/internal/Popup/PopupPin.js +2 -35
  226. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  227. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  228. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  229. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  230. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  231. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  232. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  233. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  234. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  235. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  236. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  237. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  238. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  239. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  240. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  241. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  242. package/cjs/internal/ThemePlayground/Playground.js +1 -1
  243. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  244. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  245. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  246. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  247. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  248. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  249. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  250. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  251. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  252. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  253. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  254. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  255. package/cjs/internal/themes/BasicTheme.d.ts +112 -20
  256. package/cjs/internal/themes/BasicTheme.js +149 -18
  257. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  258. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  259. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  260. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  261. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  262. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  263. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  264. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  265. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  266. package/cjs/lib/delay.mts +3 -0
  267. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  268. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  269. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +11 -1
  270. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  271. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  272. package/cjs/lib/forwardRefAndName.js +0 -1
  273. package/cjs/lib/forwardRefAndName.js.map +1 -1
  274. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  275. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  276. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  277. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  278. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  279. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  280. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  281. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  282. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  283. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  284. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  285. package/cjs/lib/utils.d.ts +4 -0
  286. package/cjs/lib/utils.js +5 -1
  287. package/cjs/lib/utils.js.map +1 -1
  288. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
  289. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  290. package/components/Autocomplete/Autocomplete.d.ts +6 -23
  291. package/components/Button/Button/Button.js +26 -5
  292. package/components/Button/Button/Button.js.map +1 -1
  293. package/components/Button/Button.d.ts +2 -0
  294. package/components/Button/Button.styles/Button.styles.js +78 -60
  295. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  296. package/components/Button/Button.styles.d.ts +6 -0
  297. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  298. package/components/Calendar/Calendar.d.ts +2 -0
  299. package/components/Center/Center/Center.js.map +1 -1
  300. package/components/Center/Center.d.ts +2 -0
  301. package/components/Checkbox/Checkbox/Checkbox.js +0 -11
  302. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  303. package/components/Checkbox/Checkbox.d.ts +2 -12
  304. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  305. package/components/ComboBox/ComboBox.d.ts +2 -0
  306. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -36
  307. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  308. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  309. package/components/CurrencyInput/constants/constants.js +0 -1
  310. package/components/CurrencyInput/constants/constants.js.map +1 -1
  311. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  312. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  313. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  314. package/components/DateInput/DateInput.d.ts +2 -0
  315. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  316. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  317. package/components/DatePicker/DatePicker.d.ts +6 -33
  318. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  319. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  320. package/components/Dropdown/Dropdown.d.ts +2 -47
  321. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  322. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  323. package/components/FxInput/FxInput/FxInput.js +1 -5
  324. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  325. package/components/FxInput/FxInput.d.ts +2 -5
  326. package/components/Gapped/Gapped/Gapped.js +1 -15
  327. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  328. package/components/Gapped/Gapped.d.ts +2 -15
  329. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  330. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  331. package/components/Group/Group/Group.js +64 -28
  332. package/components/Group/Group/Group.js.map +1 -1
  333. package/components/Group/Group.d.ts +5 -4
  334. package/components/Group/Group.styles/Group.styles.js +9 -6
  335. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  336. package/components/Group/Group.styles.d.ts +1 -0
  337. package/components/Hint/Hint/Hint.js.map +1 -1
  338. package/components/Hint/Hint.d.ts +2 -0
  339. package/components/Input/Input/Input.js.map +1 -1
  340. package/components/Input/Input.d.ts +2 -0
  341. package/components/Kebab/Kebab/Kebab.js +2 -20
  342. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  343. package/components/Kebab/Kebab.d.ts +2 -1
  344. package/components/Link/Link/Link.js.map +1 -1
  345. package/components/Link/Link.d.ts +2 -0
  346. package/components/Loader/Loader/Loader.js +0 -33
  347. package/components/Loader/Loader/Loader.js.map +1 -1
  348. package/components/Loader/Loader.d.ts +6 -36
  349. package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
  350. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  351. package/components/MaskedInput/MaskedInput.d.ts +1 -0
  352. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  353. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  354. package/components/MenuItem/MenuItem.d.ts +2 -12
  355. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  356. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  357. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  358. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  359. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  360. package/components/Modal/Modal.styles/Modal.styles.js +31 -28
  361. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  362. package/components/Modal/Modal.styles.d.ts +1 -0
  363. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  364. package/components/Modal/ModalBody.d.ts +2 -0
  365. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  366. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  367. package/components/Modal/ModalHeader.d.ts +5 -0
  368. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  369. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  370. package/components/Paging/DotsIcon/package.json +6 -0
  371. package/components/Paging/DotsIcon.d.ts +3 -0
  372. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  373. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  374. package/components/Paging/ForwardIcon.d.ts +3 -0
  375. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  376. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  377. package/components/Paging/NavigationHelper.d.ts +3 -2
  378. package/components/Paging/Paging/Paging.js +96 -47
  379. package/components/Paging/Paging/Paging.js.map +1 -1
  380. package/components/Paging/Paging.d.ts +13 -2
  381. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  382. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  383. package/components/Paging/Paging.styles.d.ts +24 -1
  384. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  385. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  386. package/components/Paging/PagingHelper.d.ts +1 -1
  387. package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -7
  388. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  389. package/components/PasswordInput/PasswordInput.d.ts +2 -7
  390. package/components/Radio/Radio/Radio.js.map +1 -1
  391. package/components/Radio/Radio.d.ts +2 -0
  392. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  393. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  394. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  395. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  396. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  397. package/components/Select/Select/Select.js +2 -2
  398. package/components/Select/Select/Select.js.map +1 -1
  399. package/components/Select/Select.d.ts +2 -0
  400. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  401. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  402. package/components/SidePage/SidePage.styles.d.ts +3 -1
  403. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  404. package/components/SidePage/SidePageBody.d.ts +2 -0
  405. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  406. package/components/SidePage/SidePageContainer.d.ts +2 -0
  407. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  408. package/components/SidePage/SidePageFooter.d.ts +2 -0
  409. package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
  410. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  411. package/components/SidePage/SidePageHeader.d.ts +12 -2
  412. package/components/Spinner/Spinner/Spinner.js +1 -18
  413. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  414. package/components/Spinner/Spinner.d.ts +2 -18
  415. package/components/Sticky/Sticky/Sticky.js +1 -13
  416. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  417. package/components/Sticky/Sticky.d.ts +2 -13
  418. package/components/Switcher/Switcher/Switcher.js +19 -16
  419. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  420. package/components/Switcher/Switcher.d.ts +6 -21
  421. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  422. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  423. package/components/Switcher/Switcher.styles.d.ts +1 -0
  424. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  425. package/components/Tabs/Indicator.d.ts +2 -0
  426. package/components/Tabs/Tab/Tab.js.map +1 -1
  427. package/components/Tabs/Tab.d.ts +2 -0
  428. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  429. package/components/Tabs/Tabs.d.ts +2 -0
  430. package/components/Textarea/Textarea/Textarea.js +1 -44
  431. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  432. package/components/Textarea/Textarea.d.ts +2 -44
  433. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  434. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  435. package/components/Toast/Toast/Toast.js.map +1 -1
  436. package/components/Toast/Toast.d.ts +2 -0
  437. package/components/Toast/ToastView/ToastView.js +3 -17
  438. package/components/Toast/ToastView/ToastView.js.map +1 -1
  439. package/components/Toast/ToastView.d.ts +2 -14
  440. package/components/Toggle/Toggle/Toggle.js +1 -10
  441. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  442. package/components/Toggle/Toggle.d.ts +2 -10
  443. package/components/Token/Token/Token.js.map +1 -1
  444. package/components/Token/Token.d.ts +2 -0
  445. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  446. package/components/TokenInput/TokenInput.d.ts +2 -0
  447. package/components/Tooltip/Tooltip/Tooltip.js +67 -20
  448. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  449. package/components/Tooltip/Tooltip.d.ts +14 -9
  450. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  451. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  452. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  453. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  454. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  455. package/index.d.ts +1 -0
  456. package/index.js +1 -0
  457. package/index.js.map +1 -1
  458. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  459. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  460. package/internal/ComponentTable/ComponentTable.js +0 -2
  461. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  462. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  463. package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  464. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  465. package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  466. package/internal/DateSelect/DateSelect/DateSelect.js +1 -10
  467. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  468. package/internal/DateSelect/DateSelect.d.ts +0 -10
  469. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  470. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  471. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  472. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  473. package/internal/InputLikeText/InputLikeText.d.ts +2 -0
  474. package/internal/Menu/Menu/Menu.js.map +1 -1
  475. package/internal/Menu/Menu.d.ts +2 -0
  476. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  477. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  478. package/internal/Popup/Popup/Popup.js +14 -64
  479. package/internal/Popup/Popup/Popup.js.map +1 -1
  480. package/internal/Popup/Popup.d.ts +41 -59
  481. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  482. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  483. package/internal/Popup/PopupPin.d.ts +23 -33
  484. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  485. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  486. package/internal/Popup/PopupPinNew/package.json +6 -0
  487. package/internal/Popup/PopupPinNew.d.ts +31 -0
  488. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  489. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  490. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  491. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  492. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  493. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  494. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  495. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  496. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  497. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  498. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  499. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  500. package/internal/ThemePlayground/Playground/Playground.js +4 -3
  501. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  502. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  503. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  504. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  505. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  506. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  507. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  508. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  509. package/internal/ZIndex/ZIndex.d.ts +3 -3
  510. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  511. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  512. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  513. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  514. package/internal/themes/BasicTheme/BasicTheme.js +170 -26
  515. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  516. package/internal/themes/BasicTheme.d.ts +112 -20
  517. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  518. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  519. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  520. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  521. package/internal/themes/DarkTheme5_3/package.json +6 -0
  522. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  523. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  524. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  525. package/internal/themes/LightTheme5_3/package.json +6 -0
  526. package/internal/themes/LightTheme5_3.d.ts +1 -0
  527. package/lib/delay.d.mts +1 -0
  528. package/lib/delay.mts +3 -0
  529. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  530. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -1
  531. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  532. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  533. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  534. package/lib/forwardRefAndName.d.ts +1 -1
  535. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  536. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  537. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  538. package/lib/theming/ThemeVersions.d.ts +1 -1
  539. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  540. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  541. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  542. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  543. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  544. package/lib/theming/themes/LightTheme.d.ts +1 -0
  545. package/lib/utils/utils.js +2 -0
  546. package/lib/utils/utils.js.map +1 -1
  547. package/lib/utils.d.ts +4 -0
  548. package/package.json +10 -13
  549. package/cjs/lib/SSRSafe.d.ts +0 -2
  550. package/cjs/lib/SSRSafe.js +0 -5
  551. package/cjs/lib/SSRSafe.js.map +0 -1
  552. package/lib/SSRSafe/SSRSafe.js +0 -4
  553. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  554. package/lib/SSRSafe/package.json +0 -6
  555. package/lib/SSRSafe.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","_class","_Toast","_React$Component","props","_this","call","rootRef","createRef","safelyCall","onClose","state","notification","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","_this$state$showTime","showTime","setTimeout","_refToast","_toast","id","showCloseIcon","_inheritsLoose","_proto","prototype","componentWillUnmount","render","_this2","createElement","Consumer","theme","create","Provider","value","_renderToast","push","onPush","_ref","_this$state","toastProps","onMouseEnter","onMouseLeave","children","key","classNames","enter","enterActive","exit","exitActive","timeout","nodeRef","_extends","rootNodeRef","ref","Component","__KONTUR_REACT_UI__","displayName","fn","_len","arguments","length","args","Array","_key","apply"],"sources":["Toast.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport type { ToastViewProps } from './ToastView';\nimport { ToastView } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<React.ReactNode>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n showCloseIcon?: boolean;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n /** Задает функцию, которая вызывается при возникновении тоста. */\n onPush?: (notification: string, action?: Action) => void;\n\n /** Задает функцию, которая вызывается при закрытии тоста. */\n onClose?: (notification: string, action?: Action) => void;\n\n /** Задает объект с переменными темы. Он будет объединён с темой из контекста. */\n theme?: ThemeIn;\n}\n\nexport type ToastPush = (\n notification: React.ReactNode,\n action?: Nullable<Action>,\n showTime?: number,\n showCloseIcon?: boolean,\n) => void;\n\nexport type ToastClose = () => void;\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * `Toast` — это короткое немодальное уведомление, которое сообщает пользователю о результате выполнения его команды.\n * Результат может быть положительным, отрицательным или нейтральным.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов рекомендуется использовать компонент SingleToast - в нём исправлены эти проблемы.\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n public static displayName = 'Toast';\n\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n /** @deprecated use `push` method in ref or `SingleToast.push` */\n public static push: ToastPush = (\n notification: React.ReactNode,\n action?: Nullable<Action>,\n showTime?: number,\n showCloseIcon?: boolean,\n ) => {\n ToastStatic.push(notification, action, showTime, showCloseIcon);\n };\n\n /** @deprecated use `close` method in ref or `SingleToast.close` */\n public static close: ToastClose = () => {\n ToastStatic.close();\n };\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n showCloseIcon: false,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {React.ReactNode} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: React.ReactNode, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n * @param {boolean} showCloseIcon Добавляет крестик для закрытия тоста. При указывании action в onPush крестик отображается всегда.\n */\n public push(notification: React.ReactNode, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime, showCloseIcon }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id, showCloseIcon } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n showCloseIcon,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","_class","_Toast","_React$Component","props","_this","call","rootRef","createRef","safelyCall","onClose","state","notification","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","_this$state$showTime","showTime","setTimeout","_refToast","_toast","id","showCloseIcon","_inheritsLoose","_proto","prototype","componentWillUnmount","render","_this2","createElement","Consumer","theme","create","Provider","value","_renderToast","push","onPush","_ref","_this$state","toastProps","onMouseEnter","onMouseLeave","children","key","classNames","enter","enterActive","exit","exitActive","timeout","nodeRef","_extends","rootNodeRef","ref","Component","__KONTUR_REACT_UI__","displayName","fn","_len","arguments","length","args","Array","_key","apply"],"sources":["Toast.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport type { ToastViewProps } from './ToastView';\nimport { ToastView } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<React.ReactNode>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n showCloseIcon?: boolean;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n /** Задает функцию, которая вызывается при возникновении тоста. */\n onPush?: (notification: string, action?: Action) => void;\n\n /** Задает функцию, которая вызывается при закрытии тоста. */\n onClose?: (notification: string, action?: Action) => void;\n\n /** Задает объект с переменными темы. Он будет объединён с темой из контекста. */\n theme?: ThemeIn;\n}\n\nexport type ToastPush = (\n notification: React.ReactNode,\n action?: Nullable<Action>,\n showTime?: number,\n showCloseIcon?: boolean,\n) => void;\n\nexport type ToastClose = () => void;\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * `Toast` — это короткое немодальное уведомление, которое сообщает пользователю о результате выполнения его команды.\n * Результат может быть положительным, отрицательным или нейтральным.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов рекомендуется использовать компонент SingleToast - в нём исправлены эти проблемы.\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n public static displayName = 'Toast';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n /** @deprecated use `push` method in ref or `SingleToast.push` */\n public static push: ToastPush = (\n notification: React.ReactNode,\n action?: Nullable<Action>,\n showTime?: number,\n showCloseIcon?: boolean,\n ) => {\n ToastStatic.push(notification, action, showTime, showCloseIcon);\n };\n\n /** @deprecated use `close` method in ref or `SingleToast.close` */\n public static close: ToastClose = () => {\n ToastStatic.close();\n };\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n showCloseIcon: false,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {React.ReactNode} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: React.ReactNode, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n * @param {boolean} showCloseIcon Добавляет крестик для закрытия тоста. При указывании action в onPush крестик отображается всегда.\n */\n public push(notification: React.ReactNode, action?: Nullable<Action>, showTime?: number, showCloseIcon?: boolean) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime, showCloseIcon }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id, showCloseIcon } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n showCloseIcon,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import type { ThemeIn } from '../../lib/theming/Theme';
4
4
  import type { Nullable } from '../../typings/utility-types';
5
5
  import type { CommonProps } from '../../internal/CommonWrapper';
6
+ import type { TGetRootNode } from '../../lib/rootNode';
6
7
  import { ToastView } from './ToastView';
7
8
  export interface Action {
8
9
  label: string;
@@ -44,6 +45,7 @@ export declare const ToastDataTids: {
44
45
  export declare class Toast extends React.Component<ToastProps, ToastState> {
45
46
  static __KONTUR_REACT_UI__: string;
46
47
  static displayName: string;
48
+ getRootNode: TGetRootNode;
47
49
  private setRootNode;
48
50
  private theme;
49
51
  /** @deprecated use `push` method in ref or `SingleToast.push` */
@@ -1,7 +1,6 @@
1
1
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
2
- var _dec, _class, _ToastView;
2
+ var _dec, _class;
3
3
  import React from 'react';
4
- import { func, shape, string } from 'prop-types';
5
4
  import { locale } from "../../../lib/locale/decorators";
6
5
  import { ZIndex } from "../../../internal/ZIndex";
7
6
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
@@ -11,7 +10,7 @@ import { CloseButtonIcon } from "../../../internal/CloseButtonIcon/CloseButtonIc
11
10
  import { styles } from "../ToastView.styles";
12
11
  import { ToastDataTids } from "../Toast";
13
12
  import { ToastLocaleHelper } from "../locale";
14
- export var ToastView = (_dec = locale('Toast', ToastLocaleHelper), rootNode(_class = _dec(_class = (_ToastView = /*#__PURE__*/function (_React$Component) {
13
+ export var ToastView = (_dec = locale('Toast', ToastLocaleHelper), rootNode(_class = _dec(_class = /*#__PURE__*/function (_React$Component) {
15
14
  function ToastView() {
16
15
  var _this;
17
16
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
@@ -75,17 +74,4 @@ export var ToastView = (_dec = locale('Toast', ToastLocaleHelper), rootNode(_cla
75
74
  });
76
75
  };
77
76
  return ToastView;
78
- }(React.Component), _ToastView.propTypes = {
79
- /**
80
- * Adds action handling and close icon for toast
81
- */
82
- action: shape({
83
- label: string.isRequired,
84
- handler: func.isRequired
85
- }),
86
- /**
87
- * Toast content
88
- */
89
- children: string.isRequired,
90
- onClose: func
91
- }, _ToastView)) || _class) || _class);
77
+ }(React.Component)) || _class) || _class);
@@ -1 +1 @@
1
- {"version":3,"names":["React","func","shape","string","locale","ZIndex","ThemeContext","CommonWrapper","rootNode","CloseButtonIcon","styles","ToastDataTids","ToastLocaleHelper","ToastView","_dec","_class","_ToastView","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","action","showCloseIcon","onClose","onMouseEnter","onMouseLeave","link","createElement","className","theme","onClick","handler","label","close","closeWrapper","closeButtonAriaLabel","size","parseInt","toastCloseSize","side","color","toastCloseColor","colorHover","toastCloseHoverColor","tabbable","priority","wrapper","toastView","root","ref","setRootNode","children","_inheritsLoose","_proto","prototype","render","_this2","Consumer","Component","propTypes","isRequired"],"sources":["ToastView.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { func, shape, string } from 'prop-types';\n\nimport { locale } from '../../lib/locale/decorators';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\n\nimport { styles } from './ToastView.styles';\nimport type { Action } from './Toast';\nimport { ToastDataTids } from './Toast';\nimport type { ToastLocale } from './locale';\nimport { ToastLocaleHelper } from './locale';\n\nexport interface ToastViewProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n /** Задает контент тоста. */\n children?: React.ReactNode;\n /** Добавляет возможность действия и кнопку закрытия у тоста. */\n action?: Nullable<Action>;\n showCloseIcon?: boolean;\n onClose?: () => void;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\n@rootNode\n@locale('Toast', ToastLocaleHelper)\nexport class ToastView extends React.Component<ToastViewProps> {\n public static propTypes = {\n /**\n * Adds action handling and close icon for toast\n */\n action: shape({\n label: string.isRequired,\n handler: func.isRequired,\n }),\n /**\n * Toast content\n */\n children: string.isRequired,\n onClose: func,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private readonly locale!: ToastLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = () => {\n const { action, showCloseIcon, onClose, onMouseEnter, onMouseLeave } = this.props;\n\n const link = action ? (\n <button\n aria-label={action['aria-label']}\n data-tid={ToastDataTids.action}\n className={styles.link(this.theme)}\n onClick={action.handler}\n >\n {action.label}\n </button>\n ) : null;\n\n const close =\n action || showCloseIcon ? (\n <span className={styles.closeWrapper(this.theme)}>\n <CloseButtonIcon\n aria-label={this.locale.closeButtonAriaLabel}\n data-tid={ToastDataTids.close}\n onClick={onClose}\n size={parseInt(this.theme.toastCloseSize)}\n side={40}\n color={this.theme.toastCloseColor}\n colorHover={this.theme.toastCloseHoverColor}\n tabbable={false}\n />\n </span>\n ) : null;\n\n return (\n <CommonWrapper {...this.props}>\n <ZIndex priority=\"Toast\" className={styles.wrapper(this.theme)}>\n <div\n data-tid={ToastDataTids.toastView}\n className={styles.root(this.theme)}\n ref={this.setRootNode}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n <span>{this.props.children}</span>\n {link}\n {close}\n </div>\n </ZIndex>\n </CommonWrapper>\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","locale","ZIndex","ThemeContext","CommonWrapper","rootNode","CloseButtonIcon","styles","ToastDataTids","ToastLocaleHelper","ToastView","_dec","_class","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","action","showCloseIcon","onClose","onMouseEnter","onMouseLeave","link","createElement","className","theme","onClick","handler","label","close","closeWrapper","closeButtonAriaLabel","size","parseInt","toastCloseSize","side","color","toastCloseColor","colorHover","toastCloseHoverColor","tabbable","priority","wrapper","toastView","root","ref","setRootNode","children","_inheritsLoose","_proto","prototype","render","_this2","Consumer","Component"],"sources":["ToastView.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { locale } from '../../lib/locale/decorators';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\n\nimport { styles } from './ToastView.styles';\nimport type { Action } from './Toast';\nimport { ToastDataTids } from './Toast';\nimport type { ToastLocale } from './locale';\nimport { ToastLocaleHelper } from './locale';\n\nexport interface ToastViewProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n /** Задает контент тоста. */\n children?: React.ReactNode;\n /** Добавляет возможность действия и кнопку закрытия у тоста. */\n action?: Nullable<Action>;\n showCloseIcon?: boolean;\n onClose?: () => void;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\n@rootNode\n@locale('Toast', ToastLocaleHelper)\nexport class ToastView extends React.Component<ToastViewProps> {\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private readonly locale!: ToastLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = () => {\n const { action, showCloseIcon, onClose, onMouseEnter, onMouseLeave } = this.props;\n\n const link = action ? (\n <button\n aria-label={action['aria-label']}\n data-tid={ToastDataTids.action}\n className={styles.link(this.theme)}\n onClick={action.handler}\n >\n {action.label}\n </button>\n ) : null;\n\n const close =\n action || showCloseIcon ? (\n <span className={styles.closeWrapper(this.theme)}>\n <CloseButtonIcon\n aria-label={this.locale.closeButtonAriaLabel}\n data-tid={ToastDataTids.close}\n onClick={onClose}\n size={parseInt(this.theme.toastCloseSize)}\n side={40}\n color={this.theme.toastCloseColor}\n colorHover={this.theme.toastCloseHoverColor}\n tabbable={false}\n />\n </span>\n ) : null;\n\n return (\n <CommonWrapper {...this.props}>\n <ZIndex priority=\"Toast\" className={styles.wrapper(this.theme)}>\n <div\n data-tid={ToastDataTids.toastView}\n className={styles.root(this.theme)}\n ref={this.setRootNode}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n <span>{this.props.children}</span>\n {link}\n {close}\n </div>\n </ZIndex>\n </CommonWrapper>\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
3
  import type { Nullable } from '../../typings/utility-types';
4
4
  import type { CommonProps } from '../../internal/CommonWrapper';
5
+ import type { TGetRootNode } from '../../lib/rootNode';
5
6
  import type { Action } from './Toast';
6
7
  export interface ToastViewProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {
7
8
  /** Задает контент тоста. */
@@ -14,21 +15,8 @@ export interface ToastViewProps extends Pick<AriaAttributes, 'aria-label'>, Comm
14
15
  onMouseLeave?: () => void;
15
16
  }
16
17
  export declare class ToastView extends React.Component<ToastViewProps> {
17
- static propTypes: {
18
- /**
19
- * Adds action handling and close icon for toast
20
- */
21
- action: import("prop-types").Requireable<import("prop-types").InferProps<{
22
- label: import("prop-types").Validator<string>;
23
- handler: import("prop-types").Validator<(...args: any[]) => any>;
24
- }>>;
25
- /**
26
- * Toast content
27
- */
28
- children: import("prop-types").Validator<string>;
29
- onClose: import("prop-types").Requireable<(...args: any[]) => any>;
30
- };
31
18
  private theme;
19
+ getRootNode: TGetRootNode;
32
20
  private setRootNode;
33
21
  private readonly locale;
34
22
  render(): React.JSX.Element;
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
3
3
  var _class, _Toggle;
4
4
  import React from 'react';
5
- import PropTypes from 'prop-types';
6
5
  import { keyListener } from "../../../lib/events/keyListener";
7
6
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
8
7
  import { CommonWrapper } from "../../../internal/CommonWrapper";
@@ -219,15 +218,7 @@ export var Toggle = rootNode(_class = (_Toggle = /*#__PURE__*/function (_React$C
219
218
  return this.props.checked === undefined;
220
219
  };
221
220
  return Toggle;
222
- }(React.Component), _Toggle.__KONTUR_REACT_UI__ = 'Toggle', _Toggle.displayName = 'Toggle', _Toggle.propTypes = {
223
- checked: PropTypes.bool,
224
- defaultChecked: PropTypes.bool,
225
- disabled: PropTypes.bool,
226
- error: PropTypes.bool,
227
- loading: PropTypes.bool,
228
- warning: PropTypes.bool,
229
- onValueChange: PropTypes.func
230
- }, _Toggle.defaultProps = {
221
+ }(React.Component), _Toggle.__KONTUR_REACT_UI__ = 'Toggle', _Toggle.displayName = 'Toggle', _Toggle.defaultProps = {
231
222
  disabled: false,
232
223
  loading: false,
233
224
  captionPosition: 'right',
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","keyListener","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","isTestEnv","FocusControlWrapper","styles","globalClasses","ToggleDataTids","root","Toggle","_class","_Toggle","_React$Component","props","_this","call","getProps","defaultProps","input","focus","isTabPressed","inputRef","element","handleChange","event","onValueChange","target","checked","isUncontrolled","setState","onChange","handleFocus","onFocus","focusByTab","resetFocus","handleBlur","onBlur","state","defaultChecked","_inheritsLoose","_proto","prototype","componentDidMount","autoFocus","render","_this2","createElement","Consumer","theme","renderMain","getContainerSizeClassName","size","containerLarge","containerMedium","containerSmall","getHandleSizeClassName","handleLarge","handleMedium","handleSmall","getButtonSizeClassName","buttonLarge","buttonMedium","buttonSmall","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getInputSizeClassName","inputLarge","inputMedium","inputSmall","getCaptionSizeClassName","captionLarge","captionMedium","captionSmall","_cx","_cx2","_cx4","_cx5","_this$props","children","warning","error","id","name","ariaDescribedby","ariaLabel","_this$getProps","loading","captionPosition","disableAnimations","disabled","containerClassNames","container","containerDisabled","containerLoading","labelClassNames","rootLeft","disableAnimation","caption","_cx3","captionClass","captionLeft","disabledCaption","className","_extends","rootNodeRef","setRootNode","button","buttonRight","isWarning","isError","focused","onBlurWhenDisabled","type","ref","role","handle","handleDisabled","undefined","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","func"],"sources":["Toggle.tsx"],"sourcesContent":["import React from 'react';\nimport type { AriaAttributes, InputHTMLAttributes } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { keyListener } from '../../lib/events/keyListener';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { styles, globalClasses } from './Toggle.styles';\n\nexport interface ToggleProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<InputHTMLAttributes<HTMLInputElement>, 'id' | 'name'>,\n CommonProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает положение `children` относительно переключателя.\n * @default 'right' */\n captionPosition?: 'left' | 'right';\n\n /** Включает тогл.\n * @default false */\n checked?: boolean;\n\n /** Делает `тогл` включенным по умолчанию. Не работает при заданном пропе `checked`. */\n defaultChecked?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает функцию, вызывающуюся при изменении значения. */\n onValueChange?: (value: boolean) => void;\n\n /** Задает функцию, которая вызывается при клике на `тогл`. */\n onChange?: React.ChangeEventHandler<HTMLInputElement>;\n\n /** Переводит контрол в состояние валидации \"предупреждение\".\n * @default false */\n warning?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\".\n * @default false */\n error?: boolean;\n\n /** Переводит тогл в состояние загрузки: добавляет стили для состояния `loading` и отключает `тогл`.*/\n loading?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\".\n * @default false */\n autoFocus?: boolean;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает функцию, которая вызывается, когда `тогл` получает фокус.*/\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n\n /** Задает функцию, которая вызывается, когда `тогл` теряет фокус. */\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n}\n\nexport interface ToggleState {\n checked?: boolean;\n focusByTab?: boolean;\n}\n\nexport const ToggleDataTids = {\n root: 'Toggle__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<ToggleProps, 'disabled' | 'loading' | 'captionPosition' | 'disableAnimations' | 'size'>\n>;\n\n/**\n * `Toggle` переключает состояния. Например, включает или отключает уведомления в настройках.\n * `Toggle` представляет из себя надпись + переключатель.\n *\n * `Toggle` нельзя использовать для выбора элементов в списке. Например, выбрать несколько писем.\n */\n@rootNode\nexport class Toggle extends React.Component<ToggleProps, ToggleState> {\n public static __KONTUR_REACT_UI__ = 'Toggle';\n public static displayName = 'Toggle';\n\n public static propTypes = {\n checked: PropTypes.bool,\n defaultChecked: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n loading: PropTypes.bool,\n warning: PropTypes.bool,\n onValueChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n disabled: false,\n loading: false,\n captionPosition: 'right',\n disableAnimations: isTestEnv,\n size: 'small',\n };\n\n private getProps = createPropsGetter(Toggle.defaultProps);\n\n private theme!: Theme;\n private input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: ToggleProps) {\n super(props);\n\n this.state = {\n focusByTab: false,\n checked: props.defaultChecked,\n };\n }\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n keyListener.isTabPressed = true;\n this.input.focus();\n }\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getContainerSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.containerLarge(this.theme);\n case 'medium':\n return styles.containerMedium(this.theme);\n case 'small':\n default:\n return styles.containerSmall(this.theme);\n }\n }\n\n private getHandleSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.handleLarge(this.theme);\n case 'medium':\n return styles.handleMedium(this.theme);\n case 'small':\n default:\n return styles.handleSmall(this.theme);\n }\n }\n\n private getButtonSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.buttonLarge(this.theme);\n case 'medium':\n return styles.buttonMedium(this.theme);\n case 'small':\n default:\n return styles.buttonSmall(this.theme);\n }\n }\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getInputSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.inputLarge(this.theme);\n case 'medium':\n return styles.inputMedium(this.theme);\n case 'small':\n default:\n return styles.inputSmall(this.theme);\n }\n }\n\n private getCaptionSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n }\n\n private renderMain() {\n const {\n children,\n warning,\n error,\n id,\n name,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { loading, captionPosition, disableAnimations } = this.getProps();\n const disabled = this.getProps().disabled || loading;\n const checked = this.isUncontrolled() ? this.state.checked : this.props.checked;\n\n const containerClassNames = cx(this.getContainerSizeClassName(), {\n [styles.container(this.theme)]: true,\n [styles.containerDisabled(this.theme)]: !!disabled,\n [globalClasses.container]: true,\n [globalClasses.containerDisabled]: !!disabled,\n [globalClasses.containerLoading]: loading,\n });\n\n const labelClassNames = cx(this.getRootSizeClassName(), {\n [styles.root(this.theme)]: true,\n [styles.rootLeft()]: captionPosition === 'left',\n [styles.disabled()]: !!disabled,\n [globalClasses.disabled]: !!disabled,\n [styles.disableAnimation()]: disableAnimations,\n });\n\n let caption = null;\n if (children) {\n const captionClass = cx(this.getCaptionSizeClassName(), {\n [styles.caption(this.theme)]: true,\n [styles.captionLeft(this.theme)]: captionPosition === 'left',\n [styles.disabledCaption(this.theme)]: !!disabled,\n });\n caption = <span className={captionClass}>{children}</span>;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <label data-tid={ToggleDataTids.root} className={labelClassNames}>\n <div\n className={cx(this.getButtonSizeClassName(), {\n [styles.button(this.theme)]: true,\n [styles.buttonRight()]: captionPosition === 'left',\n [styles.isWarning(this.theme)]: !!warning,\n [styles.isError(this.theme)]: !!error,\n [styles.focused(this.theme)]: !disabled && !!this.state.focusByTab,\n })}\n >\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={this.handleChange}\n className={cx(this.getInputSizeClassName(), styles.input(this.theme))}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.inputRef}\n disabled={disabled}\n id={id}\n name={name}\n role=\"switch\"\n aria-label={ariaLabel}\n aria-describedby={ariaDescribedby}\n />\n </FocusControlWrapper>\n <div className={containerClassNames} />\n <div\n className={cx(this.getHandleSizeClassName(), globalClasses.handle, {\n [styles.handle(this.theme)]: true,\n [styles.handleDisabled(this.theme)]: disabled,\n })}\n />\n </div>\n {caption}\n </label>\n </CommonWrapper>\n );\n }\n\n private inputRef = (element: HTMLInputElement) => {\n this.input = element;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.checked);\n }\n\n if (this.isUncontrolled()) {\n this.setState({\n checked: event.target.checked,\n });\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n\n if (keyListener.isTabPressed) {\n this.setState({ focusByTab: true });\n }\n };\n\n private resetFocus = () => this.setState({ focusByTab: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private isUncontrolled() {\n return this.props.checked === undefined;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","keyListener","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","isTestEnv","FocusControlWrapper","styles","globalClasses","ToggleDataTids","root","Toggle","_class","_Toggle","_React$Component","props","_this","call","getProps","defaultProps","input","focus","isTabPressed","inputRef","element","handleChange","event","onValueChange","target","checked","isUncontrolled","setState","onChange","handleFocus","onFocus","focusByTab","resetFocus","handleBlur","onBlur","state","defaultChecked","_inheritsLoose","_proto","prototype","componentDidMount","autoFocus","render","_this2","createElement","Consumer","theme","renderMain","getContainerSizeClassName","size","containerLarge","containerMedium","containerSmall","getHandleSizeClassName","handleLarge","handleMedium","handleSmall","getButtonSizeClassName","buttonLarge","buttonMedium","buttonSmall","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getInputSizeClassName","inputLarge","inputMedium","inputSmall","getCaptionSizeClassName","captionLarge","captionMedium","captionSmall","_cx","_cx2","_cx4","_cx5","_this$props","children","warning","error","id","name","ariaDescribedby","ariaLabel","_this$getProps","loading","captionPosition","disableAnimations","disabled","containerClassNames","container","containerDisabled","containerLoading","labelClassNames","rootLeft","disableAnimation","caption","_cx3","captionClass","captionLeft","disabledCaption","className","_extends","rootNodeRef","setRootNode","button","buttonRight","isWarning","isError","focused","onBlurWhenDisabled","type","ref","role","handle","handleDisabled","undefined","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Toggle.tsx"],"sourcesContent":["import React from 'react';\nimport type { AriaAttributes, InputHTMLAttributes } from 'react';\n\nimport { keyListener } from '../../lib/events/keyListener';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { styles, globalClasses } from './Toggle.styles';\n\nexport interface ToggleProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<InputHTMLAttributes<HTMLInputElement>, 'id' | 'name'>,\n CommonProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает положение `children` относительно переключателя.\n * @default 'right' */\n captionPosition?: 'left' | 'right';\n\n /** Включает тогл.\n * @default false */\n checked?: boolean;\n\n /** Делает `тогл` включенным по умолчанию. Не работает при заданном пропе `checked`. */\n defaultChecked?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает функцию, вызывающуюся при изменении значения. */\n onValueChange?: (value: boolean) => void;\n\n /** Задает функцию, которая вызывается при клике на `тогл`. */\n onChange?: React.ChangeEventHandler<HTMLInputElement>;\n\n /** Переводит контрол в состояние валидации \"предупреждение\".\n * @default false */\n warning?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\".\n * @default false */\n error?: boolean;\n\n /** Переводит тогл в состояние загрузки: добавляет стили для состояния `loading` и отключает `тогл`.*/\n loading?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\".\n * @default false */\n autoFocus?: boolean;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает функцию, которая вызывается, когда `тогл` получает фокус.*/\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n\n /** Задает функцию, которая вызывается, когда `тогл` теряет фокус. */\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n}\n\nexport interface ToggleState {\n checked?: boolean;\n focusByTab?: boolean;\n}\n\nexport const ToggleDataTids = {\n root: 'Toggle__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<ToggleProps, 'disabled' | 'loading' | 'captionPosition' | 'disableAnimations' | 'size'>\n>;\n\n/**\n * `Toggle` переключает состояния. Например, включает или отключает уведомления в настройках.\n * `Toggle` представляет из себя надпись + переключатель.\n *\n * `Toggle` нельзя использовать для выбора элементов в списке. Например, выбрать несколько писем.\n */\n@rootNode\nexport class Toggle extends React.Component<ToggleProps, ToggleState> {\n public static __KONTUR_REACT_UI__ = 'Toggle';\n public static displayName = 'Toggle';\n\n public static defaultProps: DefaultProps = {\n disabled: false,\n loading: false,\n captionPosition: 'right',\n disableAnimations: isTestEnv,\n size: 'small',\n };\n\n private getProps = createPropsGetter(Toggle.defaultProps);\n\n private theme!: Theme;\n private input: HTMLInputElement | null = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: ToggleProps) {\n super(props);\n\n this.state = {\n focusByTab: false,\n checked: props.defaultChecked,\n };\n }\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n keyListener.isTabPressed = true;\n this.input.focus();\n }\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getContainerSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.containerLarge(this.theme);\n case 'medium':\n return styles.containerMedium(this.theme);\n case 'small':\n default:\n return styles.containerSmall(this.theme);\n }\n }\n\n private getHandleSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.handleLarge(this.theme);\n case 'medium':\n return styles.handleMedium(this.theme);\n case 'small':\n default:\n return styles.handleSmall(this.theme);\n }\n }\n\n private getButtonSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.buttonLarge(this.theme);\n case 'medium':\n return styles.buttonMedium(this.theme);\n case 'small':\n default:\n return styles.buttonSmall(this.theme);\n }\n }\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getInputSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.inputLarge(this.theme);\n case 'medium':\n return styles.inputMedium(this.theme);\n case 'small':\n default:\n return styles.inputSmall(this.theme);\n }\n }\n\n private getCaptionSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n }\n\n private renderMain() {\n const {\n children,\n warning,\n error,\n id,\n name,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { loading, captionPosition, disableAnimations } = this.getProps();\n const disabled = this.getProps().disabled || loading;\n const checked = this.isUncontrolled() ? this.state.checked : this.props.checked;\n\n const containerClassNames = cx(this.getContainerSizeClassName(), {\n [styles.container(this.theme)]: true,\n [styles.containerDisabled(this.theme)]: !!disabled,\n [globalClasses.container]: true,\n [globalClasses.containerDisabled]: !!disabled,\n [globalClasses.containerLoading]: loading,\n });\n\n const labelClassNames = cx(this.getRootSizeClassName(), {\n [styles.root(this.theme)]: true,\n [styles.rootLeft()]: captionPosition === 'left',\n [styles.disabled()]: !!disabled,\n [globalClasses.disabled]: !!disabled,\n [styles.disableAnimation()]: disableAnimations,\n });\n\n let caption = null;\n if (children) {\n const captionClass = cx(this.getCaptionSizeClassName(), {\n [styles.caption(this.theme)]: true,\n [styles.captionLeft(this.theme)]: captionPosition === 'left',\n [styles.disabledCaption(this.theme)]: !!disabled,\n });\n caption = <span className={captionClass}>{children}</span>;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <label data-tid={ToggleDataTids.root} className={labelClassNames}>\n <div\n className={cx(this.getButtonSizeClassName(), {\n [styles.button(this.theme)]: true,\n [styles.buttonRight()]: captionPosition === 'left',\n [styles.isWarning(this.theme)]: !!warning,\n [styles.isError(this.theme)]: !!error,\n [styles.focused(this.theme)]: !disabled && !!this.state.focusByTab,\n })}\n >\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={this.handleChange}\n className={cx(this.getInputSizeClassName(), styles.input(this.theme))}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.inputRef}\n disabled={disabled}\n id={id}\n name={name}\n role=\"switch\"\n aria-label={ariaLabel}\n aria-describedby={ariaDescribedby}\n />\n </FocusControlWrapper>\n <div className={containerClassNames} />\n <div\n className={cx(this.getHandleSizeClassName(), globalClasses.handle, {\n [styles.handle(this.theme)]: true,\n [styles.handleDisabled(this.theme)]: disabled,\n })}\n />\n </div>\n {caption}\n </label>\n </CommonWrapper>\n );\n }\n\n private inputRef = (element: HTMLInputElement) => {\n this.input = element;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.checked);\n }\n\n if (this.isUncontrolled()) {\n this.setState({\n checked: event.target.checked,\n });\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n\n if (keyListener.isTabPressed) {\n this.setState({ focusByTab: true });\n }\n };\n\n private resetFocus = () => this.setState({ focusByTab: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private isUncontrolled() {\n return this.props.checked === undefined;\n }\n}\n"],"mappings":"oJAAA,OAAOA,KAAK,MAAM,OAAO;;;AAGzB,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,YAAY,QAAQ,gCAAgC;;;AAG7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;AAE9C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,iBAAiB,QAAQ,6BAA6B;AAC/D,SAASC,SAAS,QAAQ,8BAA8B;;AAExD,SAASC,mBAAmB,QAAQ,oCAAoC;;AAExE,SAASC,MAAM,EAAEC,aAAa,QAAQ,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8DvD,OAAO,IAAMC,cAAc,GAAG;EAC5BC,IAAI,EAAE;AACR,CAAU;;;;;;AAMV;AACA;AACA;AACA;AACA;AACA;AACA;AACaC,MAAM,GADlBR,QAAQ,CAAAS,MAAA,IAAAC,OAAA,0BAAAC,gBAAA;;;;;;;;;;;;;;;;;;;EAoBP,SAAAH,OAAYI,KAAkB,EAAE,KAAAC,KAAA;IAC9BA,KAAA,GAAAF,gBAAA,CAAAG,IAAA,OAAMF,KAAK,CAAC,SAACC,KAAA,CARPE,QAAQ,GAAGd,iBAAiB,CAACO,MAAM,CAACQ,YAAY,CAAC,CAAAH,KAAA,CAGjDI,KAAK,GAA4B,IAAI;;;;;;;;;;;;;;;IAoB7C;AACF;AACA,OAFEJ,KAAA;IAGOK,KAAK,GAAG,YAAM;MACnB,IAAIL,KAAA,CAAKI,KAAK,EAAE;QACdrB,WAAW,CAACuB,YAAY,GAAG,IAAI;QAC/BN,KAAA,CAAKI,KAAK,CAACC,KAAK,CAAC,CAAC;MACpB;IACF,CAAC,CAAAL,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwKOO,QAAQ,GAAG,UAACC,OAAyB,EAAK;MAChDR,KAAA,CAAKI,KAAK,GAAGI,OAAO;IACtB,CAAC,CAAAR,KAAA;;IAEOS,YAAY,GAAG,UAACC,KAA0C,EAAK;MACrE,IAAIV,KAAA,CAAKD,KAAK,CAACY,aAAa,EAAE;QAC5BX,KAAA,CAAKD,KAAK,CAACY,aAAa,CAACD,KAAK,CAACE,MAAM,CAACC,OAAO,CAAC;MAChD;;MAEA,IAAIb,KAAA,CAAKc,cAAc,CAAC,CAAC,EAAE;QACzBd,KAAA,CAAKe,QAAQ,CAAC;UACZF,OAAO,EAAEH,KAAK,CAACE,MAAM,CAACC;QACxB,CAAC,CAAC;MACJ;;MAEA,IAAIb,KAAA,CAAKD,KAAK,CAACiB,QAAQ,EAAE;QACvBhB,KAAA,CAAKD,KAAK,CAACiB,QAAQ,CAACN,KAAK,CAAC;MAC5B;IACF,CAAC,CAAAV,KAAA;;IAEOiB,WAAW,GAAG,UAACP,KAAyC,EAAK;MACnE,IAAIV,KAAA,CAAKD,KAAK,CAACmB,OAAO,EAAE;QACtBlB,KAAA,CAAKD,KAAK,CAACmB,OAAO,CAACR,KAAK,CAAC;MAC3B;;MAEA,IAAI3B,WAAW,CAACuB,YAAY,EAAE;QAC5BN,KAAA,CAAKe,QAAQ,CAAC,EAAEI,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;MACrC;IACF,CAAC,CAAAnB,KAAA;;IAEOoB,UAAU,GAAG,oBAAMpB,KAAA,CAAKe,QAAQ,CAAC,EAAEI,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,GAAAnB,KAAA;;IAEvDqB,UAAU,GAAG,UAACX,KAAyC,EAAK;MAClEV,KAAA,CAAKoB,UAAU,CAAC,CAAC;MACjBpB,KAAA,CAAKD,KAAK,CAACuB,MAAM,YAAjBtB,KAAA,CAAKD,KAAK,CAACuB,MAAM,CAAGZ,KAAK,CAAC;IAC5B,CAAC,CAhOCV,KAAA,CAAKuB,KAAK,GAAG,EACXJ,UAAU,EAAE,KAAK,EACjBN,OAAO,EAAEd,KAAK,CAACyB,cAAc,CAC/B,CAAC,CAAC,OAAAxB,KAAA,CACJ,CAACyB,cAAA,CAAA9B,MAAA,EAAAG,gBAAA,MAAA4B,MAAA,GAAA/B,MAAA,CAAAgC,SAAA,CAAAD,MAAA,CAEME,iBAAiB,GAAxB,SAAAA,kBAAA,EAA2B,CACzB,IAAI,IAAI,CAAC7B,KAAK,CAAC8B,SAAS,EAAE,CACxB9C,WAAW,CAACuB,YAAY,GAAG,IAAI,CAC/B,IAAI,CAACD,KAAK,CAAC,CAAC,CACd,CACF,CAAC,CAAAqB,MAAA,CAYMI,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACEjD,KAAA,CAAAkD,aAAA,CAAChD,YAAY,CAACiD,QAAQ,QACnB,UAACC,KAAK,EAAK,CACVH,MAAI,CAACG,KAAK,GAAGA,KAAK,CAClB,OAAOH,MAAI,CAACI,UAAU,CAAC,CAAC,CAC1B,CACqB,CAAC,CAE5B,CAAC,CAAAT,MAAA,CAEOU,yBAAyB,GAAjC,SAAAA,0BAAA,EAAoC,CAClC,QAAQ,IAAI,CAAClC,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAAC+C,cAAc,CAAC,IAAI,CAACJ,KAAK,CAAC,CAC1C,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAACgD,eAAe,CAAC,IAAI,CAACL,KAAK,CAAC,CAC3C,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAACiD,cAAc,CAAC,IAAI,CAACN,KAAK,CAAC,CAC5C,CACF,CAAC,CAAAR,MAAA,CAEOe,sBAAsB,GAA9B,SAAAA,uBAAA,EAAiC,CAC/B,QAAQ,IAAI,CAACvC,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAACmD,WAAW,CAAC,IAAI,CAACR,KAAK,CAAC,CACvC,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAACoD,YAAY,CAAC,IAAI,CAACT,KAAK,CAAC,CACxC,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAACqD,WAAW,CAAC,IAAI,CAACV,KAAK,CAAC,CACzC,CACF,CAAC,CAAAR,MAAA,CAEOmB,sBAAsB,GAA9B,SAAAA,uBAAA,EAAiC,CAC/B,QAAQ,IAAI,CAAC3C,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAACuD,WAAW,CAAC,IAAI,CAACZ,KAAK,CAAC,CACvC,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAACwD,YAAY,CAAC,IAAI,CAACb,KAAK,CAAC,CACxC,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAACyD,WAAW,CAAC,IAAI,CAACd,KAAK,CAAC,CACzC,CACF,CAAC,CAAAR,MAAA,CAEOuB,oBAAoB,GAA5B,SAAAA,qBAAA,EAA+B,CAC7B,QAAQ,IAAI,CAAC/C,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAAC2D,SAAS,CAAC,IAAI,CAAChB,KAAK,CAAC,CACrC,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAAC4D,UAAU,CAAC,IAAI,CAACjB,KAAK,CAAC,CACtC,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAAC6D,SAAS,CAAC,IAAI,CAAClB,KAAK,CAAC,CACvC,CACF,CAAC,CAAAR,MAAA,CAEO2B,qBAAqB,GAA7B,SAAAA,sBAAA,EAAgC,CAC9B,QAAQ,IAAI,CAACnD,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAAC+D,UAAU,CAAC,IAAI,CAACpB,KAAK,CAAC,CACtC,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAACgE,WAAW,CAAC,IAAI,CAACrB,KAAK,CAAC,CACvC,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAACiE,UAAU,CAAC,IAAI,CAACtB,KAAK,CAAC,CACxC,CACF,CAAC,CAAAR,MAAA,CAEO+B,uBAAuB,GAA/B,SAAAA,wBAAA,EAAkC,CAChC,QAAQ,IAAI,CAACvD,QAAQ,CAAC,CAAC,CAACmC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO9C,MAAM,CAACmE,YAAY,CAAC,IAAI,CAACxB,KAAK,CAAC,CACxC,KAAK,QAAQ,CACX,OAAO3C,MAAM,CAACoE,aAAa,CAAC,IAAI,CAACzB,KAAK,CAAC,CACzC,KAAK,OAAO,CACZ,QACE,OAAO3C,MAAM,CAACqE,YAAY,CAAC,IAAI,CAAC1B,KAAK,CAAC,CAC1C,CACF,CAAC,CAAAR,MAAA,CAEOS,UAAU,GAAlB,SAAAA,WAAA,EAAqB,KAAA0B,GAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAC,IAAA,CACnB,IAAAC,WAAA,GAQI,IAAI,CAAClE,KAAK,CAPZmE,QAAQ,GAAAD,WAAA,CAARC,QAAQ,CACRC,OAAO,GAAAF,WAAA,CAAPE,OAAO,CACPC,KAAK,GAAAH,WAAA,CAALG,KAAK,CACLC,EAAE,GAAAJ,WAAA,CAAFI,EAAE,CACFC,IAAI,GAAAL,WAAA,CAAJK,IAAI,CACgBC,eAAe,GAAAN,WAAA,CAAnC,kBAAkB,EACJO,SAAS,GAAAP,WAAA,CAAvB,YAAY,EAEd,IAAAQ,cAAA,GAAwD,IAAI,CAACvE,QAAQ,CAAC,CAAC,CAA/DwE,OAAO,GAAAD,cAAA,CAAPC,OAAO,CAAEC,eAAe,GAAAF,cAAA,CAAfE,eAAe,CAAEC,iBAAiB,GAAAH,cAAA,CAAjBG,iBAAiB,CACnD,IAAMC,QAAQ,GAAG,IAAI,CAAC3E,QAAQ,CAAC,CAAC,CAAC2E,QAAQ,IAAIH,OAAO,CACpD,IAAM7D,OAAO,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC,GAAG,IAAI,CAACS,KAAK,CAACV,OAAO,GAAG,IAAI,CAACd,KAAK,CAACc,OAAO,CAE/E,IAAMiE,mBAAmB,GAAG5F,EAAE,CAAC,IAAI,CAACkD,yBAAyB,CAAC,CAAC,GAAAyB,GAAA,OAAAA,GAAA,CAC5DtE,MAAM,CAACwF,SAAS,CAAC,IAAI,CAAC7C,KAAK,CAAC,IAAG,IAAI,EAAA2B,GAAA,CACnCtE,MAAM,CAACyF,iBAAiB,CAAC,IAAI,CAAC9C,KAAK,CAAC,IAAG,CAAC,CAAC2C,QAAQ,EAAAhB,GAAA,CACjDrE,aAAa,CAACuF,SAAS,IAAG,IAAI,EAAAlB,GAAA,CAC9BrE,aAAa,CAACwF,iBAAiB,IAAG,CAAC,CAACH,QAAQ,EAAAhB,GAAA,CAC5CrE,aAAa,CAACyF,gBAAgB,IAAGP,OAAO,EAAAb,GAAA,CAC1C,CAAC,CAEF,IAAMqB,eAAe,GAAGhG,EAAE,CAAC,IAAI,CAAC+D,oBAAoB,CAAC,CAAC,GAAAa,IAAA,OAAAA,IAAA,CACnDvE,MAAM,CAACG,IAAI,CAAC,IAAI,CAACwC,KAAK,CAAC,IAAG,IAAI,EAAA4B,IAAA,CAC9BvE,MAAM,CAAC4F,QAAQ,CAAC,CAAC,IAAGR,eAAe,KAAK,MAAM,EAAAb,IAAA,CAC9CvE,MAAM,CAACsF,QAAQ,CAAC,CAAC,IAAG,CAAC,CAACA,QAAQ,EAAAf,IAAA,CAC9BtE,aAAa,CAACqF,QAAQ,IAAG,CAAC,CAACA,QAAQ,EAAAf,IAAA,CACnCvE,MAAM,CAAC6F,gBAAgB,CAAC,CAAC,IAAGR,iBAAiB,EAAAd,IAAA,CAC/C,CAAC,CAEF,IAAIuB,OAAO,GAAG,IAAI,CAClB,IAAInB,QAAQ,EAAE,KAAAoB,IAAA,CACZ,IAAMC,YAAY,GAAGrG,EAAE,CAAC,IAAI,CAACuE,uBAAuB,CAAC,CAAC,GAAA6B,IAAA,OAAAA,IAAA,CACnD/F,MAAM,CAAC8F,OAAO,CAAC,IAAI,CAACnD,KAAK,CAAC,IAAG,IAAI,EAAAoD,IAAA,CACjC/F,MAAM,CAACiG,WAAW,CAAC,IAAI,CAACtD,KAAK,CAAC,IAAGyC,eAAe,KAAK,MAAM,EAAAW,IAAA,CAC3D/F,MAAM,CAACkG,eAAe,CAAC,IAAI,CAACvD,KAAK,CAAC,IAAG,CAAC,CAAC2C,QAAQ,EAAAS,IAAA,CACjD,CAAC,CACFD,OAAO,gBAAGvG,KAAA,CAAAkD,aAAA,WAAM0D,SAAS,EAAEH,YAAa,IAAErB,QAAe,CAAC,CAC5D,CAEA,oBACEpF,KAAA,CAAAkD,aAAA,CAAC/C,aAAa,EAAA0G,QAAA,GAACC,WAAW,EAAE,IAAI,CAACC,WAAY,IAAK,IAAI,CAAC9F,KAAK,gBAC1DjB,KAAA,CAAAkD,aAAA,YAAO,YAAUvC,cAAc,CAACC,IAAK,EAACgG,SAAS,EAAER,eAAgB,iBAC/DpG,KAAA,CAAAkD,aAAA,UACE0D,SAAS,EAAExG,EAAE,CAAC,IAAI,CAAC2D,sBAAsB,CAAC,CAAC,GAAAkB,IAAA,OAAAA,IAAA,CACxCxE,MAAM,CAACuG,MAAM,CAAC,IAAI,CAAC5D,KAAK,CAAC,IAAG,IAAI,EAAA6B,IAAA,CAChCxE,MAAM,CAACwG,WAAW,CAAC,CAAC,IAAGpB,eAAe,KAAK,MAAM,EAAAZ,IAAA,CACjDxE,MAAM,CAACyG,SAAS,CAAC,IAAI,CAAC9D,KAAK,CAAC,IAAG,CAAC,CAACiC,OAAO,EAAAJ,IAAA,CACxCxE,MAAM,CAAC0G,OAAO,CAAC,IAAI,CAAC/D,KAAK,CAAC,IAAG,CAAC,CAACkC,KAAK,EAAAL,IAAA,CACpCxE,MAAM,CAAC2G,OAAO,CAAC,IAAI,CAAChE,KAAK,CAAC,IAAG,CAAC2C,QAAQ,IAAI,CAAC,CAAC,IAAI,CAACtD,KAAK,CAACJ,UAAU,EAAA4C,IAAA,CACnE,CAAE,iBAEHjF,KAAA,CAAAkD,aAAA,CAAC1C,mBAAmB,IAAC6G,kBAAkB,EAAE,IAAI,CAAC/E,UAAW,iBACvDtC,KAAA,CAAAkD,aAAA,YACEoE,IAAI,EAAC,UAAU,EACfvF,OAAO,EAAEA,OAAQ,EACjBG,QAAQ,EAAE,IAAI,CAACP,YAAa,EAC5BiF,SAAS,EAAExG,EAAE,CAAC,IAAI,CAACmE,qBAAqB,CAAC,CAAC,EAAE9D,MAAM,CAACa,KAAK,CAAC,IAAI,CAAC8B,KAAK,CAAC,CAAE,EACtEhB,OAAO,EAAE,IAAI,CAACD,WAAY,EAC1BK,MAAM,EAAE,IAAI,CAACD,UAAW,EACxBgF,GAAG,EAAE,IAAI,CAAC9F,QAAS,EACnBsE,QAAQ,EAAEA,QAAS,EACnBR,EAAE,EAAEA,EAAG,EACPC,IAAI,EAAEA,IAAK,EACXgC,IAAI,EAAC,QAAQ,EACb,cAAY9B,SAAU,EACtB,oBAAkBD,eAAgB,EACnC,CACkB,CAAC,eACtBzF,KAAA,CAAAkD,aAAA,UAAK0D,SAAS,EAAEZ,mBAAoB,EAAE,CAAC,eACvChG,KAAA,CAAAkD,aAAA,UACE0D,SAAS,EAAExG,EAAE,CAAC,IAAI,CAACuD,sBAAsB,CAAC,CAAC,EAAEjD,aAAa,CAAC+G,MAAM,GAAAvC,IAAA,OAAAA,IAAA,CAC9DzE,MAAM,CAACgH,MAAM,CAAC,IAAI,CAACrE,KAAK,CAAC,IAAG,IAAI,EAAA8B,IAAA,CAChCzE,MAAM,CAACiH,cAAc,CAAC,IAAI,CAACtE,KAAK,CAAC,IAAG2C,QAAQ,EAAAb,IAAA,CAC9C,CAAE,EACJ,CACE,CAAC,EACLqB,OACI,CACM,CAAC,CAEpB,CAAC,CAAA3D,MAAA;;EAuCOZ,cAAc,GAAtB,SAAAA,eAAA,EAAyB;IACvB,OAAO,IAAI,CAACf,KAAK,CAACc,OAAO,KAAK4F,SAAS;EACzC,CAAC,QAAA9G,MAAA,GA1PyBb,KAAK,CAAC4H,SAAS,GAAA7G,OAAA,CAC3B8G,mBAAmB,GAAG,QAAQ,EAAA9G,OAAA,CAC9B+G,WAAW,GAAG,QAAQ,EAAA/G,OAAA,CAEtBM,YAAY,GAAiB,EACzC0E,QAAQ,EAAE,KAAK,EACfH,OAAO,EAAE,KAAK,EACdC,eAAe,EAAE,OAAO,EACxBC,iBAAiB,EAAEvF,SAAS,EAC5BgD,IAAI,EAAE,OAAO,CACf,CAAC,EAAAxC,OAAA,MAAAD,MAAA","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { AriaAttributes, InputHTMLAttributes } from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import type { CommonProps } from '../../internal/CommonWrapper';
4
+ import type { TGetRootNode } from '../../lib/rootNode';
5
5
  import type { SizeProp } from '../../lib/types/props';
6
6
  export interface ToggleProps extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>, Pick<InputHTMLAttributes<HTMLInputElement>, 'id' | 'name'>, CommonProps {
7
7
  /** @ignore */
@@ -57,19 +57,11 @@ type DefaultProps = Required<Pick<ToggleProps, 'disabled' | 'loading' | 'caption
57
57
  export declare class Toggle extends React.Component<ToggleProps, ToggleState> {
58
58
  static __KONTUR_REACT_UI__: string;
59
59
  static displayName: string;
60
- static propTypes: {
61
- checked: PropTypes.Requireable<boolean>;
62
- defaultChecked: PropTypes.Requireable<boolean>;
63
- disabled: PropTypes.Requireable<boolean>;
64
- error: PropTypes.Requireable<boolean>;
65
- loading: PropTypes.Requireable<boolean>;
66
- warning: PropTypes.Requireable<boolean>;
67
- onValueChange: PropTypes.Requireable<(...args: any[]) => any>;
68
- };
69
60
  static defaultProps: DefaultProps;
70
61
  private getProps;
71
62
  private theme;
72
63
  private input;
64
+ getRootNode: TGetRootNode;
73
65
  private setRootNode;
74
66
  constructor(props: ToggleProps);
75
67
  componentDidMount(): void;
@@ -1 +1 @@
1
- {"version":3,"names":["React","locale","emptyHandler","ThemeContext","CommonWrapper","cx","rootNode","CloseButtonIcon","reactGetTextContent","getVisualStateDataAttributes","styles","TokenLocaleHelper","TokenView","TokenDataTids","root","removeIcon","Token","_dec","_class","_Token","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","onRemoveClick","event","_this$props","props","disabled","_this$props$onRemove","onRemove","preventDefault","_inheritsLoose","_proto","prototype","render","_this2","createElement","Consumer","theme","renderMain","_this$props2","size","children","isActive","error","warning","ariaDescribedby","_this$props2$onClick","onClick","_this$props2$onDouble","onDoubleClick","_this$props2$onMouseE","onMouseEnter","_this$props2$onMouseL","onMouseLeave","_this$props2$onFocus","onFocus","_this$props2$onBlur","onBlur","removeButtonAriaLabel","icon","side","color","colorHover","tabbable","classNames","tokenIdle","tokenHover","tokenActive","tokenWarning","tokenError","tokenDisabled","textholder","className","text","closeButton","_extends","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Token.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport type { SizeProp } from '../../lib/types/props';\nimport { reactGetTextContent } from '../../lib/reactGetTextContent';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Token.styles';\nimport type { TokenLocale } from './locale';\nimport { TokenLocaleHelper } from './locale';\nimport { TokenView } from './TokenView';\n\nexport type TokenSize = SizeProp;\n\nexport interface TokenProps extends Pick<AriaAttributes, 'aria-describedby'>, CommonProps {\n /** Устанавливает, является ли токен активным. */\n isActive?: boolean;\n /** Переводит контрол в состояние валидации \"ошибка\" */\n error?: boolean;\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n /** Делает компонент недоступным. */\n disabled?: boolean;\n /** Задает размер контрола. */\n size?: TokenSize;\n /** Задает функцию, которая вызывается, когда на токен кликнули. */\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда на токен кликнули дважды. */\n onDoubleClick?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен удаляется. */\n onRemove?: React.MouseEventHandler<HTMLElement>;\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен получает фокус. */\n onFocus?: React.FocusEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен теряет фокус. */\n onBlur?: React.FocusEventHandler<HTMLDivElement>;\n}\n\nexport const TokenDataTids = {\n root: 'Token__root',\n removeIcon: 'Token__removeIcon',\n} as const;\n\n/**\n * Однородный элемент — `Token`.\n *\n * Используется в компоненте поле с токенами TokenInput.\n */\n@rootNode\n@locale('Token', TokenLocaleHelper)\nexport class Token extends React.Component<TokenProps> {\n public static __KONTUR_REACT_UI__ = 'Token';\n public static displayName = 'Token';\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private readonly locale!: TokenLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n size,\n children,\n isActive,\n error,\n warning,\n disabled,\n 'aria-describedby': ariaDescribedby,\n onClick = emptyHandler,\n onDoubleClick = emptyHandler,\n onMouseEnter = emptyHandler,\n onMouseLeave = emptyHandler,\n onFocus = emptyHandler,\n onBlur = emptyHandler,\n } = this.props;\n\n const theme = this.theme;\n\n const removeButtonAriaLabel = this.locale.removeButtonAriaLabel + ' ' + reactGetTextContent(children);\n\n const icon = (\n <CloseButtonIcon\n side={16}\n color=\"inherit\"\n colorHover=\"inherit\"\n aria-label={removeButtonAriaLabel}\n tabbable={false}\n />\n );\n\n const classNames = cx(\n styles.tokenIdle(theme),\n !isActive && !warning && !error && !disabled && styles.tokenHover(theme),\n isActive && styles.tokenActive(theme),\n warning && styles.tokenWarning(theme),\n error && styles.tokenError(theme),\n disabled && styles.tokenDisabled(theme),\n );\n\n const textholder = <span className={styles.text()}>{children}</span>;\n\n const closeButton = (\n <span onClick={this.onRemoveClick} data-tid={TokenDataTids.removeIcon}>\n {icon}\n </span>\n );\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <TokenView\n className={classNames}\n size={size}\n closeButton={closeButton}\n data-tid={TokenDataTids.root}\n aria-describedby={ariaDescribedby}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {textholder}\n </TokenView>\n </CommonWrapper>\n );\n }\n\n private onRemoveClick = (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n const { disabled, onRemove = emptyHandler } = this.props;\n\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n onRemove(event);\n };\n}\n"],"mappings":";AACA,OAAOA,KAAK,MAAM,OAAO;;AAEzB,SAASC,MAAM,QAAQ,6BAA6B;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,YAAY,QAAQ,gCAAgC;;;AAG7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;AAE9C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,eAAe,QAAQ,gDAAgD;;AAEhF,SAASC,mBAAmB,QAAQ,+BAA+B;AACnE,SAASC,4BAA4B,QAAQ,iEAAiE;;AAE9G,SAASC,MAAM,QAAQ,gBAAgB;;AAEvC,SAASC,iBAAiB,QAAQ,UAAU;AAC5C,SAASC,SAAS,QAAQ,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BvC,OAAO,IAAMC,aAAa,GAAG;EAC3BC,IAAI,EAAE,aAAa;EACnBC,UAAU,EAAE;AACd,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;;AAEaC,KAAK,IAAAC,IAAA,GADjBhB,MAAM,CAAC,OAAO,EAAEU,iBAAiB,CAAC,EADlCL,QAAQ,CAAAY,MAAA,GAAAD,IAAA,CAAAC,MAAA,IAAAC,MAAA,0BAAAC,gBAAA,YAAAJ,MAAA,OAAAK,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0FCU,aAAa,GAAG,UAACC,KAAgD,EAAK;MAC5E,IAAAC,WAAA,GAA8CZ,KAAA,CAAKa,KAAK,CAAhDC,QAAQ,GAAAF,WAAA,CAARE,QAAQ,CAAAC,oBAAA,GAAAH,WAAA,CAAEI,QAAQ,CAARA,QAAQ,GAAAD,oBAAA,cAAGlC,YAAY,GAAAkC,oBAAA;;MAEzC,IAAID,QAAQ,EAAE;QACZH,KAAK,CAACM,cAAc,CAAC,CAAC;QACtB;MACF;;MAEAD,QAAQ,CAACL,KAAK,CAAC;IACjB,CAAC,QAAAX,KAAA,EAAAkB,cAAA,CAAAvB,KAAA,EAAAI,gBAAA,MAAAoB,MAAA,GAAAxB,KAAA,CAAAyB,SAAA,CAAAD,MAAA,CAzFME,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACE3C,KAAA,CAAA4C,aAAA,CAACzC,YAAY,CAAC0C,QAAQ,QACnB,UAACC,KAAK,EAAK,CACVH,MAAI,CAACG,KAAK,GAAGA,KAAK,CAClB,OAAOH,MAAI,CAACI,UAAU,CAAC,CAAC,CAC1B,CACqB,CAAC,CAE5B,CAAC,CAAAP,MAAA,CAEOO,UAAU,GAAlB,SAAAA,WAAA,EAAqB,CACnB,IAAAC,YAAA,GAcI,IAAI,CAACd,KAAK,CAbZe,IAAI,GAAAD,YAAA,CAAJC,IAAI,CACJC,QAAQ,GAAAF,YAAA,CAARE,QAAQ,CACRC,QAAQ,GAAAH,YAAA,CAARG,QAAQ,CACRC,KAAK,GAAAJ,YAAA,CAALI,KAAK,CACLC,OAAO,GAAAL,YAAA,CAAPK,OAAO,CACPlB,QAAQ,GAAAa,YAAA,CAARb,QAAQ,CACYmB,eAAe,GAAAN,YAAA,CAAnC,kBAAkB,EAAAO,oBAAA,GAAAP,YAAA,CAClBQ,OAAO,CAAPA,OAAO,GAAAD,oBAAA,cAAGrD,YAAY,GAAAqD,oBAAA,CAAAE,qBAAA,GAAAT,YAAA,CACtBU,aAAa,CAAbA,aAAa,GAAAD,qBAAA,cAAGvD,YAAY,GAAAuD,qBAAA,CAAAE,qBAAA,GAAAX,YAAA,CAC5BY,YAAY,CAAZA,YAAY,GAAAD,qBAAA,cAAGzD,YAAY,GAAAyD,qBAAA,CAAAE,qBAAA,GAAAb,YAAA,CAC3Bc,YAAY,CAAZA,YAAY,GAAAD,qBAAA,cAAG3D,YAAY,GAAA2D,qBAAA,CAAAE,oBAAA,GAAAf,YAAA,CAC3BgB,OAAO,CAAPA,OAAO,GAAAD,oBAAA,cAAG7D,YAAY,GAAA6D,oBAAA,CAAAE,mBAAA,GAAAjB,YAAA,CACtBkB,MAAM,CAANA,MAAM,GAAAD,mBAAA,cAAG/D,YAAY,GAAA+D,mBAAA,CAGvB,IAAMnB,KAAK,GAAG,IAAI,CAACA,KAAK,CAExB,IAAMqB,qBAAqB,GAAG,IAAI,CAAClE,MAAM,CAACkE,qBAAqB,GAAG,GAAG,GAAG3D,mBAAmB,CAAC0C,QAAQ,CAAC,CAErG,IAAMkB,IAAI,gBACRpE,KAAA,CAAA4C,aAAA,CAACrC,eAAe,IACd8D,IAAI,EAAE,EAAG,EACTC,KAAK,EAAC,SAAS,EACfC,UAAU,EAAC,SAAS,EACpB,cAAYJ,qBAAsB,EAClCK,QAAQ,EAAE,KAAM,EACjB,CACF,CAED,IAAMC,UAAU,GAAGpE,EAAE,CACnBK,MAAM,CAACgE,SAAS,CAAC5B,KAAK,CAAC,EACvB,CAACK,QAAQ,IAAI,CAACE,OAAO,IAAI,CAACD,KAAK,IAAI,CAACjB,QAAQ,IAAIzB,MAAM,CAACiE,UAAU,CAAC7B,KAAK,CAAC,EACxEK,QAAQ,IAAIzC,MAAM,CAACkE,WAAW,CAAC9B,KAAK,CAAC,EACrCO,OAAO,IAAI3C,MAAM,CAACmE,YAAY,CAAC/B,KAAK,CAAC,EACrCM,KAAK,IAAI1C,MAAM,CAACoE,UAAU,CAAChC,KAAK,CAAC,EACjCX,QAAQ,IAAIzB,MAAM,CAACqE,aAAa,CAACjC,KAAK,CACxC,CAAC,CAED,IAAMkC,UAAU,gBAAGhF,KAAA,CAAA4C,aAAA,WAAMqC,SAAS,EAAEvE,MAAM,CAACwE,IAAI,CAAC,CAAE,IAAEhC,QAAe,CAAC,CAEpE,IAAMiC,WAAW,gBACfnF,KAAA,CAAA4C,aAAA,WAAMY,OAAO,EAAE,IAAI,CAACzB,aAAc,EAAC,YAAUlB,aAAa,CAACE,UAAW,IACnEqD,IACG,CACP,CAED,oBACEpE,KAAA,CAAA4C,aAAA,CAACxC,aAAa,EAAAgF,QAAA,GAACC,WAAW,EAAE,IAAI,CAACC,WAAY,IAAK,IAAI,CAACpD,KAAK,EAAMzB,4BAA4B,CAAC,EAAE0B,QAAQ,EAARA,QAAQ,CAAC,CAAC,CAAC,gBAC1GnC,KAAA,CAAA4C,aAAA,CAAChC,SAAS,IACRqE,SAAS,EAAER,UAAW,EACtBxB,IAAI,EAAEA,IAAK,EACXkC,WAAW,EAAEA,WAAY,EACzB,YAAUtE,aAAa,CAACC,IAAK,EAC7B,oBAAkBwC,eAAgB,EAClCE,OAAO,EAAEA,OAAQ,EACjBE,aAAa,EAAEA,aAAc,EAC7BE,YAAY,EAAEA,YAAa,EAC3BE,YAAY,EAAEA,YAAa,EAC3BE,OAAO,EAAEA,OAAQ,EACjBE,MAAM,EAAEA,MAAO,IAEdc,UACQ,CACE,CAAC,CAEpB,CAAC,QAAAhE,KAAA,GAtFwBhB,KAAK,CAACuF,SAAS,GAAApE,MAAA,CAC1BqE,mBAAmB,GAAG,OAAO,EAAArE,MAAA,CAC7BsE,WAAW,GAAG,OAAO,EAAAtE,MAAA,MAAAD,MAAA,KAAAA,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["React","locale","emptyHandler","ThemeContext","CommonWrapper","cx","rootNode","CloseButtonIcon","reactGetTextContent","getVisualStateDataAttributes","styles","TokenLocaleHelper","TokenView","TokenDataTids","root","removeIcon","Token","_dec","_class","_Token","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","onRemoveClick","event","_this$props","props","disabled","_this$props$onRemove","onRemove","preventDefault","_inheritsLoose","_proto","prototype","render","_this2","createElement","Consumer","theme","renderMain","_this$props2","size","children","isActive","error","warning","ariaDescribedby","_this$props2$onClick","onClick","_this$props2$onDouble","onDoubleClick","_this$props2$onMouseE","onMouseEnter","_this$props2$onMouseL","onMouseLeave","_this$props2$onFocus","onFocus","_this$props2$onBlur","onBlur","removeButtonAriaLabel","icon","side","color","colorHover","tabbable","classNames","tokenIdle","tokenHover","tokenActive","tokenWarning","tokenError","tokenDisabled","textholder","className","text","closeButton","_extends","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Token.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport type { SizeProp } from '../../lib/types/props';\nimport { reactGetTextContent } from '../../lib/reactGetTextContent';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Token.styles';\nimport type { TokenLocale } from './locale';\nimport { TokenLocaleHelper } from './locale';\nimport { TokenView } from './TokenView';\n\nexport type TokenSize = SizeProp;\n\nexport interface TokenProps extends Pick<AriaAttributes, 'aria-describedby'>, CommonProps {\n /** Устанавливает, является ли токен активным. */\n isActive?: boolean;\n /** Переводит контрол в состояние валидации \"ошибка\" */\n error?: boolean;\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n /** Делает компонент недоступным. */\n disabled?: boolean;\n /** Задает размер контрола. */\n size?: TokenSize;\n /** Задает функцию, которая вызывается, когда на токен кликнули. */\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда на токен кликнули дважды. */\n onDoubleClick?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен удаляется. */\n onRemove?: React.MouseEventHandler<HTMLElement>;\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен получает фокус. */\n onFocus?: React.FocusEventHandler<HTMLDivElement>;\n /** Задает функцию, которая вызывается, когда токен теряет фокус. */\n onBlur?: React.FocusEventHandler<HTMLDivElement>;\n}\n\nexport const TokenDataTids = {\n root: 'Token__root',\n removeIcon: 'Token__removeIcon',\n} as const;\n\n/**\n * Однородный элемент — `Token`.\n *\n * Используется в компоненте поле с токенами TokenInput.\n */\n@rootNode\n@locale('Token', TokenLocaleHelper)\nexport class Token extends React.Component<TokenProps> {\n public static __KONTUR_REACT_UI__ = 'Token';\n public static displayName = 'Token';\n\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private readonly locale!: TokenLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n size,\n children,\n isActive,\n error,\n warning,\n disabled,\n 'aria-describedby': ariaDescribedby,\n onClick = emptyHandler,\n onDoubleClick = emptyHandler,\n onMouseEnter = emptyHandler,\n onMouseLeave = emptyHandler,\n onFocus = emptyHandler,\n onBlur = emptyHandler,\n } = this.props;\n\n const theme = this.theme;\n\n const removeButtonAriaLabel = this.locale.removeButtonAriaLabel + ' ' + reactGetTextContent(children);\n\n const icon = (\n <CloseButtonIcon\n side={16}\n color=\"inherit\"\n colorHover=\"inherit\"\n aria-label={removeButtonAriaLabel}\n tabbable={false}\n />\n );\n\n const classNames = cx(\n styles.tokenIdle(theme),\n !isActive && !warning && !error && !disabled && styles.tokenHover(theme),\n isActive && styles.tokenActive(theme),\n warning && styles.tokenWarning(theme),\n error && styles.tokenError(theme),\n disabled && styles.tokenDisabled(theme),\n );\n\n const textholder = <span className={styles.text()}>{children}</span>;\n\n const closeButton = (\n <span onClick={this.onRemoveClick} data-tid={TokenDataTids.removeIcon}>\n {icon}\n </span>\n );\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <TokenView\n className={classNames}\n size={size}\n closeButton={closeButton}\n data-tid={TokenDataTids.root}\n aria-describedby={ariaDescribedby}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n {textholder}\n </TokenView>\n </CommonWrapper>\n );\n }\n\n private onRemoveClick = (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n const { disabled, onRemove = emptyHandler } = this.props;\n\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n onRemove(event);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
3
  import type { CommonProps } from '../../internal/CommonWrapper';
4
+ import type { TGetRootNode } from '../../lib/rootNode';
4
5
  import type { SizeProp } from '../../lib/types/props';
5
6
  export type TokenSize = SizeProp;
6
7
  export interface TokenProps extends Pick<AriaAttributes, 'aria-describedby'>, CommonProps {
@@ -42,6 +43,7 @@ export declare class Token extends React.Component<TokenProps> {
42
43
  static __KONTUR_REACT_UI__: string;
43
44
  static displayName: string;
44
45
  private theme;
46
+ getRootNode: TGetRootNode;
45
47
  private setRootNode;
46
48
  private readonly locale;
47
49
  render(): React.JSX.Element;