@vkontakte/vkui 4.35.2 → 4.36.1

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 (651) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +21609 -18312
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  6. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  7. package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  8. package/.cache/ts/src/components/Chip/Chip.d.ts +12 -5
  9. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +5 -26
  10. package/.cache/ts/src/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  11. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  12. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  13. package/.cache/ts/src/components/DateInput/DateInput.d.ts +4 -2
  14. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  15. package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  16. package/.cache/ts/src/components/FormField/FormField.d.ts +2 -1
  17. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  18. package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +1 -0
  19. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  20. package/.cache/ts/src/components/List/List.d.ts +2 -1
  21. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +13 -1
  22. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -2
  23. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  24. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  25. package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -2
  26. package/.cache/ts/src/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  27. package/{dist/cssm/components/ChipsSelect → .cache/ts/src/hooks}/useChipsSelect.d.ts +4 -4
  28. package/.cache/ts/src/index.d.ts +3 -0
  29. package/.cache/ts/src/tokenized/index.d.ts +56 -0
  30. package/README.md +3 -2
  31. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -4
  32. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  33. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +24 -0
  34. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  35. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +10 -8
  36. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  37. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -5
  38. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  39. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -39
  40. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  41. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +2 -3
  42. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  43. package/dist/cjs/components/Alert/Alert.js +11 -12
  44. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  45. package/dist/cjs/components/AppRoot/AppRoot.js +2 -5
  46. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  47. package/dist/cjs/components/Avatar/Avatar.js +4 -17
  48. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  49. package/dist/cjs/components/Banner/Banner.js +41 -47
  50. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  51. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  52. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -21
  53. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  54. package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
  55. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  56. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  57. package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
  58. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  59. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
  60. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  61. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +44 -27
  62. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  63. package/dist/cjs/components/CustomSelect/CustomSelect.js +32 -31
  64. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  65. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  66. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  67. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
  68. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  69. package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
  70. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  71. package/dist/cjs/components/FormField/FormField.js +4 -2
  72. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  73. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
  74. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  75. package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
  76. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  77. package/dist/cjs/components/Header/Header.js +3 -11
  78. package/dist/cjs/components/Header/Header.js.map +1 -1
  79. package/dist/cjs/components/IconButton/IconButton.js +4 -3
  80. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  81. package/dist/cjs/components/Input/Input.js +4 -2
  82. package/dist/cjs/components/Input/Input.js.map +1 -1
  83. package/dist/cjs/components/List/List.js.map +1 -1
  84. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
  85. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  86. package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
  87. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  88. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
  89. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  90. package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
  91. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  92. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
  93. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  94. package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
  95. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  96. package/dist/cjs/components/Panel/Panel.js +4 -10
  97. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  98. package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
  99. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  100. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
  101. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  102. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  103. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  104. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  105. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  106. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -4
  107. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  108. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
  109. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  110. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  111. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  112. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  113. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  114. package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -6
  115. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  116. package/dist/cjs/components/Search/Search.js +7 -9
  117. package/dist/cjs/components/Search/Search.js.map +1 -1
  118. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
  119. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  120. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
  121. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  122. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
  123. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  124. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
  125. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  126. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -5
  127. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  128. package/dist/cjs/components/Tappable/Tappable.js +8 -16
  129. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  130. package/dist/cjs/components/Textarea/Textarea.js +4 -2
  131. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  132. package/dist/cjs/components/UsersStack/UsersStack.js +71 -34
  133. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  134. package/dist/cjs/components/View/View.js +2 -7
  135. package/dist/cjs/components/View/View.js.map +1 -1
  136. package/dist/cjs/components/View/ViewInfinite.js +1 -10
  137. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  138. package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
  139. package/dist/cjs/hooks/useChipsInput.js.map +1 -0
  140. package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  141. package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
  142. package/dist/cjs/index.js +8 -0
  143. package/dist/cjs/index.js.map +1 -1
  144. package/dist/cjs/lib/animate.js +2 -2
  145. package/dist/cjs/lib/animate.js.map +1 -1
  146. package/dist/cjs/lib/platform.js +9 -4
  147. package/dist/cjs/lib/platform.js.map +1 -1
  148. package/dist/cjs/lib/testing.js +2 -2
  149. package/dist/cjs/lib/testing.js.map +1 -1
  150. package/dist/cjs/lib/touch.js +2 -2
  151. package/dist/cjs/lib/touch.js.map +1 -1
  152. package/dist/cjs/tokenized/index.js +232 -0
  153. package/dist/cjs/tokenized/index.js.map +1 -1
  154. package/dist/components/ActionSheet/ActionSheet.js +4 -4
  155. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  156. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  157. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  158. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  159. package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
  160. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  161. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  162. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  163. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  164. package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
  165. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  166. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  167. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  168. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  169. package/dist/components/Alert/Alert.js +12 -12
  170. package/dist/components/Alert/Alert.js.map +1 -1
  171. package/dist/components/AppRoot/AppRoot.js +2 -5
  172. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  173. package/dist/components/Avatar/Avatar.js +4 -17
  174. package/dist/components/Avatar/Avatar.js.map +1 -1
  175. package/dist/components/Banner/Banner.js +41 -48
  176. package/dist/components/Banner/Banner.js.map +1 -1
  177. package/dist/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  178. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  179. package/dist/components/CalendarDay/CalendarDay.js +4 -21
  180. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  181. package/dist/components/CardScroll/CardScroll.js +1 -3
  182. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  183. package/dist/components/Chip/Chip.d.ts +12 -5
  184. package/dist/components/Chip/Chip.js.map +1 -1
  185. package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
  186. package/dist/components/ChipsInput/ChipsInput.js +14 -183
  187. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  188. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  189. package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
  190. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  191. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  192. package/dist/components/ChipsSelect/ChipsSelect.js +42 -26
  193. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  194. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  195. package/dist/components/CustomSelect/CustomSelect.js +32 -31
  196. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  197. package/dist/components/DateInput/DateInput.d.ts +4 -2
  198. package/dist/components/DateInput/DateInput.js +4 -2
  199. package/dist/components/DateInput/DateInput.js.map +1 -1
  200. package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  201. package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
  202. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  203. package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  204. package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
  205. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  206. package/dist/components/FormField/FormField.d.ts +2 -1
  207. package/dist/components/FormField/FormField.js +4 -2
  208. package/dist/components/FormField/FormField.js.map +1 -1
  209. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  210. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  211. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  212. package/dist/components/FormStatus/FormStatus.d.ts +1 -0
  213. package/dist/components/FormStatus/FormStatus.js +4 -4
  214. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  215. package/dist/components/Header/Header.js +3 -10
  216. package/dist/components/Header/Header.js.map +1 -1
  217. package/dist/components/IconButton/IconButton.js +4 -3
  218. package/dist/components/IconButton/IconButton.js.map +1 -1
  219. package/dist/components/Input/Input.d.ts +1 -1
  220. package/dist/components/Input/Input.js +4 -2
  221. package/dist/components/Input/Input.js.map +1 -1
  222. package/dist/components/List/List.d.ts +2 -1
  223. package/dist/components/List/List.js.map +1 -1
  224. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
  225. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  226. package/dist/components/ModalPage/ModalPage.d.ts +13 -1
  227. package/dist/components/ModalPage/ModalPage.js +12 -10
  228. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  229. package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
  230. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  231. package/dist/components/ModalRoot/ModalRoot.js +4 -18
  232. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  233. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
  234. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  235. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
  236. package/dist/components/NativeSelect/NativeSelect.js +4 -2
  237. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  238. package/dist/components/Panel/Panel.js +4 -8
  239. package/dist/components/Panel/Panel.js.map +1 -1
  240. package/dist/components/PanelHeader/PanelHeader.js +2 -11
  241. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  242. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  243. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  244. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  245. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  246. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  247. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  248. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +5 -5
  249. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  250. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  251. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  252. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  253. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  254. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  255. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  256. package/dist/components/PromoBanner/PromoBanner.js +1 -4
  257. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  258. package/dist/components/Search/Search.js +6 -8
  259. package/dist/components/Search/Search.js.map +1 -1
  260. package/dist/components/Select/Select.d.ts +1 -1
  261. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  262. package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
  263. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  264. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  265. package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
  266. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  267. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
  268. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  269. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
  270. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  271. package/dist/components/SubnavigationButton/SubnavigationButton.js +2 -5
  272. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  273. package/dist/components/Tappable/Tappable.js +3 -10
  274. package/dist/components/Tappable/Tappable.js.map +1 -1
  275. package/dist/components/Textarea/Textarea.d.ts +3 -2
  276. package/dist/components/Textarea/Textarea.js +4 -2
  277. package/dist/components/Textarea/Textarea.js.map +1 -1
  278. package/dist/components/UsersStack/UsersStack.js +69 -28
  279. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  280. package/dist/components/View/View.js +2 -7
  281. package/dist/components/View/View.js.map +1 -1
  282. package/dist/components/View/ViewInfinite.js +1 -10
  283. package/dist/components/View/ViewInfinite.js.map +1 -1
  284. package/dist/components.css +93 -15
  285. package/dist/components.css.map +1 -1
  286. package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
  287. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
  288. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  289. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  290. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  291. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  292. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
  293. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  294. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  295. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  296. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
  297. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  298. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
  299. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  300. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  301. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  302. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  303. package/dist/cssm/components/Alert/Alert.css +7 -1
  304. package/dist/cssm/components/Alert/Alert.js +12 -12
  305. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  306. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  307. package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
  308. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  309. package/dist/cssm/components/Avatar/Avatar.js +4 -17
  310. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  311. package/dist/cssm/components/Banner/Banner.js +41 -48
  312. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  313. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +6 -2
  314. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  315. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -21
  316. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  317. package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
  318. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  319. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  320. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  321. package/dist/cssm/components/Chip/Chip.css +1 -1
  322. package/dist/cssm/components/Chip/Chip.d.ts +12 -5
  323. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  324. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  325. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
  326. package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
  327. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  328. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
  329. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  330. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
  331. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  332. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  333. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -4
  334. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +42 -26
  335. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  336. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  337. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  338. package/dist/cssm/components/CustomSelect/CustomSelect.js +32 -31
  339. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  340. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  341. package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
  342. package/dist/cssm/components/DateInput/DateInput.js +4 -2
  343. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  344. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  345. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  346. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
  347. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  348. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  349. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
  350. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  351. package/dist/cssm/components/FormField/FormField.css +4 -4
  352. package/dist/cssm/components/FormField/FormField.d.ts +2 -1
  353. package/dist/cssm/components/FormField/FormField.js +4 -2
  354. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  355. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  356. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  357. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  358. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  359. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  360. package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
  361. package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
  362. package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
  363. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  364. package/dist/cssm/components/Header/Header.css +1 -1
  365. package/dist/cssm/components/Header/Header.js +3 -10
  366. package/dist/cssm/components/Header/Header.js.map +1 -1
  367. package/dist/cssm/components/IconButton/IconButton.js +4 -3
  368. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  369. package/dist/cssm/components/Input/Input.css +1 -1
  370. package/dist/cssm/components/Input/Input.d.ts +1 -1
  371. package/dist/cssm/components/Input/Input.js +4 -2
  372. package/dist/cssm/components/Input/Input.js.map +1 -1
  373. package/dist/cssm/components/Link/Link.css +1 -1
  374. package/dist/cssm/components/List/List.d.ts +2 -1
  375. package/dist/cssm/components/List/List.js +1 -1
  376. package/dist/cssm/components/List/List.js.map +1 -1
  377. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  378. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
  379. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  380. package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
  381. package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
  382. package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
  383. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  384. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  385. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  386. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  387. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
  388. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  389. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
  390. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  391. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
  392. package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
  393. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  394. package/dist/cssm/components/Panel/Panel.css +19 -1
  395. package/dist/cssm/components/Panel/Panel.js +4 -8
  396. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  397. package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
  398. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
  399. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  400. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  401. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  402. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  403. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  404. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  405. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  406. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  407. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
  408. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +5 -5
  409. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  410. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  411. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  412. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  413. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  414. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  415. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  416. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  417. package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
  418. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -4
  419. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  420. package/dist/cssm/components/Search/Search.css +27 -1
  421. package/dist/cssm/components/Search/Search.js +6 -8
  422. package/dist/cssm/components/Search/Search.js.map +1 -1
  423. package/dist/cssm/components/Select/Select.css +1 -1
  424. package/dist/cssm/components/Select/Select.d.ts +1 -1
  425. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  426. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
  427. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  428. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
  429. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
  430. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  431. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
  432. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  433. package/dist/cssm/components/Spacing/Spacing.css +1 -1
  434. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  435. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
  436. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  437. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  438. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +2 -5
  439. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  440. package/dist/cssm/components/TabsItem/TabsItem.css +1 -1
  441. package/dist/cssm/components/Tappable/Tappable.js +3 -10
  442. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  443. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  444. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
  445. package/dist/cssm/components/Textarea/Textarea.js +4 -2
  446. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  447. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  448. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  449. package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
  450. package/dist/cssm/components/UsersStack/UsersStack.js +69 -28
  451. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  452. package/dist/cssm/components/View/View.js +2 -7
  453. package/dist/cssm/components/View/View.js.map +1 -1
  454. package/dist/cssm/components/View/ViewInfinite.js +1 -10
  455. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  456. package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  457. package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
  458. package/dist/cssm/hooks/useChipsInput.js.map +1 -0
  459. package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
  460. package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
  461. package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
  462. package/dist/cssm/index.d.ts +3 -0
  463. package/dist/cssm/index.js +1 -0
  464. package/dist/cssm/index.js.map +1 -1
  465. package/dist/cssm/lib/animate.js +1 -1
  466. package/dist/cssm/lib/animate.js.map +1 -1
  467. package/dist/cssm/lib/platform.js +8 -3
  468. package/dist/cssm/lib/platform.js.map +1 -1
  469. package/dist/cssm/lib/testing.js +1 -1
  470. package/dist/cssm/lib/testing.js.map +1 -1
  471. package/dist/cssm/lib/touch.js +1 -1
  472. package/dist/cssm/lib/touch.js.map +1 -1
  473. package/dist/cssm/styles/components.css +93 -15
  474. package/dist/cssm/styles/themes.css +1 -1
  475. package/dist/cssm/styles/unstable.css +1 -1
  476. package/dist/cssm/tokenized/index.d.ts +56 -0
  477. package/dist/cssm/tokenized/index.js +29 -0
  478. package/dist/cssm/tokenized/index.js.map +1 -1
  479. package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  480. package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
  481. package/dist/hooks/useChipsInput.js.map +1 -0
  482. package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
  483. package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  484. package/dist/hooks/useChipsSelect.js.map +1 -0
  485. package/dist/index.d.ts +3 -0
  486. package/dist/index.js +1 -0
  487. package/dist/index.js.map +1 -1
  488. package/dist/lib/animate.js +1 -1
  489. package/dist/lib/animate.js.map +1 -1
  490. package/dist/lib/platform.js +8 -3
  491. package/dist/lib/platform.js.map +1 -1
  492. package/dist/lib/testing.js +1 -1
  493. package/dist/lib/testing.js.map +1 -1
  494. package/dist/lib/touch.js +1 -1
  495. package/dist/lib/touch.js.map +1 -1
  496. package/dist/tokenized/index.d.ts +56 -0
  497. package/dist/tokenized/index.js +29 -0
  498. package/dist/tokenized/index.js.map +1 -1
  499. package/dist/unstable.css +1 -1
  500. package/dist/unstable.css.map +1 -1
  501. package/dist/vkui.css +94 -16
  502. package/dist/vkui.css.map +1 -1
  503. package/package.json +9 -9
  504. package/src/components/ActionSheet/ActionSheet.css +31 -59
  505. package/src/components/ActionSheet/ActionSheet.tsx +4 -7
  506. package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
  507. package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
  508. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
  509. package/src/components/ActionSheet/Readme.md +6 -30
  510. package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
  511. package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
  512. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
  513. package/src/components/Alert/Alert.css +79 -79
  514. package/src/components/Alert/Alert.tsx +14 -14
  515. package/src/components/Alert/Readme.md +83 -104
  516. package/src/components/AppRoot/AppRoot.css +2 -1
  517. package/src/components/AppRoot/AppRoot.tsx +1 -4
  518. package/src/components/Avatar/Avatar.tsx +15 -17
  519. package/src/components/Avatar/Readme.md +3 -3
  520. package/src/components/Banner/Banner.tsx +58 -63
  521. package/src/components/ButtonGroup/ButtonGroup.tsx +6 -3
  522. package/src/components/ButtonGroup/Readme.md +13 -11
  523. package/src/components/Calendar/Readme.md +3 -0
  524. package/src/components/CalendarDay/CalendarDay.tsx +21 -20
  525. package/src/components/CalendarRange/Readme.md +3 -0
  526. package/src/components/CardScroll/CardScroll.tsx +1 -2
  527. package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
  528. package/src/components/Cell/CellDragger/CellDragger.css +1 -1
  529. package/src/components/Chip/Chip.css +1 -0
  530. package/src/components/Chip/Chip.tsx +14 -2
  531. package/src/components/ChipsInput/ChipsInput.css +0 -71
  532. package/src/components/ChipsInput/ChipsInput.tsx +20 -220
  533. package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
  534. package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
  535. package/src/components/ChipsSelect/ChipsSelect.css +8 -0
  536. package/src/components/ChipsSelect/ChipsSelect.tsx +47 -39
  537. package/src/components/CustomSelect/CustomSelect.css +1 -0
  538. package/src/components/CustomSelect/CustomSelect.tsx +2 -3
  539. package/src/components/CustomSelect/Readme.md +8 -2
  540. package/src/components/DateInput/DateInput.css +1 -1
  541. package/src/components/DateInput/DateInput.tsx +6 -3
  542. package/src/components/DateInput/Readme.md +13 -0
  543. package/src/components/DateRangeInput/DateRangeInput.css +1 -1
  544. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
  545. package/src/components/DateRangeInput/Readme.md +13 -0
  546. package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
  547. package/src/components/Epic/Readme.md +10 -5
  548. package/src/components/FormField/FormField.css +58 -6
  549. package/src/components/FormField/FormField.tsx +3 -0
  550. package/src/components/FormItem/FormItem.css +5 -3
  551. package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
  552. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
  553. package/src/components/FormLayoutGroup/Readme.md +58 -48
  554. package/src/components/FormStatus/FormStatus.css +8 -5
  555. package/src/components/FormStatus/FormStatus.tsx +4 -8
  556. package/src/components/FormStatus/Readme.md +4 -0
  557. package/src/components/Gallery/Readme.md +64 -18
  558. package/src/components/Header/Header.css +8 -12
  559. package/src/components/Header/Header.tsx +9 -8
  560. package/src/components/HorizontalCell/Readme.md +1 -1
  561. package/src/components/IconButton/IconButton.tsx +2 -2
  562. package/src/components/Input/Input.css +1 -1
  563. package/src/components/Input/Input.tsx +2 -0
  564. package/src/components/Link/Link.css +2 -1
  565. package/src/components/List/List.tsx +3 -4
  566. package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
  567. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
  568. package/src/components/ModalDismissButton/Readme.md +1 -1
  569. package/src/components/ModalPage/ModalPage.css +69 -63
  570. package/src/components/ModalPage/ModalPage.tsx +24 -11
  571. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
  572. package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
  573. package/src/components/ModalRoot/ModalRoot.tsx +24 -24
  574. package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
  575. package/src/components/ModalRoot/Readme.md +8 -3
  576. package/src/components/NativeSelect/NativeSelect.tsx +5 -2
  577. package/src/components/Panel/Panel.css +52 -24
  578. package/src/components/Panel/Panel.tsx +7 -9
  579. package/src/components/PanelHeader/PanelHeader.css +28 -21
  580. package/src/components/PanelHeader/PanelHeader.tsx +11 -12
  581. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
  582. package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
  583. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
  584. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
  585. package/src/components/PanelHeaderContent/PanelHeaderContent.css +17 -23
  586. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +11 -5
  587. package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
  588. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
  589. package/src/components/PanelHeaderContext/Readme.md +85 -101
  590. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
  591. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
  592. package/src/components/PromoBanner/PromoBanner.css +10 -22
  593. package/src/components/PromoBanner/PromoBanner.tsx +1 -5
  594. package/src/components/RichTooltip/Readme.md +2 -2
  595. package/src/components/Search/Search.css +134 -48
  596. package/src/components/Search/Search.tsx +13 -8
  597. package/src/components/Select/Select.css +2 -2
  598. package/src/components/SelectMimicry/Readme.md +3 -3
  599. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
  600. package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
  601. package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
  602. package/src/components/Snackbar/Readme.md +12 -3
  603. package/src/components/Spacing/Readme.md +20 -20
  604. package/src/components/Spacing/Spacing.css +5 -1
  605. package/src/components/SplitLayout/Readme.md +1 -1
  606. package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
  607. package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
  608. package/src/components/SubnavigationButton/SubnavigationButton.css +13 -0
  609. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -4
  610. package/src/components/TabbarItem/Readme.md +6 -1
  611. package/src/components/Tabs/Readme.md +10 -2
  612. package/src/components/TabsItem/TabsItem.css +1 -1
  613. package/src/components/Tappable/Tappable.tsx +9 -11
  614. package/src/components/Textarea/Textarea.css +1 -1
  615. package/src/components/Textarea/Textarea.tsx +5 -2
  616. package/src/components/Tooltip/Readme.md +2 -2
  617. package/src/components/Touch/Readme.md +4 -4
  618. package/src/components/Typography/Headline/Headline.css +10 -0
  619. package/src/components/Typography/Text/Text.css +10 -0
  620. package/src/components/UsersStack/UsersStack.css +42 -0
  621. package/src/components/UsersStack/UsersStack.tsx +71 -15
  622. package/src/components/View/Readme.md +5 -5
  623. package/src/components/View/View.tsx +2 -9
  624. package/src/components/View/ViewInfinite.tsx +14 -14
  625. package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
  626. package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
  627. package/src/index.ts +3 -0
  628. package/src/lib/animate.ts +1 -1
  629. package/src/lib/platform.ts +12 -6
  630. package/src/lib/testing.ts +1 -1
  631. package/src/lib/touch.ts +1 -1
  632. package/src/styles/components.css +1 -0
  633. package/src/tokenized/index.ts +85 -0
  634. package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
  635. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
  636. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
  637. package/dist/cjs/components/UsersStack/masks.js +0 -29
  638. package/dist/cjs/components/UsersStack/masks.js.map +0 -1
  639. package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
  640. package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
  641. package/dist/components/UsersStack/masks.d.ts +0 -1
  642. package/dist/components/UsersStack/masks.js +0 -20
  643. package/dist/components/UsersStack/masks.js.map +0 -1
  644. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
  645. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
  646. package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
  647. package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
  648. package/dist/cssm/components/UsersStack/masks.js +0 -20
  649. package/dist/cssm/components/UsersStack/masks.js.map +0 -1
  650. package/src/components/DropdownIcon/DropdownIcon.css +0 -3
  651. package/src/components/UsersStack/masks.tsx +0 -69
