@skbkontur/react-ui 0.0.0-dad43298ae → 0.0.0-db9f11da2a

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 (952) hide show
  1. package/CHANGELOG.md +280 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -26
  4. package/cjs/components/Autocomplete/Autocomplete.js +64 -46
  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 +109 -76
  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/Calendar/CalendarDay.js +18 -2
  18. package/cjs/components/Calendar/CalendarDay.js.map +1 -1
  19. package/cjs/components/Calendar/DayCellView.js +7 -15
  20. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  21. package/cjs/components/Center/Center.d.ts +2 -0
  22. package/cjs/components/Center/Center.js +1 -0
  23. package/cjs/components/Center/Center.js.map +1 -1
  24. package/cjs/components/Checkbox/Checkbox.d.ts +4 -16
  25. package/cjs/components/Checkbox/Checkbox.js +16 -32
  26. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  27. package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
  28. package/cjs/components/ComboBox/ComboBox.js +26 -1
  29. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  30. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  31. package/cjs/components/CurrencyInput/CurrencyInput.js +6 -25
  32. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  33. package/cjs/components/CurrencyInput/constants.js +1 -2
  34. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  35. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  36. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  37. package/cjs/components/DateInput/DateInput.d.ts +6 -1
  38. package/cjs/components/DateInput/DateInput.js +45 -17
  39. package/cjs/components/DateInput/DateInput.js.map +1 -1
  40. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  41. package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
  42. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  43. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  44. package/cjs/components/DatePicker/DatePicker.js +6 -60
  45. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  46. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +3 -1
  47. package/cjs/components/DateRangePicker/DateRangePicker.js +61 -23
  48. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  49. package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  50. package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
  51. package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
  52. package/cjs/components/DateRangePicker/DateRangePickerInput.js +4 -8
  53. package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
  54. package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js +17 -17
  55. package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
  56. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  57. package/cjs/components/Dropdown/Dropdown.js +2 -82
  58. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  59. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  60. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  61. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  62. package/cjs/components/FileUploader/FileUploader.js +15 -2
  63. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  64. package/cjs/components/FxInput/FxInput.d.ts +13 -8
  65. package/cjs/components/FxInput/FxInput.js +137 -60
  66. package/cjs/components/FxInput/FxInput.js.map +1 -1
  67. package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
  68. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  69. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  70. package/cjs/components/Gapped/Gapped.js +1 -24
  71. package/cjs/components/Gapped/Gapped.js.map +1 -1
  72. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  73. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  74. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  75. package/cjs/components/Group/Group.d.ts +5 -4
  76. package/cjs/components/Group/Group.js +91 -40
  77. package/cjs/components/Group/Group.js.map +1 -1
  78. package/cjs/components/Group/Group.styles.d.ts +1 -0
  79. package/cjs/components/Group/Group.styles.js +12 -6
  80. package/cjs/components/Group/Group.styles.js.map +1 -1
  81. package/cjs/components/Hint/Hint.d.ts +2 -0
  82. package/cjs/components/Hint/Hint.js +1 -0
  83. package/cjs/components/Hint/Hint.js.map +1 -1
  84. package/cjs/components/Input/Input.d.ts +6 -5
  85. package/cjs/components/Input/Input.js +17 -47
  86. package/cjs/components/Input/Input.js.map +1 -1
  87. package/cjs/components/Input/Input.styles.d.ts +0 -1
  88. package/cjs/components/Input/Input.styles.js +8 -19
  89. package/cjs/components/Input/Input.styles.js.map +1 -1
  90. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -0
  91. package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
  92. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  93. package/cjs/components/Kebab/Kebab.d.ts +4 -2
  94. package/cjs/components/Kebab/Kebab.js +9 -29
  95. package/cjs/components/Kebab/Kebab.js.map +1 -1
  96. package/cjs/components/Link/Link.d.ts +2 -0
  97. package/cjs/components/Link/Link.js +15 -1
  98. package/cjs/components/Link/Link.js.map +1 -1
  99. package/cjs/components/Link/Link.mixins.js +1 -2
  100. package/cjs/components/Link/Link.mixins.js.map +1 -1
  101. package/cjs/components/Link/Link.styles.js +3 -2
  102. package/cjs/components/Link/Link.styles.js.map +1 -1
  103. package/cjs/components/Loader/Loader.d.ts +7 -36
  104. package/cjs/components/Loader/Loader.js +6 -56
  105. package/cjs/components/Loader/Loader.js.map +1 -1
  106. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  107. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
  108. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  109. package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
  110. package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  111. package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
  112. package/cjs/components/MaskedInput/MaskedInput.js +43 -4
  113. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  114. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  115. package/cjs/components/MenuItem/MenuItem.js +2 -22
  116. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  117. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  118. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  119. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  120. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  121. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  122. package/cjs/components/Modal/Modal.styles.d.ts +2 -1
  123. package/cjs/components/Modal/Modal.styles.js +40 -32
  124. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  125. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  126. package/cjs/components/Modal/ModalBody.js +1 -0
  127. package/cjs/components/Modal/ModalBody.js.map +1 -1
  128. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  129. package/cjs/components/Modal/ModalHeader.js +8 -1
  130. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  131. package/cjs/components/Modal/ModalSeparator.js +1 -1
  132. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  133. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  134. package/cjs/components/Paging/DotsIcon.js +13 -0
  135. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  136. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  137. package/cjs/components/Paging/ForwardIcon.js +13 -1
  138. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  139. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  140. package/cjs/components/Paging/NavigationHelper.js +8 -6
  141. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  142. package/cjs/components/Paging/Paging.d.ts +13 -2
  143. package/cjs/components/Paging/Paging.js +120 -50
  144. package/cjs/components/Paging/Paging.js.map +1 -1
  145. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  146. package/cjs/components/Paging/Paging.styles.js +151 -22
  147. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  148. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  149. package/cjs/components/Paging/PagingHelper.js +18 -11
  150. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  151. package/cjs/components/PasswordInput/PasswordInput.d.ts +5 -12
  152. package/cjs/components/PasswordInput/PasswordInput.js +21 -32
  153. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  154. package/cjs/components/Radio/Radio.d.ts +4 -1
  155. package/cjs/components/Radio/Radio.js +7 -4
  156. package/cjs/components/Radio/Radio.js.map +1 -1
  157. package/cjs/components/RadioGroup/RadioGroup.d.ts +3 -0
  158. package/cjs/components/RadioGroup/RadioGroup.js +19 -1
  159. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  160. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  161. package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
  162. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  163. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  164. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  165. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  166. package/cjs/components/Select/Select.d.ts +7 -1
  167. package/cjs/components/Select/Select.js +13 -6
  168. package/cjs/components/Select/Select.js.map +1 -1
  169. package/cjs/components/SidePage/SidePage.js +4 -2
  170. package/cjs/components/SidePage/SidePage.js.map +1 -1
  171. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  172. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  173. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  174. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  175. package/cjs/components/SidePage/SidePageBody.js +1 -0
  176. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  177. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  178. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  179. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  180. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  181. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  182. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  183. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  184. package/cjs/components/SidePage/SidePageHeader.js +63 -19
  185. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  186. package/cjs/components/SingleToast/SingleToast.d.ts +33 -3
  187. package/cjs/components/SingleToast/SingleToast.js +58 -3
  188. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  189. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  190. package/cjs/components/Spinner/Spinner.js +2 -32
  191. package/cjs/components/Spinner/Spinner.js.map +1 -1
  192. package/cjs/components/Sticky/Sticky.d.ts +5 -13
  193. package/cjs/components/Sticky/Sticky.js +12 -18
  194. package/cjs/components/Sticky/Sticky.js.map +1 -1
  195. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  196. package/cjs/components/Switcher/Switcher.js +11 -20
  197. package/cjs/components/Switcher/Switcher.js.map +1 -1
  198. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  199. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  200. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  201. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  202. package/cjs/components/Tabs/Indicator.js +1 -0
  203. package/cjs/components/Tabs/Indicator.js.map +1 -1
  204. package/cjs/components/Tabs/Tab.d.ts +2 -0
  205. package/cjs/components/Tabs/Tab.js +1 -0
  206. package/cjs/components/Tabs/Tab.js.map +1 -1
  207. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  208. package/cjs/components/Tabs/Tabs.js +1 -0
  209. package/cjs/components/Tabs/Tabs.js.map +1 -1
  210. package/cjs/components/Textarea/Textarea.d.ts +10 -46
  211. package/cjs/components/Textarea/Textarea.js +23 -60
  212. package/cjs/components/Textarea/Textarea.js.map +1 -1
  213. package/cjs/components/Textarea/Textarea.styles.js +3 -2
  214. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  215. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  216. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  217. package/cjs/components/Toast/Toast.d.ts +62 -13
  218. package/cjs/components/Toast/Toast.js +119 -12
  219. package/cjs/components/Toast/Toast.js.map +1 -1
  220. package/cjs/components/Toast/ToastStatic.d.ts +3 -2
  221. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  222. package/cjs/components/Toast/ToastView.d.ts +8 -16
  223. package/cjs/components/Toast/ToastView.js +19 -22
  224. package/cjs/components/Toast/ToastView.js.map +1 -1
  225. package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
  226. package/cjs/components/Toast/ToastView.styles.js +43 -9
  227. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  228. package/cjs/components/Toggle/Toggle.d.ts +4 -11
  229. package/cjs/components/Toggle/Toggle.js +4 -14
  230. package/cjs/components/Toggle/Toggle.js.map +1 -1
  231. package/cjs/components/Token/Token.d.ts +2 -0
  232. package/cjs/components/Token/Token.js +1 -0
  233. package/cjs/components/Token/Token.js.map +1 -1
  234. package/cjs/components/TokenInput/TokenInput.d.ts +8 -3
  235. package/cjs/components/TokenInput/TokenInput.js +44 -30
  236. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  237. package/cjs/components/TokenInput/TokenInputMenu.d.ts +12 -3
  238. package/cjs/components/TokenInput/TokenInputMenu.js +23 -1
  239. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  240. package/cjs/components/Tooltip/Tooltip.d.ts +14 -8
  241. package/cjs/components/Tooltip/Tooltip.js +102 -17
  242. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  243. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  244. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  245. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  246. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  247. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  248. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  249. package/cjs/index.d.ts +2 -0
  250. package/cjs/index.js +1 -0
  251. package/cjs/index.js.map +1 -1
  252. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  253. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
  254. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  255. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  256. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
  257. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
  258. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  259. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  260. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  261. package/cjs/internal/ComponentTable.js +2 -3
  262. package/cjs/internal/ComponentTable.js.map +1 -1
  263. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  264. package/cjs/internal/CustomComboBox/ComboBoxView.js +50 -7
  265. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  266. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
  267. package/cjs/internal/CustomComboBox/CustomComboBox.js +20 -5
  268. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  269. package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
  270. package/cjs/internal/CustomComboBox/getComboBoxTheme.js +10 -7
  271. package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
  272. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  273. package/cjs/internal/DateSelect/DateSelect.js +13 -19
  274. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  275. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  276. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  277. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  278. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  279. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  280. package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
  281. package/cjs/internal/InputLikeText/InputLikeText.js +13 -14
  282. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  283. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  284. package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
  285. package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
  286. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  287. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
  288. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  289. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  290. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
  291. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
  292. package/cjs/internal/Menu/Menu.d.ts +2 -0
  293. package/cjs/internal/Menu/Menu.js +1 -0
  294. package/cjs/internal/Menu/Menu.js.map +1 -1
  295. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  296. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  297. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  298. package/cjs/internal/Popup/Popup.d.ts +43 -60
  299. package/cjs/internal/Popup/Popup.js +41 -81
  300. package/cjs/internal/Popup/Popup.js.map +1 -1
  301. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  302. package/cjs/internal/Popup/PopupPin.js +2 -35
  303. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  304. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  305. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  306. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  307. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  308. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  309. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  310. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  311. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  312. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  313. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  314. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  315. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  316. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  317. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  318. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  319. package/cjs/internal/ThemePlayground/Playground.js +20 -16
  320. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  321. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  322. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  323. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  324. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  325. package/cjs/internal/ThemePlayground/SizesGroup.js +4 -4
  326. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  327. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +1 -1
  328. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  329. package/cjs/internal/ThemePlayground/VariableValue.js +4 -4
  330. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  331. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  332. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  333. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  334. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  335. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  336. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  337. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  338. package/cjs/internal/themes/BasicTheme.d.ts +125 -20
  339. package/cjs/internal/themes/BasicTheme.js +172 -25
  340. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  341. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  342. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  343. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  344. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  345. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  346. package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
  347. package/cjs/internal/themes/DarkTheme5_4.js +18 -0
  348. package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
  349. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  350. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  351. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  352. package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
  353. package/cjs/internal/themes/LightTheme5_4.js +18 -0
  354. package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
  355. package/cjs/internal/themes/consts.d.ts +8 -0
  356. package/cjs/internal/themes/consts.js +8 -0
  357. package/cjs/internal/themes/consts.js.map +1 -0
  358. package/cjs/lib/__stories__/Blink.creevey.mts +90 -0
  359. package/cjs/lib/blink.d.ts +15 -0
  360. package/cjs/lib/blink.js +65 -0
  361. package/cjs/lib/blink.js.map +1 -0
  362. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  363. package/cjs/lib/date/InternalDateGetter.js +8 -1
  364. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  365. package/cjs/lib/delay.mts +3 -0
  366. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
  367. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
  368. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +23 -1
  369. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  370. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  371. package/cjs/lib/forwardRefAndName.js +0 -1
  372. package/cjs/lib/forwardRefAndName.js.map +1 -1
  373. package/cjs/lib/getMenuPositions.d.ts +21 -1
  374. package/cjs/lib/getMenuPositions.js +45 -8
  375. package/cjs/lib/getMenuPositions.js.map +1 -1
  376. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  377. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  378. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  379. package/cjs/lib/size/SizeControlContext.d.ts +6 -0
  380. package/cjs/lib/size/SizeControlContext.js +16 -0
  381. package/cjs/lib/size/SizeControlContext.js.map +1 -0
  382. package/cjs/lib/size/SizeDecorator.d.ts +33 -0
  383. package/cjs/lib/size/SizeDecorator.js +41 -0
  384. package/cjs/lib/size/SizeDecorator.js.map +1 -0
  385. package/cjs/lib/size/constants.d.ts +2 -0
  386. package/cjs/lib/size/constants.js +3 -0
  387. package/cjs/lib/size/constants.js.map +1 -0
  388. package/cjs/lib/size/index.d.ts +1 -0
  389. package/cjs/lib/size/index.js +1 -0
  390. package/cjs/lib/size/index.js.map +1 -0
  391. package/cjs/lib/size/useSizeControl.d.ts +2 -0
  392. package/cjs/lib/size/useSizeControl.js +10 -0
  393. package/cjs/lib/size/useSizeControl.js.map +1 -0
  394. package/cjs/lib/theming/ThemeHelpers.d.ts +1 -1
  395. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  396. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  397. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  398. package/cjs/lib/theming/themes/DarkTheme.d.ts +2 -0
  399. package/cjs/lib/theming/themes/DarkTheme.js +6 -2
  400. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  401. package/cjs/lib/theming/themes/LightTheme.d.ts +2 -0
  402. package/cjs/lib/theming/themes/LightTheme.js +6 -2
  403. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  404. package/cjs/lib/utils.d.ts +18 -1
  405. package/cjs/lib/utils.js +40 -4
  406. package/cjs/lib/utils.js.map +1 -1
  407. package/cjs/test-setup.d.ts +1 -0
  408. package/cjs/vitest.config.d.ts +2 -0
  409. package/components/Autocomplete/Autocomplete/Autocomplete.js +63 -51
  410. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  411. package/components/Autocomplete/Autocomplete.d.ts +18 -26
  412. package/components/Button/Button/Button.js +45 -24
  413. package/components/Button/Button/Button.js.map +1 -1
  414. package/components/Button/Button.d.ts +4 -1
  415. package/components/Button/Button.styles/Button.styles.js +79 -61
  416. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  417. package/components/Button/Button.styles.d.ts +6 -0
  418. package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
  419. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  420. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  421. package/components/Calendar/Calendar.d.ts +2 -0
  422. package/components/Calendar/CalendarDay/CalendarDay.js +9 -2
  423. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  424. package/components/Calendar/DayCellView/DayCellView.js +6 -10
  425. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  426. package/components/Center/Center/Center.js.map +1 -1
  427. package/components/Center/Center.d.ts +2 -0
  428. package/components/Checkbox/Checkbox/Checkbox.js +12 -24
  429. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  430. package/components/Checkbox/Checkbox.d.ts +4 -16
  431. package/components/ComboBox/ComboBox/ComboBox.js +2 -1
  432. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  433. package/components/ComboBox/ComboBox.d.ts +22 -3
  434. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +13 -36
  435. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  436. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  437. package/components/CurrencyInput/constants/constants.js +0 -1
  438. package/components/CurrencyInput/constants/constants.js.map +1 -1
  439. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  440. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  441. package/components/DateInput/DateInput/DateInput.js +34 -24
  442. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  443. package/components/DateInput/DateInput.d.ts +6 -1
  444. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  445. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  446. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  447. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  448. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  449. package/components/DatePicker/DatePicker.d.ts +6 -33
  450. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +41 -22
  451. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  452. package/components/DateRangePicker/DateRangePicker.d.ts +3 -1
  453. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
  454. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
  455. package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  456. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +5 -8
  457. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
  458. package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js +16 -15
  459. package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js.map +1 -1
  460. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  461. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  462. package/components/Dropdown/Dropdown.d.ts +2 -47
  463. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  464. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  465. package/components/FileUploader/FileUploader/FileUploader.js +8 -2
  466. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  467. package/components/FxInput/FxInput/FxInput.js +122 -70
  468. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  469. package/components/FxInput/FxInput.d.ts +13 -8
  470. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
  471. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  472. package/components/Gapped/Gapped/Gapped.js +1 -15
  473. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  474. package/components/Gapped/Gapped.d.ts +2 -15
  475. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  476. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  477. package/components/Group/Group/Group.js +64 -28
  478. package/components/Group/Group/Group.js.map +1 -1
  479. package/components/Group/Group.d.ts +5 -4
  480. package/components/Group/Group.styles/Group.styles.js +9 -6
  481. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  482. package/components/Group/Group.styles.d.ts +1 -0
  483. package/components/Hint/Hint/Hint.js.map +1 -1
  484. package/components/Hint/Hint.d.ts +2 -0
  485. package/components/Input/Input/Input.js +23 -52
  486. package/components/Input/Input/Input.js.map +1 -1
  487. package/components/Input/Input.d.ts +6 -5
  488. package/components/Input/Input.styles/Input.styles.js +9 -13
  489. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  490. package/components/Input/Input.styles.d.ts +0 -1
  491. package/components/Input/InputLayout/InputLayout/InputLayout.js +5 -2
  492. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  493. package/components/Input/InputLayout/InputLayout.d.ts +1 -0
  494. package/components/Kebab/Kebab/Kebab.js +8 -26
  495. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  496. package/components/Kebab/Kebab.d.ts +4 -2
  497. package/components/Link/Link/Link.js +8 -1
  498. package/components/Link/Link/Link.js.map +1 -1
  499. package/components/Link/Link.d.ts +2 -0
  500. package/components/Link/Link.mixins/Link.mixins.js +1 -1
  501. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  502. package/components/Link/Link.styles/Link.styles.js +1 -1
  503. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  504. package/components/Loader/Loader/Loader.js +2 -34
  505. package/components/Loader/Loader/Loader.js.map +1 -1
  506. package/components/Loader/Loader.d.ts +7 -36
  507. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
  508. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
  509. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  510. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
  511. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
  512. package/components/MaskedInput/MaskedInput/MaskedInput.js +28 -2
  513. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  514. package/components/MaskedInput/MaskedInput.d.ts +9 -0
  515. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  516. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  517. package/components/MenuItem/MenuItem.d.ts +2 -12
  518. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  519. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  520. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  521. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  522. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  523. package/components/Modal/Modal.styles/Modal.styles.js +32 -29
  524. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  525. package/components/Modal/Modal.styles.d.ts +2 -1
  526. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  527. package/components/Modal/ModalBody.d.ts +2 -0
  528. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  529. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  530. package/components/Modal/ModalHeader.d.ts +5 -0
  531. package/components/Modal/ModalSeparator/ModalSeparator.js +1 -1
  532. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  533. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  534. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  535. package/components/Paging/DotsIcon/package.json +6 -0
  536. package/components/Paging/DotsIcon.d.ts +3 -0
  537. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  538. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  539. package/components/Paging/ForwardIcon.d.ts +3 -0
  540. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  541. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  542. package/components/Paging/NavigationHelper.d.ts +3 -2
  543. package/components/Paging/Paging/Paging.js +96 -47
  544. package/components/Paging/Paging/Paging.js.map +1 -1
  545. package/components/Paging/Paging.d.ts +13 -2
  546. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  547. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  548. package/components/Paging/Paging.styles.d.ts +24 -1
  549. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  550. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  551. package/components/Paging/PagingHelper.d.ts +1 -1
  552. package/components/PasswordInput/PasswordInput/PasswordInput.js +13 -25
  553. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  554. package/components/PasswordInput/PasswordInput.d.ts +5 -12
  555. package/components/Radio/Radio/Radio.js +7 -7
  556. package/components/Radio/Radio/Radio.js.map +1 -1
  557. package/components/Radio/Radio.d.ts +4 -1
  558. package/components/RadioGroup/RadioGroup/RadioGroup.js +23 -17
  559. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  560. package/components/RadioGroup/RadioGroup.d.ts +3 -0
  561. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
  562. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  563. package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  564. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  565. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  566. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  567. package/components/Select/Select/Select.js +17 -15
  568. package/components/Select/Select/Select.js.map +1 -1
  569. package/components/Select/Select.d.ts +7 -1
  570. package/components/SidePage/SidePage/SidePage.js +3 -3
  571. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  572. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  573. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  574. package/components/SidePage/SidePage.styles.d.ts +3 -1
  575. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  576. package/components/SidePage/SidePageBody.d.ts +2 -0
  577. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  578. package/components/SidePage/SidePageContainer.d.ts +2 -0
  579. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  580. package/components/SidePage/SidePageFooter.d.ts +2 -0
  581. package/components/SidePage/SidePageHeader/SidePageHeader.js +62 -35
  582. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  583. package/components/SidePage/SidePageHeader.d.ts +12 -2
  584. package/components/SingleToast/SingleToast/SingleToast.js +37 -12
  585. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  586. package/components/SingleToast/SingleToast.d.ts +33 -3
  587. package/components/Spinner/Spinner/Spinner.js +1 -18
  588. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  589. package/components/Spinner/Spinner.d.ts +2 -18
  590. package/components/Sticky/Sticky/Sticky.js +10 -14
  591. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  592. package/components/Sticky/Sticky.d.ts +5 -13
  593. package/components/Switcher/Switcher/Switcher.js +19 -16
  594. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  595. package/components/Switcher/Switcher.d.ts +6 -21
  596. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  597. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  598. package/components/Switcher/Switcher.styles.d.ts +1 -0
  599. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  600. package/components/Tabs/Indicator.d.ts +2 -0
  601. package/components/Tabs/Tab/Tab.js.map +1 -1
  602. package/components/Tabs/Tab.d.ts +2 -0
  603. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  604. package/components/Tabs/Tabs.d.ts +2 -0
  605. package/components/Textarea/Textarea/Textarea.js +19 -52
  606. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  607. package/components/Textarea/Textarea.d.ts +10 -46
  608. package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
  609. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  610. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  611. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  612. package/components/Toast/Toast/Toast.js +93 -32
  613. package/components/Toast/Toast/Toast.js.map +1 -1
  614. package/components/Toast/Toast.d.ts +62 -13
  615. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  616. package/components/Toast/ToastStatic.d.ts +3 -2
  617. package/components/Toast/ToastView/ToastView.js +20 -22
  618. package/components/Toast/ToastView/ToastView.js.map +1 -1
  619. package/components/Toast/ToastView.d.ts +8 -16
  620. package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
  621. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  622. package/components/Toast/ToastView.styles.d.ts +4 -0
  623. package/components/Toggle/Toggle/Toggle.js +11 -20
  624. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  625. package/components/Toggle/Toggle.d.ts +4 -11
  626. package/components/Token/Token/Token.js.map +1 -1
  627. package/components/Token/Token.d.ts +2 -0
  628. package/components/TokenInput/TokenInput/TokenInput.js +49 -43
  629. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  630. package/components/TokenInput/TokenInput.d.ts +8 -3
  631. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +16 -6
  632. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  633. package/components/TokenInput/TokenInputMenu.d.ts +12 -3
  634. package/components/Tooltip/Tooltip/Tooltip.js +77 -26
  635. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  636. package/components/Tooltip/Tooltip.d.ts +14 -8
  637. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  638. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  639. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  640. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  641. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  642. package/index.d.ts +2 -0
  643. package/index.js +2 -0
  644. package/index.js.map +1 -1
  645. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
  646. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  647. package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  648. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
  649. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
  650. package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  651. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  652. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  653. package/internal/ComponentTable/ComponentTable.js +0 -2
  654. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  655. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +72 -41
  656. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  657. package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  658. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +13 -7
  659. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  660. package/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
  661. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +5 -3
  662. package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -1
  663. package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
  664. package/internal/DateSelect/DateSelect/DateSelect.js +4 -11
  665. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  666. package/internal/DateSelect/DateSelect.d.ts +0 -10
  667. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  668. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  669. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  670. package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -28
  671. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  672. package/internal/InputLikeText/InputLikeText.d.ts +4 -3
  673. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
  674. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
  675. package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  676. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
  677. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  678. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
  679. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  680. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
  681. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
  682. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
  683. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  684. package/internal/Menu/Menu/Menu.js.map +1 -1
  685. package/internal/Menu/Menu.d.ts +2 -0
  686. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  687. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  688. package/internal/Popup/Popup/Popup.js +23 -69
  689. package/internal/Popup/Popup/Popup.js.map +1 -1
  690. package/internal/Popup/Popup.d.ts +43 -60
  691. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  692. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  693. package/internal/Popup/PopupPin.d.ts +23 -33
  694. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  695. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  696. package/internal/Popup/PopupPinNew/package.json +6 -0
  697. package/internal/Popup/PopupPinNew.d.ts +31 -0
  698. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  699. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  700. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  701. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  702. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  703. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  704. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  705. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  706. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  707. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  708. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  709. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  710. package/internal/ThemePlayground/Playground/Playground.js +21 -18
  711. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  712. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  713. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  714. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  715. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  716. package/internal/ThemePlayground/SizesGroup/SizesGroup.js +4 -4
  717. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  718. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +2 -2
  719. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  720. package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -4
  721. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  722. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  723. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  724. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  725. package/internal/ZIndex/ZIndex.d.ts +3 -3
  726. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  727. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  728. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  729. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  730. package/internal/themes/BasicTheme/BasicTheme.js +185 -30
  731. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  732. package/internal/themes/BasicTheme.d.ts +125 -20
  733. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  734. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  735. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  736. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  737. package/internal/themes/DarkTheme5_3/package.json +6 -0
  738. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  739. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +17 -0
  740. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
  741. package/internal/themes/DarkTheme5_4/package.json +6 -0
  742. package/internal/themes/DarkTheme5_4.d.ts +1 -0
  743. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  744. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  745. package/internal/themes/LightTheme5_3/package.json +6 -0
  746. package/internal/themes/LightTheme5_3.d.ts +1 -0
  747. package/internal/themes/LightTheme5_4/LightTheme5_4.js +17 -0
  748. package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
  749. package/internal/themes/LightTheme5_4/package.json +6 -0
  750. package/internal/themes/LightTheme5_4.d.ts +1 -0
  751. package/internal/themes/consts/consts.js +9 -0
  752. package/internal/themes/consts/consts.js.map +1 -0
  753. package/internal/themes/consts/package.json +6 -0
  754. package/internal/themes/consts.d.ts +8 -0
  755. package/lib/__stories__/Blink.creevey.mts +90 -0
  756. package/lib/blink/blink.js +63 -0
  757. package/lib/blink/blink.js.map +1 -0
  758. package/lib/blink/package.json +6 -0
  759. package/lib/blink.d.ts +15 -0
  760. package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
  761. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  762. package/lib/date/InternalDateGetter.d.ts +1 -1
  763. package/lib/delay.d.mts +1 -0
  764. package/lib/delay.mts +3 -0
  765. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
  766. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +12 -1
  767. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  768. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
  769. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  770. package/lib/forwardRefAndName.d.ts +1 -1
  771. package/lib/getMenuPositions/getMenuPositions.js +33 -4
  772. package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
  773. package/lib/getMenuPositions.d.ts +21 -1
  774. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  775. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  776. package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
  777. package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
  778. package/lib/size/SizeControlContext/package.json +6 -0
  779. package/lib/size/SizeControlContext.d.ts +6 -0
  780. package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
  781. package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
  782. package/lib/size/SizeDecorator/package.json +6 -0
  783. package/lib/size/SizeDecorator.d.ts +33 -0
  784. package/lib/size/constants/constants.js +1 -0
  785. package/lib/size/constants/constants.js.map +1 -0
  786. package/lib/size/constants/package.json +6 -0
  787. package/lib/size/constants.d.ts +2 -0
  788. package/lib/size/index/index.js +1 -0
  789. package/lib/size/index/index.js.map +1 -0
  790. package/lib/size/index/package.json +6 -0
  791. package/lib/size/index.d.ts +1 -0
  792. package/lib/size/package.json +6 -0
  793. package/lib/size/useSizeControl/package.json +6 -0
  794. package/lib/size/useSizeControl/useSizeControl.js +7 -0
  795. package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
  796. package/lib/size/useSizeControl.d.ts +2 -0
  797. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  798. package/lib/theming/ThemeHelpers.d.ts +1 -1
  799. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  800. package/lib/theming/ThemeVersions.d.ts +1 -1
  801. package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -1
  802. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  803. package/lib/theming/themes/DarkTheme.d.ts +2 -0
  804. package/lib/theming/themes/LightTheme/LightTheme.js +5 -1
  805. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  806. package/lib/theming/themes/LightTheme.d.ts +2 -0
  807. package/lib/utils/utils.js +33 -2
  808. package/lib/utils/utils.js.map +1 -1
  809. package/lib/utils.d.ts +18 -1
  810. package/package.json +19 -36
  811. package/test-setup.d.ts +1 -0
  812. package/vitest.config.d.ts +2 -0
  813. package/cjs/components/Autocomplete/Autocomplete.md +0 -113
  814. package/cjs/components/Button/Button.md +0 -261
  815. package/cjs/components/Calendar/Calendar.md +0 -276
  816. package/cjs/components/Calendar/CalendarDay.md +0 -70
  817. package/cjs/components/Center/Center.md +0 -26
  818. package/cjs/components/Checkbox/Checkbox.md +0 -171
  819. package/cjs/components/ComboBox/ComboBox.md +0 -574
  820. package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
  821. package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
  822. package/cjs/components/DateInput/DateInput.md +0 -111
  823. package/cjs/components/DatePicker/DatePicker.md +0 -368
  824. package/cjs/components/Dropdown/Dropdown.md +0 -45
  825. package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
  826. package/cjs/components/FileUploader/FileUploader.md +0 -131
  827. package/cjs/components/FxInput/FxInput.md +0 -31
  828. package/cjs/components/Gapped/Gapped.md +0 -44
  829. package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
  830. package/cjs/components/Group/Group.md +0 -19
  831. package/cjs/components/Hint/Hint.md +0 -86
  832. package/cjs/components/Input/Input.md +0 -87
  833. package/cjs/components/Kebab/Kebab.md +0 -306
  834. package/cjs/components/Link/Link.md +0 -182
  835. package/cjs/components/Loader/Loader.md +0 -33
  836. package/cjs/components/MaskedInput/MaskedInput.md +0 -114
  837. package/cjs/components/MenuFooter/MenuFooter.md +0 -27
  838. package/cjs/components/MenuHeader/MenuHeader.md +0 -35
  839. package/cjs/components/MenuItem/MenuItem.md +0 -139
  840. package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
  841. package/cjs/components/MiniModal/MiniModal.md +0 -231
  842. package/cjs/components/Modal/Modal.md +0 -56
  843. package/cjs/components/Paging/Paging.md +0 -57
  844. package/cjs/components/PasswordInput/PasswordInput.md +0 -29
  845. package/cjs/components/Radio/Radio.md +0 -57
  846. package/cjs/components/RadioGroup/RadioGroup.md +0 -44
  847. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  848. package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
  849. package/cjs/components/Select/Select.md +0 -113
  850. package/cjs/components/SidePage/SidePage.md +0 -65
  851. package/cjs/components/SingleToast/SingleToast.md +0 -36
  852. package/cjs/components/Spinner/Spinner.md +0 -36
  853. package/cjs/components/Sticky/Sticky.md +0 -28
  854. package/cjs/components/Switcher/Switcher.md +0 -111
  855. package/cjs/components/Tabs/Tab.md +0 -73
  856. package/cjs/components/Tabs/Tabs.md +0 -54
  857. package/cjs/components/Textarea/Textarea.md +0 -58
  858. package/cjs/components/Toast/Toast.md +0 -69
  859. package/cjs/components/Toggle/Toggle.md +0 -110
  860. package/cjs/components/Token/Token.md +0 -131
  861. package/cjs/components/TokenInput/TokenInput.md +0 -308
  862. package/cjs/components/Tooltip/Tooltip.md +0 -322
  863. package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
  864. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  865. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  866. package/cjs/internal/DataTids/DataTids.js +0 -50
  867. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  868. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  869. package/cjs/internal/DataTids/DataTids.styles.js +0 -42
  870. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  871. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  872. package/cjs/internal/DataTids/componentsDataTids.js +0 -15
  873. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  874. package/cjs/internal/ThemePlayground/Playground.md +0 -7
  875. package/cjs/lib/SSRSafe.d.ts +0 -2
  876. package/cjs/lib/SSRSafe.js +0 -5
  877. package/cjs/lib/SSRSafe.js.map +0 -1
  878. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  879. package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
  880. package/cjs/lib/theming/ThemeContext.md +0 -265
  881. package/components/Autocomplete/Autocomplete.md +0 -113
  882. package/components/Button/Button.md +0 -261
  883. package/components/Calendar/Calendar.md +0 -276
  884. package/components/Calendar/CalendarDay.md +0 -70
  885. package/components/Center/Center.md +0 -26
  886. package/components/Checkbox/Checkbox.md +0 -171
  887. package/components/ComboBox/ComboBox.md +0 -574
  888. package/components/CurrencyInput/CurrencyInput.md +0 -39
  889. package/components/CurrencyLabel/CurrencyLabel.md +0 -29
  890. package/components/DateInput/DateInput.md +0 -111
  891. package/components/DatePicker/DatePicker.md +0 -368
  892. package/components/Dropdown/Dropdown.md +0 -45
  893. package/components/DropdownMenu/DropdownMenu.md +0 -290
  894. package/components/FileUploader/FileUploader.md +0 -131
  895. package/components/FxInput/FxInput.md +0 -31
  896. package/components/Gapped/Gapped.md +0 -44
  897. package/components/GlobalLoader/GlobalLoader.md +0 -97
  898. package/components/Group/Group.md +0 -19
  899. package/components/Hint/Hint.md +0 -86
  900. package/components/Input/Input.md +0 -87
  901. package/components/Kebab/Kebab.md +0 -306
  902. package/components/Link/Link.md +0 -182
  903. package/components/Loader/Loader.md +0 -33
  904. package/components/MaskedInput/MaskedInput.md +0 -114
  905. package/components/MenuFooter/MenuFooter.md +0 -27
  906. package/components/MenuHeader/MenuHeader.md +0 -35
  907. package/components/MenuItem/MenuItem.md +0 -139
  908. package/components/MenuSeparator/MenuSeparator.md +0 -14
  909. package/components/MiniModal/MiniModal.md +0 -231
  910. package/components/Modal/Modal.md +0 -56
  911. package/components/Paging/Paging.md +0 -57
  912. package/components/PasswordInput/PasswordInput.md +0 -29
  913. package/components/Radio/Radio.md +0 -57
  914. package/components/RadioGroup/RadioGroup.md +0 -44
  915. package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  916. package/components/ScrollContainer/ScrollContainer.md +0 -224
  917. package/components/Select/Select.md +0 -113
  918. package/components/SidePage/SidePage.md +0 -65
  919. package/components/SingleToast/SingleToast.md +0 -36
  920. package/components/Spinner/Spinner.md +0 -36
  921. package/components/Sticky/Sticky.md +0 -28
  922. package/components/Switcher/Switcher.md +0 -111
  923. package/components/Tabs/Tab.md +0 -73
  924. package/components/Tabs/Tabs.md +0 -54
  925. package/components/Textarea/Textarea.md +0 -58
  926. package/components/Toast/Toast.md +0 -69
  927. package/components/Toggle/Toggle.md +0 -110
  928. package/components/Token/Token.md +0 -131
  929. package/components/TokenInput/TokenInput.md +0 -308
  930. package/components/Tooltip/Tooltip.md +0 -322
  931. package/components/TooltipMenu/TooltipMenu.md +0 -241
  932. package/internal/DataTids/DATATIDS.md +0 -12
  933. package/internal/DataTids/DataTids/DataTids.js +0 -69
  934. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  935. package/internal/DataTids/DataTids/package.json +0 -6
  936. package/internal/DataTids/DataTids.d.ts +0 -12
  937. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
  938. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  939. package/internal/DataTids/DataTids.styles/package.json +0 -6
  940. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  941. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
  942. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  943. package/internal/DataTids/componentsDataTids/package.json +0 -6
  944. package/internal/DataTids/componentsDataTids.d.ts +0 -5
  945. package/internal/ThemePlayground/Playground.md +0 -7
  946. package/lib/SSRSafe/SSRSafe.js +0 -4
  947. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  948. package/lib/SSRSafe/package.json +0 -6
  949. package/lib/SSRSafe.d.ts +0 -2
  950. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  951. package/lib/locale/LOCALECONTEXT.md +0 -222
  952. package/lib/theming/ThemeContext.md +0 -265
