@vkontakte/vkui 4.35.3 → 4.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +21605 -18307
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  6. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  7. package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  8. package/.cache/ts/src/components/Chip/Chip.d.ts +12 -5
  9. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +5 -26
  10. package/.cache/ts/src/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  11. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  12. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  13. package/.cache/ts/src/components/DateInput/DateInput.d.ts +4 -2
  14. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  15. package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  16. package/.cache/ts/src/components/FormField/FormField.d.ts +2 -1
  17. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  18. package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +1 -0
  19. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  20. package/.cache/ts/src/components/List/List.d.ts +2 -1
  21. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +13 -1
  22. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -2
  23. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  24. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  25. package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -2
  26. package/.cache/ts/src/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  27. package/{dist/cssm/components/ChipsSelect → .cache/ts/src/hooks}/useChipsSelect.d.ts +4 -4
  28. package/.cache/ts/src/index.d.ts +3 -0
  29. package/.cache/ts/src/tokenized/index.d.ts +56 -0
  30. package/README.md +3 -2
  31. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -4
  32. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  33. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +24 -0
  34. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  35. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +10 -8
  36. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  37. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -5
  38. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  39. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -39
  40. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  41. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +2 -3
  42. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  43. package/dist/cjs/components/Alert/Alert.js +11 -12
  44. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  45. package/dist/cjs/components/AppRoot/AppRoot.js +2 -5
  46. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  47. package/dist/cjs/components/Avatar/Avatar.js +4 -17
  48. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  49. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  50. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -21
  51. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  52. package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
  53. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  54. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  55. package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
  56. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  57. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
  58. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  59. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +44 -27
  60. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  61. package/dist/cjs/components/CustomSelect/CustomSelect.js +32 -31
  62. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  63. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  64. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  65. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
  66. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  67. package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
  68. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  69. package/dist/cjs/components/FormField/FormField.js +4 -2
  70. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  71. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
  72. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  73. package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
  74. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  75. package/dist/cjs/components/Header/Header.js +3 -11
  76. package/dist/cjs/components/Header/Header.js.map +1 -1
  77. package/dist/cjs/components/IconButton/IconButton.js +4 -3
  78. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  79. package/dist/cjs/components/Input/Input.js +4 -2
  80. package/dist/cjs/components/Input/Input.js.map +1 -1
  81. package/dist/cjs/components/List/List.js.map +1 -1
  82. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
  83. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  84. package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
  85. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  86. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
  87. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  88. package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
  89. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  90. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
  91. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  92. package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
  93. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  94. package/dist/cjs/components/Panel/Panel.js +4 -10
  95. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  96. package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
  97. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  98. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
  99. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  100. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  101. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  102. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  103. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  104. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -2
  105. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  106. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
  107. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  108. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  109. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  110. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  111. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  112. package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -6
  113. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  114. package/dist/cjs/components/Search/Search.js +7 -9
  115. package/dist/cjs/components/Search/Search.js.map +1 -1
  116. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
  117. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  118. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
  119. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  120. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
  121. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  122. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
  123. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  124. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -5
  125. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  126. package/dist/cjs/components/Tappable/Tappable.js +8 -16
  127. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  128. package/dist/cjs/components/Textarea/Textarea.js +4 -2
  129. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  130. package/dist/cjs/components/UsersStack/UsersStack.js +71 -34
  131. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  132. package/dist/cjs/components/View/ViewInfinite.js +1 -10
  133. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  134. package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
  135. package/dist/cjs/hooks/useChipsInput.js.map +1 -0
  136. package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  137. package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
  138. package/dist/cjs/index.js +8 -0
  139. package/dist/cjs/index.js.map +1 -1
  140. package/dist/cjs/lib/animate.js +2 -2
  141. package/dist/cjs/lib/animate.js.map +1 -1
  142. package/dist/cjs/lib/testing.js +2 -2
  143. package/dist/cjs/lib/testing.js.map +1 -1
  144. package/dist/cjs/lib/touch.js +2 -2
  145. package/dist/cjs/lib/touch.js.map +1 -1
  146. package/dist/cjs/tokenized/index.js +232 -0
  147. package/dist/cjs/tokenized/index.js.map +1 -1
  148. package/dist/components/ActionSheet/ActionSheet.js +4 -4
  149. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  150. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  151. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  152. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  153. package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
  154. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  155. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  156. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  157. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  158. package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
  159. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  160. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  161. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  162. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  163. package/dist/components/Alert/Alert.js +12 -12
  164. package/dist/components/Alert/Alert.js.map +1 -1
  165. package/dist/components/AppRoot/AppRoot.js +2 -5
  166. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  167. package/dist/components/Avatar/Avatar.js +4 -17
  168. package/dist/components/Avatar/Avatar.js.map +1 -1
  169. package/dist/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  170. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  171. package/dist/components/CalendarDay/CalendarDay.js +4 -21
  172. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  173. package/dist/components/CardScroll/CardScroll.js +1 -3
  174. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  175. package/dist/components/Chip/Chip.d.ts +12 -5
  176. package/dist/components/Chip/Chip.js.map +1 -1
  177. package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
  178. package/dist/components/ChipsInput/ChipsInput.js +14 -183
  179. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  180. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  181. package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
  182. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  183. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  184. package/dist/components/ChipsSelect/ChipsSelect.js +42 -26
  185. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  186. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  187. package/dist/components/CustomSelect/CustomSelect.js +32 -31
  188. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  189. package/dist/components/DateInput/DateInput.d.ts +4 -2
  190. package/dist/components/DateInput/DateInput.js +4 -2
  191. package/dist/components/DateInput/DateInput.js.map +1 -1
  192. package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  193. package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
  194. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  195. package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  196. package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
  197. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  198. package/dist/components/FormField/FormField.d.ts +2 -1
  199. package/dist/components/FormField/FormField.js +4 -2
  200. package/dist/components/FormField/FormField.js.map +1 -1
  201. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  202. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  203. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  204. package/dist/components/FormStatus/FormStatus.d.ts +1 -0
  205. package/dist/components/FormStatus/FormStatus.js +4 -4
  206. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  207. package/dist/components/Header/Header.js +3 -10
  208. package/dist/components/Header/Header.js.map +1 -1
  209. package/dist/components/IconButton/IconButton.js +4 -3
  210. package/dist/components/IconButton/IconButton.js.map +1 -1
  211. package/dist/components/Input/Input.d.ts +1 -1
  212. package/dist/components/Input/Input.js +4 -2
  213. package/dist/components/Input/Input.js.map +1 -1
  214. package/dist/components/List/List.d.ts +2 -1
  215. package/dist/components/List/List.js.map +1 -1
  216. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
  217. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  218. package/dist/components/ModalPage/ModalPage.d.ts +13 -1
  219. package/dist/components/ModalPage/ModalPage.js +12 -10
  220. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  221. package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
  222. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  223. package/dist/components/ModalRoot/ModalRoot.js +4 -18
  224. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  225. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
  226. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  227. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
  228. package/dist/components/NativeSelect/NativeSelect.js +4 -2
  229. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  230. package/dist/components/Panel/Panel.js +4 -8
  231. package/dist/components/Panel/Panel.js.map +1 -1
  232. package/dist/components/PanelHeader/PanelHeader.js +2 -11
  233. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  234. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  235. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  236. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  237. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  238. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  239. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  240. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  241. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  242. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  243. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  244. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  245. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  246. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  247. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  248. package/dist/components/PromoBanner/PromoBanner.js +1 -4
  249. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  250. package/dist/components/Search/Search.js +6 -8
  251. package/dist/components/Search/Search.js.map +1 -1
  252. package/dist/components/Select/Select.d.ts +1 -1
  253. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  254. package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
  255. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  256. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  257. package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
  258. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  259. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
  260. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  261. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
  262. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  263. package/dist/components/SubnavigationButton/SubnavigationButton.js +2 -5
  264. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  265. package/dist/components/Tappable/Tappable.js +3 -10
  266. package/dist/components/Tappable/Tappable.js.map +1 -1
  267. package/dist/components/Textarea/Textarea.d.ts +3 -2
  268. package/dist/components/Textarea/Textarea.js +4 -2
  269. package/dist/components/Textarea/Textarea.js.map +1 -1
  270. package/dist/components/UsersStack/UsersStack.js +69 -28
  271. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  272. package/dist/components/View/ViewInfinite.js +1 -10
  273. package/dist/components/View/ViewInfinite.js.map +1 -1
  274. package/dist/components.css +93 -15
  275. package/dist/components.css.map +1 -1
  276. package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
  277. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
  278. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  279. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  280. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  281. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  282. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
  283. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  284. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  285. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  286. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
  287. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  288. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
  289. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  290. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  291. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  292. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  293. package/dist/cssm/components/Alert/Alert.css +7 -1
  294. package/dist/cssm/components/Alert/Alert.js +12 -12
  295. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  296. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  297. package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
  298. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  299. package/dist/cssm/components/Avatar/Avatar.js +4 -17
  300. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  301. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  302. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  303. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -21
  304. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  305. package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
  306. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  307. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  308. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  309. package/dist/cssm/components/Chip/Chip.css +1 -1
  310. package/dist/cssm/components/Chip/Chip.d.ts +12 -5
  311. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  312. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  313. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
  314. package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
  315. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  316. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
  317. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  318. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
  319. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  320. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  321. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  322. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +42 -26
  323. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  324. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  325. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  326. package/dist/cssm/components/CustomSelect/CustomSelect.js +32 -31
  327. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  328. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  329. package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
  330. package/dist/cssm/components/DateInput/DateInput.js +4 -2
  331. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  332. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  333. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  334. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
  335. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  336. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  337. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
  338. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  339. package/dist/cssm/components/FormField/FormField.css +4 -4
  340. package/dist/cssm/components/FormField/FormField.d.ts +2 -1
  341. package/dist/cssm/components/FormField/FormField.js +4 -2
  342. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  343. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  344. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  345. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  346. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  347. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  348. package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
  349. package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
  350. package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
  351. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  352. package/dist/cssm/components/Header/Header.css +1 -1
  353. package/dist/cssm/components/Header/Header.js +3 -10
  354. package/dist/cssm/components/Header/Header.js.map +1 -1
  355. package/dist/cssm/components/IconButton/IconButton.js +4 -3
  356. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  357. package/dist/cssm/components/Input/Input.css +1 -1
  358. package/dist/cssm/components/Input/Input.d.ts +1 -1
  359. package/dist/cssm/components/Input/Input.js +4 -2
  360. package/dist/cssm/components/Input/Input.js.map +1 -1
  361. package/dist/cssm/components/List/List.d.ts +2 -1
  362. package/dist/cssm/components/List/List.js +1 -1
  363. package/dist/cssm/components/List/List.js.map +1 -1
  364. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  365. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
  366. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  367. package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
  368. package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
  369. package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
  370. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  371. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  372. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  373. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  374. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
  375. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  376. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
  377. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  378. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
  379. package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
  380. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  381. package/dist/cssm/components/Panel/Panel.css +19 -1
  382. package/dist/cssm/components/Panel/Panel.js +4 -8
  383. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  384. package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
  385. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
  386. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  387. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  388. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  389. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  390. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  391. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  392. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  393. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  394. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
  395. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  396. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  397. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  398. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  399. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  400. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  401. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  402. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  403. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  404. package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
  405. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -4
  406. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  407. package/dist/cssm/components/Search/Search.css +27 -1
  408. package/dist/cssm/components/Search/Search.js +6 -8
  409. package/dist/cssm/components/Search/Search.js.map +1 -1
  410. package/dist/cssm/components/Select/Select.css +1 -1
  411. package/dist/cssm/components/Select/Select.d.ts +1 -1
  412. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  413. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
  414. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  415. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
  416. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
  417. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  418. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
  419. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  420. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  421. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
  422. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  423. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  424. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +2 -5
  425. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  426. package/dist/cssm/components/TabsItem/TabsItem.css +1 -1
  427. package/dist/cssm/components/Tappable/Tappable.js +3 -10
  428. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  429. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  430. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
  431. package/dist/cssm/components/Textarea/Textarea.js +4 -2
  432. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  433. package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
  434. package/dist/cssm/components/UsersStack/UsersStack.js +69 -28
  435. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  436. package/dist/cssm/components/View/ViewInfinite.js +1 -10
  437. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  438. package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  439. package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
  440. package/dist/cssm/hooks/useChipsInput.js.map +1 -0
  441. package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
  442. package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
  443. package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
  444. package/dist/cssm/index.d.ts +3 -0
  445. package/dist/cssm/index.js +1 -0
  446. package/dist/cssm/index.js.map +1 -1
  447. package/dist/cssm/lib/animate.js +1 -1
  448. package/dist/cssm/lib/animate.js.map +1 -1
  449. package/dist/cssm/lib/testing.js +1 -1
  450. package/dist/cssm/lib/testing.js.map +1 -1
  451. package/dist/cssm/lib/touch.js +1 -1
  452. package/dist/cssm/lib/touch.js.map +1 -1
  453. package/dist/cssm/styles/components.css +93 -15
  454. package/dist/cssm/styles/themes.css +1 -1
  455. package/dist/cssm/styles/unstable.css +1 -1
  456. package/dist/cssm/tokenized/index.d.ts +56 -0
  457. package/dist/cssm/tokenized/index.js +29 -0
  458. package/dist/cssm/tokenized/index.js.map +1 -1
  459. package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  460. package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
  461. package/dist/hooks/useChipsInput.js.map +1 -0
  462. package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
  463. package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  464. package/dist/hooks/useChipsSelect.js.map +1 -0
  465. package/dist/index.d.ts +3 -0
  466. package/dist/index.js +1 -0
  467. package/dist/index.js.map +1 -1
  468. package/dist/lib/animate.js +1 -1
  469. package/dist/lib/animate.js.map +1 -1
  470. package/dist/lib/testing.js +1 -1
  471. package/dist/lib/testing.js.map +1 -1
  472. package/dist/lib/touch.js +1 -1
  473. package/dist/lib/touch.js.map +1 -1
  474. package/dist/tokenized/index.d.ts +56 -0
  475. package/dist/tokenized/index.js +29 -0
  476. package/dist/tokenized/index.js.map +1 -1
  477. package/dist/unstable.css +1 -1
  478. package/dist/unstable.css.map +1 -1
  479. package/dist/vkui.css +94 -16
  480. package/dist/vkui.css.map +1 -1
  481. package/package.json +9 -9
  482. package/src/components/ActionSheet/ActionSheet.css +31 -59
  483. package/src/components/ActionSheet/ActionSheet.tsx +4 -7
  484. package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
  485. package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
  486. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
  487. package/src/components/ActionSheet/Readme.md +6 -30
  488. package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
  489. package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
  490. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
  491. package/src/components/Alert/Alert.css +79 -79
  492. package/src/components/Alert/Alert.tsx +14 -14
  493. package/src/components/Alert/Readme.md +83 -104
  494. package/src/components/AppRoot/AppRoot.css +2 -1
  495. package/src/components/AppRoot/AppRoot.tsx +1 -4
  496. package/src/components/Avatar/Avatar.tsx +15 -17
  497. package/src/components/Avatar/Readme.md +3 -3
  498. package/src/components/ButtonGroup/ButtonGroup.tsx +6 -3
  499. package/src/components/ButtonGroup/Readme.md +13 -11
  500. package/src/components/Calendar/Readme.md +3 -0
  501. package/src/components/CalendarDay/CalendarDay.tsx +21 -20
  502. package/src/components/CalendarRange/Readme.md +3 -0
  503. package/src/components/CardScroll/CardScroll.tsx +1 -2
  504. package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
  505. package/src/components/Cell/CellDragger/CellDragger.css +1 -1
  506. package/src/components/Chip/Chip.css +1 -0
  507. package/src/components/Chip/Chip.tsx +14 -2
  508. package/src/components/ChipsInput/ChipsInput.css +0 -71
  509. package/src/components/ChipsInput/ChipsInput.tsx +20 -220
  510. package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
  511. package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
  512. package/src/components/ChipsSelect/ChipsSelect.css +8 -0
  513. package/src/components/ChipsSelect/ChipsSelect.tsx +47 -39
  514. package/src/components/CustomSelect/CustomSelect.css +1 -0
  515. package/src/components/CustomSelect/CustomSelect.tsx +2 -3
  516. package/src/components/CustomSelect/Readme.md +8 -2
  517. package/src/components/DateInput/DateInput.css +1 -1
  518. package/src/components/DateInput/DateInput.tsx +6 -3
  519. package/src/components/DateInput/Readme.md +13 -0
  520. package/src/components/DateRangeInput/DateRangeInput.css +1 -1
  521. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
  522. package/src/components/DateRangeInput/Readme.md +13 -0
  523. package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
  524. package/src/components/Epic/Readme.md +10 -5
  525. package/src/components/FormField/FormField.css +58 -6
  526. package/src/components/FormField/FormField.tsx +3 -0
  527. package/src/components/FormItem/FormItem.css +5 -3
  528. package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
  529. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
  530. package/src/components/FormLayoutGroup/Readme.md +58 -48
  531. package/src/components/FormStatus/FormStatus.css +8 -5
  532. package/src/components/FormStatus/FormStatus.tsx +4 -8
  533. package/src/components/Gallery/Readme.md +64 -18
  534. package/src/components/Header/Header.css +8 -12
  535. package/src/components/Header/Header.tsx +9 -8
  536. package/src/components/HorizontalCell/Readme.md +1 -1
  537. package/src/components/IconButton/IconButton.tsx +2 -2
  538. package/src/components/Input/Input.css +1 -1
  539. package/src/components/Input/Input.tsx +2 -0
  540. package/src/components/List/List.tsx +3 -4
  541. package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
  542. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
  543. package/src/components/ModalDismissButton/Readme.md +1 -1
  544. package/src/components/ModalPage/ModalPage.css +69 -63
  545. package/src/components/ModalPage/ModalPage.tsx +24 -11
  546. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
  547. package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
  548. package/src/components/ModalRoot/ModalRoot.tsx +24 -24
  549. package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
  550. package/src/components/ModalRoot/Readme.md +8 -3
  551. package/src/components/NativeSelect/NativeSelect.tsx +5 -2
  552. package/src/components/Panel/Panel.css +52 -24
  553. package/src/components/Panel/Panel.tsx +7 -9
  554. package/src/components/PanelHeader/PanelHeader.css +20 -8
  555. package/src/components/PanelHeader/PanelHeader.tsx +11 -12
  556. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
  557. package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
  558. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
  559. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
  560. package/src/components/PanelHeaderContent/PanelHeaderContent.css +14 -26
  561. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +10 -3
  562. package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
  563. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
  564. package/src/components/PanelHeaderContext/Readme.md +85 -101
  565. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
  566. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
  567. package/src/components/PromoBanner/PromoBanner.css +10 -22
  568. package/src/components/PromoBanner/PromoBanner.tsx +1 -5
  569. package/src/components/RichTooltip/Readme.md +2 -2
  570. package/src/components/Search/Search.css +134 -48
  571. package/src/components/Search/Search.tsx +13 -8
  572. package/src/components/Select/Select.css +2 -2
  573. package/src/components/SelectMimicry/Readme.md +3 -3
  574. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
  575. package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
  576. package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
  577. package/src/components/Snackbar/Readme.md +12 -3
  578. package/src/components/SplitLayout/Readme.md +1 -1
  579. package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
  580. package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
  581. package/src/components/SubnavigationButton/SubnavigationButton.css +13 -0
  582. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -4
  583. package/src/components/TabbarItem/Readme.md +6 -1
  584. package/src/components/Tabs/Readme.md +10 -2
  585. package/src/components/TabsItem/TabsItem.css +1 -1
  586. package/src/components/Tappable/Tappable.tsx +9 -11
  587. package/src/components/Textarea/Textarea.css +1 -1
  588. package/src/components/Textarea/Textarea.tsx +5 -2
  589. package/src/components/Tooltip/Readme.md +2 -2
  590. package/src/components/Touch/Readme.md +4 -4
  591. package/src/components/UsersStack/UsersStack.css +42 -0
  592. package/src/components/UsersStack/UsersStack.tsx +71 -15
  593. package/src/components/View/ViewInfinite.tsx +14 -14
  594. package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
  595. package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
  596. package/src/index.ts +3 -0
  597. package/src/lib/animate.ts +1 -1
  598. package/src/lib/testing.ts +1 -1
  599. package/src/lib/touch.ts +1 -1
  600. package/src/styles/components.css +1 -0
  601. package/src/tokenized/index.ts +85 -0
  602. package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
  603. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
  604. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
  605. package/dist/cjs/components/UsersStack/masks.js +0 -29
  606. package/dist/cjs/components/UsersStack/masks.js.map +0 -1
  607. package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
  608. package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
  609. package/dist/components/UsersStack/masks.d.ts +0 -1
  610. package/dist/components/UsersStack/masks.js +0 -20
  611. package/dist/components/UsersStack/masks.js.map +0 -1
  612. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
  613. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
  614. package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
  615. package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
  616. package/dist/cssm/components/UsersStack/masks.js +0 -20
  617. package/dist/cssm/components/UsersStack/masks.js.map +0 -1
  618. package/src/components/DropdownIcon/DropdownIcon.css +0 -3
  619. package/src/components/UsersStack/masks.tsx +0 -69