@@ -39,63 +39,46 @@ var _Text = require("../Typography/Text/Text");
39
39
 
40
40
  var _Title = require("../Typography/Title/Title");
41
41
 
42
- var _excluded = ["size"],
43
- _excluded2 = ["mode", "imageTheme", "size", "before", "asideMode", "header", "subheader", "text", "children", "background", "actions", "onDismiss", "dismissLabel"];
42
+ var _excluded = ["mode", "imageTheme", "size", "before", "asideMode", "header", "subheader", "text", "children", "background", "actions", "onDismiss", "dismissLabel"];
44
43
 
45
- var BannerHeader = function BannerHeader(_ref) {
46
- var size = _ref.size,
47
- restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
48
- return size === "m" ? (0, _jsxRuntime.createScopedElement)(_Title.Title, (0, _extends2.default)({
49
- level: "2",
50
- weight: "2"
51
- }, restProps)) : (0, _jsxRuntime.createScopedElement)(_Headline.Headline, (0, _extends2.default)({
52
- weight: "2"
53
- }, restProps));
54
- };
55
44
  /**
56
45
  * @see https://vkcom.github.io/VKUI/#/Banner
57
46
  */
58
-
59
-
60
- var Banner = function Banner(_ref2) {
61
- var _ref2$mode = _ref2.mode,
62
- mode = _ref2$mode === void 0 ? "tint" : _ref2$mode,
63
- _ref2$imageTheme = _ref2.imageTheme,
64
- imageTheme = _ref2$imageTheme === void 0 ? "dark" : _ref2$imageTheme,
65
- _ref2$size = _ref2.size,
66
- size = _ref2$size === void 0 ? "s" : _ref2$size,
67
- before = _ref2.before,
68
- asideMode = _ref2.asideMode,
69
- header = _ref2.header,
70
- subheader = _ref2.subheader,
71
- text = _ref2.text,
72
- children = _ref2.children,
73
- background = _ref2.background,
74
- actions = _ref2.actions,
75
- onDismiss = _ref2.onDismiss,
76
- _ref2$dismissLabel = _ref2.dismissLabel,
77
- dismissLabel = _ref2$dismissLabel === void 0 ? "Скрыть" : _ref2$dismissLabel,
78
- restProps = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
47
+ var Banner = function Banner(_ref) {
48
+ var _ref$mode = _ref.mode,
49
+ mode = _ref$mode === void 0 ? "tint" : _ref$mode,
50
+ _ref$imageTheme = _ref.imageTheme,
51
+ imageTheme = _ref$imageTheme === void 0 ? "dark" : _ref$imageTheme,
52
+ _ref$size = _ref.size,
53
+ size = _ref$size === void 0 ? "s" : _ref$size,
54
+ before = _ref.before,
55
+ asideMode = _ref.asideMode,
56
+ header = _ref.header,
57
+ subheader = _ref.subheader,
58
+ text = _ref.text,
59
+ children = _ref.children,
60
+ background = _ref.background,
61
+ actions = _ref.actions,
62
+ onDismiss = _ref.onDismiss,
63
+ _ref$dismissLabel = _ref.dismissLabel,
64
+ dismissLabel = _ref$dismissLabel === void 0 ? "Скрыть" : _ref$dismissLabel,
65
+ restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
79
66
  var platform = (0, _usePlatform.usePlatform)();
67
+ var HeaderTypography = size === "m" ? _Title.Title : _Headline.Headline;
80
68
  var SubheaderTypography = size === "m" ? _Text.Text : _Subhead.Subhead;
81
- return (0, _jsxRuntime.createScopedElement)("section", (0, _extends2.default)({}, restProps, {
82
- vkuiClass: (0, _classNames.classNames)("Banner", platform === _platform.IOS && "Banner--ios", "Banner--md-".concat(mode), "Banner--sz-".concat(size), mode === "image" && imageTheme === "dark" && "Banner--inverted")
83
- }), (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, {
84
- vkuiClass: "Banner__in",
85
- activeMode: platform === _platform.IOS ? "opacity" : "background",
86
- disabled: asideMode !== "expand",
87
- role: asideMode === "expand" ? "button" : undefined
88
- }, mode === "image" && background && (0, _jsxRuntime.createScopedElement)("div", {
69
+ var IconDismissIOS = mode === "image" ? _icons.Icon24DismissDark : _icons.Icon24DismissSubstract;
70
+ var content = (0, _jsxRuntime.createScopedElement)(React.Fragment, null, mode === "image" && background && (0, _jsxRuntime.createScopedElement)("div", {
89
71
  "aria-hidden": "true",
90
72
  vkuiClass: "Banner__bg"
91
73
  }, background), before && (0, _jsxRuntime.createScopedElement)("div", {
92
74
  vkuiClass: "Banner__before"
93
75
  }, before), (0, _jsxRuntime.createScopedElement)("div", {
94
76
  vkuiClass: "Banner__content"
95
- }, (0, _utils.hasReactNode)(header) && (0, _jsxRuntime.createScopedElement)(BannerHeader, {
96
- size: size,
77
+ }, (0, _utils.hasReactNode)(header) && (0, _jsxRuntime.createScopedElement)(HeaderTypography, {
97
78
  Component: "span",
98
- vkuiClass: "Banner__header"
79
+ vkuiClass: "Banner__header",
80
+ weight: "2",
81
+ level: size === "m" ? "2" : "1"
99
82
  }, header), (0, _utils.hasReactNode)(subheader) && (0, _jsxRuntime.createScopedElement)(SubheaderTypography, {
100
83
  Component: "span",
101
84
  vkuiClass: "Banner__subheader"
@@ -103,15 +86,26 @@ var Banner = function Banner(_ref2) {
103
86
  vkuiClass: "Banner__text"
104
87
  }, text), (0, _utils.hasReactNode)(actions) && React.Children.count(actions) > 0 && (0, _jsxRuntime.createScopedElement)("div", {
105
88
  vkuiClass: "Banner__actions"
106
- }, actions)), !!asideMode && (0, _jsxRuntime.createScopedElement)("div", {
89
+ }, actions)));
90
+ return (0, _jsxRuntime.createScopedElement)("section", (0, _extends2.default)({}, restProps, {
91
+ vkuiClass: (0, _classNames.classNames)("Banner", platform === _platform.IOS && "Banner--ios", "Banner--md-".concat(mode), "Banner--sz-".concat(size), mode === "image" && imageTheme === "dark" && "Banner--inverted")
92
+ }), asideMode === "expand" ? (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, {
93
+ vkuiClass: "Banner__in",
94
+ activeMode: platform === _platform.IOS ? "opacity" : "background",
95
+ role: "button"
96
+ }, content, (0, _jsxRuntime.createScopedElement)("div", {
97
+ vkuiClass: "Banner__aside"
98
+ }, (0, _jsxRuntime.createScopedElement)(_icons.Icon24Chevron, null))) : (0, _jsxRuntime.createScopedElement)("div", {
99
+ vkuiClass: "Banner__in"
100
+ }, content, asideMode === "dismiss" && (0, _jsxRuntime.createScopedElement)("div", {
107
101
  vkuiClass: "Banner__aside"
108
- }, asideMode === "expand" && (0, _jsxRuntime.createScopedElement)(_icons.Icon24Chevron, null), asideMode === "dismiss" && (0, _jsxRuntime.createScopedElement)(_IconButton.IconButton, {
102
+ }, (0, _jsxRuntime.createScopedElement)(_IconButton.IconButton, {
109
103
  "aria-label": dismissLabel,
110
104
  vkuiClass: "Banner__dismiss",
111
105
  onClick: onDismiss,
112
106
  hoverMode: "opacity",
113
107
  hasActive: false
114
- }, platform === _platform.IOS ? mode === "image" ? (0, _jsxRuntime.createScopedElement)(_icons.Icon24DismissDark, null) : (0, _jsxRuntime.createScopedElement)(_icons.Icon24DismissSubstract, null) : (0, _jsxRuntime.createScopedElement)(_icons.Icon24Cancel, null)))));
108
+ }, platform === _platform.IOS ? (0, _jsxRuntime.createScopedElement)(IconDismissIOS, null) : (0, _jsxRuntime.createScopedElement)(_icons.Icon24Cancel, null)))));
115
109
  };
116
110
 
117
111
  exports.Banner = Banner;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"names":["BannerHeader","size","restProps","Banner","mode","imageTheme","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","platform","SubheaderTypography","Text","Subhead","IOS","undefined","React","Children","count"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { HasComponent, HasChildren } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS } from \"../../lib/platform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport {\n Icon24Chevron,\n Icon24DismissSubstract,\n Icon24DismissDark,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { IconButton } from \"../IconButton/IconButton\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport \"./Banner.css\";\n\nexport interface BannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: \"tint\" | \"image\";\n size?: \"s\" | \"m\";\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: \"dismiss\" | \"expand\";\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера. <br />\n * Это свойство следует использовать без указания `header` и `subheader`.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: \"light\" | \"dark\";\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки, отображаемые в баннере.\n *\n * - В режиме `tint` или в `image` со светлым фоном рекомендуется использовать только `<Button mode=\"primary\" />` или `<Button mode=\"tertiary\" hasHover={false} />`.\n * - В режиме `image` с тёмным фоном – `<Button mode=\"overlay_primary\" />`.\n */\n actions?: React.ReactNode;\n}\n\ntype BannerTypographyProps = Pick<BannerProps, \"size\"> &\n HasComponent &\n HasChildren;\n\nconst BannerHeader = ({ size, ...restProps }: BannerTypographyProps) => {\n return size === \"m\" ? (\n <Title level=\"2\" weight=\"2\" {...restProps} />\n ) : (\n <Headline weight=\"2\" {...restProps} />\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Banner\n */\nexport const Banner = ({\n mode = \"tint\",\n imageTheme = \"dark\",\n size = \"s\",\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel = \"Скрыть\",\n ...restProps\n}: BannerProps) => {\n const platform = usePlatform();\n\n const SubheaderTypography = size === \"m\" ? Text : Subhead;\n\n return (\n <section\n {...restProps}\n vkuiClass={classNames(\n \"Banner\",\n platform === IOS && \"Banner--ios\",\n `Banner--md-${mode}`,\n `Banner--sz-${size}`,\n mode === \"image\" && imageTheme === \"dark\" && \"Banner--inverted\"\n )}\n >\n <Tappable\n vkuiClass=\"Banner__in\"\n activeMode={platform === IOS ? \"opacity\" : \"background\"}\n disabled={asideMode !== \"expand\"}\n role={asideMode === \"expand\" ? \"button\" : undefined}\n >\n {mode === \"image\" && background && (\n <div aria-hidden=\"true\" vkuiClass=\"Banner__bg\">\n {background}\n </div>\n )}\n\n {before && <div vkuiClass=\"Banner__before\">{before}</div>}\n\n <div vkuiClass=\"Banner__content\">\n {hasReactNode(header) && (\n <BannerHeader\n size={size}\n Component=\"span\"\n vkuiClass=\"Banner__header\"\n >\n {header}\n </BannerHeader>\n )}\n {hasReactNode(subheader) && (\n <SubheaderTypography Component=\"span\" vkuiClass=\"Banner__subheader\">\n {subheader}\n </SubheaderTypography>\n )}\n {hasReactNode(text) && <Text vkuiClass=\"Banner__text\">{text}</Text>}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div vkuiClass=\"Banner__actions\">{actions}</div>\n )}\n </div>\n\n {!!asideMode && (\n <div vkuiClass=\"Banner__aside\">\n {asideMode === \"expand\" && <Icon24Chevron />}\n\n {asideMode === \"dismiss\" && (\n <IconButton\n aria-label={dismissLabel}\n vkuiClass=\"Banner__dismiss\"\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {platform === IOS ? (\n mode === \"image\" ? (\n <Icon24DismissDark />\n ) : (\n <Icon24DismissSubstract />\n )\n ) : (\n <Icon24Cancel />\n )}\n </IconButton>\n )}\n </div>\n )}\n </Tappable>\n </section>\n );\n};\n"],"file":"Banner.js"}
