@vkontakte/vkui 4.28.1 → 4.29.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 (1055) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +5136 -9779
  4. package/.cache/ts/src/components/Button/Button.d.ts +1 -2
  5. package/.cache/ts/src/components/Cell/Cell.d.ts +1 -1
  6. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +1 -2
  7. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  8. package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +1 -1
  9. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +2 -2
  10. package/.cache/ts/src/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  11. package/.cache/ts/src/components/Gallery/Gallery.d.ts +9 -1
  12. package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +1 -0
  13. package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  14. package/.cache/ts/src/components/Input/Input.d.ts +1 -2
  15. package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +1 -1
  16. package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  17. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +16 -1
  18. package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +14 -2
  19. package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  20. package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  21. package/.cache/ts/src/components/ModalRoot/types.d.ts +16 -1
  22. package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +6 -5
  23. package/.cache/ts/src/components/Pagination/Pagination.d.ts +3 -3
  24. package/.cache/ts/src/components/Select/Select.d.ts +1 -2
  25. package/.cache/ts/src/components/Touch/TouchContext.d.ts +1 -1
  26. package/.cache/ts/src/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  27. package/.cache/ts/src/components/Typography/Subhead/Subhead.d.ts +1 -2
  28. package/.cache/ts/src/components/Typography/Title/Title.d.ts +1 -2
  29. package/.cache/ts/src/hooks/useBridgeAdaptivity.d.ts +6 -0
  30. package/.cache/ts/src/hooks/useKeyboard.d.ts +1 -1
  31. package/.cache/ts/src/hooks/usePagination.d.ts +3 -3
  32. package/.cache/ts/src/index.d.ts +20 -9
  33. package/.cache/ts/src/lib/date.d.ts +29 -0
  34. package/.cache/ts/src/lib/getNavId.d.ts +2 -1
  35. package/.cache/ts/src/lib/warnOnce.d.ts +2 -1
  36. package/.cache/ts/src/testing/utils.d.ts +1 -0
  37. package/.cache/ts/src/tokenized/index.d.ts +22 -4
  38. package/.eslintrc.json +8 -2
  39. package/dist/cjs/components/ActionSheet/ActionSheet.js +1 -1
  40. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  41. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +2 -1
  42. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  43. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  44. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  45. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +7 -6
  46. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  47. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +44 -11
  48. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  49. package/dist/cjs/components/Alert/Alert.js +7 -6
  50. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  51. package/dist/cjs/components/AppRoot/AppRoot.js +3 -2
  52. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  53. package/dist/cjs/components/Avatar/Avatar.js +4 -1
  54. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  55. package/dist/cjs/components/Banner/Banner.js +5 -4
  56. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  57. package/dist/cjs/components/Button/Button.d.ts +1 -2
  58. package/dist/cjs/components/Button/Button.js +36 -41
  59. package/dist/cjs/components/Button/Button.js.map +1 -1
  60. package/dist/cjs/components/Calendar/Calendar.js +5 -5
  61. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  62. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -1
  63. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  64. package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
  65. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  66. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +15 -15
  67. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  68. package/dist/cjs/components/CalendarRange/CalendarRange.js +12 -15
  69. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  70. package/dist/cjs/components/CalendarTime/CalendarTime.js +8 -10
  71. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  72. package/dist/cjs/components/CardScroll/CardScroll.js +3 -2
  73. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  74. package/dist/cjs/components/Cell/Cell.d.ts +1 -1
  75. package/dist/cjs/components/Cell/Cell.js +4 -3
  76. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  77. package/dist/cjs/components/CellButton/CellButton.js +1 -0
  78. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  79. package/dist/cjs/components/Chip/Chip.js +1 -0
  80. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  81. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -2
  82. package/dist/cjs/components/ChipsInput/ChipsInput.js +4 -9
  83. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  84. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  85. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +8 -12
  86. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  87. package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
  88. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
  89. package/dist/cjs/components/ContentCard/ContentCard.js +4 -3
  90. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  91. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
  92. package/dist/cjs/components/CustomSelect/CustomSelect.js +24 -33
  93. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  94. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  95. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  96. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  97. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +24 -14
  98. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  99. package/dist/cjs/components/DateInput/DateInput.js +5 -5
  100. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  101. package/dist/cjs/components/DatePicker/DatePicker.js +6 -6
  102. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  103. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +7 -7
  104. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  105. package/dist/cjs/components/File/File.js +2 -2
  106. package/dist/cjs/components/File/File.js.map +1 -1
  107. package/dist/cjs/components/FixedLayout/FixedLayout.js +2 -1
  108. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  109. package/dist/cjs/components/FormField/FormField.js +2 -6
  110. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  111. package/dist/cjs/components/FormItem/FormItem.js +4 -3
  112. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  113. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  114. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  115. package/dist/cjs/components/Gallery/Gallery.d.ts +9 -1
  116. package/dist/cjs/components/Gallery/Gallery.js +10 -2
  117. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  118. package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +1 -0
  119. package/dist/cjs/components/GridAvatar/GridAvatar.js +6 -6
  120. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  121. package/dist/cjs/components/Group/Group.js +2 -1
  122. package/dist/cjs/components/Group/Group.js.map +1 -1
  123. package/dist/cjs/components/Header/Header.js +10 -7
  124. package/dist/cjs/components/Header/Header.js.map +1 -1
  125. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +2 -2
  126. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  127. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  128. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +22 -21
  129. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  130. package/dist/cjs/components/InfoRow/InfoRow.js +2 -2
  131. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  132. package/dist/cjs/components/Input/Input.d.ts +1 -2
  133. package/dist/cjs/components/Input/Input.js +11 -15
  134. package/dist/cjs/components/Input/Input.js.map +1 -1
  135. package/dist/cjs/components/List/List.js +1 -0
  136. package/dist/cjs/components/List/List.js.map +1 -1
  137. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -0
  138. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  139. package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
  140. package/dist/cjs/components/ModalCard/ModalCard.js +1 -0
  141. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  142. package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  143. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +10 -4
  144. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  145. package/dist/cjs/components/ModalPage/ModalPage.d.ts +16 -1
  146. package/dist/cjs/components/ModalPage/ModalPage.js +5 -1
  147. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  148. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +1 -0
  149. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  150. package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +14 -2
  151. package/dist/cjs/components/ModalRoot/ModalRoot.js +14 -11
  152. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  153. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  154. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  155. package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  156. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +10 -7
  157. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  158. package/dist/cjs/components/ModalRoot/types.d.ts +16 -1
  159. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  160. package/dist/cjs/components/ModalRoot/useModalManager.d.ts +6 -5
  161. package/dist/cjs/components/ModalRoot/useModalManager.js +54 -16
  162. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  163. package/dist/cjs/components/NativeSelect/NativeSelect.js +2 -1
  164. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  165. package/dist/cjs/components/Pagination/Pagination.d.ts +3 -3
  166. package/dist/cjs/components/Pagination/Pagination.js +3 -3
  167. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  168. package/dist/cjs/components/Panel/Panel.js +2 -1
  169. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  170. package/dist/cjs/components/PanelHeader/PanelHeader.js +1 -0
  171. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  172. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  173. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  174. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +5 -4
  175. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  176. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +1 -0
  177. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  178. package/dist/cjs/components/Placeholder/Placeholder.js +4 -3
  179. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  180. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +1 -0
  181. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  182. package/dist/cjs/components/Popper/Popper.js +2 -2
  183. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  184. package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -2
  185. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  186. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -1
  187. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  188. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  189. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  190. package/dist/cjs/components/RichCell/RichCell.js +3 -2
  191. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  192. package/dist/cjs/components/RichTooltip/RichTooltip.js +2 -1
  193. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  194. package/dist/cjs/components/Root/Root.js +8 -7
  195. package/dist/cjs/components/Root/Root.js.map +1 -1
  196. package/dist/cjs/components/Search/Search.js +3 -2
  197. package/dist/cjs/components/Search/Search.js.map +1 -1
  198. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +19 -13
  199. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  200. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  201. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  202. package/dist/cjs/components/Select/Select.d.ts +1 -2
  203. package/dist/cjs/components/Select/Select.js +7 -9
  204. package/dist/cjs/components/Select/Select.js.map +1 -1
  205. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +2 -1
  206. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  207. package/dist/cjs/components/Separator/Separator.js +3 -1
  208. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  209. package/dist/cjs/components/SimpleCell/SimpleCell.js +5 -4
  210. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  211. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  212. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  213. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +1 -0
  214. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  215. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +1 -0
  216. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  217. package/dist/cjs/components/Snackbar/Snackbar.js +3 -2
  218. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  219. package/dist/cjs/components/Spacing/Spacing.js +2 -1
  220. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  221. package/dist/cjs/components/SplitCol/SplitCol.js +2 -1
  222. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  223. package/dist/cjs/components/SplitLayout/SplitLayout.js +2 -1
  224. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  225. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +2 -2
  226. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  227. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +4 -3
  228. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  229. package/dist/cjs/components/Switch/Switch.js +1 -0
  230. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  231. package/dist/cjs/components/Tabbar/Tabbar.js +1 -0
  232. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  233. package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -1
  234. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  235. package/dist/cjs/components/TabsItem/TabsItem.js +3 -2
  236. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  237. package/dist/cjs/components/Tappable/Tappable.js +5 -4
  238. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  239. package/dist/cjs/components/TextTooltip/TextTooltip.js +3 -3
  240. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  241. package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
  242. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  243. package/dist/cjs/components/Touch/Touch.js +9 -3
  244. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  245. package/dist/cjs/components/Touch/TouchContext.d.ts +1 -1
  246. package/dist/cjs/components/Touch/TouchContext.js +1 -1
  247. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  248. package/dist/cjs/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  249. package/dist/cjs/components/Typography/Paragraph/Paragraph.js +42 -0
  250. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -0
  251. package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +1 -2
  252. package/dist/cjs/components/Typography/Subhead/Subhead.js +4 -6
  253. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  254. package/dist/cjs/components/Typography/Text/Text.js +1 -1
  255. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  256. package/dist/cjs/components/Typography/Title/Title.d.ts +1 -2
  257. package/dist/cjs/components/Typography/Title/Title.js +5 -11
  258. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  259. package/dist/cjs/components/UsersStack/UsersStack.js +3 -2
  260. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  261. package/dist/cjs/components/View/View.js +5 -0
  262. package/dist/cjs/components/View/View.js.map +1 -1
  263. package/dist/cjs/components/View/ViewInfinite.js +5 -0
  264. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  265. package/dist/cjs/components/View/utils.js +5 -2
  266. package/dist/cjs/components/View/utils.js.map +1 -1
  267. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -2
  268. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  269. package/dist/cjs/helpers/scheme.js +2 -2
  270. package/dist/cjs/helpers/scheme.js.map +1 -1
  271. package/dist/cjs/hooks/useBridgeAdaptivity.d.ts +6 -0
  272. package/dist/cjs/hooks/useBridgeAdaptivity.js +85 -0
  273. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -0
  274. package/dist/cjs/hooks/useCalendar.js +6 -6
  275. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  276. package/dist/cjs/hooks/useKeyboard.d.ts +1 -1
  277. package/dist/cjs/hooks/useKeyboard.js +1 -1
  278. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  279. package/dist/cjs/hooks/usePagination.d.ts +3 -3
  280. package/dist/cjs/hooks/usePagination.js +3 -3
  281. package/dist/cjs/hooks/usePagination.js.map +1 -1
  282. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  283. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  284. package/dist/cjs/hooks/useWaitTransitionFinish.js +6 -1
  285. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  286. package/dist/cjs/index.d.ts +20 -9
  287. package/dist/cjs/index.js +26 -18
  288. package/dist/cjs/index.js.map +1 -1
  289. package/dist/cjs/lib/calendar.js +12 -23
  290. package/dist/cjs/lib/calendar.js.map +1 -1
  291. package/dist/cjs/lib/date.d.ts +29 -0
  292. package/dist/cjs/lib/date.js +286 -0
  293. package/dist/cjs/lib/date.js.map +1 -0
  294. package/dist/cjs/lib/getNavId.d.ts +2 -1
  295. package/dist/cjs/lib/getNavId.js +1 -1
  296. package/dist/cjs/lib/getNavId.js.map +1 -1
  297. package/dist/cjs/lib/warnOnce.d.ts +2 -1
  298. package/dist/cjs/lib/warnOnce.js +3 -1
  299. package/dist/cjs/lib/warnOnce.js.map +1 -1
  300. package/dist/cjs/tokenized/index.d.ts +22 -4
  301. package/dist/cjs/tokenized/index.js +80 -10
  302. package/dist/cjs/tokenized/index.js.map +1 -1
  303. package/dist/components/ActionSheet/ActionSheet.js +1 -1
  304. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  305. package/dist/components/ActionSheet/ActionSheetDropdown.js +2 -1
  306. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  307. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  308. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  309. package/dist/components/ActionSheetItem/ActionSheetItem.js +4 -3
  310. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  311. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
  312. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  313. package/dist/components/Alert/Alert.js +4 -3
  314. package/dist/components/Alert/Alert.js.map +1 -1
  315. package/dist/components/AppRoot/AppRoot.js +3 -2
  316. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  317. package/dist/components/Avatar/Avatar.js +4 -1
  318. package/dist/components/Avatar/Avatar.js.map +1 -1
  319. package/dist/components/Banner/Banner.js +3 -2
  320. package/dist/components/Banner/Banner.js.map +1 -1
  321. package/dist/components/Button/Button.d.ts +1 -2
  322. package/dist/components/Button/Button.js +29 -33
  323. package/dist/components/Button/Button.js.map +1 -1
  324. package/dist/components/Calendar/Calendar.js +3 -3
  325. package/dist/components/Calendar/Calendar.js.map +1 -1
  326. package/dist/components/CalendarDay/CalendarDay.js +4 -1
  327. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  328. package/dist/components/CalendarDays/CalendarDays.js +1 -1
  329. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  330. package/dist/components/CalendarHeader/CalendarHeader.js +8 -8
  331. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  332. package/dist/components/CalendarRange/CalendarRange.js +2 -5
  333. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  334. package/dist/components/CalendarTime/CalendarTime.js +3 -3
  335. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  336. package/dist/components/CardScroll/CardScroll.js +2 -1
  337. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  338. package/dist/components/Cell/Cell.d.ts +1 -1
  339. package/dist/components/Cell/Cell.js +4 -3
  340. package/dist/components/Cell/Cell.js.map +1 -1
  341. package/dist/components/CellButton/CellButton.js +1 -0
  342. package/dist/components/CellButton/CellButton.js.map +1 -1
  343. package/dist/components/Chip/Chip.js +1 -0
  344. package/dist/components/Chip/Chip.js.map +1 -1
  345. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -2
  346. package/dist/components/ChipsInput/ChipsInput.js +3 -10
  347. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  348. package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  349. package/dist/components/ChipsSelect/ChipsSelect.js +3 -6
  350. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  351. package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
  352. package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
  353. package/dist/components/ContentCard/ContentCard.js +3 -2
  354. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  355. package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
  356. package/dist/components/CustomSelect/CustomSelect.js +20 -27
  357. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  358. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  359. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  360. package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  361. package/dist/components/CustomSelectOption/CustomSelectOption.js +19 -15
  362. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  363. package/dist/components/DateInput/DateInput.js +3 -3
  364. package/dist/components/DateInput/DateInput.js.map +1 -1
  365. package/dist/components/DatePicker/DatePicker.js +2 -2
  366. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  367. package/dist/components/DateRangeInput/DateRangeInput.js +2 -2
  368. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  369. package/dist/components/File/File.js +1 -1
  370. package/dist/components/File/File.js.map +1 -1
  371. package/dist/components/FixedLayout/FixedLayout.js +2 -1
  372. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  373. package/dist/components/FormField/FormField.js +2 -6
  374. package/dist/components/FormField/FormField.js.map +1 -1
  375. package/dist/components/FormItem/FormItem.js +3 -2
  376. package/dist/components/FormItem/FormItem.js.map +1 -1
  377. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  378. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  379. package/dist/components/Gallery/Gallery.d.ts +9 -1
  380. package/dist/components/Gallery/Gallery.js +10 -2
  381. package/dist/components/Gallery/Gallery.js.map +1 -1
  382. package/dist/components/GridAvatar/GridAvatar.d.ts +1 -0
  383. package/dist/components/GridAvatar/GridAvatar.js +5 -6
  384. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  385. package/dist/components/Group/Group.js +2 -1
  386. package/dist/components/Group/Group.js.map +1 -1
  387. package/dist/components/Header/Header.js +7 -4
  388. package/dist/components/Header/Header.js.map +1 -1
  389. package/dist/components/HorizontalCell/HorizontalCell.js +1 -1
  390. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  391. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  392. package/dist/components/HorizontalScroll/HorizontalScroll.js +20 -18
  393. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  394. package/dist/components/InfoRow/InfoRow.js +1 -1
  395. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  396. package/dist/components/Input/Input.d.ts +1 -2
  397. package/dist/components/Input/Input.js +8 -10
  398. package/dist/components/Input/Input.js.map +1 -1
  399. package/dist/components/List/List.js +1 -0
  400. package/dist/components/List/List.js.map +1 -1
  401. package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -0
  402. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  403. package/dist/components/ModalCard/ModalCard.d.ts +1 -1
  404. package/dist/components/ModalCard/ModalCard.js +1 -0
  405. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  406. package/dist/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  407. package/dist/components/ModalCardBase/ModalCardBase.js +9 -3
  408. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  409. package/dist/components/ModalPage/ModalPage.d.ts +16 -1
  410. package/dist/components/ModalPage/ModalPage.js +5 -1
  411. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  412. package/dist/components/ModalPageHeader/ModalPageHeader.js +1 -0
  413. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  414. package/dist/components/ModalRoot/ModalRoot.d.ts +14 -2
  415. package/dist/components/ModalRoot/ModalRoot.js +14 -11
  416. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  417. package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  418. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  419. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  420. package/dist/components/ModalRoot/ModalRootDesktop.js +10 -7
  421. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  422. package/dist/components/ModalRoot/types.d.ts +16 -1
  423. package/dist/components/ModalRoot/types.js.map +1 -1
  424. package/dist/components/ModalRoot/useModalManager.d.ts +6 -5
  425. package/dist/components/ModalRoot/useModalManager.js +54 -16
  426. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  427. package/dist/components/NativeSelect/NativeSelect.js +2 -1
  428. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  429. package/dist/components/Pagination/Pagination.d.ts +3 -3
  430. package/dist/components/Pagination/Pagination.js +1 -1
  431. package/dist/components/Pagination/Pagination.js.map +1 -1
  432. package/dist/components/Panel/Panel.js +2 -1
  433. package/dist/components/Panel/Panel.js.map +1 -1
  434. package/dist/components/PanelHeader/PanelHeader.js +1 -0
  435. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  436. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  437. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  438. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
  439. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  440. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +1 -0
  441. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  442. package/dist/components/Placeholder/Placeholder.js +3 -2
  443. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  444. package/dist/components/PopoutWrapper/PopoutWrapper.js +1 -0
  445. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  446. package/dist/components/Popper/Popper.js +2 -2
  447. package/dist/components/Popper/Popper.js.map +1 -1
  448. package/dist/components/PromoBanner/PromoBanner.js +1 -1
  449. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  450. package/dist/components/PullToRefresh/PullToRefresh.js +2 -1
  451. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  452. package/dist/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  453. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  454. package/dist/components/RichCell/RichCell.js +2 -1
  455. package/dist/components/RichCell/RichCell.js.map +1 -1
  456. package/dist/components/RichTooltip/RichTooltip.js +2 -1
  457. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  458. package/dist/components/Root/Root.js +8 -7
  459. package/dist/components/Root/Root.js.map +1 -1
  460. package/dist/components/Search/Search.js +2 -1
  461. package/dist/components/Search/Search.js.map +1 -1
  462. package/dist/components/SegmentedControl/SegmentedControl.js +19 -13
  463. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  464. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  465. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  466. package/dist/components/Select/Select.d.ts +1 -2
  467. package/dist/components/Select/Select.js +4 -5
  468. package/dist/components/Select/Select.js.map +1 -1
  469. package/dist/components/SelectMimicry/SelectMimicry.js +2 -1
  470. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  471. package/dist/components/Separator/Separator.js +3 -1
  472. package/dist/components/Separator/Separator.js.map +1 -1
  473. package/dist/components/SimpleCell/SimpleCell.js +3 -2
  474. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  475. package/dist/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  476. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  477. package/dist/components/SliderSwitch/SliderSwitch.js +1 -0
  478. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  479. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -0
  480. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  481. package/dist/components/Snackbar/Snackbar.js +2 -1
  482. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  483. package/dist/components/Spacing/Spacing.js +2 -1
  484. package/dist/components/Spacing/Spacing.js.map +1 -1
  485. package/dist/components/SplitCol/SplitCol.js +2 -1
  486. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  487. package/dist/components/SplitLayout/SplitLayout.js +2 -1
  488. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  489. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -1
  490. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  491. package/dist/components/SubnavigationButton/SubnavigationButton.js +3 -2
  492. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  493. package/dist/components/Switch/Switch.js +1 -0
  494. package/dist/components/Switch/Switch.js.map +1 -1
  495. package/dist/components/Tabbar/Tabbar.js +1 -0
  496. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  497. package/dist/components/TabbarItem/TabbarItem.js +2 -1
  498. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  499. package/dist/components/TabsItem/TabsItem.js +2 -1
  500. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  501. package/dist/components/Tappable/Tappable.js +5 -4
  502. package/dist/components/Tappable/Tappable.js.map +1 -1
  503. package/dist/components/TextTooltip/TextTooltip.js +1 -1
  504. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  505. package/dist/components/Tooltip/Tooltip.js +4 -4
  506. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  507. package/dist/components/Touch/Touch.js +9 -3
  508. package/dist/components/Touch/Touch.js.map +1 -1
  509. package/dist/components/Touch/TouchContext.d.ts +1 -1
  510. package/dist/components/Touch/TouchContext.js +1 -1
  511. package/dist/components/Touch/TouchContext.js.map +1 -1
  512. package/dist/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  513. package/dist/components/Typography/Paragraph/Paragraph.js +25 -0
  514. package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -0
  515. package/dist/components/Typography/Subhead/Subhead.d.ts +1 -2
  516. package/dist/components/Typography/Subhead/Subhead.js +3 -7
  517. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  518. package/dist/components/Typography/Text/Text.js +1 -1
  519. package/dist/components/Typography/Text/Text.js.map +1 -1
  520. package/dist/components/Typography/Title/Title.d.ts +1 -2
  521. package/dist/components/Typography/Title/Title.js +3 -9
  522. package/dist/components/Typography/Title/Title.js.map +1 -1
  523. package/dist/components/UsersStack/UsersStack.js +2 -1
  524. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  525. package/dist/components/View/View.js +5 -0
  526. package/dist/components/View/View.js.map +1 -1
  527. package/dist/components/View/ViewInfinite.js +5 -0
  528. package/dist/components/View/ViewInfinite.js.map +1 -1
  529. package/dist/components/View/utils.js +5 -2
  530. package/dist/components/View/utils.js.map +1 -1
  531. package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -2
  532. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  533. package/dist/components.css +21 -6
  534. package/dist/components.css.map +1 -1
  535. package/dist/cssm/components/ActionSheet/ActionSheet.js +1 -1
  536. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  537. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +2 -1
  538. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  539. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  540. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  541. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +4 -3
  542. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  543. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
  544. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  545. package/dist/cssm/components/Alert/Alert.css +1 -1
  546. package/dist/cssm/components/Alert/Alert.js +4 -3
  547. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  548. package/dist/cssm/components/AppRoot/AppRoot.js +3 -2
  549. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  550. package/dist/cssm/components/Avatar/Avatar.js +4 -1
  551. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  552. package/dist/cssm/components/Banner/Banner.js +3 -2
  553. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  554. package/dist/cssm/components/Button/Button.d.ts +1 -2
  555. package/dist/cssm/components/Button/Button.js +29 -33
  556. package/dist/cssm/components/Button/Button.js.map +1 -1
  557. package/dist/cssm/components/Calendar/Calendar.js +3 -3
  558. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  559. package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
  560. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -1
  561. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  562. package/dist/cssm/components/CalendarDays/CalendarDays.js +1 -1
  563. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  564. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +8 -8
  565. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  566. package/dist/cssm/components/CalendarRange/CalendarRange.js +2 -5
  567. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  568. package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
  569. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  570. package/dist/cssm/components/CardScroll/CardScroll.js +2 -1
  571. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  572. package/dist/cssm/components/Cell/Cell.d.ts +1 -1
  573. package/dist/cssm/components/Cell/Cell.js +4 -3
  574. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  575. package/dist/cssm/components/CellButton/CellButton.js +1 -0
  576. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  577. package/dist/cssm/components/Chip/Chip.js +1 -0
  578. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  579. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  580. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -2
  581. package/dist/cssm/components/ChipsInput/ChipsInput.js +3 -10
  582. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  583. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  584. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  585. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +3 -6
  586. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  587. package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +1 -1
  588. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
  589. package/dist/cssm/components/ContentCard/ContentCard.js +3 -2
  590. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  591. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  592. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
  593. package/dist/cssm/components/CustomSelect/CustomSelect.js +20 -27
  594. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  595. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -1
  596. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  597. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  598. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -1
  599. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  600. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +19 -15
  601. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  602. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  603. package/dist/cssm/components/DateInput/DateInput.js +3 -3
  604. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  605. package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
  606. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  607. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  608. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +2 -2
  609. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  610. package/dist/cssm/components/File/File.js +1 -1
  611. package/dist/cssm/components/File/File.js.map +1 -1
  612. package/dist/cssm/components/FixedLayout/FixedLayout.js +2 -1
  613. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  614. package/dist/cssm/components/FormField/FormField.css +5 -1
  615. package/dist/cssm/components/FormField/FormField.js +2 -6
  616. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  617. package/dist/cssm/components/FormItem/FormItem.js +3 -2
  618. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  619. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  620. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  621. package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
  622. package/dist/cssm/components/Gallery/Gallery.d.ts +9 -1
  623. package/dist/cssm/components/Gallery/Gallery.js +10 -2
  624. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  625. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  626. package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +1 -0
  627. package/dist/cssm/components/GridAvatar/GridAvatar.js +5 -6
  628. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  629. package/dist/cssm/components/Group/Group.js +2 -1
  630. package/dist/cssm/components/Group/Group.js.map +1 -1
  631. package/dist/cssm/components/Header/Header.js +7 -4
  632. package/dist/cssm/components/Header/Header.js.map +1 -1
  633. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +1 -1
  634. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  635. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  636. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +20 -18
  637. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  638. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  639. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  640. package/dist/cssm/components/Input/Input.css +1 -1
  641. package/dist/cssm/components/Input/Input.d.ts +1 -2
  642. package/dist/cssm/components/Input/Input.js +8 -10
  643. package/dist/cssm/components/Input/Input.js.map +1 -1
  644. package/dist/cssm/components/InputLike/InputLike.css +1 -1
  645. package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
  646. package/dist/cssm/components/List/List.js +1 -0
  647. package/dist/cssm/components/List/List.js.map +1 -1
  648. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -0
  649. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  650. package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
  651. package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
  652. package/dist/cssm/components/ModalCard/ModalCard.js +1 -0
  653. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  654. package/dist/cssm/components/ModalCardBase/ModalCardBase.css +1 -1
  655. package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  656. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +9 -3
  657. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  658. package/dist/cssm/components/ModalPage/ModalPage.d.ts +16 -1
  659. package/dist/cssm/components/ModalPage/ModalPage.js +5 -1
  660. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  661. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +1 -0
  662. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  663. package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +14 -2
  664. package/dist/cssm/components/ModalRoot/ModalRoot.js +14 -11
  665. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  666. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  667. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  668. package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  669. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +10 -7
  670. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  671. package/dist/cssm/components/ModalRoot/types.d.ts +16 -1
  672. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  673. package/dist/cssm/components/ModalRoot/useModalManager.d.ts +6 -5
  674. package/dist/cssm/components/ModalRoot/useModalManager.js +54 -16
  675. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  676. package/dist/cssm/components/NativeSelect/NativeSelect.js +2 -1
  677. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  678. package/dist/cssm/components/Pagination/Pagination.css +1 -1
  679. package/dist/cssm/components/Pagination/Pagination.d.ts +3 -3
  680. package/dist/cssm/components/Pagination/Pagination.js +1 -1
  681. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  682. package/dist/cssm/components/Panel/Panel.js +2 -1
  683. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  684. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  685. package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -0
  686. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  687. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  688. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  689. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  690. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
  691. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  692. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  693. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +1 -0
  694. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  695. package/dist/cssm/components/Placeholder/Placeholder.js +3 -2
  696. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  697. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -0
  698. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  699. package/dist/cssm/components/Popper/Popper.js +2 -2
  700. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  701. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -1
  702. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  703. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +2 -1
  704. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  705. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  706. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  707. package/dist/cssm/components/Removable/Removable.css +1 -1
  708. package/dist/cssm/components/RichCell/RichCell.js +2 -1
  709. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  710. package/dist/cssm/components/RichTooltip/RichTooltip.js +2 -1
  711. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  712. package/dist/cssm/components/Root/Root.css +1 -1
  713. package/dist/cssm/components/Root/Root.js +8 -7
  714. package/dist/cssm/components/Root/Root.js.map +1 -1
  715. package/dist/cssm/components/Search/Search.css +1 -1
  716. package/dist/cssm/components/Search/Search.js +2 -1
  717. package/dist/cssm/components/Search/Search.js.map +1 -1
  718. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +19 -13
  719. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  720. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  721. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  722. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  723. package/dist/cssm/components/Select/Select.css +1 -1
  724. package/dist/cssm/components/Select/Select.d.ts +1 -2
  725. package/dist/cssm/components/Select/Select.js +4 -5
  726. package/dist/cssm/components/Select/Select.js.map +1 -1
  727. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +2 -1
  728. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  729. package/dist/cssm/components/Separator/Separator.js +3 -1
  730. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  731. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  732. package/dist/cssm/components/SimpleCell/SimpleCell.js +3 -2
  733. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  734. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  735. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  736. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -0
  737. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  738. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -0
  739. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  740. package/dist/cssm/components/Snackbar/Snackbar.js +2 -1
  741. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  742. package/dist/cssm/components/Spacing/Spacing.js +2 -1
  743. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  744. package/dist/cssm/components/SplitCol/SplitCol.js +2 -1
  745. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  746. package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
  747. package/dist/cssm/components/SplitLayout/SplitLayout.js +2 -1
  748. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  749. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
  750. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  751. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +3 -2
  752. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  753. package/dist/cssm/components/Switch/Switch.js +1 -0
  754. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  755. package/dist/cssm/components/Tabbar/Tabbar.js +1 -0
  756. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  757. package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
  758. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -1
  759. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  760. package/dist/cssm/components/Tabs/Tabs.css +1 -1
  761. package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
  762. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  763. package/dist/cssm/components/Tappable/Tappable.css +1 -1
  764. package/dist/cssm/components/Tappable/Tappable.js +5 -4
  765. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  766. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  767. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  768. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  769. package/dist/cssm/components/Tooltip/Tooltip.js +4 -4
  770. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  771. package/dist/cssm/components/Touch/Touch.js +9 -3
  772. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  773. package/dist/cssm/components/Touch/TouchContext.d.ts +1 -1
  774. package/dist/cssm/components/Touch/TouchContext.js +1 -1
  775. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  776. package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
  777. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  778. package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -0
  779. package/dist/cssm/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  780. package/dist/cssm/components/Typography/Paragraph/Paragraph.js +26 -0
  781. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -0
  782. package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
  783. package/dist/cssm/components/Typography/Subhead/Subhead.d.ts +1 -2
  784. package/dist/cssm/components/Typography/Subhead/Subhead.js +3 -7
  785. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  786. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  787. package/dist/cssm/components/Typography/Text/Text.js +1 -1
  788. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  789. package/dist/cssm/components/Typography/Title/Title.css +1 -1
  790. package/dist/cssm/components/Typography/Title/Title.d.ts +1 -2
  791. package/dist/cssm/components/Typography/Title/Title.js +3 -9
  792. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  793. package/dist/cssm/components/UsersStack/UsersStack.js +2 -1
  794. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  795. package/dist/cssm/components/View/View.css +1 -1
  796. package/dist/cssm/components/View/View.js +5 -0
  797. package/dist/cssm/components/View/View.js.map +1 -1
  798. package/dist/cssm/components/View/ViewIOS.css +1 -1
  799. package/dist/cssm/components/View/ViewInfinite.js +5 -0
  800. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  801. package/dist/cssm/components/View/utils.js +5 -2
  802. package/dist/cssm/components/View/utils.js.map +1 -1
  803. package/dist/cssm/components/WriteBar/WriteBar.css +1 -1
  804. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -2
  805. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  806. package/dist/cssm/helpers/scheme.js +2 -2
  807. package/dist/cssm/helpers/scheme.js.map +1 -1
  808. package/dist/cssm/hooks/useBridgeAdaptivity.d.ts +6 -0
  809. package/dist/cssm/hooks/useBridgeAdaptivity.js +68 -0
  810. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -0
  811. package/dist/cssm/hooks/useCalendar.js +1 -1
  812. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  813. package/dist/cssm/hooks/useKeyboard.d.ts +1 -1
  814. package/dist/cssm/hooks/useKeyboard.js +1 -1
  815. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  816. package/dist/cssm/hooks/usePagination.d.ts +3 -3
  817. package/dist/cssm/hooks/usePagination.js +3 -3
  818. package/dist/cssm/hooks/usePagination.js.map +1 -1
  819. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  820. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  821. package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -1
  822. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  823. package/dist/cssm/index.d.ts +20 -9
  824. package/dist/cssm/index.js +11 -13
  825. package/dist/cssm/index.js.map +1 -1
  826. package/dist/cssm/lib/calendar.js +4 -15
  827. package/dist/cssm/lib/calendar.js.map +1 -1
  828. package/dist/cssm/lib/date.d.ts +29 -0
  829. package/dist/cssm/lib/date.js +223 -0
  830. package/dist/cssm/lib/date.js.map +1 -0
  831. package/dist/cssm/lib/getNavId.d.ts +2 -1
  832. package/dist/cssm/lib/getNavId.js +1 -1
  833. package/dist/cssm/lib/getNavId.js.map +1 -1
  834. package/dist/cssm/lib/warnOnce.d.ts +2 -1
  835. package/dist/cssm/lib/warnOnce.js +3 -1
  836. package/dist/cssm/lib/warnOnce.js.map +1 -1
  837. package/dist/cssm/styles/common.css +1 -1
  838. package/dist/cssm/styles/components.css +21 -6
  839. package/dist/cssm/styles/constants.css +8 -1
  840. package/dist/cssm/styles/themes.css +1 -1
  841. package/dist/cssm/styles/unstable.css +1 -1
  842. package/dist/cssm/tokenized/index.d.ts +22 -4
  843. package/dist/cssm/tokenized/index.js +13 -4
  844. package/dist/cssm/tokenized/index.js.map +1 -1
  845. package/dist/helpers/scheme.js +2 -2
  846. package/dist/helpers/scheme.js.map +1 -1
  847. package/dist/hooks/useBridgeAdaptivity.d.ts +6 -0
  848. package/dist/hooks/useBridgeAdaptivity.js +68 -0
  849. package/dist/hooks/useBridgeAdaptivity.js.map +1 -0
  850. package/dist/hooks/useCalendar.js +1 -1
  851. package/dist/hooks/useCalendar.js.map +1 -1
  852. package/dist/hooks/useKeyboard.d.ts +1 -1
  853. package/dist/hooks/useKeyboard.js +1 -1
  854. package/dist/hooks/useKeyboard.js.map +1 -1
  855. package/dist/hooks/usePagination.d.ts +3 -3
  856. package/dist/hooks/usePagination.js +3 -3
  857. package/dist/hooks/usePagination.js.map +1 -1
  858. package/dist/hooks/usePatchChildrenRef.js +1 -1
  859. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  860. package/dist/hooks/useWaitTransitionFinish.js +5 -1
  861. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  862. package/dist/index.d.ts +20 -9
  863. package/dist/index.js +11 -13
  864. package/dist/index.js.map +1 -1
  865. package/dist/lib/calendar.js +4 -15
  866. package/dist/lib/calendar.js.map +1 -1
  867. package/dist/lib/date.d.ts +29 -0
  868. package/dist/lib/date.js +223 -0
  869. package/dist/lib/date.js.map +1 -0
  870. package/dist/lib/getNavId.d.ts +2 -1
  871. package/dist/lib/getNavId.js +1 -1
  872. package/dist/lib/getNavId.js.map +1 -1
  873. package/dist/lib/warnOnce.d.ts +2 -1
  874. package/dist/lib/warnOnce.js +3 -1
  875. package/dist/lib/warnOnce.js.map +1 -1
  876. package/dist/tokenized/index.d.ts +22 -4
  877. package/dist/tokenized/index.js +13 -4
  878. package/dist/tokenized/index.js.map +1 -1
  879. package/dist/unstable.css +1 -1
  880. package/dist/unstable.css.map +1 -1
  881. package/dist/vkui.css +22 -7
  882. package/dist/vkui.css.map +1 -1
  883. package/eslint-plugin-vkui/index.js +64 -0
  884. package/eslint-plugin-vkui/package.json +5 -0
  885. package/jest.unit.config.js +4 -1
  886. package/package.json +4 -3
  887. package/postcss-plugin-vk-sans/__tests__/custom_properties.css +4 -0
  888. package/postcss-plugin-vk-sans/index.js +343 -0
  889. package/src/components/ActionSheet/ActionSheet.tsx +1 -1
  890. package/src/components/ActionSheet/ActionSheetDropdown.tsx +1 -0
  891. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +1 -1
  892. package/src/components/ActionSheetItem/ActionSheetItem.tsx +3 -2
  893. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +50 -19
  894. package/src/components/Alert/Alert.tsx +5 -4
  895. package/src/components/AppRoot/AppRoot.tsx +2 -1
  896. package/src/components/Avatar/Avatar.tsx +3 -0
  897. package/src/components/Banner/Banner.tsx +3 -2
  898. package/src/components/Button/Button.css +7 -7
  899. package/src/components/Button/Button.tsx +25 -36
  900. package/src/components/Calendar/Calendar.tsx +4 -3
  901. package/src/components/Calendar/Readme.md +2 -2
  902. package/src/components/CalendarDay/CalendarDay.tsx +3 -0
  903. package/src/components/CalendarDays/CalendarDays.tsx +1 -1
  904. package/src/components/CalendarHeader/CalendarHeader.tsx +11 -10
  905. package/src/components/CalendarRange/CalendarRange.tsx +2 -5
  906. package/src/components/CalendarRange/Readme.md +2 -2
  907. package/src/components/CalendarTime/CalendarTime.tsx +3 -3
  908. package/src/components/CardScroll/CardScroll.tsx +3 -1
  909. package/src/components/Cell/Cell.tsx +4 -3
  910. package/src/components/CellButton/CellButton.tsx +1 -0
  911. package/src/components/Chip/Chip.tsx +1 -0
  912. package/src/components/ChipsInput/ChipsInput.css +4 -4
  913. package/src/components/ChipsInput/ChipsInput.tsx +7 -8
  914. package/src/components/ChipsSelect/ChipsSelect.css +1 -1
  915. package/src/components/ChipsSelect/ChipsSelect.tsx +9 -7
  916. package/src/components/ClickPopper/ClickPopper.tsx +1 -1
  917. package/src/components/ContentCard/ContentCard.tsx +2 -1
  918. package/src/components/CustomSelect/CustomSelect.css +1 -1
  919. package/src/components/CustomSelect/CustomSelect.tsx +23 -20
  920. package/src/components/CustomSelectDropdown/CustomSelectDropdown.css +10 -5
  921. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +6 -5
  922. package/src/components/CustomSelectOption/CustomSelectOption.css +17 -5
  923. package/src/components/CustomSelectOption/CustomSelectOption.tsx +55 -17
  924. package/src/components/CustomSelectOption/Readme.md +47 -28
  925. package/src/components/DateInput/DateInput.css +1 -1
  926. package/src/components/DateInput/DateInput.tsx +3 -3
  927. package/src/components/DateInput/Readme.md +1 -1
  928. package/src/components/DatePicker/DatePicker.tsx +2 -2
  929. package/src/components/DateRangeInput/DateRangeInput.tsx +3 -3
  930. package/src/components/DateRangeInput/Readme.md +1 -1
  931. package/src/components/Epic/Readme.md +5 -1
  932. package/src/components/File/File.tsx +1 -1
  933. package/src/components/FixedLayout/FixedLayout.tsx +1 -0
  934. package/src/components/FormField/FormField.css +20 -45
  935. package/src/components/FormField/FormField.tsx +5 -6
  936. package/src/components/FormItem/FormItem.tsx +2 -1
  937. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +1 -0
  938. package/src/components/Gallery/Gallery.tsx +14 -2
  939. package/src/components/GridAvatar/GridAvatar.css +10 -13
  940. package/src/components/GridAvatar/GridAvatar.tsx +12 -24
  941. package/src/components/Group/Group.tsx +1 -0
  942. package/src/components/Header/Header.tsx +9 -3
  943. package/src/components/HorizontalCell/HorizontalCell.tsx +1 -1
  944. package/src/components/HorizontalScroll/HorizontalScroll.tsx +41 -39
  945. package/src/components/InfoRow/InfoRow.tsx +1 -1
  946. package/src/components/Input/Input.css +4 -4
  947. package/src/components/Input/Input.tsx +5 -9
  948. package/src/components/InputLike/InputLike.css +1 -1
  949. package/src/components/InputLike/InputLikeDivider.css +1 -1
  950. package/src/components/List/List.tsx +1 -0
  951. package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -0
  952. package/src/components/ModalCard/ModalCard.css +0 -10
  953. package/src/components/ModalCard/ModalCard.tsx +1 -0
  954. package/src/components/ModalCardBase/ModalCardBase.css +10 -0
  955. package/src/components/ModalCardBase/ModalCardBase.tsx +15 -2
  956. package/src/components/ModalPage/ModalPage.tsx +19 -0
  957. package/src/components/ModalPageHeader/ModalPageHeader.tsx +1 -0
  958. package/src/components/ModalRoot/ModalRoot.tsx +33 -10
  959. package/src/components/ModalRoot/ModalRootAdaptive.tsx +17 -2
  960. package/src/components/ModalRoot/ModalRootDesktop.tsx +25 -7
  961. package/src/components/ModalRoot/Readme.md +112 -0
  962. package/src/components/ModalRoot/types.ts +16 -1
  963. package/src/components/ModalRoot/useModalManager.tsx +60 -15
  964. package/src/components/NativeSelect/NativeSelect.tsx +1 -0
  965. package/src/components/Pagination/Pagination.tsx +4 -4
  966. package/src/components/Pagination/Readme.md +1 -1
  967. package/src/components/Panel/Panel.tsx +1 -0
  968. package/src/components/PanelHeader/PanelHeader.tsx +1 -0
  969. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -0
  970. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +4 -2
  971. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +1 -0
  972. package/src/components/Placeholder/Placeholder.tsx +2 -1
  973. package/src/components/PopoutWrapper/PopoutWrapper.tsx +1 -0
  974. package/src/components/Popper/Popper.tsx +2 -2
  975. package/src/components/PromoBanner/PromoBanner.tsx +1 -1
  976. package/src/components/PullToRefresh/PullToRefresh.tsx +1 -0
  977. package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +1 -0
  978. package/src/components/RichCell/RichCell.tsx +2 -1
  979. package/src/components/RichTooltip/Readme.md +2 -2
  980. package/src/components/RichTooltip/RichTooltip.tsx +1 -0
  981. package/src/components/Root/Root.css +4 -11
  982. package/src/components/Root/Root.tsx +7 -6
  983. package/src/components/Search/Search.tsx +2 -1
  984. package/src/components/SegmentedControl/SegmentedControl.tsx +20 -10
  985. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  986. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.tsx +1 -0
  987. package/src/components/Select/Select.css +2 -2
  988. package/src/components/Select/Select.tsx +3 -4
  989. package/src/components/SelectMimicry/SelectMimicry.tsx +1 -0
  990. package/src/components/Separator/Separator.tsx +2 -0
  991. package/src/components/SimpleCell/SimpleCell.tsx +3 -2
  992. package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +7 -2
  993. package/src/components/SliderSwitch/SliderSwitch.tsx +1 -0
  994. package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -0
  995. package/src/components/Snackbar/Snackbar.tsx +2 -1
  996. package/src/components/Spacing/Spacing.tsx +1 -0
  997. package/src/components/SplitCol/SplitCol.tsx +1 -0
  998. package/src/components/SplitLayout/SplitLayout.tsx +1 -0
  999. package/src/components/SubnavigationBar/SubnavigationBar.tsx +2 -1
  1000. package/src/components/SubnavigationButton/SubnavigationButton.tsx +2 -1
  1001. package/src/components/Switch/Switch.tsx +1 -0
  1002. package/src/components/Tabbar/Tabbar.tsx +1 -0
  1003. package/src/components/TabbarItem/TabbarItem.css +1 -0
  1004. package/src/components/TabbarItem/TabbarItem.tsx +1 -0
  1005. package/src/components/Tabs/Readme.md +7 -7
  1006. package/src/components/TabsItem/TabsItem.tsx +2 -1
  1007. package/src/components/Tappable/Tappable.css +5 -0
  1008. package/src/components/Tappable/Tappable.tsx +5 -2
  1009. package/src/components/TextTooltip/TextTooltip.tsx +1 -1
  1010. package/src/components/Tooltip/Tooltip.tsx +5 -4
  1011. package/src/components/Touch/Touch.tsx +6 -3
  1012. package/src/components/Touch/TouchContext.ts +1 -1
  1013. package/src/components/Typography/Caption/Caption.css +3 -3
  1014. package/src/components/Typography/Paragraph/Paragraph.css +17 -0
  1015. package/src/components/Typography/Paragraph/Paragraph.tsx +42 -0
  1016. package/src/components/Typography/Paragraph/Readme.md +19 -0
  1017. package/src/components/Typography/Subhead/Subhead.tsx +3 -7
  1018. package/src/components/Typography/Text/Text.tsx +1 -1
  1019. package/src/components/Typography/Title/Title.tsx +7 -10
  1020. package/src/components/UsersStack/UsersStack.tsx +2 -1
  1021. package/src/components/View/Readme.md +1 -1
  1022. package/src/components/View/View.css +1 -1
  1023. package/src/components/View/View.tsx +4 -0
  1024. package/src/components/View/ViewIOS.css +2 -2
  1025. package/src/components/View/ViewInfinite.tsx +4 -0
  1026. package/src/components/View/utils.ts +2 -1
  1027. package/src/components/WriteBarIcon/WriteBarIcon.tsx +3 -1
  1028. package/src/helpers/scheme.ts +3 -2
  1029. package/src/hooks/useBridgeAdaptivity.ts +83 -0
  1030. package/src/hooks/useCalendar.ts +1 -1
  1031. package/src/hooks/useKeyboard.ts +1 -1
  1032. package/src/hooks/usePagination.ts +5 -5
  1033. package/src/hooks/usePatchChildrenRef.ts +2 -2
  1034. package/src/hooks/useWaitTransitionFinish.ts +7 -1
  1035. package/src/index.ts +20 -9
  1036. package/src/lib/calendar.ts +7 -7
  1037. package/src/lib/date.ts +274 -0
  1038. package/src/lib/getNavId.ts +4 -2
  1039. package/src/lib/warnOnce.ts +9 -3
  1040. package/src/styles/components.css +1 -0
  1041. package/src/styles/constants.css +8 -1
  1042. package/src/testing/utils.tsx +10 -1
  1043. package/src/tokenized/index.ts +31 -4
  1044. package/tsconfig.json +2 -0
  1045. package/.cache/ts/src/helpers/typography.d.ts +0 -1
  1046. package/dist/cjs/helpers/typography.d.ts +0 -1
  1047. package/dist/cjs/helpers/typography.js +0 -25
  1048. package/dist/cjs/helpers/typography.js.map +0 -1
  1049. package/dist/cssm/helpers/typography.d.ts +0 -1
  1050. package/dist/cssm/helpers/typography.js +0 -18
  1051. package/dist/cssm/helpers/typography.js.map +0 -1
  1052. package/dist/helpers/typography.d.ts +0 -1
  1053. package/dist/helpers/typography.js +0 -18
  1054. package/dist/helpers/typography.js.map +0 -1
  1055. package/src/helpers/typography.ts +0 -24
