@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
@@ -17,32 +17,61 @@ import "./Popper.css";
17
17
  var ARROW_PADDING = 8;
18
18
  var ARROW_WIDTH = 20;
19
19
  var ARROW_HEIGHT = 8;
20
+ var preventOverflowModifier = {
21
+ name: "preventOverflow",
22
+ options: {
23
+ mainAxis: false
24
+ }
25
+ };
26
+ var flipModifier = {
27
+ name: "flip"
28
+ };
29
+ var arrowModifier = {
30
+ name: "arrow",
31
+ options: {
32
+ padding: ARROW_PADDING
33
+ }
34
+ };
35
+ var sameWidthModifier = {
36
+ name: "sameWidth",
37
+ enabled: true,
38
+ phase: "beforeWrite",
39
+ requires: ["computeStyles"],
40
+ fn: function fn(_ref) {
41
+ var state = _ref.state;
42
+ state.styles.popper.width = "".concat(state.rects.reference.width, "px");
43
+ },
44
+ effect: function effect(_ref2) {
45
+ var state = _ref2.state;
46
+ state.elements.popper.style.width = "".concat(state.elements.reference.offsetWidth, "px");
47
+ }
48
+ };
20
49
  /**
21
50
  * @see https://vkcom.github.io/VKUI/#/Popper
22
51
  */
23
52
 