@@ -1,10 +1,10 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
4
- var _excluded = ["type", "onRestore", "auto", "refInput", "value", "width"];
4
+ var _excluded = ["type", "onRestore", "auto", "refInput", "value", "width", "size", "mask", "maskChar", "formatChars", "alwaysShowMask", "signed", "integerDigits", "fractionDigits", "hideTrailingZeros", "buttonAriaLabel", "corners"];
5
5
  var _class, _FxInput;
6
6
  import React from 'react';
7
- import PropTypes from 'prop-types';
7
+ import warning from 'warning';
8
8
  import { Group } from "../../Group";
9
9
  import { Input } from "../../Input";
10
10
  import { CurrencyInput } from "../../CurrencyInput";
@@ -12,6 +12,10 @@ import { createPropsGetter } from "../../../lib/createPropsGetter";
12
12
  import { CommonWrapper } from "../../../internal/CommonWrapper";
13
13
  import { rootNode } from "../../../lib/rootNode";
14
14
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
15
+ import { MaskedInput } from "../../MaskedInput";
16
+ import { getFullReactUIFlagsContext } from "../../../lib/featureFlagsContext";
17
+ import { ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext/ReactUIFeatureFlagsContext";
18
+ import { withSize } from "../../../lib/size/SizeDecorator";
15
19
  import { MathFunctionIcon } from "../MathFunctionIcon";
16
20
  import { FxInputRestoreBtn } from "../FxInputRestoreBtn";
17
21
  export var FxInputDataTids = {
@@ -25,7 +29,8 @@ export var FxInputDataTids = {
25
29
  *
26
30
  * Принимает все свойства `Input`'a.
27
31
  */
28
- export var FxInput = rootNode(_class = (_FxInput = /*#__PURE__*/function (_React$Component) {
32
+
33
+ export var FxInput = rootNode(_class = withSize(_class = (_FxInput = /*#__PURE__*/function (_React$Component) {
29
34
  function FxInput() {
30
35
  var _this;
31
36
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
@@ -35,66 +40,20 @@ export var FxInput = rootNode(_class = (_FxInput = /*#__PURE__*/function (_React
35
40
  _this.input = null;
36
41
  _this.getProps = createPropsGetter(FxInput.defaultProps);
37
42
  _this.renderMain = function (props) {
38
- var type = props.type,
39
- onRestore = props.onRestore,
40
- auto = props.auto,
41
- refInput = props.refInput,
42
- value = props.value,
43
- width = props.width,
44
- rest = _objectWithoutPropertiesLoose(props, _excluded);
45
- var inputProps = {
46
- align: 'right'
47
- };
48
- var button = null;
49
- var inputCorners = auto ? _extends({}, rest.corners) : _extends({
50
- borderBottomLeftRadius: 0,
51
- borderTopLeftRadius: 0
52
- }, rest.corners);
53
- var iconSizes = {
54
- small: parseInt(_this.theme.inputIconSizeSmall),
55
- medium: parseInt(_this.theme.inputIconSizeMedium),
56
- large: parseInt(_this.theme.inputIconSizeLarge)
57
- };
58
- var size = _this.props.size || Input.defaultProps.size;
59
- var IconFunction = /*#__PURE__*/React.createElement(MathFunctionIcon, {
60
- size: iconSizes[size]
43
+ var button = props.auto ? null : /*#__PURE__*/
44
+ React.createElement(FxInputRestoreBtn, {
45
+ size: props.size,
46
+ onRestore: props.onRestore,
47
+ corners: props.corners,
48
+ disabled: props.disabled,
49
+ borderless: props.borderless,
50
+ "aria-label": props.buttonAriaLabel
61
51
  });
62
- if (auto) {
63
- inputProps.leftIcon = IconFunction;
64
- } else {
65
- button = /*#__PURE__*/
66
- React.createElement(FxInputRestoreBtn, {
67
- size: rest.size,
68
- onRestore: onRestore,
69
- corners: rest.corners,
70
- disabled: rest.disabled,
71
- borderless: rest.borderless,
72
- "aria-label": props.buttonAriaLabel
73
- });
74
- }
75
52
  return /*#__PURE__*/(
76
53
  React.createElement(Group, {
77
54
  "data-tid": FxInputDataTids.root,
78
- width: width
79
- }, button, type === 'currency' ? /*#__PURE__*/
80
- React.createElement(CurrencyInput, _extends({}, inputProps, rest, {
81
- corners: inputCorners,
82
- size: _this.props.size,
83
- width: '100%',
84
- ref: _this.refInput,
85
- value: value,
86
- onValueChange: _this.props.onValueChange
87
- })) : /*#__PURE__*/
88
-
89
- React.createElement(Input, _extends({}, inputProps, rest, {
90
- corners: inputCorners,
91
- size: _this.props.size,
92
- width: '100%',
93
- ref: _this.refInput,
94
- type: type,
95
- value: value,
96
- onValueChange: _this.props.onValueChange
97
- })))
55
+ width: props.width
56
+ }, button, _this.getInput(props))
98
57
  );
99
58
  };
100
59
 
@@ -121,25 +80,118 @@ export var FxInput = rootNode(_class = (_FxInput = /*#__PURE__*/function (_React
121
80
  _this.props.refInput(_this.input);
122
81
  }
123
82
  };
83
+ _this.getLeftIcon = function (props) {
84
+ if (!props.auto) {
85
+ return null;
86
+ }
87
+ var iconSizes = {
88
+ small: parseInt(_this.theme.inputIconSizeSmall),
89
+ medium: parseInt(_this.theme.inputIconSizeMedium),
90
+ large: parseInt(_this.theme.inputIconSizeLarge)
91
+ };
92
+ var size = _this.size;
93
+ return /*#__PURE__*/React.createElement(MathFunctionIcon, {
94
+ size: iconSizes[size]
95
+ });
96
+ };
97
+ _this.getInput = function (props) {
98
+ var type = props.type,
99
+ onRestore = props.onRestore,
100
+ auto = props.auto,
101
+ refInput = props.refInput,
102
+ value = props.value,
103
+ width = props.width,
104
+ _size = props.size,
105
+ mask = props.mask,
106
+ maskChar = props.maskChar,
107
+ formatChars = props.formatChars,
108
+ alwaysShowMask = props.alwaysShowMask,
109
+ signed = props.signed,
110
+ integerDigits = props.integerDigits,
111
+ fractionDigits = props.fractionDigits,
112
+ hideTrailingZeros = props.hideTrailingZeros,
113
+ buttonAriaLabel = props.buttonAriaLabel,
114
+ originalCorners = props.corners,
115
+ rest = _objectWithoutPropertiesLoose(props, _excluded);
116
+ var corners = auto ? originalCorners : _extends({
117
+ borderBottomLeftRadius: 0,
118
+ borderTopLeftRadius: 0
119
+ }, originalCorners);
120
+ var size = _this.size;
121
+ var commonInputProps = _extends({
122
+ corners: corners,
123
+ size: size,
124
+ width: '100%',
125
+ ref: _this.refInput
126
+ }, rest);
127
+ if (type === 'currency') {
128
+ return /*#__PURE__*/(
129
+ React.createElement(CurrencyInput, _extends({}, commonInputProps, {
130
+ signed: signed,
131
+ integerDigits: integerDigits,
132
+ fractionDigits: fractionDigits,
133
+ value: value,
134
+ onValueChange: _this.props.onValueChange
135
+ }))
136
+ );
137
+ }
138
+ if (_this.featureFlags.fxInputUseMaskedInput && mask) {
139
+ return /*#__PURE__*/(
140
+ React.createElement(MaskedInput, _extends({}, commonInputProps, {
141
+ leftIcon: _this.getLeftIcon(props),
142
+ align: "right",
143
+ mask: mask,
144
+ maskChar: maskChar,
145
+ formatChars: formatChars,
146
+ alwaysShowMask: alwaysShowMask,
147
+ value: value,
148
+ onValueChange: _this.props.onValueChange
149
+ }))
150
+ );
151
+ }
152
+ return /*#__PURE__*/(
153
+ React.createElement(Input, _extends({}, commonInputProps, {
154
+ leftIcon: _this.getLeftIcon(props),
155
+ align: "right",
156
+ mask: mask,
157
+ maskChar: maskChar,
158
+ formatChars: formatChars,
159
+ alwaysShowMask: alwaysShowMask,
160
+ type: type,
161
+ value: value,
162
+ onValueChange: _this.props.onValueChange
163
+ }))
164
+ );
165
+ };
124
166
  return _this;
125
167
  }
126
168
  _inheritsLoose(FxInput, _React$Component);
127
169
  var _proto = FxInput.prototype;
170
+ _proto.validateProps = function validateProps(props) {
171
+ warning(props.type !== 'currency' && props.mask !== undefined, '[FxInput]: Prop "mask" is not supported when type="currency"');
172
+ };
173
+ _proto.componentDidMount = function componentDidMount() {
174
+ this.validateProps(this.getProps());
175
+ };
176
+ _proto.componentDidUpdate = function componentDidUpdate() {
177
+ this.validateProps(this.getProps());
178
+ };
128
179
  _proto.render = function render() {
129
180
  var _this2 = this;
130
- return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
131
- _this2.theme = theme;
132
- return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
133
- rootNodeRef: _this2.setRootNode
134
- }, _this2.getProps()), _this2.renderMain);
181
+ return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
182
+ _this2.featureFlags = getFullReactUIFlagsContext(flags);
183
+ return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
184
+ _this2.theme = theme;
185
+ return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
186
+ rootNodeRef: _this2.setRootNode
187
+ }, _this2.getProps()), _this2.renderMain);
188
+ });
135
189
  });
136
190
  };
137
191
  return FxInput;
138
- }(React.Component), _FxInput.__KONTUR_REACT_UI__ = 'FxInput', _FxInput.displayName = 'FxInput', _FxInput.propTypes = {
139
- auto: PropTypes.bool,
140
- type: PropTypes.string
141
- }, _FxInput.defaultProps = {
192
+ }(React.Component), _FxInput.__KONTUR_REACT_UI__ = 'FxInput', _FxInput.displayName = 'FxInput', _FxInput.defaultProps = {
142
193
  width: 250,
143
194
  type: 'text',
144
- value: ''
145
- }, _FxInput)) || _class;
195
+ value: '',
196
+ auto: false
197
+ }, _FxInput)) || _class) || _class;
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","Group","Input","CurrencyInput","createPropsGetter","CommonWrapper","rootNode","ThemeContext","MathFunctionIcon","FxInputRestoreBtn","FxInputDataTids","root","FxInput","_class","_FxInput","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","input","getProps","defaultProps","renderMain","props","type","onRestore","auto","refInput","value","width","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","align","button","inputCorners","_extends","corners","borderBottomLeftRadius","borderTopLeftRadius","iconSizes","small","parseInt","theme","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","size","IconFunction","createElement","leftIcon","disabled","borderless","buttonAriaLabel","ref","onValueChange","focus","blur","element","_inheritsLoose","_proto","prototype","render","_this2","Consumer","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","string"],"sources":["FxInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Group } from '../Group';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { CurrencyInputProps } from '../CurrencyInput';\nimport { CurrencyInput } from '../CurrencyInput';\nimport type { DefaultizedProps } from '../../lib/createPropsGetter';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Override } from '../../typings/utility-types';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { MathFunctionIcon } from './MathFunctionIcon';\nimport { FxInputRestoreBtn } from './FxInputRestoreBtn';\n\nexport interface FxInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n CurrencyInputProps,\n {\n /** Устанавливает авто-режим. */\n auto?: boolean;\n\n /** Задает тип инпута */\n type?: 'currency' | InputProps['type'];\n\n /** Задает функцию, которая вызывается при нажатии на кнопку Restore. */\n onRestore?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value. */\n onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];\n\n /** Задает значение инпута. */\n value?: React.ReactText;\n\n /** Задает ref инпута. */\n refInput?: (element: CurrencyInput | Input | null) => void;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Задает атрибут aria-label кнопке восстановления (restore button). */\n buttonAriaLabel?: AriaAttributes['aria-label'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n }\n > {}\n\nexport const FxInputDataTids = {\n root: 'FxInput__root',\n} as const;\n\ntype DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value'>>;\ntype DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;\n\n/**\n * Автополе `FxInput`.\n *\n * Используйте `FxInput`, если поле вычисляемое и вы рассчитали значение.\n *\n * Принимает все свойства `Input`'a.\n */\n@rootNode\nexport class FxInput extends React.Component<FxInputProps> {\n public static __KONTUR_REACT_UI__ = 'FxInput';\n public static displayName = 'FxInput';\n\n public static propTypes = {\n auto: PropTypes.bool,\n type: PropTypes.string,\n };\n\n public static defaultProps: DefaultProps = {\n width: 250,\n type: 'text',\n value: '',\n };\n\n private theme!: Theme;\n private input: Input | CurrencyInput | null = null;\n\n private getProps = createPropsGetter(FxInput.defaultProps);\n private setRootNode!: TSetRootNode;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => {\n const { type, onRestore, auto, refInput, value, width, ...rest } = props;\n const inputProps: Partial<CurrencyInputProps> = {\n align: 'right',\n };\n\n let button = null;\n const inputCorners: InputProps['corners'] = auto\n ? { ...rest.corners }\n : { borderBottomLeftRadius: 0, borderTopLeftRadius: 0, ...rest.corners };\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.inputIconSizeSmall),\n medium: parseInt(this.theme.inputIconSizeMedium),\n large: parseInt(this.theme.inputIconSizeLarge),\n };\n const size = this.props.size || Input.defaultProps.size;\n const IconFunction = <MathFunctionIcon size={iconSizes[size]} />;\n\n if (auto) {\n inputProps.leftIcon = IconFunction;\n } else {\n button = (\n <FxInputRestoreBtn\n size={rest.size}\n onRestore={onRestore}\n corners={rest.corners}\n disabled={rest.disabled}\n borderless={rest.borderless}\n aria-label={props.buttonAriaLabel}\n />\n );\n }\n\n return (\n <Group data-tid={FxInputDataTids.root} width={width}>\n {button}\n {type === 'currency' ? (\n <CurrencyInput\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n value={value as CurrencyInputProps['value']}\n onValueChange={this.props.onValueChange as CurrencyInputProps['onValueChange']}\n />\n ) : (\n <Input\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n type={type}\n value={value as InputProps['value']}\n onValueChange={this.props.onValueChange as InputProps['onValueChange']}\n />\n )}\n </Group>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private refInput = (element: Input | CurrencyInput | null) => {\n this.input = element;\n\n if (this.props.refInput) {\n this.props.refInput(this.input);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","warning","Group","Input","CurrencyInput","createPropsGetter","CommonWrapper","rootNode","ThemeContext","MaskedInput","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","withSize","MathFunctionIcon","FxInputRestoreBtn","FxInputDataTids","root","FxInput","_class","_FxInput","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","input","getProps","defaultProps","renderMain","props","button","auto","createElement","size","onRestore","corners","disabled","borderless","buttonAriaLabel","width","getInput","focus","blur","refInput","element","getLeftIcon","iconSizes","small","parseInt","theme","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","type","value","_size","mask","maskChar","formatChars","alwaysShowMask","signed","integerDigits","fractionDigits","hideTrailingZeros","originalCorners","rest","_objectWithoutPropertiesLoose","_excluded","_extends","borderBottomLeftRadius","borderTopLeftRadius","commonInputProps","ref","onValueChange","featureFlags","fxInputUseMaskedInput","leftIcon","align","_inheritsLoose","_proto","prototype","validateProps","undefined","componentDidMount","componentDidUpdate","render","_this2","Consumer","flags","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName"],"sources":["FxInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { Group } from '../Group';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { CurrencyInputProps } from '../CurrencyInput';\nimport { CurrencyInput } from '../CurrencyInput';\nimport type { DefaultizedProps } from '../../lib/createPropsGetter';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Override } from '../../typings/utility-types';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\nimport type { MaskedInputProps } from '../MaskedInput';\nimport { MaskedInput } from '../MaskedInput';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext } from '../../lib/featureFlagsContext';\nimport { ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext/ReactUIFeatureFlagsContext';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport { MathFunctionIcon } from './MathFunctionIcon';\nimport { FxInputRestoreBtn } from './FxInputRestoreBtn';\n\nexport interface FxInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<Partial<MaskedInputProps>, 'alwaysShowMask' | 'mask' | 'maskChar' | 'formatChars'>,\n Override<\n Omit<CurrencyInputProps, 'alwaysShowMask' | 'mask' | 'maskChar' | 'formatChars'>,\n {\n /** Устанавливает авто-режим. */\n auto?: boolean;\n\n /** Задает тип инпута */\n type?: 'currency' | InputProps['type'];\n\n /** Задает функцию, которая вызывается при нажатии на кнопку Restore. */\n onRestore?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value. */\n onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];\n\n /** Задает значение инпута. */\n value?: string | number;\n\n /** Задает ref инпута. */\n refInput?: (element: CurrencyInput | Input | null) => void;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Задает атрибут aria-label кнопке восстановления (restore button). */\n buttonAriaLabel?: AriaAttributes['aria-label'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n }\n > {}\n\nexport const FxInputDataTids = {\n root: 'FxInput__root',\n} as const;\n\ntype DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value' | 'auto'>>;\ntype DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;\n\n/**\n * Автополе `FxInput`.\n *\n * Используйте `FxInput`, если поле вычисляемое и вы рассчитали значение.\n *\n * Принимает все свойства `Input`'a.\n */\n\n@rootNode\n@withSize\nexport class FxInput extends React.Component<FxInputProps> {\n public static __KONTUR_REACT_UI__ = 'FxInput';\n public static displayName = 'FxInput';\n\n public static defaultProps: DefaultProps = {\n width: 250,\n type: 'text',\n value: '',\n auto: false,\n };\n\n private theme!: Theme;\n private size!: SizeProp;\n private input: Input | CurrencyInput | null = null;\n\n private getProps = createPropsGetter(FxInput.defaultProps);\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private featureFlags!: ReactUIFeatureFlags;\n\n private validateProps(props: FxInputProps) {\n warning(\n props.type !== 'currency' && props.mask !== undefined,\n '[FxInput]: Prop \"mask\" is not supported when type=\"currency\"',\n );\n }\n\n public componentDidMount() {\n this.validateProps(this.getProps());\n }\n\n public componentDidUpdate() {\n this.validateProps(this.getProps());\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => {\n const button = props.auto ? null : (\n <FxInputRestoreBtn\n size={props.size}\n onRestore={props.onRestore}\n corners={props.corners}\n disabled={props.disabled}\n borderless={props.borderless}\n aria-label={props.buttonAriaLabel}\n />\n );\n\n return (\n <Group data-tid={FxInputDataTids.root} width={props.width}>\n {button}\n {this.getInput(props)}\n </Group>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private refInput = (element: Input | CurrencyInput | null) => {\n this.input = element;\n\n if (this.props.refInput) {\n this.props.refInput(this.input);\n }\n };\n\n private getLeftIcon = (props: FxInputProps) => {\n if (!props.auto) {\n return null;\n }\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.inputIconSizeSmall),\n medium: parseInt(this.theme.inputIconSizeMedium),\n large: parseInt(this.theme.inputIconSizeLarge),\n };\n const size = this.size;\n\n return <MathFunctionIcon size={iconSizes[size]} />;\n };\n\n private getInput = (props: FxInputProps) => {\n const {\n type,\n onRestore,\n auto,\n refInput,\n value,\n width,\n size: _size,\n mask,\n maskChar,\n formatChars,\n alwaysShowMask,\n signed,\n integerDigits,\n fractionDigits,\n hideTrailingZeros,\n buttonAriaLabel,\n corners: originalCorners,\n ...rest\n } = props;\n const corners: InputProps['corners'] = auto\n ? originalCorners\n : { borderBottomLeftRadius: 0, borderTopLeftRadius: 0, ...originalCorners };\n const size = this.size;\n const commonInputProps = {\n corners,\n size,\n width: '100%',\n ref: this.refInput,\n ...rest,\n };\n\n if (type === 'currency') {\n return (\n <CurrencyInput\n {...commonInputProps}\n signed={signed}\n integerDigits={integerDigits}\n fractionDigits={fractionDigits}\n value={value as CurrencyInputProps['value']}\n onValueChange={this.props.onValueChange as CurrencyInputProps['onValueChange']}\n />\n );\n }\n if (this.featureFlags.fxInputUseMaskedInput && mask) {\n return (\n <MaskedInput\n {...commonInputProps}\n leftIcon={this.getLeftIcon(props)}\n align=\"right\"\n mask={mask}\n maskChar={maskChar}\n formatChars={formatChars}\n alwaysShowMask={alwaysShowMask}\n value={value as MaskedInputProps['value']}\n onValueChange={this.props.onValueChange as MaskedInputProps['onValueChange']}\n />\n );\n }\n return (\n <Input\n {...commonInputProps}\n leftIcon={this.getLeftIcon(props)}\n align=\"right\"\n mask={mask}\n maskChar={maskChar}\n formatChars={formatChars}\n alwaysShowMask={alwaysShowMask}\n type={type}\n value={value as InputProps['value']}\n onValueChange={this.props.onValueChange as InputProps['onValueChange']}\n />\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import type { InputProps } from '../Input';
5
4
  import { Input } from '../Input';
6
5
  import type { CurrencyInputProps } from '../CurrencyInput';
@@ -8,7 +7,9 @@ import { CurrencyInput } from '../CurrencyInput';
8
7
  import type { DefaultizedProps } from '../../lib/createPropsGetter';
9
8
  import type { Override } from '../../typings/utility-types';
10
9
  import type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
11
- export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Override<CurrencyInputProps, {
10
+ import type { TGetRootNode } from '../../lib/rootNode';
11
+ import type { MaskedInputProps } from '../MaskedInput';
12
+ export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Pick<Partial<MaskedInputProps>, 'alwaysShowMask' | 'mask' | 'maskChar' | 'formatChars'>, Override<Omit<CurrencyInputProps, 'alwaysShowMask' | 'mask' | 'maskChar' | 'formatChars'>, {
12
13
  /** Устанавливает авто-режим. */
13
14
  auto?: boolean;
14
15
  /** Задает тип инпута */
@@ -18,7 +19,7 @@ export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, Common
18
19
  /** Задает функцию, вызывающуюся при изменении value. */
19
20
  onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];
20
21
  /** Задает значение инпута. */
21
- value?: React.ReactText;
22
+ value?: string | number;
22
23
  /** Задает ref инпута. */
23
24
  refInput?: (element: CurrencyInput | Input | null) => void;
24
25
  /** Убирает лишние нули после запятой. */
@@ -32,7 +33,7 @@ export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, Common
32
33
  export declare const FxInputDataTids: {
33
34
  readonly root: "FxInput__root";
34
35
  };
35
- type DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value'>>;
36
+ type DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value' | 'auto'>>;
36
37
  type DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;
37
38
  /**
38
39
  * Автополе `FxInput`.
@@ -44,15 +45,17 @@ type DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;
44
45
  export declare class FxInput extends React.Component<FxInputProps> {
45
46
  static __KONTUR_REACT_UI__: string;
46
47
  static displayName: string;
47
- static propTypes: {
48
- auto: PropTypes.Requireable<boolean>;
49
- type: PropTypes.Requireable<string>;
50
- };
51
48
  static defaultProps: DefaultProps;
52
49
  private theme;
50
+ private size;
53
51
  private input;
54
52
  private getProps;
53
+ getRootNode: TGetRootNode;
55
54
  private setRootNode;
55
+ private featureFlags;
56
+ private validateProps;
57
+ componentDidMount(): void;
58
+ componentDidUpdate(): void;
56
59
  render(): React.JSX.Element;
57
60
  renderMain: (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => React.JSX.Element;
58
61
  /**
@@ -64,5 +67,7 @@ export declare class FxInput extends React.Component<FxInputProps> {
64
67
  */
65
68
  blur: () => void;
66
69
  private refInput;
70
+ private getLeftIcon;
71
+ private getInput;
67
72
  }
68
73
  export {};
@@ -1,12 +1,12 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import React, { useContext } from 'react';
3
- import { Input } from "../../Input";
4
3
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
5
4
  import { Button } from "../../Button";
5
+ import { useSizeControl } from "../../../lib/size/useSizeControl";
6
6
  import { UndoIcon } from "../UndoIcon";
7
7
  export var FxInputRestoreBtn = function FxInputRestoreBtn(props) {
8
8
  var theme = useContext(ThemeContext);
9
- var size = props.size || Input.defaultProps.size;
9
+ var size = useSizeControl(props.size);
10
10
  var iconSizes = {
11
11
  small: parseInt(theme.inputIconSizeSmall),
12
12
  medium: parseInt(theme.inputIconSizeMedium),
@@ -1 +1 @@
1
- {"version":3,"names":["React","useContext","Input","ThemeContext","Button","UndoIcon","FxInputRestoreBtn","props","theme","size","defaultProps","iconSizes","small","parseInt","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","cornersSizes","borderTopLeftRadius","inputBorderRadiusSmall","borderBottomLeftRadius","inputBorderRadiusMedium","inputBorderRadiusLarge","buttonCorners","iconUndo","createElement","onClick","onRestore","borderless","disabled","corners","_extends","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,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,KAAK,QAAQ,UAAU;AAChC,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,MAAM,QAAQ,WAAW;;;AAGlC,SAASC,QAAQ,QAAQ,YAAY;;;;;;;;;;AAUrC,OAAO,IAAMC,iBAAkE,GAAG,SAArEA,iBAAkEA,CAAIC,KAAK,EAAK;EAC3F,IAAMC,KAAK,GAAGP,UAAU,CAACE,YAAY,CAAC;;EAEtC,IAAMM,IAAI,GAAGF,KAAK,CAACE,IAAI,IAAIP,KAAK,CAACQ,YAAY,CAACD,IAAI;;EAElD,IAAME,SAAmC,GAAG;IAC1CC,KAAK,EAAEC,QAAQ,CAACL,KAAK,CAACM,kBAAkB,CAAC;IACzCC,MAAM,EAAEF,QAAQ,CAACL,KAAK,CAACQ,mBAAmB,CAAC;IAC3CC,KAAK,EAAEJ,QAAQ,CAACL,KAAK,CAACU,kBAAkB;EAC1C,CAAC;EACD,IAAMC,YAAmD,GAAG;IAC1DP,KAAK,EAAE;MACLQ,mBAAmB,EAAEZ,KAAK,CAACa,sBAAsB;MACjDC,sBAAsB,EAAEd,KAAK,CAACa;IAChC,CAAC;IACDN,MAAM,EAAE;MACNK,mBAAmB,EAAEZ,KAAK,CAACe,uBAAuB;MAClDD,sBAAsB,EAAEd,KAAK,CAACe;IAChC,CAAC;IACDN,KAAK,EAAE;MACLG,mBAAmB,EAAEZ,KAAK,CAACgB,sBAAsB;MACjDF,sBAAsB,EAAEd,KAAK,CAACgB;IAChC;EACF,CAAC;EACD,IAAMC,aAAa,GAAGN,YAAY,CAACV,IAAI,CAAC;EACxC,IAAMiB,QAAQ,gBAAG1B,KAAA,CAAA2B,aAAA,CAACtB,QAAQ,IAACI,IAAI,EAAEE,SAAS,CAACF,IAAI,CAAE,EAAE,CAAC;;EAEpD;IACET,KAAA,CAAA2B,aAAA,CAACvB,MAAM;MACLK,IAAI,EAAEF,KAAK,CAACE,IAAK;MACjBmB,OAAO,EAAErB,KAAK,CAACsB,SAAU;MACzBC,UAAU,EAAEvB,KAAK,CAACuB,UAAW;MAC7BC,QAAQ,EAAExB,KAAK,CAACwB,QAAS;MACzBC,OAAO,EAAAC,QAAA;QACLC,oBAAoB,EAAE,CAAC;QACvBC,uBAAuB,EAAE,CAAC;MACvBV,aAAa;MACblB,KAAK,CAACyB,OAAO,CAChB;;MACFI,IAAI,EAAEV,QAAS;MACf,cAAYnB,KAAK,CAAC,YAAY,CAAE;IACjC,CAAC;;AAEN,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useContext","ThemeContext","Button","useSizeControl","UndoIcon","FxInputRestoreBtn","props","theme","size","iconSizes","small","parseInt","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","cornersSizes","borderTopLeftRadius","inputBorderRadiusSmall","borderBottomLeftRadius","inputBorderRadiusMedium","inputBorderRadiusLarge","buttonCorners","iconUndo","createElement","onClick","onRestore","borderless","disabled","corners","_extends","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,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,MAAM,QAAQ,WAAW;;AAElC,SAASC,cAAc,QAAQ,+BAA+B;;AAE9D,SAASC,QAAQ,QAAQ,YAAY;;;;;;;;;;AAUrC,OAAO,IAAMC,iBAAkE,GAAG,SAArEA,iBAAkEA,CAAIC,KAAK,EAAK;EAC3F,IAAMC,KAAK,GAAGP,UAAU,CAACC,YAAY,CAAC;EACtC,IAAMO,IAAI,GAAGL,cAAc,CAACG,KAAK,CAACE,IAAI,CAAC;;EAEvC,IAAMC,SAAmC,GAAG;IAC1CC,KAAK,EAAEC,QAAQ,CAACJ,KAAK,CAACK,kBAAkB,CAAC;IACzCC,MAAM,EAAEF,QAAQ,CAACJ,KAAK,CAACO,mBAAmB,CAAC;IAC3CC,KAAK,EAAEJ,QAAQ,CAACJ,KAAK,CAACS,kBAAkB;EAC1C,CAAC;EACD,IAAMC,YAAmD,GAAG;IAC1DP,KAAK,EAAE;MACLQ,mBAAmB,EAAEX,KAAK,CAACY,sBAAsB;MACjDC,sBAAsB,EAAEb,KAAK,CAACY;IAChC,CAAC;IACDN,MAAM,EAAE;MACNK,mBAAmB,EAAEX,KAAK,CAACc,uBAAuB;MAClDD,sBAAsB,EAAEb,KAAK,CAACc;IAChC,CAAC;IACDN,KAAK,EAAE;MACLG,mBAAmB,EAAEX,KAAK,CAACe,sBAAsB;MACjDF,sBAAsB,EAAEb,KAAK,CAACe;IAChC;EACF,CAAC;EACD,IAAMC,aAAa,GAAGN,YAAY,CAACT,IAAI,CAAC;EACxC,IAAMgB,QAAQ,gBAAGzB,KAAA,CAAA0B,aAAA,CAACrB,QAAQ,IAACI,IAAI,EAAEC,SAAS,CAACD,IAAI,CAAE,EAAE,CAAC;;EAEpD;IACET,KAAA,CAAA0B,aAAA,CAACvB,MAAM;MACLM,IAAI,EAAEF,KAAK,CAACE,IAAK;MACjBkB,OAAO,EAAEpB,KAAK,CAACqB,SAAU;MACzBC,UAAU,EAAEtB,KAAK,CAACsB,UAAW;MAC7BC,QAAQ,EAAEvB,KAAK,CAACuB,QAAS;MACzBC,OAAO,EAAAC,QAAA;QACLC,oBAAoB,EAAE,CAAC;QACvBC,uBAAuB,EAAE,CAAC;MACvBV,aAAa;MACbjB,KAAK,CAACwB,OAAO,CAChB;;MACFI,IAAI,EAAEV,QAAS;MACf,cAAYlB,KAAK,CAAC,YAAY,CAAE;IACjC,CAAC;;AAEN,CAAC","ignoreList":[]}
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
3
3
  var _class, _Gapped;
4
4
  import React from 'react';
5
- import PropTypes from 'prop-types';
6
5
  import { isNonNullable } from "../../../lib/utils";
7
6
  import { CommonWrapper } from "../../../internal/CommonWrapper";
8
7
  import { rootNode } from "../../../lib/rootNode";
@@ -105,20 +104,7 @@ export var Gapped = rootNode(_class = (_Gapped = /*#__PURE__*/function (_React$C
105
104
  return Boolean(child) || typeof child === 'number';
106
105
  };
107
106
  return Gapped;
108
- }(React.Component), _Gapped.__KONTUR_REACT_UI__ = 'Gapped', _Gapped.displayName = 'Gapped', _Gapped.propTypes = {
109
- /**
110
- * Расстояние между элементами.
111
- */
112
- gap: PropTypes.number,
113
- /**
114
- * Располагать элементы вертикально.
115
- */
116
- vertical: PropTypes.bool,
117
- /**
118
- * Вертикальное выравнивание элементов.
119
- */
120
- verticalAlign: PropTypes.oneOf(['top', 'middle', 'baseline', 'bottom'])
121
- }, _Gapped.defaultProps = {
107
+ }(React.Component), _Gapped.__KONTUR_REACT_UI__ = 'Gapped', _Gapped.displayName = 'Gapped', _Gapped.defaultProps = {
122
108
  wrap: false,
123
109
  vertical: false,
124
110
  verticalAlign: 'baseline'
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","isNonNullable","CommonWrapper","rootNode","createPropsGetter","GappedDataTids","vertical","horizontal","Gapped","_class","_Gapped","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","_inheritsLoose","_proto","prototype","render","createElement","_extends","rootNodeRef","setRootNode","props","renderVertical","renderHorizontal","getGapValue","propsGap","gap","subsequentItemStyle","paddingTop","children","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","propTypes","number","bool","oneOf"],"sources":["Gapped.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\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 public static propTypes = {\n /**\n * Расстояние между элементами.\n */\n gap: PropTypes.number,\n\n /**\n * Располагать элементы вертикально.\n */\n vertical: PropTypes.bool,\n\n /**\n * Вертикальное выравнивание элементов.\n */\n verticalAlign: PropTypes.oneOf(['top', 'middle', 'baseline', 'bottom']),\n };\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","isNonNullable","CommonWrapper","rootNode","createPropsGetter","GappedDataTids","vertical","horizontal","Gapped","_class","_Gapped","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","_inheritsLoose","_proto","prototype","render","createElement","_extends","rootNodeRef","setRootNode","props","renderVertical","renderHorizontal","getGapValue","propsGap","gap","subsequentItemStyle","paddingTop","children","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,6 +1,6 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import type { CommonProps } from '../../internal/CommonWrapper';
3
+ import type { TGetRootNode } from '../../lib/rootNode';
4
4
  export interface GappedProps extends CommonProps {
5
5
  /** Задает расстояние между элементами в пикселях. */
6
6
  gap?: number;
@@ -24,20 +24,7 @@ type DefaultProps = Required<Pick<GappedProps, 'wrap' | 'vertical' | 'verticalAl
24
24
  export declare class Gapped extends React.Component<GappedProps> {
25
25
  static __KONTUR_REACT_UI__: string;
26
26
  static displayName: string;
27
- static propTypes: {
28
- /**
29
- * Расстояние между элементами.
30
- */
31
- gap: PropTypes.Requireable<number>;
32
- /**
33
- * Располагать элементы вертикально.
34
- */
35
- vertical: PropTypes.Requireable<boolean>;
36
- /**
37
- * Вертикальное выравнивание элементов.
38
- */
39
- verticalAlign: PropTypes.Requireable<string>;
40
- };
27
+ getRootNode: TGetRootNode;
41
28
  private setRootNode;
42
29
  static defaultProps: DefaultProps;
43
30
  private getProps;
@@ -1 +1 @@
1
- {"version":3,"names":["React","debounce","isTestEnv","CommonWrapper","rootNode","createPropsGetter","GlobalLoaderView","GlobalLoaderDataTids","root","currentGlobalLoader","GlobalLoader","_class","_GlobalLoader","_React$Component","props","_this","call","getProps","defaultProps","startTask","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","_inheritsLoose","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","_extends","rootNodeRef","setRootNode","updateExpectedResponseTime","Component","__KONTUR_REACT_UI__","displayName","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","debounce","isTestEnv","CommonWrapper","rootNode","createPropsGetter","GlobalLoaderView","GlobalLoaderDataTids","root","currentGlobalLoader","GlobalLoader","_class","_GlobalLoader","_React$Component","props","_this","call","getProps","defaultProps","startTask","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","_inheritsLoose","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","_extends","rootNodeRef","setRootNode","updateExpectedResponseTime","Component","__KONTUR_REACT_UI__","displayName","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":[]}