@vkontakte/vkui 4.34.1 → 4.35.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 (565) hide show
  1. package/.browserslistrc +5 -0
  2. package/.cache/.eslintcache +1 -1
  3. package/.cache/.stylelintcache +1 -1
  4. package/.cache/.tsbuildinfo +256 -229
  5. package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  6. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  7. package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +46 -5
  8. package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +1 -1
  9. package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +1 -1
  10. package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  11. package/.cache/ts/src/components/Popper/Popper.d.ts +18 -1
  12. package/.cache/ts/src/components/PopperArrow/PopperArrow.d.ts +8 -0
  13. package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +7 -2
  14. package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +5 -1
  15. package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -0
  16. package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +8 -1
  17. package/.cache/ts/src/components/Tabs/Tabs.d.ts +13 -2
  18. package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +22 -1
  19. package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +5 -1
  20. package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -0
  21. package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +18 -1
  22. package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +3 -3
  23. package/.cache/ts/src/components/View/View.d.ts +2 -18
  24. package/.cache/ts/src/components/View/ViewInfinite.d.ts +1 -1
  25. package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +5 -1
  26. package/.cache/ts/src/tokenized/index.d.ts +26 -0
  27. package/.eslintrc.json +14 -4
  28. package/dist/cjs/components/AppRoot/AppRoot.js +1 -0
  29. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  30. package/dist/cjs/components/Button/Button.js +6 -4
  31. package/dist/cjs/components/Button/Button.js.map +1 -1
  32. package/dist/cjs/components/CardScroll/CardScroll.js +3 -1
  33. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  34. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +1 -0
  35. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  36. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +7 -1
  37. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  38. package/dist/cjs/components/CustomSelect/CustomSelect.js +477 -554
  39. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  40. package/dist/cjs/components/Dropdown/Dropdown.js +147 -26
  41. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  42. package/dist/cjs/components/Epic/Epic.js +1 -6
  43. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  44. package/dist/cjs/components/FocusTrap/FocusTrap.js +9 -10
  45. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  46. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +4 -7
  47. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  48. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +1 -0
  49. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  50. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  51. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  52. package/dist/cjs/components/Input/Input.js +1 -0
  53. package/dist/cjs/components/Input/Input.js.map +1 -1
  54. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
  55. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  56. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +1 -0
  57. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  58. package/dist/cjs/components/NativeSelect/NativeSelect.js +1 -0
  59. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  60. package/dist/cjs/components/Panel/Panel.js +1 -0
  61. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  62. package/dist/cjs/components/PanelHeader/PanelHeader.js +1 -0
  63. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  64. package/dist/cjs/components/Popper/Popper.js +16 -22
  65. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  66. package/dist/cjs/components/PopperArrow/PopperArrow.js +40 -0
  67. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -0
  68. package/dist/cjs/components/Radio/Radio.js +1 -0
  69. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  70. package/dist/cjs/components/RangeSlider/UniversalSlider.js +1 -0
  71. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  72. package/dist/cjs/components/RichTooltip/RichTooltip.js +6 -15
  73. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  74. package/dist/cjs/components/Select/Select.js +1 -0
  75. package/dist/cjs/components/Select/Select.js.map +1 -1
  76. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +1 -0
  77. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  78. package/dist/cjs/components/SimpleCell/SimpleCell.js +21 -31
  79. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  80. package/dist/cjs/components/Snackbar/Snackbar.js +7 -11
  81. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  82. package/dist/cjs/components/SplitCol/SplitCol.js +7 -1
  83. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  84. package/dist/cjs/components/SplitLayout/SplitLayout.js +5 -8
  85. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  86. package/dist/cjs/components/Tabbar/Tabbar.js +15 -14
  87. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  88. package/dist/cjs/components/TabbarItem/TabbarItem.js +8 -10
  89. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  90. package/dist/cjs/components/Tabs/Tabs.js +23 -5
  91. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  92. package/dist/cjs/components/TabsItem/TabsItem.js +39 -22
  93. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  94. package/dist/cjs/components/TextTooltip/TextTooltip.js +6 -9
  95. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  96. package/dist/cjs/components/Textarea/Textarea.js +5 -4
  97. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  98. package/dist/cjs/components/Tooltip/Tooltip.js +94 -71
  99. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  100. package/dist/cjs/components/Typography/Headline/Headline.js +11 -2
  101. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  102. package/dist/cjs/components/View/View.js +388 -453
  103. package/dist/cjs/components/View/View.js.map +1 -1
  104. package/dist/cjs/components/WriteBar/WriteBar.js +12 -5
  105. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  106. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -8
  107. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  108. package/dist/cjs/hooks/useOrientationChange.js +2 -1
  109. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  110. package/dist/cjs/tokenized/index.js +104 -0
  111. package/dist/cjs/tokenized/index.js.map +1 -1
  112. package/dist/components/AppRoot/AppRoot.js +1 -0
  113. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  114. package/dist/components/Button/Button.js +6 -4
  115. package/dist/components/Button/Button.js.map +1 -1
  116. package/dist/components/CardScroll/CardScroll.js +3 -1
  117. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  118. package/dist/components/ChipsSelect/ChipsSelect.js +1 -0
  119. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  120. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  121. package/dist/components/ConfigProvider/ConfigProviderContext.js +3 -0
  122. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  123. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  124. package/dist/components/CustomSelect/CustomSelect.js +473 -580
  125. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  126. package/dist/components/Dropdown/Dropdown.d.ts +46 -5
  127. package/dist/components/Dropdown/Dropdown.js +137 -27
  128. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  129. package/dist/components/Epic/Epic.js +1 -4
  130. package/dist/components/Epic/Epic.js.map +1 -1
  131. package/dist/components/FocusTrap/FocusTrap.d.ts +1 -1
  132. package/dist/components/FocusTrap/FocusTrap.js +9 -9
  133. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  134. package/dist/components/HorizontalCell/HorizontalCell.js +3 -5
  135. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  136. package/dist/components/HorizontalScroll/HorizontalScroll.js +1 -0
  137. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  138. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +2 -2
  139. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  140. package/dist/components/Input/Input.js +1 -0
  141. package/dist/components/Input/Input.js.map +1 -1
  142. package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
  143. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  144. package/dist/components/ModalCardBase/ModalCardBase.js +1 -0
  145. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  146. package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
  147. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  148. package/dist/components/NativeSelect/NativeSelect.js +1 -0
  149. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  150. package/dist/components/Panel/Panel.js +1 -0
  151. package/dist/components/Panel/Panel.js.map +1 -1
  152. package/dist/components/PanelHeader/PanelHeader.js +1 -0
  153. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  154. package/dist/components/Popper/Popper.d.ts +18 -1
  155. package/dist/components/Popper/Popper.js +15 -22
  156. package/dist/components/Popper/Popper.js.map +1 -1
  157. package/dist/components/PopperArrow/PopperArrow.d.ts +8 -0
  158. package/dist/components/PopperArrow/PopperArrow.js +27 -0
  159. package/dist/components/PopperArrow/PopperArrow.js.map +1 -0
  160. package/dist/components/Radio/Radio.js +1 -0
  161. package/dist/components/Radio/Radio.js.map +1 -1
  162. package/dist/components/RangeSlider/UniversalSlider.js +1 -0
  163. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  164. package/dist/components/RichTooltip/RichTooltip.d.ts +7 -2
  165. package/dist/components/RichTooltip/RichTooltip.js +5 -10
  166. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  167. package/dist/components/Select/Select.js +1 -0
  168. package/dist/components/Select/Select.js.map +1 -1
  169. package/dist/components/SelectMimicry/SelectMimicry.js +1 -0
  170. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  171. package/dist/components/SimpleCell/SimpleCell.js +19 -28
  172. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  173. package/dist/components/Snackbar/Snackbar.d.ts +5 -1
  174. package/dist/components/Snackbar/Snackbar.js +8 -11
  175. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  176. package/dist/components/SplitCol/SplitCol.d.ts +1 -0
  177. package/dist/components/SplitCol/SplitCol.js +3 -0
  178. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  179. package/dist/components/SplitLayout/SplitLayout.js +4 -7
  180. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  181. package/dist/components/Tabbar/Tabbar.d.ts +8 -1
  182. package/dist/components/Tabbar/Tabbar.js +15 -14
  183. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  184. package/dist/components/TabbarItem/TabbarItem.js +7 -9
  185. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  186. package/dist/components/Tabs/Tabs.d.ts +13 -2
  187. package/dist/components/Tabs/Tabs.js +23 -5
  188. package/dist/components/Tabs/Tabs.js.map +1 -1
  189. package/dist/components/TabsItem/TabsItem.d.ts +22 -1
  190. package/dist/components/TabsItem/TabsItem.js +40 -21
  191. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  192. package/dist/components/TextTooltip/TextTooltip.d.ts +5 -1
  193. package/dist/components/TextTooltip/TextTooltip.js +5 -7
  194. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  195. package/dist/components/Textarea/Textarea.d.ts +3 -0
  196. package/dist/components/Textarea/Textarea.js +5 -4
  197. package/dist/components/Textarea/Textarea.js.map +1 -1
  198. package/dist/components/Tooltip/Tooltip.d.ts +18 -1
  199. package/dist/components/Tooltip/Tooltip.js +89 -68
  200. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  201. package/dist/components/Typography/Headline/Headline.d.ts +3 -3
  202. package/dist/components/Typography/Headline/Headline.js +10 -2
  203. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  204. package/dist/components/View/View.d.ts +2 -18
  205. package/dist/components/View/View.js +384 -462
  206. package/dist/components/View/View.js.map +1 -1
  207. package/dist/components/View/ViewInfinite.d.ts +1 -1
  208. package/dist/components/WriteBar/WriteBar.d.ts +5 -1
  209. package/dist/components/WriteBar/WriteBar.js +10 -5
  210. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  211. package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -6
  212. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  213. package/dist/components.css +143 -127
  214. package/dist/components.css.map +1 -1
  215. package/dist/cssm/components/ActionSheet/ActionSheet.css +1 -1
  216. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +1 -1
  217. package/dist/cssm/components/Alert/Alert.css +1 -1
  218. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  219. package/dist/cssm/components/AppRoot/AppRoot.js +1 -0
  220. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  221. package/dist/cssm/components/Avatar/Avatar.css +3 -5
  222. package/dist/cssm/components/Badge/Badge.css +3 -3
  223. package/dist/cssm/components/Banner/Banner.css +5 -5
  224. package/dist/cssm/components/BaseGallery/BaseGallery.css +1 -1
  225. package/dist/cssm/components/Button/Button.css +53 -35
  226. package/dist/cssm/components/Button/Button.js +6 -4
  227. package/dist/cssm/components/Button/Button.js.map +1 -1
  228. package/dist/cssm/components/Calendar/Calendar.css +1 -1
  229. package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
  230. package/dist/cssm/components/CalendarDays/CalendarDays.css +1 -1
  231. package/dist/cssm/components/CalendarHeader/CalendarHeader.css +1 -1
  232. package/dist/cssm/components/CalendarRange/CalendarRange.css +1 -1
  233. package/dist/cssm/components/CalendarTime/CalendarTime.css +1 -1
  234. package/dist/cssm/components/Card/Card.css +5 -6
  235. package/dist/cssm/components/CardGrid/CardGrid.css +1 -1
  236. package/dist/cssm/components/CardScroll/CardScroll.css +1 -1
  237. package/dist/cssm/components/CardScroll/CardScroll.js +3 -1
  238. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  239. package/dist/cssm/components/Cell/Cell.css +3 -3
  240. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  241. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  242. package/dist/cssm/components/CellButton/CellButton.css +1 -1
  243. package/dist/cssm/components/Checkbox/Checkbox.css +1 -1
  244. package/dist/cssm/components/Chip/Chip.css +1 -1
  245. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  246. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  247. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +1 -0
  248. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  249. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
  250. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +3 -0
  251. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  252. package/dist/cssm/components/ContentCard/ContentCard.css +1 -1
  253. package/dist/cssm/components/Counter/Counter.css +31 -31
  254. package/dist/cssm/components/CustomScrollView/CustomScrollView.css +1 -1
  255. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  256. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  257. package/dist/cssm/components/CustomSelect/CustomSelect.js +473 -580
  258. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  259. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -3
  260. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -3
  261. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  262. package/dist/cssm/components/DatePicker/DatePicker.css +1 -1
  263. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  264. package/dist/cssm/components/Dropdown/Dropdown.css +1 -1
  265. package/dist/cssm/components/Dropdown/Dropdown.d.ts +46 -5
  266. package/dist/cssm/components/Dropdown/Dropdown.js +137 -27
  267. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  268. package/dist/cssm/components/Epic/Epic.css +1 -1
  269. package/dist/cssm/components/Epic/Epic.js +1 -4
  270. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  271. package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
  272. package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +1 -1
  273. package/dist/cssm/components/FocusTrap/FocusTrap.js +9 -9
  274. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  275. package/dist/cssm/components/FocusVisible/FocusVisible.css +1 -1
  276. package/dist/cssm/components/Footer/Footer.css +1 -1
  277. package/dist/cssm/components/FormField/FormField.css +9 -9
  278. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  279. package/dist/cssm/components/FormLayout/FormLayout.css +1 -1
  280. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  281. package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
  282. package/dist/cssm/components/Gradient/Gradient.css +1 -1
  283. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  284. package/dist/cssm/components/Group/Group.css +1 -1
  285. package/dist/cssm/components/Header/Header.css +1 -1
  286. package/dist/cssm/components/HorizontalCell/HorizontalCell.css +1 -1
  287. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -5
  288. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  289. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.css +1 -1
  290. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +1 -0
  291. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  292. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +3 -3
  293. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +2 -2
  294. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  295. package/dist/cssm/components/IconButton/IconButton.css +1 -1
  296. package/dist/cssm/components/InfoRow/InfoRow.css +1 -1
  297. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.css +1 -1
  298. package/dist/cssm/components/Input/Input.css +1 -1
  299. package/dist/cssm/components/Input/Input.js +1 -0
  300. package/dist/cssm/components/Input/Input.js.map +1 -1
  301. package/dist/cssm/components/InputLike/InputLike.css +1 -1
  302. package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
  303. package/dist/cssm/components/Link/Link.css +1 -1
  304. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.css +1 -1
  305. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +2 -2
  306. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  307. package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
  308. package/dist/cssm/components/ModalCardBase/ModalCardBase.css +3 -3
  309. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +1 -0
  310. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  311. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  312. package/dist/cssm/components/ModalPage/ModalPage.css +1 -1
  313. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  314. package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
  315. package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +1 -1
  316. package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  317. package/dist/cssm/components/NativeSelect/NativeSelect.js +1 -0
  318. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  319. package/dist/cssm/components/Pagination/Pagination.css +1 -1
  320. package/dist/cssm/components/Panel/Panel.css +1 -1
  321. package/dist/cssm/components/Panel/Panel.js +1 -0
  322. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  323. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  324. package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -0
  325. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  326. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  327. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  328. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  329. package/dist/cssm/components/Placeholder/Placeholder.css +3 -3
  330. package/dist/cssm/components/PopoutRoot/PopoutRoot.css +1 -1
  331. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.css +1 -1
  332. package/dist/cssm/components/Popper/Popper.css +1 -1
  333. package/dist/cssm/components/Popper/Popper.d.ts +18 -1
  334. package/dist/cssm/components/Popper/Popper.js +15 -22
  335. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  336. package/dist/cssm/components/PopperArrow/PopperArrow.css +1 -0
  337. package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +8 -0
  338. package/dist/cssm/components/PopperArrow/PopperArrow.js +28 -0
  339. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -0
  340. package/dist/cssm/components/Progress/Progress.css +1 -1
  341. package/dist/cssm/components/PromoBanner/PromoBanner.css +1 -1
  342. package/dist/cssm/components/PullToRefresh/PullToRefresh.css +3 -3
  343. package/dist/cssm/components/Radio/Radio.css +1 -1
  344. package/dist/cssm/components/Radio/Radio.js +1 -0
  345. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  346. package/dist/cssm/components/RadioGroup/RadioGroup.css +1 -1
  347. package/dist/cssm/components/RangeSlider/UniversalSlider.js +1 -0
  348. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  349. package/dist/cssm/components/Removable/Removable.css +1 -1
  350. package/dist/cssm/components/RichCell/RichCell.css +3 -3
  351. package/dist/cssm/components/RichTooltip/RichTooltip.css +3 -1
  352. package/dist/cssm/components/RichTooltip/RichTooltip.d.ts +7 -2
  353. package/dist/cssm/components/RichTooltip/RichTooltip.js +5 -10
  354. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  355. package/dist/cssm/components/Root/Root.css +1 -1
  356. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.css +1 -1
  357. package/dist/cssm/components/Search/Search.css +1 -1
  358. package/dist/cssm/components/SegmentedControl/SegmentedControl.css +1 -1
  359. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  360. package/dist/cssm/components/Select/Select.css +1 -1
  361. package/dist/cssm/components/Select/Select.js +1 -0
  362. package/dist/cssm/components/Select/Select.js.map +1 -1
  363. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +1 -0
  364. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  365. package/dist/cssm/components/Separator/Separator.css +1 -1
  366. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  367. package/dist/cssm/components/SimpleCell/SimpleCell.js +19 -28
  368. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  369. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.css +1 -1
  370. package/dist/cssm/components/Slider/Slider.css +3 -3
  371. package/dist/cssm/components/SliderSwitch/SliderSwitch.css +1 -1
  372. package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
  373. package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -1
  374. package/dist/cssm/components/Snackbar/Snackbar.js +8 -11
  375. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  376. package/dist/cssm/components/Spacing/Spacing.css +1 -1
  377. package/dist/cssm/components/Spinner/Spinner.css +1 -1
  378. package/dist/cssm/components/SplitCol/SplitCol.css +1 -1
  379. package/dist/cssm/components/SplitCol/SplitCol.d.ts +1 -0
  380. package/dist/cssm/components/SplitCol/SplitCol.js +3 -0
  381. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  382. package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
  383. package/dist/cssm/components/SplitLayout/SplitLayout.js +4 -7
  384. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  385. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  386. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
  387. package/dist/cssm/components/Switch/Switch.css +3 -3
  388. package/dist/cssm/components/Tabbar/Tabbar.css +5 -3
  389. package/dist/cssm/components/Tabbar/Tabbar.d.ts +8 -1
  390. package/dist/cssm/components/Tabbar/Tabbar.js +15 -14
  391. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  392. package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
  393. package/dist/cssm/components/TabbarItem/TabbarItem.js +7 -9
  394. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  395. package/dist/cssm/components/Tabs/Tabs.css +1 -1
  396. package/dist/cssm/components/Tabs/Tabs.d.ts +13 -2
  397. package/dist/cssm/components/Tabs/Tabs.js +23 -5
  398. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  399. package/dist/cssm/components/TabsItem/TabsItem.css +5 -1
  400. package/dist/cssm/components/TabsItem/TabsItem.d.ts +22 -1
  401. package/dist/cssm/components/TabsItem/TabsItem.js +40 -21
  402. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  403. package/dist/cssm/components/Tappable/Tappable.css +5 -5
  404. package/dist/cssm/components/TextTooltip/TextTooltip.css +1 -1
  405. package/dist/cssm/components/TextTooltip/TextTooltip.d.ts +5 -1
  406. package/dist/cssm/components/TextTooltip/TextTooltip.js +5 -7
  407. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  408. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  409. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -0
  410. package/dist/cssm/components/Textarea/Textarea.js +5 -4
  411. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  412. package/dist/cssm/components/Tooltip/Tooltip.css +1 -1
  413. package/dist/cssm/components/Tooltip/Tooltip.d.ts +18 -1
  414. package/dist/cssm/components/Tooltip/Tooltip.js +89 -68
  415. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  416. package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
  417. package/dist/cssm/components/Typography/Footnote/Footnote.css +1 -1
  418. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  419. package/dist/cssm/components/Typography/Headline/Headline.d.ts +3 -3
  420. package/dist/cssm/components/Typography/Headline/Headline.js +10 -2
  421. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  422. package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -1
  423. package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
  424. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  425. package/dist/cssm/components/Typography/Title/Title.css +1 -1
  426. package/dist/cssm/components/UsersStack/UsersStack.css +5 -5
  427. package/dist/cssm/components/View/View.css +1 -1
  428. package/dist/cssm/components/View/View.d.ts +2 -18
  429. package/dist/cssm/components/View/View.js +384 -462
  430. package/dist/cssm/components/View/View.js.map +1 -1
  431. package/dist/cssm/components/View/ViewIOS.css +1 -1
  432. package/dist/cssm/components/View/ViewInfinite.d.ts +1 -1
  433. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.css +1 -1
  434. package/dist/cssm/components/WriteBar/WriteBar.css +3 -1
  435. package/dist/cssm/components/WriteBar/WriteBar.d.ts +5 -1
  436. package/dist/cssm/components/WriteBar/WriteBar.js +10 -5
  437. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  438. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.css +1 -1
  439. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -6
  440. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  441. package/dist/cssm/fonts/fonts.css +1 -1
  442. package/dist/cssm/hooks/useOrientationChange.js +2 -1
  443. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  444. package/dist/cssm/lib/calendar.d.ts +2 -2
  445. package/dist/cssm/styles/animations.css +1 -1
  446. package/dist/cssm/styles/bright_light.css +1 -1
  447. package/dist/cssm/styles/common.css +1 -1
  448. package/dist/cssm/styles/components.css +143 -127
  449. package/dist/cssm/styles/constants.css +3 -10
  450. package/dist/cssm/styles/space_gray.css +1 -1
  451. package/dist/cssm/styles/themes.css +1 -16
  452. package/dist/cssm/styles/unstable.css +3 -1
  453. package/dist/cssm/styles/vkcom_dark.css +1 -6
  454. package/dist/cssm/styles/vkcom_light.css +1 -11
  455. package/dist/cssm/tokenized/index.d.ts +26 -0
  456. package/dist/cssm/tokenized/index.js +13 -0
  457. package/dist/cssm/tokenized/index.js.map +1 -1
  458. package/dist/default_scheme.css +1 -1
  459. package/dist/default_scheme.css.map +1 -1
  460. package/dist/fonts.css +1 -1
  461. package/dist/fonts.css.map +1 -1
  462. package/dist/hooks/useOrientationChange.js +2 -1
  463. package/dist/hooks/useOrientationChange.js.map +1 -1
  464. package/dist/lib/calendar.d.ts +2 -2
  465. package/dist/tokenized/index.d.ts +26 -0
  466. package/dist/tokenized/index.js +13 -0
  467. package/dist/tokenized/index.js.map +1 -1
  468. package/dist/unstable.css +3 -1
  469. package/dist/unstable.css.map +1 -1
  470. package/dist/vkui.css +144 -143
  471. package/dist/vkui.css.map +1 -1
  472. package/package.json +6 -5
  473. package/src/components/AppRoot/AppRoot.tsx +2 -0
  474. package/src/components/Badge/Badge.css +0 -5
  475. package/src/components/Button/Button.css +0 -4
  476. package/src/components/Button/Button.tsx +4 -2
  477. package/src/components/Button/Readme.md +30 -59
  478. package/src/components/CardScroll/CardScroll.tsx +1 -1
  479. package/src/components/Cell/Cell.css +3 -2
  480. package/src/components/ChipsInput/ChipsInput.css +2 -0
  481. package/src/components/ChipsSelect/ChipsSelect.tsx +2 -0
  482. package/src/components/ConfigProvider/ConfigProviderContext.tsx +2 -0
  483. package/src/components/Counter/Counter.css +30 -0
  484. package/src/components/CustomScrollView/CustomScrollView.css +10 -5
  485. package/src/components/CustomSelect/CustomSelect.tsx +543 -574
  486. package/src/components/Dropdown/Dropdown.css +12 -0
  487. package/src/components/Dropdown/Dropdown.tsx +174 -20
  488. package/src/components/Dropdown/Readme.md +1 -0
  489. package/src/components/Epic/Epic.tsx +1 -4
  490. package/src/components/FixedLayout/Readme.md +103 -109
  491. package/src/components/FocusTrap/FocusTrap.tsx +10 -10
  492. package/src/components/Group/Group.css +1 -1
  493. package/src/components/Group/Readme.md +1 -1
  494. package/src/components/HorizontalCell/HorizontalCell.css +25 -43
  495. package/src/components/HorizontalCell/HorizontalCell.tsx +3 -9
  496. package/src/components/HorizontalScroll/HorizontalScroll.css +23 -0
  497. package/src/components/HorizontalScroll/HorizontalScroll.tsx +2 -0
  498. package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +2 -2
  499. package/src/components/Input/Input.css +2 -0
  500. package/src/components/Input/Input.tsx +2 -0
  501. package/src/components/MiniInfoCell/MiniInfoCell.css +13 -3
  502. package/src/components/MiniInfoCell/MiniInfoCell.tsx +3 -3
  503. package/src/components/ModalCardBase/ModalCardBase.tsx +2 -0
  504. package/src/components/NativeSelect/NativeSelect.tsx +2 -0
  505. package/src/components/Panel/Panel.tsx +2 -0
  506. package/src/components/PanelHeader/PanelHeader.tsx +2 -0
  507. package/src/components/Popper/Popper.css +0 -35
  508. package/src/components/Popper/Popper.tsx +33 -25
  509. package/src/components/PopperArrow/PopperArrow.css +34 -0
  510. package/src/components/PopperArrow/PopperArrow.tsx +40 -0
  511. package/src/components/Radio/Radio.tsx +2 -0
  512. package/src/components/RangeSlider/UniversalSlider.tsx +2 -0
  513. package/src/components/RichTooltip/RichTooltip.css +44 -4
  514. package/src/components/RichTooltip/RichTooltip.tsx +9 -11
  515. package/src/components/Select/Select.tsx +2 -0
  516. package/src/components/SelectMimicry/SelectMimicry.tsx +2 -0
  517. package/src/components/SimpleCell/Readme.md +115 -129
  518. package/src/components/SimpleCell/SimpleCell.css +30 -68
  519. package/src/components/SimpleCell/SimpleCell.tsx +23 -25
  520. package/src/components/Snackbar/Readme.md +95 -123
  521. package/src/components/Snackbar/Snackbar.css +18 -27
  522. package/src/components/Snackbar/Snackbar.tsx +17 -11
  523. package/src/components/SplitCol/SplitCol.tsx +2 -0
  524. package/src/components/SplitLayout/SplitLayout.css +3 -7
  525. package/src/components/SplitLayout/SplitLayout.tsx +9 -6
  526. package/src/components/Switch/Switch.css +6 -2
  527. package/src/components/Tabbar/Tabbar.css +4 -1
  528. package/src/components/Tabbar/Tabbar.tsx +23 -12
  529. package/src/components/TabbarItem/TabbarItem.css +7 -5
  530. package/src/components/TabbarItem/TabbarItem.tsx +13 -7
  531. package/src/components/Tabs/Readme.md +191 -251
  532. package/src/components/Tabs/Tabs.css +27 -80
  533. package/src/components/Tabs/Tabs.tsx +45 -7
  534. package/src/components/TabsItem/Readme.md +1 -0
  535. package/src/components/TabsItem/TabsItem.css +191 -106
  536. package/src/components/TabsItem/TabsItem.tsx +72 -20
  537. package/src/components/TextTooltip/TextTooltip.css +41 -11
  538. package/src/components/TextTooltip/TextTooltip.tsx +9 -13
  539. package/src/components/Textarea/Textarea.css +2 -0
  540. package/src/components/Textarea/Textarea.tsx +5 -4
  541. package/src/components/Tooltip/Readme.md +128 -101
  542. package/src/components/Tooltip/Tooltip.css +29 -40
  543. package/src/components/Tooltip/Tooltip.tsx +98 -66
  544. package/src/components/Typography/Headline/Headline.tsx +15 -1
  545. package/src/components/View/Readme.md +2 -0
  546. package/src/components/View/View.tsx +451 -514
  547. package/src/components/WriteBar/WriteBar.css +27 -33
  548. package/src/components/WriteBar/WriteBar.tsx +16 -5
  549. package/src/components/WriteBarIcon/WriteBarIcon.css +6 -19
  550. package/src/components/WriteBarIcon/WriteBarIcon.tsx +6 -6
  551. package/src/hooks/useOrientationChange.ts +1 -0
  552. package/src/styles/components.css +1 -0
  553. package/src/styles/constants.css +8 -0
  554. package/src/tokenized/index.ts +39 -0
  555. package/tsconfig.json +1 -1
  556. package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +0 -21
  557. package/dist/cjs/components/ClickPopper/ClickPopper.js +0 -96
  558. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +0 -1
  559. package/dist/components/ClickPopper/ClickPopper.d.ts +0 -21
  560. package/dist/components/ClickPopper/ClickPopper.js +0 -71
  561. package/dist/components/ClickPopper/ClickPopper.js.map +0 -1
  562. package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +0 -21
  563. package/dist/cssm/components/ClickPopper/ClickPopper.js +0 -71
  564. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +0 -1
  565. package/src/components/ClickPopper/ClickPopper.tsx +0 -86