1
+ {"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"names":["Banner","mode","imageTheme","size","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","restProps","platform","HeaderTypography","Title","Headline","SubheaderTypography","Text","Subhead","IconDismissIOS","Icon24DismissDark","Icon24DismissSubstract","content","React","Children","count","IOS"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS } from \"../../lib/platform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport {\n Icon24Chevron,\n Icon24DismissSubstract,\n Icon24DismissDark,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { IconButton } from \"../IconButton/IconButton\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport \"./Banner.css\";\n\nexport interface BannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: \"tint\" | \"image\";\n size?: \"s\" | \"m\";\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: \"dismiss\" | \"expand\";\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера. <br />\n * Это свойство следует использовать без указания `header` и `subheader`.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: \"light\" | \"dark\";\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки, отображаемые в баннере.\n *\n * - В режиме `tint` или в `image` со светлым фоном рекомендуется использовать только `<Button mode=\"primary\" />` или `<Button mode=\"tertiary\" hasHover={false} />`.\n * - В режиме `image` с тёмным фоном – `<Button mode=\"overlay_primary\" />`.\n */\n actions?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Banner\n */\nexport const Banner = ({\n mode = \"tint\",\n imageTheme = \"dark\",\n size = \"s\",\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel = \"Скрыть\",\n ...restProps\n}: BannerProps) => {\n const platform = usePlatform();\n\n const HeaderTypography = size === \"m\" ? Title : Headline;\n const SubheaderTypography = size === \"m\" ? Text : Subhead;\n\n const IconDismissIOS =\n mode === \"image\" ? Icon24DismissDark : Icon24DismissSubstract;\n\n const content = (\n <React.Fragment>\n {mode === \"image\" && background && (\n <div aria-hidden=\"true\" vkuiClass=\"Banner__bg\">\n {background}\n </div>\n )}\n\n {before && <div vkuiClass=\"Banner__before\">{before}</div>}\n\n <div vkuiClass=\"Banner__content\">\n {hasReactNode(header) && (\n <HeaderTypography\n Component=\"span\"\n vkuiClass=\"Banner__header\"\n weight=\"2\"\n level={size === \"m\" ? \"2\" : \"1\"}\n >\n {header}\n </HeaderTypography>\n )}\n {hasReactNode(subheader) && (\n <SubheaderTypography Component=\"span\" vkuiClass=\"Banner__subheader\">\n {subheader}\n </SubheaderTypography>\n )}\n {hasReactNode(text) && <Text vkuiClass=\"Banner__text\">{text}</Text>}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div vkuiClass=\"Banner__actions\">{actions}</div>\n )}\n </div>\n </React.Fragment>\n );\n\n return (\n <section\n {...restProps}\n vkuiClass={classNames(\n \"Banner\",\n platform === IOS && \"Banner--ios\",\n `Banner--md-${mode}`,\n `Banner--sz-${size}`,\n mode === \"image\" && imageTheme === \"dark\" && \"Banner--inverted\"\n )}\n >\n {asideMode === \"expand\" ? (\n <Tappable\n vkuiClass=\"Banner__in\"\n activeMode={platform === IOS ? \"opacity\" : \"background\"}\n role=\"button\"\n >\n {content}\n\n <div vkuiClass=\"Banner__aside\">\n <Icon24Chevron />\n </div>\n </Tappable>\n ) : (\n <div vkuiClass=\"Banner__in\">\n {content}\n\n {asideMode === \"dismiss\" && (\n <div vkuiClass=\"Banner__aside\">\n <IconButton\n aria-label={dismissLabel}\n vkuiClass=\"Banner__dismiss\"\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {platform === IOS ? <IconDismissIOS /> : <Icon24Cancel />}\n </IconButton>\n </div>\n )}\n </div>\n )}\n </section>\n );\n};\n"],"file":"Banner.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"names":["ButtonGroup","mode","gap","stretched","align","getRootRef","children","restProps"],"mappings":";;;;;;;;;;;;;;;AACA;;;;AAwBA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;AAAA,uBAPtBC,IAOsB;AAAA,MAPtBA,IAOsB,0BAPf,YAOe;AAAA,sBANtBC,GAMsB;AAAA,MANtBA,GAMsB,yBANhB,GAMgB;AAAA,4BALtBC,SAKsB;AAAA,MALtBA,SAKsB,+BALV,KAKU;AAAA,wBAJtBC,KAIsB;AAAA,MAJtBA,KAIsB,2BAJd,MAIc;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,QAEsB,QAFtBA,QAEsB;AAAA,MADnBC,SACmB;AACtB,SACE;AACE,IAAA,SAAS,EAAE,4BACT,aADS,8BAEYN,IAFZ,GAGTC,GAAG,KAAK,MAAR,+BAAsCA,GAAtC,CAHS,EAITC,SAAS,IAAI,wBAJJ,+BAKaC,KALb,EADb;AAQE,IAAA,IAAI,EAAC,OARP;AASE,IAAA,GAAG,EAAEC;AATP,KAUME,SAVN,GAYGD,QAZH,CADF;AAgBD,CAzBM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport type { HasRootRef, HasAlign } from \"../../types\";\nimport \"./ButtonGroup.css\";\n\nexport interface ButtonGroupProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: \"vertical\" | \"horizontal\";\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: \"none\" | \"space\" | \"s\" | \"m\";\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = \"horizontal\",\n gap = \"m\",\n stretched = false,\n align = \"left\" /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n getRootRef,\n children,\n ...restProps\n}: ButtonGroupProps) => {\n return (\n <div\n vkuiClass={classNames(\n \"ButtonGroup\",\n `ButtonGroup--mode-${mode}`,\n gap !== \"none\" && `ButtonGroup--gap-${gap}`,\n stretched && \"ButtonGroup--stretched\",\n `ButtonGroup--align-${align}`\n )}\n role=\"group\"\n ref={getRootRef}\n {...restProps}\n >\n {children}\n </div>\n );\n};\n"],"file":"ButtonGroup.js"}
1
+ {"version":3,"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"names":["ButtonGroup","mode","gap","stretched","align","getRootRef","children","restProps"],"mappings":";;;;;;;;;;;;;;;AACA;;;;AA2BA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;AAAA,uBAPtBC,IAOsB;AAAA,MAPtBA,IAOsB,0BAPf,YAOe;AAAA,sBANtBC,GAMsB;AAAA,MANtBA,GAMsB,yBANhB,GAMgB;AAAA,4BALtBC,SAKsB;AAAA,MALtBA,SAKsB,+BALV,KAKU;AAAA,wBAJtBC,KAIsB;AAAA,MAJtBA,KAIsB,2BAJd,MAIc;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,QAEsB,QAFtBA,QAEsB;AAAA,MADnBC,SACmB;AACtB,SACE;AACE,IAAA,SAAS,EAAE,4BACT,aADS,8BAEYN,IAFZ,GAGTC,GAAG,KAAK,MAAR,+BAAsCA,GAAtC,CAHS,EAITC,SAAS,IAAI,wBAJJ,+BAKaC,KALb,EADb;AAQE,IAAA,IAAI,EAAC,OARP;AASE,IAAA,GAAG,EAAEC;AATP,KAUME,SAVN,GAYGD,QAZH,CADF;AAgBD,CAzBM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport type { HasRootRef, AlignType } from \"../../types\";\nimport \"./ButtonGroup.css\";\n\nexport interface ButtonGroupProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: \"vertical\" | \"horizontal\";\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: \"none\" | \"space\" | \"s\" | \"m\";\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n /**\n * Горизонтальное выравнивание элементов внутри группы. Работает только с mode=\"vertical\".\n */\n align?: AlignType;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = \"horizontal\",\n gap = \"m\",\n stretched = false,\n align = \"left\" /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n getRootRef,\n children,\n ...restProps\n}: ButtonGroupProps) => {\n return (\n <div\n vkuiClass={classNames(\n \"ButtonGroup\",\n `ButtonGroup--mode-${mode}`,\n gap !== \"none\" && `ButtonGroup--gap-${gap}`,\n stretched && \"ButtonGroup--stretched\",\n `ButtonGroup--align-${align}`\n )}\n role=\"group\"\n ref={getRootRef}\n {...restProps}\n >\n {children}\n </div>\n );\n};\n"],"file":"ButtonGroup.js"}
@@ -63,17 +63,8 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
63
63
  });
