@vkontakte/vkui 4.29.0 → 4.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +111 -84
  4. package/.cache/ts/src/components/Alert/Alert.d.ts +4 -1
  5. package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +6 -14
  6. package/.cache/ts/src/components/Calendar/Calendar.d.ts +10 -1
  7. package/.cache/ts/src/components/CalendarHeader/CalendarHeader.d.ts +8 -0
  8. package/.cache/ts/src/components/CalendarRange/CalendarRange.d.ts +1 -1
  9. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  10. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  11. package/.cache/ts/src/components/DateInput/DateInput.d.ts +1 -1
  12. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +1 -1
  13. package/.cache/ts/src/components/FormField/FormField.d.ts +15 -1
  14. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  15. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +1 -2
  16. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  17. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  18. package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +1 -1
  19. package/.cache/ts/src/hooks/useAdaptivity.d.ts +1 -0
  20. package/.cache/ts/src/hooks/useCalendar.d.ts +4 -3
  21. package/.cache/ts/src/index.d.ts +2 -1
  22. package/dist/cjs/components/ActionSheet/ActionSheet.js +6 -10
  23. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  24. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  25. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  26. package/dist/cjs/components/Alert/Alert.d.ts +4 -1
  27. package/dist/cjs/components/Alert/Alert.js +20 -2
  28. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  29. package/dist/cjs/components/AppRoot/AppRoot.js +18 -2
  30. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  31. package/dist/cjs/components/AppRoot/ScrollContext.d.ts +6 -14
  32. package/dist/cjs/components/AppRoot/ScrollContext.js +94 -2
  33. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  34. package/dist/cjs/components/Calendar/Calendar.d.ts +10 -1
  35. package/dist/cjs/components/Calendar/Calendar.js +16 -5
  36. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  37. package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts +8 -0
  38. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +15 -9
  39. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  40. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +1 -1
  41. package/dist/cjs/components/CalendarRange/CalendarRange.js +7 -3
  42. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  43. package/dist/cjs/components/ChipsInput/ChipsInput.js +3 -1
  44. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  45. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  46. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +1 -1
  47. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  48. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +1 -1
  49. package/dist/cjs/components/CustomSelect/CustomSelect.js +6 -3
  50. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  51. package/dist/cjs/components/DateInput/DateInput.d.ts +1 -1
  52. package/dist/cjs/components/DateInput/DateInput.js +14 -2
  53. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  54. package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +1 -1
  55. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +6 -2
  56. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  57. package/dist/cjs/components/Epic/Epic.js +1 -1
  58. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  59. package/dist/cjs/components/FormField/FormField.d.ts +15 -1
  60. package/dist/cjs/components/FormField/FormField.js +6 -2
  61. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  62. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +12 -3
  63. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  64. package/dist/cjs/components/Input/Input.d.ts +1 -1
  65. package/dist/cjs/components/Input/Input.js +3 -1
  66. package/dist/cjs/components/Input/Input.js.map +1 -1
  67. package/dist/cjs/components/ModalCard/ModalCard.js +3 -1
  68. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  69. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +4 -2
  70. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  71. package/dist/cjs/components/ModalPage/ModalPage.js +6 -2
  72. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  73. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +2 -10
  74. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  75. package/dist/cjs/components/ModalRoot/ModalRoot.js +2 -2
  76. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  77. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +6 -4
  78. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  79. package/dist/cjs/components/ModalRoot/useModalManager.js +1 -1
  80. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  81. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -2
  82. package/dist/cjs/components/NativeSelect/NativeSelect.js +5 -7
  83. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  84. package/dist/cjs/components/PanelHeader/PanelHeader.js +6 -4
  85. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  86. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -1
  87. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  88. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +3 -1
  89. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  90. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +3 -0
  91. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  92. package/dist/cjs/components/Select/Select.d.ts +1 -1
  93. package/dist/cjs/components/Select/Select.js +2 -2
  94. package/dist/cjs/components/Select/Select.js.map +1 -1
  95. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  96. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +3 -1
  97. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  98. package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -1
  99. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  100. package/dist/cjs/components/Tooltip/Tooltip.js +1 -1
  101. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  102. package/dist/cjs/components/Typography/Text/Text.js +1 -1
  103. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  104. package/dist/cjs/hooks/useAdaptivity.d.ts +1 -0
  105. package/dist/cjs/hooks/useAdaptivity.js +18 -1
  106. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  107. package/dist/cjs/hooks/useCalendar.d.ts +4 -3
  108. package/dist/cjs/hooks/useCalendar.js +15 -6
  109. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  110. package/dist/cjs/index.d.ts +2 -1
  111. package/dist/cjs/index.js +10 -2
  112. package/dist/cjs/index.js.map +1 -1
  113. package/dist/cjs/lib/getNavId.js +1 -1
  114. package/dist/cjs/lib/getNavId.js.map +1 -1
  115. package/dist/cjs/lib/platform.js +29 -0
  116. package/dist/cjs/lib/platform.js.map +1 -1
  117. package/dist/components/ActionSheet/ActionSheet.js +5 -9
  118. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  119. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  120. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  121. package/dist/components/Alert/Alert.d.ts +4 -1
  122. package/dist/components/Alert/Alert.js +18 -2
  123. package/dist/components/Alert/Alert.js.map +1 -1
  124. package/dist/components/AppRoot/AppRoot.js +17 -2
  125. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  126. package/dist/components/AppRoot/ScrollContext.d.ts +6 -14
  127. package/dist/components/AppRoot/ScrollContext.js +87 -1
  128. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  129. package/dist/components/Calendar/Calendar.d.ts +10 -1
  130. package/dist/components/Calendar/Calendar.js +16 -5
  131. package/dist/components/Calendar/Calendar.js.map +1 -1
  132. package/dist/components/CalendarHeader/CalendarHeader.d.ts +8 -0
  133. package/dist/components/CalendarHeader/CalendarHeader.js +15 -9
  134. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  135. package/dist/components/CalendarRange/CalendarRange.d.ts +1 -1
  136. package/dist/components/CalendarRange/CalendarRange.js +7 -3
  137. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  138. package/dist/components/ChipsInput/ChipsInput.js +3 -1
  139. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  140. package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  141. package/dist/components/ConfigProvider/ConfigProvider.js +1 -1
  142. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  143. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  144. package/dist/components/CustomSelect/CustomSelect.js +6 -3
  145. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  146. package/dist/components/DateInput/DateInput.d.ts +1 -1
  147. package/dist/components/DateInput/DateInput.js +14 -2
  148. package/dist/components/DateInput/DateInput.js.map +1 -1
  149. package/dist/components/DateRangeInput/DateRangeInput.d.ts +1 -1
  150. package/dist/components/DateRangeInput/DateRangeInput.js +6 -2
  151. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  152. package/dist/components/Epic/Epic.js +1 -1
  153. package/dist/components/Epic/Epic.js.map +1 -1
  154. package/dist/components/FormField/FormField.d.ts +15 -1
  155. package/dist/components/FormField/FormField.js +6 -2
  156. package/dist/components/FormField/FormField.js.map +1 -1
  157. package/dist/components/HorizontalScroll/HorizontalScroll.js +12 -3
  158. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  159. package/dist/components/Input/Input.d.ts +1 -1
  160. package/dist/components/Input/Input.js +3 -1
  161. package/dist/components/Input/Input.js.map +1 -1
  162. package/dist/components/ModalCard/ModalCard.js +3 -2
  163. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  164. package/dist/components/ModalCardBase/ModalCardBase.js +5 -4
  165. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  166. package/dist/components/ModalPage/ModalPage.js +5 -3
  167. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  168. package/dist/components/ModalPageHeader/ModalPageHeader.js +2 -9
  169. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  170. package/dist/components/ModalRoot/ModalRoot.js +2 -2
  171. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  172. package/dist/components/ModalRoot/ModalRootAdaptive.js +5 -5
  173. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  174. package/dist/components/ModalRoot/useModalManager.js +1 -1
  175. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  176. package/dist/components/NativeSelect/NativeSelect.d.ts +1 -2
  177. package/dist/components/NativeSelect/NativeSelect.js +3 -4
  178. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  179. package/dist/components/PanelHeader/PanelHeader.js +6 -4
  180. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  181. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -1
  182. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  183. package/dist/components/PopoutRoot/PopoutRoot.js +3 -2
  184. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  185. package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -0
  186. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  187. package/dist/components/Select/Select.d.ts +1 -1
  188. package/dist/components/Select/Select.js +1 -1
  189. package/dist/components/Select/Select.js.map +1 -1
  190. package/dist/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  191. package/dist/components/SelectMimicry/SelectMimicry.js +3 -1
  192. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  193. package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
  194. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  195. package/dist/components/Tooltip/Tooltip.js +1 -1
  196. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  197. package/dist/components/Typography/Text/Text.js +1 -1
  198. package/dist/components/Typography/Text/Text.js.map +1 -1
  199. package/dist/components.css +18 -18
  200. package/dist/components.css.map +1 -1
  201. package/dist/cssm/components/ActionSheet/ActionSheet.js +5 -9
  202. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  203. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  204. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  205. package/dist/cssm/components/Alert/Alert.d.ts +4 -1
  206. package/dist/cssm/components/Alert/Alert.js +18 -2
  207. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  208. package/dist/cssm/components/AppRoot/AppRoot.js +17 -2
  209. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  210. package/dist/cssm/components/AppRoot/ScrollContext.d.ts +6 -14
  211. package/dist/cssm/components/AppRoot/ScrollContext.js +87 -1
  212. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  213. package/dist/cssm/components/Button/Button.css +9 -9
  214. package/dist/cssm/components/ButtonGroup/ButtonGroup.css +1 -1
  215. package/dist/cssm/components/Calendar/Calendar.css +1 -1
  216. package/dist/cssm/components/Calendar/Calendar.d.ts +10 -1
  217. package/dist/cssm/components/Calendar/Calendar.js +16 -5
  218. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  219. package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
  220. package/dist/cssm/components/CalendarDays/CalendarDays.css +1 -1
  221. package/dist/cssm/components/CalendarHeader/CalendarHeader.css +1 -1
  222. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +8 -0
  223. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +15 -9
  224. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  225. package/dist/cssm/components/CalendarRange/CalendarRange.css +1 -1
  226. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +1 -1
  227. package/dist/cssm/components/CalendarRange/CalendarRange.js +7 -3
  228. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  229. package/dist/cssm/components/CalendarTime/CalendarTime.css +1 -1
  230. package/dist/cssm/components/Card/Card.css +2 -2
  231. package/dist/cssm/components/CardScroll/CardScroll.css +1 -1
  232. package/dist/cssm/components/Cell/Cell.css +1 -1
  233. package/dist/cssm/components/CellButton/CellButton.css +1 -1
  234. package/dist/cssm/components/Checkbox/Checkbox.css +1 -1
  235. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  236. package/dist/cssm/components/ChipsInput/ChipsInput.js +3 -1
  237. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  238. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  239. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +1 -1
  240. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  241. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  242. package/dist/cssm/components/CustomSelect/CustomSelect.js +6 -3
  243. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  244. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +1 -1
  245. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +1 -1
  246. package/dist/cssm/components/DateInput/DateInput.d.ts +1 -1
  247. package/dist/cssm/components/DateInput/DateInput.js +14 -2
  248. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  249. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +1 -1
  250. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +6 -2
  251. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  252. package/dist/cssm/components/Epic/Epic.js +1 -1
  253. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  254. package/dist/cssm/components/FormField/FormField.css +3 -3
  255. package/dist/cssm/components/FormField/FormField.d.ts +15 -1
  256. package/dist/cssm/components/FormField/FormField.js +6 -2
  257. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  258. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  259. package/dist/cssm/components/Gradient/Gradient.css +1 -1
  260. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +12 -3
  261. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  262. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +1 -1
  263. package/dist/cssm/components/Input/Input.css +1 -1
  264. package/dist/cssm/components/Input/Input.d.ts +1 -1
  265. package/dist/cssm/components/Input/Input.js +3 -1
  266. package/dist/cssm/components/Input/Input.js.map +1 -1
  267. package/dist/cssm/components/InputLike/InputLike.css +1 -1
  268. package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
  269. package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
  270. package/dist/cssm/components/ModalCard/ModalCard.js +3 -2
  271. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  272. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +5 -4
  273. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  274. package/dist/cssm/components/ModalPage/ModalPage.js +5 -3
  275. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  276. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +2 -9
  277. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  278. package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
  279. package/dist/cssm/components/ModalRoot/ModalRoot.js +2 -2
  280. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  281. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +5 -5
  282. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  283. package/dist/cssm/components/ModalRoot/useModalManager.js +1 -1
  284. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  285. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -2
  286. package/dist/cssm/components/NativeSelect/NativeSelect.js +3 -4
  287. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  288. package/dist/cssm/components/Pagination/Pagination.css +1 -1
  289. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  290. package/dist/cssm/components/PanelHeader/PanelHeader.js +6 -4
  291. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  292. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -1
  293. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  294. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +3 -2
  295. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  296. package/dist/cssm/components/Popper/Popper.css +1 -1
  297. package/dist/cssm/components/Radio/Radio.css +1 -1
  298. package/dist/cssm/components/RadioGroup/RadioGroup.css +1 -1
  299. package/dist/cssm/components/Removable/Removable.css +1 -1
  300. package/dist/cssm/components/RichCell/RichCell.css +1 -1
  301. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -0
  302. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  303. package/dist/cssm/components/SegmentedControl/SegmentedControl.css +1 -1
  304. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  305. package/dist/cssm/components/Select/Select.d.ts +1 -1
  306. package/dist/cssm/components/Select/Select.js +1 -1
  307. package/dist/cssm/components/Select/Select.js.map +1 -1
  308. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  309. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +3 -1
  310. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  311. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  312. package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
  313. package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
  314. package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -1
  315. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  316. package/dist/cssm/components/Tooltip/Tooltip.js +1 -1
  317. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  318. package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
  319. package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -1
  320. package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
  321. package/dist/cssm/components/Typography/Text/Text.js +1 -1
  322. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  323. package/dist/cssm/components/Typography/Title/Title.css +1 -1
  324. package/dist/cssm/hooks/useAdaptivity.d.ts +1 -0
  325. package/dist/cssm/hooks/useAdaptivity.js +13 -1
  326. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  327. package/dist/cssm/hooks/useCalendar.d.ts +4 -3
  328. package/dist/cssm/hooks/useCalendar.js +15 -6
  329. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  330. package/dist/cssm/index.d.ts +2 -1
  331. package/dist/cssm/index.js +2 -1
  332. package/dist/cssm/index.js.map +1 -1
  333. package/dist/cssm/lib/getNavId.js +1 -1
  334. package/dist/cssm/lib/getNavId.js.map +1 -1
  335. package/dist/cssm/lib/platform.js +26 -0
  336. package/dist/cssm/lib/platform.js.map +1 -1
  337. package/dist/cssm/styles/bright_light.css +1 -1
  338. package/dist/cssm/styles/components.css +18 -18
  339. package/dist/cssm/styles/constants.css +1 -1
  340. package/dist/cssm/styles/space_gray.css +1 -1
  341. package/dist/cssm/styles/themes.css +3 -3
  342. package/dist/cssm/styles/vkcom_dark.css +2 -2
  343. package/dist/cssm/styles/vkcom_light.css +1 -1
  344. package/dist/default_scheme.css +1 -1
  345. package/dist/default_scheme.css.map +1 -1
  346. package/dist/hooks/useAdaptivity.d.ts +1 -0
  347. package/dist/hooks/useAdaptivity.js +13 -1
  348. package/dist/hooks/useAdaptivity.js.map +1 -1
  349. package/dist/hooks/useCalendar.d.ts +4 -3
  350. package/dist/hooks/useCalendar.js +15 -6
  351. package/dist/hooks/useCalendar.js.map +1 -1
  352. package/dist/index.d.ts +2 -1
  353. package/dist/index.js +2 -1
  354. package/dist/index.js.map +1 -1
  355. package/dist/lib/getNavId.js +1 -1
  356. package/dist/lib/getNavId.js.map +1 -1
  357. package/dist/lib/platform.js +26 -0
  358. package/dist/lib/platform.js.map +1 -1
  359. package/dist/vkui.css +21 -21
  360. package/dist/vkui.css.map +1 -1
  361. package/jest.unit.config.js +1 -0
  362. package/package.json +5 -3
  363. package/postcss-custom-properties-fallback/__tests__/custom_properties.css +5 -0
  364. package/postcss-custom-properties-fallback/index.js +83 -0
  365. package/postcss-plugin-vk-sans/index.js +34 -27
  366. package/src/components/ActionSheet/ActionSheet.tsx +9 -7
  367. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +1 -1
  368. package/src/components/ActionSheet/Readme.md +1 -0
  369. package/src/components/Alert/Alert.tsx +23 -4
  370. package/src/components/AppRoot/AppRoot.tsx +17 -2
  371. package/src/components/AppRoot/ScrollContext.ts +90 -2
  372. package/src/components/Button/Button.css +2 -0
  373. package/src/components/Calendar/Calendar.tsx +32 -3
  374. package/src/components/CalendarHeader/CalendarHeader.css +3 -0
  375. package/src/components/CalendarHeader/CalendarHeader.tsx +24 -2
  376. package/src/components/CalendarRange/CalendarRange.tsx +6 -0
  377. package/src/components/Card/Card.css +2 -1
  378. package/src/components/Cell/Cell.css +1 -1
  379. package/src/components/CellButton/CellButton.css +1 -1
  380. package/src/components/Checkbox/Checkbox.css +1 -1
  381. package/src/components/ChipsInput/ChipsInput.tsx +2 -0
  382. package/src/components/ConfigProvider/ConfigProvider.tsx +1 -1
  383. package/src/components/CustomSelect/CustomSelect.tsx +6 -3
  384. package/src/components/DateInput/DateInput.tsx +18 -0
  385. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -0
  386. package/src/components/Epic/Epic.tsx +3 -1
  387. package/src/components/FixedLayout/FixedLayout.css +10 -0
  388. package/src/components/FormField/FormField.css +10 -0
  389. package/src/components/FormField/FormField.tsx +21 -1
  390. package/src/components/FormField/Readme.md +85 -19
  391. package/src/components/FormItem/FormItem.css +1 -0
  392. package/src/components/FormLayoutGroup/FormLayoutGroup.css +2 -1
  393. package/src/components/Gradient/Gradient.css +4 -2
  394. package/src/components/HorizontalScroll/HorizontalScroll.tsx +9 -3
  395. package/src/components/Input/Input.tsx +2 -0
  396. package/src/components/ModalCard/ModalCard.css +1 -1
  397. package/src/components/ModalCard/ModalCard.tsx +3 -8
  398. package/src/components/ModalCardBase/ModalCardBase.tsx +6 -10
  399. package/src/components/ModalPage/ModalPage.tsx +6 -9
  400. package/src/components/ModalPageHeader/ModalPageHeader.tsx +2 -6
  401. package/src/components/ModalRoot/ModalRoot.css +3 -2
  402. package/src/components/ModalRoot/ModalRoot.tsx +6 -2
  403. package/src/components/ModalRoot/ModalRootAdaptive.tsx +6 -9
  404. package/src/components/ModalRoot/Readme.md +1 -1
  405. package/src/components/ModalRoot/useModalManager.tsx +4 -1
  406. package/src/components/NativeSelect/NativeSelect.tsx +2 -3
  407. package/src/components/PanelHeader/PanelHeader.css +13 -13
  408. package/src/components/PanelHeader/PanelHeader.tsx +18 -17
  409. package/src/components/PanelHeader/Readme.md +2 -2
  410. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +3 -0
  411. package/src/components/PopoutRoot/PopoutRoot.tsx +3 -8
  412. package/src/components/Popper/Popper.css +14 -2
  413. package/src/components/Radio/Radio.css +1 -1
  414. package/src/components/RadioGroup/RadioGroup.css +1 -1
  415. package/src/components/Removable/Removable.css +2 -2
  416. package/src/components/RichCell/RichCell.css +1 -1
  417. package/src/components/ScreenSpinner/ScreenSpinner.tsx +3 -0
  418. package/src/components/Select/Select.tsx +1 -1
  419. package/src/components/SelectMimicry/SelectMimicry.tsx +5 -3
  420. package/src/components/SimpleCell/SimpleCell.css +1 -1
  421. package/src/components/Snackbar/Snackbar.css +6 -3
  422. package/src/components/SplitLayout/SplitLayout.css +3 -1
  423. package/src/components/Switch/Readme.md +12 -36
  424. package/src/components/TabbarItem/TabbarItem.tsx +1 -1
  425. package/src/components/Tooltip/Readme.md +35 -47
  426. package/src/components/Tooltip/Tooltip.tsx +2 -2
  427. package/src/components/Typography/Text/Text.tsx +4 -1
  428. package/src/hooks/useAdaptivity.ts +15 -0
  429. package/src/hooks/useCalendar.ts +25 -9
  430. package/src/index.ts +2 -1
  431. package/src/lib/getNavId.ts +1 -1
  432. package/src/lib/platform.ts +34 -0
  433. package/src/styles/bright_light.css +2 -0
  434. package/src/styles/constants.css +3 -2
  435. package/src/styles/space_gray.css +10 -8
  436. package/src/styles/vkcom_dark.css +6 -4
  437. package/src/styles/vkcom_light.css +4 -2
  438. package/src/testing/utils.tsx +5 -1
  439. package/tsconfig.json +1 -0