@@ -13,10 +13,10 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
15
 
16
- var _getClassName = require("../../helpers/getClassName");
17
-
18
16
  var _classNames = require("../../lib/classNames");
19
17
 
18
+ var _platform = require("../../lib/platform");
19
+
20
20
  var _PopoutRoot = require("../PopoutRoot/PopoutRoot");
21
21
 
22
22
  var _usePlatform = require("../../hooks/usePlatform");
@@ -36,16 +36,13 @@ var SplitLayout = function SplitLayout(_ref) {
36
36
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
37
37
  var platform = (0, _usePlatform.usePlatform)();
38
38
  return (0, _jsxRuntime.createScopedElement)(_PopoutRoot.PopoutRoot, {
39
- vkuiClass: (0, _getClassName.getClassName)("SplitLayout", platform),
39
+ vkuiClass: (0, _classNames.classNames)("SplitLayout", platform === _platform.IOS && "SplitLayout--ios"),
40
40
  popout: popout,
41
41
  modal: modal,
42
42
  getRootRef: getRootRef
43
43
  }, header, (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
44
- ref: getRef // eslint-disable-next-line vkui/no-object-expression-in-arguments
45
- ,
46
- vkuiClass: (0, _classNames.classNames)("SplitLayout__inner", {
47
- "SplitLayout__inner--header": !!header
48
- })
44
+ ref: getRef,
45
+ vkuiClass: (0, _classNames.classNames)("SplitLayout__inner", !!header && "SplitLayout__inner--header")
49
46
  }), children));
