@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
@@ -45,9 +45,25 @@ export interface ModalRootProps extends HasPlatform {
45
45
  activeModal?: string | null;
46
46
 
47
47
  /**
48
- * Будет вызвано при закрытии активной модалки с её id
48
+ * Будет вызвано при начале открытия активной модалки с её id
49
+ */
50
+ onOpen?(modalId: string): void;
51
+
52
+ /**
53
+ * Будет вызвано при окончательном открытии активной модалки с её id
54
+ */
55
+ onOpened?(modalId: string): void;
56
+
57
+ /**
58
+ * Будет вызвано при начале закрытия активной модалки с её id
49
59
  */
50
60
  onClose?(modalId: string): void;
61
+
62
+ /**
63
+ * Будет вызвано при окончательном закрытии активной модалки с её id
64
+ */
65
+ onClosed?(modalId: string): void;
66
+
51
67
  /**
52
68
  * @ignore
53
69
  */
@@ -76,7 +92,7 @@ class ModalRootTouchComponent extends React.Component<
76
92
  updateModalHeight: this.updateModalHeight,
77
93
  registerModal: ({ id, ...data }) =>
78
94
  Object.assign(this.getModalState(id), data),
79
- onClose: () => this.props.closeActiveModal(),
95
+ onClose: () => this.props.onExit(),
80
96
  isInsideModal: true,
81
97
  };
82
98
 