@@ -35,11 +35,11 @@ var _IconButton = _interopRequireDefault(require("../IconButton/IconButton"));
35
35
 
36
36
  var _Headline = _interopRequireDefault(require("../Typography/Headline/Headline"));
37
37
 
38
- var _Subhead = _interopRequireDefault(require("../Typography/Subhead/Subhead"));
38
+ var _Subhead = require("../Typography/Subhead/Subhead");
39
39
 
40
40
  var _Text = _interopRequireDefault(require("../Typography/Text/Text"));
41
41
 
42
- var _Title = _interopRequireDefault(require("../Typography/Title/Title"));
42
+ var _Title = require("../Typography/Title/Title");
43
43
 
44
44
  var _excluded = ["size"],
45
45
  _excluded2 = ["size"],
@@ -48,7 +48,7 @@ var _excluded = ["size"],
48
48
  var BannerHeader = function BannerHeader(_ref) {
49
49
  var size = _ref.size,
50
50
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
51
- return size === "m" ? (0, _jsxRuntime.createScopedElement)(_Title.default, (0, _extends2.default)({
51
+ return size === "m" ? (0, _jsxRuntime.createScopedElement)(_Title.Title, (0, _extends2.default)({
52
52
  level: "2",
53
53
  weight: "2"
54
54
  }, restProps)) : (0, _jsxRuntime.createScopedElement)(_Headline.default, (0, _extends2.default)({
@@ -61,7 +61,7 @@ var BannerSubheader = function BannerSubheader(_ref2) {
61
61
  restProps = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
62
62
  return size === "m" ? (0, _jsxRuntime.createScopedElement)(_Text.default, (0, _extends2.default)({
63
63
  weight: "regular"
64
- }, restProps)) : (0, _jsxRuntime.createScopedElement)(_Subhead.default, restProps);
64
+ }, restProps)) : (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, restProps);
65
65
  };
66
66
 
67
67
  var Banner = function Banner(props) {
@@ -81,6 +81,7 @@ var Banner = function Banner(props) {
81
81
  dismissLabel = props.dismissLabel,
82
82
  restProps = (0, _objectWithoutProperties2.default)(props, _excluded3);
83
83
  return (0, _jsxRuntime.createScopedElement)("section", (0, _extends2.default)({}, restProps, {
84
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
84
85
  vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("Banner", platform), "Banner--md-".concat(mode), "Banner--sz-".concat(size), {
85
86
  "Banner--inverted": mode === "image" && imageTheme === "dark"
86
87
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"names":["BannerHeader","size","restProps","BannerSubheader","Banner","props","platform","mode","imageTheme","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","IOS","undefined","React","Children","count","ANDROID","VKCOM","defaultProps"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { HasComponent } from \"../../types\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { ANDROID, IOS, VKCOM } from \"../../lib/platform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport {\n Icon24Chevron,\n Icon24DismissSubstract,\n Icon24DismissDark,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport Tappable from \"../Tappable/Tappable\";\nimport IconButton from \"../IconButton/IconButton\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport Text from \"../Typography/Text/Text\";\nimport Title from \"../Typography/Title/Title\";\nimport \"./Banner.css\";\n\nexport interface BannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: \"tint\" | \"image\";\n size?: \"s\" | \"m\";\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: \"dismiss\" | \"expand\";\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера. <br />\n * Это свойство следует использовать без указания `header` и `subheader`.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: \"light\" | \"dark\";\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки, отображаемые в баннере.\n *\n * - В режиме `tint` или в `image` со светлым фоном рекомендуется использовать только `<Button mode=\"primary\" />` или `<Button mode=\"tertiary\" hasHover={false} />`.\n * - В режиме `image` с тёмным фоном – `<Button mode=\"overlay_primary\" />`.\n */\n actions?: React.ReactNode;\n}\n\ntype BannerTypographyProps = Pick<BannerProps, \"size\"> & HasComponent;\n\nconst BannerHeader: React.FC<BannerTypographyProps> = ({\n size,\n ...restProps\n}) => {\n return size === \"m\" ? (\n <Title level=\"2\" weight=\"2\" {...restProps} />\n ) : (\n <Headline weight=\"medium\" {...restProps} />\n );\n};\n\nconst BannerSubheader: React.FC<BannerTypographyProps> = ({\n size,\n ...restProps\n}) => {\n return size === \"m\" ? (\n <Text weight=\"regular\" {...restProps} />\n ) : (\n <Subhead {...restProps} />\n );\n};\n\nconst Banner: React.FC<BannerProps> = (props: BannerProps) => {\n const platform = usePlatform();\n const {\n mode,\n imageTheme,\n size,\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel,\n ...restProps\n } = props;\n\n return (\n <section\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"Banner\", platform),\n `Banner--md-${mode}`,\n `Banner--sz-${size}`,\n {\n \"Banner--inverted\": mode === \"image\" && imageTheme === \"dark\",\n }\n )}\n >\n <Tappable\n vkuiClass=\"Banner__in\"\n activeMode={platform === IOS ? \"opacity\" : \"background\"}\n disabled={asideMode !== \"expand\"}\n role={asideMode === \"expand\" ? \"button\" : undefined}\n >\n {mode === \"image\" && background && (\n <div aria-hidden=\"true\" vkuiClass=\"Banner__bg\">\n {background}\n </div>\n )}\n\n {before && <div vkuiClass=\"Banner__before\">{before}</div>}\n\n <div vkuiClass=\"Banner__content\">\n {hasReactNode(header) && (\n <BannerHeader\n size={size}\n Component=\"span\"\n vkuiClass=\"Banner__header\"\n >\n {header}\n </BannerHeader>\n )}\n {hasReactNode(subheader) && (\n <BannerSubheader\n Component=\"span\"\n size={size}\n vkuiClass=\"Banner__subheader\"\n >\n {subheader}\n </BannerSubheader>\n )}\n {hasReactNode(text) && (\n <Text weight=\"regular\" vkuiClass=\"Banner__text\">\n {text}\n </Text>\n )}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div vkuiClass=\"Banner__actions\">{actions}</div>\n )}\n </div>\n\n {!!asideMode && (\n <div vkuiClass=\"Banner__aside\">\n {asideMode === \"expand\" && <Icon24Chevron />}\n\n {asideMode === \"dismiss\" && (\n <IconButton\n aria-label={dismissLabel}\n vkuiClass=\"Banner__dismiss\"\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {(platform === ANDROID || platform === VKCOM) && (\n <Icon24Cancel />\n )}\n {platform === IOS &&\n (mode === \"image\" ? (\n <Icon24DismissDark />\n ) : (\n <Icon24DismissSubstract />\n ))}\n </IconButton>\n )}\n </div>\n )}\n </Tappable>\n </section>\n );\n};\n\nBanner.defaultProps = {\n dismissLabel: \"Скрыть\",\n mode: \"tint\",\n size: \"s\",\n imageTheme: \"dark\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Banner;\n"],"file":"Banner.js"}
1
+ {"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"names":["BannerHeader","size","restProps","BannerSubheader","Banner","props","platform","mode","imageTheme","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","IOS","undefined","React","Children","count","ANDROID","VKCOM","defaultProps"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { HasComponent } from \"../../types\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { ANDROID, IOS, VKCOM } from \"../../lib/platform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport {\n Icon24Chevron,\n Icon24DismissSubstract,\n Icon24DismissDark,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport Tappable from \"../Tappable/Tappable\";\nimport IconButton from \"../IconButton/IconButton\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport Text from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport \"./Banner.css\";\n\nexport interface BannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: \"tint\" | \"image\";\n size?: \"s\" | \"m\";\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: \"dismiss\" | \"expand\";\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера. <br />\n * Это свойство следует использовать без указания `header` и `subheader`.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: \"light\" | \"dark\";\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки, отображаемые в баннере.\n *\n * - В режиме `tint` или в `image` со светлым фоном рекомендуется использовать только `<Button mode=\"primary\" />` или `<Button mode=\"tertiary\" hasHover={false} />`.\n * - В режиме `image` с тёмным фоном – `<Button mode=\"overlay_primary\" />`.\n */\n actions?: React.ReactNode;\n}\n\ntype BannerTypographyProps = Pick<BannerProps, \"size\"> & HasComponent;\n\nconst BannerHeader: React.FC<BannerTypographyProps> = ({\n size,\n ...restProps\n}) => {\n return size === \"m\" ? (\n <Title level=\"2\" weight=\"2\" {...restProps} />\n ) : (\n <Headline weight=\"medium\" {...restProps} />\n );\n};\n\nconst BannerSubheader: React.FC<BannerTypographyProps> = ({\n size,\n ...restProps\n}) => {\n return size === \"m\" ? (\n <Text weight=\"regular\" {...restProps} />\n ) : (\n <Subhead {...restProps} />\n );\n};\n\nconst Banner: React.FC<BannerProps> = (props: BannerProps) => {\n const platform = usePlatform();\n const {\n mode,\n imageTheme,\n size,\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel,\n ...restProps\n } = props;\n\n return (\n <section\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"Banner\", platform),\n `Banner--md-${mode}`,\n `Banner--sz-${size}`,\n {\n \"Banner--inverted\": mode === \"image\" && imageTheme === \"dark\",\n }\n )}\n >\n <Tappable\n vkuiClass=\"Banner__in\"\n activeMode={platform === IOS ? \"opacity\" : \"background\"}\n disabled={asideMode !== \"expand\"}\n role={asideMode === \"expand\" ? \"button\" : undefined}\n >\n {mode === \"image\" && background && (\n <div aria-hidden=\"true\" vkuiClass=\"Banner__bg\">\n {background}\n </div>\n )}\n\n {before && <div vkuiClass=\"Banner__before\">{before}</div>}\n\n <div vkuiClass=\"Banner__content\">\n {hasReactNode(header) && (\n <BannerHeader\n size={size}\n Component=\"span\"\n vkuiClass=\"Banner__header\"\n >\n {header}\n </BannerHeader>\n )}\n {hasReactNode(subheader) && (\n <BannerSubheader\n Component=\"span\"\n size={size}\n vkuiClass=\"Banner__subheader\"\n >\n {subheader}\n </BannerSubheader>\n )}\n {hasReactNode(text) && (\n <Text weight=\"regular\" vkuiClass=\"Banner__text\">\n {text}\n </Text>\n )}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div vkuiClass=\"Banner__actions\">{actions}</div>\n )}\n </div>\n\n {!!asideMode && (\n <div vkuiClass=\"Banner__aside\">\n {asideMode === \"expand\" && <Icon24Chevron />}\n\n {asideMode === \"dismiss\" && (\n <IconButton\n aria-label={dismissLabel}\n vkuiClass=\"Banner__dismiss\"\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {(platform === ANDROID || platform === VKCOM) && (\n <Icon24Cancel />\n )}\n {platform === IOS &&\n (mode === \"image\" ? (\n <Icon24DismissDark />\n ) : (\n <Icon24DismissSubstract />\n ))}\n </IconButton>\n )}\n </div>\n )}\n </Tappable>\n </section>\n );\n};\n\nBanner.defaultProps = {\n dismissLabel: \"Скрыть\",\n mode: \"tint\",\n size: \"s\",\n imageTheme: \"dark\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Banner;\n"],"file":"Banner.js"}
@@ -16,5 +16,4 @@ export interface VKUIButtonProps extends HasAlign {
16
16
  }
17
17
  export interface ButtonProps extends Omit<TappableProps, "size">, VKUIButtonProps {
18
18
  }
19
- declare const _default: React.FC<Pick<ButtonProps, "max" | "required" | "high" | "low" | "disabled" | "default" | "start" | "open" | "media" | "loading" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "color" | "content" | "size" | "wrap" | "after" | "multiple" | "appearance" | "height" | "translate" | "width" | "prefix" | "src" | "children" | "className" | "id" | "lang" | "method" | "min" | "name" | "target" | "type" | "role" | "tabIndex" | "crossOrigin" | "href" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDownCapture" | "onMouseEnter" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancelCapture" | "onTouchEndCapture" | "onTouchMoveCapture" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "srcLang" | "value" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "readOnly" | "step" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "align" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "poster" | "challenge" | "keyType" | "keyParams" | "onStart" | "onMove" | "onLeave" | "onEnter" | "onEnd" | "Component" | "getRootRef" | "stopPropagation" | "activeEffectDelay" | "hasHover" | "hoverMode" | "hasActive" | "activeMode" | "focusVisibleMode" | "before" | "stretched"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
20
- export default _default;
19
+ export declare const Button: React.FC<Pick<ButtonProps, "max" | "required" | "high" | "low" | "disabled" | "default" | "start" | "open" | "media" | "loading" | "hidden" | "cite" | "data" | "dir" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "async" | "defer" | "manifest" | "color" | "content" | "size" | "wrap" | "after" | "multiple" | "appearance" | "height" | "translate" | "width" | "prefix" | "src" | "children" | "className" | "id" | "lang" | "method" | "min" | "name" | "target" | "type" | "role" | "tabIndex" | "crossOrigin" | "href" | "mode" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDownCapture" | "onMouseEnter" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancelCapture" | "onTouchEndCapture" | "onTouchMoveCapture" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "classID" | "useMap" | "wmode" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "as" | "hrefLang" | "integrity" | "rel" | "sizes" | "charSet" | "kind" | "srcLang" | "value" | "download" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "srcSet" | "accept" | "capture" | "checked" | "maxLength" | "minLength" | "readOnly" | "step" | "htmlFor" | "httpEquiv" | "optimum" | "reversed" | "selected" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "align" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "poster" | "challenge" | "keyType" | "keyParams" | "onStart" | "onMove" | "onLeave" | "onEnter" | "onEnd" | "Component" | "getRootRef" | "stopPropagation" | "activeEffectDelay" | "hasHover" | "hoverMode" | "hasActive" | "activeMode" | "focusVisibleMode" | "before" | "stretched"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
@@ -7,29 +7,27 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.default = void 0;
10
+ exports.Button = void 0;
11
11
 
12
12
  var _jsxRuntime = require("../../lib/jsxRuntime");
13
13
 
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
14
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
17
15
 
18
16
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
17
 
20
18
  var React = _interopRequireWildcard(require("react"));
21
19
 
22
- var _classNames2 = require("../../lib/classNames");
20
+ var _classNames = require("../../lib/classNames");
23
21
 
24
22
  var _ConfigProviderContext = require("../ConfigProvider/ConfigProviderContext");
25
23
 
26
24
  var _Tappable = _interopRequireDefault(require("../Tappable/Tappable"));
27
25
 
28
- var _Title = _interopRequireDefault(require("../Typography/Title/Title"));
26
+ var _Title = require("../Typography/Title/Title");
29
27
 
30
28
  var _Text = _interopRequireDefault(require("../Typography/Text/Text"));
31
29
 
32
- var _Subhead = _interopRequireDefault(require("../Typography/Subhead/Subhead"));
30
+ var _Subhead = require("../Typography/Subhead/Subhead");
33
31
 
34
32
  var _Caption = require("../Typography/Caption/Caption");
35
33
 
@@ -44,7 +42,7 @@ var _Spinner = _interopRequireDefault(require("../Spinner/Spinner"));
44
42
  var _Headline = _interopRequireDefault(require("../Typography/Headline/Headline"));
45
43
 
46
44
  var _excluded = ["size", "sizeY", "platform"],
47
- _excluded2 = ["size", "mode", "appearance", "stretched", "align", "children", "before", "after", "getRootRef", "sizeY", "Component", "loading", "onClick"];
45
+ _excluded2 = ["size", "mode", "appearance", "stretched", "align", "children", "before", "after", "getRootRef", "sizeY", "Component", "loading", "onClick", "stopPropagation"];
48
46
 
49
47
  var ButtonTypography = function ButtonTypography(props) {
50
48
  var size = props.size,
@@ -67,14 +65,14 @@ var ButtonTypography = function ButtonTypography(props) {
67
65
  }, restProps));
68
66
  }
69
67
 
70
- return (0, _jsxRuntime.createScopedElement)(_Title.default, (0, _extends2.default)({
68
+ return (0, _jsxRuntime.createScopedElement)(_Title.Title, (0, _extends2.default)({
71
69
  level: "3",
72
70
  weight: "2"
73
71
  }, restProps));
74
72
 
75
73
  case "m":
76
74
  if (isCompact) {
77
- return (0, _jsxRuntime.createScopedElement)(_Subhead.default, (0, _extends2.default)({
75
+ return (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, (0, _extends2.default)({
78
76
  weight: platform === _platform.VKCOM ? "3" : "2"
79
77
  }, restProps));
80
78
  }
@@ -86,7 +84,7 @@ var ButtonTypography = function ButtonTypography(props) {
86
84
  case "s":
87
85
  default:
88
86
  if (platform === _platform.IOS) {
89
- return (0, _jsxRuntime.createScopedElement)(_Subhead.default, (0, _extends2.default)({
87
+ return (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, (0, _extends2.default)({
90
88
  weight: "2"
91
89
  }, restProps));
92
90
  }
@@ -101,7 +99,7 @@ var ButtonTypography = function ButtonTypography(props) {
101
99
  }, restProps));
102
100
  }
103
101
 
104
- return (0, _jsxRuntime.createScopedElement)(_Subhead.default, (0, _extends2.default)({
102
+ return (0, _jsxRuntime.createScopedElement)(_Subhead.Subhead, (0, _extends2.default)({
105
103
  weight: "2"
106
104
  }, restProps));
107
105
  }
@@ -153,26 +151,31 @@ function resolveButtonAppearance(appearance, mode) {
153
151
  };
154
152
  }
155
153
 
156
- var Button = function Button(props) {
157
- var _classNames;
158
-
154
+ var ButtonComponent = function ButtonComponent(_ref) {
155
+ var _ref$size = _ref.size,
156
+ size = _ref$size === void 0 ? "s" : _ref$size,
157
+ _ref$mode = _ref.mode,
158
+ mode = _ref$mode === void 0 ? "primary" : _ref$mode,
159
+ appearance = _ref.appearance,
160
+ _ref$stretched = _ref.stretched,
161
+ stretched = _ref$stretched === void 0 ? false : _ref$stretched,
162
+ _ref$align = _ref.align,
163
+ align = _ref$align === void 0 ? "center" : _ref$align,
164
+ children = _ref.children,
165
+ before = _ref.before,
166
+ after = _ref.after,
167
+ getRootRef = _ref.getRootRef,
168
+ sizeY = _ref.sizeY,
169
+ _ref$Component = _ref.Component,
170
+ Component = _ref$Component === void 0 ? "button" : _ref$Component,
171
+ loading = _ref.loading,
172
+ onClick = _ref.onClick,
173
+ _ref$stopPropagation = _ref.stopPropagation,
174
+ stopPropagation = _ref$stopPropagation === void 0 ? true : _ref$stopPropagation,
175
+ restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded2);
159
176
  var platform = (0, _usePlatform.usePlatform)();
160
- var size = props.size,
161
- mode = props.mode,
162
- appearance = props.appearance,
163
- stretched = props.stretched,
164
- align = props.align,
165
- children = props.children,
166
- before = props.before,
167
- after = props.after,
168
- getRootRef = props.getRootRef,
169
- sizeY = props.sizeY,
170
- _props$Component = props.Component,
171
- Component = _props$Component === void 0 ? "button" : _props$Component,
172
- loading = props.loading,
173
- onClick = props.onClick,
174
- restProps = (0, _objectWithoutProperties2.default)(props, _excluded2);
175
177
  var hasIcons = Boolean(before || after);
178
+ var hasIconOnly = !children && Boolean(after) !== Boolean(before);
176
179
 
177
180
  var _resolveButtonAppeara = resolveButtonAppearance(appearance, mode),
178
181
  resolvedMode = _resolveButtonAppeara.resolvedMode,
@@ -183,7 +186,8 @@ var Button = function Button(props) {
183
186
  Component: restProps.href ? "a" : Component,
184
187
  onClick: loading ? undefined : onClick,
185
188
  focusVisibleMode: "outside",
186
- vkuiClass: (0, _classNames2.classNames)("Button", "Button--sz-".concat(size), "Button--lvl-".concat(resolvedMode), "Button--clr-".concat(resolvedAppearance), "Button--aln-".concat(align), "Button--sizeY-".concat(sizeY), (_classNames = {}, (0, _defineProperty2.default)(_classNames, "Button--stretched", stretched), (0, _defineProperty2.default)(_classNames, "Button--with-icon", hasIcons), (0, _defineProperty2.default)(_classNames, "Button--singleIcon", Boolean(!children && !after && before || !children && after && !before)), _classNames)),
189
+ stopPropagation: stopPropagation,
190
+ vkuiClass: (0, _classNames.classNames)("Button", "Button--sz-".concat(size), "Button--lvl-".concat(resolvedMode), "Button--clr-".concat(resolvedAppearance), "Button--aln-".concat(align), "Button--sizeY-".concat(sizeY), stretched && "Button--stretched", hasIcons && "Button--with-icon", hasIconOnly && "Button--singleIcon"),
187
191
  getRootRef: getRootRef,
188
192
  hoverMode: hasNewTokens ? "Button--hover" : "background",
189
193
  activeMode: hasNewTokens ? "Button--active" : "opacity"
@@ -205,17 +209,8 @@ var Button = function Button(props) {
205
209
  }, after)));
206
210
  };
207
211
 
208
- Button.defaultProps = {
209
- mode: "primary",
210
- align: "center",
211
- size: "s",
212
- stretched: false,
213
- stopPropagation: true
214
- }; // eslint-disable-next-line import/no-default-export
215
-
216
- var _default = (0, _withAdaptivity.withAdaptivity)(Button, {
212
+ var Button = (0, _withAdaptivity.withAdaptivity)(ButtonComponent, {
217
213
  sizeY: true
218
214
  });
219
-
220
- exports.default = _default;
215
+ exports.Button = Button;
221
216
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Button/Button.tsx"],"names":["ButtonTypography","props","size","sizeY","platform","restProps","isCompact","SizeType","COMPACT","ANDROID","VKCOM","IOS","resolveButtonAppearance","appearance","mode","resolvedAppearance","resolvedMode","undefined","Button","stretched","align","children","before","after","getRootRef","Component","loading","onClick","hasIcons","Boolean","hasNewTokens","React","useContext","ConfigProviderContext","href","defaultProps","stopPropagation"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;;;;AAoCA,IAAMA,gBAAiD,GAAG,SAApDA,gBAAoD,CACxDC,KADwD,EAErD;AACH,MAAQC,IAAR,GAAgDD,KAAhD,CAAQC,IAAR;AAAA,MAAcC,KAAd,GAAgDF,KAAhD,CAAcE,KAAd;AAAA,MAAqBC,QAArB,GAAgDH,KAAhD,CAAqBG,QAArB;AAAA,MAAkCC,SAAlC,0CAAgDJ,KAAhD;AACA,MAAMK,SAAS,GAAGH,KAAK,KAAKI,yBAASC,OAArC;;AAEA,UAAQN,IAAR;AACE,SAAK,GAAL;AACE,UAAII,SAAJ,EAAe;AACb,eAAO,qCAAC,aAAD;AAAM,UAAA,MAAM,EAAC;AAAb,WAA0BD,SAA1B,EAAP;AACD;;AACD,UAAID,QAAQ,KAAKK,iBAAjB,EAA0B;AACxB,eAAO,qCAAC,iBAAD;AAAU,UAAA,MAAM,EAAC;AAAjB,WAA8BJ,SAA9B,EAAP;AACD;;AACD,aAAO,qCAAC,cAAD;AAAO,QAAA,KAAK,EAAC,GAAb;AAAiB,QAAA,MAAM,EAAC;AAAxB,SAAgCA,SAAhC,EAAP;;AACF,SAAK,GAAL;AACE,UAAIC,SAAJ,EAAe;AACb,eACE,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAEF,QAAQ,KAAKM,eAAb,GAAqB,GAArB,GAA2B;AAA5C,WAAqDL,SAArD,EADF;AAGD;;AAED,aAAO,qCAAC,aAAD;AAAM,QAAA,MAAM,EAAC;AAAb,SAA0BA,SAA1B,EAAP;;AACF,SAAK,GAAL;AACA;AACE,UAAID,QAAQ,KAAKO,aAAjB,EAAsB;AACpB,eAAO,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAC;AAAhB,WAAwBN,SAAxB,EAAP;AACD;;AAED,UAAID,QAAQ,KAAKM,eAAjB,EAAwB;AACtB,eAAO,qCAAC,gBAAD,EAAaL,SAAb,CAAP;AACD;;AAED,UAAIC,SAAJ,EAAe;AACb,eAAO,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAC;AAAhB,WAAwBD,SAAxB,EAAP;AACD;;AAED,aAAO,qCAAC,gBAAD;AAAS,QAAA,MAAM,EAAC;AAAhB,SAAwBA,SAAxB,EAAP;AA/BJ;AAiCD,CAvCD;;AA8CA,SAASO,uBAAT,CACEC,UADF,EAEEC,IAFF,EAG4B;AAC1B,MAAIC,kBAA6C,GAAGF,UAApD;AACA,MAAIG,YAAiC,GAAGF,IAAxC;;AAEA,MAAID,UAAU,KAAKI,SAAnB,EAA8B;AAC5B,YAAQH,IAAR;AACE,WAAK,UAAL;AACA,WAAK,WAAL;AACA,WAAK,SAAL;AACA,WAAK,SAAL;AACEC,QAAAA,kBAAkB,GAAG,QAArB;AACA;;AACF,WAAK,UAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,UAArB;AACA;;AACF,WAAK,aAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,UAArB;AACA;;AACF,WAAK,iBAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;;AACF,WAAK,mBAAL;AACEC,QAAAA,YAAY,GAAG,WAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;;AACF,WAAK,iBAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;AA1BJ;AA4BD;;AAED,SAAO;AACLA,IAAAA,kBAAkB,EAAlBA,kBADK;AAELC,IAAAA,YAAY,EAAZA;AAFK,GAAP;AAID;;AAED,IAAME,MAA6B,GAAG,SAAhCA,MAAgC,CAACjB,KAAD,EAAwB;AAAA;;AAC5D,MAAMG,QAAQ,GAAG,+BAAjB;AACA,MACEF,IADF,GAeID,KAfJ,CACEC,IADF;AAAA,MAEEY,IAFF,GAeIb,KAfJ,CAEEa,IAFF;AAAA,MAGED,UAHF,GAeIZ,KAfJ,CAGEY,UAHF;AAAA,MAIEM,SAJF,GAeIlB,KAfJ,CAIEkB,SAJF;AAAA,MAKEC,KALF,GAeInB,KAfJ,CAKEmB,KALF;AAAA,MAMEC,QANF,GAeIpB,KAfJ,CAMEoB,QANF;AAAA,MAOEC,MAPF,GAeIrB,KAfJ,CAOEqB,MAPF;AAAA,MAQEC,KARF,GAeItB,KAfJ,CAQEsB,KARF;AAAA,MASEC,UATF,GAeIvB,KAfJ,CASEuB,UATF;AAAA,MAUErB,KAVF,GAeIF,KAfJ,CAUEE,KAVF;AAAA,yBAeIF,KAfJ,CAWEwB,SAXF;AAAA,MAWEA,SAXF,iCAWc,QAXd;AAAA,MAYEC,OAZF,GAeIzB,KAfJ,CAYEyB,OAZF;AAAA,MAaEC,OAbF,GAeI1B,KAfJ,CAaE0B,OAbF;AAAA,MAcKtB,SAdL,0CAeIJ,KAfJ;AAgBA,MAAM2B,QAAQ,GAAGC,OAAO,CAACP,MAAM,IAAIC,KAAX,CAAxB;;AACA,8BAA6CX,uBAAuB,CAClEC,UADkE,EAElEC,IAFkE,CAApE;AAAA,MAAQE,YAAR,yBAAQA,YAAR;AAAA,MAAsBD,kBAAtB,yBAAsBA,kBAAtB;;AAIA,MAAMe,YAAY,GAAGC,KAAK,CAACC,UAAN,CAAiBC,4CAAjB,EAAwCH,YAA7D;AAEA,SACE,qCAAC,iBAAD,6BACMzB,SADN;AAEE,IAAA,SAAS,EAAEA,SAAS,CAAC6B,IAAV,GAAiB,GAAjB,GAAuBT,SAFpC;AAGE,IAAA,OAAO,EAAEC,OAAO,GAAGT,SAAH,GAAeU,OAHjC;AAIE,IAAA,gBAAgB,EAAC,SAJnB;AAKE,IAAA,SAAS,EAAE,6BACT,QADS,uBAEKzB,IAFL,yBAGMc,YAHN,yBAIMD,kBAJN,yBAKMK,KALN,2BAMQjB,KANR,iEAQN,mBARM,EAQgBgB,SARhB,8CASN,mBATM,EASgBS,QAThB,8CAUN,oBAVM,EAUiBC,OAAO,CAC5B,CAACR,QAAD,IAAa,CAACE,KAAd,IAAuBD,MAAxB,IAAoC,CAACD,QAAD,IAAaE,KAAb,IAAsB,CAACD,MAD9B,CAVxB,gBALb;AAoBE,IAAA,UAAU,EAAEE,UApBd;AAqBE,IAAA,SAAS,EAAEM,YAAY,GAAG,eAAH,GAAqB,YArB9C;AAsBE,IAAA,UAAU,EAAEA,YAAY,GAAG,gBAAH,GAAsB;AAtBhD,MAwBGJ,OAAO,IAAI,qCAAC,gBAAD;AAAS,IAAA,IAAI,EAAC,OAAd;AAAsB,IAAA,SAAS,EAAC;AAAhC,IAxBd,EAyBE;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGJ,MAAM,IAAI;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAkCA,MAAlC,CADb,EAEGD,QAAQ,IACP,qCAAC,gBAAD;AACE,IAAA,IAAI,EAAEnB,IADR;AAEE,IAAA,KAAK,EAAEC,KAFT;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAC,iBAJZ;AAKE,IAAA,SAAS,EAAC;AALZ,KAOGiB,QAPH,CAHJ,EAaGE,KAAK,IAAI;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAiCA,KAAjC,CAbZ,CAzBF,CADF;AA2CD,CApED;;AAsEAL,MAAM,CAACiB,YAAP,GAAsB;AACpBrB,EAAAA,IAAI,EAAE,SADc;AAEpBM,EAAAA,KAAK,EAAE,QAFa;AAGpBlB,EAAAA,IAAI,EAAE,GAHc;AAIpBiB,EAAAA,SAAS,EAAE,KAJS;AAKpBiB,EAAAA,eAAe,EAAE;AALG,CAAtB,C,CAQA;;eACe,oCAAelB,MAAf,EAAuB;AACpCf,EAAAA,KAAK,EAAE;AAD6B,CAAvB,C","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport Title from \"../Typography/Title/Title\";\nimport Text from \"../Typography/Text/Text\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { HasAlign, HasComponent } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n AdaptivityProps,\n SizeType,\n withAdaptivity,\n} from \"../../hoc/withAdaptivity\";\nimport { PlatformType, IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport Spinner from \"../Spinner/Spinner\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport \"./Button.css\";\n\nexport interface VKUIButtonProps extends HasAlign {\n /**\n Значения `commerce`, `destructive`, `overlay_...` будут упразднены в 5.0.0\n */\n mode?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"outline\"\n | \"commerce\"\n | \"destructive\"\n | \"overlay_primary\"\n | \"overlay_secondary\"\n | \"overlay_outline\";\n appearance?: \"accent\" | \"positive\" | \"negative\" | \"neutral\" | \"overlay\";\n size?: \"s\" | \"m\" | \"l\";\n stretched?: boolean;\n before?: React.ReactNode;\n after?: React.ReactNode;\n loading?: boolean;\n}\n\nexport interface ButtonProps\n extends Omit<TappableProps, \"size\">,\n VKUIButtonProps {}\n\ninterface ButtonTypographyProps extends HasComponent {\n size: ButtonProps[\"size\"];\n platform: PlatformType | undefined;\n sizeY: AdaptivityProps[\"sizeY\"];\n children?: ButtonProps[\"children\"];\n}\n\nconst ButtonTypography: React.FC<ButtonTypographyProps> = (\n props: ButtonTypographyProps\n) => {\n const { size, sizeY, platform, ...restProps } = props;\n const isCompact = sizeY === SizeType.COMPACT;\n\n switch (size) {\n case \"l\":\n if (isCompact) {\n return <Text weight=\"medium\" {...restProps} />;\n }\n if (platform === ANDROID) {\n return <Headline weight=\"medium\" {...restProps} />;\n }\n return <Title level=\"3\" weight=\"2\" {...restProps} />;\n case \"m\":\n if (isCompact) {\n return (\n <Subhead weight={platform === VKCOM ? \"3\" : \"2\"} {...restProps} />\n );\n }\n\n return <Text weight=\"medium\" {...restProps} />;\n case \"s\":\n default:\n if (platform === IOS) {\n return <Subhead weight=\"2\" {...restProps} />;\n }\n\n if (platform === VKCOM) {\n return <Caption {...restProps} />;\n }\n\n if (isCompact) {\n return <Caption weight=\"2\" {...restProps} />;\n }\n\n return <Subhead weight=\"2\" {...restProps} />;\n }\n};\n\ninterface ResolvedButtonAppearance {\n resolvedAppearance: ButtonProps[\"appearance\"];\n resolvedMode: ButtonProps[\"mode\"];\n}\n\nfunction resolveButtonAppearance(\n appearance: ButtonProps[\"appearance\"],\n mode: ButtonProps[\"mode\"]\n): ResolvedButtonAppearance {\n let resolvedAppearance: ButtonProps[\"appearance\"] = appearance;\n let resolvedMode: ButtonProps[\"mode\"] = mode;\n\n if (appearance === undefined) {\n switch (mode) {\n case \"tertiary\":\n case \"secondary\":\n case \"primary\":\n case \"outline\":\n resolvedAppearance = \"accent\";\n break;\n case \"commerce\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"positive\";\n break;\n case \"destructive\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"negative\";\n break;\n case \"overlay_primary\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_secondary\":\n resolvedMode = \"secondary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_outline\":\n resolvedMode = \"outline\";\n resolvedAppearance = \"overlay\";\n break;\n }\n }\n\n return {\n resolvedAppearance,\n resolvedMode,\n };\n}\n\nconst Button: React.FC<ButtonProps> = (props: ButtonProps) => {\n const platform = usePlatform();\n const {\n size,\n mode,\n appearance,\n stretched,\n align,\n children,\n before,\n after,\n getRootRef,\n sizeY,\n Component = \"button\",\n loading,\n onClick,\n ...restProps\n } = props;\n const hasIcons = Boolean(before || after);\n const { resolvedMode, resolvedAppearance } = resolveButtonAppearance(\n appearance,\n mode\n );\n const hasNewTokens = React.useContext(ConfigProviderContext).hasNewTokens;\n\n return (\n <Tappable\n {...restProps}\n Component={restProps.href ? \"a\" : Component}\n onClick={loading ? undefined : onClick}\n focusVisibleMode=\"outside\"\n vkuiClass={classNames(\n \"Button\",\n `Button--sz-${size}`,\n `Button--lvl-${resolvedMode}`,\n `Button--clr-${resolvedAppearance}`,\n `Button--aln-${align}`,\n `Button--sizeY-${sizeY}`,\n {\n [\"Button--stretched\"]: stretched,\n [\"Button--with-icon\"]: hasIcons,\n [\"Button--singleIcon\"]: Boolean(\n (!children && !after && before) || (!children && after && !before)\n ),\n }\n )}\n getRootRef={getRootRef}\n hoverMode={hasNewTokens ? \"Button--hover\" : \"background\"}\n activeMode={hasNewTokens ? \"Button--active\" : \"opacity\"}\n >\n {loading && <Spinner size=\"small\" vkuiClass=\"Button__spinner\" />}\n <span vkuiClass=\"Button__in\">\n {before && <span vkuiClass=\"Button__before\">{before}</span>}\n {children && (\n <ButtonTypography\n size={size}\n sizeY={sizeY}\n platform={platform}\n vkuiClass=\"Button__content\"\n Component=\"span\"\n >\n {children}\n </ButtonTypography>\n )}\n {after && <span vkuiClass=\"Button__after\">{after}</span>}\n </span>\n </Tappable>\n );\n};\n\nButton.defaultProps = {\n mode: \"primary\",\n align: \"center\",\n size: \"s\",\n stretched: false,\n stopPropagation: true,\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Button, {\n sizeY: true,\n});\n"],"file":"Button.js"}
1
+ {"version":3,"sources":["../../../../src/components/Button/Button.tsx"],"names":["ButtonTypography","props","size","sizeY","platform","restProps","isCompact","SizeType","COMPACT","ANDROID","VKCOM","IOS","resolveButtonAppearance","appearance","mode","resolvedAppearance","resolvedMode","undefined","ButtonComponent","stretched","align","children","before","after","getRootRef","Component","loading","onClick","stopPropagation","hasIcons","Boolean","hasIconOnly","hasNewTokens","React","useContext","ConfigProviderContext","href","Button"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;;;;AAoCA,IAAMA,gBAAiD,GAAG,SAApDA,gBAAoD,CACxDC,KADwD,EAErD;AACH,MAAQC,IAAR,GAAgDD,KAAhD,CAAQC,IAAR;AAAA,MAAcC,KAAd,GAAgDF,KAAhD,CAAcE,KAAd;AAAA,MAAqBC,QAArB,GAAgDH,KAAhD,CAAqBG,QAArB;AAAA,MAAkCC,SAAlC,0CAAgDJ,KAAhD;AACA,MAAMK,SAAS,GAAGH,KAAK,KAAKI,yBAASC,OAArC;;AAEA,UAAQN,IAAR;AACE,SAAK,GAAL;AACE,UAAII,SAAJ,EAAe;AACb,eAAO,qCAAC,aAAD;AAAM,UAAA,MAAM,EAAC;AAAb,WAA0BD,SAA1B,EAAP;AACD;;AACD,UAAID,QAAQ,KAAKK,iBAAjB,EAA0B;AACxB,eAAO,qCAAC,iBAAD;AAAU,UAAA,MAAM,EAAC;AAAjB,WAA8BJ,SAA9B,EAAP;AACD;;AACD,aAAO,qCAAC,YAAD;AAAO,QAAA,KAAK,EAAC,GAAb;AAAiB,QAAA,MAAM,EAAC;AAAxB,SAAgCA,SAAhC,EAAP;;AACF,SAAK,GAAL;AACE,UAAIC,SAAJ,EAAe;AACb,eACE,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAEF,QAAQ,KAAKM,eAAb,GAAqB,GAArB,GAA2B;AAA5C,WAAqDL,SAArD,EADF;AAGD;;AAED,aAAO,qCAAC,aAAD;AAAM,QAAA,MAAM,EAAC;AAAb,SAA0BA,SAA1B,EAAP;;AACF,SAAK,GAAL;AACA;AACE,UAAID,QAAQ,KAAKO,aAAjB,EAAsB;AACpB,eAAO,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAC;AAAhB,WAAwBN,SAAxB,EAAP;AACD;;AAED,UAAID,QAAQ,KAAKM,eAAjB,EAAwB;AACtB,eAAO,qCAAC,gBAAD,EAAaL,SAAb,CAAP;AACD;;AAED,UAAIC,SAAJ,EAAe;AACb,eAAO,qCAAC,gBAAD;AAAS,UAAA,MAAM,EAAC;AAAhB,WAAwBD,SAAxB,EAAP;AACD;;AAED,aAAO,qCAAC,gBAAD;AAAS,QAAA,MAAM,EAAC;AAAhB,SAAwBA,SAAxB,EAAP;AA/BJ;AAiCD,CAvCD;;AA8CA,SAASO,uBAAT,CACEC,UADF,EAEEC,IAFF,EAG4B;AAC1B,MAAIC,kBAA6C,GAAGF,UAApD;AACA,MAAIG,YAAiC,GAAGF,IAAxC;;AAEA,MAAID,UAAU,KAAKI,SAAnB,EAA8B;AAC5B,YAAQH,IAAR;AACE,WAAK,UAAL;AACA,WAAK,WAAL;AACA,WAAK,SAAL;AACA,WAAK,SAAL;AACEC,QAAAA,kBAAkB,GAAG,QAArB;AACA;;AACF,WAAK,UAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,UAArB;AACA;;AACF,WAAK,aAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,UAArB;AACA;;AACF,WAAK,iBAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;;AACF,WAAK,mBAAL;AACEC,QAAAA,YAAY,GAAG,WAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;;AACF,WAAK,iBAAL;AACEC,QAAAA,YAAY,GAAG,SAAf;AACAD,QAAAA,kBAAkB,GAAG,SAArB;AACA;AA1BJ;AA4BD;;AAED,SAAO;AACLA,IAAAA,kBAAkB,EAAlBA,kBADK;AAELC,IAAAA,YAAY,EAAZA;AAFK,GAAP;AAID;;AAED,IAAME,eAAsC,GAAG,SAAzCA,eAAyC,OAgBzC;AAAA,uBAfJhB,IAeI;AAAA,MAfJA,IAeI,0BAfG,GAeH;AAAA,uBAdJY,IAcI;AAAA,MAdJA,IAcI,0BAdG,SAcH;AAAA,MAbJD,UAaI,QAbJA,UAaI;AAAA,4BAZJM,SAYI;AAAA,MAZJA,SAYI,+BAZQ,KAYR;AAAA,wBAXJC,KAWI;AAAA,MAXJA,KAWI,2BAXI,QAWJ;AAAA,MAVJC,QAUI,QAVJA,QAUI;AAAA,MATJC,MASI,QATJA,MASI;AAAA,MARJC,KAQI,QARJA,KAQI;AAAA,MAPJC,UAOI,QAPJA,UAOI;AAAA,MANJrB,KAMI,QANJA,KAMI;AAAA,4BALJsB,SAKI;AAAA,MALJA,SAKI,+BALQ,QAKR;AAAA,MAJJC,OAII,QAJJA,OAII;AAAA,MAHJC,OAGI,QAHJA,OAGI;AAAA,kCAFJC,eAEI;AAAA,MAFJA,eAEI,qCAFc,IAEd;AAAA,MADDvB,SACC;AACJ,MAAMD,QAAQ,GAAG,+BAAjB;AACA,MAAMyB,QAAQ,GAAGC,OAAO,CAACR,MAAM,IAAIC,KAAX,CAAxB;AACA,MAAMQ,WAAW,GAAG,CAACV,QAAD,IAAaS,OAAO,CAACP,KAAD,CAAP,KAAmBO,OAAO,CAACR,MAAD,CAA3D;;AACA,8BAA6CV,uBAAuB,CAClEC,UADkE,EAElEC,IAFkE,CAApE;AAAA,MAAQE,YAAR,yBAAQA,YAAR;AAAA,MAAsBD,kBAAtB,yBAAsBA,kBAAtB;;AAIA,MAAMiB,YAAY,GAAGC,KAAK,CAACC,UAAN,CAAiBC,4CAAjB,EAAwCH,YAA7D;AAEA,SACE,qCAAC,iBAAD,6BACM3B,SADN;AAEE,IAAA,SAAS,EAAEA,SAAS,CAAC+B,IAAV,GAAiB,GAAjB,GAAuBX,SAFpC;AAGE,IAAA,OAAO,EAAEC,OAAO,GAAGT,SAAH,GAAeU,OAHjC;AAIE,IAAA,gBAAgB,EAAC,SAJnB;AAKE,IAAA,eAAe,EAAEC,eALnB;AAME,IAAA,SAAS,EAAE,4BACT,QADS,uBAEK1B,IAFL,yBAGMc,YAHN,yBAIMD,kBAJN,yBAKMK,KALN,2BAMQjB,KANR,GAOTgB,SAAS,IAAI,mBAPJ,EAQTU,QAAQ,IAAI,mBARH,EASTE,WAAW,IAAI,oBATN,CANb;AAiBE,IAAA,UAAU,EAAEP,UAjBd;AAkBE,IAAA,SAAS,EAAEQ,YAAY,GAAG,eAAH,GAAqB,YAlB9C;AAmBE,IAAA,UAAU,EAAEA,YAAY,GAAG,gBAAH,GAAsB;AAnBhD,MAqBGN,OAAO,IAAI,qCAAC,gBAAD;AAAS,IAAA,IAAI,EAAC,OAAd;AAAsB,IAAA,SAAS,EAAC;AAAhC,IArBd,EAsBE;AAAM,IAAA,SAAS,EAAC;AAAhB,KACGJ,MAAM,IAAI;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAkCA,MAAlC,CADb,EAEGD,QAAQ,IACP,qCAAC,gBAAD;AACE,IAAA,IAAI,EAAEnB,IADR;AAEE,IAAA,KAAK,EAAEC,KAFT;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAC,iBAJZ;AAKE,IAAA,SAAS,EAAC;AALZ,KAOGiB,QAPH,CAHJ,EAaGE,KAAK,IAAI;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAiCA,KAAjC,CAbZ,CAtBF,CADF;AAwCD,CAlED;;AAoEO,IAAMc,MAAM,GAAG,oCAAenB,eAAf,EAAgC;AACpDf,EAAAA,KAAK,EAAE;AAD6C,CAAhC,CAAf","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport { Title } from \"../Typography/Title/Title\";\nimport Text from \"../Typography/Text/Text\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { HasAlign, HasComponent } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n AdaptivityProps,\n SizeType,\n withAdaptivity,\n} from \"../../hoc/withAdaptivity\";\nimport { PlatformType, IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport Spinner from \"../Spinner/Spinner\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport \"./Button.css\";\n\nexport interface VKUIButtonProps extends HasAlign {\n /**\n Значения `commerce`, `destructive`, `overlay_...` будут упразднены в 5.0.0\n */\n mode?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"outline\"\n | \"commerce\"\n | \"destructive\"\n | \"overlay_primary\"\n | \"overlay_secondary\"\n | \"overlay_outline\";\n appearance?: \"accent\" | \"positive\" | \"negative\" | \"neutral\" | \"overlay\";\n size?: \"s\" | \"m\" | \"l\";\n stretched?: boolean;\n before?: React.ReactNode;\n after?: React.ReactNode;\n loading?: boolean;\n}\n\nexport interface ButtonProps\n extends Omit<TappableProps, \"size\">,\n VKUIButtonProps {}\n\ninterface ButtonTypographyProps extends HasComponent {\n size: ButtonProps[\"size\"];\n platform: PlatformType | undefined;\n sizeY: AdaptivityProps[\"sizeY\"];\n children?: ButtonProps[\"children\"];\n}\n\nconst ButtonTypography: React.FC<ButtonTypographyProps> = (\n props: ButtonTypographyProps\n) => {\n const { size, sizeY, platform, ...restProps } = props;\n const isCompact = sizeY === SizeType.COMPACT;\n\n switch (size) {\n case \"l\":\n if (isCompact) {\n return <Text weight=\"medium\" {...restProps} />;\n }\n if (platform === ANDROID) {\n return <Headline weight=\"medium\" {...restProps} />;\n }\n return <Title level=\"3\" weight=\"2\" {...restProps} />;\n case \"m\":\n if (isCompact) {\n return (\n <Subhead weight={platform === VKCOM ? \"3\" : \"2\"} {...restProps} />\n );\n }\n\n return <Text weight=\"medium\" {...restProps} />;\n case \"s\":\n default:\n if (platform === IOS) {\n return <Subhead weight=\"2\" {...restProps} />;\n }\n\n if (platform === VKCOM) {\n return <Caption {...restProps} />;\n }\n\n if (isCompact) {\n return <Caption weight=\"2\" {...restProps} />;\n }\n\n return <Subhead weight=\"2\" {...restProps} />;\n }\n};\n\ninterface ResolvedButtonAppearance {\n resolvedAppearance: ButtonProps[\"appearance\"];\n resolvedMode: ButtonProps[\"mode\"];\n}\n\nfunction resolveButtonAppearance(\n appearance: ButtonProps[\"appearance\"],\n mode: ButtonProps[\"mode\"]\n): ResolvedButtonAppearance {\n let resolvedAppearance: ButtonProps[\"appearance\"] = appearance;\n let resolvedMode: ButtonProps[\"mode\"] = mode;\n\n if (appearance === undefined) {\n switch (mode) {\n case \"tertiary\":\n case \"secondary\":\n case \"primary\":\n case \"outline\":\n resolvedAppearance = \"accent\";\n break;\n case \"commerce\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"positive\";\n break;\n case \"destructive\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"negative\";\n break;\n case \"overlay_primary\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_secondary\":\n resolvedMode = \"secondary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_outline\":\n resolvedMode = \"outline\";\n resolvedAppearance = \"overlay\";\n break;\n }\n }\n\n return {\n resolvedAppearance,\n resolvedMode,\n };\n}\n\nconst ButtonComponent: React.FC<ButtonProps> = ({\n size = \"s\",\n mode = \"primary\",\n appearance,\n stretched = false,\n align = \"center\",\n children,\n before,\n after,\n getRootRef,\n sizeY,\n Component = \"button\",\n loading,\n onClick,\n stopPropagation = true,\n ...restProps\n}) => {\n const platform = usePlatform();\n const hasIcons = Boolean(before || after);\n const hasIconOnly = !children && Boolean(after) !== Boolean(before);\n const { resolvedMode, resolvedAppearance } = resolveButtonAppearance(\n appearance,\n mode\n );\n const hasNewTokens = React.useContext(ConfigProviderContext).hasNewTokens;\n\n return (\n <Tappable\n {...restProps}\n Component={restProps.href ? \"a\" : Component}\n onClick={loading ? undefined : onClick}\n focusVisibleMode=\"outside\"\n stopPropagation={stopPropagation}\n vkuiClass={classNames(\n \"Button\",\n `Button--sz-${size}`,\n `Button--lvl-${resolvedMode}`,\n `Button--clr-${resolvedAppearance}`,\n `Button--aln-${align}`,\n `Button--sizeY-${sizeY}`,\n stretched && \"Button--stretched\",\n hasIcons && \"Button--with-icon\",\n hasIconOnly && \"Button--singleIcon\"\n )}\n getRootRef={getRootRef}\n hoverMode={hasNewTokens ? \"Button--hover\" : \"background\"}\n activeMode={hasNewTokens ? \"Button--active\" : \"opacity\"}\n >\n {loading && <Spinner size=\"small\" vkuiClass=\"Button__spinner\" />}\n <span vkuiClass=\"Button__in\">\n {before && <span vkuiClass=\"Button__before\">{before}</span>}\n {children && (\n <ButtonTypography\n size={size}\n sizeY={sizeY}\n platform={platform}\n vkuiClass=\"Button__content\"\n Component=\"span\"\n >\n {children}\n </ButtonTypography>\n )}\n {after && <span vkuiClass=\"Button__after\">{after}</span>}\n </span>\n </Tappable>\n );\n};\n\nexport const Button = withAdaptivity(ButtonComponent, {\n sizeY: true,\n});\n"],"file":"Button.js"}
@@ -17,7 +17,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
17
17
 
18
18
  var React = _interopRequireWildcard(require("react"));
19
19
 
20
- var _dateFns = require("date-fns");
20
+ var _date = require("../../lib/date");
21
21
 
22
22
  var _CalendarHeader = require("../CalendarHeader/CalendarHeader");
23
23
 
@@ -88,11 +88,11 @@ var Calendar = function Calendar(_ref) {
88
88
  }, [value]);
89
89
 
90
90
  if (process.env.NODE_ENV === "development" && !disablePickers && size === "s") {
91
- warn("Нельзя включить селекты выбора месяца/года если размер календаря 's'");
91
+ warn("Нельзя включить селекты выбора месяца/года, если размер календаря 's'", "error");
92
92
  }
93
93
 
94
94
  if (process.env.NODE_ENV === "development" && enableTime && size === "s") {
95
- warn("Нельзя включить выбор времени если размер календаря 's'");
95
+ warn("Нельзя включить выбор времени, если размер календаря 's'", "error");
96
96
  }
97
97
 
98
98
  var handleKeyDown = React.useCallback(function (event) {
@@ -102,7 +102,7 @@ var Calendar = function Calendar(_ref) {
102
102
 
103
103
  var newFocusedDay = (0, _calendar.navigateDate)(focusedDay !== null && focusedDay !== void 0 ? focusedDay : value, event.key);
104
104
 
105
- if (newFocusedDay && !(0, _dateFns.isSameMonth)(newFocusedDay, viewDate)) {
105
+ if (newFocusedDay && !(0, _date.isSameMonth)(newFocusedDay, viewDate)) {
106
106
  setViewDate(newFocusedDay);
107
107
  }
108
108
 
@@ -112,7 +112,7 @@ var Calendar = function Calendar(_ref) {
112
112
  onChange === null || onChange === void 0 ? void 0 : onChange((0, _calendar.setTimeEqual)(date, value));
113
113
  }, [value, onChange]);
114
114
  var isDayActive = React.useCallback(function (day) {
115
- return Boolean(value && (0, _dateFns.isSameDay)(day, value));
115
+ return Boolean(value && (0, _date.isSameDay)(day, value));
116
116
  }, [value]);
117
117
  return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, props, {
118
118
  ref: getRootRef,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":["warn","Calendar","value","onChange","disablePast","disableFuture","shouldDisableDate","onClose","enableTime","doneButtonText","weekStartsOn","getRootRef","disablePickers","changeHoursAriaLabel","changeMinutesAriaLabel","prevMonthAriaLabel","nextMonthAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","showNeighboringMonth","changeDayAriaLabel","size","props","viewDate","setViewDate","setPrevMonth","setNextMonth","focusedDay","setFocusedDay","isDayFocused","isDayDisabled","resetSelectedDay","process","env","NODE_ENV","handleKeyDown","React","useCallback","event","includes","key","preventDefault","newFocusedDay","onDayChange","date","isDayActive","day","Boolean","isFirstDay","isLastDay"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameMonth, isSameDay } from \"date-fns\";\nimport {\n CalendarHeader,\n CalendarHeaderProps,\n} from \"../CalendarHeader/CalendarHeader\";\nimport { CalendarDays } from \"../CalendarDays/CalendarDays\";\nimport { CalendarTime, CalendarTimeProps } from \"../CalendarTime/CalendarTime\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport {\n navigateDate,\n setTimeEqual,\n isFirstDay,\n isLastDay,\n} from \"../../lib/calendar\";\nimport { useCalendar } from \"../../hooks/useCalendar\";\nimport { HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./Calendar.css\";\n\nexport interface CalendarProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<CalendarTimeProps, \"changeHoursAriaLabel\" | \"changeMinutesAriaLabel\">,\n Pick<\n CalendarHeaderProps,\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n >,\n HasRootRef<HTMLDivElement> {\n value?: Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n enableTime?: boolean;\n disablePickers?: boolean;\n doneButtonText?: string;\n changeDayAriaLabel?: string;\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange?(value?: Date): void;\n shouldDisableDate?(value: Date): boolean;\n onClose?(): void;\n}\n\nconst warn = warnOnce(\"Calendar\");\n\nexport const Calendar: React.FC<CalendarProps> = ({\n value,\n onChange,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onClose,\n enableTime = false,\n doneButtonText,\n weekStartsOn = 1,\n getRootRef,\n disablePickers,\n changeHoursAriaLabel,\n changeMinutesAriaLabel,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n showNeighboringMonth,\n changeDayAriaLabel = \"Изменить день\",\n size = \"m\",\n ...props\n}) => {\n const {\n viewDate,\n setViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n } = useCalendar({ value, disableFuture, disablePast, shouldDisableDate });\n\n useIsomorphicLayoutEffect(() => {\n if (value) {\n setViewDate(value);\n }\n }, [value]);\n\n if (\n process.env.NODE_ENV === \"development\" &&\n !disablePickers &&\n size === \"s\"\n ) {\n warn(\n \"Нельзя включить селекты выбора месяца/года если размер календаря 's'\"\n );\n }\n\n if (process.env.NODE_ENV === \"development\" && enableTime && size === \"s\") {\n warn(\"Нельзя включить выбор времени если размер календаря 's'\");\n }\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (\n [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"].includes(event.key)\n ) {\n event.preventDefault();\n }\n\n const newFocusedDay = navigateDate(focusedDay ?? value, event.key);\n\n if (newFocusedDay && !isSameMonth(newFocusedDay, viewDate)) {\n setViewDate(newFocusedDay);\n }\n setFocusedDay(newFocusedDay);\n },\n [focusedDay, setFocusedDay, setViewDate, value, viewDate]\n );\n\n const onDayChange = React.useCallback(\n (date: Date) => {\n onChange?.(setTimeEqual(date, value as Date | undefined | null));\n },\n [value, onChange]\n );\n\n const isDayActive = React.useCallback(\n (day: Date) => Boolean(value && isSameDay(day, value)),\n [value]\n );\n\n return (\n <div\n {...props}\n ref={getRootRef}\n vkuiClass={classNames(\"Calendar\", `Calendar--size-${size}`)}\n >\n <CalendarHeader\n viewDate={viewDate}\n onChange={setViewDate}\n onNextMonth={setNextMonth}\n onPrevMonth={setPrevMonth}\n disablePickers={disablePickers || size === \"s\"}\n vkuiClass=\"Calendar__header\"\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n />\n <CalendarDays\n viewDate={viewDate}\n value={value}\n weekStartsOn={weekStartsOn}\n isDayFocused={isDayFocused}\n tabIndex={0}\n aria-label={changeDayAriaLabel}\n onKeyDown={handleKeyDown}\n onDayChange={onDayChange}\n isDayActive={isDayActive}\n isDaySelectionStart={isFirstDay}\n isDaySelectionEnd={isLastDay}\n isDayDisabled={isDayDisabled}\n onBlur={resetSelectedDay}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n />\n {enableTime && value && size !== \"s\" && (\n <div vkuiClass=\"Calendar__time\">\n <CalendarTime\n value={value}\n onChange={onChange}\n onClose={onClose}\n doneButtonText={doneButtonText}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n />\n </div>\n )}\n </div>\n );\n};\n"],"file":"Calendar.js"}
1
+ {"version":3,"sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":["warn","Calendar","value","onChange","disablePast","disableFuture","shouldDisableDate","onClose","enableTime","doneButtonText","weekStartsOn","getRootRef","disablePickers","changeHoursAriaLabel","changeMinutesAriaLabel","prevMonthAriaLabel","nextMonthAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","showNeighboringMonth","changeDayAriaLabel","size","props","viewDate","setViewDate","setPrevMonth","setNextMonth","focusedDay","setFocusedDay","isDayFocused","isDayDisabled","resetSelectedDay","process","env","NODE_ENV","handleKeyDown","React","useCallback","event","includes","key","preventDefault","newFocusedDay","onDayChange","date","isDayActive","day","Boolean","isFirstDay","isLastDay"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameMonth, isSameDay } from \"../../lib/date\";\nimport {\n CalendarHeader,\n CalendarHeaderProps,\n} from \"../CalendarHeader/CalendarHeader\";\nimport { CalendarDays } from \"../CalendarDays/CalendarDays\";\nimport { CalendarTime, CalendarTimeProps } from \"../CalendarTime/CalendarTime\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport {\n navigateDate,\n setTimeEqual,\n isFirstDay,\n isLastDay,\n} from \"../../lib/calendar\";\nimport { useCalendar } from \"../../hooks/useCalendar\";\nimport { HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./Calendar.css\";\n\nexport interface CalendarProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<CalendarTimeProps, \"changeHoursAriaLabel\" | \"changeMinutesAriaLabel\">,\n Pick<\n CalendarHeaderProps,\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n >,\n HasRootRef<HTMLDivElement> {\n value?: Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n enableTime?: boolean;\n disablePickers?: boolean;\n doneButtonText?: string;\n changeDayAriaLabel?: string;\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange?(value?: Date): void;\n shouldDisableDate?(value: Date): boolean;\n onClose?(): void;\n}\n\nconst warn = warnOnce(\"Calendar\");\n\nexport const Calendar: React.FC<CalendarProps> = ({\n value,\n onChange,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onClose,\n enableTime = false,\n doneButtonText,\n weekStartsOn = 1,\n getRootRef,\n disablePickers,\n changeHoursAriaLabel,\n changeMinutesAriaLabel,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n showNeighboringMonth,\n changeDayAriaLabel = \"Изменить день\",\n size = \"m\",\n ...props\n}) => {\n const {\n viewDate,\n setViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n } = useCalendar({ value, disableFuture, disablePast, shouldDisableDate });\n\n useIsomorphicLayoutEffect(() => {\n if (value) {\n setViewDate(value);\n }\n }, [value]);\n\n if (\n process.env.NODE_ENV === \"development\" &&\n !disablePickers &&\n size === \"s\"\n ) {\n warn(\n \"Нельзя включить селекты выбора месяца/года, если размер календаря 's'\",\n \"error\"\n );\n }\n\n if (process.env.NODE_ENV === \"development\" && enableTime && size === \"s\") {\n warn(\"Нельзя включить выбор времени, если размер календаря 's'\", \"error\");\n }\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (\n [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"].includes(event.key)\n ) {\n event.preventDefault();\n }\n\n const newFocusedDay = navigateDate(focusedDay ?? value, event.key);\n\n if (newFocusedDay && !isSameMonth(newFocusedDay, viewDate)) {\n setViewDate(newFocusedDay);\n }\n setFocusedDay(newFocusedDay);\n },\n [focusedDay, setFocusedDay, setViewDate, value, viewDate]\n );\n\n const onDayChange = React.useCallback(\n (date: Date) => {\n onChange?.(setTimeEqual(date, value as Date | undefined | null));\n },\n [value, onChange]\n );\n\n const isDayActive = React.useCallback(\n (day: Date) => Boolean(value && isSameDay(day, value)),\n [value]\n );\n\n return (\n <div\n {...props}\n ref={getRootRef}\n vkuiClass={classNames(\"Calendar\", `Calendar--size-${size}`)}\n >\n <CalendarHeader\n viewDate={viewDate}\n onChange={setViewDate}\n onNextMonth={setNextMonth}\n onPrevMonth={setPrevMonth}\n disablePickers={disablePickers || size === \"s\"}\n vkuiClass=\"Calendar__header\"\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n />\n <CalendarDays\n viewDate={viewDate}\n value={value}\n weekStartsOn={weekStartsOn}\n isDayFocused={isDayFocused}\n tabIndex={0}\n aria-label={changeDayAriaLabel}\n onKeyDown={handleKeyDown}\n onDayChange={onDayChange}\n isDayActive={isDayActive}\n isDaySelectionStart={isFirstDay}\n isDaySelectionEnd={isLastDay}\n isDayDisabled={isDayDisabled}\n onBlur={resetSelectedDay}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n />\n {enableTime && value && size !== \"s\" && (\n <div vkuiClass=\"Calendar__time\">\n <CalendarTime\n value={value}\n onChange={onChange}\n onClose={onClose}\n doneButtonText={doneButtonText}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n />\n </div>\n )}\n </div>\n );\n};\n"],"file":"Calendar.js"}
@@ -65,7 +65,8 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
65
65
  });
66
66
  }
67
67
 
68
- return (0, _jsxRuntime.createScopedElement)(_Tappable.default, {
68
+ return (0, _jsxRuntime.createScopedElement)(_Tappable.default // eslint-disable-next-line vkui/no-object-expression-in-arguments
69
+ , {
69
70
  vkuiClass: (0, _classNames.classNames)("CalendarDay", "CalendarDay--size-".concat(size), {
70
71
  "CalendarDay--today": today,
71
72
  "CalendarDay--selected": selected && !disabled,
@@ -91,12 +92,14 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
91
92
  onEnter: handleEnter,
92
93
  onLeave: handleLeave
93
94
  }, (0, _jsxRuntime.createScopedElement)("div", {
95
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
94
96
  vkuiClass: (0, _classNames.classNames)("CalendarDay__hinted", {
95
97
  "CalendarDay__hinted--active": hinted,
96
98
  "CalendarDay__hinted--selection-start": hintedSelectionStart,
97
99
  "CalendarDay__hinted--selection-end": hintedSelectionEnd
98
100
  })
99
101
  }, (0, _jsxRuntime.createScopedElement)("div", {
102
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
100
103
  vkuiClass: (0, _classNames.classNames)("CalendarDay__inner", {
101
104
  "CalendarDay__inner--active": active && !disabled
102
105
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport interface CalendarDayProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay: React.FC<CalendarDayProps> = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n }) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n vkuiClass={classNames(\"CalendarDay\", `CalendarDay--size-${size}`, {\n \"CalendarDay--today\": today,\n \"CalendarDay--selected\": selected && !disabled,\n \"CalendarDay--active\": active && !disabled,\n \"CalendarDay--selection-start\": selectionStart,\n \"CalendarDay--selection-end\": selectionEnd,\n \"CalendarDay--disabled\": disabled,\n \"CalendarDay--not-same-month\": !sameMonth,\n })}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n >\n <div\n vkuiClass={classNames(\"CalendarDay__hinted\", {\n \"CalendarDay__hinted--active\": hinted,\n \"CalendarDay__hinted--selection-start\": hintedSelectionStart,\n \"CalendarDay__hinted--selection-end\": hintedSelectionEnd,\n })}\n >\n <div\n vkuiClass={classNames(\"CalendarDay__inner\", {\n \"CalendarDay__inner--active\": active && !disabled,\n })}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"file":"CalendarDay.js"}
1
+ {"version":3,"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport interface CalendarDayProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay: React.FC<CalendarDayProps> = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n }) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay\", `CalendarDay--size-${size}`, {\n \"CalendarDay--today\": today,\n \"CalendarDay--selected\": selected && !disabled,\n \"CalendarDay--active\": active && !disabled,\n \"CalendarDay--selection-start\": selectionStart,\n \"CalendarDay--selection-end\": selectionEnd,\n \"CalendarDay--disabled\": disabled,\n \"CalendarDay--not-same-month\": !sameMonth,\n })}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n >\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay__hinted\", {\n \"CalendarDay__hinted--active\": hinted,\n \"CalendarDay__hinted--selection-start\": hintedSelectionStart,\n \"CalendarDay__hinted--selection-end\": hintedSelectionEnd,\n })}\n >\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"CalendarDay__inner\", {\n \"CalendarDay__inner--active\": active && !disabled,\n })}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"file":"CalendarDay.js"}
@@ -19,7 +19,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
19
19
 
20
20
  var React = _interopRequireWildcard(require("react"));
21
21
 
22
- var _dateFns = require("date-fns");
22
+ var _date = require("../../lib/date");
23
23
 
24
24
  var _CalendarDay = require("../CalendarDay/CalendarDay");
25
25
 
@@ -89,11 +89,11 @@ var CalendarDays = function CalendarDays(_ref) {
89
89
  vkuiClass: (0, _classNames.classNames)("CalendarDays__row", "CalendarDays__row--size-".concat(size)),
90
90
  key: i
91
91
  }, week.map(function (day, i) {
92
- var sameMonth = (0, _dateFns.isSameMonth)(day, viewDate);
92
+ var sameMonth = (0, _date.isSameMonth)(day, viewDate);
93
93
  return (0, _jsxRuntime.createScopedElement)(_CalendarDay.CalendarDay, {
94
94
  key: day.toISOString(),
95
95
  day: day,
96
- today: (0, _dateFns.isSameDay)(day, now),
96
+ today: (0, _date.isSameDay)(day, now),
97
97
  active: isDayActive(day),
98
98
  onChange: handleDayChange,
99
99
  hidden: !showNeighboringMonth && !sameMonth,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CalendarDays/CalendarDays.tsx"],"names":["CalendarDays","viewDate","value","weekStartsOn","onDayChange","isDaySelected","isDayActive","isDaySelectionEnd","isDaySelectionStart","onDayEnter","onDayLeave","isDayHinted","isHintedDaySelectionStart","isHintedDaySelectionEnd","isDayFocused","isDayDisabled","size","showNeighboringMonth","props","locale","React","useContext","LocaleProviderContext","ref","useRef","useState","Date","now","weeks","useMemo","daysNames","handleDayChange","useCallback","date","current","focus","map","dayName","week","i","day","sameMonth","toISOString"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameDay, isSameMonth } from \"date-fns\";\nimport { CalendarDay } from \"../CalendarDay/CalendarDay\";\nimport { getDaysNames, getWeeks } from \"../../lib/calendar\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport \"./CalendarDays.css\";\n\nexport interface CalendarDaysProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n value?: Date | Array<Date | null>;\n viewDate: Date;\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onDayChange(value: Date): void;\n isDayDisabled(value: Date): boolean;\n isDaySelectionStart(value: Date, dayOfWeek: number): boolean;\n isDaySelectionEnd(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionStart?(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionEnd?(value: Date, dayOfWeek: number): boolean;\n isDayActive(value: Date): boolean;\n isDayHinted?(value: Date): boolean;\n isDaySelected?(value: Date): boolean;\n isDayFocused(value: Date): boolean;\n onDayEnter?(value: Date): void;\n onDayLeave?(value: Date): void;\n}\n\nexport const CalendarDays: React.FC<CalendarDaysProps> = ({\n viewDate,\n value,\n weekStartsOn,\n onDayChange,\n isDaySelected,\n isDayActive,\n isDaySelectionEnd,\n isDaySelectionStart,\n onDayEnter,\n onDayLeave,\n isDayHinted,\n isHintedDaySelectionStart,\n isHintedDaySelectionEnd,\n isDayFocused,\n isDayDisabled,\n size,\n showNeighboringMonth = false,\n ...props\n}) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLDivElement>(null);\n const [now] = React.useState(new Date());\n\n const weeks = React.useMemo(\n () => getWeeks(viewDate, weekStartsOn),\n [weekStartsOn, viewDate]\n );\n\n const daysNames = React.useMemo(\n () => getDaysNames(now, weekStartsOn, locale),\n [locale, now, weekStartsOn]\n );\n\n const handleDayChange = React.useCallback(\n (date: Date) => {\n onDayChange(date);\n\n ref.current?.focus();\n },\n [onDayChange]\n );\n\n return (\n <div {...props} vkuiClass=\"CalendarDays\" ref={ref}>\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n >\n {daysNames.map((dayName) => (\n <Caption\n level=\"1\"\n weight=\"regular\"\n vkuiClass=\"CalendarDays__weekday\"\n key={dayName}\n >\n {dayName}\n </Caption>\n ))}\n </div>\n\n {weeks.map((week, i) => (\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n key={i}\n >\n {week.map((day, i) => {\n const sameMonth = isSameMonth(day, viewDate);\n return (\n <CalendarDay\n key={day.toISOString()}\n day={day}\n today={isSameDay(day, now)}\n active={isDayActive(day)}\n onChange={handleDayChange}\n hidden={!showNeighboringMonth && !sameMonth}\n disabled={isDayDisabled(day)}\n selectionStart={isDaySelectionStart(day, i)}\n selectionEnd={isDaySelectionEnd(day, i)}\n hintedSelectionStart={isHintedDaySelectionStart?.(day, i)}\n hintedSelectionEnd={isHintedDaySelectionEnd?.(day, i)}\n selected={isDaySelected?.(day)}\n focused={isDayFocused(day)}\n onEnter={onDayEnter}\n onLeave={onDayLeave}\n hinted={isDayHinted?.(day)}\n sameMonth={sameMonth}\n size={size}\n />\n );\n })}\n </div>\n ))}\n </div>\n );\n};\n"],"file":"CalendarDays.js"}
1
+ {"version":3,"sources":["../../../../src/components/CalendarDays/CalendarDays.tsx"],"names":["CalendarDays","viewDate","value","weekStartsOn","onDayChange","isDaySelected","isDayActive","isDaySelectionEnd","isDaySelectionStart","onDayEnter","onDayLeave","isDayHinted","isHintedDaySelectionStart","isHintedDaySelectionEnd","isDayFocused","isDayDisabled","size","showNeighboringMonth","props","locale","React","useContext","LocaleProviderContext","ref","useRef","useState","Date","now","weeks","useMemo","daysNames","handleDayChange","useCallback","date","current","focus","map","dayName","week","i","day","sameMonth","toISOString"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameDay, isSameMonth } from \"../../lib/date\";\nimport { CalendarDay } from \"../CalendarDay/CalendarDay\";\nimport { getDaysNames, getWeeks } from \"../../lib/calendar\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport \"./CalendarDays.css\";\n\nexport interface CalendarDaysProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n value?: Date | Array<Date | null>;\n viewDate: Date;\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onDayChange(value: Date): void;\n isDayDisabled(value: Date): boolean;\n isDaySelectionStart(value: Date, dayOfWeek: number): boolean;\n isDaySelectionEnd(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionStart?(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionEnd?(value: Date, dayOfWeek: number): boolean;\n isDayActive(value: Date): boolean;\n isDayHinted?(value: Date): boolean;\n isDaySelected?(value: Date): boolean;\n isDayFocused(value: Date): boolean;\n onDayEnter?(value: Date): void;\n onDayLeave?(value: Date): void;\n}\n\nexport const CalendarDays: React.FC<CalendarDaysProps> = ({\n viewDate,\n value,\n weekStartsOn,\n onDayChange,\n isDaySelected,\n isDayActive,\n isDaySelectionEnd,\n isDaySelectionStart,\n onDayEnter,\n onDayLeave,\n isDayHinted,\n isHintedDaySelectionStart,\n isHintedDaySelectionEnd,\n isDayFocused,\n isDayDisabled,\n size,\n showNeighboringMonth = false,\n ...props\n}) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLDivElement>(null);\n const [now] = React.useState(new Date());\n\n const weeks = React.useMemo(\n () => getWeeks(viewDate, weekStartsOn),\n [weekStartsOn, viewDate]\n );\n\n const daysNames = React.useMemo(\n () => getDaysNames(now, weekStartsOn, locale),\n [locale, now, weekStartsOn]\n );\n\n const handleDayChange = React.useCallback(\n (date: Date) => {\n onDayChange(date);\n\n ref.current?.focus();\n },\n [onDayChange]\n );\n\n return (\n <div {...props} vkuiClass=\"CalendarDays\" ref={ref}>\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n >\n {daysNames.map((dayName) => (\n <Caption\n level=\"1\"\n weight=\"regular\"\n vkuiClass=\"CalendarDays__weekday\"\n key={dayName}\n >\n {dayName}\n </Caption>\n ))}\n </div>\n\n {weeks.map((week, i) => (\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n key={i}\n >\n {week.map((day, i) => {\n const sameMonth = isSameMonth(day, viewDate);\n return (\n <CalendarDay\n key={day.toISOString()}\n day={day}\n today={isSameDay(day, now)}\n active={isDayActive(day)}\n onChange={handleDayChange}\n hidden={!showNeighboringMonth && !sameMonth}\n disabled={isDayDisabled(day)}\n selectionStart={isDaySelectionStart(day, i)}\n selectionEnd={isDaySelectionEnd(day, i)}\n hintedSelectionStart={isHintedDaySelectionStart?.(day, i)}\n hintedSelectionEnd={isHintedDaySelectionEnd?.(day, i)}\n selected={isDaySelected?.(day)}\n focused={isDayFocused(day)}\n onEnter={onDayEnter}\n onLeave={onDayLeave}\n hinted={isDayHinted?.(day)}\n sameMonth={sameMonth}\n size={size}\n />\n );\n })}\n </div>\n ))}\n </div>\n );\n};\n"],"file":"CalendarDays.js"}