24
- export var Popper = function Popper(_ref) {
53
+ export var Popper = function Popper(_ref3) {
25
54
  var _targetRef$current3;
26
55
 
27
- var targetRef = _ref.targetRef,
28
- children = _ref.children,
29
- getRef = _ref.getRef,
30
- _ref$placement = _ref.placement,
31
- placement = _ref$placement === void 0 ? "bottom-start" : _ref$placement,
32
- onPlacementChange = _ref.onPlacementChange,
33
- arrow = _ref.arrow,
34
- arrowClassName = _ref.arrowClassName,
35
- sameWidth = _ref.sameWidth,
36
- _ref$offsetDistance = _ref.offsetDistance,
37
- offsetDistance = _ref$offsetDistance === void 0 ? 8 : _ref$offsetDistance,
38
- _ref$offsetSkidding = _ref.offsetSkidding,
39
- offsetSkidding = _ref$offsetSkidding === void 0 ? 0 : _ref$offsetSkidding,
40
- _ref$forcePortal = _ref.forcePortal,
41
- forcePortal = _ref$forcePortal === void 0 ? true : _ref$forcePortal,
42
- compStyles = _ref.style,
43
- customModifiers = _ref.customModifiers,
44
- renderContent = _ref.renderContent,
45
- restProps = _objectWithoutProperties(_ref, _excluded);
56
+ var targetRef = _ref3.targetRef,
57
+ children = _ref3.children,
58
+ getRef = _ref3.getRef,
59
+ _ref3$placement = _ref3.placement,
60
+ placement = _ref3$placement === void 0 ? "bottom-start" : _ref3$placement,
61
+ onPlacementChange = _ref3.onPlacementChange,
62
+ arrow = _ref3.arrow,
63
+ arrowClassName = _ref3.arrowClassName,
64
+ sameWidth = _ref3.sameWidth,
65
+ _ref3$offsetDistance = _ref3.offsetDistance,
66
+ offsetDistance = _ref3$offsetDistance === void 0 ? 8 : _ref3$offsetDistance,
67
+ _ref3$offsetSkidding = _ref3.offsetSkidding,
68
+ offsetSkidding = _ref3$offsetSkidding === void 0 ? 0 : _ref3$offsetSkidding,
69
+ _ref3$forcePortal = _ref3.forcePortal,
70
+ forcePortal = _ref3$forcePortal === void 0 ? true : _ref3$forcePortal,
71
+ compStyles = _ref3.style,
72
+ customModifiers = _ref3.customModifiers,
73
+ renderContent = _ref3.renderContent,
74
+ restProps = _objectWithoutProperties(_ref3, _excluded);
46
75
 
47
76
  var _React$useState = React.useState(null),
48
77
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -57,45 +86,19 @@ export var Popper = function Popper(_ref) {
57
86
  var platform = usePlatform();
58
87
  var setExternalRef = useExternRef(getRef, setPopperNode);
59
88
  var modifiers = React.useMemo(function () {
60
- var modifiers = [{
61
- name: "preventOverflow",
62
- options: {
63
- mainAxis: false
64
- }
65
- }, {
89
+ var modifiers = [preventOverflowModifier, {
66
90
  name: "offset",
67
91
  options: {
68
92
  offset: [arrow ? offsetSkidding - smallTargetOffsetSkidding : offsetSkidding, arrow ? offsetDistance + ARROW_HEIGHT : offsetDistance]
69
93
  }
70
- }, {
71
- name: "flip"
72
- }];
94
+ }, flipModifier];
73
95
 
74
96
  if (arrow) {
75
- modifiers.push({
76
- name: "arrow",
77
- options: {
78
- padding: ARROW_PADDING
79
- }
80
- });
97
+ modifiers.push(arrowModifier);
81
98
  }
82
99
 
83
100
  if (sameWidth) {
84
- var _sameWidth = {
85
- name: "sameWidth",
86
- enabled: true,
87
- phase: "beforeWrite",
88
- requires: ["computeStyles"],
89
- fn: function fn(_ref2) {
90
- var state = _ref2.state;
91
- state.styles.popper.width = "".concat(state.rects.reference.width, "px");
92
- },
93
- effect: function effect(_ref3) {
94
- var state = _ref3.state;
95
- state.elements.popper.style.width = "".concat(state.elements.reference.offsetWidth, "px");
96
- }
97
- };
98
- modifiers.push(_sameWidth);
101
+ modifiers.push(sameWidthModifier);
99
102
  }
100
103
 
101
104
  if (customModifiers) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Popper/Popper.tsx"],"names":["React","usePopper","AppRootPortal","PopperArrow","usePlatform","getClassName","useExternRef","useIsomorphicLayoutEffect","ARROW_PADDING","ARROW_WIDTH","ARROW_HEIGHT","Popper","targetRef","children","getRef","placement","onPlacementChange","arrow","arrowClassName","sameWidth","offsetDistance","offsetSkidding","forcePortal","compStyles","style","customModifiers","renderContent","restProps","useState","popperNode","setPopperNode","smallTargetOffsetSkidding","setSmallTargetOffsetSkidding","platform","setExternalRef","modifiers","useMemo","name","options","mainAxis","offset","push","padding","enabled","phase","requires","fn","state","styles","popper","width","rects","reference","effect","elements","offsetWidth","current","attributes","resolvedPlacement","isEdgePlacement","includes","placementDirection","startsWith","arrowSize","targetSize","offsetHeight","useEffect","dropdown","minWidth","scrollWidth","undefined","className"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { usePopper, Modifier } from \"react-popper\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { PopperArrow } from \"../PopperArrow/PopperArrow\";\nimport { HasRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport \"./Popper.css\";\n\nexport type Placement =\n | \"auto\"\n | \"auto-start\"\n | \"auto-end\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"right-start\"\n | \"right-end\"\n | \"left-start\"\n | \"left-end\"\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\";\n\nexport interface PopperRenderContentProps {\n className: string;\n}\n\nexport interface PopperCommonProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: Placement;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n /**\n * Отображать ли стрелку, указывающую на якорный элемент\n */\n arrow?: boolean;\n /**\n * Стиль стрелки\n */\n arrowClassName?: string;\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (data: { placement?: Placement }) => void;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать)\n */\n customModifiers?: Array<Modifier<string>>;\n /**\n * При передаче содержимого в `children`, он будет обёрнут во внутренний контейнер.\n *\n * Если хочется управлять этим контейнером, то используйте данную функцию.\n *\n * > ⚠️ Параметр `children` будет проигнорирован.\n */\n renderContent?(props: PopperRenderContentProps): React.ReactNode;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\nconst ARROW_PADDING = 8;\nconst ARROW_WIDTH = 20;\nconst ARROW_HEIGHT = 8;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Popper\n */\nexport const Popper = ({\n targetRef,\n children,\n getRef,\n placement = \"bottom-start\",\n onPlacementChange,\n arrow,\n arrowClassName,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n style: compStyles,\n customModifiers,\n renderContent,\n ...restProps\n}: PopperProps) => {\n const [popperNode, setPopperNode] = React.useState<HTMLDivElement | null>(\n null\n );\n const [smallTargetOffsetSkidding, setSmallTargetOffsetSkidding] =\n React.useState(0);\n const platform = usePlatform();\n\n const setExternalRef = useExternRef<HTMLDivElement>(getRef, setPopperNode);\n\n const modifiers = React.useMemo(() => {\n const modifiers: Array<Modifier<string>> = [\n {\n name: \"preventOverflow\",\n options: {\n mainAxis: false,\n },\n },\n {\n name: \"offset\",\n options: {\n offset: [\n arrow ? offsetSkidding - smallTargetOffsetSkidding : offsetSkidding,\n arrow ? offsetDistance + ARROW_HEIGHT : offsetDistance,\n ],\n },\n },\n {\n name: \"flip\",\n },\n ];\n\n if (arrow) {\n modifiers.push({\n name: \"arrow\",\n options: {\n padding: ARROW_PADDING,\n },\n });\n }\n\n if (sameWidth) {\n const sameWidth: Modifier<string> = {\n name: \"sameWidth\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: ({ state }) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n effect: ({ state }) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as HTMLElement).offsetWidth\n }px`;\n },\n };\n\n modifiers.push(sameWidth);\n }\n\n if (customModifiers) {\n modifiers.push(...customModifiers);\n }\n return modifiers;\n }, [\n arrow,\n sameWidth,\n smallTargetOffsetSkidding,\n offsetSkidding,\n offsetDistance,\n customModifiers,\n ]);\n\n const { styles, state, attributes } = usePopper(\n targetRef.current,\n popperNode,\n {\n placement,\n modifiers,\n }\n );\n\n const resolvedPlacement = state?.placement;\n const isEdgePlacement =\n !!resolvedPlacement && resolvedPlacement.includes(\"-\"); // true, если поппер отрисован с краю\n\n // Если поппер рисуется с краю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до\n // таргета из-за маленьких размеров последнего\n useIsomorphicLayoutEffect(() => {\n if (arrow && isEdgePlacement) {\n const placementDirection =\n resolvedPlacement?.startsWith(\"bottom\") ||\n resolvedPlacement?.startsWith(\"top\")\n ? \"vertical\"\n : \"horizontal\";\n\n const arrowSize =\n placementDirection === \"vertical\" ? ARROW_WIDTH : ARROW_HEIGHT;\n const targetSize =\n (placementDirection === \"vertical\"\n ? targetRef.current?.offsetWidth\n : targetRef.current?.offsetHeight) ?? 0;\n\n if (targetSize < arrowSize + 2 * ARROW_PADDING) {\n setSmallTargetOffsetSkidding(ARROW_PADDING + arrowSize / 2);\n }\n } else {\n setSmallTargetOffsetSkidding(0);\n }\n }, [arrow, isEdgePlacement]);\n\n React.useEffect(() => {\n if (resolvedPlacement) {\n onPlacementChange && onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <div\n {...restProps}\n {...attributes.popper}\n vkuiClass={getClassName(\"Popper\", platform)}\n ref={setExternalRef}\n style={{\n ...compStyles,\n ...styles.popper,\n minWidth: sameWidth ? targetRef.current?.scrollWidth : undefined,\n }}\n >\n {arrow && (\n <PopperArrow\n attributes={attributes.arrow}\n style={styles.arrow}\n arrowClassName={arrowClassName}\n />\n )}\n {renderContent ? (\n renderContent({ className: \"Popper__content\" })\n ) : (\n <div vkuiClass=\"Popper__content\">{children}</div>\n )}\n </div>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} vkuiClass=\"PopperPortal\">\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"file":"Popper.js"}
1
+ {"version":3,"sources":["../../../../src/components/Popper/Popper.tsx"],"names":["React","usePopper","AppRootPortal","PopperArrow","usePlatform","getClassName","useExternRef","useIsomorphicLayoutEffect","ARROW_PADDING","ARROW_WIDTH","ARROW_HEIGHT","preventOverflowModifier","name","options","mainAxis","flipModifier","arrowModifier","padding","sameWidthModifier","enabled","phase","requires","fn","state","styles","popper","width","rects","reference","effect","elements","style","offsetWidth","Popper","targetRef","children","getRef","placement","onPlacementChange","arrow","arrowClassName","sameWidth","offsetDistance","offsetSkidding","forcePortal","compStyles","customModifiers","renderContent","restProps","useState","popperNode","setPopperNode","smallTargetOffsetSkidding","setSmallTargetOffsetSkidding","platform","setExternalRef","modifiers","useMemo","offset","push","current","attributes","resolvedPlacement","isEdgePlacement","includes","placementDirection","startsWith","arrowSize","targetSize","offsetHeight","useEffect","dropdown","minWidth","scrollWidth","undefined","className"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { usePopper, Modifier } from \"react-popper\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { PopperArrow } from \"../PopperArrow/PopperArrow\";\nimport { HasRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport \"./Popper.css\";\n\nexport type Placement =\n | \"auto\"\n | \"auto-start\"\n | \"auto-end\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"right-start\"\n | \"right-end\"\n | \"left-start\"\n | \"left-end\"\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\";\n\nexport interface PopperRenderContentProps {\n className: string;\n}\n\nexport interface PopperCommonProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: Placement;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n /**\n * Отображать ли стрелку, указывающую на якорный элемент\n */\n arrow?: boolean;\n /**\n * Стиль стрелки\n */\n arrowClassName?: string;\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (data: { placement?: Placement }) => void;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать)\n */\n customModifiers?: Array<Modifier<string>>;\n /**\n * При передаче содержимого в `children`, он будет обёрнут во внутренний контейнер.\n *\n * Если хочется управлять этим контейнером, то используйте данную функцию.\n *\n * > ⚠️ Параметр `children` будет проигнорирован.\n */\n renderContent?(props: PopperRenderContentProps): React.ReactNode;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\nconst ARROW_PADDING = 8;\nconst ARROW_WIDTH = 20;\nconst ARROW_HEIGHT = 8;\n\nconst preventOverflowModifier: Modifier<string> = {\n name: \"preventOverflow\",\n options: {\n mainAxis: false,\n },\n};\n\nconst flipModifier: Modifier<string> = {\n name: \"flip\",\n};\n\nconst arrowModifier: Modifier<string> = {\n name: \"arrow\",\n options: {\n padding: ARROW_PADDING,\n },\n};\n\nconst sameWidthModifier: Modifier<string> = {\n name: \"sameWidth\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: ({ state }) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n effect: ({ state }) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as HTMLElement).offsetWidth\n }px`;\n },\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Popper\n */\nexport const Popper = ({\n targetRef,\n children,\n getRef,\n placement = \"bottom-start\",\n onPlacementChange,\n arrow,\n arrowClassName,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n style: compStyles,\n customModifiers,\n renderContent,\n ...restProps\n}: PopperProps) => {\n const [popperNode, setPopperNode] = React.useState<HTMLDivElement | null>(\n null\n );\n const [smallTargetOffsetSkidding, setSmallTargetOffsetSkidding] =\n React.useState(0);\n const platform = usePlatform();\n\n const setExternalRef = useExternRef<HTMLDivElement>(getRef, setPopperNode);\n\n const modifiers = React.useMemo(() => {\n const modifiers: Array<Modifier<string>> = [\n preventOverflowModifier,\n {\n name: \"offset\",\n options: {\n offset: [\n arrow ? offsetSkidding - smallTargetOffsetSkidding : offsetSkidding,\n arrow ? offsetDistance + ARROW_HEIGHT : offsetDistance,\n ],\n },\n },\n flipModifier,\n ];\n\n if (arrow) {\n modifiers.push(arrowModifier);\n }\n\n if (sameWidth) {\n modifiers.push(sameWidthModifier);\n }\n\n if (customModifiers) {\n modifiers.push(...customModifiers);\n }\n return modifiers;\n }, [\n arrow,\n sameWidth,\n smallTargetOffsetSkidding,\n offsetSkidding,\n offsetDistance,\n customModifiers,\n ]);\n\n const { styles, state, attributes } = usePopper(\n targetRef.current,\n popperNode,\n {\n placement,\n modifiers,\n }\n );\n\n const resolvedPlacement = state?.placement;\n const isEdgePlacement =\n !!resolvedPlacement && resolvedPlacement.includes(\"-\"); // true, если поппер отрисован с краю\n\n // Если поппер рисуется с краю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до\n // таргета из-за маленьких размеров последнего\n useIsomorphicLayoutEffect(() => {\n if (arrow && isEdgePlacement) {\n const placementDirection =\n resolvedPlacement?.startsWith(\"bottom\") ||\n resolvedPlacement?.startsWith(\"top\")\n ? \"vertical\"\n : \"horizontal\";\n\n const arrowSize =\n placementDirection === \"vertical\" ? ARROW_WIDTH : ARROW_HEIGHT;\n const targetSize =\n (placementDirection === \"vertical\"\n ? targetRef.current?.offsetWidth\n : targetRef.current?.offsetHeight) ?? 0;\n\n if (targetSize < arrowSize + 2 * ARROW_PADDING) {\n setSmallTargetOffsetSkidding(ARROW_PADDING + arrowSize / 2);\n }\n } else {\n setSmallTargetOffsetSkidding(0);\n }\n }, [arrow, isEdgePlacement]);\n\n React.useEffect(() => {\n if (resolvedPlacement) {\n onPlacementChange && onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <div\n {...restProps}\n {...attributes.popper}\n vkuiClass={getClassName(\"Popper\", platform)}\n ref={setExternalRef}\n style={{\n ...compStyles,\n ...styles.popper,\n minWidth: sameWidth ? targetRef.current?.scrollWidth : undefined,\n }}\n >\n {arrow && (\n <PopperArrow\n attributes={attributes.arrow}\n style={styles.arrow}\n arrowClassName={arrowClassName}\n />\n )}\n {renderContent ? (\n renderContent({ className: \"Popper__content\" })\n ) : (\n <div vkuiClass=\"Popper__content\">{children}</div>\n )}\n </div>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} vkuiClass=\"PopperPortal\">\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"file":"Popper.js"}
@@ -1 +1,3 @@
1
- .vkuiPromoBanner{background:#fff;background:var(--background_content);box-sizing:border-box;color:#000;color:var(--text_primary);outline:1px solid rgba(0,0,0,.12);outline:1px solid var(--separator_alpha);padding-bottom:10px;position:relative;width:100%}.vkuiPromoBanner__head{color:#818c99;color:var(--text_secondary);display:flex;padding-bottom:10px;padding-top:14px}.vkuiPromoBanner__age{margin-left:6px}.vkuiPromoBanner__close{align-items:center;color:#99a2ad;color:var(--placeholder_icon_foreground_primary);display:flex;height:48px;justify-content:center;position:absolute;right:0;top:0;width:48px}.vkuiPromoBanner__close:active{opacity:.7}.vkuiPromoBanner__pixels{display:none}.vkuiPromoBanner--ios .vkuiPromoBanner__head{padding-left:12px;padding-right:12px}.vkuiPromoBanner--android .vkuiPromoBanner__head,.vkuiPromoBanner--vkcom .vkuiPromoBanner__head{padding-left:16px;padding-right:16px}
1
+ .vkuiPromoBanner{background:#fff;background:var(--background_content,var(--vkui--color_background_content));box-sizing:border-box;color:#000;color:var(--text_primary,var(--vkui--color_text_primary));outline:1px solid rgba(0,0,0,.12);outline:var(--thin-border) solid var(--separator_alpha,var(--vkui--color_separator_primary_alpha));padding-bottom:10px;position:relative;width:100%}.vkuiPromoBanner__head{color:#818c99;color:var(--text_secondary,var(--vkui--color_text_secondary));display:flex;padding:14px 16px 10px;padding:14px var(--vkui--size_base_padding_horizontal--regular,16px) 10px}.vkuiPromoBanner__age{margin-left:6px}.vkuiPromoBanner__close{align-items:center;color:#99a2ad;color:var(
2
+ --placeholder_icon_foreground_primary,var(--vkui--color_icon_secondary)
3
+ );display:flex;height:48px;justify-content:center;position:absolute;right:0;top:0;width:48px}.vkuiPromoBanner__close:active{opacity:.7}.vkuiPromoBanner__pixels{display:none}
@@ -11,8 +11,6 @@ import { Button } from "../Button/Button";
11
11
  import { SimpleCell } from "../SimpleCell/SimpleCell";
12
12
  import { Avatar } from "../Avatar/Avatar";
13
13
  import { Caption } from "../Typography/Caption/Caption";
14
- import { usePlatform } from "../../hooks/usePlatform";
15
- import { getClassName } from "../../helpers/getClassName";
16
14
  import { warnOnce } from "../../lib/warnOnce";
17
15
  import "./PromoBanner.css";
18
16
  var warn = warnOnce("PromoBanner");
@@ -27,7 +25,6 @@ export var PromoBanner = function PromoBanner(_ref) {
27
25
  isCloseButtonHidden = _ref.isCloseButtonHidden,
28
26
  restProps = _objectWithoutProperties(_ref, _excluded);
29
27
 
30
- var platform = usePlatform();
31
28
  var ageRestrictions = bannerData.ageRestrictions != null ? parseInt(bannerData.ageRestrictions) : bannerData.ageRestriction;
32
29
 
33
30
  if (bannerData.ageRestriction && process.env.NODE_ENV === "development") {
@@ -53,7 +50,7 @@ export var PromoBanner = function PromoBanner(_ref) {
53
50
  }
54
51
  }, [statsPixels.playbackStarted]);
55
52
  return createScopedElement("div", _extends({
56
- vkuiClass: getClassName("PromoBanner", platform)
53
+ vkuiClass: "PromoBanner"
57
54
  }, restProps), createScopedElement("div", {
58
55
  vkuiClass: "PromoBanner__head"
59
56
  }, createScopedElement(Caption, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PromoBanner/PromoBanner.tsx"],"names":["React","Icon24Dismiss","Button","SimpleCell","Avatar","Caption","usePlatform","getClassName","warnOnce","warn","PromoBanner","bannerData","onClose","isCloseButtonHidden","restProps","platform","ageRestrictions","parseInt","ageRestriction","process","env","NODE_ENV","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","advertisingLabel","trackingLink","iconLink","title","ctaText","domain","length"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Icon24Dismiss } from \"@vkontakte/icons\";\nimport { Button } from \"../Button/Button\";\nimport { SimpleCell } from \"../SimpleCell/SimpleCell\";\nimport { Avatar } from \"../Avatar/Avatar\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./PromoBanner.css\";\n\ntype StatsType =\n | \"playbackStarted\" // Начало показа\n | \"click\"; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string; // eslint-disable-line camelcase\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n /** @deprecated */\n ageRestriction?: number;\n};\n\nexport interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\nconst warn = warnOnce(\"PromoBanner\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PromoBanner\n */\nexport const PromoBanner = ({\n bannerData = {},\n onClose,\n isCloseButtonHidden,\n ...restProps\n}: PromoBannerProps) => {\n const platform = usePlatform();\n\n const ageRestrictions =\n bannerData.ageRestrictions != null\n ? parseInt(bannerData.ageRestrictions)\n : bannerData.ageRestriction;\n\n if (bannerData.ageRestriction && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство bannerData.ageRestriction устарело и будет удалено в 5.0.0. Используйте bannerData.ageRestrictions\"\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState(\"\");\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce(\n (acc, item) => ({ ...acc, [item.type]: item.url }),\n {}\n )\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics]\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || \"\"),\n [statsPixels.click]\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <div vkuiClass={getClassName(\"PromoBanner\", platform)} {...restProps}>\n <div vkuiClass=\"PromoBanner__head\">\n <Caption vkuiClass=\"PromoBanner__label\">\n {bannerData.advertisingLabel || \"Advertisement\"}\n </Caption>\n {ageRestrictions != null && (\n <Caption vkuiClass=\"PromoBanner__age\">{ageRestrictions}+</Caption>\n )}\n\n {!isCloseButtonHidden && (\n <div vkuiClass=\"PromoBanner__close\" onClick={onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n <Avatar\n mode=\"image\"\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n />\n }\n after={<Button mode=\"outline\">{bannerData.ctaText}</Button>}\n description={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div vkuiClass=\"PromoBanner__pixels\">\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </div>\n );\n};\n"],"file":"PromoBanner.js"}
1
+ {"version":3,"sources":["../../../../src/components/PromoBanner/PromoBanner.tsx"],"names":["React","Icon24Dismiss","Button","SimpleCell","Avatar","Caption","warnOnce","warn","PromoBanner","bannerData","onClose","isCloseButtonHidden","restProps","ageRestrictions","parseInt","ageRestriction","process","env","NODE_ENV","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","advertisingLabel","trackingLink","iconLink","title","ctaText","domain","length"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Icon24Dismiss } from \"@vkontakte/icons\";\nimport { Button } from \"../Button/Button\";\nimport { SimpleCell } from \"../SimpleCell/SimpleCell\";\nimport { Avatar } from \"../Avatar/Avatar\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./PromoBanner.css\";\n\ntype StatsType =\n | \"playbackStarted\" // Начало показа\n | \"click\"; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string; // eslint-disable-line camelcase\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n /** @deprecated */\n ageRestriction?: number;\n};\n\nexport interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\nconst warn = warnOnce(\"PromoBanner\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PromoBanner\n */\nexport const PromoBanner = ({\n bannerData = {},\n onClose,\n isCloseButtonHidden,\n ...restProps\n}: PromoBannerProps) => {\n const ageRestrictions =\n bannerData.ageRestrictions != null\n ? parseInt(bannerData.ageRestrictions)\n : bannerData.ageRestriction;\n\n if (bannerData.ageRestriction && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство bannerData.ageRestriction устарело и будет удалено в 5.0.0. Используйте bannerData.ageRestrictions\"\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState(\"\");\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce(\n (acc, item) => ({ ...acc, [item.type]: item.url }),\n {}\n )\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics]\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || \"\"),\n [statsPixels.click]\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <div vkuiClass=\"PromoBanner\" {...restProps}>\n <div vkuiClass=\"PromoBanner__head\">\n <Caption vkuiClass=\"PromoBanner__label\">\n {bannerData.advertisingLabel || \"Advertisement\"}\n </Caption>\n {ageRestrictions != null && (\n <Caption vkuiClass=\"PromoBanner__age\">{ageRestrictions}+</Caption>\n )}\n\n {!isCloseButtonHidden && (\n <div vkuiClass=\"PromoBanner__close\" onClick={onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n <Avatar\n mode=\"image\"\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n />\n }\n after={<Button mode=\"outline\">{bannerData.ctaText}</Button>}\n description={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div vkuiClass=\"PromoBanner__pixels\">\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </div>\n );\n};\n"],"file":"PromoBanner.js"}
@@ -1 +1,27 @@
1
- .vkuiSearch{font-family:-apple-system,system-ui,Helvetica Neue,Roboto,sans-serif;font-family:var(--font-common);font-weight:400;line-height:normal;overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.vkuiSearch__in{position:relative}.vkuiSearch__width{color:transparent;height:36px;height:var(--search_default_height);white-space:nowrap;width:10000px}.vkuiSearch__control{align-items:center;border-radius:10px;display:flex;height:100%;justify-content:flex-start;left:0;position:absolute;top:0;width:calc(100% - 1px)}.vkuiSearch__input{-webkit-appearance:none;background-color:initial;border:none;border-radius:10px;box-sizing:border-box;flex-grow:1;font-size:17px;height:36px;height:var(--search_default_height);margin:0;max-width:100%;min-width:0;padding:0 22px 0 36px;position:relative;z-index:2}.vkuiSearch__input::-webkit-search-cancel-button,.vkuiSearch__input::-webkit-search-decoration,.vkuiSearch__input::-webkit-search-results-button,.vkuiSearch__input::-webkit-search-results-decoration{display:none}.vkuiSearch--has-after .vkuiSearch__input{border-radius:10px 0 0 10px}.vkuiSearch--has-icon .vkuiSearch__input,.vkuiSearch--has-icon .vkuiSearch__placeholder,.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:40px}.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:80px}.vkuiSearch__after-width{flex-shrink:0;font-size:17px;line-height:36px;line-height:var(--search_default_height);padding-right:4px}.vkuiSearch__after-width,.vkuiSearch__placeholder{cursor:text;height:36px;height:var(--search_default_height);padding-left:12px;pointer-events:none}.vkuiSearch__placeholder{box-sizing:border-box;display:flex;font-size:0;left:0;padding-right:22px;position:absolute;text-align:left;width:100%;z-index:1}.vkuiSearch__placeholder-in{align-items:center;display:flex;flex-grow:1;height:36px;height:var(--search_default_height);max-width:100%;overflow:hidden}.vkuiSearch__placeholder-text{margin-left:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vkuiSearch--has-value .vkuiSearch__placeholder-text{opacity:0}.vkuiSearch__icons{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_secondary));position:absolute;right:100%;top:0}.vkuiSearch__icon,.vkuiSearch__icons{align-items:center;display:flex;justify-content:center}.vkuiSearch__icon{cursor:pointer;height:36px;height:var(--search_default_height);width:40px}.vkuiSearch__after{cursor:default;left:100%;line-height:36px;line-height:var(--search_default_height);position:absolute;top:0;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing);z-index:2}.vkuiSearch--focused .vkuiSearch__after,.vkuiSearch--has-value .vkuiSearch__after{-webkit-transform:translate(-100%);transform:translate(-100%)}.vkuiSearch__after:before{content:"";display:block;height:100%;pointer-events:none;position:absolute;right:calc(100% - 1px);width:10px}.vkuiSearch__after-in{cursor:pointer;font-size:17px;padding-left:12px;padding-right:4px;position:relative;z-index:2}.vkuiSearch__after:after{border-radius:0 10px 10px 0;content:"";cursor:text;display:block;height:100%;pointer-events:none;position:absolute;right:100%;top:0;width:10px}.vkuiGroup--plain .vkuiSearch{padding-top:4px}.vkuiSearch{background:#fff;background:var(--search_bar_background)}.vkuiSearch__control{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiSearch__placeholder{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_medium))}.vkuiSearch__after-width{background:#ebedf0;background:var(--search_bar_field_background);color:#ebedf0;color:var(--search_bar_field_background)}.vkuiSearch__after{background:#fff;background:var(--search_bar_background);color:#2688eb;color:var(--accent)}.vkuiSearch__after:after{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__after:before{background-color:#fff;background-color:var(--search_bar_background)}.vkuiPanelHeader .vkuiSearch{background:#fff;background:var(--header_background)}.vkuiPanelHeader .vkuiSearch__control{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiPanelHeader .vkuiSearch__placeholder{color:#818c99;color:var(--header_search_field_tint)}.vkuiPanelHeader .vkuiSearch__after-width{background:#ebedf0;background:var(--header_search_field_background);color:#ebedf0;color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after{background:#fff;background:var(--header_background);color:#2688eb;color:var(--header_tint)}.vkuiPanelHeader .vkuiSearch__after:after{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after:before{background-color:#fff;background-color:var(--header_background)}.vkuiSearch--ios{padding:8px 12px}.vkuiSearch--android{padding:8px 16px}.vkuiPanelHeader--vkcom .vkuiSearch,.vkuiSearch--vkcom{background:transparent}.vkuiSearch--vkcom .vkuiSearch__in{padding-bottom:6px;padding-top:6px}.vkuiSearch--vkcom .vkuiSearch__input{font-size:15px;line-height:20px;padding-left:40px}.vkuiSearch--vkcom .vkuiSearch__placeholder{color:#99a2ad;color:var(--vkui--color_icon_secondary,#99a2ad);padding-left:16px}.vkuiSearch--vkcom .vkuiSearch__icons{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_medium));right:calc(100% + 8px);top:4px}.vkuiSearch--vkcom.vkuiSearch--has-value .vkuiSearch__input{padding-right:56px}.vkuiSearch--vkcom.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input{padding-right:92px}.vkuiSearch--vkcom .vkuiSearch__icon{height:40px;opacity:.8;width:40px}.vkuiSearch--vkcom .vkuiSearch__icon:hover{background-color:rgba(0,0,0,.04);background-color:var(--background_hover);border-radius:50%}.vkuiSearch--vkcom .vkuiSearch__control{background-color:initial}.vkuiPanelHeader--vkcom .vkuiSearch__separator{display:none}.vkuiSearch--vkcom .vkuiSearch__separator{color:#e1e3e6;color:var(--input_border)}.vkuiGroup--card .vkuiSearch--vkcom{margin:0 -8px}.vkuiGroup--card .vkuiSearch--vkcom:first-child{margin-top:-8px}.vkuiGroup--card .vkuiSearch--vkcom:not(:last-child){margin-bottom:8px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:20px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__input{padding-left:44px}
1
+ .vkuiSearch{font-family:-apple-system,system-ui,Helvetica Neue,Roboto,sans-serif;font-family:var(--font-common);font-weight:400;line-height:normal;overflow:hidden;padding:8px 16px;-webkit-transform:translateZ(0);transform:translateZ(0)}.vkuiSearch__in{position:relative}.vkuiSearch__width{color:transparent;white-space:nowrap;width:10000px}.vkuiSearch__control{align-items:center;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular,8px);display:flex;height:100%;justify-content:flex-start;left:0;position:absolute;top:0;width:calc(100% - 1px)}.vkuiSearch__input{-webkit-appearance:none;background-color:initial;border:none;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular,8px);box-sizing:border-box;flex-grow:1;font-size:17px;margin:0;max-width:100%;min-width:0;padding:0 22px 0 36px;position:relative;z-index:2}.vkuiSearch__input::-webkit-search-cancel-button,.vkuiSearch__input::-webkit-search-decoration,.vkuiSearch__input::-webkit-search-results-button,.vkuiSearch__input::-webkit-search-results-decoration{display:none}.vkuiSearch--has-after .vkuiSearch__input{border-bottom-right-radius:0;border-top-right-radius:0}.vkuiSearch--has-icon .vkuiSearch__input,.vkuiSearch--has-icon .vkuiSearch__placeholder,.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:40px}.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:80px}.vkuiSearch__after-width{cursor:text;flex-shrink:0;font-size:17px;padding-left:12px;padding-right:4px;pointer-events:none}.vkuiSearch__placeholder{box-sizing:border-box;cursor:text;display:flex;font-size:0;left:0;padding-left:12px;padding-right:22px;pointer-events:none;position:absolute;text-align:left;width:100%;z-index:1}.vkuiSearch__placeholder-in{align-items:center;display:flex;flex-grow:1;max-width:100%;overflow:hidden}.vkuiSearch__placeholder-text{color:#818c99;color:var(--vkui--color_text_secondary,#818c99);margin-left:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vkuiSearch--has-value .vkuiSearch__placeholder-text{opacity:0}.vkuiSearch__icons{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_secondary));position:absolute;right:100%;top:0}.vkuiSearch__icon,.vkuiSearch__icons{align-items:center;display:flex;justify-content:center}.vkuiSearch__icon{cursor:pointer;width:40px}.vkuiSearch__after{cursor:default;left:100%;position:absolute;top:0;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing);z-index:2}.vkuiSearch--focused .vkuiSearch__after,.vkuiSearch--has-value .vkuiSearch__after{-webkit-transform:translate(-100%);transform:translate(-100%)}.vkuiSearch__after:before{content:"";display:block;height:100%;pointer-events:none;position:absolute;right:calc(100% - 1px);width:10px}.vkuiSearch__after-in{cursor:pointer;font-size:17px;padding-left:12px;padding-right:4px;position:relative;z-index:2}.vkuiSearch__after:after{border-radius:0 8px 8px 0;border-radius:0 var(--vkui--size_border_radius--regular,8px) var(--vkui--size_border_radius--regular,8px) 0;content:"";cursor:text;display:block;height:100%;pointer-events:none;position:absolute;right:100%;top:0;width:10px}.vkuiGroup--plain .vkuiSearch{padding-top:4px}.vkuiSearch__after-width,.vkuiSearch__icon,.vkuiSearch__input,.vkuiSearch__placeholder,.vkuiSearch__placeholder-in,.vkuiSearch__width{height:32px;height:var(--vkui--size_search_height--compact,32px)}.vkuiSearch__after,.vkuiSearch__after-width{line-height:32px;line-height:var(--vkui--size_search_height--compact,32px)}.vkuiSearch--sizeY-regular .vkuiSearch__after-width,.vkuiSearch--sizeY-regular .vkuiSearch__icon,.vkuiSearch--sizeY-regular .vkuiSearch__input,.vkuiSearch--sizeY-regular .vkuiSearch__placeholder,.vkuiSearch--sizeY-regular .vkuiSearch__placeholder-in,.vkuiSearch--sizeY-regular .vkuiSearch__width{height:36px;height:var(--vkui--size_search_height--regular,36px)}.vkuiSearch--sizeY-regular .vkuiSearch__after,.vkuiSearch--sizeY-regular .vkuiSearch__after-width{line-height:36px;line-height:var(--vkui--size_search_height--regular,36px)}.vkuiSearch{background:#fff;background:var(
2
+ --search_bar_background,var(--vkui--color_background_content)
3
+ )}.vkuiSearch__control{background-color:#ebedf0;background-color:var(
4
+ --search_bar_field_background,var(--vkui--color_search_field_background)
5
+ )}.vkuiSearch__in:hover .vkuiSearch__after-width,.vkuiSearch__in:hover .vkuiSearch__after:after,.vkuiSearch__in:hover .vkuiSearch__control{background-color:#e2e4e9;background-color:var(--vkui--color_search_field_background--hover,#e2e4e9)}.vkuiSearch__in:hover .vkuiSearch__after-width{color:#e2e4e9;color:var(--vkui--color_search_field_background--hover,#e2e4e9)}.vkuiSearch__in:active .vkuiSearch__after-width,.vkuiSearch__in:active .vkuiSearch__after:after,.vkuiSearch__in:active .vkuiSearch__control{background-color:#d8dbe2;background-color:var(--vkui--color_search_field_background--active,#d8dbe2)}.vkuiSearch__in:active .vkuiSearch__after-width{color:#d8dbe2;color:var(--vkui--color_search_field_background--active,#d8dbe2)}.vkuiSearch__input{color:#000;color:var(--text_primary,var(--vkui--color_text_primary))}.vkuiSearch__placeholder{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_medium))}.vkuiSearch__after-width{background:#ebedf0;background:var(
6
+ --search_bar_field_background,var(--vkui--color_search_field_background)
7
+ );color:#ebedf0;color:var(
8
+ --search_bar_field_background,var(--vkui--color_search_field_background)
9
+ )}.vkuiSearch__after{background:#fff;background:var(
10
+ --search_bar_background,var(--vkui--color_background_content)
11
+ );color:#2688eb;color:var(--accent,var(--vkui--color_icon_accent_themed))}.vkuiSearch__after:after{background-color:#ebedf0;background-color:var(
12
+ --search_bar_field_background,var(--vkui--color_search_field_background)
13
+ )}.vkuiSearch__after:before{background-color:#fff;background-color:var(
14
+ --search_bar_background,var(--vkui--color_background_content)
15
+ )}.vkuiPanelHeader .vkuiSearch{background:#fff;background:var(--header_background,var(--vkui--color_header_background))}.vkuiPanelHeader .vkuiSearch__control{background-color:#ebedf0;background-color:var(
16
+ --header_search_field_background,var(--vkui--color_search_field_background)
17
+ )}.vkuiPanelHeader .vkuiSearch__input{color:#000;color:var(--text_primary,var(--vkui--color_text_primary))}.vkuiPanelHeader .vkuiSearch__placeholder{color:#818c99;color:var(--header_search_field_tint,var(--vkui--color_icon_secondary))}.vkuiPanelHeader .vkuiSearch__after-width{background:#ebedf0;background:var(
18
+ --header_search_field_background,var(--vkui--color_search_field_background)
19
+ );color:#ebedf0;color:var(
20
+ --header_search_field_background,var(--vkui--color_search_field_background)
21
+ )}.vkuiPanelHeader .vkuiSearch__after{background:#fff;background:var(--header_background,var(--vkui--color_header_background));color:#2688eb;color:var(--header_tint,var(--vkui--color_icon_accent_themed))}.vkuiPanelHeader .vkuiSearch__after:after{background-color:#ebedf0;background-color:var(
22
+ --header_search_field_background,var(--vkui--color_search_field_background)
23
+ )}.vkuiPanelHeader .vkuiSearch__after:before{background-color:#fff;background-color:var(
24
+ --header_background,var(--vkui--color_header_background)
25
+ )}.vkuiSearch--vkcom{padding:initial}.vkuiPanelHeader--vkcom .vkuiSearch,.vkuiSearch--vkcom,.vkuiSearch--vkcom .vkuiSearch__in:active .vkuiSearch__control,.vkuiSearch--vkcom .vkuiSearch__in:hover .vkuiSearch__control{background:transparent}.vkuiSearch--vkcom .vkuiSearch__in{padding-bottom:6px;padding-top:6px}.vkuiSearch--vkcom .vkuiSearch__input{font-size:15px;line-height:20px;padding-left:40px}.vkuiSearch--vkcom .vkuiSearch__placeholder{color:#99a2ad;color:var(--vkui--color_icon_secondary,#99a2ad);padding-left:16px}.vkuiSearch--vkcom .vkuiSearch__icons{color:#818c99;color:var(--search_bar_field_tint,var(--vkui--color_icon_medium));right:calc(100% + 8px);top:4px}.vkuiSearch--vkcom.vkuiSearch--has-value .vkuiSearch__input{padding-right:56px}.vkuiSearch--vkcom.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input{padding-right:92px}.vkuiSearch--vkcom .vkuiSearch__icon{height:40px;opacity:.8;width:40px}.vkuiSearch--vkcom .vkuiSearch__icon:hover{background-color:rgba(0,0,0,.04);background-color:var(
26
+ --background_hover,var(--vkui--color_background_secondary_alpha--hover)
27
+ );border-radius:50%}.vkuiSearch--vkcom .vkuiSearch__control{background-color:initial}.vkuiPanelHeader--vkcom .vkuiSearch__separator{display:none}.vkuiSearch--vkcom .vkuiSearch__separator{color:#e1e3e6;color:var(--input_border,var(--vkui--color_separator_primary))}.vkuiGroup--card .vkuiSearch--vkcom{margin:0 -8px}.vkuiGroup--card .vkuiSearch--vkcom:first-child{margin-top:-8px}.vkuiGroup--card .vkuiSearch--vkcom:not(:last-child){margin-bottom:8px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:20px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__input{padding-left:44px}.vkuiSearch--ios{padding:8px 12px}
@@ -7,7 +7,6 @@ import { createScopedElement } from "../../lib/jsxRuntime";
7
7
  import * as React from "react";
8
8
  import { classNames } from "../../lib/classNames";
9
9
  import { withPlatform } from "../../hoc/withPlatform";
10
- import { getClassName } from "../../helpers/getClassName";
11
10
  import { Icon16SearchOutline, Icon16Clear, Icon24Cancel } from "@vkontakte/icons";
12
11
  import { IOS, VKCOM, ANDROID } from "../../lib/platform";
13
12
  import { Touch } from "../Touch/Touch";
@@ -18,6 +17,7 @@ import { Headline } from "../Typography/Headline/Headline";
18
17
  import { Separator } from "../Separator/Separator";
19
18
  import { useExternRef } from "../../hooks/useExternRef";
20
19
  import { useEnsuredControl } from "../../hooks/useEnsuredControl";
20
+ import { useAdaptivity } from "../../hooks/useAdaptivity";
21
21
  import "./Search.css";
22
22
 
23
23
  var SearchPlaceholderTypography = function SearchPlaceholderTypography(_ref) {
@@ -82,6 +82,9 @@ var SearchComponent = function SearchComponent(_ref2) {
82
82
  value = _useEnsuredControl2[0],
83
83
  onChange = _useEnsuredControl2[1];
84
84
 
85
+ var _useAdaptivity = useAdaptivity(),
86
+ sizeY = _useAdaptivity.sizeY;
87
+
85
88
  var onFocus = function onFocus(e) {
86
89
  setFocused(true);
87
90
  inputProps.onFocus && inputProps.onFocus(e);
@@ -114,13 +117,8 @@ var SearchComponent = function SearchComponent(_ref2) {
114
117
  onCancel();
115
118
  }, [inputRef, onCancel]);
116
119
  return createScopedElement("div", {
117
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
118
- vkuiClass: classNames(getClassName("Search", platform), {
119
- "Search--focused": isFocused,
120
- "Search--has-value": !!value,
121
- "Search--has-after": !!after,
122
- "Search--has-icon": !!icon
123
- }),
120
+ vkuiClass: classNames("Search", platform === VKCOM && "Search--vkcom", platform === IOS && "Search--ios", // TODO: V5 перенести на новую адаптивность
121
+ "Search--sizeY-".concat(sizeY), isFocused && "Search--focused", value && "Search--has-value", icon && "Search--has-after", after && "Search--has-icon"),
124
122
  className: className,
125
123
  style: style
126
124
  }, createScopedElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Search/Search.tsx"],"names":["React","classNames","withPlatform","getClassName","Icon16SearchOutline","Icon16Clear","Icon24Cancel","IOS","VKCOM","ANDROID","Touch","noop","Text","Title","Headline","Separator","useExternRef","useEnsuredControl","SearchPlaceholderTypography","platform","children","restProps","SearchComponent","before","className","defaultValue","placeholder","after","getRef","icon","onIconClick","style","autoComplete","inputProps","inputRef","useState","isFocused","setFocused","value","onChange","onFocus","e","onBlur","onCancel","useCallback","nativeInputValueSetter","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","call","current","ev2","Event","bubbles","dispatchEvent","onIconClickStart","originalEvent","onIconCancelClickStart","preventDefault","focus","Search","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport {\n Icon16SearchOutline,\n Icon16Clear,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { HasPlatform, HasRef } from \"../../types\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { VKUITouchEvent } from \"../../lib/touch\";\nimport { noop } from \"../../lib/utils\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Separator } from \"../Separator/Separator\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport \"./Search.css\";\n\nexport type InputRef = (element: HTMLInputElement) => void;\n\ninterface SearchPlaceholderTypographyProps\n extends HasPlatform,\n React.HTMLAttributes<HTMLElement> {}\n\nconst SearchPlaceholderTypography = ({\n platform,\n children,\n ...restProps\n}: SearchPlaceholderTypographyProps) => {\n switch (platform) {\n case IOS:\n return (\n <Title {...restProps} level=\"3\" weight=\"3\">\n {children}\n </Title>\n );\n case VKCOM:\n return <Text {...restProps}>{children}</Text>;\n case ANDROID:\n default:\n return (\n <Headline {...restProps} weight=\"3\">\n {children}\n </Headline>\n );\n }\n};\n\nexport interface SearchProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasPlatform {\n /**\n * iOS only. Текст кнопки \"отмена\", которая чистит текстовое поле и убирает фокус.\n */\n after?: React.ReactNode;\n before?: React.ReactNode;\n icon?: React.ReactNode;\n onIconClick?: (e: VKUITouchEvent) => void;\n defaultValue?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Search\n */\nconst SearchComponent = ({\n before = <Icon16SearchOutline aria-hidden />,\n className,\n defaultValue = \"\",\n placeholder = \"Поиск\",\n after = \"Отмена\",\n getRef,\n platform,\n icon,\n onIconClick = noop,\n style,\n autoComplete = \"off\",\n ...inputProps\n}: SearchProps) => {\n const inputRef = useExternRef(getRef);\n const [isFocused, setFocused] = React.useState(false);\n const [value, onChange] = useEnsuredControl(inputProps, { defaultValue });\n\n const onFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n inputProps.onFocus && inputProps.onFocus(e);\n };\n\n const onBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false);\n inputProps.onBlur && inputProps.onBlur(e);\n };\n\n const onCancel = React.useCallback(() => {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n \"value\"\n )?.set;\n nativeInputValueSetter?.call(inputRef.current, \"\");\n\n const ev2 = new Event(\"input\", { bubbles: true });\n inputRef.current?.dispatchEvent(ev2);\n }, [inputRef]);\n\n const onIconClickStart = React.useCallback(\n (e: TouchEvent) => onIconClick(e.originalEvent),\n [onIconClick]\n );\n\n const onIconCancelClickStart = React.useCallback(\n (e: TouchEvent) => {\n e.originalEvent.preventDefault();\n inputRef.current?.focus();\n onCancel();\n },\n [inputRef, onCancel]\n );\n\n return (\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"Search\", platform), {\n \"Search--focused\": isFocused,\n \"Search--has-value\": !!value,\n \"Search--has-after\": !!after,\n \"Search--has-icon\": !!icon,\n })}\n className={className}\n style={style}\n >\n <div vkuiClass=\"Search__in\">\n <div vkuiClass=\"Search__width\" />\n <label vkuiClass=\"Search__control\">\n <input\n type=\"search\"\n {...inputProps}\n autoComplete={autoComplete}\n ref={inputRef}\n vkuiClass=\"Search__input\"\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n value={value}\n />\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n <div vkuiClass=\"Search__placeholder\">\n <div vkuiClass=\"Search__placeholder-in\">\n {before}\n <SearchPlaceholderTypography\n vkuiClass=\"Search__placeholder-text\"\n platform={platform}\n >\n {placeholder}\n </SearchPlaceholderTypography>\n </div>\n {isFocused && platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n </div>\n </label>\n <div vkuiClass=\"Search__after\" onClick={onCancel}>\n <div vkuiClass=\"Search__icons\">\n {icon && (\n <Touch onStart={onIconClickStart} vkuiClass=\"Search__icon\">\n {icon}\n </Touch>\n )}\n {!!value && (\n <Touch onStart={onIconCancelClickStart} vkuiClass=\"Search__icon\">\n {platform === IOS ? <Icon16Clear /> : <Icon24Cancel />}\n </Touch>\n )}\n </div>\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-in\">{after}</div>\n )}\n </div>\n </div>\n {platform === VKCOM && <Separator vkuiClass=\"Search__separator\" wide />}\n </div>\n );\n};\n\nexport const Search = withPlatform(SearchComponent);\n\nSearch.displayName = \"Search\";\n"],"file":"Search.js"}
1
+ {"version":3,"sources":["../../../../src/components/Search/Search.tsx"],"names":["React","classNames","withPlatform","Icon16SearchOutline","Icon16Clear","Icon24Cancel","IOS","VKCOM","ANDROID","Touch","noop","Text","Title","Headline","Separator","useExternRef","useEnsuredControl","useAdaptivity","SearchPlaceholderTypography","platform","children","restProps","SearchComponent","before","className","defaultValue","placeholder","after","getRef","icon","onIconClick","style","autoComplete","inputProps","inputRef","useState","isFocused","setFocused","value","onChange","sizeY","onFocus","e","onBlur","onCancel","useCallback","nativeInputValueSetter","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","call","current","ev2","Event","bubbles","dispatchEvent","onIconClickStart","originalEvent","onIconCancelClickStart","preventDefault","focus","Search","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport {\n Icon16SearchOutline,\n Icon16Clear,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { HasPlatform, HasRef } from \"../../types\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { VKUITouchEvent } from \"../../lib/touch\";\nimport { noop } from \"../../lib/utils\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Separator } from \"../Separator/Separator\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport \"./Search.css\";\n\nexport type InputRef = (element: HTMLInputElement) => void;\n\ninterface SearchPlaceholderTypographyProps\n extends HasPlatform,\n React.HTMLAttributes<HTMLElement> {}\n\nconst SearchPlaceholderTypography = ({\n platform,\n children,\n ...restProps\n}: SearchPlaceholderTypographyProps) => {\n switch (platform) {\n case IOS:\n return (\n <Title {...restProps} level=\"3\" weight=\"3\">\n {children}\n </Title>\n );\n case VKCOM:\n return <Text {...restProps}>{children}</Text>;\n case ANDROID:\n default:\n return (\n <Headline {...restProps} weight=\"3\">\n {children}\n </Headline>\n );\n }\n};\n\nexport interface SearchProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasPlatform {\n /**\n * iOS only. Текст кнопки \"отмена\", которая чистит текстовое поле и убирает фокус.\n */\n after?: React.ReactNode;\n before?: React.ReactNode;\n icon?: React.ReactNode;\n onIconClick?: (e: VKUITouchEvent) => void;\n defaultValue?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Search\n */\nconst SearchComponent = ({\n before = <Icon16SearchOutline aria-hidden />,\n className,\n defaultValue = \"\",\n placeholder = \"Поиск\",\n after = \"Отмена\",\n getRef,\n platform,\n icon,\n onIconClick = noop,\n style,\n autoComplete = \"off\",\n ...inputProps\n}: SearchProps) => {\n const inputRef = useExternRef(getRef);\n const [isFocused, setFocused] = React.useState(false);\n const [value, onChange] = useEnsuredControl(inputProps, { defaultValue });\n const { sizeY } = useAdaptivity();\n\n const onFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n inputProps.onFocus && inputProps.onFocus(e);\n };\n\n const onBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false);\n inputProps.onBlur && inputProps.onBlur(e);\n };\n\n const onCancel = React.useCallback(() => {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n \"value\"\n )?.set;\n nativeInputValueSetter?.call(inputRef.current, \"\");\n\n const ev2 = new Event(\"input\", { bubbles: true });\n inputRef.current?.dispatchEvent(ev2);\n }, [inputRef]);\n\n const onIconClickStart = React.useCallback(\n (e: TouchEvent) => onIconClick(e.originalEvent),\n [onIconClick]\n );\n\n const onIconCancelClickStart = React.useCallback(\n (e: TouchEvent) => {\n e.originalEvent.preventDefault();\n inputRef.current?.focus();\n onCancel();\n },\n [inputRef, onCancel]\n );\n\n return (\n <div\n vkuiClass={classNames(\n \"Search\",\n platform === VKCOM && \"Search--vkcom\",\n platform === IOS && \"Search--ios\",\n // TODO: V5 перенести на новую адаптивность\n `Search--sizeY-${sizeY}`,\n isFocused && \"Search--focused\",\n value && \"Search--has-value\",\n icon && \"Search--has-after\",\n after && \"Search--has-icon\"\n )}\n className={className}\n style={style}\n >\n <div vkuiClass=\"Search__in\">\n <div vkuiClass=\"Search__width\" />\n <label vkuiClass=\"Search__control\">\n <input\n type=\"search\"\n {...inputProps}\n autoComplete={autoComplete}\n ref={inputRef}\n vkuiClass=\"Search__input\"\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n value={value}\n />\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n <div vkuiClass=\"Search__placeholder\">\n <div vkuiClass=\"Search__placeholder-in\">\n {before}\n <SearchPlaceholderTypography\n vkuiClass=\"Search__placeholder-text\"\n platform={platform}\n >\n {placeholder}\n </SearchPlaceholderTypography>\n </div>\n {isFocused && platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n </div>\n </label>\n <div vkuiClass=\"Search__after\" onClick={onCancel}>\n <div vkuiClass=\"Search__icons\">\n {icon && (\n <Touch onStart={onIconClickStart} vkuiClass=\"Search__icon\">\n {icon}\n </Touch>\n )}\n {!!value && (\n <Touch onStart={onIconCancelClickStart} vkuiClass=\"Search__icon\">\n {platform === IOS ? <Icon16Clear /> : <Icon24Cancel />}\n </Touch>\n )}\n </div>\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-in\">{after}</div>\n )}\n </div>\n </div>\n {platform === VKCOM && <Separator vkuiClass=\"Search__separator\" wide />}\n </div>\n );\n};\n\nexport const Search = withPlatform(SearchComponent);\n\nSearch.displayName = \"Search\";\n"],"file":"Search.js"}
@@ -1 +1 @@
1
- .vkuiSelect{box-sizing:border-box;cursor:pointer;position:relative}.vkuiSelect__el{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;display:block;font-size:16px;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:3}.vkuiSelect__container{box-sizing:border-box;color:#000;color:var(--text_primary,var(--vkui--color_text_primary));flex-grow:1;flex-shrink:1;overflow:hidden;padding-left:12px;padding-right:12px;position:relative;z-index:2}.vkuiSelect--hasBefore .vkuiSelect__container{padding-left:0}.vkuiSelect--hasAfter .vkuiSelect__container{padding-right:0}.vkuiSelect--multiline .vkuiSelect__container{padding-bottom:12px;padding-top:12px}.vkuiSelect--sizeY-compact.vkuiSelect--multiline .vkuiSelect__container{padding-bottom:8px;padding-top:8px}.vkuiSelect__title{display:block}.vkuiSelect:not(.vkuiSelect--multiline) .vkuiSelect__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vkuiSelect--empty .vkuiSelect__title{color:#818c99;color:var(--field_text_placeholder,var(--vkui--color_text_secondary))}.vkuiSelect--align-right .vkuiSelect__title{text-align:right}.vkuiSelect--align-center .vkuiSelect__title{text-align:center}.vkuiCalendarHeader__picker .vkuiSelect__container{padding-right:4px}
1
+ .vkuiSelect{box-sizing:border-box;cursor:pointer;position:relative}.vkuiSelect__el{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;display:block;font-size:16px;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%;z-index:7}.vkuiSelect__container{box-sizing:border-box;color:#000;color:var(--text_primary,var(--vkui--color_text_primary));flex-grow:1;flex-shrink:1;overflow:hidden;padding-left:12px;padding-right:12px;position:relative;z-index:6}.vkuiSelect--hasBefore .vkuiSelect__container{padding-left:0}.vkuiSelect--hasAfter .vkuiSelect__container{padding-right:0}.vkuiSelect--multiline .vkuiSelect__container{padding-bottom:12px;padding-top:12px}.vkuiSelect--sizeY-compact.vkuiSelect--multiline .vkuiSelect__container{padding-bottom:8px;padding-top:8px}.vkuiSelect__title{display:block}.vkuiSelect:not(.vkuiSelect--multiline) .vkuiSelect__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vkuiSelect--empty .vkuiSelect__title{color:#818c99;color:var(--field_text_placeholder,var(--vkui--color_text_secondary))}.vkuiSelect--align-right .vkuiSelect__title{text-align:right}.vkuiSelect--align-center .vkuiSelect__title{text-align:center}.vkuiCalendarHeader__picker .vkuiSelect__container{padding-right:4px}
@@ -15,4 +15,4 @@ export interface SelectProps extends CustomSelectProps, AdaptivityProps {
15
15
  /**
16
16
  * @see https://vkcom.github.io/VKUI/#/Select
17
17
  */
18
- export declare const Select: React.FC<Pick<SelectProps & AdaptivityContextInterface, "platform" | "required" | "disabled" | "hidden" | "dir" | "form" | "slot" | "style" | "title" | "color" | "size" | "icon" | "after" | "multiple" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "name" | "role" | "tabIndex" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "value" | "autoFocus" | "autoComplete" | "align" | "getRootRef" | "getRef" | "onOpen" | "onClose" | "before" | "options" | "popupDirection" | "multiline" | "onInputChange" | "selectType" | "searchable" | "emptyText" | "filterFn" | "renderOption" | "renderDropdown" | "fetching" | "dropdownOffsetDistance" | "fixDropdownWidth" | "forceDropdownPortal" | "autoHideScrollbar" | "autoHideScrollbarDelay"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
18
+ export declare const Select: React.FC<Pick<SelectProps & AdaptivityContextInterface, "platform" | "required" | "disabled" | "hidden" | "dir" | "form" | "slot" | "style" | "title" | "color" | "size" | "icon" | "after" | "multiple" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "name" | "role" | "tabIndex" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "status" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "value" | "autoFocus" | "autoComplete" | "align" | "getRootRef" | "getRef" | "onOpen" | "onClose" | "before" | "options" | "popupDirection" | "multiline" | "onInputChange" | "selectType" | "searchable" | "emptyText" | "filterFn" | "renderOption" | "renderDropdown" | "fetching" | "dropdownOffsetDistance" | "fixDropdownWidth" | "forceDropdownPortal" | "autoHideScrollbar" | "autoHideScrollbarDelay"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
@@ -4,7 +4,7 @@ import { HasAlign, HasRootRef } from "../../types";
4
4
  import { AdaptivityProps } from "../../hoc/withAdaptivity";
5
5
  import { SelectType } from "../Select/Select";
6
6
  import "../Select/Select.css";
7
- export interface SelectMimicryProps extends React.HTMLAttributes<HTMLElement>, HasAlign, HasRootRef<HTMLElement>, AdaptivityProps, Pick<FormFieldProps, "before" | "after"> {
7
+ export interface SelectMimicryProps extends React.HTMLAttributes<HTMLElement>, HasAlign, HasRootRef<HTMLElement>, AdaptivityProps, Pick<FormFieldProps, "before" | "after" | "status"> {
8
8
  multiline?: boolean;
9
9
  disabled?: boolean;
10
10
  selectType?: keyof typeof SelectType;
@@ -12,4 +12,4 @@ export interface SelectMimicryProps extends React.HTMLAttributes<HTMLElement>, H
12
12
  /**
13
13
  * @see https://vkcom.github.io/VKUI/#/SelectMimicry
14
14
  */
15
- export declare const SelectMimicry: React.FC<Pick<SelectMimicryProps, "disabled" | "hidden" | "dir" | "slot" | "style" | "title" | "color" | "after" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "role" | "tabIndex" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "align" | "getRootRef" | "before" | "multiline" | "selectType"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
15
+ export declare const SelectMimicry: React.FC<Pick<SelectMimicryProps, "disabled" | "hidden" | "dir" | "slot" | "style" | "title" | "color" | "after" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "role" | "tabIndex" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "status" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "align" | "getRootRef" | "before" | "multiline" | "selectType"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["tabIndex", "placeholder", "children", "align", "getRootRef", "multiline", "disabled", "onClick", "sizeX", "sizeY", "before", "after", "selectType"];
3
+ var _excluded = ["tabIndex", "placeholder", "children", "align", "getRootRef", "multiline", "disabled", "onClick", "sizeX", "sizeY", "before", "after", "selectType", "status"];
4
4
  import { createScopedElement } from "../../lib/jsxRuntime";
5
5
  import { classNames } from "../../lib/classNames";
6
6
  import { DropdownIcon } from "../DropdownIcon/DropdownIcon";
@@ -29,6 +29,7 @@ var SelectMimicryComponent = function SelectMimicryComponent(_ref) {
29
29
  after = _ref$after === void 0 ? createScopedElement(DropdownIcon, null) : _ref$after,
30
30
  _ref$selectType = _ref.selectType,
31
31
  selectType = _ref$selectType === void 0 ? SelectType.default : _ref$selectType,
32
+ status = _ref.status,
32
33
  restProps = _objectWithoutProperties(_ref, _excluded);
33
34
 
34
35
  var platform = usePlatform();
@@ -43,7 +44,8 @@ var SelectMimicryComponent = function SelectMimicryComponent(_ref) {
43
44
  disabled: disabled,
44
45
  before: before,
45
46
  after: after,
46
- mode: getFormFieldModeFromSelectType(selectType)
47
+ mode: getFormFieldModeFromSelectType(selectType),
48
+ status: status
47
49
  }), createScopedElement("div", {
48
50
  vkuiClass: "Select__container"
49
51
  }, createScopedElement(SelectTypography, {