@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,5 +1,9 @@
1
1
  .WriteBar {
2
- background: var(--background_content);
2
+ background: var(--background_content, var(--vkui--color_background_modal));
3
+ }
4
+
5
+ .WriteBar--shadow {
6
+ box-shadow: var(--vkui--elevation3);
3
7
  }
4
8
 
5
9
  .WriteBar__before,
@@ -29,20 +33,15 @@
29
33
  background: transparent;
30
34
  border: none;
31
35
  resize: none;
32
- line-height: 20px;
33
- color: var(--text_primary);
36
+ color: var(--text_primary, var(--vkui--color_text_primary));
34
37
  -webkit-appearance: none;
35
38
  max-height: 120px;
36
39
  }
37
40
 
38
41
  .WriteBar__textarea::placeholder {
39
- color: var(--text_placeholder);
40
- }
41
-
42
- /* stylelint-disable-next-line selector-no-vendor-prefix */
43
- .WriteBar__textarea::-moz-placeholder {
42
+ color: var(--text_placeholder, var(--vkui--color_text_subhead));
43
+ /* Для Firefox */
44
44
  opacity: 1;
45
- color: var(--text_placeholder);
46
45
  }
47
46
 
48
47
  .WriteBar__inlineAfter {
@@ -50,6 +49,19 @@
50
49
  align-items: flex-end;
51
50
  }
52
51
 
52
+ .WriteBar__before {
53
+ padding-left: 4px;
54
+ }
55
+
56
+ .WriteBar__after {
57
+ padding-right: 4px;
58
+ }
59
+
60
+ .WriteBar__textarea {
61
+ height: 52px;
62
+ padding: 16px 12px;
63
+ }
64
+
53
65
  /**
54
66
  * iOS
55
67
  */
@@ -61,8 +73,12 @@
61
73
 
62
74
  .WriteBar--ios .WriteBar__formIn {
63
75
  box-sizing: border-box;
64
- background-color: var(--input_background);
65
- border: 1px solid var(--input_border);
76
+ background-color: var(
77
+ --input_background,
78
+ var(--vkui--color_field_background)
79
+ );
80
+ border: var(--thin-border) solid
81
+ var(--input_border, var(--vkui--color_field_border_alpha));
66
82
  border-radius: 18px;
67
83
  margin: 8px 0;
68
84
  }
@@ -83,25 +99,3 @@
83
99
  font-size: 17px;
84
100
  line-height: 22px;
85
101
  }
86
-
87
- /**
88
- * Android + vkcom
89
- */
90
-
91
- .WriteBar--android .WriteBar__before,
92
- .WriteBar--vkcom .WriteBar__before {
93
- padding-left: 4px;
94
- }
95
-
96
- .WriteBar--android .WriteBar__after,
97
- .WriteBar--vkcom .WriteBar__after {
98
- padding-right: 4px;
99
- }
100
-
101
- .WriteBar--android .WriteBar__textarea,
102
- .WriteBar--vkcom .WriteBar__textarea {
103
- height: 52px;
104
- padding: 16px 12px;
105
- font-size: 16px;
106
- line-height: 20px;
107
- }
@@ -1,8 +1,10 @@
1
1
  import * as React from "react";
2
+ import { Headline } from "../Typography/Headline/Headline";
2
3
  import { usePlatform } from "../../hooks/usePlatform";
3
4
  import { useExternRef } from "../../hooks/useExternRef";
4
5
  import { hasReactNode, isFunction } from "../../lib/utils";
5
- import { getClassName } from "../../helpers/getClassName";
6
+ import { classNames } from "../../lib/classNames";
7
+ import { IOS } from "../../lib/platform";
6
8
  import { HasRef, HasRootRef } from "../../types";
7
9
  import "./WriteBar.css";
8
10
 
@@ -26,6 +28,10 @@ export interface WriteBarProps
26
28
  * Вызывается при смене высоты поля ввода
27
29
  */
28
30
  onHeightChange?: VoidFunction;
31
+ /**
32
+ * Добавляет тень вокруг поля ввода
33
+ */
34
+ shadow?: boolean;
29
35
 
30
36
  children?: never;
31
37
  }
