@gravity-ui/page-constructor 8.0.0-beta.2 → 8.1.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.
- package/README.md +39 -2
- package/build/cjs/_vendor/swiper-modules.js +1309 -0
- package/build/cjs/_vendor/swiper-modules.js.map +7 -0
- package/build/cjs/_vendor/swiper-react.js +4651 -0
- package/build/cjs/_vendor/swiper-react.js.map +7 -0
- package/build/cjs/_vendor/swiper.js +3822 -0
- package/build/cjs/_vendor/swiper.js.map +7 -0
- package/build/cjs/blocks/CardLayout/CardLayout.css +6 -0
- package/build/cjs/blocks/CardLayout/CardLayout.d.ts +1 -1
- package/build/cjs/blocks/CardLayout/CardLayout.js +2 -2
- package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
- package/build/cjs/blocks/Companies/schema.d.ts +1 -0
- package/build/cjs/blocks/Companies/schema.js +2 -1
- package/build/cjs/blocks/Companies/schema.js.map +1 -1
- package/build/cjs/blocks/ContentLayout/ContentLayout.js +4 -2
- package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
- package/build/cjs/blocks/ContentLayout/schema.d.ts +11 -0
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.css +5 -5
- package/build/cjs/blocks/FilterBlock/FilterBlock.d.ts +1 -2
- package/build/cjs/blocks/FilterBlock/FilterBlock.js.map +1 -1
- package/build/cjs/blocks/FoldableList/schema.d.ts +11 -0
- package/build/cjs/blocks/Form/Form.css +5 -2
- package/build/cjs/blocks/Form/Form.d.ts +2 -3
- package/build/cjs/blocks/Form/Form.js +14 -11
- package/build/cjs/blocks/Form/Form.js.map +1 -1
- package/build/cjs/blocks/Form/schema.d.ts +12 -4
- package/build/cjs/blocks/Form/schema.js +1 -4
- package/build/cjs/blocks/Form/schema.js.map +1 -1
- package/build/cjs/blocks/Form/utils.d.ts +3 -0
- package/build/cjs/blocks/Form/utils.js +20 -0
- package/build/cjs/blocks/Form/utils.js.map +1 -0
- package/build/cjs/blocks/Header/Header.css +13 -0
- package/build/cjs/blocks/Header/Header.d.ts +7 -1
- package/build/cjs/blocks/Header/Header.js +11 -18
- package/build/cjs/blocks/Header/Header.js.map +1 -1
- package/build/cjs/blocks/Header/schema.d.ts +77 -0
- package/build/cjs/blocks/Header/schema.js +13 -1
- package/build/cjs/blocks/Header/schema.js.map +1 -1
- package/build/cjs/blocks/HeaderSlider/schema.d.ts +29 -0
- package/build/cjs/blocks/Info/schema.d.ts +22 -0
- package/build/cjs/blocks/Map/Map.js.map +1 -1
- package/build/cjs/blocks/Map/schema.d.ts +101 -0
- package/build/cjs/blocks/Media/Media.js +1 -1
- package/build/cjs/blocks/Media/Media.js.map +1 -1
- package/build/cjs/blocks/Media/schema.d.ts +22 -0
- package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +3 -4
- package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
- package/build/cjs/blocks/Questions/Questions.js +32 -7
- package/build/cjs/blocks/Questions/Questions.js.map +1 -1
- package/build/cjs/blocks/Questions/schema.d.ts +11 -0
- package/build/cjs/blocks/Share/Share.js +1 -3
- package/build/cjs/blocks/Share/Share.js.map +1 -1
- package/build/cjs/blocks/Slider/Slider.css +62 -1
- package/build/cjs/blocks/Slider/Slider.d.ts +6 -4
- package/build/cjs/blocks/Slider/Slider.js +7 -7
- package/build/cjs/blocks/Slider/Slider.js.map +1 -1
- package/build/cjs/blocks/Slider/useSlider.d.ts +1 -2
- package/build/cjs/blocks/Slider/useSlider.js +3 -7
- package/build/cjs/blocks/Slider/useSlider.js.map +1 -1
- package/build/cjs/blocks/Slider/useSliderPagination.d.ts +1 -1
- package/build/cjs/blocks/Slider/useSliderPagination.js.map +1 -1
- package/build/cjs/blocks/Slider/utils.d.ts +1 -1
- package/build/cjs/blocks/Slider/utils.js.map +1 -1
- package/build/cjs/blocks/Table/Table.js +16 -3
- package/build/cjs/blocks/Table/Table.js.map +1 -1
- package/build/cjs/blocks/Tabs/TabContent/TabContent.js +12 -12
- package/build/cjs/blocks/Tabs/TabContent/TabContent.js.map +1 -1
- package/build/cjs/blocks/Tabs/Tabs.js +1 -1
- package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
- package/build/cjs/blocks/Tabs/schema.d.ts +11 -0
- package/build/cjs/components/Button/Button.css +2 -7
- package/build/cjs/components/Button/Button.js +29 -4
- package/build/cjs/components/Button/Button.js.map +1 -1
- package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +1 -1
- package/build/cjs/components/ButtonTabs/ButtonTabs.js.map +1 -1
- package/build/cjs/components/Buttons/Buttons.css +3 -0
- package/build/cjs/components/Buttons/Buttons.d.ts +1 -2
- package/build/cjs/components/Buttons/Buttons.js +1 -1
- package/build/cjs/components/Buttons/Buttons.js.map +1 -1
- package/build/cjs/components/CardBase/CardBase.css +15 -0
- package/build/cjs/components/CardBase/CardBase.d.ts +3 -5
- package/build/cjs/components/CardBase/CardBase.js.map +1 -1
- package/build/cjs/components/ContentIcon/ContentIcon.d.ts +8 -0
- package/build/cjs/components/ContentIcon/ContentIcon.js +22 -0
- package/build/cjs/components/ContentIcon/ContentIcon.js.map +1 -0
- package/build/cjs/components/ContentLabels/ContentLabels.css +53 -0
- package/build/cjs/components/ContentLabels/ContentLabels.d.ts +3 -0
- package/build/cjs/components/ContentLabels/ContentLabels.js +16 -0
- package/build/cjs/components/ContentLabels/ContentLabels.js.map +1 -0
- package/build/cjs/components/ContentList/ContentList.js +3 -3
- package/build/cjs/components/ContentList/ContentList.js.map +1 -1
- package/build/cjs/components/DefaultVideo/DefaultVideo.js +23 -2
- package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
- package/build/cjs/components/FullscreenMedia/FullscreenMedia.css +3 -1
- package/build/cjs/components/Icon/Icon.css +10 -0
- package/build/cjs/components/Icon/Icon.d.ts +9 -0
- package/build/cjs/components/Icon/Icon.js +24 -0
- package/build/cjs/components/Icon/Icon.js.map +1 -0
- package/build/cjs/components/IconWrapper/IconWrapper.css +16 -1
- package/build/cjs/components/IconWrapper/IconWrapper.js +10 -6
- package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
- package/build/cjs/components/InnerForm/InnerForm.d.ts +1 -2
- package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
- package/build/cjs/components/Link/Link.d.ts +2 -2
- package/build/cjs/components/Link/Link.js +2 -2
- package/build/cjs/components/Link/Link.js.map +1 -1
- package/build/cjs/components/Links/Links.d.ts +1 -1
- package/build/cjs/components/Links/Links.js +1 -1
- package/build/cjs/components/Links/Links.js.map +1 -1
- package/build/cjs/components/Map/GoogleMap.d.ts +1 -2
- package/build/cjs/components/Map/GoogleMap.js +19 -3
- package/build/cjs/components/Map/GoogleMap.js.map +1 -1
- package/build/cjs/components/Map/YMap/YMap.d.ts +4 -4
- package/build/cjs/components/Map/YMap/YMap.js +46 -15
- package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
- package/build/cjs/components/Map/YMap/YandexMap.d.ts +1 -2
- package/build/cjs/components/Map/YMap/YandexMap.js +73 -7
- package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
- package/build/cjs/components/Map/YMap/utils.d.ts +8 -0
- package/build/cjs/components/Map/YMap/utils.js +96 -0
- package/build/cjs/components/Map/YMap/utils.js.map +1 -0
- package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.d.ts +1 -2
- package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
- package/build/cjs/components/Media/Video/Video.js +2 -13
- package/build/cjs/components/Media/Video/Video.js.map +1 -1
- package/build/cjs/components/MediaBase/MediaBase.d.ts +1 -3
- package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
- package/build/cjs/components/ReactPlayer/ReactPlayer.d.ts +1 -2
- package/build/cjs/components/ReactPlayer/ReactPlayer.js +19 -13
- package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/cjs/components/Title/Title.d.ts +3 -2
- package/build/cjs/components/Title/Title.js +2 -2
- package/build/cjs/components/Title/Title.js.map +1 -1
- package/build/cjs/components/UnpublishedLabel/UnpublishedLabel.js.map +1 -1
- package/build/cjs/components/YandexForm/YandexForm.js +1 -1
- package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
- package/build/cjs/components/index.d.ts +2 -0
- package/build/cjs/components/index.js +5 -1
- package/build/cjs/components/index.js.map +1 -1
- package/build/cjs/constructor-items.d.ts +7 -7
- package/build/cjs/containers/PageConstructor/PageConstructor.css +0 -1
- package/build/cjs/containers/PageConstructor/Provider.js +2 -0
- package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
- package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.d.ts +1 -2
- package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
- package/build/cjs/context/locationContext/locationContext.d.ts +1 -1
- package/build/cjs/context/locationContext/locationContext.js.map +1 -1
- package/build/cjs/context/mapsContext/mapsProvider.d.ts +1 -1
- package/build/cjs/context/mapsContext/mapsProvider.js.map +1 -1
- package/build/cjs/context/windowWidthContext/WindowWidthContext.d.ts +4 -0
- package/build/cjs/context/windowWidthContext/WindowWidthContext.js +28 -0
- package/build/cjs/context/windowWidthContext/WindowWidthContext.js.map +1 -0
- package/build/cjs/context/windowWidthContext/index.d.ts +1 -0
- package/build/cjs/context/windowWidthContext/index.js +5 -0
- package/build/cjs/context/windowWidthContext/index.js.map +1 -0
- package/build/cjs/editor/components/AddBlock/AddBlock.d.ts +1 -2
- package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
- package/build/cjs/editor/components/Layout/Layout.d.ts +2 -6
- package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
- package/build/cjs/editor/data/previews/default-preview.d.ts +1 -1
- package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
- package/build/cjs/editor/data/previews/header-block.d.ts +1 -1
- package/build/cjs/editor/data/previews/header-block.js.map +1 -1
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.d.ts +2 -3
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
- package/build/cjs/editor/icons/Tablet.d.ts +1 -1
- package/build/cjs/editor/icons/Tablet.js.map +1 -1
- package/build/cjs/grid/Grid/Grid.js.map +1 -1
- package/build/cjs/grid/Row/Row.d.ts +1 -1
- package/build/cjs/grid/Row/Row.js.map +1 -1
- package/build/cjs/hooks/useDeviceValue.d.ts +2 -0
- package/build/cjs/hooks/useDeviceValue.js +33 -0
- package/build/cjs/hooks/useDeviceValue.js.map +1 -0
- package/build/cjs/icons/BrandIconDark.d.ts +1 -1
- package/build/cjs/icons/BrandIconDark.js.map +1 -1
- package/build/cjs/icons/BrandIconLight.d.ts +1 -1
- package/build/cjs/icons/BrandIconLight.js.map +1 -1
- package/build/cjs/icons/BrandName.d.ts +1 -1
- package/build/cjs/icons/BrandName.js.map +1 -1
- package/build/cjs/icons/Chevron.d.ts +1 -1
- package/build/cjs/icons/Chevron.js.map +1 -1
- package/build/cjs/icons/Facebook.d.ts +1 -1
- package/build/cjs/icons/Facebook.js.map +1 -1
- package/build/cjs/icons/Github.d.ts +1 -1
- package/build/cjs/icons/Github.js.map +1 -1
- package/build/cjs/icons/Linkedin.d.ts +1 -1
- package/build/cjs/icons/Linkedin.js.map +1 -1
- package/build/cjs/icons/NavigationArrow.d.ts +1 -1
- package/build/cjs/icons/NavigationArrow.js.map +1 -1
- package/build/cjs/icons/NavigationChevron.d.ts +1 -1
- package/build/cjs/icons/NavigationChevron.js.map +1 -1
- package/build/cjs/icons/Telegram.d.ts +1 -1
- package/build/cjs/icons/Telegram.js.map +1 -1
- package/build/cjs/icons/Twitter.d.ts +1 -1
- package/build/cjs/icons/Twitter.js.map +1 -1
- package/build/cjs/icons/Vk.d.ts +1 -1
- package/build/cjs/icons/Vk.js.map +1 -1
- package/build/cjs/internal-typings/global.d.ts +4 -2
- package/build/cjs/models/constructor-items/blocks.d.ts +42 -17
- package/build/cjs/models/constructor-items/blocks.js.map +1 -1
- package/build/cjs/models/constructor-items/common.d.ts +42 -4
- package/build/cjs/models/constructor-items/common.js.map +1 -1
- package/build/cjs/models/constructor-items/sub-blocks.d.ts +17 -6
- package/build/cjs/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/cjs/models/navigation.d.ts +2 -1
- package/build/cjs/models/navigation.js.map +1 -1
- package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.d.ts +1 -2
- package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
- package/build/cjs/navigation/components/Logo/Logo.d.ts +1 -2
- package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
- package/build/cjs/navigation/components/MobileMenuButton/MobileMenuButton.d.ts +1 -2
- package/build/cjs/navigation/components/MobileMenuButton/MobileMenuButton.js.map +1 -1
- package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.d.ts +1 -2
- package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
- package/build/cjs/navigation/components/Navigation/Navigation.d.ts +2 -1
- package/build/cjs/navigation/components/Navigation/Navigation.js +5 -2
- package/build/cjs/navigation/components/Navigation/Navigation.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/NavigationItem.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +12 -3
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.d.ts +3 -4
- package/build/cjs/navigation/components/NavigationList/NavigationList.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
- package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.d.ts +1 -2
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js +1 -1
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
- package/build/cjs/navigation/components/SocialIcon/SocialIcon.d.ts +1 -2
- package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
- package/build/cjs/navigation/containers/Layout/Layout.d.ts +1 -1
- package/build/cjs/navigation/containers/Layout/Layout.js.map +1 -1
- package/build/cjs/navigation/hooks/useActiveNavItem.d.ts +8 -7
- package/build/cjs/navigation/utils.d.ts +4 -3
- package/build/cjs/node_modules/swiper/modules/a11y.css +9 -0
- package/build/cjs/node_modules/swiper/modules/autoplay.css +0 -0
- package/build/cjs/node_modules/swiper/modules/index.js +1309 -0
- package/build/cjs/node_modules/swiper/modules/pagination.css +181 -0
- package/build/cjs/node_modules/swiper/package.json +14 -0
- package/build/cjs/node_modules/swiper/swiper-react.d.ts +497 -0
- package/build/cjs/node_modules/swiper/swiper-react.js +4651 -0
- package/build/cjs/node_modules/swiper/swiper.css +229 -0
- package/build/cjs/node_modules/swiper/swiper.d.ts +5 -0
- package/build/cjs/node_modules/swiper/swiper.js +3822 -0
- package/build/cjs/node_modules/swiper/types/index.d.ts +6 -0
- package/build/cjs/node_modules/swiper/types/modules/index.d.ts +53 -0
- package/build/cjs/schema/constants.d.ts +62 -0
- package/build/cjs/schema/validators/common.d.ts +156 -1
- package/build/cjs/schema/validators/common.js +74 -1
- package/build/cjs/schema/validators/common.js.map +1 -1
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +2 -2
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
- package/build/cjs/sub-blocks/BackgroundCard/schema.d.ts +16 -0
- package/build/cjs/sub-blocks/BackgroundCard/schema.js +1 -0
- package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/BasicCard/BasicCard.js +15 -2
- package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
- package/build/cjs/sub-blocks/BasicCard/schema.d.ts +38 -0
- package/build/cjs/sub-blocks/BasicCard/schema.js +7 -0
- package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/Content/Content.css +16 -2
- package/build/cjs/sub-blocks/Content/Content.js +12 -3
- package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
- package/build/cjs/sub-blocks/Content/schema.d.ts +134 -1
- package/build/cjs/sub-blocks/Content/schema.js +23 -2
- package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
- package/build/cjs/sub-blocks/ImageCard/schema.d.ts +11 -0
- package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +2 -2
- package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
- package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +11 -0
- package/build/cjs/text-transform/common.d.ts +2 -1
- package/build/cjs/text-transform/common.js +2 -2
- package/build/cjs/text-transform/common.js.map +1 -1
- package/build/cjs/text-transform/config.js +16 -11
- package/build/cjs/text-transform/config.js.map +1 -1
- package/build/cjs/utils/breakpoint.d.ts +7 -0
- package/build/cjs/utils/breakpoint.js +12 -0
- package/build/cjs/utils/breakpoint.js.map +1 -0
- package/build/cjs/utils/icons.d.ts +3 -0
- package/build/cjs/utils/icons.js +16 -0
- package/build/cjs/utils/icons.js.map +1 -0
- package/build/cjs/utils/index.d.ts +2 -0
- package/build/cjs/utils/index.js +2 -0
- package/build/cjs/utils/index.js.map +1 -1
- package/build/esm/blocks/CardLayout/CardLayout.css +6 -0
- package/build/esm/blocks/CardLayout/CardLayout.d.ts +1 -1
- package/build/esm/blocks/CardLayout/CardLayout.js +3 -3
- package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
- package/build/esm/blocks/Companies/schema.d.ts +1 -0
- package/build/esm/blocks/Companies/schema.js +2 -1
- package/build/esm/blocks/Companies/schema.js.map +1 -1
- package/build/esm/blocks/ContentLayout/ContentLayout.js +4 -2
- package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
- package/build/esm/blocks/ContentLayout/schema.d.ts +11 -0
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.css +5 -5
- package/build/esm/blocks/FilterBlock/FilterBlock.d.ts +1 -2
- package/build/esm/blocks/FilterBlock/FilterBlock.js.map +1 -1
- package/build/esm/blocks/FoldableList/schema.d.ts +11 -0
- package/build/esm/blocks/Form/Form.css +5 -2
- package/build/esm/blocks/Form/Form.d.ts +2 -3
- package/build/esm/blocks/Form/Form.js +14 -11
- package/build/esm/blocks/Form/Form.js.map +1 -1
- package/build/esm/blocks/Form/schema.d.ts +12 -4
- package/build/esm/blocks/Form/schema.js +1 -4
- package/build/esm/blocks/Form/schema.js.map +1 -1
- package/build/esm/blocks/Form/utils.d.ts +3 -0
- package/build/esm/blocks/Form/utils.js +16 -0
- package/build/esm/blocks/Form/utils.js.map +1 -0
- package/build/esm/blocks/Header/Header.css +13 -0
- package/build/esm/blocks/Header/Header.d.ts +7 -1
- package/build/esm/blocks/Header/Header.js +11 -18
- package/build/esm/blocks/Header/Header.js.map +1 -1
- package/build/esm/blocks/Header/schema.d.ts +77 -0
- package/build/esm/blocks/Header/schema.js +12 -0
- package/build/esm/blocks/Header/schema.js.map +1 -1
- package/build/esm/blocks/HeaderSlider/schema.d.ts +29 -0
- package/build/esm/blocks/Info/schema.d.ts +22 -0
- package/build/esm/blocks/Map/Map.js.map +1 -1
- package/build/esm/blocks/Map/schema.d.ts +101 -0
- package/build/esm/blocks/Media/Media.js +1 -1
- package/build/esm/blocks/Media/Media.js.map +1 -1
- package/build/esm/blocks/Media/schema.d.ts +22 -0
- package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +3 -4
- package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
- package/build/esm/blocks/Questions/Questions.js +32 -7
- package/build/esm/blocks/Questions/Questions.js.map +1 -1
- package/build/esm/blocks/Questions/schema.d.ts +11 -0
- package/build/esm/blocks/Share/Share.js +1 -3
- package/build/esm/blocks/Share/Share.js.map +1 -1
- package/build/esm/blocks/Slider/Slider.css +62 -1
- package/build/esm/blocks/Slider/Slider.d.ts +6 -4
- package/build/esm/blocks/Slider/Slider.js +7 -7
- package/build/esm/blocks/Slider/Slider.js.map +1 -1
- package/build/esm/blocks/Slider/useSlider.d.ts +2 -3
- package/build/esm/blocks/Slider/useSlider.js +3 -7
- package/build/esm/blocks/Slider/useSlider.js.map +1 -1
- package/build/esm/blocks/Slider/useSliderPagination.d.ts +1 -1
- package/build/esm/blocks/Slider/useSliderPagination.js.map +1 -1
- package/build/esm/blocks/Slider/utils.d.ts +1 -1
- package/build/esm/blocks/Slider/utils.js.map +1 -1
- package/build/esm/blocks/Table/Table.js +15 -3
- package/build/esm/blocks/Table/Table.js.map +1 -1
- package/build/esm/blocks/Tabs/TabContent/TabContent.js +7 -7
- package/build/esm/blocks/Tabs/TabContent/TabContent.js.map +1 -1
- package/build/esm/blocks/Tabs/Tabs.js +2 -2
- package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
- package/build/esm/blocks/Tabs/schema.d.ts +11 -0
- package/build/esm/components/Button/Button.css +2 -7
- package/build/esm/components/Button/Button.js +29 -4
- package/build/esm/components/Button/Button.js.map +1 -1
- package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +1 -1
- package/build/esm/components/ButtonTabs/ButtonTabs.js.map +1 -1
- package/build/esm/components/Buttons/Buttons.css +3 -0
- package/build/esm/components/Buttons/Buttons.d.ts +1 -2
- package/build/esm/components/Buttons/Buttons.js +1 -1
- package/build/esm/components/Buttons/Buttons.js.map +1 -1
- package/build/esm/components/CardBase/CardBase.css +15 -0
- package/build/esm/components/CardBase/CardBase.d.ts +3 -5
- package/build/esm/components/CardBase/CardBase.js.map +1 -1
- package/build/esm/components/ContentIcon/ContentIcon.d.ts +8 -0
- package/build/esm/components/ContentIcon/ContentIcon.js +19 -0
- package/build/esm/components/ContentIcon/ContentIcon.js.map +1 -0
- package/build/esm/components/ContentLabels/ContentLabels.css +53 -0
- package/build/esm/components/ContentLabels/ContentLabels.d.ts +4 -0
- package/build/esm/components/ContentLabels/ContentLabels.js +14 -0
- package/build/esm/components/ContentLabels/ContentLabels.js.map +1 -0
- package/build/esm/components/ContentList/ContentList.js +3 -3
- package/build/esm/components/ContentList/ContentList.js.map +1 -1
- package/build/esm/components/DefaultVideo/DefaultVideo.js +23 -2
- package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
- package/build/esm/components/FullscreenMedia/FullscreenMedia.css +3 -1
- package/build/esm/components/Icon/Icon.css +10 -0
- package/build/esm/components/Icon/Icon.d.ts +10 -0
- package/build/esm/components/Icon/Icon.js +22 -0
- package/build/esm/components/Icon/Icon.js.map +1 -0
- package/build/esm/components/IconWrapper/IconWrapper.css +16 -1
- package/build/esm/components/IconWrapper/IconWrapper.js +10 -6
- package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
- package/build/esm/components/InnerForm/InnerForm.d.ts +1 -2
- package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
- package/build/esm/components/Link/Link.d.ts +2 -2
- package/build/esm/components/Link/Link.js +2 -2
- package/build/esm/components/Link/Link.js.map +1 -1
- package/build/esm/components/Links/Links.d.ts +1 -1
- package/build/esm/components/Links/Links.js +1 -1
- package/build/esm/components/Links/Links.js.map +1 -1
- package/build/esm/components/Map/GoogleMap.d.ts +1 -2
- package/build/esm/components/Map/GoogleMap.js +19 -3
- package/build/esm/components/Map/GoogleMap.js.map +1 -1
- package/build/esm/components/Map/YMap/YMap.d.ts +4 -4
- package/build/esm/components/Map/YMap/YMap.js +46 -15
- package/build/esm/components/Map/YMap/YMap.js.map +1 -1
- package/build/esm/components/Map/YMap/YandexMap.d.ts +1 -2
- package/build/esm/components/Map/YMap/YandexMap.js +73 -7
- package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
- package/build/esm/components/Map/YMap/utils.d.ts +8 -0
- package/build/esm/components/Map/YMap/utils.js +90 -0
- package/build/esm/components/Map/YMap/utils.js.map +1 -0
- package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.d.ts +1 -2
- package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
- package/build/esm/components/Media/Video/Video.js +2 -13
- package/build/esm/components/Media/Video/Video.js.map +1 -1
- package/build/esm/components/MediaBase/MediaBase.d.ts +1 -3
- package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.d.ts +1 -2
- package/build/esm/components/ReactPlayer/ReactPlayer.js +19 -13
- package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/esm/components/Title/Title.d.ts +3 -2
- package/build/esm/components/Title/Title.js +2 -2
- package/build/esm/components/Title/Title.js.map +1 -1
- package/build/esm/components/UnpublishedLabel/UnpublishedLabel.js.map +1 -1
- package/build/esm/components/YandexForm/YandexForm.js +1 -1
- package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
- package/build/esm/components/index.d.ts +2 -0
- package/build/esm/components/index.js +2 -0
- package/build/esm/components/index.js.map +1 -1
- package/build/esm/constructor-items.d.ts +7 -7
- package/build/esm/containers/PageConstructor/PageConstructor.css +0 -1
- package/build/esm/containers/PageConstructor/Provider.js +2 -0
- package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
- package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.d.ts +1 -2
- package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
- package/build/esm/context/locationContext/locationContext.d.ts +1 -1
- package/build/esm/context/locationContext/locationContext.js.map +1 -1
- package/build/esm/context/mapsContext/mapsProvider.d.ts +1 -1
- package/build/esm/context/mapsContext/mapsProvider.js.map +1 -1
- package/build/esm/context/windowWidthContext/WindowWidthContext.d.ts +4 -0
- package/build/esm/context/windowWidthContext/WindowWidthContext.js +22 -0
- package/build/esm/context/windowWidthContext/WindowWidthContext.js.map +1 -0
- package/build/esm/context/windowWidthContext/index.d.ts +1 -0
- package/build/esm/context/windowWidthContext/index.js +2 -0
- package/build/esm/context/windowWidthContext/index.js.map +1 -0
- package/build/esm/editor/components/AddBlock/AddBlock.d.ts +1 -2
- package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
- package/build/esm/editor/components/Layout/Layout.d.ts +2 -6
- package/build/esm/editor/components/Layout/Layout.js.map +1 -1
- package/build/esm/editor/data/previews/default-preview.d.ts +1 -1
- package/build/esm/editor/data/previews/default-preview.js.map +1 -1
- package/build/esm/editor/data/previews/header-block.d.ts +1 -1
- package/build/esm/editor/data/previews/header-block.js.map +1 -1
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.d.ts +2 -3
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
- package/build/esm/editor/icons/Tablet.d.ts +1 -1
- package/build/esm/editor/icons/Tablet.js.map +1 -1
- package/build/esm/grid/Grid/Grid.d.ts +1 -1
- package/build/esm/grid/Grid/Grid.js +1 -1
- package/build/esm/grid/Grid/Grid.js.map +1 -1
- package/build/esm/grid/Row/Row.d.ts +1 -1
- package/build/esm/grid/Row/Row.js.map +1 -1
- package/build/esm/hooks/useDeviceValue.d.ts +2 -0
- package/build/esm/hooks/useDeviceValue.js +29 -0
- package/build/esm/hooks/useDeviceValue.js.map +1 -0
- package/build/esm/icons/BrandIconDark.d.ts +1 -1
- package/build/esm/icons/BrandIconDark.js.map +1 -1
- package/build/esm/icons/BrandIconLight.d.ts +1 -1
- package/build/esm/icons/BrandIconLight.js.map +1 -1
- package/build/esm/icons/BrandName.d.ts +1 -1
- package/build/esm/icons/BrandName.js.map +1 -1
- package/build/esm/icons/Chevron.d.ts +1 -1
- package/build/esm/icons/Chevron.js.map +1 -1
- package/build/esm/icons/Facebook.d.ts +1 -1
- package/build/esm/icons/Facebook.js.map +1 -1
- package/build/esm/icons/Github.d.ts +1 -1
- package/build/esm/icons/Github.js.map +1 -1
- package/build/esm/icons/Linkedin.d.ts +1 -1
- package/build/esm/icons/Linkedin.js.map +1 -1
- package/build/esm/icons/NavigationArrow.d.ts +1 -1
- package/build/esm/icons/NavigationArrow.js.map +1 -1
- package/build/esm/icons/NavigationChevron.d.ts +1 -1
- package/build/esm/icons/NavigationChevron.js.map +1 -1
- package/build/esm/icons/Telegram.d.ts +1 -1
- package/build/esm/icons/Telegram.js.map +1 -1
- package/build/esm/icons/Twitter.d.ts +1 -1
- package/build/esm/icons/Twitter.js.map +1 -1
- package/build/esm/icons/Vk.d.ts +1 -1
- package/build/esm/icons/Vk.js.map +1 -1
- package/build/esm/internal-typings/global.d.ts +4 -2
- package/build/esm/models/constructor-items/blocks.d.ts +42 -17
- package/build/esm/models/constructor-items/blocks.js.map +1 -1
- package/build/esm/models/constructor-items/common.d.ts +42 -4
- package/build/esm/models/constructor-items/common.js.map +1 -1
- package/build/esm/models/constructor-items/sub-blocks.d.ts +17 -6
- package/build/esm/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/esm/models/navigation.d.ts +2 -1
- package/build/esm/models/navigation.js.map +1 -1
- package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.d.ts +1 -2
- package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
- package/build/esm/navigation/components/Logo/Logo.d.ts +1 -2
- package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
- package/build/esm/navigation/components/MobileMenuButton/MobileMenuButton.d.ts +1 -2
- package/build/esm/navigation/components/MobileMenuButton/MobileMenuButton.js.map +1 -1
- package/build/esm/navigation/components/MobileNavigation/MobileNavigation.d.ts +1 -2
- package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
- package/build/esm/navigation/components/Navigation/Navigation.d.ts +2 -1
- package/build/esm/navigation/components/Navigation/Navigation.js +5 -2
- package/build/esm/navigation/components/Navigation/Navigation.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/NavigationItem.d.ts +1 -2
- package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.d.ts +1 -2
- package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.d.ts +1 -2
- package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.d.ts +1 -2
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +12 -3
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.d.ts +3 -4
- package/build/esm/navigation/components/NavigationList/NavigationList.d.ts +1 -2
- package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
- package/build/esm/navigation/components/NavigationListItem/NavigationListItem.d.ts +1 -2
- package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.d.ts +1 -2
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js +1 -1
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
- package/build/esm/navigation/components/SocialIcon/SocialIcon.d.ts +1 -2
- package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
- package/build/esm/navigation/containers/Layout/Layout.d.ts +1 -1
- package/build/esm/navigation/containers/Layout/Layout.js.map +1 -1
- package/build/esm/navigation/hooks/useActiveNavItem.d.ts +8 -7
- package/build/esm/navigation/utils.d.ts +4 -3
- package/build/esm/schema/constants.d.ts +62 -0
- package/build/esm/schema/validators/common.d.ts +156 -1
- package/build/esm/schema/validators/common.js +73 -2
- package/build/esm/schema/validators/common.js.map +1 -1
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +2 -2
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
- package/build/esm/sub-blocks/BackgroundCard/schema.d.ts +16 -0
- package/build/esm/sub-blocks/BackgroundCard/schema.js +2 -1
- package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/BasicCard/BasicCard.js +15 -2
- package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
- package/build/esm/sub-blocks/BasicCard/schema.d.ts +38 -0
- package/build/esm/sub-blocks/BasicCard/schema.js +8 -1
- package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/Content/Content.css +16 -2
- package/build/esm/sub-blocks/Content/Content.js +11 -3
- package/build/esm/sub-blocks/Content/Content.js.map +1 -1
- package/build/esm/sub-blocks/Content/schema.d.ts +134 -1
- package/build/esm/sub-blocks/Content/schema.js +23 -2
- package/build/esm/sub-blocks/Content/schema.js.map +1 -1
- package/build/esm/sub-blocks/ImageCard/schema.d.ts +11 -0
- package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +2 -2
- package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
- package/build/esm/sub-blocks/LayoutItem/schema.d.ts +11 -0
- package/build/esm/text-transform/common.d.ts +2 -1
- package/build/esm/text-transform/common.js +2 -2
- package/build/esm/text-transform/common.js.map +1 -1
- package/build/esm/text-transform/config.js +16 -11
- package/build/esm/text-transform/config.js.map +1 -1
- package/build/esm/utils/breakpoint.d.ts +7 -0
- package/build/esm/utils/breakpoint.js +9 -0
- package/build/esm/utils/breakpoint.js.map +1 -0
- package/build/esm/utils/icons.d.ts +3 -0
- package/build/esm/utils/icons.js +11 -0
- package/build/esm/utils/icons.js.map +1 -0
- package/build/esm/utils/index.d.ts +2 -0
- package/build/esm/utils/index.js +2 -0
- package/build/esm/utils/index.js.map +1 -1
- package/package.json +7 -5
- package/schema/index.js +1 -1
- package/server/models/constructor-items/blocks.d.ts +42 -17
- package/server/models/constructor-items/common.d.ts +42 -4
- package/server/models/constructor-items/sub-blocks.d.ts +17 -6
- package/server/models/navigation.d.ts +2 -1
- package/server/text-transform/common.d.ts +2 -1
- package/server/text-transform/common.js +2 -2
- package/server/text-transform/config.js +16 -11
- package/server/utils/breakpoint.d.ts +7 -0
- package/server/utils/breakpoint.js +11 -0
- package/server/utils/icons.d.ts +3 -0
- package/server/utils/icons.js +47 -0
- package/server/utils/index.d.ts +2 -0
- package/server/utils/index.js +2 -0
- package/styles/mixins.scss +20 -0
- package/styles/root.scss +0 -1
- package/styles/storybook/index.scss +1 -0
- package/build/cjs/blocks/Questions/models.d.ts +0 -11
- package/build/cjs/blocks/Questions/models.js +0 -15
- package/build/cjs/blocks/Questions/models.js.map +0 -1
- package/build/cjs/components/ContentList/ContentListItemIcon.d.ts +0 -7
- package/build/cjs/components/ContentList/ContentListItemIcon.js +0 -23
- package/build/cjs/components/ContentList/ContentListItemIcon.js.map +0 -1
- package/build/esm/blocks/Questions/models.d.ts +0 -11
- package/build/esm/blocks/Questions/models.js +0 -12
- package/build/esm/blocks/Questions/models.js.map +0 -1
- package/build/esm/components/ContentList/ContentListItemIcon.d.ts +0 -7
- package/build/esm/components/ContentList/ContentListItemIcon.js +0 -20
- package/build/esm/components/ContentList/ContentListItemIcon.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactPlayer.js","sourceRoot":"../../../../src","sources":["components/ReactPlayer/ReactPlayer.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport _ReactPlayer from 'react-player';\n\nimport {MobileContext} from '../../context/mobileContext';\nimport {VideoContext} from '../../context/videoContext';\nimport {useAnalytics, useMount} from '../../hooks';\nimport {\n AnalyticsEvent,\n ClassNameProps,\n CustomControlsButtonPositioning,\n CustomControlsType,\n DefaultEventNames,\n MediaVideoControlsType,\n MediaVideoProps,\n PlayButtonProps,\n PlayButtonThemes,\n PlayButtonType,\n PredefinedEventTypes,\n ReactPlayerBlockHandler,\n} from '../../models';\nimport {block} from '../../utils';\n\nimport CustomBarControls from './CustomBarControls';\nimport {i18n} from './i18n';\nimport {checkYoutubeVideos} from './utils';\nimport {isYoutubePlayerInstance} from './utils/youtube';\n\nimport './ReactPlayer.scss';\n\nconst b = block('ReactPlayer');\n\nconst FPS = 60;\n\nconst ReactPlayer =\n 'default' in _ReactPlayer && _ReactPlayer.default\n ? (_ReactPlayer.default as typeof _ReactPlayer)\n : _ReactPlayer;\n\nexport interface ReactPlayerBlockProps\n extends Omit<MediaVideoProps, 'loop' | 'src'>,\n ClassNameProps {\n src: string | string[];\n previewImgUrl?: string;\n loop?: boolean;\n customBarControlsClassName?: string;\n showPreview?: boolean;\n onClickPreview?: () => void;\n height?: number;\n ratio?: number;\n autoRatio?: boolean;\n children?: React.ReactNode;\n}\n\ninterface PlayerPropgress {\n played: number;\n}\n\n// eslint-disable-next-line react/display-name\nexport const ReactPlayerBlock = React.forwardRef<ReactPlayerBlockHandler, ReactPlayerBlockProps>(\n (props, originRef) => {\n const isMobile = React.useContext(MobileContext);\n const {\n src,\n previewImgUrl,\n loop = false,\n controls = MediaVideoControlsType.Default,\n customControlsOptions = {},\n muted: initiallyMuted = false,\n elapsedTime,\n playButton,\n className,\n customBarControlsClassName,\n showPreview,\n onClickPreview,\n analyticsEvents,\n height,\n ariaLabel,\n ratio,\n autoRatio,\n contain = true,\n } = props;\n\n const {\n type = PlayButtonType.Default,\n theme = PlayButtonThemes.Blue,\n text,\n className: buttonClassName,\n } = playButton || ({} as PlayButtonProps);\n const {\n type: customControlsType = CustomControlsType.WithMuteButton,\n muteButtonShown,\n positioning = CustomControlsButtonPositioning.Center,\n } = customControlsOptions;\n\n const autoPlay = Boolean(!isMobile && !previewImgUrl && props.autoplay);\n const mute = initiallyMuted || autoPlay;\n\n const {playingVideoRef, setProps} = React.useContext(VideoContext);\n\n const ref = React.useRef<HTMLDivElement>(null);\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n\n const [playerRef, setPlayerRef] = React.useState<_ReactPlayer>();\n const [isPlaying, setIsPlaying] = React.useState(autoPlay);\n const [playedPercent, setPlayedPercent] = React.useState<number>(0);\n const [currentHeight, setCurrentHeight] = React.useState(height);\n const [width, setWidth] = React.useState<number>(0);\n const [actualRatio, setActualRatio] = React.useState<number>();\n const [muted, setMuted] = React.useState<boolean>(mute);\n const [started, setStarted] = React.useState(autoPlay);\n const [ended, setEnded] = React.useState<boolean>(false);\n const [isMounted, setIsMounted] = React.useState(false);\n const [hovered, setHovered] = React.useState(isMobile);\n\n useMount(() => setIsMounted(true));\n\n const videoSrc = React.useMemo(() => checkYoutubeVideos(src), [src]);\n\n const eventsArray = React.useMemo(() => {\n if (analyticsEvents) {\n return Array.isArray(analyticsEvents) ? analyticsEvents : [analyticsEvents];\n }\n\n return [];\n }, [analyticsEvents]);\n const handleAnalytics = useAnalytics(DefaultEventNames.ReactPlayerControls);\n\n React.useImperativeHandle(originRef, () => {\n if (!playerRef) {\n return;\n }\n\n let play, pause, addEventListener;\n const videoInstance = playerRef.getInternalPlayer();\n if (isYoutubePlayerInstance(videoInstance)) {\n ({pauseVideo: pause, playVideo: play, addEventListener} = videoInstance);\n } else {\n // it is assumed that `videoInstance` is HTMLVideoElement by default\n ({play, pause, addEventListener} = videoInstance);\n }\n\n // eslint-disable-next-line consistent-return\n return {\n play: play.bind(videoInstance),\n pause: pause.bind(videoInstance),\n addEventListener: addEventListener.bind(videoInstance),\n };\n }, [playerRef]);\n\n React.useEffect(() => {\n if (ref.current && !playingVideoRef?.contains(ref.current)) {\n setMuted(true);\n }\n }, [playingVideoRef]);\n\n React.useEffect(() => {\n if (showPreview) {\n playerRef?.showPreview();\n }\n }, [showPreview, playerRef]);\n\n React.useEffect(() => {\n if (playerRef && !started) {\n setIsPlaying(autoPlay);\n }\n }, [autoPlay, playerRef, started]);\n\n React.useEffect(() => setMuted(mute), [mute]);\n\n React.useEffect(() => {\n if (!started && isPlaying) {\n setStarted(true);\n }\n }, [isPlaying, started]);\n\n React.useEffect(() => {\n if (started && !Number.isNaN(Number(elapsedTime))) {\n playerRef?.seekTo(elapsedTime ?? 0, 'seconds');\n }\n }, [elapsedTime, playerRef, started]);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n if (ref.current) {\n // We need to get parent's width does not equal 0\n const parentElement = getParentElement(ref.current);\n const {paddingLeft, paddingRight} = getComputedStyle(parentElement);\n const newWidth =\n parentElement.offsetWidth -\n parseFloat(paddingLeft) -\n parseFloat(paddingRight);\n\n setWidth(newWidth);\n setCurrentHeight(\n Math.floor(\n getHeight(newWidth, ratio ?? (autoRatio ? actualRatio : undefined)),\n ),\n );\n }\n }, 200);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [actualRatio, autoRatio, ratio]);\n\n const playEvents = React.useMemo(\n () => eventsArray?.filter((e: AnalyticsEvent) => e.type === PredefinedEventTypes.Play),\n [eventsArray],\n );\n const stopEvents = React.useMemo(\n () => eventsArray?.filter((e: AnalyticsEvent) => e.type === PredefinedEventTypes.Stop),\n [eventsArray],\n );\n\n const playIcon = React.useMemo(() => {\n let playButtonContent;\n\n switch (type) {\n case PlayButtonType.Text:\n playButtonContent = text;\n break;\n case PlayButtonType.Default:\n default:\n playButtonContent = <Icon className={b('icon')} data={PlayFill} size={24} />;\n break;\n }\n\n return (\n <button\n className={b('button', {theme, text: Boolean(text)}, buttonClassName)}\n aria-label={i18n('play')}\n ref={buttonRef}\n >\n {playButtonContent}\n </button>\n );\n }, [type, theme, text, buttonClassName]);\n\n const changeMute = React.useCallback(\n (isMuted: boolean) => {\n if (\n isMuted &&\n playerRef &&\n controls === MediaVideoControlsType.Custom &&\n customControlsType === CustomControlsType.WithMuteButton\n ) {\n playerRef.seekTo(0);\n setPlayedPercent(0);\n }\n\n const events = isMuted ? playEvents : stopEvents;\n handleAnalytics(events);\n\n if (isMuted) {\n setProps({playingVideoRef: ref.current});\n }\n\n // In order to the progress bar to update (equals 0) before displaying\n setTimeout(() => setMuted(!isMuted), 0);\n },\n [\n playerRef,\n customControlsType,\n playEvents,\n stopEvents,\n handleAnalytics,\n setProps,\n controls,\n ],\n );\n\n const handleClickPreview = React.useCallback(() => {\n setIsPlaying(true);\n onClickPreview?.();\n\n handleAnalytics(playEvents);\n }, [onClickPreview, handleAnalytics, playEvents]);\n\n const onPause = React.useCallback(() => {\n // For support correct state for youtube\n if (\n controls !== MediaVideoControlsType.Custom ||\n customControlsType !== CustomControlsType.WithMuteButton\n ) {\n setIsPlaying(false);\n }\n }, [controls, customControlsType]);\n\n const onStart = React.useCallback(() => {\n if (!autoPlay && !initiallyMuted) {\n setMuted(false);\n }\n }, [autoPlay, initiallyMuted]);\n\n const onPlay = React.useCallback(() => {\n setIsPlaying(true);\n\n if (\n controls === MediaVideoControlsType.Custom &&\n customControlsType === CustomControlsType.WithMuteButton\n ) {\n if (ended) {\n changeMute(false);\n } else if (!isPlaying) {\n changeMute(muted);\n }\n setEnded(false);\n }\n }, [changeMute, controls, customControlsType, ended, isPlaying, muted]);\n\n const onReady = React.useCallback((player: _ReactPlayer) => {\n setPlayerRef(player);\n const videoElement = player.getInternalPlayer();\n const videoWidth = videoElement.videoWidth as number | undefined;\n const videoHeight = videoElement.videoHeight as number | undefined;\n if (videoWidth && videoHeight) {\n setActualRatio(videoHeight / videoWidth);\n }\n }, []);\n\n const onProgress = React.useCallback((progress: PlayerPropgress) => {\n setPlayedPercent(progress.played);\n\n if (progress.played === 1) {\n setMuted(true);\n }\n }, []);\n\n const onEnded = React.useCallback(() => {\n // Youtube videos not muted after finishing playing and start again.\n // 'onEnded' does not fire when 'loop' is set to true.\n // It is custom loop with muted sound after finishing playing and start again.\n if (loop) {\n setPlayedPercent(0);\n setIsPlaying(true);\n playerRef?.seekTo(0);\n }\n\n setEnded(true);\n }, [loop, playerRef]);\n\n const onPlayClick = React.useCallback(() => {\n if (isPlaying) {\n onPause();\n } else {\n onPlay();\n }\n }, [isPlaying, onPlay, onPause]);\n\n const handleClick = React.useCallback(() => {\n buttonRef.current?.click();\n\n if (controls === MediaVideoControlsType.Custom) {\n if (customControlsType === CustomControlsType.WithMuteButton) {\n changeMute(muted);\n } else {\n onPlayClick();\n }\n }\n }, [controls, customControlsType, changeMute, muted, onPlayClick]);\n\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\n const key = e.key.toLowerCase();\n\n if (key === 'enter') {\n buttonRef.current?.click();\n }\n }, []);\n\n const onFocusIn = React.useCallback(() => setHovered(true), []);\n const onFocusOut = React.useCallback(() => setHovered(false), []);\n\n return (\n <div\n className={b(\n {\n wrapper: !currentHeight,\n controls,\n contain,\n 'auto-ratio': autoRatio,\n },\n className,\n )}\n ref={ref}\n onClick={handleClick}\n onMouseEnter={onFocusIn}\n onMouseLeave={onFocusOut}\n onFocus={onFocusIn}\n onBlur={onFocusOut}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={0}\n >\n {isMounted ? (\n <React.Fragment>\n <ReactPlayer\n className={b('player')}\n url={videoSrc}\n muted={muted}\n controls={controls === MediaVideoControlsType.Default}\n height={currentHeight || '100%'}\n width={width || '100%'}\n light={previewImgUrl}\n playing={isPlaying}\n playIcon={playIcon}\n progressInterval={FPS}\n onClickPreview={handleClickPreview}\n onStart={onStart}\n onReady={onReady}\n onPlay={onPlay}\n onPause={\n autoPlay && customControlsType !== CustomControlsType.WithMuteButton\n ? undefined\n : onPause\n } // to prevent pause icon flickering when autoplayed video ends\n onProgress={onProgress}\n onEnded={onEnded}\n aria-label={ariaLabel}\n previewTabIndex={-1}\n config={{\n file: {\n attributes: {\n pip: isMobile ? 'false' : undefined,\n playsinline: isMobile ? '' : undefined,\n disablepictureinpicture: isMobile ? '' : undefined,\n },\n },\n }}\n />\n {controls === MediaVideoControlsType.Custom && (\n <CustomBarControls\n className={customBarControlsClassName}\n mute={{\n isMuted: muted,\n changeMute: (event: React.MouseEvent) => {\n event.stopPropagation();\n changeMute(muted);\n },\n }}\n elapsedTimePercent={playedPercent}\n type={customControlsType}\n isPaused={!isPlaying}\n onPlayClick={onPlayClick}\n muteButtonShown={muteButtonShown}\n shown={hovered && ((!started && !previewImgUrl) || started)}\n positioning={positioning}\n />\n )}\n </React.Fragment>\n ) : null}\n </div>\n );\n },\n);\n\nfunction getHeight(width: number, ratio: number = 9 / 16): number {\n return width * ratio;\n}\n\nfunction getParentElement(element: HTMLElement): HTMLElement {\n const parentElement = element.parentElement;\n\n if (!parentElement) {\n return element;\n }\n\n return parentElement.offsetWidth ? parentElement : getParentElement(parentElement);\n}\n\nexport default ReactPlayerBlock;\n"]}
|
|
1
|
+
{"version":3,"file":"ReactPlayer.js","sourceRoot":"../../../../src","sources":["components/ReactPlayer/ReactPlayer.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport _ReactPlayer from 'react-player';\nimport type {ReactPlayerProps} from 'react-player';\n\nimport {MobileContext} from '../../context/mobileContext';\nimport {VideoContext} from '../../context/videoContext';\nimport {useAnalytics, useMount} from '../../hooks';\nimport {\n AnalyticsEvent,\n ClassNameProps,\n CustomControlsButtonPositioning,\n CustomControlsType,\n DefaultEventNames,\n MediaVideoControlsType,\n MediaVideoProps,\n PlayButtonProps,\n PlayButtonThemes,\n PlayButtonType,\n PredefinedEventTypes,\n ReactPlayerBlockHandler,\n} from '../../models';\nimport {block} from '../../utils';\n\nimport CustomBarControls from './CustomBarControls';\nimport {i18n} from './i18n';\nimport {checkYoutubeVideos} from './utils';\nimport {isYoutubePlayerInstance} from './utils/youtube';\n\nimport './ReactPlayer.scss';\n\nconst b = block('ReactPlayer');\n\nconst FPS = 60;\n\nconst ReactPlayer =\n 'default' in _ReactPlayer && _ReactPlayer.default\n ? (_ReactPlayer.default as typeof _ReactPlayer)\n : _ReactPlayer;\n\nexport interface ReactPlayerBlockProps\n extends Omit<MediaVideoProps, 'src' | 'ref'>,\n ClassNameProps {\n src: string | string[];\n previewImgUrl?: string;\n customBarControlsClassName?: string;\n showPreview?: boolean;\n onClickPreview?: () => void;\n height?: number;\n ratio?: number;\n autoRatio?: boolean;\n children?: React.ReactNode;\n}\n\ninterface PlayerPropgress {\n played: number;\n playedSeconds: number;\n}\n\n// eslint-disable-next-line react/display-name\nexport const ReactPlayerBlock = React.forwardRef<ReactPlayerBlockHandler, ReactPlayerBlockProps>(\n (props, originRef) => {\n const isMobile = React.useContext(MobileContext);\n const {\n src,\n previewImgUrl,\n loop = false,\n controls = MediaVideoControlsType.Default,\n customControlsOptions = {},\n muted: initiallyMuted = false,\n elapsedTime,\n playButton,\n className,\n customBarControlsClassName,\n showPreview,\n onClickPreview,\n analyticsEvents,\n height,\n ariaLabel,\n ratio,\n autoRatio,\n contain = true,\n } = props;\n\n const {\n type = PlayButtonType.Default,\n theme = PlayButtonThemes.Blue,\n text,\n className: buttonClassName,\n } = playButton || ({} as PlayButtonProps);\n const {\n type: customControlsType = CustomControlsType.WithMuteButton,\n muteButtonShown,\n positioning = CustomControlsButtonPositioning.Center,\n } = customControlsOptions;\n\n const autoPlay = Boolean(!isMobile && !previewImgUrl && props.autoplay);\n const mute = initiallyMuted || autoPlay;\n\n const {playingVideoRef, setProps} = React.useContext(VideoContext);\n\n const ref = React.useRef<HTMLDivElement>(null);\n const buttonRef = React.useRef<HTMLButtonElement>(null);\n\n const [playerRef, setPlayerRef] = React.useState<_ReactPlayer>();\n const [isPlaying, setIsPlaying] = React.useState(autoPlay);\n const [playedPercent, setPlayedPercent] = React.useState<number>(0);\n const [currentHeight, setCurrentHeight] = React.useState(height);\n const [duration, setDuration] = React.useState<null | number>(null);\n const [width, setWidth] = React.useState<number>(0);\n const [actualRatio, setActualRatio] = React.useState<number>();\n const [muted, setMuted] = React.useState<boolean>(mute);\n const [started, setStarted] = React.useState(autoPlay);\n const [ended, setEnded] = React.useState<boolean>(false);\n const [isMounted, setIsMounted] = React.useState(false);\n const [hovered, setHovered] = React.useState(isMobile);\n\n useMount(() => setIsMounted(true));\n\n const videoSrc = React.useMemo(() => checkYoutubeVideos(src), [src]);\n\n const eventsArray = React.useMemo(() => {\n if (analyticsEvents) {\n return Array.isArray(analyticsEvents) ? analyticsEvents : [analyticsEvents];\n }\n\n return [];\n }, [analyticsEvents]);\n const handleAnalytics = useAnalytics(DefaultEventNames.ReactPlayerControls);\n\n React.useImperativeHandle(originRef, () => {\n if (!playerRef) {\n return;\n }\n\n let play, pause, addEventListener;\n const videoInstance = playerRef.getInternalPlayer();\n if (isYoutubePlayerInstance(videoInstance)) {\n ({pauseVideo: pause, playVideo: play, addEventListener} = videoInstance);\n } else {\n // it is assumed that `videoInstance` is HTMLVideoElement by default\n ({play, pause, addEventListener} = videoInstance);\n }\n\n // eslint-disable-next-line consistent-return\n return {\n play: play.bind(videoInstance),\n pause: pause.bind(videoInstance),\n addEventListener: addEventListener.bind(videoInstance),\n };\n }, [playerRef]);\n\n React.useEffect(() => {\n if (ref.current && !playingVideoRef?.contains(ref.current)) {\n setMuted(true);\n }\n }, [playingVideoRef]);\n\n React.useEffect(() => {\n if (showPreview) {\n playerRef?.showPreview();\n }\n }, [showPreview, playerRef]);\n\n React.useEffect(() => {\n if (playerRef && !started) {\n setIsPlaying(autoPlay);\n }\n }, [autoPlay, playerRef, started]);\n\n React.useEffect(() => setMuted(mute), [mute]);\n\n React.useEffect(() => {\n if (!started && isPlaying) {\n setStarted(true);\n }\n }, [isPlaying, started]);\n\n React.useEffect(() => {\n if (started && !Number.isNaN(Number(elapsedTime))) {\n playerRef?.seekTo(elapsedTime ?? 0, 'seconds');\n }\n }, [elapsedTime, playerRef, started]);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n if (ref.current) {\n // We need to get parent's width does not equal 0\n const parentElement = getParentElement(ref.current);\n const {paddingLeft, paddingRight} = getComputedStyle(parentElement);\n const newWidth =\n parentElement.offsetWidth -\n parseFloat(paddingLeft) -\n parseFloat(paddingRight);\n\n setWidth(newWidth);\n setCurrentHeight(\n Math.floor(\n getHeight(newWidth, ratio ?? (autoRatio ? actualRatio : undefined)),\n ),\n );\n }\n }, 200);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [actualRatio, autoRatio, ratio]);\n\n const playEvents = React.useMemo(\n () => eventsArray?.filter((e: AnalyticsEvent) => e.type === PredefinedEventTypes.Play),\n [eventsArray],\n );\n const stopEvents = React.useMemo(\n () => eventsArray?.filter((e: AnalyticsEvent) => e.type === PredefinedEventTypes.Stop),\n [eventsArray],\n );\n\n const playIcon = React.useMemo(() => {\n let playButtonContent;\n\n switch (type) {\n case PlayButtonType.Text:\n playButtonContent = text;\n break;\n case PlayButtonType.Default:\n default:\n playButtonContent = <Icon className={b('icon')} data={PlayFill} size={24} />;\n break;\n }\n\n return (\n <button\n className={b('button', {theme, text: Boolean(text)}, buttonClassName)}\n aria-label={i18n('play')}\n ref={buttonRef}\n >\n {playButtonContent}\n </button>\n );\n }, [type, theme, text, buttonClassName]);\n\n const changeMute = React.useCallback(\n (isMuted: boolean) => {\n if (\n isMuted &&\n playerRef &&\n controls === MediaVideoControlsType.Custom &&\n customControlsType === CustomControlsType.WithMuteButton\n ) {\n playerRef.seekTo(0);\n setPlayedPercent(0);\n }\n\n const events = isMuted ? playEvents : stopEvents;\n handleAnalytics(events);\n\n if (isMuted) {\n setProps({playingVideoRef: ref.current});\n }\n\n // In order to the progress bar to update (equals 0) before displaying\n setTimeout(() => setMuted(!isMuted), 0);\n },\n [\n playerRef,\n customControlsType,\n playEvents,\n stopEvents,\n handleAnalytics,\n setProps,\n controls,\n ],\n );\n\n const handleClickPreview = React.useCallback(() => {\n setIsPlaying(true);\n onClickPreview?.();\n\n handleAnalytics(playEvents);\n }, [onClickPreview, handleAnalytics, playEvents]);\n\n const onPause = React.useCallback(() => {\n // For support correct state for youtube\n if (\n controls !== MediaVideoControlsType.Custom ||\n customControlsType !== CustomControlsType.WithMuteButton\n ) {\n setIsPlaying(false);\n }\n }, [controls, customControlsType]);\n\n const onStart = React.useCallback(() => {\n if (!autoPlay && !initiallyMuted) {\n setMuted(false);\n }\n }, [autoPlay, initiallyMuted]);\n\n const onPlay = React.useCallback(() => {\n setIsPlaying(true);\n\n if (\n controls === MediaVideoControlsType.Custom &&\n customControlsType === CustomControlsType.WithMuteButton\n ) {\n if (ended) {\n changeMute(false);\n } else if (!isPlaying) {\n changeMute(muted);\n }\n setEnded(false);\n }\n }, [changeMute, controls, customControlsType, ended, isPlaying, muted]);\n\n const onReady = React.useCallback((player: _ReactPlayer) => {\n setPlayerRef(player);\n const videoElement = player.getInternalPlayer();\n const videoWidth = videoElement.videoWidth as number | undefined;\n const videoHeight = videoElement.videoHeight as number | undefined;\n if (videoWidth && videoHeight) {\n setActualRatio(videoHeight / videoWidth);\n }\n }, []);\n\n const onProgress: ReactPlayerProps['onProgress'] = React.useCallback(\n ({played, playedSeconds}: PlayerPropgress) => {\n setPlayedPercent(played);\n\n if (loop) {\n const {start = 0, end = duration} = typeof loop === 'boolean' ? {} : loop;\n\n // Youtube videos not muted after finishing playing and start again.\n // 'onEnded' does not fire when 'loop' is set to true.\n // It is custom loop with muted sound after finishing playing and start again.\n if (end !== null && playedSeconds >= end) {\n setIsPlaying(true);\n playerRef?.seekTo(start);\n }\n }\n\n if (played === 1) {\n setMuted(true);\n }\n },\n [duration, loop, playerRef],\n );\n\n const onDuration = React.useCallback((currentDuration: number) => {\n setDuration(currentDuration);\n }, []);\n\n const onEnded = React.useCallback(() => {\n setEnded(true);\n }, []);\n\n const onPlayClick = React.useCallback(() => {\n if (isPlaying) {\n onPause();\n } else {\n onPlay();\n }\n }, [isPlaying, onPlay, onPause]);\n\n const handleClick = React.useCallback(() => {\n buttonRef.current?.click();\n\n if (controls === MediaVideoControlsType.Custom) {\n if (customControlsType === CustomControlsType.WithMuteButton) {\n changeMute(muted);\n } else {\n onPlayClick();\n }\n }\n }, [controls, customControlsType, changeMute, muted, onPlayClick]);\n\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent) => {\n const key = e.key.toLowerCase();\n\n if (key === 'enter') {\n buttonRef.current?.click();\n }\n }, []);\n\n const onFocusIn = React.useCallback(() => setHovered(true), []);\n const onFocusOut = React.useCallback(() => setHovered(false), []);\n\n return (\n <div\n className={b(\n {\n wrapper: !currentHeight,\n controls,\n contain,\n 'auto-ratio': autoRatio,\n },\n className,\n )}\n ref={ref}\n onClick={handleClick}\n onMouseEnter={onFocusIn}\n onMouseLeave={onFocusOut}\n onFocus={onFocusIn}\n onBlur={onFocusOut}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={0}\n >\n {isMounted ? (\n <React.Fragment>\n <ReactPlayer\n className={b('player')}\n url={videoSrc}\n muted={muted}\n controls={controls === MediaVideoControlsType.Default}\n height={currentHeight || '100%'}\n width={width || '100%'}\n light={previewImgUrl}\n playing={isPlaying}\n playIcon={playIcon}\n progressInterval={FPS}\n onClickPreview={handleClickPreview}\n onStart={onStart}\n onReady={onReady}\n onPlay={onPlay}\n onPause={\n autoPlay && customControlsType !== CustomControlsType.WithMuteButton\n ? undefined\n : onPause\n } // to prevent pause icon flickering when autoplayed video ends\n onProgress={onProgress}\n onEnded={onEnded}\n onDuration={onDuration}\n aria-label={ariaLabel}\n previewTabIndex={-1}\n config={{\n file: {\n attributes: {\n pip: isMobile ? 'false' : undefined,\n playsinline: isMobile ? '' : undefined,\n disablepictureinpicture: isMobile ? '' : undefined,\n },\n },\n }}\n />\n {controls === MediaVideoControlsType.Custom && (\n <CustomBarControls\n className={customBarControlsClassName}\n mute={{\n isMuted: muted,\n changeMute: (event: React.MouseEvent) => {\n event.stopPropagation();\n changeMute(muted);\n },\n }}\n elapsedTimePercent={playedPercent}\n type={customControlsType}\n isPaused={!isPlaying}\n onPlayClick={onPlayClick}\n muteButtonShown={muteButtonShown}\n shown={hovered && ((!started && !previewImgUrl) || started)}\n positioning={positioning}\n />\n )}\n </React.Fragment>\n ) : null}\n </div>\n );\n },\n);\n\nfunction getHeight(width: number, ratio: number = 9 / 16): number {\n return width * ratio;\n}\n\nfunction getParentElement(element: HTMLElement): HTMLElement {\n const parentElement = element.parentElement;\n\n if (!parentElement) {\n return element;\n }\n\n return parentElement.offsetWidth ? parentElement : getParentElement(parentElement);\n}\n\nexport default ReactPlayerBlock;\n"]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { GridColumnSizesType } from "../../grid/index.js";
|
|
1
|
+
import { GridColumnSizesType, GridJustifyContent } from "../../grid/index.js";
|
|
2
2
|
import { ClassNameProps, TitleProps as TitleParams } from "../../models/index.js";
|
|
3
3
|
export interface TitleProps extends TitleParams {
|
|
4
4
|
colSizes?: GridColumnSizesType;
|
|
5
|
+
colJustifyContent?: GridJustifyContent;
|
|
5
6
|
id?: string;
|
|
6
7
|
}
|
|
7
|
-
declare const Title: ({ title, subtitle, className, colSizes, id, }: TitleProps & ClassNameProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
|
+
declare const Title: ({ title, subtitle, className, colSizes, colJustifyContent, id, }: TitleProps & ClassNameProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
9
|
export default Title;
|
|
@@ -7,12 +7,12 @@ const utils_1 = require("../../utils/index.js");
|
|
|
7
7
|
const YFMWrapper_1 = tslib_1.__importDefault(require("../YFMWrapper/YFMWrapper.js"));
|
|
8
8
|
const TitleItem_1 = tslib_1.__importDefault(require("./TitleItem.js"));
|
|
9
9
|
const b = (0, utils_1.block)('title');
|
|
10
|
-
const Title = ({ title, subtitle, className, colSizes = { all: 12, sm: 8 }, id, }) => {
|
|
10
|
+
const Title = ({ title, subtitle, className, colSizes = { all: 12, sm: 8 }, colJustifyContent, id, }) => {
|
|
11
11
|
if (!title && !subtitle) {
|
|
12
12
|
return null;
|
|
13
13
|
}
|
|
14
14
|
const { text, ...titleProps } = !title || typeof title === 'string' ? { text: title } : title;
|
|
15
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: b(null, className), id: id, children: [text && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)(TitleItem_1.default, { text: text, ...titleProps }) })), subtitle && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)("div", { className: b('description', { titleSize: titleProps?.textSize }), children: (0, jsx_runtime_1.jsx)(YFMWrapper_1.default, { content: subtitle, modifiers: { constructor: true } }) }) }))] }));
|
|
15
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: b(null, className), id: id, children: [text && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, ...(colJustifyContent && { justifyContent: colJustifyContent }), children: (0, jsx_runtime_1.jsx)(TitleItem_1.default, { text: text, ...titleProps }) })), subtitle && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, ...(colJustifyContent && { justifyContent: colJustifyContent }), children: (0, jsx_runtime_1.jsx)("div", { className: b('description', { titleSize: titleProps?.textSize }), children: (0, jsx_runtime_1.jsx)(YFMWrapper_1.default, { content: subtitle, modifiers: { constructor: true } }) }) }))] }));
|
|
16
16
|
};
|
|
17
17
|
exports.default = Title;
|
|
18
18
|
//# sourceMappingURL=Title.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Title.js","sourceRoot":"../../../../src","sources":["components/Title/Title.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"Title.js","sourceRoot":"../../../../src","sources":["components/Title/Title.tsx"],"names":[],"mappings":";;;;AAAA,8CAAwE;AAExE,gDAAkC;AAClC,qFAAkD;AAElD,uEAAoC;AAIpC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAQzB,MAAM,KAAK,GAAG,CAAC,EACX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAC,EAC3B,iBAAiB,EACjB,EAAE,GACwB,EAAE,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,EAAC,IAAI,EAAE,GAAG,UAAU,EAAC,GACvB,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,EAAC,IAAI,EAAE,KAAK,EAAoB,CAAC,CAAC,CAAC,KAAK,CAAC;IAEpF,OAAO,CACH,iCAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,aACrC,IAAI,IAAI,CACL,uBAAC,UAAG,IACA,KAAK,QACL,KAAK,EAAE,QAAQ,KACX,CAAC,iBAAiB,IAAI,EAAC,cAAc,EAAE,iBAAiB,EAAC,CAAC,YAE9D,uBAAC,mBAAS,IAAC,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,GACvC,CACT,EACA,QAAQ,IAAI,CACT,uBAAC,UAAG,IACA,KAAK,QACL,KAAK,EAAE,QAAQ,KACX,CAAC,iBAAiB,IAAI,EAAC,cAAc,EAAE,iBAAiB,EAAC,CAAC,YAE9D,gCAAK,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,EAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,YAC/D,uBAAC,oBAAU,IAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,GAAI,GAC/D,GACJ,CACT,IACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,KAAK,CAAC","sourcesContent":["import {Col, GridColumnSizesType, GridJustifyContent} from '../../grid';\nimport {ClassNameProps, TitleItemProps, TitleProps as TitleParams} from '../../models';\nimport {block} from '../../utils';\nimport YFMWrapper from '../YFMWrapper/YFMWrapper';\n\nimport TitleItem from './TitleItem';\n\nimport './Title.scss';\n\nconst b = block('title');\n\nexport interface TitleProps extends TitleParams {\n colSizes?: GridColumnSizesType;\n colJustifyContent?: GridJustifyContent;\n id?: string;\n}\n\nconst Title = ({\n title,\n subtitle,\n className,\n colSizes = {all: 12, sm: 8},\n colJustifyContent,\n id,\n}: TitleProps & ClassNameProps) => {\n if (!title && !subtitle) {\n return null;\n }\n\n const {text, ...titleProps} =\n !title || typeof title === 'string' ? ({text: title} as TitleItemProps) : title;\n\n return (\n <div className={b(null, className)} id={id}>\n {text && (\n <Col\n reset\n sizes={colSizes}\n {...(colJustifyContent && {justifyContent: colJustifyContent})}\n >\n <TitleItem text={text} {...titleProps} />\n </Col>\n )}\n {subtitle && (\n <Col\n reset\n sizes={colSizes}\n {...(colJustifyContent && {justifyContent: colJustifyContent})}\n >\n <div className={b('description', {titleSize: titleProps?.textSize})}>\n <YFMWrapper content={subtitle} modifiers={{constructor: true}} />\n </div>\n </Col>\n )}\n </div>\n );\n};\n\nexport default Title;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UnpublishedLabel.js","sourceRoot":"../../../../src","sources":["components/UnpublishedLabel/UnpublishedLabel.tsx"],"names":[],"mappings":";;;AAEA,gDAAkC;AAElC,0CAA4B;
|
|
1
|
+
{"version":3,"file":"UnpublishedLabel.js","sourceRoot":"../../../../src","sources":["components/UnpublishedLabel/UnpublishedLabel.tsx"],"names":[],"mappings":";;;AAEA,gDAAkC;AAElC,0CAA4B;AAI5B,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,mBAAmB,CAAC,CAAC;AASrC,MAAM,gBAAgB,GAAG,CAAC,EACtB,SAAS,EACT,QAAQ,EACR,IAAI,GAAG,MAAM,GACgC,EAAE,EAAE,CAAC,CAClD,gCAAK,SAAS,EAAE,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,SAAS,CAAC,YAAG,QAAQ,IAAI,IAAA,WAAI,EAAC,qBAAqB,CAAC,GAAO,CACxF,CAAC;AAEF,kBAAe,gBAAgB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {block} from '../../utils';\n\nimport {i18n} from './i18n';\n\nimport './UnpublishedLabel.scss';\n\nconst b = block('unpublished-label');\n\nexport type LabeLType = 'label' | 'line';\n\nexport interface UnpublishedLabelProps {\n type?: LabeLType;\n className?: string;\n}\n\nconst UnpublishedLabel = ({\n className,\n children,\n type = 'line',\n}: React.PropsWithChildren<UnpublishedLabelProps>) => (\n <div className={b({type}, className)}>{children || i18n('label_non_published')}</div>\n);\n\nexport default UnpublishedLabel;\n"]}
|
|
@@ -6,11 +6,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
6
6
|
const React = tslib_1.__importStar(require("react"));
|
|
7
7
|
const localeContext_1 = require("../../context/localeContext/index.js");
|
|
8
8
|
const mobileContext_1 = require("../../context/mobileContext/index.js");
|
|
9
|
+
const projectSettingsContext_1 = require("../../context/projectSettingsContext/index.js");
|
|
9
10
|
const hooks_1 = require("../../hooks/index.js");
|
|
10
11
|
const common_1 = require("../../models/common.js");
|
|
11
12
|
const utils_1 = require("../../utils/index.js");
|
|
12
13
|
const constants_1 = require("../constants.js");
|
|
13
|
-
const projectSettingsContext_1 = require("../../context/projectSettingsContext/index.js");
|
|
14
14
|
exports.YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';
|
|
15
15
|
exports.YANDEX_FORM_SECTION = 'surveys';
|
|
16
16
|
const CONTAINER_ID = 'pc-yandex-form-container';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YandexForm.js","sourceRoot":"../../../../src","sources":["components/YandexForm/YandexForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {LocaleContext} from '../../context/localeContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {useAnalytics} from '../../hooks';\nimport {YandexFormProps} from '../../models';\nimport {DefaultEventNames} from '../../models/common';\nimport {block} from '../../utils';\nimport {HEADER_HEIGHT} from '../constants';\nimport {ProjectSettingsContext} from '../../context/projectSettingsContext';\n\nexport const YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';\nexport const YANDEX_FORM_SECTION = 'surveys';\nconst CONTAINER_ID = 'pc-yandex-form-container';\n\nconst b = block('yandex-form');\n\nconst YandexForm = (props: YandexFormProps) => {\n const {\n onLoad,\n id,\n params,\n className,\n theme,\n containerId = CONTAINER_ID,\n headerHeight = HEADER_HEIGHT,\n onSubmit,\n analyticsEvents,\n customFormOrigin,\n customFormSection,\n } = props;\n const formContainerRef = React.useRef<HTMLDivElement>(null);\n const iframeRef = React.useRef<HTMLIFrameElement>();\n const yaFormOrigin = customFormOrigin || YANDEX_FORM_ORIGIN;\n const yaFormSection = customFormSection || YANDEX_FORM_SECTION;\n\n const handleAnalytics = useAnalytics(DefaultEventNames.YandexFormSubmit);\n const isMobile = React.useContext(MobileContext);\n const locale = React.useContext(LocaleContext);\n const {defaultYandexFormTheme} = React.useContext(ProjectSettingsContext);\n\n const updateFormIframe = React.useCallback(\n (container: HTMLDivElement) => {\n const queryParams = new URLSearchParams(location.search);\n const url = location.origin + location.pathname;\n const formTheme = theme || defaultYandexFormTheme;\n\n queryParams.set('url', url);\n queryParams.set('iframe', '1');\n\n if (locale?.lang) {\n queryParams.set('lang', locale.lang);\n }\n\n if (formTheme) {\n queryParams.set('theme', formTheme);\n }\n\n if (isMobile) {\n queryParams.set('media-type', 'mobile');\n }\n\n if (params) {\n Object.keys(params).forEach((param) => {\n queryParams.set(param, params[param]);\n });\n }\n\n const src = `${yaFormOrigin}/${yaFormSection}/${id}/?${queryParams}`;\n\n if (iframeRef.current) {\n iframeRef.current.src = src;\n } else {\n iframeRef.current = document.createElement('iframe');\n iframeRef.current.src = src;\n iframeRef.current.id = containerId;\n iframeRef.current.name = `form${id}`;\n iframeRef.current.setAttribute('loading', 'lazy');\n iframeRef.current.frameBorder = '0';\n iframeRef.current.scrolling = 'no';\n iframeRef.current.width = '100%';\n container.appendChild(iframeRef.current);\n }\n },\n [\n theme,\n defaultYandexFormTheme,\n locale.lang,\n isMobile,\n params,\n yaFormOrigin,\n yaFormSection,\n id,\n containerId,\n ],\n );\n\n const handleSubmit = React.useCallback(() => {\n if (formContainerRef && formContainerRef.current) {\n const {top} = formContainerRef.current.getBoundingClientRect();\n window.scrollBy(0, top - headerHeight);\n }\n\n handleAnalytics(analyticsEvents);\n\n if (onSubmit) {\n onSubmit();\n }\n }, [handleAnalytics, analyticsEvents, onSubmit, headerHeight]);\n\n const handleMessage = React.useCallback(\n ({origin, data}: MessageEvent) => {\n if (origin !== yaFormOrigin) {\n return;\n }\n\n try {\n const parsed = JSON.parse(data);\n const height = parsed['iframe-height'];\n const {message, name, redirectUrl} = parsed;\n if (name !== `form${id}`) {\n return;\n }\n\n if (iframeRef.current && height && !message) {\n iframeRef.current.height = `${height}px`;\n onLoad?.();\n }\n\n if (message === 'sent' || redirectUrl) {\n // event with redirectUrl is comming when form with redirect is used\n // otherwise, message: 'sent' is not comming on such sort of forms\n // to catch this event and handle analytics redirectUrl is added to condition\n handleSubmit();\n }\n } catch {\n return;\n }\n },\n [yaFormOrigin, id, onLoad, handleSubmit],\n );\n\n const addIframe = React.useCallback(() => {\n const container = formContainerRef.current;\n\n if (container) {\n updateFormIframe(container);\n window.addEventListener('message', handleMessage, {passive: true});\n }\n }, [updateFormIframe, handleMessage]);\n\n React.useEffect(() => {\n addIframe();\n // Crunch for mobile chrome in lite mode\n // https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1\n setTimeout(() => onLoad?.(), 1000);\n\n return () => window.removeEventListener('message', handleMessage);\n }, [id, addIframe, handleMessage, onLoad]);\n\n return <div ref={formContainerRef} className={b(null, className)} />;\n};\n\nexport default YandexForm;\n"]}
|
|
1
|
+
{"version":3,"file":"YandexForm.js","sourceRoot":"../../../../src","sources":["components/YandexForm/YandexForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {LocaleContext} from '../../context/localeContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {ProjectSettingsContext} from '../../context/projectSettingsContext';\nimport {useAnalytics} from '../../hooks';\nimport {YandexFormProps} from '../../models';\nimport {DefaultEventNames} from '../../models/common';\nimport {block} from '../../utils';\nimport {HEADER_HEIGHT} from '../constants';\n\nexport const YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';\nexport const YANDEX_FORM_SECTION = 'surveys';\nconst CONTAINER_ID = 'pc-yandex-form-container';\n\nconst b = block('yandex-form');\n\nconst YandexForm = (props: YandexFormProps) => {\n const {\n onLoad,\n id,\n params,\n className,\n theme,\n containerId = CONTAINER_ID,\n headerHeight = HEADER_HEIGHT,\n onSubmit,\n analyticsEvents,\n customFormOrigin,\n customFormSection,\n } = props;\n const formContainerRef = React.useRef<HTMLDivElement>(null);\n const iframeRef = React.useRef<HTMLIFrameElement>();\n const yaFormOrigin = customFormOrigin || YANDEX_FORM_ORIGIN;\n const yaFormSection = customFormSection || YANDEX_FORM_SECTION;\n\n const handleAnalytics = useAnalytics(DefaultEventNames.YandexFormSubmit);\n const isMobile = React.useContext(MobileContext);\n const locale = React.useContext(LocaleContext);\n const {defaultYandexFormTheme} = React.useContext(ProjectSettingsContext);\n\n const updateFormIframe = React.useCallback(\n (container: HTMLDivElement) => {\n const queryParams = new URLSearchParams(location.search);\n const url = location.origin + location.pathname;\n const formTheme = theme || defaultYandexFormTheme;\n\n queryParams.set('url', url);\n queryParams.set('iframe', '1');\n\n if (locale?.lang) {\n queryParams.set('lang', locale.lang);\n }\n\n if (formTheme) {\n queryParams.set('theme', formTheme);\n }\n\n if (isMobile) {\n queryParams.set('media-type', 'mobile');\n }\n\n if (params) {\n Object.keys(params).forEach((param) => {\n queryParams.set(param, params[param]);\n });\n }\n\n const src = `${yaFormOrigin}/${yaFormSection}/${id}/?${queryParams}`;\n\n if (iframeRef.current) {\n iframeRef.current.src = src;\n } else {\n iframeRef.current = document.createElement('iframe');\n iframeRef.current.src = src;\n iframeRef.current.id = containerId;\n iframeRef.current.name = `form${id}`;\n iframeRef.current.setAttribute('loading', 'lazy');\n iframeRef.current.frameBorder = '0';\n iframeRef.current.scrolling = 'no';\n iframeRef.current.width = '100%';\n container.appendChild(iframeRef.current);\n }\n },\n [\n theme,\n defaultYandexFormTheme,\n locale.lang,\n isMobile,\n params,\n yaFormOrigin,\n yaFormSection,\n id,\n containerId,\n ],\n );\n\n const handleSubmit = React.useCallback(() => {\n if (formContainerRef && formContainerRef.current) {\n const {top} = formContainerRef.current.getBoundingClientRect();\n window.scrollBy(0, top - headerHeight);\n }\n\n handleAnalytics(analyticsEvents);\n\n if (onSubmit) {\n onSubmit();\n }\n }, [handleAnalytics, analyticsEvents, onSubmit, headerHeight]);\n\n const handleMessage = React.useCallback(\n ({origin, data}: MessageEvent) => {\n if (origin !== yaFormOrigin) {\n return;\n }\n\n try {\n const parsed = JSON.parse(data);\n const height = parsed['iframe-height'];\n const {message, name, redirectUrl} = parsed;\n if (name !== `form${id}`) {\n return;\n }\n\n if (iframeRef.current && height && !message) {\n iframeRef.current.height = `${height}px`;\n onLoad?.();\n }\n\n if (message === 'sent' || redirectUrl) {\n // event with redirectUrl is comming when form with redirect is used\n // otherwise, message: 'sent' is not comming on such sort of forms\n // to catch this event and handle analytics redirectUrl is added to condition\n handleSubmit();\n }\n } catch {\n return;\n }\n },\n [yaFormOrigin, id, onLoad, handleSubmit],\n );\n\n const addIframe = React.useCallback(() => {\n const container = formContainerRef.current;\n\n if (container) {\n updateFormIframe(container);\n window.addEventListener('message', handleMessage, {passive: true});\n }\n }, [updateFormIframe, handleMessage]);\n\n React.useEffect(() => {\n addIframe();\n // Crunch for mobile chrome in lite mode\n // https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1\n setTimeout(() => onLoad?.(), 1000);\n\n return () => window.removeEventListener('message', handleMessage);\n }, [id, addIframe, handleMessage, onLoad]);\n\n return <div ref={formContainerRef} className={b(null, className)} />;\n};\n\nexport default YandexForm;\n"]}
|
|
@@ -26,6 +26,7 @@ export { default as ImageBase } from "./ImageBase/ImageBase.js";
|
|
|
26
26
|
export { default as InnerForm } from "./InnerForm/InnerForm.js";
|
|
27
27
|
export { default as Link } from "./Link/Link.js";
|
|
28
28
|
export { default as Links } from "./Links/Links.js";
|
|
29
|
+
export { default as Map } from "./Map/Map.js";
|
|
29
30
|
export { default as Media } from "./Media/Media.js";
|
|
30
31
|
export { default as MetaInfo } from "./MetaInfo/MetaInfo.js";
|
|
31
32
|
export { default as OutsideClick } from "./OutsideClick/OutsideClick.js";
|
|
@@ -33,6 +34,7 @@ export { default as OverflowScroller } from "./OverflowScroller/OverflowScroller
|
|
|
33
34
|
export { default as ReactPlayer } from "./ReactPlayer/ReactPlayer.js";
|
|
34
35
|
export { default as RouterLink } from "./RouterLink/RouterLink.js";
|
|
35
36
|
export { default as Table } from "./Table/Table.js";
|
|
37
|
+
export { default as ButtonTabs } from "./ButtonTabs/ButtonTabs.js";
|
|
36
38
|
export { default as Title } from "./Title/Title.js";
|
|
37
39
|
export { default as ToggleArrow } from "./ToggleArrow/ToggleArrow.js";
|
|
38
40
|
export { default as UnpublishedLabel } from "./UnpublishedLabel/UnpublishedLabel.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.YandexForm = exports.YFMWrapper = exports.VideoBlock = exports.UnpublishedLabel = exports.ToggleArrow = exports.Title = exports.Table = exports.RouterLink = exports.ReactPlayer = exports.OverflowScroller = exports.OutsideClick = exports.MetaInfo = exports.Media = exports.Links = exports.Link = exports.InnerForm = exports.ImageBase = exports.Image = exports.IconWrapper = exports.HTML = exports.HeaderBreadcrumbs = exports.FullWidthBackground = exports.FullscreenMedia = exports.FullscreenImage = exports.Foldable = exports.FileLink = exports.ErrorWrapper = exports.Control = exports.ContentList = exports.CardBase = exports.BrandFooter = exports.Buttons = exports.Button = exports.BlockBase = exports.BalancedMasonry = exports.BackLink = exports.BackgroundMedia = exports.BackgroundImage = exports.Author = exports.AnimateBlock = exports.Anchor = void 0;
|
|
3
|
+
exports.YandexForm = exports.YFMWrapper = exports.VideoBlock = exports.UnpublishedLabel = exports.ToggleArrow = exports.Title = exports.ButtonTabs = exports.Table = exports.RouterLink = exports.ReactPlayer = exports.OverflowScroller = exports.OutsideClick = exports.MetaInfo = exports.Media = exports.Map = exports.Links = exports.Link = exports.InnerForm = exports.ImageBase = exports.Image = exports.IconWrapper = exports.HTML = exports.HeaderBreadcrumbs = exports.FullWidthBackground = exports.FullscreenMedia = exports.FullscreenImage = exports.Foldable = exports.FileLink = exports.ErrorWrapper = exports.Control = exports.ContentList = exports.CardBase = exports.BrandFooter = exports.Buttons = exports.Button = exports.BlockBase = exports.BalancedMasonry = exports.BackLink = exports.BackgroundMedia = exports.BackgroundImage = exports.Author = exports.AnimateBlock = exports.Anchor = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
var Anchor_1 = require("./Anchor/Anchor.js");
|
|
6
6
|
Object.defineProperty(exports, "Anchor", { enumerable: true, get: function () { return tslib_1.__importDefault(Anchor_1).default; } });
|
|
@@ -58,6 +58,8 @@ var Link_1 = require("./Link/Link.js");
|
|
|
58
58
|
Object.defineProperty(exports, "Link", { enumerable: true, get: function () { return tslib_1.__importDefault(Link_1).default; } });
|
|
59
59
|
var Links_1 = require("./Links/Links.js");
|
|
60
60
|
Object.defineProperty(exports, "Links", { enumerable: true, get: function () { return tslib_1.__importDefault(Links_1).default; } });
|
|
61
|
+
var Map_1 = require("./Map/Map.js");
|
|
62
|
+
Object.defineProperty(exports, "Map", { enumerable: true, get: function () { return tslib_1.__importDefault(Map_1).default; } });
|
|
61
63
|
var Media_1 = require("./Media/Media.js");
|
|
62
64
|
Object.defineProperty(exports, "Media", { enumerable: true, get: function () { return tslib_1.__importDefault(Media_1).default; } });
|
|
63
65
|
var MetaInfo_1 = require("./MetaInfo/MetaInfo.js");
|
|
@@ -72,6 +74,8 @@ var RouterLink_1 = require("./RouterLink/RouterLink.js");
|
|
|
72
74
|
Object.defineProperty(exports, "RouterLink", { enumerable: true, get: function () { return tslib_1.__importDefault(RouterLink_1).default; } });
|
|
73
75
|
var Table_1 = require("./Table/Table.js");
|
|
74
76
|
Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return tslib_1.__importDefault(Table_1).default; } });
|
|
77
|
+
var ButtonTabs_1 = require("./ButtonTabs/ButtonTabs.js");
|
|
78
|
+
Object.defineProperty(exports, "ButtonTabs", { enumerable: true, get: function () { return tslib_1.__importDefault(ButtonTabs_1).default; } });
|
|
75
79
|
var Title_1 = require("./Title/Title.js");
|
|
76
80
|
Object.defineProperty(exports, "Title", { enumerable: true, get: function () { return tslib_1.__importDefault(Title_1).default; } });
|
|
77
81
|
var ToggleArrow_1 = require("./ToggleArrow/ToggleArrow.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["components/index.ts"],"names":[],"mappings":";;;;AAAA,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,gDAAqD;AAA7C,2HAAA,OAAO,OAAW;AAC1B,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,gDAAqD;AAA7C,2HAAA,OAAO,OAAW;AAC1B,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,oFAAyF;AAAjF,mJAAA,OAAO,OAAuB;AACtC,8EAAmF;AAA3E,+IAAA,OAAO,OAAqB;AACpC,uCAA4C;AAApC,qHAAA,OAAO,OAAQ;AACvB,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,uCAA4C;AAApC,qHAAA,OAAO,OAAQ;AACvB,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,2EAAgF;AAAxE,6IAAA,OAAO,OAAoB;AACnC,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,2EAAgF;AAAxE,6IAAA,OAAO,OAAoB;AACnC,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc","sourcesContent":["export {default as Anchor} from './Anchor/Anchor';\nexport {default as AnimateBlock} from './AnimateBlock/AnimateBlock';\nexport {default as Author} from './Author/Author';\nexport {default as BackgroundImage} from './BackgroundImage/BackgroundImage';\nexport {default as BackgroundMedia} from './BackgroundMedia/BackgroundMedia';\nexport {default as BackLink} from './BackLink/BackLink';\nexport {default as BalancedMasonry} from './BalancedMasonry/BalancedMasonry';\nexport {default as BlockBase} from './BlockBase/BlockBase';\nexport {default as Button} from './Button/Button';\nexport {default as Buttons} from './Buttons/Buttons';\nexport {default as BrandFooter} from './BrandFooter/BrandFooter';\nexport {default as CardBase} from './CardBase/CardBase';\nexport {default as ContentList} from './ContentList/ContentList';\nexport {default as Control} from './Control/Control';\nexport {default as ErrorWrapper} from './ErrorWrapper/ErrorWrapper';\nexport {default as FileLink} from './FileLink/FileLink';\nexport {default as Foldable} from './Foldable/Foldable';\nexport {default as FullscreenImage} from './FullscreenImage/FullscreenImage';\nexport {default as FullscreenMedia} from './FullscreenMedia/FullscreenMedia';\nexport {default as FullWidthBackground} from './FullWidthBackground/FullWidthBackground';\nexport {default as HeaderBreadcrumbs} from './HeaderBreadcrumbs/HeaderBreadcrumbs';\nexport {default as HTML} from './HTML/HTML';\nexport {default as IconWrapper} from './IconWrapper/IconWrapper';\nexport {default as Image} from './Image/Image';\nexport {default as ImageBase} from './ImageBase/ImageBase';\nexport {default as InnerForm} from './InnerForm/InnerForm';\nexport {default as Link} from './Link/Link';\nexport {default as Links} from './Links/Links';\nexport {default as Media} from './Media/Media';\nexport {default as MetaInfo} from './MetaInfo/MetaInfo';\nexport {default as OutsideClick} from './OutsideClick/OutsideClick';\nexport {default as OverflowScroller} from './OverflowScroller/OverflowScroller';\nexport {default as ReactPlayer} from './ReactPlayer/ReactPlayer';\nexport {default as RouterLink} from './RouterLink/RouterLink';\nexport {default as Table} from './Table/Table';\nexport {default as Title} from './Title/Title';\nexport {default as ToggleArrow} from './ToggleArrow/ToggleArrow';\nexport {default as UnpublishedLabel} from './UnpublishedLabel/UnpublishedLabel';\nexport {default as VideoBlock} from './VideoBlock/VideoBlock';\nexport {default as YFMWrapper} from './YFMWrapper/YFMWrapper';\nexport {default as YandexForm} from './YandexForm/YandexForm';\n\nexport type {RouterLinkProps} from './RouterLink/RouterLink';\nexport type {ImageBaseProps} from './ImageBase/ImageBase';\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["components/index.ts"],"names":[],"mappings":";;;;AAAA,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,gDAAqD;AAA7C,2HAAA,OAAO,OAAW;AAC1B,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,gDAAqD;AAA7C,2HAAA,OAAO,OAAW;AAC1B,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,oFAAyF;AAAjF,mJAAA,OAAO,OAAuB;AACtC,8EAAmF;AAA3E,+IAAA,OAAO,OAAqB;AACpC,uCAA4C;AAApC,qHAAA,OAAO,OAAQ;AACvB,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,sDAA2D;AAAnD,+HAAA,OAAO,OAAa;AAC5B,uCAA4C;AAApC,qHAAA,OAAO,OAAQ;AACvB,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,oCAAyC;AAAjC,mHAAA,OAAO,OAAO;AACtB,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,mDAAwD;AAAhD,6HAAA,OAAO,OAAY;AAC3B,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB;AAC/B,2EAAgF;AAAxE,6IAAA,OAAO,OAAoB;AACnC,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,0CAA+C;AAAvC,uHAAA,OAAO,OAAS;AACxB,4DAAiE;AAAzD,mIAAA,OAAO,OAAe;AAC9B,2EAAgF;AAAxE,6IAAA,OAAO,OAAoB;AACnC,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,yDAA8D;AAAtD,iIAAA,OAAO,OAAc","sourcesContent":["export {default as Anchor} from './Anchor/Anchor';\nexport {default as AnimateBlock} from './AnimateBlock/AnimateBlock';\nexport {default as Author} from './Author/Author';\nexport {default as BackgroundImage} from './BackgroundImage/BackgroundImage';\nexport {default as BackgroundMedia} from './BackgroundMedia/BackgroundMedia';\nexport {default as BackLink} from './BackLink/BackLink';\nexport {default as BalancedMasonry} from './BalancedMasonry/BalancedMasonry';\nexport {default as BlockBase} from './BlockBase/BlockBase';\nexport {default as Button} from './Button/Button';\nexport {default as Buttons} from './Buttons/Buttons';\nexport {default as BrandFooter} from './BrandFooter/BrandFooter';\nexport {default as CardBase} from './CardBase/CardBase';\nexport {default as ContentList} from './ContentList/ContentList';\nexport {default as Control} from './Control/Control';\nexport {default as ErrorWrapper} from './ErrorWrapper/ErrorWrapper';\nexport {default as FileLink} from './FileLink/FileLink';\nexport {default as Foldable} from './Foldable/Foldable';\nexport {default as FullscreenImage} from './FullscreenImage/FullscreenImage';\nexport {default as FullscreenMedia} from './FullscreenMedia/FullscreenMedia';\nexport {default as FullWidthBackground} from './FullWidthBackground/FullWidthBackground';\nexport {default as HeaderBreadcrumbs} from './HeaderBreadcrumbs/HeaderBreadcrumbs';\nexport {default as HTML} from './HTML/HTML';\nexport {default as IconWrapper} from './IconWrapper/IconWrapper';\nexport {default as Image} from './Image/Image';\nexport {default as ImageBase} from './ImageBase/ImageBase';\nexport {default as InnerForm} from './InnerForm/InnerForm';\nexport {default as Link} from './Link/Link';\nexport {default as Links} from './Links/Links';\nexport {default as Map} from './Map/Map';\nexport {default as Media} from './Media/Media';\nexport {default as MetaInfo} from './MetaInfo/MetaInfo';\nexport {default as OutsideClick} from './OutsideClick/OutsideClick';\nexport {default as OverflowScroller} from './OverflowScroller/OverflowScroller';\nexport {default as ReactPlayer} from './ReactPlayer/ReactPlayer';\nexport {default as RouterLink} from './RouterLink/RouterLink';\nexport {default as Table} from './Table/Table';\nexport {default as ButtonTabs} from './ButtonTabs/ButtonTabs';\nexport {default as Title} from './Title/Title';\nexport {default as ToggleArrow} from './ToggleArrow/ToggleArrow';\nexport {default as UnpublishedLabel} from './UnpublishedLabel/UnpublishedLabel';\nexport {default as VideoBlock} from './VideoBlock/VideoBlock';\nexport {default as YFMWrapper} from './YFMWrapper/YFMWrapper';\nexport {default as YandexForm} from './YandexForm/YandexForm';\n\nexport type {RouterLinkProps} from './RouterLink/RouterLink';\nexport type {ImageBaseProps} from './ImageBase/ImageBase';\n"]}
|
|
@@ -10,15 +10,15 @@ export declare const blockMap: {
|
|
|
10
10
|
"info-block": (props: import("./models/index.js").InfoBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
11
|
"table-block": (props: import("./models/index.js").TableBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
"tabs-block": ({ items, title, description, animated, tabsColSizes, centered, direction, contentSize, }: import("./models/index.js").TabsBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
-
"header-block": (props: React.PropsWithChildren<import("./
|
|
13
|
+
"header-block": (props: React.PropsWithChildren<import("./blocks/Header/Header.js").HeaderBlockFullProps>) => import("react/jsx-runtime").JSX.Element;
|
|
14
14
|
"icons-block": ({ title, description, size, colSizes, items }: import("./models/index.js").IconsBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
15
|
"header-slider-block": ({ items, arrows, ...props }: import("./models/index.js").HeaderSliderBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
16
|
-
"card-layout-block":
|
|
16
|
+
"card-layout-block": ({ title, description, animated, colSizes, children, className, titleClassName, background, centered, }: import("./blocks/CardLayout/CardLayout.js").CardLayoutBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
17
|
"content-layout-block": (props: import("./models/index.js").ContentLayoutBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
"share-block": ({ items, title }: import("./models/index.js").ShareBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
"map-block": ({ map, border, disableShadow, ...props }: import("./models/index.js").MapBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
-
"filter-block": import("
|
|
21
|
-
"form-block": import("
|
|
20
|
+
"filter-block": ({ title, description, tags, tagButtonSize, allTag, items, colSizes, centered, animated, }: import("./models/index.js").FilterBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
"form-block": (props: import("./models/index.js").FormBlockProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
22
22
|
"slider-block": ({ animated, title, description, type, anchorId, arrows, adaptive, autoplay: autoplayMs, dots, initialSlide, className, dotsClassName, disclaimer, children, blockClassName, arrowSize, slidesToShow, onSlideChange, onSlideChangeTransitionStart, onSlideChangeTransitionEnd, onActiveIndexChange, onBreakpoint, }: React.PropsWithChildren<import("./blocks/Slider/Slider.js").SliderProps>) => import("react/jsx-runtime").JSX.Element;
|
|
23
23
|
};
|
|
24
24
|
export declare const subBlockMap: {
|
|
@@ -35,9 +35,9 @@ export declare const subBlockMap: {
|
|
|
35
35
|
"image-card": (props: import("./models/index.js").ImageCardProps) => import("react/jsx-runtime").JSX.Element;
|
|
36
36
|
};
|
|
37
37
|
export declare const navItemMap: {
|
|
38
|
-
button:
|
|
39
|
-
social:
|
|
38
|
+
button: (props: Pick<import("./navigation/index.js").NavigationItemProps, "className"> & import("./models/index.js").ButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
39
|
+
social: ({ icon, url, className, urlTitle }: import("./navigation/components/SocialIcon/SocialIcon.js").NavigationSocialItemOwnProps) => import("react/jsx-runtime").JSX.Element;
|
|
40
40
|
dropdown: ({ text, icon, className, iconSize, hidePopup, items, isActive, ...props }: import("./navigation/index.js").NavigationItemProps & import("./models/index.js").NavigationDropdownItem) => import("react/jsx-runtime").JSX.Element;
|
|
41
|
-
link:
|
|
41
|
+
link: (props: import("./navigation/index.js").NavigationItemProps & import("./models/index.js").NavigationLinkItem) => import("react/jsx-runtime").JSX.Element;
|
|
42
42
|
"github-button": ({ text, url, className, label, size, icon, urlTitle, }: import("./navigation/index.js").NavigationItemProps & import("./models/index.js").NavigationGithubButton) => import("react/jsx-runtime").JSX.Element;
|
|
43
43
|
};
|
|
@@ -15,6 +15,7 @@ const mobileContext_1 = require("../../context/mobileContext/index.js");
|
|
|
15
15
|
const projectSettingsContext_1 = require("../../context/projectSettingsContext/index.js");
|
|
16
16
|
const ssrContext_1 = require("../../context/ssrContext/index.js");
|
|
17
17
|
const theme_1 = require("../../context/theme/index.js");
|
|
18
|
+
const windowWidthContext_1 = require("../../context/windowWidthContext/index.js");
|
|
18
19
|
const PageConstructorProvider = (props) => {
|
|
19
20
|
const { isMobile, mapsContext = mapsContext_1.initialMapValue, locale = {}, location = {}, analytics = {}, ssrConfig = {}, projectSettings = {}, theme = constants_1.DEFAULT_THEME, children, image = {}, forms = FormsContext_1.DEFAULT_FORMS_CONTEXT_VALUE, } = props;
|
|
20
21
|
/* eslint-disable react/jsx-key */
|
|
@@ -29,6 +30,7 @@ const PageConstructorProvider = (props) => {
|
|
|
29
30
|
(0, jsx_runtime_1.jsx)(analyticsContext_1.AnalyticsContext.Provider, { value: analytics }),
|
|
30
31
|
(0, jsx_runtime_1.jsx)(FormsContext_1.FormsContext.Provider, { value: forms }),
|
|
31
32
|
(0, jsx_runtime_1.jsx)(ssrContext_1.SSRContext.Provider, { value: { isServer: ssrConfig?.isServer } }),
|
|
33
|
+
(0, jsx_runtime_1.jsx)(windowWidthContext_1.WindowWidthProvider, {}),
|
|
32
34
|
].reduceRight((prev, provider) => React.cloneElement(provider, {}, prev), children);
|
|
33
35
|
/* eslint-enable react/jsx-key */
|
|
34
36
|
return (0, jsx_runtime_1.jsx)(React.Fragment, { children: context });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Provider.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/Provider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,6DAAyD;AACzD,8EAAuF;AACvF,6EAIiD;AACjD,sEAA2E;AAC3E,wEAA8E;AAC9E,4EAAoF;AACpF,0EAAoG;AACpG,wEAA0D;AAC1D,0FAG8C;AAC9C,kEAAqE;AACrE,wDAAiD;
|
|
1
|
+
{"version":3,"file":"Provider.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/Provider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,6DAAyD;AACzD,8EAAuF;AACvF,6EAIiD;AACjD,sEAA2E;AAC3E,wEAA8E;AAC9E,4EAAoF;AACpF,0EAAoG;AACpG,wEAA0D;AAC1D,0FAG8C;AAC9C,kEAAqE;AACrE,wDAAiD;AACjD,kFAAqE;AAgB9D,MAAM,uBAAuB,GAAG,CACnC,KAA4D,EAC9D,EAAE;IACA,MAAM,EACF,QAAQ,EACR,WAAW,GAAG,6BAAe,EAC7B,MAAM,GAAG,EAAE,EACX,QAAQ,GAAG,EAAE,EACb,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,EAAE,EACd,eAAe,GAAG,EAAE,EACpB,KAAK,GAAG,yBAAa,EACrB,QAAQ,EACR,KAAK,GAAG,EAAE,EACV,KAAK,GAAG,0CAA2B,GACtC,GAAG,KAAK,CAAC;IAEV,kCAAkC;IAClC,MAAM,OAAO,GAAG;QACZ,uBAAC,oBAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAC,KAAK,EAAC,GAAI;QACzC,uBAAC,+CAAsB,CAAC,QAAQ,IAAC,KAAK,EAAE,eAAe,GAAI;QAC3D,uBAAC,6BAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,GAAI;QACzC,uBAAC,2BAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI;QACvC,uBAAC,iCAAe,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ,GAAI;QAC7C,uBAAC,6BAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAI;QACpD,uBAAC,yBAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,WAAW,GAAI;QAC5C,uBAAC,mCAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS,GAAI;QAC/C,uBAAC,2BAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI;QACvC,uBAAC,uBAAU,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAC,GAAI;QAC/D,uBAAC,wCAAmB,KAAG;KAC1B,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;IACpF,iCAAiC;IAEjC,OAAO,uBAAC,KAAK,CAAC,QAAQ,cAAE,OAAO,GAAkB,CAAC;AACtD,CAAC,CAAC;AAlCW,QAAA,uBAAuB,2BAkClC","sourcesContent":["import * as React from 'react';\n\nimport {DEFAULT_THEME} from '../../components/constants';\nimport {AnalyticsContext, AnalyticsContextProps} from '../../context/analyticsContext';\nimport {\n DEFAULT_FORMS_CONTEXT_VALUE,\n FormsContext,\n FormsContextProps,\n} from '../../context/formsContext/FormsContext';\nimport {ImageContext, ImageContextProps} from '../../context/imageContext';\nimport {LocaleContext, LocaleContextProps} from '../../context/localeContext';\nimport {LocationContext, LocationContextProps} from '../../context/locationContext';\nimport {MapsContext, MapsContextType, initialMapValue} from '../../context/mapsContext/mapsContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {\n ProjectSettingsContext,\n ProjectSettingsContextProps,\n} from '../../context/projectSettingsContext';\nimport {SSRContext, SSRContextProps} from '../../context/ssrContext';\nimport {ThemeContext} from '../../context/theme';\nimport {WindowWidthProvider} from '../../context/windowWidthContext';\nimport {Theme} from '../../models';\n\nexport interface PageConstructorProviderProps {\n isMobile?: boolean;\n locale?: LocaleContextProps;\n location?: LocationContextProps;\n ssrConfig?: SSRContextProps;\n theme?: Theme;\n mapsContext?: MapsContextType;\n projectSettings?: ProjectSettingsContextProps;\n analytics?: AnalyticsContextProps;\n forms?: FormsContextProps;\n image?: ImageContextProps;\n}\n\nexport const PageConstructorProvider = (\n props: React.PropsWithChildren<PageConstructorProviderProps>,\n) => {\n const {\n isMobile,\n mapsContext = initialMapValue,\n locale = {},\n location = {},\n analytics = {},\n ssrConfig = {},\n projectSettings = {},\n theme = DEFAULT_THEME,\n children,\n image = {},\n forms = DEFAULT_FORMS_CONTEXT_VALUE,\n } = props;\n\n /* eslint-disable react/jsx-key */\n const context = [\n <ThemeContext.Provider value={{theme}} />,\n <ProjectSettingsContext.Provider value={projectSettings} />,\n <LocaleContext.Provider value={locale} />,\n <ImageContext.Provider value={image} />,\n <LocationContext.Provider value={location} />,\n <MobileContext.Provider value={Boolean(isMobile)} />,\n <MapsContext.Provider value={mapsContext} />,\n <AnalyticsContext.Provider value={analytics} />,\n <FormsContext.Provider value={forms} />,\n <SSRContext.Provider value={{isServer: ssrConfig?.isServer}} />,\n <WindowWidthProvider />,\n ].reduceRight((prev, provider) => React.cloneElement(provider, {}, prev), children);\n /* eslint-enable react/jsx-key */\n\n return <React.Fragment>{context}</React.Fragment>;\n};\n"]}
|
package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import { ConstructorBlock as ConstructorBlockType } from "../../../../models/index.js";
|
|
3
2
|
export interface ConstructorBlocksProps {
|
|
4
3
|
items: ConstructorBlockType[];
|
|
5
4
|
}
|
|
6
|
-
export declare const ConstructorBlocks:
|
|
5
|
+
export declare const ConstructorBlocks: ({ items }: ConstructorBlocksProps) => import("react/jsx-runtime").JSX.Element;
|
package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConstructorBlocks.js","sourceRoot":"../../../../../../src","sources":["containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,gEAA6B;AAE7B,4EAA8D;AAC9D,kFAA0E;AAO1E,sDAA8C;AAC9C,8EAAsE;AACtE,iEAAmD;AACnD,yEAA2D;AAMpD,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ConstructorBlocks.js","sourceRoot":"../../../../../../src","sources":["containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,gEAA6B;AAE7B,4EAA8D;AAC9D,kFAA0E;AAO1E,sDAA8C;AAC9C,8EAAsE;AACtE,iEAAmD;AACnD,yEAA2D;AAMpD,MAAM,iBAAiB,GAAG,CAAC,EAAC,KAAK,EAAyB,EAAE,EAAE;IACjE,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,2BAAY,CAAC,CAAC;IAE3F,MAAM,QAAQ,GAAG,CACb,QAAQ,GAAG,EAAE,EACb,IAA0B,EAC1B,KAAa,EACY,EAAE;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACrB,uBAAC,iCAAe,IAAC,IAAI,EAAE,IAAI,CAAC,IAAiB,EAAE,KAAK,EAAE,KAAK,YACtD,IAAI,GACS,CACrB,CAAC;QACN,CAAC;QAED,IAAI,WAAW,CAAC;QAChB,MAAM,GAAG,GAAG,IAAA,mBAAW,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACtD,IAAI,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,EAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC,QAAyB,CAAC;YACnE,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAEtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,WAAW,GAAG,CACV,uBAAC,yCAAmB,IAChB,KAAK,EAAE,IAAI,EAEX,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,IAJT,OAAO,CAKd,CACL,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,IAAI,QAAQ,CAAC;YACb,IAAI,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtC,QAAQ,GAAI,IAAI,CAAC,QAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/E,CAAC;YAED,WAAW,GAAG,CACV,uBAAC,iCAAe,IAAC,IAAI,EAAE,IAAI,EAAgB,QAAQ,EAAE,OAAO,YACvD,QAAQ,IADqB,OAAO,CAEvB,CACrB,CAAC;QACN,CAAC;QAED,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpC,wEAAwE;QACxE,uGAAuG;QACvG,uBAAC,mCAAgB,IAAC,IAAI,EAAE,IAAI,EAAgB,KAAK,EAAE,KAAK,YACnD,WAAW,IADmB,OAAO,CAEvB,CACtB,CAAC,CAAC,CAAC,CACA,WAAW,CACd,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,uBAAC,KAAK,CAAC,QAAQ,cAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAkB,CAAC;AACjF,CAAC,CAAC;AAlEW,QAAA,iBAAiB,qBAkE5B","sourcesContent":["import * as React from 'react';\n\nimport get from 'lodash/get';\n\nimport {InnerContext} from '../../../../context/innerContext';\nimport {BlockDecoration} from '../../../../customization/BlockDecoration';\nimport {\n BlockType,\n ConstructorBlock as ConstructorBlockType,\n LoadableProps,\n SubBlock,\n} from '../../../../models';\nimport {getBlockKey} from '../../../../utils';\nimport {ConstructorBlock} from '../ConstructorBlock/ConstructorBlock';\nimport {ConstructorItem} from '../ConstructorItem';\nimport {ConstructorLoadable} from '../ConstructorLoadable';\n\nexport interface ConstructorBlocksProps {\n items: ConstructorBlockType[];\n}\n\nexport const ConstructorBlocks = ({items}: ConstructorBlocksProps) => {\n const {blockTypes, loadables, itemMap, shouldRenderBlock} = React.useContext(InnerContext);\n\n const renderer = (\n parentId = '',\n item: ConstructorBlockType,\n index: number,\n ): React.ReactElement | null => {\n if (!itemMap[item.type]) {\n return parentId ? null : (\n <BlockDecoration type={item.type as BlockType} index={index}>\n {null}\n </BlockDecoration>\n );\n }\n\n let itemElement;\n const key = getBlockKey(item, index);\n const blockId = parentId ? `${parentId}_${key}` : key;\n if (shouldRenderBlock && !shouldRenderBlock(item, blockId)) {\n return null;\n }\n\n if ('loadable' in item && item.loadable) {\n const {source, serviceId, params} = item.loadable as LoadableProps;\n const config = get(loadables, source);\n\n if (!config) {\n return null;\n }\n\n itemElement = (\n <ConstructorLoadable\n block={item}\n key={blockId}\n blockKey={blockId}\n config={config}\n serviceId={serviceId}\n params={params}\n />\n );\n } else {\n let children;\n if ('children' in item && item.children) {\n children = (item.children as SubBlock[]).map(renderer.bind(null, blockId));\n }\n\n itemElement = (\n <ConstructorItem data={item} key={blockId} blockKey={blockId}>\n {children}\n </ConstructorItem>\n );\n }\n\n return blockTypes.includes(item.type) ? (\n //TODO: replace ConstructorBlock (and delete it) with BlockBase when all\n // components relying on constructor inner structure like Slider or blog-constructor will be refactored\n <ConstructorBlock data={item} key={blockId} index={index}>\n {itemElement}\n </ConstructorBlock>\n ) : (\n itemElement\n );\n };\n\n return <React.Fragment>{items.map(renderer.bind(null, ''))}</React.Fragment>;\n};\n"]}
|
|
@@ -7,7 +7,7 @@ export interface History {
|
|
|
7
7
|
goBack(): void;
|
|
8
8
|
length: number;
|
|
9
9
|
}
|
|
10
|
-
export type RouterLink = React.ComponentClass<RouterLinkProps> | React.
|
|
10
|
+
export type RouterLink = React.ComponentClass<RouterLinkProps> | ((props: RouterLinkProps) => React.ReactNode);
|
|
11
11
|
export type LocationContextProps = {
|
|
12
12
|
history?: History;
|
|
13
13
|
search?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locationContext.js","sourceRoot":"../../../../src","sources":["context/locationContext/locationContext.ts"],"names":[],"mappings":";;;;AAAA,qDAA+B;AA8BlB,QAAA,eAAe,GAAG,KAAK,CAAC,aAAa,CAAuB,EAAE,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {RouterLinkProps} from '../../components/RouterLink/RouterLink';\n\nexport interface History {\n action: 'PUSH' | 'POP' | 'REPLACE' | '';\n\n replace(location: Partial<Location>): void;\n\n push(location: Partial<Location>): void;\n\n goBack(): void;\n\n length: number;\n}\n\nexport type RouterLink =\n | React.ComponentClass<RouterLinkProps>\n | React.
|
|
1
|
+
{"version":3,"file":"locationContext.js","sourceRoot":"../../../../src","sources":["context/locationContext/locationContext.ts"],"names":[],"mappings":";;;;AAAA,qDAA+B;AA8BlB,QAAA,eAAe,GAAG,KAAK,CAAC,aAAa,CAAuB,EAAE,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {RouterLinkProps} from '../../components/RouterLink/RouterLink';\n\nexport interface History {\n action: 'PUSH' | 'POP' | 'REPLACE' | '';\n\n replace(location: Partial<Location>): void;\n\n push(location: Partial<Location>): void;\n\n goBack(): void;\n\n length: number;\n}\n\nexport type RouterLink =\n | React.ComponentClass<RouterLinkProps>\n | ((props: RouterLinkProps) => React.ReactNode);\n\nexport type LocationContextProps = {\n history?: History;\n search?: string;\n hash?: string;\n pathname?: string;\n hostname?: string;\n Link?: RouterLink;\n asPath?: string;\n};\n\nexport const LocationContext = React.createContext<LocationContextProps>({});\n"]}
|
|
@@ -6,5 +6,5 @@ interface MapProviderProps {
|
|
|
6
6
|
apiKey?: string;
|
|
7
7
|
}
|
|
8
8
|
export declare const gmapApiKeyIdInLS = "gmap-api-key";
|
|
9
|
-
export declare const MapProvider: React.
|
|
9
|
+
export declare const MapProvider: (props: React.PropsWithChildren<MapProviderProps>) => React.ReactNode;
|
|
10
10
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapsProvider.js","sourceRoot":"../../../../src","sources":["context/mapsContext/mapsProvider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,kDAAmD;AAQtC,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAExC,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"mapsProvider.js","sourceRoot":"../../../../src","sources":["context/mapsContext/mapsProvider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,kDAAmD;AAQtC,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAExC,MAAM,WAAW,GAA0E,CAAC,EAC/F,IAAI,GAAG,qBAAO,CAAC,MAAM,EACrB,SAAS,EACT,MAAM,EACN,QAAQ,GACX,EAAE,EAAE;IACD,MAAM,eAAe,GACjB,IAAI,KAAK,qBAAO,CAAC,MAAM;QACnB,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,OAAO,CAAC,wBAAgB,CAAC,IAAI,EAAE;QACxD,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;IACvB,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAEhE,OAAO,CACH,uBAAC,yBAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAC,YACxE,QAAQ,GACU,CAC1B,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,WAAW,eAiBtB","sourcesContent":["import * as React from 'react';\n\nimport {MapType, MapsContext} from './mapsContext';\n\ninterface MapProviderProps {\n type: MapType;\n scriptSrc: string;\n apiKey?: string;\n}\n\nexport const gmapApiKeyIdInLS = 'gmap-api-key';\n\nexport const MapProvider: (props: React.PropsWithChildren<MapProviderProps>) => React.ReactNode = ({\n type = MapType.Yandex,\n scriptSrc,\n apiKey,\n children,\n}) => {\n const initialKeyValue =\n type === MapType.Google\n ? apiKey || localStorage.getItem(gmapApiKeyIdInLS) || ''\n : apiKey || '';\n const [currentApiKey, setKey] = React.useState(initialKeyValue);\n\n return (\n <MapsContext.Provider value={{apiKey: currentApiKey, setKey, scriptSrc, type}}>\n {children}\n </MapsContext.Provider>\n );\n};\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export declare const WindowWidthContext: React.Context<number>;
|
|
3
|
+
export declare const WindowWidthProvider: ({ children }: React.PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
export declare const useWindowWidth: () => number;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useWindowWidth = exports.WindowWidthProvider = exports.WindowWidthContext = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const React = tslib_1.__importStar(require("react"));
|
|
7
|
+
const throttle_1 = tslib_1.__importDefault(require("lodash/throttle.js"));
|
|
8
|
+
const constants_1 = require("../../constants.js");
|
|
9
|
+
const DEFAULT_WIDTH = constants_1.BREAKPOINTS.xl;
|
|
10
|
+
const UPDATE_FREQUENCY_MS = 100;
|
|
11
|
+
exports.WindowWidthContext = React.createContext(DEFAULT_WIDTH);
|
|
12
|
+
const WindowWidthProvider = ({ children }) => {
|
|
13
|
+
const [windowWidth, setWindowWidth] = React.useState(DEFAULT_WIDTH);
|
|
14
|
+
React.useEffect(() => {
|
|
15
|
+
const handleResize = (0, throttle_1.default)(() => {
|
|
16
|
+
setWindowWidth(window.innerWidth);
|
|
17
|
+
}, UPDATE_FREQUENCY_MS, { leading: true });
|
|
18
|
+
handleResize();
|
|
19
|
+
window.addEventListener('resize', handleResize, { passive: true });
|
|
20
|
+
// eslint-disable-next-line consistent-return
|
|
21
|
+
return () => window.removeEventListener('resize', handleResize);
|
|
22
|
+
}, []);
|
|
23
|
+
return ((0, jsx_runtime_1.jsx)(exports.WindowWidthContext.Provider, { value: windowWidth, children: children }));
|
|
24
|
+
};
|
|
25
|
+
exports.WindowWidthProvider = WindowWidthProvider;
|
|
26
|
+
const useWindowWidth = () => React.useContext(exports.WindowWidthContext);
|
|
27
|
+
exports.useWindowWidth = useWindowWidth;
|
|
28
|
+
//# sourceMappingURL=WindowWidthContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WindowWidthContext.js","sourceRoot":"../../../../src","sources":["context/windowWidthContext/WindowWidthContext.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,0EAAuC;AAEvC,kDAA4C;AAE5C,MAAM,aAAa,GAAG,uBAAW,CAAC,EAAE,CAAC;AACrC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEnB,QAAA,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAS,aAAa,CAAC,CAAC;AAEtE,MAAM,mBAAmB,GAAG,CAAC,EAAC,QAAQ,EAA0B,EAAE,EAAE;IACvE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEpE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,YAAY,GAAG,IAAA,kBAAQ,EACzB,GAAG,EAAE;YACD,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC,EACD,mBAAmB,EACnB,EAAC,OAAO,EAAE,IAAI,EAAC,CAClB,CAAC;QAEF,YAAY,EAAE,CAAC;QAEf,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAEjE,6CAA6C;QAC7C,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACpE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,uBAAC,0BAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,WAAW,YAAG,QAAQ,GAA+B,CAC5F,CAAC;AACN,CAAC,CAAC;AAvBW,QAAA,mBAAmB,uBAuB9B;AAEK,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,0BAAkB,CAAC,CAAC;AAA5D,QAAA,cAAc,kBAA8C","sourcesContent":["import * as React from 'react';\n\nimport throttle from 'lodash/throttle';\n\nimport {BREAKPOINTS} from '../../constants';\n\nconst DEFAULT_WIDTH = BREAKPOINTS.xl;\nconst UPDATE_FREQUENCY_MS = 100;\n\nexport const WindowWidthContext = React.createContext<number>(DEFAULT_WIDTH);\n\nexport const WindowWidthProvider = ({children}: React.PropsWithChildren) => {\n const [windowWidth, setWindowWidth] = React.useState(DEFAULT_WIDTH);\n\n React.useEffect(() => {\n const handleResize = throttle(\n () => {\n setWindowWidth(window.innerWidth);\n },\n UPDATE_FREQUENCY_MS,\n {leading: true},\n );\n\n handleResize();\n\n window.addEventListener('resize', handleResize, {passive: true});\n\n // eslint-disable-next-line consistent-return\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n return (\n <WindowWidthContext.Provider value={windowWidth}>{children}</WindowWidthContext.Provider>\n );\n};\n\nexport const useWindowWidth = () => React.useContext(WindowWidthContext);\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./WindowWidthContext.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["context/windowWidthContext/index.ts"],"names":[],"mappings":";;;AAAA,kEAAqC","sourcesContent":["export * from './WindowWidthContext';\n"]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import { Block, ClassNameProps } from "../../../models/index.js";
|
|
3
2
|
export interface AddBlockProps extends ClassNameProps {
|
|
4
3
|
onAdd: (data: Block) => void;
|
|
5
4
|
}
|
|
6
|
-
declare const AddBlock: ({ onAdd, className }:
|
|
5
|
+
declare const AddBlock: ({ onAdd, className }: AddBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
6
|
export default AddBlock;
|