@gravity-ui/page-constructor 7.0.0-beta.2 → 7.0.0-beta.3
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 +98 -10
- package/build/cjs/blocks/Banner/Banner.js +2 -2
- package/build/cjs/blocks/Banner/Banner.js.map +1 -1
- package/build/cjs/blocks/Banner/schema.js +20 -8
- package/build/cjs/blocks/Banner/schema.js.map +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/CardLayout/schema.d.ts +76 -0
- package/build/cjs/blocks/CardLayout/schema.js +19 -4
- package/build/cjs/blocks/CardLayout/schema.js.map +1 -1
- package/build/cjs/blocks/Companies/Companies.js +1 -1
- package/build/cjs/blocks/Companies/Companies.js.map +1 -1
- package/build/cjs/blocks/Companies/schema.js +10 -4
- package/build/cjs/blocks/Companies/schema.js.map +1 -1
- package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
- package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
- package/build/cjs/blocks/ContentLayout/schema.d.ts +76 -0
- package/build/cjs/blocks/ContentLayout/schema.js +7 -2
- package/build/cjs/blocks/ContentLayout/schema.js.map +1 -1
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
- package/build/cjs/blocks/ExtendedFeatures/schema.js +7 -1
- package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
- package/build/cjs/blocks/FilterBlock/schema.js +13 -3
- package/build/cjs/blocks/FilterBlock/schema.js.map +1 -1
- package/build/cjs/blocks/FoldableList/FoldableList.css +13 -0
- package/build/cjs/blocks/FoldableList/FoldableList.d.ts +3 -0
- package/build/cjs/blocks/FoldableList/FoldableList.js +31 -0
- package/build/cjs/blocks/FoldableList/FoldableList.js.map +1 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +100 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +2 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +22 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
- package/build/cjs/blocks/FoldableList/schema.d.ts +140 -0
- package/build/cjs/blocks/FoldableList/schema.js +39 -0
- package/build/cjs/blocks/FoldableList/schema.js.map +1 -0
- package/build/cjs/blocks/Form/Form.js +3 -4
- package/build/cjs/blocks/Form/Form.js.map +1 -1
- package/build/cjs/blocks/Form/schema.js +14 -6
- package/build/cjs/blocks/Form/schema.js.map +1 -1
- package/build/cjs/blocks/Header/Header.css +12 -1
- package/build/cjs/blocks/Header/Header.js +15 -9
- package/build/cjs/blocks/Header/Header.js.map +1 -1
- package/build/cjs/blocks/Header/schema.d.ts +10 -0
- package/build/cjs/blocks/Header/schema.js +14 -2
- package/build/cjs/blocks/Header/schema.js.map +1 -1
- package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -3
- package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
- package/build/cjs/blocks/HeaderSlider/schema.d.ts +5 -0
- package/build/cjs/blocks/HeaderSlider/schema.js +8 -5
- package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
- package/build/cjs/blocks/Icons/Icons.js +2 -2
- package/build/cjs/blocks/Icons/Icons.js.map +1 -1
- package/build/cjs/blocks/Icons/schema.js +17 -6
- package/build/cjs/blocks/Icons/schema.js.map +1 -1
- package/build/cjs/blocks/Info/Info.js +8 -4
- package/build/cjs/blocks/Info/Info.js.map +1 -1
- package/build/cjs/blocks/Info/schema.js +14 -4
- package/build/cjs/blocks/Info/schema.js.map +1 -1
- package/build/cjs/blocks/Map/Map.js +2 -3
- package/build/cjs/blocks/Map/Map.js.map +1 -1
- package/build/cjs/blocks/Map/schema.js +4 -1
- package/build/cjs/blocks/Map/schema.js.map +1 -1
- 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.js +24 -9
- package/build/cjs/blocks/Media/schema.js.map +1 -1
- package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
- package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
- package/build/cjs/blocks/PromoFeaturesBlock/schema.js +8 -2
- package/build/cjs/blocks/PromoFeaturesBlock/schema.js.map +1 -1
- package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
- package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
- package/build/cjs/blocks/Questions/schema.js +6 -2
- package/build/cjs/blocks/Questions/schema.js.map +1 -1
- package/build/cjs/blocks/Share/Share.css +3 -2
- package/build/cjs/blocks/Share/Share.js +3 -4
- package/build/cjs/blocks/Share/Share.js.map +1 -1
- package/build/cjs/blocks/Share/schema.js +7 -3
- package/build/cjs/blocks/Share/schema.js.map +1 -1
- package/build/cjs/blocks/Slider/Arrow/Arrow.css +13 -13
- package/build/cjs/blocks/Slider/Arrow/Arrow.js +2 -2
- package/build/cjs/blocks/Slider/Arrow/Arrow.js.map +1 -1
- package/build/cjs/blocks/Slider/Slider.css +2 -2
- package/build/cjs/blocks/Slider/Slider.js +6 -3
- package/build/cjs/blocks/Slider/Slider.js.map +1 -1
- package/build/cjs/blocks/Slider/schema.js +6 -1
- package/build/cjs/blocks/Slider/schema.js.map +1 -1
- package/build/cjs/blocks/Slider/useSlider.js +1 -2
- package/build/cjs/blocks/Slider/useSlider.js.map +1 -1
- package/build/cjs/blocks/Slider/utils.js +6 -2
- package/build/cjs/blocks/Slider/utils.js.map +1 -1
- package/build/cjs/blocks/SliderOld/Arrow/Arrow.css +1 -1
- package/build/cjs/blocks/SliderOld/SliderOld.js +17 -14
- package/build/cjs/blocks/SliderOld/SliderOld.js.map +1 -1
- package/build/cjs/blocks/SliderOld/schema.js +6 -1
- package/build/cjs/blocks/SliderOld/schema.js.map +1 -1
- package/build/cjs/blocks/SliderOld/utils.js +8 -5
- package/build/cjs/blocks/SliderOld/utils.js.map +1 -1
- package/build/cjs/blocks/Table/Table.js +1 -1
- package/build/cjs/blocks/Table/Table.js.map +1 -1
- package/build/cjs/blocks/Table/schema.js +22 -10
- package/build/cjs/blocks/Table/schema.js.map +1 -1
- package/build/cjs/blocks/Tabs/TabContent/TabContent.css +78 -0
- package/build/cjs/blocks/Tabs/TabContent/TabContent.d.ts +12 -0
- package/build/cjs/blocks/Tabs/TabContent/TabContent.js +70 -0
- package/build/cjs/blocks/Tabs/TabContent/TabContent.js.map +1 -0
- package/build/cjs/blocks/Tabs/Tabs.css +0 -72
- package/build/cjs/blocks/Tabs/Tabs.js +13 -59
- package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
- package/build/cjs/blocks/Tabs/schema.js +24 -9
- package/build/cjs/blocks/Tabs/schema.js.map +1 -1
- package/build/cjs/blocks/index.d.ts +1 -0
- package/build/cjs/blocks/index.js +3 -1
- package/build/cjs/blocks/index.js.map +1 -1
- package/build/cjs/components/Author/Author.js +1 -1
- package/build/cjs/components/Author/Author.js.map +1 -1
- package/build/cjs/components/Author/schema.js +5 -1
- package/build/cjs/components/Author/schema.js.map +1 -1
- package/build/cjs/components/BackLink/BackLink.js +1 -1
- package/build/cjs/components/BackLink/BackLink.js.map +1 -1
- package/build/cjs/components/BackgroundImage/BackgroundImage.js +2 -2
- package/build/cjs/components/BackgroundImage/BackgroundImage.js.map +1 -1
- package/build/cjs/components/BackgroundMedia/BackgroundMedia.js +4 -4
- package/build/cjs/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
- package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +1 -1
- package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
- package/build/cjs/components/Button/Button.d.ts +1 -0
- package/build/cjs/components/Button/Button.js +9 -5
- package/build/cjs/components/Button/Button.js.map +1 -1
- package/build/cjs/components/Button/utils.js +2 -2
- package/build/cjs/components/Button/utils.js.map +1 -1
- package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +2 -0
- package/build/cjs/components/ButtonTabs/ButtonTabs.js +3 -2
- package/build/cjs/components/ButtonTabs/ButtonTabs.js.map +1 -1
- package/build/cjs/components/Buttons/Buttons.js +4 -1
- package/build/cjs/components/Buttons/Buttons.js.map +1 -1
- package/build/cjs/components/CardBase/CardBase.js +6 -2
- package/build/cjs/components/CardBase/CardBase.js.map +1 -1
- package/build/cjs/components/ContentList/ContentList.js +1 -1
- package/build/cjs/components/ContentList/ContentList.js.map +1 -1
- package/build/cjs/components/ContentList/ContentListItemIcon.js +1 -1
- package/build/cjs/components/ContentList/ContentListItemIcon.js.map +1 -1
- package/build/cjs/components/DefaultVideo/DefaultVideo.js +3 -4
- package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
- package/build/cjs/components/FileLink/FileLink.js +2 -2
- package/build/cjs/components/FileLink/FileLink.js.map +1 -1
- package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +12 -17
- package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
- package/build/cjs/components/FullscreenImage/FullscreenImage.css +3 -0
- package/build/cjs/components/FullscreenImage/FullscreenImage.js +1 -1
- package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
- package/build/cjs/components/FullscreenMedia/FullscreenMedia.css +1 -3
- package/build/cjs/components/HTML/HTML.js +7 -3
- package/build/cjs/components/HTML/HTML.js.map +1 -1
- package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
- package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
- package/build/cjs/components/IconWrapper/IconWrapper.js +2 -2
- package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
- package/build/cjs/components/Image/Image.d.ts +4 -2
- package/build/cjs/components/Image/Image.js +22 -8
- package/build/cjs/components/Image/Image.js.map +1 -1
- package/build/cjs/components/Image/schema.d.ts +95 -0
- package/build/cjs/components/Image/schema.js +55 -12
- package/build/cjs/components/Image/schema.js.map +1 -1
- package/build/cjs/components/ImageBase/ImageBase.js +3 -4
- package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
- package/build/cjs/components/InnerForm/InnerForm.js +5 -5
- package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
- package/build/cjs/components/Link/Link.js +1 -1
- package/build/cjs/components/Link/Link.js.map +1 -1
- package/build/cjs/components/Links/Links.js +4 -1
- package/build/cjs/components/Links/Links.js.map +1 -1
- package/build/cjs/components/Map/Map.js +2 -2
- package/build/cjs/components/Map/Map.js.map +1 -1
- package/build/cjs/components/Map/YMap/YMap.js +6 -5
- package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
- package/build/cjs/components/Map/YMap/YandexMap.js +1 -2
- package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
- package/build/cjs/components/Map/YMap/YandexMapApiLoader.js +2 -1
- package/build/cjs/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
- package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
- package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
- package/build/cjs/components/Media/Image/Image.js +3 -3
- package/build/cjs/components/Media/Image/Image.js.map +1 -1
- package/build/cjs/components/Media/Media.js +13 -5
- package/build/cjs/components/Media/Media.js.map +1 -1
- package/build/cjs/components/MediaBase/MediaBase.js +3 -3
- package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
- package/build/cjs/components/MediaBase/MediaBaseContent.js +1 -1
- package/build/cjs/components/MediaBase/MediaBaseContent.js.map +1 -1
- package/build/cjs/components/OutsideClick/OutsideClick.js +9 -12
- package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
- package/build/cjs/components/OverflowScroller/OverflowScroller.js +46 -49
- package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
- package/build/cjs/components/ReactPlayer/ReactPlayer.js +14 -13
- package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/cjs/components/ReactPlayer/utils.js +1 -2
- package/build/cjs/components/ReactPlayer/utils.js.map +1 -1
- package/build/cjs/components/Title/Title.js +2 -2
- package/build/cjs/components/Title/Title.js.map +1 -1
- package/build/cjs/components/Title/TitleItem.css +1 -0
- package/build/cjs/components/Title/TitleItem.js +1 -1
- package/build/cjs/components/Title/TitleItem.js.map +1 -1
- package/build/cjs/components/VideoBlock/VideoBlock.js +7 -4
- package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
- package/build/cjs/components/YFMWrapper/YFMWrapper.js +3 -4
- package/build/cjs/components/YFMWrapper/YFMWrapper.js.map +1 -1
- package/build/cjs/components/YandexForm/YandexForm.js +21 -6
- package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
- package/build/cjs/components/YandexForm/schema.js +7 -3
- package/build/cjs/components/YandexForm/schema.js.map +1 -1
- package/build/cjs/constructor-items.d.ts +1 -0
- package/build/cjs/constructor-items.js +1 -0
- package/build/cjs/constructor-items.js.map +1 -1
- package/build/cjs/containers/Loadable/Loadable.js +4 -4
- package/build/cjs/containers/Loadable/Loadable.js.map +1 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.js +14 -7
- package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/cjs/containers/PageConstructor/Provider.js +1 -1
- package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
- package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
- package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
- package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -2
- package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
- package/build/cjs/context/projectSettingsContext/ProjectSettingsContext.d.ts +2 -0
- package/build/cjs/context/projectSettingsContext/ProjectSettingsContext.js.map +1 -1
- package/build/cjs/context/theme/withTheme.js +7 -9
- package/build/cjs/context/theme/withTheme.js.map +1 -1
- package/build/cjs/customization/BlockDecoration.js +3 -5
- package/build/cjs/customization/BlockDecoration.js.map +1 -1
- package/build/cjs/editor/components/AddBlock/AddBlock.js +6 -8
- package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
- package/build/cjs/editor/components/BlockForm/BlockForm.js +9 -4
- package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
- package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -4
- package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
- package/build/cjs/editor/components/EditBlock/EditBlock.js +2 -2
- package/build/cjs/editor/components/EditBlock/EditBlock.js.map +1 -1
- package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
- package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/build/cjs/editor/components/Layout/Layout.js +3 -3
- package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
- package/build/cjs/editor/components/PageSettings/PageSettings.js +2 -2
- package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
- package/build/cjs/editor/containers/Editor/Editor.js +1 -1
- package/build/cjs/editor/containers/Editor/Editor.js.map +1 -1
- package/build/cjs/editor/containers/Editor/hooks/useCode.js +2 -4
- package/build/cjs/editor/containers/Editor/hooks/useCode.js.map +1 -1
- package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +10 -7
- package/build/cjs/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
- package/build/cjs/editor/containers/Form/Form.js +5 -2
- package/build/cjs/editor/containers/Form/Form.js.map +1 -1
- package/build/cjs/editor/data/index.js +5 -2
- package/build/cjs/editor/data/index.js.map +1 -1
- package/build/cjs/editor/data/previews/default-preview.js +1 -1
- package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
- package/build/cjs/editor/data/previews/header-block.js +1 -1
- package/build/cjs/editor/data/previews/header-block.js.map +1 -1
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
- package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
- package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
- package/build/cjs/editor/dynamic-forms-custom/parser/index.js +150 -120
- package/build/cjs/editor/dynamic-forms-custom/parser/index.js.map +1 -1
- package/build/cjs/editor/dynamic-forms-custom/parser/views.js +2 -4
- package/build/cjs/editor/dynamic-forms-custom/parser/views.js.map +1 -1
- package/build/cjs/editor/icons/Tablet.js +1 -1
- package/build/cjs/editor/icons/Tablet.js.map +1 -1
- package/build/cjs/editor/store/main/index.js +7 -4
- package/build/cjs/editor/store/main/index.js.map +1 -1
- package/build/cjs/editor/store/main/reducer.js +17 -3
- package/build/cjs/editor/store/main/reducer.js.map +1 -1
- package/build/cjs/editor/store/main/utils.js +1 -1
- package/build/cjs/editor/store/main/utils.js.map +1 -1
- package/build/cjs/editor/store/settings/reducer.js +16 -4
- package/build/cjs/editor/store/settings/reducer.js.map +1 -1
- package/build/cjs/editor/utils/code.js +4 -2
- package/build/cjs/editor/utils/code.js.map +1 -1
- package/build/cjs/editor/utils/index.js +7 -1
- package/build/cjs/editor/utils/index.js.map +1 -1
- package/build/cjs/editor/widget/index.js +8 -8
- package/build/cjs/editor/widget/index.js.map +1 -1
- package/build/cjs/editor/widget/utils.js +1 -1
- package/build/cjs/editor/widget/utils.js.map +1 -1
- package/build/cjs/grid/Col/Col.d.ts +3 -2
- package/build/cjs/grid/Col/Col.js +2 -2
- package/build/cjs/grid/Col/Col.js.map +1 -1
- package/build/cjs/grid/Row/Row.d.ts +4 -3
- package/build/cjs/grid/Row/Row.js +2 -2
- package/build/cjs/grid/Row/Row.js.map +1 -1
- package/build/cjs/hooks/useAnalytics.js +4 -1
- package/build/cjs/hooks/useAnalytics.js.map +1 -1
- package/build/cjs/icons/BrandIconDark.js +1 -1
- package/build/cjs/icons/BrandIconDark.js.map +1 -1
- package/build/cjs/icons/BrandIconLight.js +1 -1
- package/build/cjs/icons/BrandIconLight.js.map +1 -1
- package/build/cjs/icons/BrandName.js +1 -1
- package/build/cjs/icons/BrandName.js.map +1 -1
- package/build/cjs/icons/Chevron.js +1 -1
- package/build/cjs/icons/Chevron.js.map +1 -1
- package/build/cjs/icons/Facebook.js +1 -1
- package/build/cjs/icons/Facebook.js.map +1 -1
- package/build/cjs/icons/Github.js +1 -1
- package/build/cjs/icons/Github.js.map +1 -1
- package/build/cjs/icons/Linkedin.js +1 -1
- package/build/cjs/icons/Linkedin.js.map +1 -1
- package/build/cjs/icons/NavigationArrow.js +1 -1
- package/build/cjs/icons/NavigationArrow.js.map +1 -1
- package/build/cjs/icons/NavigationChevron.js +1 -1
- package/build/cjs/icons/NavigationChevron.js.map +1 -1
- package/build/cjs/icons/Telegram.js +1 -1
- package/build/cjs/icons/Telegram.js.map +1 -1
- package/build/cjs/icons/Twitter.js +1 -1
- package/build/cjs/icons/Twitter.js.map +1 -1
- package/build/cjs/icons/Vk.js +1 -1
- package/build/cjs/icons/Vk.js.map +1 -1
- package/build/cjs/internal-typings/global.d.ts +1 -0
- package/build/cjs/models/constructor-items/blocks.d.ts +21 -3
- package/build/cjs/models/constructor-items/blocks.js +1 -0
- package/build/cjs/models/constructor-items/blocks.js.map +1 -1
- package/build/cjs/models/constructor-items/common.d.ts +16 -6
- package/build/cjs/models/constructor-items/common.js +8 -1
- package/build/cjs/models/constructor-items/common.js.map +1 -1
- package/build/cjs/models/constructor-items/sub-blocks.d.ts +2 -1
- package/build/cjs/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
- package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
- package/build/cjs/navigation/components/Logo/Logo.js +4 -5
- package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
- package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js +2 -3
- package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
- package/build/cjs/navigation/components/Navigation/Navigation.d.ts +1 -0
- package/build/cjs/navigation/components/Navigation/Navigation.js +2 -2
- package/build/cjs/navigation/components/Navigation/Navigation.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +7 -5
- package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -4
- package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -3
- package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -4
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
- package/build/cjs/navigation/components/NavigationList/NavigationList.js +1 -4
- package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
- package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js +2 -3
- package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
- package/build/cjs/navigation/components/SocialIcon/SocialIcon.js +1 -1
- package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
- package/build/cjs/navigation/components/Standalone/index.js +1 -1
- package/build/cjs/navigation/components/Standalone/index.js.map +1 -1
- package/build/cjs/navigation/hooks/useActiveNavItem.js +1 -1
- package/build/cjs/navigation/hooks/useActiveNavItem.js.map +1 -1
- package/build/cjs/navigation/models.d.ts +1 -0
- package/build/cjs/navigation/models.js.map +1 -1
- package/build/cjs/navigation/schema.js +19 -6
- package/build/cjs/navigation/schema.js.map +1 -1
- package/build/cjs/navigation/utils.js +1 -1
- package/build/cjs/navigation/utils.js.map +1 -1
- package/build/cjs/schema/constants.d.ts +19 -0
- package/build/cjs/schema/constants.js +34 -2
- package/build/cjs/schema/constants.js.map +1 -1
- package/build/cjs/schema/index.js +23 -6
- package/build/cjs/schema/index.js.map +1 -1
- package/build/cjs/schema/validators/blocks.d.ts +2 -0
- package/build/cjs/schema/validators/blocks.js +2 -0
- package/build/cjs/schema/validators/blocks.js.map +1 -1
- package/build/cjs/schema/validators/common.js +77 -31
- package/build/cjs/schema/validators/common.js.map +1 -1
- package/build/cjs/schema/validators/utils.js +9 -2
- package/build/cjs/schema/validators/utils.js.map +1 -1
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
- package/build/cjs/sub-blocks/BackgroundCard/schema.d.ts +19 -0
- package/build/cjs/sub-blocks/BackgroundCard/schema.js +23 -8
- package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/BannerCard/BannerCard.js +1 -1
- package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
- package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
- package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
- package/build/cjs/sub-blocks/BasicCard/schema.js +17 -6
- package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/Content/Content.js +1 -1
- package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
- package/build/cjs/sub-blocks/Content/schema.js +10 -3
- package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
- package/build/cjs/sub-blocks/Divider/schema.js +6 -2
- package/build/cjs/sub-blocks/Divider/schema.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/index.js +5 -5
- package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
- package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/schema.js +11 -5
- package/build/cjs/sub-blocks/HubspotForm/schema.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js +51 -0
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
- package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
- package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
- package/build/cjs/sub-blocks/ImageCard/schema.js +17 -6
- package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +11 -9
- package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
- package/build/cjs/sub-blocks/LayoutItem/schema.js +19 -6
- package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
- package/build/cjs/sub-blocks/LayoutItem/utils.js +4 -1
- package/build/cjs/sub-blocks/LayoutItem/utils.js.map +1 -1
- package/build/cjs/sub-blocks/MediaCard/MediaCard.js +1 -5
- package/build/cjs/sub-blocks/MediaCard/MediaCard.js.map +1 -1
- package/build/cjs/sub-blocks/MediaCard/schema.js +12 -3
- package/build/cjs/sub-blocks/MediaCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/PriceCard/PriceCard.js +1 -1
- package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
- package/build/cjs/sub-blocks/PriceCard/schema.js +25 -11
- package/build/cjs/sub-blocks/PriceCard/schema.js.map +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
- package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -4
- package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/schema.js +44 -12
- package/build/cjs/sub-blocks/PriceDetailed/schema.js.map +1 -1
- package/build/cjs/sub-blocks/Quote/Quote.js +6 -3
- package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
- package/build/cjs/sub-blocks/Quote/schema.js +21 -8
- package/build/cjs/sub-blocks/Quote/schema.js.map +1 -1
- package/build/cjs/text-transform/common.js +30 -21
- package/build/cjs/text-transform/common.js.map +1 -1
- package/build/cjs/text-transform/config.js +58 -24
- package/build/cjs/text-transform/config.js.map +1 -1
- package/build/cjs/text-transform/filter.js +4 -1
- package/build/cjs/text-transform/filter.js.map +1 -1
- package/build/cjs/text-transform/transformers.js +1 -1
- package/build/cjs/text-transform/transformers.js.map +1 -1
- package/build/cjs/text-transform/utils.js +11 -5
- package/build/cjs/text-transform/utils.js.map +1 -1
- package/build/cjs/utils/analytics.js +2 -3
- package/build/cjs/utils/analytics.js.map +1 -1
- package/build/cjs/utils/common.js +1 -2
- package/build/cjs/utils/common.js.map +1 -1
- package/build/cjs/utils/hubspot.d.ts +1 -0
- package/build/cjs/utils/hubspot.js +6 -7
- package/build/cjs/utils/hubspot.js.map +1 -1
- package/build/cjs/utils/microdata.js +1 -1
- package/build/cjs/utils/microdata.js.map +1 -1
- package/build/cjs/utils/url.js +10 -5
- package/build/cjs/utils/url.js.map +1 -1
- package/build/esm/blocks/Banner/Banner.js +2 -3
- package/build/esm/blocks/Banner/Banner.js.map +1 -1
- package/build/esm/blocks/Banner/schema.js +20 -8
- package/build/esm/blocks/Banner/schema.js.map +1 -1
- package/build/esm/blocks/CardLayout/CardLayout.js +2 -3
- package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
- package/build/esm/blocks/CardLayout/schema.d.ts +76 -0
- package/build/esm/blocks/CardLayout/schema.js +19 -4
- package/build/esm/blocks/CardLayout/schema.js.map +1 -1
- package/build/esm/blocks/Companies/Companies.js +1 -1
- package/build/esm/blocks/Companies/Companies.js.map +1 -1
- package/build/esm/blocks/Companies/schema.js +10 -4
- package/build/esm/blocks/Companies/schema.js.map +1 -1
- package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -1
- package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
- package/build/esm/blocks/ContentLayout/schema.d.ts +76 -0
- package/build/esm/blocks/ContentLayout/schema.js +7 -2
- package/build/esm/blocks/ContentLayout/schema.js.map +1 -1
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
- package/build/esm/blocks/ExtendedFeatures/schema.js +7 -1
- package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
- package/build/esm/blocks/FilterBlock/schema.js +13 -3
- package/build/esm/blocks/FilterBlock/schema.js.map +1 -1
- package/build/esm/blocks/FoldableList/FoldableList.css +13 -0
- package/build/esm/blocks/FoldableList/FoldableList.d.ts +4 -0
- package/build/esm/blocks/FoldableList/FoldableList.js +29 -0
- package/build/esm/blocks/FoldableList/FoldableList.js.map +1 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +100 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +3 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +18 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
- package/build/esm/blocks/FoldableList/schema.d.ts +140 -0
- package/build/esm/blocks/FoldableList/schema.js +35 -0
- package/build/esm/blocks/FoldableList/schema.js.map +1 -0
- package/build/esm/blocks/Form/Form.js +3 -4
- package/build/esm/blocks/Form/Form.js.map +1 -1
- package/build/esm/blocks/Form/schema.js +14 -6
- package/build/esm/blocks/Form/schema.js.map +1 -1
- package/build/esm/blocks/Header/Header.css +12 -1
- package/build/esm/blocks/Header/Header.js +15 -9
- package/build/esm/blocks/Header/Header.js.map +1 -1
- package/build/esm/blocks/Header/schema.d.ts +10 -0
- package/build/esm/blocks/Header/schema.js +14 -2
- package/build/esm/blocks/Header/schema.js.map +1 -1
- package/build/esm/blocks/HeaderSlider/HeaderSlider.js +2 -4
- package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
- package/build/esm/blocks/HeaderSlider/schema.d.ts +5 -0
- package/build/esm/blocks/HeaderSlider/schema.js +7 -4
- package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
- package/build/esm/blocks/Icons/Icons.js +2 -2
- package/build/esm/blocks/Icons/Icons.js.map +1 -1
- package/build/esm/blocks/Icons/schema.js +17 -6
- package/build/esm/blocks/Icons/schema.js.map +1 -1
- package/build/esm/blocks/Info/Info.js +8 -4
- package/build/esm/blocks/Info/Info.js.map +1 -1
- package/build/esm/blocks/Info/schema.js +14 -4
- package/build/esm/blocks/Info/schema.js.map +1 -1
- package/build/esm/blocks/Map/Map.js +2 -4
- package/build/esm/blocks/Map/Map.js.map +1 -1
- package/build/esm/blocks/Map/schema.js +4 -1
- package/build/esm/blocks/Map/schema.js.map +1 -1
- 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.js +24 -9
- package/build/esm/blocks/Media/schema.js.map +1 -1
- package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
- package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
- package/build/esm/blocks/PromoFeaturesBlock/schema.js +8 -2
- package/build/esm/blocks/PromoFeaturesBlock/schema.js.map +1 -1
- package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
- package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
- package/build/esm/blocks/Questions/schema.js +6 -2
- package/build/esm/blocks/Questions/schema.js.map +1 -1
- package/build/esm/blocks/Share/Share.css +3 -2
- package/build/esm/blocks/Share/Share.js +3 -4
- package/build/esm/blocks/Share/Share.js.map +1 -1
- package/build/esm/blocks/Share/schema.js +7 -3
- package/build/esm/blocks/Share/schema.js.map +1 -1
- package/build/esm/blocks/Slider/Arrow/Arrow.css +13 -13
- package/build/esm/blocks/Slider/Arrow/Arrow.js +2 -2
- package/build/esm/blocks/Slider/Arrow/Arrow.js.map +1 -1
- package/build/esm/blocks/Slider/Slider.css +2 -2
- package/build/esm/blocks/Slider/Slider.d.ts +1 -1
- package/build/esm/blocks/Slider/Slider.js +7 -4
- package/build/esm/blocks/Slider/Slider.js.map +1 -1
- package/build/esm/blocks/Slider/schema.js +6 -1
- package/build/esm/blocks/Slider/schema.js.map +1 -1
- package/build/esm/blocks/Slider/useSlider.d.ts +1 -1
- package/build/esm/blocks/Slider/useSlider.js +1 -3
- 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/utils.d.ts +1 -1
- package/build/esm/blocks/Slider/utils.js +6 -2
- package/build/esm/blocks/Slider/utils.js.map +1 -1
- package/build/esm/blocks/SliderOld/Arrow/Arrow.css +1 -1
- package/build/esm/blocks/SliderOld/SliderOld.js +17 -14
- package/build/esm/blocks/SliderOld/SliderOld.js.map +1 -1
- package/build/esm/blocks/SliderOld/schema.js +6 -1
- package/build/esm/blocks/SliderOld/schema.js.map +1 -1
- package/build/esm/blocks/SliderOld/utils.js +8 -5
- package/build/esm/blocks/SliderOld/utils.js.map +1 -1
- package/build/esm/blocks/Table/Table.js +1 -1
- package/build/esm/blocks/Table/Table.js.map +1 -1
- package/build/esm/blocks/Table/schema.js +22 -10
- package/build/esm/blocks/Table/schema.js.map +1 -1
- package/build/esm/blocks/Tabs/TabContent/TabContent.css +78 -0
- package/build/esm/blocks/Tabs/TabContent/TabContent.d.ts +13 -0
- package/build/esm/blocks/Tabs/TabContent/TabContent.js +66 -0
- package/build/esm/blocks/Tabs/TabContent/TabContent.js.map +1 -0
- package/build/esm/blocks/Tabs/Tabs.css +0 -72
- package/build/esm/blocks/Tabs/Tabs.js +13 -59
- package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
- package/build/esm/blocks/Tabs/schema.js +24 -9
- package/build/esm/blocks/Tabs/schema.js.map +1 -1
- package/build/esm/blocks/index.d.ts +1 -0
- package/build/esm/blocks/index.js +1 -0
- package/build/esm/blocks/index.js.map +1 -1
- package/build/esm/components/Author/Author.js +1 -1
- package/build/esm/components/Author/Author.js.map +1 -1
- package/build/esm/components/Author/schema.js +5 -1
- package/build/esm/components/Author/schema.js.map +1 -1
- package/build/esm/components/BackLink/BackLink.js +1 -1
- package/build/esm/components/BackLink/BackLink.js.map +1 -1
- package/build/esm/components/BackgroundImage/BackgroundImage.js +2 -2
- package/build/esm/components/BackgroundImage/BackgroundImage.js.map +1 -1
- package/build/esm/components/BackgroundMedia/BackgroundMedia.js +4 -5
- package/build/esm/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
- package/build/esm/components/BalancedMasonry/BalancedMasonry.js +1 -1
- package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
- package/build/esm/components/Button/Button.d.ts +1 -0
- package/build/esm/components/Button/Button.js +9 -6
- package/build/esm/components/Button/Button.js.map +1 -1
- package/build/esm/components/Button/utils.js +2 -2
- package/build/esm/components/Button/utils.js.map +1 -1
- package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +2 -0
- package/build/esm/components/ButtonTabs/ButtonTabs.js +3 -2
- package/build/esm/components/ButtonTabs/ButtonTabs.js.map +1 -1
- package/build/esm/components/Buttons/Buttons.js +4 -1
- package/build/esm/components/Buttons/Buttons.js.map +1 -1
- package/build/esm/components/CardBase/CardBase.js +6 -2
- package/build/esm/components/CardBase/CardBase.js.map +1 -1
- package/build/esm/components/ContentList/ContentList.js +1 -1
- package/build/esm/components/ContentList/ContentList.js.map +1 -1
- package/build/esm/components/ContentList/ContentListItemIcon.js +1 -1
- package/build/esm/components/ContentList/ContentListItemIcon.js.map +1 -1
- package/build/esm/components/DefaultVideo/DefaultVideo.js +3 -4
- package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
- package/build/esm/components/FileLink/FileLink.js +2 -2
- package/build/esm/components/FileLink/FileLink.js.map +1 -1
- package/build/esm/components/FullWidthBackground/FullWidthBackground.js +12 -17
- package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
- package/build/esm/components/FullscreenImage/FullscreenImage.css +3 -0
- package/build/esm/components/FullscreenImage/FullscreenImage.js +1 -1
- package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
- package/build/esm/components/FullscreenMedia/FullscreenMedia.css +1 -3
- package/build/esm/components/HTML/HTML.js +7 -4
- package/build/esm/components/HTML/HTML.js.map +1 -1
- package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
- package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
- package/build/esm/components/IconWrapper/IconWrapper.js +2 -2
- package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
- package/build/esm/components/Image/Image.d.ts +4 -2
- package/build/esm/components/Image/Image.js +21 -8
- package/build/esm/components/Image/Image.js.map +1 -1
- package/build/esm/components/Image/schema.d.ts +95 -0
- package/build/esm/components/Image/schema.js +55 -12
- package/build/esm/components/Image/schema.js.map +1 -1
- package/build/esm/components/ImageBase/ImageBase.js +3 -5
- package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
- package/build/esm/components/InnerForm/InnerForm.js +5 -6
- package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
- package/build/esm/components/Link/Link.js +1 -1
- package/build/esm/components/Link/Link.js.map +1 -1
- package/build/esm/components/Links/Links.js +4 -1
- package/build/esm/components/Links/Links.js.map +1 -1
- package/build/esm/components/Map/Map.js +2 -2
- package/build/esm/components/Map/Map.js.map +1 -1
- package/build/esm/components/Map/YMap/YMap.js +6 -5
- package/build/esm/components/Map/YMap/YMap.js.map +1 -1
- package/build/esm/components/Map/YMap/YandexMap.js +1 -2
- package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
- package/build/esm/components/Map/YMap/YandexMapApiLoader.js +2 -1
- package/build/esm/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
- package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
- package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
- package/build/esm/components/Media/Image/Image.js +3 -3
- package/build/esm/components/Media/Image/Image.js.map +1 -1
- package/build/esm/components/Media/Media.js +13 -5
- package/build/esm/components/Media/Media.js.map +1 -1
- package/build/esm/components/MediaBase/MediaBase.js +3 -4
- package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
- package/build/esm/components/MediaBase/MediaBaseContent.js +1 -1
- package/build/esm/components/MediaBase/MediaBaseContent.js.map +1 -1
- package/build/esm/components/OutsideClick/OutsideClick.js +9 -12
- package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
- package/build/esm/components/OverflowScroller/OverflowScroller.js +46 -49
- package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.js +14 -13
- package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/esm/components/ReactPlayer/utils.js +1 -2
- package/build/esm/components/ReactPlayer/utils.js.map +1 -1
- package/build/esm/components/Title/Title.js +2 -3
- package/build/esm/components/Title/Title.js.map +1 -1
- package/build/esm/components/Title/TitleItem.css +1 -0
- package/build/esm/components/Title/TitleItem.js +1 -1
- package/build/esm/components/Title/TitleItem.js.map +1 -1
- package/build/esm/components/VideoBlock/VideoBlock.js +7 -4
- package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
- package/build/esm/components/YFMWrapper/YFMWrapper.js +3 -5
- package/build/esm/components/YFMWrapper/YFMWrapper.js.map +1 -1
- package/build/esm/components/YandexForm/YandexForm.js +21 -6
- package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
- package/build/esm/components/YandexForm/schema.js +7 -3
- package/build/esm/components/YandexForm/schema.js.map +1 -1
- package/build/esm/constructor-items.d.ts +1 -0
- package/build/esm/constructor-items.js +2 -1
- package/build/esm/constructor-items.js.map +1 -1
- package/build/esm/containers/Loadable/Loadable.js +4 -4
- package/build/esm/containers/Loadable/Loadable.js.map +1 -1
- package/build/esm/containers/PageConstructor/PageConstructor.js +14 -8
- package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/esm/containers/PageConstructor/Provider.js +1 -1
- package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
- package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
- package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
- package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -3
- package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
- package/build/esm/context/projectSettingsContext/ProjectSettingsContext.d.ts +2 -0
- package/build/esm/context/projectSettingsContext/ProjectSettingsContext.js.map +1 -1
- package/build/esm/context/theme/withTheme.js +7 -9
- package/build/esm/context/theme/withTheme.js.map +1 -1
- package/build/esm/customization/BlockDecoration.js +3 -6
- package/build/esm/customization/BlockDecoration.js.map +1 -1
- package/build/esm/editor/components/AddBlock/AddBlock.js +6 -8
- package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
- package/build/esm/editor/components/BlockForm/BlockForm.js +9 -5
- package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
- package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -5
- package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
- package/build/esm/editor/components/EditBlock/EditBlock.js +2 -2
- package/build/esm/editor/components/EditBlock/EditBlock.js.map +1 -1
- package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
- package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/build/esm/editor/components/Layout/Layout.js +3 -3
- package/build/esm/editor/components/Layout/Layout.js.map +1 -1
- package/build/esm/editor/components/PageSettings/PageSettings.js +2 -3
- package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
- package/build/esm/editor/containers/Editor/Editor.js +1 -1
- package/build/esm/editor/containers/Editor/Editor.js.map +1 -1
- package/build/esm/editor/containers/Editor/hooks/useCode.js +2 -4
- package/build/esm/editor/containers/Editor/hooks/useCode.js.map +1 -1
- package/build/esm/editor/containers/Editor/hooks/useEditorState.js +10 -8
- package/build/esm/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
- package/build/esm/editor/containers/Form/Form.js +5 -2
- package/build/esm/editor/containers/Form/Form.js.map +1 -1
- package/build/esm/editor/data/index.js +5 -2
- package/build/esm/editor/data/index.js.map +1 -1
- package/build/esm/editor/data/previews/default-preview.js +1 -1
- package/build/esm/editor/data/previews/default-preview.js.map +1 -1
- package/build/esm/editor/data/previews/header-block.js +1 -1
- package/build/esm/editor/data/previews/header-block.js.map +1 -1
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
- package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
- package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
- package/build/esm/editor/dynamic-forms-custom/parser/index.js +150 -120
- package/build/esm/editor/dynamic-forms-custom/parser/index.js.map +1 -1
- package/build/esm/editor/dynamic-forms-custom/parser/views.js +2 -4
- package/build/esm/editor/dynamic-forms-custom/parser/views.js.map +1 -1
- package/build/esm/editor/icons/Tablet.js +1 -1
- package/build/esm/editor/icons/Tablet.js.map +1 -1
- package/build/esm/editor/store/main/index.js +7 -5
- package/build/esm/editor/store/main/index.js.map +1 -1
- package/build/esm/editor/store/main/reducer.js +17 -3
- package/build/esm/editor/store/main/reducer.js.map +1 -1
- package/build/esm/editor/store/main/utils.js +1 -1
- package/build/esm/editor/store/main/utils.js.map +1 -1
- package/build/esm/editor/store/settings/reducer.js +16 -4
- package/build/esm/editor/store/settings/reducer.js.map +1 -1
- package/build/esm/editor/utils/code.js +4 -2
- package/build/esm/editor/utils/code.js.map +1 -1
- package/build/esm/editor/utils/index.js +7 -1
- package/build/esm/editor/utils/index.js.map +1 -1
- package/build/esm/editor/widget/index.js +8 -8
- package/build/esm/editor/widget/index.js.map +1 -1
- package/build/esm/editor/widget/utils.js +1 -1
- package/build/esm/editor/widget/utils.js.map +1 -1
- package/build/esm/grid/Col/Col.d.ts +3 -2
- package/build/esm/grid/Col/Col.js +2 -3
- package/build/esm/grid/Col/Col.js.map +1 -1
- package/build/esm/grid/Row/Row.d.ts +4 -3
- package/build/esm/grid/Row/Row.js +2 -2
- package/build/esm/grid/Row/Row.js.map +1 -1
- package/build/esm/hooks/useAnalytics.js +4 -1
- package/build/esm/hooks/useAnalytics.js.map +1 -1
- package/build/esm/icons/BrandIconDark.js +1 -1
- package/build/esm/icons/BrandIconDark.js.map +1 -1
- package/build/esm/icons/BrandIconLight.js +1 -1
- package/build/esm/icons/BrandIconLight.js.map +1 -1
- package/build/esm/icons/BrandName.js +1 -1
- package/build/esm/icons/BrandName.js.map +1 -1
- package/build/esm/icons/Chevron.js +1 -1
- package/build/esm/icons/Chevron.js.map +1 -1
- package/build/esm/icons/Facebook.js +1 -1
- package/build/esm/icons/Facebook.js.map +1 -1
- package/build/esm/icons/Github.js +1 -1
- package/build/esm/icons/Github.js.map +1 -1
- package/build/esm/icons/Linkedin.js +1 -1
- package/build/esm/icons/Linkedin.js.map +1 -1
- package/build/esm/icons/NavigationArrow.js +1 -1
- package/build/esm/icons/NavigationArrow.js.map +1 -1
- package/build/esm/icons/NavigationChevron.js +1 -1
- package/build/esm/icons/NavigationChevron.js.map +1 -1
- package/build/esm/icons/Telegram.js +1 -1
- package/build/esm/icons/Telegram.js.map +1 -1
- package/build/esm/icons/Twitter.js +1 -1
- package/build/esm/icons/Twitter.js.map +1 -1
- package/build/esm/icons/Vk.js +1 -1
- package/build/esm/icons/Vk.js.map +1 -1
- package/build/esm/internal-typings/global.d.ts +1 -0
- package/build/esm/models/constructor-items/blocks.d.ts +21 -3
- package/build/esm/models/constructor-items/blocks.js +1 -0
- package/build/esm/models/constructor-items/blocks.js.map +1 -1
- package/build/esm/models/constructor-items/common.d.ts +16 -6
- package/build/esm/models/constructor-items/common.js +7 -0
- package/build/esm/models/constructor-items/common.js.map +1 -1
- package/build/esm/models/constructor-items/sub-blocks.d.ts +2 -1
- package/build/esm/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
- package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
- package/build/esm/navigation/components/Logo/Logo.js +4 -6
- package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
- package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js +2 -4
- package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
- package/build/esm/navigation/components/Navigation/Navigation.d.ts +1 -0
- package/build/esm/navigation/components/Navigation/Navigation.js +2 -2
- package/build/esm/navigation/components/Navigation/Navigation.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/NavigationItem.js +7 -6
- package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
- package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -4
- package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -4
- package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -5
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
- package/build/esm/navigation/components/NavigationList/NavigationList.js +1 -5
- package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
- package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js +2 -4
- package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
- package/build/esm/navigation/components/SocialIcon/SocialIcon.js +1 -1
- package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
- package/build/esm/navigation/components/Standalone/index.js +1 -1
- package/build/esm/navigation/components/Standalone/index.js.map +1 -1
- package/build/esm/navigation/hooks/useActiveNavItem.js +1 -1
- package/build/esm/navigation/hooks/useActiveNavItem.js.map +1 -1
- package/build/esm/navigation/models.d.ts +1 -0
- package/build/esm/navigation/models.js.map +1 -1
- package/build/esm/navigation/schema.js +19 -6
- package/build/esm/navigation/schema.js.map +1 -1
- package/build/esm/navigation/utils.js +1 -1
- package/build/esm/navigation/utils.js.map +1 -1
- package/build/esm/schema/constants.d.ts +19 -0
- package/build/esm/schema/constants.js +35 -3
- package/build/esm/schema/constants.js.map +1 -1
- package/build/esm/schema/index.js +23 -6
- package/build/esm/schema/index.js.map +1 -1
- package/build/esm/schema/validators/blocks.d.ts +2 -0
- package/build/esm/schema/validators/blocks.js +2 -0
- package/build/esm/schema/validators/blocks.js.map +1 -1
- package/build/esm/schema/validators/common.js +77 -31
- package/build/esm/schema/validators/common.js.map +1 -1
- package/build/esm/schema/validators/utils.js +9 -2
- package/build/esm/schema/validators/utils.js.map +1 -1
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
- package/build/esm/sub-blocks/BackgroundCard/schema.d.ts +19 -0
- package/build/esm/sub-blocks/BackgroundCard/schema.js +23 -8
- package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/BannerCard/BannerCard.js +1 -1
- package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
- package/build/esm/sub-blocks/BasicCard/BasicCard.js +2 -3
- package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
- package/build/esm/sub-blocks/BasicCard/schema.js +17 -6
- package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/Content/Content.js +1 -1
- package/build/esm/sub-blocks/Content/Content.js.map +1 -1
- package/build/esm/sub-blocks/Content/schema.js +10 -3
- package/build/esm/sub-blocks/Content/schema.js.map +1 -1
- package/build/esm/sub-blocks/Divider/schema.js +6 -2
- package/build/esm/sub-blocks/Divider/schema.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/index.js +5 -5
- package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
- package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/schema.js +11 -5
- package/build/esm/sub-blocks/HubspotForm/schema.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js +47 -0
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
- package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
- package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
- package/build/esm/sub-blocks/ImageCard/schema.js +17 -6
- package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +11 -10
- package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
- package/build/esm/sub-blocks/LayoutItem/schema.js +19 -6
- package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
- package/build/esm/sub-blocks/LayoutItem/utils.js +4 -1
- package/build/esm/sub-blocks/LayoutItem/utils.js.map +1 -1
- package/build/esm/sub-blocks/MediaCard/MediaCard.js +1 -5
- package/build/esm/sub-blocks/MediaCard/MediaCard.js.map +1 -1
- package/build/esm/sub-blocks/MediaCard/schema.js +12 -3
- package/build/esm/sub-blocks/MediaCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/PriceCard/PriceCard.js +1 -1
- package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
- package/build/esm/sub-blocks/PriceCard/schema.js +25 -11
- package/build/esm/sub-blocks/PriceCard/schema.js.map +1 -1
- package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
- package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
- package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
- package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
- package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -5
- package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
- package/build/esm/sub-blocks/PriceDetailed/schema.js +44 -12
- package/build/esm/sub-blocks/PriceDetailed/schema.js.map +1 -1
- package/build/esm/sub-blocks/Quote/Quote.js +6 -3
- package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
- package/build/esm/sub-blocks/Quote/schema.js +21 -8
- package/build/esm/sub-blocks/Quote/schema.js.map +1 -1
- package/build/esm/text-transform/common.js +30 -21
- package/build/esm/text-transform/common.js.map +1 -1
- package/build/esm/text-transform/config.js +59 -25
- package/build/esm/text-transform/config.js.map +1 -1
- package/build/esm/text-transform/filter.js +4 -1
- package/build/esm/text-transform/filter.js.map +1 -1
- package/build/esm/text-transform/transformers.js +1 -1
- package/build/esm/text-transform/transformers.js.map +1 -1
- package/build/esm/text-transform/utils.js +11 -6
- package/build/esm/text-transform/utils.js.map +1 -1
- package/build/esm/utils/analytics.js +2 -3
- package/build/esm/utils/analytics.js.map +1 -1
- package/build/esm/utils/common.js +1 -2
- package/build/esm/utils/common.js.map +1 -1
- package/build/esm/utils/hubspot.d.ts +1 -0
- package/build/esm/utils/hubspot.js +6 -7
- package/build/esm/utils/hubspot.js.map +1 -1
- package/build/esm/utils/microdata.js +1 -1
- package/build/esm/utils/microdata.js.map +1 -1
- package/build/esm/utils/url.js +10 -5
- package/build/esm/utils/url.js.map +1 -1
- package/package.json +19 -21
- package/schema/index.js +1 -1
- package/server/models/constructor-items/blocks.d.ts +21 -3
- package/server/models/constructor-items/blocks.js +1 -0
- package/server/models/constructor-items/common.d.ts +16 -6
- package/server/models/constructor-items/common.js +8 -1
- package/server/models/constructor-items/sub-blocks.d.ts +2 -1
- package/server/text-transform/config.js +25 -1
- package/server/text-transform/utils.js +4 -1
- package/server/utils/hubspot.d.ts +1 -0
- package/widget/{5287.index.js → 1092.index.js} +1 -1
- package/widget/{8092.index.js → 1130.index.js} +1 -1
- package/widget/1219.index.js +1 -0
- package/widget/{2390.index.js → 122.index.js} +1 -1
- package/widget/{6817.index.js → 1289.index.js} +1 -1
- package/widget/{2921.index.js → 1335.index.js} +1 -1
- package/widget/{1876.index.js → 1340.index.js} +1 -1
- package/widget/{3901.index.js → 1349.index.js} +1 -1
- package/widget/1532.index.js +1 -0
- package/widget/{2957.index.js → 1750.index.js} +1 -1
- package/widget/{5105.index.js → 1995.index.js} +1 -1
- package/widget/{5418.index.js → 2010.index.js} +1 -1
- package/widget/{9517.index.js → 2026.index.js} +1 -1
- package/widget/2042.index.js +1 -0
- package/widget/{1794.index.js → 2187.index.js} +1 -1
- package/widget/{7548.index.js → 2218.index.js} +1 -1
- package/widget/225.index.js +1 -0
- package/widget/2338.index.js +1 -0
- package/widget/{4653.index.js → 2355.index.js} +1 -1
- package/widget/{5001.index.js → 2369.index.js} +1 -1
- package/widget/{4127.index.js → 2487.index.js} +1 -1
- package/widget/{6165.index.js → 2498.index.js} +1 -1
- package/widget/{5254.index.js → 2509.index.js} +1 -1
- package/widget/2544.index.js +1 -1
- package/widget/2619.index.js +1 -0
- package/widget/{5941.index.js → 2673.index.js} +1 -1
- package/widget/{4717.index.js → 2698.index.js} +1 -1
- package/widget/{7427.index.js → 2706.index.js} +1 -1
- package/widget/2723.index.js +1 -0
- package/widget/{8602.index.js → 2739.index.js} +1 -1
- package/widget/2745.index.js +1 -0
- package/widget/2796.index.js +1 -0
- package/widget/{7573.index.js → 2830.index.js} +1 -1
- package/widget/{3237.index.js → 2878.index.js} +1 -1
- package/widget/292.index.js +1 -0
- package/widget/2979.index.js +1 -0
- package/widget/3187.index.js +1 -0
- package/widget/321.index.js +1 -0
- package/widget/{5437.index.js → 3222.index.js} +1 -1
- package/widget/{1987.index.js → 3225.index.js} +1 -1
- package/widget/{7719.index.js → 3309.index.js} +1 -1
- package/widget/3392.index.js +1 -0
- package/widget/{4254.index.js → 3433.index.js} +1 -1
- package/widget/{2722.index.js → 3473.index.js} +1 -1
- package/widget/3532.index.js +1 -0
- package/widget/3562.index.js +1 -0
- package/widget/{6148.index.js → 3672.index.js} +1 -1
- package/widget/{4990.index.js → 3713.index.js} +1 -1
- package/widget/{8894.index.js → 3860.index.js} +1 -1
- package/widget/{5551.index.js → 3900.index.js} +1 -1
- package/widget/{6629.index.js → 4007.index.js} +1 -1
- package/widget/{7467.index.js → 4061.index.js} +1 -1
- package/widget/{5423.index.js → 4072.index.js} +1 -1
- package/widget/{4144.index.js → 4173.index.js} +1 -1
- package/widget/4288.index.js +1 -0
- package/widget/{8242.index.js → 4309.index.js} +1 -1
- package/widget/{8146.index.js → 4334.index.js} +1 -1
- package/widget/{9339.index.js → 4405.index.js} +1 -1
- package/widget/4457.index.js +1 -0
- package/widget/{8768.index.js → 4485.index.js} +1 -1
- package/widget/4509.index.js +1 -0
- package/widget/{4067.index.js → 4608.index.js} +1 -1
- package/widget/465.index.js +1 -0
- package/widget/{7118.index.js → 4719.index.js} +1 -1
- package/widget/4734.index.js +1 -0
- package/widget/4780.index.js +1 -0
- package/widget/4895.index.js +1 -0
- package/widget/{790.index.js → 494.index.js} +1 -1
- package/widget/5012.index.js +1 -0
- package/widget/{4722.index.js → 5084.index.js} +1 -1
- package/widget/5285.index.js +1 -0
- package/widget/5376.index.js +1 -0
- package/widget/539.index.js +1 -0
- package/widget/5414.index.js +1 -0
- package/widget/{8980.index.js → 5513.index.js} +1 -1
- package/widget/5530.index.js +1 -0
- package/widget/5571.index.js +1 -0
- package/widget/{8540.index.js → 5592.index.js} +1 -1
- package/widget/5616.index.js +1 -0
- package/widget/{5903.index.js → 5662.index.js} +1 -1
- package/widget/{7109.index.js → 5665.index.js} +1 -1
- package/widget/{8792.index.js → 5681.index.js} +1 -1
- package/widget/5760.index.js +1 -0
- package/widget/{6257.index.js → 5811.index.js} +1 -1
- package/widget/{5054.index.js → 5826.index.js} +1 -1
- package/widget/{1560.index.js → 5877.index.js} +1 -1
- package/widget/{9149.index.js → 5944.index.js} +1 -1
- package/widget/{8341.index.js → 5977.index.js} +1 -1
- package/widget/{3646.index.js → 5993.index.js} +1 -1
- package/widget/{2009.index.js → 6007.index.js} +1 -1
- package/widget/{3852.index.js → 6033.index.js} +1 -1
- package/widget/{5567.index.js → 6101.index.js} +1 -1
- package/widget/6173.index.js +1 -0
- package/widget/623.index.js +1 -0
- package/widget/{7989.index.js → 6290.index.js} +1 -1
- package/widget/6328.index.js +1 -0
- package/widget/6353.index.js +1 -0
- package/widget/6364.index.js +1 -0
- package/widget/{7387.index.js → 6400.index.js} +1 -1
- package/widget/{5473.index.js → 6462.index.js} +1 -1
- package/widget/6463.index.js +1 -0
- package/widget/6467.index.js +1 -0
- package/widget/{6622.index.js → 6481.index.js} +1 -1
- package/widget/{4888.index.js → 6605.index.js} +1 -1
- package/widget/{2966.index.js → 6803.index.js} +1 -1
- package/widget/{5627.index.js → 6847.index.js} +1 -1
- package/widget/6887.index.js +1 -0
- package/widget/{2019.index.js → 7081.index.js} +1 -1
- package/widget/7205.index.js +1 -0
- package/widget/{5596.index.js → 7250.index.js} +1 -1
- package/widget/{7763.index.js → 7317.index.js} +1 -1
- package/widget/7329.index.js +1 -0
- package/widget/{5159.index.js → 7406.index.js} +1 -1
- package/widget/{7632.index.js → 7409.index.js} +1 -1
- package/widget/{3783.index.js → 7420.index.js} +1 -1
- package/widget/{7101.index.js → 7439.index.js} +1 -1
- package/widget/7458.index.js +1 -0
- package/widget/7570.index.js +1 -0
- package/widget/7627.index.js +1 -0
- package/widget/{9197.index.js → 7674.index.js} +1 -1
- package/widget/{5805.index.js → 7690.index.js} +1 -1
- package/widget/{2641.index.js → 7741.index.js} +1 -1
- package/widget/{4724.index.js → 7933.index.js} +1 -1
- package/widget/{9132.index.js → 8003.index.js} +1 -1
- package/widget/813.index.js +1 -0
- package/widget/{6513.index.js → 8142.index.js} +1 -1
- package/widget/{8562.index.js → 8298.index.js} +1 -1
- package/widget/{7200.index.js → 8361.index.js} +1 -1
- package/widget/{4855.index.js → 8418.index.js} +1 -1
- package/widget/8446.index.js +1 -0
- package/widget/860.index.js +1 -0
- package/widget/{1796.index.js → 8615.index.js} +1 -1
- package/widget/{6312.index.js → 8660.index.js} +1 -1
- package/widget/880.index.js +1 -0
- package/widget/8804.index.js +1 -0
- package/widget/8809.index.js +1 -0
- package/widget/{9157.index.js → 8928.index.js} +1 -1
- package/widget/912.index.js +1 -0
- package/widget/9160.index.js +1 -0
- package/widget/{5914.index.js → 9252.index.js} +1 -1
- package/widget/{3706.index.js → 9286.index.js} +1 -1
- package/widget/{2502.index.js → 9294.index.js} +1 -1
- package/widget/9340.index.js +1 -0
- package/widget/{9182.index.js → 9423.index.js} +1 -1
- package/widget/{8477.index.js → 9464.index.js} +1 -1
- package/widget/950.index.js +1 -0
- package/widget/952.index.js +1 -0
- package/widget/9677.index.js +1 -0
- package/widget/9751.index.js +1 -0
- package/widget/{3220.index.js → 9836.index.js} +1 -1
- package/widget/{2376.index.js → 9865.index.js} +1 -1
- package/widget/{5109.index.js → 9881.index.js} +1 -1
- package/widget/9911.index.js +1 -1
- package/widget/{7822.index.js → 9964.index.js} +1 -1
- package/widget/9979.index.js +1 -0
- package/widget/{9091.index.js → 9990.index.js} +1 -1
- package/widget/9998.index.js +1 -0
- package/widget/index.js +1 -1
- package/widget/1113.index.js +0 -1
- package/widget/123.index.js +0 -1
- package/widget/1573.index.js +0 -1
- package/widget/2030.index.js +0 -1
- package/widget/229.index.js +0 -1
- package/widget/261.index.js +0 -1
- package/widget/302.index.js +0 -1
- package/widget/3035.index.js +0 -1
- package/widget/313.index.js +0 -1
- package/widget/3521.index.js +0 -1
- package/widget/3864.index.js +0 -1
- package/widget/3939.index.js +0 -1
- package/widget/4017.index.js +0 -1
- package/widget/4149.index.js +0 -1
- package/widget/4502.index.js +0 -1
- package/widget/466.index.js +0 -1
- package/widget/504.index.js +0 -1
- package/widget/5321.index.js +0 -1
- package/widget/5742.index.js +0 -1
- package/widget/5817.index.js +0 -1
- package/widget/600.index.js +0 -1
- package/widget/6023.index.js +0 -1
- package/widget/6159.index.js +0 -1
- package/widget/617.index.js +0 -1
- package/widget/6183.index.js +0 -1
- package/widget/6509.index.js +0 -1
- package/widget/6636.index.js +0 -1
- package/widget/6831.index.js +0 -1
- package/widget/6953.index.js +0 -1
- package/widget/7296.index.js +0 -1
- package/widget/7486.index.js +0 -1
- package/widget/7496.index.js +0 -1
- package/widget/7553.index.js +0 -1
- package/widget/758.index.js +0 -1
- package/widget/772.index.js +0 -1
- package/widget/7797.index.js +0 -1
- package/widget/8066.index.js +0 -1
- package/widget/8507.index.js +0 -1
- package/widget/8529.index.js +0 -1
- package/widget/8727.index.js +0 -1
- package/widget/8864.index.js +0 -1
- package/widget/8889.index.js +0 -1
- package/widget/953.index.js +0 -1
- package/widget/9670.index.js +0 -1
- package/widget/9682.index.js +0 -1
- package/widget/9928.index.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactPlayer.js","sourceRoot":"../../../../src","sources":["components/ReactPlayer/ReactPlayer.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,6CAA2C;AAC3C,6CAAuC;AACvC,0EAAuC;AACvC,wEAAuC;AAEvC,wEAA0D;AAC1D,sEAAwD;AACxD,gDAAmD;AACnD,kDAasB;AACtB,gDAAkC;AAElC,uFAAoD;AACpD,0CAA4B;AAC5B,sCAA2C;AAC3C,gDAAwD;AAIxD,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,aAAa,CAAC,CAAC;AAE/B,MAAM,GAAG,GAAG,EAAE,CAAC;AAqBf,8CAA8C;AACjC,QAAA,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAC5C,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;IACjB,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IACjD,MAAM,EACF,GAAG,EACH,aAAa,EACb,IAAI,GAAG,KAAK,EACZ,QAAQ,GAAG,+BAAsB,CAAC,OAAO,EACzC,qBAAqB,GAAG,EAAE,EAC1B,KAAK,EAAE,cAAc,GAAG,KAAK,EAC7B,WAAW,EACX,UAAU,EACV,SAAS,EACT,0BAA0B,EAC1B,WAAW,EACX,cAAc,EACd,eAAe,EACf,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EACT,OAAO,GAAG,IAAI,GACjB,GAAG,KAAK,CAAC;IAEV,MAAM,EACF,IAAI,GAAG,uBAAc,CAAC,OAAO,EAC7B,KAAK,GAAG,yBAAgB,CAAC,IAAI,EAC7B,IAAI,EACJ,SAAS,EAAE,eAAe,GAC7B,GAAG,UAAU,IAAK,EAAsB,CAAC;IAC1C,MAAM,EACF,IAAI,EAAE,kBAAkB,GAAG,2BAAkB,CAAC,cAAc,EAC5D,eAAe,EACf,WAAW,GAAG,wCAA+B,CAAC,MAAM,GACvD,GAAG,qBAAqB,CAAC;IAE1B,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,QAAQ,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,cAAc,IAAI,QAAQ,CAAC;IAExC,MAAM,EAAC,eAAe,EAAE,QAAQ,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,2BAAY,CAAC,CAAC;IAEnE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAoB,IAAI,CAAC,CAAC;IAExD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAe,CAAC;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IACpE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAU,CAAC;IAC/D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAU,KAAK,CAAC,CAAC;IACzD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEvD,IAAA,gBAAQ,EAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,0BAAkB,EAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAErE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,eAAe,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IACtB,MAAM,eAAe,GAAG,IAAA,oBAAY,EAAC,0BAAiB,CAAC,mBAAmB,CAAC,CAAC;IAE5E,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE;QACtC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;QACX,CAAC;QAED,IAAI,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAAC;QAClC,MAAM,aAAa,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACpD,IAAI,IAAA,iCAAuB,EAAC,aAAa,CAAC,EAAE,CAAC;YACzC,CAAC,EAAC,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAC,GAAG,aAAa,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACJ,oEAAoE;YACpE,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAC,GAAG,aAAa,CAAC,CAAC;QACtD,CAAC;QAED,6CAA6C;QAC7C,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;YAC9B,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;YAChC,gBAAgB,EAAE,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC;SACzD,CAAC;IACN,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACL,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,WAAW,EAAE,CAAC;YACd,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAE7B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;YACxB,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEnC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;YACxB,UAAU,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEzB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YAChD,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,UAAU,GAAG,IAAA,kBAAQ,EAAC,GAAG,EAAE;YAC7B,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,iDAAiD;gBACjD,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACpD,MAAM,EAAC,WAAW,EAAE,YAAY,EAAC,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACpE,MAAM,QAAQ,GACV,aAAa,CAAC,WAAW;oBACzB,UAAU,CAAC,WAAW,CAAC;oBACvB,UAAU,CAAC,YAAY,CAAC,CAAC;gBAE7B,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACnB,gBAAgB,CACZ,IAAI,CAAC,KAAK,CACN,SAAS,CAAC,QAAQ,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CACtE,CACJ,CAAC;YACN,CAAC;QACL,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,UAAU,EAAE,CAAC;QACb,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAC/D,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACrD,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAC5B,GAAG,EAAE,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,6BAAoB,CAAC,IAAI,CAAC,EACtF,CAAC,WAAW,CAAC,CAChB,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAC5B,GAAG,EAAE,CAAC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,6BAAoB,CAAC,IAAI,CAAC,EACtF,CAAC,WAAW,CAAC,CAChB,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,iBAAiB,CAAC;QAEtB,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,uBAAc,CAAC,IAAI;gBACpB,iBAAiB,GAAG,IAAI,CAAC;gBACzB,MAAM;YACV,KAAK,uBAAc,CAAC,OAAO,CAAC;YAC5B;gBACI,iBAAiB,GAAG,uBAAC,YAAI,IAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAQ,EAAE,IAAI,EAAE,EAAE,GAAI,CAAC;gBAC7E,MAAM;QACd,CAAC;QAED,OAAO,CACH,mCACI,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAC,EAAE,eAAe,CAAC,gBACzD,IAAA,WAAI,EAAC,MAAM,CAAC,EACxB,GAAG,EAAE,SAAS,YAEb,iBAAiB,GACb,CACZ,CAAC;IACN,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;IAEzC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAChC,CAAC,OAAgB,EAAE,EAAE;QACjB,IACI,OAAO;YACP,SAAS;YACT,QAAQ,KAAK,+BAAsB,CAAC,MAAM;YAC1C,kBAAkB,KAAK,2BAAkB,CAAC,cAAc,EAC1D,CAAC;YACC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QACjD,eAAe,CAAC,MAAM,CAAC,CAAC;QAExB,IAAI,OAAO,EAAE,CAAC;YACV,QAAQ,CAAC,EAAC,eAAe,EAAE,GAAG,CAAC,OAAO,EAAC,CAAC,CAAC;QAC7C,CAAC;QAED,sEAAsE;QACtE,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC,EACD;QACI,SAAS;QACT,kBAAkB;QAClB,UAAU;QACV,UAAU;QACV,eAAe;QACf,QAAQ;QACR,QAAQ;KACX,CACJ,CAAC;IAEF,MAAM,kBAAkB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC9C,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,cAAc,aAAd,cAAc,uBAAd,cAAc,EAAI,CAAC;QAEnB,eAAe,CAAC,UAAU,CAAC,CAAC;IAChC,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnC,wCAAwC;QACxC,IACI,QAAQ,KAAK,+BAAsB,CAAC,MAAM;YAC1C,kBAAkB,KAAK,2BAAkB,CAAC,cAAc,EAC1D,CAAC;YACC,YAAY,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;IAE/B,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAClC,YAAY,CAAC,IAAI,CAAC,CAAC;QAEnB,IACI,QAAQ,KAAK,+BAAsB,CAAC,MAAM;YAC1C,kBAAkB,KAAK,2BAAkB,CAAC,cAAc,EAC1D,CAAC;YACC,IAAI,KAAK,EAAE,CAAC;gBACR,UAAU,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,UAAU,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;YACD,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACL,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAExE,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,MAAmB,EAAE,EAAE;QACtD,YAAY,CAAC,MAAM,CAAC,CAAC;QACrB,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,YAAY,CAAC,UAAgC,CAAC;QACjE,MAAM,WAAW,GAAG,YAAY,CAAC,WAAiC,CAAC;QACnE,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;YAC5B,cAAc,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAyB,EAAE,EAAE;QAC/D,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAElC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACnC,oEAAoE;QACpE,sDAAsD;QACtD,8EAA8E;QAC9E,IAAI,IAAI,EAAE,CAAC;YACP,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACpB,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAEtB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACvC,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACd,CAAC;aAAM,CAAC;YACJ,MAAM,EAAE,CAAC;QACb,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEjC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;;QACvC,MAAA,SAAS,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;QAE3B,IAAI,QAAQ,KAAK,+BAAsB,CAAC,MAAM,EAAE,CAAC;YAC7C,IAAI,kBAAkB,KAAK,2BAAkB,CAAC,cAAc,EAAE,CAAC;gBAC3D,UAAU,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACJ,WAAW,EAAE,CAAC;YAClB,CAAC;QACL,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;IAEnE,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAsB,EAAE,EAAE;;QAC/D,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAEhC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YAClB,MAAA,SAAS,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;QAC/B,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAElE,OAAO,CACH,gCACI,SAAS,EAAE,CAAC,CACR;YACI,OAAO,EAAE,CAAC,aAAa;YACvB,QAAQ;YACR,OAAO;YACP,YAAY,EAAE,SAAS;SAC1B,EACD,SAAS,CACZ,EACD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,SAAS,EACvB,YAAY,EAAE,UAAU,EACxB,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,aAAa,EACxB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,YAEV,SAAS,CAAC,CAAC,CAAC,CACT,wBAAC,KAAK,CAAC,QAAQ,eACX,uBAAC,sBAAW,IACR,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EACtB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,KAAK,+BAAsB,CAAC,OAAO,EACrD,MAAM,EAAE,aAAa,IAAI,MAAM,EAC/B,KAAK,EAAE,KAAK,IAAI,MAAM,EACtB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,GAAG,EACrB,cAAc,EAAE,kBAAkB,EAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EACH,QAAQ,IAAI,kBAAkB,KAAK,2BAAkB,CAAC,cAAc;wBAChE,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,OAAO,EAEjB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,gBACJ,SAAS,EACrB,eAAe,EAAE,CAAC,CAAC,EACnB,MAAM,EAAE;wBACJ,IAAI,EAAE;4BACF,UAAU,EAAE;gCACR,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gCACnC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;gCACtC,uBAAuB,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;6BACrD;yBACJ;qBACJ,GACH,EACD,QAAQ,KAAK,+BAAsB,CAAC,MAAM,IAAI,CAC3C,uBAAC,2BAAiB,IACd,SAAS,EAAE,0BAA0B,EACrC,IAAI,EAAE;wBACF,OAAO,EAAE,KAAK;wBACd,UAAU,EAAE,CAAC,KAAuB,EAAE,EAAE;4BACpC,KAAK,CAAC,eAAe,EAAE,CAAC;4BACxB,UAAU,CAAC,KAAK,CAAC,CAAC;wBACtB,CAAC;qBACJ,EACD,kBAAkB,EAAE,aAAa,EACjC,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,CAAC,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,EAC3D,WAAW,EAAE,WAAW,GAC1B,CACL,IACY,CACpB,CAAC,CAAC,CAAC,IAAI,GACN,CACT,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,SAAS,SAAS,CAAC,KAAa,EAAE,QAAgB,CAAC,GAAG,EAAE;IACpD,OAAO,KAAK,GAAG,KAAK,CAAC;AACzB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB;IAC1C,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAE5C,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,OAAO,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;AACvF,CAAC;AAED,kBAAe,wBAAgB,CAAC","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\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';\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"]}
|
|
@@ -5,9 +5,8 @@ exports.checkYoutubeVideos = void 0;
|
|
|
5
5
|
const LIVE_YUOTUBE_VIDEO_REGEX = /(?:youtu\.be\/live\/|youtube(?:-nocookie)?\.com\/(?:live\/))((\w|-){11})/;
|
|
6
6
|
const YOUTUBE_VIDEO_TEMPLATE = 'https://www.youtube.com/watch?v=';
|
|
7
7
|
const transformYoutubeUrl = (src) => {
|
|
8
|
-
var _a;
|
|
9
8
|
if (LIVE_YUOTUBE_VIDEO_REGEX.test(src)) {
|
|
10
|
-
const youtubeLiveId =
|
|
9
|
+
const youtubeLiveId = src.match(LIVE_YUOTUBE_VIDEO_REGEX)?.[1];
|
|
11
10
|
if (!youtubeLiveId) {
|
|
12
11
|
return src;
|
|
13
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"../../../../src","sources":["components/ReactPlayer/utils.ts"],"names":[],"mappings":";;;AAAA,8DAA8D;AAC9D,MAAM,wBAAwB,GAC1B,0EAA0E,CAAC;AAC/E,MAAM,sBAAsB,GAAG,kCAAkC,CAAC;AAElE,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAE,EAAE
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"../../../../src","sources":["components/ReactPlayer/utils.ts"],"names":[],"mappings":";;;AAAA,8DAA8D;AAC9D,MAAM,wBAAwB,GAC1B,0EAA0E,CAAC;AAC/E,MAAM,sBAAsB,GAAG,kCAAkC,CAAC;AAElE,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAE,EAAE;IACxC,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,OAAO,GAAG,CAAC;QACf,CAAC;QAED,OAAO,GAAG,sBAAsB,GAAG,aAAa,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAG,CAAC,GAAsB,EAAE,EAAE;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B","sourcesContent":["// the file serves to support live video with react-player@2.9\nconst LIVE_YUOTUBE_VIDEO_REGEX =\n /(?:youtu\\.be\\/live\\/|youtube(?:-nocookie)?\\.com\\/(?:live\\/))((\\w|-){11})/;\nconst YOUTUBE_VIDEO_TEMPLATE = 'https://www.youtube.com/watch?v=';\n\nconst transformYoutubeUrl = (src: string) => {\n if (LIVE_YUOTUBE_VIDEO_REGEX.test(src)) {\n const youtubeLiveId = src.match(LIVE_YUOTUBE_VIDEO_REGEX)?.[1];\n if (!youtubeLiveId) {\n return src;\n }\n\n return `${YOUTUBE_VIDEO_TEMPLATE}${youtubeLiveId}`;\n }\n\n return src;\n};\n\nexport const checkYoutubeVideos = (src: string | string[]) => {\n if (Array.isArray(src)) {\n return src.map((videoUrl) => transformYoutubeUrl(videoUrl));\n }\n\n return transformYoutubeUrl(src);\n};\n"]}
|
|
@@ -11,8 +11,8 @@ const Title = ({ title, subtitle, className, colSizes = { all: 12, sm: 8 }, id,
|
|
|
11
11
|
if (!title && !subtitle) {
|
|
12
12
|
return null;
|
|
13
13
|
}
|
|
14
|
-
const
|
|
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,
|
|
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 } }) }) }))] }));
|
|
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,8CAAoD;AAEpD,gDAAkC;AAClC,qFAAkD;AAElD,uEAAoC;AAIpC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAOzB,MAAM,KAAK,GAAG,CAAC,EACX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAC,EAC3B,EAAE,GACwB,EAAE,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,
|
|
1
|
+
{"version":3,"file":"Title.js","sourceRoot":"../../../../src","sources":["components/Title/Title.tsx"],"names":[],"mappings":";;;;AAAA,8CAAoD;AAEpD,gDAAkC;AAClC,qFAAkD;AAElD,uEAAoC;AAIpC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAOzB,MAAM,KAAK,GAAG,CAAC,EACX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAC,EAC3B,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,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,uBAAC,mBAAS,IAAC,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,GACvC,CACT,EACA,QAAQ,IAAI,CACT,uBAAC,UAAG,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,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} 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 id?: string;\n}\n\nconst Title = ({\n title,\n subtitle,\n className,\n colSizes = {all: 12, sm: 8},\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 reset sizes={colSizes}>\n <TitleItem text={text} {...titleProps} />\n </Col>\n )}\n {subtitle && (\n <Col reset sizes={colSizes}>\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"]}
|
|
@@ -38,7 +38,7 @@ const TitleItem = (props) => {
|
|
|
38
38
|
content = textMarkup;
|
|
39
39
|
}
|
|
40
40
|
else if (url) {
|
|
41
|
-
content = ((0, jsx_runtime_1.jsx)("a",
|
|
41
|
+
content = ((0, jsx_runtime_1.jsx)("a", { className: b('link'), href: url, ...(0, utils_1.getLinkProps)(url, hostname), onClick: onClick, title: urlTitle, children: insideClickableContent }));
|
|
42
42
|
}
|
|
43
43
|
else if (onClick) {
|
|
44
44
|
content = ((0, jsx_runtime_1.jsx)("button", { className: b('link'), onClick: onClick, title: urlTitle, children: insideClickableContent }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TitleItem.js","sourceRoot":"../../../../src","sources":["components/Title/TitleItem.tsx"],"names":[],"mappings":";;AAaA,oCAcC;;;AA3BD,qDAA+B;AAE/B,mCAA4C;AAC5C,4EAA8D;AAC9D,wEAA0D;AAE1D,gDAA8D;AAC9D,yEAAsC;AAItC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,YAAY,CAAC,CAAC;AAE9B,SAAgB,YAAY,CAAC,IAAc,EAAE,QAAiB;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,IAAI;YACL,OAAO,EAAE,CAAC;QACd,KAAK,GAAG;YACJ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC;QACV,KAAK,GAAG;YACJ,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,KAAK,GAAG;YACJ,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B;YACI,OAAO,EAAE,CAAC;IAClB,CAAC;AACL,CAAC;AAQD,MAAM,SAAS,GAAG,CAAC,KAAyB,EAAE,EAAE;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IAEjD,MAAM,EACF,QAAQ,GAAG,GAAG,EACd,IAAI,EACJ,MAAM,EACN,OAAO,EACP,GAAG,EACH,OAAO,EACP,MAAM,EACN,SAAS,EACT,EAAE,EACF,WAAW,GAAG,IAAI,EAClB,QAAQ,GACX,GAAG,KAAK,CAAC;IAEV,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,iCAAe,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,CACf,wBAAC,KAAK,CAAC,QAAQ,eACX,uBAAC,cAAU,IACP,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,EAC3B,OAAO,EAAE,IAAI,EACb,SAAS,EAAE;oBACP,WAAW,EAAE,IAAI;iBACpB,GACH,EACD,MAAM,IAAI,CACP,wBAAC,KAAK,CAAC,QAAQ,yBAEX,iCAAM,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,MAAM,GAAQ,IAChC,CACpB,IACY,CACpB,CAAC;IACF,IAAI,OAAwB,CAAC;IAE7B,MAAM,sBAAsB,GAAG,CAC3B,kCAAM,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,aACxB,UAAU,YAEX,uBAAC,eAAW,IACR,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,CAAC,EACvC,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,EACtC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAC,YAAY,EACrB,IAAI,EAAE,KAAK,GACb,IACC,CACV,CAAC;IAEF,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,GAAG,UAAU,CAAC;IACzB,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACb,OAAO,GAAG,CACN,
|
|
1
|
+
{"version":3,"file":"TitleItem.js","sourceRoot":"../../../../src","sources":["components/Title/TitleItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {ToggleArrow, YFMWrapper} from '../';\nimport {LocationContext} from '../../context/locationContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {QAProps, TextSize, TitleItemProps} from '../../models';\nimport {block, getHeaderTag, getLinkProps} from '../../utils';\nimport Anchor from '../Anchor/Anchor';\n\nimport './TitleItem.scss';\n\nconst b = block('title-item');\n\nexport function getArrowSize(size: TextSize, isMobile: boolean) {\n switch (size) {\n case 'xs':\n return 13;\n case 's':\n return 16;\n case 'sm':\n case 'm':\n return isMobile ? 22 : 24;\n case 'l':\n return isMobile ? 26 : 38;\n default:\n return 20;\n }\n}\n\nexport interface TitleItemFullProps extends TitleItemProps, QAProps {\n className?: string;\n onClick?: () => void;\n resetMargin?: boolean;\n}\n\nconst TitleItem = (props: TitleItemFullProps) => {\n const isMobile = React.useContext(MobileContext);\n\n const {\n textSize = 'm',\n text,\n anchor,\n justify,\n url,\n onClick,\n custom,\n className,\n qa,\n resetMargin = true,\n urlTitle,\n } = props;\n\n const {hostname} = React.useContext(LocationContext);\n const textMarkup = (\n <React.Fragment>\n <YFMWrapper\n className={b('text')}\n contentClassName={b('text')}\n content={text}\n modifiers={{\n constructor: true,\n }}\n />\n {custom && (\n <React.Fragment>\n \n <span className={b('custom')}>{custom}</span>\n </React.Fragment>\n )}\n </React.Fragment>\n );\n let content: React.ReactNode;\n\n const insideClickableContent = (\n <span className={b('wrapper')}>\n {textMarkup}\n \n <ToggleArrow\n className={b('arrow', {size: textSize})}\n size={getArrowSize(textSize, isMobile)}\n type={'horizontal'}\n iconType=\"navigation\"\n open={false}\n />\n </span>\n );\n\n if (!url && !onClick) {\n content = textMarkup;\n } else if (url) {\n content = (\n <a\n className={b('link')}\n href={url}\n {...getLinkProps(url, hostname)}\n onClick={onClick}\n title={urlTitle}\n >\n {insideClickableContent}\n </a>\n );\n } else if (onClick) {\n content = (\n <button className={b('link')} onClick={onClick} title={urlTitle}>\n {insideClickableContent}\n </button>\n );\n }\n\n return (\n <React.Fragment>\n {anchor && <Anchor id={anchor} className={b('anchor')} />}\n {React.createElement(\n getHeaderTag(textSize),\n {\n className: b({size: textSize, justify, 'reset-margin': resetMargin}, className),\n 'data-qa': `${qa}-header`,\n },\n content,\n )}\n </React.Fragment>\n );\n};\n\nexport default TitleItem;\n"]}
|
|
@@ -34,7 +34,7 @@ function getYoutubeVideoSrc(stream, record) {
|
|
|
34
34
|
const [videoLink, url, re] = stream
|
|
35
35
|
? [stream, STREAM_URL, STREAM_RE]
|
|
36
36
|
: [record, RECORD_URL, RECORD_RE];
|
|
37
|
-
const match = videoLink
|
|
37
|
+
const match = videoLink?.match(re);
|
|
38
38
|
let src;
|
|
39
39
|
if (match && match.length) {
|
|
40
40
|
src = url + match[0];
|
|
@@ -58,13 +58,16 @@ const VideoBlock = (props) => {
|
|
|
58
58
|
if (src && isPlaying) {
|
|
59
59
|
try {
|
|
60
60
|
const url = new URL(src);
|
|
61
|
-
const searchParams = (0, utils_1.getPageSearchParams)(
|
|
61
|
+
const searchParams = (0, utils_1.getPageSearchParams)({
|
|
62
|
+
...(attributes || {}),
|
|
63
|
+
...(previewImg || autoplay ? exports.AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),
|
|
64
|
+
});
|
|
62
65
|
searchParams.forEach((value, key) => {
|
|
63
66
|
url.searchParams.set(key, value);
|
|
64
67
|
});
|
|
65
68
|
return url.href;
|
|
66
69
|
}
|
|
67
|
-
catch
|
|
70
|
+
catch {
|
|
68
71
|
return src;
|
|
69
72
|
}
|
|
70
73
|
}
|
|
@@ -87,7 +90,7 @@ const VideoBlock = (props) => {
|
|
|
87
90
|
};
|
|
88
91
|
}, [height]);
|
|
89
92
|
const iframeContent = React.useMemo(() => {
|
|
90
|
-
return ((0, jsx_runtime_1.jsx)("iframe", { id: fullId, src: iframeSrc, width: "100%", height: "100%", title: (0, i18n_1.i18n)('iframe-title'), frameBorder: "0", allowFullScreen: true, allow: "autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock", loading: "lazy" }));
|
|
93
|
+
return ((0, jsx_runtime_1.jsx)("iframe", { id: fullId, src: iframeSrc, width: "100%", height: "100%", title: (0, i18n_1.i18n)('iframe-title'), frameBorder: "0", allowFullScreen: true, scrolling: "no", allow: "autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock", loading: "lazy" }));
|
|
91
94
|
}, [fullId, iframeSrc]);
|
|
92
95
|
React.useEffect(() => {
|
|
93
96
|
setHidePreview(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VideoBlock.js","sourceRoot":"../../../../src","sources":["components/VideoBlock/VideoBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon, useActionHandlers, useUniqId} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport {v4 as uuidv4} from 'uuid';\n\nimport {useAnalytics} from '../../hooks/useAnalytics';\nimport {AnalyticsEventsBase, DefaultEventNames} from '../../models/common';\nimport {block, getPageSearchParams} from '../../utils';\nimport Image from '../Image/Image';\n\nimport {i18n} from './i18n';\n\nimport './VideoBlock.scss';\n\nconst RECORD_URL = 'https://www.youtube.com/embed/';\nconst STREAM_URL = 'https://www.youtube.com/embed/live_stream?channel=';\nconst RECORD_RE = /[0-9A-Za-z_-]{11}/;\nconst STREAM_RE = /[0-9A-Za-z_-]{23,25}/;\nconst AUTOPLAY_DELAY = 300;\n\nexport const AUTOPLAY_ATTRIBUTES = {\n autoplay: 1,\n mute: 1,\n};\nconst NO_AUTOPLAY_ATTRIBUTES = {\n autoplay: 0,\n};\n\nconst b = block('VideoBlock');\n\nfunction getYoutubeVideoSrc(stream?: string, record?: string) {\n if (!stream && !record) {\n return null;\n }\n\n const [videoLink, url, re] = stream\n ? [stream, STREAM_URL, STREAM_RE]\n : [record, RECORD_URL, RECORD_RE];\n const match = videoLink?.match(re);\n let src;\n\n if (match && match.length) {\n src = url + match[0];\n }\n\n return src;\n}\n\nexport function getHeight(width: number): number {\n return (width / 16) * 9;\n}\n\nexport interface VideoBlockProps extends AnalyticsEventsBase {\n id?: string;\n stream?: string;\n record?: string;\n videoIframe?: string;\n attributes?: Record<string, string>;\n className?: string;\n previewImg?: string;\n playButton?: React.ReactNode;\n playButtonId?: string;\n height?: number;\n fullscreen?: boolean;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nconst VideoBlock = (props: VideoBlockProps) => {\n const {\n stream,\n record,\n videoIframe,\n attributes,\n className,\n id,\n previewImg,\n playButton,\n playButtonId,\n height,\n fullscreen,\n analyticsEvents,\n autoplay,\n onImageLoad,\n } = props;\n const handleAnalytics = useAnalytics(DefaultEventNames.VideoPreview);\n\n const src = videoIframe ? videoIframe : getYoutubeVideoSrc(stream, record);\n const ref = React.useRef<HTMLDivElement>(null);\n const [hidePreview, setHidePreview] = React.useState(false);\n const [currentHeight, setCurrentHeight] = React.useState(height || undefined);\n const fullId = React.useMemo(() => id || uuidv4(), [id]);\n const buttonId = useUniqId();\n\n const [isPlaying, setIsPlaying] = React.useState(!previewImg);\n\n const iframeSrc = React.useMemo(() => {\n if (src && isPlaying) {\n try {\n const url = new URL(src);\n const searchParams = getPageSearchParams({\n ...(attributes || {}),\n ...(previewImg || autoplay ? AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),\n });\n\n searchParams.forEach((value, key) => {\n url.searchParams.set(key, value);\n });\n\n return url.href;\n } catch (e) {\n return src;\n }\n }\n\n return undefined;\n }, [attributes, autoplay, isPlaying, previewImg, src]);\n\n const onPreviewClick = React.useCallback(() => {\n handleAnalytics(analyticsEvents);\n\n setIsPlaying(true);\n\n setTimeout(() => setHidePreview(true), AUTOPLAY_DELAY);\n }, [handleAnalytics, analyticsEvents]);\n\n const {onKeyDown: onPreviewKeyDown} = useActionHandlers(onPreviewClick);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n setCurrentHeight(\n ref.current ? Math.round(getHeight(ref.current.offsetWidth)) : undefined,\n );\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [height]);\n\n const iframeContent = React.useMemo(() => {\n return (\n <iframe\n id={fullId}\n src={iframeSrc}\n width=\"100%\"\n height=\"100%\"\n title={i18n('iframe-title')}\n frameBorder=\"0\"\n allowFullScreen={true}\n allow=\"autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock\"\n loading=\"lazy\"\n />\n );\n }, [fullId, iframeSrc]);\n\n React.useEffect(() => {\n setHidePreview(false);\n }, [src]);\n\n if (!src) {\n return null;\n }\n\n return (\n <div className={b(null, className)} style={{height: currentHeight}} ref={ref}>\n {iframeContent}\n {previewImg && !hidePreview && !fullscreen && (\n <div\n className={b('preview')}\n onClick={onPreviewClick}\n onKeyDown={onPreviewKeyDown}\n role=\"button\"\n tabIndex={0}\n aria-labelledby={playButton ? playButtonId : buttonId}\n >\n <Image\n src={previewImg}\n className={b('image')}\n containerClassName={b('image-wrapper')}\n onLoad={onImageLoad}\n />\n {playButton || (\n <button title=\"Play\" id={buttonId} className={b('button')}>\n <Icon className={b('icon')} data={PlayFill} size={24} />\n </button>\n )}\n </div>\n )}\n </div>\n );\n};\n\nexport default VideoBlock;\n"]}
|
|
1
|
+
{"version":3,"file":"VideoBlock.js","sourceRoot":"../../../../src","sources":["components/VideoBlock/VideoBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon, useActionHandlers, useUniqId} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport {v4 as uuidv4} from 'uuid';\n\nimport {useAnalytics} from '../../hooks/useAnalytics';\nimport {AnalyticsEventsBase, DefaultEventNames} from '../../models/common';\nimport {block, getPageSearchParams} from '../../utils';\nimport Image from '../Image/Image';\n\nimport {i18n} from './i18n';\n\nimport './VideoBlock.scss';\n\nconst RECORD_URL = 'https://www.youtube.com/embed/';\nconst STREAM_URL = 'https://www.youtube.com/embed/live_stream?channel=';\nconst RECORD_RE = /[0-9A-Za-z_-]{11}/;\nconst STREAM_RE = /[0-9A-Za-z_-]{23,25}/;\nconst AUTOPLAY_DELAY = 300;\n\nexport const AUTOPLAY_ATTRIBUTES = {\n autoplay: 1,\n mute: 1,\n};\nconst NO_AUTOPLAY_ATTRIBUTES = {\n autoplay: 0,\n};\n\nconst b = block('VideoBlock');\n\nfunction getYoutubeVideoSrc(stream?: string, record?: string) {\n if (!stream && !record) {\n return null;\n }\n\n const [videoLink, url, re] = stream\n ? [stream, STREAM_URL, STREAM_RE]\n : [record, RECORD_URL, RECORD_RE];\n const match = videoLink?.match(re);\n let src;\n\n if (match && match.length) {\n src = url + match[0];\n }\n\n return src;\n}\n\nexport function getHeight(width: number): number {\n return (width / 16) * 9;\n}\n\nexport interface VideoBlockProps extends AnalyticsEventsBase {\n id?: string;\n stream?: string;\n record?: string;\n videoIframe?: string;\n attributes?: Record<string, string>;\n className?: string;\n previewImg?: string;\n playButton?: React.ReactNode;\n playButtonId?: string;\n height?: number;\n fullscreen?: boolean;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nconst VideoBlock = (props: VideoBlockProps) => {\n const {\n stream,\n record,\n videoIframe,\n attributes,\n className,\n id,\n previewImg,\n playButton,\n playButtonId,\n height,\n fullscreen,\n analyticsEvents,\n autoplay,\n onImageLoad,\n } = props;\n const handleAnalytics = useAnalytics(DefaultEventNames.VideoPreview);\n\n const src = videoIframe ? videoIframe : getYoutubeVideoSrc(stream, record);\n const ref = React.useRef<HTMLDivElement>(null);\n const [hidePreview, setHidePreview] = React.useState(false);\n const [currentHeight, setCurrentHeight] = React.useState(height || undefined);\n const fullId = React.useMemo(() => id || uuidv4(), [id]);\n const buttonId = useUniqId();\n\n const [isPlaying, setIsPlaying] = React.useState(!previewImg);\n\n const iframeSrc = React.useMemo(() => {\n if (src && isPlaying) {\n try {\n const url = new URL(src);\n const searchParams = getPageSearchParams({\n ...(attributes || {}),\n ...(previewImg || autoplay ? AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),\n });\n\n searchParams.forEach((value, key) => {\n url.searchParams.set(key, value);\n });\n\n return url.href;\n } catch {\n return src;\n }\n }\n\n return undefined;\n }, [attributes, autoplay, isPlaying, previewImg, src]);\n\n const onPreviewClick = React.useCallback(() => {\n handleAnalytics(analyticsEvents);\n\n setIsPlaying(true);\n\n setTimeout(() => setHidePreview(true), AUTOPLAY_DELAY);\n }, [handleAnalytics, analyticsEvents]);\n\n const {onKeyDown: onPreviewKeyDown} = useActionHandlers(onPreviewClick);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n setCurrentHeight(\n ref.current ? Math.round(getHeight(ref.current.offsetWidth)) : undefined,\n );\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [height]);\n\n const iframeContent = React.useMemo(() => {\n return (\n <iframe\n id={fullId}\n src={iframeSrc}\n width=\"100%\"\n height=\"100%\"\n title={i18n('iframe-title')}\n frameBorder=\"0\"\n allowFullScreen={true}\n scrolling=\"no\"\n allow=\"autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock\"\n loading=\"lazy\"\n />\n );\n }, [fullId, iframeSrc]);\n\n React.useEffect(() => {\n setHidePreview(false);\n }, [src]);\n\n if (!src) {\n return null;\n }\n\n return (\n <div className={b(null, className)} style={{height: currentHeight}} ref={ref}>\n {iframeContent}\n {previewImg && !hidePreview && !fullscreen && (\n <div\n className={b('preview')}\n onClick={onPreviewClick}\n onKeyDown={onPreviewKeyDown}\n role=\"button\"\n tabIndex={0}\n aria-labelledby={playButton ? playButtonId : buttonId}\n >\n <Image\n src={previewImg}\n className={b('image')}\n containerClassName={b('image-wrapper')}\n onLoad={onImageLoad}\n />\n {playButton || (\n <button title=\"Play\" id={buttonId} className={b('button')}>\n <Icon className={b('icon')} data={PlayFill} size={24} />\n </button>\n )}\n </div>\n )}\n </div>\n );\n};\n\nexport default VideoBlock;\n"]}
|
|
@@ -6,9 +6,8 @@ const snakecase_keys_1 = tslib_1.__importDefault(require("snakecase-keys"));
|
|
|
6
6
|
const components_1 = require("../index.js");
|
|
7
7
|
const utils_1 = require("../../utils/index.js");
|
|
8
8
|
const yfm = (0, utils_1.cn)('yfm');
|
|
9
|
-
const YFMWrapper = (
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
9
|
+
const YFMWrapper = ({ contentClassName, modifiers, children, ...rest }) => (
|
|
10
|
+
// @ts-ignore HTML component accepts children prop in actual usage
|
|
11
|
+
(0, jsx_runtime_1.jsx)(components_1.HTML, { contentClassName: yfm(modifiers ? (0, snakecase_keys_1.default)(modifiers) : {}, contentClassName), ...rest, children: children }));
|
|
13
12
|
exports.default = YFMWrapper;
|
|
14
13
|
//# sourceMappingURL=YFMWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YFMWrapper.js","sourceRoot":"../../../../src","sources":["components/YFMWrapper/YFMWrapper.tsx"],"names":[],"mappings":";;;;AAIA,4EAAyC;AAEzC,4CAAsC;AAGtC,gDAA+B;AAG/B,MAAM,GAAG,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,CAAC;AActB,MAAM,UAAU,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"YFMWrapper.js","sourceRoot":"../../../../src","sources":["components/YFMWrapper/YFMWrapper.tsx"],"names":[],"mappings":";;;;AAIA,4EAAyC;AAEzC,4CAAsC;AAGtC,gDAA+B;AAG/B,MAAM,GAAG,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,CAAC;AActB,MAAM,UAAU,GAAG,CAAC,EAAC,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAkB,EAAE,EAAE,CAAC;AACtF,kEAAkE;AAClE,uBAAC,iBAAI,IACD,gBAAgB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,wBAAW,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,gBAAgB,CAAC,KAC5E,IAAI,YAEP,QAAQ,GACN,CACV,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["/* we won't use 'pc' class prefix here to let you opportunity to define yfm styles\nin your project via global 'yfm' class */\nimport * as React from 'react';\n\nimport toSnakeCase from 'snakecase-keys';\n\nimport {HTML} from '../../components';\nimport {ClassNameProps, Modifiers} from '../../models';\nimport {QAProps} from '../../models/common';\nimport {cn} from '../../utils';\nimport {HTMLExtraProps} from '../HTML/HTML';\n\nconst yfm = cn('yfm');\n\nexport interface YFMWrapperProps\n extends React.PropsWithChildren,\n ClassNameProps,\n QAProps,\n HTMLExtraProps,\n React.HTMLProps<{}> {\n content: string;\n modifiers?: Modifiers;\n itemProp?: string;\n id?: string;\n}\n\nconst YFMWrapper = ({contentClassName, modifiers, children, ...rest}: YFMWrapperProps) => (\n // @ts-ignore HTML component accepts children prop in actual usage\n <HTML\n contentClassName={yfm(modifiers ? toSnakeCase(modifiers) : {}, contentClassName)}\n {...rest}\n >\n {children}\n </HTML>\n);\n\nexport default YFMWrapper;\n"]}
|
|
@@ -10,6 +10,7 @@ const hooks_1 = require("../../hooks/index.js");
|
|
|
10
10
|
const common_1 = require("../../models/common.js");
|
|
11
11
|
const utils_1 = require("../../utils/index.js");
|
|
12
12
|
const constants_1 = require("../constants.js");
|
|
13
|
+
const projectSettingsContext_1 = require("../../context/projectSettingsContext/index.js");
|
|
13
14
|
exports.YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';
|
|
14
15
|
exports.YANDEX_FORM_SECTION = 'surveys';
|
|
15
16
|
const CONTAINER_ID = 'pc-yandex-form-container';
|
|
@@ -23,15 +24,19 @@ const YandexForm = (props) => {
|
|
|
23
24
|
const handleAnalytics = (0, hooks_1.useAnalytics)(common_1.DefaultEventNames.YandexFormSubmit);
|
|
24
25
|
const isMobile = React.useContext(mobileContext_1.MobileContext);
|
|
25
26
|
const locale = React.useContext(localeContext_1.LocaleContext);
|
|
27
|
+
const { defaultYandexFormTheme } = React.useContext(projectSettingsContext_1.ProjectSettingsContext);
|
|
26
28
|
const updateFormIframe = React.useCallback((container) => {
|
|
27
29
|
const queryParams = new URLSearchParams(location.search);
|
|
28
30
|
const url = location.origin + location.pathname;
|
|
31
|
+
const formTheme = theme || defaultYandexFormTheme;
|
|
29
32
|
queryParams.set('url', url);
|
|
30
33
|
queryParams.set('iframe', '1');
|
|
31
|
-
if (locale
|
|
34
|
+
if (locale?.lang) {
|
|
32
35
|
queryParams.set('lang', locale.lang);
|
|
33
36
|
}
|
|
34
|
-
|
|
37
|
+
if (formTheme) {
|
|
38
|
+
queryParams.set('theme', formTheme);
|
|
39
|
+
}
|
|
35
40
|
if (isMobile) {
|
|
36
41
|
queryParams.set('media-type', 'mobile');
|
|
37
42
|
}
|
|
@@ -55,7 +60,17 @@ const YandexForm = (props) => {
|
|
|
55
60
|
iframeRef.current.width = '100%';
|
|
56
61
|
container.appendChild(iframeRef.current);
|
|
57
62
|
}
|
|
58
|
-
}, [
|
|
63
|
+
}, [
|
|
64
|
+
theme,
|
|
65
|
+
defaultYandexFormTheme,
|
|
66
|
+
locale.lang,
|
|
67
|
+
isMobile,
|
|
68
|
+
params,
|
|
69
|
+
yaFormOrigin,
|
|
70
|
+
yaFormSection,
|
|
71
|
+
id,
|
|
72
|
+
containerId,
|
|
73
|
+
]);
|
|
59
74
|
const handleSubmit = React.useCallback(() => {
|
|
60
75
|
if (formContainerRef && formContainerRef.current) {
|
|
61
76
|
const { top } = formContainerRef.current.getBoundingClientRect();
|
|
@@ -79,7 +94,7 @@ const YandexForm = (props) => {
|
|
|
79
94
|
}
|
|
80
95
|
if (iframeRef.current && height && !message) {
|
|
81
96
|
iframeRef.current.height = `${height}px`;
|
|
82
|
-
onLoad
|
|
97
|
+
onLoad?.();
|
|
83
98
|
}
|
|
84
99
|
if (message === 'sent' || redirectUrl) {
|
|
85
100
|
// event with redirectUrl is comming when form with redirect is used
|
|
@@ -88,7 +103,7 @@ const YandexForm = (props) => {
|
|
|
88
103
|
handleSubmit();
|
|
89
104
|
}
|
|
90
105
|
}
|
|
91
|
-
catch
|
|
106
|
+
catch {
|
|
92
107
|
return;
|
|
93
108
|
}
|
|
94
109
|
}, [yaFormOrigin, id, onLoad, handleSubmit]);
|
|
@@ -103,7 +118,7 @@ const YandexForm = (props) => {
|
|
|
103
118
|
addIframe();
|
|
104
119
|
// Crunch for mobile chrome in lite mode
|
|
105
120
|
// https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1
|
|
106
|
-
setTimeout(() => onLoad
|
|
121
|
+
setTimeout(() => onLoad?.(), 1000);
|
|
107
122
|
return () => window.removeEventListener('message', handleMessage);
|
|
108
123
|
}, [id, addIframe, handleMessage, onLoad]);
|
|
109
124
|
return (0, jsx_runtime_1.jsx)("div", { ref: formContainerRef, className: b(null, className) });
|
|
@@ -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';\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\n const updateFormIframe = React.useCallback(\n (container: HTMLDivElement) => {\n const queryParams = new URLSearchParams(location.search);\n const url = location.origin + location.pathname;\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 queryParams.set('theme', theme || 'cloud-www');\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 [locale.lang, theme, isMobile, yaFormOrigin, yaFormSection, id, containerId, params],\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 (error) {\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 {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"]}
|
|
@@ -5,10 +5,14 @@ const common_1 = require("../../schema/validators/common.js");
|
|
|
5
5
|
exports.YandexFormProps = {
|
|
6
6
|
type: 'object',
|
|
7
7
|
required: ['id'],
|
|
8
|
-
properties:
|
|
8
|
+
properties: {
|
|
9
|
+
...common_1.BaseProps,
|
|
10
|
+
id: {
|
|
9
11
|
type: 'string',
|
|
10
|
-
},
|
|
12
|
+
},
|
|
13
|
+
containerId: {
|
|
11
14
|
type: 'string',
|
|
12
|
-
}
|
|
15
|
+
},
|
|
16
|
+
},
|
|
13
17
|
};
|
|
14
18
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["components/YandexForm/schema.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AAE5C,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["components/YandexForm/schema.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AAE5C,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE;QACR,GAAG,kBAAS;QACZ,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC","sourcesContent":["import {BaseProps} from '../../schema/validators/common';\n\nexport const YandexFormProps = {\n type: 'object',\n required: ['id'],\n properties: {\n ...BaseProps,\n id: {\n type: 'string',\n },\n containerId: {\n type: 'string',\n },\n },\n};\n"]}
|
|
@@ -3,6 +3,7 @@ export declare const blockMap: {
|
|
|
3
3
|
"extended-features-block": ({ title, description, items, colSizes, animated, }: import("./models/index.js").ExtendedFeaturesProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
"promo-features-block": (props: import("./models/index.js").PromoFeaturesProps) => import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
"questions-block": (props: import("./models/index.js").QuestionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
"foldable-list-block": (props: import("./models/index.js").FoldableListProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
7
|
"banner-block": (props: import("./models/index.js").BannerBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
8
|
"companies-block": ({ title, description, images, animated }: import("./models/index.js").CompaniesBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
9
|
"media-block": (props: import("./models/index.js").MediaBlockProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -12,6 +12,7 @@ exports.blockMap = {
|
|
|
12
12
|
[models_1.BlockType.ExtendedFeaturesBlock]: blocks_1.ExtendedFeaturesBlock,
|
|
13
13
|
[models_1.BlockType.PromoFeaturesBlock]: blocks_1.PromoFeaturesBlock,
|
|
14
14
|
[models_1.BlockType.QuestionsBlock]: blocks_1.QuestionsBlock,
|
|
15
|
+
[models_1.BlockType.FoldableListBlock]: blocks_1.FoldableListBlock,
|
|
15
16
|
[models_1.BlockType.BannerBlock]: blocks_1.BannerBlock,
|
|
16
17
|
[models_1.BlockType.CompaniesBlock]: blocks_1.CompaniesBlock,
|
|
17
18
|
[models_1.BlockType.MediaBlock]: blocks_1.MediaBlock,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constructor-items.js","sourceRoot":"../../src","sources":["constructor-items.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"constructor-items.js","sourceRoot":"../../src","sources":["constructor-items.ts"],"names":[],"mappings":";;;;AAAA,8CAsBkB;AAClB,8CAAqE;AACrE,oFAKgD;AAChD,0GAAuE;AACvE,sDAYsB;AAET,QAAA,QAAQ,GAAG;IACpB,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,qBAAqB,CAAC,EAAE,8BAAqB;IACxD,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,iBAAiB,CAAC,EAAE,0BAAiB;IAChD,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,iBAAiB,CAAC,EAAE,0BAAiB;IAChD,CAAC,kBAAS,CAAC,eAAe,CAAC,EAAE,wBAAe;IAC5C,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,QAAQ,CAAC,EAAE,iBAAQ;IAC9B,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;CACvC,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,aAAa,CAAC,EAAE,0BAAa;IAC3C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,cAAc,CAAC,EAAE,2BAAc;IAC7C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,KAAK,CAAC,EAAE,kBAAK;IAC3B,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;CACtC,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,iCAAgB;IAC7C,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,oBAAU;IACvC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,EAAE,mCAAkB;IACjD,CAAC,2BAAkB,CAAC,IAAI,CAAC,EAAE,+BAAc;IACzC,CAAC,2BAAkB,CAAC,YAAY,CAAC,EAAE,6BAAY;CAClD,CAAC","sourcesContent":["import {\n BannerBlock,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FoldableListBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderOldBlock,\n TableBlock,\n TabsBlock,\n} from './blocks';\nimport {BlockType, NavigationItemType, SubBlockType} from './models';\nimport {\n GithubButton,\n NavigationButton,\n NavigationDropdown,\n NavigationLink,\n} from './navigation/components/NavigationItem';\nimport SocialIcon from './navigation/components/SocialIcon/SocialIcon';\nimport {\n BackgroundCard,\n BannerCard,\n BasicCard,\n Content,\n Divider,\n ImageCard,\n LayoutItem,\n MediaCard,\n PriceCard,\n PriceDetailed,\n Quote,\n} from './sub-blocks';\n\nexport const blockMap = {\n [BlockType.SliderOldBlock]: SliderOldBlock,\n [BlockType.ExtendedFeaturesBlock]: ExtendedFeaturesBlock,\n [BlockType.PromoFeaturesBlock]: PromoFeaturesBlock,\n [BlockType.QuestionsBlock]: QuestionsBlock,\n [BlockType.FoldableListBlock]: FoldableListBlock,\n [BlockType.BannerBlock]: BannerBlock,\n [BlockType.CompaniesBlock]: CompaniesBlock,\n [BlockType.MediaBlock]: MediaBlock,\n [BlockType.InfoBlock]: InfoBlock,\n [BlockType.TableBlock]: TableBlock,\n [BlockType.TabsBlock]: TabsBlock,\n [BlockType.HeaderBlock]: HeaderBlock,\n [BlockType.IconsBlock]: IconsBlock,\n [BlockType.HeaderSliderBlock]: HeaderSliderBlock,\n [BlockType.CardLayoutBlock]: CardLayoutBlock,\n [BlockType.ContentLayoutBlock]: ContentLayoutBlock,\n [BlockType.ShareBlock]: ShareBlock,\n [BlockType.MapBlock]: MapBlock,\n [BlockType.FilterBlock]: FilterBlock,\n [BlockType.FormBlock]: FormBlock,\n [BlockType.SliderBlock]: SliderBlock,\n};\n\nexport const subBlockMap = {\n [SubBlockType.Divider]: Divider,\n [SubBlockType.PriceDetailed]: PriceDetailed,\n [SubBlockType.MediaCard]: MediaCard,\n [SubBlockType.BannerCard]: BannerCard,\n [SubBlockType.LayoutItem]: LayoutItem,\n [SubBlockType.BackgroundCard]: BackgroundCard,\n [SubBlockType.BasicCard]: BasicCard,\n [SubBlockType.Content]: Content,\n [SubBlockType.Quote]: Quote,\n [SubBlockType.PriceCard]: PriceCard,\n [SubBlockType.ImageCard]: ImageCard,\n};\n\nexport const navItemMap = {\n [NavigationItemType.Button]: NavigationButton,\n [NavigationItemType.Social]: SocialIcon,\n [NavigationItemType.Dropdown]: NavigationDropdown,\n [NavigationItemType.Link]: NavigationLink,\n [NavigationItemType.GithubButton]: GithubButton,\n};\n"]}
|
|
@@ -24,11 +24,11 @@ const Loadable = (props) => {
|
|
|
24
24
|
setDataState({ loading: true, error: false });
|
|
25
25
|
let data, error;
|
|
26
26
|
try {
|
|
27
|
-
data = await fetch(
|
|
27
|
+
data = await fetch({ blockKey, serviceId, ...(params ?? {}) });
|
|
28
28
|
error = false;
|
|
29
29
|
setDataState({ data, loading: false, error });
|
|
30
30
|
}
|
|
31
|
-
catch
|
|
31
|
+
catch {
|
|
32
32
|
error = true;
|
|
33
33
|
setDataState({ loading: false, error });
|
|
34
34
|
}
|
|
@@ -39,8 +39,8 @@ const Loadable = (props) => {
|
|
|
39
39
|
if (loading) {
|
|
40
40
|
return ((0, jsx_runtime_1.jsx)("div", { className: b('loader'), children: (0, jsx_runtime_1.jsx)(uikit_1.Spin, { size: "xl" }) }));
|
|
41
41
|
}
|
|
42
|
-
return ((0, jsx_runtime_1.jsx)(ErrorWrapper_1.default, { isError: error, text: (0, i18n_1.i18n)('loadable-load-error'), buttonText: (0, i18n_1.i18n)('loadable-try-again'), handler: onTryAgain, children: (0, jsx_runtime_1.jsx)(Component,
|
|
43
|
-
(Array.isArray(data) ? (data.map((componentData, index) => ((0, jsx_runtime_1.jsx)(ChildComponent,
|
|
42
|
+
return ((0, jsx_runtime_1.jsx)(ErrorWrapper_1.default, { isError: error, text: (0, i18n_1.i18n)('loadable-load-error'), buttonText: (0, i18n_1.i18n)('loadable-try-again'), handler: onTryAgain, children: (0, jsx_runtime_1.jsx)(Component, { ...block, children: data &&
|
|
43
|
+
(Array.isArray(data) ? (data.map((componentData, index) => ((0, jsx_runtime_1.jsx)(ChildComponent, { ...componentData }, componentData.id || index)))) : ((0, jsx_runtime_1.jsx)(ChildComponent, { ...data }))) }) }));
|
|
44
44
|
};
|
|
45
45
|
exports.default = Loadable;
|
|
46
46
|
//# sourceMappingURL=Loadable.js.map
|