@skbkontur/react-ui 5.1.7 → 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 (466) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +2 -8
  3. package/cjs/components/CurrencyLabel/CurrencyLabel.js +19 -15
  4. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  5. package/cjs/components/DateInput/DateInput.d.ts +1 -0
  6. package/cjs/components/DateInput/DateInput.js +25 -5
  7. package/cjs/components/DateInput/DateInput.js.map +1 -1
  8. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  9. package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
  10. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  11. package/cjs/components/Dropdown/Dropdown.d.ts +2 -4
  12. package/cjs/components/FxInput/FxInput.d.ts +1 -1
  13. package/cjs/components/FxInput/FxInput.js.map +1 -1
  14. package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -6
  15. package/cjs/components/MenuFooter/MenuFooter.js +47 -40
  16. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  17. package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -6
  18. package/cjs/components/MenuHeader/MenuHeader.js +49 -41
  19. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  20. package/cjs/components/MenuItem/MenuItem.js +3 -0
  21. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  22. package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -0
  23. package/cjs/components/MenuItem/MenuItem.styles.js +18 -13
  24. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  25. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +1 -6
  26. package/cjs/components/MenuSeparator/MenuSeparator.js +24 -22
  27. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  28. package/cjs/components/MiniModal/MiniModal.js +3 -3
  29. package/cjs/components/MiniModal/MiniModal.js.map +1 -1
  30. package/cjs/components/Modal/Modal.d.ts +20 -4
  31. package/cjs/components/Modal/Modal.js +79 -5
  32. package/cjs/components/Modal/Modal.js.map +1 -1
  33. package/cjs/components/Modal/Modal.styles.d.ts +19 -0
  34. package/cjs/components/Modal/Modal.styles.js +172 -42
  35. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  36. package/cjs/components/Modal/ModalBody.js +8 -1
  37. package/cjs/components/Modal/ModalBody.js.map +1 -1
  38. package/cjs/components/Modal/ModalContext.d.ts +1 -0
  39. package/cjs/components/Modal/ModalContext.js +1 -0
  40. package/cjs/components/Modal/ModalContext.js.map +1 -1
  41. package/cjs/components/Modal/ModalFooter.js +17 -2
  42. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  43. package/cjs/components/Modal/ModalHeader.js +21 -1
  44. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  45. package/cjs/components/RadioGroup/RadioGroup.d.ts +1 -0
  46. package/cjs/components/RadioGroup/RadioGroup.js +18 -1
  47. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  48. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  49. package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
  50. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  51. package/cjs/components/SidePage/SidePage.d.ts +3 -1
  52. package/cjs/components/SidePage/SidePage.js +11 -5
  53. package/cjs/components/SidePage/SidePage.js.map +1 -1
  54. package/cjs/components/SidePage/SidePage.styles.d.ts +0 -1
  55. package/cjs/components/SidePage/SidePage.styles.js +51 -57
  56. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  57. package/cjs/components/Sticky/Sticky.js +1 -1
  58. package/cjs/components/Sticky/Sticky.js.map +1 -1
  59. package/cjs/components/Toast/Toast.d.ts +5 -5
  60. package/cjs/components/Toast/Toast.js +2 -2
  61. package/cjs/components/Toast/Toast.js.map +1 -1
  62. package/cjs/components/Toast/ToastStatic.d.ts +3 -2
  63. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  64. package/cjs/components/Toast/ToastView.d.ts +1 -1
  65. package/cjs/components/Toast/ToastView.js.map +1 -1
  66. package/cjs/internal/Popup/Popup.d.ts +1 -0
  67. package/cjs/internal/Popup/Popup.js +11 -1
  68. package/cjs/internal/Popup/Popup.js.map +1 -1
  69. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  70. package/cjs/internal/themes/BasicTheme.d.ts +4 -0
  71. package/cjs/internal/themes/BasicTheme.js +8 -2
  72. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  73. package/cjs/internal/themes/DarkTheme5_2.d.ts +1 -0
  74. package/cjs/internal/themes/DarkTheme5_2.js +29 -0
  75. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -0
  76. package/cjs/internal/themes/LightTheme5_2.d.ts +1 -0
  77. package/cjs/internal/themes/LightTheme5_2.js +27 -0
  78. package/cjs/internal/themes/LightTheme5_2.js.map +1 -0
  79. package/cjs/lib/ModalStack.d.ts +7 -1
  80. package/cjs/lib/ModalStack.js.map +1 -1
  81. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  82. package/cjs/lib/date/InternalDateGetter.js +8 -1
  83. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  84. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +3 -0
  85. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +3 -0
  86. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +7 -1
  87. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  88. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  89. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  90. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  91. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  92. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  93. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  94. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  95. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  96. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +8 -6
  97. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  98. package/components/CurrencyLabel/CurrencyLabel.d.ts +2 -8
  99. package/components/DateInput/DateInput/DateInput.js +13 -7
  100. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  101. package/components/DateInput/DateInput.d.ts +1 -0
  102. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  103. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  104. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  105. package/components/Dropdown/Dropdown.d.ts +2 -4
  106. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  107. package/components/FxInput/FxInput.d.ts +1 -1
  108. package/components/MenuFooter/MenuFooter/MenuFooter.js +7 -4
  109. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  110. package/components/MenuFooter/MenuFooter.d.ts +1 -6
  111. package/components/MenuHeader/MenuHeader/MenuHeader.js +7 -4
  112. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  113. package/components/MenuHeader/MenuHeader.d.ts +1 -6
  114. package/components/MenuItem/MenuItem/MenuItem.js +3 -1
  115. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  116. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +16 -13
  117. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  118. package/components/MenuItem/MenuItem.styles.d.ts +1 -0
  119. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +4 -4
  120. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  121. package/components/MenuSeparator/MenuSeparator.d.ts +1 -6
  122. package/components/MiniModal/MiniModal/MiniModal.js +3 -1
  123. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  124. package/components/Modal/Modal/Modal.js +51 -11
  125. package/components/Modal/Modal/Modal.js.map +1 -1
  126. package/components/Modal/Modal.d.ts +20 -4
  127. package/components/Modal/Modal.styles/Modal.styles.js +98 -41
  128. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  129. package/components/Modal/Modal.styles.d.ts +19 -0
  130. package/components/Modal/ModalBody/ModalBody.js +5 -1
  131. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  132. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  133. package/components/Modal/ModalContext.d.ts +1 -0
  134. package/components/Modal/ModalFooter/ModalFooter.js +14 -2
  135. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  136. package/components/Modal/ModalHeader/ModalHeader.js +12 -2
  137. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  138. package/components/RadioGroup/RadioGroup/RadioGroup.js +23 -17
  139. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  140. package/components/RadioGroup/RadioGroup.d.ts +1 -0
  141. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
  142. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  143. package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
  144. package/components/SidePage/SidePage/SidePage.js +15 -8
  145. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  146. package/components/SidePage/SidePage.d.ts +3 -1
  147. package/components/SidePage/SidePage.styles/SidePage.styles.js +51 -54
  148. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  149. package/components/SidePage/SidePage.styles.d.ts +0 -1
  150. package/components/Sticky/Sticky/Sticky.js +1 -1
  151. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  152. package/components/Toast/Toast/Toast.js +2 -2
  153. package/components/Toast/Toast/Toast.js.map +1 -1
  154. package/components/Toast/Toast.d.ts +5 -5
  155. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  156. package/components/Toast/ToastStatic.d.ts +3 -2
  157. package/components/Toast/ToastView/ToastView.js.map +1 -1
  158. package/components/Toast/ToastView.d.ts +1 -1
  159. package/internal/Popup/Popup/Popup.js +12 -1
  160. package/internal/Popup/Popup/Popup.js.map +1 -1
  161. package/internal/Popup/Popup.d.ts +1 -0
  162. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  163. package/internal/themes/BasicTheme/BasicTheme.js +8 -0
  164. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  165. package/internal/themes/BasicTheme.d.ts +4 -0
  166. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +27 -0
  167. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -0
  168. package/internal/themes/DarkTheme5_2/package.json +6 -0
  169. package/internal/themes/DarkTheme5_2.d.ts +1 -0
  170. package/internal/themes/LightTheme5_2/LightTheme5_2.js +27 -0
  171. package/internal/themes/LightTheme5_2/LightTheme5_2.js.map +1 -0
  172. package/internal/themes/LightTheme5_2/package.json +6 -0
  173. package/internal/themes/LightTheme5_2.d.ts +1 -0
  174. package/lib/ModalStack/ModalStack.js.map +1 -1
  175. package/lib/ModalStack.d.ts +7 -1
  176. package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
  177. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  178. package/lib/date/InternalDateGetter.d.ts +1 -1
  179. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +3 -0
  180. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +4 -1
  181. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  182. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +3 -0
  183. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  184. package/lib/theming/ThemeVersions.d.ts +1 -1
  185. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  186. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  187. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  188. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  189. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  190. package/lib/theming/themes/LightTheme.d.ts +1 -0
  191. package/package.json +9 -9
  192. package/cjs/components/Autocomplete/__creevey__/Autocomplete.creevey.mts +0 -239
  193. package/cjs/components/Autocomplete/__docs__/Autocomplete.mdx +0 -26
  194. package/cjs/components/Button/__creevey__/Button.creevey.mts +0 -251
  195. package/cjs/components/Button/__docs__/Button.mdx +0 -27
  196. package/cjs/components/Calendar/__creevey__/Calendar.creevey.mts +0 -113
  197. package/cjs/components/Calendar/__docs__/Calendar.mdx +0 -27
  198. package/cjs/components/Calendar/__docs__/CalendarDay.mdx +0 -23
  199. package/cjs/components/Center/__docs__/Center.mdx +0 -23
  200. package/cjs/components/Checkbox/__creevey__/Checkbox.creevey.mts +0 -243
  201. package/cjs/components/Checkbox/__docs__/Checkbox.mdx +0 -27
  202. package/cjs/components/ComboBox/__creevey__/ComboBox.creevey.mts +0 -545
  203. package/cjs/components/ComboBox/__docs__/ComboBox.mdx +0 -27
  204. package/cjs/components/CurrencyInput/__creevey__/CurrencyInput.creevey.mts +0 -81
  205. package/cjs/components/CurrencyInput/__docs__/CurrencyInput.mdx +0 -27
  206. package/cjs/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +0 -23
  207. package/cjs/components/DateInput/__creevey__/DateInput.creevey.mts +0 -156
  208. package/cjs/components/DateInput/__docs__/DateInput.mdx +0 -23
  209. package/cjs/components/DatePicker/__creevey__/DatePicker.creevey.mts +0 -209
  210. package/cjs/components/DatePicker/__docs__/DatePicker.mdx +0 -27
  211. package/cjs/components/DateRangePicker/__creevey__/DateRangePicker.creevey.mts +0 -155
  212. package/cjs/components/DateRangePicker/__docs__/DateRangePicker.mdx +0 -123
  213. package/cjs/components/Dropdown/__creevey__/Dropdown.creevey.mts +0 -184
  214. package/cjs/components/Dropdown/__docs__/Dropdown.mdx +0 -27
  215. package/cjs/components/DropdownMenu/__creevey__/DropdownMenu.creevey.mts +0 -263
  216. package/cjs/components/DropdownMenu/__docs__/DropdownMenu.mdx +0 -27
  217. package/cjs/components/FileUploader/__docs__/FileUploader.mdx +0 -27
  218. package/cjs/components/FxInput/__creevey__/FxInput.creevey.mts +0 -21
  219. package/cjs/components/FxInput/__docs__/FxInput.mdx +0 -27
  220. package/cjs/components/Gapped/__docs__/Gapped.mdx +0 -23
  221. package/cjs/components/GlobalLoader/__docs__/GlobalLoader.mdx +0 -27
  222. package/cjs/components/Group/__creevey__/Group.creevey.mts +0 -19
  223. package/cjs/components/Group/__docs__/Group.mdx +0 -23
  224. package/cjs/components/Hint/__creevey__/Hint.creevey.mts +0 -68
  225. package/cjs/components/Hint/__docs__/Hint.mdx +0 -28
  226. package/cjs/components/Input/__creevey__/Input.creevey.mts +0 -239
  227. package/cjs/components/Input/__docs__/Input.mdx +0 -27
  228. package/cjs/components/Kebab/__creevey__/Kebab.creevey.mts +0 -147
  229. package/cjs/components/Kebab/__docs__/Kebab.mdx +0 -27
  230. package/cjs/components/Link/__creevey__/Link.creevey.mts +0 -162
  231. package/cjs/components/Link/__docs__/Link.mdx +0 -27
  232. package/cjs/components/Loader/__creevey__/Loader.creevey.mts +0 -35
  233. package/cjs/components/Loader/__docs__/Loader.mdx +0 -23
  234. package/cjs/components/MaskedInput/__creevey__/MaskedInput.creevey.mts +0 -221
  235. package/cjs/components/MaskedInput/__docs__/MaskedInput.mdx +0 -27
  236. package/cjs/components/MenuFooter/__docs__/MenuFooter.mdx +0 -23
  237. package/cjs/components/MenuHeader/__docs__/MenuHeader.mdx +0 -23
  238. package/cjs/components/MenuItem/__docs__/MenuItem.mdx +0 -23
  239. package/cjs/components/MenuSeparator/__docs__/MenuSeparator.mdx +0 -23
  240. package/cjs/components/MiniModal/__docs__/MiniModal.mdx +0 -27
  241. package/cjs/components/MiniModal/__docs__/MiniModalBody.mdx +0 -17
  242. package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +0 -17
  243. package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +0 -18
  244. package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +0 -11
  245. package/cjs/components/Modal/__creevey__/Modal.creevey.mts +0 -295
  246. package/cjs/components/Modal/__docs__/Modal.mdx +0 -27
  247. package/cjs/components/Modal/__docs__/ModalBody.mdx +0 -15
  248. package/cjs/components/Modal/__docs__/ModalFooter.mdx +0 -15
  249. package/cjs/components/Modal/__docs__/ModalHeader.mdx +0 -15
  250. package/cjs/components/Modal/__docs__/ModalSeparator.mdx +0 -15
  251. package/cjs/components/Paging/__creevey__/Paging.creevey.mts +0 -97
  252. package/cjs/components/Paging/__docs__/Paging.mdx +0 -27
  253. package/cjs/components/PasswordInput/__creevey__/PasswordInput.creevey.mts +0 -46
  254. package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +0 -27
  255. package/cjs/components/Radio/__creevey__/Radio.creevey.mts +0 -28
  256. package/cjs/components/Radio/__docs__/Radio.mdx +0 -27
  257. package/cjs/components/RadioGroup/__creevey__/RadioGroup.creevey.mts +0 -86
  258. package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +0 -27
  259. package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +0 -96
  260. package/cjs/components/ScrollContainer/__creevey__/ScrollContainer.creevey.mts +0 -247
  261. package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +0 -23
  262. package/cjs/components/Select/__creevey__/Select.creevey.mts +0 -293
  263. package/cjs/components/Select/__docs__/Select.mdx +0 -27
  264. package/cjs/components/SidePage/__creevey__/SidePage.creevey.mts +0 -421
  265. package/cjs/components/SidePage/__docs__/SidePage.mdx +0 -27
  266. package/cjs/components/SidePage/__docs__/SidePageBody.mdx +0 -16
  267. package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +0 -15
  268. package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +0 -15
  269. package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +0 -15
  270. package/cjs/components/SingleToast/__docs__/SingleToast.mdx +0 -27
  271. package/cjs/components/Spinner/__docs__/Spinner.mdx +0 -27
  272. package/cjs/components/Sticky/__creevey__/Sticky.creevey.mts +0 -98
  273. package/cjs/components/Sticky/__docs__/Sticky.mdx +0 -23
  274. package/cjs/components/Switcher/__creevey__/Switcher.creevey.mts +0 -24
  275. package/cjs/components/Switcher/__docs__/Switcher.mdx +0 -27
  276. package/cjs/components/Tabs/__creevey__/Tabs.creevey.mts +0 -239
  277. package/cjs/components/Tabs/__docs__/Tab.mdx +0 -27
  278. package/cjs/components/Tabs/__docs__/Tabs.mdx +0 -27
  279. package/cjs/components/Textarea/__creevey__/Textarea.creevey.mts +0 -177
  280. package/cjs/components/Textarea/__docs__/Textarea.mdx +0 -27
  281. package/cjs/components/Toast/__creevey__/Toast.creevey.mts +0 -77
  282. package/cjs/components/Toast/__docs__/Toast.mdx +0 -27
  283. package/cjs/components/Toggle/__creevey__/Toggle.creevey.mts +0 -93
  284. package/cjs/components/Toggle/__docs__/Toggle.mdx +0 -27
  285. package/cjs/components/Token/__docs__/Token.mdx +0 -27
  286. package/cjs/components/TokenInput/__creevey__/TokenInput.creevey.mts +0 -442
  287. package/cjs/components/TokenInput/__docs__/TokenInput.mdx +0 -27
  288. package/cjs/components/Tooltip/__creevey__/Tooltip.creevey.mts +0 -533
  289. package/cjs/components/Tooltip/__docs__/Tooltip.mdx +0 -27
  290. package/cjs/components/TooltipMenu/__creevey__/TooltipMenu.creevey.mts +0 -131
  291. package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +0 -23
  292. package/cjs/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.mts +0 -44
  293. package/cjs/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.mts +0 -48
  294. package/cjs/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.mts +0 -30
  295. package/cjs/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.mts +0 -25
  296. package/cjs/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.mts +0 -83
  297. package/cjs/internal/Menu/__creevey__/Menu.creevey.mts +0 -90
  298. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +0 -7
  299. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js +0 -89
  300. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +0 -1
  301. package/cjs/internal/PopupMenu/__creevey__/PopupMenu.creevey.mts +0 -37
  302. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +0 -36
  303. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +0 -4
  304. package/cjs/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.mts +0 -68
  305. package/cjs/internal/ZIndex/__creevey__/ZIndex.creevey.mts +0 -228
  306. package/components/Autocomplete/__creevey__/Autocomplete.creevey.d.mts +0 -1
  307. package/components/Autocomplete/__creevey__/Autocomplete.creevey.mts +0 -239
  308. package/components/Autocomplete/__docs__/Autocomplete.mdx +0 -26
  309. package/components/Button/__creevey__/Button.creevey.d.mts +0 -1
  310. package/components/Button/__creevey__/Button.creevey.mts +0 -251
  311. package/components/Button/__docs__/Button.mdx +0 -27
  312. package/components/Calendar/__creevey__/Calendar.creevey.d.mts +0 -1
  313. package/components/Calendar/__creevey__/Calendar.creevey.mts +0 -113
  314. package/components/Calendar/__docs__/Calendar.mdx +0 -27
  315. package/components/Calendar/__docs__/CalendarDay.mdx +0 -23
  316. package/components/Center/__docs__/Center.mdx +0 -23
  317. package/components/Checkbox/__creevey__/Checkbox.creevey.d.mts +0 -1
  318. package/components/Checkbox/__creevey__/Checkbox.creevey.mts +0 -243
  319. package/components/Checkbox/__docs__/Checkbox.mdx +0 -27
  320. package/components/ComboBox/__creevey__/ComboBox.creevey.d.mts +0 -1
  321. package/components/ComboBox/__creevey__/ComboBox.creevey.mts +0 -545
  322. package/components/ComboBox/__docs__/ComboBox.mdx +0 -27
  323. package/components/CurrencyInput/__creevey__/CurrencyInput.creevey.d.mts +0 -1
  324. package/components/CurrencyInput/__creevey__/CurrencyInput.creevey.mts +0 -81
  325. package/components/CurrencyInput/__docs__/CurrencyInput.mdx +0 -27
  326. package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +0 -23
  327. package/components/DateInput/__creevey__/DateInput.creevey.d.mts +0 -1
  328. package/components/DateInput/__creevey__/DateInput.creevey.mts +0 -156
  329. package/components/DateInput/__docs__/DateInput.mdx +0 -23
  330. package/components/DatePicker/__creevey__/DatePicker.creevey.d.mts +0 -1
  331. package/components/DatePicker/__creevey__/DatePicker.creevey.mts +0 -209
  332. package/components/DatePicker/__docs__/DatePicker.mdx +0 -27
  333. package/components/DateRangePicker/__creevey__/DateRangePicker.creevey.d.mts +0 -1
  334. package/components/DateRangePicker/__creevey__/DateRangePicker.creevey.mts +0 -155
  335. package/components/DateRangePicker/__docs__/DateRangePicker.mdx +0 -123
  336. package/components/Dropdown/__creevey__/Dropdown.creevey.d.mts +0 -1
  337. package/components/Dropdown/__creevey__/Dropdown.creevey.mts +0 -184
  338. package/components/Dropdown/__docs__/Dropdown.mdx +0 -27
  339. package/components/DropdownMenu/__creevey__/DropdownMenu.creevey.d.mts +0 -1
  340. package/components/DropdownMenu/__creevey__/DropdownMenu.creevey.mts +0 -263
  341. package/components/DropdownMenu/__docs__/DropdownMenu.mdx +0 -27
  342. package/components/FileUploader/__docs__/FileUploader.mdx +0 -27
  343. package/components/FxInput/__creevey__/FxInput.creevey.d.mts +0 -1
  344. package/components/FxInput/__creevey__/FxInput.creevey.mts +0 -21
  345. package/components/FxInput/__docs__/FxInput.mdx +0 -27
  346. package/components/Gapped/__docs__/Gapped.mdx +0 -23
  347. package/components/GlobalLoader/__docs__/GlobalLoader.mdx +0 -27
  348. package/components/Group/__creevey__/Group.creevey.d.mts +0 -1
  349. package/components/Group/__creevey__/Group.creevey.mts +0 -19
  350. package/components/Group/__docs__/Group.mdx +0 -23
  351. package/components/Hint/__creevey__/Hint.creevey.d.mts +0 -1
  352. package/components/Hint/__creevey__/Hint.creevey.mts +0 -68
  353. package/components/Hint/__docs__/Hint.mdx +0 -28
  354. package/components/Input/__creevey__/Input.creevey.d.mts +0 -1
  355. package/components/Input/__creevey__/Input.creevey.mts +0 -239
  356. package/components/Input/__docs__/Input.mdx +0 -27
  357. package/components/Kebab/__creevey__/Kebab.creevey.d.mts +0 -1
  358. package/components/Kebab/__creevey__/Kebab.creevey.mts +0 -147
  359. package/components/Kebab/__docs__/Kebab.mdx +0 -27
  360. package/components/Link/__creevey__/Link.creevey.d.mts +0 -1
  361. package/components/Link/__creevey__/Link.creevey.mts +0 -162
  362. package/components/Link/__docs__/Link.mdx +0 -27
  363. package/components/Loader/__creevey__/Loader.creevey.d.mts +0 -1
  364. package/components/Loader/__creevey__/Loader.creevey.mts +0 -35
  365. package/components/Loader/__docs__/Loader.mdx +0 -23
  366. package/components/MaskedInput/__creevey__/MaskedInput.creevey.d.mts +0 -1
  367. package/components/MaskedInput/__creevey__/MaskedInput.creevey.mts +0 -221
  368. package/components/MaskedInput/__docs__/MaskedInput.mdx +0 -27
  369. package/components/MenuFooter/__docs__/MenuFooter.mdx +0 -23
  370. package/components/MenuHeader/__docs__/MenuHeader.mdx +0 -23
  371. package/components/MenuItem/__docs__/MenuItem.mdx +0 -23
  372. package/components/MenuSeparator/__docs__/MenuSeparator.mdx +0 -23
  373. package/components/MiniModal/__docs__/MiniModal.mdx +0 -27
  374. package/components/MiniModal/__docs__/MiniModalBody.mdx +0 -17
  375. package/components/MiniModal/__docs__/MiniModalFooter.mdx +0 -17
  376. package/components/MiniModal/__docs__/MiniModalHeader.mdx +0 -18
  377. package/components/MiniModal/__docs__/MiniModalIndent.mdx +0 -11
  378. package/components/Modal/__creevey__/Modal.creevey.d.mts +0 -1
  379. package/components/Modal/__creevey__/Modal.creevey.mts +0 -295
  380. package/components/Modal/__docs__/Modal.mdx +0 -27
  381. package/components/Modal/__docs__/ModalBody.mdx +0 -15
  382. package/components/Modal/__docs__/ModalFooter.mdx +0 -15
  383. package/components/Modal/__docs__/ModalHeader.mdx +0 -15
  384. package/components/Modal/__docs__/ModalSeparator.mdx +0 -15
  385. package/components/Paging/__creevey__/Paging.creevey.d.mts +0 -1
  386. package/components/Paging/__creevey__/Paging.creevey.mts +0 -97
  387. package/components/Paging/__docs__/Paging.mdx +0 -27
  388. package/components/PasswordInput/__creevey__/PasswordInput.creevey.d.mts +0 -1
  389. package/components/PasswordInput/__creevey__/PasswordInput.creevey.mts +0 -46
  390. package/components/PasswordInput/__docs__/PasswordInput.mdx +0 -27
  391. package/components/Radio/__creevey__/Radio.creevey.d.mts +0 -1
  392. package/components/Radio/__creevey__/Radio.creevey.mts +0 -28
  393. package/components/Radio/__docs__/Radio.mdx +0 -27
  394. package/components/RadioGroup/__creevey__/RadioGroup.creevey.d.mts +0 -1
  395. package/components/RadioGroup/__creevey__/RadioGroup.creevey.mts +0 -86
  396. package/components/RadioGroup/__docs__/RadioGroup.mdx +0 -27
  397. package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +0 -96
  398. package/components/ScrollContainer/__creevey__/ScrollContainer.creevey.d.mts +0 -1
  399. package/components/ScrollContainer/__creevey__/ScrollContainer.creevey.mts +0 -247
  400. package/components/ScrollContainer/__docs__/ScrollContainer.mdx +0 -23
  401. package/components/Select/__creevey__/Select.creevey.d.mts +0 -1
  402. package/components/Select/__creevey__/Select.creevey.mts +0 -293
  403. package/components/Select/__docs__/Select.mdx +0 -27
  404. package/components/SidePage/__creevey__/SidePage.creevey.d.mts +0 -1
  405. package/components/SidePage/__creevey__/SidePage.creevey.mts +0 -421
  406. package/components/SidePage/__docs__/SidePage.mdx +0 -27
  407. package/components/SidePage/__docs__/SidePageBody.mdx +0 -16
  408. package/components/SidePage/__docs__/SidePageContainer.mdx +0 -15
  409. package/components/SidePage/__docs__/SidePageFooter.mdx +0 -15
  410. package/components/SidePage/__docs__/SidePageHeader.mdx +0 -15
  411. package/components/SingleToast/__docs__/SingleToast.mdx +0 -27
  412. package/components/Spinner/__docs__/Spinner.mdx +0 -27
  413. package/components/Sticky/__creevey__/Sticky.creevey.d.mts +0 -1
  414. package/components/Sticky/__creevey__/Sticky.creevey.mts +0 -98
  415. package/components/Sticky/__docs__/Sticky.mdx +0 -23
  416. package/components/Switcher/__creevey__/Switcher.creevey.d.mts +0 -1
  417. package/components/Switcher/__creevey__/Switcher.creevey.mts +0 -24
  418. package/components/Switcher/__docs__/Switcher.mdx +0 -27
  419. package/components/Tabs/__creevey__/Tabs.creevey.d.mts +0 -1
  420. package/components/Tabs/__creevey__/Tabs.creevey.mts +0 -239
  421. package/components/Tabs/__docs__/Tab.mdx +0 -27
  422. package/components/Tabs/__docs__/Tabs.mdx +0 -27
  423. package/components/Textarea/__creevey__/Textarea.creevey.d.mts +0 -1
  424. package/components/Textarea/__creevey__/Textarea.creevey.mts +0 -177
  425. package/components/Textarea/__docs__/Textarea.mdx +0 -27
  426. package/components/Toast/__creevey__/Toast.creevey.d.mts +0 -1
  427. package/components/Toast/__creevey__/Toast.creevey.mts +0 -77
  428. package/components/Toast/__docs__/Toast.mdx +0 -27
  429. package/components/Toggle/__creevey__/Toggle.creevey.d.mts +0 -1
  430. package/components/Toggle/__creevey__/Toggle.creevey.mts +0 -93
  431. package/components/Toggle/__docs__/Toggle.mdx +0 -27
  432. package/components/Token/__docs__/Token.mdx +0 -27
  433. package/components/TokenInput/__creevey__/TokenInput.creevey.d.mts +0 -1
  434. package/components/TokenInput/__creevey__/TokenInput.creevey.mts +0 -442
  435. package/components/TokenInput/__docs__/TokenInput.mdx +0 -27
  436. package/components/Tooltip/__creevey__/Tooltip.creevey.d.mts +0 -1
  437. package/components/Tooltip/__creevey__/Tooltip.creevey.mts +0 -533
  438. package/components/Tooltip/__docs__/Tooltip.mdx +0 -27
  439. package/components/TooltipMenu/__creevey__/TooltipMenu.creevey.d.mts +0 -1
  440. package/components/TooltipMenu/__creevey__/TooltipMenu.creevey.mts +0 -131
  441. package/components/TooltipMenu/__docs__/TooltipMenu.mdx +0 -23
  442. package/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.d.mts +0 -1
  443. package/internal/ClearCrossIcon/__creevey__/ClearCrossIcon.creevey.mts +0 -44
  444. package/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.d.mts +0 -1
  445. package/internal/CloseButtonIcon/__creevey__/CloseButtonIcon.creevey.mts +0 -48
  446. package/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.d.mts +0 -1
  447. package/internal/CustomComboBox/__creevey__/ComboBoxView.creevey.mts +0 -30
  448. package/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.d.mts +0 -1
  449. package/internal/FileUploaderControl/__creevey__/FileUploaderFile.creevey.mts +0 -25
  450. package/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.d.mts +0 -1
  451. package/internal/HideBodyVerticalScroll/__creevey__/HideBodyVerticalScroll.creevey.mts +0 -83
  452. package/internal/Menu/__creevey__/Menu.creevey.d.mts +0 -1
  453. package/internal/Menu/__creevey__/Menu.creevey.mts +0 -90
  454. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js +0 -106
  455. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +0 -1
  456. package/internal/PerformanceMetrics/PerformanceMetrics/package.json +0 -6
  457. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +0 -7
  458. package/internal/PopupMenu/__creevey__/PopupMenu.creevey.d.mts +0 -1
  459. package/internal/PopupMenu/__creevey__/PopupMenu.creevey.mts +0 -37
  460. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.d.mts +0 -1
  461. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +0 -36
  462. package/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +0 -4
  463. package/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.d.mts +0 -1
  464. package/internal/ThemePlayground/__creevey__/ThemeProvider.creevey.mts +0 -68
  465. package/internal/ZIndex/__creevey__/ZIndex.creevey.d.mts +0 -1
  466. package/internal/ZIndex/__creevey__/ZIndex.creevey.mts +0 -228