64
64
  }
65
65
 
66
- return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable // eslint-disable-next-line vkui/no-object-expression-in-arguments
67
- , {
68
- vkuiClass: (0, _classNames.classNames)("CalendarDay", "CalendarDay--size-".concat(size), {
69
- "CalendarDay--today": today,
70
- "CalendarDay--selected": selected && !disabled,
71
- "CalendarDay--active": active && !disabled,
72
- "CalendarDay--selection-start": selectionStart,
73
- "CalendarDay--selection-end": selectionEnd,
74
- "CalendarDay--disabled": disabled,
75
- "CalendarDay--not-same-month": !sameMonth
76
- }),
66
+ return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, {
67
+ vkuiClass: (0, _classNames.classNames)("CalendarDay", "CalendarDay--size-".concat(size), today && "CalendarDay--today", selected && !disabled && "CalendarDay--selected", active && !disabled && "CalendarDay--active", selectionStart && "CalendarDay--selection-start", selectionEnd && "CalendarDay--selection-end", disabled && "CalendarDay--disabled", !sameMonth && "CalendarDay--not-same-month"),
77
68
  hoverMode: active ? "CalendarDay--active-hover" : "CalendarDay--hover",
78
69
  hasActive: false,
79
70
  onClick: onClick,
@@ -90,17 +81,9 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
90
81
  onEnter: handleEnter,
91
82
  onLeave: handleLeave
92
83
  }, (0, _jsxRuntime.createScopedElement)("div", {
93
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
94
- vkuiClass: (0, _classNames.classNames)("CalendarDay__hinted", {
95
- "CalendarDay__hinted--active": hinted,
96
- "CalendarDay__hinted--selection-start": hintedSelectionStart,
97
- "CalendarDay__hinted--selection-end": hintedSelectionEnd
98
- })
84
+ vkuiClass: (0, _classNames.classNames)("CalendarDay__hinted", hinted && "CalendarDay__hinted--active", hintedSelectionStart && "CalendarDay__hinted--selection-start", hintedSelectionEnd && "CalendarDay__hinted--selection-end")
99
85
  }, (0, _jsxRuntime.createScopedElement)("div", {
100
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
101
- vkuiClass: (0, _classNames.classNames)("CalendarDay__inner", {
102
- "CalendarDay__inner--active": active && !disabled
103
- })
86
+ vkuiClass: (0, _classNames.classNames)("CalendarDay__inner", active && !disabled && "CalendarDay__inner--active")
104
87
  }, (0, _jsxRuntime.createScopedElement)("div", {
105
88
  vkuiClass: "CalendarDay__day-number"
106
89
  }, day.getDate()))));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport interface CalendarDayProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n }: CalendarDayProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay\", `CalendarDay--size-${size}`, {\n \"CalendarDay--today\": today,\n \"CalendarDay--selected\": selected && !disabled,\n \"CalendarDay--active\": active && !disabled,\n \"CalendarDay--selection-start\": selectionStart,\n \"CalendarDay--selection-end\": selectionEnd,\n \"CalendarDay--disabled\": disabled,\n \"CalendarDay--not-same-month\": !sameMonth,\n })}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n >\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay__hinted\", {\n \"CalendarDay__hinted--active\": hinted,\n \"CalendarDay__hinted--selection-start\": hintedSelectionStart,\n \"CalendarDay__hinted--selection-end\": hintedSelectionEnd,\n })}\n >\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay__inner\", {\n \"CalendarDay__inner--active\": active && !disabled,\n })}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"file":"CalendarDay.js"}