@@ -1 +1,3 @@
1
- .vkuiActionSheet{overflow:hidden;position:relative}.vkuiActionSheet__header{color:#818c99;color:var(--text_secondary)}.vkuiActionSheet--ios{align-items:stretch;-webkit-animation:vkui-animation-actionsheet-intro .3s cubic-bezier(.36,.66,.04,1);animation:vkui-animation-actionsheet-intro .3s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-animation-actionsheet-intro .3s var(--ios-easing);animation:vkui-animation-actionsheet-intro .3s var(--ios-easing);box-sizing:border-box;display:flex;flex-direction:column;padding:10px;width:100%}.vkuiActionSheet--ios.vkuiActionSheet--closing{-webkit-transform:translateY(100%);transform:translateY(100%);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing)}.vkuiActionSheet--ios .vkuiActionSheet__header{border-radius:14px 14px 0 0;overflow:hidden;padding:15px 10px;position:relative;text-align:center}.vkuiActionSheet--ios .vkuiActionSheet__title{position:relative;z-index:2}.vkuiActionSheet--ios .vkuiActionSheet__title+.vkuiActionSheet__text{margin-top:9px}.vkuiActionSheet--ios .vkuiActionSheet__text{position:relative;z-index:2}.vkuiActionSheet--ios .vkuiActionSheet__header:before{background-color:#fff;background-color:var(--modal_card_background);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.vkuiActionSheet--android,.vkuiActionSheet--vkcom{align-items:stretch;-webkit-animation:vkui-animation-actionsheet-intro .2s cubic-bezier(.4,0,.2,1);animation:vkui-animation-actionsheet-intro .2s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-animation-actionsheet-intro .2s var(--android-easing);animation:vkui-animation-actionsheet-intro .2s var(--android-easing);background:#fff;background:var(--modal_card_background);border-radius:12px;box-shadow:0 8px 8px 0 rgba(0,0,0,.16),0 0 4px 0 rgba(0,0,0,.08);box-sizing:border-box;display:flex;flex-direction:column;margin:10px;padding:8px 0;width:calc(100% - 20px)}.vkuiActionSheet--android.vkuiActionSheet--closing{-webkit-transform:translateY(calc(100% + 20px));transform:translateY(calc(100% + 20px));transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:-webkit-transform .2s var(--android-easing);transition:transform .2s var(--android-easing);transition:transform .2s var(--android-easing),-webkit-transform .2s var(--android-easing)}.vkuiActionSheet--android .vkuiActionSheet__header,.vkuiActionSheet--vkcom .vkuiActionSheet__header{padding:16px 20px}.vkuiActionSheet--android .vkuiActionSheet__title+.vkuiActionSheet__text,.vkuiActionSheet--vkcom .vkuiActionSheet__title+.vkuiActionSheet__text{margin-top:8px}.vkuiActionSheet--desktop{-webkit-animation:none;animation:none;background:#fff;background:var(--modal_card_background);height:auto;margin:0;padding:0;width:auto}.vkuiActionSheet--desktop.vkuiActionSheet--sizeY-compact{padding-bottom:8px;padding-top:8px}.vkuiActionSheet--desktop.vkuiActionSheet--ios{border-radius:14px;box-shadow:0 0 96px rgba(0,0,0,.16),0 0 2px rgba(0,0,0,.12);padding:0}.vkuiActionSheet--desktop.vkuiActionSheet--android{border-radius:12px;box-shadow:0 8px 8px rgba(0,0,0,.16),0 0 4px rgba(0,0,0,.08);min-width:112px;padding:8px 0}.vkuiActionSheet--desktop.vkuiActionSheet--vkcom{border-radius:12px;box-shadow:0 0 2px rgba(0,0,0,.08),0 8px 24px rgba(0,0,0,.08)}.vkuiActionSheet--desktop.vkuiActionSheet--vkcom .vkuiActionSheet__header{padding:14px 20px}@-webkit-keyframes vkui-animation-actionsheet-intro{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes vkui-animation-actionsheet-intro{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}
1
+ .vkuiActionSheet{align-items:stretch;-webkit-animation:vkui-animation-actionsheet-intro .2s cubic-bezier(.4,0,.2,1);animation:vkui-animation-actionsheet-intro .2s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-animation-actionsheet-intro .2s var(--android-easing);animation:vkui-animation-actionsheet-intro .2s var(--android-easing);background:#fff;background:var(--modal_card_background,var(--vkui--color_background_modal));border-radius:12px;box-shadow:0 0 2px rgba(0,0,0,.08),0 4px 16px rgba(0,0,0,.08);box-shadow:var(--vkui--elevation3,0 0 2px rgba(0,0,0,.08),0 4px 16px rgba(0,0,0,.08));box-sizing:border-box;display:flex;flex-direction:column;margin:10px;overflow:hidden;padding:8px 0;position:relative;width:calc(100% - 20px)}.vkuiActionSheet__header{color:#818c99;color:var(--text_secondary,var(--vkui--color_text_subhead));padding:16px 20px}.vkuiActionSheet--closing{-webkit-transform:translateY(calc(100% + 20px));transform:translateY(calc(100% + 20px));transition:-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform .2s cubic-bezier(.4,0,.2,1),-webkit-transform .2s cubic-bezier(.4,0,.2,1);transition:-webkit-transform .2s var(--android-easing);transition:transform .2s var(--android-easing);transition:transform .2s var(--android-easing),-webkit-transform .2s var(--android-easing)}.vkuiActionSheet__title+.vkuiActionSheet__text{margin-top:8px}.vkuiActionSheet--ios{-webkit-animation:vkui-animation-actionsheet-intro .3s cubic-bezier(.36,.66,.04,1);animation:vkui-animation-actionsheet-intro .3s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-animation-actionsheet-intro .3s var(--ios-easing);animation:vkui-animation-actionsheet-intro .3s var(--ios-easing);background:transparent;margin:unset;padding:10px;width:100%}.vkuiActionSheet--ios.vkuiActionSheet--closing{-webkit-transform:translateY(100%);transform:translateY(100%);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing)}.vkuiActionSheet--ios .vkuiActionSheet__header{border-radius:14px 14px 0 0;overflow:hidden;position:relative;text-align:center}.vkuiActionSheet--ios .vkuiActionSheet__title{position:relative;z-index:2}.vkuiActionSheet--ios .vkuiActionSheet__title+.vkuiActionSheet__text{margin-top:9px}.vkuiActionSheet--ios .vkuiActionSheet__text{position:relative;z-index:2}.vkuiActionSheet--ios .vkuiActionSheet__header:before{background-color:#fff;background-color:var(
2
+ --modal_card_background,var(--vkui--color_background_modal)
3
+ );content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.vkuiActionSheet--sizeY-compact .vkuiActionSheet__header{padding:12px 20px}.vkuiActionSheet--desktop{-webkit-animation:none;animation:none;height:auto;margin:0;width:auto}.vkuiActionSheet--desktop.vkuiActionSheet--ios{border-radius:14px;padding:0}@-webkit-keyframes vkui-animation-actionsheet-intro{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes vkui-animation-actionsheet-intro{0%{-webkit-transform:translateY(100%);transform:translateY(100%)}to{-webkit-transform:translateY(0);transform:translateY(0)}}
@@ -10,7 +10,7 @@ import { ActionSheetDropdownDesktop } from "./ActionSheetDropdownDesktop";
10
10
  import { ActionSheetDropdown } from "./ActionSheetDropdown";
11
11
  import { hasReactNode, noop } from "../../lib/utils";
12
12
  import { ActionSheetContext } from "./ActionSheetContext";
13
- import { Caption } from "../Typography/Caption/Caption";
13
+ import { Footnote } from "../Typography/Footnote/Footnote";
14
14
  import { usePlatform } from "../../hooks/usePlatform";
15
15
  import { useTimeout } from "../../hooks/useTimeout";
16
16
  import { useAdaptivityIsDesktop } from "../../hooks/useAdaptivity";
@@ -110,10 +110,10 @@ export var ActionSheet = function ActionSheet(_ref) {
110
110
  style: isDesktop ? style : undefined
111
111
  }), (hasReactNode(header) || hasReactNode(text)) && createScopedElement("header", {
112
112
  vkuiClass: "ActionSheet__header"
113
- }, hasReactNode(header) && createScopedElement(Caption, {
114
- weight: platform === IOS ? "1" : "2",
113
+ }, hasReactNode(header) && createScopedElement(Footnote, {
114
+ weight: "2",
115
115
  vkuiClass: "ActionSheet__title"
116
- }, header), hasReactNode(text) && createScopedElement(Caption, {
116
+ }, header), hasReactNode(text) && createScopedElement(Footnote, {
117
117
  vkuiClass: "ActionSheet__text"
118
118
  }, text)), children, platform === IOS && !isDesktop && iosCloseItem));
