@skbkontur/react-ui 5.2.1 → 5.3.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 (554) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js +49 -46
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +2 -0
  7. package/cjs/components/Button/Button.js +29 -1
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +6 -0
  10. package/cjs/components/Button/Button.styles.js +107 -75
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  13. package/cjs/components/Calendar/Calendar.js +1 -0
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Center/Center.d.ts +2 -0
  16. package/cjs/components/Center/Center.js +1 -0
  17. package/cjs/components/Center/Center.js.map +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
  19. package/cjs/components/Checkbox/Checkbox.js +2 -14
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
  22. package/cjs/components/ComboBox/ComboBox.js +1 -0
  23. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  24. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  25. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
  26. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  27. package/cjs/components/CurrencyInput/constants.js +1 -2
  28. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  29. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  30. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  31. package/cjs/components/DateInput/DateInput.d.ts +2 -0
  32. package/cjs/components/DateInput/DateInput.js +1 -0
  33. package/cjs/components/DateInput/DateInput.js.map +1 -1
  34. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  35. package/cjs/components/DatePicker/DatePicker.js +6 -60
  36. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  37. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  38. package/cjs/components/Dropdown/Dropdown.js +2 -82
  39. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  40. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  41. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  42. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  43. package/cjs/components/FxInput/FxInput.d.ts +2 -5
  44. package/cjs/components/FxInput/FxInput.js +2 -7
  45. package/cjs/components/FxInput/FxInput.js.map +1 -1
  46. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  47. package/cjs/components/Gapped/Gapped.js +1 -24
  48. package/cjs/components/Gapped/Gapped.js.map +1 -1
  49. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  50. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  51. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  52. package/cjs/components/Group/Group.d.ts +5 -4
  53. package/cjs/components/Group/Group.js +91 -40
  54. package/cjs/components/Group/Group.js.map +1 -1
  55. package/cjs/components/Group/Group.styles.d.ts +1 -0
  56. package/cjs/components/Group/Group.styles.js +12 -6
  57. package/cjs/components/Group/Group.styles.js.map +1 -1
  58. package/cjs/components/Hint/Hint.d.ts +2 -0
  59. package/cjs/components/Hint/Hint.js +1 -0
  60. package/cjs/components/Hint/Hint.js.map +1 -1
  61. package/cjs/components/Input/Input.d.ts +2 -0
  62. package/cjs/components/Input/Input.js +1 -0
  63. package/cjs/components/Input/Input.js.map +1 -1
  64. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  65. package/cjs/components/Kebab/Kebab.js +2 -26
  66. package/cjs/components/Kebab/Kebab.js.map +1 -1
  67. package/cjs/components/Link/Link.d.ts +2 -0
  68. package/cjs/components/Link/Link.js +1 -0
  69. package/cjs/components/Link/Link.js.map +1 -1
  70. package/cjs/components/Loader/Loader.d.ts +6 -36
  71. package/cjs/components/Loader/Loader.js +3 -57
  72. package/cjs/components/Loader/Loader.js.map +1 -1
  73. package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
  74. package/cjs/components/MaskedInput/MaskedInput.js +17 -1
  75. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  76. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  77. package/cjs/components/MenuItem/MenuItem.js +2 -22
  78. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  79. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  80. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  81. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  82. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  83. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  84. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  85. package/cjs/components/Modal/Modal.styles.js +36 -28
  86. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  87. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  88. package/cjs/components/Modal/ModalBody.js +1 -0
  89. package/cjs/components/Modal/ModalBody.js.map +1 -1
  90. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  91. package/cjs/components/Modal/ModalHeader.js +8 -1
  92. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  93. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  94. package/cjs/components/Paging/DotsIcon.js +13 -0
  95. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  96. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  97. package/cjs/components/Paging/ForwardIcon.js +13 -1
  98. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  99. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  100. package/cjs/components/Paging/NavigationHelper.js +8 -6
  101. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  102. package/cjs/components/Paging/Paging.d.ts +13 -2
  103. package/cjs/components/Paging/Paging.js +120 -50
  104. package/cjs/components/Paging/Paging.js.map +1 -1
  105. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  106. package/cjs/components/Paging/Paging.styles.js +151 -22
  107. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  108. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  109. package/cjs/components/Paging/PagingHelper.js +18 -11
  110. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  111. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -7
  112. package/cjs/components/PasswordInput/PasswordInput.js +2 -11
  113. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  114. package/cjs/components/Radio/Radio.d.ts +2 -0
  115. package/cjs/components/Radio/Radio.js +1 -0
  116. package/cjs/components/Radio/Radio.js.map +1 -1
  117. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  118. package/cjs/components/RadioGroup/RadioGroup.js +1 -0
  119. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  120. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  121. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  122. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  123. package/cjs/components/Select/Select.d.ts +2 -0
  124. package/cjs/components/Select/Select.js +1 -0
  125. package/cjs/components/Select/Select.js.map +1 -1
  126. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  127. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  128. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  129. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  130. package/cjs/components/SidePage/SidePageBody.js +1 -0
  131. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  132. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  133. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  134. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  135. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  136. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  137. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  138. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  139. package/cjs/components/SidePage/SidePageHeader.js +60 -19
  140. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  141. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  142. package/cjs/components/Spinner/Spinner.js +2 -32
  143. package/cjs/components/Spinner/Spinner.js.map +1 -1
  144. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  145. package/cjs/components/Sticky/Sticky.js +2 -22
  146. package/cjs/components/Sticky/Sticky.js.map +1 -1
  147. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  148. package/cjs/components/Switcher/Switcher.js +11 -20
  149. package/cjs/components/Switcher/Switcher.js.map +1 -1
  150. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  151. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  152. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  153. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  154. package/cjs/components/Tabs/Indicator.js +1 -0
  155. package/cjs/components/Tabs/Indicator.js.map +1 -1
  156. package/cjs/components/Tabs/Tab.d.ts +2 -0
  157. package/cjs/components/Tabs/Tab.js +1 -0
  158. package/cjs/components/Tabs/Tab.js.map +1 -1
  159. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  160. package/cjs/components/Tabs/Tabs.js +1 -0
  161. package/cjs/components/Tabs/Tabs.js.map +1 -1
  162. package/cjs/components/Textarea/Textarea.d.ts +2 -44
  163. package/cjs/components/Textarea/Textarea.js +2 -56
  164. package/cjs/components/Textarea/Textarea.js.map +1 -1
  165. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  166. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  167. package/cjs/components/Toast/Toast.d.ts +2 -0
  168. package/cjs/components/Toast/Toast.js +1 -0
  169. package/cjs/components/Toast/Toast.js.map +1 -1
  170. package/cjs/components/Toast/ToastView.d.ts +2 -14
  171. package/cjs/components/Toast/ToastView.js +3 -22
  172. package/cjs/components/Toast/ToastView.js.map +1 -1
  173. package/cjs/components/Toggle/Toggle.d.ts +2 -10
  174. package/cjs/components/Toggle/Toggle.js +1 -11
  175. package/cjs/components/Toggle/Toggle.js.map +1 -1
  176. package/cjs/components/Token/Token.d.ts +2 -0
  177. package/cjs/components/Token/Token.js +1 -0
  178. package/cjs/components/Token/Token.js.map +1 -1
  179. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  180. package/cjs/components/TokenInput/TokenInput.js +1 -0
  181. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  182. package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
  183. package/cjs/components/Tooltip/Tooltip.js +95 -13
  184. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  185. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  186. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  187. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  188. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  189. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  190. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  191. package/cjs/index.d.ts +1 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  194. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  195. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  196. package/cjs/internal/ComponentTable.js +2 -3
  197. package/cjs/internal/ComponentTable.js.map +1 -1
  198. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  199. package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -0
  200. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  201. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  202. package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
  203. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  204. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  205. package/cjs/internal/DateSelect/DateSelect.js +1 -18
  206. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  207. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  208. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  209. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  210. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  211. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  212. package/cjs/internal/InputLikeText/InputLikeText.d.ts +2 -0
  213. package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
  214. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  215. package/cjs/internal/Menu/Menu.d.ts +2 -0
  216. package/cjs/internal/Menu/Menu.js +1 -0
  217. package/cjs/internal/Menu/Menu.js.map +1 -1
  218. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  219. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  220. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  221. package/cjs/internal/Popup/Popup.d.ts +41 -59
  222. package/cjs/internal/Popup/Popup.js +36 -79
  223. package/cjs/internal/Popup/Popup.js.map +1 -1
  224. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  225. package/cjs/internal/Popup/PopupPin.js +2 -35
  226. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  227. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  228. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  229. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  230. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  231. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  232. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  233. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  234. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  235. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  236. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  237. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  238. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  239. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  240. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  241. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  242. package/cjs/internal/ThemePlayground/Playground.js +1 -1
  243. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  244. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  245. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  246. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  247. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  248. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  249. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  250. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  251. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  252. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  253. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  254. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  255. package/cjs/internal/themes/BasicTheme.d.ts +112 -20
  256. package/cjs/internal/themes/BasicTheme.js +149 -18
  257. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  258. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  259. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  260. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  261. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  262. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  263. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  264. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  265. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  266. package/cjs/lib/delay.mts +3 -0
  267. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  268. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  269. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +11 -1
  270. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  271. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  272. package/cjs/lib/forwardRefAndName.js +0 -1
  273. package/cjs/lib/forwardRefAndName.js.map +1 -1
  274. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  275. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  276. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  277. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  278. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  279. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  280. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  281. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  282. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  283. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  284. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  285. package/cjs/lib/utils.d.ts +4 -0
  286. package/cjs/lib/utils.js +5 -1
  287. package/cjs/lib/utils.js.map +1 -1
  288. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
  289. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  290. package/components/Autocomplete/Autocomplete.d.ts +6 -23
  291. package/components/Button/Button/Button.js +26 -5
  292. package/components/Button/Button/Button.js.map +1 -1
  293. package/components/Button/Button.d.ts +2 -0
  294. package/components/Button/Button.styles/Button.styles.js +78 -60
  295. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  296. package/components/Button/Button.styles.d.ts +6 -0
  297. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  298. package/components/Calendar/Calendar.d.ts +2 -0
  299. package/components/Center/Center/Center.js.map +1 -1
  300. package/components/Center/Center.d.ts +2 -0
  301. package/components/Checkbox/Checkbox/Checkbox.js +0 -11
  302. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  303. package/components/Checkbox/Checkbox.d.ts +2 -12
  304. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  305. package/components/ComboBox/ComboBox.d.ts +2 -0
  306. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -36
  307. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  308. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  309. package/components/CurrencyInput/constants/constants.js +0 -1
  310. package/components/CurrencyInput/constants/constants.js.map +1 -1
  311. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  312. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  313. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  314. package/components/DateInput/DateInput.d.ts +2 -0
  315. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  316. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  317. package/components/DatePicker/DatePicker.d.ts +6 -33
  318. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  319. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  320. package/components/Dropdown/Dropdown.d.ts +2 -47
  321. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  322. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  323. package/components/FxInput/FxInput/FxInput.js +1 -5
  324. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  325. package/components/FxInput/FxInput.d.ts +2 -5
  326. package/components/Gapped/Gapped/Gapped.js +1 -15
  327. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  328. package/components/Gapped/Gapped.d.ts +2 -15
  329. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  330. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  331. package/components/Group/Group/Group.js +64 -28
  332. package/components/Group/Group/Group.js.map +1 -1
  333. package/components/Group/Group.d.ts +5 -4
  334. package/components/Group/Group.styles/Group.styles.js +9 -6
  335. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  336. package/components/Group/Group.styles.d.ts +1 -0
  337. package/components/Hint/Hint/Hint.js.map +1 -1
  338. package/components/Hint/Hint.d.ts +2 -0
  339. package/components/Input/Input/Input.js.map +1 -1
  340. package/components/Input/Input.d.ts +2 -0
  341. package/components/Kebab/Kebab/Kebab.js +2 -20
  342. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  343. package/components/Kebab/Kebab.d.ts +2 -1
  344. package/components/Link/Link/Link.js.map +1 -1
  345. package/components/Link/Link.d.ts +2 -0
  346. package/components/Loader/Loader/Loader.js +0 -33
  347. package/components/Loader/Loader/Loader.js.map +1 -1
  348. package/components/Loader/Loader.d.ts +6 -36
  349. package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
  350. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  351. package/components/MaskedInput/MaskedInput.d.ts +1 -0
  352. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  353. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  354. package/components/MenuItem/MenuItem.d.ts +2 -12
  355. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  356. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  357. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  358. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  359. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  360. package/components/Modal/Modal.styles/Modal.styles.js +31 -28
  361. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  362. package/components/Modal/Modal.styles.d.ts +1 -0
  363. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  364. package/components/Modal/ModalBody.d.ts +2 -0
  365. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  366. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  367. package/components/Modal/ModalHeader.d.ts +5 -0
  368. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  369. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  370. package/components/Paging/DotsIcon/package.json +6 -0
  371. package/components/Paging/DotsIcon.d.ts +3 -0
  372. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  373. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  374. package/components/Paging/ForwardIcon.d.ts +3 -0
  375. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  376. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  377. package/components/Paging/NavigationHelper.d.ts +3 -2
  378. package/components/Paging/Paging/Paging.js +96 -47
  379. package/components/Paging/Paging/Paging.js.map +1 -1
  380. package/components/Paging/Paging.d.ts +13 -2
  381. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  382. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  383. package/components/Paging/Paging.styles.d.ts +24 -1
  384. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  385. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  386. package/components/Paging/PagingHelper.d.ts +1 -1
  387. package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -7
  388. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  389. package/components/PasswordInput/PasswordInput.d.ts +2 -7
  390. package/components/Radio/Radio/Radio.js.map +1 -1
  391. package/components/Radio/Radio.d.ts +2 -0
  392. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  393. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  394. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  395. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  396. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  397. package/components/Select/Select/Select.js.map +1 -1
  398. package/components/Select/Select.d.ts +2 -0
  399. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  400. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  401. package/components/SidePage/SidePage.styles.d.ts +3 -1
  402. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  403. package/components/SidePage/SidePageBody.d.ts +2 -0
  404. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  405. package/components/SidePage/SidePageContainer.d.ts +2 -0
  406. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  407. package/components/SidePage/SidePageFooter.d.ts +2 -0
  408. package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
  409. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  410. package/components/SidePage/SidePageHeader.d.ts +12 -2
  411. package/components/Spinner/Spinner/Spinner.js +1 -18
  412. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  413. package/components/Spinner/Spinner.d.ts +2 -18
  414. package/components/Sticky/Sticky/Sticky.js +1 -13
  415. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  416. package/components/Sticky/Sticky.d.ts +2 -13
  417. package/components/Switcher/Switcher/Switcher.js +19 -16
  418. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  419. package/components/Switcher/Switcher.d.ts +6 -21
  420. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  421. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  422. package/components/Switcher/Switcher.styles.d.ts +1 -0
  423. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  424. package/components/Tabs/Indicator.d.ts +2 -0
  425. package/components/Tabs/Tab/Tab.js.map +1 -1
  426. package/components/Tabs/Tab.d.ts +2 -0
  427. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  428. package/components/Tabs/Tabs.d.ts +2 -0
  429. package/components/Textarea/Textarea/Textarea.js +1 -44
  430. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  431. package/components/Textarea/Textarea.d.ts +2 -44
  432. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  433. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  434. package/components/Toast/Toast/Toast.js.map +1 -1
  435. package/components/Toast/Toast.d.ts +2 -0
  436. package/components/Toast/ToastView/ToastView.js +3 -17
  437. package/components/Toast/ToastView/ToastView.js.map +1 -1
  438. package/components/Toast/ToastView.d.ts +2 -14
  439. package/components/Toggle/Toggle/Toggle.js +1 -10
  440. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  441. package/components/Toggle/Toggle.d.ts +2 -10
  442. package/components/Token/Token/Token.js.map +1 -1
  443. package/components/Token/Token.d.ts +2 -0
  444. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  445. package/components/TokenInput/TokenInput.d.ts +2 -0
  446. package/components/Tooltip/Tooltip/Tooltip.js +67 -20
  447. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  448. package/components/Tooltip/Tooltip.d.ts +14 -9
  449. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  450. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  451. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  452. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  453. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  454. package/index.d.ts +1 -0
  455. package/index.js +1 -0
  456. package/index.js.map +1 -1
  457. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  458. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  459. package/internal/ComponentTable/ComponentTable.js +0 -2
  460. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  461. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  462. package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  463. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  464. package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  465. package/internal/DateSelect/DateSelect/DateSelect.js +1 -10
  466. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  467. package/internal/DateSelect/DateSelect.d.ts +0 -10
  468. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  469. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  470. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  471. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  472. package/internal/InputLikeText/InputLikeText.d.ts +2 -0
  473. package/internal/Menu/Menu/Menu.js.map +1 -1
  474. package/internal/Menu/Menu.d.ts +2 -0
  475. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  476. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  477. package/internal/Popup/Popup/Popup.js +14 -64
  478. package/internal/Popup/Popup/Popup.js.map +1 -1
  479. package/internal/Popup/Popup.d.ts +41 -59
  480. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  481. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  482. package/internal/Popup/PopupPin.d.ts +23 -33
  483. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  484. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  485. package/internal/Popup/PopupPinNew/package.json +6 -0
  486. package/internal/Popup/PopupPinNew.d.ts +31 -0
  487. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  488. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  489. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  490. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  491. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  492. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  493. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  494. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  495. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  496. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  497. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  498. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  499. package/internal/ThemePlayground/Playground/Playground.js +4 -3
  500. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  501. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  502. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  503. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  504. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  505. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  506. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  507. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  508. package/internal/ZIndex/ZIndex.d.ts +3 -3
  509. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  510. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  511. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  512. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  513. package/internal/themes/BasicTheme/BasicTheme.js +170 -26
  514. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  515. package/internal/themes/BasicTheme.d.ts +112 -20
  516. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  517. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  518. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  519. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  520. package/internal/themes/DarkTheme5_3/package.json +6 -0
  521. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  522. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  523. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  524. package/internal/themes/LightTheme5_3/package.json +6 -0
  525. package/internal/themes/LightTheme5_3.d.ts +1 -0
  526. package/lib/delay.d.mts +1 -0
  527. package/lib/delay.mts +3 -0
  528. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  529. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -1
  530. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  531. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  532. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  533. package/lib/forwardRefAndName.d.ts +1 -1
  534. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  535. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  536. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  537. package/lib/theming/ThemeVersions.d.ts +1 -1
  538. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  539. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  540. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  541. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  542. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  543. package/lib/theming/themes/LightTheme.d.ts +1 -0
  544. package/lib/utils/utils.js +2 -0
  545. package/lib/utils/utils.js.map +1 -1
  546. package/lib/utils.d.ts +4 -0
  547. package/package.json +10 -13
  548. package/cjs/lib/SSRSafe.d.ts +0 -2
  549. package/cjs/lib/SSRSafe.js +0 -5
  550. package/cjs/lib/SSRSafe.js.map +0 -1
  551. package/lib/SSRSafe/SSRSafe.js +0 -4
  552. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  553. package/lib/SSRSafe/package.json +0 -6
  554. package/lib/SSRSafe.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"names":["_propTypes","_interopRequireDefault","require","_react","_Popup","_locale","_decorators","_InternalDateGetter","_ArrowAUp16Light","_ThemeFactory","_InternalDate","_constants","_types","_DateInput","_filterProps","_CommonWrapper","_client","_NativeDateInput","_rootNode","_utils","_createPropsGetter","_Calendar","_ThemeContext","_Button","_CalendarUtils","_decorator","_getMenuPositions","_ZIndex","_DatePicker2","_locale2","_MobilePicker","_dec","_class","_DatePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","exports","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","locale","DatePickerLocaleHelper","responsiveLayout","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","canOpenPopup","state","opened","canUseMobileNativeDatePicker","today","getTodayDate","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobile","isMobileLayout","default","createElement","MobilePicker","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleMobileCloseRequest","renderDay","onMonthChange","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","styles","calendarWrapper","onMouseDown","e","preventDefault","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","DateInput","_extends2","id","filterProps","ref","getInputRef","width","withIcon","onBlur","undefined","handleBlur","onFocus","handleFocus","onClick","openPickerPopup","handleKeyDown","NativeDateInput","getRootNode","isNonNullable","minWidth","setState","close","handleSelect","blur","_inheritsLoose2","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","prevProps","prevState","opts","withoutOpenDropdown","render","_this2","ThemeContext","Consumer","ThemeFactory","create","calendarBottomSeparatorBorder","CommonWrapper","rootNodeRef","setRootNode","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","_this3","_this$locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","Button","todayAriaLabel","icon","ArrowAUpIcon16Light","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","_range","_range$minDate","_range$maxDate","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport type { HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport type { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { CalendarDateShape, CalendarProps } from '../Calendar';\nimport { Calendar } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport type { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport type { DatePickerLocale } from './locale';\nimport { DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Устанавливает фокус на контроле после окончания загрузки страницы. */\n\n autoFocus?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Отображает кнопку \"Сегодня\" в календаре. */\n enableTodayLink?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Задает nекущую позицию выпадающего окна вручную. */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает значение автокомплита. */\n value?: string | null;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает ширину автокомплита. */\n width?: number | string;\n\n /** Задает функцию, которая вызывается при потере датапикером фокуса. */\n onBlur?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value.\n * @param value - строка в формате `dd.mm.yyyy`. */\n onValueChange: (value: string) => void;\n\n /** Задает функцию, которая вызывается при получении датапикером фокуса. */\n onFocus?: () => void;\n\n /** Задает функцию, которая вызывается при нажатии кнопки на клавиатуре. */\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n\n /** Позволяет использовать на мобильных устройствах нативный календарь для выбора дат.\n * На iOS нативный календарь не умеет работать с minDate и maxDate. */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n/**\n * Поле `DatePicker` помогает вводить дату с клавиатуры или выбирать ее с помощью мыши.\n *\n * Используйте поле с датой, когда нужно ввести дату в формате ДД.ММ.ГГГГ.\n *\n * Поле с датой отличается от обычного поля ввода наличием иконки, маски и блока календаря.\n */\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuPos: PropTypes.oneOf(['top', 'bottom']),\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n\n renderDay: PropTypes.func,\n\n onMonthChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private canOpenPopup = true;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate(prevProps: DatePickerProps, prevState: DatePickerState) {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n\n if (prevState.opened && !opened && this.isMobileLayout) {\n this.handleBlur();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus(opts?: { withoutOpenDropdown?: boolean }) {\n if (this.props.disabled) {\n return;\n }\n\n if (opts?.withoutOpenDropdown) {\n this.canOpenPopup = false;\n }\n\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleMobileCloseRequest}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n onClick={this.openPickerPopup}\n onKeyDown={this.handleKeyDown}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={() => {\n this.handleSelect(today);\n }}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private openPickerPopup = () => {\n this.setState({ opened: true });\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n if (!this.canOpenPopup) {\n this.canOpenPopup = true;\n } else {\n this.openPickerPopup();\n }\n\n this.focused = true;\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent) => {\n if (!this.state.opened) {\n this.openPickerPopup();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleMobileCloseRequest = () => {\n this.close();\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Popup","_locale","_decorators","_InternalDateGetter","_ArrowAUp16Light","_ThemeFactory","_InternalDate","_constants","_types","_DateInput","_filterProps","_CommonWrapper","_client","_NativeDateInput","_rootNode","_utils","_createPropsGetter","_Calendar","_ThemeContext","_Button","_CalendarUtils","_decorator","_getMenuPositions","_ZIndex","_DatePicker2","_locale2","_MobilePicker","_dec","_class","_DatePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","exports","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","locale","DatePickerLocaleHelper","responsiveLayout","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","canOpenPopup","state","opened","canUseMobileNativeDatePicker","today","getTodayDate","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobile","isMobileLayout","default","createElement","MobilePicker","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleMobileCloseRequest","renderDay","onMonthChange","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","styles","calendarWrapper","onMouseDown","e","preventDefault","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","DateInput","_extends2","id","filterProps","ref","getInputRef","width","withIcon","onBlur","undefined","handleBlur","onFocus","handleFocus","onClick","openPickerPopup","handleKeyDown","NativeDateInput","getRootNode","isNonNullable","minWidth","setState","close","handleSelect","blur","_inheritsLoose2","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","prevProps","prevState","opts","withoutOpenDropdown","render","_this2","ThemeContext","Consumer","ThemeFactory","create","calendarBottomSeparatorBorder","CommonWrapper","rootNodeRef","setRootNode","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","_this3","_this$locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","Button","todayAriaLabel","icon","ArrowAUpIcon16Light","React","PureComponent","__KONTUR_REACT_UI__","displayName","MIN_FULLDATE","MAX_FULLDATE","range","_range","_range$minDate","_range$maxDate","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport type { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { CalendarDateShape, CalendarProps } from '../Calendar';\nimport { Calendar } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport type { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport type { DatePickerLocale } from './locale';\nimport { DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Устанавливает фокус на контроле после окончания загрузки страницы. */\n\n autoFocus?: boolean;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Отображает кнопку \"Сегодня\" в календаре. */\n enableTodayLink?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Задает nекущую позицию выпадающего окна вручную. */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /**\n * Строка формата `dd.mm.yyyy`\n * Задает значение автокомплита.\n */\n value?: string | null;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает ширину автокомплита. */\n width?: number | string;\n\n /** Задает функцию, которая вызывается при потере датапикером фокуса. */\n onBlur?: () => void;\n\n /** Задает функцию, вызывающуюся при изменении value.\n * @param value - строка в формате `dd.mm.yyyy`. */\n onValueChange: (value: string) => void;\n\n /** Задает функцию, которая вызывается при получении датапикером фокуса. */\n onFocus?: () => void;\n\n /** Задает функцию, которая вызывается при нажатии кнопки на клавиатуре. */\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n\n /** Позволяет использовать на мобильных устройствах нативный календарь для выбора дат.\n * На iOS нативный календарь не умеет работать с minDate и maxDate. */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n/**\n * Поле `DatePicker` помогает вводить дату с клавиатуры или выбирать ее с помощью мыши.\n *\n * Используйте поле с датой, когда нужно ввести дату в формате ДД.ММ.ГГГГ.\n *\n * Поле с датой отличается от обычного поля ввода наличием иконки, маски и блока календаря.\n */\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private canOpenPopup = true;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate(prevProps: DatePickerProps, prevState: DatePickerState) {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n\n if (prevState.opened && !opened && this.isMobileLayout) {\n this.handleBlur();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus(opts?: { withoutOpenDropdown?: boolean }) {\n if (this.props.disabled) {\n return;\n }\n\n if (opts?.withoutOpenDropdown) {\n this.canOpenPopup = false;\n }\n\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleMobileCloseRequest}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n onClick={this.openPickerPopup}\n onKeyDown={this.handleKeyDown}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={() => {\n this.handleSelect(today);\n }}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private openPickerPopup = () => {\n this.setState({ opened: true });\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n if (!this.canOpenPopup) {\n this.canOpenPopup = true;\n } else {\n this.openPickerPopup();\n }\n\n this.focused = true;\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent) => {\n if (!this.state.opened) {\n this.openPickerPopup();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleMobileCloseRequest = () => {\n this.close();\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,9 @@
1
1
  import type { AriaAttributes, HTMLAttributes } from 'react';
2
2
  import React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import { MenuItem } from '../MenuItem';
5
4
  import type { ButtonUse } from '../Button';
6
5
  import type { CommonProps } from '../../internal/CommonWrapper';
6
+ import type { TGetRootNode } from '../../lib/rootNode';
7
7
  import type { SizeProp } from '../../lib/types/props';
8
8
  export interface DropdownProps extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, CommonProps {
9
9
  /** Задает подпись на кнопке. */
@@ -67,53 +67,8 @@ export declare class Dropdown extends React.Component<DropdownProps> {
67
67
  static Header: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, import("../MenuHeader").MenuHeaderProps> & Record<never, never>;
68
68
  static MenuItem: typeof MenuItem;
69
69
  static Separator: import("../../lib/forwardRefAndName").ReactUIComponentWithRef<HTMLDivElement, CommonProps> & Record<never, never>;
70
- static propTypes: {
71
- /**
72
- * Подпись на кнопке.
73
- */
74
- caption: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
75
- /**
76
- * Отключает использование портала
77
- */
78
- disablePortal: PropTypes.Requireable<boolean>;
79
- /**
80
- * Визуально отключает Dropdown
81
- */
82
- disabled: PropTypes.Requireable<boolean>;
83
- /**
84
- * Визуально показать наличие ошибки.
85
- */
86
- error: PropTypes.Requireable<boolean>;
87
- /**
88
- * Иконка слева от текста кнопки
89
- */
90
- icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
91
- maxMenuHeight: PropTypes.Requireable<number>;
92
- menuAlign: PropTypes.Requireable<string>;
93
- menuWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
94
- size: PropTypes.Requireable<string>;
95
- /**
96
- * Смотри Button.
97
- */
98
- use: PropTypes.Requireable<any>;
99
- /**
100
- * Визуально показать наличие предупреждения.
101
- */
102
- warning: PropTypes.Requireable<boolean>;
103
- width: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
104
- /**
105
- * Вызывается при закрытии меню.
106
- */
107
- onClose: PropTypes.Requireable<(...args: any[]) => any>;
108
- onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
109
- onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
110
- onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
111
- /**
112
- * Вызывается при открытии меню.
113
- */
114
- onOpen: PropTypes.Requireable<(...args: any[]) => any>;
115
- };
116
70
  private _select;
71
+ getRootNode: TGetRootNode;
117
72
  private setRootNode;
118
73
  private theme;
119
74
  render(): React.JSX.Element;
@@ -1,6 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.DropdownDataTids = exports.Dropdown = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
2
2
  var _react = _interopRequireDefault(require("react"));
3
- var _propTypes = _interopRequireDefault(require("prop-types"));
4
3
 
5
4
  var _filterProps = require("../../lib/filterProps");
6
5
  var _MenuHeader = require("../MenuHeader");
@@ -147,68 +146,6 @@ Dropdown = exports.Dropdown = (0, _rootNode.rootNode)(_class = (_Dropdown = /*#_
147
146
 
148
147
 
149
148
 
150
-
151
-
152
-
153
-
154
-
155
-
156
-
157
-
158
-
159
-
160
-
161
-
162
-
163
-
164
-
165
-
166
-
167
-
168
-
169
-
170
-
171
-
172
-
173
-
174
-
175
-
176
-
177
-
178
-
179
-
180
-
181
-
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
-
190
-
191
-
192
-
193
-
194
-
195
-
196
-
197
-
198
-
199
-
200
-
201
-
202
-
203
-
204
-
205
-
206
-
207
-
208
-
209
-
210
-
211
-
212
149
 
213
150
 
214
151
 
@@ -255,22 +192,5 @@ Dropdown = exports.Dropdown = (0, _rootNode.rootNode)(_class = (_Dropdown = /*#_
255
192
  * @public
256
193
  */_proto.open = function open() {if (this._select) {this._select.open();}} /**
257
194
  * @public
258
- */;_proto.close = function close() {if (this._select) {this._select.close();}};return Dropdown;}(_react.default.Component), _Dropdown.__KONTUR_REACT_UI__ = 'Dropdown', _Dropdown.displayName = 'Dropdown', _Dropdown.Header = _MenuHeader.MenuHeader, _Dropdown.MenuItem = _MenuItem.MenuItem, _Dropdown.Separator = _MenuSeparator.MenuSeparator, _Dropdown.propTypes = { /**
259
- * Подпись на кнопке.
260
- */caption: _propTypes.default.node.isRequired, /**
261
- * Отключает использование портала
262
- */disablePortal: _propTypes.default.bool, /**
263
- * Визуально отключает Dropdown
264
- */disabled: _propTypes.default.bool, /**
265
- * Визуально показать наличие ошибки.
266
- */error: _propTypes.default.bool, /**
267
- * Иконка слева от текста кнопки
268
- */icon: _propTypes.default.node, maxMenuHeight: _propTypes.default.number, menuAlign: _propTypes.default.oneOf(['left', 'right']), menuWidth: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), size: _propTypes.default.oneOf(['small', 'medium', 'large']), /**
269
- * Смотри Button.
270
- */use: _propTypes.default.any, /**
271
- * Визуально показать наличие предупреждения.
272
- */warning: _propTypes.default.bool, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), /**
273
- * Вызывается при закрытии меню.
274
- */onClose: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, /**
275
- * Вызывается при открытии меню.
276
- */onOpen: _propTypes.default.func }, _Dropdown)) || _class;function renderValue(value) {return value;}
195
+ */;_proto.close = function close() {if (this._select) {this._select.close();}};return Dropdown;}(_react.default.Component), _Dropdown.__KONTUR_REACT_UI__ = 'Dropdown', _Dropdown.displayName = 'Dropdown', _Dropdown.Header = _MenuHeader.MenuHeader, _Dropdown.MenuItem = _MenuItem.MenuItem, _Dropdown.Separator = _MenuSeparator.MenuSeparator, _Dropdown)) || _class;function renderValue(value) {return value;
196
+ }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_filterProps","_MenuHeader","_MenuItem","_MenuSeparator","_Select","_CommonWrapper","_rootNode","_ThemeContext","_getDropdownTheme","_excluded","_class","_Dropdown","PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","corners","id","DropdownDataTids","exports","root","Dropdown","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","caption","icon","rest","_objectWithoutPropertiesLoose2","default","items","React","Children","map","children","item","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","Select","ref","_refSelect","filterProps","value","_icon","renderValue","element","_select","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","theme","getDropdownTheme","Provider","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator","propTypes","PropTypes","node","isRequired","bool","number","oneOf","oneOfType","string","any","func"],"sources":["Dropdown.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { filterProps } from '../../lib/filterProps';\nimport { MenuHeader } from '../MenuHeader';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { Select } from '../Select';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { ButtonUse } from '../Button';\nimport type { CommonProps } 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 { getDropdownTheme } from './getDropdownTheme';\n\nconst PASS_PROPS = {\n _renderButton: true,\n error: true,\n disabled: true,\n disablePortal: true,\n menuAlign: true,\n menuWidth: true,\n maxMenuHeight: true,\n use: true,\n size: true,\n warning: true,\n width: true,\n onOpen: true,\n onClose: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n menuPos: true,\n corners: true,\n id: true,\n 'aria-describedby': true,\n 'aria-label': true,\n};\n\nexport interface DropdownProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Задает подпись на кнопке. */\n caption: React.ReactNode;\n\n /** Добавляет иконку слева от текста кнопки. */\n icon?: React.ReactElement<any>;\n\n /** Задает ширину выпадающего меню. */\n width?: React.CSSProperties['width'];\n\n /** @ignore */\n _renderButton?: (params: any) => JSX.Element;\n\n /** Отключает использование портала. */\n disablePortal?: boolean;\n\n /** Делает компонент недоступным.*/\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает максимальную высоту меню. */\n maxMenuHeight?: number;\n\n /** Задает текущую позицию выпадающего окна вручную.\n */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание выпадающего меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает длину меню. */\n menuWidth?: number | string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задаёт стиль кнопки. */\n use?: ButtonUse;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /** Задает функцию, которая вызывается при закрытии меню. */\n onClose?: () => void;\n\n /** Задает функцию, которая вызывается при открытии меню. */\n onOpen?: () => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\ntype DropdownSelectType = Select<React.ReactNode, React.ReactNode>;\n\nexport const DropdownDataTids = {\n root: 'Dropdown__root',\n} as const;\n\n/**\n * Выпадающее меню `Dropdown`. Содержит несколько команд, объединенных по смыслу.\n *\n * Используйте кнопку-меню:\n * * когда не хватает места для нескольких кнопок.\n * * когда названия действий очень длинные.\n * * когда действия редко используются или объединены по смыслу.\n *\n * Не используйте `Dropdown` для выбора значения из набора вариантов. В таком случае воспользуйтесь компонентом Select.\n */\n@rootNode\nexport class Dropdown extends React.Component<DropdownProps> {\n public static __KONTUR_REACT_UI__ = 'Dropdown';\n public static displayName = 'Dropdown';\n\n public static Header = MenuHeader;\n public static MenuItem = MenuItem;\n public static Separator = MenuSeparator;\n\n public static propTypes = {\n /**\n * Подпись на кнопке.\n */\n caption: PropTypes.node.isRequired,\n\n /**\n * Отключает использование портала\n */\n disablePortal: PropTypes.bool,\n\n /**\n * Визуально отключает Dropdown\n */\n disabled: PropTypes.bool,\n\n /**\n * Визуально показать наличие ошибки.\n */\n error: PropTypes.bool,\n\n /**\n * Иконка слева от текста кнопки\n */\n icon: PropTypes.node,\n\n maxMenuHeight: PropTypes.number,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n menuWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n\n /**\n * Смотри Button.\n */\n use: PropTypes.any,\n\n /**\n * Визуально показать наличие предупреждения.\n */\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n /**\n * Вызывается при закрытии меню.\n */\n onClose: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n /**\n * Вызывается при открытии меню.\n */\n onOpen: PropTypes.func,\n };\n\n private _select: Nullable<DropdownSelectType>;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getDropdownTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = () => {\n const { caption, icon, ...rest } = this.props;\n const items = React.Children.map(this.props.children, (item) => item) || [];\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...rest}>\n <Select<React.ReactNode, React.ReactNode>\n data-tid={DropdownDataTids.root}\n ref={this._refSelect}\n {...filterProps(rest, PASS_PROPS)}\n value={caption}\n items={items}\n _icon={icon}\n renderValue={renderValue}\n />\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n */\n public open() {\n if (this._select) {\n this._select.open();\n }\n }\n\n /**\n * @public\n */\n public close() {\n if (this._select) {\n this._select.close();\n }\n }\n\n private _refSelect = (element: DropdownSelectType): void => {\n this._select = element;\n };\n}\n\nfunction renderValue(value: any) {\n return value;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_filterProps","_MenuHeader","_MenuItem","_MenuSeparator","_Select","_CommonWrapper","_rootNode","_ThemeContext","_getDropdownTheme","_excluded","_class","_Dropdown","PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","corners","id","DropdownDataTids","exports","root","Dropdown","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","renderMain","_this$props","props","caption","icon","rest","_objectWithoutPropertiesLoose2","default","items","React","Children","map","children","item","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","Select","ref","_refSelect","filterProps","value","_icon","renderValue","element","_select","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","theme","getDropdownTheme","Provider","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator"],"sources":["Dropdown.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { filterProps } from '../../lib/filterProps';\nimport { MenuHeader } from '../MenuHeader';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { Select } from '../Select';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { ButtonUse } from '../Button';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { getDropdownTheme } from './getDropdownTheme';\n\nconst PASS_PROPS = {\n _renderButton: true,\n error: true,\n disabled: true,\n disablePortal: true,\n menuAlign: true,\n menuWidth: true,\n maxMenuHeight: true,\n use: true,\n size: true,\n warning: true,\n width: true,\n onOpen: true,\n onClose: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n menuPos: true,\n corners: true,\n id: true,\n 'aria-describedby': true,\n 'aria-label': true,\n};\n\nexport interface DropdownProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n /** Задает подпись на кнопке. */\n caption: React.ReactNode;\n\n /** Добавляет иконку слева от текста кнопки. */\n icon?: React.ReactElement<any>;\n\n /** Задает ширину выпадающего меню. */\n width?: React.CSSProperties['width'];\n\n /** @ignore */\n _renderButton?: (params: any) => JSX.Element;\n\n /** Отключает использование портала. */\n disablePortal?: boolean;\n\n /** Делает компонент недоступным.*/\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает максимальную высоту меню. */\n maxMenuHeight?: number;\n\n /** Задает текущую позицию выпадающего окна вручную.\n */\n menuPos?: 'top' | 'bottom';\n\n /** Задает выравнивание выпадающего меню. */\n menuAlign?: 'left' | 'right';\n\n /** Задает длину меню. */\n menuWidth?: number | string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задаёт стиль кнопки. */\n use?: ButtonUse;\n\n /** @ignore */\n corners?: React.CSSProperties;\n\n /** Задает функцию, которая вызывается при закрытии меню. */\n onClose?: () => void;\n\n /** Задает функцию, которая вызывается при открытии меню. */\n onOpen?: () => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\ntype DropdownSelectType = Select<React.ReactNode, React.ReactNode>;\n\nexport const DropdownDataTids = {\n root: 'Dropdown__root',\n} as const;\n\n/**\n * Выпадающее меню `Dropdown`. Содержит несколько команд, объединенных по смыслу.\n *\n * Используйте кнопку-меню:\n * * когда не хватает места для нескольких кнопок.\n * * когда названия действий очень длинные.\n * * когда действия редко используются или объединены по смыслу.\n *\n * Не используйте `Dropdown` для выбора значения из набора вариантов. В таком случае воспользуйтесь компонентом Select.\n */\n@rootNode\nexport class Dropdown extends React.Component<DropdownProps> {\n public static __KONTUR_REACT_UI__ = 'Dropdown';\n public static displayName = 'Dropdown';\n\n public static Header = MenuHeader;\n public static MenuItem = MenuItem;\n public static Separator = MenuSeparator;\n\n private _select: Nullable<DropdownSelectType>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getDropdownTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = () => {\n const { caption, icon, ...rest } = this.props;\n const items = React.Children.map(this.props.children, (item) => item) || [];\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...rest}>\n <Select<React.ReactNode, React.ReactNode>\n data-tid={DropdownDataTids.root}\n ref={this._refSelect}\n {...filterProps(rest, PASS_PROPS)}\n value={caption}\n items={items}\n _icon={icon}\n renderValue={renderValue}\n />\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n */\n public open() {\n if (this._select) {\n this._select.open();\n }\n }\n\n /**\n * @public\n */\n public close() {\n if (this._select) {\n this._select.close();\n }\n }\n\n private _refSelect = (element: DropdownSelectType): void => {\n this._select = element;\n };\n}\n\nfunction renderValue(value: any) {\n return value;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import type { PopupMenuProps } from '../../internal/PopupMenu';
4
4
  import type { PopupPositionsType } from '../../internal/Popup';
5
5
  import type { CommonProps } from '../../internal/CommonWrapper';
6
+ import type { TGetRootNode } from '../../lib/rootNode';
6
7
  export interface DropdownMenuProps extends Pick<AriaAttributes, 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>, CommonProps {
7
8
  /** Максимальная высота меню */
8
9
  menuMaxHeight?: React.CSSProperties['maxWidth'];
@@ -20,13 +21,13 @@ export interface DropdownMenuProps extends Pick<AriaAttributes, 'aria-label'>, P
20
21
  /**
21
22
  * Произвольный элемент, который будет отрендерен в шапке меню.
22
23
  *
23
- * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.
24
+ * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.
24
25
  */
25
26
  header?: React.ReactNode;
26
27
  /**
27
28
  * Произвольный элемент, который будет отрендерен в подвале меню.
28
29
  *
29
- * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator).
30
+ * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.
30
31
  */
31
32
  footer?: React.ReactNode;
32
33
  /**
@@ -55,6 +56,7 @@ export declare class DropdownMenu extends React.Component<DropdownMenuProps> {
55
56
  static defaultProps: DefaultProps;
56
57
  private getProps;
57
58
  private popupMenu;
59
+ getRootNode: TGetRootNode;
58
60
  private setRootNode;
59
61
  constructor(props: DropdownMenuProps);
60
62
  render(): React.JSX.Element;
@@ -86,6 +86,7 @@ DropdownMenu = exports.DropdownMenu = (0, _rootNode.rootNode)(_class = (_Dropdow
86
86
 
87
87
 
88
88
 
89
+
89
90
  function DropdownMenu(props) {var _this;
90
91
  _this = _React$Component.call(this, props) || this;_this.getProps = (0, _createPropsGetter.createPropsGetter)(DropdownMenu.defaultProps);_this.popupMenu = null;_this.
91
92
 
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":";AACA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;;AAEA,IAAAC,aAAA,GAAAD,OAAA;;;AAGA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;;;AAGA,IAAAI,cAAA,GAAAJ,OAAA;;AAEA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;;AAEA,IAAAO,qBAAA,GAAAP,OAAA,2BAA8D,IAAAQ,MAAA,EAAAC,aAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuD9D;AACA;AACA,GAFA;;AAIaC,YAAY,GAAAC,OAAA,CAAAD,YAAA,OADxBE,kBAAQ,EAAAJ,MAAA,IAAAC,aAAA,0BAAAI,gBAAA;;;;;;;;;;;;;;EAeP,SAAAH,aAAYI,KAAwB,EAAE,KAAAC,KAAA;IACpCA,KAAA,GAAAF,gBAAA,CAAAG,IAAA,OAAMF,KAAK,CAAC,SAACC,KAAA,CANPE,QAAQ,GAAG,IAAAC,oCAAiB,EAACR,YAAY,CAACS,YAAY,CAAC,CAAAJ,KAAA,CAEvDK,SAAS,GAAwB,IAAI,CAAAL,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqDtCM,IAAI,GAAG,YAAY;MACxB,IAAIN,KAAA,CAAKK,SAAS,EAAE;QAClBL,KAAA,CAAKK,SAAS,CAACC,IAAI,CAAC,CAAC;MACvB;IACF,CAAC,CAAAN,KAAA;;IAEMO,KAAK,GAAG,YAAY;MACzB,IAAIP,KAAA,CAAKK,SAAS,EAAE;QAClBL,KAAA,CAAKK,SAAS,CAACE,KAAK,CAAC,CAAC;MACxB;IACF,CAAC,CAAAP,KAAA;;IAEOQ,YAAY,GAAG,UAACC,GAAwB,UAAMT,KAAA,CAAKK,SAAS,GAAGI,GAAG,EAAC,CA3DzE,IAAI,CAACV,KAAK,CAACW,OAAO,IAAI,CAACC,mCAAe,EAAE,CACtC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC,CAClD,CAAC,OAAAZ,KAAA,CACH,CAAC,IAAAa,eAAA,CAAAC,OAAA,EAAAnB,YAAA,EAAAG,gBAAA,MAAAiB,MAAA,GAAApB,YAAA,CAAAqB,SAAA,CAAAD,MAAA,CAEME,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACEnC,MAAA,CAAA+B,OAAA,CAAAK,aAAA,CAACjC,aAAA,CAAAkC,YAAY,CAACC,QAAQ,QACnB,UAACC,KAAK,EAAK,CACV,oBAAOvC,MAAA,CAAA+B,OAAA,CAAAK,aAAA,CAACjC,aAAA,CAAAkC,YAAY,CAACG,QAAQ,IAACC,KAAK,EAAE,IAAAC,0CAAoB,EAACH,KAAK,CAAE,IAAEJ,MAAI,CAACQ,UAAU,CAAC,CAAyB,CAAC,CAC/G,CACqB,CAAC,CAE5B,CAAC,CAAAX,MAAA,CAEMW,UAAU,GAAjB,SAAAA,WAAA,EAAoB,CAClB,IAAI,CAAC,IAAI,CAAC3B,KAAK,CAACW,OAAO,EAAE,CACvB,OAAO,IAAI,CACb,CACA,IAAAiB,cAAA,GAAyC,IAAI,CAACzB,QAAQ,CAAC,CAAC,CAAhD0B,SAAS,GAAAD,cAAA,CAATC,SAAS,CAAEC,iBAAiB,GAAAF,cAAA,CAAjBE,iBAAiB,CACpC,oBACE9C,MAAA,CAAA+B,OAAA,CAAAK,aAAA,CAAC9B,cAAA,CAAAyC,aAAa,MAAAC,SAAA,CAAAjB,OAAA,IAACkB,WAAW,EAAE,IAAI,CAACC,WAAY,IAAK,IAAI,CAAClC,KAAK,gBAC1DhB,MAAA,CAAA+B,OAAA,CAAAK,aAAA,CAAChC,UAAA,CAAA+C,SAAS,IACRC,EAAE,EAAE,IAAI,CAACpC,KAAK,CAACoC,EAAG,EAClB,cAAY,IAAI,CAACpC,KAAK,CAAC,YAAY,CAAE,EACrCU,GAAG,EAAE,IAAI,CAACD,YAAa,EACvBE,OAAO,EAAE,IAAI,CAACX,KAAK,CAACW,OAAQ,EAC5B0B,aAAa,EAAE,IAAI,CAACrC,KAAK,CAACqC,aAAc,EACxCC,SAAS,EAAE,IAAI,CAACtC,KAAK,CAACsC,SAAU,EAChCC,kBAAkB,EAAE,IAAI,CAACvC,KAAK,CAACuC,kBAAmB,EAClDC,WAAW,EAAE,KAAM,EACnBX,SAAS,EAAEA,SAAU,EACrBC,iBAAiB,EAAEA,iBAAkB,EACrCW,MAAM,EAAE,IAAI,CAACzC,KAAK,CAACyC,MAAO,EAC1BC,MAAM,EAAE,IAAI,CAAC1C,KAAK,CAAC0C,MAAO,EAC1BC,KAAK,EAAE,IAAI,CAAC3C,KAAK,CAAC2C,KAAM,EACxBC,OAAO,EAAE,IAAI,CAAC5C,KAAK,CAAC4C,OAAQ,EAC5BC,OAAO,EAAE,IAAI,CAAC7C,KAAK,CAAC6C,OAAQ,EAC5BC,MAAM,EAAE,IAAI,CAAC9C,KAAK,CAAC8C,MAAO,EAC1BC,WAAW,EAAE,IAAI,CAAC/C,KAAK,CAAC+C,WAAY,IAEnC,IAAI,CAAC/C,KAAK,CAACgD,QACH,CACE,CAAC,CAEpB,CAAC,QAAApD,YAAA,GA9D+BqD,cAAK,CAACC,SAAS,GAAAvD,aAAA,CACjCwD,mBAAmB,GAAG,cAAc,EAAAxD,aAAA,CACpCyD,WAAW,GAAG,cAAc,EAAAzD,aAAA,CAE5BU,YAAY,GAAiB,EACzCyB,iBAAiB,EAAEuB,6BAAS,EAC5BxB,SAAS,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,CACrE,CAAC,EAAAlC,aAAA,MAAAD,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_ThemeContext","_PopupMenu","_currentEnvironment","_CommonWrapper","_rootNode","_createPropsGetter","_getDropdownMenuTheme","_class","_DropdownMenu","DropdownMenu","exports","rootNode","_React$Component","props","_this","call","getProps","createPropsGetter","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","_inheritsLoose2","default","_proto","prototype","render","_this2","createElement","ThemeContext","Consumer","theme","Provider","value","getDropdownMenuTheme","renderMain","_this$getProps","positions","disableAnimations","CommonWrapper","_extends2","rootNodeRef","setRootNode","PopupMenu","id","menuMaxHeight","menuWidth","preventIconsOffset","popupHasPin","header","footer","width","corners","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["DropdownMenu.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator.\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n\n /** @ignore */\n corners?: React.CSSProperties;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Выпадающее меню `DropdownMenu` раскрывается по клику на переданный в `caption` элемент.\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n id={this.props.id}\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n corners={this.props.corners}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import type { InputProps } from '../Input';
5
4
  import { Input } from '../Input';
6
5
  import type { CurrencyInputProps } from '../CurrencyInput';
@@ -8,6 +7,7 @@ import { CurrencyInput } from '../CurrencyInput';
8
7
  import type { DefaultizedProps } from '../../lib/createPropsGetter';
9
8
  import type { Override } from '../../typings/utility-types';
10
9
  import type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
10
+ import type { TGetRootNode } from '../../lib/rootNode';
11
11
  export interface FxInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Override<CurrencyInputProps, {
12
12
  /** Устанавливает авто-режим. */
13
13
  auto?: boolean;
@@ -44,14 +44,11 @@ type DefaultizedFxInputProps = DefaultizedProps<FxInputProps, DefaultProps>;
44
44
  export declare class FxInput extends React.Component<FxInputProps> {
45
45
  static __KONTUR_REACT_UI__: string;
46
46
  static displayName: string;
47
- static propTypes: {
48
- auto: PropTypes.Requireable<boolean>;
49
- type: PropTypes.Requireable<string>;
50
- };
51
47
  static defaultProps: DefaultProps;
52
48
  private theme;
53
49
  private input;
54
50
  private getProps;
51
+ getRootNode: TGetRootNode;
55
52
  private setRootNode;
56
53
  render(): React.JSX.Element;
57
54
  renderMain: (props: CommonWrapperRestProps<DefaultizedFxInputProps>) => React.JSX.Element;
@@ -1,6 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.FxInputDataTids = exports.FxInput = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
2
2
  var _react = _interopRequireDefault(require("react"));
3
- var _propTypes = _interopRequireDefault(require("prop-types"));
4
3
 
5
4
  var _Group = require("../Group");
6
5
 
@@ -82,11 +81,6 @@ FxInput = exports.FxInput = (0, _rootNode.rootNode)(_class = (_FxInput = /*#__PU
82
81
 
83
82
 
84
83
 
85
-
86
-
87
-
88
-
89
-
90
84
  input = null;_this.
91
85
 
92
86
  getProps = (0, _createPropsGetter.createPropsGetter)(FxInput.defaultProps);_this.
@@ -107,6 +101,7 @@ FxInput = exports.FxInput = (0, _rootNode.rootNode)(_class = (_FxInput = /*#__PU
107
101
 
108
102
 
109
103
 
104
+
110
105
  renderMain = function (props) {
111
106
  var type = props.type,onRestore = props.onRestore,auto = props.auto,refInput = props.refInput,value = props.value,width = props.width,rest = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
112
107
  var inputProps = {
@@ -195,4 +190,4 @@ FxInput = exports.FxInput = (0, _rootNode.rootNode)(_class = (_FxInput = /*#__PU
195
190
  if (_this.props.refInput) {
196
191
  _this.props.refInput(_this.input);
197
192
  }
198
- };return _this;}(0, _inheritsLoose2.default)(FxInput, _React$Component);var _proto = FxInput.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.getProps()), _this2.renderMain);});};return FxInput;}(_react.default.Component), _FxInput.__KONTUR_REACT_UI__ = 'FxInput', _FxInput.displayName = 'FxInput', _FxInput.propTypes = { auto: _propTypes.default.bool, type: _propTypes.default.string }, _FxInput.defaultProps = { width: 250, type: 'text', value: '' }, _FxInput)) || _class;
193
+ };return _this;}(0, _inheritsLoose2.default)(FxInput, _React$Component);var _proto = FxInput.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.getProps()), _this2.renderMain);});};return FxInput;}(_react.default.Component), _FxInput.__KONTUR_REACT_UI__ = 'FxInput', _FxInput.displayName = 'FxInput', _FxInput.defaultProps = { width: 250, type: 'text', value: '' }, _FxInput)) || _class;