50
47
  };
51
48
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SplitLayout/SplitLayout.tsx"],"names":["SplitLayout","popout","modal","header","children","getRootRef","getRef","restProps","platform"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AAEA;;AACA;;;;AAkBA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;AAAA,MAPtBC,MAOsB,QAPtBA,MAOsB;AAAA,MANtBC,KAMsB,QANtBA,KAMsB;AAAA,MALtBC,MAKsB,QALtBA,MAKsB;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,SACmB;AACtB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,SACE,qCAAC,sBAAD;AACE,IAAA,SAAS,EAAE,gCAAa,aAAb,EAA4BA,QAA5B,CADb;AAEE,IAAA,MAAM,EAAEP,MAFV;AAGE,IAAA,KAAK,EAAEC,KAHT;AAIE,IAAA,UAAU,EAAEG;AAJd,KAMGF,MANH,EAOE,uEACMI,SADN;AAEE,IAAA,GAAG,EAAED,MAFP,CAGE;AAHF;AAIE,IAAA,SAAS,EAAE,4BAAW,oBAAX,EAAiC;AAC1C,oCAA8B,CAAC,CAACH;AADU,KAAjC;AAJb,MAQGC,QARH,CAPF,CADF;AAoBD,CA/BM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { PopoutRoot } from \"../PopoutRoot/PopoutRoot\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./SplitLayout.css\";\n\nexport interface SplitLayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n header?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SplitLayout\n */\nexport const SplitLayout = ({\n popout,\n modal,\n header,\n children,\n getRootRef,\n getRef,\n ...restProps\n}: SplitLayoutProps) => {\n const platform = usePlatform();\n\n return (\n <PopoutRoot\n vkuiClass={getClassName(\"SplitLayout\", platform)}\n popout={popout}\n modal={modal}\n getRootRef={getRootRef}\n >\n {header}\n <div\n {...restProps}\n ref={getRef}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"SplitLayout__inner\", {\n \"SplitLayout__inner--header\": !!header,\n })}\n >\n {children}\n </div>\n </PopoutRoot>\n );\n};\n"],"file":"SplitLayout.js"}
1
+ {"version":3,"sources":["../../../../src/components/SplitLayout/SplitLayout.tsx"],"names":["SplitLayout","popout","modal","header","children","getRootRef","getRef","restProps","platform","IOS"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AAEA;;AACA;;;;AAkBA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;AAAA,MAPtBC,MAOsB,QAPtBA,MAOsB;AAAA,MANtBC,KAMsB,QANtBA,KAMsB;AAAA,MALtBC,MAKsB,QALtBA,MAKsB;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,SACmB;AACtB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,SACE,qCAAC,sBAAD;AACE,IAAA,SAAS,EAAE,4BACT,aADS,EAETA,QAAQ,KAAKC,aAAb,IAAoB,kBAFX,CADb;AAKE,IAAA,MAAM,EAAER,MALV;AAME,IAAA,KAAK,EAAEC,KANT;AAOE,IAAA,UAAU,EAAEG;AAPd,KASGF,MATH,EAUE,uEACMI,SADN;AAEE,IAAA,GAAG,EAAED,MAFP;AAGE,IAAA,SAAS,EAAE,4BACT,oBADS,EAET,CAAC,CAACH,MAAF,IAAY,4BAFH;AAHb,MAQGC,QARH,CAVF,CADF;AAuBD,CAlCM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS } from \"../../lib/platform\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { PopoutRoot } from \"../PopoutRoot/PopoutRoot\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./SplitLayout.css\";\n\nexport interface SplitLayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n header?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SplitLayout\n */\nexport const SplitLayout = ({\n popout,\n modal,\n header,\n children,\n getRootRef,\n getRef,\n ...restProps\n}: SplitLayoutProps) => {\n const platform = usePlatform();\n\n return (\n <PopoutRoot\n vkuiClass={classNames(\n \"SplitLayout\",\n platform === IOS && \"SplitLayout--ios\"\n )}\n popout={popout}\n modal={modal}\n getRootRef={getRootRef}\n >\n {header}\n <div\n {...restProps}\n ref={getRef}\n vkuiClass={classNames(\n \"SplitLayout__inner\",\n !!header && \"SplitLayout__inner--header\"\n )}\n >\n {children}\n </div>\n </PopoutRoot>\n );\n};\n"],"file":"SplitLayout.js"}
@@ -23,32 +23,33 @@ var _usePlatform = require("../../hooks/usePlatform");
23
23
 
24
24
  var _platform = require("../../lib/platform");
25
25
 
26
- var _excluded = ["children", "shadow", "itemsLayout"];
26
+ var _excluded = ["children", "shadow", "itemsLayout", "mode"];
27
27
 
28
+ var getItemsLayout = function getItemsLayout(itemsLayout, children) {
29
+ switch (itemsLayout) {
30
+ case "horizontal":
31
+ case "vertical":
32
+ return itemsLayout;
33
+
34
+ default:
35
+ return React.Children.count(children) > 2 ? "vertical" : "horizontal";
36
+ }
37
+ };
28
38
  /**
29
39
  * @see https://vkcom.github.io/VKUI/#/Tabbar
30
40
  */