1
+ {"version":3,"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport interface CalendarDayProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n }: CalendarDayProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n vkuiClass={classNames(\n \"CalendarDay\",\n `CalendarDay--size-${size}`,\n today && \"CalendarDay--today\",\n selected && !disabled && \"CalendarDay--selected\",\n active && !disabled && \"CalendarDay--active\",\n selectionStart && \"CalendarDay--selection-start\",\n selectionEnd && \"CalendarDay--selection-end\",\n disabled && \"CalendarDay--disabled\",\n !sameMonth && \"CalendarDay--not-same-month\"\n )}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__hinted\",\n hinted && \"CalendarDay__hinted--active\",\n hintedSelectionStart && \"CalendarDay__hinted--selection-start\",\n hintedSelectionEnd && \"CalendarDay__hinted--selection-end\"\n )}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__inner\",\n active && !disabled && \"CalendarDay__inner--active\"\n )}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"file":"CalendarDay.js"}
@@ -13,15 +13,13 @@ var _jsxRuntime = require("../../lib/jsxRuntime");
13
13
 
14
14
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
15
 
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
16
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
19
17
 
20
18
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
19
 
22
20
  var React = _interopRequireWildcard(require("react"));
23
21
 
24
- var _classNames2 = require("../../lib/classNames");
22
+ var _classNames = require("../../lib/classNames");
25
23
 
26
24
  var _getClassName = require("../../helpers/getClassName");
27
25
 
@@ -104,8 +102,7 @@ var CardScroll = function CardScroll(_ref) {
104
102
  }
105
103
 
106
104
  return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
107
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
108
- vkuiClass: (0, _classNames2.classNames)((0, _getClassName.getClassName)("CardScroll", platform), "CardScroll--sizeX-".concat(sizeX), "CardScroll--".concat(size), (0, _defineProperty2.default)({}, "CardScroll--withSpaces", withSpaces))
105
+ vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("CardScroll", platform), "CardScroll--sizeX-".concat(sizeX), "CardScroll--".concat(size), withSpaces && "CardScroll--withSpaces")
109
106
  }), (0, _jsxRuntime.createScopedElement)(_HorizontalScroll.HorizontalScroll, {
110
107
  getScrollToLeft: getScrollToLeft,
111
108
  getScrollToRight: getScrollToRight,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CardScroll/CardScroll.tsx"],"names":["CardScroll","children","size","showArrows","withSpaces","restProps","platform","sizeX","refContainer","React","useRef","gapRef","window","getScrollToLeft","offset","current","containerWidth","offsetWidth","slideIndex","findIndex","el","offsetLeft","parseInt","getComputedStyle","marginRight","slide","scrollTo","getScrollToRight","Array","prototype","find","call"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n HorizontalScroll,\n HorizontalScrollProps,\n} from \"../HorizontalScroll/HorizontalScroll\";\nimport { useDOM } from \"../../lib/dom\";\nimport \"./CardScroll.css\";\n\nexport interface CardScrollProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * При `size=false` ширина `Card` будет регулироваться контентом внутри. В остальных случаях — будет явно задана в процентах.\n */\n size?: \"s\" | \"m\" | \"l\" | false;\n showArrows?: HorizontalScrollProps[\"showArrows\"];\n withSpaces?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/CardScroll\n */\nexport const CardScroll = ({\n children,\n size = \"s\",\n showArrows = true,\n withSpaces = true,\n ...restProps\n}: CardScrollProps) => {\n const platform = usePlatform();\n const { sizeX } = useAdaptivity();\n\n const refContainer = React.useRef<HTMLDivElement>(null);\n const gapRef = React.useRef<HTMLDivElement>(null);\n\n const { window } = useDOM();\n\n function getScrollToLeft(offset: number): number {\n if (!refContainer.current || !gapRef.current) {\n return offset;\n }\n const containerWidth = refContainer.current.offsetWidth;\n const slideIndex = (\n [...refContainer.current.children] as HTMLElement[]\n ).findIndex(\n (el: HTMLElement) =>\n el.offsetLeft +\n el.offsetWidth +\n parseInt(window!.getComputedStyle(el).marginRight) -\n offset >=\n 0\n );\n\n if (slideIndex === -1) {\n return offset;\n }\n\n if (slideIndex === 0) {\n return 0;\n }\n\n const slide = refContainer.current.children[slideIndex] as HTMLElement;\n\n const scrollTo =\n slide.offsetLeft -\n (containerWidth - slide.offsetWidth) +\n gapRef.current.offsetWidth;\n\n if (scrollTo <= 2 * gapRef.current.offsetWidth) {\n return 0;\n }\n\n return scrollTo;\n }\n\n function getScrollToRight(offset: number): number {\n if (!refContainer.current || !gapRef.current) {\n return offset;\n }\n\n const containerWidth = refContainer.current.offsetWidth;\n const slide = Array.prototype.find.call(\n refContainer.current.children,\n (el: HTMLElement) =>\n el.offsetLeft + el.offsetWidth - offset > containerWidth\n ) as HTMLElement;\n\n if (!slide) {\n return offset;\n }\n\n return slide.offsetLeft - gapRef.current.offsetWidth;\n }\n\n return (\n <div\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"CardScroll\", platform),\n `CardScroll--sizeX-${sizeX}`,\n `CardScroll--${size}`,\n { [\"CardScroll--withSpaces\"]: withSpaces }\n )}\n >\n <HorizontalScroll\n getScrollToLeft={getScrollToLeft}\n getScrollToRight={getScrollToRight}\n showArrows={showArrows}\n >\n <div vkuiClass=\"CardScroll__in\" ref={refContainer}>\n <span vkuiClass=\"CardScroll__gap\" ref={gapRef} />\n {children}\n <span vkuiClass=\"CardScroll__gap\" />\n </div>\n </HorizontalScroll>\n </div>\n );\n};\n"],"file":"CardScroll.js"}