119
119
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheet.tsx"],"names":["React","PopoutWrapper","IOS","ActionSheetDropdownDesktop","ActionSheetDropdown","hasReactNode","noop","ActionSheetContext","Caption","usePlatform","useTimeout","useAdaptivityIsDesktop","useObjectMemo","warnOnce","useScrollLock","warn","ActionSheet","children","className","header","text","style","iosCloseItem","popupDirection","restProps","platform","useState","closing","setClosing","onClose","_action","useRef","afterClose","current","process","env","NODE_ENV","isDesktop","timeout","fallbackTransitionFinish","useEffect","set","clear","onItemClick","useCallback","action","immediateAction","autoclose","event","persist","contextValue","DropdownComponent","actionSheet","undefined"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,aAAT;AACA,SAASC,GAAT;AACA,SAASC,0BAAT;AACA,SAASC,mBAAT;AACA,SAASC,YAAT,EAAuBC,IAAvB;AACA,SAASC,kBAAT;AACA,SAASC,OAAT;AACA,SAASC,WAAT;AACA,SAASC,UAAT;AACA,SAASC,sBAAT;AACA,SAASC,aAAT;AACA,SAASC,QAAT;AAEA,SAASC,aAAT;AACA;AAyBA,IAAMC,IAAI,GAAGF,QAAQ,CAAC,aAAD,CAArB;AAEA;AACA;AACA;;AACA,OAAO,IAAMG,WAAW,GAAG,SAAdA,WAAc,OASH;AAAA,MARtBC,QAQsB,QARtBA,QAQsB;AAAA,MAPtBC,SAOsB,QAPtBA,SAOsB;AAAA,MANtBC,MAMsB,QANtBA,MAMsB;AAAA,MALtBC,IAKsB,QALtBA,IAKsB;AAAA,MAJtBC,KAIsB,QAJtBA,KAIsB;AAAA,MAHtBC,YAGsB,QAHtBA,YAGsB;AAAA,iCAFtBC,cAEsB;AAAA,MAFtBA,cAEsB,oCAFL,QAEK;AAAA,MADnBC,SACmB;;AACtB,MAAMC,QAAQ,GAAGhB,WAAW,EAA5B;;AACA,wBAA8BT,KAAK,CAAC0B,QAAN,CAAe,KAAf,CAA9B;AAAA;AAAA,MAAOC,OAAP;AAAA,MAAgBC,UAAhB;;AACA,MAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,WAAMD,UAAU,CAAC,IAAD,CAAhB;AAAA,GAAhB;;AACA,MAAME,OAAO,GAAG9B,KAAK,CAAC+B,MAAN,CAAazB,IAAb,CAAhB;;AAEA,MAAM0B,UAAU,GAAG,SAAbA,UAAa,GAAM;AAAA;;AACvB,0BAAAR,SAAS,CAACK,OAAV,+EAAAL,SAAS;;AACTM,IAAAA,OAAO,CAACG,OAAR;;AACAH,IAAAA,OAAO,CAACG,OAAR,GAAkB3B,IAAlB;AACD,GAJD;;AAMA,MAAI4B,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,CAACZ,SAAS,CAACK,OAAzD,EAAkE;AAChEd,IAAAA,IAAI,4SAEF,OAFE,CAAJ;AAID;;AAED,MAAMsB,SAAS,GAAG1B,sBAAsB,EAAxC;AAEAG,EAAAA,aAAa,CAAC,CAACuB,SAAF,CAAb;AAEA,MAAIC,OAAO,GAAGb,QAAQ,KAAKvB,GAAb,GAAmB,GAAnB,GAAyB,GAAvC;;AAEA,MAAImC,SAAJ,EAAe;AACbC,IAAAA,OAAO,GAAG,CAAV;AACD;;AAED,MAAMC,wBAAwB,GAAG7B,UAAU,CAACsB,UAAD,EAAaM,OAAb,CAA3C;AACAtC,EAAAA,KAAK,CAACwC,SAAN,CAAgB,YAAM;AACpB,QAAIb,OAAJ,EAAa;AACXY,MAAAA,wBAAwB,CAACE,GAAzB;AACD,KAFD,MAEO;AACLF,MAAAA,wBAAwB,CAACG,KAAzB;AACD;AACF,GAND,EAMG,CAACf,OAAD,EAAUY,wBAAV,CANH;AAQA,MAAMI,WAAW,GAAG3C,KAAK,CAAC4C,WAAN,CAClB,UAACC,MAAD,EAASC,eAAT,EAA0BC,SAA1B;AAAA,WAAwC,UAACC,KAAD,EAAW;AACjDA,MAAAA,KAAK,CAACC,OAAN;AACAH,MAAAA,eAAe,IAAIA,eAAe,CAACE,KAAD,CAAlC;;AACA,UAAID,SAAJ,EAAe;AACbjB,QAAAA,OAAO,CAACG,OAAR,GAAkB;AAAA,iBAAMY,MAAM,IAAIA,MAAM,CAACG,KAAD,CAAtB;AAAA,SAAlB;;AACApB,QAAAA,UAAU,CAAC,IAAD,CAAV;AACD,OAHD,MAGO;AACLiB,QAAAA,MAAM,IAAIA,MAAM,CAACG,KAAD,CAAhB;AACD;AACF,KATD;AAAA,GADkB,EAWlB,EAXkB,CAApB;AAaA,MAAME,YAAY,GAAGtC,aAAa,CAAC;AAAE+B,IAAAA,WAAW,EAAXA,WAAF;AAAeN,IAAAA,SAAS,EAATA;AAAf,GAAD,CAAlC;AAEA,MAAMc,iBAAiB,GAAGd,SAAS,GAC/BlC,0BAD+B,GAE/BC,mBAFJ;AAIA,MAAMgD,WAAW,GACf,oBAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEF;AAApC,KACE,oBAAC,iBAAD;AACE,IAAA,OAAO,EAAEvB,OADX;AAEE,IAAA,OAAO,EAAEW;AAFX,KAGOd,SAHP;AAIE,IAAA,cAAc,EAAED,cAJlB;AAKE,IAAA,OAAO,EAAEM,OALX;AAME,IAAA,SAAS,EAAEQ,SAAS,GAAGnB,SAAH,GAAemC,SANrC;AAOE,IAAA,KAAK,EAAEhB,SAAS,GAAGhB,KAAH,GAAWgC;AAP7B,MASG,CAAChD,YAAY,CAACc,MAAD,CAAZ,IAAwBd,YAAY,CAACe,IAAD,CAArC,KACC;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACGf,YAAY,CAACc,MAAD,CAAZ,IACC,oBAAC,OAAD;AACE,IAAA,MAAM,EAAEM,QAAQ,KAAKvB,GAAb,GAAmB,GAAnB,GAAyB,GADnC;AAEE,IAAA,SAAS,EAAC;AAFZ,KAIGiB,MAJH,CAFJ,EASGd,YAAY,CAACe,IAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAwCA,IAAxC,CAVJ,CAVJ,EAwBGH,QAxBH,EAyBGQ,QAAQ,KAAKvB,GAAb,IAAoB,CAACmC,SAArB,IAAkCf,YAzBrC,CADF,CADF;;AAgCA,MAAIe,SAAJ,EAAe;AACb,WAAOe,WAAP;AACD;;AAED,SACE,oBAAC,aAAD;AACE,IAAA,OAAO,EAAEzB,OADX;AAEE,IAAA,MAAM,EAAC,QAFT;AAGE,IAAA,SAAS,EAAET,SAHb;AAIE,IAAA,KAAK,EAAEG,KAJT;AAKE,IAAA,OAAO,EAAEQ,OALX;AAME,IAAA,OAAO,MANT;AAOE,IAAA,KAAK;AAPP,KASGuB,WATH,CADF;AAaD,CAnHM","sourcesContent":["import * as React from \"react\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { IOS } from \"../../lib/platform\";\nimport { ActionSheetDropdownDesktop } from \"./ActionSheetDropdownDesktop\";\nimport { ActionSheetDropdown } from \"./ActionSheetDropdown\";\nimport { hasReactNode, noop } from \"../../lib/utils\";\nimport { ActionSheetContext, ItemClickHandler } from \"./ActionSheetContext\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { useAdaptivityIsDesktop } from \"../../hooks/useAdaptivity\";\nimport { useObjectMemo } from \"../../hooks/useObjectMemo\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { SharedDropdownProps, PopupDirection, ToggleRef } from \"./types\";\nimport { useScrollLock } from \"../AppRoot/ScrollContext\";\nimport \"./ActionSheet.css\";\n\nexport interface ActionSheetProps extends React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи. В v5 будет обязательным.\n */\n onClose?: VoidFunction;\n /**\n * Элемент, рядом с которым вылезает попап на десктопе.\n * Лучше передавать RefObject c current.\n * В v5 будет обязательным.\n */\n toggleRef?: ToggleRef;\n /**\n * Направление на десктопе\n */\n popupDirection?: PopupDirection;\n /**\n * Только iOS. В v5 будет обязательным.\n */\n iosCloseItem?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"ActionSheet\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupDirection = \"bottom\",\n ...restProps\n}: ActionSheetProps) => {\n const platform = usePlatform();\n const [closing, setClosing] = React.useState(false);\n const onClose = () => setClosing(true);\n const _action = React.useRef(noop);\n\n const afterClose = () => {\n restProps.onClose?.();\n _action.current();\n _action.current = noop;\n };\n\n if (process.env.NODE_ENV === \"development\" && !restProps.onClose) {\n warn(\n `Без свойства \"onClose\" нельзя закрыть ActionSheet по клику вне компонента`,\n \"error\"\n );\n }\n\n const isDesktop = useAdaptivityIsDesktop();\n\n useScrollLock(!isDesktop);\n\n let timeout = platform === IOS ? 300 : 200;\n\n if (isDesktop) {\n timeout = 0;\n }\n\n const fallbackTransitionFinish = useTimeout(afterClose, timeout);\n React.useEffect(() => {\n if (closing) {\n fallbackTransitionFinish.set();\n } else {\n fallbackTransitionFinish.clear();\n }\n }, [closing, fallbackTransitionFinish]);\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n (action, immediateAction, autoclose) => (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoclose) {\n _action.current = () => action && action(event);\n setClosing(true);\n } else {\n action && action(event);\n }\n },\n []\n );\n const contextValue = useObjectMemo({ onItemClick, isDesktop });\n\n const DropdownComponent = isDesktop\n ? ActionSheetDropdownDesktop\n : ActionSheetDropdown;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={closing}\n timeout={timeout}\n {...(restProps as Omit<SharedDropdownProps, \"closing\">)}\n popupDirection={popupDirection}\n onClose={onClose}\n className={isDesktop ? className : undefined}\n style={isDesktop ? style : undefined}\n >\n {(hasReactNode(header) || hasReactNode(text)) && (\n <header vkuiClass=\"ActionSheet__header\">\n {hasReactNode(header) && (\n <Caption\n weight={platform === IOS ? \"1\" : \"2\"}\n vkuiClass=\"ActionSheet__title\"\n >\n {header}\n </Caption>\n )}\n {hasReactNode(text) && (\n <Caption vkuiClass=\"ActionSheet__text\">{text}</Caption>\n )}\n </header>\n )}\n {children}\n {platform === IOS && !isDesktop && iosCloseItem}\n </DropdownComponent>\n </ActionSheetContext.Provider>\n );\n\n if (isDesktop) {\n return actionSheet;\n }\n\n return (\n <PopoutWrapper\n closing={closing}\n alignY=\"bottom\"\n className={className}\n style={style}\n onClick={onClose}\n hasMask\n fixed\n >\n {actionSheet}\n </PopoutWrapper>\n );\n};\n"],"file":"ActionSheet.js"}
1
+ {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheet.tsx"],"names":["React","PopoutWrapper","IOS","ActionSheetDropdownDesktop","ActionSheetDropdown","hasReactNode","noop","ActionSheetContext","Footnote","usePlatform","useTimeout","useAdaptivityIsDesktop","useObjectMemo","warnOnce","useScrollLock","warn","ActionSheet","children","className","header","text","style","iosCloseItem","popupDirection","restProps","platform","useState","closing","setClosing","onClose","_action","useRef","afterClose","current","process","env","NODE_ENV","isDesktop","timeout","fallbackTransitionFinish","useEffect","set","clear","onItemClick","useCallback","action","immediateAction","autoclose","event","persist","contextValue","DropdownComponent","actionSheet","undefined"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { IOS } from \"../../lib/platform\";\nimport { ActionSheetDropdownDesktop } from \"./ActionSheetDropdownDesktop\";\nimport { ActionSheetDropdown } from \"./ActionSheetDropdown\";\nimport { hasReactNode, noop } from \"../../lib/utils\";\nimport { ActionSheetContext, ItemClickHandler } from \"./ActionSheetContext\";\nimport { Footnote } from \"../Typography/Footnote/Footnote\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { useAdaptivityIsDesktop } from \"../../hooks/useAdaptivity\";\nimport { useObjectMemo } from \"../../hooks/useObjectMemo\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { SharedDropdownProps, PopupDirection, ToggleRef } from \"./types\";\nimport { useScrollLock } from \"../AppRoot/ScrollContext\";\nimport \"./ActionSheet.css\";\n\nexport interface ActionSheetProps extends React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи. В v5 будет обязательным.\n */\n onClose?: VoidFunction;\n /**\n * Элемент, рядом с которым вылезает попап на десктопе.\n * Лучше передавать RefObject c current.\n * В v5 будет обязательным.\n */\n toggleRef?: ToggleRef;\n /**\n * Направление на десктопе\n */\n popupDirection?: PopupDirection;\n /**\n * Только iOS. В v5 будет обязательным.\n */\n iosCloseItem?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"ActionSheet\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupDirection = \"bottom\",\n ...restProps\n}: ActionSheetProps) => {\n const platform = usePlatform();\n const [closing, setClosing] = React.useState(false);\n const onClose = () => setClosing(true);\n const _action = React.useRef(noop);\n\n const afterClose = () => {\n restProps.onClose?.();\n _action.current();\n _action.current = noop;\n };\n\n if (process.env.NODE_ENV === \"development\" && !restProps.onClose) {\n warn(\n `Без свойства \"onClose\" нельзя закрыть ActionSheet по клику вне компонента`,\n \"error\"\n );\n }\n\n const isDesktop = useAdaptivityIsDesktop();\n\n useScrollLock(!isDesktop);\n\n let timeout = platform === IOS ? 300 : 200;\n\n if (isDesktop) {\n timeout = 0;\n }\n\n const fallbackTransitionFinish = useTimeout(afterClose, timeout);\n React.useEffect(() => {\n if (closing) {\n fallbackTransitionFinish.set();\n } else {\n fallbackTransitionFinish.clear();\n }\n }, [closing, fallbackTransitionFinish]);\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n (action, immediateAction, autoclose) => (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoclose) {\n _action.current = () => action && action(event);\n setClosing(true);\n } else {\n action && action(event);\n }\n },\n []\n );\n const contextValue = useObjectMemo({ onItemClick, isDesktop });\n\n const DropdownComponent = isDesktop\n ? ActionSheetDropdownDesktop\n : ActionSheetDropdown;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={closing}\n timeout={timeout}\n {...(restProps as Omit<SharedDropdownProps, \"closing\">)}\n popupDirection={popupDirection}\n onClose={onClose}\n className={isDesktop ? className : undefined}\n style={isDesktop ? style : undefined}\n >\n {(hasReactNode(header) || hasReactNode(text)) && (\n <header vkuiClass=\"ActionSheet__header\">\n {hasReactNode(header) && (\n <Footnote weight=\"2\" vkuiClass=\"ActionSheet__title\">\n {header}\n </Footnote>\n )}\n {hasReactNode(text) && (\n <Footnote vkuiClass=\"ActionSheet__text\">{text}</Footnote>\n )}\n </header>\n )}\n {children}\n {platform === IOS && !isDesktop && iosCloseItem}\n </DropdownComponent>\n </ActionSheetContext.Provider>\n );\n\n if (isDesktop) {\n return actionSheet;\n }\n\n return (\n <PopoutWrapper\n closing={closing}\n alignY=\"bottom\"\n className={className}\n style={style}\n onClick={onClose}\n hasMask\n fixed\n >\n {actionSheet}\n </PopoutWrapper>\n );\n};\n"],"file":"ActionSheet.js"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { ActionSheetItemProps } from "../ActionSheetItem/ActionSheetItem";
3
+ export declare const ActionSheetDefaultIosCloseItem: (props: ActionSheetItemProps) => JSX.Element;
@@ -0,0 +1,10 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import { createScopedElement } from "../../lib/jsxRuntime";
3
+ import { ActionSheetItem } from "../ActionSheetItem/ActionSheetItem";
4
+ export var ActionSheetDefaultIosCloseItem = function ActionSheetDefaultIosCloseItem(props) {
5
+ return createScopedElement(ActionSheetItem, _extends({
6
+ autoclose: true,
7
+ mode: "cancel"
8
+ }, props), "\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C");
9
+ };
10
+ //# sourceMappingURL=ActionSheetDefaultIosCloseItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx"],"names":["ActionSheetItem","ActionSheetDefaultIosCloseItem","props"],"mappings":";;AAAA,SACEA,eADF;AAKA,OAAO,IAAMC,8BAA8B,GAAG,SAAjCA,8BAAiC,CAACC,KAAD,EAAiC;AAC7E,SACE,oBAAC,eAAD;AAAiB,IAAA,SAAS,MAA1B;AAA2B,IAAA,IAAI,EAAC;AAAhC,KAA6CA,KAA7C,sDADF;AAKD,CANM","sourcesContent":["import {\n ActionSheetItem,\n ActionSheetItemProps,\n} from \"../ActionSheetItem/ActionSheetItem\";\n\nexport const ActionSheetDefaultIosCloseItem = (props: ActionSheetItemProps) => {\n return (\n <ActionSheetItem autoclose mode=\"cancel\" {...props}>\n Отменить\n </ActionSheetItem>\n );\n};\n"],"file":"ActionSheetDefaultIosCloseItem.js"}
@@ -2,9 +2,10 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  var _excluded = ["children", "closing", "toggleRef", "popupDirection"];
4
4
  import { createScopedElement } from "../../lib/jsxRuntime";
5
- import { getClassName } from "../../helpers/getClassName";
6
5
  import { classNames } from "../../lib/classNames";
6
+ import { Platform } from "../../lib/platform";
7
7
  import { usePlatform } from "../../hooks/usePlatform";
8
+ import { useAdaptivity } from "../../hooks/useAdaptivity";
8
9
  import { FocusTrap } from "../FocusTrap/FocusTrap";
9
10
  import "./ActionSheet.css";
10
11
 
@@ -19,14 +20,13 @@ export var ActionSheetDropdown = function ActionSheetDropdown(_ref) {
19
20
  popupDirection = _ref.popupDirection,
20
21
  restProps = _objectWithoutProperties(_ref, _excluded);
21
22
 
23
+ var _useAdaptivity = useAdaptivity(),
24
+ sizeY = _useAdaptivity.sizeY;
25
+
22
26
  var platform = usePlatform();
23
- var baseClaseName = getClassName("ActionSheet", platform);
24
27
  return createScopedElement(FocusTrap, _extends({}, restProps, {
25
- onClick: stopPropagation // eslint-disable-next-line vkui/no-object-expression-in-arguments
26
- ,
27
- vkuiClass: classNames(baseClaseName, {
28
- "ActionSheet--closing": closing
29
- })
28
+ onClick: stopPropagation,
29
+ vkuiClass: classNames("ActionSheet", platform === Platform.IOS && "ActionSheet--ios", closing && "ActionSheet--closing", "ActionSheet--sizeY-".concat(sizeY))
30
30
  }), children);
31
31
  };
32
32
  //# sourceMappingURL=ActionSheetDropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheetDropdown.tsx"],"names":["getClassName","classNames","usePlatform","FocusTrap","stopPropagation","e","ActionSheetDropdown","children","closing","toggleRef","popupDirection","restProps","platform","baseClaseName"],"mappings":";;;;AACA,SAASA,YAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AAEA,SAASC,SAAT;AACA;;AAEA,IAAMC,eAAwC,GAAG,SAA3CA,eAA2C,CAACC,CAAD;AAAA,SAAOA,CAAC,CAACD,eAAF,EAAP;AAAA,CAAjD;;AAEA,OAAO,IAAME,mBAAmB,GAAG,SAAtBA,mBAAsB,OAOR;AAAA,MANzBC,QAMyB,QANzBA,QAMyB;AAAA,MALzBC,OAKyB,QALzBA,OAKyB;AAAA,MAHzBC,SAGyB,QAHzBA,SAGyB;AAAA,MAFzBC,cAEyB,QAFzBA,cAEyB;AAAA,MADtBC,SACsB;;AACzB,MAAMC,QAAQ,GAAGV,WAAW,EAA5B;AACA,MAAMW,aAAa,GAAGb,YAAY,CAAC,aAAD,EAAgBY,QAAhB,CAAlC;AAEA,SACE,oBAAC,SAAD,eACMD,SADN;AAEE,IAAA,OAAO,EAAEP,eAFX,CAGE;AAHF;AAIE,IAAA,SAAS,EAAEH,UAAU,CAACY,aAAD,EAAgB;AACnC,8BAAwBL;AADW,KAAhB;AAJvB,MAQGD,QARH,CADF;AAYD,CAvBM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { SharedDropdownProps } from \"./types\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport \"./ActionSheet.css\";\n\nconst stopPropagation: React.MouseEventHandler = (e) => e.stopPropagation();\n\nexport const ActionSheetDropdown = ({\n children,\n closing,\n // these 2 props are only omitted - ActionSheetDesktop compat\n toggleRef,\n popupDirection,\n ...restProps\n}: SharedDropdownProps) => {\n const platform = usePlatform();\n const baseClaseName = getClassName(\"ActionSheet\", platform);\n\n return (\n <FocusTrap\n {...restProps}\n onClick={stopPropagation}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(baseClaseName, {\n \"ActionSheet--closing\": closing,\n })}\n >\n {children}\n </FocusTrap>\n );\n};\n"],"file":"ActionSheetDropdown.js"}