41
+
42
+
31
43
  var Tabbar = function Tabbar(_ref) {
32
44
  var children = _ref.children,
33
45
  _ref$shadow = _ref.shadow,
34
46
  shadow = _ref$shadow === void 0 ? true : _ref$shadow,
35
47
  itemsLayout = _ref.itemsLayout,
48
+ mode = _ref.mode,
36
49
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
37
50
  var platform = (0, _usePlatform.usePlatform)();
38
-
39
- var getItemsLayout = function getItemsLayout() {
40
- switch (itemsLayout) {
41
- case "horizontal":
42
- case "vertical":
43
- return itemsLayout;
44
-
45
- default:
46
- return React.Children.count(children) > 2 ? "vertical" : "horizontal";
47
- }
48
- };
49
-
50
51
  return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({
51
- vkuiClass: (0, _classNames.classNames)("Tabbar", platform === _platform.Platform.IOS && "Tabbar--ios", "Tabbar--l-".concat(getItemsLayout()), shadow && "Tabbar--shadow")
52
+ vkuiClass: (0, _classNames.classNames)("Tabbar", platform === _platform.Platform.IOS && "Tabbar--ios", "Tabbar--l-".concat(getItemsLayout(itemsLayout !== null && itemsLayout !== void 0 ? itemsLayout : mode, children)), shadow && "Tabbar--shadow")
52
53
  }, restProps), (0, _jsxRuntime.createScopedElement)("div", {
53
54
  vkuiClass: "Tabbar__in"
54
55
  }, children));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tabbar/Tabbar.tsx"],"names":["Tabbar","children","shadow","itemsLayout","restProps","platform","getItemsLayout","React","Children","count","Platform","IOS"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;AAWA;AACA;AACA;AACO,IAAMA,MAAM,GAAG,SAATA,MAAS,OAKH;AAAA,MAJjBC,QAIiB,QAJjBA,QAIiB;AAAA,yBAHjBC,MAGiB;AAAA,MAHjBA,MAGiB,4BAHR,IAGQ;AAAA,MAFjBC,WAEiB,QAFjBA,WAEiB;AAAA,MADdC,SACc;AACjB,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,YAAQH,WAAR;AACE,WAAK,YAAL;AACA,WAAK,UAAL;AACE,eAAOA,WAAP;;AACF;AACE,eAAOI,KAAK,CAACC,QAAN,CAAeC,KAAf,CAAqBR,QAArB,IAAiC,CAAjC,GAAqC,UAArC,GAAkD,YAAzD;AALJ;AAOD,GARD;;AAUA,SACE;AACE,IAAA,SAAS,EAAE,4BACT,QADS,EAETI,QAAQ,KAAKK,mBAASC,GAAtB,IAA6B,aAFpB,sBAGIL,cAAc,EAHlB,GAITJ,MAAM,IAAI,gBAJD;AADb,KAOME,SAPN,GASE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA6BH,QAA7B,CATF,CADF;AAaD,CA/BM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { Platform } from \"../../lib/platform\";\nimport \"./Tabbar.css\";\n\nexport interface TabbarProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Флаг для показа/скрытия верхней тени (Android) или границы (iOS)\n */\n shadow?: boolean;\n itemsLayout?: \"vertical\" | \"horizontal\" | \"auto\";\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Tabbar\n */\nexport const Tabbar = ({\n children,\n shadow = true,\n itemsLayout,\n ...restProps\n}: TabbarProps) => {\n const platform = usePlatform();\n\n const getItemsLayout = () => {\n switch (itemsLayout) {\n case \"horizontal\":\n case \"vertical\":\n return itemsLayout;\n default:\n return React.Children.count(children) > 2 ? \"vertical\" : \"horizontal\";\n }\n };\n\n return (\n <div\n vkuiClass={classNames(\n \"Tabbar\",\n platform === Platform.IOS && \"Tabbar--ios\",\n `Tabbar--l-${getItemsLayout()}`,\n shadow && \"Tabbar--shadow\"\n )}\n {...restProps}\n >\n <div vkuiClass=\"Tabbar__in\">{children}</div>\n </div>\n );\n};\n"],"file":"Tabbar.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tabbar/Tabbar.tsx"],"names":["getItemsLayout","itemsLayout","children","React","Children","count","Tabbar","shadow","mode","restProps","platform","Platform","IOS"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;AAkBA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CACrBC,WADqB,EAErBC,QAFqB,EAGlB;AACH,UAAQD,WAAR;AACE,SAAK,YAAL;AACA,SAAK,UAAL;AACE,aAAOA,WAAP;;AACF;AACE,aAAOE,KAAK,CAACC,QAAN,CAAeC,KAAf,CAAqBH,QAArB,IAAiC,CAAjC,GAAqC,UAArC,GAAkD,YAAzD;AALJ;AAOD,CAXD;AAaA;AACA;AACA;;;AACO,IAAMI,MAAM,GAAG,SAATA,MAAS,OAMH;AAAA,MALjBJ,QAKiB,QALjBA,QAKiB;AAAA,yBAJjBK,MAIiB;AAAA,MAJjBA,MAIiB,4BAJR,IAIQ;AAAA,MAHjBN,WAGiB,QAHjBA,WAGiB;AAAA,MAFjBO,IAEiB,QAFjBA,IAEiB;AAAA,MADdC,SACc;AACjB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,SACE;AACE,IAAA,SAAS,EAAE,4BACT,QADS,EAETA,QAAQ,KAAKC,mBAASC,GAAtB,IAA6B,aAFpB,sBAGIZ,cAAc,CAACC,WAAD,aAACA,WAAD,cAACA,WAAD,GAAgBO,IAAhB,EAAsBN,QAAtB,CAHlB,GAITK,MAAM,IAAI,gBAJD;AADb,KAOME,SAPN,GASE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA6BP,QAA7B,CATF,CADF;AAaD,CAtBM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { Platform } from \"../../lib/platform\";\nimport \"./Tabbar.css\";\n\nexport interface TabbarProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Флаг для показа/скрытия верхней тени (Android) или границы (iOS)\n */\n shadow?: boolean;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте `mode`\n */\n itemsLayout?: \"vertical\" | \"horizontal\" | \"auto\"; // TODO v5.0.0 удалить, будет использоваться mode\n /**\n * Задает расположение элементов (вертикальное/горизонтальное)\n */\n mode?: \"vertical\" | \"horizontal\" | \"auto\";\n}\n\nconst getItemsLayout = (\n itemsLayout: TabbarProps[\"mode\"],\n children: TabbarProps[\"children\"]\n) => {\n switch (itemsLayout) {\n case \"horizontal\":\n case \"vertical\":\n return itemsLayout;\n default:\n return React.Children.count(children) > 2 ? \"vertical\" : \"horizontal\";\n }\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Tabbar\n */\nexport const Tabbar = ({\n children,\n shadow = true,\n itemsLayout,\n mode,\n ...restProps\n}: TabbarProps) => {\n const platform = usePlatform();\n\n return (\n <div\n vkuiClass={classNames(\n \"Tabbar\",\n platform === Platform.IOS && \"Tabbar--ios\",\n `Tabbar--l-${getItemsLayout(itemsLayout ?? mode, children)}`,\n shadow && \"Tabbar--shadow\"\n )}\n {...restProps}\n >\n <div vkuiClass=\"Tabbar__in\">{children}</div>\n </div>\n );\n};\n"],"file":"Tabbar.js"}
@@ -13,8 +13,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
15
 
16
- var _getClassName = require("../../helpers/getClassName");
17
-
18
16
  var _Counter = require("../Counter/Counter");
19
17
 
20
18
  var _classNames = require("../../lib/classNames");
@@ -25,6 +23,8 @@ var _utils = require("../../lib/utils");
25
23
 
26
24
  var _Tappable = require("../Tappable/Tappable");
27
25
 
26
+ var _Footnote = require("../Typography/Footnote/Footnote");
27
+
28
28
  var _platform = require("../../lib/platform");
29
29
 
30
30
  var _warnOnce = require("../../lib/warnOnce");
@@ -54,12 +54,8 @@ var TabbarItem = function TabbarItem(_ref) {
54
54
 
55
55
  return (0, _jsxRuntime.createScopedElement)(Component, (0, _extends2.default)({}, restProps, {
56
56
  disabled: disabled,
57
- href: href // eslint-disable-next-line vkui/no-object-expression-in-arguments
58
- ,
59
- vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("TabbarItem", platform), {
60
- "TabbarItem--selected": selected,
61
- "TabbarItem--text": !!text
62
- })
57
+ href: href,
58
+ vkuiClass: (0, _classNames.classNames)("TabbarItem", platform === _platform.Platform.IOS && "TabbarItem--ios", platform === _platform.Platform.ANDROID && "TabbarItem--android", selected && "TabbarItem--selected", !!text && "TabbarItem--text")
63
59
  }), (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, {
64
60
  role: "presentation",
65
61
  Component: "div",
@@ -77,8 +73,10 @@ var TabbarItem = function TabbarItem(_ref) {
77
73
  }, (0, _utils.hasReactNode)(indicator) && indicator, !indicator && label && (0, _jsxRuntime.createScopedElement)(_Counter.Counter, {
78
74
  size: "s",
79
75
  mode: "prominent"
80
- }, label))), text && (0, _jsxRuntime.createScopedElement)("div", {
81
- vkuiClass: "TabbarItem__text"
76
+ }, label))), text && (0, _jsxRuntime.createScopedElement)(_Footnote.Footnote, {
77
+ Component: "div",
78
+ vkuiClass: "TabbarItem__text",
79
+ weight: "2"
82
80
  }, text)));
83
81
  };
