@skbkontur/react-ui 5.1.6 → 5.2.0

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 (502) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/cjs/components/Calendar/CalendarDay.js +18 -2
  3. package/cjs/components/Calendar/CalendarDay.js.map +1 -1
  4. package/cjs/components/Calendar/DayCellView.js +7 -15
  5. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  6. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +2 -8
  7. package/cjs/components/CurrencyLabel/CurrencyLabel.js +19 -15
  8. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  9. package/cjs/components/DateInput/DateInput.d.ts +1 -0
  10. package/cjs/components/DateInput/DateInput.js +25 -5
  11. package/cjs/components/DateInput/DateInput.js.map +1 -1
  12. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  13. package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
  14. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  15. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +1 -1
  16. package/cjs/components/DateRangePicker/DateRangePicker.js +19 -15
  17. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  18. package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  19. package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
  20. package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
  21. package/cjs/components/Dropdown/Dropdown.d.ts +2 -4
  22. package/cjs/components/FxInput/FxInput.d.ts +1 -1
  23. package/cjs/components/FxInput/FxInput.js.map +1 -1
  24. package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -6
  25. package/cjs/components/MenuFooter/MenuFooter.js +47 -40
  26. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  27. package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -6
  28. package/cjs/components/MenuHeader/MenuHeader.js +49 -41
  29. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  30. package/cjs/components/MenuItem/MenuItem.js +3 -0
  31. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  32. package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -0
  33. package/cjs/components/MenuItem/MenuItem.styles.js +18 -13
  34. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  35. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +1 -6
  36. package/cjs/components/MenuSeparator/MenuSeparator.js +24 -22
  37. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  38. package/cjs/components/MiniModal/MiniModal.js +3 -3
  39. package/cjs/components/MiniModal/MiniModal.js.map +1 -1
  40. package/cjs/components/Modal/Modal.d.ts +20 -4
  41. package/cjs/components/Modal/Modal.js +79 -5
  42. package/cjs/components/Modal/Modal.js.map +1 -1
  43. package/cjs/components/Modal/Modal.styles.d.ts +19 -0
  44. package/cjs/components/Modal/Modal.styles.js +172 -42
  45. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  46. package/cjs/components/Modal/ModalBody.js +8 -1
  47. package/cjs/components/Modal/ModalBody.js.map +1 -1
  48. package/cjs/components/Modal/ModalContext.d.ts +1 -0
  49. package/cjs/components/Modal/ModalContext.js +1 -0
  50. package/cjs/components/Modal/ModalContext.js.map +1 -1
  51. package/cjs/components/Modal/ModalFooter.js +17 -2
  52. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  53. package/cjs/components/Modal/ModalHeader.js +21 -1
  54. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  55. package/cjs/components/RadioGroup/RadioGroup.d.ts +1 -0
  56. package/cjs/components/RadioGroup/RadioGroup.js +18 -1
  57. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  58. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  59. package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
  60. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  61. package/cjs/components/Select/Select.d.ts +3 -0
  62. package/cjs/components/Select/Select.js +4 -1
  63. package/cjs/components/Select/Select.js.map +1 -1
  64. package/cjs/components/SidePage/SidePage.d.ts +3 -1
  65. package/cjs/components/SidePage/SidePage.js +11 -5
  66. package/cjs/components/SidePage/SidePage.js.map +1 -1
  67. package/cjs/components/SidePage/SidePage.styles.d.ts +0 -1
  68. package/cjs/components/SidePage/SidePage.styles.js +51 -57
  69. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  70. package/cjs/components/Sticky/Sticky.js +1 -1
  71. package/cjs/components/Sticky/Sticky.js.map +1 -1
  72. package/cjs/components/Toast/Toast.d.ts +5 -5
  73. package/cjs/components/Toast/Toast.js +2 -2
  74. package/cjs/components/Toast/Toast.js.map +1 -1
  75. package/cjs/components/Toast/ToastStatic.d.ts +3 -2
  76. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  77. package/cjs/components/Toast/ToastView.d.ts +1 -1
  78. package/cjs/components/Toast/ToastView.js.map +1 -1
  79. package/cjs/internal/DateSelect/DateSelect.js +13 -2
  80. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  81. package/cjs/internal/Popup/Popup.d.ts +1 -0
  82. package/cjs/internal/Popup/Popup.js +11 -1
  83. package/cjs/internal/Popup/Popup.js.map +1 -1
  84. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  85. package/cjs/internal/themes/BasicTheme.d.ts +4 -0
  86. package/cjs/internal/themes/BasicTheme.js +8 -2
  87. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  88. package/cjs/internal/themes/DarkTheme5_2.d.ts +1 -0
  89. package/cjs/internal/themes/DarkTheme5_2.js +29 -0
  90. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -0
  91. package/cjs/internal/themes/LightTheme5_2.d.ts +1 -0
  92. package/cjs/internal/themes/LightTheme5_2.js +27 -0
  93. package/cjs/internal/themes/LightTheme5_2.js.map +1 -0
  94. package/cjs/lib/ModalStack.d.ts +7 -1
  95. package/cjs/lib/ModalStack.js.map +1 -1
  96. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  97. package/cjs/lib/date/InternalDateGetter.js +8 -1
  98. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  99. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +3 -0
  100. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +3 -0
  101. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +7 -1
  102. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  103. package/cjs/lib/getMenuPositions.d.ts +21 -1
  104. package/cjs/lib/getMenuPositions.js +45 -8
  105. package/cjs/lib/getMenuPositions.js.map +1 -1
  106. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  107. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  108. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  109. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  110. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  111. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  112. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  113. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  114. package/components/Calendar/CalendarDay/CalendarDay.js +9 -2
  115. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  116. package/components/Calendar/DayCellView/DayCellView.js +6 -10
  117. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  118. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +8 -6
  119. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  120. package/components/CurrencyLabel/CurrencyLabel.d.ts +2 -8
  121. package/components/DateInput/DateInput/DateInput.js +13 -7
  122. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  123. package/components/DateInput/DateInput.d.ts +1 -0
  124. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  125. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  126. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  127. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +10 -11
  128. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  129. package/components/DateRangePicker/DateRangePicker.d.ts +1 -1
  130. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
  131. package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
  132. package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
  133. package/components/Dropdown/Dropdown.d.ts +2 -4
  134. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  135. package/components/FxInput/FxInput.d.ts +1 -1
  136. package/components/MenuFooter/MenuFooter/MenuFooter.js +7 -4
  137. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  138. package/components/MenuFooter/MenuFooter.d.ts +1 -6
  139. package/components/MenuHeader/MenuHeader/MenuHeader.js +7 -4
  140. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  141. package/components/MenuHeader/MenuHeader.d.ts +1 -6
  142. package/components/MenuItem/MenuItem/MenuItem.js +3 -1
  143. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  144. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +16 -13
  145. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  146. package/components/MenuItem/MenuItem.styles.d.ts +1 -0
  147. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +4 -4
  148. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  149. package/components/MenuSeparator/MenuSeparator.d.ts +1 -6
  150. package/components/MiniModal/MiniModal/MiniModal.js +3 -1
  151. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  152. package/components/Modal/Modal/Modal.js +51 -11
  153. package/components/Modal/Modal/Modal.js.map +1 -1
  154. package/components/Modal/Modal.d.ts +20 -4
  155. package/components/Modal/Modal.styles/Modal.styles.js +98 -41
  156. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  157. package/components/Modal/Modal.styles.d.ts +19 -0
  158. package/components/Modal/ModalBody/ModalBody.js +5 -1
  159. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  160. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  161. package/components/Modal/ModalContext.d.ts +1 -0
  162. package/components/Modal/ModalFooter/ModalFooter.js +14 -2
  163. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  164. package/components/Modal/ModalHeader/ModalHeader.js +12 -2
  165. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  166. package/components/RadioGroup/RadioGroup/RadioGroup.js +23 -17
  167. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  168. package/components/RadioGroup/RadioGroup.d.ts +1 -0
  169. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
  170. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  171. package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  172. package/components/Select/Select/Select.js +3 -2
  173. package/components/Select/Select/Select.js.map +1 -1
  174. package/components/Select/Select.d.ts +3 -0
  175. package/components/SidePage/SidePage/SidePage.js +15 -8
  176. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  177. package/components/SidePage/SidePage.d.ts +3 -1
  178. package/components/SidePage/SidePage.styles/SidePage.styles.js +51 -54
  179. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  180. package/components/SidePage/SidePage.styles.d.ts +0 -1
  181. package/components/Sticky/Sticky/Sticky.js +1 -1
  182. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  183. package/components/Toast/Toast/Toast.js +2 -2
  184. package/components/Toast/Toast/Toast.js.map +1 -1
  185. package/components/Toast/Toast.d.ts +5 -5
  186. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  187. package/components/Toast/ToastStatic.d.ts +3 -2
  188. package/components/Toast/ToastView/ToastView.js.map +1 -1
  189. package/components/Toast/ToastView.d.ts +1 -1
  190. package/internal/DateSelect/DateSelect/DateSelect.js +2 -0
  191. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  192. package/internal/Popup/Popup/Popup.js +12 -1
  193. package/internal/Popup/Popup/Popup.js.map +1 -1
  194. package/internal/Popup/Popup.d.ts +1 -0
  195. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  196. package/internal/themes/BasicTheme/BasicTheme.js +8 -0
  197. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  198. package/internal/themes/BasicTheme.d.ts +4 -0
  199. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +27 -0
  200. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -0
  201. package/internal/themes/DarkTheme5_2/package.json +6 -0
  202. package/internal/themes/DarkTheme5_2.d.ts +1 -0
  203. package/internal/themes/LightTheme5_2/LightTheme5_2.js +27 -0
  204. package/internal/themes/LightTheme5_2/LightTheme5_2.js.map +1 -0
  205. package/internal/themes/LightTheme5_2/package.json +6 -0
  206. package/internal/themes/LightTheme5_2.d.ts +1 -0
  207. package/lib/ModalStack/ModalStack.js.map +1 -1
  208. package/lib/ModalStack.d.ts +7 -1
  209. package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
  210. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  211. package/lib/date/InternalDateGetter.d.ts +1 -1
  212. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +3 -0
  213. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +4 -1
  214. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  215. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +3 -0
  216. package/lib/getMenuPositions/getMenuPositions.js +33 -4
  217. package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
  218. package/lib/getMenuPositions.d.ts +21 -1
  219. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  220. package/lib/theming/ThemeVersions.d.ts +1 -1
  221. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  222. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  223. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  224. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  225. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  226. package/lib/theming/themes/LightTheme.d.ts +1 -0
  227. package/package.json +10 -10
  228. package/cjs/components/Autocomplete/__creevey__/Autocomplete.creevey.mts +0 -239
  229. package/cjs/components/Autocomplete/__docs__/Autocomplete.mdx +0 -26
  230. package/cjs/components/Button/__creevey__/Button.creevey.mts +0 -251
  231. package/cjs/components/Button/__docs__/Button.mdx +0 -27
  232. package/cjs/components/Calendar/__creevey__/Calendar.creevey.mts +0 -74
  233. package/cjs/components/Calendar/__docs__/Calendar.mdx +0 -27
  234. package/cjs/components/Calendar/__docs__/CalendarDay.mdx +0 -23
  235. package/cjs/components/Center/__docs__/Center.mdx +0 -23
  236. package/cjs/components/Checkbox/__creevey__/Checkbox.creevey.mts +0 -243
  237. package/cjs/components/Checkbox/__docs__/Checkbox.mdx +0 -27
  238. package/cjs/components/ComboBox/__creevey__/ComboBox.creevey.mts +0 -541
  239. package/cjs/components/ComboBox/__docs__/ComboBox.mdx +0 -27
  240. package/cjs/components/CurrencyInput/__creevey__/CurrencyInput.creevey.mts +0 -81
  241. package/cjs/components/CurrencyInput/__docs__/CurrencyInput.mdx +0 -27
  242. package/cjs/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +0 -23
  243. package/cjs/components/DateInput/__creevey__/DateInput.creevey.mts +0 -156
  244. package/cjs/components/DateInput/__docs__/DateInput.mdx +0 -23
  245. package/cjs/components/DatePicker/__creevey__/DatePicker.creevey.mts +0 -209
  246. package/cjs/components/DatePicker/__docs__/DatePicker.mdx +0 -27
  247. package/cjs/components/DateRangePicker/__creevey__/DateRangePicker.creevey.mts +0 -155
  248. package/cjs/components/DateRangePicker/__docs__/DateRangePicker.mdx +0 -123
  249. package/cjs/components/Dropdown/__creevey__/Dropdown.creevey.mts +0 -184
  250. package/cjs/components/Dropdown/__docs__/Dropdown.mdx +0 -27
  251. package/cjs/components/DropdownMenu/__creevey__/DropdownMenu.creevey.mts +0 -263
  252. package/cjs/components/DropdownMenu/__docs__/DropdownMenu.mdx +0 -27
  253. package/cjs/components/FileUploader/__docs__/FileUploader.mdx +0 -27
  254. package/cjs/components/FxInput/__creevey__/FxInput.creevey.mts +0 -21
  255. package/cjs/components/FxInput/__docs__/FxInput.mdx +0 -27
  256. package/cjs/components/Gapped/__docs__/Gapped.mdx +0 -23
  257. package/cjs/components/GlobalLoader/__docs__/GlobalLoader.mdx +0 -27
  258. package/cjs/components/Group/__creevey__/Group.creevey.mts +0 -19
  259. package/cjs/components/Group/__docs__/Group.mdx +0 -23
  260. package/cjs/components/Hint/__creevey__/Hint.creevey.mts +0 -68
  261. package/cjs/components/Hint/__docs__/Hint.mdx +0 -28
  262. package/cjs/components/Input/__creevey__/Input.creevey.mts +0 -239
  263. package/cjs/components/Input/__docs__/Input.mdx +0 -27
  264. package/cjs/components/Kebab/__creevey__/Kebab.creevey.mts +0 -147
  265. package/cjs/components/Kebab/__docs__/Kebab.mdx +0 -27
  266. package/cjs/components/Link/__creevey__/Link.creevey.mts +0 -162
  267. package/cjs/components/Link/__docs__/Link.mdx +0 -27
  268. package/cjs/components/Loader/__creevey__/Loader.creevey.mts +0 -35
  269. package/cjs/components/Loader/__docs__/Loader.mdx +0 -23
  270. package/cjs/components/MaskedInput/__creevey__/MaskedInput.creevey.mts +0 -216
  271. package/cjs/components/MaskedInput/__docs__/MaskedInput.mdx +0 -27
  272. package/cjs/components/MenuFooter/__docs__/MenuFooter.mdx +0 -23
  273. package/cjs/components/MenuHeader/__docs__/MenuHeader.mdx +0 -23
  274. package/cjs/components/MenuItem/__docs__/MenuItem.mdx +0 -23
  275. package/cjs/components/MenuSeparator/__docs__/MenuSeparator.mdx +0 -23
  276. package/cjs/components/MiniModal/__docs__/MiniModal.mdx +0 -27
  277. package/cjs/components/MiniModal/__docs__/MiniModalBody.mdx +0 -17
  278. package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +0 -17
  279. package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +0 -18
  280. package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +0 -11
  281. package/cjs/components/Modal/__creevey__/Modal.creevey.mts +0 -295
  282. package/cjs/components/Modal/__docs__/Modal.mdx +0 -27
  283. package/cjs/components/Modal/__docs__/ModalBody.mdx +0 -15
  284. package/cjs/components/Modal/__docs__/ModalFooter.mdx +0 -15
  285. package/cjs/components/Modal/__docs__/ModalHeader.mdx +0 -15
  286. package/cjs/components/Modal/__docs__/ModalSeparator.mdx +0 -15
  287. package/cjs/components/Paging/__creevey__/Paging.creevey.mts +0 -97
  288. package/cjs/components/Paging/__docs__/Paging.mdx +0 -27
  289. package/cjs/components/PasswordInput/__creevey__/PasswordInput.creevey.mts +0 -46
  290. package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +0 -27
  291. package/cjs/components/Radio/__creevey__/Radio.creevey.mts +0 -28
  292. package/cjs/components/Radio/__docs__/Radio.mdx +0 -27
  293. package/cjs/components/RadioGroup/__creevey__/RadioGroup.creevey.mts +0 -86
  294. package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +0 -27
  295. package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +0 -96
  296. package/cjs/components/ScrollContainer/__creevey__/ScrollContainer.creevey.mts +0 -247
  297. package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +0 -23
  298. package/cjs/components/Select/__creevey__/Select.creevey.mts +0 -293
  299. package/cjs/components/Select/__docs__/Select.mdx +0 -27
  300. package/cjs/components/SidePage/__creevey__/SidePage.creevey.mts +0 -421
  301. package/cjs/components/SidePage/__docs__/SidePage.mdx +0 -27
  302. package/cjs/components/SidePage/__docs__/SidePageBody.mdx +0 -16
  303. package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +0 -15
  304. package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +0 -15
  305. package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +0 -15
  306. package/cjs/components/SingleToast/__docs__/SingleToast.mdx +0 -27
  307. package/cjs/components/Spinner/__docs__/Spinner.mdx +0 -27
  308. package/cjs/components/Sticky/__creevey__/Sticky.creevey.mts +0 -98
  309. package/cjs/components/Sticky/__docs__/Sticky.mdx +0 -23
  310. package/cjs/components/Switcher/__creevey__/Switcher.creevey.mts +0 -24
  311. package/cjs/components/Switcher/__docs__/Switcher.mdx +0 -27
  312. package/cjs/components/Tabs/__creevey__/Tabs.creevey.mts +0 -239
  313. package/cjs/components/Tabs/__docs__/Tab.mdx +0 -27
  314. package/cjs/components/Tabs/__docs__/Tabs.mdx +0 -27
  315. package/cjs/components/Textarea/__creevey__/Textarea.creevey.mts +0 -177
  316. package/cjs/components/Textarea/__docs__/Textarea.mdx +0 -27
  317. package/cjs/components/Toast/__creevey__/Toast.creevey.mts +0 -77
  318. package/cjs/components/Toast/__docs__/Toast.mdx +0 -27
  319. package/cjs/components/Toggle/__creevey__/Toggle.creevey.mts +0 -89
  320. package/cjs/components/Toggle/__docs__/Toggle.mdx +0 -27
  321. package/cjs/components/Token/__docs__/Token.mdx +0 -27
  322. package/cjs/components/TokenInput/__creevey__/TokenInput.creevey.mts +0 -442
  323. package/cjs/components/TokenInput/__docs__/TokenInput.mdx +0 -27
  324. package/cjs/components/Tooltip/__creevey__/Tooltip.creevey.mts +0 -533
  325. package/cjs/components/Tooltip/__docs__/Tooltip.mdx +0 -27
  326. package/cjs/components/TooltipMenu/__creevey__/TooltipMenu.creevey.mts +0 -131
  327. package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +0 -23
  328. package/cjs/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.mts +0 -44
  329. package/cjs/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.mts +0 -48
  330. package/cjs/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.mts +0 -30
  331. package/cjs/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.mts +0 -25
  332. package/cjs/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.mts +0 -83
  333. package/cjs/internal/Menu/__creevey__/Menu.creevey.mts +0 -90
  334. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +0 -7
  335. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js +0 -89
  336. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +0 -1
  337. package/cjs/internal/PopupMenu/__creevey__/PopupMenu.creevey.mts +0 -37
  338. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +0 -36
  339. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +0 -4
  340. package/cjs/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.mts +0 -68
  341. package/cjs/internal/ZIndex/__creevey__/ZIndex.creevey.mts +0 -228
  342. package/components/Autocomplete/__creevey__/Autocomplete.creevey.d.mts +0 -1
  343. package/components/Autocomplete/__creevey__/Autocomplete.creevey.mts +0 -239
  344. package/components/Autocomplete/__docs__/Autocomplete.mdx +0 -26
  345. package/components/Button/__creevey__/Button.creevey.d.mts +0 -1
  346. package/components/Button/__creevey__/Button.creevey.mts +0 -251
  347. package/components/Button/__docs__/Button.mdx +0 -27
  348. package/components/Calendar/__creevey__/Calendar.creevey.d.mts +0 -1
  349. package/components/Calendar/__creevey__/Calendar.creevey.mts +0 -74
  350. package/components/Calendar/__docs__/Calendar.mdx +0 -27
  351. package/components/Calendar/__docs__/CalendarDay.mdx +0 -23
  352. package/components/Center/__docs__/Center.mdx +0 -23
  353. package/components/Checkbox/__creevey__/Checkbox.creevey.d.mts +0 -1
  354. package/components/Checkbox/__creevey__/Checkbox.creevey.mts +0 -243
  355. package/components/Checkbox/__docs__/Checkbox.mdx +0 -27
  356. package/components/ComboBox/__creevey__/ComboBox.creevey.d.mts +0 -1
  357. package/components/ComboBox/__creevey__/ComboBox.creevey.mts +0 -541
  358. package/components/ComboBox/__docs__/ComboBox.mdx +0 -27
  359. package/components/CurrencyInput/__creevey__/CurrencyInput.creevey.d.mts +0 -1
  360. package/components/CurrencyInput/__creevey__/CurrencyInput.creevey.mts +0 -81
  361. package/components/CurrencyInput/__docs__/CurrencyInput.mdx +0 -27
  362. package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +0 -23
  363. package/components/DateInput/__creevey__/DateInput.creevey.d.mts +0 -1
  364. package/components/DateInput/__creevey__/DateInput.creevey.mts +0 -156
  365. package/components/DateInput/__docs__/DateInput.mdx +0 -23
  366. package/components/DatePicker/__creevey__/DatePicker.creevey.d.mts +0 -1
  367. package/components/DatePicker/__creevey__/DatePicker.creevey.mts +0 -209
  368. package/components/DatePicker/__docs__/DatePicker.mdx +0 -27
  369. package/components/DateRangePicker/__creevey__/DateRangePicker.creevey.d.mts +0 -1
  370. package/components/DateRangePicker/__creevey__/DateRangePicker.creevey.mts +0 -155
  371. package/components/DateRangePicker/__docs__/DateRangePicker.mdx +0 -123
  372. package/components/Dropdown/__creevey__/Dropdown.creevey.d.mts +0 -1
  373. package/components/Dropdown/__creevey__/Dropdown.creevey.mts +0 -184
  374. package/components/Dropdown/__docs__/Dropdown.mdx +0 -27
  375. package/components/DropdownMenu/__creevey__/DropdownMenu.creevey.d.mts +0 -1
  376. package/components/DropdownMenu/__creevey__/DropdownMenu.creevey.mts +0 -263
  377. package/components/DropdownMenu/__docs__/DropdownMenu.mdx +0 -27
  378. package/components/FileUploader/__docs__/FileUploader.mdx +0 -27
  379. package/components/FxInput/__creevey__/FxInput.creevey.d.mts +0 -1
  380. package/components/FxInput/__creevey__/FxInput.creevey.mts +0 -21
  381. package/components/FxInput/__docs__/FxInput.mdx +0 -27
  382. package/components/Gapped/__docs__/Gapped.mdx +0 -23
  383. package/components/GlobalLoader/__docs__/GlobalLoader.mdx +0 -27
  384. package/components/Group/__creevey__/Group.creevey.d.mts +0 -1
  385. package/components/Group/__creevey__/Group.creevey.mts +0 -19
  386. package/components/Group/__docs__/Group.mdx +0 -23
  387. package/components/Hint/__creevey__/Hint.creevey.d.mts +0 -1
  388. package/components/Hint/__creevey__/Hint.creevey.mts +0 -68
  389. package/components/Hint/__docs__/Hint.mdx +0 -28
  390. package/components/Input/__creevey__/Input.creevey.d.mts +0 -1
  391. package/components/Input/__creevey__/Input.creevey.mts +0 -239
  392. package/components/Input/__docs__/Input.mdx +0 -27
  393. package/components/Kebab/__creevey__/Kebab.creevey.d.mts +0 -1
  394. package/components/Kebab/__creevey__/Kebab.creevey.mts +0 -147
  395. package/components/Kebab/__docs__/Kebab.mdx +0 -27
  396. package/components/Link/__creevey__/Link.creevey.d.mts +0 -1
  397. package/components/Link/__creevey__/Link.creevey.mts +0 -162
  398. package/components/Link/__docs__/Link.mdx +0 -27
  399. package/components/Loader/__creevey__/Loader.creevey.d.mts +0 -1
  400. package/components/Loader/__creevey__/Loader.creevey.mts +0 -35
  401. package/components/Loader/__docs__/Loader.mdx +0 -23
  402. package/components/MaskedInput/__creevey__/MaskedInput.creevey.d.mts +0 -1
  403. package/components/MaskedInput/__creevey__/MaskedInput.creevey.mts +0 -216
  404. package/components/MaskedInput/__docs__/MaskedInput.mdx +0 -27
  405. package/components/MenuFooter/__docs__/MenuFooter.mdx +0 -23
  406. package/components/MenuHeader/__docs__/MenuHeader.mdx +0 -23
  407. package/components/MenuItem/__docs__/MenuItem.mdx +0 -23
  408. package/components/MenuSeparator/__docs__/MenuSeparator.mdx +0 -23
  409. package/components/MiniModal/__docs__/MiniModal.mdx +0 -27
  410. package/components/MiniModal/__docs__/MiniModalBody.mdx +0 -17
  411. package/components/MiniModal/__docs__/MiniModalFooter.mdx +0 -17
  412. package/components/MiniModal/__docs__/MiniModalHeader.mdx +0 -18
  413. package/components/MiniModal/__docs__/MiniModalIndent.mdx +0 -11
  414. package/components/Modal/__creevey__/Modal.creevey.d.mts +0 -1
  415. package/components/Modal/__creevey__/Modal.creevey.mts +0 -295
  416. package/components/Modal/__docs__/Modal.mdx +0 -27
  417. package/components/Modal/__docs__/ModalBody.mdx +0 -15
  418. package/components/Modal/__docs__/ModalFooter.mdx +0 -15
  419. package/components/Modal/__docs__/ModalHeader.mdx +0 -15
  420. package/components/Modal/__docs__/ModalSeparator.mdx +0 -15
  421. package/components/Paging/__creevey__/Paging.creevey.d.mts +0 -1
  422. package/components/Paging/__creevey__/Paging.creevey.mts +0 -97
  423. package/components/Paging/__docs__/Paging.mdx +0 -27
  424. package/components/PasswordInput/__creevey__/PasswordInput.creevey.d.mts +0 -1
  425. package/components/PasswordInput/__creevey__/PasswordInput.creevey.mts +0 -46
  426. package/components/PasswordInput/__docs__/PasswordInput.mdx +0 -27
  427. package/components/Radio/__creevey__/Radio.creevey.d.mts +0 -1
  428. package/components/Radio/__creevey__/Radio.creevey.mts +0 -28
  429. package/components/Radio/__docs__/Radio.mdx +0 -27
  430. package/components/RadioGroup/__creevey__/RadioGroup.creevey.d.mts +0 -1
  431. package/components/RadioGroup/__creevey__/RadioGroup.creevey.mts +0 -86
  432. package/components/RadioGroup/__docs__/RadioGroup.mdx +0 -27
  433. package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +0 -96
  434. package/components/ScrollContainer/__creevey__/ScrollContainer.creevey.d.mts +0 -1
  435. package/components/ScrollContainer/__creevey__/ScrollContainer.creevey.mts +0 -247
  436. package/components/ScrollContainer/__docs__/ScrollContainer.mdx +0 -23
  437. package/components/Select/__creevey__/Select.creevey.d.mts +0 -1
  438. package/components/Select/__creevey__/Select.creevey.mts +0 -293
  439. package/components/Select/__docs__/Select.mdx +0 -27
  440. package/components/SidePage/__creevey__/SidePage.creevey.d.mts +0 -1
  441. package/components/SidePage/__creevey__/SidePage.creevey.mts +0 -421
  442. package/components/SidePage/__docs__/SidePage.mdx +0 -27
  443. package/components/SidePage/__docs__/SidePageBody.mdx +0 -16
  444. package/components/SidePage/__docs__/SidePageContainer.mdx +0 -15
  445. package/components/SidePage/__docs__/SidePageFooter.mdx +0 -15
  446. package/components/SidePage/__docs__/SidePageHeader.mdx +0 -15
  447. package/components/SingleToast/__docs__/SingleToast.mdx +0 -27
  448. package/components/Spinner/__docs__/Spinner.mdx +0 -27
  449. package/components/Sticky/__creevey__/Sticky.creevey.d.mts +0 -1
  450. package/components/Sticky/__creevey__/Sticky.creevey.mts +0 -98
  451. package/components/Sticky/__docs__/Sticky.mdx +0 -23
  452. package/components/Switcher/__creevey__/Switcher.creevey.d.mts +0 -1
  453. package/components/Switcher/__creevey__/Switcher.creevey.mts +0 -24
  454. package/components/Switcher/__docs__/Switcher.mdx +0 -27
  455. package/components/Tabs/__creevey__/Tabs.creevey.d.mts +0 -1
  456. package/components/Tabs/__creevey__/Tabs.creevey.mts +0 -239
  457. package/components/Tabs/__docs__/Tab.mdx +0 -27
  458. package/components/Tabs/__docs__/Tabs.mdx +0 -27
  459. package/components/Textarea/__creevey__/Textarea.creevey.d.mts +0 -1
  460. package/components/Textarea/__creevey__/Textarea.creevey.mts +0 -177
  461. package/components/Textarea/__docs__/Textarea.mdx +0 -27
  462. package/components/Toast/__creevey__/Toast.creevey.d.mts +0 -1
  463. package/components/Toast/__creevey__/Toast.creevey.mts +0 -77
  464. package/components/Toast/__docs__/Toast.mdx +0 -27
  465. package/components/Toggle/__creevey__/Toggle.creevey.d.mts +0 -1
  466. package/components/Toggle/__creevey__/Toggle.creevey.mts +0 -89
  467. package/components/Toggle/__docs__/Toggle.mdx +0 -27
  468. package/components/Token/__docs__/Token.mdx +0 -27
  469. package/components/TokenInput/__creevey__/TokenInput.creevey.d.mts +0 -1
  470. package/components/TokenInput/__creevey__/TokenInput.creevey.mts +0 -442
  471. package/components/TokenInput/__docs__/TokenInput.mdx +0 -27
  472. package/components/Tooltip/__creevey__/Tooltip.creevey.d.mts +0 -1
  473. package/components/Tooltip/__creevey__/Tooltip.creevey.mts +0 -533
  474. package/components/Tooltip/__docs__/Tooltip.mdx +0 -27
  475. package/components/TooltipMenu/__creevey__/TooltipMenu.creevey.d.mts +0 -1
  476. package/components/TooltipMenu/__creevey__/TooltipMenu.creevey.mts +0 -131
  477. package/components/TooltipMenu/__docs__/TooltipMenu.mdx +0 -23
  478. package/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.d.mts +0 -1
  479. package/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.mts +0 -44
  480. package/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.d.mts +0 -1
  481. package/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.mts +0 -48
  482. package/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.d.mts +0 -1
  483. package/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.mts +0 -30
  484. package/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.d.mts +0 -1
  485. package/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.mts +0 -25
  486. package/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.d.mts +0 -1
  487. package/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.mts +0 -83
  488. package/internal/Menu/__creevey__/Menu.creevey.d.mts +0 -1
  489. package/internal/Menu/__creevey__/Menu.creevey.mts +0 -90
  490. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js +0 -106
  491. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +0 -1
  492. package/internal/PerformanceMetrics/PerformanceMetrics/package.json +0 -6
  493. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +0 -7
  494. package/internal/PopupMenu/__creevey__/PopupMenu.creevey.d.mts +0 -1
  495. package/internal/PopupMenu/__creevey__/PopupMenu.creevey.mts +0 -37
  496. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.d.mts +0 -1
  497. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +0 -36
  498. package/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +0 -4
  499. package/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.d.mts +0 -1
  500. package/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.mts +0 -68
  501. package/internal/ZIndex/__creevey__/ZIndex.creevey.d.mts +0 -1
  502. package/internal/ZIndex/__creevey__/ZIndex.creevey.mts +0 -228
