@skbkontur/react-ui 0.0.0-68e286f9fe → 0.0.0-6911f001e4

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 (800) hide show
  1. package/CHANGELOG.md +182 -0
  2. package/README.md +6 -6
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -4
  4. package/cjs/components/Autocomplete/Autocomplete.js +73 -15
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +4 -1
  7. package/cjs/components/Button/Button.js +47 -17
  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/Button/ButtonArrow.js +13 -14
  13. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  14. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  15. package/cjs/components/Calendar/Calendar.js +1 -0
  16. package/cjs/components/Calendar/Calendar.js.map +1 -1
  17. package/cjs/components/Center/Center.d.ts +2 -0
  18. package/cjs/components/Center/Center.js +1 -0
  19. package/cjs/components/Center/Center.js.map +1 -1
  20. package/cjs/components/Checkbox/Checkbox.d.ts +4 -4
  21. package/cjs/components/Checkbox/Checkbox.js +16 -19
  22. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  23. package/cjs/components/ComboBox/ComboBox.d.ts +20 -7
  24. package/cjs/components/ComboBox/ComboBox.js +19 -1
  25. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  26. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +5 -0
  27. package/cjs/components/CurrencyInput/CurrencyInput.js +9 -1
  28. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  29. package/cjs/components/CurrencyInput/constants.js +1 -2
  30. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  31. package/cjs/components/CurrencyLabel/CurrencyLabel.js +2 -3
  32. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  33. package/cjs/components/DateInput/DateInput.d.ts +5 -1
  34. package/cjs/components/DateInput/DateInput.js +9 -4
  35. package/cjs/components/DateInput/DateInput.js.map +1 -1
  36. package/cjs/components/DatePicker/DatePicker.d.ts +2 -0
  37. package/cjs/components/DatePicker/DatePicker.js +1 -0
  38. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  39. package/cjs/components/DatePicker/MobilePicker.js +1 -0
  40. package/cjs/components/DatePicker/MobilePicker.js.map +1 -1
  41. package/cjs/components/DateRangePicker/DateRangePicker.js +1 -0
  42. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  43. package/cjs/components/Dropdown/Dropdown.d.ts +2 -0
  44. package/cjs/components/Dropdown/Dropdown.js +1 -0
  45. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  46. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  47. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  48. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  49. package/cjs/components/FileUploader/FileUploader.js +1 -0
  50. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  51. package/cjs/components/FxInput/FxInput.d.ts +12 -2
  52. package/cjs/components/FxInput/FxInput.js +141 -58
  53. package/cjs/components/FxInput/FxInput.js.map +1 -1
  54. package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
  55. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  56. package/cjs/components/Gapped/Gapped.d.ts +2 -0
  57. package/cjs/components/Gapped/Gapped.js +1 -0
  58. package/cjs/components/Gapped/Gapped.js.map +1 -1
  59. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  60. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  61. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  62. package/cjs/components/Group/Group.d.ts +2 -0
  63. package/cjs/components/Group/Group.js +1 -0
  64. package/cjs/components/Group/Group.js.map +1 -1
  65. package/cjs/components/Hint/Hint.d.ts +2 -0
  66. package/cjs/components/Hint/Hint.js +1 -0
  67. package/cjs/components/Hint/Hint.js.map +1 -1
  68. package/cjs/components/Input/Input.d.ts +6 -5
  69. package/cjs/components/Input/Input.js +17 -47
  70. package/cjs/components/Input/Input.js.map +1 -1
  71. package/cjs/components/Input/Input.styles.d.ts +0 -1
  72. package/cjs/components/Input/Input.styles.js +8 -19
  73. package/cjs/components/Input/Input.styles.js.map +1 -1
  74. package/cjs/components/Kebab/Kebab.d.ts +4 -1
  75. package/cjs/components/Kebab/Kebab.js +10 -5
  76. package/cjs/components/Kebab/Kebab.js.map +1 -1
  77. package/cjs/components/Link/Link.d.ts +2 -0
  78. package/cjs/components/Link/Link.js +10 -1
  79. package/cjs/components/Link/Link.js.map +1 -1
  80. package/cjs/components/Loader/Loader.d.ts +3 -0
  81. package/cjs/components/Loader/Loader.js +6 -1
  82. package/cjs/components/Loader/Loader.js.map +1 -1
  83. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  84. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
  85. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  86. package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
  87. package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  88. package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
  89. package/cjs/components/MaskedInput/MaskedInput.js +43 -4
  90. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  91. package/cjs/components/MenuItem/MenuItem.d.ts +3 -0
  92. package/cjs/components/MenuItem/MenuItem.js +15 -2
  93. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  94. package/cjs/components/MenuItem/MenuItem.styles.d.ts +3 -1
  95. package/cjs/components/MenuItem/MenuItem.styles.js +35 -21
  96. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  97. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  98. package/cjs/components/Modal/Modal.styles.js +36 -28
  99. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  100. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  101. package/cjs/components/Modal/ModalBody.js +1 -0
  102. package/cjs/components/Modal/ModalBody.js.map +1 -1
  103. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  104. package/cjs/components/Modal/ModalHeader.js +8 -1
  105. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  106. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  107. package/cjs/components/Paging/DotsIcon.js +13 -0
  108. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  109. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  110. package/cjs/components/Paging/ForwardIcon.js +13 -1
  111. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  112. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  113. package/cjs/components/Paging/NavigationHelper.js +8 -6
  114. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  115. package/cjs/components/Paging/Paging.d.ts +13 -1
  116. package/cjs/components/Paging/Paging.js +120 -24
  117. package/cjs/components/Paging/Paging.js.map +1 -1
  118. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  119. package/cjs/components/Paging/Paging.styles.js +151 -22
  120. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  121. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  122. package/cjs/components/Paging/PagingHelper.js +18 -11
  123. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  124. package/cjs/components/PasswordInput/PasswordInput.d.ts +5 -5
  125. package/cjs/components/PasswordInput/PasswordInput.js +21 -22
  126. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  127. package/cjs/components/Radio/Radio.d.ts +4 -1
  128. package/cjs/components/Radio/Radio.js +7 -4
  129. package/cjs/components/Radio/Radio.js.map +1 -1
  130. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  131. package/cjs/components/RadioGroup/RadioGroup.js +1 -0
  132. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  133. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -0
  134. package/cjs/components/ScrollContainer/ScrollContainer.js +1 -0
  135. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  136. package/cjs/components/Select/Select.d.ts +4 -1
  137. package/cjs/components/Select/Select.js +11 -6
  138. package/cjs/components/Select/Select.js.map +1 -1
  139. package/cjs/components/SidePage/SidePage.js +3 -1
  140. package/cjs/components/SidePage/SidePage.js.map +1 -1
  141. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  142. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  143. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  144. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  145. package/cjs/components/SidePage/SidePageBody.js +1 -0
  146. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  147. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  148. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  149. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  150. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  151. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  152. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  153. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  154. package/cjs/components/SidePage/SidePageHeader.js +60 -19
  155. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  156. package/cjs/components/SingleToast/SingleToast.d.ts +32 -2
  157. package/cjs/components/SingleToast/SingleToast.js +58 -3
  158. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  159. package/cjs/components/Spinner/Spinner.d.ts +2 -0
  160. package/cjs/components/Spinner/Spinner.js +1 -0
  161. package/cjs/components/Spinner/Spinner.js.map +1 -1
  162. package/cjs/components/Sticky/Sticky.d.ts +2 -0
  163. package/cjs/components/Sticky/Sticky.js +1 -0
  164. package/cjs/components/Sticky/Sticky.js.map +1 -1
  165. package/cjs/components/Switcher/Switcher.d.ts +2 -0
  166. package/cjs/components/Switcher/Switcher.js +1 -0
  167. package/cjs/components/Switcher/Switcher.js.map +1 -1
  168. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  169. package/cjs/components/Tabs/Indicator.js +1 -0
  170. package/cjs/components/Tabs/Indicator.js.map +1 -1
  171. package/cjs/components/Tabs/Tab.d.ts +2 -0
  172. package/cjs/components/Tabs/Tab.js +1 -0
  173. package/cjs/components/Tabs/Tab.js.map +1 -1
  174. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  175. package/cjs/components/Tabs/Tabs.js +1 -0
  176. package/cjs/components/Tabs/Tabs.js.map +1 -1
  177. package/cjs/components/Textarea/Textarea.d.ts +4 -1
  178. package/cjs/components/Textarea/Textarea.js +9 -4
  179. package/cjs/components/Textarea/Textarea.js.map +1 -1
  180. package/cjs/components/Textarea/Textarea.styles.js +3 -3
  181. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  182. package/cjs/components/Toast/Toast.d.ts +56 -9
  183. package/cjs/components/Toast/Toast.js +104 -11
  184. package/cjs/components/Toast/Toast.js.map +1 -1
  185. package/cjs/components/Toast/ToastView.d.ts +7 -1
  186. package/cjs/components/Toast/ToastView.js +22 -5
  187. package/cjs/components/Toast/ToastView.js.map +1 -1
  188. package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
  189. package/cjs/components/Toast/ToastView.styles.js +43 -9
  190. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  191. package/cjs/components/Toggle/Toggle.d.ts +4 -1
  192. package/cjs/components/Toggle/Toggle.js +6 -5
  193. package/cjs/components/Toggle/Toggle.js.map +1 -1
  194. package/cjs/components/Token/Token.d.ts +2 -0
  195. package/cjs/components/Token/Token.js +1 -0
  196. package/cjs/components/Token/Token.js.map +1 -1
  197. package/cjs/components/TokenInput/TokenInput.d.ts +6 -1
  198. package/cjs/components/TokenInput/TokenInput.js +43 -30
  199. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  200. package/cjs/components/Tooltip/Tooltip.d.ts +12 -5
  201. package/cjs/components/Tooltip/Tooltip.js +100 -13
  202. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  203. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  204. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  205. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  206. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  207. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  208. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  209. package/cjs/index.d.ts +1 -0
  210. package/cjs/index.js +1 -0
  211. package/cjs/index.js.map +1 -1
  212. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +4 -4
  213. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
  214. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  215. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  216. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  217. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +8 -4
  218. package/cjs/internal/CustomComboBox/ComboBoxView.js +35 -25
  219. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  220. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +7 -2
  221. package/cjs/internal/CustomComboBox/CustomComboBox.js +17 -5
  222. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  223. package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
  224. package/cjs/internal/CustomComboBox/getComboBoxTheme.js +10 -7
  225. package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
  226. package/cjs/internal/DateSelect/DateSelect.js +1 -1
  227. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  228. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  229. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  230. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  231. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  232. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  233. package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
  234. package/cjs/internal/InputLikeText/InputLikeText.js +13 -14
  235. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  236. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +1 -0
  237. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +23 -21
  238. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
  239. package/cjs/internal/Menu/Menu.d.ts +2 -0
  240. package/cjs/internal/Menu/Menu.js +1 -0
  241. package/cjs/internal/Menu/Menu.js.map +1 -1
  242. package/cjs/internal/MenuMessage/MenuMessage.js +13 -1
  243. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  244. package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +3 -1
  245. package/cjs/internal/MenuMessage/MenuMessage.styles.js +24 -8
  246. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  247. package/cjs/internal/MobilePopup/MobilePopup.d.ts +9 -0
  248. package/cjs/internal/MobilePopup/MobilePopup.js +24 -1
  249. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  250. package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +7 -3
  251. package/cjs/internal/MobilePopup/MobilePopup.styles.js +55 -19
  252. package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
  253. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +8 -1
  254. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +36 -18
  255. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
  256. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +3 -0
  257. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +23 -3
  258. package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -1
  259. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -0
  260. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +31 -33
  261. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  262. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +3 -2
  263. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +22 -13
  264. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
  265. package/cjs/internal/Popup/Popup.d.ts +2 -0
  266. package/cjs/internal/Popup/Popup.js +14 -3
  267. package/cjs/internal/Popup/Popup.js.map +1 -1
  268. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  269. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  270. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  271. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  272. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  273. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  274. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  275. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  276. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  277. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -0
  278. package/cjs/internal/RenderLayer/RenderLayer.js +1 -0
  279. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  280. package/cjs/internal/ThemePlayground/Playground.js +5 -1
  281. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  282. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  283. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  284. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  285. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  286. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  287. package/cjs/internal/ZIndex/ZIndex.d.ts +2 -0
  288. package/cjs/internal/ZIndex/ZIndex.js +1 -0
  289. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  290. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  291. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  292. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  293. package/cjs/internal/themes/BasicTheme.d.ts +147 -28
  294. package/cjs/internal/themes/BasicTheme.js +800 -33
  295. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  296. package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
  297. package/cjs/internal/themes/DarkTheme5_4.js +18 -0
  298. package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
  299. package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
  300. package/cjs/internal/themes/LightTheme5_4.js +18 -0
  301. package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
  302. package/cjs/internal/themes/consts.d.ts +8 -0
  303. package/cjs/internal/themes/consts.js +8 -0
  304. package/cjs/internal/themes/consts.js.map +1 -0
  305. package/cjs/lib/__stories__/Blink.creevey.mts +90 -0
  306. package/cjs/lib/blink.d.ts +15 -0
  307. package/cjs/lib/blink.js +65 -0
  308. package/cjs/lib/blink.js.map +1 -0
  309. package/cjs/lib/delay.mts +3 -0
  310. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +6 -0
  311. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  312. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +13 -1
  313. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  314. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  315. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  316. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  317. package/cjs/lib/size/SizeControlContext.d.ts +6 -0
  318. package/cjs/lib/size/SizeControlContext.js +16 -0
  319. package/cjs/lib/size/SizeControlContext.js.map +1 -0
  320. package/cjs/lib/size/SizeDecorator.d.ts +33 -0
  321. package/cjs/lib/size/SizeDecorator.js +41 -0
  322. package/cjs/lib/size/SizeDecorator.js.map +1 -0
  323. package/cjs/lib/size/constants.d.ts +2 -0
  324. package/cjs/lib/size/constants.js +3 -0
  325. package/cjs/lib/size/constants.js.map +1 -0
  326. package/cjs/lib/size/index.d.ts +1 -0
  327. package/cjs/lib/size/index.js +1 -0
  328. package/cjs/lib/size/index.js.map +1 -0
  329. package/cjs/lib/size/useSizeControl.d.ts +2 -0
  330. package/cjs/lib/size/useSizeControl.js +10 -0
  331. package/cjs/lib/size/useSizeControl.js.map +1 -0
  332. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  333. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  334. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  335. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  336. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  337. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  338. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  339. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  340. package/cjs/lib/utils.d.ts +13 -0
  341. package/cjs/lib/utils.js +34 -1
  342. package/cjs/lib/utils.js.map +1 -1
  343. package/components/Autocomplete/Autocomplete/Autocomplete.js +72 -32
  344. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  345. package/components/Autocomplete/Autocomplete.d.ts +18 -4
  346. package/components/Button/Button/Button.js +45 -24
  347. package/components/Button/Button/Button.js.map +1 -1
  348. package/components/Button/Button.d.ts +4 -1
  349. package/components/Button/Button.styles/Button.styles.js +78 -60
  350. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  351. package/components/Button/Button.styles.d.ts +6 -0
  352. package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
  353. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  354. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  355. package/components/Calendar/Calendar.d.ts +2 -0
  356. package/components/Center/Center/Center.js.map +1 -1
  357. package/components/Center/Center.d.ts +2 -0
  358. package/components/Checkbox/Checkbox/Checkbox.js +12 -13
  359. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  360. package/components/Checkbox/Checkbox.d.ts +4 -4
  361. package/components/ComboBox/ComboBox/ComboBox.js +1 -1
  362. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  363. package/components/ComboBox/ComboBox.d.ts +20 -7
  364. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +6 -2
  365. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  366. package/components/CurrencyInput/CurrencyInput.d.ts +5 -0
  367. package/components/CurrencyInput/constants/constants.js +0 -1
  368. package/components/CurrencyInput/constants/constants.js.map +1 -1
  369. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +1 -1
  370. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  371. package/components/DateInput/DateInput/DateInput.js +9 -8
  372. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  373. package/components/DateInput/DateInput.d.ts +5 -1
  374. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  375. package/components/DatePicker/DatePicker.d.ts +2 -0
  376. package/components/DatePicker/MobilePicker/MobilePicker.js +1 -0
  377. package/components/DatePicker/MobilePicker/MobilePicker.js.map +1 -1
  378. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +1 -0
  379. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  380. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  381. package/components/Dropdown/Dropdown.d.ts +2 -0
  382. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  383. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  384. package/components/FileUploader/FileUploader/FileUploader.js +1 -0
  385. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  386. package/components/FxInput/FxInput/FxInput.js +121 -65
  387. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  388. package/components/FxInput/FxInput.d.ts +12 -2
  389. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
  390. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  391. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  392. package/components/Gapped/Gapped.d.ts +2 -0
  393. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  394. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  395. package/components/Group/Group/Group.js.map +1 -1
  396. package/components/Group/Group.d.ts +2 -0
  397. package/components/Hint/Hint/Hint.js.map +1 -1
  398. package/components/Hint/Hint.d.ts +2 -0
  399. package/components/Input/Input/Input.js +23 -52
  400. package/components/Input/Input/Input.js.map +1 -1
  401. package/components/Input/Input.d.ts +6 -5
  402. package/components/Input/Input.styles/Input.styles.js +9 -13
  403. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  404. package/components/Input/Input.styles.d.ts +0 -1
  405. package/components/Kebab/Kebab/Kebab.js +7 -7
  406. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  407. package/components/Kebab/Kebab.d.ts +4 -1
  408. package/components/Link/Link/Link.js +4 -1
  409. package/components/Link/Link/Link.js.map +1 -1
  410. package/components/Link/Link.d.ts +2 -0
  411. package/components/Loader/Loader/Loader.js +2 -1
  412. package/components/Loader/Loader/Loader.js.map +1 -1
  413. package/components/Loader/Loader.d.ts +3 -0
  414. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
  415. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
  416. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  417. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
  418. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
  419. package/components/MaskedInput/MaskedInput/MaskedInput.js +28 -2
  420. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  421. package/components/MaskedInput/MaskedInput.d.ts +9 -0
  422. package/components/MenuItem/MenuItem/MenuItem.js +12 -1
  423. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  424. package/components/MenuItem/MenuItem.d.ts +3 -0
  425. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +25 -19
  426. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  427. package/components/MenuItem/MenuItem.styles.d.ts +3 -1
  428. package/components/Modal/Modal.styles/Modal.styles.js +31 -28
  429. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  430. package/components/Modal/Modal.styles.d.ts +1 -0
  431. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  432. package/components/Modal/ModalBody.d.ts +2 -0
  433. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  434. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  435. package/components/Modal/ModalHeader.d.ts +5 -0
  436. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  437. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  438. package/components/Paging/DotsIcon/package.json +6 -0
  439. package/components/Paging/DotsIcon.d.ts +3 -0
  440. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  441. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  442. package/components/Paging/ForwardIcon.d.ts +3 -0
  443. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  444. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  445. package/components/Paging/NavigationHelper.d.ts +3 -2
  446. package/components/Paging/Paging/Paging.js +95 -25
  447. package/components/Paging/Paging/Paging.js.map +1 -1
  448. package/components/Paging/Paging.d.ts +13 -1
  449. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  450. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  451. package/components/Paging/Paging.styles.d.ts +24 -1
  452. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  453. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  454. package/components/Paging/PagingHelper.d.ts +1 -1
  455. package/components/PasswordInput/PasswordInput/PasswordInput.js +13 -19
  456. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  457. package/components/PasswordInput/PasswordInput.d.ts +5 -5
  458. package/components/Radio/Radio/Radio.js +7 -7
  459. package/components/Radio/Radio/Radio.js.map +1 -1
  460. package/components/Radio/Radio.d.ts +4 -1
  461. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  462. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  463. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  464. package/components/ScrollContainer/ScrollContainer.d.ts +2 -0
  465. package/components/Select/Select/Select.js +17 -15
  466. package/components/Select/Select/Select.js.map +1 -1
  467. package/components/Select/Select.d.ts +4 -1
  468. package/components/SidePage/SidePage/SidePage.js +2 -2
  469. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  470. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  471. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  472. package/components/SidePage/SidePage.styles.d.ts +3 -1
  473. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  474. package/components/SidePage/SidePageBody.d.ts +2 -0
  475. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  476. package/components/SidePage/SidePageContainer.d.ts +2 -0
  477. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  478. package/components/SidePage/SidePageFooter.d.ts +2 -0
  479. package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
  480. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  481. package/components/SidePage/SidePageHeader.d.ts +12 -2
  482. package/components/SingleToast/SingleToast/SingleToast.js +37 -12
  483. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  484. package/components/SingleToast/SingleToast.d.ts +32 -2
  485. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  486. package/components/Spinner/Spinner.d.ts +2 -0
  487. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  488. package/components/Sticky/Sticky.d.ts +2 -0
  489. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  490. package/components/Switcher/Switcher.d.ts +2 -0
  491. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  492. package/components/Tabs/Indicator.d.ts +2 -0
  493. package/components/Tabs/Tab/Tab.js.map +1 -1
  494. package/components/Tabs/Tab.d.ts +2 -0
  495. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  496. package/components/Tabs/Tabs.d.ts +2 -0
  497. package/components/Textarea/Textarea/Textarea.js +7 -6
  498. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  499. package/components/Textarea/Textarea.d.ts +4 -1
  500. package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
  501. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  502. package/components/Toast/Toast/Toast.js +86 -23
  503. package/components/Toast/Toast/Toast.js.map +1 -1
  504. package/components/Toast/Toast.d.ts +56 -9
  505. package/components/Toast/ToastView/ToastView.js +17 -5
  506. package/components/Toast/ToastView/ToastView.js.map +1 -1
  507. package/components/Toast/ToastView.d.ts +7 -1
  508. package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
  509. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  510. package/components/Toast/ToastView.styles.d.ts +4 -0
  511. package/components/Toggle/Toggle/Toggle.js +10 -10
  512. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  513. package/components/Toggle/Toggle.d.ts +4 -1
  514. package/components/Token/Token/Token.js.map +1 -1
  515. package/components/Token/Token.d.ts +2 -0
  516. package/components/TokenInput/TokenInput/TokenInput.js +47 -42
  517. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  518. package/components/TokenInput/TokenInput.d.ts +6 -1
  519. package/components/Tooltip/Tooltip/Tooltip.js +69 -19
  520. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  521. package/components/Tooltip/Tooltip.d.ts +12 -5
  522. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  523. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  524. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  525. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  526. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  527. package/index.d.ts +1 -0
  528. package/index.js +1 -0
  529. package/index.js.map +1 -1
  530. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +1 -1
  531. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
  532. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  533. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  534. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +46 -45
  535. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  536. package/internal/CustomComboBox/ComboBoxView.d.ts +8 -4
  537. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +12 -7
  538. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  539. package/internal/CustomComboBox/CustomComboBox.d.ts +7 -2
  540. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +5 -3
  541. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -1
  542. package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
  543. package/internal/DateSelect/DateSelect/DateSelect.js +1 -1
  544. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  545. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  546. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  547. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  548. package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -28
  549. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  550. package/internal/InputLikeText/InputLikeText.d.ts +4 -3
  551. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +21 -16
  552. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
  553. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +1 -0
  554. package/internal/Menu/Menu/Menu.js.map +1 -1
  555. package/internal/Menu/Menu.d.ts +2 -0
  556. package/internal/MenuMessage/MenuMessage/MenuMessage.js +12 -1
  557. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  558. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +12 -6
  559. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
  560. package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -1
  561. package/internal/MobilePopup/MobilePopup/MobilePopup.js +19 -6
  562. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  563. package/internal/MobilePopup/MobilePopup.d.ts +9 -0
  564. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +24 -12
  565. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
  566. package/internal/MobilePopup/MobilePopup.styles.d.ts +7 -3
  567. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js +23 -9
  568. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
  569. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +8 -1
  570. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js +11 -2
  571. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js.map +1 -1
  572. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +3 -0
  573. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +29 -23
  574. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  575. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -0
  576. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +12 -9
  577. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
  578. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +3 -2
  579. package/internal/Popup/Popup/Popup.js +10 -3
  580. package/internal/Popup/Popup/Popup.js.map +1 -1
  581. package/internal/Popup/Popup.d.ts +2 -0
  582. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  583. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  584. package/internal/Popup/PopupPinNew/package.json +6 -0
  585. package/internal/Popup/PopupPinNew.d.ts +31 -0
  586. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  587. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  588. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  589. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  590. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  591. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  592. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  593. package/internal/RenderLayer/RenderLayer.d.ts +2 -0
  594. package/internal/ThemePlayground/Playground/Playground.js +8 -5
  595. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  596. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  597. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  598. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  599. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  600. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  601. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  602. package/internal/ZIndex/ZIndex.d.ts +2 -0
  603. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  604. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  605. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  606. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  607. package/internal/themes/BasicTheme/BasicTheme.js +267 -44
  608. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  609. package/internal/themes/BasicTheme.d.ts +147 -28
  610. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +17 -0
  611. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
  612. package/internal/themes/DarkTheme5_4/package.json +6 -0
  613. package/internal/themes/DarkTheme5_4.d.ts +1 -0
  614. package/internal/themes/LightTheme5_4/LightTheme5_4.js +17 -0
  615. package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
  616. package/internal/themes/LightTheme5_4/package.json +6 -0
  617. package/internal/themes/LightTheme5_4.d.ts +1 -0
  618. package/internal/themes/consts/consts.js +9 -0
  619. package/internal/themes/consts/consts.js.map +1 -0
  620. package/internal/themes/consts/package.json +6 -0
  621. package/internal/themes/consts.d.ts +8 -0
  622. package/lib/__stories__/Blink.creevey.mts +90 -0
  623. package/lib/blink/blink.js +63 -0
  624. package/lib/blink/blink.js.map +1 -0
  625. package/lib/blink/package.json +6 -0
  626. package/lib/blink.d.ts +15 -0
  627. package/lib/delay.d.mts +1 -0
  628. package/lib/delay.mts +3 -0
  629. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +6 -0
  630. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +7 -1
  631. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  632. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  633. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  634. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  635. package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
  636. package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
  637. package/lib/size/SizeControlContext/package.json +6 -0
  638. package/lib/size/SizeControlContext.d.ts +6 -0
  639. package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
  640. package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
  641. package/lib/size/SizeDecorator/package.json +6 -0
  642. package/lib/size/SizeDecorator.d.ts +33 -0
  643. package/lib/size/constants/constants.js +1 -0
  644. package/lib/size/constants/constants.js.map +1 -0
  645. package/lib/size/constants/package.json +6 -0
  646. package/lib/size/constants.d.ts +2 -0
  647. package/lib/size/index/index.js +1 -0
  648. package/lib/size/index/index.js.map +1 -0
  649. package/lib/size/index/package.json +6 -0
  650. package/lib/size/index.d.ts +1 -0
  651. package/lib/size/package.json +6 -0
  652. package/lib/size/useSizeControl/package.json +6 -0
  653. package/lib/size/useSizeControl/useSizeControl.js +7 -0
  654. package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
  655. package/lib/size/useSizeControl.d.ts +2 -0
  656. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  657. package/lib/theming/ThemeVersions.d.ts +1 -1
  658. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  659. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  660. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  661. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  662. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  663. package/lib/theming/themes/LightTheme.d.ts +1 -0
  664. package/lib/utils/utils.js +26 -0
  665. package/lib/utils/utils.js.map +1 -1
  666. package/lib/utils.d.ts +13 -0
  667. package/package.json +9 -15
  668. package/cjs/components/Autocomplete/Autocomplete.md +0 -113
  669. package/cjs/components/Button/Button.md +0 -261
  670. package/cjs/components/Calendar/Calendar.md +0 -276
  671. package/cjs/components/Calendar/CalendarDay.md +0 -70
  672. package/cjs/components/Center/Center.md +0 -26
  673. package/cjs/components/Checkbox/Checkbox.md +0 -171
  674. package/cjs/components/ComboBox/ComboBox.md +0 -574
  675. package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
  676. package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
  677. package/cjs/components/DateInput/DateInput.md +0 -111
  678. package/cjs/components/DatePicker/DatePicker.md +0 -368
  679. package/cjs/components/Dropdown/Dropdown.md +0 -45
  680. package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
  681. package/cjs/components/FileUploader/FileUploader.md +0 -131
  682. package/cjs/components/FxInput/FxInput.md +0 -31
  683. package/cjs/components/Gapped/Gapped.md +0 -44
  684. package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
  685. package/cjs/components/Group/Group.md +0 -19
  686. package/cjs/components/Hint/Hint.md +0 -86
  687. package/cjs/components/Input/Input.md +0 -86
  688. package/cjs/components/Kebab/Kebab.md +0 -306
  689. package/cjs/components/Link/Link.md +0 -182
  690. package/cjs/components/Loader/Loader.md +0 -33
  691. package/cjs/components/MaskedInput/MaskedInput.md +0 -114
  692. package/cjs/components/MenuFooter/MenuFooter.md +0 -27
  693. package/cjs/components/MenuHeader/MenuHeader.md +0 -35
  694. package/cjs/components/MenuItem/MenuItem.md +0 -139
  695. package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
  696. package/cjs/components/MiniModal/MiniModal.md +0 -231
  697. package/cjs/components/Modal/Modal.md +0 -56
  698. package/cjs/components/Paging/Paging.md +0 -57
  699. package/cjs/components/PasswordInput/PasswordInput.md +0 -29
  700. package/cjs/components/Radio/Radio.md +0 -57
  701. package/cjs/components/RadioGroup/RadioGroup.md +0 -44
  702. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  703. package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
  704. package/cjs/components/Select/Select.md +0 -113
  705. package/cjs/components/SidePage/SidePage.md +0 -65
  706. package/cjs/components/SingleToast/SingleToast.md +0 -36
  707. package/cjs/components/Spinner/Spinner.md +0 -36
  708. package/cjs/components/Sticky/Sticky.md +0 -28
  709. package/cjs/components/Switcher/Switcher.md +0 -111
  710. package/cjs/components/Tabs/Tab.md +0 -73
  711. package/cjs/components/Tabs/Tabs.md +0 -54
  712. package/cjs/components/Textarea/Textarea.md +0 -58
  713. package/cjs/components/Toast/Toast.md +0 -69
  714. package/cjs/components/Toggle/Toggle.md +0 -110
  715. package/cjs/components/Token/Token.md +0 -48
  716. package/cjs/components/TokenInput/TokenInput.md +0 -277
  717. package/cjs/components/Tooltip/Tooltip.md +0 -322
  718. package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
  719. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  720. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  721. package/cjs/internal/DataTids/DataTids.js +0 -50
  722. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  723. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  724. package/cjs/internal/DataTids/DataTids.styles.js +0 -42
  725. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  726. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  727. package/cjs/internal/DataTids/componentsDataTids.js +0 -15
  728. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  729. package/cjs/internal/ThemePlayground/Playground.md +0 -7
  730. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  731. package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
  732. package/cjs/lib/theming/ThemeContext.md +0 -265
  733. package/components/Autocomplete/Autocomplete.md +0 -113
  734. package/components/Button/Button.md +0 -261
  735. package/components/Calendar/Calendar.md +0 -276
  736. package/components/Calendar/CalendarDay.md +0 -70
  737. package/components/Center/Center.md +0 -26
  738. package/components/Checkbox/Checkbox.md +0 -171
  739. package/components/ComboBox/ComboBox.md +0 -574
  740. package/components/CurrencyInput/CurrencyInput.md +0 -39
  741. package/components/CurrencyLabel/CurrencyLabel.md +0 -29
  742. package/components/DateInput/DateInput.md +0 -111
  743. package/components/DatePicker/DatePicker.md +0 -368
  744. package/components/Dropdown/Dropdown.md +0 -45
  745. package/components/DropdownMenu/DropdownMenu.md +0 -290
  746. package/components/FileUploader/FileUploader.md +0 -131
  747. package/components/FxInput/FxInput.md +0 -31
  748. package/components/Gapped/Gapped.md +0 -44
  749. package/components/GlobalLoader/GlobalLoader.md +0 -97
  750. package/components/Group/Group.md +0 -19
  751. package/components/Hint/Hint.md +0 -86
  752. package/components/Input/Input.md +0 -86
  753. package/components/Kebab/Kebab.md +0 -306
  754. package/components/Link/Link.md +0 -182
  755. package/components/Loader/Loader.md +0 -33
  756. package/components/MaskedInput/MaskedInput.md +0 -114
  757. package/components/MenuFooter/MenuFooter.md +0 -27
  758. package/components/MenuHeader/MenuHeader.md +0 -35
  759. package/components/MenuItem/MenuItem.md +0 -139
  760. package/components/MenuSeparator/MenuSeparator.md +0 -14
  761. package/components/MiniModal/MiniModal.md +0 -231
  762. package/components/Modal/Modal.md +0 -56
  763. package/components/Paging/Paging.md +0 -57
  764. package/components/PasswordInput/PasswordInput.md +0 -29
  765. package/components/Radio/Radio.md +0 -57
  766. package/components/RadioGroup/RadioGroup.md +0 -44
  767. package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  768. package/components/ScrollContainer/ScrollContainer.md +0 -224
  769. package/components/Select/Select.md +0 -113
  770. package/components/SidePage/SidePage.md +0 -65
  771. package/components/SingleToast/SingleToast.md +0 -36
  772. package/components/Spinner/Spinner.md +0 -36
  773. package/components/Sticky/Sticky.md +0 -28
  774. package/components/Switcher/Switcher.md +0 -111
  775. package/components/Tabs/Tab.md +0 -73
  776. package/components/Tabs/Tabs.md +0 -54
  777. package/components/Textarea/Textarea.md +0 -58
  778. package/components/Toast/Toast.md +0 -69
  779. package/components/Toggle/Toggle.md +0 -110
  780. package/components/Token/Token.md +0 -48
  781. package/components/TokenInput/TokenInput.md +0 -277
  782. package/components/Tooltip/Tooltip.md +0 -322
  783. package/components/TooltipMenu/TooltipMenu.md +0 -241
  784. package/internal/DataTids/DATATIDS.md +0 -12
  785. package/internal/DataTids/DataTids/DataTids.js +0 -69
  786. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  787. package/internal/DataTids/DataTids/package.json +0 -6
  788. package/internal/DataTids/DataTids.d.ts +0 -12
  789. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
  790. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  791. package/internal/DataTids/DataTids.styles/package.json +0 -6
  792. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  793. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
  794. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  795. package/internal/DataTids/componentsDataTids/package.json +0 -6
  796. package/internal/DataTids/componentsDataTids.d.ts +0 -5
  797. package/internal/ThemePlayground/Playground.md +0 -7
  798. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  799. package/lib/locale/LOCALECONTEXT.md +0 -222
  800. package/lib/theming/ThemeContext.md +0 -265