84
82
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TabbarItem/TabbarItem.tsx"],"names":["warn","TabbarItem","children","selected","label","indicator","text","href","Component","disabled","restProps","platform","process","env","NODE_ENV","Platform","IOS"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;AAsBA,IAAMA,IAAI,GAAG,wBAAS,YAAT,CAAb;AAEA;AACA;AACA;;AACO,IAAMC,UAAU,GAAG,SAAbA,UAAa,OAUH;AAAA,MATrBC,QASqB,QATrBA,QASqB;AAAA,MARrBC,QAQqB,QARrBA,QAQqB;AAAA,MAPrBC,KAOqB,QAPrBA,KAOqB;AAAA,MANrBC,SAMqB,QANrBA,SAMqB;AAAA,MALrBC,IAKqB,QALrBA,IAKqB;AAAA,MAJrBC,IAIqB,QAJrBA,IAIqB;AAAA,4BAHrBC,SAGqB;AAAA,MAHrBA,SAGqB,+BAHTD,IAAI,GAAG,GAAH,GAAS,QAGJ;AAAA,MAFrBE,QAEqB,QAFrBA,QAEqB;AAAA,MADlBC,SACkB;AACrB,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MAAIP,KAAK,IAAIQ,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAtC,EAAqD;AACnDd,IAAAA,IAAI,CACF,yEADE,CAAJ;AAGD;;AAED,SACE,qCAAC,SAAD,6BACMU,SADN;AAEE,IAAA,QAAQ,EAAED,QAFZ;AAGE,IAAA,IAAI,EAAEF,IAHR,CAIE;AAJF;AAKE,IAAA,SAAS,EAAE,4BAAW,gCAAa,YAAb,EAA2BI,QAA3B,CAAX,EAAiD;AAC1D,8BAAwBR,QADkC;AAE1D,0BAAoB,CAAC,CAACG;AAFoC,KAAjD;AALb,MAUE,qCAAC,kBAAD;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,KAFZ;AAGE,IAAA,QAAQ,EAAEG,QAHZ;AAIE,IAAA,UAAU,EACRE,QAAQ,KAAKI,mBAASC,GAAtB,GACI,8BADJ,GAEI,YAPR;AASE,IAAA,iBAAiB,EAAEL,QAAQ,KAAKI,mBAASC,GAAtB,GAA4B,CAA5B,GAAgC,GATrD;AAUE,IAAA,QAAQ,EAAE,KAVZ;AAWE,IAAA,SAAS,EAAC;AAXZ,IAVF,EAuBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGd,QADH,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KACG,yBAAaG,SAAb,KAA2BA,SAD9B,EAEG,CAACA,SAAD,IAAcD,KAAd,IACC,qCAAC,gBAAD;AAAS,IAAA,IAAI,EAAC,GAAd;AAAkB,IAAA,IAAI,EAAC;AAAvB,KACGA,KADH,CAHJ,CAFF,CADF,EAYGE,IAAI,IAAI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAmCA,IAAnC,CAZX,CAvBF,CADF;AAwCD,CA3DM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Counter } from \"../Counter/Counter\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { Platform } from \"../../lib/platform\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./TabbarItem.css\";\n\nexport interface TabbarItemProps\n extends Omit<React.AllHTMLAttributes<HTMLElement>, \"label\">, // TODO убрать Omit после удаления свойства label\n HasRootRef<HTMLElement>,\n HasComponent {\n selected?: boolean;\n /**\n * Текст рядом с иконкой\n */\n text?: React.ReactNode;\n /**\n * Индикатор над иконкой. Принимает `<Badge mode=\"prominent\" />` или `<Counter size=\"s\" mode=\"prominent\" />`\n */\n indicator?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте `indicator`\n */\n label?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"TabbarItem\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TabbarItem\n */\nexport const TabbarItem = ({\n children,\n selected,\n label,\n indicator,\n text,\n href,\n Component = href ? \"a\" : \"button\",\n disabled,\n ...restProps\n}: TabbarItemProps) => {\n const platform = usePlatform();\n\n if (label && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство label устарело и будет удалено в 5.0.0. Используйте indicator.\"\n );\n }\n\n return (\n <Component\n {...restProps}\n disabled={disabled}\n href={href}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"TabbarItem\", platform), {\n \"TabbarItem--selected\": selected,\n \"TabbarItem--text\": !!text,\n })}\n >\n <Tappable\n role=\"presentation\"\n Component=\"div\"\n disabled={disabled}\n activeMode={\n platform === Platform.IOS\n ? \"TabbarItem__tappable--active\"\n : \"background\"\n }\n activeEffectDelay={platform === Platform.IOS ? 0 : 300}\n hasHover={false}\n vkuiClass=\"TabbarItem__tappable\"\n />\n <div vkuiClass=\"TabbarItem__in\">\n <div vkuiClass=\"TabbarItem__icon\">\n {children}\n <div vkuiClass=\"TabbarItem__label\">\n {hasReactNode(indicator) && indicator}\n {!indicator && label && (\n <Counter size=\"s\" mode=\"prominent\">\n {label}\n </Counter>\n )}\n </div>\n </div>\n {text && <div vkuiClass=\"TabbarItem__text\">{text}</div>}\n </div>\n </Component>\n );\n};\n"],"file":"TabbarItem.js"}
1
+ {"version":3,"sources":["../../../../src/components/TabbarItem/TabbarItem.tsx"],"names":["warn","TabbarItem","children","selected","label","indicator","text","href","Component","disabled","restProps","platform","process","env","NODE_ENV","Platform","IOS","ANDROID"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;AAsBA,IAAMA,IAAI,GAAG,wBAAS,YAAT,CAAb;AAEA;AACA;AACA;;AACO,IAAMC,UAAU,GAAG,SAAbA,UAAa,OAUH;AAAA,MATrBC,QASqB,QATrBA,QASqB;AAAA,MARrBC,QAQqB,QARrBA,QAQqB;AAAA,MAPrBC,KAOqB,QAPrBA,KAOqB;AAAA,MANrBC,SAMqB,QANrBA,SAMqB;AAAA,MALrBC,IAKqB,QALrBA,IAKqB;AAAA,MAJrBC,IAIqB,QAJrBA,IAIqB;AAAA,4BAHrBC,SAGqB;AAAA,MAHrBA,SAGqB,+BAHTD,IAAI,GAAG,GAAH,GAAS,QAGJ;AAAA,MAFrBE,QAEqB,QAFrBA,QAEqB;AAAA,MADlBC,SACkB;AACrB,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MAAIP,KAAK,IAAIQ,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAtC,EAAqD;AACnDd,IAAAA,IAAI,CACF,yEADE,CAAJ;AAGD;;AAED,SACE,qCAAC,SAAD,6BACMU,SADN;AAEE,IAAA,QAAQ,EAAED,QAFZ;AAGE,IAAA,IAAI,EAAEF,IAHR;AAIE,IAAA,SAAS,EAAE,4BACT,YADS,EAETI,QAAQ,KAAKI,mBAASC,GAAtB,IAA6B,iBAFpB,EAGTL,QAAQ,KAAKI,mBAASE,OAAtB,IAAiC,qBAHxB,EAITd,QAAQ,IAAI,sBAJH,EAKT,CAAC,CAACG,IAAF,IAAU,kBALD;AAJb,MAYE,qCAAC,kBAAD;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,KAFZ;AAGE,IAAA,QAAQ,EAAEG,QAHZ;AAIE,IAAA,UAAU,EACRE,QAAQ,KAAKI,mBAASC,GAAtB,GACI,8BADJ,GAEI,YAPR;AASE,IAAA,iBAAiB,EAAEL,QAAQ,KAAKI,mBAASC,GAAtB,GAA4B,CAA5B,GAAgC,GATrD;AAUE,IAAA,QAAQ,EAAE,KAVZ;AAWE,IAAA,SAAS,EAAC;AAXZ,IAZF,EAyBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGd,QADH,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KACG,yBAAaG,SAAb,KAA2BA,SAD9B,EAEG,CAACA,SAAD,IAAcD,KAAd,IACC,qCAAC,gBAAD;AAAS,IAAA,IAAI,EAAC,GAAd;AAAkB,IAAA,IAAI,EAAC;AAAvB,KACGA,KADH,CAHJ,CAFF,CADF,EAYGE,IAAI,IACH,qCAAC,kBAAD;AAAU,IAAA,SAAS,EAAC,KAApB;AAA0B,IAAA,SAAS,EAAC,kBAApC;AAAuD,IAAA,MAAM,EAAC;AAA9D,KACGA,IADH,CAbJ,CAzBF,CADF;AA8CD,CAjEM","sourcesContent":["import * as React from \"react\";\nimport { Counter } from \"../Counter/Counter\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { Footnote } from \"../Typography/Footnote/Footnote\";\nimport { Platform } from \"../../lib/platform\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./TabbarItem.css\";\n\nexport interface TabbarItemProps\n extends Omit<React.AllHTMLAttributes<HTMLElement>, \"label\">, // TODO убрать Omit после удаления свойства label\n HasRootRef<HTMLElement>,\n HasComponent {\n selected?: boolean;\n /**\n * Текст рядом с иконкой\n */\n text?: React.ReactNode;\n /**\n * Индикатор над иконкой. Принимает `<Badge mode=\"prominent\" />` или `<Counter size=\"s\" mode=\"prominent\" />`\n */\n indicator?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте `indicator`\n */\n label?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"TabbarItem\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TabbarItem\n */\nexport const TabbarItem = ({\n children,\n selected,\n label,\n indicator,\n text,\n href,\n Component = href ? \"a\" : \"button\",\n disabled,\n ...restProps\n}: TabbarItemProps) => {\n const platform = usePlatform();\n\n if (label && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство label устарело и будет удалено в 5.0.0. Используйте indicator.\"\n );\n }\n\n return (\n <Component\n {...restProps}\n disabled={disabled}\n href={href}\n vkuiClass={classNames(\n \"TabbarItem\",\n platform === Platform.IOS && \"TabbarItem--ios\",\n platform === Platform.ANDROID && \"TabbarItem--android\",\n selected && \"TabbarItem--selected\",\n !!text && \"TabbarItem--text\"\n )}\n >\n <Tappable\n role=\"presentation\"\n Component=\"div\"\n disabled={disabled}\n activeMode={\n platform === Platform.IOS\n ? \"TabbarItem__tappable--active\"\n : \"background\"\n }\n activeEffectDelay={platform === Platform.IOS ? 0 : 300}\n hasHover={false}\n vkuiClass=\"TabbarItem__tappable\"\n />\n <div vkuiClass=\"TabbarItem__in\">\n <div vkuiClass=\"TabbarItem__icon\">\n {children}\n <div vkuiClass=\"TabbarItem__label\">\n {hasReactNode(indicator) && indicator}\n {!indicator && label && (\n <Counter size=\"s\" mode=\"prominent\">\n {label}\n </Counter>\n )}\n </div>\n </div>\n {text && (\n <Footnote Component=\"div\" vkuiClass=\"TabbarItem__text\" weight=\"2\">\n {text}\n </Footnote>\n )}\n </div>\n </Component>\n );\n};\n"],"file":"TabbarItem.js"}
@@ -17,8 +17,6 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
17
17
 
18
18
  var React = _interopRequireWildcard(require("react"));
19
19
 
20
- var _getClassName = require("../../helpers/getClassName");
21
-
22
20
  var _classNames = require("../../lib/classNames");
23
21
 
24
22
  var _usePlatform = require("../../hooks/usePlatform");
@@ -27,8 +25,14 @@ var _platform = require("../../lib/platform");
27
25
 
28
26
  var _withAdaptivity = require("../../hoc/withAdaptivity");
29
27
 
28
+ var _warnOnce = require("../../lib/warnOnce");
29
+
30
30
  var _excluded = ["children", "mode", "getRootRef", "sizeX"];
31
- var TabsModeContext = /*#__PURE__*/React.createContext("default");
31
+ var warn = (0, _warnOnce.warnOnce)("Tabs");
32
+ var TabsModeContext = /*#__PURE__*/React.createContext({
33
+ mode: "default",
34
+ withGaps: false
35
+ });
32
36
  exports.TabsModeContext = TabsModeContext;
33
37
 
34
38
  var TabsComponent = function TabsComponent(_ref) {
@@ -40,17 +44,31 @@ var TabsComponent = function TabsComponent(_ref) {
40
44
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
41
45
  var platform = (0, _usePlatform.usePlatform)();
42
46
 
47
+ if ((mode === "buttons" || mode === "segmented") && process.env.NODE_ENV === "development") {
48
+ var expectedValueText = mode === "buttons" ? "\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \"secondary\"" : "компонент SegmentedControl";
49
+ warn("mode=\"".concat(mode, "\" \u0443\u0441\u0442\u0430\u0440\u0435\u043B\u043E \u0438 \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043B\u0435\u043D\u043E \u0432 5.0.0. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 ").concat(expectedValueText));
50
+ }
51
+
43
52
  if (platform !== _platform.IOS && mode === "segmented") {
44
53
  mode = "default";
45
54
  }
46
55
 
56
+ if (mode === "buttons") {
57
+ mode = "secondary";
58
+ }
59
+
60
+ var withGaps = mode === "accent" || mode === "secondary";
47
61
  return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
48
62
  ref: getRootRef,
49
- vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("Tabs", platform), "Tabs--".concat(mode), "Tabs--sizeX-".concat(sizeX))
63
+ vkuiClass: (0, _classNames.classNames)("Tabs", (platform === _platform.IOS || platform === _platform.VKCOM) && "Tabs--".concat(platform), "Tabs--".concat(mode), withGaps && "Tabs--withGaps", // TODO v5.0.0 новая адаптивность
64
+ "Tabs--sizeX-".concat(sizeX))
50
65
  }), (0, _jsxRuntime.createScopedElement)("div", {
51
66
  vkuiClass: "Tabs__in"
52
67
  }, (0, _jsxRuntime.createScopedElement)(TabsModeContext.Provider, {
53
- value: mode
68
+ value: {
69
+ mode: mode,
70
+ withGaps: withGaps
71
+ }
54
72
  }, children)));
55
73
  };
56
74
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tabs/Tabs.tsx"],"names":["TabsModeContext","React","createContext","TabsComponent","children","mode","getRootRef","sizeX","restProps","platform","IOS","Tabs","displayName"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;AAUO,IAAMA,eAAe,gBAC1BC,KAAK,CAACC,aAAN,CAAuC,SAAvC,CADK;;;AAGP,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAML;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,uBAJfC,IAIe;AAAA,MAJfA,IAIe,0BAJR,SAIQ;AAAA,MAHfC,UAGe,QAHfA,UAGe;AAAA,MAFfC,KAEe,QAFfA,KAEe;AAAA,MADZC,SACY;AACf,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MAAIA,QAAQ,KAAKC,aAAb,IAAoBL,IAAI,KAAK,WAAjC,EAA8C;AAC5CA,IAAAA,IAAI,GAAG,SAAP;AACD;;AAED,SACE,uEACMG,SADN;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,SAAS,EAAE,4BACT,gCAAa,MAAb,EAAqBG,QAArB,CADS,kBAEAJ,IAFA,yBAGME,KAHN;AAHb,MASE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEF;AAAjC,KACGD,QADH,CADF,CATF,CADF;AAiBD,CA9BD;AAgCA;AACA;AACA;;;AACO,IAAMO,IAAI,GAAG,oCAAeR,aAAf,EAA8B;AAAEI,EAAAA,KAAK,EAAE;AAAT,CAA9B,CAAb;;AAEPI,IAAI,CAACC,WAAL,GAAmB,MAAnB","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS } from \"../../lib/platform\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport \"./Tabs.css\";\n\nexport interface TabsProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n AdaptivityProps {\n mode?: \"default\" | \"buttons\" | \"segmented\";\n}\n\nexport const TabsModeContext =\n React.createContext<TabsProps[\"mode\"]>(\"default\");\n\nconst TabsComponent = ({\n children,\n mode = \"default\",\n getRootRef,\n sizeX,\n ...restProps\n}: TabsProps) => {\n const platform = usePlatform();\n\n if (platform !== IOS && mode === \"segmented\") {\n mode = \"default\";\n }\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n getClassName(\"Tabs\", platform),\n `Tabs--${mode}`,\n `Tabs--sizeX-${sizeX}`\n )}\n >\n <div vkuiClass=\"Tabs__in\">\n <TabsModeContext.Provider value={mode}>\n {children}\n </TabsModeContext.Provider>\n </div>\n </div>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Tabs\n */\nexport const Tabs = withAdaptivity(TabsComponent, { sizeX: true });\n\nTabs.displayName = \"Tabs\";\n"],"file":"Tabs.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tabs/Tabs.tsx"],"names":["warn","TabsModeContext","React","createContext","mode","withGaps","TabsComponent","children","getRootRef","sizeX","restProps","platform","process","env","NODE_ENV","expectedValueText","IOS","VKCOM","Tabs","displayName"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;;AAiBA,IAAMA,IAAI,GAAG,wBAAS,MAAT,CAAb;AAOO,IAAMC,eAAe,gBAAGC,KAAK,CAACC,aAAN,CAAsC;AACnEC,EAAAA,IAAI,EAAE,SAD6D;AAEnEC,EAAAA,QAAQ,EAAE;AAFyD,CAAtC,CAAxB;;;AAKP,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAML;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,uBAJfH,IAIe;AAAA,MAJfA,IAIe,0BAJR,SAIQ;AAAA,MAHfI,UAGe,QAHfA,UAGe;AAAA,MAFfC,KAEe,QAFfA,KAEe;AAAA,MADZC,SACY;AACf,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MACE,CAACP,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,WAAhC,KACAQ,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAF3B,EAGE;AACA,QAAMC,iBAAiB,GACrBX,IAAI,KAAK,SAAT,sEAEI,4BAHN;AAIAJ,IAAAA,IAAI,kBACOI,IADP,mOAC8DW,iBAD9D,EAAJ;AAGD;;AAED,MAAIJ,QAAQ,KAAKK,aAAb,IAAoBZ,IAAI,KAAK,WAAjC,EAA8C;AAC5CA,IAAAA,IAAI,GAAG,SAAP;AACD;;AAED,MAAIA,IAAI,KAAK,SAAb,EAAwB;AACtBA,IAAAA,IAAI,GAAG,WAAP;AACD;;AAED,MAAMC,QAAQ,GAAGD,IAAI,KAAK,QAAT,IAAqBA,IAAI,KAAK,WAA/C;AAEA,SACE,uEACMM,SADN;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,SAAS,EAAE,4BACT,MADS,EAET,CAACG,QAAQ,KAAKK,aAAb,IAAoBL,QAAQ,KAAKM,eAAlC,qBAAqDN,QAArD,CAFS,kBAGAP,IAHA,GAITC,QAAQ,IAAI,gBAJH,EAKT;AALS,0BAMMI,KANN;AAHb,MAYE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAE;AAAEL,MAAAA,IAAI,EAAJA,IAAF;AAAQC,MAAAA,QAAQ,EAARA;AAAR;AAAjC,KACGE,QADH,CADF,CAZF,CADF;AAoBD,CApDD;AAsDA;AACA;AACA;;;AACO,IAAMW,IAAI,GAAG,oCAAeZ,aAAf,EAA8B;AAAEG,EAAAA,KAAK,EAAE;AAAT,CAA9B,CAAb;;AAEPS,IAAI,CAACC,WAAL,GAAmB,MAAnB","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./Tabs.css\";\n\nexport interface TabsProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n AdaptivityProps {\n /**\n * Задаёт вид кнопок.\n *\n * > ⚠️ Значения `\"buttons\"`, `\"segmented\"` устарели и будут удалены в 5.0.0. Вместо `\"buttons\"` используйте `\"secondary\"`.\n * > Режим `\"segmented\"` переехал в отдельный компонент [`SegmentedControl`](https://vkcom.github.io/VKUI#/SegmentedControl),\n * > поэтому используйте его вместо `Tabs`.\n */\n mode?: \"buttons\" | \"segmented\" | \"default\" | \"accent\" | \"secondary\";\n}\n\nconst warn = warnOnce(\"Tabs\");\n\nexport interface TabsContextProps {\n mode: TabsProps[\"mode\"];\n withGaps: boolean;\n}\n\nexport const TabsModeContext = React.createContext<TabsContextProps>({\n mode: \"default\",\n withGaps: false,\n});\n\nconst TabsComponent = ({\n children,\n mode = \"default\",\n getRootRef,\n sizeX,\n ...restProps\n}: TabsProps) => {\n const platform = usePlatform();\n\n if (\n (mode === \"buttons\" || mode === \"segmented\") &&\n process.env.NODE_ENV === \"development\"\n ) {\n const expectedValueText =\n mode === \"buttons\"\n ? `значения \"secondary\"`\n : \"компонент SegmentedControl\";\n warn(\n `mode=\"${mode}\" устарело и будет удалено в 5.0.0. Используйте ${expectedValueText}`\n );\n }\n\n if (platform !== IOS && mode === \"segmented\") {\n mode = \"default\";\n }\n\n if (mode === \"buttons\") {\n mode = \"secondary\";\n }\n\n const withGaps = mode === \"accent\" || mode === \"secondary\";\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n \"Tabs\",\n (platform === IOS || platform === VKCOM) && `Tabs--${platform}`,\n `Tabs--${mode}`,\n withGaps && \"Tabs--withGaps\",\n // TODO v5.0.0 новая адаптивность\n `Tabs--sizeX-${sizeX}`\n )}\n >\n <div vkuiClass=\"Tabs__in\">\n <TabsModeContext.Provider value={{ mode, withGaps }}>\n {children}\n </TabsModeContext.Provider>\n </div>\n </div>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Tabs\n */\nexport const Tabs = withAdaptivity(TabsComponent, { sizeX: true });\n\nTabs.displayName = \"Tabs\";\n"],"file":"Tabs.js"}
@@ -17,8 +17,6 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
17
17
 