@@ -5,7 +5,7 @@ export interface TabbarItemProps extends Omit<React.AllHTMLAttributes<HTMLElemen
5
5
  HasRootRef<HTMLElement>, HasComponent {
6
6
  selected?: boolean;
7
7
  /**
8
- * Тест рядом с иконкой
8
+ * Текст рядом с иконкой
9
9
  */
10
10
  text?: React.ReactNode;
11
11
  /**
@@ -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;;AACA,IAAMC,UAAoD,GAAG,SAAvDA,UAAuD,OAUtC;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,iBAAD;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,CA3DD,C,CA6DA;;;eACeL,U","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\");\nconst TabbarItem: React.FunctionComponent<TabbarItemProps> = ({\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\n// eslint-disable-next-line import/no-default-export\nexport default TabbarItem;\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"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;AAsBA,IAAMA,IAAI,GAAG,wBAAS,YAAT,CAAb;;AACA,IAAMC,UAAoD,GAAG,SAAvDA,UAAuD,OAUtC;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,iBAAD;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,CA3DD,C,CA6DA;;;eACeL,U","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\");\nconst TabbarItem: React.FunctionComponent<TabbarItemProps> = ({\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\n// eslint-disable-next-line import/no-default-export\nexport default TabbarItem;\n"],"file":"TabbarItem.js"}
@@ -150,7 +150,7 @@ var Tooltip = function Tooltip(_ref2) {
150
150
  var multiChildren = React.Children.count(children) > 1; // Empty children is a noop
151
151
 
152
152
  var primitiveChild = (0, _utils.hasReactNode)(children) && (0, _typeof2.default)(children) !== "object";
153
- (multiChildren || primitiveChild) && warn(["children must be a single React element, got", multiChildren && "multiple", primitiveChild && JSON.stringify(children)].filter(Boolean).join(" "), "error");
153
+ (multiChildren || primitiveChild) && warn(["children должен быть одним React элементом, получено", multiChildren && "несколько", primitiveChild && JSON.stringify(children)].filter(Boolean).join(" "), "error");
154
154
  }
155
155
  /* eslint-disable no-restricted-properties */
156
156
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["isDOMTypeElement","element","React","isValidElement","type","baseClassName","warn","IS_DEV","process","env","NODE_ENV","SimpleTooltip","forwardRef","ref","mode","header","text","arrowRef","style","attributes","container","arrow","mapAlignX","x","getPlacement","alignX","alignY","filter","p","join","isVerticalPlacement","placement","startsWith","Tooltip","children","_isShown","isShown","offsetX","offsetY","onClose","cornerOffset","cornerAbsoluteOffset","restProps","entering","useState","tooltipRef","setTooltipRef","tooltipArrowRef","setTooltipArrowRef","target","setTarget","multiChildren","Children","count","primitiveChild","JSON","stringify","Boolean","tooltipContainer","useMemo","closest","tooltipContainerAttr","strategy","position","Error","arrowOffsetModifier","name","enabled","phase","fn","state","modifiersData","undefined","y","modifiers","options","offset","padding","styles","document","passive","childRef","props","getRootRef","patchedRef","child","cloneElement","ReactDOM","createPortal","el","popper","defaultProps"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { useNavTransition } from \"../NavTransitionContext/NavTransitionContext\";\nimport { Modifier, usePopper } from \"react-popper\";\nimport { Placement } from \"@popperjs/core\";\nimport { tooltipContainerAttr } from \"./TooltipContainer\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useDOM } from \"../../lib/dom\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport \"./Tooltip.css\";\n\ninterface SimpleTooltipProps extends Partial<TooltipProps> {\n target?: HTMLDivElement;\n arrowRef?: React.Ref<HTMLDivElement>;\n style?: {\n arrow: React.CSSProperties;\n container: React.CSSProperties;\n };\n attributes?: {\n arrow: React.HTMLAttributes<HTMLDivElement> | null;\n container: React.HTMLAttributes<HTMLDivElement> | null;\n };\n}\n\nconst isDOMTypeElement = (\n element: React.ReactElement\n): element is React.DOMElement<any, any> => {\n return React.isValidElement(element) && typeof element.type === \"string\";\n};\n\nconst baseClassName = getClassName(\"Tooltip\");\nconst warn = warnOnce(\"Tooltip\");\nconst IS_DEV = process.env.NODE_ENV === \"development\";\n\nconst SimpleTooltip = React.forwardRef<HTMLDivElement, SimpleTooltipProps>(\n function SimpleTooltip(\n { mode = \"accent\", header, text, arrowRef, style = {}, attributes },\n ref\n ) {\n return (\n <div vkuiClass={classNames(baseClassName, `Tooltip--${mode}`)}>\n <div\n vkuiClass=\"Tooltip__container\"\n ref={ref}\n style={style.container}\n {...attributes?.container}\n >\n <div\n vkuiClass=\"Tooltip__corner\"\n style={style.arrow}\n {...attributes?.arrow}\n ref={arrowRef}\n />\n <div vkuiClass=\"Tooltip__content\">\n {header && (\n <Subhead weight=\"1\" vkuiClass=\"Tooltip__title\">\n {header}\n </Subhead>\n )}\n {text && <Subhead vkuiClass=\"Tooltip__text\">{text}</Subhead>}\n </div>\n </div>\n </div>\n );\n }\n);\n\nexport interface TooltipProps {\n /**\n * **Важно**: если в `children` передан React-компонент, то необходимо убедиться в том, что он поддерживает\n * свойство `getRootRef`, которое должно возвращаться ссылку на корневой DOM-элемент компонента,\n * иначе тултип показан не будет. Если передан React-element, то такой проблемы нет.\n */\n children: React.ReactElement;\n mode?: \"accent\" | \"light\";\n /**\n * Если передан `false`, то рисуется просто `children`.\n */\n isShown?: boolean;\n /**\n * Текст тултипа.\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа.\n */\n header?: React.ReactNode;\n /**\n * Положение по горизонтали (прижатие к левому или правому краю `children`).\n * Если не задано, позиция по горизонтали определятся автоматически\n */\n alignX?: \"center\" | \"left\" | \"right\";\n /**\n * Положение по вертикали (расположение над или под `children`).\n * Если не задано, позиция по вертикали определятся автоматически\n */\n alignY?: \"top\" | \"bottom\";\n /**\n * Сдвиг по горизонтали (относительно портала, в котором рисуется тултип).\n */\n offsetX?: number;\n /**\n * Сдвиг по вертикали (относительно портала, в котором рисуется тултип).\n */\n offsetY?: number;\n /**\n * Сдвиг стрелочки относительно центра дочернего элемента.\n */\n cornerOffset?: number;\n /**\n * Сдвиг стрелочки относительно ширины тултипа\n */\n cornerAbsoluteOffset?: number;\n /**\n * Callback, который вызывается при клике по любому месту в пределах экрана.\n */\n onClose?: () => void;\n}\n\ndeclare type ArrowOffsetModifierOptions = {\n offset: number;\n};\ndeclare type ArrowOffsetModifier = Modifier<\n \"arrowOffset\",\n ArrowOffsetModifierOptions\n>;\n\nfunction mapAlignX(x: TooltipProps[\"alignX\"]) {\n switch (x) {\n case \"left\":\n return \"start\";\n case \"right\":\n return \"end\";\n default:\n return \"\";\n }\n}\nfunction getPlacement(\n alignX: TooltipProps[\"alignX\"],\n alignY: TooltipProps[\"alignY\"]\n): Placement {\n return [alignY || \"bottom\", mapAlignX(alignX || \"left\")]\n .filter((p) => !!p)\n .join(\"-\") as Placement;\n}\nfunction isVerticalPlacement(placement: Placement) {\n return placement.startsWith(\"top\") || placement.startsWith(\"bottom\");\n}\n\nconst Tooltip: React.FC<TooltipProps> = ({\n children,\n isShown: _isShown,\n offsetX = 0,\n offsetY = 15,\n alignX,\n alignY,\n onClose,\n cornerOffset = 0,\n cornerAbsoluteOffset,\n ...restProps\n}) => {\n const { entering } = useNavTransition();\n const isShown = _isShown && !entering;\n const [tooltipRef, setTooltipRef] = React.useState<HTMLElement | null>(null);\n const [tooltipArrowRef, setTooltipArrowRef] =\n React.useState<HTMLElement | null>(null);\n const [target, setTarget] = React.useState<HTMLElement>();\n\n if (IS_DEV) {\n const multiChildren = React.Children.count(children) > 1;\n // Empty children is a noop\n const primitiveChild =\n hasReactNode(children) && typeof children !== \"object\";\n (multiChildren || primitiveChild) &&\n warn(\n [\n \"children must be a single React element, got\",\n multiChildren && \"multiple\",\n primitiveChild && JSON.stringify(children),\n ]\n .filter(Boolean)\n .join(\" \"),\n \"error\"\n );\n }\n\n /* eslint-disable no-restricted-properties */\n /* eslint-disable @typescript-eslint/no-unnecessary-type-assertion*/\n const tooltipContainer = React.useMemo(\n () => target?.closest(`[${tooltipContainerAttr}]`) as HTMLDivElement,\n [target]\n );\n const strategy = React.useMemo(\n () => (target?.style.position === \"fixed\" ? \"fixed\" : \"absolute\"),\n [target]\n );\n /* eslint-enable @typescript-eslint/no-unnecessary-type-assertion*/\n /* eslint-enable no-restricted-properties */\n\n if (IS_DEV && target && !tooltipContainer) {\n throw new Error(\n \"Use TooltipContainer for Tooltip outside Panel (see docs)\"\n );\n }\n\n const arrowOffsetModifier = React.useMemo<ArrowOffsetModifier>(() => {\n return {\n name: \"arrowOffset\",\n enabled: true,\n phase: \"main\",\n fn({ state }) {\n if (!state.modifiersData.arrow) {\n return;\n }\n if (isVerticalPlacement(state.placement)) {\n if (cornerAbsoluteOffset !== undefined) {\n state.modifiersData.arrow.x = cornerAbsoluteOffset;\n } else {\n if (state.modifiersData.arrow?.x !== undefined) {\n state.modifiersData.arrow.x += cornerOffset;\n }\n }\n } else {\n if (cornerAbsoluteOffset !== undefined) {\n state.modifiersData.arrow.y = cornerAbsoluteOffset;\n } else {\n if (state.modifiersData.arrow?.y !== undefined) {\n state.modifiersData.arrow.y += cornerOffset;\n }\n }\n }\n },\n };\n }, [cornerOffset, cornerAbsoluteOffset]);\n\n const placement = getPlacement(alignX, alignY);\n const { styles, attributes } = usePopper(target, tooltipRef, {\n strategy,\n placement,\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [offsetX, offsetY],\n },\n },\n {\n name: \"arrow\",\n options: {\n element: tooltipArrowRef,\n padding: 14,\n },\n },\n {\n name: \"preventOverflow\",\n },\n {\n name: \"flip\",\n },\n arrowOffsetModifier,\n ],\n });\n\n const { document } = useDOM();\n useGlobalEventListener(document, \"click\", isShown && onClose, {\n passive: true,\n });\n // NOTE: setting isShown to true used to trigger usePopper().forceUpdate()\n\n const childRef =\n React.isValidElement(children) &&\n (isDOMTypeElement(children) ? children.ref : children.props.getRootRef);\n const patchedRef = useExternRef(setTarget, childRef);\n const child = React.isValidElement(children)\n ? React.cloneElement(children, {\n [isDOMTypeElement(children) ? \"ref\" : \"getRootRef\"]: patchedRef,\n })\n : children;\n\n return (\n <React.Fragment>\n {child}\n {isShown &&\n target != null &&\n ReactDOM.createPortal(\n <SimpleTooltip\n {...restProps}\n ref={(el) => setTooltipRef(el)}\n arrowRef={(el) => setTooltipArrowRef(el)}\n style={{ arrow: styles.arrow, container: styles.popper }}\n attributes={{\n arrow: attributes.arrow ?? null,\n container: attributes.popper ?? null,\n }}\n />,\n tooltipContainer\n )}\n </React.Fragment>\n );\n};\n\nTooltip.defaultProps = {\n offsetX: 0,\n offsetY: 15,\n cornerOffset: 0,\n isShown: true,\n mode: \"accent\",\n};\n// eslint-disable-next-line import/no-default-export\nexport default Tooltip;\n"],"file":"Tooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tooltip/Tooltip.tsx"],"names":["isDOMTypeElement","element","React","isValidElement","type","baseClassName","warn","IS_DEV","process","env","NODE_ENV","SimpleTooltip","forwardRef","ref","mode","header","text","arrowRef","style","attributes","container","arrow","mapAlignX","x","getPlacement","alignX","alignY","filter","p","join","isVerticalPlacement","placement","startsWith","Tooltip","children","_isShown","isShown","offsetX","offsetY","onClose","cornerOffset","cornerAbsoluteOffset","restProps","entering","useState","tooltipRef","setTooltipRef","tooltipArrowRef","setTooltipArrowRef","target","setTarget","multiChildren","Children","count","primitiveChild","JSON","stringify","Boolean","tooltipContainer","useMemo","closest","tooltipContainerAttr","strategy","position","Error","arrowOffsetModifier","name","enabled","phase","fn","state","modifiersData","undefined","y","modifiers","options","offset","padding","styles","document","passive","childRef","props","getRootRef","patchedRef","child","cloneElement","ReactDOM","createPortal","el","popper","defaultProps"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { useNavTransition } from \"../NavTransitionContext/NavTransitionContext\";\nimport { Modifier, usePopper } from \"react-popper\";\nimport { Placement } from \"@popperjs/core\";\nimport { tooltipContainerAttr } from \"./TooltipContainer\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useDOM } from \"../../lib/dom\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport \"./Tooltip.css\";\n\ninterface SimpleTooltipProps extends Partial<TooltipProps> {\n target?: HTMLDivElement;\n arrowRef?: React.Ref<HTMLDivElement>;\n style?: {\n arrow: React.CSSProperties;\n container: React.CSSProperties;\n };\n attributes?: {\n arrow: React.HTMLAttributes<HTMLDivElement> | null;\n container: React.HTMLAttributes<HTMLDivElement> | null;\n };\n}\n\nconst isDOMTypeElement = (\n element: React.ReactElement\n): element is React.DOMElement<any, any> => {\n return React.isValidElement(element) && typeof element.type === \"string\";\n};\n\nconst baseClassName = getClassName(\"Tooltip\");\nconst warn = warnOnce(\"Tooltip\");\nconst IS_DEV = process.env.NODE_ENV === \"development\";\n\nconst SimpleTooltip = React.forwardRef<HTMLDivElement, SimpleTooltipProps>(\n function SimpleTooltip(\n { mode = \"accent\", header, text, arrowRef, style = {}, attributes },\n ref\n ) {\n return (\n <div vkuiClass={classNames(baseClassName, `Tooltip--${mode}`)}>\n <div\n vkuiClass=\"Tooltip__container\"\n ref={ref}\n style={style.container}\n {...attributes?.container}\n >\n <div\n vkuiClass=\"Tooltip__corner\"\n style={style.arrow}\n {...attributes?.arrow}\n ref={arrowRef}\n />\n <div vkuiClass=\"Tooltip__content\">\n {header && (\n <Subhead weight=\"1\" vkuiClass=\"Tooltip__title\">\n {header}\n </Subhead>\n )}\n {text && <Subhead vkuiClass=\"Tooltip__text\">{text}</Subhead>}\n </div>\n </div>\n </div>\n );\n }\n);\n\nexport interface TooltipProps {\n /**\n * **Важно**: если в `children` передан React-компонент, то необходимо убедиться в том, что он поддерживает\n * свойство `getRootRef`, которое должно возвращаться ссылку на корневой DOM-элемент компонента,\n * иначе тултип показан не будет. Если передан React-element, то такой проблемы нет.\n */\n children: React.ReactElement;\n mode?: \"accent\" | \"light\";\n /**\n * Если передан `false`, то рисуется просто `children`.\n */\n isShown?: boolean;\n /**\n * Текст тултипа.\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа.\n */\n header?: React.ReactNode;\n /**\n * Положение по горизонтали (прижатие к левому или правому краю `children`).\n * Если не задано, позиция по горизонтали определятся автоматически\n */\n alignX?: \"center\" | \"left\" | \"right\";\n /**\n * Положение по вертикали (расположение над или под `children`).\n * Если не задано, позиция по вертикали определятся автоматически\n */\n alignY?: \"top\" | \"bottom\";\n /**\n * Сдвиг по горизонтали (относительно портала, в котором рисуется тултип).\n */\n offsetX?: number;\n /**\n * Сдвиг по вертикали (относительно портала, в котором рисуется тултип).\n */\n offsetY?: number;\n /**\n * Сдвиг стрелочки относительно центра дочернего элемента.\n */\n cornerOffset?: number;\n /**\n * Сдвиг стрелочки относительно ширины тултипа\n */\n cornerAbsoluteOffset?: number;\n /**\n * Callback, который вызывается при клике по любому месту в пределах экрана.\n */\n onClose?: () => void;\n}\n\ndeclare type ArrowOffsetModifierOptions = {\n offset: number;\n};\ndeclare type ArrowOffsetModifier = Modifier<\n \"arrowOffset\",\n ArrowOffsetModifierOptions\n>;\n\nfunction mapAlignX(x: TooltipProps[\"alignX\"]) {\n switch (x) {\n case \"left\":\n return \"start\";\n case \"right\":\n return \"end\";\n default:\n return \"\";\n }\n}\nfunction getPlacement(\n alignX: TooltipProps[\"alignX\"],\n alignY: TooltipProps[\"alignY\"]\n): Placement {\n return [alignY || \"bottom\", mapAlignX(alignX || \"left\")]\n .filter((p) => !!p)\n .join(\"-\") as Placement;\n}\nfunction isVerticalPlacement(placement: Placement) {\n return placement.startsWith(\"top\") || placement.startsWith(\"bottom\");\n}\n\nconst Tooltip: React.FC<TooltipProps> = ({\n children,\n isShown: _isShown,\n offsetX = 0,\n offsetY = 15,\n alignX,\n alignY,\n onClose,\n cornerOffset = 0,\n cornerAbsoluteOffset,\n ...restProps\n}) => {\n const { entering } = useNavTransition();\n const isShown = _isShown && !entering;\n const [tooltipRef, setTooltipRef] = React.useState<HTMLElement | null>(null);\n const [tooltipArrowRef, setTooltipArrowRef] =\n React.useState<HTMLElement | null>(null);\n const [target, setTarget] = React.useState<HTMLElement>();\n\n if (IS_DEV) {\n const multiChildren = React.Children.count(children) > 1;\n // Empty children is a noop\n const primitiveChild =\n hasReactNode(children) && typeof children !== \"object\";\n (multiChildren || primitiveChild) &&\n warn(\n [\n \"children должен быть одним React элементом, получено\",\n multiChildren && \"несколько\",\n primitiveChild && JSON.stringify(children),\n ]\n .filter(Boolean)\n .join(\" \"),\n \"error\"\n );\n }\n\n /* eslint-disable no-restricted-properties */\n /* eslint-disable @typescript-eslint/no-unnecessary-type-assertion*/\n const tooltipContainer = React.useMemo(\n () => target?.closest(`[${tooltipContainerAttr}]`) as HTMLDivElement,\n [target]\n );\n const strategy = React.useMemo(\n () => (target?.style.position === \"fixed\" ? \"fixed\" : \"absolute\"),\n [target]\n );\n /* eslint-enable @typescript-eslint/no-unnecessary-type-assertion*/\n /* eslint-enable no-restricted-properties */\n\n if (IS_DEV && target && !tooltipContainer) {\n throw new Error(\n \"Use TooltipContainer for Tooltip outside Panel (see docs)\"\n );\n }\n\n const arrowOffsetModifier = React.useMemo<ArrowOffsetModifier>(() => {\n return {\n name: \"arrowOffset\",\n enabled: true,\n phase: \"main\",\n fn({ state }) {\n if (!state.modifiersData.arrow) {\n return;\n }\n if (isVerticalPlacement(state.placement)) {\n if (cornerAbsoluteOffset !== undefined) {\n state.modifiersData.arrow.x = cornerAbsoluteOffset;\n } else {\n if (state.modifiersData.arrow?.x !== undefined) {\n state.modifiersData.arrow.x += cornerOffset;\n }\n }\n } else {\n if (cornerAbsoluteOffset !== undefined) {\n state.modifiersData.arrow.y = cornerAbsoluteOffset;\n } else {\n if (state.modifiersData.arrow?.y !== undefined) {\n state.modifiersData.arrow.y += cornerOffset;\n }\n }\n }\n },\n };\n }, [cornerOffset, cornerAbsoluteOffset]);\n\n const placement = getPlacement(alignX, alignY);\n const { styles, attributes } = usePopper(target, tooltipRef, {\n strategy,\n placement,\n modifiers: [\n {\n name: \"offset\",\n options: {\n offset: [offsetX, offsetY],\n },\n },\n {\n name: \"arrow\",\n options: {\n element: tooltipArrowRef,\n padding: 14,\n },\n },\n {\n name: \"preventOverflow\",\n },\n {\n name: \"flip\",\n },\n arrowOffsetModifier,\n ],\n });\n\n const { document } = useDOM();\n useGlobalEventListener(document, \"click\", isShown && onClose, {\n passive: true,\n });\n // NOTE: setting isShown to true used to trigger usePopper().forceUpdate()\n\n const childRef =\n React.isValidElement(children) &&\n (isDOMTypeElement(children) ? children.ref : children.props.getRootRef);\n const patchedRef = useExternRef(setTarget, childRef);\n const child = React.isValidElement(children)\n ? React.cloneElement(children, {\n [isDOMTypeElement(children) ? \"ref\" : \"getRootRef\"]: patchedRef,\n })\n : children;\n\n return (\n <React.Fragment>\n {child}\n {isShown &&\n target != null &&\n ReactDOM.createPortal(\n <SimpleTooltip\n {...restProps}\n ref={(el) => setTooltipRef(el)}\n arrowRef={(el) => setTooltipArrowRef(el)}\n style={{ arrow: styles.arrow, container: styles.popper }}\n attributes={{\n arrow: attributes.arrow ?? null,\n container: attributes.popper ?? null,\n }}\n />,\n tooltipContainer\n )}\n </React.Fragment>\n );\n};\n\nTooltip.defaultProps = {\n offsetX: 0,\n offsetY: 15,\n cornerOffset: 0,\n isShown: true,\n mode: \"accent\",\n};\n// eslint-disable-next-line import/no-default-export\nexport default Tooltip;\n"],"file":"Tooltip.js"}
@@ -35,7 +35,7 @@ var Text = function Text(_ref) {
35
35
  var platform = (0, _usePlatform.usePlatform)();
36
36
 
37
37
  if (process.env.NODE_ENV === "development" && typeof Component !== "string" && getRootRef) {
38
- warn("getRootRef can only be used with DOM components", "error");
38
+ warn("\u0421\u0432\u043E\u0439\u0441\u0442\u0432\u043E \"getRootRef\" \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u0441 \u043A\u043E\u043C\u043F\u043E\u043D\u0435\u043D\u0442\u0430\u043C\u0438 DOM", "error");
39
39
  }
40
40
 
41
41
  return (0, _jsxRuntime.createScopedElement)(Component, (0, _extends2.default)({}, restProps, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Typography/Text/Text.tsx"],"names":["warn","Text","children","weight","Component","getRootRef","restProps","platform","process","env","NODE_ENV"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;;AAUA,IAAMA,IAAI,GAAG,wBAAS,MAAT,CAAb;;AACA,IAAMC,IAAyB,GAAG,SAA5BA,IAA4B,OAMjB;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,yBAJfC,MAIe;AAAA,MAJfA,MAIe,4BAJN,SAIM;AAAA,4BAHfC,SAGe;AAAA,MAHfA,SAGe,+BAHH,MAGG;AAAA,MAFfC,UAEe,QAFfA,UAEe;AAAA,MADZC,SACY;AACf,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MACEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,OAAON,SAAP,KAAqB,QADrB,IAEAC,UAHF,EAIE;AACAL,IAAAA,IAAI,CAAC,iDAAD,EAAoD,OAApD,CAAJ;AACD;;AAED,SACE,qCAAC,SAAD,6BACMM,SADN;AAEE,IAAA,GAAG,EAAED,UAFP;AAGE,IAAA,SAAS,EAAE,4BACT,gCAAa,MAAb,EAAqBE,QAArB,CADS,oBAEEJ,MAFF;AAHb,MAQGD,QARH,CADF;AAYD,CA7BD,C,CA+BA;;;eACeD,I","sourcesContent":["import * as React from \"react\";\nimport { usePlatform } from \"../../../hooks/usePlatform\";\nimport { classNames } from \"../../../lib/classNames\";\nimport { getClassName } from \"../../../helpers/getClassName\";\nimport { HasComponent, HasRootRef } from \"../../../types\";\nimport { warnOnce } from \"../../../lib/warnOnce\";\nimport \"./Text.css\";\n\nexport interface TextProps\n extends React.AllHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLElement>,\n HasComponent {\n weight: \"regular\" | \"medium\" | \"semibold\";\n}\n\nconst warn = warnOnce(\"Text\");\nconst Text: React.FC<TextProps> = ({\n children,\n weight = \"regular\",\n Component = \"span\",\n getRootRef,\n ...restProps\n}: TextProps) => {\n const platform = usePlatform();\n\n if (\n process.env.NODE_ENV === \"development\" &&\n typeof Component !== \"string\" &&\n getRootRef\n ) {\n warn(\"getRootRef can only be used with DOM components\", \"error\");\n }\n\n return (\n <Component\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n getClassName(\"Text\", platform),\n `Text--w-${weight}`\n )}\n >\n {children}\n </Component>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Text;\n"],"file":"Text.js"}
1
+ {"version":3,"sources":["../../../../../src/components/Typography/Text/Text.tsx"],"names":["warn","Text","children","weight","Component","getRootRef","restProps","platform","process","env","NODE_ENV"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;;AAUA,IAAMA,IAAI,GAAG,wBAAS,MAAT,CAAb;;AACA,IAAMC,IAAyB,GAAG,SAA5BA,IAA4B,OAMjB;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,yBAJfC,MAIe;AAAA,MAJfA,MAIe,4BAJN,SAIM;AAAA,4BAHfC,SAGe;AAAA,MAHfA,SAGe,+BAHH,MAGG;AAAA,MAFfC,UAEe,QAFfA,UAEe;AAAA,MADZC,SACY;AACf,MAAMC,QAAQ,GAAG,+BAAjB;;AAEA,MACEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,OAAON,SAAP,KAAqB,QADrB,IAEAC,UAHF,EAIE;AACAL,IAAAA,IAAI,iTAEF,OAFE,CAAJ;AAID;;AAED,SACE,qCAAC,SAAD,6BACMM,SADN;AAEE,IAAA,GAAG,EAAED,UAFP;AAGE,IAAA,SAAS,EAAE,4BACT,gCAAa,MAAb,EAAqBE,QAArB,CADS,oBAEEJ,MAFF;AAHb,MAQGD,QARH,CADF;AAYD,CAhCD,C,CAkCA;;;eACeD,I","sourcesContent":["import * as React from \"react\";\nimport { usePlatform } from \"../../../hooks/usePlatform\";\nimport { classNames } from \"../../../lib/classNames\";\nimport { getClassName } from \"../../../helpers/getClassName\";\nimport { HasComponent, HasRootRef } from \"../../../types\";\nimport { warnOnce } from \"../../../lib/warnOnce\";\nimport \"./Text.css\";\n\nexport interface TextProps\n extends React.AllHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLElement>,\n HasComponent {\n weight: \"regular\" | \"medium\" | \"semibold\";\n}\n\nconst warn = warnOnce(\"Text\");\nconst Text: React.FC<TextProps> = ({\n children,\n weight = \"regular\",\n Component = \"span\",\n getRootRef,\n ...restProps\n}: TextProps) => {\n const platform = usePlatform();\n\n if (\n process.env.NODE_ENV === \"development\" &&\n typeof Component !== \"string\" &&\n getRootRef\n ) {\n warn(\n `Свойство \"getRootRef\" может использоваться только с компонентами DOM`,\n \"error\"\n );\n }\n\n return (\n <Component\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n getClassName(\"Text\", platform),\n `Text--w-${weight}`\n )}\n >\n {children}\n </Component>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Text;\n"],"file":"Text.js"}
@@ -1,3 +1,4 @@
1
1
  import { AdaptivityProps, AdaptivityContextInterface } from "../components/AdaptivityProvider/AdaptivityContext";
2
2
  export type { AdaptivityProps };
3
3
  export declare const useAdaptivity: () => AdaptivityContextInterface;
4
+ export declare const useAdaptivityIsDesktop: () => boolean;
@@ -5,15 +5,32 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.useAdaptivity = void 0;
8
+ exports.useAdaptivityIsDesktop = exports.useAdaptivity = void 0;
9
9
 
10
10
  var React = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _AdaptivityContext = require("../components/AdaptivityProvider/AdaptivityContext");
13
13
 
14
+ var _usePlatform = require("./usePlatform");
15
+
16
+ var _platform = require("../lib/platform");
17
+
14
18
  var useAdaptivity = function useAdaptivity() {
15
19
  return React.useContext(_AdaptivityContext.AdaptivityContext);
16
20
  };
17
21
 
18
22
  exports.useAdaptivity = useAdaptivity;
23
+
24
+ var useAdaptivityIsDesktop = function useAdaptivityIsDesktop() {
25
+ var platform = (0, _usePlatform.usePlatform)();
26
+
27
+ var _useAdaptivity = useAdaptivity(),
28
+ viewWidth = _useAdaptivity.viewWidth,
29
+ viewHeight = _useAdaptivity.viewHeight,
30
+ hasMouse = _useAdaptivity.hasMouse;
31
+
32
+ return viewWidth >= _AdaptivityContext.ViewWidth.SMALL_TABLET && (hasMouse || viewHeight >= _AdaptivityContext.ViewHeight.MEDIUM) || platform === _platform.VKCOM;
33
+ };
34
+
35
+ exports.useAdaptivityIsDesktop = useAdaptivityIsDesktop;
19
36
  //# sourceMappingURL=useAdaptivity.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useAdaptivity.ts"],"names":["useAdaptivity","React","useContext","AdaptivityContext"],"mappings":";;;;;;;;;AAAA;;AACA;;AAQO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,GAAkC;AAC7D,SAAOC,KAAK,CAACC,UAAN,CAAiBC,oCAAjB,CAAP;AACD,CAFM","sourcesContent":["import * as React from \"react\";\nimport {\n AdaptivityContext,\n AdaptivityProps,\n AdaptivityContextInterface,\n} from \"../components/AdaptivityProvider/AdaptivityContext\";\n\nexport type { AdaptivityProps };\n\nexport const useAdaptivity = (): AdaptivityContextInterface => {\n return React.useContext(AdaptivityContext);\n};\n"],"file":"useAdaptivity.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useAdaptivity.ts"],"names":["useAdaptivity","React","useContext","AdaptivityContext","useAdaptivityIsDesktop","platform","viewWidth","viewHeight","hasMouse","ViewWidth","SMALL_TABLET","ViewHeight","MEDIUM","VKCOM"],"mappings":";;;;;;;;;AAAA;;AACA;;AAOA;;AACA;;AAIO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,GAAkC;AAC7D,SAAOC,KAAK,CAACC,UAAN,CAAiBC,oCAAjB,CAAP;AACD,CAFM;;;;AAIA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,GAAe;AACnD,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,uBAA4CL,aAAa,EAAzD;AAAA,MAAQM,SAAR,kBAAQA,SAAR;AAAA,MAAmBC,UAAnB,kBAAmBA,UAAnB;AAAA,MAA+BC,QAA/B,kBAA+BA,QAA/B;;AAEA,SACGF,SAAS,IAAIG,6BAAUC,YAAvB,KACEF,QAAQ,IAAID,UAAU,IAAII,8BAAWC,MADvC,CAAD,IAEAP,QAAQ,KAAKQ,eAHf;AAKD,CATM","sourcesContent":["import * as React from \"react\";\nimport {\n AdaptivityContext,\n AdaptivityProps,\n AdaptivityContextInterface,\n ViewWidth,\n ViewHeight,\n} from \"../components/AdaptivityProvider/AdaptivityContext\";\nimport { usePlatform } from \"./usePlatform\";\nimport { VKCOM } from \"../lib/platform\";\n\nexport type { AdaptivityProps };\n\nexport const useAdaptivity = (): AdaptivityContextInterface => {\n return React.useContext(AdaptivityContext);\n};\n\nexport const useAdaptivityIsDesktop = (): boolean => {\n const platform = usePlatform();\n const { viewWidth, viewHeight, hasMouse } = useAdaptivity();\n\n return (\n (viewWidth >= ViewWidth.SMALL_TABLET &&\n (hasMouse || viewHeight >= ViewHeight.MEDIUM)) ||\n platform === VKCOM\n );\n};\n"],"file":"useAdaptivity.js"}
@@ -1,13 +1,14 @@
1
1
  import * as React from "react";
2
- export interface UseCalendarDependencies {
2
+ import { CalendarProps } from "../components/Calendar/Calendar";
3
+ export interface UseCalendarDependencies extends Pick<CalendarProps, "onHeaderChange" | "onNextMonth" | "onPrevMonth"> {
3
4
  value?: Array<Date | null> | Date;
4
5
  disablePast?: boolean;
5
6
  disableFuture?: boolean;
6
7
  shouldDisableDate?(value: Date): boolean;
7
8
  }
8
- export declare function useCalendar({ value, disablePast, disableFuture, shouldDisableDate, }: UseCalendarDependencies): {
9
+ export declare function useCalendar({ value, disablePast, disableFuture, shouldDisableDate, onHeaderChange, onNextMonth, onPrevMonth, }: UseCalendarDependencies): {
9
10
  viewDate: Date;
10
- setViewDate: React.Dispatch<React.SetStateAction<Date>>;
11
+ setViewDate: (value: Date) => void;
11
12
  setPrevMonth: () => void;
12
13
  setNextMonth: () => void;
13
14
  focusedDay: Date | undefined;
@@ -21,7 +21,10 @@ function useCalendar(_ref) {
21
21
  var value = _ref.value,
22
22
  disablePast = _ref.disablePast,
23
23
  disableFuture = _ref.disableFuture,
24
- shouldDisableDate = _ref.shouldDisableDate;
24
+ shouldDisableDate = _ref.shouldDisableDate,
25
+ onHeaderChange = _ref.onHeaderChange,
26
+ onNextMonth = _ref.onNextMonth,
27
+ onPrevMonth = _ref.onPrevMonth;
25
28
 
26
29
  var _React$useState = React.useState((_ref2 = Array.isArray(value) ? value[0] : value) !== null && _ref2 !== void 0 ? _ref2 : new Date()),
27
30
  _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
@@ -34,11 +37,17 @@ function useCalendar(_ref) {
34
37
  setFocusedDay = _React$useState4[1];
35
38
 
36
39
  var setPrevMonth = React.useCallback(function () {
37
- return setViewDate((0, _date.subMonths)(viewDate, 1));
38
- }, [viewDate]);
40
+ onPrevMonth === null || onPrevMonth === void 0 ? void 0 : onPrevMonth();
41
+ setViewDate((0, _date.subMonths)(viewDate, 1));
42
+ }, [viewDate, onPrevMonth]);
39
43
  var setNextMonth = React.useCallback(function () {
40
- return setViewDate((0, _date.addMonths)(viewDate, 1));
41
- }, [viewDate]);
44
+ onNextMonth === null || onNextMonth === void 0 ? void 0 : onNextMonth();
45
+ setViewDate((0, _date.addMonths)(viewDate, 1));
46
+ }, [viewDate, onNextMonth]);
47
+ var handleSetViewDate = React.useCallback(function (value) {
48
+ onHeaderChange === null || onHeaderChange === void 0 ? void 0 : onHeaderChange(value);
49
+ setViewDate(value);
50
+ }, [onHeaderChange]);
42
51
  var isDayFocused = React.useCallback(function (day) {
43
52
  return Boolean(focusedDay && (0, _date.isSameDay)(day, focusedDay));
44
53
  }, [focusedDay]);
@@ -65,7 +74,7 @@ function useCalendar(_ref) {
65
74
  }, [setFocusedDay]);
66
75
  return {
67
76
  viewDate: viewDate,
68
- setViewDate: setViewDate,
77
+ setViewDate: handleSetViewDate,
69
78
  setPrevMonth: setPrevMonth,
70
79
  setNextMonth: setNextMonth,
71
80
  focusedDay: focusedDay,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useCalendar.ts"],"names":["useCalendar","value","disablePast","disableFuture","shouldDisableDate","React","useState","Array","isArray","Date","viewDate","setViewDate","focusedDay","setFocusedDay","setPrevMonth","useCallback","setNextMonth","isDayFocused","day","Boolean","isDayDisabled","now","disabled","resetSelectedDay","undefined"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAiBO,SAASA,WAAT,OAKqB;AAAA;;AAAA,MAJ1BC,KAI0B,QAJ1BA,KAI0B;AAAA,MAH1BC,WAG0B,QAH1BA,WAG0B;AAAA,MAF1BC,aAE0B,QAF1BA,aAE0B;AAAA,MAD1BC,iBAC0B,QAD1BA,iBAC0B;;AAC1B,wBAAgCC,KAAK,CAACC,QAAN,UAC7BC,KAAK,CAACC,OAAN,CAAcP,KAAd,IAAuBA,KAAK,CAAC,CAAD,CAA5B,GAAkCA,KADL,yCACe,IAAIQ,IAAJ,EADf,CAAhC;AAAA;AAAA,MAAOC,QAAP;AAAA,MAAiBC,WAAjB;;AAGA,yBAAoCN,KAAK,CAACC,QAAN,EAApC;AAAA;AAAA,MAAOM,UAAP;AAAA,MAAmBC,aAAnB;;AAEA,MAAMC,YAAY,GAAGT,KAAK,CAACU,WAAN,CACnB;AAAA,WAAMJ,WAAW,CAAC,qBAAUD,QAAV,EAAoB,CAApB,CAAD,CAAjB;AAAA,GADmB,EAEnB,CAACA,QAAD,CAFmB,CAArB;AAIA,MAAMM,YAAY,GAAGX,KAAK,CAACU,WAAN,CACnB;AAAA,WAAMJ,WAAW,CAAC,qBAAUD,QAAV,EAAoB,CAApB,CAAD,CAAjB;AAAA,GADmB,EAEnB,CAACA,QAAD,CAFmB,CAArB;AAKA,MAAMO,YAAY,GAAGZ,KAAK,CAACU,WAAN,CACnB,UAACG,GAAD;AAAA,WAAeC,OAAO,CAACP,UAAU,IAAI,qBAAUM,GAAV,EAAeN,UAAf,CAAf,CAAtB;AAAA,GADmB,EAEnB,CAACA,UAAD,CAFmB,CAArB;AAKA,MAAMQ,aAAa,GAAGf,KAAK,CAACU,WAAN,CACpB,UAACG,GAAD,EAAe;AACb,QAAMG,GAAG,GAAG,IAAIZ,IAAJ,EAAZ;AACA,QAAIa,QAAQ,GAAG,KAAf;;AACA,QAAIpB,WAAJ,EAAiB;AACfoB,MAAAA,QAAQ,GAAG,oBAAS,oBAASJ,GAAT,CAAT,EAAwBG,GAAxB,CAAX;AACD;;AACD,QAAIlB,aAAJ,EAAmB;AACjBmB,MAAAA,QAAQ,GAAG,mBAAQ,sBAAWJ,GAAX,CAAR,EAAyBG,GAAzB,CAAX;AACD;;AACD,QAAIjB,iBAAJ,EAAuB;AACrBkB,MAAAA,QAAQ,GAAGlB,iBAAiB,CAACc,GAAD,CAA5B;AACD;;AAED,WAAOI,QAAP;AACD,GAfmB,EAgBpB,CAACnB,aAAD,EAAgBD,WAAhB,EAA6BE,iBAA7B,CAhBoB,CAAtB;AAmBA,MAAMmB,gBAAgB,GAAGlB,KAAK,CAACU,WAAN,CAAkB,YAAM;AAC/CF,IAAAA,aAAa,CAACW,SAAD,CAAb;AACD,GAFwB,EAEtB,CAACX,aAAD,CAFsB,CAAzB;AAIA,SAAO;AACLH,IAAAA,QAAQ,EAARA,QADK;AAELC,IAAAA,WAAW,EAAXA,WAFK;AAGLG,IAAAA,YAAY,EAAZA,YAHK;AAILE,IAAAA,YAAY,EAAZA,YAJK;AAKLJ,IAAAA,UAAU,EAAVA,UALK;AAMLC,IAAAA,aAAa,EAAbA,aANK;AAOLI,IAAAA,YAAY,EAAZA,YAPK;AAQLG,IAAAA,aAAa,EAAbA,aARK;AASLG,IAAAA,gBAAgB,EAAhBA;AATK,GAAP;AAWD","sourcesContent":["import * as React from \"react\";\nimport {\n subMonths,\n addMonths,\n isSameDay,\n isBefore,\n endOfDay,\n isAfter,\n startOfDay,\n} from \"../lib/date\";\n\nexport interface UseCalendarDependencies {\n value?: Array<Date | null> | Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n shouldDisableDate?(value: Date): boolean;\n}\n\nexport function useCalendar({\n value,\n disablePast,\n disableFuture,\n shouldDisableDate,\n}: UseCalendarDependencies) {\n const [viewDate, setViewDate] = React.useState(\n (Array.isArray(value) ? value[0] : value) ?? new Date()\n );\n const [focusedDay, setFocusedDay] = React.useState<Date>();\n\n const setPrevMonth = React.useCallback(\n () => setViewDate(subMonths(viewDate, 1)),\n [viewDate]\n );\n const setNextMonth = React.useCallback(\n () => setViewDate(addMonths(viewDate, 1)),\n [viewDate]\n );\n\n const isDayFocused = React.useCallback(\n (day: Date) => Boolean(focusedDay && isSameDay(day, focusedDay)),\n [focusedDay]\n );\n\n const isDayDisabled = React.useCallback(\n (day: Date) => {\n const now = new Date();\n let disabled = false;\n if (disablePast) {\n disabled = isBefore(endOfDay(day), now);\n }\n if (disableFuture) {\n disabled = isAfter(startOfDay(day), now);\n }\n if (shouldDisableDate) {\n disabled = shouldDisableDate(day);\n }\n\n return disabled;\n },\n [disableFuture, disablePast, shouldDisableDate]\n );\n\n const resetSelectedDay = React.useCallback(() => {\n setFocusedDay(undefined);\n }, [setFocusedDay]);\n\n return {\n viewDate,\n setViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n };\n}\n"],"file":"useCalendar.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useCalendar.ts"],"names":["useCalendar","value","disablePast","disableFuture","shouldDisableDate","onHeaderChange","onNextMonth","onPrevMonth","React","useState","Array","isArray","Date","viewDate","setViewDate","focusedDay","setFocusedDay","setPrevMonth","useCallback","setNextMonth","handleSetViewDate","isDayFocused","day","Boolean","isDayDisabled","now","disabled","resetSelectedDay","undefined"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n subMonths,\n addMonths,\n isSameDay,\n isBefore,\n endOfDay,\n isAfter,\n startOfDay,\n} from \"../lib/date\";\nimport { CalendarProps } from \"../components/Calendar/Calendar\";\n\nexport interface UseCalendarDependencies\n extends Pick<\n CalendarProps,\n \"onHeaderChange\" | \"onNextMonth\" | \"onPrevMonth\"\n > {\n value?: Array<Date | null> | Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n shouldDisableDate?(value: Date): boolean;\n}\n\nexport function useCalendar({\n value,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n}: UseCalendarDependencies) {\n const [viewDate, setViewDate] = React.useState(\n (Array.isArray(value) ? value[0] : value) ?? new Date()\n );\n const [focusedDay, setFocusedDay] = React.useState<Date>();\n\n const setPrevMonth = React.useCallback(() => {\n onPrevMonth?.();\n setViewDate(subMonths(viewDate, 1));\n }, [viewDate, onPrevMonth]);\n const setNextMonth = React.useCallback(() => {\n onNextMonth?.();\n setViewDate(addMonths(viewDate, 1));\n }, [viewDate, onNextMonth]);\n\n const handleSetViewDate = React.useCallback(\n (value: Date) => {\n onHeaderChange?.(value);\n setViewDate(value);\n },\n [onHeaderChange]\n );\n\n const isDayFocused = React.useCallback(\n (day: Date) => Boolean(focusedDay && isSameDay(day, focusedDay)),\n [focusedDay]\n );\n\n const isDayDisabled = React.useCallback(\n (day: Date) => {\n const now = new Date();\n let disabled = false;\n if (disablePast) {\n disabled = isBefore(endOfDay(day), now);\n }\n if (disableFuture) {\n disabled = isAfter(startOfDay(day), now);\n }\n if (shouldDisableDate) {\n disabled = shouldDisableDate(day);\n }\n\n return disabled;\n },\n [disableFuture, disablePast, shouldDisableDate]\n );\n\n const resetSelectedDay = React.useCallback(() => {\n setFocusedDay(undefined);\n }, [setFocusedDay]);\n\n return {\n viewDate,\n setViewDate: handleSetViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n };\n}\n"],"file":"useCalendar.js"}