1
+ {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheetDropdown.tsx"],"names":["classNames","Platform","usePlatform","useAdaptivity","FocusTrap","stopPropagation","e","ActionSheetDropdown","children","closing","toggleRef","popupDirection","restProps","sizeY","platform","IOS"],"mappings":";;;;AACA,SAASA,UAAT;AACA,SAASC,QAAT;AACA,SAASC,WAAT;AACA,SAASC,aAAT;AAEA,SAASC,SAAT;AACA;;AAEA,IAAMC,eAAwC,GAAG,SAA3CA,eAA2C,CAACC,CAAD;AAAA,SAAOA,CAAC,CAACD,eAAF,EAAP;AAAA,CAAjD;;AAEA,OAAO,IAAME,mBAAmB,GAAG,SAAtBA,mBAAsB,OAOR;AAAA,MANzBC,QAMyB,QANzBA,QAMyB;AAAA,MALzBC,OAKyB,QALzBA,OAKyB;AAAA,MAHzBC,SAGyB,QAHzBA,SAGyB;AAAA,MAFzBC,cAEyB,QAFzBA,cAEyB;AAAA,MADtBC,SACsB;;AACzB,uBAAkBT,aAAa,EAA/B;AAAA,MAAQU,KAAR,kBAAQA,KAAR;;AACA,MAAMC,QAAQ,GAAGZ,WAAW,EAA5B;AAEA,SACE,oBAAC,SAAD,eACMU,SADN;AAEE,IAAA,OAAO,EAAEP,eAFX;AAGE,IAAA,SAAS,EAAEL,UAAU,CACnB,aADmB,EAEnBc,QAAQ,KAAKb,QAAQ,CAACc,GAAtB,IAA6B,kBAFV,EAGnBN,OAAO,IAAI,sBAHQ,+BAIGI,KAJH;AAHvB,MAUGL,QAVH,CADF;AAcD,CAzBM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Platform } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { SharedDropdownProps } from \"./types\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport \"./ActionSheet.css\";\n\nconst stopPropagation: React.MouseEventHandler = (e) => e.stopPropagation();\n\nexport const ActionSheetDropdown = ({\n children,\n closing,\n // these 2 props are only omitted - ActionSheetDesktop compat\n toggleRef,\n popupDirection,\n ...restProps\n}: SharedDropdownProps) => {\n const { sizeY } = useAdaptivity();\n const platform = usePlatform();\n\n return (\n <FocusTrap\n {...restProps}\n onClick={stopPropagation}\n vkuiClass={classNames(\n \"ActionSheet\",\n platform === Platform.IOS && \"ActionSheet--ios\",\n closing && \"ActionSheet--closing\",\n `ActionSheet--sizeY-${sizeY}`\n )}\n >\n {children}\n </FocusTrap>\n );\n};\n"],"file":"ActionSheetDropdown.js"}
@@ -3,7 +3,6 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
3
3
  var _excluded = ["children", "toggleRef", "closing", "popupDirection", "onClose", "className", "style"];
4
4
  import { createScopedElement } from "../../lib/jsxRuntime";
5
5
  import * as React from "react";
6
- import { getClassName } from "../../helpers/getClassName";
7
6
  import { classNames } from "../../lib/classNames";
8
7
  import { useDOM } from "../../lib/dom";
9
8
  import { usePlatform } from "../../hooks/usePlatform";
@@ -11,6 +10,7 @@ import { useEffectDev } from "../../hooks/useEffectDev";
11
10
  import { useAdaptivity } from "../../hooks/useAdaptivity";
12
11
  import { isRefObject } from "../../lib/isRefObject";
13
12
  import { warnOnce } from "../../lib/warnOnce";
13
+ import { Platform } from "../../lib/platform";
14
14
  import { useEventListener } from "../../hooks/useEventListener";
15
15
  import { FocusTrap } from "../FocusTrap/FocusTrap";
16
16
  import { Popper } from "../Popper/Popper";
@@ -70,16 +70,15 @@ export var ActionSheetDropdownDesktop = function ActionSheetDropdownDesktop(_ref
70
70
  return toggleRef;
71
71
  }
72
72
 
73
- var refObject = {
73
+ return {
74
74
  current: toggleRef
75
75
  };
76
- return refObject;
77
76
  }, [toggleRef]);
78
77
  return createScopedElement(Popper, {
79
78
  targetRef: targetRef,
80
79
  offsetDistance: 0,
81
80
  placement: isPopupDirectionTop ? "top-end" : "bottom-end",
82
- vkuiClass: classNames(getClassName("ActionSheet", platform), "ActionSheet--desktop", "ActionSheet--sizeY-".concat(sizeY)),
81
+ vkuiClass: classNames("ActionSheet", platform === Platform.IOS && "ActionSheet--ios", "ActionSheet--desktop", "ActionSheet--sizeY-".concat(sizeY)),
83
82
  className: className,
84
83
  style: style,
85
84
  getRef: elementRef,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheetDropdownDesktop.tsx"],"names":["React","getClassName","classNames","useDOM","usePlatform","useEffectDev","useAdaptivity","isRefObject","warnOnce","useEventListener","FocusTrap","Popper","warn","getEl","ref","current","ActionSheetDropdownDesktop","children","toggleRef","closing","popupDirection","onClose","className","style","restProps","document","platform","sizeY","elementRef","useRef","toggleEl","isPopupDirectionTop","useMemo","bodyClickListener","e","dropdownElement","contains","target","useEffect","setTimeout","add","body","onClick","useCallback","stopPropagation","targetRef","refObject"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { useDOM } from \"../../lib/dom\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useEffectDev } from \"../../hooks/useEffectDev\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { isRefObject } from \"../../lib/isRefObject\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport { SharedDropdownProps } from \"./types\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport { Popper } from \"../Popper/Popper\";\nimport \"./ActionSheet.css\";\n\nconst warn = warnOnce(\"ActionSheet\");\nfunction getEl(\n ref: SharedDropdownProps[\"toggleRef\"]\n): Element | null | undefined {\n return ref && \"current\" in ref ? ref.current : ref;\n}\n\nexport const ActionSheetDropdownDesktop = ({\n children,\n toggleRef,\n closing,\n popupDirection,\n onClose,\n className,\n style,\n ...restProps\n}: SharedDropdownProps) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n const elementRef = React.useRef<HTMLDivElement | null>(null);\n\n useEffectDev(() => {\n const toggleEl = getEl(toggleRef);\n if (!toggleEl) {\n warn(`Свойство \"toggleRef\" не передано`, \"error\");\n }\n }, [toggleRef]);\n\n const isPopupDirectionTop = React.useMemo(\n () =>\n popupDirection === \"top\" ||\n (typeof popupDirection === \"function\" &&\n popupDirection(elementRef) === \"top\"),\n [popupDirection, elementRef]\n );\n\n const bodyClickListener = useEventListener(\"click\", (e: MouseEvent) => {\n const dropdownElement = elementRef?.current;\n if (dropdownElement && !dropdownElement.contains(e.target as Node)) {\n onClose?.();\n }\n });\n\n React.useEffect(() => {\n setTimeout(() => {\n bodyClickListener.add(document!.body);\n });\n }, [bodyClickListener, document]);\n\n const onClick = React.useCallback(\n (e: React.MouseEvent<HTMLElement, MouseEvent>) => e.stopPropagation(),\n []\n );\n\n const targetRef = React.useMemo(() => {\n if (isRefObject<SharedDropdownProps[\"toggleRef\"], HTMLElement>(toggleRef)) {\n return toggleRef;\n }\n const refObject = { current: toggleRef as HTMLElement };\n\n return refObject;\n }, [toggleRef]);\n\n return (\n <Popper\n targetRef={targetRef}\n offsetDistance={0}\n placement={isPopupDirectionTop ? \"top-end\" : \"bottom-end\"}\n vkuiClass={classNames(\n getClassName(\"ActionSheet\", platform),\n \"ActionSheet--desktop\",\n `ActionSheet--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRef={elementRef}\n forcePortal={false}\n >\n <FocusTrap onClose={onClose} {...restProps} onClick={onClick}>\n {children}\n </FocusTrap>\n </Popper>\n );\n};\n"],"file":"ActionSheetDropdownDesktop.js"}
