@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","_interopRequireWildcard","require","_Input","_ThemeContext","_Button","_UndoIcon","FxInputRestoreBtn","exports","props","theme","useContext","ThemeContext","size","Input","defaultProps","iconSizes","small","parseInt","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","cornersSizes","borderTopLeftRadius","inputBorderRadiusSmall","borderBottomLeftRadius","inputBorderRadiusMedium","inputBorderRadiusLarge","buttonCorners","iconUndo","default","createElement","UndoIcon","Button","onClick","onRestore","borderless","disabled","corners","_extends2","borderTopRightRadius","borderBottomRightRadius","icon"],"sources":["FxInputRestoreBtn.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React, { useContext } from 'react';\n\nimport { Input } from '../Input';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Button } from '../Button';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { UndoIcon } from './UndoIcon';\nimport type { FxInputProps } from './FxInput';\n\ninterface FxInputRestoreBtnProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<FxInputProps, 'size' | 'onRestore' | 'borderless' | 'disabled'> {\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\nexport const FxInputRestoreBtn: React.FunctionComponent<FxInputRestoreBtnProps> = (props) => {\n const theme = useContext(ThemeContext);\n\n const size = props.size || Input.defaultProps.size;\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.inputIconSizeSmall),\n medium: parseInt(theme.inputIconSizeMedium),\n large: parseInt(theme.inputIconSizeLarge),\n };\n const cornersSizes: Record<SizeProp, React.CSSProperties> = {\n small: {\n borderTopLeftRadius: theme.inputBorderRadiusSmall,\n borderBottomLeftRadius: theme.inputBorderRadiusSmall,\n },\n medium: {\n borderTopLeftRadius: theme.inputBorderRadiusMedium,\n borderBottomLeftRadius: theme.inputBorderRadiusMedium,\n },\n large: {\n borderTopLeftRadius: theme.inputBorderRadiusLarge,\n borderBottomLeftRadius: theme.inputBorderRadiusLarge,\n },\n };\n const buttonCorners = cornersSizes[size];\n const iconUndo = <UndoIcon size={iconSizes[size]} />;\n\n return (\n <Button\n size={props.size}\n onClick={props.onRestore}\n borderless={props.borderless}\n disabled={props.disabled}\n corners={{\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n ...buttonCorners,\n ...props.corners,\n }}\n icon={iconUndo}\n aria-label={props['aria-label']}\n />\n );\n};\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;;;AAGA,IAAAI,SAAA,GAAAJ,OAAA;;;;;;;;;;AAUO,IAAMK,iBAAkE,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAArEA,iBAAkEA,CAAIE,KAAK,EAAK;EAC3F,IAAMC,KAAK,GAAG,IAAAC,iBAAU,EAACC,0BAAY,CAAC;;EAEtC,IAAMC,IAAI,GAAGJ,KAAK,CAACI,IAAI,IAAIC,YAAK,CAACC,YAAY,CAACF,IAAI;;EAElD,IAAMG,SAAmC,GAAG;IAC1CC,KAAK,EAAEC,QAAQ,CAACR,KAAK,CAACS,kBAAkB,CAAC;IACzCC,MAAM,EAAEF,QAAQ,CAACR,KAAK,CAACW,mBAAmB,CAAC;IAC3CC,KAAK,EAAEJ,QAAQ,CAACR,KAAK,CAACa,kBAAkB;EAC1C,CAAC;EACD,IAAMC,YAAmD,GAAG;IAC1DP,KAAK,EAAE;MACLQ,mBAAmB,EAAEf,KAAK,CAACgB,sBAAsB;MACjDC,sBAAsB,EAAEjB,KAAK,CAACgB;IAChC,CAAC;IACDN,MAAM,EAAE;MACNK,mBAAmB,EAAEf,KAAK,CAACkB,uBAAuB;MAClDD,sBAAsB,EAAEjB,KAAK,CAACkB;IAChC,CAAC;IACDN,KAAK,EAAE;MACLG,mBAAmB,EAAEf,KAAK,CAACmB,sBAAsB;MACjDF,sBAAsB,EAAEjB,KAAK,CAACmB;IAChC;EACF,CAAC;EACD,IAAMC,aAAa,GAAGN,YAAY,CAACX,IAAI,CAAC;EACxC,IAAMkB,QAAQ,gBAAG/B,MAAA,CAAAgC,OAAA,CAAAC,aAAA,CAAC3B,SAAA,CAAA4B,QAAQ,IAACrB,IAAI,EAAEG,SAAS,CAACH,IAAI,CAAE,EAAE,CAAC;;EAEpD;IACEb,MAAA,CAAAgC,OAAA,CAAAC,aAAA,CAAC5B,OAAA,CAAA8B,MAAM;MACLtB,IAAI,EAAEJ,KAAK,CAACI,IAAK;MACjBuB,OAAO,EAAE3B,KAAK,CAAC4B,SAAU;MACzBC,UAAU,EAAE7B,KAAK,CAAC6B,UAAW;MAC7BC,QAAQ,EAAE9B,KAAK,CAAC8B,QAAS;MACzBC,OAAO,MAAAC,SAAA,CAAAT,OAAA;QACLU,oBAAoB,EAAE,CAAC;QACvBC,uBAAuB,EAAE,CAAC;MACvBb,aAAa;MACbrB,KAAK,CAAC+B,OAAO,CAChB;;MACFI,IAAI,EAAEb,QAAS;MACf,cAAYtB,KAAK,CAAC,YAAY,CAAE;IACjC,CAAC;;AAEN,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_ThemeContext","_Button","_useSizeControl","_UndoIcon","FxInputRestoreBtn","exports","props","theme","useContext","ThemeContext","size","useSizeControl","iconSizes","small","parseInt","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","cornersSizes","borderTopLeftRadius","inputBorderRadiusSmall","borderBottomLeftRadius","inputBorderRadiusMedium","inputBorderRadiusLarge","buttonCorners","iconUndo","default","createElement","UndoIcon","Button","onClick","onRestore","borderless","disabled","corners","_extends2","borderTopRightRadius","borderBottomRightRadius","icon"],"sources":["FxInputRestoreBtn.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React, { useContext } from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Button } from '../Button';\nimport type { SizeProp } from '../../lib/types/props';\nimport { useSizeControl } from '../../lib/size/useSizeControl';\n\nimport { UndoIcon } from './UndoIcon';\nimport type { FxInputProps } from './FxInput';\n\ninterface FxInputRestoreBtnProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<FxInputProps, 'size' | 'onRestore' | 'borderless' | 'disabled'> {\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\nexport const FxInputRestoreBtn: React.FunctionComponent<FxInputRestoreBtnProps> = (props) => {\n const theme = useContext(ThemeContext);\n const size = useSizeControl(props.size);\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.inputIconSizeSmall),\n medium: parseInt(theme.inputIconSizeMedium),\n large: parseInt(theme.inputIconSizeLarge),\n };\n const cornersSizes: Record<SizeProp, React.CSSProperties> = {\n small: {\n borderTopLeftRadius: theme.inputBorderRadiusSmall,\n borderBottomLeftRadius: theme.inputBorderRadiusSmall,\n },\n medium: {\n borderTopLeftRadius: theme.inputBorderRadiusMedium,\n borderBottomLeftRadius: theme.inputBorderRadiusMedium,\n },\n large: {\n borderTopLeftRadius: theme.inputBorderRadiusLarge,\n borderBottomLeftRadius: theme.inputBorderRadiusLarge,\n },\n };\n const buttonCorners = cornersSizes[size];\n const iconUndo = <UndoIcon size={iconSizes[size]} />;\n\n return (\n <Button\n size={props.size}\n onClick={props.onRestore}\n borderless={props.borderless}\n disabled={props.disabled}\n corners={{\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n ...buttonCorners,\n ...props.corners,\n }}\n icon={iconUndo}\n aria-label={props['aria-label']}\n />\n );\n};\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;;AAEA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;;AAEA,IAAAG,eAAA,GAAAH,OAAA;;AAEA,IAAAI,SAAA,GAAAJ,OAAA;;;;;;;;;;AAUO,IAAMK,iBAAkE,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAArEA,iBAAkEA,CAAIE,KAAK,EAAK;EAC3F,IAAMC,KAAK,GAAG,IAAAC,iBAAU,EAACC,0BAAY,CAAC;EACtC,IAAMC,IAAI,GAAG,IAAAC,8BAAc,EAACL,KAAK,CAACI,IAAI,CAAC;;EAEvC,IAAME,SAAmC,GAAG;IAC1CC,KAAK,EAAEC,QAAQ,CAACP,KAAK,CAACQ,kBAAkB,CAAC;IACzCC,MAAM,EAAEF,QAAQ,CAACP,KAAK,CAACU,mBAAmB,CAAC;IAC3CC,KAAK,EAAEJ,QAAQ,CAACP,KAAK,CAACY,kBAAkB;EAC1C,CAAC;EACD,IAAMC,YAAmD,GAAG;IAC1DP,KAAK,EAAE;MACLQ,mBAAmB,EAAEd,KAAK,CAACe,sBAAsB;MACjDC,sBAAsB,EAAEhB,KAAK,CAACe;IAChC,CAAC;IACDN,MAAM,EAAE;MACNK,mBAAmB,EAAEd,KAAK,CAACiB,uBAAuB;MAClDD,sBAAsB,EAAEhB,KAAK,CAACiB;IAChC,CAAC;IACDN,KAAK,EAAE;MACLG,mBAAmB,EAAEd,KAAK,CAACkB,sBAAsB;MACjDF,sBAAsB,EAAEhB,KAAK,CAACkB;IAChC;EACF,CAAC;EACD,IAAMC,aAAa,GAAGN,YAAY,CAACV,IAAI,CAAC;EACxC,IAAMiB,QAAQ,gBAAG9B,MAAA,CAAA+B,OAAA,CAAAC,aAAA,CAAC1B,SAAA,CAAA2B,QAAQ,IAACpB,IAAI,EAAEE,SAAS,CAACF,IAAI,CAAE,EAAE,CAAC;;EAEpD;IACEb,MAAA,CAAA+B,OAAA,CAAAC,aAAA,CAAC5B,OAAA,CAAA8B,MAAM;MACLrB,IAAI,EAAEJ,KAAK,CAACI,IAAK;MACjBsB,OAAO,EAAE1B,KAAK,CAAC2B,SAAU;MACzBC,UAAU,EAAE5B,KAAK,CAAC4B,UAAW;MAC7BC,QAAQ,EAAE7B,KAAK,CAAC6B,QAAS;MACzBC,OAAO,MAAAC,SAAA,CAAAT,OAAA;QACLU,oBAAoB,EAAE,CAAC;QACvBC,uBAAuB,EAAE,CAAC;MACvBb,aAAa;MACbpB,KAAK,CAAC8B,OAAO,CAChB;;MACFI,IAAI,EAAEb,QAAS;MACf,cAAYrB,KAAK,CAAC,YAAY,CAAE;IACjC,CAAC;;AAEN,CAAC","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 GappedProps extends CommonProps {
4
5
  /** Задает расстояние между элементами в пикселях. */
5
6
  gap?: number;
@@ -23,6 +24,7 @@ type DefaultProps = Required<Pick<GappedProps, 'wrap' | 'vertical' | 'verticalAl
23
24
  export declare class Gapped extends React.Component<GappedProps> {
24
25
  static __KONTUR_REACT_UI__: string;
25
26
  static displayName: string;
27
+ getRootNode: TGetRootNode;
26
28
  private setRootNode;
27
29
  static defaultProps: DefaultProps;
28
30
  private getProps;
@@ -47,6 +47,7 @@ Gapped = exports.Gapped = (0, _rootNode.rootNode)(_class = (_Gapped = /*#__PURE_
47
47
 
48
48
 
49
49
 
50
+
50
51
  getProps = (0, _createPropsGetter.createPropsGetter)(Gapped.defaultProps);return _this;}(0, _inheritsLoose2.default)(Gapped, _React$Component);var _proto = Gapped.prototype;_proto.
51
52
 
52
53
  render = function render() {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_utils","_CommonWrapper","_rootNode","_createPropsGetter","_class","_Gapped","GappedDataTids","exports","vertical","horizontal","Gapped","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","_inheritsLoose2","default","_proto","prototype","render","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","props","renderVertical","renderHorizontal","getGapValue","propsGap","gap","isNonNullable","subsequentItemStyle","paddingTop","children","React","Children","toArray","filter","filterChildren","map","child","index","style","undefined","key","_this$props","verticalAlign","wrap","itemStyle","display","marginLeft","marginTop","rootStyle","contStyle","whiteSpace","Boolean","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Gapped.tsx"],"sourcesContent":["import React from 'react';\n\nimport { isNonNullable } from '../../lib/utils';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport interface GappedProps extends CommonProps {\n /** Задает расстояние между элементами в пикселях. */\n gap?: number;\n\n /** Задает вертикальное выравнивание. */\n verticalAlign?: 'top' | 'middle' | 'baseline' | 'bottom';\n\n /** Располагает элементы по вертикали. */\n vertical?: boolean;\n\n /** Переносит элементы на новую строку при горизонтальном расположении. */\n wrap?: boolean;\n\n /** @ignore */\n children: React.ReactNode;\n}\n\nexport const GappedDataTids = {\n vertical: 'Gapped__vertical',\n horizontal: 'Gapped__horizontal',\n} as const;\n\ntype DefaultProps = Required<Pick<GappedProps, 'wrap' | 'vertical' | 'verticalAlign'>>;\n\n/**\n * Контейнер `Gapped` устанавливает расстояние равное `gap` между элементами.\n */\n@rootNode\nexport class Gapped extends React.Component<GappedProps> {\n public static __KONTUR_REACT_UI__ = 'Gapped';\n public static displayName = 'Gapped';\n\n private setRootNode!: TSetRootNode;\n\n public static defaultProps: DefaultProps = {\n wrap: false,\n vertical: false,\n verticalAlign: 'baseline',\n };\n\n private getProps = createPropsGetter(Gapped.defaultProps);\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.getProps().vertical ? this.renderVertical() : this.renderHorizontal()}\n </CommonWrapper>\n );\n }\n\n private getGapValue() {\n // DEPRECATED remove in 4.0\n const { gap: propsGap } = this.props;\n if (isNonNullable(propsGap)) {\n return propsGap;\n }\n\n return 8;\n }\n\n private renderVertical() {\n const subsequentItemStyle: React.CSSProperties = {\n paddingTop: this.getGapValue(),\n };\n const children = React.Children.toArray(this.props.children)\n .filter(this.filterChildren)\n .map((child, index) => {\n const style = index === 0 ? undefined : subsequentItemStyle;\n return (\n <div style={style} key={index}>\n {child}\n </div>\n );\n });\n\n return <div data-tid={GappedDataTids.vertical}>{children}</div>;\n }\n\n private renderHorizontal() {\n const { children, verticalAlign } = this.props;\n const wrap = this.getProps().wrap;\n const gap = this.getGapValue();\n const itemStyle: React.CSSProperties = {\n display: 'inline-block',\n verticalAlign,\n ...(wrap ? { marginLeft: gap, marginTop: gap } : {}),\n };\n const rootStyle: React.CSSProperties = wrap ? { paddingTop: 1 } : {};\n const contStyle: React.CSSProperties = wrap ? { marginTop: -gap - 1, marginLeft: -gap } : { whiteSpace: 'nowrap' };\n\n return (\n <div data-tid={GappedDataTids.horizontal} style={rootStyle}>\n <div style={contStyle}>\n {React.Children.toArray(children)\n .filter(this.filterChildren)\n .map((child, index) => {\n const marginLeft = index === 0 ? undefined : gap;\n return (\n <span key={index} style={{ marginLeft, ...itemStyle }}>\n {child}\n </span>\n );\n })}\n </div>\n </div>\n );\n }\n\n private filterChildren(child: React.ReactNode): boolean {\n return Boolean(child) || typeof child === 'number';\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_utils","_CommonWrapper","_rootNode","_createPropsGetter","_class","_Gapped","GappedDataTids","exports","vertical","horizontal","Gapped","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","_inheritsLoose2","default","_proto","prototype","render","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","props","renderVertical","renderHorizontal","getGapValue","propsGap","gap","isNonNullable","subsequentItemStyle","paddingTop","children","React","Children","toArray","filter","filterChildren","map","child","index","style","undefined","key","_this$props","verticalAlign","wrap","itemStyle","display","marginLeft","marginTop","rootStyle","contStyle","whiteSpace","Boolean","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Gapped.tsx"],"sourcesContent":["import React from 'react';\n\nimport { isNonNullable } from '../../lib/utils';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport interface GappedProps extends CommonProps {\n /** Задает расстояние между элементами в пикселях. */\n gap?: number;\n\n /** Задает вертикальное выравнивание. */\n verticalAlign?: 'top' | 'middle' | 'baseline' | 'bottom';\n\n /** Располагает элементы по вертикали. */\n vertical?: boolean;\n\n /** Переносит элементы на новую строку при горизонтальном расположении. */\n wrap?: boolean;\n\n /** @ignore */\n children: React.ReactNode;\n}\n\nexport const GappedDataTids = {\n vertical: 'Gapped__vertical',\n horizontal: 'Gapped__horizontal',\n} as const;\n\ntype DefaultProps = Required<Pick<GappedProps, 'wrap' | 'vertical' | 'verticalAlign'>>;\n\n/**\n * Контейнер `Gapped` устанавливает расстояние равное `gap` между элементами.\n */\n@rootNode\nexport class Gapped extends React.Component<GappedProps> {\n public static __KONTUR_REACT_UI__ = 'Gapped';\n public static displayName = 'Gapped';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static defaultProps: DefaultProps = {\n wrap: false,\n vertical: false,\n verticalAlign: 'baseline',\n };\n\n private getProps = createPropsGetter(Gapped.defaultProps);\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.getProps().vertical ? this.renderVertical() : this.renderHorizontal()}\n </CommonWrapper>\n );\n }\n\n private getGapValue() {\n // DEPRECATED remove in 4.0\n const { gap: propsGap } = this.props;\n if (isNonNullable(propsGap)) {\n return propsGap;\n }\n\n return 8;\n }\n\n private renderVertical() {\n const subsequentItemStyle: React.CSSProperties = {\n paddingTop: this.getGapValue(),\n };\n const children = React.Children.toArray(this.props.children)\n .filter(this.filterChildren)\n .map((child, index) => {\n const style = index === 0 ? undefined : subsequentItemStyle;\n return (\n <div style={style} key={index}>\n {child}\n </div>\n );\n });\n\n return <div data-tid={GappedDataTids.vertical}>{children}</div>;\n }\n\n private renderHorizontal() {\n const { children, verticalAlign } = this.props;\n const wrap = this.getProps().wrap;\n const gap = this.getGapValue();\n const itemStyle: React.CSSProperties = {\n display: 'inline-block',\n verticalAlign,\n ...(wrap ? { marginLeft: gap, marginTop: gap } : {}),\n };\n const rootStyle: React.CSSProperties = wrap ? { paddingTop: 1 } : {};\n const contStyle: React.CSSProperties = wrap ? { marginTop: -gap - 1, marginLeft: -gap } : { whiteSpace: 'nowrap' };\n\n return (\n <div data-tid={GappedDataTids.horizontal} style={rootStyle}>\n <div style={contStyle}>\n {React.Children.toArray(children)\n .filter(this.filterChildren)\n .map((child, index) => {\n const marginLeft = index === 0 ? undefined : gap;\n return (\n <span key={index} style={{ marginLeft, ...itemStyle }}>\n {child}\n </span>\n );\n })}\n </div>\n </div>\n );\n }\n\n private filterChildren(child: React.ReactNode): boolean {\n return Boolean(child) || typeof child === 'number';\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { TGetRootNode } from '../../lib/rootNode';
2
3
  export interface GlobalLoaderProps {
3
4
  /** Устанавливает задержку в миллисекундах до появления лоадера. */
4
5
  delayBeforeShow?: number;
@@ -50,6 +51,7 @@ type DefaultProps = Required<Pick<GlobalLoaderProps, 'expectedResponseTime' | 'd
50
51
  export declare class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {
51
52
  static __KONTUR_REACT_UI__: string;
52
53
  static displayName: string;
54
+ getRootNode: TGetRootNode;
53
55
  private setRootNode;
54
56
  private getProps;
55
57
  private readonly startTask;
@@ -106,6 +106,7 @@ GlobalLoader = exports.GlobalLoader = (0, _rootNode.rootNode)(_class = (_GlobalL
106
106
 
107
107
 
108
108
 
109
+
109
110
 
110
111
 
111
112
  function GlobalLoader(props) {var _this;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_lodash","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_GlobalLoaderView","_class","_GlobalLoader","GlobalLoaderDataTids","exports","root","currentGlobalLoader","GlobalLoader","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","startTask","debounce","setState","visible","onStart","delayBeforeShow","stopTask","successAnimationInProgress","started","onDone","delayBeforeHide","resumeTaskAfterSuccessAnimation","setActive","cancel","state","done","rejected","accept","setReject","setDone","reject","active","onReject","onAccept","kill","dead","expectedResponseTime","_inheritsLoose2","default","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","GlobalLoaderView","updateExpectedResponseTime","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv","start","_currentGlobalLoader2","_currentGlobalLoader3","_currentGlobalLoader4","_currentGlobalLoader5","_currentGlobalLoader6"],"sources":["GlobalLoader.tsx"],"sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\n\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport type { GlobalLoaderViewProps } from './GlobalLoaderView';\nimport { GlobalLoaderView } from './GlobalLoaderView';\n\nexport interface GlobalLoaderProps {\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n\n /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */\n delayBeforeHide?: number;\n\n /** Устанавливает ожидаемое время(ms) ответа сервера. */\n expectedResponseTime?: number;\n\n /** Определяет, нужно ли показывать анимацию лоадера в виде спиннера. */\n rejected?: boolean;\n\n /** Определяет, показывать ли лоадер. */\n active?: boolean;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Задает коллбек, вызывающийся после появления лоадера. */\n onStart?(): void;\n\n /** Задает коллбек, вызывающийся после исчезновения лоадера. */\n onDone?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.reject(). Или после установки пропа rejected = true. */\n onReject?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.accept() или установки пропа rejected = false. */\n onAccept?(): void;\n}\nexport interface GlobalLoaderState {\n visible: boolean;\n done: boolean;\n rejected: boolean;\n accept: boolean;\n dead: boolean;\n successAnimationInProgress: boolean;\n expectedResponseTime: number;\n started: boolean;\n}\n\nexport const GlobalLoaderDataTids = {\n root: 'GlobalLoader',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n GlobalLoaderProps,\n 'expectedResponseTime' | 'delayBeforeShow' | 'delayBeforeHide' | 'rejected' | 'active' | 'disableAnimations'\n >\n>;\n\nlet currentGlobalLoader: GlobalLoader | null;\n\n/**\n * Глобальный лоадер `GlobalLoader` — это универсальный индикатор обмена данными с сервером.\n * Он появляется у верхней границы экрана и выглядит как тоненькая полоска, окрашенная в фирменный цвет продукта.\n *\n * `GlobalLoader` может быть только один в приложении. Поэтому, каждый новый экземпляр компонента \"убивает\" предыдущий экземпляр, и начинает перехватывать статические методы.\n *\n * Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.\n *\n * `GlobalLoader` работает в двух режимах:\n * * как прогресс-бар, примерно показывает ход получения данных от сервера.\n * * как спиннер, когда есть проблемы с соединением.\n */\n@rootNode\nexport class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {\n public static __KONTUR_REACT_UI__ = 'GlobalLoader';\n public static displayName = 'GlobalLoader';\n\n private setRootNode!: TSetRootNode;\n private getProps = createPropsGetter(GlobalLoader.defaultProps);\n\n private readonly startTask = debounce(() => {\n this.setState({ visible: true });\n this.props.onStart?.();\n }, this.getProps().delayBeforeShow);\n\n private readonly stopTask = debounce(() => {\n this.setState({ visible: false, successAnimationInProgress: false, started: false });\n this.props.onDone?.();\n }, this.getProps().delayBeforeHide);\n\n private readonly resumeTaskAfterSuccessAnimation = debounce(() => {\n this.setActive();\n }, this.getProps().delayBeforeHide);\n\n public static defaultProps: DefaultProps = {\n expectedResponseTime: 1000,\n delayBeforeShow: 1000,\n delayBeforeHide: 1000,\n rejected: false,\n active: false,\n disableAnimations: isTestEnv,\n };\n\n constructor(props: GlobalLoaderProps) {\n super(props);\n this.state = {\n started: false,\n visible: false,\n done: false,\n rejected: false,\n accept: false,\n dead: false,\n successAnimationInProgress: false,\n expectedResponseTime: this.getProps().expectedResponseTime,\n };\n }\n componentDidMount() {\n currentGlobalLoader?.kill();\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n currentGlobalLoader = this;\n const { active, rejected } = this.getProps();\n if (active) {\n this.setActive();\n }\n if (rejected) {\n this.setReject(true);\n }\n }\n\n componentWillUnmount(): void {\n currentGlobalLoader = null;\n }\n\n componentDidUpdate(prevProps: Readonly<GlobalLoaderProps>) {\n const { expectedResponseTime, rejected, active } = this.getProps();\n if (expectedResponseTime !== prevProps.expectedResponseTime) {\n this.setState({ expectedResponseTime });\n }\n if (rejected !== prevProps.rejected) {\n this.setReject(rejected);\n }\n if (active !== prevProps.active) {\n if (active) {\n this.setActive();\n } else {\n this.setDone();\n }\n }\n }\n\n public render() {\n let status: GlobalLoaderViewProps['status'] = 'standard';\n\n if (this.state.done) {\n status = 'success';\n } else if (this.state.rejected) {\n status = 'error';\n } else if (this.state.accept) {\n status = 'accept';\n }\n const { delayBeforeHide, disableAnimations } = this.getProps();\n return (\n !this.state.dead &&\n this.state.visible && (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <GlobalLoaderView\n expectedResponseTime={this.state.expectedResponseTime}\n delayBeforeHide={delayBeforeHide}\n status={status}\n data-tid={GlobalLoaderDataTids.root}\n disableAnimations={disableAnimations}\n />\n </CommonWrapper>\n )\n );\n }\n\n /**\n * Запускает анимацию лоадера <br />\n * Равносильно установке пропа `active = true`\n *\n * @public\n */\n public static start = (expectedResponseTime?: number) => {\n currentGlobalLoader?.setActive();\n if (typeof expectedResponseTime === 'number') {\n currentGlobalLoader?.updateExpectedResponseTime(expectedResponseTime);\n }\n };\n\n /**\n * Показывает анимацию успешного завершения загрузки <br />\n * Равносильно установке пропа `active = false`\n *\n * @public\n */\n public static done = () => {\n currentGlobalLoader?.setDone();\n };\n\n /**\n * Переключает анимацию лоадера в состояние спиннера <br />\n * Равносильно установке пропа `rejected = true`\n *\n * @public\n */\n public static reject = () => {\n currentGlobalLoader?.setReject(true);\n };\n\n /**\n * Возвращает лоадер из состояния спиннера в обычное и продолжает анимацию с того места, на котором она была прерван <br />\n * Равносильно установке пропа `rejected = false`\n *\n * @public\n */\n public static accept = () => {\n currentGlobalLoader?.setReject(false);\n };\n\n public setActive = () => {\n this.startTask.cancel();\n if (this.state.successAnimationInProgress) {\n this.resumeTaskAfterSuccessAnimation();\n } else {\n this.setState({ visible: false, done: false, rejected: false, accept: false, started: true });\n if (this.getProps().rejected) {\n this.setReject(true);\n } else {\n this.stopTask.cancel();\n this.startTask();\n }\n }\n };\n\n public setDone = () => {\n if (!this.state.started) {\n return;\n }\n this.setState({ done: true, successAnimationInProgress: true });\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.stopTask();\n };\n\n public setReject = (reject: boolean) => {\n if (!this.state.visible && (this.state.started || this.getProps().active)) {\n this.setState({ visible: true });\n }\n this.startTask.cancel();\n this.stopTask.cancel();\n if (reject) {\n this.props.onReject?.();\n } else if (this.state.rejected) {\n this.setState({ accept: true });\n this.props.onAccept?.();\n }\n this.setState({ rejected: reject });\n };\n\n public updateExpectedResponseTime(expectedResponseTime: number) {\n this.setState({ expectedResponseTime });\n }\n\n public kill = () => {\n this.stopTask.cancel();\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.setState({\n dead: true,\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_lodash","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_GlobalLoaderView","_class","_GlobalLoader","GlobalLoaderDataTids","exports","root","currentGlobalLoader","GlobalLoader","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","startTask","debounce","setState","visible","onStart","delayBeforeShow","stopTask","successAnimationInProgress","started","onDone","delayBeforeHide","resumeTaskAfterSuccessAnimation","setActive","cancel","state","done","rejected","accept","setReject","setDone","reject","active","onReject","onAccept","kill","dead","expectedResponseTime","_inheritsLoose2","default","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","GlobalLoaderView","updateExpectedResponseTime","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv","start","_currentGlobalLoader2","_currentGlobalLoader3","_currentGlobalLoader4","_currentGlobalLoader5","_currentGlobalLoader6"],"sources":["GlobalLoader.tsx"],"sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\n\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport type { GlobalLoaderViewProps } from './GlobalLoaderView';\nimport { GlobalLoaderView } from './GlobalLoaderView';\n\nexport interface GlobalLoaderProps {\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n\n /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */\n delayBeforeHide?: number;\n\n /** Устанавливает ожидаемое время(ms) ответа сервера. */\n expectedResponseTime?: number;\n\n /** Определяет, нужно ли показывать анимацию лоадера в виде спиннера. */\n rejected?: boolean;\n\n /** Определяет, показывать ли лоадер. */\n active?: boolean;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Задает коллбек, вызывающийся после появления лоадера. */\n onStart?(): void;\n\n /** Задает коллбек, вызывающийся после исчезновения лоадера. */\n onDone?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.reject(). Или после установки пропа rejected = true. */\n onReject?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.accept() или установки пропа rejected = false. */\n onAccept?(): void;\n}\nexport interface GlobalLoaderState {\n visible: boolean;\n done: boolean;\n rejected: boolean;\n accept: boolean;\n dead: boolean;\n successAnimationInProgress: boolean;\n expectedResponseTime: number;\n started: boolean;\n}\n\nexport const GlobalLoaderDataTids = {\n root: 'GlobalLoader',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n GlobalLoaderProps,\n 'expectedResponseTime' | 'delayBeforeShow' | 'delayBeforeHide' | 'rejected' | 'active' | 'disableAnimations'\n >\n>;\n\nlet currentGlobalLoader: GlobalLoader | null;\n\n/**\n * Глобальный лоадер `GlobalLoader` — это универсальный индикатор обмена данными с сервером.\n * Он появляется у верхней границы экрана и выглядит как тоненькая полоска, окрашенная в фирменный цвет продукта.\n *\n * `GlobalLoader` может быть только один в приложении. Поэтому, каждый новый экземпляр компонента \"убивает\" предыдущий экземпляр, и начинает перехватывать статические методы.\n *\n * Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.\n *\n * `GlobalLoader` работает в двух режимах:\n * * как прогресс-бар, примерно показывает ход получения данных от сервера.\n * * как спиннер, когда есть проблемы с соединением.\n */\n@rootNode\nexport class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {\n public static __KONTUR_REACT_UI__ = 'GlobalLoader';\n public static displayName = 'GlobalLoader';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private getProps = createPropsGetter(GlobalLoader.defaultProps);\n\n private readonly startTask = debounce(() => {\n this.setState({ visible: true });\n this.props.onStart?.();\n }, this.getProps().delayBeforeShow);\n\n private readonly stopTask = debounce(() => {\n this.setState({ visible: false, successAnimationInProgress: false, started: false });\n this.props.onDone?.();\n }, this.getProps().delayBeforeHide);\n\n private readonly resumeTaskAfterSuccessAnimation = debounce(() => {\n this.setActive();\n }, this.getProps().delayBeforeHide);\n\n public static defaultProps: DefaultProps = {\n expectedResponseTime: 1000,\n delayBeforeShow: 1000,\n delayBeforeHide: 1000,\n rejected: false,\n active: false,\n disableAnimations: isTestEnv,\n };\n\n constructor(props: GlobalLoaderProps) {\n super(props);\n this.state = {\n started: false,\n visible: false,\n done: false,\n rejected: false,\n accept: false,\n dead: false,\n successAnimationInProgress: false,\n expectedResponseTime: this.getProps().expectedResponseTime,\n };\n }\n componentDidMount() {\n currentGlobalLoader?.kill();\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n currentGlobalLoader = this;\n const { active, rejected } = this.getProps();\n if (active) {\n this.setActive();\n }\n if (rejected) {\n this.setReject(true);\n }\n }\n\n componentWillUnmount(): void {\n currentGlobalLoader = null;\n }\n\n componentDidUpdate(prevProps: Readonly<GlobalLoaderProps>) {\n const { expectedResponseTime, rejected, active } = this.getProps();\n if (expectedResponseTime !== prevProps.expectedResponseTime) {\n this.setState({ expectedResponseTime });\n }\n if (rejected !== prevProps.rejected) {\n this.setReject(rejected);\n }\n if (active !== prevProps.active) {\n if (active) {\n this.setActive();\n } else {\n this.setDone();\n }\n }\n }\n\n public render() {\n let status: GlobalLoaderViewProps['status'] = 'standard';\n\n if (this.state.done) {\n status = 'success';\n } else if (this.state.rejected) {\n status = 'error';\n } else if (this.state.accept) {\n status = 'accept';\n }\n const { delayBeforeHide, disableAnimations } = this.getProps();\n return (\n !this.state.dead &&\n this.state.visible && (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <GlobalLoaderView\n expectedResponseTime={this.state.expectedResponseTime}\n delayBeforeHide={delayBeforeHide}\n status={status}\n data-tid={GlobalLoaderDataTids.root}\n disableAnimations={disableAnimations}\n />\n </CommonWrapper>\n )\n );\n }\n\n /**\n * Запускает анимацию лоадера <br />\n * Равносильно установке пропа `active = true`\n *\n * @public\n */\n public static start = (expectedResponseTime?: number) => {\n currentGlobalLoader?.setActive();\n if (typeof expectedResponseTime === 'number') {\n currentGlobalLoader?.updateExpectedResponseTime(expectedResponseTime);\n }\n };\n\n /**\n * Показывает анимацию успешного завершения загрузки <br />\n * Равносильно установке пропа `active = false`\n *\n * @public\n */\n public static done = () => {\n currentGlobalLoader?.setDone();\n };\n\n /**\n * Переключает анимацию лоадера в состояние спиннера <br />\n * Равносильно установке пропа `rejected = true`\n *\n * @public\n */\n public static reject = () => {\n currentGlobalLoader?.setReject(true);\n };\n\n /**\n * Возвращает лоадер из состояния спиннера в обычное и продолжает анимацию с того места, на котором она была прерван <br />\n * Равносильно установке пропа `rejected = false`\n *\n * @public\n */\n public static accept = () => {\n currentGlobalLoader?.setReject(false);\n };\n\n public setActive = () => {\n this.startTask.cancel();\n if (this.state.successAnimationInProgress) {\n this.resumeTaskAfterSuccessAnimation();\n } else {\n this.setState({ visible: false, done: false, rejected: false, accept: false, started: true });\n if (this.getProps().rejected) {\n this.setReject(true);\n } else {\n this.stopTask.cancel();\n this.startTask();\n }\n }\n };\n\n public setDone = () => {\n if (!this.state.started) {\n return;\n }\n this.setState({ done: true, successAnimationInProgress: true });\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.stopTask();\n };\n\n public setReject = (reject: boolean) => {\n if (!this.state.visible && (this.state.started || this.getProps().active)) {\n this.setState({ visible: true });\n }\n this.startTask.cancel();\n this.stopTask.cancel();\n if (reject) {\n this.props.onReject?.();\n } else if (this.state.rejected) {\n this.setState({ accept: true });\n this.props.onAccept?.();\n }\n this.setState({ rejected: reject });\n };\n\n public updateExpectedResponseTime(expectedResponseTime: number) {\n this.setState({ expectedResponseTime });\n }\n\n public kill = () => {\n this.stopTask.cancel();\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.setState({\n dead: true,\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;
@@ -151,6 +151,7 @@ Group = exports.Group = (0, _rootNode.rootNode)(_class = (_Group = /*#__PURE__*/
151
151
 
152
152
 
153
153
 
154
+
154
155
 
155
156
 
156
157
  renderChild = function (
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_client","_CommonWrapper","_Emotion","_rootNode","_utils","_featureFlagsContext","_Group2","_class","_Group","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","React","Children","count","getButtonCorners","exports","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","tryPassCorners","child","corners","isButton","isInput","isFxInput","isAutocomplete","isPasswordInput","isCurrencyInput","isSelect","isDropdown","isDropdownMenu","cloneElement","_extends2","default","props","hasWidthInPercent","String","width","includes","GroupDataTids","root","Group","rootNode","_React$Component","_this","_len","arguments","length","args","_key","call","apply","concat","renderChild","isWidthInPercent","_cx","_cx2","createElement","className","cx","styles","fixed","stretch","stretchFallback","Boolean","isIE11","isEdge","item","itemFirst","_inheritsLoose2","_proto","prototype","render","_this2","style","childrenArray","toArray","firstChild","lastChild","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","CommonWrapper","rootNodeRef","setRootNode","map","isValidElement","groupAddHintAndTooltipSupport","isHint","isTooltip","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","_interopRequireDefault","require","_client","_CommonWrapper","_Emotion","_rootNode","_utils","_featureFlagsContext","_Group2","_class","_Group","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","React","Children","count","getButtonCorners","exports","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","tryPassCorners","child","corners","isButton","isInput","isFxInput","isAutocomplete","isPasswordInput","isCurrencyInput","isSelect","isDropdown","isDropdownMenu","cloneElement","_extends2","default","props","hasWidthInPercent","String","width","includes","GroupDataTids","root","Group","rootNode","_React$Component","_this","_len","arguments","length","args","_key","call","apply","concat","renderChild","isWidthInPercent","_cx","_cx2","createElement","className","cx","styles","fixed","stretch","stretchFallback","Boolean","isIE11","isEdge","item","itemFirst","_inheritsLoose2","_proto","prototype","render","_this2","style","childrenArray","toArray","firstChild","lastChild","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","CommonWrapper","rootNodeRef","setRootNode","map","isValidElement","groupAddHintAndTooltipSupport","isHint","isTooltip","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":[]}
@@ -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;
@@ -97,6 +97,7 @@ Hint = exports.Hint = (0, _rootNode.rootNode)(_class = (_Hint = /*#__PURE__*/fun
97
97
 
98
98
 
99
99
 
100
+
100
101
  popupRef = /*#__PURE__*/_react.default.createRef();_this.
101
102
 
102
103
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_ThemeContext","_ThemeFactory","_Popup","_currentEnvironment","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_Hint2","_class","_Hint","HINT_BORDER_COLOR","Hint","exports","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","opened","manual","position","DUMMY_LOCATION","popupRef","React","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","globalObject","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose2","default","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","CommonWrapper","_extends2","rootNodeRef","setRootNode","Popup","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","cx","styles","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName","isTestEnv"],"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","_interopRequireDefault","require","_globalObject","_ThemeContext","_ThemeFactory","_Popup","_currentEnvironment","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_Hint2","_class","_Hint","HINT_BORDER_COLOR","Hint","exports","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","opened","manual","position","DUMMY_LOCATION","popupRef","React","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","globalObject","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose2","default","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","ThemeFactory","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","CommonWrapper","_extends2","rootNodeRef","setRootNode","Popup","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","cx","styles","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName","isTestEnv"],"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":[]}
@@ -2,6 +2,7 @@ import type { AriaAttributes, HTMLAttributes, ReactElement } from 'react';
2
2
  import React from 'react';
3
3
  import type { Nullable, Override } from '../../typings/utility-types';
4
4
  import type { CommonProps } from '../../internal/CommonWrapper';
5
+ import type { TGetRootNode } from '../../lib/rootNode';
5
6
  import type { SizeProp } from '../../lib/types/props';
6
7
  import type { InputElementProps } from './Input.typings';
7
8
  export declare const inputTypes: readonly ["password", "text", "number", "tel", "search", "time", "date", "url", "email"];
@@ -80,7 +81,7 @@ export interface InputProps extends CommonProps, Pick<HTMLAttributes<unknown>, '
80
81
  selectAllOnFocus?: boolean;
81
82
  /** Задает функцию для обработки ввода.
82
83
  * При неправильном вводе инпут по-умолчанию вспыхивает акцентным цветом.
83
- * Если `onUnexpectedInput` передан - вызывается переданный обработчик b вспыхивание можно вызвать публичным методом инстанса `blink()`.
84
+ * Если `onUnexpectedInput` передан - вызывается переданный обработчик и вспыхивание можно вызвать публичным методом инстанса `blink()`.
84
85
  * @param {string} value - значение инпута. */
85
86
  onUnexpectedInput?: (value: string) => void;
86
87
  /** Устанавливает радиус скруглений углов.
@@ -91,7 +92,6 @@ export interface InputProps extends CommonProps, Pick<HTMLAttributes<unknown>, '
91
92
  }> {
92
93
  }
93
94
  export interface InputState {
94
- blinking: boolean;
95
95
  focused: boolean;
96
96
  hovered: boolean;
97
97
  needsPolyfillPlaceholder: boolean;
@@ -101,7 +101,7 @@ export declare const InputDataTids: {
101
101
  readonly root: "Input__root";
102
102
  readonly clearCross: "Input__clearCross";
103
103
  };
104
- type DefaultProps = Required<Pick<InputProps, 'size' | 'type' | 'showClearIcon'>>;
104
+ type DefaultProps = Required<Pick<InputProps, 'type' | 'showClearIcon'>>;
105
105
  /**
106
106
  * Поле ввода `Input` дает возможность указать значение с помощью клавиатуры.
107
107
  *
@@ -119,11 +119,13 @@ export declare class Input extends React.Component<InputProps, InputState> {
119
119
  static __KONTUR_REACT_UI__: string;
120
120
  static displayName: string;
121
121
  static defaultProps: DefaultProps;
122
+ private size;
122
123
  private getProps;
123
124
  private selectAllId;
124
125
  private theme;
125
- private blinkTimeout;
126
126
  input: HTMLInputElement | null;
127
+ labelRef: React.RefObject<HTMLLabelElement>;
128
+ getRootNode: TGetRootNode;
127
129
  private setRootNode;
128
130
  private getClearCrossShowed;
129
131
  state: InputState;
@@ -165,7 +167,6 @@ export declare class Input extends React.Component<InputProps, InputState> {
165
167
  delaySelectAll: () => number | null;
166
168
  private _selectAll;
167
169
  private cancelDelayedSelectAll;
168
- private cancelBlink;
169
170
  private getInput;
170
171
  private renderMain;
171
172
  private renderMaskedInput;