18
18
  var React = _interopRequireWildcard(require("react"));
19
19
 
20
- var _getClassName = require("../../helpers/getClassName");
21
-
22
20
  var _Tappable = require("../Tappable/Tappable");
23
21
 
24
22
  var _classNames = require("../../lib/classNames");
@@ -27,7 +25,7 @@ var _platform = require("../../lib/platform");
27
25
 
28
26
  var _usePlatform = require("../../hooks/usePlatform");
29
27
 
30
- var _utils = require("../../lib/utils");
28
+ var _useAdaptivity2 = require("../../hooks/useAdaptivity");
31
29
 
32
30
  var _Tabs = require("../Tabs/Tabs");
33
31
 
@@ -35,42 +33,61 @@ var _Headline = require("../Typography/Headline/Headline");
35
33
 
36
34
  var _Subhead = require("../Typography/Subhead/Subhead");
37
35
 
38
- var _Text = require("../Typography/Text/Text");
39
-
40
- var _excluded = ["children", "selected", "after"];
36
+ var _excluded = ["before", "children", "status", "after", "selected"];
41
37
 
42
38
  /**
43
39
  * @see https://vkcom.github.io/VKUI/#/TabsItem
44
40
  */
45
41
  var TabsItem = function TabsItem(_ref) {
46
- var children = _ref.children,
42
+ var before = _ref.before,
43
+ children = _ref.children,
44
+ status = _ref.status,
45
+ after = _ref.after,
47
46
  _ref$selected = _ref.selected,
48
47
  selected = _ref$selected === void 0 ? false : _ref$selected,
49
- after = _ref.after,
50
48
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
51
49
  var platform = (0, _usePlatform.usePlatform)();
52
- var mode = React.useContext(_Tabs.TabsModeContext);
53
- var ItemTypography = mode === "buttons" || mode === "segmented" ? _Subhead.Subhead : _Headline.Headline;
54
50
 
55
- if (platform === _platform.VKCOM) {
56
- ItemTypography = _Text.Text;
51
+ var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
52
+ sizeY = _useAdaptivity.sizeY;
53
+
54
+ var _React$useContext = React.useContext(_Tabs.TabsModeContext),
55
+ mode = _React$useContext.mode,
56
+ withGaps = _React$useContext.withGaps;
57
+
58
+ var statusComponent = null;
59
+
60
+ if (status) {
61
+ statusComponent = typeof status === "number" ? (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, {
62
+ Component: "span",
63
+ vkuiClass: "TabsItem__status TabsItem__status--count",
64
+ weight: "2"
65
+ }, status) : (0, _jsxRuntime.createScopedElement)("span", {
66
+ vkuiClass: "TabsItem__status"
67
+ }, status);
57
68
  }
58
69
 
59
70
  return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, (0, _extends2.default)({}, restProps, {
60
- // eslint-disable-next-line vkui/no-object-expression-in-arguments
61
- vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("TabsItem", platform), {
62
- "TabsItem--selected": selected
63
- }),
64
- hasActive: mode === "segmented",
71
+ vkuiClass: (0, _classNames.classNames)("TabsItem", (platform === _platform.IOS || platform === _platform.VKCOM) && "TabsItem--".concat(platform), mode && "TabsItem--".concat(mode), selected && "TabsItem--selected", // TODO v5.0.0 новая адаптивность
72
+ sizeY && "TabsItem--sizeY-".concat(sizeY), withGaps && "TabsItem--withGaps"),
73
+ hoverMode: "TabsItem--hover",
65
74
  activeMode: "TabsItem--active",
66
- focusVisibleMode: mode === "segmented" ? "outside" : "inside"
67
- }), (0, _jsxRuntime.createScopedElement)(ItemTypography, {
75
+ focusVisibleMode: mode === "segmented" ? "outside" : "inside",
76
+ hasActive: mode === "segmented"
77
+ }), before && (0, _jsxRuntime.createScopedElement)("div", {
78
+ vkuiClass: "TabsItem__before"
79
+ }, before), (0, _jsxRuntime.createScopedElement)(_Headline.Headline, {
68
80
  Component: "span",
69
- vkuiClass: "TabsItem__in",
81
+ vkuiClass: "TabsItem__label",
82
+ level: mode === "default" ? "1" : "2",
70
83
  weight: "2"
71
- }, children), (0, _utils.hasReactNode)(after) && (0, _jsxRuntime.createScopedElement)("div", {
84
+ }, children), statusComponent, after && (0, _jsxRuntime.createScopedElement)("div", {
72
85
  vkuiClass: "TabsItem__after"
73
- }, after));
86
+ }, after), mode === "default" && (0, _jsxRuntime.createScopedElement)("div", {
87
+ vkuiClass: "TabsItem__underline",
88
+ "aria-hidden": true,
89
+ "data-selected": selected
90
+ }));
74
91
  };
75
92
 
76
93
  exports.TabsItem = TabsItem;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TabsItem/TabsItem.tsx"],"names":["TabsItem","children","selected","after","restProps","platform","mode","React","useContext","TabsModeContext","ItemTypography","Subhead","Headline","VKCOM","Text"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAQA;AACA;AACA;AACO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAKH;AAAA,MAJnBC,QAImB,QAJnBA,QAImB;AAAA,2BAHnBC,QAGmB;AAAA,MAHnBA,QAGmB,8BAHR,KAGQ;AAAA,MAFnBC,KAEmB,QAFnBA,KAEmB;AAAA,MADhBC,SACgB;AACnB,MAAMC,QAAQ,GAAG,+BAAjB;AACA,MAAMC,IAAuB,GAAGC,KAAK,CAACC,UAAN,CAAiBC,qBAAjB,CAAhC;AAEA,MAAIC,cAAc,GAChBJ,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,WAA/B,GAA6CK,gBAA7C,GAAuDC,kBADzD;;AAGA,MAAIP,QAAQ,KAAKQ,eAAjB,EAAwB;AACtBH,IAAAA,cAAc,GAAGI,UAAjB;AACD;;AAED,SACE,qCAAC,kBAAD,6BACMV,SADN;AAEE;AACA,IAAA,SAAS,EAAE,4BAAW,gCAAa,UAAb,EAAyBC,QAAzB,CAAX,EAA+C;AACxD,4BAAsBH;AADkC,KAA/C,CAHb;AAME,IAAA,SAAS,EAAEI,IAAI,KAAK,WANtB;AAOE,IAAA,UAAU,EAAC,kBAPb;AAQE,IAAA,gBAAgB,EAAEA,IAAI,KAAK,WAAT,GAAuB,SAAvB,GAAmC;AARvD,MAUE,qCAAC,cAAD;AAAgB,IAAA,SAAS,EAAC,MAA1B;AAAiC,IAAA,SAAS,EAAC,cAA3C;AAA0D,IAAA,MAAM,EAAC;AAAjE,KACGL,QADH,CAVF,EAaG,yBAAaE,KAAb,KAAuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CAb1B,CADF;AAiBD,CAjCM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { VKCOM } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { TabsProps, TabsModeContext } from \"../Tabs/Tabs\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Text } from \"../Typography/Text/Text\";\nimport \"./TabsItem.css\";\n\nexport interface TabsItemProps extends React.HTMLAttributes<HTMLElement> {\n after?: React.ReactNode;\n selected?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TabsItem\n */\nexport const TabsItem = ({\n children,\n selected = false,\n after,\n ...restProps\n}: TabsItemProps) => {\n const platform = usePlatform();\n const mode: TabsProps[\"mode\"] = React.useContext(TabsModeContext);\n\n let ItemTypography =\n mode === \"buttons\" || mode === \"segmented\" ? Subhead : Headline;\n\n if (platform === VKCOM) {\n ItemTypography = Text;\n }\n\n return (\n <Tappable\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"TabsItem\", platform), {\n \"TabsItem--selected\": selected,\n })}\n hasActive={mode === \"segmented\"}\n activeMode=\"TabsItem--active\"\n focusVisibleMode={mode === \"segmented\" ? \"outside\" : \"inside\"}\n >\n <ItemTypography Component=\"span\" vkuiClass=\"TabsItem__in\" weight=\"2\">\n {children}\n </ItemTypography>\n {hasReactNode(after) && <div vkuiClass=\"TabsItem__after\">{after}</div>}\n </Tappable>\n );\n};\n"],"file":"TabsItem.js"}