@@ -1 +1 @@
1
- {"version":3,"names":["React","isIE11","isEdge","CommonWrapper","cx","rootNode","isButton","isAutocomplete","isCurrencyInput","isDropdown","isDropdownMenu","isFxInput","isInput","isPasswordInput","isSelect","isTooltip","isHint","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","Children","count","getButtonCorners","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","tryPassCorners","child","corners","cloneElement","_extends","props","hasWidthInPercent","String","width","includes","GroupDataTids","root","Group","_class","_Group","_React$Component","_this","_len","arguments","length","args","_key","call","apply","concat","renderChild","isWidthInPercent","_cx","_cx2","createElement","className","fixed","stretch","stretchFallback","Boolean","item","itemFirst","_inheritsLoose","_proto","prototype","render","_this2","style","childrenArray","toArray","firstChild","lastChild","Consumer","flags","featureFlags","rootNodeRef","setRootNode","map","isValidElement","groupAddHintAndTooltipSupport","renderWrappedChildren","parent","isParentFirst","isParentLast","_this3","_cx3","shouldStretchParent","nestedChildren","modifiedChildren","nestedChild","index","wrappedChildren","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Group.tsx"],"sourcesContent":["import React from 'react';\n\nimport { isIE11, isEdge } from '../../lib/client';\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 {\n isButton,\n isAutocomplete,\n isCurrencyInput,\n isDropdown,\n isDropdownMenu,\n isFxInput,\n isInput,\n isPasswordInput,\n isSelect,\n isTooltip,\n isHint,\n} from '../../lib/utils';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Group.styles';\n\nexport interface GroupProps extends CommonProps {\n /** Задает длину компонента Group. */\n width?: React.CSSProperties['width'];\n}\n\ninterface GroupChildProps extends CommonProps {\n width?: React.CSSProperties['width'];\n corners?: number;\n}\n\nconst getFirstChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n return children?.[0] as React.ReactNode;\n};\n\nconst getLastChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n const numberOfChildren = React.Children.count(children);\n\n return children?.[numberOfChildren - 1] as React.ReactNode;\n};\n\nexport const getButtonCorners = (isFirstChild: boolean, isLastChild: boolean): React.CSSProperties => {\n if (isFirstChild && isLastChild) {\n return {};\n }\n\n if (isFirstChild) {\n return {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n };\n }\n\n if (isLastChild) {\n return {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n };\n }\n\n return {\n borderRadius: 0,\n };\n};\n\nconst tryPassCorners = (child: React.ReactNode, isFirstChild: boolean, isLastChild: boolean) => {\n const corners = getButtonCorners(isFirstChild, isLastChild);\n\n if (\n isButton(child) ||\n isInput(child) ||\n isFxInput(child) ||\n isAutocomplete(child) ||\n isPasswordInput(child) ||\n isCurrencyInput(child) ||\n isSelect(child) ||\n isDropdown(child) ||\n isDropdownMenu(child)\n ) {\n return React.cloneElement<(typeof child)['props']>(child, { corners: { ...corners, ...child.props.corners } });\n }\n\n return child;\n};\n\nconst hasWidthInPercent = (child: React.ReactElement<GroupChildProps>) => String(child.props.width).includes('%');\n\nexport const GroupDataTids = {\n root: 'Group__root',\n} as const;\n\n/**\n * Компонент `Group` используется для создания логически сгруппированных элементов, выровненных по горизонтали.\n *\n * Длина контейнера настраивается с помощью пропа `width`.\n */\n@rootNode\nexport class Group extends React.Component<GroupProps> {\n public static __KONTUR_REACT_UI__ = 'Group';\n public static displayName = 'Group';\n\n private setRootNode!: TSetRootNode;\n private featureFlags!: ReactUIFeatureFlags;\n\n public render() {\n const style: React.CSSProperties = {\n width: this.props.width,\n };\n\n const childrenArray = React.Children.toArray(this.props.children);\n const firstChild = getFirstChild(childrenArray);\n const lastChild = getLastChild(childrenArray);\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span data-tid={GroupDataTids.root} className={styles.root()} style={style}>\n {React.Children.map(childrenArray, (child) => {\n if (!child || !React.isValidElement<GroupChildProps>(child)) {\n return null;\n }\n\n const isFirstChild = child === firstChild;\n const isLastChild = child === lastChild;\n\n if (this.featureFlags.groupAddHintAndTooltipSupport && (isHint(child) || isTooltip(child))) {\n return this.renderWrappedChildren(child, isFirstChild, isLastChild);\n }\n\n return this.renderChild(child, isFirstChild, isLastChild, hasWidthInPercent(child));\n })}\n </span>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderChild = (\n child: React.ReactNode,\n isFirstChild: boolean,\n isLastChild: boolean,\n isWidthInPercent: boolean,\n ) => (\n <div\n className={cx({\n [styles.fixed()]: !isWidthInPercent,\n [styles.stretch()]: isWidthInPercent,\n [styles.stretchFallback()]: Boolean(isWidthInPercent && this.props.width && (isIE11 || isEdge)),\n })}\n >\n <div\n className={cx({\n [styles.item()]: true,\n [styles.itemFirst()]: isFirstChild,\n })}\n >\n {tryPassCorners(child, isFirstChild, isLastChild)}\n </div>\n </div>\n );\n\n private renderWrappedChildren(\n parent: React.ReactElement<GroupChildProps>,\n isParentFirst: boolean,\n isParentLast: boolean,\n ): React.ReactNode {\n let shouldStretchParent = false;\n const nestedChildren = React.Children.toArray(parent.props.children);\n\n const modifiedChildren = nestedChildren.map((nestedChild, index) => {\n if (!nestedChild || !React.isValidElement<GroupChildProps>(nestedChild)) {\n return null;\n }\n\n const isFirstChild = isParentFirst && index === 0;\n const isLastChild = isParentLast && index === nestedChildren.length - 1;\n if (hasWidthInPercent(nestedChild)) {\n shouldStretchParent = true;\n }\n\n return this.renderChild(nestedChild, isFirstChild, isLastChild, hasWidthInPercent(nestedChild));\n });\n\n const wrappedChildren = (\n <div className={cx(styles.wrappedChildren(), { [styles.stretch()]: shouldStretchParent })}>\n {modifiedChildren}\n </div>\n );\n\n return React.cloneElement<GroupChildProps>(parent, {\n children: wrappedChildren,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","isIE11","isEdge","CommonWrapper","cx","rootNode","isButton","isAutocomplete","isCurrencyInput","isDropdown","isDropdownMenu","isFxInput","isInput","isPasswordInput","isSelect","isTooltip","isHint","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","Children","count","getButtonCorners","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","tryPassCorners","child","corners","cloneElement","_extends","props","hasWidthInPercent","String","width","includes","GroupDataTids","root","Group","_class","_Group","_React$Component","_this","_len","arguments","length","args","_key","call","apply","concat","renderChild","isWidthInPercent","_cx","_cx2","createElement","className","fixed","stretch","stretchFallback","Boolean","item","itemFirst","_inheritsLoose","_proto","prototype","render","_this2","style","childrenArray","toArray","firstChild","lastChild","Consumer","flags","featureFlags","rootNodeRef","setRootNode","map","isValidElement","groupAddHintAndTooltipSupport","renderWrappedChildren","parent","isParentFirst","isParentLast","_this3","_cx3","shouldStretchParent","nestedChildren","modifiedChildren","nestedChild","index","wrappedChildren","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Group.tsx"],"sourcesContent":["import React from 'react';\n\nimport { isIE11, isEdge } from '../../lib/client';\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 {\n isButton,\n isAutocomplete,\n isCurrencyInput,\n isDropdown,\n isDropdownMenu,\n isFxInput,\n isInput,\n isPasswordInput,\n isSelect,\n isTooltip,\n isHint,\n} from '../../lib/utils';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Group.styles';\n\nexport interface GroupProps extends CommonProps {\n /** Задает длину компонента Group. */\n width?: React.CSSProperties['width'];\n}\n\ninterface GroupChildProps extends CommonProps {\n width?: React.CSSProperties['width'];\n corners?: number;\n}\n\nconst getFirstChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n return children?.[0] as React.ReactNode;\n};\n\nconst getLastChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n const numberOfChildren = React.Children.count(children);\n\n return children?.[numberOfChildren - 1] as React.ReactNode;\n};\n\nexport const getButtonCorners = (isFirstChild: boolean, isLastChild: boolean): React.CSSProperties => {\n if (isFirstChild && isLastChild) {\n return {};\n }\n\n if (isFirstChild) {\n return {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n };\n }\n\n if (isLastChild) {\n return {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n };\n }\n\n return {\n borderRadius: 0,\n };\n};\n\nconst tryPassCorners = (child: React.ReactNode, isFirstChild: boolean, isLastChild: boolean) => {\n const corners = getButtonCorners(isFirstChild, isLastChild);\n\n if (\n isButton(child) ||\n isInput(child) ||\n isFxInput(child) ||\n isAutocomplete(child) ||\n isPasswordInput(child) ||\n isCurrencyInput(child) ||\n isSelect(child) ||\n isDropdown(child) ||\n isDropdownMenu(child)\n ) {\n return React.cloneElement<(typeof child)['props']>(child, { corners: { ...corners, ...child.props.corners } });\n }\n\n return child;\n};\n\nconst hasWidthInPercent = (child: React.ReactElement<GroupChildProps>) => String(child.props.width).includes('%');\n\nexport const GroupDataTids = {\n root: 'Group__root',\n} as const;\n\n/**\n * Компонент `Group` используется для создания логически сгруппированных элементов, выровненных по горизонтали.\n *\n * Длина контейнера настраивается с помощью пропа `width`.\n */\n@rootNode\nexport class Group extends React.Component<GroupProps> {\n public static __KONTUR_REACT_UI__ = 'Group';\n public static displayName = 'Group';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private featureFlags!: ReactUIFeatureFlags;\n\n public render() {\n const style: React.CSSProperties = {\n width: this.props.width,\n };\n\n const childrenArray = React.Children.toArray(this.props.children);\n const firstChild = getFirstChild(childrenArray);\n const lastChild = getLastChild(childrenArray);\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span data-tid={GroupDataTids.root} className={styles.root()} style={style}>\n {React.Children.map(childrenArray, (child) => {\n if (!child || !React.isValidElement<GroupChildProps>(child)) {\n return null;\n }\n\n const isFirstChild = child === firstChild;\n const isLastChild = child === lastChild;\n\n if (this.featureFlags.groupAddHintAndTooltipSupport && (isHint(child) || isTooltip(child))) {\n return this.renderWrappedChildren(child, isFirstChild, isLastChild);\n }\n\n return this.renderChild(child, isFirstChild, isLastChild, hasWidthInPercent(child));\n })}\n </span>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderChild = (\n child: React.ReactNode,\n isFirstChild: boolean,\n isLastChild: boolean,\n isWidthInPercent: boolean,\n ) => (\n <div\n className={cx({\n [styles.fixed()]: !isWidthInPercent,\n [styles.stretch()]: isWidthInPercent,\n [styles.stretchFallback()]: Boolean(isWidthInPercent && this.props.width && (isIE11 || isEdge)),\n })}\n >\n <div\n className={cx({\n [styles.item()]: true,\n [styles.itemFirst()]: isFirstChild,\n })}\n >\n {tryPassCorners(child, isFirstChild, isLastChild)}\n </div>\n </div>\n );\n\n private renderWrappedChildren(\n parent: React.ReactElement<GroupChildProps>,\n isParentFirst: boolean,\n isParentLast: boolean,\n ): React.ReactNode {\n let shouldStretchParent = false;\n const nestedChildren = React.Children.toArray(parent.props.children);\n\n const modifiedChildren = nestedChildren.map((nestedChild, index) => {\n if (!nestedChild || !React.isValidElement<GroupChildProps>(nestedChild)) {\n return null;\n }\n\n const isFirstChild = isParentFirst && index === 0;\n const isLastChild = isParentLast && index === nestedChildren.length - 1;\n if (hasWidthInPercent(nestedChild)) {\n shouldStretchParent = true;\n }\n\n return this.renderChild(nestedChild, isFirstChild, isLastChild, hasWidthInPercent(nestedChild));\n });\n\n const wrappedChildren = (\n <div className={cx(styles.wrappedChildren(), { [styles.stretch()]: shouldStretchParent })}>\n {modifiedChildren}\n </div>\n );\n\n return React.cloneElement<GroupChildProps>(parent, {\n children: wrappedChildren,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { CommonProps } from '../../internal/CommonWrapper';
3
+ import type { TGetRootNode } from '../../lib/rootNode';
3
4
  export interface GroupProps extends CommonProps {
4
5
  /** Задает длину компонента Group. */
5
6
  width?: React.CSSProperties['width'];
@@ -16,6 +17,7 @@ export declare const GroupDataTids: {
16
17
  export declare class Group extends React.Component<GroupProps> {
17
18
  static __KONTUR_REACT_UI__: string;
18
19
  static displayName: string;
20
+ getRootNode: TGetRootNode;
19
21
  private setRootNode;
20
22
  private featureFlags;
21
23
  render(): React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"names":["React","globalObject","ThemeContext","ThemeFactory","DUMMY_LOCATION","Popup","isTestEnv","CommonWrapper","cx","rootNode","createPropsGetter","styles","HINT_BORDER_COLOR","Hint","_class","_Hint","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","manual","position","popupRef","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","Consumer","theme","Provider","value","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","_extends","rootNodeRef","setRootNode","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Hint.tsx"],"sourcesContent":["import React from 'react';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { PopupPinnablePositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { DUMMY_LOCATION, Popup } from '../../internal/Popup';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { isTestEnv } from '../../lib/currentEnvironment';\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 type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Hint.styles';\n\nconst HINT_BORDER_COLOR = 'transparent';\n\nexport interface HintProps extends CommonProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Переводит отображение подсказки в _\"ручной режим\"_.\n В _\"ручном режиме\"_ подсказку можно активировать только задав значение пропу `opened`. */\n manual?: boolean;\n\n /** Задает максимальную ширину подсказки. */\n maxWidth?: React.CSSProperties['maxWidth'];\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */\n onMouseEnter?: (event: MouseEventType) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: MouseEventType) => void;\n\n /** Открывает подсказку. Работает только при `manual=true`. */\n opened?: boolean;\n\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPinnablePositionsType;\n\n /** Задает текст подсказки. */\n text: React.ReactNode;\n\n /** Задает список позиций, которые будет занимать хинт. Если положение хинта в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPinnablePositionsType[];\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования хинта при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n}\n\nexport interface HintState {\n opened: boolean;\n position: PopupPinnablePositionsType;\n}\n\ntype DefaultProps = Required<Pick<HintProps, 'manual' | 'opened' | 'maxWidth' | 'disableAnimations' | 'useWrapper'>>;\n\n/**\n * Всплывающая подсказка `Hint`.\n * По умолчанию отображается при наведении на элемент, но можно задать другие условия отображения.\n *\n * Для подсказки, всплывающей по клику используйте Tooltip.\n */\n@rootNode\nexport class Hint extends React.PureComponent<HintProps, HintState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Hint';\n public static displayName = 'Hint';\n\n public static defaultProps: DefaultProps = {\n manual: false,\n opened: false,\n maxWidth: 200,\n disableAnimations: isTestEnv,\n useWrapper: false,\n };\n\n private getProps = createPropsGetter(Hint.defaultProps);\n\n public state: HintState = {\n opened: this.getProps().manual ? !!this.getProps().opened : false,\n position: DUMMY_LOCATION.position,\n };\n\n private timer: SafeTimer;\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions;\n }\n\n public componentDidUpdate(prevProps: HintProps) {\n const { opened, manual } = this.getProps();\n if (!manual) {\n return;\n }\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n if (opened !== prevProps.opened) {\n this.setState({ opened: !!opened });\n }\n }\n\n public componentWillUnmount() {\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.hintMargin,\n popupBorder: theme.hintBorder,\n popupBorderRadius: theme.hintBorderRadius,\n },\n this.theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { disableAnimations, useWrapper } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n hasPin={false}\n opened={this.state.opened}\n anchorElement={this.props.children}\n positions={this.getPositions()}\n pos={this.props.pos}\n backgroundColor={this.theme.hintBgColor}\n borderColor={HINT_BORDER_COLOR}\n onPositionChange={(position) => this.setState({ position })}\n disableAnimations={disableAnimations}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n useWrapper={useWrapper}\n ref={this.popupRef}\n withoutMobile\n >\n {this.renderContent()}\n </Popup>\n </CommonWrapper>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n private renderContent() {\n if (!this.props.text) {\n return null;\n }\n\n const { maxWidth } = this.getProps();\n const centerAlignPositions = ['top', 'top center', 'bottom', 'bottom center'];\n const className = cx({\n [styles.content(this.theme)]: true,\n [styles.contentCenter(this.theme)]: centerAlignPositions.includes(this.state.position),\n });\n return (\n <div className={className} style={{ maxWidth }}>\n {this.props.text}\n </div>\n );\n }\n\n private getPositions = (): PopupPinnablePositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private handleMouseEnter = (e: MouseEventType) => {\n if (!this.getProps().manual && !this.timer) {\n this.timer = globalObject.setTimeout(this.open, 400);\n }\n\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: MouseEventType) => {\n if (!this.getProps().manual && this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n this.setState({ opened: false });\n }\n\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private open = () => {\n this.setState({ opened: true });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","globalObject","ThemeContext","ThemeFactory","DUMMY_LOCATION","Popup","isTestEnv","CommonWrapper","cx","rootNode","createPropsGetter","styles","HINT_BORDER_COLOR","Hint","_class","_Hint","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","manual","position","popupRef","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","Consumer","theme","Provider","value","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","_extends","rootNodeRef","setRootNode","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Hint.tsx"],"sourcesContent":["import React from 'react';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { PopupPinnablePositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { DUMMY_LOCATION, Popup } from '../../internal/Popup';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { isTestEnv } from '../../lib/currentEnvironment';\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 type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Hint.styles';\n\nconst HINT_BORDER_COLOR = 'transparent';\n\nexport interface HintProps extends CommonProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Переводит отображение подсказки в _\"ручной режим\"_.\n В _\"ручном режиме\"_ подсказку можно активировать только задав значение пропу `opened`. */\n manual?: boolean;\n\n /** Задает максимальную ширину подсказки. */\n maxWidth?: React.CSSProperties['maxWidth'];\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */\n onMouseEnter?: (event: MouseEventType) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: MouseEventType) => void;\n\n /** Открывает подсказку. Работает только при `manual=true`. */\n opened?: boolean;\n\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPinnablePositionsType;\n\n /** Задает текст подсказки. */\n text: React.ReactNode;\n\n /** Задает список позиций, которые будет занимать хинт. Если положение хинта в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPinnablePositionsType[];\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования хинта при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n}\n\nexport interface HintState {\n opened: boolean;\n position: PopupPinnablePositionsType;\n}\n\ntype DefaultProps = Required<Pick<HintProps, 'manual' | 'opened' | 'maxWidth' | 'disableAnimations' | 'useWrapper'>>;\n\n/**\n * Всплывающая подсказка `Hint`.\n * По умолчанию отображается при наведении на элемент, но можно задать другие условия отображения.\n *\n * Для подсказки, всплывающей по клику используйте Tooltip.\n */\n@rootNode\nexport class Hint extends React.PureComponent<HintProps, HintState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Hint';\n public static displayName = 'Hint';\n\n public static defaultProps: DefaultProps = {\n manual: false,\n opened: false,\n maxWidth: 200,\n disableAnimations: isTestEnv,\n useWrapper: false,\n };\n\n private getProps = createPropsGetter(Hint.defaultProps);\n\n public state: HintState = {\n opened: this.getProps().manual ? !!this.getProps().opened : false,\n position: DUMMY_LOCATION.position,\n };\n\n private timer: SafeTimer;\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions;\n }\n\n public componentDidUpdate(prevProps: HintProps) {\n const { opened, manual } = this.getProps();\n if (!manual) {\n return;\n }\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n if (opened !== prevProps.opened) {\n this.setState({ opened: !!opened });\n }\n }\n\n public componentWillUnmount() {\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.hintMargin,\n popupBorder: theme.hintBorder,\n popupBorderRadius: theme.hintBorderRadius,\n },\n this.theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { disableAnimations, useWrapper } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n hasPin={false}\n opened={this.state.opened}\n anchorElement={this.props.children}\n positions={this.getPositions()}\n pos={this.props.pos}\n backgroundColor={this.theme.hintBgColor}\n borderColor={HINT_BORDER_COLOR}\n onPositionChange={(position) => this.setState({ position })}\n disableAnimations={disableAnimations}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n useWrapper={useWrapper}\n ref={this.popupRef}\n withoutMobile\n >\n {this.renderContent()}\n </Popup>\n </CommonWrapper>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n private renderContent() {\n if (!this.props.text) {\n return null;\n }\n\n const { maxWidth } = this.getProps();\n const centerAlignPositions = ['top', 'top center', 'bottom', 'bottom center'];\n const className = cx({\n [styles.content(this.theme)]: true,\n [styles.contentCenter(this.theme)]: centerAlignPositions.includes(this.state.position),\n });\n return (\n <div className={className} style={{ maxWidth }}>\n {this.props.text}\n </div>\n );\n }\n\n private getPositions = (): PopupPinnablePositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private handleMouseEnter = (e: MouseEventType) => {\n if (!this.getProps().manual && !this.timer) {\n this.timer = globalObject.setTimeout(this.open, 400);\n }\n\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: MouseEventType) => {\n if (!this.getProps().manual && this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n this.setState({ opened: false });\n }\n\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private open = () => {\n this.setState({ opened: true });\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import type { PopupPinnablePositionsType, ShortPopupPositionsType } from '../../
3
3
  import type { Nullable } from '../../typings/utility-types';
4
4
  import type { MouseEventType } from '../../typings/event-types';
5
5
  import type { CommonProps } from '../../internal/CommonWrapper';
6
+ import type { TGetRootNode } from '../../lib/rootNode';
6
7
  import type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';
7
8
  export interface HintProps extends CommonProps {
8
9
  /** @ignore */
@@ -50,6 +51,7 @@ export declare class Hint extends React.PureComponent<HintProps, HintState> impl
50
51
  state: HintState;
51
52
  private timer;
52
53
  private theme;
54
+ getRootNode: TGetRootNode;
53
55
  private setRootNode;
54
56
  private popupRef;
55
57
  getAllowedPositions(): string[] | undefined;
@@ -5,7 +5,7 @@ import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
5
5
  var _excluded = ["onMouseEnter", "onMouseLeave", "onMouseOver", "onKeyDown", "onKeyPress", "onValueChange", "width", "error", "role", "warning", "leftIcon", "rightIcon", "borderless", "value", "align", "type", "mask", "maskChar", "alwaysShowMask", "size", "placeholder", "selectAllOnFocus", "disabled", "onUnexpectedInput", "prefix", "suffix", "formatChars", "corners", "aria-describedby", "aria-controls", "aria-label", "element", "showClearIcon"];
6
6
  var _class, _Input; // TODO: Enable this rule in functional components.
7
7
  import invariant from 'invariant';
8
- import React from 'react';
8
+ import React, { createRef } from 'react';
9
9
  import warning from 'warning';
10
10
  import { globalObject } from '@skbkontur/global-object';
11
11
  import { isEdge, isIE11 } from "../../../lib/client";
@@ -20,6 +20,8 @@ import { createPropsGetter } from "../../../lib/createPropsGetter";
20
20
  import { FocusControlWrapper } from "../../../internal/FocusControlWrapper";
21
21
  import { ClearCrossIcon } from "../../../internal/ClearCrossIcon/ClearCrossIcon";
22
22
  import { catchUnreachableWarning } from "../../../lib/typeGuards";
23
+ import { blink as _blink } from "../../../lib/blink";
24
+ import { withSize } from "../../../lib/size/SizeDecorator";
23
25
  import { styles } from "../Input.styles";
24
26
  import { InputLayout } from "../InputLayout/InputLayout";
25
27
  import { PolyfillPlaceholder } from "../InputLayout/PolyfillPlaceholder";
@@ -79,7 +81,7 @@ export var InputDataTids = {
79
81
  *
80
82
  * Интерфейс пропсов наследуется от `React.InputHTMLAttributes<HTMLInputElement>`.
81
83
  */
82
- export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Component) {
84
+ export var Input = rootNode(_class = withSize(_class = (_Input = /*#__PURE__*/function (_React$Component) {
83
85
  function Input() {
84
86
  var _this;
85
87
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
@@ -89,6 +91,7 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
89
91
  _this.getProps = createPropsGetter(Input.defaultProps);
90
92
  _this.selectAllId = null;
91
93
  _this.input = null;
94
+ _this.labelRef = /*#__PURE__*/createRef();
92
95
  _this.getClearCrossShowed = function (_ref2) {
93
96
  var _this$input;
94
97
  var focused = _ref2.focused,
@@ -106,7 +109,6 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
106
109
  };
107
110
  _this.state = {
108
111
  needsPolyfillPlaceholder: needsPolyfillPlaceholder,
109
- blinking: false,
110
112
  focused: false,
111
113
  hovered: false,
112
114
  clearCrossShowed: _this.getClearCrossShowed({
@@ -138,21 +140,6 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
138
140
  _this.selectAllId = null;
139
141
  }
140
142
  };
141
- _this.cancelBlink = function (callback) {
142
- if (_this.blinkTimeout) {
143
- globalObject.clearTimeout(_this.blinkTimeout);
144
- _this.blinkTimeout = 0;
145
- if (_this.state.blinking) {
146
- _this.setState({
147
- blinking: false
148
- }, callback);
149
- return;
150
- }
151
- }
152
- if (callback) {
153
- callback();
154
- }
155
- };
156
143
  _this.getInput = function (inputProps) {
157
144
  if (_this.props.element) {
158
145
  return /*#__PURE__*/React.cloneElement(_this.props.element, inputProps);
@@ -196,18 +183,17 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
196
183
  element = props.element,
197
184
  showClearIcon = props.showClearIcon,
198
185
  rest = _objectWithoutPropertiesLoose(props, _excluded);
199
- var _this$state = _this.state,
200
- blinking = _this$state.blinking,
201
- focused = _this$state.focused;
186
+ var focused = _this.state.focused;
202
187
  var labelProps = {
203
- className: cx(styles.root(_this.theme), _this.getSizeClassName(), (_cx = {}, _cx[styles.focus(_this.theme)] = focused && !warning && !error, _cx[styles.hovering(_this.theme)] = !focused && !disabled && !warning && !error && !borderless, _cx[styles.blink(_this.theme)] = blinking, _cx[styles.borderless()] = borderless && !focused, _cx[styles.disabled(_this.theme)] = disabled, _cx[styles.warning(_this.theme)] = warning, _cx[styles.error(_this.theme)] = error, _cx[styles.focusFallback(_this.theme)] = focused && (isIE11 || isEdge), _cx[styles.warningFallback(_this.theme)] = warning && (isIE11 || isEdge), _cx[styles.errorFallback(_this.theme)] = error && (isIE11 || isEdge), _cx)),
188
+ className: cx(styles.root(_this.theme), _this.getSizeClassName(), (_cx = {}, _cx[styles.focus(_this.theme)] = focused && !warning && !error, _cx[styles.hovering(_this.theme)] = !focused && !disabled && !warning && !error && !borderless, _cx[styles.borderless()] = borderless && !focused, _cx[styles.disabled(_this.theme)] = disabled, _cx[styles.warning(_this.theme)] = warning, _cx[styles.error(_this.theme)] = error, _cx[styles.focusFallback(_this.theme)] = focused && (isIE11 || isEdge), _cx[styles.warningFallback(_this.theme)] = warning && (isIE11 || isEdge), _cx[styles.errorFallback(_this.theme)] = error && (isIE11 || isEdge), _cx)),
204
189
  'aria-controls': ariaControls,
205
190
  style: _extends({
206
191
  width: width
207
192
  }, corners),
208
193
  onMouseEnter: _this.handleMouseEnter,
209
194
  onMouseLeave: _this.handleMouseLeave,
210
- onMouseOver: onMouseOver
195
+ onMouseOver: onMouseOver,
196
+ ref: _this.labelRef
211
197
  };
212
198
  var inputProps = _extends({}, rest, {
213
199
  className: cx(styles.input(_this.theme), (_cx2 = {}, _cx2[styles.inputFocus(_this.theme)] = focused, _cx2[styles.inputDisabled(_this.theme)] = disabled, _cx2)),
@@ -236,7 +222,7 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
236
222
  return _this.state.clearCrossShowed ? /*#__PURE__*/
237
223
  React.createElement(ClearCrossIcon, {
238
224
  "data-tid": InputDataTids.clearCross,
239
- size: size,
225
+ size: _this.size,
240
226
  onClick: _this.handleClearInput
241
227
  }) : rightIcon;
242
228
  };
@@ -250,7 +236,7 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
250
236
  context: {
251
237
  disabled: Boolean(disabled),
252
238
  focused: focused,
253
- size: size
239
+ size: _this.size
254
240
  }
255
241
  }, input, _this.state.needsPolyfillPlaceholder && /*#__PURE__*/
256
242
  React.createElement(PolyfillPlaceholder, {
@@ -412,9 +398,6 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
412
398
  }
413
399
  };
414
400
  _proto.componentWillUnmount = function componentWillUnmount() {
415
- if (this.blinkTimeout) {
416
- globalObject.clearTimeout(this.blinkTimeout);
417
- }
418
401
  this.cancelDelayedSelectAll();
419
402
  } /**
420
403
  * @public
@@ -437,20 +420,9 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
437
420
  * @public
438
421
  */;
439
422
  _proto.blink = function blink() {
440
- var _this2 = this;
441
- if (this.blinkTimeout) {
442
- this.cancelBlink(function () {
443
- // trigger reflow to restart animation
444
- // @see https://css-tricks.com/restart-css-animation/#article-header-id-0
445
- void (_this2.input && _this2.input.offsetWidth);
446
- _this2.blink();
447
- });
448
- return;
449
- }
450
- this.setState({
451
- blinking: true
452
- }, function () {
453
- _this2.blinkTimeout = globalObject.setTimeout(_this2.cancelBlink, 150);
423
+ _blink({
424
+ el: this.labelRef.current,
425
+ blinkColor: this.theme.inputBlinkColor
454
426
  });
455
427
  } /**
456
428
  * @public
@@ -460,7 +432,7 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
460
432
  _proto.setSelectionRange = function setSelectionRange(start, end) {
461
433
  var _globalObject$documen,
462
434
  _this$props$value,
463
- _this3 = this; // https://github.com/facebook/react/issues/7769
435
+ _this2 = this; // https://github.com/facebook/react/issues/7769
464
436
  // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
465
437
  if (!selectionAllowedTypes.includes(this.getProps().type)) {
466
438
  warning(false, selectionErrorMessage(this.getProps().type));
@@ -474,8 +446,8 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
474
446
  }
475
447
  if (this.props.mask && this.props.value && ((_this$props$value = this.props.value) == null ? void 0 : _this$props$value.length) < this.props.mask.length) {
476
448
  globalObject.setTimeout(function () {
477
- var _this3$input;
478
- (_this3$input = _this3.input) == null || _this3$input.setSelectionRange(start, end);
449
+ var _this2$input;
450
+ (_this2$input = _this2.input) == null || _this2$input.setSelectionRange(start, end);
479
451
  }, 150);
480
452
  } else {
481
453
  var _this$input2;
@@ -483,12 +455,12 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
483
455
  }
484
456
  };
485
457
  _proto.render = function render() {
486
- var _this4 = this;
458
+ var _this3 = this;
487
459
  return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
488
- _this4.theme = theme;
460
+ _this3.theme = theme;
489
461
  return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
490
- rootNodeRef: _this4.setRootNode
491
- }, _this4.getProps()), _this4.renderMain);
462
+ rootNodeRef: _this3.setRootNode
463
+ }, _this3.getProps()), _this3.renderMain);
492
464
  });
493
465
  };
494
466
  _proto.renderMaskedInput = function renderMaskedInput(inputProps, mask) {
@@ -504,7 +476,7 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
504
476
  };
505
477
  _proto.getSizeClassName = function getSizeClassName() {
506
478
  var _cx3, _cx4, _cx5;
507
- switch (this.getProps().size) {
479
+ switch (this.size) {
508
480
  case 'large':
509
481
  return cx((_cx3 = {}, _cx3[styles.sizeLarge(this.theme)] = true, _cx3[styles.sizeLargeFallback(this.theme)] = isIE11 || isEdge, _cx3));
510
482
  case 'medium':
@@ -530,7 +502,6 @@ export var Input = rootNode(_class = (_Input = /*#__PURE__*/function (_React$Com
530
502
  }
531
503
  }]);
532
504
  }(React.Component), _Input.__KONTUR_REACT_UI__ = 'Input', _Input.displayName = 'Input', _Input.defaultProps = {
533
- size: 'small',
534
505
  type: 'text',
535
506
  showClearIcon: 'never'
536
- }, _Input)) || _class;
507
+ }, _Input)) || _class) || _class;