@vkontakte/vkui 4.34.0 → 4.35.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 (690) hide show
  1. package/.browserslistrc +5 -0
  2. package/.cache/.eslintcache +1 -1
  3. package/.cache/.stylelintcache +1 -1
  4. package/.cache/.tsbuildinfo +291 -268
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  6. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -1
  7. package/.cache/ts/src/components/Button/Button.d.ts +1 -1
  8. package/.cache/ts/src/components/CardGrid/CardGrid.d.ts +1 -1
  9. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +1 -1
  10. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  11. package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  12. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  13. package/.cache/ts/src/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -1
  14. package/.cache/ts/src/components/DatePicker/DatePicker.d.ts +1 -1
  15. package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +46 -5
  16. package/.cache/ts/src/components/Epic/Epic.d.ts +1 -1
  17. package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +1 -1
  18. package/.cache/ts/src/components/Group/Group.d.ts +1 -1
  19. package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  20. package/.cache/ts/src/components/IconButton/IconButton.d.ts +1 -1
  21. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  22. package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +1 -1
  23. package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +1 -1
  24. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +1 -1
  25. package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +1 -1
  26. package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +1 -1
  27. package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  28. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +1 -1
  29. package/.cache/ts/src/components/Panel/Panel.d.ts +1 -1
  30. package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +1 -1
  31. package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  32. package/.cache/ts/src/components/PopoutRoot/PopoutRoot.d.ts +1 -1
  33. package/.cache/ts/src/components/Popper/Popper.d.ts +18 -1
  34. package/.cache/ts/src/components/PopperArrow/PopperArrow.d.ts +8 -0
  35. package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
  36. package/.cache/ts/src/components/RangeSlider/UniversalSlider.d.ts +1 -1
  37. package/.cache/ts/src/components/RichCell/RichCell.d.ts +1 -1
  38. package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +7 -2
  39. package/.cache/ts/src/components/Search/Search.d.ts +1 -1
  40. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  41. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  42. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +1 -1
  43. package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +5 -1
  44. package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -0
  45. package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +8 -1
  46. package/.cache/ts/src/components/Tabs/Tabs.d.ts +14 -3
  47. package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +22 -1
  48. package/.cache/ts/src/components/Tappable/Tappable.d.ts +1 -1
  49. package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +5 -1
  50. package/.cache/ts/src/components/Textarea/Textarea.d.ts +4 -1
  51. package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +18 -1
  52. package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +3 -3
  53. package/.cache/ts/src/components/View/View.d.ts +2 -18
  54. package/.cache/ts/src/components/View/ViewInfinite.d.ts +1 -1
  55. package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +5 -1
  56. package/.cache/ts/src/hoc/withAdaptivity.d.ts +1 -1
  57. package/.cache/ts/src/hoc/withContext.d.ts +1 -1
  58. package/.cache/ts/src/hoc/withPlatform.d.ts +1 -1
  59. package/.cache/ts/src/tokenized/index.d.ts +26 -0
  60. package/.eslintrc.json +14 -4
  61. package/dist/cjs/components/AppRoot/AppRoot.js +13 -15
  62. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  63. package/dist/cjs/components/Button/Button.js +6 -4
  64. package/dist/cjs/components/Button/Button.js.map +1 -1
  65. package/dist/cjs/components/CardScroll/CardScroll.js +3 -1
  66. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  67. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +5 -0
  68. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  69. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +7 -1
  70. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  71. package/dist/cjs/components/CustomSelect/CustomSelect.js +477 -553
  72. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  73. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +73 -35
  74. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  75. package/dist/cjs/components/Dropdown/Dropdown.js +147 -26
  76. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  77. package/dist/cjs/components/Epic/Epic.js +1 -6
  78. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  79. package/dist/cjs/components/FocusTrap/FocusTrap.js +9 -10
  80. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  81. package/dist/cjs/components/FormField/FormField.js +4 -10
  82. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  83. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +4 -7
  84. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  85. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +1 -0
  86. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  87. package/dist/cjs/components/Input/Input.js +3 -6
  88. package/dist/cjs/components/Input/Input.js.map +1 -1
  89. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
  90. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  91. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +1 -0
  92. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  93. package/dist/cjs/components/NativeSelect/NativeSelect.js +1 -0
  94. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  95. package/dist/cjs/components/Panel/Panel.js +1 -0
  96. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  97. package/dist/cjs/components/PanelHeader/PanelHeader.js +1 -0
  98. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  99. package/dist/cjs/components/Popper/Popper.js +16 -22
  100. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  101. package/dist/cjs/components/PopperArrow/PopperArrow.js +40 -0
  102. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -0
  103. package/dist/cjs/components/Radio/Radio.js +1 -0
  104. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  105. package/dist/cjs/components/RangeSlider/UniversalSlider.js +1 -0
  106. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  107. package/dist/cjs/components/RichTooltip/RichTooltip.js +6 -15
  108. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  109. package/dist/cjs/components/Select/Select.js +1 -0
  110. package/dist/cjs/components/Select/Select.js.map +1 -1
  111. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -1
  112. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  113. package/dist/cjs/components/SimpleCell/SimpleCell.js +21 -31
  114. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  115. package/dist/cjs/components/Snackbar/Snackbar.js +7 -11
  116. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  117. package/dist/cjs/components/SplitCol/SplitCol.js +7 -1
  118. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  119. package/dist/cjs/components/SplitLayout/SplitLayout.js +5 -8
  120. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  121. package/dist/cjs/components/Tabbar/Tabbar.js +15 -14
  122. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  123. package/dist/cjs/components/TabbarItem/TabbarItem.js +8 -10
  124. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  125. package/dist/cjs/components/Tabs/Tabs.js +23 -5
  126. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  127. package/dist/cjs/components/TabsItem/TabsItem.js +39 -22
  128. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  129. package/dist/cjs/components/TextTooltip/TextTooltip.js +6 -9
  130. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  131. package/dist/cjs/components/Textarea/Textarea.js +5 -4
  132. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  133. package/dist/cjs/components/Tooltip/Tooltip.js +94 -71
  134. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  135. package/dist/cjs/components/Typography/Headline/Headline.js +11 -2
  136. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  137. package/dist/cjs/components/View/View.js +388 -453
  138. package/dist/cjs/components/View/View.js.map +1 -1
  139. package/dist/cjs/components/WriteBar/WriteBar.js +12 -5
  140. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  141. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -8
  142. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  143. package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
  144. package/dist/cjs/hoc/withContext.js.map +1 -1
  145. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  146. package/dist/cjs/hooks/useOrientationChange.js +2 -1
  147. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  148. package/dist/cjs/tokenized/index.js +104 -0
  149. package/dist/cjs/tokenized/index.js.map +1 -1
  150. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  151. package/dist/components/AppRoot/AppRoot.d.ts +1 -1
  152. package/dist/components/AppRoot/AppRoot.js +13 -15
  153. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  154. package/dist/components/Button/Button.d.ts +1 -1
  155. package/dist/components/Button/Button.js +6 -4
  156. package/dist/components/Button/Button.js.map +1 -1
  157. package/dist/components/CardGrid/CardGrid.d.ts +1 -1
  158. package/dist/components/CardScroll/CardScroll.js +3 -1
  159. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  160. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  161. package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  162. package/dist/components/ChipsSelect/ChipsSelect.js +5 -0
  163. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  164. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  165. package/dist/components/ConfigProvider/ConfigProviderContext.js +3 -0
  166. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  167. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  168. package/dist/components/CustomSelect/CustomSelect.js +473 -579
  169. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  170. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -1
  171. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +71 -35
  172. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  173. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  174. package/dist/components/Dropdown/Dropdown.d.ts +46 -5
  175. package/dist/components/Dropdown/Dropdown.js +137 -27
  176. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  177. package/dist/components/Epic/Epic.d.ts +1 -1
  178. package/dist/components/Epic/Epic.js +1 -4
  179. package/dist/components/Epic/Epic.js.map +1 -1
  180. package/dist/components/FocusTrap/FocusTrap.d.ts +1 -1
  181. package/dist/components/FocusTrap/FocusTrap.js +9 -9
  182. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  183. package/dist/components/FormField/FormField.js +4 -8
  184. package/dist/components/FormField/FormField.js.map +1 -1
  185. package/dist/components/Group/Group.d.ts +1 -1
  186. package/dist/components/HorizontalCell/HorizontalCell.js +3 -5
  187. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  188. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  189. package/dist/components/HorizontalScroll/HorizontalScroll.js +1 -0
  190. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  191. package/dist/components/IconButton/IconButton.d.ts +1 -1
  192. package/dist/components/Input/Input.d.ts +1 -1
  193. package/dist/components/Input/Input.js +3 -4
  194. package/dist/components/Input/Input.js.map +1 -1
  195. package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
  196. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  197. package/dist/components/ModalCard/ModalCard.d.ts +1 -1
  198. package/dist/components/ModalCardBase/ModalCardBase.d.ts +1 -1
  199. package/dist/components/ModalCardBase/ModalCardBase.js +1 -0
  200. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  201. package/dist/components/ModalPage/ModalPage.d.ts +1 -1
  202. package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
  203. package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +1 -1
  204. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  205. package/dist/components/NativeSelect/NativeSelect.d.ts +1 -1
  206. package/dist/components/NativeSelect/NativeSelect.js +1 -0
  207. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  208. package/dist/components/Panel/Panel.d.ts +1 -1
  209. package/dist/components/Panel/Panel.js +1 -0
  210. package/dist/components/Panel/Panel.js.map +1 -1
  211. package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
  212. package/dist/components/PanelHeader/PanelHeader.js +1 -0
  213. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  214. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  215. package/dist/components/PopoutRoot/PopoutRoot.d.ts +1 -1
  216. package/dist/components/Popper/Popper.d.ts +18 -1
  217. package/dist/components/Popper/Popper.js +15 -22
  218. package/dist/components/Popper/Popper.js.map +1 -1
  219. package/dist/components/PopperArrow/PopperArrow.d.ts +8 -0
  220. package/dist/components/PopperArrow/PopperArrow.js +27 -0
  221. package/dist/components/PopperArrow/PopperArrow.js.map +1 -0
  222. package/dist/components/Radio/Radio.d.ts +1 -1
  223. package/dist/components/Radio/Radio.js +1 -0
  224. package/dist/components/Radio/Radio.js.map +1 -1
  225. package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
  226. package/dist/components/RangeSlider/UniversalSlider.js +1 -0
  227. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  228. package/dist/components/RichCell/RichCell.d.ts +1 -1
  229. package/dist/components/RichTooltip/RichTooltip.d.ts +7 -2
  230. package/dist/components/RichTooltip/RichTooltip.js +5 -10
  231. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  232. package/dist/components/Search/Search.d.ts +1 -1
  233. package/dist/components/Select/Select.d.ts +1 -1
  234. package/dist/components/Select/Select.js +1 -0
  235. package/dist/components/Select/Select.js.map +1 -1
  236. package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  237. package/dist/components/SelectMimicry/SelectMimicry.js +4 -1
  238. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  239. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  240. package/dist/components/SimpleCell/SimpleCell.js +19 -28
  241. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  242. package/dist/components/Snackbar/Snackbar.d.ts +5 -1
  243. package/dist/components/Snackbar/Snackbar.js +8 -11
  244. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  245. package/dist/components/SplitCol/SplitCol.d.ts +1 -0
  246. package/dist/components/SplitCol/SplitCol.js +3 -0
  247. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  248. package/dist/components/SplitLayout/SplitLayout.js +4 -7
  249. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  250. package/dist/components/Tabbar/Tabbar.d.ts +8 -1
  251. package/dist/components/Tabbar/Tabbar.js +15 -14
  252. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  253. package/dist/components/TabbarItem/TabbarItem.js +7 -9
  254. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  255. package/dist/components/Tabs/Tabs.d.ts +14 -3
  256. package/dist/components/Tabs/Tabs.js +23 -5
  257. package/dist/components/Tabs/Tabs.js.map +1 -1
  258. package/dist/components/TabsItem/TabsItem.d.ts +22 -1
  259. package/dist/components/TabsItem/TabsItem.js +40 -21
  260. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  261. package/dist/components/Tappable/Tappable.d.ts +1 -1
  262. package/dist/components/TextTooltip/TextTooltip.d.ts +5 -1
  263. package/dist/components/TextTooltip/TextTooltip.js +5 -7
  264. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  265. package/dist/components/Textarea/Textarea.d.ts +4 -1
  266. package/dist/components/Textarea/Textarea.js +5 -4
  267. package/dist/components/Textarea/Textarea.js.map +1 -1
  268. package/dist/components/Tooltip/Tooltip.d.ts +18 -1
  269. package/dist/components/Tooltip/Tooltip.js +89 -68
  270. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  271. package/dist/components/Typography/Headline/Headline.d.ts +3 -3
  272. package/dist/components/Typography/Headline/Headline.js +10 -2
  273. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  274. package/dist/components/View/View.d.ts +2 -18
  275. package/dist/components/View/View.js +384 -462
  276. package/dist/components/View/View.js.map +1 -1
  277. package/dist/components/View/ViewInfinite.d.ts +1 -1
  278. package/dist/components/WriteBar/WriteBar.d.ts +5 -1
  279. package/dist/components/WriteBar/WriteBar.js +10 -5
  280. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  281. package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -6
  282. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  283. package/dist/components.css +143 -127
  284. package/dist/components.css.map +1 -1
  285. package/dist/cssm/components/ActionSheet/ActionSheet.css +1 -1
  286. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +1 -1
  287. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  288. package/dist/cssm/components/Alert/Alert.css +1 -1
  289. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  290. package/dist/cssm/components/AppRoot/AppRoot.d.ts +1 -1
  291. package/dist/cssm/components/AppRoot/AppRoot.js +13 -15
  292. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  293. package/dist/cssm/components/Avatar/Avatar.css +3 -5
  294. package/dist/cssm/components/Badge/Badge.css +3 -3
  295. package/dist/cssm/components/Banner/Banner.css +5 -5
  296. package/dist/cssm/components/BaseGallery/BaseGallery.css +1 -1
  297. package/dist/cssm/components/Button/Button.css +53 -35
  298. package/dist/cssm/components/Button/Button.d.ts +1 -1
  299. package/dist/cssm/components/Button/Button.js +6 -4
  300. package/dist/cssm/components/Button/Button.js.map +1 -1
  301. package/dist/cssm/components/Calendar/Calendar.css +1 -1
  302. package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
  303. package/dist/cssm/components/CalendarDays/CalendarDays.css +1 -1
  304. package/dist/cssm/components/CalendarHeader/CalendarHeader.css +1 -1
  305. package/dist/cssm/components/CalendarRange/CalendarRange.css +1 -1
  306. package/dist/cssm/components/CalendarTime/CalendarTime.css +1 -1
  307. package/dist/cssm/components/Card/Card.css +5 -6
  308. package/dist/cssm/components/CardGrid/CardGrid.css +1 -1
  309. package/dist/cssm/components/CardGrid/CardGrid.d.ts +1 -1
  310. package/dist/cssm/components/CardScroll/CardScroll.css +1 -1
  311. package/dist/cssm/components/CardScroll/CardScroll.js +3 -1
  312. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  313. package/dist/cssm/components/Cell/Cell.css +3 -3
  314. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  315. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  316. package/dist/cssm/components/CellButton/CellButton.css +1 -1
  317. package/dist/cssm/components/Checkbox/Checkbox.css +1 -1
  318. package/dist/cssm/components/Checkbox/Checkbox.d.ts +1 -1
  319. package/dist/cssm/components/Chip/Chip.css +1 -1
  320. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  321. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  322. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  323. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -0
  324. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  325. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  326. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +3 -0
  327. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  328. package/dist/cssm/components/ContentCard/ContentCard.css +1 -1
  329. package/dist/cssm/components/Counter/Counter.css +31 -31
  330. package/dist/cssm/components/CustomScrollView/CustomScrollView.css +1 -1
  331. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  332. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  333. package/dist/cssm/components/CustomSelect/CustomSelect.js +473 -579
  334. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  335. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -3
  336. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -1
  337. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +71 -35
  338. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  339. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -3
  340. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  341. package/dist/cssm/components/DatePicker/DatePicker.css +1 -1
  342. package/dist/cssm/components/DatePicker/DatePicker.d.ts +1 -1
  343. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  344. package/dist/cssm/components/Dropdown/Dropdown.css +1 -1
  345. package/dist/cssm/components/Dropdown/Dropdown.d.ts +46 -5
  346. package/dist/cssm/components/Dropdown/Dropdown.js +137 -27
  347. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  348. package/dist/cssm/components/Epic/Epic.css +1 -1
  349. package/dist/cssm/components/Epic/Epic.d.ts +1 -1
  350. package/dist/cssm/components/Epic/Epic.js +1 -4
  351. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  352. package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
  353. package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +1 -1
  354. package/dist/cssm/components/FocusTrap/FocusTrap.js +9 -9
  355. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  356. package/dist/cssm/components/FocusVisible/FocusVisible.css +1 -1
  357. package/dist/cssm/components/Footer/Footer.css +1 -1
  358. package/dist/cssm/components/FormField/FormField.css +9 -9
  359. package/dist/cssm/components/FormField/FormField.js +4 -8
  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/FormLayout/FormLayout.css +1 -1
  363. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  364. package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
  365. package/dist/cssm/components/Gradient/Gradient.css +1 -1
  366. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  367. package/dist/cssm/components/Group/Group.css +1 -1
  368. package/dist/cssm/components/Group/Group.d.ts +1 -1
  369. package/dist/cssm/components/Header/Header.css +1 -1
  370. package/dist/cssm/components/HorizontalCell/HorizontalCell.css +1 -1
  371. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -5
  372. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  373. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.css +1 -1
  374. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  375. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +1 -0
  376. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  377. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +3 -3
  378. package/dist/cssm/components/IconButton/IconButton.css +1 -1
  379. package/dist/cssm/components/IconButton/IconButton.d.ts +1 -1
  380. package/dist/cssm/components/InfoRow/InfoRow.css +1 -1
  381. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.css +1 -1
  382. package/dist/cssm/components/Input/Input.css +1 -1
  383. package/dist/cssm/components/Input/Input.d.ts +1 -1
  384. package/dist/cssm/components/Input/Input.js +3 -4
  385. package/dist/cssm/components/Input/Input.js.map +1 -1
  386. package/dist/cssm/components/InputLike/InputLike.css +1 -1
  387. package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
  388. package/dist/cssm/components/Link/Link.css +1 -1
  389. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.css +1 -1
  390. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +2 -2
  391. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  392. package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
  393. package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
  394. package/dist/cssm/components/ModalCardBase/ModalCardBase.css +3 -3
  395. package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +1 -1
  396. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +1 -0
  397. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  398. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  399. package/dist/cssm/components/ModalPage/ModalPage.css +1 -1
  400. package/dist/cssm/components/ModalPage/ModalPage.d.ts +1 -1
  401. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  402. package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
  403. package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +1 -1
  404. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +1 -1
  405. package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  406. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -1
  407. package/dist/cssm/components/NativeSelect/NativeSelect.js +1 -0
  408. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  409. package/dist/cssm/components/Pagination/Pagination.css +1 -1
  410. package/dist/cssm/components/Panel/Panel.css +1 -1
  411. package/dist/cssm/components/Panel/Panel.d.ts +1 -1
  412. package/dist/cssm/components/Panel/Panel.js +1 -0
  413. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  414. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  415. package/dist/cssm/components/PanelHeader/PanelHeader.d.ts +1 -1
  416. package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -0
  417. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  418. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  419. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  420. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  421. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  422. package/dist/cssm/components/Placeholder/Placeholder.css +3 -3
  423. package/dist/cssm/components/PopoutRoot/PopoutRoot.css +1 -1
  424. package/dist/cssm/components/PopoutRoot/PopoutRoot.d.ts +1 -1
  425. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.css +1 -1
  426. package/dist/cssm/components/Popper/Popper.css +1 -1
  427. package/dist/cssm/components/Popper/Popper.d.ts +18 -1
  428. package/dist/cssm/components/Popper/Popper.js +15 -22
  429. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  430. package/dist/cssm/components/PopperArrow/PopperArrow.css +1 -0
  431. package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +8 -0
  432. package/dist/cssm/components/PopperArrow/PopperArrow.js +28 -0
  433. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -0
  434. package/dist/cssm/components/Progress/Progress.css +1 -1
  435. package/dist/cssm/components/PromoBanner/PromoBanner.css +1 -1
  436. package/dist/cssm/components/PullToRefresh/PullToRefresh.css +3 -3
  437. package/dist/cssm/components/Radio/Radio.css +1 -1
  438. package/dist/cssm/components/Radio/Radio.d.ts +1 -1
  439. package/dist/cssm/components/Radio/Radio.js +1 -0
  440. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  441. package/dist/cssm/components/RadioGroup/RadioGroup.css +1 -1
  442. package/dist/cssm/components/RangeSlider/UniversalSlider.d.ts +1 -1
  443. package/dist/cssm/components/RangeSlider/UniversalSlider.js +1 -0
  444. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  445. package/dist/cssm/components/Removable/Removable.css +1 -1
  446. package/dist/cssm/components/RichCell/RichCell.css +3 -3
  447. package/dist/cssm/components/RichCell/RichCell.d.ts +1 -1
  448. package/dist/cssm/components/RichTooltip/RichTooltip.css +3 -1
  449. package/dist/cssm/components/RichTooltip/RichTooltip.d.ts +7 -2
  450. package/dist/cssm/components/RichTooltip/RichTooltip.js +5 -10
  451. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  452. package/dist/cssm/components/Root/Root.css +1 -1
  453. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.css +1 -1
  454. package/dist/cssm/components/Search/Search.css +1 -1
  455. package/dist/cssm/components/Search/Search.d.ts +1 -1
  456. package/dist/cssm/components/SegmentedControl/SegmentedControl.css +1 -1
  457. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  458. package/dist/cssm/components/Select/Select.css +1 -1
  459. package/dist/cssm/components/Select/Select.d.ts +1 -1
  460. package/dist/cssm/components/Select/Select.js +1 -0
  461. package/dist/cssm/components/Select/Select.js.map +1 -1
  462. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  463. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -1
  464. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  465. package/dist/cssm/components/Separator/Separator.css +1 -1
  466. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  467. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
  468. package/dist/cssm/components/SimpleCell/SimpleCell.js +19 -28
  469. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  470. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.css +1 -1
  471. package/dist/cssm/components/Slider/Slider.css +3 -3
  472. package/dist/cssm/components/SliderSwitch/SliderSwitch.css +1 -1
  473. package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
  474. package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -1
  475. package/dist/cssm/components/Snackbar/Snackbar.js +8 -11
  476. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  477. package/dist/cssm/components/Spacing/Spacing.css +1 -1
  478. package/dist/cssm/components/Spinner/Spinner.css +1 -1
  479. package/dist/cssm/components/SplitCol/SplitCol.css +1 -1
  480. package/dist/cssm/components/SplitCol/SplitCol.d.ts +1 -0
  481. package/dist/cssm/components/SplitCol/SplitCol.js +3 -0
  482. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  483. package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
  484. package/dist/cssm/components/SplitLayout/SplitLayout.js +4 -7
  485. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  486. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  487. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  488. package/dist/cssm/components/Switch/Switch.css +3 -3
  489. package/dist/cssm/components/Tabbar/Tabbar.css +5 -3
  490. package/dist/cssm/components/Tabbar/Tabbar.d.ts +8 -1
  491. package/dist/cssm/components/Tabbar/Tabbar.js +15 -14
  492. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  493. package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
  494. package/dist/cssm/components/TabbarItem/TabbarItem.js +7 -9
  495. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  496. package/dist/cssm/components/Tabs/Tabs.css +1 -1
  497. package/dist/cssm/components/Tabs/Tabs.d.ts +14 -3
  498. package/dist/cssm/components/Tabs/Tabs.js +23 -5
  499. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  500. package/dist/cssm/components/TabsItem/TabsItem.css +5 -1
  501. package/dist/cssm/components/TabsItem/TabsItem.d.ts +22 -1
  502. package/dist/cssm/components/TabsItem/TabsItem.js +40 -21
  503. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  504. package/dist/cssm/components/Tappable/Tappable.css +5 -5
  505. package/dist/cssm/components/Tappable/Tappable.d.ts +1 -1
  506. package/dist/cssm/components/TextTooltip/TextTooltip.css +1 -1
  507. package/dist/cssm/components/TextTooltip/TextTooltip.d.ts +5 -1
  508. package/dist/cssm/components/TextTooltip/TextTooltip.js +5 -7
  509. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  510. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  511. package/dist/cssm/components/Textarea/Textarea.d.ts +4 -1
  512. package/dist/cssm/components/Textarea/Textarea.js +5 -4
  513. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  514. package/dist/cssm/components/Tooltip/Tooltip.css +1 -1
  515. package/dist/cssm/components/Tooltip/Tooltip.d.ts +18 -1
  516. package/dist/cssm/components/Tooltip/Tooltip.js +89 -68
  517. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  518. package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
  519. package/dist/cssm/components/Typography/Footnote/Footnote.css +1 -1
  520. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  521. package/dist/cssm/components/Typography/Headline/Headline.d.ts +3 -3
  522. package/dist/cssm/components/Typography/Headline/Headline.js +10 -2
  523. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  524. package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -1
  525. package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
  526. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  527. package/dist/cssm/components/Typography/Title/Title.css +1 -1
  528. package/dist/cssm/components/UsersStack/UsersStack.css +5 -5
  529. package/dist/cssm/components/View/View.css +1 -1
  530. package/dist/cssm/components/View/View.d.ts +2 -18
  531. package/dist/cssm/components/View/View.js +384 -462
  532. package/dist/cssm/components/View/View.js.map +1 -1
  533. package/dist/cssm/components/View/ViewIOS.css +1 -1
  534. package/dist/cssm/components/View/ViewInfinite.d.ts +1 -1
  535. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.css +1 -1
  536. package/dist/cssm/components/WriteBar/WriteBar.css +3 -1
  537. package/dist/cssm/components/WriteBar/WriteBar.d.ts +5 -1
  538. package/dist/cssm/components/WriteBar/WriteBar.js +10 -5
  539. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  540. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.css +1 -1
  541. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -6
  542. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  543. package/dist/cssm/fonts/fonts.css +1 -1
  544. package/dist/cssm/hoc/withAdaptivity.d.ts +1 -1
  545. package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
  546. package/dist/cssm/hoc/withContext.d.ts +1 -1
  547. package/dist/cssm/hoc/withContext.js.map +1 -1
  548. package/dist/cssm/hoc/withPlatform.d.ts +1 -1
  549. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  550. package/dist/cssm/hooks/useOrientationChange.js +2 -1
  551. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  552. package/dist/cssm/lib/calendar.d.ts +2 -2
  553. package/dist/cssm/styles/animations.css +1 -1
  554. package/dist/cssm/styles/bright_light.css +1 -1
  555. package/dist/cssm/styles/common.css +1 -1
  556. package/dist/cssm/styles/components.css +143 -127
  557. package/dist/cssm/styles/constants.css +3 -10
  558. package/dist/cssm/styles/space_gray.css +1 -1
  559. package/dist/cssm/styles/themes.css +1 -16
  560. package/dist/cssm/styles/unstable.css +3 -1
  561. package/dist/cssm/styles/vkcom_dark.css +1 -6
  562. package/dist/cssm/styles/vkcom_light.css +1 -11
  563. package/dist/cssm/tokenized/index.d.ts +26 -0
  564. package/dist/cssm/tokenized/index.js +13 -0
  565. package/dist/cssm/tokenized/index.js.map +1 -1
  566. package/dist/default_scheme.css +1 -1
  567. package/dist/default_scheme.css.map +1 -1
  568. package/dist/fonts.css +1 -1
  569. package/dist/fonts.css.map +1 -1
  570. package/dist/hoc/withAdaptivity.d.ts +1 -1
  571. package/dist/hoc/withAdaptivity.js.map +1 -1
  572. package/dist/hoc/withContext.d.ts +1 -1
  573. package/dist/hoc/withContext.js.map +1 -1
  574. package/dist/hoc/withPlatform.d.ts +1 -1
  575. package/dist/hoc/withPlatform.js.map +1 -1
  576. package/dist/hooks/useOrientationChange.js +2 -1
  577. package/dist/hooks/useOrientationChange.js.map +1 -1
  578. package/dist/lib/calendar.d.ts +2 -2
  579. package/dist/tokenized/index.d.ts +26 -0
  580. package/dist/tokenized/index.js +13 -0
  581. package/dist/tokenized/index.js.map +1 -1
  582. package/dist/unstable.css +3 -1
  583. package/dist/unstable.css.map +1 -1
  584. package/dist/vkui.css +144 -143
  585. package/dist/vkui.css.map +1 -1
  586. package/package.json +6 -5
  587. package/src/components/AppRoot/AppRoot.tsx +15 -11
  588. package/src/components/Badge/Badge.css +0 -5
  589. package/src/components/Button/Button.css +0 -4
  590. package/src/components/Button/Button.tsx +4 -2
  591. package/src/components/Button/Readme.md +30 -59
  592. package/src/components/CardScroll/CardScroll.tsx +1 -1
  593. package/src/components/Cell/Cell.css +3 -2
  594. package/src/components/ChipsInput/ChipsInput.css +2 -0
  595. package/src/components/ChipsSelect/ChipsSelect.tsx +8 -0
  596. package/src/components/ConfigProvider/ConfigProviderContext.tsx +2 -0
  597. package/src/components/Counter/Counter.css +30 -0
  598. package/src/components/CustomScrollView/CustomScrollView.css +10 -5
  599. package/src/components/CustomSelect/CustomSelect.tsx +543 -573
  600. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +45 -22
  601. package/src/components/Dropdown/Dropdown.css +12 -0
  602. package/src/components/Dropdown/Dropdown.tsx +174 -20
  603. package/src/components/Dropdown/Readme.md +1 -0
  604. package/src/components/Epic/Epic.tsx +1 -4
  605. package/src/components/FixedLayout/Readme.md +103 -109
  606. package/src/components/FocusTrap/FocusTrap.tsx +10 -10
  607. package/src/components/FormField/FormField.css +31 -22
  608. package/src/components/FormField/FormField.tsx +4 -8
  609. package/src/components/FormField/Readme.md +9 -82
  610. package/src/components/Group/Group.css +1 -1
  611. package/src/components/Group/Readme.md +1 -1
  612. package/src/components/HorizontalCell/HorizontalCell.css +25 -43
  613. package/src/components/HorizontalCell/HorizontalCell.tsx +3 -9
  614. package/src/components/HorizontalScroll/HorizontalScroll.css +23 -0
  615. package/src/components/HorizontalScroll/HorizontalScroll.tsx +2 -0
  616. package/src/components/IconButton/IconButton.css +46 -25
  617. package/src/components/Input/Input.css +20 -9
  618. package/src/components/Input/Input.tsx +6 -5
  619. package/src/components/Input/Readme.md +128 -24
  620. package/src/components/MiniInfoCell/MiniInfoCell.css +13 -3
  621. package/src/components/MiniInfoCell/MiniInfoCell.tsx +3 -3
  622. package/src/components/ModalCardBase/ModalCardBase.tsx +2 -0
  623. package/src/components/NativeSelect/NativeSelect.tsx +2 -0
  624. package/src/components/Panel/Panel.tsx +2 -0
  625. package/src/components/PanelHeader/PanelHeader.tsx +2 -0
  626. package/src/components/Popper/Popper.css +0 -35
  627. package/src/components/Popper/Popper.tsx +33 -25
  628. package/src/components/PopperArrow/PopperArrow.css +34 -0
  629. package/src/components/PopperArrow/PopperArrow.tsx +40 -0
  630. package/src/components/Radio/Radio.tsx +2 -0
  631. package/src/components/RangeSlider/UniversalSlider.tsx +2 -0
  632. package/src/components/RichTooltip/RichTooltip.css +44 -4
  633. package/src/components/RichTooltip/RichTooltip.tsx +9 -11
  634. package/src/components/ScreenSpinner/ScreenSpinner.css +1 -1
  635. package/src/components/Select/Select.css +23 -9
  636. package/src/components/Select/Select.tsx +2 -0
  637. package/src/components/SelectMimicry/SelectMimicry.tsx +6 -2
  638. package/src/components/SimpleCell/Readme.md +115 -129
  639. package/src/components/SimpleCell/SimpleCell.css +30 -68
  640. package/src/components/SimpleCell/SimpleCell.tsx +23 -25
  641. package/src/components/Snackbar/Readme.md +95 -123
  642. package/src/components/Snackbar/Snackbar.css +18 -27
  643. package/src/components/Snackbar/Snackbar.tsx +17 -11
  644. package/src/components/SplitCol/SplitCol.css +1 -1
  645. package/src/components/SplitCol/SplitCol.tsx +2 -0
  646. package/src/components/SplitLayout/SplitLayout.css +3 -7
  647. package/src/components/SplitLayout/SplitLayout.tsx +9 -6
  648. package/src/components/Switch/Switch.css +6 -2
  649. package/src/components/Tabbar/Tabbar.css +4 -1
  650. package/src/components/Tabbar/Tabbar.tsx +23 -12
  651. package/src/components/TabbarItem/TabbarItem.css +7 -5
  652. package/src/components/TabbarItem/TabbarItem.tsx +13 -7
  653. package/src/components/Tabs/Readme.md +191 -251
  654. package/src/components/Tabs/Tabs.css +27 -80
  655. package/src/components/Tabs/Tabs.tsx +45 -7
  656. package/src/components/TabsItem/Readme.md +1 -0
  657. package/src/components/TabsItem/TabsItem.css +191 -106
  658. package/src/components/TabsItem/TabsItem.tsx +72 -20
  659. package/src/components/TextTooltip/TextTooltip.css +41 -11
  660. package/src/components/TextTooltip/TextTooltip.tsx +9 -13
  661. package/src/components/Textarea/Textarea.css +7 -3
  662. package/src/components/Textarea/Textarea.tsx +5 -4
  663. package/src/components/Tooltip/Readme.md +128 -101
  664. package/src/components/Tooltip/Tooltip.css +29 -40
  665. package/src/components/Tooltip/Tooltip.tsx +98 -66
  666. package/src/components/Typography/Headline/Headline.tsx +15 -1
  667. package/src/components/View/Readme.md +2 -0
  668. package/src/components/View/View.tsx +451 -514
  669. package/src/components/WriteBar/WriteBar.css +27 -33
  670. package/src/components/WriteBar/WriteBar.tsx +16 -5
  671. package/src/components/WriteBarIcon/WriteBarIcon.css +6 -19
  672. package/src/components/WriteBarIcon/WriteBarIcon.tsx +6 -6
  673. package/src/hoc/withAdaptivity.tsx +4 -4
  674. package/src/hoc/withContext.tsx +1 -1
  675. package/src/hoc/withPlatform.tsx +1 -1
  676. package/src/hooks/useOrientationChange.ts +1 -0
  677. package/src/styles/components.css +1 -0
  678. package/src/styles/constants.css +8 -0
  679. package/src/tokenized/index.ts +39 -0
  680. package/tsconfig.json +1 -1
  681. package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +0 -21
  682. package/dist/cjs/components/ClickPopper/ClickPopper.js +0 -96
  683. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +0 -1
  684. package/dist/components/ClickPopper/ClickPopper.d.ts +0 -21
  685. package/dist/components/ClickPopper/ClickPopper.js +0 -71
  686. package/dist/components/ClickPopper/ClickPopper.js.map +0 -1
  687. package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +0 -21
  688. package/dist/cssm/components/ClickPopper/ClickPopper.js +0 -71
  689. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +0 -1
  690. package/src/components/ClickPopper/ClickPopper.tsx +0 -86