1
+ {"version":3,"sources":["../../../../src/components/TabsItem/TabsItem.tsx"],"names":["TabsItem","before","children","status","after","selected","restProps","platform","sizeY","React","useContext","TabsModeContext","mode","withGaps","statusComponent","IOS","VKCOM"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AA6BA;AACA;AACA;AACO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAOH;AAAA,MANnBC,MAMmB,QANnBA,MAMmB;AAAA,MALnBC,QAKmB,QALnBA,QAKmB;AAAA,MAJnBC,MAImB,QAJnBA,MAImB;AAAA,MAHnBC,KAGmB,QAHnBA,KAGmB;AAAA,2BAFnBC,QAEmB;AAAA,MAFnBA,QAEmB,8BAFR,KAEQ;AAAA,MADhBC,SACgB;AACnB,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AACA,0BACEC,KAAK,CAACC,UAAN,CAAiBC,qBAAjB,CADF;AAAA,MAAQC,IAAR,qBAAQA,IAAR;AAAA,MAAcC,QAAd,qBAAcA,QAAd;;AAEA,MAAIC,eAAe,GAAG,IAAtB;;AAEA,MAAIX,MAAJ,EAAY;AACVW,IAAAA,eAAe,GACb,OAAOX,MAAP,KAAkB,QAAlB,GACE,qCAAC,gBAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,SAAS,EAAC,0CAFZ;AAGE,MAAA,MAAM,EAAC;AAHT,OAKGA,MALH,CADF,GASE;AAAM,MAAA,SAAS,EAAC;AAAhB,OAAoCA,MAApC,CAVJ;AAYD;;AAED,SACE,qCAAC,kBAAD,6BACMG,SADN;AAEE,IAAA,SAAS,EAAE,4BACT,UADS,EAET,CAACC,QAAQ,KAAKQ,aAAb,IAAoBR,QAAQ,KAAKS,eAAlC,yBAAyDT,QAAzD,CAFS,EAGTK,IAAI,wBAAiBA,IAAjB,CAHK,EAITP,QAAQ,IAAI,oBAJH,EAKT;AACAG,IAAAA,KAAK,8BAAuBA,KAAvB,CANI,EAOTK,QAAQ,IAAI,oBAPH,CAFb;AAWE,IAAA,SAAS,EAAC,iBAXZ;AAYE,IAAA,UAAU,EAAC,kBAZb;AAaE,IAAA,gBAAgB,EAAED,IAAI,KAAK,WAAT,GAAuB,SAAvB,GAAmC,QAbvD;AAcE,IAAA,SAAS,EAAEA,IAAI,KAAK;AAdtB,MAgBGX,MAAM,IAAI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAmCA,MAAnC,CAhBb,EAiBE,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,MADZ;AAEE,IAAA,SAAS,EAAC,iBAFZ;AAGE,IAAA,KAAK,EAAEW,IAAI,KAAK,SAAT,GAAqB,GAArB,GAA2B,GAHpC;AAIE,IAAA,MAAM,EAAC;AAJT,KAMGV,QANH,CAjBF,EAyBGY,eAzBH,EA0BGV,KAAK,IAAI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CA1BZ,EA2BGQ,IAAI,KAAK,SAAT,IACC;AACE,IAAA,SAAS,EAAC,qBADZ;AAEE,uBAFF;AAGE,qBAAeP;AAHjB,IA5BJ,CADF;AAqCD,CAlEM","sourcesContent":["import * as React from \"react\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { TabsModeContext, TabsContextProps } from \"../Tabs/Tabs\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport \"./TabsItem.css\";\n\nexport interface TabsItemProps extends React.HTMLAttributes<HTMLElement> {\n /**\n * Добавляет иконку слева.\n *\n * - Для `mode=\"default\"` используйте иконки размером 24.\n * - Для всех остальных `mode` используйте иконки размером 20.\n */\n before?: React.ReactNode;\n /**\n * Добавляет элемент слева от `after`.\n *\n * - `React.ReactElement` – либо [`Badge`](https://vkcom.github.io/VKUI/#/Badge) с параметром `mode=\"prominent\"`.\n * либо [`Counter`](https://vkcom.github.io/VKUI/#/Counter) с параметрами `mode=\"prominent\" size=\"s\"`.\n * - `number` – для показа текстового блока с переданным числом.\n */\n status?: React.ReactElement | number;\n /**\n * Добавляет иконку справа.\n *\n * Например, `<Icon16Dropdown />`\n */\n after?: React.ReactNode;\n selected?: boolean;\n disabled?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TabsItem\n */\nexport const TabsItem = ({\n before,\n children,\n status,\n after,\n selected = false,\n ...restProps\n}: TabsItemProps) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n const { mode, withGaps }: TabsContextProps =\n React.useContext(TabsModeContext);\n let statusComponent = null;\n\n if (status) {\n statusComponent =\n typeof status === \"number\" ? (\n <Subhead\n Component=\"span\"\n vkuiClass=\"TabsItem__status TabsItem__status--count\"\n weight=\"2\"\n >\n {status}\n </Subhead>\n ) : (\n <span vkuiClass=\"TabsItem__status\">{status}</span>\n );\n }\n\n return (\n <Tappable\n {...restProps}\n vkuiClass={classNames(\n \"TabsItem\",\n (platform === IOS || platform === VKCOM) && `TabsItem--${platform}`,\n mode && `TabsItem--${mode}`,\n selected && \"TabsItem--selected\",\n // TODO v5.0.0 новая адаптивность\n sizeY && `TabsItem--sizeY-${sizeY}`,\n withGaps && \"TabsItem--withGaps\"\n )}\n hoverMode=\"TabsItem--hover\"\n activeMode=\"TabsItem--active\"\n focusVisibleMode={mode === \"segmented\" ? \"outside\" : \"inside\"}\n hasActive={mode === \"segmented\"}\n >\n {before && <div vkuiClass=\"TabsItem__before\">{before}</div>}\n <Headline\n Component=\"span\"\n vkuiClass=\"TabsItem__label\"\n level={mode === \"default\" ? \"1\" : \"2\"}\n weight=\"2\"\n >\n {children}\n </Headline>\n {statusComponent}\n {after && <div vkuiClass=\"TabsItem__after\">{after}</div>}\n {mode === \"default\" && (\n <div\n vkuiClass=\"TabsItem__underline\"\n aria-hidden\n data-selected={selected}\n />\n )}\n </Tappable>\n );\n};\n"],"file":"TabsItem.js"}
@@ -19,17 +19,15 @@ var React = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _HoverPopper = require("../HoverPopper/HoverPopper");
21
21
 
22
- var _getClassName = require("../../helpers/getClassName");
23
-
24
- var _usePlatform = require("../../hooks/usePlatform");
25
-
26
22
  var _utils = require("../../lib/utils");
27
23
 
28
24
  var _Subhead = require("../Typography/Subhead/Subhead");
29
25
 
30
26
  var _prefixClass = require("../../lib/prefixClass");
31
27
 
32
- var _excluded = ["children", "text", "header"];
28
+ var _classNames = require("../../lib/classNames");
29
+
30
+ var _excluded = ["children", "text", "header", "appearance"];
33
31
 
34
32
  /**
35
33
  * @see https://vkcom.github.io/VKUI/#/TextTooltip
@@ -38,18 +36,17 @@ var TextTooltip = function TextTooltip(_ref) {
38
36
  var children = _ref.children,
39
37
  text = _ref.text,
40
38
  header = _ref.header,
39
+ _ref$appearance = _ref.appearance,
40
+ appearance = _ref$appearance === void 0 ? "black" : _ref$appearance,
41
41
  popperProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
42
- var platform = (0, _usePlatform.usePlatform)();
43
42
  return (0, _jsxRuntime.createScopedElement)(_HoverPopper.HoverPopper, (0, _extends2.default)({
44
- vkuiClass: (0, _getClassName.getClassName)("TextTooltip", platform),
43
+ vkuiClass: (0, _classNames.classNames)("TextTooltip", "TextTooltip--".concat(appearance)),
45
44
  arrow: true,
46
45
  arrowClassName: (0, _prefixClass.prefixClass)("TextTooltip__arrow"),
47
46
  content: (0, _jsxRuntime.createScopedElement)(React.Fragment, null, (0, _utils.hasReactNode)(header) && (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, {
48
- Component: "span",
49
47
  weight: "2",
50
48
  vkuiClass: "TextTooltip__header"
51
49
  }, header), (0, _utils.hasReactNode)(text) && (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, {
52
- Component: "span",
53
50
  vkuiClass: "TextTooltip__text"
54
51
  }, text))
55
52
  }, popperProps), children);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TextTooltip/TextTooltip.tsx"],"names":["TextTooltip","children","text","header","popperProps","platform"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAeA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAKH;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,IAGsB,QAHtBA,IAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,WACmB;AACtB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,SACE,qCAAC,wBAAD;AACE,IAAA,SAAS,EAAE,gCAAa,aAAb,EAA4BA,QAA5B,CADb;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,cAAc,EAAE,8BAAY,oBAAZ,CAHlB;AAIE,IAAA,OAAO,EACL,qCAAC,KAAD,CAAO,QAAP,QACG,yBAAaF,MAAb,KACC,qCAAC,gBAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,MAAM,EAAC,GAFT;AAGE,MAAA,SAAS,EAAC;AAHZ,OAKGA,MALH,CAFJ,EAUG,yBAAaD,IAAb,KACC,qCAAC,gBAAD;AAAS,MAAA,SAAS,EAAC,MAAnB;AAA0B,MAAA,SAAS,EAAC;AAApC,OACGA,IADH,CAXJ;AALJ,KAsBME,WAtBN,GAwBGH,QAxBH,CADF;AA4BD,CApCM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./TextTooltip.css\";\n\nexport interface TextTooltipProps\n extends Omit<HoverPopperProps, \"arrow\" | \"arrowClassName\" | \"content\"> {\n /**\n * Текст тултипа\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа\n */\n header?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TextTooltip\n */\nexport const TextTooltip = ({\n children,\n text,\n header,\n ...popperProps\n}: TextTooltipProps) => {\n const platform = usePlatform();\n\n return (\n <HoverPopper\n vkuiClass={getClassName(\"TextTooltip\", platform)}\n arrow\n arrowClassName={prefixClass(\"TextTooltip__arrow\")}\n content={\n <React.Fragment>\n {hasReactNode(header) && (\n <Subhead\n Component=\"span\"\n weight=\"2\"\n vkuiClass=\"TextTooltip__header\"\n >\n {header}\n </Subhead>\n )}\n {hasReactNode(text) && (\n <Subhead Component=\"span\" vkuiClass=\"TextTooltip__text\">\n {text}\n </Subhead>\n )}\n </React.Fragment>\n }\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"TextTooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/TextTooltip/TextTooltip.tsx"],"names":["TextTooltip","children","text","header","appearance","popperProps"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAmBA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAMH;AAAA,MALtBC,QAKsB,QALtBA,QAKsB;AAAA,MAJtBC,IAIsB,QAJtBA,IAIsB;AAAA,MAHtBC,MAGsB,QAHtBA,MAGsB;AAAA,6BAFtBC,UAEsB;AAAA,MAFtBA,UAEsB,gCAFT,OAES;AAAA,MADnBC,WACmB;AACtB,SACE,qCAAC,wBAAD;AACE,IAAA,SAAS,EAAE,4BAAW,aAAX,yBAA0CD,UAA1C,EADb;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,cAAc,EAAE,8BAAY,oBAAZ,CAHlB;AAIE,IAAA,OAAO,EACL,qCAAC,KAAD,CAAO,QAAP,QACG,yBAAaD,MAAb,KACC,qCAAC,gBAAD;AAAS,MAAA,MAAM,EAAC,GAAhB;AAAoB,MAAA,SAAS,EAAC;AAA9B,OACGA,MADH,CAFJ,EAMG,yBAAaD,IAAb,KACC,qCAAC,gBAAD;AAAS,MAAA,SAAS,EAAC;AAAnB,OAAwCA,IAAxC,CAPJ;AALJ,KAgBMG,WAhBN,GAkBGJ,QAlBH,CADF;AAsBD,CA7BM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./TextTooltip.css\";\n\nexport interface TextTooltipProps\n extends Omit<HoverPopperProps, \"arrow\" | \"arrowClassName\" | \"content\"> {\n /**\n * Текст тултипа\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа\n */\n header?: React.ReactNode;\n /**\n * Стиль отображения подсказки\n */\n appearance?: \"accent\" | \"neutral\" | \"white\" | \"black\" | \"inversion\";\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/TextTooltip\n */\nexport const TextTooltip = ({\n children,\n text,\n header,\n appearance = \"black\", // TODO v5 сменить по умолчанию на \"neutral\"\n ...popperProps\n}: TextTooltipProps) => {\n return (\n <HoverPopper\n vkuiClass={classNames(\"TextTooltip\", `TextTooltip--${appearance}`)}\n arrow\n arrowClassName={prefixClass(\"TextTooltip__arrow\")}\n content={\n <React.Fragment>\n {hasReactNode(header) && (\n <Subhead weight=\"2\" vkuiClass=\"TextTooltip__header\">\n {header}\n </Subhead>\n )}\n {hasReactNode(text) && (\n <Subhead vkuiClass=\"TextTooltip__text\">{text}</Subhead>\n )}\n </React.Fragment>\n }\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"TextTooltip.js"}
@@ -31,9 +31,6 @@ var _useExternRef = require("../../hooks/useExternRef");
31
31
 
32
32
  var _excluded = ["defaultValue", "grow", "style", "onResize", "className", "getRootRef", "getRef", "sizeY", "rows", "maxHeight"];
33
33
 
34
- /**
35
- * @see https://vkcom.github.io/VKUI/#/Textarea
36
- */
37
34
  var TextareaComponent = function TextareaComponent(_ref) {
38
35
  var _ref$defaultValue = _ref.defaultValue,
39
36
  defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
@@ -90,11 +87,15 @@ var TextareaComponent = function TextareaComponent(_ref) {
90
87
  onChange: onChange,
91
88
  ref: elementRef
92
89
  })));
93
- }; // eslint-disable-next-line import/no-default-export
90
+ };
91
+ /**
92
+ * @see https://vkcom.github.io/VKUI/#/Textarea
93
+ */
94
94
 
