@skbkontur/react-ui 0.0.0-c13bb5f4ca → 0.0.0-c37930b3b1

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 (501) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/cjs/components/Autocomplete/Autocomplete.js +1 -3
  3. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/Button/Button.js +1 -4
  5. package/cjs/components/Button/Button.js.map +1 -1
  6. package/cjs/components/Button/Button.mixins.d.ts +0 -1
  7. package/cjs/components/Button/Button.mixins.js +2 -9
  8. package/cjs/components/Button/Button.mixins.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +0 -3
  10. package/cjs/components/Button/Button.styles.js +63 -87
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Checkbox/Checkbox.d.ts +3 -0
  13. package/cjs/components/Checkbox/Checkbox.js +10 -24
  14. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  15. package/cjs/components/Checkbox/Checkbox.styles.d.ts +0 -3
  16. package/cjs/components/Checkbox/Checkbox.styles.js +16 -43
  17. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  18. package/cjs/components/ComboBox/ComboBox.d.ts +4 -7
  19. package/cjs/components/ComboBox/ComboBox.js +3 -14
  20. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  21. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +0 -1
  22. package/cjs/components/CurrencyInput/CurrencyInput.js +9 -13
  23. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  24. package/cjs/components/CurrencyInput/CursorHelper.js +5 -2
  25. package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
  26. package/cjs/components/CurrencyLabel/CurrencyLabel.js +2 -2
  27. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  28. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +2 -2
  29. package/cjs/components/DropdownMenu/DropdownMenu.js +2 -1
  30. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  31. package/cjs/components/FileUploader/FileUploader.js +1 -0
  32. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  33. package/cjs/components/Group/Group.js +1 -3
  34. package/cjs/components/Group/Group.js.map +1 -1
  35. package/cjs/components/Group/Group.styles.d.ts +0 -1
  36. package/cjs/components/Group/Group.styles.js +3 -9
  37. package/cjs/components/Group/Group.styles.js.map +1 -1
  38. package/cjs/components/Input/Input.js +4 -10
  39. package/cjs/components/Input/Input.js.map +1 -1
  40. package/cjs/components/Input/Input.styles.d.ts +0 -6
  41. package/cjs/components/Input/Input.styles.js +16 -67
  42. package/cjs/components/Input/Input.styles.js.map +1 -1
  43. package/cjs/components/Loader/Loader.js +3 -3
  44. package/cjs/components/Loader/Loader.js.map +1 -1
  45. package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
  46. package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  47. package/cjs/components/MaskedInput/MaskedInput.d.ts +8 -0
  48. package/cjs/components/MaskedInput/MaskedInput.js +23 -2
  49. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  50. package/cjs/components/MenuFooter/MenuFooter.js +0 -1
  51. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  52. package/cjs/components/MenuHeader/MenuHeader.js +0 -1
  53. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  54. package/cjs/components/Modal/Modal.d.ts +1 -1
  55. package/cjs/components/Modal/Modal.js +2 -6
  56. package/cjs/components/Modal/Modal.js.map +1 -1
  57. package/cjs/components/Paging/Paging.d.ts +0 -1
  58. package/cjs/components/Paging/Paging.js +13 -18
  59. package/cjs/components/Paging/Paging.js.map +1 -1
  60. package/cjs/components/PasswordInput/PasswordInput.js +1 -13
  61. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  62. package/cjs/components/Radio/Radio.js +3 -7
  63. package/cjs/components/Radio/Radio.js.map +1 -1
  64. package/cjs/components/Radio/Radio.styles.d.ts +0 -2
  65. package/cjs/components/Radio/Radio.styles.js +19 -31
  66. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  67. package/cjs/components/ResponsiveLayout/decorator.d.ts +1 -1
  68. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -1
  69. package/cjs/components/ScrollContainer/ScrollContainer.js +1 -2
  70. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  71. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  72. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +10 -20
  73. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  74. package/cjs/components/SidePage/SidePage.js +1 -2
  75. package/cjs/components/SidePage/SidePage.js.map +1 -1
  76. package/cjs/components/Spinner/Spinner.js +0 -1
  77. package/cjs/components/Spinner/Spinner.js.map +1 -1
  78. package/cjs/components/Spinner/Spinner.styles.js +10 -15
  79. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  80. package/cjs/components/Sticky/Sticky.js +3 -1
  81. package/cjs/components/Sticky/Sticky.js.map +1 -1
  82. package/cjs/components/Textarea/Textarea.d.ts +0 -1
  83. package/cjs/components/Textarea/Textarea.js +4 -5
  84. package/cjs/components/Textarea/Textarea.js.map +1 -1
  85. package/cjs/components/Toast/ToastStatic.js +3 -1
  86. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  87. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  88. package/cjs/components/TokenInput/TokenInput.js +40 -24
  89. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  90. package/cjs/components/Tooltip/Tooltip.d.ts +1 -1
  91. package/cjs/components/Tooltip/Tooltip.js +14 -9
  92. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  93. package/cjs/components/TooltipMenu/TooltipMenu.js +3 -2
  94. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  95. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +3 -2
  96. package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -1
  97. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  98. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -6
  99. package/cjs/internal/CustomComboBox/CustomComboBox.js +11 -16
  100. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  101. package/cjs/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +1 -1
  102. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  103. package/cjs/internal/InputLikeText/InputLikeText.d.ts +0 -10
  104. package/cjs/internal/InputLikeText/InputLikeText.js +5 -98
  105. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  106. package/cjs/internal/Menu/Menu.js +2 -7
  107. package/cjs/internal/Menu/Menu.js.map +1 -1
  108. package/cjs/internal/Menu/Menu.styles.d.ts +0 -2
  109. package/cjs/internal/Menu/Menu.styles.js +9 -23
  110. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  111. package/cjs/internal/Popup/Popup.js +34 -27
  112. package/cjs/internal/Popup/Popup.js.map +1 -1
  113. package/cjs/internal/Popup/PopupPin.js +85 -43
  114. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  115. package/cjs/internal/PopupMenu/validatePositions.js +5 -2
  116. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  117. package/cjs/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  118. package/cjs/internal/SpinnerIcon/SpinnerIcon.js +1 -55
  119. package/cjs/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
  120. package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
  121. package/cjs/internal/icons2022/LoadingIcon.js +0 -1
  122. package/cjs/internal/icons2022/LoadingIcon.js.map +1 -1
  123. package/cjs/internal/themes/BasicTheme.js +1 -1
  124. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  125. package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
  126. package/cjs/internal/themes/DarkTheme5_4.js +10 -0
  127. package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
  128. package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
  129. package/cjs/internal/themes/LightTheme5_4.js +10 -0
  130. package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
  131. package/cjs/lib/client.d.ts +0 -2
  132. package/cjs/lib/client.js +1 -3
  133. package/cjs/lib/client.js.map +1 -1
  134. package/cjs/lib/date/InternalDate.js +5 -4
  135. package/cjs/lib/date/InternalDate.js.map +1 -1
  136. package/cjs/lib/dom/getDOMRect.d.ts +1 -1
  137. package/cjs/lib/dom/getScrollWidth.js +4 -2
  138. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  139. package/cjs/lib/events/MouseDrag.js +1 -7
  140. package/cjs/lib/events/MouseDrag.js.map +1 -1
  141. package/cjs/lib/events/keyboard/identifiers.js +2 -10
  142. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  143. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -0
  144. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +1 -0
  145. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +3 -1
  146. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  147. package/cjs/lib/listenFocusOutside.js +3 -1
  148. package/cjs/lib/listenFocusOutside.js.map +1 -1
  149. package/cjs/lib/needsPolyfillPlaceholder.js +1 -3
  150. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  151. package/cjs/lib/rootNode/getRootNode.js +2 -2
  152. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  153. package/cjs/lib/styles/Mixins.js +1 -3
  154. package/cjs/lib/styles/Mixins.js.map +1 -1
  155. package/cjs/lib/theming/ThemeHelpers.js +1 -1
  156. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  157. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  158. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  159. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  160. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  161. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  162. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  163. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  164. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  165. package/cjs/lib/typeGuards.js +1 -1
  166. package/cjs/lib/typeGuards.js.map +1 -1
  167. package/cjs/lib/utils.d.ts +1 -1
  168. package/cjs/lib/withClassWrapper.js +5 -2
  169. package/cjs/lib/withClassWrapper.js.map +1 -1
  170. package/components/Autocomplete/Autocomplete/Autocomplete.js +1 -3
  171. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  172. package/components/Button/Button/Button.js +4 -4
  173. package/components/Button/Button/Button.js.map +1 -1
  174. package/components/Button/Button.mixins/Button.mixins.js +1 -4
  175. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  176. package/components/Button/Button.mixins.d.ts +0 -1
  177. package/components/Button/Button.styles/Button.styles.js +64 -73
  178. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  179. package/components/Button/Button.styles.d.ts +0 -3
  180. package/components/Checkbox/Checkbox/Checkbox.js +7 -21
  181. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  182. package/components/Checkbox/Checkbox.d.ts +3 -0
  183. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +16 -25
  184. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  185. package/components/Checkbox/Checkbox.styles.d.ts +0 -3
  186. package/components/ComboBox/ComboBox/ComboBox.js +0 -8
  187. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  188. package/components/ComboBox/ComboBox.d.ts +4 -7
  189. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +7 -12
  190. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  191. package/components/CurrencyInput/CurrencyInput.d.ts +0 -1
  192. package/components/CurrencyInput/CursorHelper/CursorHelper.js +3 -1
  193. package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
  194. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +1 -1
  195. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  196. package/components/DateRangePicker/DateRangePicker.d.ts +2 -2
  197. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +4 -3
  198. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  199. package/components/FileUploader/FileUploader/FileUploader.js +1 -0
  200. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  201. package/components/Group/Group/Group.js +1 -2
  202. package/components/Group/Group/Group.js.map +1 -1
  203. package/components/Group/Group.styles/Group.styles.js +3 -6
  204. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  205. package/components/Group/Group.styles.d.ts +0 -1
  206. package/components/Input/Input/Input.js +7 -7
  207. package/components/Input/Input/Input.js.map +1 -1
  208. package/components/Input/Input.styles/Input.styles.js +16 -34
  209. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  210. package/components/Input/Input.styles.d.ts +0 -6
  211. package/components/Loader/Loader/Loader.js +2 -3
  212. package/components/Loader/Loader/Loader.js.map +1 -1
  213. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
  214. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
  215. package/components/MaskedInput/MaskedInput/MaskedInput.js +11 -1
  216. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  217. package/components/MaskedInput/MaskedInput.d.ts +8 -0
  218. package/components/MenuFooter/MenuFooter/MenuFooter.js +0 -2
  219. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  220. package/components/MenuHeader/MenuHeader/MenuHeader.js +0 -2
  221. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  222. package/components/Modal/Modal/Modal.js +2 -5
  223. package/components/Modal/Modal/Modal.js.map +1 -1
  224. package/components/Modal/Modal.d.ts +1 -1
  225. package/components/Paging/Paging/Paging.js +11 -20
  226. package/components/Paging/Paging/Paging.js.map +1 -1
  227. package/components/Paging/Paging.d.ts +0 -1
  228. package/components/PasswordInput/PasswordInput/PasswordInput.js +0 -7
  229. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  230. package/components/Radio/Radio/Radio.js +3 -4
  231. package/components/Radio/Radio/Radio.js.map +1 -1
  232. package/components/Radio/Radio.styles/Radio.styles.js +19 -25
  233. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  234. package/components/Radio/Radio.styles.d.ts +0 -2
  235. package/components/ResponsiveLayout/decorator.d.ts +1 -1
  236. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -2
  237. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  238. package/components/ScrollContainer/ScrollContainer.d.ts +1 -1
  239. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +10 -13
  240. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  241. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  242. package/components/SidePage/SidePage/SidePage.js +1 -2
  243. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  244. package/components/Spinner/Spinner/Spinner.js +0 -1
  245. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  246. package/components/Spinner/Spinner.styles/Spinner.styles.js +2 -3
  247. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  248. package/components/Sticky/Sticky/Sticky.js +3 -1
  249. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  250. package/components/Textarea/Textarea/Textarea.js +5 -7
  251. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  252. package/components/Textarea/Textarea.d.ts +0 -1
  253. package/components/Toast/ToastStatic/ToastStatic.js +3 -1
  254. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  255. package/components/TokenInput/TokenInput/TokenInput.js +37 -30
  256. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  257. package/components/TokenInput/TokenInput.d.ts +2 -0
  258. package/components/Tooltip/Tooltip/Tooltip.js +22 -17
  259. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  260. package/components/Tooltip/Tooltip.d.ts +1 -1
  261. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +4 -3
  262. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  263. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +4 -4
  264. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  265. package/internal/CustomComboBox/ComboBoxView.d.ts +3 -2
  266. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -16
  267. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  268. package/internal/CustomComboBox/CustomComboBox.d.ts +4 -6
  269. package/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +1 -1
  270. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  271. package/internal/InputLikeText/InputLikeText/InputLikeText.js +13 -95
  272. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  273. package/internal/InputLikeText/InputLikeText.d.ts +0 -10
  274. package/internal/Menu/Menu/Menu.js +1 -3
  275. package/internal/Menu/Menu/Menu.js.map +1 -1
  276. package/internal/Menu/Menu.styles/Menu.styles.js +9 -15
  277. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  278. package/internal/Menu/Menu.styles.d.ts +0 -2
  279. package/internal/Popup/Popup/Popup.js +21 -20
  280. package/internal/Popup/Popup/Popup.js.map +1 -1
  281. package/internal/Popup/PopupPin/PopupPin.js +36 -22
  282. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  283. package/internal/PopupMenu/validatePositions/validatePositions.js +3 -1
  284. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  285. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js +0 -41
  286. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js.map +1 -1
  287. package/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  288. package/internal/ThemePlayground/helpers.d.ts +1 -1
  289. package/internal/icons2022/LoadingIcon/LoadingIcon.js +0 -1
  290. package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
  291. package/internal/themes/BasicTheme/BasicTheme.js +1 -1
  292. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  293. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +15 -0
  294. package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
  295. package/internal/themes/DarkTheme5_4/package.json +6 -0
  296. package/internal/themes/DarkTheme5_4.d.ts +1 -0
  297. package/internal/themes/LightTheme5_4/LightTheme5_4.js +15 -0
  298. package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
  299. package/internal/themes/LightTheme5_4/package.json +6 -0
  300. package/internal/themes/LightTheme5_4.d.ts +1 -0
  301. package/lib/client/client.js +0 -2
  302. package/lib/client/client.js.map +1 -1
  303. package/lib/client.d.ts +0 -2
  304. package/lib/date/InternalDate/InternalDate.js +5 -4
  305. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  306. package/lib/dom/getDOMRect.d.ts +1 -1
  307. package/lib/dom/getScrollWidth/getScrollWidth.js +3 -1
  308. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  309. package/lib/events/MouseDrag/MouseDrag.js +0 -7
  310. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  311. package/lib/events/keyboard/identifiers/identifiers.js +1 -10
  312. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  313. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -0
  314. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +2 -1
  315. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  316. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +1 -0
  317. package/lib/listenFocusOutside/listenFocusOutside.js +3 -1
  318. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  319. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +1 -2
  320. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  321. package/lib/rootNode/getRootNode/getRootNode.js +1 -1
  322. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  323. package/lib/styles/Mixins/Mixins.js +1 -1
  324. package/lib/styles/Mixins/Mixins.js.map +1 -1
  325. package/lib/theming/ThemeHelpers/ThemeHelpers.js +1 -1
  326. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  327. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  328. package/lib/theming/ThemeVersions.d.ts +1 -1
  329. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  330. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  331. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  332. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  333. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  334. package/lib/theming/themes/LightTheme.d.ts +1 -0
  335. package/lib/typeGuards/typeGuards.js +1 -1
  336. package/lib/typeGuards/typeGuards.js.map +1 -1
  337. package/lib/utils.d.ts +1 -1
  338. package/lib/withClassWrapper/withClassWrapper.js +3 -1
  339. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  340. package/package.json +4 -10
  341. package/cjs/components/Autocomplete/Autocomplete.md +0 -113
  342. package/cjs/components/Button/Button.md +0 -261
  343. package/cjs/components/Calendar/Calendar.md +0 -276
  344. package/cjs/components/Calendar/CalendarDay.md +0 -70
  345. package/cjs/components/Center/Center.md +0 -26
  346. package/cjs/components/Checkbox/Checkbox.md +0 -171
  347. package/cjs/components/ComboBox/ComboBox.md +0 -574
  348. package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
  349. package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
  350. package/cjs/components/DateInput/DateInput.md +0 -111
  351. package/cjs/components/DatePicker/DatePicker.md +0 -368
  352. package/cjs/components/Dropdown/Dropdown.md +0 -45
  353. package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
  354. package/cjs/components/FileUploader/FileUploader.md +0 -131
  355. package/cjs/components/FxInput/FxInput.md +0 -31
  356. package/cjs/components/Gapped/Gapped.md +0 -44
  357. package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
  358. package/cjs/components/Group/Group.md +0 -19
  359. package/cjs/components/Hint/Hint.md +0 -86
  360. package/cjs/components/Input/Input.md +0 -86
  361. package/cjs/components/Kebab/Kebab.md +0 -306
  362. package/cjs/components/Link/Link.md +0 -182
  363. package/cjs/components/Loader/Loader.md +0 -33
  364. package/cjs/components/MaskedInput/MaskedInput.md +0 -114
  365. package/cjs/components/MenuFooter/MenuFooter.md +0 -27
  366. package/cjs/components/MenuHeader/MenuHeader.md +0 -35
  367. package/cjs/components/MenuItem/MenuItem.md +0 -139
  368. package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
  369. package/cjs/components/MiniModal/MiniModal.md +0 -231
  370. package/cjs/components/Modal/Modal.md +0 -56
  371. package/cjs/components/Paging/Paging.md +0 -57
  372. package/cjs/components/PasswordInput/PasswordInput.md +0 -29
  373. package/cjs/components/Radio/Radio.md +0 -57
  374. package/cjs/components/RadioGroup/RadioGroup.md +0 -44
  375. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  376. package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
  377. package/cjs/components/Select/Select.md +0 -113
  378. package/cjs/components/SidePage/SidePage.md +0 -65
  379. package/cjs/components/SingleToast/SingleToast.md +0 -36
  380. package/cjs/components/Spinner/Spinner.md +0 -36
  381. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  382. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +0 -197
  383. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +0 -1
  384. package/cjs/components/Sticky/Sticky.md +0 -28
  385. package/cjs/components/Switcher/Switcher.md +0 -111
  386. package/cjs/components/Tabs/Tab.md +0 -73
  387. package/cjs/components/Tabs/Tabs.md +0 -54
  388. package/cjs/components/Textarea/Textarea.md +0 -58
  389. package/cjs/components/Toast/Toast.md +0 -69
  390. package/cjs/components/Toggle/Toggle.md +0 -110
  391. package/cjs/components/Token/Token.md +0 -48
  392. package/cjs/components/TokenInput/TokenInput.md +0 -277
  393. package/cjs/components/Tooltip/Tooltip.md +0 -322
  394. package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
  395. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  396. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  397. package/cjs/internal/DataTids/DataTids.js +0 -50
  398. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  399. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  400. package/cjs/internal/DataTids/DataTids.styles.js +0 -42
  401. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  402. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  403. package/cjs/internal/DataTids/componentsDataTids.js +0 -15
  404. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  405. package/cjs/internal/InputLikeText/HiddenInput.d.ts +0 -13
  406. package/cjs/internal/InputLikeText/HiddenInput.js +0 -43
  407. package/cjs/internal/InputLikeText/HiddenInput.js.map +0 -1
  408. package/cjs/internal/ThemePlayground/Playground.md +0 -7
  409. package/cjs/lib/events/fixClickFocusIE.d.ts +0 -1
  410. package/cjs/lib/events/fixClickFocusIE.js +0 -20
  411. package/cjs/lib/events/fixClickFocusIE.js.map +0 -1
  412. package/cjs/lib/events/stopPropagation.d.ts +0 -1
  413. package/cjs/lib/events/stopPropagation.js +0 -7
  414. package/cjs/lib/events/stopPropagation.js.map +0 -1
  415. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  416. package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
  417. package/cjs/lib/theming/ThemeContext.md +0 -265
  418. package/components/Autocomplete/Autocomplete.md +0 -113
  419. package/components/Button/Button.md +0 -261
  420. package/components/Calendar/Calendar.md +0 -276
  421. package/components/Calendar/CalendarDay.md +0 -70
  422. package/components/Center/Center.md +0 -26
  423. package/components/Checkbox/Checkbox.md +0 -171
  424. package/components/ComboBox/ComboBox.md +0 -574
  425. package/components/CurrencyInput/CurrencyInput.md +0 -39
  426. package/components/CurrencyLabel/CurrencyLabel.md +0 -29
  427. package/components/DateInput/DateInput.md +0 -111
  428. package/components/DatePicker/DatePicker.md +0 -368
  429. package/components/Dropdown/Dropdown.md +0 -45
  430. package/components/DropdownMenu/DropdownMenu.md +0 -290
  431. package/components/FileUploader/FileUploader.md +0 -131
  432. package/components/FxInput/FxInput.md +0 -31
  433. package/components/Gapped/Gapped.md +0 -44
  434. package/components/GlobalLoader/GlobalLoader.md +0 -97
  435. package/components/Group/Group.md +0 -19
  436. package/components/Hint/Hint.md +0 -86
  437. package/components/Input/Input.md +0 -86
  438. package/components/Kebab/Kebab.md +0 -306
  439. package/components/Link/Link.md +0 -182
  440. package/components/Loader/Loader.md +0 -33
  441. package/components/MaskedInput/MaskedInput.md +0 -114
  442. package/components/MenuFooter/MenuFooter.md +0 -27
  443. package/components/MenuHeader/MenuHeader.md +0 -35
  444. package/components/MenuItem/MenuItem.md +0 -139
  445. package/components/MenuSeparator/MenuSeparator.md +0 -14
  446. package/components/MiniModal/MiniModal.md +0 -231
  447. package/components/Modal/Modal.md +0 -56
  448. package/components/Paging/Paging.md +0 -57
  449. package/components/PasswordInput/PasswordInput.md +0 -29
  450. package/components/Radio/Radio.md +0 -57
  451. package/components/RadioGroup/RadioGroup.md +0 -44
  452. package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  453. package/components/ScrollContainer/ScrollContainer.md +0 -224
  454. package/components/Select/Select.md +0 -113
  455. package/components/SidePage/SidePage.md +0 -65
  456. package/components/SingleToast/SingleToast.md +0 -36
  457. package/components/Spinner/Spinner.md +0 -36
  458. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +0 -146
  459. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +0 -1
  460. package/components/Spinner/SpinnerFallbackAnimation/package.json +0 -6
  461. package/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  462. package/components/Sticky/Sticky.md +0 -28
  463. package/components/Switcher/Switcher.md +0 -111
  464. package/components/Tabs/Tab.md +0 -73
  465. package/components/Tabs/Tabs.md +0 -54
  466. package/components/Textarea/Textarea.md +0 -58
  467. package/components/Toast/Toast.md +0 -69
  468. package/components/Toggle/Toggle.md +0 -110
  469. package/components/Token/Token.md +0 -48
  470. package/components/TokenInput/TokenInput.md +0 -277
  471. package/components/Tooltip/Tooltip.md +0 -322
  472. package/components/TooltipMenu/TooltipMenu.md +0 -241
  473. package/internal/DataTids/DATATIDS.md +0 -12
  474. package/internal/DataTids/DataTids/DataTids.js +0 -69
  475. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  476. package/internal/DataTids/DataTids/package.json +0 -6
  477. package/internal/DataTids/DataTids.d.ts +0 -12
  478. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
  479. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  480. package/internal/DataTids/DataTids.styles/package.json +0 -6
  481. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  482. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
  483. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  484. package/internal/DataTids/componentsDataTids/package.json +0 -6
  485. package/internal/DataTids/componentsDataTids.d.ts +0 -5
  486. package/internal/InputLikeText/HiddenInput/HiddenInput.js +0 -42
  487. package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +0 -1
  488. package/internal/InputLikeText/HiddenInput/package.json +0 -6
  489. package/internal/InputLikeText/HiddenInput.d.ts +0 -13
  490. package/internal/ThemePlayground/Playground.md +0 -7
  491. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +0 -18
  492. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +0 -1
  493. package/lib/events/fixClickFocusIE/package.json +0 -6
  494. package/lib/events/fixClickFocusIE.d.ts +0 -1
  495. package/lib/events/stopPropagation/package.json +0 -6
  496. package/lib/events/stopPropagation/stopPropagation.js +0 -7
  497. package/lib/events/stopPropagation/stopPropagation.js.map +0 -1
  498. package/lib/events/stopPropagation.d.ts +0 -1
  499. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  500. package/lib/locale/LOCALECONTEXT.md +0 -222
  501. package/lib/theming/ThemeContext.md +0 -265
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_lodash","_globalObject","_utils","_client","_Input","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_FocusControlWrapper","_constants","_SelectionHelper","_CurrencyHelper","_CurrencyInputHelper","_CurrencyInputKeyboardActions","_excluded","_class","_CurrencyInput","CurrencyInputDataTids","exports","root","CurrencyInput","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","_extends2","default","getState","value","fractionDigits","hideTrailingZeros","focused","tempSelectionForOnChange","SelectionHelper","fromPosition","renderMain","props","signed","onSubmit","integerDigits","rest","_objectWithoutPropertiesLoose2","createElement","FocusControlWrapper","onBlurWhenDisabled","resetFocus","Input","align","formatted","onBlur","handleBlur","onFocus","handleFocus","onMouseUp","handleMouseUp","onKeyDown","handleKeyDown","onValueChange","handleValueChange","onPaste","handlePaste","onCopy","handleCopy","onCut","handleCut","onMouseEnter","onMouseLeave","onMouseOver","ref","refInput","placeholder","getPlaceholder","focus","input","blur","debouncedSetSelectionFromEvent","debounce","setSelectionFromEvent","event","isIE11","persist","selection","getSelection","target","defaultPrevented","action","extractAction","CURRENCY_INPUT_ACTIONS","Ignore","Unknown","preventDefault","Submit","Backspace","inputValue","CurrencyInputHelper","moveCursor","end","Delete","start","MoveCursorLeft","MoveCursorRight","Home","setState","End","ExtendSelectionLeft","extendSelection","ExtendSelectionRight","FullSelection","forward","ExtendSelectionToStart","backward","ExtendSelectionToEnd","inputEnd","Comma","scrollInput","_this$input","node","getNode","scrollWidth","clientWidth","PAD","SHIFT","selected","position","direction","charsCount","charWidth","frame","Math","ceil","frameStart","scrollLeft","frameEnd","getInputSelectionFromEvent","step","extended","result","safeInsert","unsigned","parsedValue","CurrencyHelper","parse","blink","getOnChangeDelta","oldValue","substring","substr","delta","isNonNullable","data","clipboardData","getData","formatForClipboard","setData","_event$target","selectionStart","selectionEnd","selectionDirection","valueLength","element","_inheritsLoose2","_proto","prototype","validateProps","warning","isNumeric","maxLength","undefined","MAX_SAFE_DIGITS","componentDidMount","componentDidUpdate","prevProps","prevState","_this$getProps","Number","isNullable","_this$state$selection","setSelectionRange","render","CommonWrapper","rootNodeRef","setRootNode","format","normilized","normalizeSelection","React","PureComponent","__KONTUR_REACT_UI__","displayName","inputMode","_input$selectionStart","_input$selectionEnd","isInstanceOf","globalObject","HTMLInputElement","Error","isNaN","parseFloat","isFinite"],"sources":["CurrencyInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\nimport debounce from 'lodash.debounce';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { isIE11 } from '../../lib/client';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { Nullable, 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 { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { MAX_SAFE_DIGITS } from './constants';\nimport type { Selection, SelectionDirection } from './SelectionHelper';\nimport { SelectionHelper } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CurrencyInputHelper } from './CurrencyInputHelper';\nimport { CURRENCY_INPUT_ACTIONS, extractAction } from './CurrencyInputKeyboardActions';\n\nexport interface CurrencyInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n Omit<InputProps, 'showClearIcon'>,\n {\n /** Задает значение инпута. */\n value?: Nullable<number>;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Устанавливает минимальное количество отображаемых знаков после запятой. */\n fractionDigits?: Nullable<number>;\n\n /** Разрешает отрицательные значения. */\n signed?: boolean;\n\n /** Задает допустимое количество цифр целой части. Если передан **0**, или fractionDigits=15, то и в целой части допускается только **0**. */\n integerDigits?: Nullable<number>;\n\n /** Задает функцию, которая вызывается при изменении `value`. */\n onValueChange: (value: Nullable<number>) => void;\n\n /** Задает функцию, которая вызывается при отправке формы. */\n onSubmit?: () => void;\n }\n > {}\n\nexport interface CurrencyInputState {\n formatted: string;\n selection: Selection;\n focused: boolean;\n}\n\nexport const CurrencyInputDataTids = {\n root: 'CurrencyInput__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<CurrencyInputProps, 'align' | 'fractionDigits' | 'hideTrailingZeros' | 'value' | 'inputMode'>\n>;\n\n/**\n * `CurrencyInput` — поле для денежных сумм (и других числовых значений).\n * Принимает любые свойства `Input`.\n *\n * Используйте такое поле, когда нужно вводить значение в рублях, долларах или другой валюте.\n * Оно форматирует введенное значение и помогает пользователю не ошибиться при вводе.\n *\n * Максимальная длина числа - **15 цифр** (с десятичным разделителем в любом месте).\n *\n * **Почему 15?** Максимальное безопасное целочисленное значение - 9007199254740991 (16 цифр). Убрав один разряд под знак, мы получим \"новое\" максимальное безопасное значение - 999999999999999 (15 цифр).\n * При этом десятичный резделитель может находиться в любом месте. Если целая часть равна 0, то она не учитывается. Детали можно почитать здесь - [MDN web docs](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER).\n *\n * Если `fractionDigits=15`, то в целой части допускается **0**.\n */\n@rootNode\nexport class CurrencyInput extends React.PureComponent<CurrencyInputProps, CurrencyInputState> {\n public static __KONTUR_REACT_UI__ = 'CurrencyInput';\n public static displayName = 'CurrencyInput';\n\n public static defaultProps: DefaultProps = {\n align: 'right',\n fractionDigits: 2,\n hideTrailingZeros: false,\n value: null,\n inputMode: 'decimal',\n };\n\n private getProps = createPropsGetter(CurrencyInput.defaultProps);\n private validateProps(props: CurrencyInputProps): void {\n warning(isNumeric(props.value), '[CurrencyInput]: Prop `value` is not a valid number');\n warning(\n props.maxLength === undefined,\n `[CurrencyInput]: Prop 'maxLength' has been deprecated. See 'integerDigits' and 'fractionDigits'`,\n );\n warning(\n (props.integerDigits || 0) + (props.fractionDigits || 0) <= MAX_SAFE_DIGITS,\n `[CurrencyInput]: Sum of 'integerDigits' and 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee CurrencyInput documentation`,\n );\n }\n\n public state: CurrencyInputState = {\n ...this.getState(this.getProps().value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n };\n\n private input: Nullable<Input>;\n private tempSelectionForOnChange: Selection = SelectionHelper.fromPosition(0);\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount(): void {\n this.validateProps(this.getProps());\n }\n\n public componentDidUpdate(prevProps: CurrencyInputProps, prevState: CurrencyInputState) {\n const { value, fractionDigits, hideTrailingZeros } = this.getProps();\n this.validateProps(this.getProps());\n\n if (\n (isNumeric(value) && Number(value) !== CurrencyHelper.parse(prevState.formatted)) ||\n prevProps.fractionDigits !== fractionDigits\n ) {\n this.setState(this.getState(value, fractionDigits, hideTrailingZeros));\n }\n if (isNonNullable(prevProps.value) && isNullable(value)) {\n this.setState({ formatted: '' });\n }\n if (this.state.focused && this.input) {\n const { start, end } = this.state.selection;\n\n this.input.setSelectionRange(start, end);\n }\n if (prevState.selection !== this.state.selection) {\n this.scrollInput();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<CurrencyInputProps>) => {\n const { fractionDigits, signed, onSubmit, integerDigits, hideTrailingZeros, ...rest } = props;\n\n return (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <Input\n data-tid={CurrencyInputDataTids.root}\n {...rest}\n align={this.getProps().align}\n value={this.state.formatted}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseUp={this.handleMouseUp}\n onKeyDown={this.handleKeyDown}\n onValueChange={this.handleValueChange}\n onPaste={this.handlePaste}\n onCopy={this.handleCopy}\n onCut={this.handleCut}\n aria-label={this.props['aria-label']}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n ref={this.refInput}\n placeholder={this.state.focused ? '' : getPlaceholder(props)}\n />\n </FocusControlWrapper>\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 getState(value: Nullable<number>, fractionDigits: Nullable<number>, hideTrailingZeros: boolean) {\n return {\n formatted: CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros }),\n selection: SelectionHelper.fromPosition(0),\n };\n }\n\n private setSelectionFromEvent(event: React.MouseEvent<HTMLInputElement>) {\n const selection = getInputSelectionFromEvent(event.target);\n const normilized = CurrencyInputHelper.normalizeSelection(this.state.formatted, selection);\n this.setState({ selection: normilized });\n }\n\n // for IE11\n private readonly debouncedSetSelectionFromEvent = debounce(this.setSelectionFromEvent, 300);\n\n private handleMouseUp = (event: React.MouseEvent<HTMLInputElement>) => {\n if (isIE11) {\n event.persist();\n this.debouncedSetSelectionFromEvent(event);\n } else {\n this.setSelectionFromEvent(event);\n }\n };\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n this.tempSelectionForOnChange = selection;\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n\n const action = extractAction(event);\n\n if (action === CURRENCY_INPUT_ACTIONS.Ignore) {\n return;\n }\n\n if (action !== CURRENCY_INPUT_ACTIONS.Unknown) {\n event.preventDefault();\n }\n\n switch (action) {\n case CURRENCY_INPUT_ACTIONS.Submit: {\n if (this.props.onSubmit) {\n this.props.onSubmit();\n }\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Backspace: {\n this.inputValue(CurrencyInputHelper.moveCursor(this.state.formatted, selection, -1), selection.end, '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Delete: {\n this.inputValue(selection.start, CurrencyInputHelper.moveCursor(this.state.formatted, selection, +1), '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorLeft: {\n this.moveCursor(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorRight: {\n this.moveCursor(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Home: {\n this.setState({ selection: SelectionHelper.fromPosition(0) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.End: {\n const end = this.state.formatted.length;\n this.setState({ selection: SelectionHelper.fromPosition(end) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionLeft: {\n this.extendSelection(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionRight: {\n this.extendSelection(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.FullSelection: {\n this.setState({\n selection: SelectionHelper.forward(0, this.state.formatted.length),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToStart: {\n this.setState({\n selection: SelectionHelper.backward(0, selection.start),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToEnd: {\n const inputEnd = this.state.formatted.length;\n this.setState({\n selection: SelectionHelper.forward(selection.start, inputEnd),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Comma: {\n this.inputValue(selection.start, selection.end, ',');\n return;\n }\n }\n };\n\n private scrollInput = () => {\n const node = this.input?.getNode();\n if (!node || node.scrollWidth === node.clientWidth) {\n return;\n }\n const PAD = 1;\n const SHIFT = 3;\n\n const selection = this.state.selection;\n const selected = selection.start !== selection.end;\n const position = selected && selection.direction === 'forward' ? selection.end : selection.start;\n const charsCount = this.state.formatted.length;\n const charWidth = node.scrollWidth / charsCount;\n const frame = Math.ceil(node.clientWidth / charWidth);\n const frameStart = Math.ceil(node.scrollLeft / charWidth);\n const frameEnd = frameStart + frame;\n\n if (position < frameStart + PAD) {\n node.scrollLeft = (position - SHIFT) * charWidth;\n }\n if (position > frameEnd - PAD) {\n node.scrollLeft = (position - frame + SHIFT) * charWidth;\n }\n };\n\n private getSelection = (input: EventTarget): Selection => {\n const selection = getInputSelectionFromEvent(input);\n return {\n start: selection.start,\n end: selection.end,\n direction: this.state.selection.direction,\n };\n };\n\n private moveCursor = (selection: Selection, step: number) => {\n const position = CurrencyInputHelper.moveCursor(this.state.formatted, selection, step);\n this.setState({ selection: SelectionHelper.fromPosition(position) });\n };\n\n private extendSelection = (selection: Selection, step: number) => {\n const extended = CurrencyInputHelper.extendSelection(this.state.formatted, selection, step);\n this.setState({ selection: extended });\n };\n\n private inputValue = (start: number, end: number, value: string) => {\n const result = CurrencyInputHelper.safeInsert(this.state.formatted, start, end, value, {\n integerDigits: this.props.integerDigits,\n fractionDigits: this.getProps().fractionDigits,\n unsigned: !this.props.signed,\n });\n if (result) {\n const formatted = result.value;\n const selection = SelectionHelper.fromPosition(result.position);\n this.setState({ formatted, selection }, () => {\n const parsedValue = CurrencyHelper.parse(formatted);\n if (this.props.value !== parsedValue) {\n this.props.onValueChange(parsedValue);\n }\n });\n return true;\n }\n\n if (this.input) {\n this.input.blink();\n }\n return false;\n };\n\n private getOnChangeDelta = (value: string) => {\n const selection = this.tempSelectionForOnChange;\n const oldValue = this.state.formatted;\n if (selection.start !== selection.end) {\n return value.substring(selection.start, value.length - (oldValue.length - selection.end));\n } else if (value.length > oldValue.length) {\n return value.substr(selection.start, value.length - oldValue.length);\n }\n return null;\n };\n\n private handleValueChange = (value: string): void => {\n const selection = this.tempSelectionForOnChange;\n const delta = this.getOnChangeDelta(value);\n if (isNonNullable(delta) && !this.inputValue(selection.start, selection.end, delta)) {\n this.setState({ selection });\n }\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const data = event.clipboardData.getData('text');\n const selection = this.getSelection(event.target);\n this.inputValue(selection.start, selection.end, data);\n event.preventDefault();\n };\n\n private handleCopy = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n }\n event.preventDefault();\n };\n\n private handleCut = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n this.inputValue(selection.start, selection.end, '');\n }\n event.preventDefault();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n const { selectionStart, selectionEnd, selectionDirection } = event.target;\n const valueLength = event.target.value.length;\n\n const selection = {\n start: selectionStart !== selectionEnd ? selectionStart || 0 : selectionStart || valueLength,\n end: selectionEnd !== selectionStart ? selectionEnd || 0 : selectionEnd || valueLength,\n direction: (selectionDirection as SelectionDirection) || 'none',\n };\n\n this.setState({\n focused: true,\n selection,\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private resetFocus = () => {\n const value = CurrencyHelper.parse(this.state.formatted);\n\n this.setState({\n ...this.getState(value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n });\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private refInput = (element: Nullable<Input>) => {\n this.input = element;\n };\n}\n\nfunction getInputSelectionFromEvent(input: EventTarget): Selection {\n if (!isInstanceOf(input, globalObject.HTMLInputElement)) {\n throw new Error('input is not HTMLInputElement');\n }\n\n return {\n start: input.selectionStart ?? 0,\n end: input.selectionEnd ?? 0,\n direction: input.selectionDirection as SelectionDirection,\n };\n}\n\nfunction isNumeric(value: unknown): value is number | string {\n return !isNaN(parseFloat(value as string)) && isFinite(value as number);\n}\n\nconst getPlaceholder = (props: CurrencyInputProps) => {\n if (isNullable(props.placeholder)) {\n return CurrencyHelper.format(0, {\n fractionDigits: props.fractionDigits,\n hideTrailingZeros: props.hideTrailingZeros,\n });\n }\n\n return props.placeholder;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_globalObject","_utils","_Input","_CommonWrapper","_rootNode","_createPropsGetter","_isInstanceOf","_FocusControlWrapper","_constants","_SelectionHelper","_CurrencyHelper","_CurrencyInputHelper","_CurrencyInputKeyboardActions","_excluded","_class","_CurrencyInput","CurrencyInputDataTids","exports","root","CurrencyInput","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","_extends2","default","getState","value","fractionDigits","hideTrailingZeros","focused","tempSelectionForOnChange","SelectionHelper","fromPosition","renderMain","props","signed","onSubmit","integerDigits","rest","_objectWithoutPropertiesLoose2","createElement","FocusControlWrapper","onBlurWhenDisabled","resetFocus","Input","align","formatted","onBlur","handleBlur","onFocus","handleFocus","onMouseUp","handleMouseUp","onKeyDown","handleKeyDown","onValueChange","handleValueChange","onPaste","handlePaste","onCopy","handleCopy","onCut","handleCut","onMouseEnter","onMouseLeave","onMouseOver","ref","refInput","placeholder","getPlaceholder","focus","input","blur","event","setSelectionFromEvent","selection","getSelection","target","defaultPrevented","action","extractAction","CURRENCY_INPUT_ACTIONS","Ignore","Unknown","preventDefault","Submit","Backspace","inputValue","CurrencyInputHelper","moveCursor","end","Delete","start","MoveCursorLeft","MoveCursorRight","Home","setState","End","ExtendSelectionLeft","extendSelection","ExtendSelectionRight","FullSelection","forward","ExtendSelectionToStart","backward","ExtendSelectionToEnd","inputEnd","Comma","scrollInput","_this$input","node","getNode","scrollWidth","clientWidth","PAD","SHIFT","selected","position","direction","charsCount","charWidth","frame","Math","ceil","frameStart","scrollLeft","frameEnd","getInputSelectionFromEvent","step","extended","result","safeInsert","unsigned","parsedValue","CurrencyHelper","parse","blink","getOnChangeDelta","oldValue","substring","substr","delta","isNonNullable","data","clipboardData","getData","formatForClipboard","setData","_event$target","selectionStart","selectionEnd","selectionDirection","valueLength","element","_inheritsLoose2","_proto","prototype","validateProps","warning","isNumeric","maxLength","undefined","MAX_SAFE_DIGITS","componentDidMount","componentDidUpdate","prevProps","prevState","_this$getProps","Number","isNullable","_this$state$selection","setSelectionRange","render","CommonWrapper","rootNodeRef","setRootNode","format","normilized","normalizeSelection","React","PureComponent","__KONTUR_REACT_UI__","displayName","inputMode","_input$selectionStart","_input$selectionEnd","isInstanceOf","globalObject","HTMLInputElement","isNaN","parseFloat","isFinite"],"sources":["CurrencyInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { Nullable, 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 { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { MAX_SAFE_DIGITS } from './constants';\nimport type { Selection, SelectionDirection } from './SelectionHelper';\nimport { SelectionHelper } from './SelectionHelper';\nimport { CurrencyHelper } from './CurrencyHelper';\nimport { CurrencyInputHelper } from './CurrencyInputHelper';\nimport { CURRENCY_INPUT_ACTIONS, extractAction } from './CurrencyInputKeyboardActions';\n\nexport interface CurrencyInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n Omit<InputProps, 'showClearIcon'>,\n {\n /** Задает значение инпута. */\n value?: Nullable<number>;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Устанавливает минимальное количество отображаемых знаков после запятой. */\n fractionDigits?: Nullable<number>;\n\n /** Разрешает отрицательные значения. */\n signed?: boolean;\n\n /** Задает допустимое количество цифр целой части. Если передан **0**, или fractionDigits=15, то и в целой части допускается только **0**. */\n integerDigits?: Nullable<number>;\n\n /** Задает функцию, которая вызывается при изменении `value`. */\n onValueChange: (value: Nullable<number>) => void;\n\n /** Задает функцию, которая вызывается при отправке формы. */\n onSubmit?: () => void;\n }\n > {}\n\nexport interface CurrencyInputState {\n formatted: string;\n selection: Selection;\n focused: boolean;\n}\n\nexport const CurrencyInputDataTids = {\n root: 'CurrencyInput__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<CurrencyInputProps, 'align' | 'fractionDigits' | 'hideTrailingZeros' | 'value' | 'inputMode'>\n>;\n\n/**\n * `CurrencyInput` — поле для денежных сумм (и других числовых значений).\n * Принимает любые свойства `Input`.\n *\n * Используйте такое поле, когда нужно вводить значение в рублях, долларах или другой валюте.\n * Оно форматирует введенное значение и помогает пользователю не ошибиться при вводе.\n *\n * Максимальная длина числа - **15 цифр** (с десятичным разделителем в любом месте).\n *\n * **Почему 15?** Максимальное безопасное целочисленное значение - 9007199254740991 (16 цифр). Убрав один разряд под знак, мы получим \"новое\" максимальное безопасное значение - 999999999999999 (15 цифр).\n * При этом десятичный резделитель может находиться в любом месте. Если целая часть равна 0, то она не учитывается. Детали можно почитать здесь - [MDN web docs](https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER).\n *\n * Если `fractionDigits=15`, то в целой части допускается **0**.\n */\n@rootNode\nexport class CurrencyInput extends React.PureComponent<CurrencyInputProps, CurrencyInputState> {\n public static __KONTUR_REACT_UI__ = 'CurrencyInput';\n public static displayName = 'CurrencyInput';\n\n public static defaultProps: DefaultProps = {\n align: 'right',\n fractionDigits: 2,\n hideTrailingZeros: false,\n value: null,\n inputMode: 'decimal',\n };\n\n private getProps = createPropsGetter(CurrencyInput.defaultProps);\n private validateProps(props: CurrencyInputProps): void {\n warning(isNumeric(props.value), '[CurrencyInput]: Prop `value` is not a valid number');\n warning(\n props.maxLength === undefined,\n `[CurrencyInput]: Prop 'maxLength' has been deprecated. See 'integerDigits' and 'fractionDigits'`,\n );\n warning(\n (props.integerDigits || 0) + (props.fractionDigits || 0) <= MAX_SAFE_DIGITS,\n `[CurrencyInput]: Sum of 'integerDigits' and 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee CurrencyInput documentation`,\n );\n }\n\n public state: CurrencyInputState = {\n ...this.getState(this.getProps().value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n };\n\n private input: Nullable<Input>;\n private tempSelectionForOnChange: Selection = SelectionHelper.fromPosition(0);\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount(): void {\n this.validateProps(this.getProps());\n }\n\n public componentDidUpdate(prevProps: CurrencyInputProps, prevState: CurrencyInputState) {\n const { value, fractionDigits, hideTrailingZeros } = this.getProps();\n this.validateProps(this.getProps());\n\n if (\n (isNumeric(value) && Number(value) !== CurrencyHelper.parse(prevState.formatted)) ||\n prevProps.fractionDigits !== fractionDigits\n ) {\n this.setState(this.getState(value, fractionDigits, hideTrailingZeros));\n }\n if (isNonNullable(prevProps.value) && isNullable(value)) {\n this.setState({ formatted: '' });\n }\n if (this.state.focused && this.input) {\n const { start, end } = this.state.selection;\n\n this.input.setSelectionRange(start, end);\n }\n if (prevState.selection !== this.state.selection) {\n this.scrollInput();\n }\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<CurrencyInputProps>) => {\n const { fractionDigits, signed, onSubmit, integerDigits, hideTrailingZeros, ...rest } = props;\n\n return (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <Input\n data-tid={CurrencyInputDataTids.root}\n {...rest}\n align={this.getProps().align}\n value={this.state.formatted}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseUp={this.handleMouseUp}\n onKeyDown={this.handleKeyDown}\n onValueChange={this.handleValueChange}\n onPaste={this.handlePaste}\n onCopy={this.handleCopy}\n onCut={this.handleCut}\n aria-label={this.props['aria-label']}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n ref={this.refInput}\n placeholder={this.state.focused ? '' : getPlaceholder(props)}\n />\n </FocusControlWrapper>\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 getState(value: Nullable<number>, fractionDigits: Nullable<number>, hideTrailingZeros: boolean) {\n return {\n formatted: CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros }),\n selection: SelectionHelper.fromPosition(0),\n };\n }\n\n private setSelectionFromEvent(event: React.MouseEvent<HTMLInputElement>) {\n const selection = getInputSelectionFromEvent(event.target);\n const normilized = CurrencyInputHelper.normalizeSelection(this.state.formatted, selection);\n this.setState({ selection: normilized });\n }\n\n private handleMouseUp = (event: React.MouseEvent<HTMLInputElement>) => {\n this.setSelectionFromEvent(event);\n };\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n this.tempSelectionForOnChange = selection;\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n\n const action = extractAction(event);\n\n if (action === CURRENCY_INPUT_ACTIONS.Ignore) {\n return;\n }\n\n if (action !== CURRENCY_INPUT_ACTIONS.Unknown) {\n event.preventDefault();\n }\n\n switch (action) {\n case CURRENCY_INPUT_ACTIONS.Submit: {\n if (this.props.onSubmit) {\n this.props.onSubmit();\n }\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Backspace: {\n this.inputValue(CurrencyInputHelper.moveCursor(this.state.formatted, selection, -1), selection.end, '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Delete: {\n this.inputValue(selection.start, CurrencyInputHelper.moveCursor(this.state.formatted, selection, +1), '');\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorLeft: {\n this.moveCursor(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.MoveCursorRight: {\n this.moveCursor(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Home: {\n this.setState({ selection: SelectionHelper.fromPosition(0) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.End: {\n const end = this.state.formatted.length;\n this.setState({ selection: SelectionHelper.fromPosition(end) });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionLeft: {\n this.extendSelection(selection, -1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionRight: {\n this.extendSelection(selection, +1);\n return;\n }\n case CURRENCY_INPUT_ACTIONS.FullSelection: {\n this.setState({\n selection: SelectionHelper.forward(0, this.state.formatted.length),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToStart: {\n this.setState({\n selection: SelectionHelper.backward(0, selection.start),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.ExtendSelectionToEnd: {\n const inputEnd = this.state.formatted.length;\n this.setState({\n selection: SelectionHelper.forward(selection.start, inputEnd),\n });\n return;\n }\n case CURRENCY_INPUT_ACTIONS.Comma: {\n this.inputValue(selection.start, selection.end, ',');\n return;\n }\n }\n };\n\n private scrollInput = () => {\n const node = this.input?.getNode();\n if (!node || node.scrollWidth === node.clientWidth) {\n return;\n }\n const PAD = 1;\n const SHIFT = 3;\n\n const selection = this.state.selection;\n const selected = selection.start !== selection.end;\n const position = selected && selection.direction === 'forward' ? selection.end : selection.start;\n const charsCount = this.state.formatted.length;\n const charWidth = node.scrollWidth / charsCount;\n const frame = Math.ceil(node.clientWidth / charWidth);\n const frameStart = Math.ceil(node.scrollLeft / charWidth);\n const frameEnd = frameStart + frame;\n\n if (position < frameStart + PAD) {\n node.scrollLeft = (position - SHIFT) * charWidth;\n }\n if (position > frameEnd - PAD) {\n node.scrollLeft = (position - frame + SHIFT) * charWidth;\n }\n };\n\n private getSelection = (input: EventTarget): Selection => {\n const selection = getInputSelectionFromEvent(input);\n return {\n start: selection.start,\n end: selection.end,\n direction: this.state.selection.direction,\n };\n };\n\n private moveCursor = (selection: Selection, step: number) => {\n const position = CurrencyInputHelper.moveCursor(this.state.formatted, selection, step);\n this.setState({ selection: SelectionHelper.fromPosition(position) });\n };\n\n private extendSelection = (selection: Selection, step: number) => {\n const extended = CurrencyInputHelper.extendSelection(this.state.formatted, selection, step);\n this.setState({ selection: extended });\n };\n\n private inputValue = (start: number, end: number, value: string) => {\n const result = CurrencyInputHelper.safeInsert(this.state.formatted, start, end, value, {\n integerDigits: this.props.integerDigits,\n fractionDigits: this.getProps().fractionDigits,\n unsigned: !this.props.signed,\n });\n if (result) {\n const formatted = result.value;\n const selection = SelectionHelper.fromPosition(result.position);\n this.setState({ formatted, selection }, () => {\n const parsedValue = CurrencyHelper.parse(formatted);\n if (this.props.value !== parsedValue) {\n this.props.onValueChange(parsedValue);\n }\n });\n return true;\n }\n\n if (this.input) {\n this.input.blink();\n }\n return false;\n };\n\n private getOnChangeDelta = (value: string) => {\n const selection = this.tempSelectionForOnChange;\n const oldValue = this.state.formatted;\n if (selection.start !== selection.end) {\n return value.substring(selection.start, value.length - (oldValue.length - selection.end));\n } else if (value.length > oldValue.length) {\n return value.substr(selection.start, value.length - oldValue.length);\n }\n return null;\n };\n\n private handleValueChange = (value: string): void => {\n const selection = this.tempSelectionForOnChange;\n const delta = this.getOnChangeDelta(value);\n if (isNonNullable(delta) && !this.inputValue(selection.start, selection.end, delta)) {\n this.setState({ selection });\n }\n };\n\n private handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const data = event.clipboardData.getData('text');\n const selection = this.getSelection(event.target);\n this.inputValue(selection.start, selection.end, data);\n event.preventDefault();\n };\n\n private handleCopy = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n }\n event.preventDefault();\n };\n\n private handleCut = (event: React.ClipboardEvent<HTMLInputElement>) => {\n const selection = this.getSelection(event.target);\n if (selection.start !== selection.end) {\n const substring = this.state.formatted.substring(selection.start, selection.end);\n const data = CurrencyHelper.formatForClipboard(substring);\n event.clipboardData.setData('text', data);\n this.inputValue(selection.start, selection.end, '');\n }\n event.preventDefault();\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n const { selectionStart, selectionEnd, selectionDirection } = event.target;\n const valueLength = event.target.value.length;\n\n const selection = {\n start: selectionStart !== selectionEnd ? selectionStart || 0 : selectionStart || valueLength,\n end: selectionEnd !== selectionStart ? selectionEnd || 0 : selectionEnd || valueLength,\n direction: (selectionDirection as SelectionDirection) || 'none',\n };\n\n this.setState({\n focused: true,\n selection,\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private resetFocus = () => {\n const value = CurrencyHelper.parse(this.state.formatted);\n\n this.setState({\n ...this.getState(value, this.getProps().fractionDigits, this.getProps().hideTrailingZeros),\n focused: false,\n });\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(event);\n };\n\n private refInput = (element: Nullable<Input>) => {\n this.input = element;\n };\n}\n\nfunction getInputSelectionFromEvent(input: EventTarget): Selection {\n if (!isInstanceOf(input, globalObject.HTMLInputElement)) {\n warning(false, 'input is not HTMLInputElement');\n\n return {\n start: 0,\n end: 0,\n direction: 'none',\n };\n }\n\n return {\n start: input.selectionStart ?? 0,\n end: input.selectionEnd ?? 0,\n direction: input.selectionDirection as SelectionDirection,\n };\n}\n\nfunction isNumeric(value: unknown): value is number | string {\n return !isNaN(parseFloat(value as string)) && isFinite(value as number);\n}\n\nconst getPlaceholder = (props: CurrencyInputProps) => {\n if (isNullable(props.placeholder)) {\n return CurrencyHelper.format(0, {\n fractionDigits: props.fractionDigits,\n hideTrailingZeros: props.hideTrailingZeros,\n });\n }\n\n return props.placeholder;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,6 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.CursorHelper = void 0;var _createForOfIteratorHelperLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelperLoose"));
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.CursorHelper = void 0;var _createForOfIteratorHelperLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelperLoose"));var _warning = _interopRequireDefault(require("warning"));
2
+
3
+
2
4
 
3
5
 
4
6
 
@@ -25,7 +27,8 @@ CursorHelper = exports.CursorHelper = /*#__PURE__*/function () {function CursorH
25
27
 
26
28
  calculatePosition = function calculatePosition(map, position, step) {
27
29
  if (position < 0 || map.length <= position) {
28
- throw new Error("position out of range [" + 0 + " .. " + (map.length - 1) + "], actual value: " + position);
30
+ (0, _warning.default)(false, "position out of range [" + 0 + " .. " + (map.length - 1) + "], actual value: " + position);
31
+ return position < 0 ? 0 : map.length - 1;
29
32
  }
30
33
  var raw = CursorHelper.toRawPosition(map, position);
31
34
  return CursorHelper.toFormattedPosition(map, raw + step);
@@ -1 +1 @@
1
- {"version":3,"names":["calculateExtendedSelection","map","selection","step","direction","start","CursorHelper","calculatePosition","end","exports","normalizePosition","position","Math","min","max","length","Error","raw","toRawPosition","toFormattedPosition","extendSelection","normalizedSelection","normalizeSelection","formattedPosition","count","Set","slice","size","rawPosition","unique","_iterator","_createForOfIteratorHelperLoose2","default","_step","done","value","add"],"sources":["CursorHelper.tsx"],"sourcesContent":["import type { Selection } from './SelectionHelper';\n\nexport type CursorMap = number[];\n\nconst calculateExtendedSelection = (map: CursorMap, selection: Selection, step: number): Selection => {\n if (selection.direction === 'backward') {\n return {\n start: CursorHelper.calculatePosition(map, selection.start, step),\n end: selection.end,\n direction: 'backward',\n };\n }\n\n return {\n start: selection.start,\n end: CursorHelper.calculatePosition(map, selection.end, step),\n direction: 'forward',\n };\n};\n\nexport class CursorHelper {\n public static normalizePosition(map: CursorMap, position: number): number {\n return map[Math.min(Math.max(0, position), map.length - 1)];\n }\n\n public static calculatePosition(map: CursorMap, position: number, step: number) {\n if (position < 0 || map.length <= position) {\n throw new Error(`position out of range [${0} .. ${map.length - 1}], actual value: ${position}`);\n }\n const raw = CursorHelper.toRawPosition(map, position);\n return CursorHelper.toFormattedPosition(map, raw + step);\n }\n\n public static extendSelection(map: CursorMap, selection: Selection, step: number) {\n const normalizedSelection = CursorHelper.normalizeSelection(map, selection);\n\n return CursorHelper.normalizeSelection(map, calculateExtendedSelection(map, normalizedSelection, step));\n }\n\n public static normalizeSelection(map: CursorMap, selection: Selection): Selection {\n const start = CursorHelper.normalizePosition(map, selection.start);\n const end = CursorHelper.normalizePosition(map, selection.end);\n\n if (start === end) {\n return {\n start,\n end,\n direction: 'none',\n };\n }\n\n if (start < end) {\n return {\n start,\n end,\n direction: selection.direction === 'backward' ? 'backward' : 'forward',\n };\n }\n\n return {\n start: end,\n end: start,\n direction: selection.direction === 'backward' ? 'forward' : 'backward',\n };\n }\n\n public static toRawPosition(map: CursorMap, formattedPosition: number) {\n const count = Math.min(Math.max(0, formattedPosition), map.length - 1);\n return new Set(map.slice(0, count + 1)).size - 1;\n }\n\n public static toFormattedPosition(map: CursorMap, rawPosition: number) {\n const count = Math.max(0, rawPosition) + 1;\n const unique = new Set();\n\n for (const position of map) {\n unique.add(position);\n if (unique.size === count) {\n return position;\n }\n }\n\n return map[map.length - 1];\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_warning","_interopRequireDefault","require","calculateExtendedSelection","map","selection","step","direction","start","CursorHelper","calculatePosition","end","exports","normalizePosition","position","Math","min","max","length","warning","raw","toRawPosition","toFormattedPosition","extendSelection","normalizedSelection","normalizeSelection","formattedPosition","count","Set","slice","size","rawPosition","unique","_iterator","_createForOfIteratorHelperLoose2","default","_step","done","value","add"],"sources":["CursorHelper.tsx"],"sourcesContent":["import warning from 'warning';\n\nimport type { Selection } from './SelectionHelper';\n\nexport type CursorMap = number[];\n\nconst calculateExtendedSelection = (map: CursorMap, selection: Selection, step: number): Selection => {\n if (selection.direction === 'backward') {\n return {\n start: CursorHelper.calculatePosition(map, selection.start, step),\n end: selection.end,\n direction: 'backward',\n };\n }\n\n return {\n start: selection.start,\n end: CursorHelper.calculatePosition(map, selection.end, step),\n direction: 'forward',\n };\n};\n\nexport class CursorHelper {\n public static normalizePosition(map: CursorMap, position: number): number {\n return map[Math.min(Math.max(0, position), map.length - 1)];\n }\n\n public static calculatePosition(map: CursorMap, position: number, step: number) {\n if (position < 0 || map.length <= position) {\n warning(false, `position out of range [${0} .. ${map.length - 1}], actual value: ${position}`);\n return position < 0 ? 0 : map.length - 1;\n }\n const raw = CursorHelper.toRawPosition(map, position);\n return CursorHelper.toFormattedPosition(map, raw + step);\n }\n\n public static extendSelection(map: CursorMap, selection: Selection, step: number) {\n const normalizedSelection = CursorHelper.normalizeSelection(map, selection);\n\n return CursorHelper.normalizeSelection(map, calculateExtendedSelection(map, normalizedSelection, step));\n }\n\n public static normalizeSelection(map: CursorMap, selection: Selection): Selection {\n const start = CursorHelper.normalizePosition(map, selection.start);\n const end = CursorHelper.normalizePosition(map, selection.end);\n\n if (start === end) {\n return {\n start,\n end,\n direction: 'none',\n };\n }\n\n if (start < end) {\n return {\n start,\n end,\n direction: selection.direction === 'backward' ? 'backward' : 'forward',\n };\n }\n\n return {\n start: end,\n end: start,\n direction: selection.direction === 'backward' ? 'forward' : 'backward',\n };\n }\n\n public static toRawPosition(map: CursorMap, formattedPosition: number) {\n const count = Math.min(Math.max(0, formattedPosition), map.length - 1);\n return new Set(map.slice(0, count + 1)).size - 1;\n }\n\n public static toFormattedPosition(map: CursorMap, rawPosition: number) {\n const count = Math.max(0, rawPosition) + 1;\n const unique = new Set();\n\n for (const position of map) {\n unique.add(position);\n if (unique.size === count) {\n return position;\n }\n }\n\n return map[map.length - 1];\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -47,8 +47,8 @@ var CurrencyLabel = exports.CurrencyLabel = (0, _forwardRefAndName.forwardRefAnd
47
47
  {var id = _ref.id,value = _ref.value,_ref$fractionDigits = _ref.fractionDigits,fractionDigits = _ref$fractionDigits === void 0 ? FRACTION_DIGITS_DEFAULT : _ref$fractionDigits,currencySymbol = _ref.currencySymbol,_ref$hideTrailingZero = _ref.hideTrailingZeros,hideTrailingZeros = _ref$hideTrailingZero === void 0 ? false : _ref$hideTrailingZero,rest = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
48
48
  _react.default.useEffect(function () {
49
49
  (0, _warning.default)(
50
- fractionDigits <= _constants.MAX_SAFE_DIGITS,
51
- "[CurrencyLabel]: Prop 'fractionDigits' exceeds " + _constants.MAX_SAFE_DIGITS + "." + "\nSee CurrencyInput documentation"
50
+ fractionDigits <= _constants.MAX_SAFE_DIGITS, "[CurrencyLabel]: Prop 'fractionDigits' exceeds " +
51
+ _constants.MAX_SAFE_DIGITS + ".\nSee CurrencyInput documentation"
52
52
  );
53
53
 
54
54
  var _ref2 = _CurrencyHelper.CurrencyHelper.destructString(String(value)) || { fraction: '' },fraction = _ref2.fraction;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_constants","_CurrencyHelper","_CommonWrapper","_forwardRefAndName","_excluded","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","exports","root","CurrencyLabel","forwardRefAndName","_ref","ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose2","default","React","useEffect","warning","MAX_SAFE_DIGITS","_ref2","CurrencyHelper","destructString","String","fraction","length","Number","isInteger","createElement","CommonWrapper","format","fromCharCode"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { MAX_SAFE_DIGITS } from '../CurrencyInput/constants';\nimport { CurrencyHelper } from '../CurrencyInput/CurrencyHelper';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nexport interface CurrencyLabelProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Устанавливает минимальное количество отображаемых знаков после запятой.\n * @default 2 */\n fractionDigits?: number;\n\n /** Устанавливает значение. */\n value: number;\n\n /** Задает символ валюты. */\n currencySymbol?: React.ReactNode;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n}\n\nconst FRACTION_DIGITS_DEFAULT = 2;\n\nexport const CurrencyLabelDataTids = {\n root: 'CurrencyLabel__root',\n} as const;\n\n/**\n * `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).\n */\nconst CurrencyLabel = forwardRefAndName(\n 'CurrencyLabel',\n function CurrencyLabel(\n {\n id,\n value,\n fractionDigits = FRACTION_DIGITS_DEFAULT,\n currencySymbol,\n hideTrailingZeros = false,\n ...rest\n }: CurrencyLabelProps,\n ref: React.Ref<HTMLDivElement>,\n ) {\n React.useEffect(() => {\n warning(\n fractionDigits <= MAX_SAFE_DIGITS,\n `[CurrencyLabel]: Prop 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` + `\\nSee CurrencyInput documentation`,\n );\n\n const { fraction } = CurrencyHelper.destructString(String(value)) || { fraction: '' };\n warning(\n fraction.length <= fractionDigits,\n `[CurrencyLabel]: Prop 'fractionDigits' less than fractional part of the 'value' property,` +\n `'value' will not be cutted`,\n );\n\n warning(\n Number.isInteger(fractionDigits),\n `[CurrencyLabel]: Prop 'fractionDigits' is not integer, fraction part of these property will not be used`,\n );\n }, [fractionDigits, value]);\n\n return (\n <CommonWrapper {...rest}>\n <span id={id} data-tid={CurrencyLabelDataTids.root} ref={ref}>\n {CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros })}\n {currencySymbol && String.fromCharCode(0xa0) /* &nbsp; */}\n {currencySymbol}\n </span>\n </CommonWrapper>\n );\n },\n);\n\nexport { CurrencyLabel };\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;;AAEA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;;AAEA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA,gCAAgE,IAAAM,SAAA;;;;;;;;;;;;;;;;;AAiBhE,IAAMC,uBAAuB,GAAG,CAAC;;AAE1B,IAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACnCE,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,IAAMC,aAAa,GAAAF,OAAA,CAAAE,aAAA,GAAG,IAAAC,oCAAiB;EACrC,eAAe;EACf,SAASD,aAAaA,CAAAE,IAAA;;;;;;;;;EASpBC,GAA8B;EAC9B,KAREC,EAAE,GAAAF,IAAA,CAAFE,EAAE,CACFC,KAAK,GAAAH,IAAA,CAALG,KAAK,CAAAC,mBAAA,GAAAJ,IAAA,CACLK,cAAc,CAAdA,cAAc,GAAAD,mBAAA,cAAGV,uBAAuB,GAAAU,mBAAA,CACxCE,cAAc,GAAAN,IAAA,CAAdM,cAAc,CAAAC,qBAAA,GAAAP,IAAA,CACdQ,iBAAiB,CAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CACtBE,IAAI,OAAAC,8BAAA,CAAAC,OAAA,EAAAX,IAAA,EAAAP,SAAA;IAITmB,cAAK,CAACC,SAAS,CAAC,YAAM;MACpB,IAAAC,gBAAO;QACLT,cAAc,IAAIU,0BAAe;QACjC,oDAAkDA,0BAAe;MACnE,CAAC;;MAED,IAAAC,KAAA,GAAqBC,8BAAc,CAACC,cAAc,CAACC,MAAM,CAAChB,KAAK,CAAC,CAAC,IAAI,EAAEiB,QAAQ,EAAE,EAAE,CAAC,CAAC,CAA7EA,QAAQ,GAAAJ,KAAA,CAARI,QAAQ;MAChB,IAAAN,gBAAO;QACLM,QAAQ,CAACC,MAAM,IAAIhB,cAAc;QACjC;;MAEF,CAAC;;MAED,IAAAS,gBAAO;QACLQ,MAAM,CAACC,SAAS,CAAClB,cAAc,CAAC;;MAElC,CAAC;IACH,CAAC,EAAE,CAACA,cAAc,EAAEF,KAAK,CAAC,CAAC;;IAE3B;MACElB,MAAA,CAAA0B,OAAA,CAAAa,aAAA,CAACjC,cAAA,CAAAkC,aAAa,EAAKhB,IAAI;MACrBxB,MAAA,CAAA0B,OAAA,CAAAa,aAAA,WAAMtB,EAAE,EAAEA,EAAG,EAAC,YAAUP,qBAAqB,CAACE,IAAK,EAACI,GAAG,EAAEA,GAAI;MAC1DgB,8BAAc,CAACS,MAAM,CAACvB,KAAK,EAAE,EAAEE,cAAc,EAAdA,cAAc,EAAEG,iBAAiB,EAAjBA,iBAAiB,CAAC,CAAC,CAAC;MACnEF,cAAc,IAAIa,MAAM,CAACQ,YAAY,CAAC,IAAI,CAAC,CAAC;MAC5CrB;MACG;MACO,CAAC;;EAEpB;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_constants","_CurrencyHelper","_CommonWrapper","_forwardRefAndName","_excluded","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","exports","root","CurrencyLabel","forwardRefAndName","_ref","ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose2","default","React","useEffect","warning","MAX_SAFE_DIGITS","_ref2","CurrencyHelper","destructString","String","fraction","length","Number","isInteger","createElement","CommonWrapper","format","fromCharCode"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { MAX_SAFE_DIGITS } from '../CurrencyInput/constants';\nimport { CurrencyHelper } from '../CurrencyInput/CurrencyHelper';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nexport interface CurrencyLabelProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Устанавливает минимальное количество отображаемых знаков после запятой.\n * @default 2 */\n fractionDigits?: number;\n\n /** Устанавливает значение. */\n value: number;\n\n /** Задает символ валюты. */\n currencySymbol?: React.ReactNode;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n}\n\nconst FRACTION_DIGITS_DEFAULT = 2;\n\nexport const CurrencyLabelDataTids = {\n root: 'CurrencyLabel__root',\n} as const;\n\n/**\n * `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).\n */\nconst CurrencyLabel = forwardRefAndName(\n 'CurrencyLabel',\n function CurrencyLabel(\n {\n id,\n value,\n fractionDigits = FRACTION_DIGITS_DEFAULT,\n currencySymbol,\n hideTrailingZeros = false,\n ...rest\n }: CurrencyLabelProps,\n ref: React.Ref<HTMLDivElement>,\n ) {\n React.useEffect(() => {\n warning(\n fractionDigits <= MAX_SAFE_DIGITS,\n `[CurrencyLabel]: Prop 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.\\nSee CurrencyInput documentation`,\n );\n\n const { fraction } = CurrencyHelper.destructString(String(value)) || { fraction: '' };\n warning(\n fraction.length <= fractionDigits,\n `[CurrencyLabel]: Prop 'fractionDigits' less than fractional part of the 'value' property,` +\n `'value' will not be cutted`,\n );\n\n warning(\n Number.isInteger(fractionDigits),\n `[CurrencyLabel]: Prop 'fractionDigits' is not integer, fraction part of these property will not be used`,\n );\n }, [fractionDigits, value]);\n\n return (\n <CommonWrapper {...rest}>\n <span id={id} data-tid={CurrencyLabelDataTids.root} ref={ref}>\n {CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros })}\n {currencySymbol && String.fromCharCode(0xa0) /* &nbsp; */}\n {currencySymbol}\n </span>\n </CommonWrapper>\n );\n },\n);\n\nexport { CurrencyLabel };\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;;AAEA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;;AAEA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA,gCAAgE,IAAAM,SAAA;;;;;;;;;;;;;;;;;AAiBhE,IAAMC,uBAAuB,GAAG,CAAC;;AAE1B,IAAMC,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG;EACnCE,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,IAAMC,aAAa,GAAAF,OAAA,CAAAE,aAAA,GAAG,IAAAC,oCAAiB;EACrC,eAAe;EACf,SAASD,aAAaA,CAAAE,IAAA;;;;;;;;;EASpBC,GAA8B;EAC9B,KAREC,EAAE,GAAAF,IAAA,CAAFE,EAAE,CACFC,KAAK,GAAAH,IAAA,CAALG,KAAK,CAAAC,mBAAA,GAAAJ,IAAA,CACLK,cAAc,CAAdA,cAAc,GAAAD,mBAAA,cAAGV,uBAAuB,GAAAU,mBAAA,CACxCE,cAAc,GAAAN,IAAA,CAAdM,cAAc,CAAAC,qBAAA,GAAAP,IAAA,CACdQ,iBAAiB,CAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CACtBE,IAAI,OAAAC,8BAAA,CAAAC,OAAA,EAAAX,IAAA,EAAAP,SAAA;IAITmB,cAAK,CAACC,SAAS,CAAC,YAAM;MACpB,IAAAC,gBAAO;QACLT,cAAc,IAAIU,0BAAe;QACiBA,0BAAe;MACnE,CAAC;;MAED,IAAAC,KAAA,GAAqBC,8BAAc,CAACC,cAAc,CAACC,MAAM,CAAChB,KAAK,CAAC,CAAC,IAAI,EAAEiB,QAAQ,EAAE,EAAE,CAAC,CAAC,CAA7EA,QAAQ,GAAAJ,KAAA,CAARI,QAAQ;MAChB,IAAAN,gBAAO;QACLM,QAAQ,CAACC,MAAM,IAAIhB,cAAc;QACjC;;MAEF,CAAC;;MAED,IAAAS,gBAAO;QACLQ,MAAM,CAACC,SAAS,CAAClB,cAAc,CAAC;;MAElC,CAAC;IACH,CAAC,EAAE,CAACA,cAAc,EAAEF,KAAK,CAAC,CAAC;;IAE3B;MACElB,MAAA,CAAA0B,OAAA,CAAAa,aAAA,CAACjC,cAAA,CAAAkC,aAAa,EAAKhB,IAAI;MACrBxB,MAAA,CAAA0B,OAAA,CAAAa,aAAA,WAAMtB,EAAE,EAAEA,EAAG,EAAC,YAAUP,qBAAqB,CAACE,IAAK,EAACI,GAAG,EAAEA,GAAI;MAC1DgB,8BAAc,CAACS,MAAM,CAACvB,KAAK,EAAE,EAAEE,cAAc,EAAdA,cAAc,EAAEG,iBAAiB,EAAjBA,iBAAiB,CAAC,CAAC,CAAC;MACnEF,cAAc,IAAIa,MAAM,CAACQ,YAAY,CAAC,IAAI,CAAC,CAAC;MAC5CrB;MACG;MACO,CAAC;;EAEpB;AACF,CAAC","ignoreList":[]}
@@ -33,7 +33,7 @@ export declare const DateRangePicker: {
33
33
  className?: string | undefined;
34
34
  onValueChange?: ((value: string) => void) | undefined;
35
35
  disabled?: boolean | undefined;
36
- size?: import("../..").SizeProp | undefined;
36
+ size?: import("../Token").TokenSize | undefined;
37
37
  value?: string | null | undefined;
38
38
  width?: string | number | undefined;
39
39
  autoFocus?: boolean | undefined;
@@ -59,7 +59,7 @@ export declare const DateRangePicker: {
59
59
  className?: string | undefined;
60
60
  onValueChange?: ((value: string) => void) | undefined;
61
61
  disabled?: boolean | undefined;
62
- size?: import("../..").SizeProp | undefined;
62
+ size?: import("../Token").TokenSize | undefined;
63
63
  value?: string | null | undefined;
64
64
  width?: string | number | undefined;
65
65
  autoFocus?: boolean | undefined;
@@ -1,5 +1,6 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.DropdownMenu = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
2
2
  var _react = _interopRequireDefault(require("react"));
3
+ var _warning = _interopRequireDefault(require("warning"));
3
4
 
4
5
  var _ThemeContext = require("../../lib/theming/ThemeContext");
5
6
 
@@ -149,4 +150,4 @@ DropdownMenu = exports.DropdownMenu = (0, _rootNode.rootNode)(_class = (_Dropdow
149
150
  }
150
151
  };_this.
151
152
 
152
- refPopupMenu = function (ref) {return _this.popupMenu = ref;};if (!props.caption && !_currentEnvironment.isProductionEnv) {throw new Error('Prop "caption" is required!!!');}return _this;}(0, _inheritsLoose2.default)(DropdownMenu, _React$Component);var _proto = DropdownMenu.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getDropdownMenuTheme.getDropdownMenuTheme)(theme) }, _this2.renderMain());});};_proto.renderMain = function renderMain() {if (!this.props.caption) {return null;}var _this$getProps = this.getProps(),positions = _this$getProps.positions,disableAnimations = _this$getProps.disableAnimations;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_PopupMenu.PopupMenu, { id: this.props.id, "aria-label": this.props['aria-label'], ref: this.refPopupMenu, caption: this.props.caption, menuMaxHeight: this.props.menuMaxHeight, menuWidth: this.props.menuWidth, preventIconsOffset: this.props.preventIconsOffset, popupHasPin: false, positions: positions, disableAnimations: disableAnimations, header: this.props.header, footer: this.props.footer, width: this.props.width, corners: this.props.corners, onClose: this.props.onClose, onOpen: this.props.onOpen, popupMenuId: this.props.popupMenuId }, this.props.children));};return DropdownMenu;}(_react.default.Component), _DropdownMenu.__KONTUR_REACT_UI__ = 'DropdownMenu', _DropdownMenu.displayName = 'DropdownMenu', _DropdownMenu.defaultProps = { disableAnimations: _currentEnvironment.isTestEnv, positions: ['bottom left', 'bottom right', 'top left', 'top right'] }, _DropdownMenu)) || _class;
153
+ refPopupMenu = function (ref) {return _this.popupMenu = ref;};if (!props.caption) {(0, _warning.default)(false, 'Prop "caption" is required!!!');}return _this;}(0, _inheritsLoose2.default)(DropdownMenu, _React$Component);var _proto = DropdownMenu.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getDropdownMenuTheme.getDropdownMenuTheme)(theme) }, _this2.renderMain());});};_proto.renderMain = function renderMain() {if (!this.props.caption) {return null;}var _this$getProps = this.getProps(),positions = _this$getProps.positions,disableAnimations = _this$getProps.disableAnimations;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_PopupMenu.PopupMenu, { id: this.props.id, "aria-label": this.props['aria-label'], ref: this.refPopupMenu, caption: this.props.caption, menuMaxHeight: this.props.menuMaxHeight, menuWidth: this.props.menuWidth, preventIconsOffset: this.props.preventIconsOffset, popupHasPin: false, positions: positions, disableAnimations: disableAnimations, header: this.props.header, footer: this.props.footer, width: this.props.width, corners: this.props.corners, onClose: this.props.onClose, onOpen: this.props.onOpen, popupMenuId: this.props.popupMenuId }, this.props.children));};return DropdownMenu;}(_react.default.Component), _DropdownMenu.__KONTUR_REACT_UI__ = 'DropdownMenu', _DropdownMenu.displayName = 'DropdownMenu', _DropdownMenu.defaultProps = { disableAnimations: _currentEnvironment.isTestEnv, positions: ['bottom left', 'bottom right', 'top left', 'top right'] }, _DropdownMenu)) || _class;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\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\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_warning","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","warning","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\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\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption) {\n warning(false, 'Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -193,6 +193,7 @@ var _FileUploader = (0, _forwardRefAndName.forwardRefAndName)('FileUploader', fu
193
193
  var dataTransfer = event.dataTransfer;
194
194
  if (dataTransfer) {var _dataTransfer$files;
195
195
  if (((_dataTransfer$files = dataTransfer.files) == null ? void 0 : _dataTransfer$files.length) > 0) {
196
+ inputRef.current && (inputRef.current.files = dataTransfer.files);
196
197
  handleChange(dataTransfer.files);
197
198
  }
198
199
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_globalObject","_fileUtils","_Emotion","_useMemoObject","_FileUploaderControlContext","_useControlLocale","_useUpload","_useDrop3","_ThemeContext","_withFileUploaderControlProvider","_keyListener","_FileUploaderFile","_FileUploaderFileList","_CommonWrapper","_FileUploaderFileValidationResult","_useFileUploaderSize","_forwardRefAndName","_FocusControlWrapper","_UploadIcon","_FileUploader2","_excluded","stopPropagation","e","FileUploaderDataTids","exports","root","content","link","input","defaultRenderFile","file","fileNode","_FileUploader","forwardRefAndName","props","ref","_cx","theme","useContext","ThemeContext","initialFiles","disabled","error","warning","_props$multiple","multiple","_props$width","width","fileUploaderWidth","_props$hideFiles","hideFiles","onBlur","onFocus","onChange","request","validateBeforeUpload","onRequestSuccess","onRequestError","_props$size","size","_props$renderFile","renderFile","inputProps","_objectWithoutPropertiesLoose2","default","_useContext","FileUploaderControlContext","files","setFiles","removeFile","reset","setFileValidationResult","isMinLengthReached","locale","useControlLocale","inputRef","useRef","fileDivRef","isAsync","isSingleMode","_useState","useState","isLinkVisible","setIsLinkVisible","upload","useUpload","tryValidateAndUpload","useCallback","forEach","_ref","_asyncToGenerator2","_regenerator","mark","_callee","validationMessage","wrap","_callee$","_context","prev","next","t0","sent","id","FileUploaderFileValidationResult","stop","_x","apply","arguments","sizeClassName","useFileUploaderSize","small","jsStyles","sizeSmall","medium","sizeMedium","large","sizeLarge","sizeIconClass","iconSmall","iconMedium","iconLarge","contentInnerClass","contentInnerSmall","contentInnerMedium","contentInnerLarge","handleChange","newFiles","length","filesArray","Array","from","attachedFiles","map","getAttachedFile","handleDrop","event","dataTransfer","_dataTransfer$files","_useDrop","useDrop","onDrop","isDraggable","labelRef","_useDrop2","isWindowDraggable","windowRef","isBrowser","globalObject","current","document","focus","_inputRef$current","keyListener","isTabPressed","blur","_inputRef$current2","handleRemoveFile","fileId","DataTransfer","filter","f","items","add","originalFile","handleExternalFileDeletion","handleReset","useImperativeHandle","getRootNode","rootNodeRef","_useState2","focusedByTab","setFocusedByTab","handleInputChange","target","handleFocus","requestAnimationFrame","handleBlur","_useState3","hovered","setHovered","uploadButtonClassNames","cx","uploadButton","uploadButtonFocus","dragOver","canDrop","uploadButtonWrapperClassNames","windowDragOver","uploadButtonIconClassNames","icon","iconDisabled","hasOneFile","hasOneFileForSingle","contentClassNames","contentWithFiles","linkClassNames","linkHovered","linkDisabled","useEffect","iconSizes","parseInt","btnIconSizeSmall","btnIconSizeMedium","btnIconSizeLarge","createElement","UploadIcon","CommonWrapper","className","style","useMemoObject","FileUploaderFileList","onRemove","onMouseEnter","onMouseLeave","choosedFile","chooseFile","String","fromCharCode","globalClasses","afterLinkText","afterLinkText_HasFiles","singleFile","FileUploaderFile","Fragment","orDragHere","FocusControlWrapper","onBlurWhenDisabled","_extends2","tabIndex","type","visuallyHidden","onClick","FileUploader","withFileUploaderControlProvider","React","memo","displayName"],"sources":["FileUploader.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport type { FileUploaderAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { getAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { useMemoObject } from '../../hooks/useMemoObject';\nimport { FileUploaderControlContext } from '../../internal/FileUploaderControl/FileUploaderControlContext';\nimport { useControlLocale } from '../../internal/FileUploaderControl/hooks/useControlLocale';\nimport { useUpload } from '../../internal/FileUploaderControl/hooks/useUpload';\nimport { useDrop } from '../../hooks/useDrop';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';\nimport { withFileUploaderControlProvider } from '../../internal/FileUploaderControl/withFileUploaderControlProvider';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { FileUploaderFile } from '../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile';\nimport { FileUploaderFileList } from '../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FileUploaderFileValidationResult } from '../../internal/FileUploaderControl/FileUploaderFileValidationResult';\nimport { useFileUploaderSize } from '../../internal/FileUploaderControl/hooks/useFileUploaderSize';\nimport type { SizeProp } from '../../lib/types/props';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { UploadIcon } from './UploadIcon';\nimport { globalClasses, jsStyles } from './FileUploader.styles';\n\nconst stopPropagation: React.ReactEventHandler = (e) => e.stopPropagation();\n\ntype FileUploaderOverriddenProps = 'size';\n\ninterface _FileUploaderProps\n extends CommonProps,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, FileUploaderOverriddenProps> {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n /** Начальное состояние загруженных файлов */\n initialFiles?: File[];\n /** Состояние ошибки всего контрола */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает длину компонента. */\n width?: React.CSSProperties['width'];\n\n /** Задаёт размер контрола. */\n size?: SizeProp;\n\n /** Скрывает отображение файлов. */\n hideFiles?: boolean;\n\n /** Задает функцию, через которую отправляются файлы. Используется для отслеживания статуса загрузки файла.\n * @param {FileUploaderAttachedFile} file - файл, статус загрузки которого необходимо отследить. */\n request?: (file: FileUploaderAttachedFile) => Promise<void>;\n\n /** Задает функцию, которая вызывается при удачной попытке отправки через request. */\n onRequestSuccess?: (fileId: string) => void;\n\n /** Задает функцию, которая вызывается при неудачной попытке отправки через request. */\n onRequestError?: (fileId: string) => void;\n\n /** Определяет функцию валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. Чтобы вывести валидацию ошибки, промис должен вернуть строку. * */\n validateBeforeUpload?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;\n\n /** Задает функцию, которая позволяет кастомизировать файлы. Через нее можно вешать кастомные валидации на каждый файл. */\n renderFile?: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n}\n\nexport interface FileUploaderRef extends InstanceWithRootNode {\n focus: () => void;\n blur: () => void;\n /** Сбрасывает выбранные файлы */\n reset: () => void;\n removeFile: (fileId: string) => void;\n}\n\nexport const FileUploaderDataTids = {\n root: 'FileUploader__root',\n content: 'FileUploader__content',\n link: 'FileUploader__link',\n input: 'FileUploader__input',\n} as const;\n\nconst defaultRenderFile = (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => fileNode;\n\nconst _FileUploader = forwardRefAndName<FileUploaderRef, _FileUploaderProps>('FileUploader', (props, ref) => {\n const theme = useContext(ThemeContext);\n\n const {\n initialFiles,\n disabled,\n error,\n warning,\n multiple = false,\n width = theme.fileUploaderWidth,\n hideFiles = false,\n onBlur,\n onFocus,\n onChange,\n request,\n validateBeforeUpload,\n onRequestSuccess,\n onRequestError,\n size = 'small',\n renderFile = defaultRenderFile,\n ...inputProps\n } = props;\n\n const { files, setFiles, removeFile, reset, setFileValidationResult, isMinLengthReached } =\n useContext(FileUploaderControlContext);\n\n const locale = useControlLocale();\n\n const inputRef = useRef<HTMLInputElement>(null);\n const fileDivRef = useRef<HTMLDivElement>(null);\n\n const isAsync = !!request;\n const isSingleMode = !multiple;\n\n const [isLinkVisible, setIsLinkVisible] = useState(true);\n const upload = useUpload(request, onRequestSuccess, onRequestError);\n\n const tryValidateAndUpload = useCallback(\n (files: FileUploaderAttachedFile[]) => {\n files.forEach(async (file) => {\n const validationMessage = validateBeforeUpload && (await validateBeforeUpload(file));\n\n if (!validationMessage) {\n isAsync && upload(file);\n } else {\n setFileValidationResult(file.id, FileUploaderFileValidationResult.error(validationMessage));\n }\n });\n },\n [validateBeforeUpload, isAsync, upload, setFileValidationResult],\n );\n\n const sizeClassName = useFileUploaderSize(size, {\n small: jsStyles.sizeSmall(theme),\n medium: jsStyles.sizeMedium(theme),\n large: jsStyles.sizeLarge(theme),\n });\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(theme),\n medium: jsStyles.iconMedium(theme),\n large: jsStyles.iconLarge(theme),\n });\n\n const contentInnerClass = useFileUploaderSize(size, {\n small: jsStyles.contentInnerSmall(theme),\n medium: jsStyles.contentInnerMedium(theme),\n large: jsStyles.contentInnerLarge(theme),\n });\n\n /** common part **/\n const handleChange = useCallback(\n (newFiles: FileList | null) => {\n if (!newFiles || !newFiles.length) {\n return;\n }\n\n let filesArray = Array.from(newFiles);\n\n if (isSingleMode) {\n filesArray = [filesArray[0]];\n }\n\n const attachedFiles = filesArray.map(getAttachedFile);\n\n if (isSingleMode && attachedFiles.length && files.length) {\n removeFile(files[0].id);\n }\n\n if (attachedFiles.length) {\n setFiles(attachedFiles);\n tryValidateAndUpload(attachedFiles);\n }\n },\n [tryValidateAndUpload, setFiles, isSingleMode, files, removeFile],\n );\n\n const handleDrop = useCallback(\n (event: DragEvent) => {\n if (disabled) {\n return;\n }\n\n const { dataTransfer } = event;\n if (dataTransfer) {\n if (dataTransfer.files?.length > 0) {\n handleChange(dataTransfer.files);\n }\n }\n },\n [handleChange, disabled],\n );\n\n const { isDraggable, ref: labelRef } = useDrop<HTMLLabelElement>({ onDrop: handleDrop });\n const { isDraggable: isWindowDraggable, ref: windowRef } = useDrop<Document>();\n\n if (isBrowser(globalObject)) {\n windowRef.current = globalObject.document;\n }\n\n const focus = useCallback(() => {\n keyListener.isTabPressed = true;\n inputRef.current?.focus();\n }, []);\n\n const blur = useCallback(() => {\n inputRef.current?.blur();\n }, []);\n\n const handleRemoveFile = useCallback(\n (fileId: string) => {\n const dataTransfer = new DataTransfer();\n files\n .filter((f) => f.id !== fileId)\n .forEach((file) => {\n dataTransfer.items.add(file.originalFile);\n });\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n },\n [files],\n );\n\n const handleExternalFileDeletion = useCallback(\n (fileId: string) => {\n removeFile(fileId);\n handleRemoveFile(fileId);\n },\n [handleRemoveFile, removeFile],\n );\n\n const handleReset = useCallback(() => {\n reset();\n const dataTransfer = new DataTransfer();\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n }, [reset, handleRemoveFile]);\n\n useImperativeHandle(\n ref,\n () => ({\n focus,\n blur,\n reset: handleReset,\n removeFile: handleExternalFileDeletion,\n getRootNode: () => rootNodeRef.current,\n }),\n [ref, blur, focus, handleReset, handleExternalFileDeletion],\n );\n\n const [focusedByTab, setFocusedByTab] = useState(false);\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n handleChange(event.target.files);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n onFocus?.(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocusedByTab(false);\n if (!disabled) {\n onBlur?.(e);\n }\n };\n\n const [hovered, setHovered] = useState(false);\n\n const uploadButtonClassNames = cx(\n jsStyles.uploadButton(theme),\n sizeClassName,\n focusedByTab && jsStyles.uploadButtonFocus(theme),\n disabled && jsStyles.disabled(theme),\n !disabled && hovered && jsStyles.hovered(theme),\n !!warning && jsStyles.warning(theme),\n !!error && jsStyles.error(theme),\n isDraggable && !disabled && jsStyles.dragOver(theme),\n );\n\n const canDrop = isWindowDraggable && !disabled;\n const uploadButtonWrapperClassNames = cx(canDrop && jsStyles.windowDragOver(theme));\n\n const uploadButtonIconClassNames = cx(jsStyles.icon(theme), sizeIconClass, disabled && jsStyles.iconDisabled(theme));\n\n const hasOneFile = files.length === 1;\n const hasOneFileForSingle = isSingleMode && hasOneFile && !hideFiles;\n\n const contentClassNames = cx(jsStyles.content(), hasOneFileForSingle && jsStyles.contentWithFiles());\n\n const linkClassNames = cx(\n jsStyles.link(theme),\n !disabled && hovered && jsStyles.linkHovered(theme),\n disabled && jsStyles.linkDisabled(theme),\n );\n\n useEffect(() => {\n setIsLinkVisible(hasOneFileForSingle ? !isMinLengthReached : true);\n }, [isMinLengthReached, hasOneFileForSingle]);\n\n useEffect(() => {\n if (!files || !files.length || !inputRef.current) {\n return;\n }\n\n const dataTransfer = new DataTransfer();\n files.forEach((file) => dataTransfer.items.add(file.originalFile));\n inputRef.current.files = dataTransfer.files;\n }, []);\n\n const rootNodeRef = useRef(null);\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.btnIconSizeSmall),\n medium: parseInt(theme.btnIconSizeMedium),\n large: parseInt(theme.btnIconSizeLarge),\n };\n const icon = <UploadIcon size={iconSizes[size]} />;\n\n return (\n <CommonWrapper {...props}>\n <div\n data-tid={FileUploaderDataTids.root}\n className={jsStyles.root(theme)}\n style={useMemoObject({ width })}\n ref={rootNodeRef}\n >\n {!hideFiles && !isSingleMode && !!files.length && (\n <FileUploaderFileList renderFile={renderFile} size={size} onRemove={handleRemoveFile} />\n )}\n <div className={uploadButtonWrapperClassNames}>\n <label\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n ref={labelRef}\n className={uploadButtonClassNames}\n >\n <div\n data-tid={FileUploaderDataTids.content}\n className={cx(contentClassNames, { [contentInnerClass]: !files.length || !isSingleMode })}\n >\n {isLinkVisible && (\n <span data-tid={FileUploaderDataTids.link} className={linkClassNames}>\n {hasOneFileForSingle ? locale.choosedFile : locale.chooseFile}\n </span>\n )}\n {isLinkVisible && String.fromCharCode(0xa0) /* &nbsp; */}\n <div\n className={cx(\n globalClasses.afterLinkText,\n hasOneFileForSingle ? jsStyles.afterLinkText_HasFiles(theme) : jsStyles.afterLinkText(theme),\n )}\n >\n {hasOneFileForSingle ? (\n <div ref={fileDivRef} className={jsStyles.singleFile()}>\n {renderFile(files[0], <FileUploaderFile file={files[0]} size={size} onRemove={handleRemoveFile} />)}\n </div>\n ) : (\n <>\n {locale.orDragHere}&nbsp;\n <div className={uploadButtonIconClassNames}>{icon}</div>\n </>\n )}\n </div>\n </div>\n <FocusControlWrapper onBlurWhenDisabled={() => setFocusedByTab(false)}>\n <input\n {...inputProps}\n data-tid={FileUploaderDataTids.input}\n ref={inputRef}\n tabIndex={disabled ? -1 : 0}\n type=\"file\"\n disabled={disabled}\n multiple={multiple}\n className={jsStyles.visuallyHidden()}\n onClick={stopPropagation}\n onChange={handleInputChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </FocusControlWrapper>\n </label>\n </div>\n </div>\n </CommonWrapper>\n );\n});\n\nexport interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {}\n\n/**\n * `FileUploader` — контрол для выбора пользователем файла на компьютере и отображения статуса его отправки на сервер.\n *\n * Можно использовать для синхронной отправки данных, например, в форме. Или же можно использовать в асинхронном режиме.\n */\nexport const FileUploader = withFileUploaderControlProvider<FileUploaderProps, FileUploaderRef>(\n React.memo(_FileUploader),\n);\nFileUploader.displayName = 'FileUploader';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_globalObject","_fileUtils","_Emotion","_useMemoObject","_FileUploaderControlContext","_useControlLocale","_useUpload","_useDrop3","_ThemeContext","_withFileUploaderControlProvider","_keyListener","_FileUploaderFile","_FileUploaderFileList","_CommonWrapper","_FileUploaderFileValidationResult","_useFileUploaderSize","_forwardRefAndName","_FocusControlWrapper","_UploadIcon","_FileUploader2","_excluded","stopPropagation","e","FileUploaderDataTids","exports","root","content","link","input","defaultRenderFile","file","fileNode","_FileUploader","forwardRefAndName","props","ref","_cx","theme","useContext","ThemeContext","initialFiles","disabled","error","warning","_props$multiple","multiple","_props$width","width","fileUploaderWidth","_props$hideFiles","hideFiles","onBlur","onFocus","onChange","request","validateBeforeUpload","onRequestSuccess","onRequestError","_props$size","size","_props$renderFile","renderFile","inputProps","_objectWithoutPropertiesLoose2","default","_useContext","FileUploaderControlContext","files","setFiles","removeFile","reset","setFileValidationResult","isMinLengthReached","locale","useControlLocale","inputRef","useRef","fileDivRef","isAsync","isSingleMode","_useState","useState","isLinkVisible","setIsLinkVisible","upload","useUpload","tryValidateAndUpload","useCallback","forEach","_ref","_asyncToGenerator2","_regenerator","mark","_callee","validationMessage","wrap","_callee$","_context","prev","next","t0","sent","id","FileUploaderFileValidationResult","stop","_x","apply","arguments","sizeClassName","useFileUploaderSize","small","jsStyles","sizeSmall","medium","sizeMedium","large","sizeLarge","sizeIconClass","iconSmall","iconMedium","iconLarge","contentInnerClass","contentInnerSmall","contentInnerMedium","contentInnerLarge","handleChange","newFiles","length","filesArray","Array","from","attachedFiles","map","getAttachedFile","handleDrop","event","dataTransfer","_dataTransfer$files","current","_useDrop","useDrop","onDrop","isDraggable","labelRef","_useDrop2","isWindowDraggable","windowRef","isBrowser","globalObject","document","focus","_inputRef$current","keyListener","isTabPressed","blur","_inputRef$current2","handleRemoveFile","fileId","DataTransfer","filter","f","items","add","originalFile","handleExternalFileDeletion","handleReset","useImperativeHandle","getRootNode","rootNodeRef","_useState2","focusedByTab","setFocusedByTab","handleInputChange","target","handleFocus","requestAnimationFrame","handleBlur","_useState3","hovered","setHovered","uploadButtonClassNames","cx","uploadButton","uploadButtonFocus","dragOver","canDrop","uploadButtonWrapperClassNames","windowDragOver","uploadButtonIconClassNames","icon","iconDisabled","hasOneFile","hasOneFileForSingle","contentClassNames","contentWithFiles","linkClassNames","linkHovered","linkDisabled","useEffect","iconSizes","parseInt","btnIconSizeSmall","btnIconSizeMedium","btnIconSizeLarge","createElement","UploadIcon","CommonWrapper","className","style","useMemoObject","FileUploaderFileList","onRemove","onMouseEnter","onMouseLeave","choosedFile","chooseFile","String","fromCharCode","globalClasses","afterLinkText","afterLinkText_HasFiles","singleFile","FileUploaderFile","Fragment","orDragHere","FocusControlWrapper","onBlurWhenDisabled","_extends2","tabIndex","type","visuallyHidden","onClick","FileUploader","withFileUploaderControlProvider","React","memo","displayName"],"sources":["FileUploader.tsx"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport type { FileUploaderAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { getAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { InstanceWithRootNode } from '../../lib/rootNode';\nimport { useMemoObject } from '../../hooks/useMemoObject';\nimport { FileUploaderControlContext } from '../../internal/FileUploaderControl/FileUploaderControlContext';\nimport { useControlLocale } from '../../internal/FileUploaderControl/hooks/useControlLocale';\nimport { useUpload } from '../../internal/FileUploaderControl/hooks/useUpload';\nimport { useDrop } from '../../hooks/useDrop';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';\nimport { withFileUploaderControlProvider } from '../../internal/FileUploaderControl/withFileUploaderControlProvider';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { FileUploaderFile } from '../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile';\nimport { FileUploaderFileList } from '../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FileUploaderFileValidationResult } from '../../internal/FileUploaderControl/FileUploaderFileValidationResult';\nimport { useFileUploaderSize } from '../../internal/FileUploaderControl/hooks/useFileUploaderSize';\nimport type { SizeProp } from '../../lib/types/props';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { UploadIcon } from './UploadIcon';\nimport { globalClasses, jsStyles } from './FileUploader.styles';\n\nconst stopPropagation: React.ReactEventHandler = (e) => e.stopPropagation();\n\ntype FileUploaderOverriddenProps = 'size';\n\ninterface _FileUploaderProps\n extends CommonProps,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, FileUploaderOverriddenProps> {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n /** Начальное состояние загруженных файлов */\n initialFiles?: File[];\n /** Состояние ошибки всего контрола */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает длину компонента. */\n width?: React.CSSProperties['width'];\n\n /** Задаёт размер контрола. */\n size?: SizeProp;\n\n /** Скрывает отображение файлов. */\n hideFiles?: boolean;\n\n /** Задает функцию, через которую отправляются файлы. Используется для отслеживания статуса загрузки файла.\n * @param {FileUploaderAttachedFile} file - файл, статус загрузки которого необходимо отследить. */\n request?: (file: FileUploaderAttachedFile) => Promise<void>;\n\n /** Задает функцию, которая вызывается при удачной попытке отправки через request. */\n onRequestSuccess?: (fileId: string) => void;\n\n /** Задает функцию, которая вызывается при неудачной попытке отправки через request. */\n onRequestError?: (fileId: string) => void;\n\n /** Определяет функцию валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. Чтобы вывести валидацию ошибки, промис должен вернуть строку. * */\n validateBeforeUpload?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;\n\n /** Задает функцию, которая позволяет кастомизировать файлы. Через нее можно вешать кастомные валидации на каждый файл. */\n renderFile?: (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => React.ReactNode;\n}\n\nexport interface FileUploaderRef extends InstanceWithRootNode {\n focus: () => void;\n blur: () => void;\n /** Сбрасывает выбранные файлы */\n reset: () => void;\n removeFile: (fileId: string) => void;\n}\n\nexport const FileUploaderDataTids = {\n root: 'FileUploader__root',\n content: 'FileUploader__content',\n link: 'FileUploader__link',\n input: 'FileUploader__input',\n} as const;\n\nconst defaultRenderFile = (file: FileUploaderAttachedFile, fileNode: React.ReactElement) => fileNode;\n\nconst _FileUploader = forwardRefAndName<FileUploaderRef, _FileUploaderProps>('FileUploader', (props, ref) => {\n const theme = useContext(ThemeContext);\n\n const {\n initialFiles,\n disabled,\n error,\n warning,\n multiple = false,\n width = theme.fileUploaderWidth,\n hideFiles = false,\n onBlur,\n onFocus,\n onChange,\n request,\n validateBeforeUpload,\n onRequestSuccess,\n onRequestError,\n size = 'small',\n renderFile = defaultRenderFile,\n ...inputProps\n } = props;\n\n const { files, setFiles, removeFile, reset, setFileValidationResult, isMinLengthReached } =\n useContext(FileUploaderControlContext);\n\n const locale = useControlLocale();\n\n const inputRef = useRef<HTMLInputElement>(null);\n const fileDivRef = useRef<HTMLDivElement>(null);\n\n const isAsync = !!request;\n const isSingleMode = !multiple;\n\n const [isLinkVisible, setIsLinkVisible] = useState(true);\n const upload = useUpload(request, onRequestSuccess, onRequestError);\n\n const tryValidateAndUpload = useCallback(\n (files: FileUploaderAttachedFile[]) => {\n files.forEach(async (file) => {\n const validationMessage = validateBeforeUpload && (await validateBeforeUpload(file));\n\n if (!validationMessage) {\n isAsync && upload(file);\n } else {\n setFileValidationResult(file.id, FileUploaderFileValidationResult.error(validationMessage));\n }\n });\n },\n [validateBeforeUpload, isAsync, upload, setFileValidationResult],\n );\n\n const sizeClassName = useFileUploaderSize(size, {\n small: jsStyles.sizeSmall(theme),\n medium: jsStyles.sizeMedium(theme),\n large: jsStyles.sizeLarge(theme),\n });\n\n const sizeIconClass = useFileUploaderSize(size, {\n small: jsStyles.iconSmall(theme),\n medium: jsStyles.iconMedium(theme),\n large: jsStyles.iconLarge(theme),\n });\n\n const contentInnerClass = useFileUploaderSize(size, {\n small: jsStyles.contentInnerSmall(theme),\n medium: jsStyles.contentInnerMedium(theme),\n large: jsStyles.contentInnerLarge(theme),\n });\n\n /** common part **/\n const handleChange = useCallback(\n (newFiles: FileList | null) => {\n if (!newFiles || !newFiles.length) {\n return;\n }\n\n let filesArray = Array.from(newFiles);\n\n if (isSingleMode) {\n filesArray = [filesArray[0]];\n }\n\n const attachedFiles = filesArray.map(getAttachedFile);\n\n if (isSingleMode && attachedFiles.length && files.length) {\n removeFile(files[0].id);\n }\n\n if (attachedFiles.length) {\n setFiles(attachedFiles);\n tryValidateAndUpload(attachedFiles);\n }\n },\n [tryValidateAndUpload, setFiles, isSingleMode, files, removeFile],\n );\n\n const handleDrop = useCallback(\n (event: DragEvent) => {\n if (disabled) {\n return;\n }\n\n const { dataTransfer } = event;\n if (dataTransfer) {\n if (dataTransfer.files?.length > 0) {\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n handleChange(dataTransfer.files);\n }\n }\n },\n [handleChange, disabled],\n );\n\n const { isDraggable, ref: labelRef } = useDrop<HTMLLabelElement>({ onDrop: handleDrop });\n const { isDraggable: isWindowDraggable, ref: windowRef } = useDrop<Document>();\n\n if (isBrowser(globalObject)) {\n windowRef.current = globalObject.document;\n }\n\n const focus = useCallback(() => {\n keyListener.isTabPressed = true;\n inputRef.current?.focus();\n }, []);\n\n const blur = useCallback(() => {\n inputRef.current?.blur();\n }, []);\n\n const handleRemoveFile = useCallback(\n (fileId: string) => {\n const dataTransfer = new DataTransfer();\n files\n .filter((f) => f.id !== fileId)\n .forEach((file) => {\n dataTransfer.items.add(file.originalFile);\n });\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n },\n [files],\n );\n\n const handleExternalFileDeletion = useCallback(\n (fileId: string) => {\n removeFile(fileId);\n handleRemoveFile(fileId);\n },\n [handleRemoveFile, removeFile],\n );\n\n const handleReset = useCallback(() => {\n reset();\n const dataTransfer = new DataTransfer();\n inputRef.current && (inputRef.current.files = dataTransfer.files);\n }, [reset, handleRemoveFile]);\n\n useImperativeHandle(\n ref,\n () => ({\n focus,\n blur,\n reset: handleReset,\n removeFile: handleExternalFileDeletion,\n getRootNode: () => rootNodeRef.current,\n }),\n [ref, blur, focus, handleReset, handleExternalFileDeletion],\n );\n\n const [focusedByTab, setFocusedByTab] = useState(false);\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n handleChange(event.target.files);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n onFocus?.(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocusedByTab(false);\n if (!disabled) {\n onBlur?.(e);\n }\n };\n\n const [hovered, setHovered] = useState(false);\n\n const uploadButtonClassNames = cx(\n jsStyles.uploadButton(theme),\n sizeClassName,\n focusedByTab && jsStyles.uploadButtonFocus(theme),\n disabled && jsStyles.disabled(theme),\n !disabled && hovered && jsStyles.hovered(theme),\n !!warning && jsStyles.warning(theme),\n !!error && jsStyles.error(theme),\n isDraggable && !disabled && jsStyles.dragOver(theme),\n );\n\n const canDrop = isWindowDraggable && !disabled;\n const uploadButtonWrapperClassNames = cx(canDrop && jsStyles.windowDragOver(theme));\n\n const uploadButtonIconClassNames = cx(jsStyles.icon(theme), sizeIconClass, disabled && jsStyles.iconDisabled(theme));\n\n const hasOneFile = files.length === 1;\n const hasOneFileForSingle = isSingleMode && hasOneFile && !hideFiles;\n\n const contentClassNames = cx(jsStyles.content(), hasOneFileForSingle && jsStyles.contentWithFiles());\n\n const linkClassNames = cx(\n jsStyles.link(theme),\n !disabled && hovered && jsStyles.linkHovered(theme),\n disabled && jsStyles.linkDisabled(theme),\n );\n\n useEffect(() => {\n setIsLinkVisible(hasOneFileForSingle ? !isMinLengthReached : true);\n }, [isMinLengthReached, hasOneFileForSingle]);\n\n useEffect(() => {\n if (!files || !files.length || !inputRef.current) {\n return;\n }\n\n const dataTransfer = new DataTransfer();\n files.forEach((file) => dataTransfer.items.add(file.originalFile));\n inputRef.current.files = dataTransfer.files;\n }, []);\n\n const rootNodeRef = useRef(null);\n\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(theme.btnIconSizeSmall),\n medium: parseInt(theme.btnIconSizeMedium),\n large: parseInt(theme.btnIconSizeLarge),\n };\n const icon = <UploadIcon size={iconSizes[size]} />;\n\n return (\n <CommonWrapper {...props}>\n <div\n data-tid={FileUploaderDataTids.root}\n className={jsStyles.root(theme)}\n style={useMemoObject({ width })}\n ref={rootNodeRef}\n >\n {!hideFiles && !isSingleMode && !!files.length && (\n <FileUploaderFileList renderFile={renderFile} size={size} onRemove={handleRemoveFile} />\n )}\n <div className={uploadButtonWrapperClassNames}>\n <label\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n ref={labelRef}\n className={uploadButtonClassNames}\n >\n <div\n data-tid={FileUploaderDataTids.content}\n className={cx(contentClassNames, { [contentInnerClass]: !files.length || !isSingleMode })}\n >\n {isLinkVisible && (\n <span data-tid={FileUploaderDataTids.link} className={linkClassNames}>\n {hasOneFileForSingle ? locale.choosedFile : locale.chooseFile}\n </span>\n )}\n {isLinkVisible && String.fromCharCode(0xa0) /* &nbsp; */}\n <div\n className={cx(\n globalClasses.afterLinkText,\n hasOneFileForSingle ? jsStyles.afterLinkText_HasFiles(theme) : jsStyles.afterLinkText(theme),\n )}\n >\n {hasOneFileForSingle ? (\n <div ref={fileDivRef} className={jsStyles.singleFile()}>\n {renderFile(files[0], <FileUploaderFile file={files[0]} size={size} onRemove={handleRemoveFile} />)}\n </div>\n ) : (\n <>\n {locale.orDragHere}&nbsp;\n <div className={uploadButtonIconClassNames}>{icon}</div>\n </>\n )}\n </div>\n </div>\n <FocusControlWrapper onBlurWhenDisabled={() => setFocusedByTab(false)}>\n <input\n {...inputProps}\n data-tid={FileUploaderDataTids.input}\n ref={inputRef}\n tabIndex={disabled ? -1 : 0}\n type=\"file\"\n disabled={disabled}\n multiple={multiple}\n className={jsStyles.visuallyHidden()}\n onClick={stopPropagation}\n onChange={handleInputChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </FocusControlWrapper>\n </label>\n </div>\n </div>\n </CommonWrapper>\n );\n});\n\nexport interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {}\n\n/**\n * `FileUploader` — контрол для выбора пользователем файла на компьютере и отображения статуса его отправки на сервер.\n *\n * Можно использовать для синхронной отправки данных, например, в форме. Или же можно использовать в асинхронном режиме.\n */\nexport const FileUploader = withFileUploaderControlProvider<FileUploaderProps, FileUploaderRef>(\n React.memo(_FileUploader),\n);\nFileUploader.displayName = 'FileUploader';\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.getButtonCorners = exports.GroupDataTids = exports.Group = void 0;var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react = _interopRequireDefault(require("react"));
2
2
 
3
- var _client = require("../../lib/client");
4
3
 
5
4
  var _CommonWrapper = require("../../internal/CommonWrapper");
6
5
  var _Emotion = require("../../lib/theming/Emotion");
@@ -163,8 +162,7 @@ Group = exports.Group = (0, _rootNode.rootNode)(_class = (_Group = /*#__PURE__*/
163
162
  _react.default.createElement("div", {
164
163
  className: (0, _Emotion.cx)((_cx = {}, _cx[
165
164
  _Group2.styles.fixed()] = !isWidthInPercent, _cx[
166
- _Group2.styles.stretch()] = isWidthInPercent, _cx[
167
- _Group2.styles.stretchFallback()] = Boolean(isWidthInPercent && _this.props.width && (_client.isIE11 || _client.isEdge)), _cx)
165
+ _Group2.styles.stretch()] = isWidthInPercent, _cx)
168
166
  ) }, /*#__PURE__*/
169
167
 
170
168
  _react.default.createElement("div", {