@@ -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;
@@ -1,9 +1,7 @@
1
1
  import type { AriaAttributes, HTMLAttributes } from 'react';
2
2
  import React from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { MenuHeader } from '../MenuHeader';
5
4
  import { MenuItem } from '../MenuItem';
6
- import { MenuSeparator } from '../MenuSeparator';
7
5
  import type { ButtonUse } from '../Button';
8
6
  import type { CommonProps } from '../../internal/CommonWrapper';
9
7
  import type { SizeProp } from '../../lib/types/props';
@@ -66,9 +64,9 @@ export declare const DropdownDataTids: {
66
64
  export declare class Dropdown extends React.Component<DropdownProps> {
67
65
  static __KONTUR_REACT_UI__: string;
68
66
  static displayName: string;
69
- static Header: typeof MenuHeader;
67
+ static Header: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, import("../MenuHeader").MenuHeaderProps> & Record<never, never>;
70
68
  static MenuItem: typeof MenuItem;
71
- static Separator: typeof MenuSeparator;
69
+ static Separator: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, CommonProps> & Record<never, never>;
72
70
  static propTypes: {
73
71
  /**
74
72
  * Подпись на кнопке.
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","Group","Input","CurrencyInput","createPropsGetter","CommonWrapper","rootNode","ThemeContext","MathFunctionIcon","FxInputRestoreBtn","FxInputDataTids","root","FxInput","_class","_FxInput","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","input","getProps","defaultProps","renderMain","props","type","onRestore","auto","refInput","value","width","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","align","button","inputCorners","_extends","corners","borderBottomLeftRadius","borderTopLeftRadius","iconSizes","small","parseInt","theme","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","size","IconFunction","createElement","leftIcon","disabled","borderless","buttonAriaLabel","ref","onValueChange","focus","blur","element","_inheritsLoose","_proto","prototype","render","_this2","Consumer","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","string"],"sources":["FxInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Group } from '../Group';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { CurrencyInputProps } from '../CurrencyInput';\nimport { CurrencyInput } from '../CurrencyInput';\nimport type { DefaultizedProps } from '../../lib/createPropsGetter';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Override } from '../../typings/utility-types';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { MathFunctionIcon } from './MathFunctionIcon';\nimport { FxInputRestoreBtn } from './FxInputRestoreBtn';\n\nexport interface FxInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n CurrencyInputProps,\n {\n /** Устанавливает авто-режим. */\n auto?: boolean;\n\n /** Задает тип инпута */\n type?: 'currency' | InputProps['type'];\n\n /** Задает функцию, которая вызывается при нажатии на кнопку Restore. */\n onRestore?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value. */\n onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];\n\n /** Задает значение инпута. */\n value?: React.ReactText;\n\n /** Задает ref инпута. */\n refInput?: (element: CurrencyInput | Input | null) => void;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Задает атрибут aria-label кнопке восстановления (restore button). */\n buttonAriaLabel?: AriaAttributes['aria-label'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n }\n > {}\n\nexport const FxInputDataTids = {\n root: 'FxInput__root',\n} as const;\n\ntype DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value'>>;\ntype DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;\n\n/**\n * Автополе `FxInput`.\n *\n * Используйте `FxInput`, если поле вычисляемое и вы рассчитали значение.\n *\n * Принимает все свойства `Input`'a.\n */\n@rootNode\nexport class FxInput extends React.Component<FxInputProps> {\n public static __KONTUR_REACT_UI__ = 'FxInput';\n public static displayName = 'FxInput';\n\n public static propTypes = {\n auto: PropTypes.bool,\n type: PropTypes.string,\n };\n\n public static defaultProps: DefaultProps = {\n width: 250,\n type: 'text',\n value: '',\n };\n\n private theme!: Theme;\n private input: Input | CurrencyInput | null = null;\n\n private getProps = createPropsGetter(FxInput.defaultProps);\n private setRootNode!: TSetRootNode;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => {\n const { type, onRestore, auto, refInput, value, width, ...rest } = props;\n const inputProps: Partial<CurrencyInputProps> = {\n align: 'right',\n };\n\n let button = null;\n const inputCorners: InputProps['corners'] = auto\n ? { ...rest.corners }\n : { borderBottomLeftRadius: 0, borderTopLeftRadius: 0, ...rest.corners };\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.inputIconSizeSmall),\n medium: parseInt(this.theme.inputIconSizeMedium),\n large: parseInt(this.theme.inputIconSizeLarge),\n };\n const size = this.props.size || Input.defaultProps.size;\n const IconFunction = <MathFunctionIcon size={iconSizes[size]} />;\n\n if (auto) {\n inputProps.leftIcon = IconFunction;\n } else {\n button = (\n <FxInputRestoreBtn\n size={rest.size}\n onRestore={onRestore}\n corners={rest.corners}\n disabled={rest.disabled}\n borderless={rest.borderless}\n aria-label={props.buttonAriaLabel}\n />\n );\n }\n\n return (\n <Group data-tid={FxInputDataTids.root} width={width}>\n {button}\n {type === 'currency' ? (\n <CurrencyInput\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n value={value as CurrencyInputProps['value']}\n onValueChange={this.props.onValueChange as CurrencyInputProps['onValueChange']}\n />\n ) : (\n <Input\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n type={type}\n value={value as InputProps['value']}\n onValueChange={this.props.onValueChange as InputProps['onValueChange']}\n />\n )}\n </Group>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private refInput = (element: Input | CurrencyInput | null) => {\n this.input = element;\n\n if (this.props.refInput) {\n this.props.refInput(this.input);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PropTypes","Group","Input","CurrencyInput","createPropsGetter","CommonWrapper","rootNode","ThemeContext","MathFunctionIcon","FxInputRestoreBtn","FxInputDataTids","root","FxInput","_class","_FxInput","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","input","getProps","defaultProps","renderMain","props","type","onRestore","auto","refInput","value","width","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","align","button","inputCorners","_extends","corners","borderBottomLeftRadius","borderTopLeftRadius","iconSizes","small","parseInt","theme","inputIconSizeSmall","medium","inputIconSizeMedium","large","inputIconSizeLarge","size","IconFunction","createElement","leftIcon","disabled","borderless","buttonAriaLabel","ref","onValueChange","focus","blur","element","_inheritsLoose","_proto","prototype","render","_this2","Consumer","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","string"],"sources":["FxInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Group } from '../Group';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { CurrencyInputProps } from '../CurrencyInput';\nimport { CurrencyInput } from '../CurrencyInput';\nimport type { DefaultizedProps } from '../../lib/createPropsGetter';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Override } from '../../typings/utility-types';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { MathFunctionIcon } from './MathFunctionIcon';\nimport { FxInputRestoreBtn } from './FxInputRestoreBtn';\n\nexport interface FxInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n CurrencyInputProps,\n {\n /** Устанавливает авто-режим. */\n auto?: boolean;\n\n /** Задает тип инпута */\n type?: 'currency' | InputProps['type'];\n\n /** Задает функцию, которая вызывается при нажатии на кнопку Restore. */\n onRestore?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value. */\n onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];\n\n /** Задает значение инпута. */\n value?: string | number;\n\n /** Задает ref инпута. */\n refInput?: (element: CurrencyInput | Input | null) => void;\n\n /** Убирает лишние нули после запятой. */\n hideTrailingZeros?: boolean;\n\n /** Задает атрибут aria-label кнопке восстановления (restore button). */\n buttonAriaLabel?: AriaAttributes['aria-label'];\n\n /** @ignore */\n corners?: React.CSSProperties;\n }\n > {}\n\nexport const FxInputDataTids = {\n root: 'FxInput__root',\n} as const;\n\ntype DefaultProps = Required<Pick<FxInputProps, 'width' | 'type' | 'value'>>;\ntype DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;\n\n/**\n * Автополе `FxInput`.\n *\n * Используйте `FxInput`, если поле вычисляемое и вы рассчитали значение.\n *\n * Принимает все свойства `Input`'a.\n */\n@rootNode\nexport class FxInput extends React.Component<FxInputProps> {\n public static __KONTUR_REACT_UI__ = 'FxInput';\n public static displayName = 'FxInput';\n\n public static propTypes = {\n auto: PropTypes.bool,\n type: PropTypes.string,\n };\n\n public static defaultProps: DefaultProps = {\n width: 250,\n type: 'text',\n value: '',\n };\n\n private theme!: Theme;\n private input: Input | CurrencyInput | null = null;\n\n private getProps = createPropsGetter(FxInput.defaultProps);\n private setRootNode!: TSetRootNode;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => {\n const { type, onRestore, auto, refInput, value, width, ...rest } = props;\n const inputProps: Partial<CurrencyInputProps> = {\n align: 'right',\n };\n\n let button = null;\n const inputCorners: InputProps['corners'] = auto\n ? { ...rest.corners }\n : { borderBottomLeftRadius: 0, borderTopLeftRadius: 0, ...rest.corners };\n const iconSizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.inputIconSizeSmall),\n medium: parseInt(this.theme.inputIconSizeMedium),\n large: parseInt(this.theme.inputIconSizeLarge),\n };\n const size = this.props.size || Input.defaultProps.size;\n const IconFunction = <MathFunctionIcon size={iconSizes[size]} />;\n\n if (auto) {\n inputProps.leftIcon = IconFunction;\n } else {\n button = (\n <FxInputRestoreBtn\n size={rest.size}\n onRestore={onRestore}\n corners={rest.corners}\n disabled={rest.disabled}\n borderless={rest.borderless}\n aria-label={props.buttonAriaLabel}\n />\n );\n }\n\n return (\n <Group data-tid={FxInputDataTids.root} width={width}>\n {button}\n {type === 'currency' ? (\n <CurrencyInput\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n value={value as CurrencyInputProps['value']}\n onValueChange={this.props.onValueChange as CurrencyInputProps['onValueChange']}\n />\n ) : (\n <Input\n {...inputProps}\n {...rest}\n corners={inputCorners}\n size={this.props.size}\n width={'100%'}\n ref={this.refInput}\n type={type}\n value={value as InputProps['value']}\n onValueChange={this.props.onValueChange as InputProps['onValueChange']}\n />\n )}\n </Group>\n );\n };\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private refInput = (element: Input | CurrencyInput | null) => {\n this.input = element;\n\n if (this.props.refInput) {\n this.props.refInput(this.input);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,7 @@ export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, Common
18
18
  /** Задает функцию, вызывающуюся при изменении value. */
19
19
  onValueChange: CurrencyInputProps['onValueChange'] | InputProps['onValueChange'];
20
20
  /** Задает значение инпута. */
21
- value?: React.ReactText;
21
+ value?: string | number;
22
22
  /** Задает ref инпута. */
23
23
  refInput?: (element: CurrencyInput | Input | null) => void;
24
24
  /** Убирает лишние нули после запятой. */
@@ -4,6 +4,7 @@ import React, { useContext } from 'react';
4
4
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
5
5
  import { CommonWrapper } from "../../../internal/CommonWrapper";
6
6
  import { cx } from "../../../lib/theming/Emotion";
7
+ import { forwardRefAndName } from "../../../lib/forwardRefAndName";
7
8
  import { styles } from "../MenuFooter.styles";
8
9
  export var MenuFooterDataTids = {
9
10
  root: 'MenuFooter__root'
@@ -16,7 +17,8 @@ export var MenuFooterDataTids = {
16
17
  *
17
18
  * Сущности, в которых может быть использован `MenuFooter`: DropdownMenu, Kebab, TooltipMenu и Select.
18
19
  */
19
- function MenuFooter(_ref) {
20
+
21
+ var MenuFooter = forwardRefAndName('MenuFooter', function MenuFooter(_ref, ref) {
20
22
  var _cx;
21
23
  var id = _ref.id,
22
24
  _ref$_enableIconPaddi = _ref._enableIconPadding,
@@ -52,13 +54,14 @@ function MenuFooter(_ref) {
52
54
  React.createElement(CommonWrapper, rest, /*#__PURE__*/
53
55
  React.createElement("div", {
54
56
  id: id,
57
+ ref: ref,
55
58
  "data-tid": MenuFooterDataTids.root,
56
59
  className: cx(getRootSizeClassName(), (_cx = {}, _cx[styles.root(theme)] = true, _cx[getWithLeftPaddingSizeClassName()] = _enableIconPadding, _cx))
57
60
  }, children))
58
61
  );
59
- }
60
- MenuFooter.__KONTUR_REACT_UI__ = 'MenuFooter';
61
- MenuFooter.displayName = 'MenuFooter';
62
+ });
63
+
64
+ //@ts-ignore
62
65
  MenuFooter.__MENU_FOOTER__ = true;
63
66
  export { MenuFooter };
64
67
  export var isMenuFooter = function isMenuFooter(child) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useContext","ThemeContext","CommonWrapper","cx","styles","MenuFooterDataTids","root","MenuFooter","_ref","_cx","id","_ref$_enableIconPaddi","_enableIconPadding","children","_ref$size","size","rest","_objectWithoutPropertiesLoose","_excluded","theme","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","createElement","className","__KONTUR_REACT_UI__","displayName","__MENU_FOOTER__","isMenuFooter","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"sources":["MenuFooter.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\nimport React, { useContext } from 'react';\n\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 { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './MenuFooter.styles';\n\nexport interface MenuFooterProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Добавляет отступ иконке. */\n _enableIconPadding?: boolean;\n\n /** @ignore */\n children: ReactNode;\n\n /** Задает размер. */\n size?: SizeProp;\n}\n\nexport const MenuFooterDataTids = {\n root: 'MenuFooter__root',\n} as const;\n\n/**\n * Футер меню `MenuFooter`.\n *\n * `MenuFooter`, в отличие от `MenuItem` нельзя затаргетить с клавиатуры.\n *\n * Сущности, в которых может быть использован `MenuFooter`: DropdownMenu, Kebab, TooltipMenu и Select.\n */\nfunction MenuFooter({ id, _enableIconPadding = false, children, size = 'small', ...rest }: MenuFooterProps) {\n const theme = useContext(ThemeContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n id={id}\n data-tid={MenuFooterDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuFooter.__KONTUR_REACT_UI__ = 'MenuFooter';\nMenuFooter.displayName = 'MenuFooter';\nMenuFooter.__MENU_FOOTER__ = true;\n\nexport { MenuFooter };\n\nexport const isMenuFooter = (child: React.ReactNode): child is React.ReactElement<MenuFooterProps> => {\n return React.isValidElement<MenuFooterProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_FOOTER__')\n : false;\n};\n"],"mappings":";AACA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,YAAY,QAAQ,gCAAgC;;AAE7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;;AAG9C,SAASC,MAAM,QAAQ,qBAAqB;;;;;;;;;;;;;AAa5C,OAAO,IAAMC,kBAAkB,GAAG;EAChCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,UAAUA,CAAAC,IAAA,EAAyF,KAAAC,GAAA,KAAtFC,EAAE,GAAAF,IAAA,CAAFE,EAAE,CAAAC,qBAAA,GAAAH,IAAA,CAAEI,kBAAkB,CAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CAAEE,QAAQ,GAAAL,IAAA,CAARK,QAAQ,CAAAC,SAAA,GAAAN,IAAA,CAAEO,IAAI,CAAJA,IAAI,GAAAD,SAAA,cAAG,OAAO,GAAAA,SAAA,CAAKE,IAAI,GAAAC,6BAAA,CAAAT,IAAA,EAAAU,SAAA;EACrF,IAAMC,KAAK,GAAGnB,UAAU,CAACC,YAAY,CAAC;;EAEtC,SAASmB,oBAAoBA,CAAA,EAAG;IAC9B,QAAQL,IAAI;MACV,KAAK,OAAO;QACV,OAAOX,MAAM,CAACiB,SAAS,CAACF,KAAK,CAAC;MAChC,KAAK,QAAQ;QACX,OAAOf,MAAM,CAACkB,UAAU,CAACH,KAAK,CAAC;MACjC,KAAK,OAAO;MACZ;QACE,OAAOf,MAAM,CAACmB,SAAS,CAACJ,KAAK,CAAC;IAClC;EACF;EACA,SAASK,+BAA+BA,CAAA,EAAG;IACzC,QAAQT,IAAI;MACV,KAAK,OAAO;QACV,OAAOX,MAAM,CAACqB,oBAAoB,CAACN,KAAK,CAAC;MAC3C,KAAK,QAAQ;QACX,OAAOf,MAAM,CAACsB,qBAAqB,CAACP,KAAK,CAAC;MAC5C,KAAK,OAAO;MACZ;QACE,OAAOf,MAAM,CAACqB,oBAAoB,CAACN,KAAK,CAAC;IAC7C;EACF;;EAEA;IACEpB,KAAA,CAAA4B,aAAA,CAACzB,aAAa,EAAKc,IAAI;IACrBjB,KAAA,CAAA4B,aAAA;MACEjB,EAAE,EAAEA,EAAG;MACP,YAAUL,kBAAkB,CAACC,IAAK;MAClCsB,SAAS,EAAEzB,EAAE,CAACiB,oBAAoB,CAAC,CAAC,GAAAX,GAAA,OAAAA,GAAA;MACjCL,MAAM,CAACE,IAAI,CAACa,KAAK,CAAC,IAAG,IAAI,EAAAV,GAAA;MACzBe,+BAA+B,CAAC,CAAC,IAAGZ,kBAAkB,EAAAH,GAAA;MACxD,CAAE;;IAEFI;IACE;IACQ,CAAC;;AAEpB;;AAEAN,UAAU,CAACsB,mBAAmB,GAAG,YAAY;AAC7CtB,UAAU,CAACuB,WAAW,GAAG,YAAY;AACrCvB,UAAU,CAACwB,eAAe,GAAG,IAAI;;AAEjC,SAASxB,UAAU;;AAEnB,OAAO,IAAMyB,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAsB,EAAmD;EACpG,OAAO,aAAAlC,KAAK,CAACmC,cAAc,CAAkBD,KAAK,CAAC;EAC/CE,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAK,CAACM,IAAI,EAAE,iBAAiB,CAAC;EACnE,KAAK;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useContext","ThemeContext","CommonWrapper","cx","forwardRefAndName","styles","MenuFooterDataTids","root","MenuFooter","_ref","ref","_cx","id","_ref$_enableIconPaddi","_enableIconPadding","children","_ref$size","size","rest","_objectWithoutPropertiesLoose","_excluded","theme","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","createElement","className","__MENU_FOOTER__","isMenuFooter","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"sources":["MenuFooter.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\nimport React, { useContext } from 'react';\n\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 { SizeProp } from '../../lib/types/props';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nimport { styles } from './MenuFooter.styles';\n\nexport interface MenuFooterProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Добавляет отступ иконке. */\n _enableIconPadding?: boolean;\n\n /** @ignore */\n children: ReactNode;\n\n /** Задает размер. */\n size?: SizeProp;\n}\n\nexport const MenuFooterDataTids = {\n root: 'MenuFooter__root',\n} as const;\n\n/**\n * Футер меню `MenuFooter`.\n *\n * `MenuFooter`, в отличие от `MenuItem` нельзя затаргетить с клавиатуры.\n *\n * Сущности, в которых может быть использован `MenuFooter`: DropdownMenu, Kebab, TooltipMenu и Select.\n */\n\nconst MenuFooter = forwardRefAndName(\n 'MenuFooter',\n function MenuFooter(\n { id, _enableIconPadding = false, children, size = 'small', ...rest }: MenuFooterProps,\n ref: React.Ref<HTMLDivElement>,\n ) {\n const theme = useContext(ThemeContext);\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n id={id}\n ref={ref}\n data-tid={MenuFooterDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n },\n);\n\n//@ts-ignore\nMenuFooter.__MENU_FOOTER__ = true;\n\nexport { MenuFooter };\n\nexport const isMenuFooter = (child: React.ReactNode): child is React.ReactElement<MenuFooterProps> => {\n return React.isValidElement<MenuFooterProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_FOOTER__')\n : false;\n};\n"],"mappings":";AACA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,YAAY,QAAQ,gCAAgC;;AAE7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;AAE9C,SAASC,iBAAiB,QAAQ,6BAA6B;;AAE/D,SAASC,MAAM,QAAQ,qBAAqB;;;;;;;;;;;;;AAa5C,OAAO,IAAMC,kBAAkB,GAAG;EAChCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,UAAU,GAAGJ,iBAAiB;EAClC,YAAY;EACZ,SAASI,UAAUA,CAAAC,IAAA;;EAEjBC,GAA8B;EAC9B,KAAAC,GAAA,KAFEC,EAAE,GAAAH,IAAA,CAAFG,EAAE,CAAAC,qBAAA,GAAAJ,IAAA,CAAEK,kBAAkB,CAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CAAEE,QAAQ,GAAAN,IAAA,CAARM,QAAQ,CAAAC,SAAA,GAAAP,IAAA,CAAEQ,IAAI,CAAJA,IAAI,GAAAD,SAAA,cAAG,OAAO,GAAAA,SAAA,CAAKE,IAAI,GAAAC,6BAAA,CAAAV,IAAA,EAAAW,SAAA;IAGnE,IAAMC,KAAK,GAAGrB,UAAU,CAACC,YAAY,CAAC;IACtC,SAASqB,oBAAoBA,CAAA,EAAG;MAC9B,QAAQL,IAAI;QACV,KAAK,OAAO;UACV,OAAOZ,MAAM,CAACkB,SAAS,CAACF,KAAK,CAAC;QAChC,KAAK,QAAQ;UACX,OAAOhB,MAAM,CAACmB,UAAU,CAACH,KAAK,CAAC;QACjC,KAAK,OAAO;QACZ;UACE,OAAOhB,MAAM,CAACoB,SAAS,CAACJ,KAAK,CAAC;MAClC;IACF;IACA,SAASK,+BAA+BA,CAAA,EAAG;MACzC,QAAQT,IAAI;QACV,KAAK,OAAO;UACV,OAAOZ,MAAM,CAACsB,oBAAoB,CAACN,KAAK,CAAC;QAC3C,KAAK,QAAQ;UACX,OAAOhB,MAAM,CAACuB,qBAAqB,CAACP,KAAK,CAAC;QAC5C,KAAK,OAAO;QACZ;UACE,OAAOhB,MAAM,CAACsB,oBAAoB,CAACN,KAAK,CAAC;MAC7C;IACF;;IAEA;MACEtB,KAAA,CAAA8B,aAAA,CAAC3B,aAAa,EAAKgB,IAAI;MACrBnB,KAAA,CAAA8B,aAAA;QACEjB,EAAE,EAAEA,EAAG;QACPF,GAAG,EAAEA,GAAI;QACT,YAAUJ,kBAAkB,CAACC,IAAK;QAClCuB,SAAS,EAAE3B,EAAE,CAACmB,oBAAoB,CAAC,CAAC,GAAAX,GAAA,OAAAA,GAAA;QACjCN,MAAM,CAACE,IAAI,CAACc,KAAK,CAAC,IAAG,IAAI,EAAAV,GAAA;QACzBe,+BAA+B,CAAC,CAAC,IAAGZ,kBAAkB,EAAAH,GAAA;QACxD,CAAE;;MAEFI;MACE;MACQ,CAAC;;EAEpB;AACF,CAAC;;AAED;AACAP,UAAU,CAACuB,eAAe,GAAG,IAAI;;AAEjC,SAASvB,UAAU;;AAEnB,OAAO,IAAMwB,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAsB,EAAmD;EACpG,OAAO,aAAAlC,KAAK,CAACmC,cAAc,CAAkBD,KAAK,CAAC;EAC/CE,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAK,CAACM,IAAI,EAAE,iBAAiB,CAAC;EACnE,KAAK;AACX,CAAC","ignoreList":[]}
@@ -20,11 +20,6 @@ export declare const MenuFooterDataTids: {
20
20
  *
21
21
  * Сущности, в которых может быть использован `MenuFooter`: DropdownMenu, Kebab, TooltipMenu и Select.
22
22
  */
23
- declare function MenuFooter({ id, _enableIconPadding, children, size, ...rest }: MenuFooterProps): React.JSX.Element;
24
- declare namespace MenuFooter {
25
- var __KONTUR_REACT_UI__: string;
26
- var displayName: string;
27
- var __MENU_FOOTER__: boolean;
28
- }
23
+ declare const MenuFooter: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, MenuFooterProps> & Record<never, never>;
29
24
  export { MenuFooter };
30
25
  export declare const isMenuFooter: (child: React.ReactNode) => child is React.ReactElement<MenuFooterProps, string | React.JSXElementConstructor<any>>;
@@ -5,6 +5,7 @@ import { ThemeContext } from "../../../lib/theming/ThemeContext";
5
5
  import { CommonWrapper } from "../../../internal/CommonWrapper";
6
6
  import { cx } from "../../../lib/theming/Emotion";
7
7
  import { MenuContext } from "../../../internal/Menu/MenuContext";
8
+ import { forwardRefAndName } from "../../../lib/forwardRefAndName";
8
9
  import { styles } from "../MenuHeader.styles";
9
10
  export var MenuHeaderDataTids = {
10
11
  root: 'MenuHeader__root'
@@ -17,7 +18,8 @@ export var MenuHeaderDataTids = {
17
18
  *
18
19
  * Сущности в которых может быть использован `MenuHeader`: DropdownMenu, Kebab, TooltipMenu и Select.
19
20
  */
20
- function MenuHeader(_ref) {
21
+
22
+ var MenuHeader = forwardRefAndName('MenuHeader', function MenuHeader(_ref, ref) {
21
23
  var _cx;
22
24
  var id = _ref.id,
23
25
  _ref$_enableIconPaddi = _ref._enableIconPadding,
@@ -53,14 +55,15 @@ function MenuHeader(_ref) {
53
55
  return /*#__PURE__*/(
54
56
  React.createElement(CommonWrapper, rest, /*#__PURE__*/
55
57
  React.createElement("div", {
58
+ ref: ref,
56
59
  id: id,
57
60
  "data-tid": MenuHeaderDataTids.root,
58
61
  className: cx(getRootSizeClassName(), (_cx = {}, _cx[styles.root(theme)] = true, _cx[getWithLeftPaddingSizeClassName()] = menuContext.enableIconPadding || _enableIconPadding, _cx))
59
62
  }, children))
60
63
  );
61
- }
62
- MenuHeader.__KONTUR_REACT_UI__ = 'MenuHeader';
63
- MenuHeader.displayName = 'MenuHeader';
64
+ });
65
+
66
+ //@ts-ignore
64
67
  MenuHeader.__MENU_HEADER__ = true;
65
68
  export { MenuHeader };
66
69
  export var isMenuHeader = function isMenuHeader(child) {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useContext","ThemeContext","CommonWrapper","cx","MenuContext","styles","MenuHeaderDataTids","root","MenuHeader","_ref","_cx","id","_ref$_enableIconPaddi","_enableIconPadding","children","_ref$size","size","rest","_objectWithoutPropertiesLoose","_excluded","theme","menuContext","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","createElement","className","enableIconPadding","__KONTUR_REACT_UI__","displayName","__MENU_HEADER__","isMenuHeader","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"sources":["MenuHeader.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\nimport React, { useContext } from 'react';\n\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 { SizeProp } from '../../lib/types/props';\nimport { MenuContext } from '../../internal/Menu/MenuContext';\n\nimport { styles } from './MenuHeader.styles';\n\nexport interface MenuHeaderProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Добавляет отступ иконке. */\n _enableIconPadding?: boolean;\n\n /** @ignore */\n children: ReactNode;\n\n /** Задает размер. */\n size?: SizeProp;\n}\n\nexport const MenuHeaderDataTids = {\n root: 'MenuHeader__root',\n} as const;\n\n/**\n * Заголовок меню `MenuHeader` используется для того, чтобы разделить элементы меню на категории в рамках одного меню.\n *\n * `MenuHeader`, в отличие от `MenuItem` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuHeader`: DropdownMenu, Kebab, TooltipMenu и Select.\n */\nfunction MenuHeader({ id, _enableIconPadding = false, children, size = 'small', ...rest }: MenuHeaderProps) {\n const theme = useContext(ThemeContext);\n const menuContext = useContext(MenuContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n id={id}\n data-tid={MenuHeaderDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: menuContext.enableIconPadding || _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n}\n\nMenuHeader.__KONTUR_REACT_UI__ = 'MenuHeader';\nMenuHeader.displayName = 'MenuHeader';\nMenuHeader.__MENU_HEADER__ = true;\n\nexport { MenuHeader };\n\nexport const isMenuHeader = (child: React.ReactNode): child is React.ReactElement<MenuHeaderProps> => {\n return React.isValidElement<MenuHeaderProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_HEADER__')\n : false;\n};\n"],"mappings":";AACA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,YAAY,QAAQ,gCAAgC;;AAE7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;AAE9C,SAASC,WAAW,QAAQ,iCAAiC;;AAE7D,SAASC,MAAM,QAAQ,qBAAqB;;;;;;;;;;;;;AAa5C,OAAO,IAAMC,kBAAkB,GAAG;EAChCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,UAAUA,CAAAC,IAAA,EAAyF,KAAAC,GAAA,KAAtFC,EAAE,GAAAF,IAAA,CAAFE,EAAE,CAAAC,qBAAA,GAAAH,IAAA,CAAEI,kBAAkB,CAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CAAEE,QAAQ,GAAAL,IAAA,CAARK,QAAQ,CAAAC,SAAA,GAAAN,IAAA,CAAEO,IAAI,CAAJA,IAAI,GAAAD,SAAA,cAAG,OAAO,GAAAA,SAAA,CAAKE,IAAI,GAAAC,6BAAA,CAAAT,IAAA,EAAAU,SAAA;EACrF,IAAMC,KAAK,GAAGpB,UAAU,CAACC,YAAY,CAAC;EACtC,IAAMoB,WAAW,GAAGrB,UAAU,CAACI,WAAW,CAAC;;EAE3C,SAASkB,oBAAoBA,CAAA,EAAG;IAC9B,QAAQN,IAAI;MACV,KAAK,OAAO;QACV,OAAOX,MAAM,CAACkB,SAAS,CAACH,KAAK,CAAC;MAChC,KAAK,QAAQ;QACX,OAAOf,MAAM,CAACmB,UAAU,CAACJ,KAAK,CAAC;MACjC,KAAK,OAAO;MACZ;QACE,OAAOf,MAAM,CAACoB,SAAS,CAACL,KAAK,CAAC;IAClC;EACF;EACA,SAASM,+BAA+BA,CAAA,EAAG;IACzC,QAAQV,IAAI;MACV,KAAK,OAAO;QACV,OAAOX,MAAM,CAACsB,oBAAoB,CAACP,KAAK,CAAC;MAC3C,KAAK,QAAQ;QACX,OAAOf,MAAM,CAACuB,qBAAqB,CAACR,KAAK,CAAC;MAC5C,KAAK,OAAO;MACZ;QACE,OAAOf,MAAM,CAACsB,oBAAoB,CAACP,KAAK,CAAC;IAC7C;EACF;;EAEA;IACErB,KAAA,CAAA8B,aAAA,CAAC3B,aAAa,EAAKe,IAAI;IACrBlB,KAAA,CAAA8B,aAAA;MACElB,EAAE,EAAEA,EAAG;MACP,YAAUL,kBAAkB,CAACC,IAAK;MAClCuB,SAAS,EAAE3B,EAAE,CAACmB,oBAAoB,CAAC,CAAC,GAAAZ,GAAA,OAAAA,GAAA;MACjCL,MAAM,CAACE,IAAI,CAACa,KAAK,CAAC,IAAG,IAAI,EAAAV,GAAA;MACzBgB,+BAA+B,CAAC,CAAC,IAAGL,WAAW,CAACU,iBAAiB,IAAIlB,kBAAkB,EAAAH,GAAA;MACzF,CAAE;;IAEFI;IACE;IACQ,CAAC;;AAEpB;;AAEAN,UAAU,CAACwB,mBAAmB,GAAG,YAAY;AAC7CxB,UAAU,CAACyB,WAAW,GAAG,YAAY;AACrCzB,UAAU,CAAC0B,eAAe,GAAG,IAAI;;AAEjC,SAAS1B,UAAU;;AAEnB,OAAO,IAAM2B,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAsB,EAAmD;EACpG,OAAO,aAAArC,KAAK,CAACsC,cAAc,CAAkBD,KAAK,CAAC;EAC/CE,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAK,CAACM,IAAI,EAAE,iBAAiB,CAAC;EACnE,KAAK;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useContext","ThemeContext","CommonWrapper","cx","MenuContext","forwardRefAndName","styles","MenuHeaderDataTids","root","MenuHeader","_ref","ref","_cx","id","_ref$_enableIconPaddi","_enableIconPadding","children","_ref$size","size","rest","_objectWithoutPropertiesLoose","_excluded","theme","menuContext","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getWithLeftPaddingSizeClassName","withLeftPaddingSmall","withLeftPaddingMedium","createElement","className","enableIconPadding","__MENU_HEADER__","isMenuHeader","child","isValidElement","Object","prototype","hasOwnProperty","call","type"],"sources":["MenuHeader.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode } from 'react';\nimport React, { useContext } from 'react';\n\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 { SizeProp } from '../../lib/types/props';\nimport { MenuContext } from '../../internal/Menu/MenuContext';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nimport { styles } from './MenuHeader.styles';\n\nexport interface MenuHeaderProps extends CommonProps, Pick<HTMLAttributes<HTMLElement>, 'id'> {\n /** Добавляет отступ иконке. */\n _enableIconPadding?: boolean;\n\n /** @ignore */\n children: ReactNode;\n\n /** Задает размер. */\n size?: SizeProp;\n}\n\nexport const MenuHeaderDataTids = {\n root: 'MenuHeader__root',\n} as const;\n\n/**\n * Заголовок меню `MenuHeader` используется для того, чтобы разделить элементы меню на категории в рамках одного меню.\n *\n * `MenuHeader`, в отличие от `MenuItem` нельзя затаргетить с клавиатуры.\n *\n * Сущности в которых может быть использован `MenuHeader`: DropdownMenu, Kebab, TooltipMenu и Select.\n */\n\nconst MenuHeader = forwardRefAndName(\n 'MenuHeader',\n function MenuHeader(\n { id, _enableIconPadding = false, children, size = 'small', ...rest }: MenuHeaderProps,\n ref: React.Ref<HTMLDivElement>,\n ) {\n const theme = useContext(ThemeContext);\n const menuContext = useContext(MenuContext);\n\n function getRootSizeClassName() {\n switch (size) {\n case 'large':\n return styles.rootLarge(theme);\n case 'medium':\n return styles.rootMedium(theme);\n case 'small':\n default:\n return styles.rootSmall(theme);\n }\n }\n function getWithLeftPaddingSizeClassName() {\n switch (size) {\n case 'large':\n return styles.withLeftPaddingSmall(theme);\n case 'medium':\n return styles.withLeftPaddingMedium(theme);\n case 'small':\n default:\n return styles.withLeftPaddingSmall(theme);\n }\n }\n\n return (\n <CommonWrapper {...rest}>\n <div\n ref={ref}\n id={id}\n data-tid={MenuHeaderDataTids.root}\n className={cx(getRootSizeClassName(), {\n [styles.root(theme)]: true,\n [getWithLeftPaddingSizeClassName()]: menuContext.enableIconPadding || _enableIconPadding,\n })}\n >\n {children}\n </div>\n </CommonWrapper>\n );\n },\n);\n\n//@ts-ignore\nMenuHeader.__MENU_HEADER__ = true;\n\nexport { MenuHeader };\n\nexport const isMenuHeader = (child: React.ReactNode): child is React.ReactElement<MenuHeaderProps> => {\n return React.isValidElement<MenuHeaderProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__MENU_HEADER__')\n : false;\n};\n"],"mappings":";AACA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;;AAEzC,SAASC,YAAY,QAAQ,gCAAgC;;AAE7D,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,EAAE,QAAQ,2BAA2B;;AAE9C,SAASC,WAAW,QAAQ,iCAAiC;AAC7D,SAASC,iBAAiB,QAAQ,6BAA6B;;AAE/D,SAASC,MAAM,QAAQ,qBAAqB;;;;;;;;;;;;;AAa5C,OAAO,IAAMC,kBAAkB,GAAG;EAChCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,UAAU,GAAGJ,iBAAiB;EAClC,YAAY;EACZ,SAASI,UAAUA,CAAAC,IAAA;;EAEjBC,GAA8B;EAC9B,KAAAC,GAAA,KAFEC,EAAE,GAAAH,IAAA,CAAFG,EAAE,CAAAC,qBAAA,GAAAJ,IAAA,CAAEK,kBAAkB,CAAlBA,kBAAkB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA,CAAEE,QAAQ,GAAAN,IAAA,CAARM,QAAQ,CAAAC,SAAA,GAAAP,IAAA,CAAEQ,IAAI,CAAJA,IAAI,GAAAD,SAAA,cAAG,OAAO,GAAAA,SAAA,CAAKE,IAAI,GAAAC,6BAAA,CAAAV,IAAA,EAAAW,SAAA;IAGnE,IAAMC,KAAK,GAAGtB,UAAU,CAACC,YAAY,CAAC;IACtC,IAAMsB,WAAW,GAAGvB,UAAU,CAACI,WAAW,CAAC;;IAE3C,SAASoB,oBAAoBA,CAAA,EAAG;MAC9B,QAAQN,IAAI;QACV,KAAK,OAAO;UACV,OAAOZ,MAAM,CAACmB,SAAS,CAACH,KAAK,CAAC;QAChC,KAAK,QAAQ;UACX,OAAOhB,MAAM,CAACoB,UAAU,CAACJ,KAAK,CAAC;QACjC,KAAK,OAAO;QACZ;UACE,OAAOhB,MAAM,CAACqB,SAAS,CAACL,KAAK,CAAC;MAClC;IACF;IACA,SAASM,+BAA+BA,CAAA,EAAG;MACzC,QAAQV,IAAI;QACV,KAAK,OAAO;UACV,OAAOZ,MAAM,CAACuB,oBAAoB,CAACP,KAAK,CAAC;QAC3C,KAAK,QAAQ;UACX,OAAOhB,MAAM,CAACwB,qBAAqB,CAACR,KAAK,CAAC;QAC5C,KAAK,OAAO;QACZ;UACE,OAAOhB,MAAM,CAACuB,oBAAoB,CAACP,KAAK,CAAC;MAC7C;IACF;;IAEA;MACEvB,KAAA,CAAAgC,aAAA,CAAC7B,aAAa,EAAKiB,IAAI;MACrBpB,KAAA,CAAAgC,aAAA;QACEpB,GAAG,EAAEA,GAAI;QACTE,EAAE,EAAEA,EAAG;QACP,YAAUN,kBAAkB,CAACC,IAAK;QAClCwB,SAAS,EAAE7B,EAAE,CAACqB,oBAAoB,CAAC,CAAC,GAAAZ,GAAA,OAAAA,GAAA;QACjCN,MAAM,CAACE,IAAI,CAACc,KAAK,CAAC,IAAG,IAAI,EAAAV,GAAA;QACzBgB,+BAA+B,CAAC,CAAC,IAAGL,WAAW,CAACU,iBAAiB,IAAIlB,kBAAkB,EAAAH,GAAA;QACzF,CAAE;;MAEFI;MACE;MACQ,CAAC;;EAEpB;AACF,CAAC;;AAED;AACAP,UAAU,CAACyB,eAAe,GAAG,IAAI;;AAEjC,SAASzB,UAAU;;AAEnB,OAAO,IAAM0B,YAAY,GAAG,SAAfA,YAAYA,CAAIC,KAAsB,EAAmD;EACpG,OAAO,aAAArC,KAAK,CAACsC,cAAc,CAAkBD,KAAK,CAAC;EAC/CE,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAK,CAACM,IAAI,EAAE,iBAAiB,CAAC;EACnE,KAAK;AACX,CAAC","ignoreList":[]}
@@ -20,11 +20,6 @@ export declare const MenuHeaderDataTids: {
20
20
  *
21
21
  * Сущности в которых может быть использован `MenuHeader`: DropdownMenu, Kebab, TooltipMenu и Select.
22
22
  */
23
- declare function MenuHeader({ id, _enableIconPadding, children, size, ...rest }: MenuHeaderProps): React.JSX.Element;
24
- declare namespace MenuHeader {
25
- var __KONTUR_REACT_UI__: string;
26
- var displayName: string;
27
- var __MENU_HEADER__: boolean;
28
- }
23
+ declare const MenuHeader: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, MenuHeaderProps> & Record<never, never>;
29
24
  export { MenuHeader };
30
25
  export declare const isMenuHeader: (child: React.ReactNode) => child is React.ReactElement<MenuHeaderProps, string | React.JSXElementConstructor<any>>;
@@ -7,6 +7,7 @@ var _class, _MenuItem;
7
7
  import React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import { globalObject, isBrowser } from '@skbkontur/global-object';
10
+ import { isThemeGTE } from "../../../lib/theming/ThemeHelpers";
10
11
  import { scrollYCenterIntoNearestScrollable } from "../../../lib/dom/scrollYCenterIntoNearestScrollable";
11
12
  import { isExternalLink, isFunction, isNonNullable, isReactUIComponent } from "../../../lib/utils";
12
13
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
@@ -103,7 +104,8 @@ export var MenuItem = rootNode(_class = (_MenuItem = /*#__PURE__*/function (_Rea
103
104
  className: cx((_cx = {}, _cx[styles.icon()] = true, _cx[_this.getIconSizeClassName()] = true, _cx))
104
105
  }, icon);
105
106
  }
106
- var className = cx((_cx2 = {}, _cx2[styles.root(_this.theme)] = true, _cx2[_this.getRootSizeClassName()] = true, _cx2[styles.rootMobile(_this.theme)] = isMobile, _cx2[styles.loose()] = !!loose, _cx2[styles.hover(_this.theme)] = _this.isHover, _cx2[styles.selected(_this.theme)] = _this.isSelected, _cx2[styles.link(_this.theme)] = !!link, _cx2[_this.getWithIconSizeClassName()] = Boolean(iconElement) || !!_enableIconPadding || _this.context.enableIconPadding, _cx2[styles.disabled(_this.theme)] = !!disabled, _cx2));
107
+ var isThemeGTE_5_2 = isThemeGTE(_this.theme, '5.2');
108
+ var className = cx((_cx2 = {}, _cx2[styles.root(_this.theme)] = true, _cx2[_this.getRootSizeClassName()] = true, _cx2[styles.rootMobile(_this.theme)] = isMobile, _cx2[styles.loose()] = !!loose, _cx2[styles.hover(_this.theme)] = _this.isHover, _cx2[styles.selected(_this.theme)] = _this.isSelected, _cx2[styles.link(_this.theme)] = !!link, _cx2[_this.getWithIconSizeClassName()] = Boolean(iconElement) || !!_enableIconPadding || _this.context.enableIconPadding, _cx2[styles.nonSelectable()] = isThemeGTE_5_2 && !!isNotSelectable, _cx2[styles.disabled(_this.theme)] = !!disabled, _cx2));
107
109
  var content = children;
108
110
  if (isFunction(children)) {
109
111
  content = children(_this.activeState);