1
+ {"version":3,"sources":["../../../../src/components/CardScroll/CardScroll.tsx"],"names":["CardScroll","children","size","showArrows","withSpaces","restProps","platform","sizeX","refContainer","React","useRef","gapRef","window","getScrollToLeft","offset","current","containerWidth","offsetWidth","slideIndex","findIndex","el","offsetLeft","parseInt","getComputedStyle","marginRight","slide","scrollTo","getScrollToRight","Array","prototype","find","call"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;;;AAYA;AACA;AACA;AACO,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAMH;AAAA,MALrBC,QAKqB,QALrBA,QAKqB;AAAA,uBAJrBC,IAIqB;AAAA,MAJrBA,IAIqB,0BAJd,GAIc;AAAA,6BAHrBC,UAGqB;AAAA,MAHrBA,UAGqB,gCAHR,IAGQ;AAAA,6BAFrBC,UAEqB;AAAA,MAFrBA,UAEqB,gCAFR,IAEQ;AAAA,MADlBC,SACkB;AACrB,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AAEA,MAAMC,YAAY,GAAGC,KAAK,CAACC,MAAN,CAA6B,IAA7B,CAArB;AACA,MAAMC,MAAM,GAAGF,KAAK,CAACC,MAAN,CAA6B,IAA7B,CAAf;;AAEA,gBAAmB,kBAAnB;AAAA,MAAQE,MAAR,WAAQA,MAAR;;AAEA,WAASC,eAAT,CAAyBC,MAAzB,EAAiD;AAC/C,QAAI,CAACN,YAAY,CAACO,OAAd,IAAyB,CAACJ,MAAM,CAACI,OAArC,EAA8C;AAC5C,aAAOD,MAAP;AACD;;AACD,QAAME,cAAc,GAAGR,YAAY,CAACO,OAAb,CAAqBE,WAA5C;AACA,QAAMC,UAAU,GAAG,iCACbV,YAAY,CAACO,OAAb,CAAqBd,QADR,EAEjBkB,SAFiB,CAGjB,UAACC,EAAD;AAAA,aACEA,EAAE,CAACC,UAAH,GACED,EAAE,CAACH,WADL,GAEEK,QAAQ,CAACV,MAAM,CAAEW,gBAAR,CAAyBH,EAAzB,EAA6BI,WAA9B,CAFV,GAGEV,MAHF,IAIA,CALF;AAAA,KAHiB,CAAnB;;AAWA,QAAII,UAAU,KAAK,CAAC,CAApB,EAAuB;AACrB,aAAOJ,MAAP;AACD;;AAED,QAAII,UAAU,KAAK,CAAnB,EAAsB;AACpB,aAAO,CAAP;AACD;;AAED,QAAMO,KAAK,GAAGjB,YAAY,CAACO,OAAb,CAAqBd,QAArB,CAA8BiB,UAA9B,CAAd;AAEA,QAAMQ,QAAQ,GACZD,KAAK,CAACJ,UAAN,IACCL,cAAc,GAAGS,KAAK,CAACR,WADxB,IAEAN,MAAM,CAACI,OAAP,CAAeE,WAHjB;;AAKA,QAAIS,QAAQ,IAAI,IAAIf,MAAM,CAACI,OAAP,CAAeE,WAAnC,EAAgD;AAC9C,aAAO,CAAP;AACD;;AAED,WAAOS,QAAP;AACD;;AAED,WAASC,gBAAT,CAA0Bb,MAA1B,EAAkD;AAChD,QAAI,CAACN,YAAY,CAACO,OAAd,IAAyB,CAACJ,MAAM,CAACI,OAArC,EAA8C;AAC5C,aAAOD,MAAP;AACD;;AAED,QAAME,cAAc,GAAGR,YAAY,CAACO,OAAb,CAAqBE,WAA5C;AACA,QAAMQ,KAAK,GAAGG,KAAK,CAACC,SAAN,CAAgBC,IAAhB,CAAqBC,IAArB,CACZvB,YAAY,CAACO,OAAb,CAAqBd,QADT,EAEZ,UAACmB,EAAD;AAAA,aACEA,EAAE,CAACC,UAAH,GAAgBD,EAAE,CAACH,WAAnB,GAAiCH,MAAjC,GAA0CE,cAD5C;AAAA,KAFY,CAAd;;AAMA,QAAI,CAACS,KAAL,EAAY;AACV,aAAOX,MAAP;AACD;;AAED,WAAOW,KAAK,CAACJ,UAAN,GAAmBV,MAAM,CAACI,OAAP,CAAeE,WAAzC;AACD;;AAED,SACE,uEACMZ,SADN;AAEE,IAAA,SAAS,EAAE,4BACT,gCAAa,YAAb,EAA2BC,QAA3B,CADS,8BAEYC,KAFZ,yBAGML,IAHN,GAITE,UAAU,IAAI,wBAJL;AAFb,MASE,qCAAC,kCAAD;AACE,IAAA,eAAe,EAAES,eADnB;AAEE,IAAA,gBAAgB,EAAEc,gBAFpB;AAGE,IAAA,UAAU,EAAExB;AAHd,KAKE;AAAK,IAAA,SAAS,EAAC,gBAAf;AAAgC,IAAA,GAAG,EAAEK;AAArC,KACE;AAAM,IAAA,SAAS,EAAC,iBAAhB;AAAkC,IAAA,GAAG,EAAEG;AAAvC,IADF,EAEGV,QAFH,EAGE;AAAM,IAAA,SAAS,EAAC;AAAhB,IAHF,CALF,CATF,CADF;AAuBD,CA/FM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n HorizontalScroll,\n HorizontalScrollProps,\n} from \"../HorizontalScroll/HorizontalScroll\";\nimport { useDOM } from \"../../lib/dom\";\nimport \"./CardScroll.css\";\n\nexport interface CardScrollProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * При `size=false` ширина `Card` будет регулироваться контентом внутри. В остальных случаях — будет явно задана в процентах.\n */\n size?: \"s\" | \"m\" | \"l\" | false;\n showArrows?: HorizontalScrollProps[\"showArrows\"];\n withSpaces?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/CardScroll\n */\nexport const CardScroll = ({\n children,\n size = \"s\",\n showArrows = true,\n withSpaces = true,\n ...restProps\n}: CardScrollProps) => {\n const platform = usePlatform();\n const { sizeX } = useAdaptivity();\n\n const refContainer = React.useRef<HTMLDivElement>(null);\n const gapRef = React.useRef<HTMLDivElement>(null);\n\n const { window } = useDOM();\n\n function getScrollToLeft(offset: number): number {\n if (!refContainer.current || !gapRef.current) {\n return offset;\n }\n const containerWidth = refContainer.current.offsetWidth;\n const slideIndex = (\n [...refContainer.current.children] as HTMLElement[]\n ).findIndex(\n (el: HTMLElement) =>\n el.offsetLeft +\n el.offsetWidth +\n parseInt(window!.getComputedStyle(el).marginRight) -\n offset >=\n 0\n );\n\n if (slideIndex === -1) {\n return offset;\n }\n\n if (slideIndex === 0) {\n return 0;\n }\n\n const slide = refContainer.current.children[slideIndex] as HTMLElement;\n\n const scrollTo =\n slide.offsetLeft -\n (containerWidth - slide.offsetWidth) +\n gapRef.current.offsetWidth;\n\n if (scrollTo <= 2 * gapRef.current.offsetWidth) {\n return 0;\n }\n\n return scrollTo;\n }\n\n function getScrollToRight(offset: number): number {\n if (!refContainer.current || !gapRef.current) {\n return offset;\n }\n\n const containerWidth = refContainer.current.offsetWidth;\n const slide = Array.prototype.find.call(\n refContainer.current.children,\n (el: HTMLElement) =>\n el.offsetLeft + el.offsetWidth - offset > containerWidth\n ) as HTMLElement;\n\n if (!slide) {\n return offset;\n }\n\n return slide.offsetLeft - gapRef.current.offsetWidth;\n }\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"CardScroll\", platform),\n `CardScroll--sizeX-${sizeX}`,\n `CardScroll--${size}`,\n withSpaces && \"CardScroll--withSpaces\"\n )}\n >\n <HorizontalScroll\n getScrollToLeft={getScrollToLeft}\n getScrollToRight={getScrollToRight}\n showArrows={showArrows}\n >\n <div vkuiClass=\"CardScroll__in\" ref={refContainer}>\n <span vkuiClass=\"CardScroll__gap\" ref={gapRef} />\n {children}\n <span vkuiClass=\"CardScroll__gap\" />\n </div>\n </HorizontalScroll>\n </div>\n );\n};\n"],"file":"CardScroll.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Chip/Chip.tsx"],"names":["Chip","value","option","removable","onRemove","noop","removeAriaLabel","before","after","children","restProps","sizeY","onRemoveWrapper","React","useCallback","event","title"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAeA;AACA;AACA;AACO,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAUH;AAAA,wBATfC,KASe;AAAA,MATfA,KASe,2BATP,EASO;AAAA,MARfC,MAQe,QARfA,MAQe;AAAA,4BAPfC,SAOe;AAAA,MAPfA,SAOe,+BAPH,IAOG;AAAA,2BANfC,QAMe;AAAA,MANfA,QAMe,8BANJC,WAMI;AAAA,kCALfC,eAKe;AAAA,MALfA,eAKe,qCALG,SAKH;AAAA,yBAJfC,MAIe;AAAA,MAJfA,MAIe,4BAJN,IAIM;AAAA,MAHfC,KAGe,QAHfA,KAGe;AAAA,MAFfC,QAEe,QAFfA,QAEe;AAAA,MADZC,SACY;;AACf,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AACA,MAAMC,eAAe,GAAGC,KAAK,CAACC,WAAN,CACtB,UAACC,KAAD,EAA6B;AAC3BX,IAAAA,QAAQ,CAACW,KAAD,EAAQd,KAAR,CAAR;AACD,GAHqB,EAItB,CAACG,QAAD,EAAWH,KAAX,CAJsB,CAAxB;AAMA,MAAMe,KAAK,GAAG,iCAAqBP,QAArB,CAAd;AAEA,SACE;AACE,IAAA,SAAS,EAAE,4BACT,MADS,EAETN,SAAS,IAAI,iBAFJ,wBAGMQ,KAHN,EAGc;AAHd,KADb;AAME,IAAA,IAAI,EAAC,QANP;AAOE,kBAAYK;AAPd,KAQMN,SARN,GAUE;AAAK,IAAA,SAAS,EAAC,UAAf;AAA0B,IAAA,IAAI,EAAC;AAA/B,KACG,yBAAaH,MAAb,KAAwB;AAAK,IAAA,SAAS,EAAC;AAAf,KAA+BA,MAA/B,CAD3B,EAEE,qCAAC,gBAAD;AAAS,IAAA,SAAS,EAAC,eAAnB;AAAmC,IAAA,KAAK,EAAES,KAA1C;AAAiD,mBAAY;AAA7D,KACGP,QADH,CAFF,EAKG,yBAAaD,KAAb,KAAuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAA8BA,KAA9B,CAL1B,EAOGL,SAAS,IACR,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,QADZ;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,OAAO,EAAES,eAHX;AAIE,IAAA,QAAQ,EAAE,KAJZ;AAKE,IAAA,SAAS,EAAE,KALb;AAME,4BAAeN,eAAf,cAAkCU,KAAlC;AANF,KAQE,qCAAC,mBAAD;AAAc,mBAAa;AAA3B,IARF,CARJ,CAVF,CADF;AAiCD,CArDM","sourcesContent":["import * as React from \"react\";\nimport { Icon16Cancel } from \"@vkontakte/icons\";\nimport { getTitleFromChildren, hasReactNode, noop } from \"../../lib/utils\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport \"./Chip.css\";\n\ntype ChipValue = string | number;\n\nexport interface ChipProps extends React.HTMLAttributes<HTMLDivElement> {\n value: ChipValue;\n option?: { value?: ChipValue };\n onRemove?: (event?: React.MouseEvent, value?: ChipValue) => void;\n removable?: boolean;\n removeAriaLabel?: string;\n before?: React.ReactNode;\n after?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Chip\n */\nexport const Chip = ({\n value = \"\",\n option,\n removable = true,\n onRemove = noop,\n removeAriaLabel = \"Удалить\",\n before = null,\n after,\n children,\n ...restProps\n}: ChipProps) => {\n const { sizeY } = useAdaptivity();\n const onRemoveWrapper = React.useCallback(\n (event: React.MouseEvent) => {\n onRemove(event, value);\n },\n [onRemove, value]\n );\n const title = getTitleFromChildren(children);\n\n return (\n <div\n vkuiClass={classNames(\n \"Chip\",\n removable && \"Chip--removable\",\n `Chip--sizeY-${sizeY}` // TODO: v5 новая адаптивность\n )}\n role=\"option\"\n aria-label={title}\n {...restProps}\n >\n <div vkuiClass=\"Chip__in\" role=\"presentation\">\n {hasReactNode(before) && <div vkuiClass=\"Chip__before\">{before}</div>}\n <Caption vkuiClass=\"Chip__content\" title={title} aria-hidden=\"true\">\n {children}\n </Caption>\n {hasReactNode(after) && <div vkuiClass=\"Chip__after\">{after}</div>}\n\n {removable && (\n <Tappable\n Component=\"button\"\n vkuiClass=\"Chip__remove\"\n onClick={onRemoveWrapper}\n hasHover={false}\n hasActive={false}\n aria-label={`${removeAriaLabel} ${title}`}\n >\n <Icon16Cancel aria-hidden={true} />\n </Tappable>\n )}\n </div>\n </div>\n );\n};\n"],"file":"Chip.js"}
1
+ {"version":3,"sources":["../../../../src/components/Chip/Chip.tsx"],"names":["Chip","value","option","removable","onRemove","noop","removeAriaLabel","before","after","children","restProps","sizeY","onRemoveWrapper","React","useCallback","event","title"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AA2BA;AACA;AACA;AACO,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAUH;AAAA,wBATfC,KASe;AAAA,MATfA,KASe,2BATP,EASO;AAAA,MARfC,MAQe,QARfA,MAQe;AAAA,4BAPfC,SAOe;AAAA,MAPfA,SAOe,+BAPH,IAOG;AAAA,2BANfC,QAMe;AAAA,MANfA,QAMe,8BANJC,WAMI;AAAA,kCALfC,eAKe;AAAA,MALfA,eAKe,qCALG,SAKH;AAAA,yBAJfC,MAIe;AAAA,MAJfA,MAIe,4BAJN,IAIM;AAAA,MAHfC,KAGe,QAHfA,KAGe;AAAA,MAFfC,QAEe,QAFfA,QAEe;AAAA,MADZC,SACY;;AACf,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AACA,MAAMC,eAAe,GAAGC,KAAK,CAACC,WAAN,CACtB,UAACC,KAAD,EAA6B;AAC3BX,IAAAA,QAAQ,CAACW,KAAD,EAAQd,KAAR,CAAR;AACD,GAHqB,EAItB,CAACG,QAAD,EAAWH,KAAX,CAJsB,CAAxB;AAMA,MAAMe,KAAK,GAAG,iCAAqBP,QAArB,CAAd;AAEA,SACE;AACE,IAAA,SAAS,EAAE,4BACT,MADS,EAETN,SAAS,IAAI,iBAFJ,wBAGMQ,KAHN,EAGc;AAHd,KADb;AAME,IAAA,IAAI,EAAC,QANP;AAOE,kBAAYK;AAPd,KAQMN,SARN,GAUE;AAAK,IAAA,SAAS,EAAC,UAAf;AAA0B,IAAA,IAAI,EAAC;AAA/B,KACG,yBAAaH,MAAb,KAAwB;AAAK,IAAA,SAAS,EAAC;AAAf,KAA+BA,MAA/B,CAD3B,EAEE,qCAAC,gBAAD;AAAS,IAAA,SAAS,EAAC,eAAnB;AAAmC,IAAA,KAAK,EAAES,KAA1C;AAAiD,mBAAY;AAA7D,KACGP,QADH,CAFF,EAKG,yBAAaD,KAAb,KAAuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAA8BA,KAA9B,CAL1B,EAOGL,SAAS,IACR,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,QADZ;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,OAAO,EAAES,eAHX;AAIE,IAAA,QAAQ,EAAE,KAJZ;AAKE,IAAA,SAAS,EAAE,KALb;AAME,4BAAeN,eAAf,cAAkCU,KAAlC;AANF,KAQE,qCAAC,mBAAD;AAAc,mBAAa;AAA3B,IARF,CARJ,CAVF,CADF;AAiCD,CArDM","sourcesContent":["import * as React from \"react\";\nimport { Icon16Cancel } from \"@vkontakte/icons\";\nimport { getTitleFromChildren, hasReactNode, noop } from \"../../lib/utils\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport \"./Chip.css\";\n\nexport type ChipValue = string | number;\n\nexport interface ChipOption {\n value?: ChipValue;\n label?: string;\n [otherProp: string]: any;\n}\n\nexport interface ChipProps extends React.HTMLAttributes<HTMLDivElement> {\n value: ChipValue;\n option?: ChipOption;\n onRemove?: (event?: React.MouseEvent, value?: ChipValue) => void;\n removable?: boolean;\n removeAriaLabel?: string;\n before?: React.ReactNode;\n after?: React.ReactNode;\n}\n\nexport interface RenderChip<T> extends ChipProps {\n label: string;\n option: T;\n disabled: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Chip\n */\nexport const Chip = ({\n value = \"\",\n option,\n removable = true,\n onRemove = noop,\n removeAriaLabel = \"Удалить\",\n before = null,\n after,\n children,\n ...restProps\n}: ChipProps) => {\n const { sizeY } = useAdaptivity();\n const onRemoveWrapper = React.useCallback(\n (event: React.MouseEvent) => {\n onRemove(event, value);\n },\n [onRemove, value]\n );\n const title = getTitleFromChildren(children);\n\n return (\n <div\n vkuiClass={classNames(\n \"Chip\",\n removable && \"Chip--removable\",\n `Chip--sizeY-${sizeY}` // TODO: v5 новая адаптивность\n )}\n role=\"option\"\n aria-label={title}\n {...restProps}\n >\n <div vkuiClass=\"Chip__in\" role=\"presentation\">\n {hasReactNode(before) && <div vkuiClass=\"Chip__before\">{before}</div>}\n <Caption vkuiClass=\"Chip__content\" title={title} aria-hidden=\"true\">\n {children}\n </Caption>\n {hasReactNode(after) && <div vkuiClass=\"Chip__after\">{after}</div>}\n\n {removable && (\n <Tappable\n Component=\"button\"\n vkuiClass=\"Chip__remove\"\n onClick={onRemoveWrapper}\n hasHover={false}\n hasActive={false}\n aria-label={`${removeAriaLabel} ${title}`}\n >\n <Icon16Cancel aria-hidden={true} />\n </Tappable>\n )}\n </div>\n </div>\n );\n};\n"],"file":"Chip.js"}
@@ -2,228 +2,45 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
- exports.chipsInputDefaultProps = exports.ChipsInput = void 0;
8
+ exports.ChipsInput = void 0;
11
9
 