1
+ {"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheetDropdownDesktop.tsx"],"names":["React","classNames","useDOM","usePlatform","useEffectDev","useAdaptivity","isRefObject","warnOnce","Platform","useEventListener","FocusTrap","Popper","warn","getEl","ref","current","ActionSheetDropdownDesktop","children","toggleRef","closing","popupDirection","onClose","className","style","restProps","document","platform","sizeY","elementRef","useRef","toggleEl","isPopupDirectionTop","useMemo","bodyClickListener","e","dropdownElement","contains","target","useEffect","setTimeout","add","body","onClick","useCallback","stopPropagation","targetRef","IOS"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,MAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,aAAT;AACA,SAASC,WAAT;AACA,SAASC,QAAT;AACA,SAASC,QAAT;AACA,SAASC,gBAAT;AAEA,SAASC,SAAT;AACA,SAASC,MAAT;AACA;AAEA,IAAMC,IAAI,GAAGL,QAAQ,CAAC,aAAD,CAArB;;AACA,SAASM,KAAT,CACEC,GADF,EAE8B;AAC5B,SAAOA,GAAG,IAAI,aAAaA,GAApB,GAA0BA,GAAG,CAACC,OAA9B,GAAwCD,GAA/C;AACD;;AAED,OAAO,IAAME,0BAA0B,GAAG,SAA7BA,0BAA6B,OASf;AAAA,MARzBC,QAQyB,QARzBA,QAQyB;AAAA,MAPzBC,SAOyB,QAPzBA,SAOyB;AAAA,MANzBC,OAMyB,QANzBA,OAMyB;AAAA,MALzBC,cAKyB,QALzBA,cAKyB;AAAA,MAJzBC,OAIyB,QAJzBA,OAIyB;AAAA,MAHzBC,SAGyB,QAHzBA,SAGyB;AAAA,MAFzBC,KAEyB,QAFzBA,KAEyB;AAAA,MADtBC,SACsB;;AACzB,gBAAqBtB,MAAM,EAA3B;AAAA,MAAQuB,QAAR,WAAQA,QAAR;;AACA,MAAMC,QAAQ,GAAGvB,WAAW,EAA5B;;AACA,uBAAkBE,aAAa,EAA/B;AAAA,MAAQsB,KAAR,kBAAQA,KAAR;;AACA,MAAMC,UAAU,GAAG5B,KAAK,CAAC6B,MAAN,CAAoC,IAApC,CAAnB;AAEAzB,EAAAA,YAAY,CAAC,YAAM;AACjB,QAAM0B,QAAQ,GAAGjB,KAAK,CAACK,SAAD,CAAtB;;AACA,QAAI,CAACY,QAAL,EAAe;AACblB,MAAAA,IAAI,iIAAqC,OAArC,CAAJ;AACD;AACF,GALW,EAKT,CAACM,SAAD,CALS,CAAZ;AAOA,MAAMa,mBAAmB,GAAG/B,KAAK,CAACgC,OAAN,CAC1B;AAAA,WACEZ,cAAc,KAAK,KAAnB,IACC,OAAOA,cAAP,KAA0B,UAA1B,IACCA,cAAc,CAACQ,UAAD,CAAd,KAA+B,KAHnC;AAAA,GAD0B,EAK1B,CAACR,cAAD,EAAiBQ,UAAjB,CAL0B,CAA5B;AAQA,MAAMK,iBAAiB,GAAGxB,gBAAgB,CAAC,OAAD,EAAU,UAACyB,CAAD,EAAmB;AACrE,QAAMC,eAAe,GAAGP,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEb,OAApC;;AACA,QAAIoB,eAAe,IAAI,CAACA,eAAe,CAACC,QAAhB,CAAyBF,CAAC,CAACG,MAA3B,CAAxB,EAAoE;AAClEhB,MAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO;AACR;AACF,GALyC,CAA1C;AAOArB,EAAAA,KAAK,CAACsC,SAAN,CAAgB,YAAM;AACpBC,IAAAA,UAAU,CAAC,YAAM;AACfN,MAAAA,iBAAiB,CAACO,GAAlB,CAAsBf,QAAQ,CAAEgB,IAAhC;AACD,KAFS,CAAV;AAGD,GAJD,EAIG,CAACR,iBAAD,EAAoBR,QAApB,CAJH;AAMA,MAAMiB,OAAO,GAAG1C,KAAK,CAAC2C,WAAN,CACd,UAACT,CAAD;AAAA,WAAkDA,CAAC,CAACU,eAAF,EAAlD;AAAA,GADc,EAEd,EAFc,CAAhB;AAKA,MAAMC,SAAS,GAAG7C,KAAK,CAACgC,OAAN,CAAc,YAAM;AACpC,QAAI1B,WAAW,CAAgDY,SAAhD,CAAf,EAA2E;AACzE,aAAOA,SAAP;AACD;;AAED,WAAO;AAAEH,MAAAA,OAAO,EAAEG;AAAX,KAAP;AACD,GANiB,EAMf,CAACA,SAAD,CANe,CAAlB;AAQA,SACE,oBAAC,MAAD;AACE,IAAA,SAAS,EAAE2B,SADb;AAEE,IAAA,cAAc,EAAE,CAFlB;AAGE,IAAA,SAAS,EAAEd,mBAAmB,GAAG,SAAH,GAAe,YAH/C;AAIE,IAAA,SAAS,EAAE9B,UAAU,CACnB,aADmB,EAEnByB,QAAQ,KAAKlB,QAAQ,CAACsC,GAAtB,IAA6B,kBAFV,EAGnB,sBAHmB,+BAIGnB,KAJH,EAJvB;AAUE,IAAA,SAAS,EAAEL,SAVb;AAWE,IAAA,KAAK,EAAEC,KAXT;AAYE,IAAA,MAAM,EAAEK,UAZV;AAaE,IAAA,WAAW,EAAE;AAbf,KAeE,oBAAC,SAAD;AAAW,IAAA,OAAO,EAAEP;AAApB,KAAiCG,SAAjC;AAA4C,IAAA,OAAO,EAAEkB;AAArD,MACGzB,QADH,CAfF,CADF;AAqBD,CA7EM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { useDOM } from \"../../lib/dom\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useEffectDev } from \"../../hooks/useEffectDev\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { isRefObject } from \"../../lib/isRefObject\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { Platform } from \"../../lib/platform\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport { SharedDropdownProps } from \"./types\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport { Popper } from \"../Popper/Popper\";\nimport \"./ActionSheet.css\";\n\nconst warn = warnOnce(\"ActionSheet\");\nfunction getEl(\n ref: SharedDropdownProps[\"toggleRef\"]\n): Element | null | undefined {\n return ref && \"current\" in ref ? ref.current : ref;\n}\n\nexport const ActionSheetDropdownDesktop = ({\n children,\n toggleRef,\n closing,\n popupDirection,\n onClose,\n className,\n style,\n ...restProps\n}: SharedDropdownProps) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n const elementRef = React.useRef<HTMLDivElement | null>(null);\n\n useEffectDev(() => {\n const toggleEl = getEl(toggleRef);\n if (!toggleEl) {\n warn(`Свойство \"toggleRef\" не передано`, \"error\");\n }\n }, [toggleRef]);\n\n const isPopupDirectionTop = React.useMemo(\n () =>\n popupDirection === \"top\" ||\n (typeof popupDirection === \"function\" &&\n popupDirection(elementRef) === \"top\"),\n [popupDirection, elementRef]\n );\n\n const bodyClickListener = useEventListener(\"click\", (e: MouseEvent) => {\n const dropdownElement = elementRef?.current;\n if (dropdownElement && !dropdownElement.contains(e.target as Node)) {\n onClose?.();\n }\n });\n\n React.useEffect(() => {\n setTimeout(() => {\n bodyClickListener.add(document!.body);\n });\n }, [bodyClickListener, document]);\n\n const onClick = React.useCallback(\n (e: React.MouseEvent<HTMLElement, MouseEvent>) => e.stopPropagation(),\n []\n );\n\n const targetRef = React.useMemo(() => {\n if (isRefObject<SharedDropdownProps[\"toggleRef\"], HTMLElement>(toggleRef)) {\n return toggleRef;\n }\n\n return { current: toggleRef as HTMLElement };\n }, [toggleRef]);\n\n return (\n <Popper\n targetRef={targetRef}\n offsetDistance={0}\n placement={isPopupDirectionTop ? \"top-end\" : \"bottom-end\"}\n vkuiClass={classNames(\n \"ActionSheet\",\n platform === Platform.IOS && \"ActionSheet--ios\",\n \"ActionSheet--desktop\",\n `ActionSheet--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRef={elementRef}\n forcePortal={false}\n >\n <FocusTrap onClose={onClose} {...restProps} onClick={onClick}>\n {children}\n </FocusTrap>\n </Popper>\n );\n};\n"],"file":"ActionSheetDropdownDesktop.js"}
@@ -1 +1,7 @@
1
- .vkuiActionSheetItem{align-items:center;color:#000;color:var(--text_primary);display:flex;overflow:hidden;text-decoration:none}.vkuiActionSheetItem,.vkuiActionSheetItem__after,.vkuiActionSheetItem__before,.vkuiActionSheetItem__container{position:relative;z-index:2}.vkuiActionSheetItem__after,.vkuiActionSheetItem__before{flex-shrink:0}.vkuiActionSheetItem__container{flex-grow:1;max-width:100%;overflow:hidden;white-space:nowrap}.vkuiActionSheetItem__content{align-items:baseline;display:flex;overflow:hidden}.vkuiActionSheetItem__children{min-width:0;overflow:hidden;text-overflow:ellipsis}.vkuiActionSheetItem__subtitle{color:#818c99;color:var(--text_secondary);overflow:hidden;text-overflow:ellipsis}.vkuiActionSheetItem__meta{color:#818c99;color:var(--text_secondary);flex-shrink:0;margin-left:6px}.vkuiActionSheetItem__before{color:#2688eb;color:var(--action_sheet_action_foreground)}.vkuiActionSheetItem--destructive .vkuiActionSheetItem__before,.vkuiActionSheetItem--destructive .vkuiActionSheetItem__container:first-child{color:#e64646;color:var(--destructive)}.vkuiActionSheetItem--compact .vkuiActionSheetItem__container{color:#000;color:var(--text_primary)}.vkuiActionSheetItem__radio{display:none}.vkuiActionSheetItem__marker{align-items:center;background-color:#2688eb;background-color:var(--accent);border-radius:50%;color:#fff;color:var(--white);display:none;height:24px;justify-content:center;width:24px}.vkuiActionSheetItem__radio:checked~.vkuiActionSheetItem__marker{display:flex}.vkuiActionSheetItem--ios{border-radius:0;color:#2688eb;color:var(--action_sheet_action_foreground);min-height:56px;padding:0 20px}.vkuiActionSheetItem--ios.vkuiActionSheetItem--destructive{color:#e64646;color:var(--destructive)}.vkuiActionSheetItem--ios:first-child{border-top-left-radius:14px;border-top-right-radius:14px}.vkuiActionSheetItem--ios:last-child,.vkuiActionSheetItem--ios:not(.vkuiActionSheetItem--desktop):nth-last-child(2){border-bottom-left-radius:14px;border-bottom-right-radius:14px}.vkuiActionSheetItem--ios:before{background-color:#fff;background-color:var(--modal_card_background);content:"";height:100%;left:0;position:absolute;top:0;transition:opacity .15s ease-out,background-color .15s ease-out;width:100%;z-index:-1}.vkuiActionSheetItem--ios:after{background:rgba(0,0,0,.12);background:var(--action_sheet_separator);content:"";height:1px;left:0;position:absolute;right:0;top:0;-webkit-transform-origin:center bottom;transform-origin:center bottom;z-index:-1}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.vkuiActionSheetItem--ios:after{-webkit-transform:scaleY(.5);transform:scaleY(.5)}}@media (-webkit-min-device-pixel-ratio:3),(min-resolution:3dppx){.vkuiActionSheetItem--ios:after{-webkit-transform:scaleY(.33);transform:scaleY(.33)}}.vkuiActionSheet--ios .vkuiActionSheetItem--last:after,.vkuiActionSheet--ios .vkuiActionSheet__header:empty,.vkuiActionSheetItem--cancel:after,.vkuiActionSheetItem--ios:first-child:after{content:none}.vkuiActionSheetItem--ios.vkuiActionSheetItem--active:before{background:#d7d8d9;background:var(--separator_common);opacity:1;transition:none}.vkuiActionSheetItem--ios .vkuiActionSheetItem__container{padding:13px 0}.vkuiActionSheetItem--ios .vkuiActionSheetItem__content{justify-content:center}.vkuiActionSheetItem--ios .vkuiActionSheetItem__subtitle{margin-top:2px}.vkuiActionSheetItem--ios .vkuiActionSheetItem__marker{margin-left:12px}.vkuiActionSheetItem--ios .vkuiActionSheetItem__before+.vkuiActionSheetItem__container .vkuiActionSheetItem__content,.vkuiActionSheetItem--ios.vkuiActionSheetItem--compact .vkuiActionSheetItem__content{justify-content:flex-start}.vkuiActionSheetItem--ios .vkuiActionSheetItem__before{margin-left:-2px;margin-right:18px}.vkuiActionSheetItem--cancel{border-radius:14px;margin-bottom:0;margin-bottom:var(--safe-area-inset-bottom);margin-top:7px;min-height:52px}.vkuiActionSheetItem--android{border-radius:0;min-height:48px;padding:0 20px}.vkuiActionSheetItem--android.vkuiActionSheetItem--active{background-color:rgba(0,0,0,.12);background-color:var(--action_sheet_separator)}.vkuiActionSheetItem--android .vkuiActionSheetItem__before{margin-left:-2px;margin-right:18px}.vkuiActionSheetItem--android .vkuiActionSheetItem__container{padding:11px 0}.vkuiActionSheetItem--android .vkuiActionSheetItem__subtitle{margin-bottom:-1px;margin-top:1px}.vkuiActionSheetItem--android .vkuiActionSheetItem__marker{margin-left:16px}.vkuiActionSheetItem--vkcom{border-radius:0;min-height:48px;padding:0 20px}.vkuiActionSheetItem--vkcom.vkuiActionSheetItem--active{background-color:rgba(0,0,0,.12);background-color:var(--action_sheet_separator)}.vkuiActionSheetItem--vkcom .vkuiActionSheetItem__before{margin-left:-1px;margin-right:17px}.vkuiActionSheetItem--vkcom .vkuiActionSheetItem__subtitle{margin-bottom:-2px;margin-top:2px}.vkuiActionSheetItem--vkcom .vkuiActionSheetItem__marker{background-color:initial;color:#2688eb;color:var(--accent);margin-left:26px}.vkuiActionSheetItem--desktop{cursor:pointer;width:auto}.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__children,.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__meta,.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__subtitle{color:#818c99;color:var(--text_secondary)}.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__before{color:#99a2ad;color:var(--icon_secondary)}.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__marker{background:#99a2ad;background:var(--icon_secondary)}.vkuiActionSheetItem--sizeY-compact{min-height:44px}.vkuiActionSheetItem--sizeY-compact .vkuiActionSheetItem__container{padding:12px 0}.vkuiActionSheetItem--sizeY-compact.vkuiActionSheetItem--withSubtitle .vkuiActionSheetItem__container{padding:10px 0}
1
+ .vkuiActionSheetItem{align-items:center;border-radius:0;box-sizing:border-box;color:#000;color:var(--text_primary,var(--vkui--color_text_primary));display:flex;min-height:48px;overflow:hidden;padding:0 20px;text-decoration:none}.vkuiActionSheetItem,.vkuiActionSheetItem__after,.vkuiActionSheetItem__before,.vkuiActionSheetItem__container{position:relative;z-index:2}.vkuiActionSheetItem__after,.vkuiActionSheetItem__before{flex-shrink:0}.vkuiActionSheetItem__before{margin-left:-2px;margin-right:18px}.vkuiActionSheetItem__container{flex-grow:1;max-width:100%;padding:10px 0}.vkuiActionSheetItem--ellipsis{overflow:hidden;white-space:nowrap}.vkuiActionSheetItem__content{align-items:baseline;display:flex;justify-content:space-between;overflow:hidden}.vkuiActionSheetItem--ellipsis .vkuiActionSheetItem__content{justify-content:flex-start}.vkuiActionSheetItem__children{min-width:0;overflow:hidden;text-overflow:ellipsis}.vkuiActionSheetItem__subtitle{margin-top:2px;overflow:hidden;text-overflow:ellipsis}.vkuiActionSheetItem__meta,.vkuiActionSheetItem__subtitle{color:#818c99;color:var(--text_secondary,var(--vkui--color_text_secondary))}.vkuiActionSheetItem__meta{flex-shrink:0;margin-left:6px}.vkuiActionSheetItem__before{color:#2688eb;color:var(--action_sheet_action_foreground,var(--vkui--color_icon_accent))}.vkuiActionSheetItem--destructive .vkuiActionSheetItem__container:first-child{color:#e64646;color:var(--destructive,var(--vkui--color_text_negative))}.vkuiActionSheetItem--destructive .vkuiActionSheetItem__before{color:#e64646;color:var(--destructive,var(--vkui--color_icon_negative))}.vkuiActionSheetItem__radio{display:none}.vkuiActionSheetItem__marker{align-items:center;background-color:initial;border-radius:50%;color:#2688eb;color:var(--accent,var(--vkui--color_icon_accent));display:none;height:24px;justify-content:center;margin-left:16px;width:24px}.vkuiActionSheetItem__radio:checked~.vkuiActionSheetItem__marker{display:flex}.vkuiActionSheetItem--ios{background:#fff;background:var(--modal_card_background,var(--vkui--color_background_modal));border-radius:0;color:#2688eb;color:var(--action_sheet_action_foreground,var(--vkui--color_text_accent));min-height:56px;padding:14px 20px 14px 19px}.vkuiActionSheetItem--rich{color:#000;color:var(--text_primary,var(--vkui--color_text_primary))}.vkuiActionSheetItem--ios.vkuiActionSheetItem--destructive{color:#e64646;color:var(--destructive,var(--vkui--color_text_negative))}.vkuiActionSheetItem--ios:first-child{border-top-left-radius:14px;border-top-right-radius:14px}.vkuiActionSheetItem--ios:last-child,.vkuiActionSheetItem--ios:not(.vkuiActionSheetItem--desktop):nth-last-child(2){border-bottom-left-radius:14px;border-bottom-right-radius:14px}.vkuiActionSheetItem--ios:before{background-color:#fff;background-color:var(
2
+ --modal_card_background,var(--vkui--color_background_modal)
3
+ );content:"";height:100%;left:0;position:absolute;top:0;transition:opacity .15s ease-out,background-color .15s ease-out;width:100%;z-index:-1}.vkuiActionSheetItem--ios:after{background:rgba(0,0,0,.12);background:var(
4
+ --action_sheet_separator,var(--vkui--color_separator_primary)
5
+ );content:"";height:1px;left:0;position:absolute;right:0;top:0;-webkit-transform-origin:center bottom;transform-origin:center bottom;z-index:-1}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.vkuiActionSheetItem--ios:after{-webkit-transform:scaleY(.5);transform:scaleY(.5)}}@media (-webkit-min-device-pixel-ratio:3),(min-resolution:3dppx){.vkuiActionSheetItem--ios:after{-webkit-transform:scaleY(.33);transform:scaleY(.33)}}.vkuiActionSheet--ios .vkuiActionSheetItem--last:after,.vkuiActionSheet--ios .vkuiActionSheet__header:empty,.vkuiActionSheetItem--cancel:after,.vkuiActionSheetItem--ios:first-child:after{content:none}.vkuiActionSheetItem--ios.vkuiActionSheetItem--active:before{background-color:#d7d8d9;background-color:var(
6
+ --separator_common,var(--vkui--color_transparent--active)
7
+ );opacity:1;transition:none}.vkuiActionSheetItem--ios .vkuiActionSheetItem__container{padding:0}.vkuiActionSheetItem--ios .vkuiActionSheetItem--centered{justify-content:center}.vkuiActionSheetItem--cancel{border-radius:14px;margin-bottom:0;margin-bottom:var(--safe-area-inset-bottom);margin-top:8px;min-height:52px}.vkuiActionSheetItem--desktop{cursor:pointer;width:auto}.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__children,.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__meta,.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__subtitle{color:#818c99;color:var(--text_secondary,var(--vkui--color_text_secondary))}.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__before,.vkuiActionSheetItem[disabled] .vkuiActionSheetItem__marker{color:#99a2ad;color:var(--icon_secondary,var(--vkui--color_icon_secondary))}.vkuiActionSheetItem--sizeY-compact{min-height:32px}.vkuiActionSheetItem--sizeY-compact.vkuiActionSheetItem--ios{min-height:36px;padding:4px 20px 4px 18px}.vkuiActionSheetItem--sizeY-compact:not(.vkuiActionSheetItem--ios)+.vkuiActionSheetItem--sizeY-compact:not(.vkuiActionSheetItem--ios){margin-top:2px}.vkuiActionSheetItem--sizeY-compact .vkuiActionSheetItem__container{padding:5px 0}
@@ -9,6 +9,10 @@ export interface ActionSheetItemProps extends React.HTMLAttributes<HTMLElement>,
9
9
  autoclose?: boolean;
10
10
  selectable?: boolean;
11
11
  disabled?: boolean;
12
+ /**
13
+ * Все текстовые элементы при необходимости занимают несколько строк
14
+ */
15
+ multiline?: boolean;
12
16
  /**
13
17
  * Если autoclose === true, onClick будет вызван после завершения анимации скрытия и после вызова onClose.
14
18
  * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.
@@ -20,4 +24,4 @@ export interface ActionSheetItemProps extends React.HTMLAttributes<HTMLElement>,
20
24
  /**
21
25
  * @see https://vkcom.github.io/VKUI/#/ActionSheetItem
22
26
  */
23
- export declare const ActionSheetItem: React.FC<Pick<ActionSheetItemProps, "disabled" | "media" | "hidden" | "dir" | "meta" | "slot" | "style" | "title" | "color" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "name" | "target" | "type" | "role" | "tabIndex" | "href" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "hrefLang" | "referrerPolicy" | "rel" | "value" | "download" | "ping" | "checked" | "before" | "autoclose" | "subtitle" | "selectable" | "onImmediateClick"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
27
+ export declare const ActionSheetItem: React.FC<Pick<ActionSheetItemProps, "disabled" | "media" | "hidden" | "dir" | "meta" | "slot" | "style" | "title" | "color" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "name" | "target" | "type" | "role" | "tabIndex" | "href" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "hrefLang" | "referrerPolicy" | "rel" | "value" | "download" | "ping" | "checked" | "before" | "autoclose" | "subtitle" | "selectable" | "onImmediateClick" | "multiline"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
@@ -1,22 +1,18 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "autoclose", "mode", "meta", "subtitle", "before", "selectable", "value", "name", "checked", "defaultChecked", "onChange", "onClick", "sizeY", "onImmediateClick"];
3
+ var _excluded = ["children", "autoclose", "mode", "meta", "subtitle", "before", "selectable", "value", "name", "checked", "defaultChecked", "onChange", "onClick", "sizeY", "onImmediateClick", "multiline"];
4
4
  import { createScopedElement } from "../../lib/jsxRuntime";
5
5
  import * as React from "react";
6
6
  import { classNames } from "../../lib/classNames";
7
- import { getClassName } from "../../helpers/getClassName";
8
7
  import { Tappable } from "../Tappable/Tappable";
9
8
  import { usePlatform } from "../../hooks/usePlatform";
10
9
  import { hasReactNode, noop } from "../../lib/utils";
10
+ import { Platform } from "../../lib/platform";
11
11
  import { Subhead } from "../Typography/Subhead/Subhead";
12
- import { Title } from "../Typography/Title/Title";
13
12
  import { Text } from "../Typography/Text/Text";
14
- import { ANDROID, VKCOM } from "../../lib/platform";
15
- import { Icon16Done, Icon24Done } from "@vkontakte/icons";
13
+ import { Icon24CheckCircleOn } from "@vkontakte/icons";
16
14
  import { ActionSheetContext } from "../ActionSheet/ActionSheetContext";
17
- import { Caption } from "../Typography/Caption/Caption";
18
- import { Headline } from "../Typography/Headline/Headline";
19
- import { withAdaptivity, SizeType } from "../../hoc/withAdaptivity";
15
+ import { withAdaptivity } from "../../hoc/withAdaptivity";
20
16
  import "./ActionSheetItem.css";
21
17
 