95
95
 
96
96
  var Textarea = (0, _withAdaptivity.withAdaptivity)(TextareaComponent, {
97
97
  sizeY: true
98
98
  });
99
99
  exports.Textarea = Textarea;
100
+ Textarea.displayName = "Textarea";
100
101
  //# sourceMappingURL=Textarea.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["TextareaComponent","defaultValue","grow","style","onResize","className","getRootRef","getRef","sizeY","rows","maxHeight","restProps","value","onChange","currentScrollHeight","React","useRef","elementRef","useEffect","el","current","offsetParent","height","scrollHeight","disabled","Textarea"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;AAcA;AACA;AACA;AACA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAYL;AAAA,+BAXnBC,YAWmB;AAAA,MAXnBA,YAWmB,kCAXJ,EAWI;AAAA,uBAVnBC,IAUmB;AAAA,MAVnBA,IAUmB,0BAVZ,IAUY;AAAA,MATnBC,KASmB,QATnBA,KASmB;AAAA,MARnBC,QAQmB,QARnBA,QAQmB;AAAA,MAPnBC,SAOmB,QAPnBA,SAOmB;AAAA,MANnBC,UAMmB,QANnBA,UAMmB;AAAA,MALnBC,MAKmB,QALnBA,MAKmB;AAAA,MAJnBC,KAImB,QAJnBA,KAImB;AAAA,uBAHnBC,IAGmB;AAAA,MAHnBA,IAGmB,0BAHZ,CAGY;AAAA,MAFnBC,SAEmB,QAFnBA,SAEmB;AAAA,MADhBC,SACgB;;AACnB,2BAA0B,2CAAkBA,SAAlB,EAA6B;AAAEV,IAAAA,YAAY,EAAZA;AAAF,GAA7B,CAA1B;AAAA;AAAA,MAAOW,KAAP;AAAA,MAAcC,QAAd;;AACA,MAAMC,mBAAmB,GAAGC,KAAK,CAACC,MAAN,EAA5B;AACA,MAAMC,UAAU,GAAG,gCAAaV,MAAb,CAAnB,CAHmB,CAKnB;;AACAQ,EAAAA,KAAK,CAACG,SAAN,CAAgB,YAAM;AACpB,QAAMC,EAAE,GAAGF,UAAU,CAACG,OAAtB;;AAEA,QAAIlB,IAAI,IAAIiB,EAAJ,aAAIA,EAAJ,eAAIA,EAAE,CAAEE,YAAhB,EAA8B;AAC5BF,MAAAA,EAAE,CAAChB,KAAH,CAASmB,MAAT,GAAkB,EAAlB;AACAH,MAAAA,EAAE,CAAChB,KAAH,CAASmB,MAAT,aAAqBH,EAAE,CAACI,YAAxB;;AAEA,UAAIJ,EAAE,CAACI,YAAH,KAAoBT,mBAAmB,CAACM,OAAxC,IAAmDhB,QAAvD,EAAiE;AAC/DA,QAAAA,QAAQ,CAACe,EAAD,CAAR;AACAL,QAAAA,mBAAmB,CAACM,OAApB,GAA8BD,EAAE,CAACI,YAAjC;AACD;AACF;AACF,GAZD,EAYG,CAACrB,IAAD,EAAOU,KAAP,EAAcJ,KAAd,EAAqBS,UAArB,EAAiCb,QAAjC,CAZH;AAcA,SACE,qCAAC,oBAAD;AACE,IAAA,SAAS,EAAE,4BACT,UADS,EAET;AAFS,8BAGUI,KAHV,EADb;AAME,IAAA,SAAS,EAAEH,SANb;AAOE,IAAA,KAAK,EAAEF,KAPT;AAQE,IAAA,UAAU,EAAEG,UARd;AASE,IAAA,QAAQ,EAAEK,SAAS,CAACa;AATtB,KAWE,4EACMb,SADN;AAEE,IAAA,KAAK,EAAE;AAAED,MAAAA,SAAS,EAATA;AAAF,KAFT;AAGE,IAAA,IAAI,EAAED,IAHR;AAIE,IAAA,SAAS,EAAC,cAJZ;AAKE,IAAA,KAAK,EAAEG,KALT;AAME,IAAA,QAAQ,EAAEC,QANZ;AAOE,IAAA,GAAG,EAAEI;AAPP,KAXF,CADF;AAuBD,CAvDD,C,CAyDA;;;AACO,IAAMQ,QAAQ,GAAG,oCAAezB,iBAAf,EAAkC;AAAEQ,EAAAA,KAAK,EAAE;AAAT,CAAlC,CAAjB","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport \"./Textarea.css\";\n\nexport interface TextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HasRef<HTMLTextAreaElement>,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n Pick<React.CSSProperties, \"maxHeight\"> {\n grow?: boolean;\n onResize?(el: HTMLTextAreaElement): void;\n defaultValue?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Textarea\n */\nconst TextareaComponent = ({\n defaultValue = \"\",\n grow = true,\n style,\n onResize,\n className,\n getRootRef,\n getRef,\n sizeY,\n rows = 2,\n maxHeight,\n ...restProps\n}: TextareaProps) => {\n const [value, onChange] = useEnsuredControl(restProps, { defaultValue });\n const currentScrollHeight = React.useRef<number>();\n const elementRef = useExternRef(getRef);\n\n // autosize input\n React.useEffect(() => {\n const el = elementRef.current;\n\n if (grow && el?.offsetParent) {\n el.style.height = \"\";\n el.style.height = `${el.scrollHeight}px`;\n\n if (el.scrollHeight !== currentScrollHeight.current && onResize) {\n onResize(el);\n currentScrollHeight.current = el.scrollHeight;\n }\n }\n }, [grow, value, sizeY, elementRef, onResize]);\n\n return (\n <FormField\n vkuiClass={classNames(\n \"Textarea\",\n // TODO. v5.0.0 Новая адаптивность\n `Textarea--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <textarea\n {...restProps}\n style={{ maxHeight }}\n rows={rows}\n vkuiClass=\"Textarea__el\"\n value={value}\n onChange={onChange}\n ref={elementRef}\n />\n </FormField>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport const Textarea = withAdaptivity(TextareaComponent, { sizeY: true });\n"],"file":"Textarea.js"}
1
+ {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["TextareaComponent","defaultValue","grow","style","onResize","className","getRootRef","getRef","sizeY","rows","maxHeight","restProps","value","onChange","currentScrollHeight","React","useRef","elementRef","useEffect","el","current","offsetParent","height","scrollHeight","disabled","Textarea","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;AAcA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAYL;AAAA,+BAXnBC,YAWmB;AAAA,MAXnBA,YAWmB,kCAXJ,EAWI;AAAA,uBAVnBC,IAUmB;AAAA,MAVnBA,IAUmB,0BAVZ,IAUY;AAAA,MATnBC,KASmB,QATnBA,KASmB;AAAA,MARnBC,QAQmB,QARnBA,QAQmB;AAAA,MAPnBC,SAOmB,QAPnBA,SAOmB;AAAA,MANnBC,UAMmB,QANnBA,UAMmB;AAAA,MALnBC,MAKmB,QALnBA,MAKmB;AAAA,MAJnBC,KAImB,QAJnBA,KAImB;AAAA,uBAHnBC,IAGmB;AAAA,MAHnBA,IAGmB,0BAHZ,CAGY;AAAA,MAFnBC,SAEmB,QAFnBA,SAEmB;AAAA,MADhBC,SACgB;;AACnB,2BAA0B,2CAAkBA,SAAlB,EAA6B;AAAEV,IAAAA,YAAY,EAAZA;AAAF,GAA7B,CAA1B;AAAA;AAAA,MAAOW,KAAP;AAAA,MAAcC,QAAd;;AACA,MAAMC,mBAAmB,GAAGC,KAAK,CAACC,MAAN,EAA5B;AACA,MAAMC,UAAU,GAAG,gCAAaV,MAAb,CAAnB,CAHmB,CAKnB;;AACAQ,EAAAA,KAAK,CAACG,SAAN,CAAgB,YAAM;AACpB,QAAMC,EAAE,GAAGF,UAAU,CAACG,OAAtB;;AAEA,QAAIlB,IAAI,IAAIiB,EAAJ,aAAIA,EAAJ,eAAIA,EAAE,CAAEE,YAAhB,EAA8B;AAC5BF,MAAAA,EAAE,CAAChB,KAAH,CAASmB,MAAT,GAAkB,EAAlB;AACAH,MAAAA,EAAE,CAAChB,KAAH,CAASmB,MAAT,aAAqBH,EAAE,CAACI,YAAxB;;AAEA,UAAIJ,EAAE,CAACI,YAAH,KAAoBT,mBAAmB,CAACM,OAAxC,IAAmDhB,QAAvD,EAAiE;AAC/DA,QAAAA,QAAQ,CAACe,EAAD,CAAR;AACAL,QAAAA,mBAAmB,CAACM,OAApB,GAA8BD,EAAE,CAACI,YAAjC;AACD;AACF;AACF,GAZD,EAYG,CAACrB,IAAD,EAAOU,KAAP,EAAcJ,KAAd,EAAqBS,UAArB,EAAiCb,QAAjC,CAZH;AAcA,SACE,qCAAC,oBAAD;AACE,IAAA,SAAS,EAAE,4BACT,UADS,EAET;AAFS,8BAGUI,KAHV,EADb;AAME,IAAA,SAAS,EAAEH,SANb;AAOE,IAAA,KAAK,EAAEF,KAPT;AAQE,IAAA,UAAU,EAAEG,UARd;AASE,IAAA,QAAQ,EAAEK,SAAS,CAACa;AATtB,KAWE,4EACMb,SADN;AAEE,IAAA,KAAK,EAAE;AAAED,MAAAA,SAAS,EAATA;AAAF,KAFT;AAGE,IAAA,IAAI,EAAED,IAHR;AAIE,IAAA,SAAS,EAAC,cAJZ;AAKE,IAAA,KAAK,EAAEG,KALT;AAME,IAAA,QAAQ,EAAEC,QANZ;AAOE,IAAA,GAAG,EAAEI;AAPP,KAXF,CADF;AAuBD,CAvDD;AAyDA;AACA;AACA;;;AACO,IAAMQ,QAAQ,GAAG,oCAAezB,iBAAf,EAAkC;AAAEQ,EAAAA,KAAK,EAAE;AAAT,CAAlC,CAAjB;;AAEPiB,QAAQ,CAACC,WAAT,GAAuB,UAAvB","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport \"./Textarea.css\";\n\nexport interface TextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HasRef<HTMLTextAreaElement>,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n Pick<React.CSSProperties, \"maxHeight\"> {\n grow?: boolean;\n onResize?(el: HTMLTextAreaElement): void;\n defaultValue?: string;\n}\n\nconst TextareaComponent = ({\n defaultValue = \"\",\n grow = true,\n style,\n onResize,\n className,\n getRootRef,\n getRef,\n sizeY,\n rows = 2,\n maxHeight,\n ...restProps\n}: TextareaProps) => {\n const [value, onChange] = useEnsuredControl(restProps, { defaultValue });\n const currentScrollHeight = React.useRef<number>();\n const elementRef = useExternRef(getRef);\n\n // autosize input\n React.useEffect(() => {\n const el = elementRef.current;\n\n if (grow && el?.offsetParent) {\n el.style.height = \"\";\n el.style.height = `${el.scrollHeight}px`;\n\n if (el.scrollHeight !== currentScrollHeight.current && onResize) {\n onResize(el);\n currentScrollHeight.current = el.scrollHeight;\n }\n }\n }, [grow, value, sizeY, elementRef, onResize]);\n\n return (\n <FormField\n vkuiClass={classNames(\n \"Textarea\",\n // TODO. v5.0.0 Новая адаптивность\n `Textarea--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <textarea\n {...restProps}\n style={{ maxHeight }}\n rows={rows}\n vkuiClass=\"Textarea__el\"\n value={value}\n onChange={onChange}\n ref={elementRef}\n />\n </FormField>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Textarea\n */\nexport const Textarea = withAdaptivity(TextareaComponent, { sizeY: true });\n\nTextarea.displayName = \"Textarea\";\n"],"file":"Textarea.js"}