12
10
  var _jsxRuntime = require("../../lib/jsxRuntime");
13
11
 
14
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
15
-
16
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
19
-
20
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
21
-
22
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
23
13
 
24
- var React = _interopRequireWildcard(require("react"));
25
-
26
14
  var _FormField = require("../FormField/FormField");
27
15
 
28
- var _classNames = require("../../lib/classNames");
29
-
30
- var _Chip = require("../Chip/Chip");
31
-
32
- var _utils = require("../../lib/utils");
16
+ var _ChipsInputBase = require("../ChipsInputBase/ChipsInputBase");
33
17
 
34
- var _useChipsInput2 = require("./useChipsInput");
18
+ var _excluded = ["style", "className", "getRootRef", "before", "after", "status"];
35
19
 
36
- var _useAdaptivity2 = require("../../hooks/useAdaptivity");
37
-
38
- var _prefixClass = require("../../lib/prefixClass");
39
-
40
- var _useExternRef = require("../../hooks/useExternRef");
41
-
42
- var _excluded = ["disabled", "value", "label"],
43
- _excluded2 = ["style", "value", "onChange", "onInputChange", "onKeyDown", "onBlur", "onFocus", "children", "className", "inputValue", "getRef", "getRootRef", "placeholder", "getOptionValue", "getOptionLabel", "getNewOptionData", "renderChip", "before", "after", "inputAriaLabel"];
44
- var chipsInputDefaultProps = {
45
- type: "text",
46
- onChange: _utils.noop,
47
- onInputChange: _utils.noop,
48
- onKeyDown: _utils.noop,
49
- onBlur: _utils.noop,
50
- onFocus: _utils.noop,
51
- value: [],
52
- inputValue: "",
53
- inputAriaLabel: "Введите ваше значение...",
54
- getOptionValue: function getOptionValue(option) {
55
- return option.value;
56
- },
57
- getOptionLabel: function getOptionLabel(option) {
58
- return option.label;
59
- },
60
- getNewOptionData: function getNewOptionData(_, label) {
61
- return {
62
- value: label,
63
- label: label
64
- };
65
- },
66
- renderChip: function renderChip(props) {
67
- if (!props) {
68
- return null;
69
- }
70
-
71
- var disabled = props.disabled,
72
- value = props.value,
73
- label = props.label,
74
- rest = (0, _objectWithoutProperties2.default)(props, _excluded);
75
- return (0, _jsxRuntime.createScopedElement)(_Chip.Chip, (0, _extends2.default)({
76
- value: value,
77
- removable: !disabled
78
- }, rest), label);
79
- }
80
- };
81
20
  /**
82
21
  * @see https://vkcom.github.io/VKUI/#/ChipsInput
83
22
  */