22
18
  var ActionSheetItemComponent = function ActionSheetItemComponent(_ref) {
@@ -36,6 +32,8 @@ var ActionSheetItemComponent = function ActionSheetItemComponent(_ref) {
36
32
  onClick = _ref.onClick,
37
33
  sizeY = _ref.sizeY,
38
34
  onImmediateClick = _ref.onImmediateClick,
35
+ _ref$multiline = _ref.multiline,
36
+ multiline = _ref$multiline === void 0 ? false : _ref$multiline,
39
37
  restProps = _objectWithoutProperties(_ref, _excluded);
40
38
 
41
39
  var platform = usePlatform();
@@ -53,45 +51,27 @@ var ActionSheetItemComponent = function ActionSheetItemComponent(_ref) {
53
51
  Component = "label";
54
52
  }
55
53
 
56
- var isCompact = hasReactNode(subtitle) || hasReactNode(meta) || selectable;
54
+ var isRich = hasReactNode(subtitle) || hasReactNode(meta) || selectable;
55
+ var isCentered = !isRich && !hasReactNode(before) && platform === Platform.IOS;
57
56
  return createScopedElement(Tappable, _extends({}, restProps, {
58
57
  onClick: selectable ? onClick : onItemClick(onClick, onImmediateClick, Boolean(autoclose)),
59
- activeMode: "ActionSheetItem--active" // eslint-disable-next-line vkui/no-object-expression-in-arguments
60
- ,
61
- vkuiClass: classNames(getClassName("ActionSheetItem", platform), "ActionSheetItem--".concat(mode), "ActionSheetItem--sizeY-".concat(sizeY), {
62
- "ActionSheetItem--compact": isCompact,
63
- "ActionSheetItem--desktop": isDesktop,
64
- "ActionSheetItem--withSubtitle": hasReactNode(subtitle)
65
- }),
58
+ activeMode: platform === Platform.IOS ? "ActionSheetItem--active" : undefined,
59
+ vkuiClass: classNames("ActionSheetItem", platform === Platform.IOS && "ActionSheetItem--ios", "ActionSheetItem--".concat(mode), "ActionSheetItem--sizeY-".concat(sizeY), isRich && "ActionSheetItem--rich", isDesktop && "ActionSheetItem--desktop"),
66
60
  Component: Component
67
61
  }), hasReactNode(before) && createScopedElement("div", {
68
62
  vkuiClass: "ActionSheetItem__before"
69
63
  }, before), createScopedElement("div", {
70
- vkuiClass: "ActionSheetItem__container"
64
+ vkuiClass: classNames("ActionSheetItem__container", !multiline && "ActionSheetItem--ellipsis")
71
65
  }, createScopedElement("div", {
72
- vkuiClass: "ActionSheetItem__content"
73
- }, sizeY === SizeType.COMPACT ? createScopedElement(React.Fragment, null, createScopedElement(Text, {
66
+ vkuiClass: classNames("ActionSheetItem__content", isCentered && "ActionSheetItem--centered")
67
+ }, createScopedElement(Text, {
74
68
  weight: mode === "cancel" ? "2" : undefined,
75
69
  vkuiClass: "ActionSheetItem__children"
76
70
  }, children), hasReactNode(meta) && createScopedElement(Text, {
77
71
  vkuiClass: "ActionSheetItem__meta"
78
- }, meta)) : createScopedElement(React.Fragment, null, platform === ANDROID ? createScopedElement(Headline, {
79
- weight: mode === "cancel" ? "2" : "3"
80
- }, children) : createScopedElement(Title, {
81
- weight: mode === "cancel" ? "2" : "3",
82
- level: isCompact || hasReactNode(before) ? "3" : "2",
83
- vkuiClass: "ActionSheetItem__children"
84
- }, children), hasReactNode(meta) && (platform === ANDROID ? createScopedElement(Headline, {
85
- weight: mode === "cancel" ? "2" : "3"
86
- }, children) : createScopedElement(Title, {
87
- weight: "3",
88
- level: isCompact || hasReactNode(before) ? "3" : "2",
89
- vkuiClass: "ActionSheetItem__meta"
90
- }, meta)))), hasReactNode(subtitle) && (sizeY === SizeType.COMPACT ? createScopedElement(Caption, {
91
- vkuiClass: "ActionSheetItem__subtitle"
92
- }, subtitle) : createScopedElement(Subhead, {
72
+ }, meta)), hasReactNode(subtitle) && createScopedElement(Subhead, {
93
73
  vkuiClass: "ActionSheetItem__subtitle"
94
- }, subtitle))), selectable && createScopedElement("div", {
74
+ }, subtitle)), selectable && createScopedElement("div", {
95
75
  vkuiClass: "ActionSheetItem__after"
96
76
  }, createScopedElement("input", {
97
77
  type: "radio",
@@ -105,7 +85,7 @@ var ActionSheetItemComponent = function ActionSheetItemComponent(_ref) {
105
85
  disabled: restProps.disabled
106
86
  }), createScopedElement("div", {
107
87
  vkuiClass: "ActionSheetItem__marker"
108
- }, platform === VKCOM ? createScopedElement(Icon24Done, null) : createScopedElement(Icon16Done, null))));
88
+ }, createScopedElement(Icon24CheckCircleOn, null))));
109
89
  };
110
90
  /**
111
91
  * @see https://vkcom.github.io/VKUI/#/ActionSheetItem
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"names":["React","classNames","getClassName","Tappable","usePlatform","hasReactNode","noop","Subhead","Title","Text","ANDROID","VKCOM","Icon16Done","Icon24Done","ActionSheetContext","Caption","Headline","withAdaptivity","SizeType","ActionSheetItemComponent","children","autoclose","mode","meta","subtitle","before","selectable","value","name","checked","defaultChecked","onChange","onClick","sizeY","onImmediateClick","restProps","platform","useContext","onItemClick","isDesktop","Component","href","isCompact","Boolean","COMPACT","undefined","disabled","ActionSheetItem"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,YAAT;AACA,SAASC,QAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT,EAAuBC,IAAvB;AACA,SAASC,OAAT;AACA,SAASC,KAAT;AACA,SAASC,IAAT;AACA,SAASC,OAAT,EAAkBC,KAAlB;AACA,SAASC,UAAT,EAAqBC,UAArB,QAAuC,kBAAvC;AACA,SACEC,kBADF;AAIA,SAASC,OAAT;AACA,SAASC,QAAT;AACA,SACEC,cADF,EAGEC,QAHF;AAKA;;AA0BA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAA2B,OAiBL;AAAA,MAhB1BC,QAgB0B,QAhB1BA,QAgB0B;AAAA,MAf1BC,SAe0B,QAf1BA,SAe0B;AAAA,uBAd1BC,IAc0B;AAAA,MAd1BA,IAc0B,0BAdnB,SAcmB;AAAA,MAb1BC,IAa0B,QAb1BA,IAa0B;AAAA,MAZ1BC,QAY0B,QAZ1BA,QAY0B;AAAA,MAX1BC,MAW0B,QAX1BA,MAW0B;AAAA,MAV1BC,UAU0B,QAV1BA,UAU0B;AAAA,MAT1BC,KAS0B,QAT1BA,KAS0B;AAAA,MAR1BC,IAQ0B,QAR1BA,IAQ0B;AAAA,MAP1BC,OAO0B,QAP1BA,OAO0B;AAAA,MAN1BC,cAM0B,QAN1BA,cAM0B;AAAA,MAL1BC,QAK0B,QAL1BA,QAK0B;AAAA,MAJ1BC,OAI0B,QAJ1BA,OAI0B;AAAA,MAH1BC,KAG0B,QAH1BA,KAG0B;AAAA,MAF1BC,gBAE0B,QAF1BA,gBAE0B;AAAA,MADvBC,SACuB;;AAC1B,MAAMC,QAAQ,GAAGhC,WAAW,EAA5B;;AACA,0BACEJ,KAAK,CAACqC,UAAN,CAAsDvB,kBAAtD,CADF;AAAA,gDAAQwB,WAAR;AAAA,MAAQA,WAAR,sCAAsB;AAAA,WAAMhC,IAAN;AAAA,GAAtB;AAAA,MAAkCiC,SAAlC,qBAAkCA,SAAlC;;AAGA,MAAIC,SAA4B,GAAGL,SAAS,CAACM,IAAV,GAAiB,GAAjB,GAAuB,KAA1D;;AAEA,MAAIf,UAAJ,EAAgB;AACdc,IAAAA,SAAS,GAAG,OAAZ;AACD;;AAED,MAAME,SAAS,GAAGrC,YAAY,CAACmB,QAAD,CAAZ,IAA0BnB,YAAY,CAACkB,IAAD,CAAtC,IAAgDG,UAAlE;AAEA,SACE,oBAAC,QAAD,eACMS,SADN;AAEE,IAAA,OAAO,EACLT,UAAU,GACNM,OADM,GAENM,WAAW,CAACN,OAAD,EAAUE,gBAAV,EAA4BS,OAAO,CAACtB,SAAD,CAAnC,CALnB;AAOE,IAAA,UAAU,EAAC,yBAPb,CAQE;AARF;AASE,IAAA,SAAS,EAAEpB,UAAU,CACnBC,YAAY,CAAC,iBAAD,EAAoBkC,QAApB,CADO,6BAECd,IAFD,oCAGOW,KAHP,GAInB;AACE,kCAA4BS,SAD9B;AAEE,kCAA4BH,SAF9B;AAGE,uCAAiClC,YAAY,CAACmB,QAAD;AAH/C,KAJmB,CATvB;AAmBE,IAAA,SAAS,EAAEgB;AAnBb,MAqBGnC,YAAY,CAACoB,MAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAA0CA,MAA1C,CAtBJ,EAwBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGQ,KAAK,KAAKf,QAAQ,CAAC0B,OAAnB,GACC,oBAAC,KAAD,CAAO,QAAP,QACE,oBAAC,IAAD;AACE,IAAA,MAAM,EAAEtB,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0BuB,SADpC;AAEE,IAAA,SAAS,EAAC;AAFZ,KAIGzB,QAJH,CADF,EAOGf,YAAY,CAACkB,IAAD,CAAZ,IACC,oBAAC,IAAD;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAyCA,IAAzC,CARJ,CADD,GAaC,oBAAC,KAAD,CAAO,QAAP,QACGa,QAAQ,KAAK1B,OAAb,GACC,oBAAC,QAAD;AAAU,IAAA,MAAM,EAAEY,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0B;AAA5C,KACGF,QADH,CADD,GAKC,oBAAC,KAAD;AACE,IAAA,MAAM,EAAEE,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0B,GADpC;AAEE,IAAA,KAAK,EAAEoB,SAAS,IAAIrC,YAAY,CAACoB,MAAD,CAAzB,GAAoC,GAApC,GAA0C,GAFnD;AAGE,IAAA,SAAS,EAAC;AAHZ,KAKGL,QALH,CANJ,EAcGf,YAAY,CAACkB,IAAD,CAAZ,KACEa,QAAQ,KAAK1B,OAAb,GACC,oBAAC,QAAD;AAAU,IAAA,MAAM,EAAEY,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0B;AAA5C,KACGF,QADH,CADD,GAKC,oBAAC,KAAD;AACE,IAAA,MAAM,EAAC,GADT;AAEE,IAAA,KAAK,EAAEsB,SAAS,IAAIrC,YAAY,CAACoB,MAAD,CAAzB,GAAoC,GAApC,GAA0C,GAFnD;AAGE,IAAA,SAAS,EAAC;AAHZ,KAKGF,IALH,CANH,CAdH,CAdJ,CADF,EA8CGlB,YAAY,CAACmB,QAAD,CAAZ,KACES,KAAK,KAAKf,QAAQ,CAAC0B,OAAnB,GACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAgDpB,QAAhD,CADD,GAGC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAgDA,QAAhD,CAJH,CA9CH,CAxBF,EA6EGE,UAAU,IACT;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AACE,IAAA,IAAI,EAAC,OADP;AAEE,IAAA,SAAS,EAAC,wBAFZ;AAGE,IAAA,IAAI,EAAEE,IAHR;AAIE,IAAA,KAAK,EAAED,KAJT;AAKE,IAAA,QAAQ,EAAEI,QALZ;AAME,IAAA,OAAO,EAAEO,WAAW,CAAChC,IAAD,EAAOA,IAAP,EAAaqC,OAAO,CAACtB,SAAD,CAApB,CANtB;AAOE,IAAA,cAAc,EAAES,cAPlB;AAQE,IAAA,OAAO,EAAED,OARX;AASE,IAAA,QAAQ,EAAEM,SAAS,CAACW;AATtB,IADF,EAYE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGV,QAAQ,KAAKzB,KAAb,GAAqB,oBAAC,UAAD,OAArB,GAAsC,oBAAC,UAAD,OADzC,CAZF,CA9EJ,CADF;AAkGD,CAhID;AAkIA;AACA;AACA;;;AACA,OAAO,IAAMoC,eAAe,GAAG9B,cAAc,CAACE,wBAAD,EAA2B;AACtEc,EAAAA,KAAK,EAAE;AAD+D,CAA3B,CAAtC","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode, noop } from \"../../lib/utils\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Icon16Done, Icon24Done } from \"@vkontakte/icons\";\nimport {\n ActionSheetContext,\n ActionSheetContextType,\n} from \"../ActionSheet/ActionSheetContext\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n SizeType,\n} from \"../../hoc/withAdaptivity\";\nimport \"./ActionSheetItem.css\";\n\nexport interface ActionSheetItemProps\n extends React.HTMLAttributes<HTMLElement>,\n React.AnchorHTMLAttributes<HTMLElement>,\n Pick<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"name\" | \"checked\" | \"value\"\n >,\n AdaptivityProps {\n mode?: \"default\" | \"destructive\" | \"cancel\";\n before?: React.ReactNode;\n meta?: React.ReactNode;\n subtitle?: React.ReactNode;\n autoclose?: boolean;\n selectable?: boolean;\n disabled?: boolean;\n /**\n * Если autoclose === true, onClick будет вызван после завершения анимации скрытия и после вызова onClose.\n * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.\n * Если вам нужен объект события именно на момент клика, используйте `onImmediateClick`.\n */\n onClick?: React.MouseEventHandler<HTMLElement>;\n onImmediateClick?: React.MouseEventHandler<HTMLElement>;\n}\n\nconst ActionSheetItemComponent = ({\n children,\n autoclose,\n mode = \"default\",\n meta,\n subtitle,\n before,\n selectable,\n value,\n name,\n checked,\n defaultChecked,\n onChange,\n onClick,\n sizeY,\n onImmediateClick,\n ...restProps\n}: ActionSheetItemProps) => {\n const platform = usePlatform();\n const { onItemClick = () => noop, isDesktop } =\n React.useContext<ActionSheetContextType<HTMLElement>>(ActionSheetContext);\n\n let Component: React.ElementType = restProps.href ? \"a\" : \"div\";\n\n if (selectable) {\n Component = \"label\";\n }\n\n const isCompact = hasReactNode(subtitle) || hasReactNode(meta) || selectable;\n\n return (\n <Tappable\n {...restProps}\n onClick={\n selectable\n ? onClick\n : onItemClick(onClick, onImmediateClick, Boolean(autoclose))\n }\n activeMode=\"ActionSheetItem--active\"\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"ActionSheetItem\", platform),\n `ActionSheetItem--${mode}`,\n `ActionSheetItem--sizeY-${sizeY}`,\n {\n \"ActionSheetItem--compact\": isCompact,\n \"ActionSheetItem--desktop\": isDesktop,\n \"ActionSheetItem--withSubtitle\": hasReactNode(subtitle),\n }\n )}\n Component={Component}\n >\n {hasReactNode(before) && (\n <div vkuiClass=\"ActionSheetItem__before\">{before}</div>\n )}\n <div vkuiClass=\"ActionSheetItem__container\">\n <div vkuiClass=\"ActionSheetItem__content\">\n {sizeY === SizeType.COMPACT ? (\n <React.Fragment>\n <Text\n weight={mode === \"cancel\" ? \"2\" : undefined}\n vkuiClass=\"ActionSheetItem__children\"\n >\n {children}\n </Text>\n {hasReactNode(meta) && (\n <Text vkuiClass=\"ActionSheetItem__meta\">{meta}</Text>\n )}\n </React.Fragment>\n ) : (\n <React.Fragment>\n {platform === ANDROID ? (\n <Headline weight={mode === \"cancel\" ? \"2\" : \"3\"}>\n {children}\n </Headline>\n ) : (\n <Title\n weight={mode === \"cancel\" ? \"2\" : \"3\"}\n level={isCompact || hasReactNode(before) ? \"3\" : \"2\"}\n vkuiClass=\"ActionSheetItem__children\"\n >\n {children}\n </Title>\n )}\n {hasReactNode(meta) &&\n (platform === ANDROID ? (\n <Headline weight={mode === \"cancel\" ? \"2\" : \"3\"}>\n {children}\n </Headline>\n ) : (\n <Title\n weight=\"3\"\n level={isCompact || hasReactNode(before) ? \"3\" : \"2\"}\n vkuiClass=\"ActionSheetItem__meta\"\n >\n {meta}\n </Title>\n ))}\n </React.Fragment>\n )}\n </div>\n {hasReactNode(subtitle) &&\n (sizeY === SizeType.COMPACT ? (\n <Caption vkuiClass=\"ActionSheetItem__subtitle\">{subtitle}</Caption>\n ) : (\n <Subhead vkuiClass=\"ActionSheetItem__subtitle\">{subtitle}</Subhead>\n ))}\n </div>\n {selectable && (\n <div vkuiClass=\"ActionSheetItem__after\">\n <input\n type=\"radio\"\n vkuiClass=\"ActionSheetItem__radio\"\n name={name}\n value={value}\n onChange={onChange}\n onClick={onItemClick(noop, noop, Boolean(autoclose))}\n defaultChecked={defaultChecked}\n checked={checked}\n disabled={restProps.disabled}\n />\n <div vkuiClass=\"ActionSheetItem__marker\">\n {platform === VKCOM ? <Icon24Done /> : <Icon16Done />}\n </div>\n </div>\n )}\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheetItem\n */\nexport const ActionSheetItem = withAdaptivity(ActionSheetItemComponent, {\n sizeY: true,\n});\n"],"file":"ActionSheetItem.js"}
1
+ {"version":3,"sources":["../../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"names":["React","classNames","Tappable","usePlatform","hasReactNode","noop","Platform","Subhead","Text","Icon24CheckCircleOn","ActionSheetContext","withAdaptivity","ActionSheetItemComponent","children","autoclose","mode","meta","subtitle","before","selectable","value","name","checked","defaultChecked","onChange","onClick","sizeY","onImmediateClick","multiline","restProps","platform","useContext","onItemClick","isDesktop","Component","href","isRich","isCentered","IOS","Boolean","undefined","disabled","ActionSheetItem"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,QAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT,EAAuBC,IAAvB;AACA,SAASC,QAAT;AACA,SAASC,OAAT;AACA,SAASC,IAAT;AACA,SAASC,mBAAT,QAAoC,kBAApC;AACA,SACEC,kBADF;AAIA,SAA0BC,cAA1B;AACA;;AA8BA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAA2B,OAkBL;AAAA,MAjB1BC,QAiB0B,QAjB1BA,QAiB0B;AAAA,MAhB1BC,SAgB0B,QAhB1BA,SAgB0B;AAAA,uBAf1BC,IAe0B;AAAA,MAf1BA,IAe0B,0BAfnB,SAemB;AAAA,MAd1BC,IAc0B,QAd1BA,IAc0B;AAAA,MAb1BC,QAa0B,QAb1BA,QAa0B;AAAA,MAZ1BC,MAY0B,QAZ1BA,MAY0B;AAAA,MAX1BC,UAW0B,QAX1BA,UAW0B;AAAA,MAV1BC,KAU0B,QAV1BA,KAU0B;AAAA,MAT1BC,IAS0B,QAT1BA,IAS0B;AAAA,MAR1BC,OAQ0B,QAR1BA,OAQ0B;AAAA,MAP1BC,cAO0B,QAP1BA,cAO0B;AAAA,MAN1BC,QAM0B,QAN1BA,QAM0B;AAAA,MAL1BC,OAK0B,QAL1BA,OAK0B;AAAA,MAJ1BC,KAI0B,QAJ1BA,KAI0B;AAAA,MAH1BC,gBAG0B,QAH1BA,gBAG0B;AAAA,4BAF1BC,SAE0B;AAAA,MAF1BA,SAE0B,+BAFd,KAEc;AAAA,MADvBC,SACuB;;AAC1B,MAAMC,QAAQ,GAAG3B,WAAW,EAA5B;;AACA,0BACEH,KAAK,CAAC+B,UAAN,CAAsDrB,kBAAtD,CADF;AAAA,gDAAQsB,WAAR;AAAA,MAAQA,WAAR,sCAAsB;AAAA,WAAM3B,IAAN;AAAA,GAAtB;AAAA,MAAkC4B,SAAlC,qBAAkCA,SAAlC;;AAGA,MAAIC,SAA4B,GAAGL,SAAS,CAACM,IAAV,GAAiB,GAAjB,GAAuB,KAA1D;;AAEA,MAAIhB,UAAJ,EAAgB;AACde,IAAAA,SAAS,GAAG,OAAZ;AACD;;AAED,MAAME,MAAM,GAAGhC,YAAY,CAACa,QAAD,CAAZ,IAA0Bb,YAAY,CAACY,IAAD,CAAtC,IAAgDG,UAA/D;AACA,MAAMkB,UAAU,GACd,CAACD,MAAD,IAAW,CAAChC,YAAY,CAACc,MAAD,CAAxB,IAAoCY,QAAQ,KAAKxB,QAAQ,CAACgC,GAD5D;AAGA,SACE,oBAAC,QAAD,eACMT,SADN;AAEE,IAAA,OAAO,EACLV,UAAU,GACNM,OADM,GAENO,WAAW,CAACP,OAAD,EAAUE,gBAAV,EAA4BY,OAAO,CAACzB,SAAD,CAAnC,CALnB;AAOE,IAAA,UAAU,EACRgB,QAAQ,KAAKxB,QAAQ,CAACgC,GAAtB,GAA4B,yBAA5B,GAAwDE,SAR5D;AAUE,IAAA,SAAS,EAAEvC,UAAU,CACnB,iBADmB,EAEnB6B,QAAQ,KAAKxB,QAAQ,CAACgC,GAAtB,IAA6B,sBAFV,6BAGCvB,IAHD,oCAIOW,KAJP,GAKnBU,MAAM,IAAI,uBALS,EAMnBH,SAAS,IAAI,0BANM,CAVvB;AAkBE,IAAA,SAAS,EAAEC;AAlBb,MAoBG9B,YAAY,CAACc,MAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAA0CA,MAA1C,CArBJ,EAuBE;AACE,IAAA,SAAS,EAAEjB,UAAU,CACnB,4BADmB,EAEnB,CAAC2B,SAAD,IAAc,2BAFK;AADvB,KAME;AACE,IAAA,SAAS,EAAE3B,UAAU,CACnB,0BADmB,EAEnBoC,UAAU,IAAI,2BAFK;AADvB,KAME,oBAAC,IAAD;AACE,IAAA,MAAM,EAAEtB,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0ByB,SADpC;AAEE,IAAA,SAAS,EAAC;AAFZ,KAIG3B,QAJH,CANF,EAYGT,YAAY,CAACY,IAAD,CAAZ,IACC,oBAAC,IAAD;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAyCA,IAAzC,CAbJ,CANF,EAsBGZ,YAAY,CAACa,QAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAgDA,QAAhD,CAvBJ,CAvBF,EAiDGE,UAAU,IACT;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AACE,IAAA,IAAI,EAAC,OADP;AAEE,IAAA,SAAS,EAAC,wBAFZ;AAGE,IAAA,IAAI,EAAEE,IAHR;AAIE,IAAA,KAAK,EAAED,KAJT;AAKE,IAAA,QAAQ,EAAEI,QALZ;AAME,IAAA,OAAO,EAAEQ,WAAW,CAAC3B,IAAD,EAAOA,IAAP,EAAakC,OAAO,CAACzB,SAAD,CAApB,CANtB;AAOE,IAAA,cAAc,EAAES,cAPlB;AAQE,IAAA,OAAO,EAAED,OARX;AASE,IAAA,QAAQ,EAAEO,SAAS,CAACY;AATtB,IADF,EAYE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,mBAAD,OADF,CAZF,CAlDJ,CADF;AAsED,CAvGD;AAyGA;AACA;AACA;;;AACA,OAAO,IAAMC,eAAe,GAAG/B,cAAc,CAACC,wBAAD,EAA2B;AACtEc,EAAAA,KAAK,EAAE;AAD+D,CAA3B,CAAtC","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode, noop } from \"../../lib/utils\";\nimport { Platform } from \"../../lib/platform\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Icon24CheckCircleOn } from \"@vkontakte/icons\";\nimport {\n ActionSheetContext,\n ActionSheetContextType,\n} from \"../ActionSheet/ActionSheetContext\";\nimport { AdaptivityProps, withAdaptivity } from \"../../hoc/withAdaptivity\";\nimport \"./ActionSheetItem.css\";\n\nexport interface ActionSheetItemProps\n extends React.HTMLAttributes<HTMLElement>,\n React.AnchorHTMLAttributes<HTMLElement>,\n Pick<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"name\" | \"checked\" | \"value\"\n >,\n AdaptivityProps {\n mode?: \"default\" | \"destructive\" | \"cancel\";\n before?: React.ReactNode;\n meta?: React.ReactNode;\n subtitle?: React.ReactNode;\n autoclose?: boolean;\n selectable?: boolean;\n disabled?: boolean;\n /**\n * Все текстовые элементы при необходимости занимают несколько строк\n */\n multiline?: boolean;\n /**\n * Если autoclose === true, onClick будет вызван после завершения анимации скрытия и после вызова onClose.\n * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.\n * Если вам нужен объект события именно на момент клика, используйте `onImmediateClick`.\n */\n onClick?: React.MouseEventHandler<HTMLElement>;\n onImmediateClick?: React.MouseEventHandler<HTMLElement>;\n}\n\nconst ActionSheetItemComponent = ({\n children,\n autoclose,\n mode = \"default\",\n meta,\n subtitle,\n before,\n selectable,\n value,\n name,\n checked,\n defaultChecked,\n onChange,\n onClick,\n sizeY,\n onImmediateClick,\n multiline = false,\n ...restProps\n}: ActionSheetItemProps) => {\n const platform = usePlatform();\n const { onItemClick = () => noop, isDesktop } =\n React.useContext<ActionSheetContextType<HTMLElement>>(ActionSheetContext);\n\n let Component: React.ElementType = restProps.href ? \"a\" : \"div\";\n\n if (selectable) {\n Component = \"label\";\n }\n\n const isRich = hasReactNode(subtitle) || hasReactNode(meta) || selectable;\n const isCentered =\n !isRich && !hasReactNode(before) && platform === Platform.IOS;\n\n return (\n <Tappable\n {...restProps}\n onClick={\n selectable\n ? onClick\n : onItemClick(onClick, onImmediateClick, Boolean(autoclose))\n }\n activeMode={\n platform === Platform.IOS ? \"ActionSheetItem--active\" : undefined\n }\n vkuiClass={classNames(\n \"ActionSheetItem\",\n platform === Platform.IOS && \"ActionSheetItem--ios\",\n `ActionSheetItem--${mode}`,\n `ActionSheetItem--sizeY-${sizeY}`,\n isRich && \"ActionSheetItem--rich\",\n isDesktop && \"ActionSheetItem--desktop\"\n )}\n Component={Component}\n >\n {hasReactNode(before) && (\n <div vkuiClass=\"ActionSheetItem__before\">{before}</div>\n )}\n <div\n vkuiClass={classNames(\n \"ActionSheetItem__container\",\n !multiline && \"ActionSheetItem--ellipsis\"\n )}\n >\n <div\n vkuiClass={classNames(\n \"ActionSheetItem__content\",\n isCentered && \"ActionSheetItem--centered\"\n )}\n >\n <Text\n weight={mode === \"cancel\" ? \"2\" : undefined}\n vkuiClass=\"ActionSheetItem__children\"\n >\n {children}\n </Text>\n {hasReactNode(meta) && (\n <Text vkuiClass=\"ActionSheetItem__meta\">{meta}</Text>\n )}\n </div>\n {hasReactNode(subtitle) && (\n <Subhead vkuiClass=\"ActionSheetItem__subtitle\">{subtitle}</Subhead>\n )}\n </div>\n {selectable && (\n <div vkuiClass=\"ActionSheetItem__after\">\n <input\n type=\"radio\"\n vkuiClass=\"ActionSheetItem__radio\"\n name={name}\n value={value}\n onChange={onChange}\n onClick={onItemClick(noop, noop, Boolean(autoclose))}\n defaultChecked={defaultChecked}\n checked={checked}\n disabled={restProps.disabled}\n />\n <div vkuiClass=\"ActionSheetItem__marker\">\n <Icon24CheckCircleOn />\n </div>\n </div>\n )}\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheetItem\n */\nexport const ActionSheetItem = withAdaptivity(ActionSheetItemComponent, {\n sizeY: true,\n});\n"],"file":"ActionSheetItem.js"}
@@ -6,10 +6,10 @@ export declare const SMALL_TABLET_SIZE = 768;
6
6
  export declare const MOBILE_SIZE = 320;