@@ -44,6 +50,7 @@ export const WriteBar = ({
44
50
  getRootRef,
45
51
  getRef,
46
52
  onHeightChange,
53
+ shadow = false,
47
54
  ...restProps
48
55
  }: WriteBarProps) => {
49
56
  const platform = usePlatform();
@@ -92,7 +99,11 @@ export const WriteBar = ({
92
99
  return (
93
100
  <div
94
101
  ref={getRootRef}
95
- vkuiClass={getClassName("WriteBar", platform)}
102
+ vkuiClass={classNames(
103
+ "WriteBar",
104
+ platform === IOS && "WriteBar--ios",
105
+ shadow && "WriteBar--shadow"
106
+ )}
96
107
  className={className}
97
108
  style={style}
98
109
  >
@@ -102,14 +113,14 @@ export const WriteBar = ({
102
113
  )}
103
114
 
104
115
  <div vkuiClass="WriteBar__formIn">
105
- <textarea
116
+ <Headline
106
117
  {...restProps}
118
+ Component="textarea"
107
119
  vkuiClass="WriteBar__textarea"
108
120
  onChange={onTextareaChange}
109
- ref={textareaRef}
121
+ getRootRef={textareaRef}
110
122
  value={value}
111
123
  />
112
-
113
124
  {hasReactNode(inlineAfter) && (
114
125
  <div vkuiClass="WriteBar__inlineAfter">{inlineAfter}</div>
115
126
  )}
@@ -2,11 +2,11 @@
2
2
  background: none;
3
3
  border: 0;
4
4
  position: relative;
5
- color: var(--icon_secondary);
5
+ color: var(--icon_secondary, var(--vkui--color_icon_secondary));
6
6
  height: 52px;
7
7
  width: 44px;
8
8
  cursor: pointer;
9
- border-radius: 8px;
9
+ border-radius: var(--vkui--size_border_radius--regular);
10
10
  }
11
11
 
12
12
  .WriteBarIcon__in {
@@ -30,30 +30,25 @@
30
30
  position: absolute;
31
31
  top: 6px;
32
32
  right: 2px;
33
- box-shadow: 0 0 0 2px var(--background_content);
33
+ box-shadow: 0 0 0 2px
34
+ var(--background_content, var(--vkui--color_background_modal));
34
35
  }
35
36
 
36
37
  .WriteBarIcon.WriteBarIcon--send,
37
38
  .WriteBarIcon.WriteBarIcon--done {
38
- color: var(--accent);
39
+ color: var(--accent, var(--vkui--color_icon_accent));
39
40
  }
40
41
 
41
42
  /**
42
43
  * iOS
43
44
  */
44
45
  .WriteBarIcon--ios {
45
- color: var(--writebar_icon);
46
- border-radius: 10px;
46
+ color: var(--writebar_icon, var(--vkui--color_icon_accent));
47
47
  }
48
48
 
49
49
  .WriteBarIcon--ios.WriteBarIcon--send,
50
50
  .WriteBarIcon--ios.WriteBarIcon--done {
51
51
  width: 48px;
52
- color: var(--writebar_icon);
53
- }
54
-
55
- .WriteBarIcon--ios.WriteBarIcon--send:not(:disabled) {
56
- color: var(--accent);
57
52
  }
58
53
 
59
54
  .WriteBarIcon--ios.WriteBarIcon--send:first-child,
@@ -65,11 +60,3 @@
65
60
  .WriteBarIcon--ios.WriteBarIcon--done:last-child {
66
61
  margin-right: -4px;
67
62
  }
68
-
69
- /**
70
- * VKCOM
71
- */
72
- .WriteBarIcon--vkcom {
73
- color: var(--icon_secondary);
74
- border-radius: 10px;
75
- }
@@ -9,8 +9,7 @@ import {
9
9
  } from "@vkontakte/icons";
10
10
  import { usePlatform } from "../../hooks/usePlatform";
11
11
  import { classNames } from "../../lib/classNames";
12
- import { getClassName } from "../../helpers/getClassName";
13
- import { IOS } from "../../lib/platform";
12
+ import { IOS, Platform } from "../../lib/platform";
14
13
  import { Counter } from "../Counter/Counter";
15
14
  import { Tappable } from "../Tappable/Tappable";
16
15
  import { warnOnce } from "../../lib/warnOnce";
@@ -91,10 +90,11 @@ export const WriteBarIcon = ({
91
90
  Component="button"
92
91
  hasHover={false}
93
92
  activeMode="WriteBarIcon__active"
94
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
95
- vkuiClass={classNames(getClassName("WriteBarIcon", platform), {
96
- [`WriteBarIcon--${mode}`]: !!mode,
97
- })}
93
+ vkuiClass={classNames(
94
+ "WriteBarIcon",
95
+ platform === Platform.IOS && "WriteBarIcon--ios",
96
+ !!mode && `WriteBarIcon--${mode}`
97
+ )}
98
98
  >
99
99
  <span vkuiClass="WriteBarIcon__in">
100
100
  {icon || children}
@@ -24,10 +24,10 @@ interface Config {
24
24
  export function withAdaptivity<T extends AdaptivityProps>(
25
25
  TargetComponent: React.ComponentType<T>,
26
26
  config: Config
27
- ): React.ComponentType<Omit<T, keyof AdaptivityContextInterface> & SizeProps> {
28
- const AdaptivityConsumer: React.ComponentType<
29
- Omit<T, keyof AdaptivityContextInterface> & SizeProps
30
- > = (props: Omit<T, keyof AdaptivityContextInterface> & SizeProps) => {
27
+ ): React.FC<Omit<T, keyof AdaptivityContextInterface> & SizeProps> {
28
+ const AdaptivityConsumer = (
29
+ props: Omit<T, keyof AdaptivityContextInterface> & SizeProps
30
+ ) => {
31
31
  const context = React.useContext(AdaptivityContext);
32
32
  let update = false;
33
33
 
@@ -4,7 +4,7 @@ export function withContext<T, X>(
4
4
  Component: React.ComponentType<T>,
5
5
  Ctx: React.Context<X>,
6
6
  prop: string
7
- ): React.ComponentType<T> {
7
+ ): React.FC<T> {
8
8
  function WithContext(props: T) {
9
9
  const context = React.useContext<X>(Ctx);
10
10
 
@@ -5,7 +5,7 @@ import { ConfigProviderContext } from "../components/ConfigProvider/ConfigProvid
5
5
 
6
6
  export function withPlatform<T extends HasPlatform>(
7
7
  Component: React.ComponentType<T>
8
- ): React.ComponentType<Omit<T, keyof HasPlatform>> {
8
+ ): React.FC<Omit<T, keyof HasPlatform>> {
9
9
  function WithPlatform(props: Omit<T, keyof HasPlatform>) {
10
10
  const ssrContext = React.useContext(SSRContext);
11
11
  const { platform } = React.useContext(ConfigProviderContext);
@@ -14,6 +14,7 @@ function getOrientation(window: Window | undefined): Orientation {
14
14
  }
15
15
 
16
16
  const angle = Math.abs(
17
+ // eslint-disable-next-line compat/compat
17
18
  window.screen?.orientation?.angle ?? Number(window.orientation)
18
19
  );
19
20
 
@@ -24,6 +24,7 @@
24
24
  @import "../components/Button/Button.css";
25
25
  @import "../components/Removable/Removable.css";
26
26
  @import "../components/FocusVisible/FocusVisible.css";
27
+ @import "../components/PopperArrow/PopperArrow.css";
27
28
 
28
29
  /* Layout */
29
30
  @import "../components/Root/Root.css";
@@ -29,6 +29,14 @@
29
29
  --search_default_height: 36px;
30
30
  --thin-border: 1px;
31
31
 
32
+ /**
33
+ * "Safe Zone" добавляет невидимую интерактивную область, по которой пользователь будет вводить мышкой и тем самым
34
+ * компонент будет оставаться активным.
35
+ *
36
+ * > ⚠️ Используется для динамического изменения в JS файлах.
37
+ */
38
+ --popover-safe-zone-padding: 8px;
39
+
32
40
  /* paddings */
33
41
  /* TODO: v5 удалить */
34
42
  --formitem_padding: 16px;
@@ -25,6 +25,9 @@ export type { CardScrollProps } from "../components/CardScroll/CardScroll";
25
25
  export { Group } from "../components/Group/Group";
26
26
  export type { GroupProps } from "../components/Group/Group";
27
27
 
28
+ export { WriteBar } from "../components/WriteBar/WriteBar";
29
+ export type { WriteBarProps } from "../components/WriteBar/WriteBar";
30
+
28
31
  export { Cell } from "../components/Cell/Cell";
29
32
  export type { CellProps } from "../components/Cell/Cell";
30
33
 
@@ -40,6 +43,9 @@ export type { IconButtonProps } from "../components/IconButton/IconButton";
40
43
  export { InitialsAvatar } from "../components/InitialsAvatar/InitialsAvatar";
41
44
  export type { InitialsAvatarProps } from "../components/InitialsAvatar/InitialsAvatar";
42
45
 
46
+ export { Epic } from "../components/Epic/Epic";
47
+ export type { EpicProps } from "../components/Epic/Epic";
48
+
43
49
  export { InfoRow } from "../components/InfoRow/InfoRow";
44
50
  export type { InfoRowProps } from "../components/InfoRow/InfoRow";
45
51
 
@@ -52,12 +58,21 @@ export type { ModalCardProps } from "../components/ModalCard/ModalCard";
52
58
  export { Link } from "../components/Link/Link";
53
59
  export type { LinkProps } from "../components/Link/Link";
54
60
 
61
+ export { SimpleCell } from "../components/SimpleCell/SimpleCell";
62
+ export type { SimpleCellProps } from "../components/SimpleCell/SimpleCell";
63
+
55
64
  export { ButtonGroup } from "../components/ButtonGroup/ButtonGroup";
56
65
  export type { ButtonGroupProps } from "../components/ButtonGroup/ButtonGroup";
57
66
 
58
67
  export { Switch } from "../components/Switch/Switch";
59
68
  export type { SwitchProps } from "../components/Switch/Switch";
60
69
 
70
+ export { Tabs } from "../components/Tabs/Tabs";
71
+ export type { TabsProps } from "../components/Tabs/Tabs";
72
+
73
+ export { TabsItem } from "../components/TabsItem/TabsItem";
74
+ export type { TabsItemProps } from "../components/TabsItem/TabsItem";
75
+
61
76
  export { Footnote } from "../components/Typography/Footnote/Footnote";
62
77
  export type { FootnoteProps } from "../components/Typography/Footnote/Footnote";
63
78
 
@@ -83,6 +98,15 @@ export type { TappableProps } from "../components/Tappable/Tappable";
83
98
  export { Textarea } from "../components/Textarea/Textarea";
84
99
  export type { TextareaProps } from "../components/Textarea/Textarea";
85
100
 
101
+ export { Tooltip } from "../components/Tooltip/Tooltip";
102
+ export type { TooltipProps } from "../components/Tooltip/Tooltip";
103
+
104
+ export { TextTooltip } from "../components/TextTooltip/TextTooltip";
105
+ export type { TextTooltipProps } from "../components/TextTooltip/TextTooltip";
106
+
107
+ export { RichTooltip } from "../components/RichTooltip/RichTooltip";
108
+ export type { RichTooltipProps } from "../components/RichTooltip/RichTooltip";
109
+
86
110
  export { Title } from "../components/Typography/Title/Title";
87
111
  export type { TitleProps } from "../components/Typography/Title/Title";
88
112
 
@@ -155,6 +179,9 @@ export type { SelectProps } from "../components/Select/Select";
155
179
  export { View } from "../components/View/View";
156
180
  export type { ViewProps } from "../components/View/View";
157
181
 
182
+ export { HorizontalCell } from "../components/HorizontalCell/HorizontalCell";
183
+ export type { HorizontalCellProps } from "../components/HorizontalCell/HorizontalCell";
184
+
158
185
  export { Spinner } from "../components/Spinner/Spinner";
159
186
  export type { SpinnerProps } from "../components/Spinner/Spinner";
160
187
 
@@ -188,6 +215,9 @@ export type { ChipsSelectProps } from "../components/ChipsSelect/ChipsSelect";
188
215
  export { Spacing } from "../components/Spacing/Spacing";
189
216
  export type { SpacingProps } from "../components/Spacing/Spacing";
190
217
 
218
+ export { SplitLayout } from "../components/SplitLayout/SplitLayout";
219
+ export type { SplitLayoutProps } from "../components/SplitLayout/SplitLayout";
220
+
191
221
  export { SplitCol } from "../components/SplitCol/SplitCol";
192
222
  export type { SplitColProps } from "../components/SplitCol/SplitCol";
193
223
 
@@ -206,6 +236,9 @@ export type { BannerProps } from "../components/Banner/Banner";
206
236
  export { FixedLayout } from "../components/FixedLayout/FixedLayout";
207
237
  export type { FixedLayoutProps } from "../components/FixedLayout/FixedLayout";
208
238
 
239
+ export { Snackbar } from "../components/Snackbar/Snackbar";
240
+ export type { SnackbarProps } from "../components/Snackbar/Snackbar";
241
+
209
242
  export { Counter } from "../components/Counter/Counter";
210
243
  export type { CounterProps } from "../components/Counter/Counter";
211
244
 
@@ -230,5 +263,11 @@ export type { DateRangeInputProps } from "../components/DateRangeInput/DateRange
230
263
  export { Footer } from "../components/Footer/Footer";
231
264
  export type { FooterProps } from "../components/Footer/Footer";
232
265
 
266
+ export { WriteBarIcon } from "../components/WriteBarIcon/WriteBarIcon";
267
+ export type { WriteBarIconProps } from "../components/WriteBarIcon/WriteBarIcon";
268
+
233
269
  export { Tabbar } from "../components/Tabbar/Tabbar";
234
270
  export type { TabbarProps } from "../components/Tabbar/Tabbar";
271
+
272
+ export { TabbarItem } from "../components/TabbarItem/TabbarItem";
273
+ export type { TabbarItemProps } from "../components/TabbarItem/TabbarItem";
package/tsconfig.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "jsx": "react",
4
4
  "jsxFactory": "createScopedElement",
5
5
  "target": "esnext",
6
- "lib": ["es6", "dom"],
6
+ "lib": ["es6", "dom", "dom.Iterable"],
7
7
  "outDir": "dist",
8
8
  "esModuleInterop": true,
9
9
  "allowSyntheticDefaultImports": true,
@@ -1,21 +0,0 @@
1
- import * as React from "react";
2
- import { PopperCommonProps } from "../Popper/Popper";
3
- export interface ClickPopperProps extends PopperCommonProps {
4
- /**
5
- * Содержимое `ClickPopper`
6
- */
7
- content?: React.ReactNode;
8
- /**
9
- * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства
10
- */
11
- shown?: boolean;
12
- /**
13
- * Вызывается при каждом изменении видимости тултипа
14
- */
15
- onShownChange?: (shown: boolean) => void;
16
- /**
17
- * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента
18
- */
19
- children?: React.ReactElement;
20
- }
21
- export declare const ClickPopper: ({ getRef, content, children, onShownChange, shown: _shown, ...restProps }: ClickPopperProps) => JSX.Element;
@@ -1,96 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.ClickPopper = void 0;
11
-
12
- var _jsxRuntime = require("../../lib/jsxRuntime");
13
-
14
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
-
16
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
-
20
- var React = _interopRequireWildcard(require("react"));
21
-
22
- var _dom = require("../../lib/dom");
23
-
24
- var _Popper = require("../Popper/Popper");
25
-
26
- var _useExternRef = require("../../hooks/useExternRef");
27
-
28
- var _useEventListener = require("../../hooks/useEventListener");
29
-
30
- var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
31
-
32
- var _usePatchChildrenRef3 = require("../../hooks/usePatchChildrenRef");
33
-
34
- var _excluded = ["getRef", "content", "children", "onShownChange", "shown"];
35
-
36
- var ClickPopper = function ClickPopper(_ref) {
37
- var getRef = _ref.getRef,
38
- content = _ref.content,
39
- children = _ref.children,
40
- onShownChange = _ref.onShownChange,
41
- _shown = _ref.shown,
42
- restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
43
-
44
- var _React$useState = React.useState(_shown || false),
45
- _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
46
- computedShown = _React$useState2[0],
47
- setComputedShown = _React$useState2[1];
48
-
49
- var _React$useState3 = React.useState(null),
50
- _React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
51
- dropdownNode = _React$useState4[0],
52
- setPopperNode = _React$useState4[1];
53
-
54
- var shown = typeof _shown === "boolean" ? _shown : computedShown;
55
-
56
- var _useDOM = (0, _dom.useDOM)(),
57
- document = _useDOM.document;
58
-
59
- var patchedPopperRef = (0, _useExternRef.useExternRef)(setPopperNode, getRef);
60
-
61
- var _usePatchChildrenRef = (0, _usePatchChildrenRef3.usePatchChildrenRef)(children),
62
- _usePatchChildrenRef2 = (0, _slicedToArray2.default)(_usePatchChildrenRef, 2),
63
- childRef = _usePatchChildrenRef2[0],
64
- child = _usePatchChildrenRef2[1];
65
-
66
- var setShown = function setShown(value) {
67
- if (typeof _shown !== "boolean") {
68
- setComputedShown(value);
69
- }
70
-
71
- typeof onShownChange === "function" && onShownChange(value);
72
- };
73
-
74
- (0, _useGlobalEventListener.useGlobalEventListener)(document, "click", function (e) {
75
- var _childRef$current;
76
-
77
- if (dropdownNode && !((_childRef$current = childRef.current) !== null && _childRef$current !== void 0 && _childRef$current.contains(e.target)) && !dropdownNode.contains(e.target)) {
78
- setShown(false);
79
- }
80
- });
81
- var targetClickEvent = (0, _useEventListener.useEventListener)("click", function () {
82
- setShown(!shown);
83
- });
84
- React.useEffect(function () {
85
- if (childRef.current !== null) {
86
- targetClickEvent.add(childRef.current);
87
- }
88
- }, [childRef, targetClickEvent]);
89
- return (0, _jsxRuntime.createScopedElement)(React.Fragment, null, child, shown && (0, _jsxRuntime.createScopedElement)(_Popper.Popper, (0, _extends2.default)({}, restProps, {
90
- targetRef: childRef,
91
- getRef: patchedPopperRef
92
- }), content));
93
- };
94
-
95
- exports.ClickPopper = ClickPopper;
96
- //# sourceMappingURL=ClickPopper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ClickPopper/ClickPopper.tsx"],"names":["ClickPopper","getRef","content","children","onShownChange","_shown","shown","restProps","React","useState","computedShown","setComputedShown","dropdownNode","setPopperNode","document","patchedPopperRef","childRef","child","setShown","value","e","current","contains","target","targetClickEvent","useEffect","add"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAqBO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAOH;AAAA,MANtBC,MAMsB,QANtBA,MAMsB;AAAA,MALtBC,OAKsB,QALtBA,OAKsB;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,aAGsB,QAHtBA,aAGsB;AAAA,MAFfC,MAEe,QAFtBC,KAEsB;AAAA,MADnBC,SACmB;;AACtB,wBAA0CC,KAAK,CAACC,QAAN,CAAeJ,MAAM,IAAI,KAAzB,CAA1C;AAAA;AAAA,MAAOK,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,yBAAsCH,KAAK,CAACC,QAAN,CACpC,IADoC,CAAtC;AAAA;AAAA,MAAOG,YAAP;AAAA,MAAqBC,aAArB;;AAIA,MAAMP,KAAK,GAAG,OAAOD,MAAP,KAAkB,SAAlB,GAA8BA,MAA9B,GAAuCK,aAArD;;AAEA,gBAAqB,kBAArB;AAAA,MAAQI,QAAR,WAAQA,QAAR;;AAEA,MAAMC,gBAAgB,GAAG,gCAA6BF,aAA7B,EAA4CZ,MAA5C,CAAzB;;AAEA,6BAA0B,+CAAoBE,QAApB,CAA1B;AAAA;AAAA,MAAOa,QAAP;AAAA,MAAiBC,KAAjB;;AAEA,MAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAoB;AACnC,QAAI,OAAOd,MAAP,KAAkB,SAAtB,EAAiC;AAC/BM,MAAAA,gBAAgB,CAACQ,KAAD,CAAhB;AACD;;AACD,WAAOf,aAAP,KAAyB,UAAzB,IAAuCA,aAAa,CAACe,KAAD,CAApD;AACD,GALD;;AAOA,sDAAuBL,QAAvB,EAAiC,OAAjC,EAA0C,UAACM,CAAD,EAAmB;AAAA;;AAC3D,QACER,YAAY,IACZ,uBAACI,QAAQ,CAACK,OAAV,8CAAC,kBAAkBC,QAAlB,CAA2BF,CAAC,CAACG,MAA7B,CAAD,CADA,IAEA,CAACX,YAAY,CAACU,QAAb,CAAsBF,CAAC,CAACG,MAAxB,CAHH,EAIE;AACAL,MAAAA,QAAQ,CAAC,KAAD,CAAR;AACD;AACF,GARD;AAUA,MAAMM,gBAAgB,GAAG,wCAAiB,OAAjB,EAA0B,YAAM;AACvDN,IAAAA,QAAQ,CAAC,CAACZ,KAAF,CAAR;AACD,GAFwB,CAAzB;AAIAE,EAAAA,KAAK,CAACiB,SAAN,CAAgB,YAAM;AACpB,QAAIT,QAAQ,CAACK,OAAT,KAAqB,IAAzB,EAA+B;AAC7BG,MAAAA,gBAAgB,CAACE,GAAjB,CAAqBV,QAAQ,CAACK,OAA9B;AACD;AACF,GAJD,EAIG,CAACL,QAAD,EAAWQ,gBAAX,CAJH;AAMA,SACE,qCAAC,KAAD,CAAO,QAAP,QACGP,KADH,EAEGX,KAAK,IACJ,qCAAC,cAAD,6BAAYC,SAAZ;AAAuB,IAAA,SAAS,EAAES,QAAlC;AAA4C,IAAA,MAAM,EAAED;AAApD,MACGb,OADH,CAHJ,CADF;AAUD,CA1DM","sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { Popper, PopperCommonProps } from \"../Popper/Popper\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { usePatchChildrenRef } from \"../../hooks/usePatchChildrenRef\";\n\nexport interface ClickPopperProps extends PopperCommonProps {\n /**\n * Содержимое `ClickPopper`\n */\n content?: React.ReactNode;\n /**\n * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости тултипа\n */\n onShownChange?: (shown: boolean) => void;\n /**\n * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента\n */\n children?: React.ReactElement;\n}\n\nexport const ClickPopper = ({\n getRef,\n content,\n children,\n onShownChange,\n shown: _shown,\n ...restProps\n}: ClickPopperProps) => {\n const [computedShown, setComputedShown] = React.useState(_shown || false);\n const [dropdownNode, setPopperNode] = React.useState<HTMLElement | null>(\n null\n );\n\n const shown = typeof _shown === \"boolean\" ? _shown : computedShown;\n\n const { document } = useDOM();\n\n const patchedPopperRef = useExternRef<HTMLDivElement>(setPopperNode, getRef);\n\n const [childRef, child] = usePatchChildrenRef(children);\n\n const setShown = (value: boolean) => {\n if (typeof _shown !== \"boolean\") {\n setComputedShown(value);\n }\n typeof onShownChange === \"function\" && onShownChange(value);\n };\n\n useGlobalEventListener(document, \"click\", (e: MouseEvent) => {\n if (\n dropdownNode &&\n !childRef.current?.contains(e.target as Node) &&\n !dropdownNode.contains(e.target as Node)\n ) {\n setShown(false);\n }\n });\n\n const targetClickEvent = useEventListener(\"click\", () => {\n setShown(!shown);\n });\n\n React.useEffect(() => {\n if (childRef.current !== null) {\n targetClickEvent.add(childRef.current);\n }\n }, [childRef, targetClickEvent]);\n\n return (\n <React.Fragment>\n {child}\n {shown && (\n <Popper {...restProps} targetRef={childRef} getRef={patchedPopperRef}>\n {content}\n </Popper>\n )}\n </React.Fragment>\n );\n};\n"],"file":"ClickPopper.js"}
@@ -1,21 +0,0 @@
1
- import * as React from "react";
2
- import { PopperCommonProps } from "../Popper/Popper";
3
- export interface ClickPopperProps extends PopperCommonProps {
4
- /**
5
- * Содержимое `ClickPopper`
6
- */
7
- content?: React.ReactNode;
8
- /**
9
- * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства
10
- */
11
- shown?: boolean;
12
- /**
13
- * Вызывается при каждом изменении видимости тултипа
14
- */
15
- onShownChange?: (shown: boolean) => void;
16
- /**
17
- * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента
18
- */
19
- children?: React.ReactElement;
20
- }
21
- export declare const ClickPopper: ({ getRef, content, children, onShownChange, shown: _shown, ...restProps }: ClickPopperProps) => JSX.Element;
@@ -1,71 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["getRef", "content", "children", "onShownChange", "shown"];
5
- import { createScopedElement } from "../../lib/jsxRuntime";
6
- import * as React from "react";
7
- import { useDOM } from "../../lib/dom";
8
- import { Popper } from "../Popper/Popper";
9
- import { useExternRef } from "../../hooks/useExternRef";
10
- import { useEventListener } from "../../hooks/useEventListener";
11
- import { useGlobalEventListener } from "../../hooks/useGlobalEventListener";
12
- import { usePatchChildrenRef } from "../../hooks/usePatchChildrenRef";
13
- export var ClickPopper = function ClickPopper(_ref) {
14
- var getRef = _ref.getRef,
15
- content = _ref.content,
16
- children = _ref.children,
17
- onShownChange = _ref.onShownChange,
18
- _shown = _ref.shown,
19
- restProps = _objectWithoutProperties(_ref, _excluded);
20
-
21
- var _React$useState = React.useState(_shown || false),
22
- _React$useState2 = _slicedToArray(_React$useState, 2),
23
- computedShown = _React$useState2[0],
24
- setComputedShown = _React$useState2[1];
25
-
26
- var _React$useState3 = React.useState(null),
27
- _React$useState4 = _slicedToArray(_React$useState3, 2),
28
- dropdownNode = _React$useState4[0],
29
- setPopperNode = _React$useState4[1];
30
-
31
- var shown = typeof _shown === "boolean" ? _shown : computedShown;
32
-
33
- var _useDOM = useDOM(),
34
- document = _useDOM.document;
35
-
36
- var patchedPopperRef = useExternRef(setPopperNode, getRef);
37
-
38
- var _usePatchChildrenRef = usePatchChildrenRef(children),
39
- _usePatchChildrenRef2 = _slicedToArray(_usePatchChildrenRef, 2),
40
- childRef = _usePatchChildrenRef2[0],
41
- child = _usePatchChildrenRef2[1];
42
-
43
- var setShown = function setShown(value) {
44
- if (typeof _shown !== "boolean") {
45
- setComputedShown(value);
46
- }
47
-
48
- typeof onShownChange === "function" && onShownChange(value);
49
- };
50
-
51
- useGlobalEventListener(document, "click", function (e) {
52
- var _childRef$current;
53
-
54
- if (dropdownNode && !((_childRef$current = childRef.current) !== null && _childRef$current !== void 0 && _childRef$current.contains(e.target)) && !dropdownNode.contains(e.target)) {
55
- setShown(false);
56
- }
57
- });
58
- var targetClickEvent = useEventListener("click", function () {
59
- setShown(!shown);
60
- });
61
- React.useEffect(function () {
62
- if (childRef.current !== null) {
63
- targetClickEvent.add(childRef.current);
64
- }
65
- }, [childRef, targetClickEvent]);
66
- return createScopedElement(React.Fragment, null, child, shown && createScopedElement(Popper, _extends({}, restProps, {
67
- targetRef: childRef,
68
- getRef: patchedPopperRef
69
- }), content));
70
- };
71
- //# sourceMappingURL=ClickPopper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/components/ClickPopper/ClickPopper.tsx"],"names":["React","useDOM","Popper","useExternRef","useEventListener","useGlobalEventListener","usePatchChildrenRef","ClickPopper","getRef","content","children","onShownChange","_shown","shown","restProps","useState","computedShown","setComputedShown","dropdownNode","setPopperNode","document","patchedPopperRef","childRef","child","setShown","value","e","current","contains","target","targetClickEvent","useEffect","add"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,MAAT;AACA,SAASC,MAAT;AACA,SAASC,YAAT;AACA,SAASC,gBAAT;AACA,SAASC,sBAAT;AACA,SAASC,mBAAT;AAqBA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,OAOH;AAAA,MANtBC,MAMsB,QANtBA,MAMsB;AAAA,MALtBC,OAKsB,QALtBA,OAKsB;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,aAGsB,QAHtBA,aAGsB;AAAA,MAFfC,MAEe,QAFtBC,KAEsB;AAAA,MADnBC,SACmB;;AACtB,wBAA0Cd,KAAK,CAACe,QAAN,CAAeH,MAAM,IAAI,KAAzB,CAA1C;AAAA;AAAA,MAAOI,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,yBAAsCjB,KAAK,CAACe,QAAN,CACpC,IADoC,CAAtC;AAAA;AAAA,MAAOG,YAAP;AAAA,MAAqBC,aAArB;;AAIA,MAAMN,KAAK,GAAG,OAAOD,MAAP,KAAkB,SAAlB,GAA8BA,MAA9B,GAAuCI,aAArD;;AAEA,gBAAqBf,MAAM,EAA3B;AAAA,MAAQmB,QAAR,WAAQA,QAAR;;AAEA,MAAMC,gBAAgB,GAAGlB,YAAY,CAAiBgB,aAAjB,EAAgCX,MAAhC,CAArC;;AAEA,6BAA0BF,mBAAmB,CAACI,QAAD,CAA7C;AAAA;AAAA,MAAOY,QAAP;AAAA,MAAiBC,KAAjB;;AAEA,MAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAoB;AACnC,QAAI,OAAOb,MAAP,KAAkB,SAAtB,EAAiC;AAC/BK,MAAAA,gBAAgB,CAACQ,KAAD,CAAhB;AACD;;AACD,WAAOd,aAAP,KAAyB,UAAzB,IAAuCA,aAAa,CAACc,KAAD,CAApD;AACD,GALD;;AAOApB,EAAAA,sBAAsB,CAACe,QAAD,EAAW,OAAX,EAAoB,UAACM,CAAD,EAAmB;AAAA;;AAC3D,QACER,YAAY,IACZ,uBAACI,QAAQ,CAACK,OAAV,8CAAC,kBAAkBC,QAAlB,CAA2BF,CAAC,CAACG,MAA7B,CAAD,CADA,IAEA,CAACX,YAAY,CAACU,QAAb,CAAsBF,CAAC,CAACG,MAAxB,CAHH,EAIE;AACAL,MAAAA,QAAQ,CAAC,KAAD,CAAR;AACD;AACF,GARqB,CAAtB;AAUA,MAAMM,gBAAgB,GAAG1B,gBAAgB,CAAC,OAAD,EAAU,YAAM;AACvDoB,IAAAA,QAAQ,CAAC,CAACX,KAAF,CAAR;AACD,GAFwC,CAAzC;AAIAb,EAAAA,KAAK,CAAC+B,SAAN,CAAgB,YAAM;AACpB,QAAIT,QAAQ,CAACK,OAAT,KAAqB,IAAzB,EAA+B;AAC7BG,MAAAA,gBAAgB,CAACE,GAAjB,CAAqBV,QAAQ,CAACK,OAA9B;AACD;AACF,GAJD,EAIG,CAACL,QAAD,EAAWQ,gBAAX,CAJH;AAMA,SACE,oBAAC,KAAD,CAAO,QAAP,QACGP,KADH,EAEGV,KAAK,IACJ,oBAAC,MAAD,eAAYC,SAAZ;AAAuB,IAAA,SAAS,EAAEQ,QAAlC;AAA4C,IAAA,MAAM,EAAED;AAApD,MACGZ,OADH,CAHJ,CADF;AAUD,CA1DM","sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { Popper, PopperCommonProps } from \"../Popper/Popper\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { usePatchChildrenRef } from \"../../hooks/usePatchChildrenRef\";\n\nexport interface ClickPopperProps extends PopperCommonProps {\n /**\n * Содержимое `ClickPopper`\n */\n content?: React.ReactNode;\n /**\n * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости тултипа\n */\n onShownChange?: (shown: boolean) => void;\n /**\n * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента\n */\n children?: React.ReactElement;\n}\n\nexport const ClickPopper = ({\n getRef,\n content,\n children,\n onShownChange,\n shown: _shown,\n ...restProps\n}: ClickPopperProps) => {\n const [computedShown, setComputedShown] = React.useState(_shown || false);\n const [dropdownNode, setPopperNode] = React.useState<HTMLElement | null>(\n null\n );\n\n const shown = typeof _shown === \"boolean\" ? _shown : computedShown;\n\n const { document } = useDOM();\n\n const patchedPopperRef = useExternRef<HTMLDivElement>(setPopperNode, getRef);\n\n const [childRef, child] = usePatchChildrenRef(children);\n\n const setShown = (value: boolean) => {\n if (typeof _shown !== \"boolean\") {\n setComputedShown(value);\n }\n typeof onShownChange === \"function\" && onShownChange(value);\n };\n\n useGlobalEventListener(document, \"click\", (e: MouseEvent) => {\n if (\n dropdownNode &&\n !childRef.current?.contains(e.target as Node) &&\n !dropdownNode.contains(e.target as Node)\n ) {\n setShown(false);\n }\n });\n\n const targetClickEvent = useEventListener(\"click\", () => {\n setShown(!shown);\n });\n\n React.useEffect(() => {\n if (childRef.current !== null) {\n targetClickEvent.add(childRef.current);\n }\n }, [childRef, targetClickEvent]);\n\n return (\n <React.Fragment>\n {child}\n {shown && (\n <Popper {...restProps} targetRef={childRef} getRef={patchedPopperRef}>\n {content}\n </Popper>\n )}\n </React.Fragment>\n );\n};\n"],"file":"ClickPopper.js"}