@@ -191,7 +191,7 @@ export { Select } from "./components/Select/Select";
191
191
  export type { SelectProps } from "./components/Select/Select";
192
192
  export { default as SelectMimicry } from "./components/SelectMimicry/SelectMimicry";
193
193
  export type { SelectMimicryProps } from "./components/SelectMimicry/SelectMimicry";
194
- export { default as NativeSelect } from "./components/NativeSelect/NativeSelect";
194
+ export { NativeSelect } from "./components/NativeSelect/NativeSelect";
195
195
  export type { NativeSelectProps } from "./components/NativeSelect/NativeSelect";
196
196
  export { CustomSelect } from "./components/CustomSelect/CustomSelect";
197
197
  export type { CustomSelectProps, CustomSelectOptionInterface, } from "./components/CustomSelect/CustomSelect";
@@ -277,6 +277,7 @@ export { usePlatform } from "./hooks/usePlatform";
277
277
  export { useAdaptivity } from "./hooks/useAdaptivity";
278
278
  export { useAppearance } from "./hooks/useAppearance";
279
279
  export { usePagination } from "./hooks/usePagination";
280
+ export { useScrollLock } from "./components/AppRoot/ScrollContext";
280
281
  /**
281
282
  * Utils
282
283
  */
package/dist/cjs/index.js CHANGED
@@ -422,7 +422,7 @@ Object.defineProperty(exports, "ModalRootContext", {
422
422
  Object.defineProperty(exports, "NativeSelect", {
423
423
  enumerable: true,
424
424
  get: function get() {
425
- return _NativeSelect.default;
425
+ return _NativeSelect.NativeSelect;
426
426
  }
427
427
  });
428
428
  Object.defineProperty(exports, "Pagination", {
@@ -875,6 +875,12 @@ Object.defineProperty(exports, "usePlatform", {
875
875
  return _usePlatform.usePlatform;
876
876
  }
877
877
  });
878
+ Object.defineProperty(exports, "useScrollLock", {
879
+ enumerable: true,
880
+ get: function get() {
881
+ return _ScrollContext.useScrollLock;
882
+ }
883
+ });
878
884
  Object.defineProperty(exports, "withAdaptivity", {
879
885
  enumerable: true,
880
886
  get: function get() {
@@ -1080,7 +1086,7 @@ var _Select = require("./components/Select/Select");
1080
1086
 
1081
1087
  var _SelectMimicry = _interopRequireDefault(require("./components/SelectMimicry/SelectMimicry"));
1082
1088
 
1083
- var _NativeSelect = _interopRequireDefault(require("./components/NativeSelect/NativeSelect"));
1089
+ var _NativeSelect = require("./components/NativeSelect/NativeSelect");
1084
1090
 
1085
1091
  var _CustomSelect = require("./components/CustomSelect/CustomSelect");
1086
1092
 
@@ -1162,6 +1168,8 @@ var _useAppearance = require("./hooks/useAppearance");
1162
1168
 
1163
1169
  var _usePagination = require("./hooks/usePagination");
1164
1170
 
1171
+ var _ScrollContext = require("./components/AppRoot/ScrollContext");
1172
+
1165
1173
  var _classNames = require("./lib/classNames");
1166
1174
 
1167
1175
  var _animate = _interopRequireDefault(require("./lib/animate"));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AASA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAKA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAKA;;AAEA;;AAKA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AACA;;AAEA;;AAMA;;AAEA;;AACA;;AAEA;;AAIA;;AAEA;;AACA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AAEA;;AASA;;AACA;;AAKA;;AACA","sourcesContent":["import \"./lib/polyfills\";\n\nimport \"./styles/constants.css\";\nimport \"./styles/animations.css\";\nimport \"./styles/common.css\";\n\n/**\n * Layout\n */\nexport { default as Root } from \"./components/Root/Root\";\nexport type { RootProps } from \"./components/Root/Root\";\nexport { default as View } from \"./components/View/View\";\nexport type { ViewProps } from \"./components/View/View\";\nexport { Panel } from \"./components/Panel/Panel\";\nexport type { PanelProps } from \"./components/Panel/Panel\";\nexport { PanelHeaderButton } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport type { PanelHeaderButtonProps } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport { default as PanelHeader } from \"./components/PanelHeader/PanelHeader\";\nexport type { PanelHeaderProps } from \"./components/PanelHeader/PanelHeader\";\nexport { default as PanelHeaderContent } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport type { PanelHeaderContentProps } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport { PanelHeaderContext } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport type { PanelHeaderContextProps } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport { SplitLayout } from \"./components/SplitLayout/SplitLayout\";\nexport type { SplitLayoutProps } from \"./components/SplitLayout/SplitLayout\";\nexport { SplitCol } from \"./components/SplitCol/SplitCol\";\nexport type { SplitColProps } from \"./components/SplitCol/SplitCol\";\nexport { default as Epic } from \"./components/Epic/Epic\";\nexport type { EpicProps } from \"./components/Epic/Epic\";\nexport { default as Tabbar } from \"./components/Tabbar/Tabbar\";\nexport type { TabbarProps } from \"./components/Tabbar/Tabbar\";\nexport { default as TabbarItem } from \"./components/TabbarItem/TabbarItem\";\nexport type { TabbarItemProps } from \"./components/TabbarItem/TabbarItem\";\nexport { HorizontalScroll } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport type { HorizontalScrollProps } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport { default as FixedLayout } from \"./components/FixedLayout/FixedLayout\";\nexport type { FixedLayoutProps } from \"./components/FixedLayout/FixedLayout\";\n\n/**\n * Popouts\n */\nexport { PopoutWrapper } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport type { PopoutWrapperProps } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport { Alert } from \"./components/Alert/Alert\";\nexport type {\n AlertProps,\n AlertActionInterface,\n} from \"./components/Alert/Alert\";\nexport { ActionSheet } from \"./components/ActionSheet/ActionSheet\";\nexport type { ActionSheetProps } from \"./components/ActionSheet/ActionSheet\";\nexport { ActionSheetItem } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport type { ActionSheetItemProps } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport { default as ScreenSpinner } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport type { ScreenSpinnerProps } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport { Snackbar } from \"./components/Snackbar/Snackbar\";\nexport type { SnackbarProps } from \"./components/Snackbar/Snackbar\";\n\n/**\n * Modals\n */\nexport { ModalRoot } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport type { ModalRootProps } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport { withModalRootContext } from \"./components/ModalRoot/withModalRootContext\";\nexport { default as ModalRootContext } from \"./components/ModalRoot/ModalRootContext\";\nexport { default as ModalPage } from \"./components/ModalPage/ModalPage\";\nexport type { ModalPageProps } from \"./components/ModalPage/ModalPage\";\nexport { default as ModalPageHeader } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport type { ModalPageHeaderProps } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport { default as ModalCard } from \"./components/ModalCard/ModalCard\";\nexport type { ModalCardProps } from \"./components/ModalCard/ModalCard\";\nexport { default as ModalDismissButton } from \"./components/ModalDismissButton/ModalDismissButton\";\nexport type { ModalDismissButtonProps } from \"./components/ModalDismissButton/ModalDismissButton\";\n\n/**\n * Blocks\n */\nexport { Badge } from \"./components/Badge/Badge\";\nexport type { BadgeProps } from \"./components/Badge/Badge\";\nexport { ButtonGroup } from \"./components/ButtonGroup/ButtonGroup\";\nexport type { ButtonGroupProps } from \"./components/ButtonGroup/ButtonGroup\";\nexport { Button } from \"./components/Button/Button\";\nexport type { ButtonProps } from \"./components/Button/Button\";\nexport { default as IconButton } from \"./components/IconButton/IconButton\";\nexport type { IconButtonProps } from \"./components/IconButton/IconButton\";\nexport { Card } from \"./components/Card/Card\";\nexport type { CardProps } from \"./components/Card/Card\";\nexport { default as CardGrid } from \"./components/CardGrid/CardGrid\";\nexport type { CardGridProps } from \"./components/CardGrid/CardGrid\";\nexport { CardScroll } from \"./components/CardScroll/CardScroll\";\nexport type { CardScrollProps } from \"./components/CardScroll/CardScroll\";\nexport { default as ContentCard } from \"./components/ContentCard/ContentCard\";\nexport type { ContentCardProps } from \"./components/ContentCard/ContentCard\";\nexport { CellButton } from \"./components/CellButton/CellButton\";\nexport type { CellButtonProps } from \"./components/CellButton/CellButton\";\nexport { default as Header } from \"./components/Header/Header\";\nexport type { HeaderProps } from \"./components/Header/Header\";\nexport { default as Group } from \"./components/Group/Group\";\nexport type { GroupProps } from \"./components/Group/Group\";\nexport { Gradient } from \"./components/Gradient/Gradient\";\nexport type { GradientProps } from \"./components/Gradient/Gradient\";\nexport { default as List } from \"./components/List/List\";\nexport { Cell } from \"./components/Cell/Cell\";\nexport type { CellProps } from \"./components/Cell/Cell\";\nexport { default as RichCell } from \"./components/RichCell/RichCell\";\nexport type { RichCellProps } from \"./components/RichCell/RichCell\";\nexport { default as SimpleCell } from \"./components/SimpleCell/SimpleCell\";\nexport type { SimpleCellProps } from \"./components/SimpleCell/SimpleCell\";\nexport { HorizontalCell } from \"./components/HorizontalCell/HorizontalCell\";\nexport type { HorizontalCellProps } from \"./components/HorizontalCell/HorizontalCell\";\nexport { Footer } from \"./components/Footer/Footer\";\nexport type { FooterProps } from \"./components/Footer/Footer\";\nexport { default as InfoRow } from \"./components/InfoRow/InfoRow\";\nexport type { InfoRowProps } from \"./components/InfoRow/InfoRow\";\nexport { default as Gallery } from \"./components/Gallery/Gallery\";\nexport type { GalleryProps } from \"./components/Gallery/Gallery\";\nexport { default as Avatar } from \"./components/Avatar/Avatar\";\nexport type { AvatarProps } from \"./components/Avatar/Avatar\";\nexport { GridAvatar } from \"./components/GridAvatar/GridAvatar\";\nexport type { GridAvatarProps } from \"./components/GridAvatar/GridAvatar\";\nexport { InitialsAvatar } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport type { InitialsAvatarProps } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport { default as Progress } from \"./components/Progress/Progress\";\nexport type { ProgressProps } from \"./components/Progress/Progress\";\nexport { default as Search } from \"./components/Search/Search\";\nexport type { SearchProps } from \"./components/Search/Search\";\nexport { default as Tabs } from \"./components/Tabs/Tabs\";\nexport type { TabsProps } from \"./components/Tabs/Tabs\";\nexport { default as TabsItem } from \"./components/TabsItem/TabsItem\";\nexport type { TabsItemProps } from \"./components/TabsItem/TabsItem\";\nexport { default as Spinner } from \"./components/Spinner/Spinner\";\nexport type { SpinnerProps } from \"./components/Spinner/Spinner\";\nexport { default as PullToRefresh } from \"./components/PullToRefresh/PullToRefresh\";\nexport type { PullToRefreshProps } from \"./components/PullToRefresh/PullToRefresh\";\nexport { default as Link } from \"./components/Link/Link\";\nexport type { LinkProps } from \"./components/Link/Link\";\nexport { default as Tooltip } from \"./components/Tooltip/Tooltip\";\nexport type { TooltipProps } from \"./components/Tooltip/Tooltip\";\nexport { TooltipContainer } from \"./components/Tooltip/TooltipContainer\";\nexport { default as Counter } from \"./components/Counter/Counter\";\nexport type { CounterProps } from \"./components/Counter/Counter\";\nexport { default as UsersStack } from \"./components/UsersStack/UsersStack\";\nexport type { UsersStackProps } from \"./components/UsersStack/UsersStack\";\nexport { default as Separator } from \"./components/Separator/Separator\";\nexport type { SeparatorProps } from \"./components/Separator/Separator\";\nexport { Spacing } from \"./components/Spacing/Spacing\";\nexport type { SpacingProps } from \"./components/Spacing/Spacing\";\nexport { default as Placeholder } from \"./components/Placeholder/Placeholder\";\nexport type { PlaceholderProps } from \"./components/Placeholder/Placeholder\";\nexport { default as Banner } from \"./components/Banner/Banner\";\nexport type { BannerProps } from \"./components/Banner/Banner\";\nexport { MiniInfoCell } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport type { MiniInfoCellProps } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport { WriteBar } from \"./components/WriteBar/WriteBar\";\nexport type { WriteBarProps } from \"./components/WriteBar/WriteBar\";\nexport { WriteBarIcon } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport type { WriteBarIconProps } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport { SubnavigationBar } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport type { SubnavigationBarProps } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport { SubnavigationButton } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport type { SubnavigationButtonProps } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport { Pagination } from \"./components/Pagination/Pagination\";\nexport type { PaginationProps } from \"./components/Pagination/Pagination\";\n\n/**\n * Forms\n */\nexport { default as FormLayout } from \"./components/FormLayout/FormLayout\";\nexport type { FormLayoutProps } from \"./components/FormLayout/FormLayout\";\nexport { FormItem } from \"./components/FormItem/FormItem\";\nexport type { FormItemProps } from \"./components/FormItem/FormItem\";\nexport { FormField } from \"./components/FormField/FormField\";\nexport type { FormFieldProps } from \"./components/FormField/FormField\";\nexport { default as FormLayoutGroup } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport type { FormLayoutGroupProps } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport { FormStatus } from \"./components/FormStatus/FormStatus\";\nexport type { FormStatusProps } from \"./components/FormStatus/FormStatus\";\nexport { Switch } from \"./components/Switch/Switch\";\nexport type { SwitchProps } from \"./components/Switch/Switch\";\nexport { default as File } from \"./components/File/File\";\nexport type { FileProps } from \"./components/File/File\";\nexport { Input } from \"./components/Input/Input\";\nexport type { InputProps } from \"./components/Input/Input\";\nexport { Chip } from \"./components/Chip/Chip\";\nexport type { ChipProps } from \"./components/Chip/Chip\";\nexport { ChipsInput } from \"./components/ChipsInput/ChipsInput\";\nexport type { ChipsInputProps } from \"./components/ChipsInput/ChipsInput\";\nexport { default as Slider } from \"./components/Slider/Slider\";\nexport type { SliderProps } from \"./components/Slider/Slider\";\nexport { default as RangeSlider } from \"./components/RangeSlider/RangeSlider\";\nexport type { RangeSliderProps } from \"./components/RangeSlider/RangeSlider\";\nexport { default as Textarea } from \"./components/Textarea/Textarea\";\nexport type { TextareaProps } from \"./components/Textarea/Textarea\";\nexport { default as Radio } from \"./components/Radio/Radio\";\nexport type { RadioProps } from \"./components/Radio/Radio\";\nexport { RadioGroup } from \"./components/RadioGroup/RadioGroup\";\nexport type { RadioGroupProps } from \"./components/RadioGroup/RadioGroup\";\nexport { default as Checkbox } from \"./components/Checkbox/Checkbox\";\nexport type { CheckboxProps } from \"./components/Checkbox/Checkbox\";\nexport { Select } from \"./components/Select/Select\";\nexport type { SelectProps } from \"./components/Select/Select\";\nexport { default as SelectMimicry } from \"./components/SelectMimicry/SelectMimicry\";\nexport type { SelectMimicryProps } from \"./components/SelectMimicry/SelectMimicry\";\nexport { default as NativeSelect } from \"./components/NativeSelect/NativeSelect\";\nexport type { NativeSelectProps } from \"./components/NativeSelect/NativeSelect\";\nexport { CustomSelect } from \"./components/CustomSelect/CustomSelect\";\nexport type {\n CustomSelectProps,\n CustomSelectOptionInterface,\n} from \"./components/CustomSelect/CustomSelect\";\nexport { CustomSelectOption } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport type { CustomSelectOptionProps } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport { default as DatePicker } from \"./components/DatePicker/DatePicker\";\nexport type {\n DatePickerProps,\n DatePickerDateFormat,\n} from \"./components/DatePicker/DatePicker\";\nexport { SliderSwitch } from \"./components/SliderSwitch/SliderSwitch\";\nexport type {\n SliderSwitchProps,\n SliderSwitchOptionInterface,\n} from \"./components/SliderSwitch/SliderSwitch\";\nexport { SegmentedControl } from \"./components/SegmentedControl/SegmentedControl\";\nexport type {\n SegmentedControlProps,\n SegmentedControlOptionInterface,\n SegmentedControlValue,\n} from \"./components/SegmentedControl/SegmentedControl\";\nexport { Calendar } from \"./components/Calendar/Calendar\";\nexport type { CalendarProps } from \"./components/Calendar/Calendar\";\nexport { CalendarRange } from \"./components/CalendarRange/CalendarRange\";\nexport type { CalendarRangeProps } from \"./components/CalendarRange/CalendarRange\";\nexport { DateInput } from \"./components/DateInput/DateInput\";\nexport type { DateInputProps } from \"./components/DateInput/DateInput\";\nexport { DateRangeInput } from \"./components/DateRangeInput/DateRangeInput\";\nexport type { DateRangeInputProps } from \"./components/DateRangeInput/DateRangeInput\";\n\n/**\n * Helpers\n */\nexport { Div } from \"./components/Div/Div\";\nexport type { DivProps } from \"./components/Div/Div\";\nexport { default as Tappable } from \"./components/Tappable/Tappable\";\nexport type { TappableProps } from \"./components/Tappable/Tappable\";\nexport { Touch } from \"./components/Touch/Touch\";\nexport type { TouchProps } from \"./components/Touch/Touch\";\nexport { default as PanelSpinner } from \"./components/PanelSpinner/PanelSpinner\";\nexport type { PanelSpinnerProps } from \"./components/PanelSpinner/PanelSpinner\";\nexport { default as PanelHeaderClose } from \"./components/PanelHeaderClose/PanelHeaderClose\";\nexport { default as PanelHeaderBack } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport type { PanelHeaderBackProps } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport { default as PanelHeaderSubmit } from \"./components/PanelHeaderSubmit/PanelHeaderSubmit\";\nexport { default as PanelHeaderEdit } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport type { PanelHeaderEditProps } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport { ModalCardBase } from \"./components/ModalCardBase/ModalCardBase\";\nexport type { ModalCardBaseProps } from \"./components/ModalCardBase/ModalCardBase\";\n\n/**\n * Wrappers\n */\nexport { AppRoot } from \"./components/AppRoot/AppRoot\";\nexport type { AppRootProps } from \"./components/AppRoot/AppRoot\";\nexport { AdaptivityProvider } from \"./components/AdaptivityProvider/AdaptivityProvider\";\nexport { default as ConfigProvider } from \"./components/ConfigProvider/ConfigProvider\";\nexport type { ConfigProviderProps } from \"./components/ConfigProvider/ConfigProvider\";\nexport {\n ConfigProviderContext,\n WebviewType,\n} from \"./components/ConfigProvider/ConfigProviderContext\";\nexport { AppearanceProvider } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport type { AppearanceProviderProps } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport { Scheme, Appearance } from \"./helpers/scheme\";\nexport { LocaleProviderContext } from \"./components/LocaleProviderContext/LocaleProviderContext\";\n\n/**\n * Advertisement\n */\nexport { default as PromoBanner } from \"./components/PromoBanner/PromoBanner\";\nexport type { PromoBannerProps } from \"./components/PromoBanner/PromoBanner\";\n\n/**\n * Typography\n */\nexport { Title } from \"./components/Typography/Title/Title\";\nexport type { TitleProps } from \"./components/Typography/Title/Title\";\nexport { default as Headline } from \"./components/Typography/Headline/Headline\";\nexport type { HeadlineProps } from \"./components/Typography/Headline/Headline\";\nexport { default as Text } from \"./components/Typography/Text/Text\";\nexport type { TextProps } from \"./components/Typography/Text/Text\";\nexport { Caption } from \"./components/Typography/Caption/Caption\";\nexport type { CaptionProps } from \"./components/Typography/Caption/Caption\";\nexport { Subhead } from \"./components/Typography/Subhead/Subhead\";\nexport type { SubheadProps } from \"./components/Typography/Subhead/Subhead\";\nexport { Paragraph } from \"./components/Typography/Paragraph/Paragraph\";\nexport type { ParagraphProps } from \"./components/Typography/Paragraph/Paragraph\";\n\n/**\n * HOCs\n */\nexport { withInsets } from \"./hoc/withInsets\";\nexport { withPlatform } from \"./hoc/withPlatform\";\nexport { withAdaptivity } from \"./hoc/withAdaptivity\";\n\n/**\n * Hooks\n */\nexport { useInsets } from \"./hooks/useInsets\";\nexport { usePlatform } from \"./hooks/usePlatform\";\nexport { useAdaptivity } from \"./hooks/useAdaptivity\";\nexport { useAppearance } from \"./hooks/useAppearance\";\nexport { usePagination } from \"./hooks/usePagination\";\n\n/**\n * Utils\n */\nexport { classNamesString as classNames } from \"./lib/classNames\";\nexport { default as animate } from \"./lib/animate\";\nexport { removeObjectKeys } from \"./lib/removeObjectKeys\";\nexport { SSRWrapper } from \"./lib/SSR\";\nexport type { SSRWrapperProps } from \"./lib/SSR\";\nexport {\n platform,\n ANDROID,\n IOS,\n VKCOM,\n Platform,\n IS_PLATFORM_ANDROID,\n IS_PLATFORM_IOS,\n} from \"./lib/platform\";\nexport { getClassName } from \"./helpers/getClassName\";\nexport {\n ViewWidth,\n ViewHeight,\n SizeType,\n} from \"./components/AdaptivityProvider/AdaptivityContext\";\nexport { calcInitialsAvatarColor } from \"./helpers/avatar\";\nexport { Popper } from \"./components/Popper/Popper\";\nexport type { PopperProps } from \"./components/Popper/Popper\";\n\n/**\n * Types\n */\nexport type { AlignType, HasPlatform, HasInsets } from \"./types\";\nexport type { NavIdProps } from \"./lib/getNavId\";\nexport type { PlatformType } from \"./lib/platform\";\nexport type { AdaptivityProps } from \"./hoc/withAdaptivity\";\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AASA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAKA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAKA;;AAEA;;AAKA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AACA;;AAEA;;AAMA;;AAEA;;AACA;;AAEA;;AAIA;;AAEA;;AACA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AAEA;;AASA;;AACA;;AAKA;;AACA","sourcesContent":["import \"./lib/polyfills\";\n\nimport \"./styles/constants.css\";\nimport \"./styles/animations.css\";\nimport \"./styles/common.css\";\n\n/**\n * Layout\n */\nexport { default as Root } from \"./components/Root/Root\";\nexport type { RootProps } from \"./components/Root/Root\";\nexport { default as View } from \"./components/View/View\";\nexport type { ViewProps } from \"./components/View/View\";\nexport { Panel } from \"./components/Panel/Panel\";\nexport type { PanelProps } from \"./components/Panel/Panel\";\nexport { PanelHeaderButton } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport type { PanelHeaderButtonProps } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport { default as PanelHeader } from \"./components/PanelHeader/PanelHeader\";\nexport type { PanelHeaderProps } from \"./components/PanelHeader/PanelHeader\";\nexport { default as PanelHeaderContent } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport type { PanelHeaderContentProps } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport { PanelHeaderContext } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport type { PanelHeaderContextProps } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport { SplitLayout } from \"./components/SplitLayout/SplitLayout\";\nexport type { SplitLayoutProps } from \"./components/SplitLayout/SplitLayout\";\nexport { SplitCol } from \"./components/SplitCol/SplitCol\";\nexport type { SplitColProps } from \"./components/SplitCol/SplitCol\";\nexport { default as Epic } from \"./components/Epic/Epic\";\nexport type { EpicProps } from \"./components/Epic/Epic\";\nexport { default as Tabbar } from \"./components/Tabbar/Tabbar\";\nexport type { TabbarProps } from \"./components/Tabbar/Tabbar\";\nexport { default as TabbarItem } from \"./components/TabbarItem/TabbarItem\";\nexport type { TabbarItemProps } from \"./components/TabbarItem/TabbarItem\";\nexport { HorizontalScroll } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport type { HorizontalScrollProps } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport { default as FixedLayout } from \"./components/FixedLayout/FixedLayout\";\nexport type { FixedLayoutProps } from \"./components/FixedLayout/FixedLayout\";\n\n/**\n * Popouts\n */\nexport { PopoutWrapper } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport type { PopoutWrapperProps } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport { Alert } from \"./components/Alert/Alert\";\nexport type {\n AlertProps,\n AlertActionInterface,\n} from \"./components/Alert/Alert\";\nexport { ActionSheet } from \"./components/ActionSheet/ActionSheet\";\nexport type { ActionSheetProps } from \"./components/ActionSheet/ActionSheet\";\nexport { ActionSheetItem } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport type { ActionSheetItemProps } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport { default as ScreenSpinner } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport type { ScreenSpinnerProps } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport { Snackbar } from \"./components/Snackbar/Snackbar\";\nexport type { SnackbarProps } from \"./components/Snackbar/Snackbar\";\n\n/**\n * Modals\n */\nexport { ModalRoot } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport type { ModalRootProps } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport { withModalRootContext } from \"./components/ModalRoot/withModalRootContext\";\nexport { default as ModalRootContext } from \"./components/ModalRoot/ModalRootContext\";\nexport { default as ModalPage } from \"./components/ModalPage/ModalPage\";\nexport type { ModalPageProps } from \"./components/ModalPage/ModalPage\";\nexport { default as ModalPageHeader } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport type { ModalPageHeaderProps } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport { default as ModalCard } from \"./components/ModalCard/ModalCard\";\nexport type { ModalCardProps } from \"./components/ModalCard/ModalCard\";\nexport { default as ModalDismissButton } from \"./components/ModalDismissButton/ModalDismissButton\";\nexport type { ModalDismissButtonProps } from \"./components/ModalDismissButton/ModalDismissButton\";\n\n/**\n * Blocks\n */\nexport { Badge } from \"./components/Badge/Badge\";\nexport type { BadgeProps } from \"./components/Badge/Badge\";\nexport { ButtonGroup } from \"./components/ButtonGroup/ButtonGroup\";\nexport type { ButtonGroupProps } from \"./components/ButtonGroup/ButtonGroup\";\nexport { Button } from \"./components/Button/Button\";\nexport type { ButtonProps } from \"./components/Button/Button\";\nexport { default as IconButton } from \"./components/IconButton/IconButton\";\nexport type { IconButtonProps } from \"./components/IconButton/IconButton\";\nexport { Card } from \"./components/Card/Card\";\nexport type { CardProps } from \"./components/Card/Card\";\nexport { default as CardGrid } from \"./components/CardGrid/CardGrid\";\nexport type { CardGridProps } from \"./components/CardGrid/CardGrid\";\nexport { CardScroll } from \"./components/CardScroll/CardScroll\";\nexport type { CardScrollProps } from \"./components/CardScroll/CardScroll\";\nexport { default as ContentCard } from \"./components/ContentCard/ContentCard\";\nexport type { ContentCardProps } from \"./components/ContentCard/ContentCard\";\nexport { CellButton } from \"./components/CellButton/CellButton\";\nexport type { CellButtonProps } from \"./components/CellButton/CellButton\";\nexport { default as Header } from \"./components/Header/Header\";\nexport type { HeaderProps } from \"./components/Header/Header\";\nexport { default as Group } from \"./components/Group/Group\";\nexport type { GroupProps } from \"./components/Group/Group\";\nexport { Gradient } from \"./components/Gradient/Gradient\";\nexport type { GradientProps } from \"./components/Gradient/Gradient\";\nexport { default as List } from \"./components/List/List\";\nexport { Cell } from \"./components/Cell/Cell\";\nexport type { CellProps } from \"./components/Cell/Cell\";\nexport { default as RichCell } from \"./components/RichCell/RichCell\";\nexport type { RichCellProps } from \"./components/RichCell/RichCell\";\nexport { default as SimpleCell } from \"./components/SimpleCell/SimpleCell\";\nexport type { SimpleCellProps } from \"./components/SimpleCell/SimpleCell\";\nexport { HorizontalCell } from \"./components/HorizontalCell/HorizontalCell\";\nexport type { HorizontalCellProps } from \"./components/HorizontalCell/HorizontalCell\";\nexport { Footer } from \"./components/Footer/Footer\";\nexport type { FooterProps } from \"./components/Footer/Footer\";\nexport { default as InfoRow } from \"./components/InfoRow/InfoRow\";\nexport type { InfoRowProps } from \"./components/InfoRow/InfoRow\";\nexport { default as Gallery } from \"./components/Gallery/Gallery\";\nexport type { GalleryProps } from \"./components/Gallery/Gallery\";\nexport { default as Avatar } from \"./components/Avatar/Avatar\";\nexport type { AvatarProps } from \"./components/Avatar/Avatar\";\nexport { GridAvatar } from \"./components/GridAvatar/GridAvatar\";\nexport type { GridAvatarProps } from \"./components/GridAvatar/GridAvatar\";\nexport { InitialsAvatar } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport type { InitialsAvatarProps } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport { default as Progress } from \"./components/Progress/Progress\";\nexport type { ProgressProps } from \"./components/Progress/Progress\";\nexport { default as Search } from \"./components/Search/Search\";\nexport type { SearchProps } from \"./components/Search/Search\";\nexport { default as Tabs } from \"./components/Tabs/Tabs\";\nexport type { TabsProps } from \"./components/Tabs/Tabs\";\nexport { default as TabsItem } from \"./components/TabsItem/TabsItem\";\nexport type { TabsItemProps } from \"./components/TabsItem/TabsItem\";\nexport { default as Spinner } from \"./components/Spinner/Spinner\";\nexport type { SpinnerProps } from \"./components/Spinner/Spinner\";\nexport { default as PullToRefresh } from \"./components/PullToRefresh/PullToRefresh\";\nexport type { PullToRefreshProps } from \"./components/PullToRefresh/PullToRefresh\";\nexport { default as Link } from \"./components/Link/Link\";\nexport type { LinkProps } from \"./components/Link/Link\";\nexport { default as Tooltip } from \"./components/Tooltip/Tooltip\";\nexport type { TooltipProps } from \"./components/Tooltip/Tooltip\";\nexport { TooltipContainer } from \"./components/Tooltip/TooltipContainer\";\nexport { default as Counter } from \"./components/Counter/Counter\";\nexport type { CounterProps } from \"./components/Counter/Counter\";\nexport { default as UsersStack } from \"./components/UsersStack/UsersStack\";\nexport type { UsersStackProps } from \"./components/UsersStack/UsersStack\";\nexport { default as Separator } from \"./components/Separator/Separator\";\nexport type { SeparatorProps } from \"./components/Separator/Separator\";\nexport { Spacing } from \"./components/Spacing/Spacing\";\nexport type { SpacingProps } from \"./components/Spacing/Spacing\";\nexport { default as Placeholder } from \"./components/Placeholder/Placeholder\";\nexport type { PlaceholderProps } from \"./components/Placeholder/Placeholder\";\nexport { default as Banner } from \"./components/Banner/Banner\";\nexport type { BannerProps } from \"./components/Banner/Banner\";\nexport { MiniInfoCell } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport type { MiniInfoCellProps } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport { WriteBar } from \"./components/WriteBar/WriteBar\";\nexport type { WriteBarProps } from \"./components/WriteBar/WriteBar\";\nexport { WriteBarIcon } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport type { WriteBarIconProps } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport { SubnavigationBar } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport type { SubnavigationBarProps } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport { SubnavigationButton } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport type { SubnavigationButtonProps } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport { Pagination } from \"./components/Pagination/Pagination\";\nexport type { PaginationProps } from \"./components/Pagination/Pagination\";\n\n/**\n * Forms\n */\nexport { default as FormLayout } from \"./components/FormLayout/FormLayout\";\nexport type { FormLayoutProps } from \"./components/FormLayout/FormLayout\";\nexport { FormItem } from \"./components/FormItem/FormItem\";\nexport type { FormItemProps } from \"./components/FormItem/FormItem\";\nexport { FormField } from \"./components/FormField/FormField\";\nexport type { FormFieldProps } from \"./components/FormField/FormField\";\nexport { default as FormLayoutGroup } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport type { FormLayoutGroupProps } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport { FormStatus } from \"./components/FormStatus/FormStatus\";\nexport type { FormStatusProps } from \"./components/FormStatus/FormStatus\";\nexport { Switch } from \"./components/Switch/Switch\";\nexport type { SwitchProps } from \"./components/Switch/Switch\";\nexport { default as File } from \"./components/File/File\";\nexport type { FileProps } from \"./components/File/File\";\nexport { Input } from \"./components/Input/Input\";\nexport type { InputProps } from \"./components/Input/Input\";\nexport { Chip } from \"./components/Chip/Chip\";\nexport type { ChipProps } from \"./components/Chip/Chip\";\nexport { ChipsInput } from \"./components/ChipsInput/ChipsInput\";\nexport type { ChipsInputProps } from \"./components/ChipsInput/ChipsInput\";\nexport { default as Slider } from \"./components/Slider/Slider\";\nexport type { SliderProps } from \"./components/Slider/Slider\";\nexport { default as RangeSlider } from \"./components/RangeSlider/RangeSlider\";\nexport type { RangeSliderProps } from \"./components/RangeSlider/RangeSlider\";\nexport { default as Textarea } from \"./components/Textarea/Textarea\";\nexport type { TextareaProps } from \"./components/Textarea/Textarea\";\nexport { default as Radio } from \"./components/Radio/Radio\";\nexport type { RadioProps } from \"./components/Radio/Radio\";\nexport { RadioGroup } from \"./components/RadioGroup/RadioGroup\";\nexport type { RadioGroupProps } from \"./components/RadioGroup/RadioGroup\";\nexport { default as Checkbox } from \"./components/Checkbox/Checkbox\";\nexport type { CheckboxProps } from \"./components/Checkbox/Checkbox\";\nexport { Select } from \"./components/Select/Select\";\nexport type { SelectProps } from \"./components/Select/Select\";\nexport { default as SelectMimicry } from \"./components/SelectMimicry/SelectMimicry\";\nexport type { SelectMimicryProps } from \"./components/SelectMimicry/SelectMimicry\";\nexport { NativeSelect } from \"./components/NativeSelect/NativeSelect\";\nexport type { NativeSelectProps } from \"./components/NativeSelect/NativeSelect\";\nexport { CustomSelect } from \"./components/CustomSelect/CustomSelect\";\nexport type {\n CustomSelectProps,\n CustomSelectOptionInterface,\n} from \"./components/CustomSelect/CustomSelect\";\nexport { CustomSelectOption } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport type { CustomSelectOptionProps } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport { default as DatePicker } from \"./components/DatePicker/DatePicker\";\nexport type {\n DatePickerProps,\n DatePickerDateFormat,\n} from \"./components/DatePicker/DatePicker\";\nexport { SliderSwitch } from \"./components/SliderSwitch/SliderSwitch\";\nexport type {\n SliderSwitchProps,\n SliderSwitchOptionInterface,\n} from \"./components/SliderSwitch/SliderSwitch\";\nexport { SegmentedControl } from \"./components/SegmentedControl/SegmentedControl\";\nexport type {\n SegmentedControlProps,\n SegmentedControlOptionInterface,\n SegmentedControlValue,\n} from \"./components/SegmentedControl/SegmentedControl\";\nexport { Calendar } from \"./components/Calendar/Calendar\";\nexport type { CalendarProps } from \"./components/Calendar/Calendar\";\nexport { CalendarRange } from \"./components/CalendarRange/CalendarRange\";\nexport type { CalendarRangeProps } from \"./components/CalendarRange/CalendarRange\";\nexport { DateInput } from \"./components/DateInput/DateInput\";\nexport type { DateInputProps } from \"./components/DateInput/DateInput\";\nexport { DateRangeInput } from \"./components/DateRangeInput/DateRangeInput\";\nexport type { DateRangeInputProps } from \"./components/DateRangeInput/DateRangeInput\";\n\n/**\n * Helpers\n */\nexport { Div } from \"./components/Div/Div\";\nexport type { DivProps } from \"./components/Div/Div\";\nexport { default as Tappable } from \"./components/Tappable/Tappable\";\nexport type { TappableProps } from \"./components/Tappable/Tappable\";\nexport { Touch } from \"./components/Touch/Touch\";\nexport type { TouchProps } from \"./components/Touch/Touch\";\nexport { default as PanelSpinner } from \"./components/PanelSpinner/PanelSpinner\";\nexport type { PanelSpinnerProps } from \"./components/PanelSpinner/PanelSpinner\";\nexport { default as PanelHeaderClose } from \"./components/PanelHeaderClose/PanelHeaderClose\";\nexport { default as PanelHeaderBack } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport type { PanelHeaderBackProps } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport { default as PanelHeaderSubmit } from \"./components/PanelHeaderSubmit/PanelHeaderSubmit\";\nexport { default as PanelHeaderEdit } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport type { PanelHeaderEditProps } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport { ModalCardBase } from \"./components/ModalCardBase/ModalCardBase\";\nexport type { ModalCardBaseProps } from \"./components/ModalCardBase/ModalCardBase\";\n\n/**\n * Wrappers\n */\nexport { AppRoot } from \"./components/AppRoot/AppRoot\";\nexport type { AppRootProps } from \"./components/AppRoot/AppRoot\";\nexport { AdaptivityProvider } from \"./components/AdaptivityProvider/AdaptivityProvider\";\nexport { default as ConfigProvider } from \"./components/ConfigProvider/ConfigProvider\";\nexport type { ConfigProviderProps } from \"./components/ConfigProvider/ConfigProvider\";\nexport {\n ConfigProviderContext,\n WebviewType,\n} from \"./components/ConfigProvider/ConfigProviderContext\";\nexport { AppearanceProvider } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport type { AppearanceProviderProps } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport { Scheme, Appearance } from \"./helpers/scheme\";\nexport { LocaleProviderContext } from \"./components/LocaleProviderContext/LocaleProviderContext\";\n\n/**\n * Advertisement\n */\nexport { default as PromoBanner } from \"./components/PromoBanner/PromoBanner\";\nexport type { PromoBannerProps } from \"./components/PromoBanner/PromoBanner\";\n\n/**\n * Typography\n */\nexport { Title } from \"./components/Typography/Title/Title\";\nexport type { TitleProps } from \"./components/Typography/Title/Title\";\nexport { default as Headline } from \"./components/Typography/Headline/Headline\";\nexport type { HeadlineProps } from \"./components/Typography/Headline/Headline\";\nexport { default as Text } from \"./components/Typography/Text/Text\";\nexport type { TextProps } from \"./components/Typography/Text/Text\";\nexport { Caption } from \"./components/Typography/Caption/Caption\";\nexport type { CaptionProps } from \"./components/Typography/Caption/Caption\";\nexport { Subhead } from \"./components/Typography/Subhead/Subhead\";\nexport type { SubheadProps } from \"./components/Typography/Subhead/Subhead\";\nexport { Paragraph } from \"./components/Typography/Paragraph/Paragraph\";\nexport type { ParagraphProps } from \"./components/Typography/Paragraph/Paragraph\";\n\n/**\n * HOCs\n */\nexport { withInsets } from \"./hoc/withInsets\";\nexport { withPlatform } from \"./hoc/withPlatform\";\nexport { withAdaptivity } from \"./hoc/withAdaptivity\";\n\n/**\n * Hooks\n */\nexport { useInsets } from \"./hooks/useInsets\";\nexport { usePlatform } from \"./hooks/usePlatform\";\nexport { useAdaptivity } from \"./hooks/useAdaptivity\";\nexport { useAppearance } from \"./hooks/useAppearance\";\nexport { usePagination } from \"./hooks/usePagination\";\nexport { useScrollLock } from \"./components/AppRoot/ScrollContext\";\n\n/**\n * Utils\n */\nexport { classNamesString as classNames } from \"./lib/classNames\";\nexport { default as animate } from \"./lib/animate\";\nexport { removeObjectKeys } from \"./lib/removeObjectKeys\";\nexport { SSRWrapper } from \"./lib/SSR\";\nexport type { SSRWrapperProps } from \"./lib/SSR\";\nexport {\n platform,\n ANDROID,\n IOS,\n VKCOM,\n Platform,\n IS_PLATFORM_ANDROID,\n IS_PLATFORM_IOS,\n} from \"./lib/platform\";\nexport { getClassName } from \"./helpers/getClassName\";\nexport {\n ViewWidth,\n ViewHeight,\n SizeType,\n} from \"./components/AdaptivityProvider/AdaptivityContext\";\nexport { calcInitialsAvatarColor } from \"./helpers/avatar\";\nexport { Popper } from \"./components/Popper/Popper\";\nexport type { PopperProps } from \"./components/Popper/Popper\";\n\n/**\n * Types\n */\nexport type { AlignType, HasPlatform, HasInsets } from \"./types\";\nexport type { NavIdProps } from \"./lib/getNavId\";\nexport type { PlatformType } from \"./lib/platform\";\nexport type { AdaptivityProps } from \"./hoc/withAdaptivity\";\n"],"file":"index.js"}
@@ -9,7 +9,7 @@ function getNavId(props, warn) {
9
9
  var id = props.nav || props.id;
10
10
 
11
11
  if (process.env.NODE_ENV === "development" && !id && warn) {
12
- warn('Navigation item should have "nav" or "id" prop', "error");
12
+ warn('Навигационный элемент должен иметь свойство "nav" или "id"', "error");
13
13
  }
14
14
 
15
15
  return id;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/getNavId.ts"],"names":["getNavId","props","warn","id","nav","process","env","NODE_ENV"],"mappings":";;;;;;;AAQO,SAASA,QAAT,CAAkBC,KAAlB,EAAqCC,IAArC,EAA6D;AAClE,MAAMC,EAAE,GAAGF,KAAK,CAACG,GAAN,IAAaH,KAAK,CAACE,EAA9B;;AACA,MAAIE,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,CAACJ,EAA3C,IAAiDD,IAArD,EAA2D;AACzDA,IAAAA,IAAI,CAAC,gDAAD,EAAmD,OAAnD,CAAJ;AACD;;AACD,SAAOC,EAAP;AACD","sourcesContent":["import { WarnOnceHandler } from \"./warnOnce\";\n\nexport interface NavIdProps {\n /** Уникальный идентификатор навигационного элемента (вместо id) */\n nav?: string;\n id?: string;\n}\n\nexport function getNavId(props: NavIdProps, warn?: WarnOnceHandler) {\n const id = props.nav || props.id;\n if (process.env.NODE_ENV === \"development\" && !id && warn) {\n warn('Navigation item should have \"nav\" or \"id\" prop', \"error\");\n }\n return id;\n}\n"],"file":"getNavId.js"}
1
+ {"version":3,"sources":["../../../src/lib/getNavId.ts"],"names":["getNavId","props","warn","id","nav","process","env","NODE_ENV"],"mappings":";;;;;;;AAQO,SAASA,QAAT,CAAkBC,KAAlB,EAAqCC,IAArC,EAA6D;AAClE,MAAMC,EAAE,GAAGF,KAAK,CAACG,GAAN,IAAaH,KAAK,CAACE,EAA9B;;AACA,MAAIE,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,CAACJ,EAA3C,IAAiDD,IAArD,EAA2D;AACzDA,IAAAA,IAAI,CAAC,4DAAD,EAA+D,OAA/D,CAAJ;AACD;;AACD,SAAOC,EAAP;AACD","sourcesContent":["import { WarnOnceHandler } from \"./warnOnce\";\n\nexport interface NavIdProps {\n /** Уникальный идентификатор навигационного элемента (вместо id) */\n nav?: string;\n id?: string;\n}\n\nexport function getNavId(props: NavIdProps, warn?: WarnOnceHandler) {\n const id = props.nav || props.id;\n if (process.env.NODE_ENV === \"development\" && !id && warn) {\n warn('Навигационный элемент должен иметь свойство \"nav\" или \"id\"', \"error\");\n }\n return id;\n}\n"],"file":"getNavId.js"}
@@ -8,6 +8,10 @@ exports.platform = platform;
8
8
 
9
9
  var _browser = require("./browser");
10
10
 
11
+ var _vkjs = require("@vkontakte/vkjs");
12
+
13
+ var _dom = require("./dom");
14
+
11
15
  var Platform;
12
16
  exports.Platform = Platform;
13
17
 
@@ -17,6 +21,27 @@ exports.Platform = Platform;
17
21
  Platform["VKCOM"] = "vkcom";
18
22
  })(Platform || (exports.Platform = Platform = {}));
19
23
 
24
+ var PLATFORM_ALIAS = {
25
+ desktop_web: Platform.VKCOM
26
+ };
27
+
28
+ function isPlatformAlias(platformAlias) {
29
+ return platformAlias in PLATFORM_ALIAS;
30
+ }
31
+ /**
32
+ * Значение, которое передаётся в качестве query-параметра при открытии VK Mini Apps
33
+ * @see {@link https://dev.vk.com/mini-apps/development/launch-params#vk_platform vk_platform}
34
+ */
35
+
36
+
37
+ function getPlatformByQueryString(queryString) {
38
+ var parsedQuery = _vkjs.querystring.parse(queryString);
39
+
40
+ var platformAliasByQuery = parsedQuery["vk_platform"];
41
+ return typeof platformAliasByQuery === "string" && isPlatformAlias(platformAliasByQuery) ? PLATFORM_ALIAS[platformAliasByQuery] : undefined;
42
+ }
43
+
44
+ var platformByQueryString = _dom.canUseDOM ? getPlatformByQueryString(location.search) : undefined;
20
45
  var ANDROID = Platform.ANDROID;
21
46
  exports.ANDROID = ANDROID;
22
47
  var IOS = Platform.IOS;
@@ -25,6 +50,10 @@ var VKCOM = Platform.VKCOM;
25
50
  exports.VKCOM = VKCOM;
26
51
 
27
52
  function platform(browserInfo) {
53
+ if (platformByQueryString) {
54
+ return platformByQueryString;
55
+ }
56
+
28
57
  if (!browserInfo) {
29
58
  browserInfo = (0, _browser.computeBrowserInfo)();
30
59
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/platform.ts"],"names":["Platform","ANDROID","IOS","VKCOM","platform","browserInfo","system","platformName","IS_PLATFORM_IOS","IS_PLATFORM_ANDROID"],"mappings":";;;;;;;;AAAA;;IAEYA,Q;;;WAAAA,Q;AAAAA,EAAAA,Q;AAAAA,EAAAA,Q;AAAAA,EAAAA,Q;GAAAA,Q,wBAAAA,Q;;AAML,IAAMC,OAAO,GAAGD,QAAQ,CAACC,OAAzB;;AACA,IAAMC,GAAG,GAAGF,QAAQ,CAACE,GAArB;;AACA,IAAMC,KAAK,GAAGH,QAAQ,CAACG,KAAvB;;;AAQA,SAASC,QAAT,CAAkBC,WAAlB,EAA2D;AAChE,MAAI,CAACA,WAAL,EAAkB;AAChBA,IAAAA,WAAW,GAAG,kCAAd;AACD;;AAED,SAAOA,WAAW,CAACC,MAAZ,KAAuB,KAAvB,GAA+BJ,GAA/B,GAAqCD,OAA5C;AACD;;AAED,IAAMM,YAAY,GAAGH,QAAQ,EAA7B;AAEA;AACA;AACA;;AACO,IAAMI,eAAwB,GAAGD,YAAY,KAAKL,GAAlD;AACP;AACA;AACA;;;AACO,IAAMO,mBAA4B,GAAGF,YAAY,KAAKN,OAAtD","sourcesContent":["import { BrowserInfo, computeBrowserInfo } from \"./browser\";\n\nexport enum Platform {\n ANDROID = \"android\",\n IOS = \"ios\",\n VKCOM = \"vkcom\",\n}\n\nexport const ANDROID = Platform.ANDROID;\nexport const IOS = Platform.IOS;\nexport const VKCOM = Platform.VKCOM;\n\nexport type PlatformType =\n | Platform.ANDROID\n | Platform.IOS\n | Platform.VKCOM\n | string;\n\nexport function platform(browserInfo?: BrowserInfo): PlatformType {\n if (!browserInfo) {\n browserInfo = computeBrowserInfo();\n }\n\n return browserInfo.system === \"ios\" ? IOS : ANDROID;\n}\n\nconst platformName = platform();\n\n/**\n * @deprecated для определения платформы используйте withPlatform или usePlatform\n */\nexport const IS_PLATFORM_IOS: boolean = platformName === IOS;\n/**\n * @deprecated для определения платформы используйте withPlatform или usePlatform\n */\nexport const IS_PLATFORM_ANDROID: boolean = platformName === ANDROID;\n"],"file":"platform.js"}
1
+ {"version":3,"sources":["../../../src/lib/platform.ts"],"names":["Platform","PLATFORM_ALIAS","desktop_web","VKCOM","isPlatformAlias","platformAlias","getPlatformByQueryString","queryString","parsedQuery","querystring","parse","platformAliasByQuery","undefined","platformByQueryString","canUseDOM","location","search","ANDROID","IOS","platform","browserInfo","system","platformName","IS_PLATFORM_IOS","IS_PLATFORM_ANDROID"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;IAEYA,Q;;;WAAAA,Q;AAAAA,EAAAA,Q;AAAAA,EAAAA,Q;AAAAA,EAAAA,Q;GAAAA,Q,wBAAAA,Q;;AAMZ,IAAMC,cAAc,GAAG;AACrBC,EAAAA,WAAW,EAAEF,QAAQ,CAACG;AADD,CAAvB;;AAIA,SAASC,eAAT,CACEC,aADF,EAEgD;AAC9C,SAAOA,aAAa,IAAIJ,cAAxB;AACD;AAED;AACA;AACA;AACA;;;AACA,SAASK,wBAAT,CAAkCC,WAAlC,EAA6E;AAC3E,MAAMC,WAAW,GAAGC,kBAAYC,KAAZ,CAAkBH,WAAlB,CAApB;;AACA,MAAMI,oBAAoB,GAAGH,WAAW,CAAC,aAAD,CAAxC;AAEA,SAAO,OAAOG,oBAAP,KAAgC,QAAhC,IACLP,eAAe,CAACO,oBAAD,CADV,GAEHV,cAAc,CAACU,oBAAD,CAFX,GAGHC,SAHJ;AAID;;AAED,IAAMC,qBAAqB,GAAGC,iBAC1BR,wBAAwB,CAACS,QAAQ,CAACC,MAAV,CADE,GAE1BJ,SAFJ;AAIO,IAAMK,OAAO,GAAGjB,QAAQ,CAACiB,OAAzB;;AACA,IAAMC,GAAG,GAAGlB,QAAQ,CAACkB,GAArB;;AACA,IAAMf,KAAK,GAAGH,QAAQ,CAACG,KAAvB;;;AAQA,SAASgB,QAAT,CAAkBC,WAAlB,EAA2D;AAChE,MAAIP,qBAAJ,EAA2B;AACzB,WAAOA,qBAAP;AACD;;AAED,MAAI,CAACO,WAAL,EAAkB;AAChBA,IAAAA,WAAW,GAAG,kCAAd;AACD;;AAED,SAAOA,WAAW,CAACC,MAAZ,KAAuB,KAAvB,GAA+BH,GAA/B,GAAqCD,OAA5C;AACD;;AAED,IAAMK,YAAY,GAAGH,QAAQ,EAA7B;AAEA;AACA;AACA;;AACO,IAAMI,eAAwB,GAAGD,YAAY,KAAKJ,GAAlD;AACP;AACA;AACA;;;AACO,IAAMM,mBAA4B,GAAGF,YAAY,KAAKL,OAAtD","sourcesContent":["import { BrowserInfo, computeBrowserInfo } from \"./browser\";\nimport { querystring } from \"@vkontakte/vkjs\";\nimport { canUseDOM } from \"./dom\";\n\nexport enum Platform {\n ANDROID = \"android\",\n IOS = \"ios\",\n VKCOM = \"vkcom\",\n}\n\nconst PLATFORM_ALIAS = {\n desktop_web: Platform.VKCOM,\n};\n\nfunction isPlatformAlias(\n platformAlias: string\n): platformAlias is keyof typeof PLATFORM_ALIAS {\n return platformAlias in PLATFORM_ALIAS;\n}\n\n/**\n * Значение, которое передаётся в качестве query-параметра при открытии VK Mini Apps\n * @see {@link https://dev.vk.com/mini-apps/development/launch-params#vk_platform vk_platform}\n */\nfunction getPlatformByQueryString(queryString: string): Platform | undefined {\n const parsedQuery = querystring.parse(queryString);\n const platformAliasByQuery = parsedQuery[\"vk_platform\"];\n\n return typeof platformAliasByQuery === \"string\" &&\n isPlatformAlias(platformAliasByQuery)\n ? PLATFORM_ALIAS[platformAliasByQuery]\n : undefined;\n}\n\nconst platformByQueryString = canUseDOM\n ? getPlatformByQueryString(location.search)\n : undefined;\n\nexport const ANDROID = Platform.ANDROID;\nexport const IOS = Platform.IOS;\nexport const VKCOM = Platform.VKCOM;\n\nexport type PlatformType =\n | Platform.ANDROID\n | Platform.IOS\n | Platform.VKCOM\n | string;\n\nexport function platform(browserInfo?: BrowserInfo): PlatformType {\n if (platformByQueryString) {\n return platformByQueryString;\n }\n\n if (!browserInfo) {\n browserInfo = computeBrowserInfo();\n }\n\n return browserInfo.system === \"ios\" ? IOS : ANDROID;\n}\n\nconst platformName = platform();\n\n/**\n * @deprecated для определения платформы используйте withPlatform или usePlatform\n */\nexport const IS_PLATFORM_IOS: boolean = platformName === IOS;\n/**\n * @deprecated для определения платформы используйте withPlatform или usePlatform\n */\nexport const IS_PLATFORM_ANDROID: boolean = platformName === ANDROID;\n"],"file":"platform.js"}