84
-
85
- exports.chipsInputDefaultProps = chipsInputDefaultProps;
86
-
87
- var ChipsInput = function ChipsInput(props) {
88
- var propsWithDefault = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, chipsInputDefaultProps), props);
89
- var style = propsWithDefault.style,
90
- value = propsWithDefault.value,
91
- onChange = propsWithDefault.onChange,
92
- onInputChange = propsWithDefault.onInputChange,
93
- onKeyDown = propsWithDefault.onKeyDown,
94
- onBlur = propsWithDefault.onBlur,
95
- onFocus = propsWithDefault.onFocus,
96
- children = propsWithDefault.children,
97
- className = propsWithDefault.className,
98
- inputValue = propsWithDefault.inputValue,
99
- getRef = propsWithDefault.getRef,
100
- getRootRef = propsWithDefault.getRootRef,
101
- placeholder = propsWithDefault.placeholder,
102
- getOptionValue = propsWithDefault.getOptionValue,
103
- getOptionLabel = propsWithDefault.getOptionLabel,
104
- getNewOptionData = propsWithDefault.getNewOptionData,
105
- renderChip = propsWithDefault.renderChip,
106
- before = propsWithDefault.before,
107
- after = propsWithDefault.after,
108
- inputAriaLabel = propsWithDefault.inputAriaLabel,
109
- restProps = (0, _objectWithoutProperties2.default)(propsWithDefault, _excluded2);
110
-
111
- var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
112
- sizeY = _useAdaptivity.sizeY;
113
-
114
- var _React$useState = React.useState(false),
115
- _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
116
- focused = _React$useState2[0],
117
- setFocused = _React$useState2[1];
118
-
119
- var _useChipsInput = (0, _useChipsInput2.useChipsInput)(propsWithDefault),
120
- fieldValue = _useChipsInput.fieldValue,
121
- addOptionFromInput = _useChipsInput.addOptionFromInput,
122
- removeOption = _useChipsInput.removeOption,
123
- selectedOptions = _useChipsInput.selectedOptions,
124
- handleInputChange = _useChipsInput.handleInputChange;
125
-
126
- var inputRef = (0, _useExternRef.useExternRef)(getRef);
127
- var isDisabled = restProps.disabled || restProps.readOnly;
128
-
129
- var handleKeyDown = function handleKeyDown(e) {
130
- if (isDisabled) {
131
- e.preventDefault();
132
- return;
133
- }
134
-
135
- onKeyDown(e);
136
-
137
- if (e.key === "Backspace" && !e.defaultPrevented && !fieldValue && selectedOptions.length) {
138
- removeOption(getOptionValue(selectedOptions[selectedOptions.length - 1]));
139
- e.preventDefault();
140
- }
141
-
142
- if (e.key === "Enter" && !e.defaultPrevented && fieldValue) {
143
- addOptionFromInput();
144
- e.preventDefault();
145
- }
146
- };
147
-
148
- var handleBlur = function handleBlur(e) {
149
- if (focused) {
150
- setFocused(false);
151
- }
152
-
153
- onBlur(e);
154
- };
155
-
156
- var handleFocus = function handleFocus(e) {
157
- if (!focused) {
158
- setFocused(true);
159
- }
160
-
161
- onFocus(e);
162
- };
163
-
164
- var handleChipRemove = function handleChipRemove(_, value) {
165
- if (value !== undefined) {
166
- removeOption(value);
167
- }
168
- };
169
-
170
- var handleClick = function handleClick(e) {
171
- if (isDisabled) {
172
- e.preventDefault();
173
- return;
174
- }
175
-
176
- if ((inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) !== null && !focused) {
177
- inputRef.current.focus();
178
- }
179
- };
180
-
23
+ var ChipsInput = function ChipsInput(_ref) {
24
+ var style = _ref.style,
25
+ className = _ref.className,
26
+ getRootRef = _ref.getRootRef,
27
+ before = _ref.before,
28
+ after = _ref.after,
29
+ status = _ref.status,
30
+ restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
181
31
  return (0, _jsxRuntime.createScopedElement)(_FormField.FormField, {
182
32
  getRootRef: getRootRef,
183
- vkuiClass: (0, _classNames.classNames)("ChipsInput", "ChipsInput--sizeY-".concat(sizeY), focused && "ChipsInput--focused", !!selectedOptions.length && "ChipsInput--withChips"),
33
+ vkuiClass: "ChipsInput",
184
34
  className: className,
185
35
  style: style,
186
36
  disabled: restProps.disabled,
187
37
  before: before,
188
38
  after: after,
189
- onClick: handleClick,
190
39
  role: "application",
191
40
  "aria-disabled": restProps.disabled,
192
- "aria-readonly": restProps.readOnly
193
- }, (0, _jsxRuntime.createScopedElement)("div", {
194
- vkuiClass: "ChipsInput__container",
195
- role: "presentation"
196
- }, selectedOptions.map(function (option) {
197
- var value = getOptionValue(option);
198
- var label = getOptionLabel(option);
199
- return (0, _jsxRuntime.createScopedElement)(React.Fragment, {
200
- key: "".concat((0, _typeof2.default)(value), "-").concat(value)
201
- }, renderChip({
202
- option: option,
203
- value: value,
204
- label: label,
205
- onRemove: handleChipRemove,
206
- disabled: Boolean(restProps.disabled),
207
- className: (0, _prefixClass.prefixClass)("ChipsInput__chip")
208
- }));
209
- }), (0, _jsxRuntime.createScopedElement)("label", {
210
- vkuiClass: "ChipsInput__input-container",
211
- "aria-label": inputAriaLabel
212
- }, (0, _jsxRuntime.createScopedElement)("input", (0, _extends2.default)({
213
- ref: inputRef,
214
- value: fieldValue,
215
- autoCapitalize: "none",
216
- autoComplete: "off",
217
- autoCorrect: "off",
218
- spellCheck: false,
219
- "aria-autocomplete": "list",
220
- vkuiClass: "ChipsInput__el",
221
- onChange: handleInputChange,
222
- onKeyDown: handleKeyDown,
223
- onFocus: handleFocus,
224
- onBlur: handleBlur,
225
- placeholder: selectedOptions.length ? undefined : placeholder
226
- }, restProps)))));
41
+ "aria-readonly": restProps.readOnly,
42
+ status: status
43
+ }, (0, _jsxRuntime.createScopedElement)(_ChipsInputBase.ChipsInputBase, restProps));
227
44
  };
228
45
 
229
46
  exports.ChipsInput = ChipsInput;