@vkontakte/vkui 4.35.3 → 4.36.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 (619) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +21605 -18307
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  6. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  7. package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  8. package/.cache/ts/src/components/Chip/Chip.d.ts +12 -5
  9. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +5 -26
  10. package/.cache/ts/src/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  11. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  12. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  13. package/.cache/ts/src/components/DateInput/DateInput.d.ts +4 -2
  14. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  15. package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  16. package/.cache/ts/src/components/FormField/FormField.d.ts +2 -1
  17. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  18. package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +1 -0
  19. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  20. package/.cache/ts/src/components/List/List.d.ts +2 -1
  21. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +13 -1
  22. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -2
  23. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  24. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  25. package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -2
  26. package/.cache/ts/src/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  27. package/{dist/cssm/components/ChipsSelect → .cache/ts/src/hooks}/useChipsSelect.d.ts +4 -4
  28. package/.cache/ts/src/index.d.ts +3 -0
  29. package/.cache/ts/src/tokenized/index.d.ts +56 -0
  30. package/README.md +3 -2
  31. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -4
  32. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  33. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +24 -0
  34. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  35. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +10 -8
  36. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  37. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -5
  38. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  39. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -39
  40. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  41. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +2 -3
  42. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  43. package/dist/cjs/components/Alert/Alert.js +11 -12
  44. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  45. package/dist/cjs/components/AppRoot/AppRoot.js +2 -5
  46. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  47. package/dist/cjs/components/Avatar/Avatar.js +4 -17
  48. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  49. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  50. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -21
  51. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  52. package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
  53. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  54. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  55. package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
  56. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  57. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
  58. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  59. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +44 -27
  60. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  61. package/dist/cjs/components/CustomSelect/CustomSelect.js +32 -31
  62. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  63. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  64. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  65. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
  66. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  67. package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
  68. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  69. package/dist/cjs/components/FormField/FormField.js +4 -2
  70. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  71. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
  72. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  73. package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
  74. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  75. package/dist/cjs/components/Header/Header.js +3 -11
  76. package/dist/cjs/components/Header/Header.js.map +1 -1
  77. package/dist/cjs/components/IconButton/IconButton.js +4 -3
  78. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  79. package/dist/cjs/components/Input/Input.js +4 -2
  80. package/dist/cjs/components/Input/Input.js.map +1 -1
  81. package/dist/cjs/components/List/List.js.map +1 -1
  82. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
  83. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  84. package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
  85. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  86. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
  87. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  88. package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
  89. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  90. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
  91. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  92. package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
  93. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  94. package/dist/cjs/components/Panel/Panel.js +4 -10
  95. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  96. package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
  97. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  98. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
  99. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  100. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  101. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  102. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  103. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  104. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -2
  105. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  106. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
  107. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  108. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  109. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  110. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  111. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  112. package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -6
  113. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  114. package/dist/cjs/components/Search/Search.js +7 -9
  115. package/dist/cjs/components/Search/Search.js.map +1 -1
  116. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
  117. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  118. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
  119. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  120. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
  121. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  122. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
  123. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  124. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -5
  125. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  126. package/dist/cjs/components/Tappable/Tappable.js +8 -16
  127. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  128. package/dist/cjs/components/Textarea/Textarea.js +4 -2
  129. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  130. package/dist/cjs/components/UsersStack/UsersStack.js +71 -34
  131. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  132. package/dist/cjs/components/View/ViewInfinite.js +1 -10
  133. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  134. package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
  135. package/dist/cjs/hooks/useChipsInput.js.map +1 -0
  136. package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  137. package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
  138. package/dist/cjs/index.js +8 -0
  139. package/dist/cjs/index.js.map +1 -1
  140. package/dist/cjs/lib/animate.js +2 -2
  141. package/dist/cjs/lib/animate.js.map +1 -1
  142. package/dist/cjs/lib/testing.js +2 -2
  143. package/dist/cjs/lib/testing.js.map +1 -1
  144. package/dist/cjs/lib/touch.js +2 -2
  145. package/dist/cjs/lib/touch.js.map +1 -1
  146. package/dist/cjs/tokenized/index.js +232 -0
  147. package/dist/cjs/tokenized/index.js.map +1 -1
  148. package/dist/components/ActionSheet/ActionSheet.js +4 -4
  149. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  150. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  151. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  152. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  153. package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
  154. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  155. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  156. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  157. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  158. package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
  159. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  160. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  161. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  162. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  163. package/dist/components/Alert/Alert.js +12 -12
  164. package/dist/components/Alert/Alert.js.map +1 -1
  165. package/dist/components/AppRoot/AppRoot.js +2 -5
  166. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  167. package/dist/components/Avatar/Avatar.js +4 -17
  168. package/dist/components/Avatar/Avatar.js.map +1 -1
  169. package/dist/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  170. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  171. package/dist/components/CalendarDay/CalendarDay.js +4 -21
  172. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  173. package/dist/components/CardScroll/CardScroll.js +1 -3
  174. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  175. package/dist/components/Chip/Chip.d.ts +12 -5
  176. package/dist/components/Chip/Chip.js.map +1 -1
  177. package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
  178. package/dist/components/ChipsInput/ChipsInput.js +14 -183
  179. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  180. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  181. package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
  182. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  183. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  184. package/dist/components/ChipsSelect/ChipsSelect.js +42 -26
  185. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  186. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  187. package/dist/components/CustomSelect/CustomSelect.js +32 -31
  188. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  189. package/dist/components/DateInput/DateInput.d.ts +4 -2
  190. package/dist/components/DateInput/DateInput.js +4 -2
  191. package/dist/components/DateInput/DateInput.js.map +1 -1
  192. package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  193. package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
  194. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  195. package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  196. package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
  197. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  198. package/dist/components/FormField/FormField.d.ts +2 -1
  199. package/dist/components/FormField/FormField.js +4 -2
  200. package/dist/components/FormField/FormField.js.map +1 -1
  201. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  202. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  203. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  204. package/dist/components/FormStatus/FormStatus.d.ts +1 -0
  205. package/dist/components/FormStatus/FormStatus.js +4 -4
  206. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  207. package/dist/components/Header/Header.js +3 -10
  208. package/dist/components/Header/Header.js.map +1 -1
  209. package/dist/components/IconButton/IconButton.js +4 -3
  210. package/dist/components/IconButton/IconButton.js.map +1 -1
  211. package/dist/components/Input/Input.d.ts +1 -1
  212. package/dist/components/Input/Input.js +4 -2
  213. package/dist/components/Input/Input.js.map +1 -1
  214. package/dist/components/List/List.d.ts +2 -1
  215. package/dist/components/List/List.js.map +1 -1
  216. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
  217. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  218. package/dist/components/ModalPage/ModalPage.d.ts +13 -1
  219. package/dist/components/ModalPage/ModalPage.js +12 -10
  220. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  221. package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
  222. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  223. package/dist/components/ModalRoot/ModalRoot.js +4 -18
  224. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  225. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
  226. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  227. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
  228. package/dist/components/NativeSelect/NativeSelect.js +4 -2
  229. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  230. package/dist/components/Panel/Panel.js +4 -8
  231. package/dist/components/Panel/Panel.js.map +1 -1
  232. package/dist/components/PanelHeader/PanelHeader.js +2 -11
  233. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  234. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  235. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  236. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  237. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  238. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  239. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  240. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  241. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  242. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  243. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  244. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  245. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  246. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  247. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  248. package/dist/components/PromoBanner/PromoBanner.js +1 -4
  249. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  250. package/dist/components/Search/Search.js +6 -8
  251. package/dist/components/Search/Search.js.map +1 -1
  252. package/dist/components/Select/Select.d.ts +1 -1
  253. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  254. package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
  255. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  256. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  257. package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
  258. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  259. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
  260. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  261. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
  262. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  263. package/dist/components/SubnavigationButton/SubnavigationButton.js +2 -5
  264. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  265. package/dist/components/Tappable/Tappable.js +3 -10
  266. package/dist/components/Tappable/Tappable.js.map +1 -1
  267. package/dist/components/Textarea/Textarea.d.ts +3 -2
  268. package/dist/components/Textarea/Textarea.js +4 -2
  269. package/dist/components/Textarea/Textarea.js.map +1 -1
  270. package/dist/components/UsersStack/UsersStack.js +69 -28
  271. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  272. package/dist/components/View/ViewInfinite.js +1 -10
  273. package/dist/components/View/ViewInfinite.js.map +1 -1
  274. package/dist/components.css +93 -15
  275. package/dist/components.css.map +1 -1
  276. package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
  277. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
  278. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  279. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  280. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  281. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  282. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
  283. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  284. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  285. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  286. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
  287. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  288. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
  289. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  290. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  291. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  292. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  293. package/dist/cssm/components/Alert/Alert.css +7 -1
  294. package/dist/cssm/components/Alert/Alert.js +12 -12
  295. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  296. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  297. package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
  298. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  299. package/dist/cssm/components/Avatar/Avatar.js +4 -17
  300. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  301. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  302. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  303. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -21
  304. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  305. package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
  306. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  307. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  308. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  309. package/dist/cssm/components/Chip/Chip.css +1 -1
  310. package/dist/cssm/components/Chip/Chip.d.ts +12 -5
  311. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  312. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  313. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
  314. package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
  315. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  316. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
  317. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  318. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
  319. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  320. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  321. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  322. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +42 -26
  323. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  324. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  325. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  326. package/dist/cssm/components/CustomSelect/CustomSelect.js +32 -31
  327. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  328. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  329. package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
  330. package/dist/cssm/components/DateInput/DateInput.js +4 -2
  331. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  332. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  333. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  334. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
  335. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  336. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  337. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
  338. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  339. package/dist/cssm/components/FormField/FormField.css +4 -4
  340. package/dist/cssm/components/FormField/FormField.d.ts +2 -1
  341. package/dist/cssm/components/FormField/FormField.js +4 -2
  342. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  343. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  344. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  345. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  346. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  347. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  348. package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
  349. package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
  350. package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
  351. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  352. package/dist/cssm/components/Header/Header.css +1 -1
  353. package/dist/cssm/components/Header/Header.js +3 -10
  354. package/dist/cssm/components/Header/Header.js.map +1 -1
  355. package/dist/cssm/components/IconButton/IconButton.js +4 -3
  356. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  357. package/dist/cssm/components/Input/Input.css +1 -1
  358. package/dist/cssm/components/Input/Input.d.ts +1 -1
  359. package/dist/cssm/components/Input/Input.js +4 -2
  360. package/dist/cssm/components/Input/Input.js.map +1 -1
  361. package/dist/cssm/components/List/List.d.ts +2 -1
  362. package/dist/cssm/components/List/List.js +1 -1
  363. package/dist/cssm/components/List/List.js.map +1 -1
  364. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  365. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
  366. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  367. package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
  368. package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
  369. package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
  370. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  371. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  372. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  373. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  374. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
  375. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  376. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
  377. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  378. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
  379. package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
  380. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  381. package/dist/cssm/components/Panel/Panel.css +19 -1
  382. package/dist/cssm/components/Panel/Panel.js +4 -8
  383. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  384. package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
  385. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
  386. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  387. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  388. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  389. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  390. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  391. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  392. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  393. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  394. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
  395. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  396. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  397. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  398. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  399. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  400. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  401. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  402. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  403. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  404. package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
  405. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -4
  406. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  407. package/dist/cssm/components/Search/Search.css +27 -1
  408. package/dist/cssm/components/Search/Search.js +6 -8
  409. package/dist/cssm/components/Search/Search.js.map +1 -1
  410. package/dist/cssm/components/Select/Select.css +1 -1
  411. package/dist/cssm/components/Select/Select.d.ts +1 -1
  412. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  413. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
  414. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  415. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
  416. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
  417. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  418. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
  419. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  420. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  421. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
  422. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  423. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  424. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +2 -5
  425. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  426. package/dist/cssm/components/TabsItem/TabsItem.css +1 -1
  427. package/dist/cssm/components/Tappable/Tappable.js +3 -10
  428. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  429. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  430. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
  431. package/dist/cssm/components/Textarea/Textarea.js +4 -2
  432. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  433. package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
  434. package/dist/cssm/components/UsersStack/UsersStack.js +69 -28
  435. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  436. package/dist/cssm/components/View/ViewInfinite.js +1 -10
  437. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  438. package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  439. package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
  440. package/dist/cssm/hooks/useChipsInput.js.map +1 -0
  441. package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
  442. package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
  443. package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
  444. package/dist/cssm/index.d.ts +3 -0
  445. package/dist/cssm/index.js +1 -0
  446. package/dist/cssm/index.js.map +1 -1
  447. package/dist/cssm/lib/animate.js +1 -1
  448. package/dist/cssm/lib/animate.js.map +1 -1
  449. package/dist/cssm/lib/testing.js +1 -1
  450. package/dist/cssm/lib/testing.js.map +1 -1
  451. package/dist/cssm/lib/touch.js +1 -1
  452. package/dist/cssm/lib/touch.js.map +1 -1
  453. package/dist/cssm/styles/components.css +93 -15
  454. package/dist/cssm/styles/themes.css +1 -1
  455. package/dist/cssm/styles/unstable.css +1 -1
  456. package/dist/cssm/tokenized/index.d.ts +56 -0
  457. package/dist/cssm/tokenized/index.js +29 -0
  458. package/dist/cssm/tokenized/index.js.map +1 -1
  459. package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  460. package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
  461. package/dist/hooks/useChipsInput.js.map +1 -0
  462. package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
  463. package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  464. package/dist/hooks/useChipsSelect.js.map +1 -0
  465. package/dist/index.d.ts +3 -0
  466. package/dist/index.js +1 -0
  467. package/dist/index.js.map +1 -1
  468. package/dist/lib/animate.js +1 -1
  469. package/dist/lib/animate.js.map +1 -1
  470. package/dist/lib/testing.js +1 -1
  471. package/dist/lib/testing.js.map +1 -1
  472. package/dist/lib/touch.js +1 -1
  473. package/dist/lib/touch.js.map +1 -1
  474. package/dist/tokenized/index.d.ts +56 -0
  475. package/dist/tokenized/index.js +29 -0
  476. package/dist/tokenized/index.js.map +1 -1
  477. package/dist/unstable.css +1 -1
  478. package/dist/unstable.css.map +1 -1
  479. package/dist/vkui.css +94 -16
  480. package/dist/vkui.css.map +1 -1
  481. package/package.json +9 -9
  482. package/src/components/ActionSheet/ActionSheet.css +31 -59
  483. package/src/components/ActionSheet/ActionSheet.tsx +4 -7
  484. package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
  485. package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
  486. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
  487. package/src/components/ActionSheet/Readme.md +6 -30
  488. package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
  489. package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
  490. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
  491. package/src/components/Alert/Alert.css +79 -79
  492. package/src/components/Alert/Alert.tsx +14 -14
  493. package/src/components/Alert/Readme.md +83 -104
  494. package/src/components/AppRoot/AppRoot.css +2 -1
  495. package/src/components/AppRoot/AppRoot.tsx +1 -4
  496. package/src/components/Avatar/Avatar.tsx +15 -17
  497. package/src/components/Avatar/Readme.md +3 -3
  498. package/src/components/ButtonGroup/ButtonGroup.tsx +6 -3
  499. package/src/components/ButtonGroup/Readme.md +13 -11
  500. package/src/components/Calendar/Readme.md +3 -0
  501. package/src/components/CalendarDay/CalendarDay.tsx +21 -20
  502. package/src/components/CalendarRange/Readme.md +3 -0
  503. package/src/components/CardScroll/CardScroll.tsx +1 -2
  504. package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
  505. package/src/components/Cell/CellDragger/CellDragger.css +1 -1
  506. package/src/components/Chip/Chip.css +1 -0
  507. package/src/components/Chip/Chip.tsx +14 -2
  508. package/src/components/ChipsInput/ChipsInput.css +0 -71
  509. package/src/components/ChipsInput/ChipsInput.tsx +20 -220
  510. package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
  511. package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
  512. package/src/components/ChipsSelect/ChipsSelect.css +8 -0
  513. package/src/components/ChipsSelect/ChipsSelect.tsx +47 -39
  514. package/src/components/CustomSelect/CustomSelect.css +1 -0
  515. package/src/components/CustomSelect/CustomSelect.tsx +2 -3
  516. package/src/components/CustomSelect/Readme.md +8 -2
  517. package/src/components/DateInput/DateInput.css +1 -1
  518. package/src/components/DateInput/DateInput.tsx +6 -3
  519. package/src/components/DateInput/Readme.md +13 -0
  520. package/src/components/DateRangeInput/DateRangeInput.css +1 -1
  521. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
  522. package/src/components/DateRangeInput/Readme.md +13 -0
  523. package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
  524. package/src/components/Epic/Readme.md +10 -5
  525. package/src/components/FormField/FormField.css +58 -6
  526. package/src/components/FormField/FormField.tsx +3 -0
  527. package/src/components/FormItem/FormItem.css +5 -3
  528. package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
  529. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
  530. package/src/components/FormLayoutGroup/Readme.md +58 -48
  531. package/src/components/FormStatus/FormStatus.css +8 -5
  532. package/src/components/FormStatus/FormStatus.tsx +4 -8
  533. package/src/components/Gallery/Readme.md +64 -18
  534. package/src/components/Header/Header.css +8 -12
  535. package/src/components/Header/Header.tsx +9 -8
  536. package/src/components/HorizontalCell/Readme.md +1 -1
  537. package/src/components/IconButton/IconButton.tsx +2 -2
  538. package/src/components/Input/Input.css +1 -1
  539. package/src/components/Input/Input.tsx +2 -0
  540. package/src/components/List/List.tsx +3 -4
  541. package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
  542. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
  543. package/src/components/ModalDismissButton/Readme.md +1 -1
  544. package/src/components/ModalPage/ModalPage.css +69 -63
  545. package/src/components/ModalPage/ModalPage.tsx +24 -11
  546. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
  547. package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
  548. package/src/components/ModalRoot/ModalRoot.tsx +24 -24
  549. package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
  550. package/src/components/ModalRoot/Readme.md +8 -3
  551. package/src/components/NativeSelect/NativeSelect.tsx +5 -2
  552. package/src/components/Panel/Panel.css +52 -24
  553. package/src/components/Panel/Panel.tsx +7 -9
  554. package/src/components/PanelHeader/PanelHeader.css +20 -8
  555. package/src/components/PanelHeader/PanelHeader.tsx +11 -12
  556. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
  557. package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
  558. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
  559. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
  560. package/src/components/PanelHeaderContent/PanelHeaderContent.css +14 -26
  561. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +10 -3
  562. package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
  563. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
  564. package/src/components/PanelHeaderContext/Readme.md +85 -101
  565. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
  566. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
  567. package/src/components/PromoBanner/PromoBanner.css +10 -22
  568. package/src/components/PromoBanner/PromoBanner.tsx +1 -5
  569. package/src/components/RichTooltip/Readme.md +2 -2
  570. package/src/components/Search/Search.css +134 -48
  571. package/src/components/Search/Search.tsx +13 -8
  572. package/src/components/Select/Select.css +2 -2
  573. package/src/components/SelectMimicry/Readme.md +3 -3
  574. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
  575. package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
  576. package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
  577. package/src/components/Snackbar/Readme.md +12 -3
  578. package/src/components/SplitLayout/Readme.md +1 -1
  579. package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
  580. package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
  581. package/src/components/SubnavigationButton/SubnavigationButton.css +13 -0
  582. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -4
  583. package/src/components/TabbarItem/Readme.md +6 -1
  584. package/src/components/Tabs/Readme.md +10 -2
  585. package/src/components/TabsItem/TabsItem.css +1 -1
  586. package/src/components/Tappable/Tappable.tsx +9 -11
  587. package/src/components/Textarea/Textarea.css +1 -1
  588. package/src/components/Textarea/Textarea.tsx +5 -2
  589. package/src/components/Tooltip/Readme.md +2 -2
  590. package/src/components/Touch/Readme.md +4 -4
  591. package/src/components/UsersStack/UsersStack.css +42 -0
  592. package/src/components/UsersStack/UsersStack.tsx +71 -15
  593. package/src/components/View/ViewInfinite.tsx +14 -14
  594. package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
  595. package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
  596. package/src/index.ts +3 -0
  597. package/src/lib/animate.ts +1 -1
  598. package/src/lib/testing.ts +1 -1
  599. package/src/lib/touch.ts +1 -1
  600. package/src/styles/components.css +1 -0
  601. package/src/tokenized/index.ts +85 -0
  602. package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
  603. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
  604. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
  605. package/dist/cjs/components/UsersStack/masks.js +0 -29
  606. package/dist/cjs/components/UsersStack/masks.js.map +0 -1
  607. package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
  608. package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
  609. package/dist/components/UsersStack/masks.d.ts +0 -1
  610. package/dist/components/UsersStack/masks.js +0 -20
  611. package/dist/components/UsersStack/masks.js.map +0 -1
  612. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
  613. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
  614. package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
  615. package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
  616. package/dist/cssm/components/UsersStack/masks.js +0 -20
  617. package/dist/cssm/components/UsersStack/masks.js.map +0 -1
  618. package/src/components/DropdownIcon/DropdownIcon.css +0 -3
  619. package/src/components/UsersStack/masks.tsx +0 -69