@@ -150,11 +166,12 @@ class ModalRootTouchComponent extends React.Component<
150
166
  ) {
151
167
  const { enteringModal } = this.props;
152
168
  const enteringState = this.getModalState(enteringModal);
169
+ this.props.onEnter();
153
170
  this.waitTransitionFinish(enteringState, () => {
154
171
  if (enteringState?.innerElement) {
155
172
  enteringState.innerElement.style.transitionDelay = "";
156
173
  }
157
- this.props.onEnter(enteringModal);
174
+ this.props.onEntered(enteringModal);
158
175
  });
159
176
 
160
177
  if (enteringState?.innerElement) {
@@ -274,7 +291,11 @@ class ModalRootTouchComponent extends React.Component<
274
291
  const prevModalState = this.getModalState(id);
275
292
 
276
293
  if (!prevModalState) {
277
- id && warn(`[closeActiveModal] Modal ${id} does not exist - not closing`);
294
+ id &&
295
+ warn(
296
+ `closeActiveModal: Modal ${id} does not exist - not closing`,
297
+ "error"
298
+ );
278
299
  return;
279
300
  }
280
301
 
@@ -284,7 +305,7 @@ class ModalRootTouchComponent extends React.Component<
284
305
 
285
306
  const prevIsPage =
286
307
  !!prevModalState && prevModalState.type === ModalType.PAGE;
287
- this.waitTransitionFinish(prevModalState, () => this.props.onExit(id));
308
+ this.waitTransitionFinish(prevModalState, () => this.props.onExited(id));
288
309
  const exitTranslate =
289
310
  prevIsPage &&
290
311
  nextIsPage &&
@@ -475,7 +496,7 @@ class ModalRootTouchComponent extends React.Component<
475
496
  modalState.hidden = translateY === 100;
476
497
 
477
498
  if (modalState.hidden) {
478
- this.props.closeActiveModal();
499
+ this.props.onExit();
479
500
  }
480
501
 
481
502
  setStateCallback = () => {
@@ -519,7 +540,7 @@ class ModalRootTouchComponent extends React.Component<
519
540
  modalState.hidden = translateY === 100;
520
541
 
521
542
  if (modalState.hidden) {
522
- this.props.closeActiveModal();
543
+ this.props.onExit();
523
544
  }
524
545
 
525
546
  setStateCallback = () => {
@@ -647,6 +668,7 @@ class ModalRootTouchComponent extends React.Component<
647
668
  <TouchRootContext.Provider value={true}>
648
669
  <ModalRootContext.Provider value={this.modalRootContext}>
649
670
  <Touch
671
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
650
672
  vkuiClass={classNames(
651
673
  getClassName("ModalRoot", this.props.platform),
652
674
  {
@@ -662,7 +684,7 @@ class ModalRootTouchComponent extends React.Component<
662
684
  >
663
685
  <div
664
686
  vkuiClass="ModalRoot__mask"
665
- onClick={this.props.closeActiveModal}
687
+ onClick={this.props.onExit}
666
688
  ref={this.maskElementRef}
667
689
  />
668
690
  <div vkuiClass="ModalRoot__viewport" ref={this.viewportRef}>
@@ -689,8 +711,9 @@ class ModalRootTouchComponent extends React.Component<
689
711
  modalState.modalElement = e;
690
712
  }
691
713
  }}
692
- onClose={this.props.closeActiveModal}
714
+ onClose={this.props.onExit}
693
715
  timeout={this.timeout}
716
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
694
717
  vkuiClass={classNames("ModalRoot__modal", {
695
718
  "ModalRoot__modal--active": modalId === activeModal,
696
719
  "ModalRoot__modal--prev": modalId === exitingModal,
@@ -743,7 +766,7 @@ function initModal(modalState: ModalsStateEntry) {
743
766
  case ModalType.CARD:
744
767
  return initCardModal(modalState);
745
768
  default:
746
- IS_DEV && warn("[initActiveModal] modalState.type is unknown");
769
+ IS_DEV && warn("initActiveModal: modalState.type is unknown", "error");
747
770
  }
748
771
  }
749
772
 
@@ -15,9 +15,24 @@ export interface ModalRootProps extends AdaptivityProps {
15
15
  activeModal?: string | null;
16
16
 
17
17
  /**
18
- * Будет вызвано при закрытии активной модалки с её id
18
+ * Будет вызвано при начале открытия активной модалки с её id
19
19
  */
20
- onClose?: (modalId: string) => void;
20
+ onOpen?(modalId: string): void;
21
+
22
+ /**
23
+ * Будет вызвано при окончательном открытии активной модалки с её id
24
+ */
25
+ onOpened?(modalId: string): void;
26
+
27
+ /**
28
+ * Будет вызвано при начале закрытия активной модалки с её id
29
+ */
30
+ onClose?(modalId: string): void;
31
+
32
+ /**
33
+ * Будет вызвано при окончательном закрытии активной модалки с её id
34
+ */
35
+ onClosed?(modalId: string): void;
21
36
  }
22
37
 
23
38
  const ModalRootComponent: React.FC<
@@ -32,9 +32,24 @@ export interface ModalRootProps extends HasPlatform {
32
32
  configProvider?: ConfigProviderContextInterface;
33
33
 
34
34
  /**
35
- * Будет вызвано при закрытии активной модалки с её id
35
+ * Будет вызвано при начале открытия активной модалки с её id
36
+ */
37
+ onOpen?(modalId: string): void;
38
+
39
+ /**
40
+ * Будет вызвано при окончательном открытии активной модалки с её id
41
+ */
42
+ onOpened?(modalId: string): void;
43
+
44
+ /**
45
+ * Будет вызвано при начале закрытия активной модалки с её id
36
46
  */
37
47
  onClose?(modalId: string): void;
48
+
49
+ /**
50
+ * Будет вызвано при окончательном закрытии активной модалки с её id
51
+ */
52
+ onClosed?(modalId: string): void;
38
53
  }
39
54
 
40
55
  class ModalRootDesktopComponent extends React.Component<
@@ -49,7 +64,7 @@ class ModalRootDesktopComponent extends React.Component<
49
64
  updateModalHeight: () => undefined,
50
65
  registerModal: ({ id, ...data }) =>
51
66
  Object.assign(this.getModalState(id), data),
52
- onClose: () => this.props.closeActiveModal(),
67
+ onClose: () => this.props.onExit(),
53
68
  isInsideModal: true,
54
69
  };
55
70
  }
@@ -92,10 +107,11 @@ class ModalRootDesktopComponent extends React.Component<
92
107
  ) {
93
108
  const { enteringModal } = this.props;
94
109
  const enteringState = this.getModalState(enteringModal);
110
+ this.props.onEnter();
95
111
  requestAnimationFrame(() => {
96
112
  if (this.props.enteringModal === enteringModal) {
97
113
  this.waitTransitionFinish(enteringState, () =>
98
- this.props.onEnter(enteringModal)
114
+ this.props.onEntered(enteringModal)
99
115
  );
100
116
  this.animateModalOpacity(enteringState, true);
101
117
  }
@@ -123,7 +139,7 @@ class ModalRootDesktopComponent extends React.Component<
123
139
  return;
124
140
  }
125
141
 
126
- this.waitTransitionFinish(prevModalState, () => this.props.onExit(id));
142
+ this.waitTransitionFinish(prevModalState, () => this.props.onExited(id));
127
143
  this.animateModalOpacity(prevModalState, false);
128
144
  if (!this.props.activeModal) {
129
145
  this.setMaskOpacity(prevModalState, 0);
@@ -152,7 +168,7 @@ class ModalRootDesktopComponent extends React.Component<
152
168
  }
153
169
  }
154
170
 
155
- /* Анимирует сдивг модалки */
171
+ /* Анимирует сдвиг модалки */
156
172
  animateModalOpacity(
157
173
  modalState: ModalsStateEntry | undefined,
158
174
  display: boolean
@@ -202,6 +218,7 @@ class ModalRootDesktopComponent extends React.Component<
202
218
  return (
203
219
  <ModalRootContext.Provider value={this.modalRootContext}>
204
220
  <div
221
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
205
222
  vkuiClass={classNames(
206
223
  getClassName("ModalRoot", this.props.platform),
207
224
  {
@@ -214,7 +231,7 @@ class ModalRootDesktopComponent extends React.Component<
214
231
  <div
215
232
  vkuiClass="ModalRoot__mask"
216
233
  ref={this.maskElementRef}
217
- onClick={this.props.closeActiveModal}
234
+ onClick={this.props.onExit}
218
235
  />
219
236
  <div vkuiClass="ModalRoot__viewport">
220
237
  {this.modals.map((Modal: React.ReactElement) => {
@@ -228,9 +245,10 @@ class ModalRootDesktopComponent extends React.Component<
228
245
  return (
229
246
  <FocusTrap
230
247
  restoreFocus={false}
231
- onClose={this.props.closeActiveModal}
248
+ onClose={this.props.onExit}
232
249
  timeout={this.timeout}
233
250
  key={key}
251
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
234
252
  vkuiClass={classNames("ModalRoot__modal", {
235
253
  "ModalRoot__modal--active":
236
254
  !exitingModal &&
@@ -660,3 +660,115 @@ class SelectModal extends Component {
660
660
 
661
661
  export default withModalRootContext(SelectModal);
662
662
  ```
663
+
664
+ #### В мобильной версии при параметре `autoFocus` у контрола ломается поведение карточки
665
+
666
+ К сожалению, из-за особенностей React, `autoFocus` ломает CSS анимацию.
667
+
668
+ Чтобы исправить проблему, следует отказаться от `autoFocus` и выставлять фокус в ручную при событии `onOpened`.
669
+ Подписываться на `onOpened` можно двумя разными способами.
670
+
671
+ 1️⃣ `<ModalRoot onOpened={(id) => ...} />`
672
+
673
+ ```jsx static
674
+ const App = () => {
675
+ const inputRef = useRef(null);
676
+
677
+ const handleOpen = React.useCallback((id) => {
678
+ if (id === "modal-with-auto-focus" && inputRef.current) {
679
+ inputRef.current.focus();
680
+ }
681
+ }, []);
682
+
683
+ const modal = (
684
+ <ModalRoot activeModal="modal-with-auto-focus" onOpened={handleOpen}>
685
+ <ModalPage id="modal-with-auto-focus">
686
+ <Input getRootRef={inputRef} />
687
+ </ModalPage>
688
+ </ModalRoot>
689
+ );
690
+ // ...
691
+ };
692
+ ```
693
+
694
+ 2️⃣ `<ModalPage onOpened={() => ...} />`
695
+
696
+ > ⚠️ в этом случае `ModalPage` нельзя заворачивать в другой компонент
697
+ > иначе `ModalRoot` не сможет получить доступ к `onOpened`.
698
+
699
+ ```jsx static
700
+ const App = () => {
701
+ const inputRef = useRef(null);
702
+
703
+ const handleOpen = React.useCallback(() => {
704
+ if (inputRef.current) {
705
+ inputRef.current.focus();
706
+ }
707
+ }, []);
708
+
709
+ const modal = (
710
+ <ModalRoot activeModal="modal-with-auto-focus">
711
+ <ModalPage id="modal-with-auto-focus" onOpened={handleOpen}>
712
+ <Input getRootRef={inputRef} />
713
+ </ModalPage>
714
+ </ModalRoot>
715
+ );
716
+ // ...
717
+ };
718
+ ```
719
+
720
+ ```jsx { "props": { "layout": false, "adaptivity": true } }
721
+ const Example = () => {
722
+ const firstInputRef = useRef(null);
723
+ const secondInputRef = useRef(null);
724
+ const [activeModal, setActiveModal] = React.useState(false);
725
+
726
+ const handleOpenOfModalRoot = React.useCallback((id) => {
727
+ if (id === "modal-1") {
728
+ firstInputRef.current.focus();
729
+ }
730
+ }, []);
731
+
732
+ const handleOpenOfModalPage = React.useCallback(() => {
733
+ secondInputRef.current.focus();
734
+ }, []);
735
+
736
+ const modal = (
737
+ <ModalRoot activeModal={activeModal} onOpened={handleOpenOfModalRoot}>
738
+ <ModalPage id="modal-1" onClose={() => setActiveModal(null)}>
739
+ <Div>
740
+ <input type="text" ref={firstInputRef} />
741
+ </Div>
742
+ </ModalPage>
743
+ <ModalPage
744
+ id="modal-2"
745
+ onOpened={handleOpenOfModalPage}
746
+ onClose={() => setActiveModal(null)}
747
+ >
748
+ <Div>
749
+ <input type="text" ref={secondInputRef} />
750
+ </Div>
751
+ </ModalPage>
752
+ </ModalRoot>
753
+ );
754
+
755
+ return (
756
+ <SplitLayout modal={modal}>
757
+ <SplitCol>
758
+ <View activePanel="main">
759
+ <Panel id="main">
760
+ <CellButton multiline onClick={() => setActiveModal("modal-1")}>
761
+ Пример с onOpened() на ModalRoot
762
+ </CellButton>
763
+ <CellButton multiline onClick={() => setActiveModal("modal-2")}>
764
+ Пример с onOpened() на ModalPage
765
+ </CellButton>
766
+ </Panel>
767
+ </View>
768
+ </SplitCol>
769
+ </SplitLayout>
770
+ );
771
+ };
772
+
773
+ Example();
774
+ ```
@@ -16,7 +16,22 @@ export interface ModalElements {
16
16
 
17
17
  export interface ModalsStateEntry extends ModalElements {
18
18
  id: string | null;
19
- onClose?: () => any;
19
+ /**
20
+ * Событие начала открытия модалки.
21
+ */
22
+ onOpen?: VoidFunction;
23
+ /**
24
+ * Событие открытия модалки.
25
+ */
26
+ onOpened?: VoidFunction;
27
+ /**
28
+ * Событие начала закрытия модалки.
29
+ */
30
+ onClose?: VoidFunction;
31
+ /**
32
+ * Событие закрытия модалки.
33
+ */
34
+ onClosed?: VoidFunction;
20
35
  type?: ModalType;
21
36
 
22
37
  settlingHeight?: number;
@@ -15,10 +15,11 @@ interface ModalTransitionState {
15
15
  }
16
16
 
17
17
  export interface ModalTransitionProps extends ModalTransitionState {
18
- onEnter: (id: string | null) => void;
19
- onExit: (id: string | null) => void;
18
+ onEnter: VoidFunction;
19
+ onEntered: (id: string | null) => void;
20
+ onExit: VoidFunction;
21
+ onExited: (id: string | null) => void;
20
22
  getModalState: (id: string) => ModalsStateEntry;
21
- closeActiveModal: VoidFunction;
22
23
  delayEnter: boolean;
23
24
  }
24
25
 
@@ -86,7 +87,10 @@ export function modalTransitionReducer(
86
87
  export function useModalManager(
87
88
  activeModal: string | null | undefined,
88
89
  children: React.ReactNode | React.ReactNode[],
89
- onClose: (id: string) => void,
90
+ onOpen: (id: string) => void = noop,
91
+ onOpened: (id: string) => void = noop,
92
+ onClose: (id: string) => void = noop,
93
+ onClosed: (id: string) => void = noop,
90
94
  initModal: (state: ModalsStateEntry) => void = noop
91
95
  ): ModalTransitionProps {
92
96
  const modalsState = React.useRef<ModalsState>({}).current;
@@ -97,7 +101,10 @@ export function useModalManager(
97
101
  id: id ?? null,
98
102
  };
99
103
 
104
+ state.onOpen = Modal.props.onOpen;
105
+ state.onOpened = Modal.props.onOpened;
100
106
  state.onClose = Modal.props.onClose;
107
+ state.onClosed = Modal.props.onClosed;
101
108
  state.dynamicContentHeight = !!modalProps.dynamicContentHeight;
102
109
  // ModalPage props
103
110
  if (typeof modalProps.settlingHeight === "number") {
@@ -126,7 +133,7 @@ export function useModalManager(
126
133
  useIsomorphicLayoutEffect(() => {
127
134
  // ignore non-existent activeModal
128
135
  if (process.env.NODE_ENV === "development" && isMissing) {
129
- warn(`Can't transition - modal ${activeModal} not found`);
136
+ warn(`Can't transition - modal ${activeModal} not found`, "error");
130
137
  }
131
138
  dispatchTransition({ type: "setActive", id: safeActiveModal ?? null });
132
139
  }, [activeModal]);
@@ -141,13 +148,37 @@ export function useModalManager(
141
148
 
142
149
  const isCard = (id: string | null | undefined) =>
143
150
  id != null && modalsState[id]?.type === ModalType.CARD;
144
- const onEnter = React.useCallback(
145
- (id: string | null) => dispatchTransition({ type: "entered", id }),
146
- []
151
+ const onEntered = React.useCallback(
152
+ (id: string | null) => {
153
+ if (id) {
154
+ const modalState = modalsState[id];
155
+
156
+ if (isFunction(modalState.onOpened)) {
157
+ modalState.onOpened();
158
+ } else if (isFunction(onOpened)) {
159
+ onOpened(id);
160
+ }
161
+ }
162
+
163
+ dispatchTransition({ type: "entered", id });
164
+ },
165
+ [modalsState, onOpened]
147
166
  );
148
- const onExit = React.useCallback(
149
- (id: string | null) => dispatchTransition({ type: "exited", id }),
150
- []
167
+ const onExited = React.useCallback(
168
+ (id: string | null) => {
169
+ if (id) {
170
+ const modalState = modalsState[id];
171
+
172
+ if (isFunction(modalState.onClosed)) {
173
+ modalState.onClosed();
174
+ } else if (isFunction(onClosed)) {
175
+ onClosed(id);
176
+ }
177
+ }
178
+
179
+ dispatchTransition({ type: "exited", id });
180
+ },
181
+ [modalsState, onClosed]
151
182
  );
152
183
  const delayEnter = Boolean(
153
184
  transitionState.exitingModal &&
@@ -158,7 +189,19 @@ export function useModalManager(
158
189
  [modalsState]
159
190
  );
160
191
 
161
- function closeActiveModal() {
192
+ function onEnter() {
193
+ const modalState =
194
+ transitionState.activeModal && modalsState[transitionState.activeModal];
195
+ if (modalState) {
196
+ if (isFunction(modalState.onOpen)) {
197
+ modalState.onOpen();
198
+ } else if (isFunction(onOpen)) {
199
+ onOpen(modalState.id);
200
+ }
201
+ }
202
+ }
203
+
204
+ function onExit() {
162
205
  const modalState =
163
206
  transitionState.activeModal && modalsState[transitionState.activeModal];
164
207
  if (modalState) {
@@ -166,19 +209,18 @@ export function useModalManager(
166
209
  modalState.onClose();
167
210
  } else if (isFunction(onClose)) {
168
211
  onClose(modalState.id);
169
- } else if (process.env.NODE_ENV === "development") {
170
- warn("onClose is undefined");
171
212
  }
172
213
  }
173
214
  }
174
215
 
175
216
  return {
176
217
  onEnter,
218
+ onEntered,
177
219
  onExit,
220
+ onExited,
178
221
  ...transitionState,
179
222
  delayEnter,
180
223
  getModalState,
181
- closeActiveModal,
182
224
  };
183
225
  }
184
226
 
@@ -194,7 +236,10 @@ export function withModalManager(
194
236
  const transitionManager = useModalManager(
195
237
  props.activeModal,
196
238
  props.children,
239
+ (props as any).onOpen,
240
+ (props as any).onOpened,
197
241
  (props as any).onClose,
242
+ (props as any).onClosed,
198
243
  initModal
199
244
  );
200
245
  return <Wrapped {...(props as any)} {...transitionManager} />;
@@ -71,6 +71,7 @@ const NativeSelect: React.FC<
71
71
  return (
72
72
  <FormField
73
73
  Component="label"
74
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
74
75
  vkuiClass={classNames(getClassName("Select", platform), {
75
76
  ["Select--not-selected"]: notSelected,
76
77
  [`Select--align-${align}`]: !!align,
@@ -12,7 +12,7 @@ import { useAdaptivity } from "../../hooks/useAdaptivity";
12
12
  import { PaginationPageType, usePagination } from "../../hooks/usePagination";
13
13
 
14
14
  import Tappable from "../Tappable/Tappable";
15
- import Button from "../Button/Button";
15
+ import { Button } from "../Button/Button";
16
16
 
17
17
  import "./Pagination.css";
18
18
 
@@ -44,17 +44,17 @@ export interface PaginationProps
44
44
  */
45
45
  disabled?: boolean;
46
46
  /**
47
- * Переобределение `aria-label` для кнопки навигации назад.
47
+ * Переопределение `aria-label` для кнопки навигации назад.
48
48
  * По умолчанию используется текст на "ru_RU".
49
49
  */
50
50
  prevButtonAriaLabel?: string;
51
51
  /**
52
- * Переобределение `aria-label` для кнопки навигации вперёд.
52
+ * Переопределение `aria-label` для кнопки навигации вперёд.
53
53
  * По умолчанию используется текст на "ru_RU".
54
54
  */
55
55
  nextButtonAriaLabel?: string;
56
56
  /**
57
- * Функция для переопределния и/или локализации `aria-label` атрибута.
57
+ * Функция для переопределения и/или локализации `aria-label` атрибута.
58
58
  * По умолчанию используется текст на "ru_RU".
59
59
  */
60
60
  getPageAriaLabel?(page: number, isCurrent: boolean): string;
@@ -8,7 +8,7 @@
8
8
 
9
9
  ## `usePagination`
10
10
 
11
- Для полной кастомизации можно использовать хук `usePagination()`. Возвращает массив типа `[1, 2, 3, 4, 5, 'end-ellipsis', 8]`. Принимиает почти те же параметры, что и `Pagination`.
11
+ Для полной кастомизации можно использовать хук `usePagination()`. Возвращает массив типа `[1, 2, 3, 4, 5, 'end-ellipsis', 8]`. Принимает почти те же параметры, что и `Pagination`.
12
12
 
13
13
  ```jsx { "props": { "layout": false, "adaptivity": true, "iframe": false } }
14
14
  const Example = () => {
@@ -30,6 +30,7 @@ export const Panel = withAdaptivity<PanelProps & AdaptivityContextInterface>(
30
30
  <div
31
31
  {...restProps}
32
32
  ref={getRootRef}
33
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
33
34
  vkuiClass={classNames(
34
35
  getClassName("Panel", platform),
35
36
  `Panel--${sizeX}`,
@@ -91,6 +91,7 @@ const PanelHeader: React.FC<PanelHeaderProps> = (props: PanelHeaderProps) => {
91
91
  return (
92
92
  <div
93
93
  {...restProps}
94
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
94
95
  vkuiClass={classNames(
95
96
  getClassName("PanelHeader", platform),
96
97
  {
@@ -36,6 +36,7 @@ const PanelHeaderBack: React.FunctionComponent<PanelHeaderBackProps> = ({
36
36
  return (
37
37
  <PanelHeaderButton
38
38
  {...restProps}
39
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
39
40
  vkuiClass={classNames(getClassName("PanelHeaderBack", platform), {
40
41
  "PanelHeaderBack--has-label": showLabel && !!label,
41
42
  })}
@@ -7,7 +7,7 @@ import { usePlatform } from "../../hooks/usePlatform";
7
7
  import { getTitleFromChildren, isPrimitiveReactNode } from "../../lib/utils";
8
8
  import { IOS, VKCOM, ANDROID } from "../../lib/platform";
9
9
  import Text from "../Typography/Text/Text";
10
- import Title from "../Typography/Title/Title";
10
+ import { Title } from "../Typography/Title/Title";
11
11
  import "./PanelHeaderButton.css";
12
12
 
13
13
  export interface PanelHeaderButtonProps extends Omit<TappableProps, "label"> {
@@ -76,7 +76,8 @@ export const PanelHeaderButton: React.FC<PanelHeaderButtonProps> = ({
76
76
 
77
77
  if (!hasAccessibleName) {
78
78
  warn(
79
- "a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label."
79
+ "a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label.",
80
+ "error"
80
81
  );
81
82
  }
82
83
  }
@@ -88,6 +89,7 @@ export const PanelHeaderButton: React.FC<PanelHeaderButtonProps> = ({
88
89
  Component={restProps.href ? "a" : "button"}
89
90
  activeEffectDelay={200}
90
91
  activeMode={activeMode}
92
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
91
93
  vkuiClass={classNames(getClassName("PanelHeaderButton", platform), {
92
94
  "PanelHeaderButton--primary": primary,
93
95
  "PanelHeaderButton--primitive": isPrimitive,
@@ -63,6 +63,7 @@ export const PanelHeaderContext: React.FC<PanelHeaderContextProps> = ({
63
63
  return (
64
64
  <FixedLayout
65
65
  {...restProps}
66
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
66
67
  vkuiClass={classNames(getClassName("PanelHeaderContext", platform), {
67
68
  "PanelHeaderContext--opened": opened,
68
69
  "PanelHeaderContext--closing": closing,
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { classNames } from "../../lib/classNames";
3
3
  import { hasReactNode } from "../../lib/utils";
4
- import Title from "../Typography/Title/Title";
4
+ import { Title } from "../Typography/Title/Title";
5
5
  import Headline from "../Typography/Headline/Headline";
6
6
  import { HasRootRef } from "../../types";
7
7
  import "./Placeholder.css";
@@ -42,6 +42,7 @@ const Placeholder: React.FC<PlaceholderProps> = (props: PlaceholderProps) => {
42
42
  <div
43
43
  {...restProps}
44
44
  ref={getRootRef}
45
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
45
46
  vkuiClass={classNames("Placeholder", {
46
47
  "Placeholder--stretched": stretched,
47
48
  })}
@@ -54,6 +54,7 @@ export const PopoutWrapper: React.FC<PopoutWrapperProps> = ({
54
54
  return (
55
55
  <div
56
56
  {...restProps}
57
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
57
58
  vkuiClass={classNames(
58
59
  baseClassNames,
59
60
  `PopoutWrapper--v-${alignY}`,