7
7
  export declare const MOBILE_LANDSCAPE_HEIGHT = 414;
8
8
  export declare const MEDIUM_HEIGHT = 720;
9
+ export interface AdaptivityProviderProps extends AdaptivityProps {
10
+ children?: React.ReactNode;
11
+ }
9
12
  /**
10
13
  * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider
11
14
  */
12
- declare const AdaptivityProvider: (props: AdaptivityProps & {
13
- children?: React.ReactNode;
14
- }) => JSX.Element;
15
- export { AdaptivityProvider };
15
+ export declare const AdaptivityProvider: (props: AdaptivityProviderProps) => JSX.Element;
@@ -11,11 +11,11 @@ export var SMALL_TABLET_SIZE = 768;
11
11
  export var MOBILE_SIZE = 320;
12
12
  export var MOBILE_LANDSCAPE_HEIGHT = 414;
13
13
  export var MEDIUM_HEIGHT = 720;
14
+
14
15
  /**
15
16
  * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider
16
17
  */
17
-
18
- var AdaptivityProvider = function AdaptivityProvider(props) {
18
+ export var AdaptivityProvider = function AdaptivityProvider(props) {
19
19
  var adaptivityRef = React.useRef(null);
20
20
 
21
21
  var _React$useState = React.useState({}),
@@ -144,6 +144,4 @@ function calculateAdaptivity(props, bridge, window) {
144
144
  deviceHasHover: deviceHasHover
145
145
  };
146
146
  }
147
-
148
- export { AdaptivityProvider };
149
147
  //# sourceMappingURL=AdaptivityProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/AdaptivityProvider/AdaptivityProvider.tsx"],"names":["React","hasMouse","_hasMouse","hasHover","_hasHover","AdaptivityContext","SizeType","ViewHeight","ViewWidth","useDOM","useBridgeAdaptivity","DESKTOP_SIZE","TABLET_SIZE","SMALL_TABLET_SIZE","MOBILE_SIZE","MOBILE_LANDSCAPE_HEIGHT","MEDIUM_HEIGHT","AdaptivityProvider","props","adaptivityRef","useRef","useState","updateAdaptivity","bridge","window","current","calculateAdaptivity","useEffect","onResize","calculated","viewWidth","viewHeight","sizeX","sizeY","deviceHasHover","addEventListener","removeEventListener","children","windowWidth","windowHeight","type","viewportWidth","viewportHeight","innerWidth","innerHeight","SMALL_MOBILE","SMALL","REGULAR","DESKTOP","TABLET","SMALL_TABLET","MOBILE","MEDIUM","EXTRA_SMALL","COMPACT"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { hasMouse as _hasMouse, hasHover as _hasHover } from \"@vkontakte/vkjs\";\nimport {\n AdaptivityContext,\n AdaptivityProps,\n SizeType,\n ViewHeight,\n ViewWidth,\n} from \"./AdaptivityContext\";\nimport { useDOM } from \"../../lib/dom\";\nimport {\n useBridgeAdaptivity,\n BridgeAdaptivity,\n} from \"../../hooks/useBridgeAdaptivity\";\n\nexport const DESKTOP_SIZE = 1280;\nexport const TABLET_SIZE = 1024;\nexport const SMALL_TABLET_SIZE = 768;\nexport const MOBILE_SIZE = 320;\n\nexport const MOBILE_LANDSCAPE_HEIGHT = 414;\nexport const MEDIUM_HEIGHT = 720;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider\n */\nconst AdaptivityProvider = (\n props: React.PropsWithChildren<AdaptivityProps>\n) => {\n const adaptivityRef = React.useRef<ReturnType<\n typeof calculateAdaptivity\n > | null>(null);\n const [, updateAdaptivity] = React.useState({});\n const bridge = useBridgeAdaptivity();\n\n const { window } = useDOM();\n\n if (!adaptivityRef.current) {\n adaptivityRef.current = calculateAdaptivity(props, bridge, window);\n }\n\n React.useEffect(() => {\n function onResize() {\n if (adaptivityRef.current === null) {\n return;\n }\n\n const calculated = calculateAdaptivity(props, bridge, window);\n const { viewWidth, viewHeight, sizeX, sizeY, hasMouse, deviceHasHover } =\n adaptivityRef.current;\n\n if (\n viewWidth !== calculated.viewWidth ||\n viewHeight !== calculated.viewHeight ||\n sizeX !== calculated.sizeX ||\n sizeY !== calculated.sizeY ||\n hasMouse !== calculated.hasMouse ||\n deviceHasHover !== calculated.deviceHasHover\n ) {\n adaptivityRef.current = calculated;\n updateAdaptivity({});\n }\n }\n\n onResize();\n window!.addEventListener(\"resize\", onResize, false);\n\n return () => {\n window!.removeEventListener(\"resize\", onResize, false);\n };\n }, [\n props.viewWidth,\n props.viewHeight,\n props.sizeX,\n props.sizeY,\n props.hasMouse,\n props.deviceHasHover,\n window,\n props,\n bridge,\n ]);\n\n return (\n <AdaptivityContext.Provider value={adaptivityRef.current}>\n {props.children}\n </AdaptivityContext.Provider>\n );\n};\n\nfunction calculateAdaptivity(\n props: AdaptivityProps,\n bridge: BridgeAdaptivity,\n window?: Window\n) {\n let windowWidth = 0;\n let windowHeight = 0;\n\n if (bridge.type === \"adaptive\") {\n windowWidth = bridge.viewportWidth;\n windowHeight = bridge.viewportHeight;\n } else if (window) {\n windowWidth = window.innerWidth;\n windowHeight = window.innerHeight;\n }\n\n let viewWidth = ViewWidth.SMALL_MOBILE;\n let viewHeight = ViewHeight.SMALL;\n let sizeY = SizeType.REGULAR;\n let sizeX = SizeType.REGULAR;\n let hasMouse = _hasMouse;\n let deviceHasHover = _hasHover;\n\n if (windowWidth >= DESKTOP_SIZE) {\n viewWidth = ViewWidth.DESKTOP;\n } else if (windowWidth >= TABLET_SIZE) {\n viewWidth = ViewWidth.TABLET;\n } else if (windowWidth >= SMALL_TABLET_SIZE) {\n viewWidth = ViewWidth.SMALL_TABLET;\n } else if (windowWidth >= MOBILE_SIZE) {\n viewWidth = ViewWidth.MOBILE;\n } else {\n viewWidth = ViewWidth.SMALL_MOBILE;\n }\n\n if (windowHeight >= MEDIUM_HEIGHT) {\n viewHeight = ViewHeight.MEDIUM;\n } else if (windowHeight > MOBILE_LANDSCAPE_HEIGHT) {\n viewHeight = ViewHeight.SMALL;\n } else {\n viewHeight = ViewHeight.EXTRA_SMALL;\n }\n\n if (!bridge.type) {\n props.viewWidth && (viewWidth = props.viewWidth);\n props.viewHeight && (viewHeight = props.viewHeight);\n\n hasMouse = props.hasMouse ?? hasMouse;\n deviceHasHover = props.deviceHasHover ?? deviceHasHover;\n }\n\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n }\n\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && hasMouse) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n }\n\n if (!bridge.type) {\n props.sizeX && (sizeX = props.sizeX);\n props.sizeY && (sizeY = props.sizeY);\n }\n\n if (\n bridge.type === \"force_mobile\" ||\n bridge.type === \"force_mobile_compact\"\n ) {\n viewWidth = ViewWidth.MOBILE;\n sizeX = SizeType.COMPACT;\n\n if (bridge.type === \"force_mobile_compact\") {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n }\n\n return { viewWidth, viewHeight, sizeX, sizeY, hasMouse, deviceHasHover };\n}\n\nexport { AdaptivityProvider };\n"],"file":"AdaptivityProvider.js"}
1
+ {"version":3,"sources":["../../../../src/components/AdaptivityProvider/AdaptivityProvider.tsx"],"names":["React","hasMouse","_hasMouse","hasHover","_hasHover","AdaptivityContext","SizeType","ViewHeight","ViewWidth","useDOM","useBridgeAdaptivity","DESKTOP_SIZE","TABLET_SIZE","SMALL_TABLET_SIZE","MOBILE_SIZE","MOBILE_LANDSCAPE_HEIGHT","MEDIUM_HEIGHT","AdaptivityProvider","props","adaptivityRef","useRef","useState","updateAdaptivity","bridge","window","current","calculateAdaptivity","useEffect","onResize","calculated","viewWidth","viewHeight","sizeX","sizeY","deviceHasHover","addEventListener","removeEventListener","children","windowWidth","windowHeight","type","viewportWidth","viewportHeight","innerWidth","innerHeight","SMALL_MOBILE","SMALL","REGULAR","DESKTOP","TABLET","SMALL_TABLET","MOBILE","MEDIUM","EXTRA_SMALL","COMPACT"],"mappings":";;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,QAAQ,IAAIC,SAArB,EAAgCC,QAAQ,IAAIC,SAA5C,QAA6D,iBAA7D;AACA,SACEC,iBADF,EAGEC,QAHF,EAIEC,UAJF,EAKEC,SALF;AAOA,SAASC,MAAT;AACA,SACEC,mBADF;AAKA,OAAO,IAAMC,YAAY,GAAG,IAArB;AACP,OAAO,IAAMC,WAAW,GAAG,IAApB;AACP,OAAO,IAAMC,iBAAiB,GAAG,GAA1B;AACP,OAAO,IAAMC,WAAW,GAAG,GAApB;AAEP,OAAO,IAAMC,uBAAuB,GAAG,GAAhC;AACP,OAAO,IAAMC,aAAa,GAAG,GAAtB;;AAMP;AACA;AACA;AACA,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAAoC;AACpE,MAAMC,aAAa,GAAGnB,KAAK,CAACoB,MAAN,CAEZ,IAFY,CAAtB;;AAGA,wBAA6BpB,KAAK,CAACqB,QAAN,CAAe,EAAf,CAA7B;AAAA;AAAA,MAASC,gBAAT;;AACA,MAAMC,MAAM,GAAGb,mBAAmB,EAAlC;;AAEA,gBAAmBD,MAAM,EAAzB;AAAA,MAAQe,MAAR,WAAQA,MAAR;;AAEA,MAAI,CAACL,aAAa,CAACM,OAAnB,EAA4B;AAC1BN,IAAAA,aAAa,CAACM,OAAd,GAAwBC,mBAAmB,CAACR,KAAD,EAAQK,MAAR,EAAgBC,MAAhB,CAA3C;AACD;;AAEDxB,EAAAA,KAAK,CAAC2B,SAAN,CAAgB,YAAM;AACpB,aAASC,QAAT,GAAoB;AAClB,UAAIT,aAAa,CAACM,OAAd,KAA0B,IAA9B,EAAoC;AAClC;AACD;;AAED,UAAMI,UAAU,GAAGH,mBAAmB,CAACR,KAAD,EAAQK,MAAR,EAAgBC,MAAhB,CAAtC;AACA,kCACEL,aAAa,CAACM,OADhB;AAAA,UAAQK,SAAR,yBAAQA,SAAR;AAAA,UAAmBC,UAAnB,yBAAmBA,UAAnB;AAAA,UAA+BC,KAA/B,yBAA+BA,KAA/B;AAAA,UAAsCC,KAAtC,yBAAsCA,KAAtC;AAAA,UAA6ChC,QAA7C,yBAA6CA,QAA7C;AAAA,UAAuDiC,cAAvD,yBAAuDA,cAAvD;;AAGA,UACEJ,SAAS,KAAKD,UAAU,CAACC,SAAzB,IACAC,UAAU,KAAKF,UAAU,CAACE,UAD1B,IAEAC,KAAK,KAAKH,UAAU,CAACG,KAFrB,IAGAC,KAAK,KAAKJ,UAAU,CAACI,KAHrB,IAIAhC,QAAQ,KAAK4B,UAAU,CAAC5B,QAJxB,IAKAiC,cAAc,KAAKL,UAAU,CAACK,cANhC,EAOE;AACAf,QAAAA,aAAa,CAACM,OAAd,GAAwBI,UAAxB;AACAP,QAAAA,gBAAgB,CAAC,EAAD,CAAhB;AACD;AACF;;AAEDM,IAAAA,QAAQ;AACRJ,IAAAA,MAAM,CAAEW,gBAAR,CAAyB,QAAzB,EAAmCP,QAAnC,EAA6C,KAA7C;AAEA,WAAO,YAAM;AACXJ,MAAAA,MAAM,CAAEY,mBAAR,CAA4B,QAA5B,EAAsCR,QAAtC,EAAgD,KAAhD;AACD,KAFD;AAGD,GA7BD,EA6BG,CACDV,KAAK,CAACY,SADL,EAEDZ,KAAK,CAACa,UAFL,EAGDb,KAAK,CAACc,KAHL,EAIDd,KAAK,CAACe,KAJL,EAKDf,KAAK,CAACjB,QALL,EAMDiB,KAAK,CAACgB,cANL,EAODV,MAPC,EAQDN,KARC,EASDK,MATC,CA7BH;AAyCA,SACE,oBAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEJ,aAAa,CAACM;AAAjD,KACGP,KAAK,CAACmB,QADT,CADF;AAKD,CA3DM;;AA6DP,SAASX,mBAAT,CACER,KADF,EAEEK,MAFF,EAGEC,MAHF,EAIE;AACA,MAAIc,WAAW,GAAG,CAAlB;AACA,MAAIC,YAAY,GAAG,CAAnB;;AAEA,MAAIhB,MAAM,CAACiB,IAAP,KAAgB,UAApB,EAAgC;AAC9BF,IAAAA,WAAW,GAAGf,MAAM,CAACkB,aAArB;AACAF,IAAAA,YAAY,GAAGhB,MAAM,CAACmB,cAAtB;AACD,GAHD,MAGO,IAAIlB,MAAJ,EAAY;AACjBc,IAAAA,WAAW,GAAGd,MAAM,CAACmB,UAArB;AACAJ,IAAAA,YAAY,GAAGf,MAAM,CAACoB,WAAtB;AACD;;AAED,MAAId,SAAS,GAAGtB,SAAS,CAACqC,YAA1B;AACA,MAAId,UAAU,GAAGxB,UAAU,CAACuC,KAA5B;AACA,MAAIb,KAAK,GAAG3B,QAAQ,CAACyC,OAArB;AACA,MAAIf,KAAK,GAAG1B,QAAQ,CAACyC,OAArB;AACA,MAAI9C,QAAQ,GAAGC,SAAf;AACA,MAAIgC,cAAc,GAAG9B,SAArB;;AAEA,MAAIkC,WAAW,IAAI3B,YAAnB,EAAiC;AAC/BmB,IAAAA,SAAS,GAAGtB,SAAS,CAACwC,OAAtB;AACD,GAFD,MAEO,IAAIV,WAAW,IAAI1B,WAAnB,EAAgC;AACrCkB,IAAAA,SAAS,GAAGtB,SAAS,CAACyC,MAAtB;AACD,GAFM,MAEA,IAAIX,WAAW,IAAIzB,iBAAnB,EAAsC;AAC3CiB,IAAAA,SAAS,GAAGtB,SAAS,CAAC0C,YAAtB;AACD,GAFM,MAEA,IAAIZ,WAAW,IAAIxB,WAAnB,EAAgC;AACrCgB,IAAAA,SAAS,GAAGtB,SAAS,CAAC2C,MAAtB;AACD,GAFM,MAEA;AACLrB,IAAAA,SAAS,GAAGtB,SAAS,CAACqC,YAAtB;AACD;;AAED,MAAIN,YAAY,IAAIvB,aAApB,EAAmC;AACjCe,IAAAA,UAAU,GAAGxB,UAAU,CAAC6C,MAAxB;AACD,GAFD,MAEO,IAAIb,YAAY,GAAGxB,uBAAnB,EAA4C;AACjDgB,IAAAA,UAAU,GAAGxB,UAAU,CAACuC,KAAxB;AACD,GAFM,MAEA;AACLf,IAAAA,UAAU,GAAGxB,UAAU,CAAC8C,WAAxB;AACD;;AAED,MAAI,CAAC9B,MAAM,CAACiB,IAAZ,EAAkB;AAAA;;AAChBtB,IAAAA,KAAK,CAACY,SAAN,KAAoBA,SAAS,GAAGZ,KAAK,CAACY,SAAtC;AACAZ,IAAAA,KAAK,CAACa,UAAN,KAAqBA,UAAU,GAAGb,KAAK,CAACa,UAAxC;AAEA9B,IAAAA,QAAQ,sBAAGiB,KAAK,CAACjB,QAAT,6DAAqBA,QAA7B;AACAiC,IAAAA,cAAc,4BAAGhB,KAAK,CAACgB,cAAT,yEAA2BA,cAAzC;AACD;;AAED,MAAIJ,SAAS,IAAItB,SAAS,CAAC2C,MAA3B,EAAmC;AACjCnB,IAAAA,KAAK,GAAG1B,QAAQ,CAACgD,OAAjB;AACD;;AAED,MACGxB,SAAS,IAAItB,SAAS,CAAC0C,YAAvB,IAAuCjD,QAAxC,IACA8B,UAAU,IAAIxB,UAAU,CAAC8C,WAF3B,EAGE;AACApB,IAAAA,KAAK,GAAG3B,QAAQ,CAACgD,OAAjB;AACD;;AAED,MAAI,CAAC/B,MAAM,CAACiB,IAAZ,EAAkB;AAChBtB,IAAAA,KAAK,CAACc,KAAN,KAAgBA,KAAK,GAAGd,KAAK,CAACc,KAA9B;AACAd,IAAAA,KAAK,CAACe,KAAN,KAAgBA,KAAK,GAAGf,KAAK,CAACe,KAA9B;AACD;;AAED,MACEV,MAAM,CAACiB,IAAP,KAAgB,cAAhB,IACAjB,MAAM,CAACiB,IAAP,KAAgB,sBAFlB,EAGE;AACAV,IAAAA,SAAS,GAAGtB,SAAS,CAAC2C,MAAtB;AACAnB,IAAAA,KAAK,GAAG1B,QAAQ,CAACgD,OAAjB;;AAEA,QAAI/B,MAAM,CAACiB,IAAP,KAAgB,sBAApB,EAA4C;AAC1CP,MAAAA,KAAK,GAAG3B,QAAQ,CAACgD,OAAjB;AACD,KAFD,MAEO;AACLrB,MAAAA,KAAK,GAAG3B,QAAQ,CAACyC,OAAjB;AACD;AACF;;AAED,SAAO;AAAEjB,IAAAA,SAAS,EAATA,SAAF;AAAaC,IAAAA,UAAU,EAAVA,UAAb;AAAyBC,IAAAA,KAAK,EAALA,KAAzB;AAAgCC,IAAAA,KAAK,EAALA,KAAhC;AAAuChC,IAAAA,QAAQ,EAARA,QAAvC;AAAiDiC,IAAAA,cAAc,EAAdA;AAAjD,GAAP;AACD","sourcesContent":["import * as React from \"react\";\nimport { hasMouse as _hasMouse, hasHover as _hasHover } from \"@vkontakte/vkjs\";\nimport {\n AdaptivityContext,\n AdaptivityProps,\n SizeType,\n ViewHeight,\n ViewWidth,\n} from \"./AdaptivityContext\";\nimport { useDOM } from \"../../lib/dom\";\nimport {\n useBridgeAdaptivity,\n BridgeAdaptivity,\n} from \"../../hooks/useBridgeAdaptivity\";\n\nexport const DESKTOP_SIZE = 1280;\nexport const TABLET_SIZE = 1024;\nexport const SMALL_TABLET_SIZE = 768;\nexport const MOBILE_SIZE = 320;\n\nexport const MOBILE_LANDSCAPE_HEIGHT = 414;\nexport const MEDIUM_HEIGHT = 720;\n\nexport interface AdaptivityProviderProps extends AdaptivityProps {\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider\n */\nexport const AdaptivityProvider = (props: AdaptivityProviderProps) => {\n const adaptivityRef = React.useRef<ReturnType<\n typeof calculateAdaptivity\n > | null>(null);\n const [, updateAdaptivity] = React.useState({});\n const bridge = useBridgeAdaptivity();\n\n const { window } = useDOM();\n\n if (!adaptivityRef.current) {\n adaptivityRef.current = calculateAdaptivity(props, bridge, window);\n }\n\n React.useEffect(() => {\n function onResize() {\n if (adaptivityRef.current === null) {\n return;\n }\n\n const calculated = calculateAdaptivity(props, bridge, window);\n const { viewWidth, viewHeight, sizeX, sizeY, hasMouse, deviceHasHover } =\n adaptivityRef.current;\n\n if (\n viewWidth !== calculated.viewWidth ||\n viewHeight !== calculated.viewHeight ||\n sizeX !== calculated.sizeX ||\n sizeY !== calculated.sizeY ||\n hasMouse !== calculated.hasMouse ||\n deviceHasHover !== calculated.deviceHasHover\n ) {\n adaptivityRef.current = calculated;\n updateAdaptivity({});\n }\n }\n\n onResize();\n window!.addEventListener(\"resize\", onResize, false);\n\n return () => {\n window!.removeEventListener(\"resize\", onResize, false);\n };\n }, [\n props.viewWidth,\n props.viewHeight,\n props.sizeX,\n props.sizeY,\n props.hasMouse,\n props.deviceHasHover,\n window,\n props,\n bridge,\n ]);\n\n return (\n <AdaptivityContext.Provider value={adaptivityRef.current}>\n {props.children}\n </AdaptivityContext.Provider>\n );\n};\n\nfunction calculateAdaptivity(\n props: AdaptivityProps,\n bridge: BridgeAdaptivity,\n window?: Window\n) {\n let windowWidth = 0;\n let windowHeight = 0;\n\n if (bridge.type === \"adaptive\") {\n windowWidth = bridge.viewportWidth;\n windowHeight = bridge.viewportHeight;\n } else if (window) {\n windowWidth = window.innerWidth;\n windowHeight = window.innerHeight;\n }\n\n let viewWidth = ViewWidth.SMALL_MOBILE;\n let viewHeight = ViewHeight.SMALL;\n let sizeY = SizeType.REGULAR;\n let sizeX = SizeType.REGULAR;\n let hasMouse = _hasMouse;\n let deviceHasHover = _hasHover;\n\n if (windowWidth >= DESKTOP_SIZE) {\n viewWidth = ViewWidth.DESKTOP;\n } else if (windowWidth >= TABLET_SIZE) {\n viewWidth = ViewWidth.TABLET;\n } else if (windowWidth >= SMALL_TABLET_SIZE) {\n viewWidth = ViewWidth.SMALL_TABLET;\n } else if (windowWidth >= MOBILE_SIZE) {\n viewWidth = ViewWidth.MOBILE;\n } else {\n viewWidth = ViewWidth.SMALL_MOBILE;\n }\n\n if (windowHeight >= MEDIUM_HEIGHT) {\n viewHeight = ViewHeight.MEDIUM;\n } else if (windowHeight > MOBILE_LANDSCAPE_HEIGHT) {\n viewHeight = ViewHeight.SMALL;\n } else {\n viewHeight = ViewHeight.EXTRA_SMALL;\n }\n\n if (!bridge.type) {\n props.viewWidth && (viewWidth = props.viewWidth);\n props.viewHeight && (viewHeight = props.viewHeight);\n\n hasMouse = props.hasMouse ?? hasMouse;\n deviceHasHover = props.deviceHasHover ?? deviceHasHover;\n }\n\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n }\n\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && hasMouse) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n }\n\n if (!bridge.type) {\n props.sizeX && (sizeX = props.sizeX);\n props.sizeY && (sizeY = props.sizeY);\n }\n\n if (\n bridge.type === \"force_mobile\" ||\n bridge.type === \"force_mobile_compact\"\n ) {\n viewWidth = ViewWidth.MOBILE;\n sizeX = SizeType.COMPACT;\n\n if (bridge.type === \"force_mobile_compact\") {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n }\n\n return { viewWidth, viewHeight, sizeX, sizeY, hasMouse, deviceHasHover };\n}\n"],"file":"AdaptivityProvider.js"}