@@ -0,0 +1,73 @@
1
+ .ChipsInputBase {
2
+ flex-grow: 1;
3
+ flex-shrink: 1;
4
+ position: relative;
5
+ display: flex;
6
+ flex-wrap: wrap;
7
+ max-width: 100%;
8
+ padding: 3px;
9
+ z-index: 6;
10
+ overflow: hidden;
11
+ }
12
+
13
+ .ChipsInputBase__chip {
14
+ max-width: 100%;
15
+ margin: 2px;
16
+ }
17
+
18
+ .ChipsInputBase__label {
19
+ display: flex;
20
+ flex-direction: column;
21
+ flex: 1;
22
+ margin: 2px;
23
+ margin-left: 10px;
24
+ }
25
+
26
+ .ChipsInputBase__el {
27
+ position: relative;
28
+ width: 100%;
29
+ margin-bottom: 2px;
30
+ padding: 0;
31
+ /* Визуальная компенсация - центрируем строчные буквы */
32
+ font-size: 15px;
33
+ line-height: 26px;
34
+ color: var(--text_primary, var(--vkui--color_text_primary));
35
+ background: transparent;
36
+ border: none;
37
+ box-shadow: none;
38
+ appearance: none;
39
+ z-index: 2;
40
+ }
41
+
42
+ .ChipsInputBase__el:focus {
43
+ min-width: 64px;
44
+ }
45
+
46
+ .ChipsInputBase__el::-ms-clear {
47
+ display: none;
48
+ }
49
+
50
+ .ChipsInputBase__el:disabled {
51
+ opacity: var(--vkui--opacity_disable_accessibility);
52
+ }
53
+
54
+ .ChipsInputBase__el::placeholder {
55
+ color: var(--field_text_placeholder, var(--vkui--color_text_secondary));
56
+ /* Для Firefox */
57
+ opacity: 1;
58
+ }
59
+
60
+ .ChipsInputBase__el:disabled::placeholder {
61
+ color: var(--text_secondary, var(--vkui--color_text_secondary));
62
+ }
63
+
64
+ .ChipsInputBase__el[readonly] {
65
+ cursor: default;
66
+ }
67
+
68
+ /**
69
+ * sizeY COMPACT
70
+ */
71
+ .ChipsInputBase--sizeY-compact {
72
+ padding: 1px;
73
+ }
@@ -0,0 +1,206 @@
1
+ import * as React from "react";
2
+ import { HasAlign, HasRef, HasRootRef } from "../../types";
3
+ import { classNames } from "../../lib/classNames";
4
+ import { Chip, ChipOption, ChipValue, RenderChip } from "../Chip/Chip";
5
+ import { noop } from "../../lib/utils";
6
+ import { useChipsInput } from "../../hooks/useChipsInput";
7
+ import { useAdaptivity } from "../../hooks/useAdaptivity";
8
+ import { prefixClass } from "../../lib/prefixClass";
9
+ import { useExternRef } from "../../hooks/useExternRef";
10
+ import "./ChipsInputBase.css";
11
+
12
+ export interface ChipsInputBaseProps<Option extends ChipOption>
13
+ extends Omit<
14
+ React.InputHTMLAttributes<HTMLInputElement>,
15
+ "value" | "onChange"
16
+ >,
17
+ HasRef<HTMLInputElement>,
18
+ HasRootRef<HTMLDivElement>,
19
+ HasAlign {
20
+ value: Option[];
21
+ inputValue?: string;
22
+ onChange?: (o: Option[]) => void;
23
+ onInputChange?: (e?: React.ChangeEvent<HTMLInputElement>) => void;
24
+ getOptionValue?: (o?: Option) => ChipValue;
25
+ getOptionLabel?: (o?: Option) => string;
26
+ getNewOptionData?: (v?: ChipValue, l?: string) => Option;
27
+ renderChip?: (props?: RenderChip<Option>) => React.ReactNode;
28
+ inputAriaLabel?: string;
29
+ }
30
+
31
+ export const chipsInputDefaultProps: ChipsInputBaseProps<any> = {
32
+ onChange: noop,
33
+ onInputChange: noop,
34
+ onKeyDown: noop,
35
+ onBlur: noop,
36
+ onFocus: noop,
37
+ value: [],
38
+ inputValue: "",
39
+ inputAriaLabel: "Введите ваше значение...",
40
+ getOptionValue: (option) => option.value,
41
+ getOptionLabel: (option) => option.label,
42
+ getNewOptionData: (_, label) => ({
43
+ value: label,
44
+ label,
45
+ }),
46
+ renderChip(props) {
47
+ if (!props) {
48
+ return null;
49
+ }
50
+
51
+ const { disabled, value, label, ...rest } = props;
52
+ return (
53
+ <Chip value={value} removable={!disabled} {...rest}>
54
+ {label}
55
+ </Chip>
56
+ );
57
+ },
58
+ };
59
+
60
+ export const ChipsInputBase = <Option extends ChipOption>(
61
+ props: ChipsInputBaseProps<Option>
62
+ ) => {
63
+ const propsWithDefault = { ...chipsInputDefaultProps, ...props };
64
+ const {
65
+ style,
66
+ className,
67
+ getRootRef,
68
+ value,
69
+ onChange,
70
+ onInputChange,
71
+ onKeyDown,
72
+ onBlur,
73
+ onFocus,
74
+ children,
75
+ inputValue,
76
+ getRef,
77
+ placeholder,
78
+ getOptionValue,
79
+ getOptionLabel,
80
+ getNewOptionData,
81
+ renderChip,
82
+ inputAriaLabel,
83
+ ...restProps
84
+ } = propsWithDefault;
85
+ const { sizeY } = useAdaptivity();
86
+
87
+ const [focused, setFocused] = React.useState(false);
88
+ const {
89
+ fieldValue,
90
+ addOptionFromInput,
91
+ removeOption,
92
+ selectedOptions,
93
+ handleInputChange,
94
+ } = useChipsInput(propsWithDefault);
95
+ const inputRef = useExternRef(getRef);
96
+
97
+ const isDisabled = restProps.disabled || restProps.readOnly;
98
+
99
+ const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {
100
+ if (isDisabled) {
101
+ e.preventDefault();
102
+ return;
103
+ }
104
+
105
+ onKeyDown!(e);
106
+
107
+ if (
108
+ e.key === "Backspace" &&
109
+ !e.defaultPrevented &&
110
+ !fieldValue &&
111
+ selectedOptions.length
112
+ ) {
113
+ removeOption(
114
+ getOptionValue!(selectedOptions[selectedOptions.length - 1])
115
+ );
116
+ e.preventDefault();
117
+ }
118
+
119
+ if (e.key === "Enter" && !e.defaultPrevented && fieldValue) {
120
+ addOptionFromInput();
121
+ e.preventDefault();
122
+ }
123
+ };
124
+
125
+ const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {
126
+ if (focused) {
127
+ setFocused(false);
128
+ }
129
+ onBlur!(e);
130
+ };
131
+
132
+ const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {
133
+ if (!focused) {
134
+ setFocused(true);
135
+ }
136
+ onFocus!(e);
137
+ };
138
+
139
+ const handleChipRemove = (
140
+ _: React.MouseEvent | undefined,
141
+ value: ChipValue | undefined
142
+ ) => {
143
+ if (value !== undefined) {
144
+ removeOption(value);
145
+ }
146
+ };
147
+
148
+ const handleClick = (e: React.MouseEvent<HTMLDivElement>) => {
149
+ if (isDisabled) {
150
+ e.preventDefault();
151
+ return;
152
+ }
153
+
154
+ if (inputRef?.current !== null && !focused) {
155
+ inputRef.current.focus();
156
+ }
157
+ };
158
+
159
+ return (
160
+ <div
161
+ vkuiClass={classNames("ChipsInputBase", `ChipsInputBase--sizeY-${sizeY}`)}
162
+ onClick={handleClick}
163
+ role="presentation"
164
+ style={style}
165
+ className={className}
166
+ ref={getRootRef}
167
+ >
168
+ {selectedOptions.map((option: Option) => {
169
+ const value = getOptionValue!(option);
170
+ const label = getOptionLabel!(option);
171
+
172
+ return (
173
+ <React.Fragment key={`${typeof value}-${value}`}>
174
+ {renderChip!({
175
+ option,
176
+ value,
177
+ label,
178
+ onRemove: handleChipRemove,
179
+ disabled: Boolean(restProps.disabled),
180
+ className: prefixClass("ChipsInputBase__chip"),
181
+ })}
182
+ </React.Fragment>
183
+ );
184
+ })}
185
+ <label vkuiClass="ChipsInputBase__label" aria-label={inputAriaLabel}>
186
+ <input
187
+ type="text"
188
+ autoCapitalize="none"
189
+ autoComplete="off"
190
+ autoCorrect="off"
191
+ spellCheck={false}
192
+ aria-autocomplete="list"
193
+ vkuiClass="ChipsInputBase__el"
194
+ {...restProps}
195
+ ref={inputRef}
196
+ value={fieldValue}
197
+ onChange={handleInputChange}
198
+ onKeyDown={handleKeyDown}
199
+ onFocus={handleFocus}
200
+ onBlur={handleBlur}
201
+ placeholder={selectedOptions.length ? undefined : placeholder}
202
+ />
203
+ </label>
204
+ </div>
205
+ );
206
+ };
@@ -2,6 +2,14 @@
2
2
  position: relative;
