@vkontakte/vkui 4.35.1 → 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 (654) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +21609 -18311
  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/Banner/Banner.js +41 -47
  50. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  51. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  52. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -21
  53. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  54. package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
  55. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  56. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  57. package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
  58. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  59. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
  60. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  61. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +44 -27
  62. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  63. package/dist/cjs/components/CustomSelect/CustomSelect.js +33 -32
  64. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  65. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +3 -0
  66. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  67. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  68. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  69. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
  70. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  71. package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
  72. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  73. package/dist/cjs/components/FormField/FormField.js +4 -2
  74. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  75. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
  76. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  77. package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
  78. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  79. package/dist/cjs/components/Header/Header.js +3 -11
  80. package/dist/cjs/components/Header/Header.js.map +1 -1
  81. package/dist/cjs/components/IconButton/IconButton.js +4 -3
  82. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  83. package/dist/cjs/components/Input/Input.js +4 -2
  84. package/dist/cjs/components/Input/Input.js.map +1 -1
  85. package/dist/cjs/components/List/List.js.map +1 -1
  86. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
  87. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  88. package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
  89. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  90. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
  91. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  92. package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
  93. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  94. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
  95. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  96. package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
  97. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  98. package/dist/cjs/components/Panel/Panel.js +4 -10
  99. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  100. package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
  101. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  102. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
  103. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  104. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  105. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  106. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  107. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  108. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -4
  109. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  110. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
  111. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  112. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  113. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  114. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  115. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  116. package/dist/cjs/components/Popper/Popper.js +53 -50
  117. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  118. package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -6
  119. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  120. package/dist/cjs/components/Search/Search.js +7 -9
  121. package/dist/cjs/components/Search/Search.js.map +1 -1
  122. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
  123. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  124. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
  125. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  126. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
  127. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  128. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
  129. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  130. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -5
  131. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  132. package/dist/cjs/components/Tappable/Tappable.js +8 -16
  133. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  134. package/dist/cjs/components/Textarea/Textarea.js +4 -2
  135. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  136. package/dist/cjs/components/UsersStack/UsersStack.js +71 -34
  137. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  138. package/dist/cjs/components/View/ViewInfinite.js +1 -10
  139. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  140. package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
  141. package/dist/cjs/hooks/useChipsInput.js.map +1 -0
  142. package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  143. package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
  144. package/dist/cjs/index.js +8 -0
  145. package/dist/cjs/index.js.map +1 -1
  146. package/dist/cjs/lib/animate.js +2 -2
  147. package/dist/cjs/lib/animate.js.map +1 -1
  148. package/dist/cjs/lib/platform.js +9 -4
  149. package/dist/cjs/lib/platform.js.map +1 -1
  150. package/dist/cjs/lib/testing.js +2 -2
  151. package/dist/cjs/lib/testing.js.map +1 -1
  152. package/dist/cjs/lib/touch.js +2 -2
  153. package/dist/cjs/lib/touch.js.map +1 -1
  154. package/dist/cjs/tokenized/index.js +232 -0
  155. package/dist/cjs/tokenized/index.js.map +1 -1
  156. package/dist/components/ActionSheet/ActionSheet.js +4 -4
  157. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  158. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  159. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  160. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  161. package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
  162. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  163. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  164. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  165. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  166. package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
  167. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  168. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  169. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  170. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  171. package/dist/components/Alert/Alert.js +12 -12
  172. package/dist/components/Alert/Alert.js.map +1 -1
  173. package/dist/components/AppRoot/AppRoot.js +2 -5
  174. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  175. package/dist/components/Avatar/Avatar.js +4 -17
  176. package/dist/components/Avatar/Avatar.js.map +1 -1
  177. package/dist/components/Banner/Banner.js +41 -48
  178. package/dist/components/Banner/Banner.js.map +1 -1
  179. package/dist/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  180. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  181. package/dist/components/CalendarDay/CalendarDay.js +4 -21
  182. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  183. package/dist/components/CardScroll/CardScroll.js +1 -3
  184. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  185. package/dist/components/Chip/Chip.d.ts +12 -5
  186. package/dist/components/Chip/Chip.js.map +1 -1
  187. package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
  188. package/dist/components/ChipsInput/ChipsInput.js +14 -183
  189. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  190. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  191. package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
  192. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  193. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  194. package/dist/components/ChipsSelect/ChipsSelect.js +42 -26
  195. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  196. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  197. package/dist/components/CustomSelect/CustomSelect.js +33 -32
  198. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  199. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -0
  200. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  201. package/dist/components/DateInput/DateInput.d.ts +4 -2
  202. package/dist/components/DateInput/DateInput.js +4 -2
  203. package/dist/components/DateInput/DateInput.js.map +1 -1
  204. package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  205. package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
  206. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  207. package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  208. package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
  209. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  210. package/dist/components/FormField/FormField.d.ts +2 -1
  211. package/dist/components/FormField/FormField.js +4 -2
  212. package/dist/components/FormField/FormField.js.map +1 -1
  213. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  214. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  215. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  216. package/dist/components/FormStatus/FormStatus.d.ts +1 -0
  217. package/dist/components/FormStatus/FormStatus.js +4 -4
  218. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  219. package/dist/components/Header/Header.js +3 -10
  220. package/dist/components/Header/Header.js.map +1 -1
  221. package/dist/components/IconButton/IconButton.js +4 -3
  222. package/dist/components/IconButton/IconButton.js.map +1 -1
  223. package/dist/components/Input/Input.d.ts +1 -1
  224. package/dist/components/Input/Input.js +4 -2
  225. package/dist/components/Input/Input.js.map +1 -1
  226. package/dist/components/List/List.d.ts +2 -1
  227. package/dist/components/List/List.js.map +1 -1
  228. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
  229. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  230. package/dist/components/ModalPage/ModalPage.d.ts +13 -1
  231. package/dist/components/ModalPage/ModalPage.js +12 -10
  232. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  233. package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
  234. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  235. package/dist/components/ModalRoot/ModalRoot.js +4 -18
  236. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  237. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
  238. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  239. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
  240. package/dist/components/NativeSelect/NativeSelect.js +4 -2
  241. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  242. package/dist/components/Panel/Panel.js +4 -8
  243. package/dist/components/Panel/Panel.js.map +1 -1
  244. package/dist/components/PanelHeader/PanelHeader.js +2 -11
  245. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  246. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  247. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  248. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  249. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  250. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  251. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  252. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +5 -5
  253. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  254. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  255. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  256. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  257. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  258. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  259. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  260. package/dist/components/Popper/Popper.js +53 -50
  261. package/dist/components/Popper/Popper.js.map +1 -1
  262. package/dist/components/PromoBanner/PromoBanner.js +1 -4
  263. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  264. package/dist/components/Search/Search.js +6 -8
  265. package/dist/components/Search/Search.js.map +1 -1
  266. package/dist/components/Select/Select.d.ts +1 -1
  267. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  268. package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
  269. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  270. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  271. package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
  272. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  273. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
  274. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  275. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
  276. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  277. package/dist/components/SubnavigationButton/SubnavigationButton.js +2 -5
  278. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  279. package/dist/components/Tappable/Tappable.js +3 -10
  280. package/dist/components/Tappable/Tappable.js.map +1 -1
  281. package/dist/components/Textarea/Textarea.d.ts +3 -2
  282. package/dist/components/Textarea/Textarea.js +4 -2
  283. package/dist/components/Textarea/Textarea.js.map +1 -1
  284. package/dist/components/UsersStack/UsersStack.js +69 -28
  285. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  286. package/dist/components/View/ViewInfinite.js +1 -10
  287. package/dist/components/View/ViewInfinite.js.map +1 -1
  288. package/dist/components.css +93 -15
  289. package/dist/components.css.map +1 -1
  290. package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
  291. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
  292. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  293. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  294. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  295. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  296. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
  297. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  298. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  299. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  300. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
  301. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  302. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
  303. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  304. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  305. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  306. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  307. package/dist/cssm/components/Alert/Alert.css +7 -1
  308. package/dist/cssm/components/Alert/Alert.js +12 -12
  309. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  310. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  311. package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
  312. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  313. package/dist/cssm/components/Avatar/Avatar.js +4 -17
  314. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  315. package/dist/cssm/components/Banner/Banner.js +41 -48
  316. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  317. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  318. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  319. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -21
  320. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  321. package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
  322. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  323. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  324. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  325. package/dist/cssm/components/Chip/Chip.css +1 -1
  326. package/dist/cssm/components/Chip/Chip.d.ts +12 -5
  327. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  328. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  329. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
  330. package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
  331. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  332. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
  333. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  334. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
  335. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  336. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  337. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  338. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +42 -26
  339. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  340. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  341. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  342. package/dist/cssm/components/CustomSelect/CustomSelect.js +33 -32
  343. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  344. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -0
  345. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  346. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  347. package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
  348. package/dist/cssm/components/DateInput/DateInput.js +4 -2
  349. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  350. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  351. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  352. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
  353. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  354. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  355. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
  356. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  357. package/dist/cssm/components/FormField/FormField.css +4 -4
  358. package/dist/cssm/components/FormField/FormField.d.ts +2 -1
  359. package/dist/cssm/components/FormField/FormField.js +4 -2
  360. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  361. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  362. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  363. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  364. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  365. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  366. package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
  367. package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
  368. package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
  369. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  370. package/dist/cssm/components/Header/Header.css +1 -1
  371. package/dist/cssm/components/Header/Header.js +3 -10
  372. package/dist/cssm/components/Header/Header.js.map +1 -1
  373. package/dist/cssm/components/IconButton/IconButton.js +4 -3
  374. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  375. package/dist/cssm/components/Input/Input.css +1 -1
  376. package/dist/cssm/components/Input/Input.d.ts +1 -1
  377. package/dist/cssm/components/Input/Input.js +4 -2
  378. package/dist/cssm/components/Input/Input.js.map +1 -1
  379. package/dist/cssm/components/List/List.d.ts +2 -1
  380. package/dist/cssm/components/List/List.js +1 -1
  381. package/dist/cssm/components/List/List.js.map +1 -1
  382. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  383. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
  384. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  385. package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
  386. package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
  387. package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
  388. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  389. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  390. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  391. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  392. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
  393. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  394. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
  395. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  396. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
  397. package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
  398. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  399. package/dist/cssm/components/Panel/Panel.css +19 -1
  400. package/dist/cssm/components/Panel/Panel.js +4 -8
  401. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  402. package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
  403. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
  404. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  405. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  406. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  407. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  408. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  409. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  410. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  411. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  412. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
  413. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +5 -5
  414. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  415. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  416. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  417. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  418. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  419. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  420. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  421. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  422. package/dist/cssm/components/Popper/Popper.js +53 -50
  423. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  424. package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
  425. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -4
  426. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  427. package/dist/cssm/components/Search/Search.css +27 -1
  428. package/dist/cssm/components/Search/Search.js +6 -8
  429. package/dist/cssm/components/Search/Search.js.map +1 -1
  430. package/dist/cssm/components/Select/Select.css +1 -1
  431. package/dist/cssm/components/Select/Select.d.ts +1 -1
  432. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  433. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
  434. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  435. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
  436. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
  437. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  438. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
  439. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  440. package/dist/cssm/components/Spacing/Spacing.css +1 -1
  441. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  442. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
  443. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  444. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  445. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +2 -5
  446. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  447. package/dist/cssm/components/TabsItem/TabsItem.css +1 -1
  448. package/dist/cssm/components/Tappable/Tappable.js +3 -10
  449. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  450. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  451. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
  452. package/dist/cssm/components/Textarea/Textarea.js +4 -2
  453. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  454. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  455. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  456. package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
  457. package/dist/cssm/components/UsersStack/UsersStack.js +69 -28
  458. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  459. package/dist/cssm/components/View/ViewInfinite.js +1 -10
  460. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  461. package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  462. package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
  463. package/dist/cssm/hooks/useChipsInput.js.map +1 -0
  464. package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
  465. package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
  466. package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
  467. package/dist/cssm/index.d.ts +3 -0
  468. package/dist/cssm/index.js +1 -0
  469. package/dist/cssm/index.js.map +1 -1
  470. package/dist/cssm/lib/animate.js +1 -1
  471. package/dist/cssm/lib/animate.js.map +1 -1
  472. package/dist/cssm/lib/platform.js +8 -3
  473. package/dist/cssm/lib/platform.js.map +1 -1
  474. package/dist/cssm/lib/testing.js +1 -1
  475. package/dist/cssm/lib/testing.js.map +1 -1
  476. package/dist/cssm/lib/touch.js +1 -1
  477. package/dist/cssm/lib/touch.js.map +1 -1
  478. package/dist/cssm/styles/components.css +93 -15
  479. package/dist/cssm/styles/themes.css +1 -1
  480. package/dist/cssm/styles/unstable.css +1 -1
  481. package/dist/cssm/tokenized/index.d.ts +56 -0
  482. package/dist/cssm/tokenized/index.js +29 -0
  483. package/dist/cssm/tokenized/index.js.map +1 -1
  484. package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  485. package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
  486. package/dist/hooks/useChipsInput.js.map +1 -0
  487. package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
  488. package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  489. package/dist/hooks/useChipsSelect.js.map +1 -0
  490. package/dist/index.d.ts +3 -0
  491. package/dist/index.js +1 -0
  492. package/dist/index.js.map +1 -1
  493. package/dist/lib/animate.js +1 -1
  494. package/dist/lib/animate.js.map +1 -1
  495. package/dist/lib/platform.js +8 -3
  496. package/dist/lib/platform.js.map +1 -1
  497. package/dist/lib/testing.js +1 -1
  498. package/dist/lib/testing.js.map +1 -1
  499. package/dist/lib/touch.js +1 -1
  500. package/dist/lib/touch.js.map +1 -1
  501. package/dist/tokenized/index.d.ts +56 -0
  502. package/dist/tokenized/index.js +29 -0
  503. package/dist/tokenized/index.js.map +1 -1
  504. package/dist/unstable.css +1 -1
  505. package/dist/unstable.css.map +1 -1
  506. package/dist/vkui.css +94 -16
  507. package/dist/vkui.css.map +1 -1
  508. package/package.json +9 -9
  509. package/src/components/ActionSheet/ActionSheet.css +31 -59
  510. package/src/components/ActionSheet/ActionSheet.tsx +4 -7
  511. package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
  512. package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
  513. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
  514. package/src/components/ActionSheet/Readme.md +6 -30
  515. package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
  516. package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
  517. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
  518. package/src/components/Alert/Alert.css +79 -79
  519. package/src/components/Alert/Alert.tsx +14 -14
  520. package/src/components/Alert/Readme.md +83 -104
  521. package/src/components/AppRoot/AppRoot.css +2 -1
  522. package/src/components/AppRoot/AppRoot.tsx +1 -4
  523. package/src/components/Avatar/Avatar.tsx +15 -17
  524. package/src/components/Avatar/Readme.md +3 -3
  525. package/src/components/Banner/Banner.tsx +58 -63
  526. package/src/components/ButtonGroup/ButtonGroup.tsx +6 -3
  527. package/src/components/ButtonGroup/Readme.md +13 -11
  528. package/src/components/Calendar/Readme.md +3 -0
  529. package/src/components/CalendarDay/CalendarDay.tsx +21 -20
  530. package/src/components/CalendarRange/Readme.md +3 -0
  531. package/src/components/CardScroll/CardScroll.tsx +1 -2
  532. package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
  533. package/src/components/Cell/CellDragger/CellDragger.css +1 -1
  534. package/src/components/Chip/Chip.css +1 -0
  535. package/src/components/Chip/Chip.tsx +14 -2
  536. package/src/components/ChipsInput/ChipsInput.css +0 -71
  537. package/src/components/ChipsInput/ChipsInput.tsx +20 -220
  538. package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
  539. package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
  540. package/src/components/ChipsSelect/ChipsSelect.css +8 -0
  541. package/src/components/ChipsSelect/ChipsSelect.tsx +47 -39
  542. package/src/components/CustomSelect/CustomSelect.css +1 -0
  543. package/src/components/CustomSelect/CustomSelect.tsx +3 -4
  544. package/src/components/CustomSelect/Readme.md +8 -2
  545. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -0
  546. package/src/components/DateInput/DateInput.css +1 -1
  547. package/src/components/DateInput/DateInput.tsx +6 -3
  548. package/src/components/DateInput/Readme.md +13 -0
  549. package/src/components/DateRangeInput/DateRangeInput.css +1 -1
  550. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
  551. package/src/components/DateRangeInput/Readme.md +13 -0
  552. package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
  553. package/src/components/Epic/Readme.md +10 -5
  554. package/src/components/FormField/FormField.css +58 -6
  555. package/src/components/FormField/FormField.tsx +3 -0
  556. package/src/components/FormItem/FormItem.css +5 -3
  557. package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
  558. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
  559. package/src/components/FormLayoutGroup/Readme.md +58 -48
  560. package/src/components/FormStatus/FormStatus.css +8 -5
  561. package/src/components/FormStatus/FormStatus.tsx +4 -8
  562. package/src/components/Gallery/Readme.md +64 -18
  563. package/src/components/Header/Header.css +8 -12
  564. package/src/components/Header/Header.tsx +9 -8
  565. package/src/components/HorizontalCell/Readme.md +1 -1
  566. package/src/components/IconButton/IconButton.tsx +2 -2
  567. package/src/components/Input/Input.css +1 -1
  568. package/src/components/Input/Input.tsx +2 -0
  569. package/src/components/List/List.tsx +3 -4
  570. package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
  571. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
  572. package/src/components/ModalDismissButton/Readme.md +1 -1
  573. package/src/components/ModalPage/ModalPage.css +69 -63
  574. package/src/components/ModalPage/ModalPage.tsx +24 -11
  575. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
  576. package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
  577. package/src/components/ModalRoot/ModalRoot.tsx +24 -24
  578. package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
  579. package/src/components/ModalRoot/Readme.md +8 -3
  580. package/src/components/NativeSelect/NativeSelect.tsx +5 -2
  581. package/src/components/Panel/Panel.css +52 -24
  582. package/src/components/Panel/Panel.tsx +7 -9
  583. package/src/components/PanelHeader/PanelHeader.css +28 -21
  584. package/src/components/PanelHeader/PanelHeader.tsx +11 -12
  585. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
  586. package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
  587. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
  588. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
  589. package/src/components/PanelHeaderContent/PanelHeaderContent.css +17 -23
  590. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +11 -5
  591. package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
  592. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
  593. package/src/components/PanelHeaderContext/Readme.md +85 -101
  594. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
  595. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
  596. package/src/components/Popper/Popper.tsx +37 -31
  597. package/src/components/PromoBanner/PromoBanner.css +10 -22
  598. package/src/components/PromoBanner/PromoBanner.tsx +1 -5
  599. package/src/components/RichTooltip/Readme.md +2 -2
  600. package/src/components/Search/Search.css +134 -48
  601. package/src/components/Search/Search.tsx +13 -8
  602. package/src/components/Select/Select.css +2 -2
  603. package/src/components/SelectMimicry/Readme.md +3 -3
  604. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
  605. package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
  606. package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
  607. package/src/components/Snackbar/Readme.md +12 -3
  608. package/src/components/Spacing/Readme.md +20 -20
  609. package/src/components/Spacing/Spacing.css +5 -1
  610. package/src/components/SplitLayout/Readme.md +1 -1
  611. package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
  612. package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
  613. package/src/components/SubnavigationButton/SubnavigationButton.css +13 -0
  614. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -4
  615. package/src/components/TabbarItem/Readme.md +6 -1
  616. package/src/components/Tabs/Readme.md +10 -2
  617. package/src/components/TabsItem/TabsItem.css +1 -1
  618. package/src/components/Tappable/Tappable.tsx +9 -11
  619. package/src/components/Textarea/Textarea.css +1 -1
  620. package/src/components/Textarea/Textarea.tsx +5 -2
  621. package/src/components/Tooltip/Readme.md +2 -2
  622. package/src/components/Touch/Readme.md +4 -4
  623. package/src/components/Typography/Headline/Headline.css +10 -0
  624. package/src/components/Typography/Text/Text.css +10 -0
  625. package/src/components/UsersStack/UsersStack.css +42 -0
  626. package/src/components/UsersStack/UsersStack.tsx +71 -15
  627. package/src/components/View/ViewInfinite.tsx +14 -14
  628. package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
  629. package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
  630. package/src/index.ts +3 -0
  631. package/src/lib/animate.ts +1 -1
  632. package/src/lib/platform.ts +12 -6
  633. package/src/lib/testing.ts +1 -1
  634. package/src/lib/touch.ts +1 -1
  635. package/src/styles/components.css +1 -0
  636. package/src/tokenized/index.ts +85 -0
  637. package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
  638. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
  639. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
  640. package/dist/cjs/components/UsersStack/masks.js +0 -29
  641. package/dist/cjs/components/UsersStack/masks.js.map +0 -1
  642. package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
  643. package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
  644. package/dist/components/UsersStack/masks.d.ts +0 -1
  645. package/dist/components/UsersStack/masks.js +0 -20
  646. package/dist/components/UsersStack/masks.js.map +0 -1
  647. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
  648. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
  649. package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
  650. package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
  651. package/dist/cssm/components/UsersStack/masks.js +0 -20
  652. package/dist/cssm/components/UsersStack/masks.js.map +0 -1
  653. package/src/components/DropdownIcon/DropdownIcon.css +0 -3
  654. package/src/components/UsersStack/masks.tsx +0 -69