@@ -4,6 +4,7 @@ import React from 'react';
4
4
  import { MAX_SAFE_DIGITS } from "../../CurrencyInput/constants";
5
5
  import { CurrencyHelper } from "../../CurrencyInput/CurrencyHelper";
6
6
  import { CommonWrapper } from "../../../internal/CommonWrapper";
7
+ import { forwardRefAndName } from "../../../lib/forwardRefAndName";
7
8
  var FRACTION_DIGITS_DEFAULT = 2;
8
9
  export var CurrencyLabelDataTids = {
9
10
  root: 'CurrencyLabel__root'
@@ -12,7 +13,7 @@ export var CurrencyLabelDataTids = {
12
13
  /**
13
14
  * `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).
14
15
  */
15
- export var CurrencyLabel = function CurrencyLabel(_ref) {
16
+ var CurrencyLabel = forwardRefAndName('CurrencyLabel', function CurrencyLabel(_ref, ref) {
16
17
  var id = _ref.id,
17
18
  value = _ref.value,
18
19
  _ref$fractionDigits = _ref.fractionDigits,
@@ -25,16 +26,16 @@ export var CurrencyLabel = function CurrencyLabel(_ref) {
25
26
  React.createElement(CommonWrapper, rest, /*#__PURE__*/
26
27
  React.createElement("span", {
27
28
  id: id,
28
- "data-tid": CurrencyLabelDataTids.root
29
+ "data-tid": CurrencyLabelDataTids.root,
30
+ ref: ref
29
31
  }, CurrencyHelper.format(value, {
30
32
  fractionDigits: fractionDigits,
31
33
  hideTrailingZeros: hideTrailingZeros
32
34
  }), currencySymbol && String.fromCharCode(0xa0) /*   */, currencySymbol))
33
35
  );
34
- };
35
- CurrencyLabel.__KONTUR_REACT_UI__ = 'CurrencyLabel';
36
- CurrencyLabel.displayName = 'CurrencyLabel';
36
+ });
37
37
  CurrencyLabel.propTypes = {
38
+ // @ts-ignore
38
39
  fractionDigits: function fractionDigits(_ref2) {
39
40
  var _ref2$fractionDigits = _ref2.fractionDigits,
40
41
  _fractionDigits = _ref2$fractionDigits === void 0 ? FRACTION_DIGITS_DEFAULT : _ref2$fractionDigits,
@@ -54,4 +55,5 @@ CurrencyLabel.propTypes = {
54
55
  }
55
56
  return null;
56
57
  }
57
- };
58
+ };
59
+ export { CurrencyLabel };
@@ -1 +1 @@
1
- {"version":3,"names":["React","MAX_SAFE_DIGITS","CurrencyHelper","CommonWrapper","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","root","CurrencyLabel","_ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose","_excluded","createElement","format","String","fromCharCode","__KONTUR_REACT_UI__","displayName","propTypes","_ref2","_ref2$fractionDigits","Error","_ref3","destructString","fraction","length","Number","isInteger"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { MAX_SAFE_DIGITS } from '../CurrencyInput/constants';\nimport { CurrencyHelper } from '../CurrencyInput/CurrencyHelper';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\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 */\nexport const CurrencyLabel = ({\n id,\n value,\n fractionDigits = FRACTION_DIGITS_DEFAULT,\n currencySymbol,\n hideTrailingZeros = false,\n ...rest\n}: CurrencyLabelProps): JSX.Element => {\n return (\n <CommonWrapper {...rest}>\n <span id={id} data-tid={CurrencyLabelDataTids.root}>\n {CurrencyHelper.format(value, { fractionDigits, hideTrailingZeros })}\n {currencySymbol && String.fromCharCode(0xa0) /* &nbsp; */}\n {currencySymbol}\n </span>\n </CommonWrapper>\n );\n};\n\nCurrencyLabel.__KONTUR_REACT_UI__ = 'CurrencyLabel';\nCurrencyLabel.displayName = 'CurrencyLabel';\n\nCurrencyLabel.propTypes = {\n fractionDigits: ({ fractionDigits = FRACTION_DIGITS_DEFAULT, value }: CurrencyLabelProps) => {\n if (fractionDigits > MAX_SAFE_DIGITS) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee https://tech.skbkontur.ru/react-ui/#/CurrencyInput?id=why15`,\n );\n }\n\n const { fraction } = CurrencyHelper.destructString(String(value)) || { fraction: '' };\n if (fraction.length > fractionDigits) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' less than fractional part of the 'value' property,` +\n `'value' will not be cutted`,\n );\n }\n\n if (!Number.isInteger(fractionDigits)) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' is not integer, fraction part of these property will not be used`,\n );\n }\n\n return null;\n },\n};\n"],"mappings":";AACA,OAAOA,KAAK,MAAM,OAAO;;AAEzB,SAASC,eAAe,QAAQ,4BAA4B;AAC5D,SAASC,cAAc,QAAQ,iCAAiC;;AAEhE,SAASC,aAAa,QAAQ,8BAA8B;;;;;;;;;;;;;;;;;AAiB5D,IAAMC,uBAAuB,GAAG,CAAC;;AAEjC,OAAO,IAAMC,qBAAqB,GAAG;EACnCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;;;;;;;AAOa,KANrCC,EAAE,GAAAD,IAAA,CAAFC,EAAE,CACFC,KAAK,GAAAF,IAAA,CAALE,KAAK,CAAAC,mBAAA,GAAAH,IAAA,CACLI,cAAc,CAAdA,cAAc,GAAAD,mBAAA,cAAGP,uBAAuB,GAAAO,mBAAA,CACxCE,cAAc,GAAAL,IAAA,CAAdK,cAAc,CAAAC,qBAAA,GAAAN,IAAA,CACdO,iBAAiB,CAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CACtBE,IAAI,GAAAC,6BAAA,CAAAT,IAAA,EAAAU,SAAA;EAEP;IACElB,KAAA,CAAAmB,aAAA,CAAChB,aAAa,EAAKa,IAAI;IACrBhB,KAAA,CAAAmB,aAAA,WAAMV,EAAE,EAAEA,EAAG,EAAC,YAAUJ,qBAAqB,CAACC,IAAK;IAChDJ,cAAc,CAACkB,MAAM,CAACV,KAAK,EAAE,EAAEE,cAAc,EAAdA,cAAc,EAAEG,iBAAiB,EAAjBA,iBAAiB,CAAC,CAAC,CAAC;IACnEF,cAAc,IAAIQ,MAAM,CAACC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5CT;IACG;IACO,CAAC;;AAEpB,CAAC;;AAEDN,aAAa,CAACgB,mBAAmB,GAAG,eAAe;AACnDhB,aAAa,CAACiB,WAAW,GAAG,eAAe;;AAE3CjB,aAAa,CAACkB,SAAS,GAAG;EACxBb,cAAc,EAAE,SAAAA,eAAAc,KAAA,EAA6E,KAAAC,oBAAA,GAAAD,KAAA,CAA1Ed,cAAc,CAAdA,eAAc,GAAAe,oBAAA,cAAGvB,uBAAuB,GAAAuB,oBAAA,CAAEjB,KAAK,GAAAgB,KAAA,CAALhB,KAAK;IAChE,IAAIE,eAAc,GAAGX,eAAe,EAAE;MACpC,OAAO,IAAI2B,KAAK;QACd,oDAAkD3B,eAAe;;MAEnE,CAAC;IACH;;IAEA,IAAA4B,KAAA,GAAqB3B,cAAc,CAAC4B,cAAc,CAACT,MAAM,CAACX,KAAK,CAAC,CAAC,IAAI,EAAEqB,QAAQ,EAAE,EAAE,CAAC,CAAC,CAA7EA,QAAQ,GAAAF,KAAA,CAARE,QAAQ;IAChB,IAAIA,QAAQ,CAACC,MAAM,GAAGpB,eAAc,EAAE;MACpC,OAAO,IAAIgB,KAAK;QACd;;MAEF,CAAC;IACH;;IAEA,IAAI,CAACK,MAAM,CAACC,SAAS,CAACtB,eAAc,CAAC,EAAE;MACrC,OAAO,IAAIgB,KAAK;;MAEhB,CAAC;IACH;;IAEA,OAAO,IAAI;EACb;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","MAX_SAFE_DIGITS","CurrencyHelper","CommonWrapper","forwardRefAndName","FRACTION_DIGITS_DEFAULT","CurrencyLabelDataTids","root","CurrencyLabel","_ref","ref","id","value","_ref$fractionDigits","fractionDigits","currencySymbol","_ref$hideTrailingZero","hideTrailingZeros","rest","_objectWithoutPropertiesLoose","_excluded","createElement","format","String","fromCharCode","propTypes","_ref2","_ref2$fractionDigits","Error","_ref3","destructString","fraction","length","Number","isInteger"],"sources":["CurrencyLabel.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\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 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\nCurrencyLabel.propTypes = {\n // @ts-ignore\n fractionDigits: ({ fractionDigits = FRACTION_DIGITS_DEFAULT, value }: CurrencyLabelProps) => {\n if (fractionDigits > MAX_SAFE_DIGITS) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' exceeds ${MAX_SAFE_DIGITS}.` +\n `\\nSee https://tech.skbkontur.ru/react-ui/#/CurrencyInput?id=why15`,\n );\n }\n\n const { fraction } = CurrencyHelper.destructString(String(value)) || { fraction: '' };\n if (fraction.length > fractionDigits) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' less than fractional part of the 'value' property,` +\n `'value' will not be cutted`,\n );\n }\n\n if (!Number.isInteger(fractionDigits)) {\n return new Error(\n `[CurrencyLabel]: Prop 'fractionDigits' is not integer, fraction part of these property will not be used`,\n );\n }\n return null;\n },\n};\n\nexport { CurrencyLabel };\n"],"mappings":";AACA,OAAOA,KAAK,MAAM,OAAO;;AAEzB,SAASC,eAAe,QAAQ,4BAA4B;AAC5D,SAASC,cAAc,QAAQ,iCAAiC;;AAEhE,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,iBAAiB,QAAQ,6BAA6B;;;;;;;;;;;;;;;;;AAiB/D,IAAMC,uBAAuB,GAAG,CAAC;;AAEjC,OAAO,IAAMC,qBAAqB,GAAG;EACnCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA,IAAMC,aAAa,GAAGJ,iBAAiB;EACrC,eAAe;EACf,SAASI,aAAaA,CAAAC,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,cAAGR,uBAAuB,GAAAQ,mBAAA,CACxCE,cAAc,GAAAN,IAAA,CAAdM,cAAc,CAAAC,qBAAA,GAAAP,IAAA,CACdQ,iBAAiB,CAAjBA,iBAAiB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CACtBE,IAAI,GAAAC,6BAAA,CAAAV,IAAA,EAAAW,SAAA;IAIT;MACEpB,KAAA,CAAAqB,aAAA,CAAClB,aAAa,EAAKe,IAAI;MACrBlB,KAAA,CAAAqB,aAAA,WAAMV,EAAE,EAAEA,EAAG,EAAC,YAAUL,qBAAqB,CAACC,IAAK,EAACG,GAAG,EAAEA,GAAI;MAC1DR,cAAc,CAACoB,MAAM,CAACV,KAAK,EAAE,EAAEE,cAAc,EAAdA,cAAc,EAAEG,iBAAiB,EAAjBA,iBAAiB,CAAC,CAAC,CAAC;MACnEF,cAAc,IAAIQ,MAAM,CAACC,YAAY,CAAC,IAAI,CAAC,CAAC;MAC5CT;MACG;MACO,CAAC;;EAEpB;AACF,CAAC;;AAEDP,aAAa,CAACiB,SAAS,GAAG;EACxB;EACAX,cAAc,EAAE,SAAAA,eAAAY,KAAA,EAA6E,KAAAC,oBAAA,GAAAD,KAAA,CAA1EZ,cAAc,CAAdA,eAAc,GAAAa,oBAAA,cAAGtB,uBAAuB,GAAAsB,oBAAA,CAAEf,KAAK,GAAAc,KAAA,CAALd,KAAK;IAChE,IAAIE,eAAc,GAAGb,eAAe,EAAE;MACpC,OAAO,IAAI2B,KAAK;QACd,oDAAkD3B,eAAe;;MAEnE,CAAC;IACH;;IAEA,IAAA4B,KAAA,GAAqB3B,cAAc,CAAC4B,cAAc,CAACP,MAAM,CAACX,KAAK,CAAC,CAAC,IAAI,EAAEmB,QAAQ,EAAE,EAAE,CAAC,CAAC,CAA7EA,QAAQ,GAAAF,KAAA,CAARE,QAAQ;IAChB,IAAIA,QAAQ,CAACC,MAAM,GAAGlB,eAAc,EAAE;MACpC,OAAO,IAAIc,KAAK;QACd;;MAEF,CAAC;IACH;;IAEA,IAAI,CAACK,MAAM,CAACC,SAAS,CAACpB,eAAc,CAAC,EAAE;MACrC,OAAO,IAAIc,KAAK;;MAEhB,CAAC;IACH;IACA,OAAO,IAAI;EACb;AACF,CAAC;;AAED,SAASpB,aAAa","ignoreList":[]}
@@ -18,11 +18,5 @@ export declare const CurrencyLabelDataTids: {
18
18
  /**
19
19
  * `CurrencyLabel` — подпись для денежных сумм (и других числовых значений).
20
20
  */
21
- export declare const CurrencyLabel: {
22
- ({ id, value, fractionDigits, currencySymbol, hideTrailingZeros, ...rest }: CurrencyLabelProps): JSX.Element;
23
- __KONTUR_REACT_UI__: string;
24
- displayName: string;
25
- propTypes: {
26
- fractionDigits: ({ fractionDigits, value }: CurrencyLabelProps) => Error | null;
27
- };
28
- };
21
+ declare const CurrencyLabel: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, CurrencyLabelProps> & Record<never, never>;
22
+ export { CurrencyLabel };
@@ -4,6 +4,7 @@ var _dec, _class, _DateInput;
4
4
  import React from 'react';
5
5
  import ReactDOM from 'react-dom';
6
6
  import { globalObject } from '@skbkontur/global-object';
7
+ import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
7
8
  import { ConditionalHandler } from "../../../lib/ConditionalHandler";
8
9
  import { LENGTH_FULLDATE, MAX_FULLDATE, MIN_FULLDATE } from "../../../lib/date/constants";
9
10
  import { InternalDateComponentType } from "../../../lib/date/types";
@@ -300,12 +301,14 @@ export var DateInput = (_dec = locale('DatePicker', DatePickerLocaleHelper), roo
300
301
  selected: selected
301
302
  });
302
303
  }
303
- var _this$iDateMediator$i = _this.iDateMediator.inputKey(event.key, selected, _this.state.inputMode),
304
+ var _this$iDateMediator$i = _this.iDateMediator.inputKey(event.key, selected, _this.state.inputMode, _this.featureFlags.dateInputAllowInvalidValuesInDays),
304
305
  inputMode = _this$iDateMediator$i.inputMode,
305
306
  changed = _this$iDateMediator$i.changed;
306
- if (!changed) {
307
- _this.blink();
308
- return;
307
+ if (!_this.featureFlags.dateInputFixSameNumberTypingOnRefocus) {
308
+ if (!changed) {
309
+ _this.blink();
310
+ return;
311
+ }
309
312
  }
310
313
  if (!inputMode) {
311
314
  _this.ignoringDelimiter = true;
@@ -359,9 +362,12 @@ export var DateInput = (_dec = locale('DatePicker', DatePickerLocaleHelper), roo
359
362
  };
360
363
  _proto.render = function render() {
361
364
  var _this2 = this;
362
- return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
363
- _this2.theme = theme;
364
- return _this2.renderMain();
365
+ return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
366
+ _this2.featureFlags = getFullReactUIFlagsContext(flags);
367
+ return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
368
+ _this2.theme = theme;
369
+ return _this2.renderMain();
370
+ });
365
371
  });
366
372
  };
367
373
  _proto.renderMain = function renderMain() {
@@ -1 +1 @@
1
- {"version":3,"names":["React","ReactDOM","globalObject","ConditionalHandler","LENGTH_FULLDATE","MAX_FULLDATE","MIN_FULLDATE","InternalDateComponentType","DatePickerLocaleHelper","InputLikeText","locale","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","FocusControlWrapper","CalendarIcon","DateFragmentsView","styles","Actions","extractAction","InternalDateMediator","DateInputDataTids","icon","DateInput","_dec","_class","_DateInput","_React$Component","props","_this","call","getProps","defaultProps","iDateMediator","inputLikeText","dateFragmentsView","isMouseDown","isMouseFocus","ignoringDelimiter","blurEvent","conditionalHandler","add","MoveSelectionLeft","shiftSelection","MoveSelectionRight","Separator","pressDelimiter","MoveSelectionFirst","selectDateComponent","getLeftmostType","MoveSelectionLast","getRightmostType","Increment","shiftDateComponent","Decrement","Digit","e","inputValue","ClearSelection","clearSelected","ClearOneChar","clearOneChar","FullSelection","fullSelection","WrongInput","blink","build","selectNode","type","state","selected","getRootNode","All","selectInnerNode","index","getTypesOrder","indexOf","renderIcon","_this$props","withIcon","_this$props$disabled","disabled","size","_cx","theme","createElement","iconStyles","iconSmall","iconMedium","iconLarge","iconDisabled","className","handleFocus","setState","prevState","focused","onFocus","resetFocus","updateValue","inputMode","handleBlur","onBlur","restored","restore","persist","handleMouseDownCapture","isFragment","target","preventDefault","handleSelectDateComponent","isEmpty","handleMouseDragStart","dragged","handleMouseDragEnd","selection","getSelection","toString","length","handleKeyDown","onKeyDown","handlePaste","pasted","clipboardData","getData","trim","validateString","paste","handleDoubleClick","inputLikeTextRef","el","dateFragmentsViewRef","sync","valueFormatted","getString","update","_extends","emitChange","version","search","flushSync","updateFromProps","value","get","onValueChange","getInternalString","setTimeout","clear","_this$state","nextType","isNull","deleteOneCharRight","step","changed","getShiftedType","event","_this$iDateMediator$i","inputKey","key","_inheritsLoose","_proto","prototype","componentDidUpdate","prevProps","_this$getProps","minDate","maxDate","isChangedLocale","componentDidMount","autoFocus","focus","blur","render","_this2","Consumer","renderMain","_cx2","_this$state2","showValue","Boolean","_this$getProps2","width","rootNodeRef","setRootNode","onBlurWhenDisabled","id","ref","error","warning","onClick","onMouseDownCapture","onPaste","rightIcon","onDoubleClickCapture","onMouseDragStart","onMouseDragEnd","takeContentWidth","valueVisible","fragments","getFragments","onSelectDateComponent","Component","__KONTUR_REACT_UI__","displayName"],"sources":["DateInput.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ConditionalHandler } from '../../lib/ConditionalHandler';\nimport { LENGTH_FULLDATE, MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateComponentType } from '../../lib/date/types';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { DatePickerLocale } from '../DatePicker/locale';\nimport { DatePickerLocaleHelper } from '../DatePicker/locale';\nimport { InputLikeText } from '../../internal/InputLikeText';\nimport { locale } from '../../lib/locale/decorators';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { CalendarIcon } from './CalendarIcon';\nimport { DateFragmentsView } from './DateFragmentsView';\nimport { styles } from './DateInput.styles';\nimport { Actions, extractAction } from './helpers/DateInputKeyboardActions';\nimport { InternalDateMediator } from './helpers/InternalDateMediator';\n\nexport interface DateInputState {\n selected: InternalDateComponentType | null;\n valueFormatted: string;\n inputMode: boolean;\n focused: boolean;\n dragged: boolean;\n}\n\nexport const DateInputDataTids = {\n icon: 'DateInput__icon',\n} as const;\n\nexport interface DateInputProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Устанавливает фокус на контроле после окончания загрузки страницы. */\n autoFocus?: boolean;\n\n /** Устанавливает значение датаинпута. */\n value?: string;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает минимальную возможную дату в формате `dd.mm.yyyy`. */\n minDate?: string;\n\n /** Задает максимальную возможную дату в формате `dd.mm.yyyy` */\n maxDate?: string;\n\n /** Задает ширину поля. */\n width?: string | number;\n\n /** Добавляет иконку календаря. */\n withIcon?: boolean;\n\n /** Задает размер поля. */\n size?: SizeProp;\n\n /** Задает функцию, которая вызывается при потере датаинпутом фокуса. */\n onBlur?: (x0: React.FocusEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при клике на датаинпут. */\n onClick?: (x0: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при получении датаинпутом фокуса. */\n onFocus?: (x0: React.FocusEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при изменении value.\n * @param value - строка в формате `dd.mm.yyyy`. */\n onValueChange?: (value: string) => void;\n\n /** Задает функцию, которая вызывается при нажатии кнопки на клавиатуре. */\n onKeyDown?: (x0: React.KeyboardEvent<HTMLElement>) => void;\n}\n\ntype DefaultProps = Required<Pick<DateInputProps, 'value' | 'minDate' | 'maxDate' | 'size' | 'width'>>;\n\n/**\n * Компонент поля `DateInput` из DatePicker'а помогает выбирать дату с клавиатуры.\n */\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DateInput extends React.Component<DateInputProps, DateInputState> {\n public static __KONTUR_REACT_UI__ = 'DateInput';\n public static displayName = 'DateInput';\n\n public static defaultProps: DefaultProps = {\n value: '',\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n size: 'small',\n width: 125,\n };\n\n private getProps = createPropsGetter(DateInput.defaultProps);\n\n private iDateMediator: InternalDateMediator = new InternalDateMediator();\n private inputLikeText: InputLikeText | null = null;\n private dateFragmentsView: DateFragmentsView | null = null;\n private isMouseDown = false;\n private isMouseFocus = false;\n private ignoringDelimiter = false;\n private locale!: DatePickerLocale;\n private blurEvent: React.FocusEvent<HTMLElement> | null = null;\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private conditionalHandler = new ConditionalHandler<Actions, [React.KeyboardEvent<HTMLElement>]>()\n .add(Actions.MoveSelectionLeft, () => this.shiftSelection(-1))\n .add(Actions.MoveSelectionRight, () => this.shiftSelection(1))\n .add(Actions.Separator, () => this.pressDelimiter())\n .add(Actions.MoveSelectionFirst, () => this.selectDateComponent(this.iDateMediator.getLeftmostType()))\n .add(Actions.MoveSelectionLast, () => this.selectDateComponent(this.iDateMediator.getRightmostType()))\n .add(Actions.Increment, () => this.shiftDateComponent(1))\n .add(Actions.Decrement, () => this.shiftDateComponent(-1))\n .add(Actions.Digit, (e) => this.inputValue(e))\n .add(Actions.ClearSelection, () => this.clearSelected())\n .add(Actions.ClearOneChar, () => this.clearOneChar())\n .add(Actions.FullSelection, () => this.fullSelection())\n .add(Actions.WrongInput, () => this.blink())\n .build();\n\n constructor(props: DateInputProps) {\n super(props);\n\n this.state = {\n valueFormatted: '',\n selected: null,\n inputMode: false,\n focused: false,\n dragged: false,\n };\n }\n\n public componentDidUpdate(prevProps: DateInputProps) {\n const { value, minDate, maxDate } = this.getProps();\n if (\n prevProps.value !== value ||\n prevProps.minDate !== minDate ||\n prevProps.maxDate !== maxDate ||\n this.iDateMediator.isChangedLocale(this.locale)\n ) {\n this.updateFromProps(false);\n }\n !this.props.disabled && this.selectNode();\n }\n\n public selectNode = () => {\n const type = this.state.selected;\n const dateFragmentsView = this.dateFragmentsView && this.dateFragmentsView.getRootNode();\n if (type === null || !this.inputLikeText || !dateFragmentsView) {\n return;\n }\n if (type === InternalDateComponentType.All) {\n this.inputLikeText.selectInnerNode(dateFragmentsView, 0, 5);\n return;\n }\n const index = this.iDateMediator.getTypesOrder().indexOf(type);\n if (index > -1) {\n this.inputLikeText.selectInnerNode(dateFragmentsView, index * 2, index * 2 + 1);\n }\n };\n\n public componentDidMount(): void {\n this.updateFromProps(false);\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public blur() {\n if (this.inputLikeText) {\n this.inputLikeText.blur();\n }\n }\n\n public focus() {\n if (this.inputLikeText) {\n this.inputLikeText.focus();\n }\n }\n\n public blink() {\n if (this.inputLikeText) {\n this.inputLikeText.blink();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { focused, selected, inputMode, valueFormatted } = this.state;\n const showValue = Boolean(focused || valueFormatted);\n const { width, size } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <InputLikeText\n id={this.props.id}\n width={width}\n ref={this.inputLikeTextRef}\n size={size}\n disabled={this.props.disabled}\n error={this.props.error}\n warning={this.props.warning}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onClick={this.props.onClick}\n onKeyDown={this.handleKeyDown}\n onMouseDownCapture={this.handleMouseDownCapture}\n onPaste={this.handlePaste}\n rightIcon={this.renderIcon()}\n onDoubleClickCapture={this.handleDoubleClick}\n onMouseDragStart={this.handleMouseDragStart}\n onMouseDragEnd={this.handleMouseDragEnd}\n value={this.iDateMediator.getInternalString()}\n inputMode={'numeric'}\n takeContentWidth\n aria-describedby={this.props['aria-describedby']}\n aria-label={this.props['aria-label']}\n aria-labelledby={this.props['aria-labelledby']}\n >\n <span className={cx(styles.value(), { [styles.valueVisible()]: showValue })}>\n <DateFragmentsView\n ref={this.dateFragmentsViewRef}\n fragments={this.iDateMediator.getFragments()}\n onSelectDateComponent={this.handleSelectDateComponent}\n selected={selected}\n inputMode={inputMode}\n />\n </span>\n </InputLikeText>\n </FocusControlWrapper>\n </CommonWrapper>\n );\n }\n\n private renderIcon = () => {\n const { withIcon, disabled = false } = this.props;\n const size = this.getProps().size;\n\n if (withIcon) {\n const theme = this.theme;\n const icon = <CalendarIcon size={size} />;\n const iconStyles = cx({\n [styles.icon(theme)]: true,\n [styles.iconSmall(theme)]: size === 'small',\n [styles.iconMedium(theme)]: size === 'medium',\n [styles.iconLarge(theme)]: size === 'large',\n [styles.iconDisabled(theme)]: disabled,\n });\n return (\n <span className={iconStyles} data-tid={DateInputDataTids.icon}>\n {icon}\n </span>\n );\n }\n return null;\n };\n\n private handleFocus = (e: React.FocusEvent<HTMLElement>) => {\n this.setState((prevState) => ({\n focused: true,\n selected: this.isMouseDown && !prevState.focused ? prevState.selected : this.iDateMediator.getLeftmostType(),\n }));\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n };\n\n private resetFocus = () => this.updateValue({ focused: false, selected: null, inputMode: false });\n\n private handleBlur = (e: React.FocusEvent<HTMLElement>) => {\n this.resetFocus();\n\n if (this.props.onBlur) {\n const restored = this.iDateMediator.restore();\n if (restored) {\n e.persist();\n this.blurEvent = e;\n } else {\n this.props.onBlur(e);\n }\n }\n };\n\n private handleMouseDownCapture = (e: React.MouseEvent<HTMLSpanElement>) => {\n const isFragment = this.dateFragmentsView ? this.dateFragmentsView.isFragment(e.target) : false;\n if (this.state.focused && !isFragment) {\n e.preventDefault();\n }\n this.isMouseFocus = !this.state.focused;\n this.isMouseDown = isFragment;\n };\n\n private handleSelectDateComponent = (type: InternalDateComponentType) => {\n if (!(this.isMouseFocus && this.iDateMediator.isEmpty())) {\n this.selectDateComponent(type);\n }\n this.isMouseFocus = false;\n this.isMouseDown = false;\n };\n\n private handleMouseDragStart = () => {\n this.setState({ dragged: true, selected: null });\n };\n\n private handleMouseDragEnd = () => {\n const selection = globalObject.getSelection?.();\n if (\n selection &&\n selection.toString().length === LENGTH_FULLDATE &&\n this.state.selected !== InternalDateComponentType.All\n ) {\n this.selectDateComponent(InternalDateComponentType.All);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.conditionalHandler(extractAction(e), e)) {\n e.preventDefault();\n }\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handlePaste = (e: React.ClipboardEvent<HTMLElement>) => {\n const pasted = e && e.clipboardData.getData('text').trim();\n if (pasted && this.iDateMediator.validateString(pasted)) {\n this.iDateMediator.paste(pasted);\n this.updateValue();\n }\n };\n\n private handleDoubleClick = () => {\n this.selectDateComponent(InternalDateComponentType.All);\n };\n\n private inputLikeTextRef = (el: InputLikeText | null) => {\n this.inputLikeText = el;\n };\n\n private dateFragmentsViewRef = (el: DateFragmentsView | null) => {\n this.dateFragmentsView = el;\n };\n\n private selectDateComponent = (selected: InternalDateComponentType | null): void => {\n this.setState({ selected, inputMode: false });\n };\n\n private updateValue = (state: Partial<DateInputState> = {}, sync = true): void => {\n const valueFormatted = this.iDateMediator.getString();\n\n const update = () => this.setState({ ...state, valueFormatted } as DateInputState, this.emitChange);\n\n if (sync && React.version.search('18') === 0) {\n ReactDOM.flushSync(update);\n } else {\n update();\n }\n };\n\n private updateFromProps = (sync: boolean): void => {\n this.iDateMediator.update(this.props, this.locale);\n\n this.updateValue({}, sync);\n };\n\n private fullSelection = (): void => {\n this.selectDateComponent(InternalDateComponentType.All);\n };\n\n private pressDelimiter = (): void => {\n const value = this.iDateMediator.get(this.state.selected);\n if (value !== null && value !== '') {\n if (!this.ignoringDelimiter) {\n this.shiftSelection(1);\n }\n this.ignoringDelimiter = false;\n }\n };\n\n private emitChange = (): void => {\n if (this.props.onValueChange) {\n const value = this.iDateMediator.getInternalString();\n if (this.props.value !== value) {\n this.props.onValueChange(value);\n }\n }\n\n // `this.blurEvent` is always null in `flushSync` without `setTimeout` due to sync update\n setTimeout(() => {\n if (this.blurEvent && this.props.onBlur) {\n this.props.onBlur(this.blurEvent);\n this.blurEvent = null;\n }\n });\n };\n\n private clearSelected = (): void => {\n const selected = this.state.selected === null ? this.iDateMediator.getLeftmostType() : this.state.selected;\n this.iDateMediator.clear(selected);\n this.updateValue({\n inputMode: false,\n selected: selected === InternalDateComponentType.All ? this.iDateMediator.getLeftmostType() : selected,\n });\n };\n\n private clearOneChar = (): void => {\n const { selected, inputMode } = this.state;\n const nextType = selected === null ? this.iDateMediator.getRightmostType() : selected;\n if (this.iDateMediator.isNull(nextType)) {\n this.shiftSelection(-1);\n return;\n }\n if (selected === InternalDateComponentType.All) {\n this.iDateMediator.clear(InternalDateComponentType.All);\n this.updateValue({ selected: this.iDateMediator.getLeftmostType() });\n return;\n }\n this.iDateMediator.deleteOneCharRight(nextType, inputMode);\n this.updateValue({\n inputMode: this.iDateMediator.get(nextType) !== null,\n selected: nextType,\n });\n };\n\n private shiftDateComponent = (step: number): void => {\n const { selected } = this.state;\n const changed = this.iDateMediator.shiftDateComponent(selected, step);\n if (!changed) {\n this.blink();\n return;\n }\n this.updateValue({\n inputMode: false,\n selected: selected === InternalDateComponentType.All ? this.iDateMediator.getLeftmostType() : selected,\n });\n };\n\n private shiftSelection = (step: number): void => {\n const selected = this.iDateMediator.getShiftedType(this.state.selected, step);\n if (selected !== this.state.selected) {\n this.setState({ selected, inputMode: false });\n }\n };\n\n private inputValue = (event: React.KeyboardEvent<HTMLElement>): void => {\n let selected = this.state.selected;\n if (selected === InternalDateComponentType.All) {\n selected = this.iDateMediator.getLeftmostType();\n this.iDateMediator.clear(InternalDateComponentType.All);\n this.setState({ selected });\n }\n const { inputMode, changed } = this.iDateMediator.inputKey(event.key, selected, this.state.inputMode);\n if (!changed) {\n this.blink();\n return;\n }\n\n if (!inputMode) {\n this.ignoringDelimiter = true;\n this.shiftSelection(1);\n }\n this.updateValue({ inputMode });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","ReactDOM","globalObject","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ConditionalHandler","LENGTH_FULLDATE","MAX_FULLDATE","MIN_FULLDATE","InternalDateComponentType","DatePickerLocaleHelper","InputLikeText","locale","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","FocusControlWrapper","CalendarIcon","DateFragmentsView","styles","Actions","extractAction","InternalDateMediator","DateInputDataTids","icon","DateInput","_dec","_class","_DateInput","_React$Component","props","_this","call","getProps","defaultProps","iDateMediator","inputLikeText","dateFragmentsView","isMouseDown","isMouseFocus","ignoringDelimiter","blurEvent","conditionalHandler","add","MoveSelectionLeft","shiftSelection","MoveSelectionRight","Separator","pressDelimiter","MoveSelectionFirst","selectDateComponent","getLeftmostType","MoveSelectionLast","getRightmostType","Increment","shiftDateComponent","Decrement","Digit","e","inputValue","ClearSelection","clearSelected","ClearOneChar","clearOneChar","FullSelection","fullSelection","WrongInput","blink","build","selectNode","type","state","selected","getRootNode","All","selectInnerNode","index","getTypesOrder","indexOf","renderIcon","_this$props","withIcon","_this$props$disabled","disabled","size","_cx","theme","createElement","iconStyles","iconSmall","iconMedium","iconLarge","iconDisabled","className","handleFocus","setState","prevState","focused","onFocus","resetFocus","updateValue","inputMode","handleBlur","onBlur","restored","restore","persist","handleMouseDownCapture","isFragment","target","preventDefault","handleSelectDateComponent","isEmpty","handleMouseDragStart","dragged","handleMouseDragEnd","selection","getSelection","toString","length","handleKeyDown","onKeyDown","handlePaste","pasted","clipboardData","getData","trim","validateString","paste","handleDoubleClick","inputLikeTextRef","el","dateFragmentsViewRef","sync","valueFormatted","getString","update","_extends","emitChange","version","search","flushSync","updateFromProps","value","get","onValueChange","getInternalString","setTimeout","clear","_this$state","nextType","isNull","deleteOneCharRight","step","changed","getShiftedType","event","_this$iDateMediator$i","inputKey","key","featureFlags","dateInputAllowInvalidValuesInDays","dateInputFixSameNumberTypingOnRefocus","_inheritsLoose","_proto","prototype","componentDidUpdate","prevProps","_this$getProps","minDate","maxDate","isChangedLocale","componentDidMount","autoFocus","focus","blur","render","_this2","Consumer","flags","renderMain","_cx2","_this$state2","showValue","Boolean","_this$getProps2","width","rootNodeRef","setRootNode","onBlurWhenDisabled","id","ref","error","warning","onClick","onMouseDownCapture","onPaste","rightIcon","onDoubleClickCapture","onMouseDragStart","onMouseDragEnd","takeContentWidth","valueVisible","fragments","getFragments","onSelectDateComponent","Component","__KONTUR_REACT_UI__","displayName"],"sources":["DateInput.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ConditionalHandler } from '../../lib/ConditionalHandler';\nimport { LENGTH_FULLDATE, MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateComponentType } from '../../lib/date/types';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { DatePickerLocale } from '../DatePicker/locale';\nimport { DatePickerLocaleHelper } from '../DatePicker/locale';\nimport { InputLikeText } from '../../internal/InputLikeText';\nimport { locale } from '../../lib/locale/decorators';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { CalendarIcon } from './CalendarIcon';\nimport { DateFragmentsView } from './DateFragmentsView';\nimport { styles } from './DateInput.styles';\nimport { Actions, extractAction } from './helpers/DateInputKeyboardActions';\nimport { InternalDateMediator } from './helpers/InternalDateMediator';\n\nexport interface DateInputState {\n selected: InternalDateComponentType | null;\n valueFormatted: string;\n inputMode: boolean;\n focused: boolean;\n dragged: boolean;\n}\n\nexport const DateInputDataTids = {\n icon: 'DateInput__icon',\n} as const;\n\nexport interface DateInputProps\n extends CommonProps,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label' | 'aria-labelledby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Устанавливает фокус на контроле после окончания загрузки страницы. */\n autoFocus?: boolean;\n\n /** Устанавливает значение датаинпута. */\n value?: string;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает минимальную возможную дату в формате `dd.mm.yyyy`. */\n minDate?: string;\n\n /** Задает максимальную возможную дату в формате `dd.mm.yyyy` */\n maxDate?: string;\n\n /** Задает ширину поля. */\n width?: string | number;\n\n /** Добавляет иконку календаря. */\n withIcon?: boolean;\n\n /** Задает размер поля. */\n size?: SizeProp;\n\n /** Задает функцию, которая вызывается при потере датаинпутом фокуса. */\n onBlur?: (x0: React.FocusEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при клике на датаинпут. */\n onClick?: (x0: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при получении датаинпутом фокуса. */\n onFocus?: (x0: React.FocusEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при изменении value.\n * @param value - строка в формате `dd.mm.yyyy`. */\n onValueChange?: (value: string) => void;\n\n /** Задает функцию, которая вызывается при нажатии кнопки на клавиатуре. */\n onKeyDown?: (x0: React.KeyboardEvent<HTMLElement>) => void;\n}\n\ntype DefaultProps = Required<Pick<DateInputProps, 'value' | 'minDate' | 'maxDate' | 'size' | 'width'>>;\n\n/**\n * Компонент поля `DateInput` из DatePicker'а помогает выбирать дату с клавиатуры.\n */\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DateInput extends React.Component<DateInputProps, DateInputState> {\n public static __KONTUR_REACT_UI__ = 'DateInput';\n public static displayName = 'DateInput';\n\n public static defaultProps: DefaultProps = {\n value: '',\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n size: 'small',\n width: 125,\n };\n\n private getProps = createPropsGetter(DateInput.defaultProps);\n\n private iDateMediator: InternalDateMediator = new InternalDateMediator();\n private inputLikeText: InputLikeText | null = null;\n private dateFragmentsView: DateFragmentsView | null = null;\n private isMouseDown = false;\n private isMouseFocus = false;\n private ignoringDelimiter = false;\n private locale!: DatePickerLocale;\n private blurEvent: React.FocusEvent<HTMLElement> | null = null;\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private conditionalHandler = new ConditionalHandler<Actions, [React.KeyboardEvent<HTMLElement>]>()\n .add(Actions.MoveSelectionLeft, () => this.shiftSelection(-1))\n .add(Actions.MoveSelectionRight, () => this.shiftSelection(1))\n .add(Actions.Separator, () => this.pressDelimiter())\n .add(Actions.MoveSelectionFirst, () => this.selectDateComponent(this.iDateMediator.getLeftmostType()))\n .add(Actions.MoveSelectionLast, () => this.selectDateComponent(this.iDateMediator.getRightmostType()))\n .add(Actions.Increment, () => this.shiftDateComponent(1))\n .add(Actions.Decrement, () => this.shiftDateComponent(-1))\n .add(Actions.Digit, (e) => this.inputValue(e))\n .add(Actions.ClearSelection, () => this.clearSelected())\n .add(Actions.ClearOneChar, () => this.clearOneChar())\n .add(Actions.FullSelection, () => this.fullSelection())\n .add(Actions.WrongInput, () => this.blink())\n .build();\n\n private featureFlags!: ReactUIFeatureFlags;\n\n constructor(props: DateInputProps) {\n super(props);\n\n this.state = {\n valueFormatted: '',\n selected: null,\n inputMode: false,\n focused: false,\n dragged: false,\n };\n }\n\n public componentDidUpdate(prevProps: DateInputProps) {\n const { value, minDate, maxDate } = this.getProps();\n if (\n prevProps.value !== value ||\n prevProps.minDate !== minDate ||\n prevProps.maxDate !== maxDate ||\n this.iDateMediator.isChangedLocale(this.locale)\n ) {\n this.updateFromProps(false);\n }\n !this.props.disabled && this.selectNode();\n }\n\n public selectNode = () => {\n const type = this.state.selected;\n const dateFragmentsView = this.dateFragmentsView && this.dateFragmentsView.getRootNode();\n if (type === null || !this.inputLikeText || !dateFragmentsView) {\n return;\n }\n if (type === InternalDateComponentType.All) {\n this.inputLikeText.selectInnerNode(dateFragmentsView, 0, 5);\n return;\n }\n const index = this.iDateMediator.getTypesOrder().indexOf(type);\n if (index > -1) {\n this.inputLikeText.selectInnerNode(dateFragmentsView, index * 2, index * 2 + 1);\n }\n };\n\n public componentDidMount(): void {\n this.updateFromProps(false);\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public blur() {\n if (this.inputLikeText) {\n this.inputLikeText.blur();\n }\n }\n\n public focus() {\n if (this.inputLikeText) {\n this.inputLikeText.focus();\n }\n }\n\n public blink() {\n if (this.inputLikeText) {\n this.inputLikeText.blink();\n }\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderMain() {\n const { focused, selected, inputMode, valueFormatted } = this.state;\n const showValue = Boolean(focused || valueFormatted);\n const { width, size } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <InputLikeText\n id={this.props.id}\n width={width}\n ref={this.inputLikeTextRef}\n size={size}\n disabled={this.props.disabled}\n error={this.props.error}\n warning={this.props.warning}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onClick={this.props.onClick}\n onKeyDown={this.handleKeyDown}\n onMouseDownCapture={this.handleMouseDownCapture}\n onPaste={this.handlePaste}\n rightIcon={this.renderIcon()}\n onDoubleClickCapture={this.handleDoubleClick}\n onMouseDragStart={this.handleMouseDragStart}\n onMouseDragEnd={this.handleMouseDragEnd}\n value={this.iDateMediator.getInternalString()}\n inputMode={'numeric'}\n takeContentWidth\n aria-describedby={this.props['aria-describedby']}\n aria-label={this.props['aria-label']}\n aria-labelledby={this.props['aria-labelledby']}\n >\n <span className={cx(styles.value(), { [styles.valueVisible()]: showValue })}>\n <DateFragmentsView\n ref={this.dateFragmentsViewRef}\n fragments={this.iDateMediator.getFragments()}\n onSelectDateComponent={this.handleSelectDateComponent}\n selected={selected}\n inputMode={inputMode}\n />\n </span>\n </InputLikeText>\n </FocusControlWrapper>\n </CommonWrapper>\n );\n }\n\n private renderIcon = () => {\n const { withIcon, disabled = false } = this.props;\n const size = this.getProps().size;\n\n if (withIcon) {\n const theme = this.theme;\n const icon = <CalendarIcon size={size} />;\n const iconStyles = cx({\n [styles.icon(theme)]: true,\n [styles.iconSmall(theme)]: size === 'small',\n [styles.iconMedium(theme)]: size === 'medium',\n [styles.iconLarge(theme)]: size === 'large',\n [styles.iconDisabled(theme)]: disabled,\n });\n return (\n <span className={iconStyles} data-tid={DateInputDataTids.icon}>\n {icon}\n </span>\n );\n }\n return null;\n };\n\n private handleFocus = (e: React.FocusEvent<HTMLElement>) => {\n this.setState((prevState) => ({\n focused: true,\n selected: this.isMouseDown && !prevState.focused ? prevState.selected : this.iDateMediator.getLeftmostType(),\n }));\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n };\n\n private resetFocus = () => this.updateValue({ focused: false, selected: null, inputMode: false });\n\n private handleBlur = (e: React.FocusEvent<HTMLElement>) => {\n this.resetFocus();\n\n if (this.props.onBlur) {\n const restored = this.iDateMediator.restore();\n if (restored) {\n e.persist();\n this.blurEvent = e;\n } else {\n this.props.onBlur(e);\n }\n }\n };\n\n private handleMouseDownCapture = (e: React.MouseEvent<HTMLSpanElement>) => {\n const isFragment = this.dateFragmentsView ? this.dateFragmentsView.isFragment(e.target) : false;\n if (this.state.focused && !isFragment) {\n e.preventDefault();\n }\n this.isMouseFocus = !this.state.focused;\n this.isMouseDown = isFragment;\n };\n\n private handleSelectDateComponent = (type: InternalDateComponentType) => {\n if (!(this.isMouseFocus && this.iDateMediator.isEmpty())) {\n this.selectDateComponent(type);\n }\n this.isMouseFocus = false;\n this.isMouseDown = false;\n };\n\n private handleMouseDragStart = () => {\n this.setState({ dragged: true, selected: null });\n };\n\n private handleMouseDragEnd = () => {\n const selection = globalObject.getSelection?.();\n if (\n selection &&\n selection.toString().length === LENGTH_FULLDATE &&\n this.state.selected !== InternalDateComponentType.All\n ) {\n this.selectDateComponent(InternalDateComponentType.All);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.conditionalHandler(extractAction(e), e)) {\n e.preventDefault();\n }\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handlePaste = (e: React.ClipboardEvent<HTMLElement>) => {\n const pasted = e && e.clipboardData.getData('text').trim();\n if (pasted && this.iDateMediator.validateString(pasted)) {\n this.iDateMediator.paste(pasted);\n this.updateValue();\n }\n };\n\n private handleDoubleClick = () => {\n this.selectDateComponent(InternalDateComponentType.All);\n };\n\n private inputLikeTextRef = (el: InputLikeText | null) => {\n this.inputLikeText = el;\n };\n\n private dateFragmentsViewRef = (el: DateFragmentsView | null) => {\n this.dateFragmentsView = el;\n };\n\n private selectDateComponent = (selected: InternalDateComponentType | null): void => {\n this.setState({ selected, inputMode: false });\n };\n\n private updateValue = (state: Partial<DateInputState> = {}, sync = true): void => {\n const valueFormatted = this.iDateMediator.getString();\n\n const update = () => this.setState({ ...state, valueFormatted } as DateInputState, this.emitChange);\n\n if (sync && React.version.search('18') === 0) {\n ReactDOM.flushSync(update);\n } else {\n update();\n }\n };\n\n private updateFromProps = (sync: boolean): void => {\n this.iDateMediator.update(this.props, this.locale);\n\n this.updateValue({}, sync);\n };\n\n private fullSelection = (): void => {\n this.selectDateComponent(InternalDateComponentType.All);\n };\n\n private pressDelimiter = (): void => {\n const value = this.iDateMediator.get(this.state.selected);\n if (value !== null && value !== '') {\n if (!this.ignoringDelimiter) {\n this.shiftSelection(1);\n }\n this.ignoringDelimiter = false;\n }\n };\n\n private emitChange = (): void => {\n if (this.props.onValueChange) {\n const value = this.iDateMediator.getInternalString();\n if (this.props.value !== value) {\n this.props.onValueChange(value);\n }\n }\n\n // `this.blurEvent` is always null in `flushSync` without `setTimeout` due to sync update\n setTimeout(() => {\n if (this.blurEvent && this.props.onBlur) {\n this.props.onBlur(this.blurEvent);\n this.blurEvent = null;\n }\n });\n };\n\n private clearSelected = (): void => {\n const selected = this.state.selected === null ? this.iDateMediator.getLeftmostType() : this.state.selected;\n this.iDateMediator.clear(selected);\n this.updateValue({\n inputMode: false,\n selected: selected === InternalDateComponentType.All ? this.iDateMediator.getLeftmostType() : selected,\n });\n };\n\n private clearOneChar = (): void => {\n const { selected, inputMode } = this.state;\n const nextType = selected === null ? this.iDateMediator.getRightmostType() : selected;\n if (this.iDateMediator.isNull(nextType)) {\n this.shiftSelection(-1);\n return;\n }\n if (selected === InternalDateComponentType.All) {\n this.iDateMediator.clear(InternalDateComponentType.All);\n this.updateValue({ selected: this.iDateMediator.getLeftmostType() });\n return;\n }\n this.iDateMediator.deleteOneCharRight(nextType, inputMode);\n this.updateValue({\n inputMode: this.iDateMediator.get(nextType) !== null,\n selected: nextType,\n });\n };\n\n private shiftDateComponent = (step: number): void => {\n const { selected } = this.state;\n const changed = this.iDateMediator.shiftDateComponent(selected, step);\n if (!changed) {\n this.blink();\n return;\n }\n this.updateValue({\n inputMode: false,\n selected: selected === InternalDateComponentType.All ? this.iDateMediator.getLeftmostType() : selected,\n });\n };\n\n private shiftSelection = (step: number): void => {\n const selected = this.iDateMediator.getShiftedType(this.state.selected, step);\n if (selected !== this.state.selected) {\n this.setState({ selected, inputMode: false });\n }\n };\n\n private inputValue = (event: React.KeyboardEvent<HTMLElement>): void => {\n let selected = this.state.selected;\n if (selected === InternalDateComponentType.All) {\n selected = this.iDateMediator.getLeftmostType();\n this.iDateMediator.clear(InternalDateComponentType.All);\n this.setState({ selected });\n }\n\n const { inputMode, changed } = this.iDateMediator.inputKey(\n event.key,\n selected,\n this.state.inputMode,\n this.featureFlags.dateInputAllowInvalidValuesInDays,\n );\n\n if (!this.featureFlags.dateInputFixSameNumberTypingOnRefocus) {\n if (!changed) {\n this.blink();\n return;\n }\n }\n\n if (!inputMode) {\n this.ignoringDelimiter = true;\n this.shiftSelection(1);\n }\n this.updateValue({ inputMode });\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -66,6 +66,7 @@ export declare class DateInput extends React.Component<DateInputProps, DateInput
66
66
  private theme;
67
67
  private setRootNode;
68
68
  private conditionalHandler;
69
+ private featureFlags;
69
70
  constructor(props: DateInputProps);
70
71
  componentDidUpdate(prevProps: DateInputProps): void;
71
72
  selectNode: () => void;
@@ -98,7 +98,7 @@ export var InternalDateMediator = /*#__PURE__*/function () {
98
98
  };
99
99
  }
100
100
  var _proto = InternalDateMediator.prototype;
101
- _proto.inputKey = function inputKey(key, type, inputMode) {
101
+ _proto.inputKey = function inputKey(key, type, inputMode, dateInputAllowInvalidValuesInDays) {
102
102
  var prevValue = this.iDate.get(type);
103
103
  if (type === null) {
104
104
  var leftMostType = this.getLeftmostType();
@@ -109,7 +109,7 @@ export var InternalDateMediator = /*#__PURE__*/function () {
109
109
  } else {
110
110
  this.iDate.restore(type);
111
111
  }
112
- var maxValue = InternalDateGetter.getDefaultMax(type, this.iDate.getComponentsLikeNumber());
112
+ var maxValue = InternalDateGetter.getDefaultMax(type, this.iDate.getComponentsLikeNumber(), dateInputAllowInvalidValuesInDays);
113
113
  var _inputNumber = inputNumber(type, prevValue, key, inputMode, maxValue),
114
114
  nextValue = _inputNumber.nextValue,
115
115
  nextInputMode = _inputNumber.nextInputMode;
@@ -1 +1 @@
1
- {"version":3,"names":["InternalDate","InternalDateGetter","InternalDateTransformer","InternalDateComponentType","InternalDateValidateCheck","inputNumber","InternalDateMediator","_this","iDate","update","props","locale","start","getRangeStart","min","toInternalString","end","getRangeEnd","max","order","separator","setOrder","setSeparator","minDate","setRangeStart","value","maxDate","setRangeEnd","parseInternalValue","paste","pasted","parseValue","restore","cutOffExcess","isIncomplete","restored","clone","isEqual","duplicateOf","getFragments","toFragments","withSeparator","withPad","deleteOneCharRight","type","inputMode","prev","get","String","padDateComponent","next","replace","set","isChangedLocale","getOrder","getSeparator","isNull","isEmpty","clear","validateString","parseValueToDate","getString","toString","getInternalString","getTypesOrder","map","_ref","getLeftmostType","getRightmostType","_proto","prototype","inputKey","key","prevValue","leftMostType","Year","maxValue","getDefaultMax","getComponentsLikeNumber","_inputNumber","nextValue","nextInputMode","changed","shiftDateComponent","step","calculatedType","isValidRange","validate","checks","Range","shift","isRange","isLoop","isCutFeb","isEqualComponentDate","getShiftedType","typesOrder","index","indexOf","nextIndex","All","getYear","shiftedType"],"sources":["InternalDateMediator.ts"],"sourcesContent":["import { InternalDate } from '../../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../../lib/date/InternalDateGetter';\nimport { InternalDateTransformer } from '../../../lib/date/InternalDateTransformer';\nimport type { InputKeyResult, InternalDateTypesOrder } from '../../../lib/date/types';\nimport { InternalDateComponentType, InternalDateValidateCheck } from '../../../lib/date/types';\nimport type { DatePickerLocale } from '../../DatePicker/locale';\nimport type { DateInputProps } from '../DateInput';\n\nimport { inputNumber } from './inputNumber';\n\nexport class InternalDateMediator {\n public iDate: InternalDate = new InternalDate();\n\n public update = (props: DateInputProps, locale: DatePickerLocale): InternalDateMediator => {\n const start = this.iDate.getRangeStart();\n const min = start && start.toInternalString();\n const end = this.iDate.getRangeEnd();\n const max = end && end.toInternalString();\n const { order, separator } = locale;\n this.iDate.setOrder(order).setSeparator(separator);\n if (props.minDate !== min) {\n this.iDate.setRangeStart(\n props.minDate\n ? new InternalDate({\n order,\n separator,\n value: props.minDate,\n })\n : null,\n );\n }\n if (props.maxDate !== max) {\n this.iDate.setRangeEnd(\n props.maxDate\n ? new InternalDate({\n order,\n separator,\n value: props.maxDate,\n })\n : null,\n );\n }\n if (!props.value || props.value !== this.iDate.toInternalString()) {\n this.iDate.parseInternalValue(props.value);\n }\n return this;\n };\n\n public inputKey(key: string, type: InternalDateComponentType | null, inputMode: boolean): InputKeyResult {\n const prevValue = this.iDate.get(type);\n if (type === null) {\n const leftMostType = this.getLeftmostType();\n this.clear(leftMostType);\n }\n\n if (type !== InternalDateComponentType.Year) {\n this.iDate.cutOffExcess(type);\n } else {\n this.iDate.restore(type);\n }\n const maxValue = InternalDateGetter.getDefaultMax(type, this.iDate.getComponentsLikeNumber());\n const { nextValue, nextInputMode } = inputNumber(type, prevValue, key, inputMode, maxValue);\n this.iDate.set(type, nextValue);\n return { inputMode: nextInputMode, changed: nextValue !== prevValue };\n }\n\n public paste = (pasted: string): InternalDateMediator => {\n this.iDate.parseValue(pasted).restore().cutOffExcess();\n return this;\n };\n\n public restore = (): boolean => {\n if (this.iDate.isIncomplete()) {\n const restored = this.iDate.clone().restore();\n if (!this.iDate.isEqual(restored)) {\n this.iDate.duplicateOf(restored);\n }\n return true;\n }\n return false;\n };\n\n public shiftDateComponent(type: InternalDateComponentType | null, step: number): boolean {\n const calculatedType = type ?? this.getLeftmostType();\n\n const iDate = this.iDate.clone();\n const start = iDate.getRangeStart();\n const end = iDate.getRangeEnd();\n\n const isValidRange = iDate.validate({ checks: [InternalDateValidateCheck.Range] });\n if (!isValidRange) {\n // Удерживаем дату в заданном диапазоне\n if (start && InternalDateGetter.max([iDate, start]) === start) {\n iDate.duplicateOf(start);\n } else if (end && InternalDateGetter.min([iDate, end]) === end) {\n iDate.duplicateOf(end);\n }\n } else {\n const clone = iDate.clone().shift(calculatedType, step, { isRange: false, isLoop: true, isCutFeb: true });\n if (clone.validate({ checks: [InternalDateValidateCheck.Range] })) {\n iDate.duplicateOf(clone);\n }\n }\n\n const changed = !this.iDate.isEqualComponentDate(calculatedType, iDate);\n this.iDate = iDate;\n return changed;\n }\n\n public getShiftedType(type: InternalDateComponentType | null, step: number): InternalDateComponentType | null {\n const typesOrder = this.getTypesOrder();\n const index = type === null ? 0 : typesOrder.indexOf(type);\n const nextIndex = index + step;\n\n // Если выделено всё поле, то в завимости от направления перемещения, выделям крайний компонент\n if (type === InternalDateComponentType.All) {\n return step < 0 ? typesOrder[0] : typesOrder[2];\n }\n\n // Если текущий компонент \"год\", и он не пуст, то при перемещении выделения \"восстанавливаем\" значение года\n if (type === InternalDateComponentType.Year && this.iDate.getYear() !== null) {\n this.iDate.restore(type);\n }\n\n const shiftedType = typesOrder[nextIndex];\n return typeof shiftedType === 'number' ? shiftedType : type;\n }\n\n public getFragments = () =>\n this.iDate.toFragments({\n withSeparator: true,\n withPad: true,\n });\n\n public deleteOneCharRight = (type: InternalDateComponentType, inputMode: boolean) => {\n let prev = this.iDate.get(type);\n prev = String(inputMode ? prev : InternalDateTransformer.padDateComponent(type, prev));\n const next = prev.replace(/.$/, '') || null;\n this.iDate.set(type, next);\n };\n\n public isChangedLocale = (locale: DatePickerLocale): boolean =>\n locale.order !== this.iDate.getOrder() || locale.separator !== this.iDate.getSeparator();\n\n public isNull = (type: InternalDateComponentType | null): boolean => this.iDate.get(type) === null;\n\n public isEmpty = (): boolean => this.iDate.isEmpty();\n\n public get = (type: InternalDateComponentType | null) => this.iDate.get(type);\n\n public clear = (type: InternalDateComponentType | null): InternalDate => this.iDate.set(type, null);\n\n public validateString = (value: string): boolean =>\n InternalDateTransformer.parseValueToDate(value, this.iDate.getOrder()) !== null;\n\n public getString = (): string => (this.iDate.isEmpty() ? '' : this.iDate.toString());\n\n public getInternalString = (): string => (this.iDate.isEmpty() ? '' : this.iDate.toInternalString());\n\n public getTypesOrder = () => this.iDate.toFragments().map(({ type }) => type) as InternalDateTypesOrder;\n\n public getLeftmostType = (): InternalDateComponentType => this.getTypesOrder()[0];\n\n public getRightmostType = (): InternalDateComponentType => this.getTypesOrder()[2];\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["InternalDate","InternalDateGetter","InternalDateTransformer","InternalDateComponentType","InternalDateValidateCheck","inputNumber","InternalDateMediator","_this","iDate","update","props","locale","start","getRangeStart","min","toInternalString","end","getRangeEnd","max","order","separator","setOrder","setSeparator","minDate","setRangeStart","value","maxDate","setRangeEnd","parseInternalValue","paste","pasted","parseValue","restore","cutOffExcess","isIncomplete","restored","clone","isEqual","duplicateOf","getFragments","toFragments","withSeparator","withPad","deleteOneCharRight","type","inputMode","prev","get","String","padDateComponent","next","replace","set","isChangedLocale","getOrder","getSeparator","isNull","isEmpty","clear","validateString","parseValueToDate","getString","toString","getInternalString","getTypesOrder","map","_ref","getLeftmostType","getRightmostType","_proto","prototype","inputKey","key","dateInputAllowInvalidValuesInDays","prevValue","leftMostType","Year","maxValue","getDefaultMax","getComponentsLikeNumber","_inputNumber","nextValue","nextInputMode","changed","shiftDateComponent","step","calculatedType","isValidRange","validate","checks","Range","shift","isRange","isLoop","isCutFeb","isEqualComponentDate","getShiftedType","typesOrder","index","indexOf","nextIndex","All","getYear","shiftedType"],"sources":["InternalDateMediator.ts"],"sourcesContent":["import { InternalDate } from '../../../lib/date/InternalDate';\nimport { InternalDateGetter } from '../../../lib/date/InternalDateGetter';\nimport { InternalDateTransformer } from '../../../lib/date/InternalDateTransformer';\nimport type { InputKeyResult, InternalDateTypesOrder } from '../../../lib/date/types';\nimport { InternalDateComponentType, InternalDateValidateCheck } from '../../../lib/date/types';\nimport type { DatePickerLocale } from '../../DatePicker/locale';\nimport type { DateInputProps } from '../DateInput';\n\nimport { inputNumber } from './inputNumber';\n\nexport class InternalDateMediator {\n public iDate: InternalDate = new InternalDate();\n\n public update = (props: DateInputProps, locale: DatePickerLocale): InternalDateMediator => {\n const start = this.iDate.getRangeStart();\n const min = start && start.toInternalString();\n const end = this.iDate.getRangeEnd();\n const max = end && end.toInternalString();\n const { order, separator } = locale;\n this.iDate.setOrder(order).setSeparator(separator);\n if (props.minDate !== min) {\n this.iDate.setRangeStart(\n props.minDate\n ? new InternalDate({\n order,\n separator,\n value: props.minDate,\n })\n : null,\n );\n }\n if (props.maxDate !== max) {\n this.iDate.setRangeEnd(\n props.maxDate\n ? new InternalDate({\n order,\n separator,\n value: props.maxDate,\n })\n : null,\n );\n }\n if (!props.value || props.value !== this.iDate.toInternalString()) {\n this.iDate.parseInternalValue(props.value);\n }\n return this;\n };\n\n public inputKey(\n key: string,\n type: InternalDateComponentType | null,\n inputMode: boolean,\n dateInputAllowInvalidValuesInDays?: boolean,\n ): InputKeyResult {\n const prevValue = this.iDate.get(type);\n if (type === null) {\n const leftMostType = this.getLeftmostType();\n this.clear(leftMostType);\n }\n\n if (type !== InternalDateComponentType.Year) {\n this.iDate.cutOffExcess(type);\n } else {\n this.iDate.restore(type);\n }\n const maxValue = InternalDateGetter.getDefaultMax(\n type,\n this.iDate.getComponentsLikeNumber(),\n dateInputAllowInvalidValuesInDays,\n );\n const { nextValue, nextInputMode } = inputNumber(type, prevValue, key, inputMode, maxValue);\n this.iDate.set(type, nextValue);\n return { inputMode: nextInputMode, changed: nextValue !== prevValue };\n }\n\n public paste = (pasted: string): InternalDateMediator => {\n this.iDate.parseValue(pasted).restore().cutOffExcess();\n return this;\n };\n\n public restore = (): boolean => {\n if (this.iDate.isIncomplete()) {\n const restored = this.iDate.clone().restore();\n if (!this.iDate.isEqual(restored)) {\n this.iDate.duplicateOf(restored);\n }\n return true;\n }\n return false;\n };\n\n public shiftDateComponent(type: InternalDateComponentType | null, step: number): boolean {\n const calculatedType = type ?? this.getLeftmostType();\n\n const iDate = this.iDate.clone();\n const start = iDate.getRangeStart();\n const end = iDate.getRangeEnd();\n\n const isValidRange = iDate.validate({ checks: [InternalDateValidateCheck.Range] });\n if (!isValidRange) {\n // Удерживаем дату в заданном диапазоне\n if (start && InternalDateGetter.max([iDate, start]) === start) {\n iDate.duplicateOf(start);\n } else if (end && InternalDateGetter.min([iDate, end]) === end) {\n iDate.duplicateOf(end);\n }\n } else {\n const clone = iDate.clone().shift(calculatedType, step, { isRange: false, isLoop: true, isCutFeb: true });\n if (clone.validate({ checks: [InternalDateValidateCheck.Range] })) {\n iDate.duplicateOf(clone);\n }\n }\n\n const changed = !this.iDate.isEqualComponentDate(calculatedType, iDate);\n this.iDate = iDate;\n return changed;\n }\n\n public getShiftedType(type: InternalDateComponentType | null, step: number): InternalDateComponentType | null {\n const typesOrder = this.getTypesOrder();\n const index = type === null ? 0 : typesOrder.indexOf(type);\n const nextIndex = index + step;\n\n // Если выделено всё поле, то в завимости от направления перемещения, выделям крайний компонент\n if (type === InternalDateComponentType.All) {\n return step < 0 ? typesOrder[0] : typesOrder[2];\n }\n\n // Если текущий компонент \"год\", и он не пуст, то при перемещении выделения \"восстанавливаем\" значение года\n if (type === InternalDateComponentType.Year && this.iDate.getYear() !== null) {\n this.iDate.restore(type);\n }\n\n const shiftedType = typesOrder[nextIndex];\n return typeof shiftedType === 'number' ? shiftedType : type;\n }\n\n public getFragments = () =>\n this.iDate.toFragments({\n withSeparator: true,\n withPad: true,\n });\n\n public deleteOneCharRight = (type: InternalDateComponentType, inputMode: boolean) => {\n let prev = this.iDate.get(type);\n prev = String(inputMode ? prev : InternalDateTransformer.padDateComponent(type, prev));\n const next = prev.replace(/.$/, '') || null;\n this.iDate.set(type, next);\n };\n\n public isChangedLocale = (locale: DatePickerLocale): boolean =>\n locale.order !== this.iDate.getOrder() || locale.separator !== this.iDate.getSeparator();\n\n public isNull = (type: InternalDateComponentType | null): boolean => this.iDate.get(type) === null;\n\n public isEmpty = (): boolean => this.iDate.isEmpty();\n\n public get = (type: InternalDateComponentType | null) => this.iDate.get(type);\n\n public clear = (type: InternalDateComponentType | null): InternalDate => this.iDate.set(type, null);\n\n public validateString = (value: string): boolean =>\n InternalDateTransformer.parseValueToDate(value, this.iDate.getOrder()) !== null;\n\n public getString = (): string => (this.iDate.isEmpty() ? '' : this.iDate.toString());\n\n public getInternalString = (): string => (this.iDate.isEmpty() ? '' : this.iDate.toInternalString());\n\n public getTypesOrder = () => this.iDate.toFragments().map(({ type }) => type) as InternalDateTypesOrder;\n\n public getLeftmostType = (): InternalDateComponentType => this.getTypesOrder()[0];\n\n public getRightmostType = (): InternalDateComponentType => this.getTypesOrder()[2];\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@ import type { DateInputProps } from '../DateInput';
6
6
  export declare class InternalDateMediator {
7
7
  iDate: InternalDate;
8
8
  update: (props: DateInputProps, locale: DatePickerLocale) => InternalDateMediator;
9
- inputKey(key: string, type: InternalDateComponentType | null, inputMode: boolean): InputKeyResult;
9
+ inputKey(key: string, type: InternalDateComponentType | null, inputMode: boolean, dateInputAllowInvalidValuesInDays?: boolean): InputKeyResult;
10
10
  paste: (pasted: string) => InternalDateMediator;
11
11
  restore: () => boolean;
12
12
  shiftDateComponent(type: InternalDateComponentType | null, step: number): boolean;
@@ -263,7 +263,7 @@ export var DateRangePicker = Object.assign({
263
263
  opened: true,
264
264
  headerChildComponent: /*#__PURE__*/
265
265
  React.createElement("div", {
266
- className: cx(styles.inputWrapper(), styles.inputWrapperWidthFull())
266
+ className: cx(styles.root(theme), styles.inputWrapperWidthFull())
267
267
  }, /*#__PURE__*/
268
268
  React.createElement(DateInput, {
269
269
  withIcon: true,
@@ -388,23 +388,22 @@ export var DateRangePicker = Object.assign({
388
388
  React.createElement(ThemeContext.Provider, {
389
389
  value: getDateRangePickerTheme(theme)
390
390
  }, /*#__PURE__*/
391
+ React.createElement(DateRangePickerContext.Provider, {
392
+ value: dateRangePickerContextProps
393
+ }, /*#__PURE__*/
391
394
  React.createElement(CommonWrapper, props, /*#__PURE__*/
392
395
  React.createElement("div", {
393
- className: styles.root(theme),
396
+ className: cx(styles.root(theme), styles.inputWrapperWidth(theme), css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n font-size: ", ";\n "])), getFontSize(theme, props.size))),
394
397
  role: "group",
395
398
  "aria-describedby": props['aria-describedby'],
396
399
  "aria-label": props['aria-label'],
397
400
  "aria-labelledby": props['aria-labelledby'],
398
401
  "data-tid": DateRangePickerDataTids.root,
399
- ref: dateRangePickerRef
400
- }, /*#__PURE__*/
401
-
402
- React.createElement(DateRangePickerContext.Provider, {
403
- value: dateRangePickerContextProps
404
- }, /*#__PURE__*/
405
- React.createElement("div", {
406
- className: cx(styles.inputWrapper(), styles.inputWrapperWidth(theme), css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n font-size: ", ";\n "])), getFontSize(theme, props.size)))
407
- }, props.children), props.useMobileNativeDatePicker && isMobile ? renderMobileNativeDateInput() : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))))))
402
+ ref: dateRangePickerRef,
403
+ style: {
404
+ width: props.width
405
+ }
406
+ }, props.children, props.useMobileNativeDatePicker && isMobile ? renderMobileNativeDateInput() : isCalendarOpen && (isMobile ? renderMobileCalendar(theme) : renderDesktopCalendar(theme))))))
408
407
  );
409
408
  })
410
409
  );