3
3
  }
4
4
 
5
+ .ChipsSelect__dropdown {
6
+ cursor: pointer;
7
+ }
8
+
9
+ .ChipsSelect__icon {
10
+ pointer-events: none;
11
+ }
12
+
5
13
  .ChipsSelect__empty {
6
14
  padding: 12px 0;
7
15
  text-align: center;
@@ -1,20 +1,17 @@
1
1
  import * as React from "react";
2
2
  import { DropdownIcon } from "../DropdownIcon/DropdownIcon";
3
3
  import { classNames } from "../../lib/classNames";
4
+ import { ChipOption, ChipValue, RenderChip } from "../Chip/Chip";
5
+ import { ChipsInputProps } from "../ChipsInput/ChipsInput";
4
6
  import {
5
- ChipsInput,
6
- ChipsInputOption,
7
- ChipsInputProps,
8
- ChipsInputValue,
9
- RenderChip,
7
+ ChipsInputBase,
10
8
  chipsInputDefaultProps,
11
- } from "../ChipsInput/ChipsInput";
9
+ } from "../ChipsInputBase/ChipsInputBase";
12
10
  import {
13
11
  CustomSelectOption,
14
12
  CustomSelectOptionProps,
15
13
  } from "../CustomSelectOption/CustomSelectOption";