@@ -1,10 +1,8 @@
1
1
  import * as React from "react";
2
- import { getClassName } from "../../helpers/getClassName";
3
2
  import { classNames } from "../../lib/classNames";
4
3
  import { FormField, FormFieldProps } from "../FormField/FormField";
5
4
  import { HasAlign, HasRef, HasRootRef } from "../../types";
6
5
  import { withAdaptivity, AdaptivityProps } from "../../hoc/withAdaptivity";
7
- import { usePlatform } from "../../hooks/usePlatform";
8
6
  import "./Input.css";
9
7
 
10
8
  export interface InputProps
@@ -27,13 +25,14 @@ const InputComponent = ({
27
25
  after,
28
26
  ...restProps
29
27
  }: InputProps) => {
30
- const platform = usePlatform();
31
28
  return (
32
29
  <FormField
33
30
  vkuiClass={classNames(
34
- getClassName("Input", platform),
31
+ "Input",
35
32
  !!align && `Input--${align}`,
36
- `Input--sizeY-${sizeY}`
33
+ `Input--sizeY-${sizeY}`, // TODO v5.0.0 поправить под новую адаптивность
34
+ before && "Input--hasBefore",
35
+ after && "Input--hasAfter"
37
36
  )}
38
37
  style={style}
39
38
  className={className}
@@ -53,3 +52,5 @@ const InputComponent = ({
53
52
  export const Input = withAdaptivity(InputComponent, {
54
53
  sizeY: true,
55
54
  });
55
+
56
+ Input.displayName = "Input";
@@ -1,34 +1,77 @@
1
1
  Надстройка над `<input type="text" />`. Компонент принимает все валидные для этого элемента свойства.
2
2
 
3
- ```jsx
4
- const textInput = React.createRef();
5
- const clear = () => (textInput.current.value = "");
6
-
7
- <View activePanel="input">
8
- <Panel id="input">
9
- <PanelHeader>Input</PanelHeader>
10
- <Group>
11
- <FormItem top="Фамилия">
12
- <Input type="text" defaultValue="Петров" />
13
- </FormItem>
14
- <FormItem>
15
- <Input type="text" defaultValue="Иванов" align="center" />
16
- </FormItem>
17
- <FormItem>
18
- <Input type="text" defaultValue="Сидоров" align="right" />
3
+ ```jsx { "props": { "layout": false, "iframe": false } }
4
+ const ExampleBase = ({ formItemStatus }) => {
5
+ const [before, setBefore] = useState(undefined);
6
+ const [after, setAfter] = useState(undefined);
7
+ const [align, setAlign] = useState("left");
8
+ const [disabled, setDisabled] = useState(false);
9
+
10
+ return (
11
+ <FormLayout>
12
+ <FormItem top="align">
13
+ <Select
14
+ value={align}
15
+ onChange={(e) => setAlign(e.target.value)}
16
+ options={[
17
+ { label: "left", value: "left" },
18
+ { label: "center", value: "center" },
19
+ { label: "right", value: "right" },
20
+ ]}
21
+ />
19
22
  </FormItem>
20
- <FormItem top="С иконкой">
23
+ <Checkbox
24
+ description="Icon24WalletOutline for example"
25
+ checked={!!before}
26
+ onChange={(e) =>
27
+ e.target.checked
28
+ ? setBefore(<Icon24WalletOutline />)
29
+ : setBefore(undefined)
30
+ }
31
+ >
32
+ before
33
+ </Checkbox>
34
+ <Checkbox
35
+ description="Icon20User for example"
36
+ checked={!!after}
37
+ onChange={(e) =>
38
+ e.target.checked ? setAfter(<Icon20User />) : setAfter(undefined)
39
+ }
40
+ >
41
+ after
42
+ </Checkbox>
43
+ <Checkbox
44
+ checked={disabled}
45
+ onChange={(e) => setDisabled(e.target.checked)}
46
+ >
47
+ disabled
48
+ </Checkbox>
49
+ <FormItem top="📝 Пример" status={formItemStatus}>
21
50
  <Input
51
+ before={before}
52
+ after={after}
22
53
  type="text"
23
- defaultValue="Смирнов"
24
- after={<Icon20User aria-hidden="true" />}
54
+ align={align}
55
+ defaultValue="Lorem ipsum dolor sit amet"
56
+ disabled={disabled}
25
57
  />
26
58
  </FormItem>
27
- <FormItem top="С IconButton">
59
+ </FormLayout>
60
+ );
61
+ };
62
+
63
+ const ExampleWithIcon = ({ formItemStatus }) => {
64
+ const textInput = React.createRef();
65
+ const clear = () => (textInput.current.value = "");
66
+
67
+ return (
68
+ <FormLayout>
69
+ <FormItem top="📝 Пример с кликабельной иконкой" status={formItemStatus}>
28
70
  <Input
29
71
  getRef={textInput}
30
72
  type="text"
31
- defaultValue="Кузнецов"
73
+ placeholder="Ну ведь брокколи это вкусно и полезно 😢"
74
+ defaultValue="Брокколи 🥦"
32
75
  after={
33
76
  <IconButton
34
77
  hoverMode="opacity"
@@ -40,7 +83,68 @@ const clear = () => (textInput.current.value = "");
40
83
  }
41
84
  />
42
85
  </FormItem>
43
- </Group>
44
- </Panel>
45
- </View>;
86
+ </FormLayout>
87
+ );
88
+ };
89
+
90
+ const Example = () => {
91
+ const [sizeY, setSizeY] = useState("regular");
92
+ const [formItemStatus, setFormItemStatus] = useState("default");
93
+
94
+ return (
95
+ <AdaptivityProvider sizeY={sizeY}>
96
+ <div style={rootContainerStyles}>
97
+ <div style={demoContainerStyles}>
98
+ <ExampleBase formItemStatus={formItemStatus} />
99
+ <Spacing size={16} />
100
+ <Separator />
101
+ <Spacing size={16} />
102
+ <ExampleWithIcon formItemStatus={formItemStatus} />
103
+ </div>
104
+
105
+ <div style={propsContainerStyles}>
106
+ <FormItem top="AdaptivityProvider[sizeY]">
107
+ <Select
108
+ value={sizeY}
109
+ onChange={(e) => setSizeY(e.target.value)}
110
+ options={[
111
+ { label: "compact", value: "compact" },
112
+ { label: "regular", value: "regular" },
113
+ ]}
114
+ />
115
+ </FormItem>
116
+ <FormItem top="FormItem[status]">
117
+ <Select
118
+ value={formItemStatus}
119
+ onChange={(e) => setFormItemStatus(e.target.value)}
120
+ options={[
121
+ { label: "default", value: "default" },
122
+ { label: "error", value: "error" },
123
+ { label: "valid", value: "valid" },
124
+ ]}
125
+ />
126
+ </FormItem>
127
+ </div>
128
+ </div>
129
+ </AdaptivityProvider>
130
+ );
131
+ };
132
+
133
+ const rootContainerStyles = {
134
+ display: "flex",
135
+ flexDirection: "row-reverse",
136
+ flexWrap: "wrap",
137
+ };
138
+
139
+ const demoContainerStyles = {
140
+ flexGrow: 2,
141
+ minWidth: 320,
142
+ };
143
+
144
+ const propsContainerStyles = {
145
+ minWidth: 200,
146
+ marginRight: "auto",
147
+ };
148
+
149
+ <Example />;
46
150
  ```
@@ -13,7 +13,7 @@
13
13
 
14
14
  .MiniInfoCell__icon {
15
15
  margin-right: 12px;
16
- color: var(--icon_outline_secondary, var(--vkui--color_icon_medium));
16
+ color: var(--icon_outline_secondary, var(--vkui--color_icon_secondary));
17
17
  }
18
18
 
19
19
  .MiniInfoCell__content {
@@ -43,12 +43,22 @@
43
43
  margin-bottom: -2px;
44
44
  }
45
45
 
46
- .MiniInfoCell--md-add,
46
+ /**
47
+ * TODO Когда избавимся от appearance токенов - объединить классы
48
+ */
49
+
50
+ .MiniInfoCell--md-add {
51
+ color: var(--accent, var(--vkui--color_text_link));
52
+ }
53
+
47
54
  .MiniInfoCell--md-add .MiniInfoCell__icon {
48
55
  color: var(--accent, var(--vkui--color_icon_accent));
49
56
  }
50
57
 
51
- .MiniInfoCell--md-more,
58
+ .MiniInfoCell--md-more {
59
+ color: var(--link_alternate, var(--vkui--color_text_link));
60
+ }
61
+
52
62
  .MiniInfoCell--md-more .MiniInfoCell__icon {
53
63
  color: var(--link_alternate, var(--vkui--color_icon_accent));
54
64
  }
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { classNames } from "../../lib/classNames";
3
- import { Text } from "../Typography/Text/Text";
3
+ import { Paragraph } from "../Typography/Paragraph/Paragraph";
4
4
  import { Tappable } from "../Tappable/Tappable";
5
5
  import { hasReactNode } from "../../lib/utils";
6
6
  import "./MiniInfoCell.css";
@@ -75,12 +75,12 @@ export const MiniInfoCell = ({
75
75
  )}
76
76
  >
77
77
  <span vkuiClass="MiniInfoCell__icon">{before}</span>
78
- <Text
78
+ <Paragraph
79
79
  vkuiClass="MiniInfoCell__content"
80
80
  weight={mode === "more" ? "2" : undefined}
81
81
  >
82
82
  {children}
83
- </Text>
83
+ </Paragraph>
84
84
  {hasReactNode(after) && (
85
85
  <span vkuiClass="MiniInfoCell__after">{after}</span>
86
86
  )}
@@ -145,3 +145,5 @@ export const ModalCardBase = withAdaptivity<
145
145
  hasMouse: true,
146
146
  }
147
147
  );
148
+
149
+ ModalCardBase.displayName = "ModalCardBase";
@@ -107,3 +107,5 @@ export const NativeSelect = withAdaptivity(NativeSelectComponent, {
107
107
  sizeX: true,
108
108
  sizeY: true,
109
109
  });
110
+
111
+ NativeSelect.displayName = "NativeSelect";
@@ -60,3 +60,5 @@ export const Panel = withAdaptivity<PanelProps & AdaptivityContextInterface>(
60
60
  sizeX: true,
61
61
  }
62
62
  );
63
+
64
+ Panel.displayName = "Panel";
@@ -171,3 +171,5 @@ export const PanelHeader = withAdaptivity(PanelHeaderComponent, {
171
171
  sizeX: true,
172
172
  sizeY: true,
173
173
  });
174
+
175
+ PanelHeader.displayName = "PanelHeader";
@@ -14,38 +14,3 @@
14
14
  .Popper {
15
15
  z-index: 100;
16
16
  }
17
-
18
- .Popper__arrow-in {
19
- content: "";
20
- display: block;
21
- width: 20px;
22
- height: 8px;
23
- }
24
-
25
- [data-popper-placement^="bottom"] .Popper__arrow {
26
- bottom: 100%;
27
- }
28
-
29
- [data-popper-placement^="top"] .Popper__arrow {
30
- top: 100%;
31
- }
32
-
33
- [data-popper-placement^="top"] .Popper__arrow-in {
34
- transform: rotate(180deg);
35
- }
36
-
37
- [data-popper-placement^="left"] .Popper__arrow {
38
- left: calc(100% - 6px);
39
- }
40
-
41
- [data-popper-placement^="left"] .Popper__arrow-in {
42
- transform: rotate(90deg);
43
- }
44
-
45
- [data-popper-placement^="right"] .Popper__arrow {
46
- right: calc(100% - 6px);
47
- }
48
-
49
- [data-popper-placement^="right"] .Popper__arrow-in {
50
- transform: rotate(270deg);
51
- }
@@ -1,6 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { usePopper, Modifier } from "react-popper";
3
3
  import { AppRootPortal } from "../AppRoot/AppRootPortal";
4
+ import { PopperArrow } from "../PopperArrow/PopperArrow";
4
5
  import { HasRef } from "../../types";
5
6
  import { usePlatform } from "../../hooks/usePlatform";
6
7
  import { getClassName } from "../../helpers/getClassName";
@@ -25,6 +26,10 @@ export type Placement =
25
26
  | "left"
26
27
  | "right";
27
28
 
29
+ export interface PopperRenderContentProps {
30
+ className: string;
31
+ }
32
+
28
33
  export interface PopperCommonProps
29
34
  extends React.HTMLAttributes<HTMLDivElement>,
30
35
  HasRef<HTMLDivElement> {
@@ -40,7 +45,13 @@ export interface PopperCommonProps
40
45
  * Отступ по главной оси
41
46
  */
42
47
  offsetDistance?: number;
48
+ /**
49
+ * Отображать ли стрелку, указывающую на якорный элемент
50
+ */
43
51
  arrow?: boolean;
52
+ /**
53
+ * Стиль стрелки
54
+ */
44
55
  arrowClassName?: string;
45
56
  /**
46
57
  * Выставлять ширину равной target элементу
@@ -52,6 +63,14 @@ export interface PopperCommonProps
52
63
  * Массив кастомных модификаторов для Popper (необходимо мемоизировать)
53
64
  */
54
65
  customModifiers?: Array<Modifier<string>>;
66
+ /**
67
+ * При передаче содержимого в `children`, он будет обёрнут во внутренний контейнер.
68
+ *
69
+ * Если хочется управлять этим контейнером, то используйте данную функцию.
70
+ *
71
+ * > ⚠️ Параметр `children` будет проигнорирован.
72
+ */
73
+ renderContent?(props: PopperRenderContentProps): React.ReactNode;
55
74
  }
56
75
 
57
76
  export interface PopperProps extends PopperCommonProps {
@@ -78,7 +97,8 @@ export const Popper = ({
78
97
  offsetSkidding = 0,
79
98
  forcePortal = true,
80
99
  style: compStyles,
81
- customModifiers = [],
100
+ customModifiers,
101
+ renderContent,
82
102
  ...restProps
83
103
  }: PopperProps) => {
84
104
  const [popperNode, setPopperNode] = React.useState<HTMLDivElement | null>(
@@ -140,7 +160,9 @@ export const Popper = ({
140
160
  modifiers.push(sameWidth);
141
161
  }
142
162
 
143
- modifiers.push(...customModifiers);
163
+ if (customModifiers) {
164
+ modifiers.push(...customModifiers);
165
+ }
144
166
  return modifiers;
145
167
  }, [
146
168
  arrow,
@@ -208,31 +230,17 @@ export const Popper = ({
208
230
  }}
209
231
  >
210
232
  {arrow && (
211
- <div
212
- {...attributes.arrow}
213
- vkuiClass="Popper__arrow"
214
- data-popper-arrow={true}
233
+ <PopperArrow
234
+ attributes={attributes.arrow}
215
235
  style={styles.arrow}
216
- >
217
- <svg
218
- vkuiClass="Popper__arrow-in"
219
- className={arrowClassName}
220
- width="20"
221
- height="8"
222
- viewBox="0 0 20 8"
223
- fill="none"
224
- xmlns="http://www.w3.org/2000/svg"
225
- >
226
- <path
227
- fillRule="evenodd"
228
- clipRule="evenodd"
229
- d="M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z"
230
- fill="currentColor"
231
- />
232
- </svg>
233
- </div>
236
+ arrowClassName={arrowClassName}
237
+ />
238
+ )}
239
+ {renderContent ? (
240
+ renderContent({ className: "Popper__content" })
241
+ ) : (
242
+ <div vkuiClass="Popper__content">{children}</div>
234
243
  )}
235
- <div vkuiClass="Popper__content">{children}</div>
236
244
  </div>
237
245
  );
238
246
 
@@ -0,0 +1,34 @@
1
+ .PopperArrow__in {
2
+ content: "";
3
+ display: block;
4
+ width: 20px;
5
+ height: 8px;
6
+ }
7
+
8
+ [data-popper-placement^="bottom"] .PopperArrow {
9
+ bottom: 100%;
10
+ }
11
+
12
+ [data-popper-placement^="top"] .PopperArrow {
13
+ top: 100%;
14
+ }
15
+
16
+ [data-popper-placement^="top"] .PopperArrow__in {
17
+ transform: rotate(180deg);
18
+ }
19
+
20
+ [data-popper-placement^="left"] .PopperArrow {
21
+ left: calc(100% - 6px);
22
+ }
23
+
24
+ [data-popper-placement^="left"] .PopperArrow__in {
25
+ transform: rotate(90deg);
26
+ }
27
+
28
+ [data-popper-placement^="right"] .PopperArrow {
29
+ right: calc(100% - 6px);
30
+ }
31
+
32
+ [data-popper-placement^="right"] .PopperArrow__in {
33
+ transform: rotate(270deg);
34
+ }
@@ -0,0 +1,40 @@
1
+ import * as React from "react";
2
+ import "./PopperArrow.css";
3
+
4
+ export interface PopperArrowProps {
5
+ style?: React.CSSProperties;
6
+ attributes?: React.HTMLAttributes<HTMLDivElement> | null;
7
+ arrowClassName?: string;
8
+ }
9
+
10
+ export const PopperArrow = ({
11
+ style,
12
+ attributes,
13
+ arrowClassName,
14
+ }: PopperArrowProps) => {
15
+ return (
16
+ <div
17
+ style={style}
18
+ {...attributes}
19
+ vkuiClass="PopperArrow"
20
+ data-popper-arrow={true}
21
+ >
22
+ <svg
23
+ vkuiClass="PopperArrow__in"
24
+ className={arrowClassName}
25
+ width="20"
26
+ height="8"
27
+ viewBox="0 0 20 8"
28
+ fill="none"
29
+ xmlns="http://www.w3.org/2000/svg"
30
+ >
31
+ <path
32
+ fillRule="evenodd"
33
+ clipRule="evenodd"
34
+ d="M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z"
35
+ fill="currentColor"
36
+ />
37
+ </svg>
38
+ </div>
39
+ );
40
+ };
@@ -99,3 +99,5 @@ const RadioComponent = ({
99
99
  export const Radio = withAdaptivity(RadioComponent, {
100
100
  sizeY: true,
101
101
  });
102
+
103
+ Radio.displayName = "Radio";
@@ -157,3 +157,5 @@ const UniversalSliderDumb = ({
157
157
  export const UniversalSlider = withAdaptivity(UniversalSliderDumb, {
158
158
  sizeY: true,
159
159
  });
160
+
161
+ UniversalSlider.displayName = "UniversalSlider";
@@ -1,10 +1,50 @@
1
1
  .RichTooltip {
2
- box-shadow: 0 0 4px rgba(0, 0, 0, 0.04), 0 4px 32px rgba(0, 0, 0, 0.16);
3
- border-radius: 8px;
4
- background: var(--background_content);
2
+ box-shadow: var(--vkui--elevation3);
3
+ border-radius: var(--vkui--size_border_radius--regular);
4
+ background-color: var(
5
+ --background_content,
6
+ var(--vkui--color_background_modal)
7
+ );
5
8
  animation: vkui-popper-fadein 0.2s ease;
9
+ color: var(--vkui--color_text_primary);
6
10
  }
7
11
 
8
12
  .RichTooltip__arrow {
9
- color: var(--background_content);
13
+ color: var(--background_content, var(--vkui--color_background_modal));
14
+ }
15
+
16
+ .RichTooltip--accent {
17
+ background-color: var(--vkui--color_background_accent_tint);
18
+ color: var(--vkui--color_text_contrast);
19
+ }
20
+
21
+ .RichTooltip--accent .RichTooltip__arrow {
22
+ color: var(--vkui--color_background_accent_tint);
23
+ }
24
+
25
+ .RichTooltip--white {
26
+ background-color: var(--vkui--color_background_contrast);
27
+ color: var(--vkui--color_text_primary_invariably);
28
+ }
29
+
30
+ .RichTooltip--white .RichTooltip__arrow {
31
+ color: var(--vkui--color_background_contrast);
32
+ }
33
+
34
+ .RichTooltip--black {
35
+ background-color: var(--vkui--color_background_contrast_inverse);
36
+ color: var(--vkui--color_text_contrast);
37
+ }
38
+
39
+ .RichTooltip--black .RichTooltip__arrow {
40
+ color: var(--vkui--color_background_contrast_inverse);
41
+ }
42
+
43
+ .RichTooltip--inversion {
44
+ background-color: var(--vkui--color_background_modal_inverse);
45
+ color: var(--vkui--color_text_contrast_themed);
46
+ }
47
+
48
+ .RichTooltip--inversion .RichTooltip__arrow {
49
+ color: var(--vkui--color_background_modal_inverse);
10
50
  }
@@ -1,12 +1,15 @@
1
1
  import { HoverPopper, HoverPopperProps } from "../HoverPopper/HoverPopper";
2
- import { getClassName } from "../../helpers/getClassName";
3
- import { usePlatform } from "../../hooks/usePlatform";
4
- import { useAppearance } from "../../hooks/useAppearance";
5
2
  import { classNames } from "../../lib/classNames";
6
3
  import { prefixClass } from "../../lib/prefixClass";
7
4
  import "./RichTooltip.css";
8
5
 
9
- export type RichTooltipProps = Omit<HoverPopperProps, "arrowClassName">;
6
+ export interface RichTooltipProps
7
+ extends Omit<HoverPopperProps, "arrowClassName"> {
8
+ /**
9
+ * Стиль отображения подсказки
10
+ */
11
+ appearance?: "accent" | "neutral" | "white" | "black" | "inversion";
12
+ }
10
13
 
11
14
  /**
12
15
  * @see https://vkcom.github.io/VKUI/#/RichTooltip
@@ -14,17 +17,12 @@ export type RichTooltipProps = Omit<HoverPopperProps, "arrowClassName">;
14
17
  export const RichTooltip = ({
15
18
  children,
16
19
  arrow = true,
20
+ appearance = "neutral",
17
21
  ...popperProps
18
22
  }: RichTooltipProps) => {
19
- const platform = usePlatform();
20
- const appearance = useAppearance();
21
-
22
23
  return (
23
24
  <HoverPopper
24
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
25
- vkuiClass={classNames(getClassName("RichTooltip", platform), {
26
- [`RichTooltip--${appearance}`]: !!appearance,
27
- })}
25
+ vkuiClass={classNames("RichTooltip", `RichTooltip--${appearance}`)}
28
26
  arrow={arrow}
29
27
  arrowClassName={prefixClass("RichTooltip__arrow")}
30
28
  {...popperProps}
@@ -22,7 +22,7 @@
22
22
  background: var(--tabbar_background, var(--vkui--color_background_modal));
23
23
  box-shadow: var(--vkui--elevation4);
24
24
  border-radius: var(--vkui--size_border_radius--regular);
25
- color: var(--overlay_status_icon, --vkui--color_icon_medium);
25
+ color: var(--overlay_status_icon, var(--vkui--color_icon_medium));
26
26
  }
27
27
 
28
28
  .ScreenSpinner__icon {
@@ -21,7 +21,8 @@
21
21
  .Select__container {
22
22
  flex-grow: 1;
23
23
  flex-shrink: 1;
24
- padding: 7px 11px;
24
+ padding-right: 12px;
25
+ padding-left: 12px;
25
26
  color: var(--text_primary, var(--vkui--color_text_primary));
26
27
  box-sizing: border-box;
27
28
  position: relative;
@@ -29,6 +30,27 @@
29
30
  overflow: hidden;
30
31
  }
31
32
 
33
+ .Select--hasBefore .Select__container {
34
+ padding-left: 0;
35
+ }
36
+
37
+ .Select--hasAfter .Select__container {
38
+ padding-right: 0;
39
+ }
40
+
41
+ .Select--multiline .Select__container {
42
+ padding-top: 12px;
43
+ padding-bottom: 12px;
44
+ }
45
+
46
+ /**
47
+ * TODO v5.0.0 поправить под новую адаптивность
48
+ */
49
+ .Select--sizeY-compact.Select--multiline .Select__container {
50
+ padding-top: 8px;
51
+ padding-bottom: 8px;
52
+ }
53
+
32
54
  .Select__title {
33
55
  display: block;
34
56
  }
@@ -51,14 +73,6 @@
51
73
  text-align: center;
52
74
  }
53
75
 
54
- /**
55
- * sizeY REGULAR
56
- * TODO v5.0.0 поправить под новую адаптивность
57
- */
58
- .Select--sizeY-regular .Select__container {
59
- padding: 11px;
60
- }
61
-
62
76
  /**
63
77
  * CMP:
64
78
  * CalendarHeader