@vkontakte/vkui 5.0.0-beta.3 → 5.0.0-beta.4
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.
- package/README.md +12 -2
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +7 -11
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +2 -2
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +11 -11
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.d.ts +2 -3
- package/dist/cjs/components/AppRoot/AppRoot.js +22 -20
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +3 -3
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js +5 -6
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.js +19 -15
- package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cjs/components/BaseGallery/types.d.ts +5 -3
- package/dist/cjs/components/BaseGallery/types.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +1 -1
- package/dist/cjs/components/Button/Button.js +3 -4
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js +3 -2
- package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -2
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +3 -2
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +28 -29
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +1 -5
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +17 -26
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.d.ts +5 -6
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +3 -3
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.d.ts +9 -0
- package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js +26 -0
- package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -0
- package/dist/cjs/components/Counter/Counter.d.ts +4 -2
- package/dist/cjs/components/Counter/Counter.js +13 -10
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +6 -14
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.d.ts +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js +13 -12
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cjs/components/FormStatus/FormStatus.d.ts +9 -0
- package/dist/cjs/components/FormStatus/FormStatus.js +29 -0
- package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -0
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +6 -7
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -2
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
- package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/cjs/components/LocaleProvider/LocaleProvider.d.ts +17 -0
- package/dist/cjs/components/LocaleProvider/LocaleProvider.js +24 -0
- package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -0
- package/dist/cjs/components/ModalRoot/ModalRoot.js +3 -2
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +2 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +17 -15
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js +22 -14
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.js +2 -1
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +3 -2
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/Root/Root.js +5 -5
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +8 -9
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.d.ts +9 -2
- package/dist/cjs/components/Snackbar/Snackbar.js +10 -4
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +16 -12
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/helpers/getPointerClassName.d.ts +2 -0
- package/dist/cjs/helpers/{getMouseClassName.js → getPointerClassName.js} +4 -4
- package/dist/cjs/helpers/getPointerClassName.js.map +1 -0
- package/dist/cjs/helpers/range.d.ts +9 -0
- package/dist/cjs/helpers/range.js +33 -0
- package/dist/cjs/helpers/range.js.map +1 -0
- package/dist/cjs/hoc/withPlatform.js +3 -5
- package/dist/cjs/hoc/withPlatform.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivity.d.ts +3 -0
- package/dist/cjs/hooks/useAdaptivity.js +4 -26
- package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityConditionalRender/constants.d.ts +68 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/constants.js +80 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/constants.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.d.ts +6 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js +42 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/index.d.ts +2 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/index.js +13 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/index.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/types.d.ts +16 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/types.js +6 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/types.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.d.ts +2 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +35 -0
- package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityHasHover.d.ts +8 -0
- package/dist/cjs/hooks/useAdaptivityHasHover.js +31 -0
- package/dist/cjs/hooks/useAdaptivityHasHover.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityHasPointer.d.ts +8 -0
- package/dist/cjs/hooks/useAdaptivityHasPointer.js +31 -0
- package/dist/cjs/hooks/useAdaptivityHasPointer.js.map +1 -0
- package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js +9 -9
- package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/cjs/hooks/useAppearance.d.ts +1 -1
- package/dist/cjs/hooks/useAppearance.js +6 -7
- package/dist/cjs/hooks/useAppearance.js.map +1 -1
- package/dist/cjs/hooks/usePagination.js +6 -14
- package/dist/cjs/hooks/usePagination.js.map +1 -1
- package/dist/cjs/hooks/usePlatform.js +3 -7
- package/dist/cjs/hooks/usePlatform.js.map +1 -1
- package/dist/cjs/index.d.ts +21 -14
- package/dist/cjs/index.js +47 -62
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/SSR.d.ts +0 -7
- package/dist/cjs/lib/SSR.js +6 -19
- package/dist/cjs/lib/SSR.js.map +1 -1
- package/dist/cjs/lib/adaptivity/constants.d.ts +37 -0
- package/dist/cjs/lib/adaptivity/constants.js +62 -0
- package/dist/cjs/lib/adaptivity/constants.js.map +1 -0
- package/dist/cjs/lib/adaptivity/functions.d.ts +22 -0
- package/dist/cjs/lib/adaptivity/functions.js +72 -0
- package/dist/cjs/lib/adaptivity/functions.js.map +1 -0
- package/dist/cjs/lib/adaptivity/index.d.ts +3 -0
- package/dist/cjs/lib/adaptivity/index.js +28 -0
- package/dist/cjs/lib/adaptivity/index.js.map +1 -0
- package/dist/cjs/lib/adaptivity/types.d.ts +12 -0
- package/dist/cjs/lib/adaptivity/types.js +6 -0
- package/dist/cjs/lib/adaptivity/types.js.map +1 -0
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +7 -11
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +2 -2
- package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +14 -14
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts +2 -3
- package/dist/components/AppRoot/AppRoot.js +22 -20
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +3 -3
- package/dist/components/AppearanceProvider/AppearanceProvider.js +5 -6
- package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/components/BaseGallery/BaseGallery.js +19 -15
- package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/components/BaseGallery/types.d.ts +5 -3
- package/dist/components/BaseGallery/types.js.map +1 -1
- package/dist/components/Button/Button.d.ts +1 -1
- package/dist/components/Button/Button.js +3 -4
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.js +3 -2
- package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.js +3 -2
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js +3 -2
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.js +28 -29
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +1 -5
- package/dist/components/ConfigProvider/ConfigProvider.js +17 -27
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +5 -6
- package/dist/components/ConfigProvider/ConfigProviderContext.js +3 -3
- package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.d.ts +9 -0
- package/dist/components/ConfigProvider/ConfigProviderOverride.js +19 -0
- package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -0
- package/dist/components/Counter/Counter.d.ts +4 -2
- package/dist/components/Counter/Counter.js +13 -10
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.js +4 -12
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.d.ts +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.js +13 -12
- package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts +9 -0
- package/dist/components/FormStatus/FormStatus.js +20 -0
- package/dist/components/FormStatus/FormStatus.js.map +1 -0
- package/dist/components/HorizontalScroll/HorizontalScroll.js +6 -7
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -2
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.d.ts +17 -0
- package/dist/components/LocaleProvider/LocaleProvider.js +17 -0
- package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -0
- package/dist/components/ModalRoot/ModalRoot.js +3 -2
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +2 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +18 -16
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PopoutRoot/PopoutRoot.js +22 -14
- package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/components/Progress/Progress.js +2 -1
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +3 -2
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Root/Root.js +6 -6
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/Select/Select.js +6 -7
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +9 -2
- package/dist/components/Snackbar/Snackbar.js +10 -4
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/Tappable/Tappable.js +16 -12
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +5 -5
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +7 -11
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.d.ts +2 -2
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +14 -14
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.module.css +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.d.ts +2 -3
- package/dist/cssm/components/AppRoot/AppRoot.js +22 -21
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.module.css +1 -1
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.d.ts +3 -3
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +5 -6
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.module.css +1 -1
- package/dist/cssm/components/Banner/Banner.module.css +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.js +19 -15
- package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.module.css +1 -1
- package/dist/cssm/components/BaseGallery/types.d.ts +5 -3
- package/dist/cssm/components/BaseGallery/types.js.map +1 -1
- package/dist/cssm/components/Button/Button.d.ts +1 -1
- package/dist/cssm/components/Button/Button.js +3 -4
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Button/Button.module.css +3 -3
- package/dist/cssm/components/CalendarDay/CalendarDay.js +3 -2
- package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.module.css +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.js +3 -2
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +3 -2
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.module.css +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.module.css +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.module.css +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +28 -29
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.module.css +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.d.ts +1 -5
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +17 -27
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.d.ts +5 -6
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +3 -3
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.d.ts +9 -0
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +19 -0
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -0
- package/dist/cssm/components/Counter/Counter.d.ts +4 -2
- package/dist/cssm/components/Counter/Counter.js +13 -10
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.module.css +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.module.css +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +4 -12
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js +13 -12
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.d.ts +9 -0
- package/dist/cssm/components/FormStatus/FormStatus.js +21 -0
- package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -0
- package/dist/cssm/components/FormStatus/FormStatus.module.css +1 -0
- package/dist/cssm/components/Group/Group.module.css +1 -1
- package/dist/cssm/components/Header/Header.module.css +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +6 -7
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -2
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/cssm/components/Input/Input.module.css +1 -1
- package/dist/cssm/components/InputLike/InputLike.module.css +1 -1
- package/dist/cssm/components/Link/Link.module.css +1 -1
- package/dist/cssm/components/LocaleProvider/LocaleProvider.d.ts +17 -0
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js +17 -0
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -0
- package/dist/cssm/components/ModalRoot/ModalRoot.js +3 -2
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +2 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +18 -16
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.module.css +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.module.css +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js +22 -14
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.module.css +1 -1
- package/dist/cssm/components/Progress/Progress.js +2 -1
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +3 -2
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.module.css +1 -1
- package/dist/cssm/components/RichCell/RichCell.module.css +1 -1
- package/dist/cssm/components/Root/Root.js +6 -6
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/Search/Search.module.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +1 -1
- package/dist/cssm/components/Select/Select.js +6 -7
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/Select/Select.module.css +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.d.ts +9 -2
- package/dist/cssm/components/Snackbar/Snackbar.js +10 -4
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.module.css +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.module.css +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.module.css +1 -1
- package/dist/cssm/components/Tabs/Tabs.module.css +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +16 -12
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.module.css +1 -1
- package/dist/cssm/components/Textarea/Textarea.module.css +1 -1
- package/dist/cssm/components/View/View.module.css +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.module.css +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/helpers/getPointerClassName.d.ts +2 -0
- package/dist/cssm/helpers/{getMouseClassName.js → getPointerClassName.js} +3 -3
- package/dist/cssm/helpers/getPointerClassName.js.map +1 -0
- package/dist/cssm/helpers/range.d.ts +9 -0
- package/dist/cssm/helpers/range.js +26 -0
- package/dist/cssm/helpers/range.js.map +1 -0
- package/dist/cssm/hoc/withPlatform.js +4 -6
- package/dist/cssm/hoc/withPlatform.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivity.d.ts +3 -0
- package/dist/cssm/hooks/useAdaptivity.js +4 -25
- package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityConditionalRender/constants.d.ts +68 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/constants.js +68 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/constants.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.d.ts +6 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js +33 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/index.d.ts +2 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/index.js +2 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/index.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/types.d.ts +16 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/types.js +2 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/types.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.d.ts +2 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +27 -0
- package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityHasHover.d.ts +8 -0
- package/dist/cssm/hooks/useAdaptivityHasHover.js +31 -0
- package/dist/cssm/hooks/useAdaptivityHasHover.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityHasPointer.d.ts +8 -0
- package/dist/cssm/hooks/useAdaptivityHasPointer.js +31 -0
- package/dist/cssm/hooks/useAdaptivityHasPointer.js.map +1 -0
- package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +11 -11
- package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/cssm/hooks/useAppearance.d.ts +1 -1
- package/dist/cssm/hooks/useAppearance.js +6 -5
- package/dist/cssm/hooks/useAppearance.js.map +1 -1
- package/dist/cssm/hooks/usePagination.js +6 -14
- package/dist/cssm/hooks/usePagination.js.map +1 -1
- package/dist/cssm/hooks/usePlatform.js +4 -7
- package/dist/cssm/hooks/usePlatform.js.map +1 -1
- package/dist/cssm/index.d.ts +21 -14
- package/dist/cssm/index.js +14 -14
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/SSR.d.ts +0 -7
- package/dist/cssm/lib/SSR.js +6 -18
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/adaptivity/constants.d.ts +37 -0
- package/dist/cssm/lib/adaptivity/constants.js +44 -0
- package/dist/cssm/lib/adaptivity/constants.js.map +1 -0
- package/dist/cssm/lib/adaptivity/functions.d.ts +22 -0
- package/dist/cssm/lib/adaptivity/functions.js +62 -0
- package/dist/cssm/lib/adaptivity/functions.js.map +1 -0
- package/dist/cssm/lib/adaptivity/index.d.ts +3 -0
- package/dist/cssm/lib/adaptivity/index.js +4 -0
- package/dist/cssm/lib/adaptivity/index.js.map +1 -0
- package/dist/cssm/lib/adaptivity/types.d.ts +12 -0
- package/dist/cssm/lib/adaptivity/types.js +2 -0
- package/dist/cssm/lib/adaptivity/types.js.map +1 -0
- package/dist/cssm/styles/adaptivity.module.css +1 -0
- package/dist/cssm/styles/common.css +1 -1
- package/dist/cssm/styles/components.css +5 -5
- package/dist/cssm/styles/constants.css +1 -1
- package/dist/cssm/styles/themes.css +1 -1
- package/dist/helpers/getPointerClassName.d.ts +2 -0
- package/dist/helpers/{getMouseClassName.js → getPointerClassName.js} +3 -3
- package/dist/helpers/getPointerClassName.js.map +1 -0
- package/dist/helpers/range.d.ts +9 -0
- package/dist/helpers/range.js +26 -0
- package/dist/helpers/range.js.map +1 -0
- package/dist/hoc/withPlatform.js +4 -6
- package/dist/hoc/withPlatform.js.map +1 -1
- package/dist/hooks/useAdaptivity.d.ts +3 -0
- package/dist/hooks/useAdaptivity.js +4 -25
- package/dist/hooks/useAdaptivity.js.map +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/constants.d.ts +68 -0
- package/dist/hooks/useAdaptivityConditionalRender/constants.js +67 -0
- package/dist/hooks/useAdaptivityConditionalRender/constants.js.map +1 -0
- package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts +6 -0
- package/dist/hooks/useAdaptivityConditionalRender/helpers.js +33 -0
- package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -0
- package/dist/hooks/useAdaptivityConditionalRender/index.d.ts +2 -0
- package/dist/hooks/useAdaptivityConditionalRender/index.js +2 -0
- package/dist/hooks/useAdaptivityConditionalRender/index.js.map +1 -0
- package/dist/hooks/useAdaptivityConditionalRender/types.d.ts +16 -0
- package/dist/hooks/useAdaptivityConditionalRender/types.js +2 -0
- package/dist/hooks/useAdaptivityConditionalRender/types.js.map +1 -0
- package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.d.ts +2 -0
- package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +27 -0
- package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -0
- package/dist/hooks/useAdaptivityHasHover.d.ts +8 -0
- package/dist/hooks/useAdaptivityHasHover.js +31 -0
- package/dist/hooks/useAdaptivityHasHover.js.map +1 -0
- package/dist/hooks/useAdaptivityHasPointer.d.ts +8 -0
- package/dist/hooks/useAdaptivityHasPointer.js +31 -0
- package/dist/hooks/useAdaptivityHasPointer.js.map +1 -0
- package/dist/hooks/useAdaptivityWithJSMediaQueries.js +11 -11
- package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/hooks/useAppearance.d.ts +1 -1
- package/dist/hooks/useAppearance.js +6 -5
- package/dist/hooks/useAppearance.js.map +1 -1
- package/dist/hooks/usePagination.js +6 -14
- package/dist/hooks/usePagination.js.map +1 -1
- package/dist/hooks/usePlatform.js +4 -7
- package/dist/hooks/usePlatform.js.map +1 -1
- package/dist/index.d.ts +21 -14
- package/dist/index.js +14 -14
- package/dist/index.js.map +1 -1
- package/dist/lib/SSR.d.ts +0 -7
- package/dist/lib/SSR.js +6 -18
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/adaptivity/constants.d.ts +37 -0
- package/dist/lib/adaptivity/constants.js +44 -0
- package/dist/lib/adaptivity/constants.js.map +1 -0
- package/dist/lib/adaptivity/functions.d.ts +22 -0
- package/dist/lib/adaptivity/functions.js +62 -0
- package/dist/lib/adaptivity/functions.js.map +1 -0
- package/dist/lib/adaptivity/index.d.ts +3 -0
- package/dist/lib/adaptivity/index.js +4 -0
- package/dist/lib/adaptivity/index.js.map +1 -0
- package/dist/lib/adaptivity/types.d.ts +12 -0
- package/dist/lib/adaptivity/types.js +2 -0
- package/dist/lib/adaptivity/types.js.map +1 -0
- package/dist/stable.js.tmp +3 -3
- package/dist/vkui.css +6 -6
- package/dist/vkui.css.map +1 -1
- package/package.json +13 -21
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.d.ts +0 -3
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js +0 -12
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +0 -1
- package/dist/cjs/components/DeviceConditionalRender/DeviceConditionalRender.d.ts +0 -6
- package/dist/cjs/components/DeviceConditionalRender/DeviceConditionalRender.js +0 -24
- package/dist/cjs/components/DeviceConditionalRender/DeviceConditionalRender.js.map +0 -1
- package/dist/cjs/components/LocaleProviderContext/LocaleProviderContext.d.ts +0 -2
- package/dist/cjs/components/LocaleProviderContext/LocaleProviderContext.js +0 -11
- package/dist/cjs/components/LocaleProviderContext/LocaleProviderContext.js.map +0 -1
- package/dist/cjs/components/SizeXConditionalRender/SizeXConditionalRender.d.ts +0 -6
- package/dist/cjs/components/SizeXConditionalRender/SizeXConditionalRender.js +0 -25
- package/dist/cjs/components/SizeXConditionalRender/SizeXConditionalRender.js.map +0 -1
- package/dist/cjs/components/SizeYConditionalRender/SizeYConditionalRender.d.ts +0 -6
- package/dist/cjs/components/SizeYConditionalRender/SizeYConditionalRender.js +0 -25
- package/dist/cjs/components/SizeYConditionalRender/SizeYConditionalRender.js.map +0 -1
- package/dist/cjs/components/ViewWidthConditionalRender/ViewWidthConditionalRender.d.ts +0 -6
- package/dist/cjs/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js +0 -25
- package/dist/cjs/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js.map +0 -1
- package/dist/cjs/helpers/getMouseClassName.d.ts +0 -2
- package/dist/cjs/helpers/getMouseClassName.js.map +0 -1
- package/dist/cjs/hooks/useBrowserInfo.d.ts +0 -2
- package/dist/cjs/hooks/useBrowserInfo.js +0 -16
- package/dist/cjs/hooks/useBrowserInfo.js.map +0 -1
- package/dist/cjs/lib/adaptivity.d.ts +0 -38
- package/dist/cjs/lib/adaptivity.js +0 -97
- package/dist/cjs/lib/adaptivity.js.map +0 -1
- package/dist/cjs/unstable/index.d.ts +0 -15
- package/dist/cjs/unstable/index.js +0 -48
- package/dist/cjs/unstable/index.js.map +0 -1
- package/dist/components/AppearanceProvider/AppearanceProviderContext.d.ts +0 -3
- package/dist/components/AppearanceProvider/AppearanceProviderContext.js +0 -4
- package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +0 -1
- package/dist/components/DeviceConditionalRender/DeviceConditionalRender.d.ts +0 -6
- package/dist/components/DeviceConditionalRender/DeviceConditionalRender.js +0 -16
- package/dist/components/DeviceConditionalRender/DeviceConditionalRender.js.map +0 -1
- package/dist/components/LocaleProviderContext/LocaleProviderContext.d.ts +0 -2
- package/dist/components/LocaleProviderContext/LocaleProviderContext.js +0 -3
- package/dist/components/LocaleProviderContext/LocaleProviderContext.js.map +0 -1
- package/dist/components/SizeXConditionalRender/SizeXConditionalRender.d.ts +0 -6
- package/dist/components/SizeXConditionalRender/SizeXConditionalRender.js +0 -17
- package/dist/components/SizeXConditionalRender/SizeXConditionalRender.js.map +0 -1
- package/dist/components/SizeYConditionalRender/SizeYConditionalRender.d.ts +0 -6
- package/dist/components/SizeYConditionalRender/SizeYConditionalRender.js +0 -17
- package/dist/components/SizeYConditionalRender/SizeYConditionalRender.js.map +0 -1
- package/dist/components/ViewWidthConditionalRender/ViewWidthConditionalRender.d.ts +0 -6
- package/dist/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js +0 -17
- package/dist/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js.map +0 -1
- package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.d.ts +0 -3
- package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js +0 -4
- package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +0 -1
- package/dist/cssm/components/DeviceConditionalRender/DeviceConditionalRender.d.ts +0 -6
- package/dist/cssm/components/DeviceConditionalRender/DeviceConditionalRender.js +0 -17
- package/dist/cssm/components/DeviceConditionalRender/DeviceConditionalRender.js.map +0 -1
- package/dist/cssm/components/DeviceConditionalRender/DeviceConditionalRender.module.css +0 -1
- package/dist/cssm/components/LocaleProviderContext/LocaleProviderContext.d.ts +0 -2
- package/dist/cssm/components/LocaleProviderContext/LocaleProviderContext.js +0 -3
- package/dist/cssm/components/LocaleProviderContext/LocaleProviderContext.js.map +0 -1
- package/dist/cssm/components/SizeXConditionalRender/SizeXConditionalRender.d.ts +0 -6
- package/dist/cssm/components/SizeXConditionalRender/SizeXConditionalRender.js +0 -18
- package/dist/cssm/components/SizeXConditionalRender/SizeXConditionalRender.js.map +0 -1
- package/dist/cssm/components/SizeXConditionalRender/SizeXConditionalRender.module.css +0 -1
- package/dist/cssm/components/SizeYConditionalRender/SizeYConditionalRender.d.ts +0 -6
- package/dist/cssm/components/SizeYConditionalRender/SizeYConditionalRender.js +0 -18
- package/dist/cssm/components/SizeYConditionalRender/SizeYConditionalRender.js.map +0 -1
- package/dist/cssm/components/SizeYConditionalRender/SizeYConditionalRender.module.css +0 -1
- package/dist/cssm/components/ViewWidthConditionalRender/ViewWidthConditionalRender.d.ts +0 -6
- package/dist/cssm/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js +0 -18
- package/dist/cssm/components/ViewWidthConditionalRender/ViewWidthConditionalRender.js.map +0 -1
- package/dist/cssm/components/ViewWidthConditionalRender/ViewWidthConditionalRender.module.css +0 -1
- package/dist/cssm/helpers/getMouseClassName.d.ts +0 -2
- package/dist/cssm/helpers/getMouseClassName.js.map +0 -1
- package/dist/cssm/hooks/useBrowserInfo.d.ts +0 -2
- package/dist/cssm/hooks/useBrowserInfo.js +0 -9
- package/dist/cssm/hooks/useBrowserInfo.js.map +0 -1
- package/dist/cssm/lib/adaptivity.d.ts +0 -38
- package/dist/cssm/lib/adaptivity.js +0 -81
- package/dist/cssm/lib/adaptivity.js.map +0 -1
- package/dist/cssm/styles/unstable.css +0 -1
- package/dist/cssm/unstable/index.d.ts +0 -15
- package/dist/cssm/unstable/index.js +0 -10
- package/dist/cssm/unstable/index.js.map +0 -1
- package/dist/helpers/getMouseClassName.d.ts +0 -2
- package/dist/helpers/getMouseClassName.js.map +0 -1
- package/dist/hooks/useBrowserInfo.d.ts +0 -2
- package/dist/hooks/useBrowserInfo.js +0 -9
- package/dist/hooks/useBrowserInfo.js.map +0 -1
- package/dist/lib/adaptivity.d.ts +0 -38
- package/dist/lib/adaptivity.js +0 -81
- package/dist/lib/adaptivity.js.map +0 -1
- package/dist/unstable/index.d.ts +0 -15
- package/dist/unstable/index.js +0 -10
- package/dist/unstable/index.js.map +0 -1
- package/dist/unstable.css +0 -3
- package/dist/unstable.css.map +0 -1
- package/dist/unstable.js.tmp +0 -24
package/README.md
CHANGED
|
@@ -14,9 +14,19 @@ VKUI — это библиотека адаптивных React-компонен
|
|
|
14
14
|
|
|
15
15
|
## Установка
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
**npm:**
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
```sh
|
|
20
|
+
npm i @vkontakte/vkui @vkontakte/icons @vkontakte/vk-bridge
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**yarn:**
|
|
24
|
+
|
|
25
|
+
```sh
|
|
26
|
+
yarn add @vkontakte/vkui @vkontakte/icons @vkontakte/vk-bridge
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
> _Обратите внимание_: мы поддерживаем [react](https://www.npmjs.com/package/react) и [react-dom](https://www.npmjs.com/package/react-dom) `^17.0.0` и `^18.1.0`
|
|
20
30
|
|
|
21
31
|
## Hello World
|
|
22
32
|
|
|
@@ -26,5 +26,5 @@ export interface ActionSheetItemProps extends React.HTMLAttributes<HTMLElement>,
|
|
|
26
26
|
/**
|
|
27
27
|
* @see https://vkcom.github.io/VKUI/#/ActionSheetItem
|
|
28
28
|
*/
|
|
29
|
-
declare const ActionSheetItem: ({ children, autoClose, mode, meta, subtitle, before, selectable, value, name, checked, defaultChecked, onChange, onClick, onImmediateClick, multiline, iconChecked, className, ...restProps }: ActionSheetItemProps) => JSX.Element;
|
|
29
|
+
declare const ActionSheetItem: ({ children, autoClose, mode, meta, subtitle, before, selectable, value, name, checked, defaultChecked, onChange, onClick, onImmediateClick, multiline, iconChecked: iconCheckedProp, className, ...restProps }: ActionSheetItemProps) => JSX.Element;
|
|
30
30
|
export { ActionSheetItem };
|
|
@@ -13,6 +13,7 @@ var _getSizeYClassName = require("../../helpers/getSizeYClassName");
|
|
|
13
13
|
var _classNames = require("../../lib/classNames");
|
|
14
14
|
var _Tappable = require("../Tappable/Tappable");
|
|
15
15
|
var _usePlatform = require("../../hooks/usePlatform");
|
|
16
|
+
var _adaptivity = require("../../lib/adaptivity");
|
|
16
17
|
var _utils = require("../../lib/utils");
|
|
17
18
|
var _platform = require("../../lib/platform");
|
|
18
19
|
var _Subhead = require("../Typography/Subhead/Subhead");
|
|
@@ -20,16 +21,7 @@ var _Text = require("../Typography/Text/Text");
|
|
|
20
21
|
var _icons = require("@vkontakte/icons");
|
|
21
22
|
var _ActionSheetContext = require("../ActionSheet/ActionSheetContext");
|
|
22
23
|
var _useAdaptivityWithJSMediaQueries = require("../../hooks/useAdaptivityWithJSMediaQueries");
|
|
23
|
-
var _SizeYConditionalRender = require("../SizeYConditionalRender/SizeYConditionalRender");
|
|
24
24
|
var _excluded = ["children", "autoClose", "mode", "meta", "subtitle", "before", "selectable", "value", "name", "checked", "defaultChecked", "onChange", "onClick", "onImmediateClick", "multiline", "iconChecked", "className"];
|
|
25
|
-
var defaultIconChecked = /*#__PURE__*/React.createElement(_SizeYConditionalRender.SizeYConditionalRender, {
|
|
26
|
-
compact: /*#__PURE__*/React.createElement(_icons.Icon20CheckCircleOn, {
|
|
27
|
-
"aria-hidden": true
|
|
28
|
-
}),
|
|
29
|
-
regular: /*#__PURE__*/React.createElement(_icons.Icon24CheckCircleOn, {
|
|
30
|
-
"aria-hidden": true
|
|
31
|
-
})
|
|
32
|
-
});
|
|
33
25
|
/**
|
|
34
26
|
* @see https://vkcom.github.io/VKUI/#/ActionSheetItem
|
|
35
27
|
*/
|
|
@@ -51,8 +43,7 @@ var ActionSheetItem = function ActionSheetItem(_ref) {
|
|
|
51
43
|
onImmediateClick = _ref.onImmediateClick,
|
|
52
44
|
_ref$multiline = _ref.multiline,
|
|
53
45
|
multiline = _ref$multiline === void 0 ? false : _ref$multiline,
|
|
54
|
-
|
|
55
|
-
iconChecked = _ref$iconChecked === void 0 ? defaultIconChecked : _ref$iconChecked,
|
|
46
|
+
iconCheckedProp = _ref.iconChecked,
|
|
56
47
|
className = _ref.className,
|
|
57
48
|
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
58
49
|
var platform = (0, _usePlatform.usePlatform)();
|
|
@@ -64,6 +55,11 @@ var ActionSheetItem = function ActionSheetItem(_ref) {
|
|
|
64
55
|
isDesktop = _React$useContext.isDesktop;
|
|
65
56
|
var _useAdaptivityWithJSM = (0, _useAdaptivityWithJSMediaQueries.useAdaptivityWithJSMediaQueries)(),
|
|
66
57
|
sizeY = _useAdaptivityWithJSM.sizeY;
|
|
58
|
+
var iconChecked = iconCheckedProp || (sizeY === _adaptivity.SizeType.COMPACT ? /*#__PURE__*/React.createElement(_icons.Icon20CheckCircleOn, {
|
|
59
|
+
"aria-hidden": true
|
|
60
|
+
}) : /*#__PURE__*/React.createElement(_icons.Icon24CheckCircleOn, {
|
|
61
|
+
"aria-hidden": true
|
|
62
|
+
}));
|
|
67
63
|
var Component = restProps.href ? "a" : "div";
|
|
68
64
|
if (selectable) {
|
|
69
65
|
Component = "label";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionSheetItem.js","names":["
|
|
1
|
+
{"version":3,"file":"ActionSheetItem.js","names":["ActionSheetItem","children","autoClose","mode","meta","subtitle","before","selectable","value","name","checked","defaultChecked","onChange","onClick","onImmediateClick","multiline","iconCheckedProp","iconChecked","className","restProps","platform","usePlatform","React","useContext","ActionSheetContext","onItemClick","noop","isDesktop","useAdaptivityWithJSMediaQueries","sizeY","SizeType","COMPACT","Component","href","isRich","isCentered","Platform","IOS","Boolean","undefined","classNamesString","styles","getSizeYClassName","disabled"],"sources":["../../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { getSizeYClassName } from \"../../helpers/getSizeYClassName\";\nimport { classNamesString } from \"../../lib/classNames\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { SizeType } from \"../../lib/adaptivity\";\nimport { noop } from \"../../lib/utils\";\nimport { Platform } from \"../../lib/platform\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Icon20CheckCircleOn, Icon24CheckCircleOn } from \"@vkontakte/icons\";\nimport {\n ActionSheetContext,\n type ActionSheetContextType,\n} from \"../ActionSheet/ActionSheetContext\";\nimport { useAdaptivityWithJSMediaQueries } from \"../../hooks/useAdaptivityWithJSMediaQueries\";\nimport styles from \"./ActionSheetItem.module.css\";\n\nexport interface ActionSheetItemProps\n extends React.HTMLAttributes<HTMLElement>,\n React.AnchorHTMLAttributes<HTMLElement>,\n Pick<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"name\" | \"checked\" | \"value\"\n > {\n mode?: \"default\" | \"destructive\" | \"cancel\";\n before?: React.ReactNode;\n meta?: React.ReactNode;\n subtitle?: React.ReactNode;\n autoClose?: boolean;\n selectable?: boolean;\n disabled?: boolean;\n /**\n * Все текстовые элементы при необходимости занимают несколько строк\n */\n multiline?: boolean;\n /**\n * Если autoClose === true, onClick будет вызван после завершения анимации скрытия и после вызова onClose.\n * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.\n * Если вам нужен объект события именно на момент клика, используйте `onImmediateClick`.\n */\n onClick?: React.MouseEventHandler<HTMLElement>;\n onImmediateClick?: React.MouseEventHandler<HTMLElement>;\n /**\n * Иконка для `checked` режима.\n */\n iconChecked?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheetItem\n */\nconst ActionSheetItem = ({\n children,\n autoClose,\n mode = \"default\",\n meta,\n subtitle,\n before,\n selectable,\n value,\n name,\n checked,\n defaultChecked,\n onChange,\n onClick,\n onImmediateClick,\n multiline = false,\n iconChecked: iconCheckedProp,\n className,\n ...restProps\n}: ActionSheetItemProps) => {\n const platform = usePlatform();\n const { onItemClick = () => noop, isDesktop } =\n React.useContext<ActionSheetContextType<HTMLElement>>(ActionSheetContext);\n const { sizeY } = useAdaptivityWithJSMediaQueries();\n\n const iconChecked =\n iconCheckedProp ||\n (sizeY === SizeType.COMPACT ? (\n <Icon20CheckCircleOn aria-hidden />\n ) : (\n <Icon24CheckCircleOn aria-hidden />\n ));\n\n let Component: React.ElementType = restProps.href ? \"a\" : \"div\";\n\n if (selectable) {\n Component = \"label\";\n }\n\n const isRich = subtitle || meta || selectable;\n const isCentered = !isRich && !before && platform === Platform.IOS;\n\n return (\n <Tappable\n {...restProps}\n onClick={\n selectable\n ? onClick\n : onItemClick(onClick, onImmediateClick, Boolean(autoClose))\n }\n activeMode={\n platform === Platform.IOS\n ? styles[\"ActionSheetItem--active\"]\n : undefined\n }\n className={classNamesString(\n styles[\"ActionSheetItem\"],\n platform === Platform.IOS && styles[\"ActionSheetItem--ios\"],\n styles[`ActionSheetItem--mode-${mode}`],\n getSizeYClassName(styles[\"ActionSheetItem\"], sizeY),\n isRich && styles[\"ActionSheetItem--rich\"],\n isDesktop && styles[\"ActionSheetItem--desktop\"],\n className\n )}\n Component={Component}\n >\n {before && (\n <div className={styles[\"ActionSheetItem__before\"]}>{before}</div>\n )}\n <div\n className={classNamesString(\n styles[\"ActionSheetItem__container\"],\n !multiline && styles[\"ActionSheetItem--ellipsis\"]\n )}\n >\n <div\n className={classNamesString(\n styles[\"ActionSheetItem__content\"],\n isCentered && styles[\"ActionSheetItem--centered\"]\n )}\n >\n <Text\n weight={mode === \"cancel\" ? \"2\" : undefined}\n className={styles[\"ActionSheetItem__children\"]}\n >\n {children}\n </Text>\n {meta && (\n <Text className={styles[\"ActionSheetItem__meta\"]}>{meta}</Text>\n )}\n </div>\n {subtitle && (\n <Subhead className={styles[\"ActionSheetItem__subtitle\"]}>\n {subtitle}\n </Subhead>\n )}\n </div>\n {selectable && (\n <div className={styles[\"ActionSheetItem__after\"]}>\n <input\n type=\"radio\"\n className={styles[\"ActionSheetItem__radio\"]}\n name={name}\n value={value}\n onChange={onChange}\n onClick={onItemClick(noop, noop, Boolean(autoClose))}\n defaultChecked={defaultChecked}\n checked={checked}\n disabled={restProps.disabled}\n />\n <div className={styles[\"ActionSheetItem__marker\"]}>{iconChecked}</div>\n </div>\n )}\n </Tappable>\n );\n};\n\nexport { ActionSheetItem };\n"],"mappings":"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"}
|
|
@@ -16,10 +16,10 @@ export interface AdaptivityProps extends SizeProps {
|
|
|
16
16
|
/**
|
|
17
17
|
* @ignore
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
hasPointer?: boolean;
|
|
20
20
|
/**
|
|
21
21
|
* @ignore
|
|
22
22
|
*/
|
|
23
|
-
|
|
23
|
+
hasHover?: boolean;
|
|
24
24
|
}
|
|
25
25
|
export declare const AdaptivityContext: React.Context<AdaptivityProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdaptivityContext.js","names":["AdaptivityContext","React","createContext"],"sources":["../../../../src/components/AdaptivityProvider/AdaptivityContext.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { SizeType, ViewWidth, ViewHeight } from \"../../lib/adaptivity\";\n\nexport interface SizeProps {\n sizeX?: SizeType;\n sizeY?: SizeType;\n}\n\nexport interface AdaptivityProps extends SizeProps {\n /**\n * @ignore\n */\n viewWidth?: ViewWidth;\n /**\n * @ignore\n */\n viewHeight?: ViewHeight;\n /**\n * @ignore\n */\n
|
|
1
|
+
{"version":3,"file":"AdaptivityContext.js","names":["AdaptivityContext","React","createContext"],"sources":["../../../../src/components/AdaptivityProvider/AdaptivityContext.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { SizeType, ViewWidth, ViewHeight } from \"../../lib/adaptivity\";\n\nexport interface SizeProps {\n sizeX?: SizeType;\n sizeY?: SizeType;\n}\n\nexport interface AdaptivityProps extends SizeProps {\n /**\n * @ignore\n */\n viewWidth?: ViewWidth;\n /**\n * @ignore\n */\n viewHeight?: ViewHeight;\n /**\n * @ignore\n */\n hasPointer?: boolean;\n /**\n * @ignore\n */\n hasHover?: boolean;\n}\n\nexport const AdaptivityContext = React.createContext<AdaptivityProps>({});\n"],"mappings":";;;;;;;AAAA;AA2BO,IAAMA,iBAAiB,gBAAGC,KAAK,CAACC,aAAa,CAAkB,CAAC,CAAC,CAAC;AAAC"}
|
|
@@ -6,4 +6,4 @@ export interface AdaptivityProviderProps extends AdaptivityProps {
|
|
|
6
6
|
/**
|
|
7
7
|
* @see https://vkcom.github.io/VKUI/#/AdaptivityProvider
|
|
8
8
|
*/
|
|
9
|
-
export declare const AdaptivityProvider: ({ viewWidth, viewHeight, sizeX, sizeY,
|
|
9
|
+
export declare const AdaptivityProvider: ({ viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, children, }: React.PropsWithChildren<AdaptivityProps>) => JSX.Element;
|
|
@@ -20,8 +20,8 @@ var AdaptivityProvider = function AdaptivityProvider(_ref) {
|
|
|
20
20
|
viewHeight = _ref.viewHeight,
|
|
21
21
|
sizeX = _ref.sizeX,
|
|
22
22
|
sizeY = _ref.sizeY,
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
hasPointer = _ref.hasPointer,
|
|
24
|
+
hasHover = _ref.hasHover,
|
|
25
25
|
children = _ref.children;
|
|
26
26
|
var bridge = (0, _useBridgeAdaptivity.useBridgeAdaptivity)();
|
|
27
27
|
var _React$useState = React.useState({
|
|
@@ -29,8 +29,8 @@ var AdaptivityProvider = function AdaptivityProvider(_ref) {
|
|
|
29
29
|
viewHeight: viewHeight,
|
|
30
30
|
sizeX: sizeX,
|
|
31
31
|
sizeY: sizeY,
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
hasPointer: hasPointer,
|
|
33
|
+
hasHover: hasHover
|
|
34
34
|
}),
|
|
35
35
|
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
36
36
|
adaptivity = _React$useState2[0],
|
|
@@ -41,10 +41,10 @@ var AdaptivityProvider = function AdaptivityProvider(_ref) {
|
|
|
41
41
|
viewHeight: viewHeight,
|
|
42
42
|
sizeX: sizeX,
|
|
43
43
|
sizeY: sizeY,
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
hasPointer: hasPointer,
|
|
45
|
+
hasHover: hasHover
|
|
46
46
|
}, bridge));
|
|
47
|
-
}, [viewWidth, viewHeight, sizeX, sizeY,
|
|
47
|
+
}, [viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, bridge]);
|
|
48
48
|
return /*#__PURE__*/React.createElement(_AdaptivityContext.AdaptivityContext.Provider, {
|
|
49
49
|
value: adaptivity
|
|
50
50
|
}, children);
|
|
@@ -55,8 +55,8 @@ function calculateAdaptivity(_ref2, bridge) {
|
|
|
55
55
|
viewHeight = _ref2.viewHeight,
|
|
56
56
|
sizeX = _ref2.sizeX,
|
|
57
57
|
sizeY = _ref2.sizeY,
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
hasPointer = _ref2.hasPointer,
|
|
59
|
+
hasHover = _ref2.hasHover;
|
|
60
60
|
if (bridge.type === "adaptive") {
|
|
61
61
|
var viewportWidth = bridge.viewportWidth,
|
|
62
62
|
viewportHeight = bridge.viewportHeight;
|
|
@@ -117,8 +117,8 @@ function calculateAdaptivity(_ref2, bridge) {
|
|
|
117
117
|
viewHeight: viewHeight,
|
|
118
118
|
sizeX: sizeX,
|
|
119
119
|
sizeY: sizeY,
|
|
120
|
-
|
|
121
|
-
|
|
120
|
+
hasPointer: hasPointer,
|
|
121
|
+
hasHover: hasHover
|
|
122
122
|
};
|
|
123
123
|
}
|
|
124
124
|
//# sourceMappingURL=AdaptivityProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdaptivityProvider.js","names":["AdaptivityProvider","viewWidth","viewHeight","sizeX","sizeY","
|
|
1
|
+
{"version":3,"file":"AdaptivityProvider.js","names":["AdaptivityProvider","viewWidth","viewHeight","sizeX","sizeY","hasPointer","hasHover","children","bridge","useBridgeAdaptivity","React","useState","adaptivity","setAdaptivity","useEffect","calculateAdaptivity","type","viewportWidth","viewportHeight","BREAKPOINTS","DESKTOP","ViewWidth","TABLET","SMALL_TABLET","MOBILE","SMALL_MOBILE","MEDIUM_HEIGHT","ViewHeight","MEDIUM","MOBILE_LANDSCAPE_HEIGHT","SMALL","EXTRA_SMALL","SizeType","COMPACT","REGULAR","_hasPointer","undefined"],"sources":["../../../../src/components/AdaptivityProvider/AdaptivityProvider.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { hasMouse as _hasPointer } from \"@vkontakte/vkjs\";\nimport {\n SizeType,\n ViewWidth,\n ViewHeight,\n BREAKPOINTS,\n} from \"../../lib/adaptivity\";\nimport {\n useBridgeAdaptivity,\n BridgeAdaptivity,\n} from \"../../hooks/useBridgeAdaptivity\";\nimport { type AdaptivityProps, AdaptivityContext } from \"./AdaptivityContext\";\n\nexport interface AdaptivityProviderProps extends AdaptivityProps {\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider\n */\nexport const AdaptivityProvider = ({\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n children,\n}: React.PropsWithChildren<AdaptivityProps>) => {\n const bridge = useBridgeAdaptivity();\n const [adaptivity, setAdaptivity] = React.useState({\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n });\n\n React.useEffect(() => {\n setAdaptivity(\n calculateAdaptivity(\n {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n },\n bridge\n )\n );\n }, [viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, bridge]);\n\n return (\n <AdaptivityContext.Provider value={adaptivity}>\n {children}\n </AdaptivityContext.Provider>\n );\n};\n\nfunction calculateAdaptivity(\n {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n }: AdaptivityProps,\n bridge: BridgeAdaptivity\n) {\n if (bridge.type === \"adaptive\") {\n const { viewportWidth, viewportHeight } = bridge;\n\n if (viewportWidth >= BREAKPOINTS.DESKTOP) {\n viewWidth = ViewWidth.DESKTOP;\n } else if (viewportWidth >= BREAKPOINTS.TABLET) {\n viewWidth = ViewWidth.TABLET;\n } else if (viewportWidth >= BREAKPOINTS.SMALL_TABLET) {\n viewWidth = ViewWidth.SMALL_TABLET;\n } else if (viewportWidth >= BREAKPOINTS.MOBILE) {\n viewWidth = ViewWidth.MOBILE;\n } else {\n viewWidth = ViewWidth.SMALL_MOBILE;\n }\n\n if (viewportHeight >= BREAKPOINTS.MEDIUM_HEIGHT) {\n viewHeight = ViewHeight.MEDIUM;\n } else if (viewportHeight > BREAKPOINTS.MOBILE_LANDSCAPE_HEIGHT) {\n viewHeight = ViewHeight.SMALL;\n } else {\n viewHeight = ViewHeight.EXTRA_SMALL;\n }\n\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else if (\n bridge.type === \"force_mobile\" ||\n bridge.type === \"force_mobile_compact\"\n ) {\n viewWidth = ViewWidth.MOBILE;\n sizeX = SizeType.COMPACT;\n\n if (bridge.type === \"force_mobile_compact\") {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else {\n if (sizeX === undefined && viewWidth !== undefined) {\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n }\n if (\n sizeY === undefined &&\n viewWidth !== undefined &&\n viewHeight !== undefined\n ) {\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n }\n }\n\n return {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n };\n}\n"],"mappings":"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"}
|
|
@@ -4,9 +4,8 @@ export interface AppRootProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
4
4
|
mode?: "partial" | "embedded" | "full";
|
|
5
5
|
window?: Window;
|
|
6
6
|
scroll?: "global" | "contain";
|
|
7
|
-
/**
|
|
8
|
-
*
|
|
9
|
-
* При передаче своего элемента задайте этому элементу `class="vkui__portal-root"` и добавьте его в DOM.
|
|
7
|
+
/**
|
|
8
|
+
* Кастомный root-элемент портала
|
|
10
9
|
*/
|
|
11
10
|
portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;
|
|
12
11
|
/** Disable portal for components */
|
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.AppRoot = void 0;
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
11
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
12
|
var React = _interopRequireWildcard(require("react"));
|
|
@@ -21,10 +20,15 @@ var _utils = require("../../lib/utils");
|
|
|
21
20
|
var _useKeyboardInputTracker = require("../../hooks/useKeyboardInputTracker");
|
|
22
21
|
var _useInsets = require("../../hooks/useInsets");
|
|
23
22
|
var _useAdaptivity2 = require("../../hooks/useAdaptivity");
|
|
24
|
-
var
|
|
23
|
+
var _useAppearance = require("../../hooks/useAppearance");
|
|
25
24
|
var _isRefObject = require("../../lib/isRefObject");
|
|
26
25
|
var _getSizeXClassName = require("../../helpers/getSizeXClassName");
|
|
27
26
|
var _excluded = ["children", "mode", "scroll", "portalRoot", "disablePortal", "className"];
|
|
27
|
+
var INSET_CUSTOM_PROPERTY_PREFIX = "--vkui_internal--safe_area_inset_";
|
|
28
|
+
|
|
29
|
+
// Используйте classList, но будьте осторожны
|
|
30
|
+
/* eslint-disable no-restricted-properties */
|
|
31
|
+
|
|
28
32
|
/**
|
|
29
33
|
* @see https://vkcom.github.io/VKUI/#/AppRoot
|
|
30
34
|
*/
|
|
@@ -48,10 +52,9 @@ var AppRoot = function AppRoot(_ref) {
|
|
|
48
52
|
var _useDOM = (0, _dom.useDOM)(),
|
|
49
53
|
document = _useDOM.document;
|
|
50
54
|
var insets = (0, _useInsets.useInsets)();
|
|
51
|
-
var
|
|
52
|
-
appearance = _React$useContext.appearance;
|
|
55
|
+
var appearance = (0, _useAppearance.useAppearance)();
|
|
53
56
|
var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
|
|
54
|
-
|
|
57
|
+
hasPointer = _useAdaptivity.hasPointer,
|
|
55
58
|
sizeX = _useAdaptivity.sizeX;
|
|
56
59
|
|
|
57
60
|
// setup portal
|
|
@@ -66,7 +69,6 @@ var AppRoot = function AppRoot(_ref) {
|
|
|
66
69
|
}
|
|
67
70
|
if (!portal) {
|
|
68
71
|
portal = document.createElement("div");
|
|
69
|
-
portal.classList.add("vkui__portal-root");
|
|
70
72
|
document.body.appendChild(portal);
|
|
71
73
|
}
|
|
72
74
|
setPortalRoot(portal);
|
|
@@ -78,16 +80,14 @@ var AppRoot = function AppRoot(_ref) {
|
|
|
78
80
|
|
|
79
81
|
// setup root classes
|
|
80
82
|
(0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(function () {
|
|
81
|
-
var _rootRef$current
|
|
82
|
-
if (mode
|
|
83
|
+
var _rootRef$current;
|
|
84
|
+
if (mode !== "embedded") {
|
|
83
85
|
return _utils.noop;
|
|
84
86
|
}
|
|
85
87
|
var parent = (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.parentElement;
|
|
86
|
-
|
|
87
|
-
parent === null || parent === void 0 ? void 0 : (_parent$classList = parent.classList).add.apply(_parent$classList, (0, _toConsumableArray2.default)(classes));
|
|
88
|
+
parent === null || parent === void 0 ? void 0 : parent.classList.add("vkui__root--embedded");
|
|
88
89
|
return function () {
|
|
89
|
-
|
|
90
|
-
parent === null || parent === void 0 ? void 0 : (_parent$classList2 = parent.classList).remove.apply(_parent$classList2, (0, _toConsumableArray2.default)(classes));
|
|
90
|
+
parent === null || parent === void 0 ? void 0 : parent.classList.remove("vkui__root--embedded");
|
|
91
91
|
};
|
|
92
92
|
}, []);
|
|
93
93
|
(0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(function () {
|
|
@@ -107,18 +107,20 @@ var AppRoot = function AppRoot(_ref) {
|
|
|
107
107
|
return _utils.noop;
|
|
108
108
|
}
|
|
109
109
|
var parent = rootRef.current.parentElement;
|
|
110
|
-
|
|
110
|
+
var key;
|
|
111
|
+
for (key in insets) {
|
|
111
112
|
if (insets.hasOwnProperty(key) && typeof insets[key] === "number") {
|
|
112
113
|
var inset = insets[key];
|
|
113
|
-
parent.style.setProperty(
|
|
114
|
-
portalRoot && portalRoot.style.setProperty(
|
|
114
|
+
parent.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, "".concat(inset, "px"));
|
|
115
|
+
portalRoot && portalRoot.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, "".concat(inset, "px"));
|
|
115
116
|
}
|
|
116
117
|
}
|
|
117
118
|
return function () {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
var key;
|
|
120
|
+
for (key in insets) {
|
|
121
|
+
if (insets.hasOwnProperty(key)) {
|
|
122
|
+
parent.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);
|
|
123
|
+
portalRoot && portalRoot.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);
|
|
122
124
|
}
|
|
123
125
|
}
|
|
124
126
|
};
|
|
@@ -165,7 +167,7 @@ var AppRoot = function AppRoot(_ref) {
|
|
|
165
167
|
}, children)));
|
|
166
168
|
return mode === "partial" ? content : /*#__PURE__*/React.createElement("div", (0, _extends2.default)({
|
|
167
169
|
ref: rootRef,
|
|
168
|
-
className: (0, _classNames.classNamesString)("vkuiAppRoot", !
|
|
170
|
+
className: (0, _classNames.classNamesString)("vkuiAppRoot", hasPointer === undefined ? "vkuiAppRoot--pointer-none" : !hasPointer && "vkuiAppRoot--pointer-has-not", className)
|
|
169
171
|
}, props), content);
|
|
170
172
|
};
|
|
171
173
|
exports.AppRoot = AppRoot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppRoot.js","names":["AppRoot","children","mode","scroll","portalRoot","portalRootProp","disablePortal","className","props","isKeyboardInputActive","useKeyboardInputTracker","rootRef","React","useRef","useState","setPortalRoot","useDOM","document","insets","useInsets","useContext","ConfigProviderContext","appearance","useAdaptivity","hasMouse","sizeX","useIsomorphicLayoutEffect","portal","isRefObject","current","createElement","classList","add","body","appendChild","parentElement","removeChild","noop","parent","classes","concat","remove","documentElement","undefined","key","hasOwnProperty","inset","style","setProperty","removeProperty","getSizeXClassName","container","ScrollController","useMemo","ElementScrollController","GlobalScrollController","content","appRoot","embedded","keyboardInput","classNamesString"],"sources":["../../../../src/components/AppRoot/AppRoot.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { classNamesString } from \"../../lib/classNames\";\nimport { AppRootContext } from \"./AppRootContext\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { IconSettingsProvider } from \"@vkontakte/icons\";\nimport {\n ElementScrollController,\n GlobalScrollController,\n} from \"./ScrollContext\";\nimport { noop } from \"../../lib/utils\";\nimport { useKeyboardInputTracker } from \"../../hooks/useKeyboardInputTracker\";\nimport { useInsets } from \"../../hooks/useInsets\";\nimport { Insets } from \"@vkontakte/vk-bridge\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport { isRefObject } from \"../../lib/isRefObject\";\nimport { getSizeXClassName } from \"../../helpers/getSizeXClassName\";\nimport styles from \"./AppRoot.module.css\";\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Режим встраивания */\n mode?: \"partial\" | \"embedded\" | \"full\";\n window?: Window;\n scroll?: \"global\" | \"contain\";\n /** root-элемент для порталов.\n *\n * При передаче своего элемента задайте этому элементу `class=\"vkui__portal-root\"` и добавьте его в DOM.\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /** Disable portal for components */\n disablePortal?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppRoot\n */\nexport const AppRoot = ({\n children,\n mode = \"full\",\n scroll = \"global\",\n portalRoot: portalRootProp = null,\n disablePortal,\n className,\n ...props\n}: AppRootProps) => {\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLElement | null>(null);\n const { document } = useDOM();\n const insets = useInsets();\n const { appearance } = React.useContext(ConfigProviderContext);\n\n const { hasMouse, sizeX } = useAdaptivity();\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n let portal: HTMLElement | null = null;\n if (portalRootProp) {\n if (isRefObject(portalRootProp)) {\n portal = portalRootProp.current;\n } else {\n portal = portalRootProp;\n }\n }\n if (!portal) {\n portal = document!.createElement(\"div\");\n portal.classList.add(\"vkui__portal-root\");\n document!.body.appendChild(portal);\n }\n setPortalRoot(portal);\n return () => {\n portal?.parentElement?.removeChild(portal);\n };\n }, [portalRootProp]);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\") {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n const classes = [\"vkui__root\"].concat(\n mode === \"embedded\" ? \"vkui__root--embedded\" : []\n );\n parent?.classList.add(...classes);\n\n return () => {\n parent?.classList.remove(...classes);\n };\n }, []);\n\n useIsomorphicLayoutEffect(() => {\n if (mode === \"full\") {\n document!.documentElement.classList.add(\"vkui\");\n\n return () => {\n document!.documentElement.classList.remove(\"vkui\");\n };\n }\n\n return undefined;\n }, [document, mode]);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n for (const key in insets) {\n if (\n insets.hasOwnProperty(key) &&\n typeof insets[key as keyof Insets] === \"number\"\n ) {\n const inset = insets[key as keyof Insets];\n parent.style.setProperty(`--safe-area-inset-${key}`, `${inset}px`);\n portalRoot &&\n portalRoot.style.setProperty(\n `--safe-area-inset-${key}`,\n `${inset}px`\n );\n }\n }\n\n return () => {\n for (const key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(`--safe-area-inset-${key}`);\n portalRoot &&\n portalRoot.style.removeProperty(`--safe-area-inset-${key}`);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\") {\n return noop;\n }\n const className = getSizeXClassName(\"vkui\", sizeX);\n const container =\n mode === \"embedded\" ? rootRef.current?.parentElement : document!.body;\n container?.classList.add(className);\n return () => container?.classList.remove(className);\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== \"full\" || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty(\"color-scheme\", appearance);\n\n return () => document!.documentElement.style.removeProperty(\"color-scheme\");\n }, [appearance]);\n\n const ScrollController = React.useMemo(\n () =>\n scroll === \"contain\" ? ElementScrollController : GlobalScrollController,\n [scroll]\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot,\n embedded: mode === \"embedded\",\n keyboardInput: isKeyboardInputActive,\n mode,\n disablePortal,\n }}\n >\n <ScrollController elRef={rootRef}>\n <IconSettingsProvider classPrefix=\"vkui\">\n {children}\n </IconSettingsProvider>\n </ScrollController>\n </AppRootContext.Provider>\n );\n\n return mode === \"partial\" ? (\n content\n ) : (\n <div\n ref={rootRef}\n className={classNamesString(\n styles[\"AppRoot\"],\n !hasMouse && styles[\"AppRoot--no-mouse\"],\n className\n )}\n {...props}\n >\n {content}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AppRoot.js","names":["INSET_CUSTOM_PROPERTY_PREFIX","AppRoot","children","mode","scroll","portalRoot","portalRootProp","disablePortal","className","props","isKeyboardInputActive","useKeyboardInputTracker","rootRef","React","useRef","useState","setPortalRoot","useDOM","document","insets","useInsets","appearance","useAppearance","useAdaptivity","hasPointer","sizeX","useIsomorphicLayoutEffect","portal","isRefObject","current","createElement","body","appendChild","parentElement","removeChild","noop","parent","classList","add","remove","documentElement","undefined","key","hasOwnProperty","inset","style","setProperty","removeProperty","getSizeXClassName","container","ScrollController","useMemo","ElementScrollController","GlobalScrollController","content","appRoot","embedded","keyboardInput","classNamesString"],"sources":["../../../../src/components/AppRoot/AppRoot.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { classNamesString } from \"../../lib/classNames\";\nimport { AppRootContext } from \"./AppRootContext\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { IconSettingsProvider } from \"@vkontakte/icons\";\nimport {\n ElementScrollController,\n GlobalScrollController,\n} from \"./ScrollContext\";\nimport { noop } from \"../../lib/utils\";\nimport { useKeyboardInputTracker } from \"../../hooks/useKeyboardInputTracker\";\nimport { useInsets } from \"../../hooks/useInsets\";\nimport { Insets } from \"@vkontakte/vk-bridge\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useAppearance } from \"../../hooks/useAppearance\";\nimport { isRefObject } from \"../../lib/isRefObject\";\nimport { getSizeXClassName } from \"../../helpers/getSizeXClassName\";\nimport styles from \"./AppRoot.module.css\";\n\nconst INSET_CUSTOM_PROPERTY_PREFIX = `--vkui_internal--safe_area_inset_`;\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Режим встраивания */\n mode?: \"partial\" | \"embedded\" | \"full\";\n window?: Window;\n scroll?: \"global\" | \"contain\";\n /**\n * Кастомный root-элемент портала\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /** Disable portal for components */\n disablePortal?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppRoot\n */\nexport const AppRoot = ({\n children,\n mode = \"full\",\n scroll = \"global\",\n portalRoot: portalRootProp = null,\n disablePortal,\n className,\n ...props\n}: AppRootProps) => {\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLElement | null>(null);\n const { document } = useDOM();\n const insets = useInsets();\n const appearance = useAppearance();\n\n const { hasPointer, sizeX } = useAdaptivity();\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n let portal: HTMLElement | null = null;\n if (portalRootProp) {\n if (isRefObject(portalRootProp)) {\n portal = portalRootProp.current;\n } else {\n portal = portalRootProp;\n }\n }\n if (!portal) {\n portal = document!.createElement(\"div\");\n document!.body.appendChild(portal);\n }\n setPortalRoot(portal);\n return () => {\n portal?.parentElement?.removeChild(portal);\n };\n }, [portalRootProp]);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode !== \"embedded\") {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n parent?.classList.add(\"vkui__root--embedded\");\n\n return () => {\n parent?.classList.remove(\"vkui__root--embedded\");\n };\n }, []);\n\n useIsomorphicLayoutEffect(() => {\n if (mode === \"full\") {\n document!.documentElement.classList.add(\"vkui\");\n\n return () => {\n document!.documentElement.classList.remove(\"vkui\");\n };\n }\n\n return undefined;\n }, [document, mode]);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key) && typeof insets[key] === \"number\") {\n const inset = insets[key];\n parent.style.setProperty(\n INSET_CUSTOM_PROPERTY_PREFIX + key,\n `${inset}px`\n );\n portalRoot &&\n portalRoot.style.setProperty(\n INSET_CUSTOM_PROPERTY_PREFIX + key,\n `${inset}px`\n );\n }\n }\n\n return () => {\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n portalRoot &&\n portalRoot.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\") {\n return noop;\n }\n const className = getSizeXClassName(\"vkui\", sizeX);\n const container =\n mode === \"embedded\" ? rootRef.current?.parentElement : document!.body;\n container?.classList.add(className);\n return () => container?.classList.remove(className);\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== \"full\" || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty(\"color-scheme\", appearance);\n\n return () => document!.documentElement.style.removeProperty(\"color-scheme\");\n }, [appearance]);\n\n const ScrollController = React.useMemo(\n () =>\n scroll === \"contain\" ? ElementScrollController : GlobalScrollController,\n [scroll]\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot,\n embedded: mode === \"embedded\",\n keyboardInput: isKeyboardInputActive,\n mode,\n disablePortal,\n }}\n >\n <ScrollController elRef={rootRef}>\n <IconSettingsProvider classPrefix=\"vkui\">\n {children}\n </IconSettingsProvider>\n </ScrollController>\n </AppRootContext.Provider>\n );\n\n return mode === \"partial\" ? (\n content\n ) : (\n <div\n ref={rootRef}\n className={classNamesString(\n styles[\"AppRoot\"],\n hasPointer === undefined\n ? styles[\"AppRoot--pointer-none\"]\n : !hasPointer && styles[\"AppRoot--pointer-has-not\"],\n className\n )}\n {...props}\n >\n {content}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { AppearanceType } from "@vkontakte/vk-bridge";
|
|
3
3
|
export interface AppearanceProviderProps {
|
|
4
|
-
appearance
|
|
5
|
-
children
|
|
4
|
+
appearance: AppearanceType;
|
|
5
|
+
children: React.ReactNode;
|
|
6
6
|
}
|
|
7
7
|
export declare const generateVKUITokensClassName: (platform: string, appearance: string) => string;
|
|
8
8
|
/**
|
|
9
9
|
* @see https://vkcom.github.io/VKUI/#/AppearanceProvider
|
|
10
10
|
*/
|
|
11
|
-
export declare const AppearanceProvider: ({
|
|
11
|
+
export declare const AppearanceProvider: ({ appearance, children, }: AppearanceProviderProps) => JSX.Element;
|
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.generateVKUITokensClassName = exports.AppearanceProvider = void 0;
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
|
-
var _AppearanceProviderContext = require("./AppearanceProviderContext");
|
|
10
9
|
var _classNames = require("../../lib/classNames");
|
|
11
10
|
var _usePlatform = require("../../hooks/usePlatform");
|
|
12
11
|
var _platform = require("../../lib/platform");
|
|
12
|
+
var _ConfigProviderOverride = require("../ConfigProvider/ConfigProviderOverride");
|
|
13
13
|
var generateVKUITokensClassName = function generateVKUITokensClassName(platform, appearance) {
|
|
14
14
|
var tokensPlatform;
|
|
15
15
|
switch (platform) {
|
|
@@ -33,12 +33,11 @@ var generateVKUITokensClassName = function generateVKUITokensClassName(platform,
|
|
|
33
33
|
*/
|
|
34
34
|
exports.generateVKUITokensClassName = generateVKUITokensClassName;
|
|
35
35
|
var AppearanceProvider = function AppearanceProvider(_ref) {
|
|
36
|
-
var
|
|
37
|
-
|
|
38
|
-
appearance = _ref$appearance === void 0 ? "light" : _ref$appearance;
|
|
36
|
+
var appearance = _ref.appearance,
|
|
37
|
+
children = _ref.children;
|
|
39
38
|
var platform = (0, _usePlatform.usePlatform)();
|
|
40
|
-
return /*#__PURE__*/React.createElement(
|
|
41
|
-
|
|
39
|
+
return /*#__PURE__*/React.createElement(_ConfigProviderOverride.ConfigProviderOverride, {
|
|
40
|
+
appearance: appearance
|
|
42
41
|
}, React.Children.map(children, function (child) {
|
|
43
42
|
if ( /*#__PURE__*/React.isValidElement(child)) {
|
|
44
43
|
return /*#__PURE__*/React.cloneElement(child, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppearanceProvider.js","names":["generateVKUITokensClassName","platform","appearance","tokensPlatform","Platform","ANDROID","IOS","VKCOM","AppearanceProvider","children","usePlatform","React","Children","map","child","isValidElement","cloneElement","className","classNamesString","props"],"sources":["../../../../src/components/AppearanceProvider/AppearanceProvider.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport {
|
|
1
|
+
{"version":3,"file":"AppearanceProvider.js","names":["generateVKUITokensClassName","platform","appearance","tokensPlatform","Platform","ANDROID","IOS","VKCOM","AppearanceProvider","children","usePlatform","React","Children","map","child","isValidElement","cloneElement","className","classNamesString","props"],"sources":["../../../../src/components/AppearanceProvider/AppearanceProvider.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport { classNamesString } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { Platform } from \"../../lib/platform\";\nimport { ConfigProviderOverride } from \"../ConfigProvider/ConfigProviderOverride\";\n\nexport interface AppearanceProviderProps {\n appearance: AppearanceType;\n children: React.ReactNode;\n}\n\nexport const generateVKUITokensClassName = (\n platform: string,\n appearance: string\n): string => {\n let tokensPlatform;\n switch (platform) {\n case Platform.ANDROID:\n tokensPlatform = \"vkBase\";\n break;\n case Platform.IOS:\n tokensPlatform = \"vkIOS\";\n break;\n case Platform.VKCOM:\n tokensPlatform = \"vkCom\";\n break;\n default:\n tokensPlatform = platform;\n }\n\n return `vkui--${tokensPlatform}--${appearance}`;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppearanceProvider\n */\nexport const AppearanceProvider = ({\n appearance,\n children,\n}: AppearanceProviderProps) => {\n const platform = usePlatform();\n\n return (\n <ConfigProviderOverride appearance={appearance}>\n {React.Children.map(children, (child) => {\n if (React.isValidElement<{ className?: string }>(child)) {\n return React.cloneElement(child, {\n className: classNamesString(\n child.props.className,\n generateVKUITokensClassName(platform, appearance)\n ),\n });\n }\n return child;\n })}\n </ConfigProviderOverride>\n );\n};\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AACA;AACA;AAOO,IAAMA,2BAA2B,GAAG,SAA9BA,2BAA2B,CACtCC,QAAgB,EAChBC,UAAkB,EACP;EACX,IAAIC,cAAc;EAClB,QAAQF,QAAQ;IACd,KAAKG,kBAAQ,CAACC,OAAO;MACnBF,cAAc,GAAG,QAAQ;MACzB;IACF,KAAKC,kBAAQ,CAACE,GAAG;MACfH,cAAc,GAAG,OAAO;MACxB;IACF,KAAKC,kBAAQ,CAACG,KAAK;MACjBJ,cAAc,GAAG,OAAO;MACxB;IACF;MACEA,cAAc,GAAGF,QAAQ;EAAC;EAG9B,uBAAgBE,cAAc,eAAKD,UAAU;AAC/C,CAAC;;AAED;AACA;AACA;AAFA;AAGO,IAAMM,kBAAkB,GAAG,SAArBA,kBAAkB,OAGA;EAAA,IAF7BN,UAAU,QAAVA,UAAU;IACVO,QAAQ,QAARA,QAAQ;EAER,IAAMR,QAAQ,GAAG,IAAAS,wBAAW,GAAE;EAE9B,oBACE,oBAAC,8CAAsB;IAAC,UAAU,EAAER;EAAW,GAC5CS,KAAK,CAACC,QAAQ,CAACC,GAAG,CAACJ,QAAQ,EAAE,UAACK,KAAK,EAAK;IACvC,kBAAIH,KAAK,CAACI,cAAc,CAAyBD,KAAK,CAAC,EAAE;MACvD,oBAAOH,KAAK,CAACK,YAAY,CAACF,KAAK,EAAE;QAC/BG,SAAS,EAAE,IAAAC,4BAAgB,EACzBJ,KAAK,CAACK,KAAK,CAACF,SAAS,EACrBjB,2BAA2B,CAACC,QAAQ,EAAEC,UAAU,CAAC;MAErD,CAAC,CAAC;IACJ;IACA,OAAOY,KAAK;EACd,CAAC,CAAC,CACqB;AAE7B,CAAC;AAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { BaseGalleryProps } from "./types";
|
|
3
|
-
export declare const BaseGallery: ({ bullets, getRootRef, children, slideWidth, slideIndex, isDraggable, onDragStart, onDragEnd, onChange, onPrevClick, onNextClick, align, showArrows, getRef, className, ...restProps }: BaseGalleryProps) => JSX.Element;
|
|
3
|
+
export declare const BaseGallery: ({ bullets, getRootRef, children, slideWidth, slideIndex, isDraggable: isDraggableProp, onDragStart, onDragEnd, onChange, onPrevClick, onNextClick, align, showArrows, getRef, className, arrowSize, ...restProps }: BaseGalleryProps) => JSX.Element;
|
|
@@ -16,11 +16,11 @@ var _Touch = require("../Touch/Touch");
|
|
|
16
16
|
var _HorizontalScrollArrow = require("../HorizontalScroll/HorizontalScrollArrow");
|
|
17
17
|
var _useExternRef = require("../../hooks/useExternRef");
|
|
18
18
|
var _dom = require("../../lib/dom");
|
|
19
|
-
var
|
|
19
|
+
var _useAdaptivityHasPointer = require("../../hooks/useAdaptivityHasPointer");
|
|
20
20
|
var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
|
|
21
21
|
var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
|
|
22
22
|
var _helpers = require("./helpers");
|
|
23
|
-
var _excluded = ["bullets", "getRootRef", "children", "slideWidth", "slideIndex", "isDraggable", "onDragStart", "onDragEnd", "onChange", "onPrevClick", "onNextClick", "align", "showArrows", "getRef", "className"];
|
|
23
|
+
var _excluded = ["bullets", "getRootRef", "children", "slideWidth", "slideIndex", "isDraggable", "onDragStart", "onDragEnd", "onChange", "onPrevClick", "onNextClick", "align", "showArrows", "getRef", "className", "arrowSize"];
|
|
24
24
|
var ANIMATION_DURATION = 0.24;
|
|
25
25
|
var LAYOUT_DEFAULT_STATE = {
|
|
26
26
|
containerWidth: 0,
|
|
@@ -49,7 +49,7 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
49
49
|
_ref$slideIndex = _ref.slideIndex,
|
|
50
50
|
slideIndex = _ref$slideIndex === void 0 ? 0 : _ref$slideIndex,
|
|
51
51
|
_ref$isDraggable = _ref.isDraggable,
|
|
52
|
-
|
|
52
|
+
isDraggableProp = _ref$isDraggable === void 0 ? true : _ref$isDraggable,
|
|
53
53
|
onDragStart = _ref.onDragStart,
|
|
54
54
|
onDragEnd = _ref.onDragEnd,
|
|
55
55
|
onChange = _ref.onChange,
|
|
@@ -60,6 +60,8 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
60
60
|
showArrows = _ref.showArrows,
|
|
61
61
|
getRef = _ref.getRef,
|
|
62
62
|
className = _ref.className,
|
|
63
|
+
_ref$arrowSize = _ref.arrowSize,
|
|
64
|
+
arrowSize = _ref$arrowSize === void 0 ? "l" : _ref$arrowSize,
|
|
63
65
|
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
64
66
|
var slidesStore = React.useRef({});
|
|
65
67
|
var layoutState = React.useRef(LAYOUT_DEFAULT_STATE);
|
|
@@ -71,8 +73,7 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
71
73
|
var viewportRef = (0, _useExternRef.useExternRef)(getRef);
|
|
72
74
|
var _useDOM = (0, _dom.useDOM)(),
|
|
73
75
|
window = _useDOM.window;
|
|
74
|
-
var
|
|
75
|
-
hasMouse = _useAdaptivity.hasMouse;
|
|
76
|
+
var hasPointer = (0, _useAdaptivityHasPointer.useAdaptivityHasPointer)();
|
|
76
77
|
var isCenterWithCustomWidth = slideWidth === "custom" && align === "center";
|
|
77
78
|
var validateIndent = function validateIndent(value) {
|
|
78
79
|
var _layoutState$current$, _layoutState$current$2;
|
|
@@ -192,13 +193,13 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
192
193
|
});
|
|
193
194
|
}
|
|
194
195
|
}, [slideIndex]);
|
|
195
|
-
var slideLeft = function slideLeft() {
|
|
196
|
+
var slideLeft = function slideLeft(event) {
|
|
196
197
|
onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex - 1);
|
|
197
|
-
onPrevClick === null || onPrevClick === void 0 ? void 0 : onPrevClick();
|
|
198
|
+
onPrevClick === null || onPrevClick === void 0 ? void 0 : onPrevClick(event);
|
|
198
199
|
};
|
|
199
|
-
var slideRight = function slideRight() {
|
|
200
|
+
var slideRight = function slideRight(event) {
|
|
200
201
|
onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex + 1);
|
|
201
|
-
onNextClick === null || onNextClick === void 0 ? void 0 : onNextClick();
|
|
202
|
+
onNextClick === null || onNextClick === void 0 ? void 0 : onNextClick(event);
|
|
202
203
|
};
|
|
203
204
|
|
|
204
205
|
/*
|
|
@@ -235,7 +236,7 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
235
236
|
});
|
|
236
237
|
};
|
|
237
238
|
var onMoveX = function onMoveX(e) {
|
|
238
|
-
if (
|
|
239
|
+
if (isDraggableProp && !layoutState.current.isFullyVisible) {
|
|
239
240
|
e.originalEvent.preventDefault();
|
|
240
241
|
if (e.isSlideX) {
|
|
241
242
|
if (shiftState.deltaX !== e.shiftX) {
|
|
@@ -287,8 +288,9 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
287
288
|
align === "left" && layoutState.current.containerWidth - shiftState.shiftX < ((_layoutState$current$9 = layoutState.current.layerWidth) !== null && _layoutState$current$9 !== void 0 ? _layoutState$current$9 : 0) ||
|
|
288
289
|
// otherwise we need to check current slide index (align = right or align = center)
|
|
289
290
|
align !== "left" && slideIndex < layoutState.current.slides.length - 1);
|
|
291
|
+
var isDraggable = isDraggableProp && !layoutState.current.isFullyVisible;
|
|
290
292
|
return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
|
|
291
|
-
className: (0, _classNames.classNamesString)("vkuiBaseGallery", styles["BaseGallery--align-".concat(align)], shiftState.dragging && "vkuiBaseGallery--dragging", slideWidth === "custom" && "vkuiBaseGallery--custom-width", className),
|
|
293
|
+
className: (0, _classNames.classNamesString)("vkuiBaseGallery", styles["BaseGallery--align-".concat(align)], shiftState.dragging && "vkuiBaseGallery--dragging", slideWidth === "custom" && "vkuiBaseGallery--custom-width", isDraggable && "vkuiBaseGallery--draggable", className),
|
|
292
294
|
ref: rootRef
|
|
293
295
|
}), /*#__PURE__*/React.createElement(_Touch.Touch, {
|
|
294
296
|
className: "vkuiBaseGallery__viewport",
|
|
@@ -319,12 +321,14 @@ var BaseGallery = function BaseGallery(_ref) {
|
|
|
319
321
|
className: (0, _classNames.classNamesString)("vkuiBaseGallery__bullet", index === slideIndex && "vkuiBaseGallery__bullet--active"),
|
|
320
322
|
key: index
|
|
321
323
|
});
|
|
322
|
-
})), showArrows &&
|
|
324
|
+
})), showArrows && hasPointer && canSlideLeft && /*#__PURE__*/React.createElement(_HorizontalScrollArrow.HorizontalScrollArrow, {
|
|
323
325
|
direction: "left",
|
|
324
|
-
onClick: slideLeft
|
|
325
|
-
|
|
326
|
+
onClick: slideLeft,
|
|
327
|
+
size: arrowSize
|
|
328
|
+
}), showArrows && hasPointer && canSlideRight && /*#__PURE__*/React.createElement(_HorizontalScrollArrow.HorizontalScrollArrow, {
|
|
326
329
|
direction: "right",
|
|
327
|
-
onClick: slideRight
|
|
330
|
+
onClick: slideRight,
|
|
331
|
+
size: arrowSize
|
|
328
332
|
}));
|
|
329
333
|
};
|
|
330
334
|
exports.BaseGallery = BaseGallery;
|