16
- import { useChipsSelect } from "./useChipsSelect";
17
- import { withAdaptivity, AdaptivityProps } from "../../hoc/withAdaptivity";
14
+ import { useChipsSelect } from "../../hooks/useChipsSelect";
18
15
  import { noop } from "../../lib/utils";
19
16
  import { useDOM } from "../../lib/dom";
20
17
  import { Caption } from "../Typography/Caption/Caption";
@@ -24,11 +21,12 @@ import { useGlobalEventListener } from "../../hooks/useGlobalEventListener";
24
21
  import { defaultFilterFn } from "../../lib/select";
25
22
  import { Placement } from "../Popper/Popper";
26
23
  import { CustomSelectDropdown } from "../CustomSelectDropdown/CustomSelectDropdown";
24
+ import { FormField } from "../FormField/FormField";
25
+ import { IconButton } from "../IconButton/IconButton";
27
26
  import "./ChipsSelect.css";
28
27
 
29
- export interface ChipsSelectProps<Option extends ChipsInputOption>
30
- extends ChipsInputProps<Option>,
31
- AdaptivityProps {
28
+ export interface ChipsSelectProps<Option extends ChipOption>
29
+ extends Omit<ChipsInputProps<Option>, "after"> {
32
30
  popupDirection?: "top" | "bottom";
33
31
  options?: Option[];
34
32
  filterFn?:
@@ -96,7 +94,10 @@ const chipsSelectDefaultProps: ChipsSelectProps<any> = {
96
94
  },
97
95
  };
98
96
 
99
- const ChipsSelectComponent = <Option extends ChipsInputOption>(
97
+ /**
98
+ * @see https://vkcom.github.io/VKUI/#/ChipsSelect
99
+ */
100
+ export const ChipsSelect = <Option extends ChipOption>(
100
101
  props: ChipsSelectProps<Option>
101
102
  ) => {
102
103
  const propsWithDefault = { ...chipsSelectDefaultProps, ...props };
@@ -123,10 +124,9 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
123
124
  filterFn,
124
125
  inputValue,
125
126
  creatableText,
126
- sizeY,
127
127
  closeAfterSelect,
128
128
  onChangeStart,
129
- after,
129
+ before,
130
130
  options,
131
131
  ...restProps
132
132
  } = propsWithDefault;
@@ -166,11 +166,9 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
166
166
  };
167
167
 
168
168
  const handleClickOutside = (e: MouseEvent) => {
169
- const { current: rootNode } = rootRef;
170
169
  if (
171
- rootNode &&
172
- e.target !== rootNode &&
173
- !rootNode.contains(e.target as Node)
170
+ e.target !== rootRef.current &&
171
+ !rootRef.current?.contains(e.target as Node)
174
172
  ) {
175
173
  setOpened(false);
176
174
  }
@@ -323,7 +321,7 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
323
321
  }
324
322
  const onRemoveWrapper = (
325
323
  e: React.MouseEvent | undefined,
326
- value: ChipsInputValue | undefined
324
+ value: ChipValue | undefined
327
325
  ) => {
328
326
  e?.preventDefault();
329
327
  e?.stopPropagation();
@@ -355,14 +353,39 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
355
353
  [rootRef, scrollBoxRef]
356
354
  );
357
355
 
356
+ const toggleOpened = () => {
357
+ setOpened((prevOpened) => !prevOpened);
358
+ };
359
+
358
360
  return (
359
- <div
360
- vkuiClass={classNames("ChipsSelect", `ChipsSelect--sizeY-${sizeY}`)}
361
- ref={rootRef}
361
+ <FormField
362
+ vkuiClass={classNames(
363
+ "ChipsSelect",
364
+ opened && "Select--open",
365
+ opened && (isPopperDirectionTop ? "Select--pop-up" : "Select--pop-down")
366
+ )}
367
+ getRootRef={rootRef}
362
368
  style={style}
363
369
  className={className}
370
+ disabled={disabled}
371
+ role="application"
372
+ aria-disabled={disabled}
373
+ aria-readonly={restProps.readOnly}
374
+ after={
375
+ <IconButton
376
+ vkuiClass="ChipsSelect__dropdown"
377
+ activeMode=""
378
+ hoverMode=""
379
+ // TODO: add label customization
380
+ aria-label={opened ? "Скрыть" : "Развернуть"}
381
+ onClick={toggleOpened}
382
+ >
383
+ <DropdownIcon vkuiClass="ChipsSelect__icon" opened={opened} />
384
+ </IconButton>
385
+ }
386
+ before={before}
364
387
  >
365
- <ChipsInput
388
+ <ChipsInputBase
366
389
  {...restProps}
367
390
  tabIndex={tabIndex}
368
391
  value={selectedOptions}
@@ -374,15 +397,9 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
374
397
  onFocus={handleFocus}
375
398
  onKeyDown={handleKeyDown}
376
399
  placeholder={placeholder}
377
- vkuiClass={classNames(
378
- opened && "Select--open",
379
- opened &&
380
- (isPopperDirectionTop ? "Select--pop-up" : "Select--pop-down")
381
- )}
382
400
  getRef={getRef}
383
401
  disabled={disabled}
384
402
  onInputChange={handleInputChange}
385
- after={<DropdownIcon />}
386
403
  />
387
404
  {opened && (
388
405
  <CustomSelectDropdown
@@ -452,15 +469,6 @@ const ChipsSelectComponent = <Option extends ChipsInputOption>(
452
469
  )}
453
470
  </CustomSelectDropdown>
454
471
  )}
455
- </div>
472
+ </FormField>
456
473
  );