@@ -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);
@@ -243,7 +242,7 @@ function CustomSelectComponent(props: CustomSelectProps) {
243
242
  }, [props.value]);
244
243
 
245
244
  useIsomorphicLayoutEffect(() => {
246
- if (nativeSelectValue) {
245
+ if (nativeSelectValue !== undefined) {
247
246
  const event = new Event("change", { bubbles: true });
248
247
 
249
248
  selectElRef.current?.dispatchEvent(event);
@@ -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
  );
@@ -7,6 +7,7 @@ import { Popper, Placement } from "../Popper/Popper";
7
7
  import { Spinner } from "../Spinner/Spinner";
8
8
  import { HasRef } from "../../types";
9
9
  import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
10
+ import { noop } from "../../lib/utils";
10
11
  import "./CustomSelectDropdown.css";
11
12
 
12
13
  export interface CustomSelectDropdownProps
@@ -35,6 +36,7 @@ function getObserverModifier<T extends HTMLElement>(
35
36
  name: "customSelectChildrenChange",
36
37
  enabled: true,
37
38
  phase: "main",
39
+ fn: noop,
38
40
  effect: ({ instance }) => {
39
41
  const observer = new MutationObserver(instance.forceUpdate);
40
42
 
@@ -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}
@@ -1,5 +1,8 @@
1
1
  Компонент выбора даты.
2
2
 
3
+ - Если нужен календарь без поля ввода, используйте [CalendarRange](#!/CalendarRange).
4
+ - Если нужен выбор одной даты, используйте [DateInput](#!/DateInput).
5
+
3
6
  > ⚠️ Данный компонент предназначен для использования на desktop. При использовании на ios/android работа компонента не гарантируется
4
7
 
5
8
  ```jsx { "props": { "layout": false, "iframe": false } }
@@ -11,6 +14,7 @@ const Example = () => {
11
14
  const [disableFuture, setDisableFuture] = useState(false);
12
15
  const [disablePickers, setDisablePickers] = useState(false);
13
16
  const [closeOnChange, setCloseOnChange] = useState(true);
17
+ const [disableCalendar, setDisableCalendar] = useState(false);
14
18
  const [locale, setLocale] = useState("ru");
15
19
 
16
20
  return (
@@ -48,6 +52,14 @@ const Example = () => {
48
52
  Включено
49
53
  </Checkbox>
50
54
  </FormItem>
55
+ <FormItem top="Отключить отображение выпадающего календаря">
56
+ <Checkbox
57
+ checked={disableCalendar}
58
+ onChange={(e) => setDisableCalendar(e.target.checked)}
59
+ >
60
+ Включено
61
+ </Checkbox>
62
+ </FormItem>
51
63
  <FormItem top="Локаль">
52
64
  <Select
53
65
  style={{ width: 100 }}
@@ -83,6 +95,7 @@ const Example = () => {
83
95
  disableFuture={disableFuture}
84
96
  closeOnChange={closeOnChange}
85
97
  disablePickers={disablePickers}
98
+ disableCalendar={disableCalendar}
86
99
  />
87
100
  </LocaleProviderContext.Provider>
88
101
  </div>
@@ -1,16 +1,30 @@
1
1
  import * as React from "react";
2
- import { Icon20Dropdown, Icon24ChevronDown } from "@vkontakte/icons";
2
+ import {
3
+ Icon20Dropdown,
4
+ Icon24ChevronDown,
5
+ Icon24ChevronUp,
6
+ Icon20ChevronUp,
7
+ } from "@vkontakte/icons";
8
+ import { classNames } from "../../lib/classNames";
3
9
  import { SizeType } from "../AdaptivityProvider/AdaptivityContext";
4
- import { getClassName } from "../../helpers/getClassName";
5
10
  import { useAdaptivity } from "../../hooks/useAdaptivity";
6
- import { usePlatform } from "../../hooks/usePlatform";
7
- import "./DropdownIcon.css";
8
11
 
9
- export const DropdownIcon = (props: React.HTMLAttributes<HTMLDivElement>) => {
10
- const platform = usePlatform();
12
+ export interface DropdownIconProps
13
+ extends React.HTMLAttributes<HTMLDivElement> {
14
+ opened?: boolean;
15
+ }
16
+
17
+ export const DropdownIcon = ({
18
+ opened = false,
19
+ ...restProps
20
+ }: DropdownIconProps) => {
11
21
  const { sizeY } = useAdaptivity();
12
22
 
13
- const Icon = sizeY === SizeType.COMPACT ? Icon20Dropdown : Icon24ChevronDown;
23
+ let Icon = sizeY === SizeType.COMPACT ? Icon20Dropdown : Icon24ChevronDown;
24
+
25
+ if (opened) {
26
+ Icon = sizeY === SizeType.COMPACT ? Icon20ChevronUp : Icon24ChevronUp;
27
+ }
14
28
 
15
- return <Icon vkuiClass={getClassName("DropdownIcon", platform)} {...props} />;
29
+ return <Icon vkuiClass={classNames("DropdownIcon")} {...restProps} />;
16
30
  };
@@ -39,7 +39,8 @@ const Example = withAdaptivity(
39
39
  style={
40
40
  activeStory === "feed"
41
41
  ? {
42
- backgroundColor: "var(--button_secondary_background)",
42
+ backgroundColor:
43
+ "var(--vkui--color_background_secondary)",
43
44
  borderRadius: 8,
44
45
  }
45
46
  : {}
@@ -55,7 +56,8 @@ const Example = withAdaptivity(
55
56
  style={
56
57
  activeStory === "services"
57
58
  ? {
58
- backgroundColor: "var(--button_secondary_background)",
59
+ backgroundColor:
60
+ "var(--vkui--color_background_secondary)",
59
61
  borderRadius: 8,
60
62
  }
61
63
  : {}
@@ -71,7 +73,8 @@ const Example = withAdaptivity(
71
73
  style={
72
74
  activeStory === "messages"
73
75
  ? {
74
- backgroundColor: "var(--button_secondary_background)",
76
+ backgroundColor:
77
+ "var(--vkui--color_background_secondary)",
75
78
  borderRadius: 8,
76
79
  }
77
80
  : {}
@@ -87,7 +90,8 @@ const Example = withAdaptivity(
87
90
  style={
88
91
  activeStory === "clips"
89
92
  ? {
90
- backgroundColor: "var(--button_secondary_background)",
93
+ backgroundColor:
94
+ "var(--vkui--color_background_secondary)",
91
95
  borderRadius: 8,
92
96
  }
93
97
  : {}
@@ -103,7 +107,8 @@ const Example = withAdaptivity(
103
107
  style={
104
108
  activeStory === "profile"
105
109
  ? {
106
- backgroundColor: "var(--button_secondary_background)",
110
+ backgroundColor:
111
+ "var(--vkui--color_background_secondary)",
107
112
  borderRadius: 8,
108
113
  }
109
114
  : {}
@@ -1,11 +1,18 @@
1
1
  .FormField {
2
2
  position: relative;
3
+ z-index: 1;
3
4
  display: flex;
4
5
  align-items: center;
5
6
  box-sizing: border-box;
6
7
  min-height: var(--vkui--size_field_height--regular);
7
8
  }
8
9
 
10
+ /* stylelint-disable-next-line vkui/atomic */
11
+ .FormField > * {
12
+ border-radius: inherit;
13
+ z-index: 6;
14
+ }
15
+
9
16
  /**
10
17
  * TODO v5.0.0 поправить под новую адаптивность
11
18
  */
@@ -16,7 +23,7 @@
16
23
  .FormField__before,
17
24
  .FormField__after {
18
25
  position: relative;
19
- z-index: 2;
26
+ z-index: 7;
20
27
  display: flex;
21
28
  align-items: center;
22
29
  align-content: center;
@@ -70,16 +77,20 @@
70
77
  * CMP:
71
78
  * FormItem
72
79
  */
73
- .FormItem--error .FormField__border {
80
+ .FormItem--error .FormField__border,
81
+ .FormField--status-error .FormField__border {
74
82
  background-color: var(
75
83
  --field_error_background,
76
84
  var(--vkui--color_background_negative_tint)
77
85
  );
78
86
  border-color: var(--field_error_border, var(--vkui--color_stroke_negative));
87
+ z-index: 3;
79
88
  }
80
89
 
81
- .FormItem--valid .FormField__border {
90
+ .FormItem--valid .FormField__border,
91
+ .FormField--status-valid .FormField__border {
82
92
  border-color: var(--field_valid_border, var(--vkui--color_stroke_positive));
93
+ z-index: 3;
83
94
  }
84
95
  /* [end] */
85
96
 
@@ -101,15 +112,16 @@
101
112
  --icon_tertiary_alpha,
102
113
  var(--vkui--color_field_border_alpha--hover)
103
114
  );
115
+ z-index: 4;
104
116
  }
105
117
 
106
118
  /**
107
119
  * FIXME: необходимо заменить на `useFocusVisible()`
108
120
  */
109
121
  .FormField:focus-within .FormField__border,
110
- .FormField *:focus ~ .FormField__border,
111
- .ChipsInput--focused .FormField__border {
122
+ .FormField *:focus ~ .FormField__border {
112
123
  border-color: var(--accent, var(--vkui--color_stroke_accent));
124
+ z-index: 5;
113
125
  }
114
126
 
115
127
  /**
@@ -149,5 +161,45 @@
149
161
  * ChipsInput
150
162
  */
151
163
  .ChipsInput .FormField__after {
152
- z-index: 3;
164
+ z-index: 7;
165
+ }
166
+
167
+ /**
168
+ * CMP:
169
+ * FormLayoutGroup
170
+ */
171
+ .FormLayoutGroup--segmented .FormField {
172
+ z-index: auto;
173
+ }
174
+
175
+ .FormLayoutGroup--segmented
176
+ > .FormItem:not(:first-of-type):not(:last-of-type)
177
+ .FormField__border,
178
+ .FormLayoutGroup--segmented
179
+ .Removable__content
180
+ > .FormItem:not(:first-of-type):not(:last-of-type)
181
+ .FormField__border {
182
+ border-radius: 0;
183
+ }
184
+
185
+ .FormLayoutGroup--segmented
186
+ > *:first-of-type:not(:last-of-type)
187
+ .FormField__border,
188
+ .FormLayoutGroup--segmented
189
+ .Removable__content
190
+ > *:first-of-type:not(:last-of-type)
191
+ .FormField__border {
192
+ border-top-right-radius: 0;
193
+ border-bottom-right-radius: 0;
194
+ }
195
+
196
+ .FormLayoutGroup--segmented
197
+ > .FormItem:not(:first-of-type):last-of-type
198
+ .FormField__border,
199
+ .FormLayoutGroup--segmented
200
+ .Removable__content
201
+ > .FormItem:not(:first-of-type):last-of-type
202
+ .FormField__border {
203
+ border-top-left-radius: 0;
204
+ border-bottom-left-radius: 0;
153
205
  }
@@ -10,6 +10,7 @@ export const FormFieldMode = {
10
10
  } as const;
11
11
 
12
12
  export interface FormFieldProps {
13
+ status?: "default" | "error" | "valid";
13
14
  /**
14
15
  * Добавляет иконку слева.
15
16
  *
@@ -44,6 +45,7 @@ interface FormFieldOwnProps
44
45
  */
45
46
  export const FormField = ({
46
47
  Component = "div",
48
+ status = "default",
47
49
  children,
48
50
  getRootRef,
49
51
  before,
@@ -75,6 +77,7 @@ export const FormField = ({
75
77
  vkuiClass={classNames(
76
78
  "FormField",
77
79
  `FormField--${mode}`,
80
+ `FormField--status-${status}`,
78
81
  `FormField--sizeY-${sizeY}`, // TODO v5.0.0 поправить под новую адаптивность
79
82
  disabled && "FormField--disabled",
80
83
  !disabled && hover && "FormField--hover"