457
474
  };
458
-
459
- /**
460
- * @see https://vkcom.github.io/VKUI/#/ChipsSelect
461
- */
462
- export const ChipsSelect = withAdaptivity(ChipsSelectComponent, {
463
- sizeY: true,
464
- });
465
-
466
- ChipsSelect.displayName = "ChipsSelect";
@@ -2,6 +2,7 @@
2
2
  width: 100%;
3
3
  position: relative;
4
4
  display: block;
5
+ cursor: pointer;
5
6
  }
6
7
 
7
8
  .CustomSelect__control {
@@ -101,7 +101,6 @@ const filter = (
101
101
  };
102
102
 
103
103
  const defaultOptions: CustomSelectOptionInterface[] = [];
104
- const defaultIcon = <DropdownIcon />;
105
104
 
106
105
  type SelectValue = React.SelectHTMLAttributes<HTMLSelectElement>["value"];
107
106
 
@@ -175,6 +174,7 @@ export interface CustomSelectProps
175
174
  type MouseEventHandler = (event: React.MouseEvent<HTMLElement>) => void;
176
175
 
177
176
  function CustomSelectComponent(props: CustomSelectProps) {
177
+ const [opened, setOpened] = React.useState(false);
178
178
  const {
179
179
  before,
180
180
  name,
@@ -201,7 +201,7 @@ function CustomSelectComponent(props: CustomSelectProps) {
201
201
  options: optionsProp = defaultOptions,
202
202
  emptyText = "Ничего не найдено",
203
203
  filterFn = defaultFilterFn,
204
- icon = defaultIcon,
204
+ icon = <DropdownIcon opened={opened} />,
205
205
  dropdownOffsetDistance = 0,
206
206
  fixDropdownWidth = true,
207
207
  ...restProps
@@ -233,7 +233,6 @@ function CustomSelectComponent(props: CustomSelectProps) {
233
233
  const [selectedOptionIndex, setSelectedOptionIndex] = React.useState<
234
234
  number | undefined
235
235
  >(findSelectedIndex(optionsProp, props.value ?? props.defaultValue));
236
- const [opened, setOpened] = React.useState(false);
237
236
 
238
237
  React.useEffect(() => {
239
238
  setIsControlledOutside(props.value !== undefined);
@@ -154,7 +154,11 @@ const CustomSearchLogicSelect = () => {
154
154
  onInputChange={onCustomSearchInputChange}
155
155
  renderOption={({ option, ...restProps }) => (
156
156
  <CustomSelectOption
157
- style={option.value === "0" ? { color: "var(--accent)" } : {}}
157
+ style={
158
+ option.value === "0"
159
+ ? { color: "var(--vkui--color_background_accent)" }
160
+ : {}
161
+ }
158
162
  {...restProps}
159
163
  >
160
164
  {option.label}
@@ -263,7 +267,9 @@ const AsyncCustomSelect = () => {
263
267
  const renderDropdown = ({ defaultDropdownContent }) => {
264
268
  if (remoteQuery.length < 3) {
265
269
  return (
266
- <Text style={{ padding: 12, color: "var(--text_secondary)" }}>
270
+ <Text
271
+ style={{ padding: 12, color: "var(--vkui--color_text_secondary)" }}
272
+ >
267
273
  Нужно ввести хотя бы три символа
268
274
  </Text>
269
275
  );
@@ -3,7 +3,7 @@
3
3
  margin-left: 10px;
4
4
  margin-right: 14px;
5
5
  font-size: 16px;
6
- z-index: 2;
6
+ z-index: 6;
7
7
  cursor: text;
8
8
  white-space: nowrap;
9
9
  user-select: text;
@@ -6,7 +6,7 @@ import { Popper, Placement } from "../Popper/Popper";
6
6
  import { multiRef } from "../../lib/utils";
7
7
  import { IconButton } from "../IconButton/IconButton";
8
8
  import { classNames } from "../../lib/classNames";
9
- import { FormField } from "../FormField/FormField";
9
+ import { FormField, FormFieldProps } from "../FormField/FormField";
10
10
  import { HasRootRef } from "../../types";
11
11
  import { useDateInput } from "../../hooks/useDateInput";
12
12
  import { InputLike } from "../InputLike/InputLike";
@@ -47,11 +47,13 @@ export interface DateInputProps
47
47
  | "prevMonthIcon"
48
48
  | "nextMonthIcon"
49
49
  >,
50
- HasRootRef<HTMLDivElement> {
50
+ HasRootRef<HTMLDivElement>,
51
+ FormFieldProps {
51
52
  calendarPlacement?: Placement;
52
53
  closeOnChange?: boolean;
53
54
  clearFieldAriaLabel?: string;
54
55
  showCalendarAriaLabel?: string;
56
+ disableCalendar?: boolean;
55
57
  }
56
58
 
57
59
  const elementsConfig = (index: number) => {
@@ -133,6 +135,7 @@ export const DateInput = ({
133
135
  onPrevMonth,
134
136
  prevMonthIcon,
135
137
  nextMonthIcon,
138
+ disableCalendar = false,
136
139
  ...props
137
140
  }: DateInputProps) => {
138
141
  const daysRef = React.useRef<HTMLSpanElement>(null);
@@ -298,7 +301,7 @@ export const DateInput = ({
298
301
  </React.Fragment>
299
302
  )}
300
303
  </span>
301
- {open && (
304
+ {open && !disableCalendar && (
302
305
  <Popper
303
306
  targetRef={rootRef}
304
307
  offsetDistance={8}
@@ -1,5 +1,8 @@
1
1
  Компонент выбора даты.
2
2
 
3
+ - Если нужен календарь без поля ввода, используйте [Calendar](#!/Calendar).
4
+ - Если нужен выбор диапазона дат, используйте [DateRangeInput](#!/DateRangeInput).
5
+
3
6
  > ⚠️ Данный компонент предназначен для использования на desktop. При использовании на ios/android работа компонента не гарантируется
4
7
 
5
8
  ```jsx { "props": { "layout": false, "iframe": false } }
@@ -13,6 +16,7 @@ const Example = () => {
13
16
  const [disablePickers, setDisablePickers] = useState(false);
14
17
  const [closeOnChange, setCloseOnChange] = useState(true);
15
18
  const [showNeighboringMonth, setShowNeighboringMonth] = useState(false);
19
+ const [disableCalendar, setDisableCalendar] = useState(false);
16
20
  const [locale, setLocale] = useState("ru");
17
21
 
18
22
  return (
@@ -66,6 +70,14 @@ const Example = () => {
66
70
  Включено
67
71
  </Checkbox>
68
72
  </FormItem>
73
+ <FormItem top="Отключить отображение выпадающего календаря">
74
+ <Checkbox
75
+ checked={disableCalendar}
76
+ onChange={(e) => setDisableCalendar(e.target.checked)}
77
+ >
78
+ Включено
79
+ </Checkbox>
80
+ </FormItem>
69
81
  <FormItem top="Локаль">
70
82
  <Select
71
83
  style={{ width: 100 }}
@@ -103,6 +115,7 @@ const Example = () => {
103
115
  closeOnChange={closeOnChange}
104
116
  disablePickers={disablePickers}
105
117
  showNeighboringMonth={showNeighboringMonth}
118
+ disableCalendar={disableCalendar}
106
119
  />
107
120
  </LocaleProviderContext.Provider>
108
121
  </div>
@@ -3,7 +3,7 @@
3
3
  margin-left: 10px;
4
4
  margin-right: 14px;
5
5
  font-size: 16px;
6
- z-index: 2;
6
+ z-index: 6;
7
7
  cursor: text;
8
8
  white-space: nowrap;
9
9
  user-select: text;
@@ -12,7 +12,7 @@ import { useDateInput } from "../../hooks/useDateInput";
12
12
  import { useAdaptivity } from "../../hooks/useAdaptivity";
13
13
  import { classNames } from "../../lib/classNames";
14
14
  import { multiRef } from "../../lib/utils";
15
- import { FormField } from "../FormField/FormField";
15
+ import { FormField, FormFieldProps } from "../FormField/FormField";
16
16
  import { InputLike } from "../InputLike/InputLike";
17
17
  import { InputLikeDivider } from "../InputLike/InputLikeDivider";
18
18
  import { callMultiple } from "../../lib/callMultiple";
@@ -37,7 +37,8 @@ export interface DateRangeInputProps
37
37
  | "prevMonthIcon"
38
38
  | "nextMonthIcon"
39
39
  >,
40
- HasRootRef<HTMLDivElement> {
40
+ HasRootRef<HTMLDivElement>,
41
+ FormFieldProps {
41
42
  calendarPlacement?: Placement;
42
43
  closeOnChange?: boolean;
43
44
  clearFieldAriaLabel?: string;
@@ -48,6 +49,7 @@ export interface DateRangeInputProps
48
49
  changeEndDayAriaLabel?: string;
49
50
  changeEndMonthAriaLabel?: string;
50
51
  changeEndYearAriaLabel?: string;
52
+ disableCalendar?: boolean;
51
53
  }
52
54
 
53
55
  const elementsConfig = (index: number) => {
@@ -125,6 +127,7 @@ export const DateRangeInput = ({
125
127
  showCalendarAriaLabel = "Показать календарь",
126
128
  prevMonthIcon,
127
129
  nextMonthIcon,
130
+ disableCalendar = false,
128
131
  ...props
129
132
  }: DateRangeInputProps) => {
130
133
  const daysStartRef = React.useRef<HTMLSpanElement>(null);
@@ -329,7 +332,7 @@ export const DateRangeInput = ({
329
332
  aria-label={changeEndYearAriaLabel}
330
333
  />
331
334
  </span>
332
- {open && (
335
+ {open && !disableCalendar && (
333
336
  <Popper
334
337
  targetRef={rootRef}
335
338
  offsetDistance={8}