@megafon/ui-shared 8.14.0 → 8.14.2
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/dist/es/components/AccordionBox/AccordionBox.css +1 -0
- package/dist/es/components/AccordionBox/AccordionBox.d.ts +49 -0
- package/dist/es/components/AccordionBox/AccordionBox.js +42 -0
- package/dist/es/components/AudioPlayer/AudioPlayer.d.ts +10 -0
- package/dist/es/components/AudioPlayer/AudioPlayer.js +107 -0
- package/dist/es/components/AudioPlayer/AudioProgress.d.ts +14 -0
- package/dist/es/components/AudioPlayer/AudioProgress.js +96 -0
- package/dist/es/components/AudioPlayer/AudioRange.d.ts +15 -0
- package/dist/es/components/AudioPlayer/AudioRange.js +31 -0
- package/dist/es/components/AudioPlayer/AudioVolume.d.ts +7 -0
- package/dist/es/components/AudioPlayer/AudioVolume.js +77 -0
- package/dist/es/components/AudioPlayer/hooks/useTrackDuration.d.ts +3 -0
- package/dist/es/components/AudioPlayer/hooks/useTrackDuration.js +26 -0
- package/dist/es/components/AudioPlayer/style/AudioPlayer.css +1 -0
- package/dist/es/components/AudioPlayer/style/AudioProgress.css +1 -0
- package/dist/es/components/AudioPlayer/style/AudioRange.css +1 -0
- package/dist/es/components/AudioPlayer/style/AudioVolume.css +1 -0
- package/dist/es/components/AudioPlayer/timerFormatUtil.d.ts +2 -0
- package/dist/es/components/AudioPlayer/timerFormatUtil.js +25 -0
- package/dist/es/components/BannerBox/BannerBox.d.ts +5 -0
- package/dist/es/components/BannerBox/BannerBox.js +22 -0
- package/dist/es/components/BenefitsIcons/BenefitsIcons.d.ts +30 -0
- package/dist/es/components/BenefitsIcons/BenefitsIcons.js +104 -0
- package/dist/es/components/BenefitsIcons/BenefitsIconsTile.d.ts +10 -0
- package/dist/es/components/BenefitsIcons/BenefitsIconsTile.js +51 -0
- package/dist/es/components/BenefitsIcons/helpers.d.ts +8 -0
- package/dist/es/components/BenefitsIcons/helpers.js +102 -0
- package/dist/es/components/BenefitsIcons/style/BenefitsIcons.css +1 -0
- package/dist/es/components/BenefitsIcons/style/BenefitsIconsTile.css +1 -0
- package/dist/es/components/BenefitsIcons/types.d.ts +54 -0
- package/dist/es/components/BenefitsIcons/types.js +17 -0
- package/dist/es/components/BenefitsPictures/BenefitsPictures.d.ts +27 -0
- package/dist/es/components/BenefitsPictures/BenefitsPictures.js +111 -0
- package/dist/es/components/BenefitsPictures/BenfitsPictures.css +1 -0
- package/dist/es/components/BenefitsPictures/helpers.d.ts +11 -0
- package/dist/es/components/BenefitsPictures/helpers.js +85 -0
- package/dist/es/components/BenefitsPictures/types.d.ts +24 -0
- package/dist/es/components/BenefitsPictures/types.js +1 -0
- package/dist/es/components/BlogBox/BlogBox.css +1 -0
- package/dist/es/components/BlogBox/BlogBox.d.ts +31 -0
- package/dist/es/components/BlogBox/BlogBox.js +72 -0
- package/dist/es/components/BlogBox/components/BlogBoxTile.css +1 -0
- package/dist/es/components/BlogBox/components/BlogBoxTile.d.ts +13 -0
- package/dist/es/components/BlogBox/components/BlogBoxTile.js +61 -0
- package/dist/es/components/BlogBox/types.d.ts +37 -0
- package/dist/es/components/BlogBox/types.js +1 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.css +1 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.d.ts +43 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.js +69 -0
- package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.css +1 -0
- package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +30 -0
- package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.js +62 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.css +1 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.d.ts +64 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.js +96 -0
- package/dist/es/components/ButtonLinkBox/ButtonLinkBox.css +1 -0
- package/dist/es/components/ButtonLinkBox/ButtonLinkBox.d.ts +52 -0
- package/dist/es/components/ButtonLinkBox/ButtonLinkBox.js +65 -0
- package/dist/es/components/ButtonsBox/ButtonsBox.css +1 -0
- package/dist/es/components/ButtonsBox/ButtonsBox.d.ts +48 -0
- package/dist/es/components/ButtonsBox/ButtonsBox.js +47 -0
- package/dist/es/components/Card/Card.css +1 -0
- package/dist/es/components/Card/Card.d.ts +55 -0
- package/dist/es/components/Card/Card.js +229 -0
- package/dist/es/components/Card/types.d.ts +86 -0
- package/dist/es/components/Card/types.js +1 -0
- package/dist/es/components/CardsBox/CardsBox.d.ts +14 -0
- package/dist/es/components/CardsBox/CardsBox.js +26 -0
- package/dist/es/components/CardsBox/helpers.d.ts +10 -0
- package/dist/es/components/CardsBox/helpers.js +21 -0
- package/dist/es/components/CarouselBox/CarouselBox.d.ts +10 -0
- package/dist/es/components/CarouselBox/CarouselBox.js +45 -0
- package/dist/es/components/ChipsBox/ChipBox.d.ts +5 -0
- package/dist/es/components/ChipsBox/ChipBox.js +7 -0
- package/dist/es/components/ChipsBox/ChipsBox.css +1 -0
- package/dist/es/components/ChipsBox/ChipsBox.d.ts +16 -0
- package/dist/es/components/ChipsBox/ChipsBox.js +76 -0
- package/dist/es/components/Container/Container.css +1 -0
- package/dist/es/components/Container/Container.d.ts +41 -0
- package/dist/es/components/Container/Container.js +46 -0
- package/dist/es/components/DarkGradientCards/DarkGradientCards.css +1 -0
- package/dist/es/components/DarkGradientCards/DarkGradientCards.d.ts +33 -0
- package/dist/es/components/DarkGradientCards/DarkGradientCards.js +66 -0
- package/dist/es/components/DarkGradientCards/components/DarkGradientCard.css +1 -0
- package/dist/es/components/DarkGradientCards/components/DarkGradientCard.d.ts +16 -0
- package/dist/es/components/DarkGradientCards/components/DarkGradientCard.js +50 -0
- package/dist/es/components/DarkGradientCards/types.d.ts +20 -0
- package/dist/es/components/DarkGradientCards/types.js +1 -0
- package/dist/es/components/DownloadLinks/DownloadLink.css +1 -0
- package/dist/es/components/DownloadLinks/DownloadLink.d.ts +36 -0
- package/dist/es/components/DownloadLinks/DownloadLink.js +61 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.css +1 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.d.ts +20 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.js +64 -0
- package/dist/es/components/FaqWrapper/FaqWrapper.d.ts +6 -0
- package/dist/es/components/FaqWrapper/FaqWrapper.js +9 -0
- package/dist/es/components/ImageBanner/ImageBanner.css +1 -0
- package/dist/es/components/ImageBanner/ImageBanner.d.ts +94 -0
- package/dist/es/components/ImageBanner/ImageBanner.js +164 -0
- package/dist/es/components/InfoCards/InfoCards.css +1 -0
- package/dist/es/components/InfoCards/InfoCards.d.ts +24 -0
- package/dist/es/components/InfoCards/InfoCards.js +44 -0
- package/dist/es/components/InfoCards/components/InfoCard/InfoCard.css +1 -0
- package/dist/es/components/InfoCards/components/InfoCard/InfoCard.d.ts +19 -0
- package/dist/es/components/InfoCards/components/InfoCard/InfoCard.js +85 -0
- package/dist/es/components/InfoCards/types.d.ts +31 -0
- package/dist/es/components/InfoCards/types.js +1 -0
- package/dist/es/components/Instructions/Instructions.css +1 -0
- package/dist/es/components/Instructions/Instructions.d.ts +120 -0
- package/dist/es/components/Instructions/Instructions.js +362 -0
- package/dist/es/components/Instructions/img/android-new.png +0 -0
- package/dist/es/components/Instructions/img/android.png +0 -0
- package/dist/es/components/Instructions/img/blackIphone.png +0 -0
- package/dist/es/components/Instructions/img/iphone-new.png +0 -0
- package/dist/es/components/Instructions/img/iphone12.png +0 -0
- package/dist/es/components/Instructions/img/iphone15.png +0 -0
- package/dist/es/components/Instructions/img/laptop-new.png +0 -0
- package/dist/es/components/Instructions/img/laptop.png +0 -0
- package/dist/es/components/Instructions/img/newIphone.png +0 -0
- package/dist/es/components/Instructions/img/whiteIphone.png +0 -0
- package/dist/es/components/NotificationBox/NotificationBox.css +1 -0
- package/dist/es/components/NotificationBox/NotificationBox.d.ts +15 -0
- package/dist/es/components/NotificationBox/NotificationBox.js +35 -0
- package/dist/es/components/NumbersBox/NumbersBox.css +1 -0
- package/dist/es/components/NumbersBox/NumbersBox.d.ts +35 -0
- package/dist/es/components/NumbersBox/NumbersBox.js +72 -0
- package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.css +1 -0
- package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.d.ts +16 -0
- package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.js +28 -0
- package/dist/es/components/NumbersBox/types.d.ts +7 -0
- package/dist/es/components/NumbersBox/types.js +1 -0
- package/dist/es/components/PageTitle/PageTitle.css +1 -0
- package/dist/es/components/PageTitle/PageTitle.d.ts +36 -0
- package/dist/es/components/PageTitle/PageTitle.js +74 -0
- package/dist/es/components/Partners/Partners.css +1 -0
- package/dist/es/components/Partners/Partners.d.ts +37 -0
- package/dist/es/components/Partners/Partners.js +111 -0
- package/dist/es/components/PictureBox/PictureBox.css +1 -0
- package/dist/es/components/PictureBox/PictureBox.d.ts +48 -0
- package/dist/es/components/PictureBox/PictureBox.js +96 -0
- package/dist/es/components/PictureBox/img/mac-book-1x.png +0 -0
- package/dist/es/components/PictureBox/img/mac-book-2x.png +0 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.css +1 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.d.ts +32 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.js +48 -0
- package/dist/es/components/PromoBanner/PromoBanner.d.ts +5 -0
- package/dist/es/components/PromoBanner/PromoBanner.js +26 -0
- package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.css +1 -0
- package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.d.ts +82 -0
- package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.js +142 -0
- package/dist/es/components/PromoCards/PromoCards.d.ts +33 -0
- package/dist/es/components/PromoCards/PromoCards.js +61 -0
- package/dist/es/components/PromoCards/components/PromoCard/PromoCard.css +1 -0
- package/dist/es/components/PromoCards/components/PromoCard/PromoCard.d.ts +25 -0
- package/dist/es/components/PromoCards/components/PromoCard/PromoCard.js +175 -0
- package/dist/es/components/PromoCards/types.d.ts +62 -0
- package/dist/es/components/PromoCards/types.js +1 -0
- package/dist/es/components/Property/Property.d.ts +5 -0
- package/dist/es/components/Property/Property.js +10 -0
- package/dist/es/components/ServiceCards/ServiceCards.css +1 -0
- package/dist/es/components/ServiceCards/ServiceCards.d.ts +28 -0
- package/dist/es/components/ServiceCards/ServiceCards.js +42 -0
- package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.css +1 -0
- package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.d.ts +19 -0
- package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.js +81 -0
- package/dist/es/components/ServiceCards/types.d.ts +26 -0
- package/dist/es/components/ServiceCards/types.js +1 -0
- package/dist/es/components/SidePictureCards/SidePictureCards.d.ts +31 -0
- package/dist/es/components/SidePictureCards/SidePictureCards.js +69 -0
- package/dist/es/components/SidePictureCards/components/SidePictureCard.css +1 -0
- package/dist/es/components/SidePictureCards/components/SidePictureCard.d.ts +18 -0
- package/dist/es/components/SidePictureCards/components/SidePictureCard.js +94 -0
- package/dist/es/components/SidePictureCards/types.d.ts +48 -0
- package/dist/es/components/SidePictureCards/types.js +1 -0
- package/dist/es/components/Stepper/Stepper.css +1 -0
- package/dist/es/components/Stepper/Stepper.d.ts +52 -0
- package/dist/es/components/Stepper/Stepper.js +159 -0
- package/dist/es/components/Stepper/StepperItem.css +1 -0
- package/dist/es/components/Stepper/StepperItem.d.ts +57 -0
- package/dist/es/components/Stepper/StepperItem.js +99 -0
- package/dist/es/components/Stepper/img/separator-mobile.png +0 -0
- package/dist/es/components/Stepper/img/separator-vertical.png +0 -0
- package/dist/es/components/Stepper/img/separator.png +0 -0
- package/dist/es/components/Steps/Steps.css +1 -0
- package/dist/es/components/Steps/Steps.d.ts +21 -0
- package/dist/es/components/Steps/Steps.js +32 -0
- package/dist/es/components/Steps/StepsItem.css +1 -0
- package/dist/es/components/Steps/StepsItem.d.ts +10 -0
- package/dist/es/components/Steps/StepsItem.js +21 -0
- package/dist/es/components/StoreBanner/StoreBanner.css +1 -0
- package/dist/es/components/StoreBanner/StoreBanner.d.ts +101 -0
- package/dist/es/components/StoreBanner/StoreBanner.js +200 -0
- package/dist/es/components/StoreBanner/img/android.png +0 -0
- package/dist/es/components/StoreBanner/img/black-iphone.png +0 -0
- package/dist/es/components/StoreBanner/img/iphone12.png +0 -0
- package/dist/es/components/StoreBanner/img/new-iphone.png +0 -0
- package/dist/es/components/StoreBanner/img/white-iphone.png +0 -0
- package/dist/es/components/StoreButton/StoreButton.css +1 -0
- package/dist/es/components/StoreButton/StoreButton.d.ts +36 -0
- package/dist/es/components/StoreButton/StoreButton.js +60 -0
- package/dist/es/components/StoreButton/img/app-store-large.png +0 -0
- package/dist/es/components/StoreButton/img/app-store.png +0 -0
- package/dist/es/components/StoreButton/img/galaxy-store-large.png +0 -0
- package/dist/es/components/StoreButton/img/galaxy-store.png +0 -0
- package/dist/es/components/StoreButton/img/google-play-large.png +0 -0
- package/dist/es/components/StoreButton/img/google-play.png +0 -0
- package/dist/es/components/StoreButton/img/huawei-store-large.png +0 -0
- package/dist/es/components/StoreButton/img/huawei-store.png +0 -0
- package/dist/es/components/StoreButton/img/mi-store-large.png +0 -0
- package/dist/es/components/StoreButton/img/mi-store.png +0 -0
- package/dist/es/components/StoreButton/img/ru-store-large.png +0 -0
- package/dist/es/components/StoreButton/img/ru-store.png +0 -0
- package/dist/es/components/StoreButton/img/v-appstore-large.png +0 -0
- package/dist/es/components/StoreButton/img/v-appstore.png +0 -0
- package/dist/es/components/Table/Table.css +1 -0
- package/dist/es/components/Table/Table.d.ts +18 -0
- package/dist/es/components/Table/Table.js +127 -0
- package/dist/es/components/Table/TableCell.d.ts +6 -0
- package/dist/es/components/Table/TableCell.js +6 -0
- package/dist/es/components/Table/TableRow.d.ts +11 -0
- package/dist/es/components/Table/TableRow.js +7 -0
- package/dist/es/components/TabsBox/TabBox.d.ts +2 -0
- package/dist/es/components/TabsBox/TabBox.js +2 -0
- package/dist/es/components/TabsBox/TabsBox.d.ts +8 -0
- package/dist/es/components/TabsBox/TabsBox.js +24 -0
- package/dist/es/components/TextBox/TextBox.css +1 -0
- package/dist/es/components/TextBox/TextBox.d.ts +17 -0
- package/dist/es/components/TextBox/TextBox.js +43 -0
- package/dist/es/components/TextBox/TextBoxPicture.css +1 -0
- package/dist/es/components/TextBox/TextBoxPicture.d.ts +21 -0
- package/dist/es/components/TextBox/TextBoxPicture.js +30 -0
- package/dist/es/components/TextWithIcon/TextWithIcon.css +1 -0
- package/dist/es/components/TextWithIcon/TextWithIcon.d.ts +21 -0
- package/dist/es/components/TextWithIcon/TextWithIcon.js +41 -0
- package/dist/es/components/TextWithIcon/TextWithIconItem.css +1 -0
- package/dist/es/components/TextWithIcon/TextWithIconItem.d.ts +25 -0
- package/dist/es/components/TextWithIcon/TextWithIconItem.js +40 -0
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.css +1 -0
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +22 -0
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.js +60 -0
- package/dist/es/components/VideoBanner/VideoBanner.css +1 -0
- package/dist/es/components/VideoBanner/VideoBanner.d.ts +112 -0
- package/dist/es/components/VideoBanner/VideoBanner.js +245 -0
- package/dist/es/components/VideoBlock/VideoBlock.css +1 -0
- package/dist/es/components/VideoBlock/VideoBlock.d.ts +63 -0
- package/dist/es/components/VideoBlock/VideoBlock.js +230 -0
- package/dist/es/constants/throttleTime.d.ts +4 -0
- package/dist/es/constants/throttleTime.js +3 -0
- package/dist/es/helpers/getColumnConfig.d.ts +6 -0
- package/dist/es/helpers/getColumnConfig.js +10 -0
- package/dist/es/helpers/setRelAttribute.d.ts +3 -0
- package/dist/es/helpers/setRelAttribute.js +9 -0
- package/dist/es/hooks/useResolutions.d.ts +8 -0
- package/dist/es/hooks/useResolutions.js +62 -0
- package/dist/es/index.d.ts +67 -0
- package/dist/es/index.js +67 -0
- package/dist/lib/components/AccordionBox/AccordionBox.css +1 -0
- package/dist/lib/components/AccordionBox/AccordionBox.d.ts +49 -0
- package/dist/lib/components/AccordionBox/AccordionBox.js +51 -0
- package/dist/lib/components/AudioPlayer/AudioPlayer.d.ts +10 -0
- package/dist/lib/components/AudioPlayer/AudioPlayer.js +116 -0
- package/dist/lib/components/AudioPlayer/AudioProgress.d.ts +14 -0
- package/dist/lib/components/AudioPlayer/AudioProgress.js +102 -0
- package/dist/lib/components/AudioPlayer/AudioRange.d.ts +15 -0
- package/dist/lib/components/AudioPlayer/AudioRange.js +37 -0
- package/dist/lib/components/AudioPlayer/AudioVolume.d.ts +7 -0
- package/dist/lib/components/AudioPlayer/AudioVolume.js +83 -0
- package/dist/lib/components/AudioPlayer/hooks/useTrackDuration.d.ts +3 -0
- package/dist/lib/components/AudioPlayer/hooks/useTrackDuration.js +33 -0
- package/dist/lib/components/AudioPlayer/style/AudioPlayer.css +1 -0
- package/dist/lib/components/AudioPlayer/style/AudioProgress.css +1 -0
- package/dist/lib/components/AudioPlayer/style/AudioRange.css +1 -0
- package/dist/lib/components/AudioPlayer/style/AudioVolume.css +1 -0
- package/dist/lib/components/AudioPlayer/timerFormatUtil.d.ts +2 -0
- package/dist/lib/components/AudioPlayer/timerFormatUtil.js +31 -0
- package/dist/lib/components/BannerBox/BannerBox.d.ts +5 -0
- package/dist/lib/components/BannerBox/BannerBox.js +31 -0
- package/dist/lib/components/BenefitsIcons/BenefitsIcons.d.ts +30 -0
- package/dist/lib/components/BenefitsIcons/BenefitsIcons.js +113 -0
- package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.d.ts +10 -0
- package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.js +60 -0
- package/dist/lib/components/BenefitsIcons/helpers.d.ts +8 -0
- package/dist/lib/components/BenefitsIcons/helpers.js +108 -0
- package/dist/lib/components/BenefitsIcons/style/BenefitsIcons.css +1 -0
- package/dist/lib/components/BenefitsIcons/style/BenefitsIconsTile.css +1 -0
- package/dist/lib/components/BenefitsIcons/types.d.ts +54 -0
- package/dist/lib/components/BenefitsIcons/types.js +23 -0
- package/dist/lib/components/BenefitsPictures/BenefitsPictures.d.ts +27 -0
- package/dist/lib/components/BenefitsPictures/BenefitsPictures.js +120 -0
- package/dist/lib/components/BenefitsPictures/BenfitsPictures.css +1 -0
- package/dist/lib/components/BenefitsPictures/helpers.d.ts +11 -0
- package/dist/lib/components/BenefitsPictures/helpers.js +91 -0
- package/dist/lib/components/BenefitsPictures/types.d.ts +24 -0
- package/dist/lib/components/BenefitsPictures/types.js +5 -0
- package/dist/lib/components/BlogBox/BlogBox.css +1 -0
- package/dist/lib/components/BlogBox/BlogBox.d.ts +31 -0
- package/dist/lib/components/BlogBox/BlogBox.js +81 -0
- package/dist/lib/components/BlogBox/components/BlogBoxTile.css +1 -0
- package/dist/lib/components/BlogBox/components/BlogBoxTile.d.ts +13 -0
- package/dist/lib/components/BlogBox/components/BlogBoxTile.js +70 -0
- package/dist/lib/components/BlogBox/types.d.ts +37 -0
- package/dist/lib/components/BlogBox/types.js +5 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.css +1 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.d.ts +43 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.js +78 -0
- package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.css +1 -0
- package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +30 -0
- package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.js +71 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.css +1 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.d.ts +64 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.js +105 -0
- package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.css +1 -0
- package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.d.ts +52 -0
- package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.js +74 -0
- package/dist/lib/components/ButtonsBox/ButtonsBox.css +1 -0
- package/dist/lib/components/ButtonsBox/ButtonsBox.d.ts +48 -0
- package/dist/lib/components/ButtonsBox/ButtonsBox.js +56 -0
- package/dist/lib/components/Card/Card.css +1 -0
- package/dist/lib/components/Card/Card.d.ts +55 -0
- package/dist/lib/components/Card/Card.js +238 -0
- package/dist/lib/components/Card/types.d.ts +86 -0
- package/dist/lib/components/Card/types.js +5 -0
- package/dist/lib/components/CardsBox/CardsBox.d.ts +14 -0
- package/dist/lib/components/CardsBox/CardsBox.js +36 -0
- package/dist/lib/components/CardsBox/helpers.d.ts +10 -0
- package/dist/lib/components/CardsBox/helpers.js +28 -0
- package/dist/lib/components/CarouselBox/CarouselBox.d.ts +10 -0
- package/dist/lib/components/CarouselBox/CarouselBox.js +55 -0
- package/dist/lib/components/ChipsBox/ChipBox.d.ts +5 -0
- package/dist/lib/components/ChipsBox/ChipBox.js +17 -0
- package/dist/lib/components/ChipsBox/ChipsBox.css +1 -0
- package/dist/lib/components/ChipsBox/ChipsBox.d.ts +16 -0
- package/dist/lib/components/ChipsBox/ChipsBox.js +85 -0
- package/dist/lib/components/Container/Container.css +1 -0
- package/dist/lib/components/Container/Container.d.ts +41 -0
- package/dist/lib/components/Container/Container.js +54 -0
- package/dist/lib/components/DarkGradientCards/DarkGradientCards.css +1 -0
- package/dist/lib/components/DarkGradientCards/DarkGradientCards.d.ts +33 -0
- package/dist/lib/components/DarkGradientCards/DarkGradientCards.js +75 -0
- package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.css +1 -0
- package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.d.ts +16 -0
- package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.js +59 -0
- package/dist/lib/components/DarkGradientCards/types.d.ts +20 -0
- package/dist/lib/components/DarkGradientCards/types.js +5 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.css +1 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.d.ts +36 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.js +70 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.css +1 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.d.ts +20 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.js +73 -0
- package/dist/lib/components/FaqWrapper/FaqWrapper.d.ts +6 -0
- package/dist/lib/components/FaqWrapper/FaqWrapper.js +18 -0
- package/dist/lib/components/ImageBanner/ImageBanner.css +1 -0
- package/dist/lib/components/ImageBanner/ImageBanner.d.ts +94 -0
- package/dist/lib/components/ImageBanner/ImageBanner.js +173 -0
- package/dist/lib/components/InfoCards/InfoCards.css +1 -0
- package/dist/lib/components/InfoCards/InfoCards.d.ts +24 -0
- package/dist/lib/components/InfoCards/InfoCards.js +53 -0
- package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.css +1 -0
- package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.d.ts +19 -0
- package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.js +94 -0
- package/dist/lib/components/InfoCards/types.d.ts +31 -0
- package/dist/lib/components/InfoCards/types.js +5 -0
- package/dist/lib/components/Instructions/Instructions.css +1 -0
- package/dist/lib/components/Instructions/Instructions.d.ts +120 -0
- package/dist/lib/components/Instructions/Instructions.js +371 -0
- package/dist/lib/components/Instructions/img/android-new.png +0 -0
- package/dist/lib/components/Instructions/img/android.png +0 -0
- package/dist/lib/components/Instructions/img/blackIphone.png +0 -0
- package/dist/lib/components/Instructions/img/iphone-new.png +0 -0
- package/dist/lib/components/Instructions/img/iphone12.png +0 -0
- package/dist/lib/components/Instructions/img/iphone15.png +0 -0
- package/dist/lib/components/Instructions/img/laptop-new.png +0 -0
- package/dist/lib/components/Instructions/img/laptop.png +0 -0
- package/dist/lib/components/Instructions/img/newIphone.png +0 -0
- package/dist/lib/components/Instructions/img/whiteIphone.png +0 -0
- package/dist/lib/components/NotificationBox/NotificationBox.css +1 -0
- package/dist/lib/components/NotificationBox/NotificationBox.d.ts +15 -0
- package/dist/lib/components/NotificationBox/NotificationBox.js +44 -0
- package/dist/lib/components/NumbersBox/NumbersBox.css +1 -0
- package/dist/lib/components/NumbersBox/NumbersBox.d.ts +35 -0
- package/dist/lib/components/NumbersBox/NumbersBox.js +81 -0
- package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.css +1 -0
- package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.d.ts +16 -0
- package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.js +37 -0
- package/dist/lib/components/NumbersBox/types.d.ts +7 -0
- package/dist/lib/components/NumbersBox/types.js +5 -0
- package/dist/lib/components/PageTitle/PageTitle.css +1 -0
- package/dist/lib/components/PageTitle/PageTitle.d.ts +36 -0
- package/dist/lib/components/PageTitle/PageTitle.js +83 -0
- package/dist/lib/components/Partners/Partners.css +1 -0
- package/dist/lib/components/Partners/Partners.d.ts +37 -0
- package/dist/lib/components/Partners/Partners.js +120 -0
- package/dist/lib/components/PictureBox/PictureBox.css +1 -0
- package/dist/lib/components/PictureBox/PictureBox.d.ts +48 -0
- package/dist/lib/components/PictureBox/PictureBox.js +105 -0
- package/dist/lib/components/PictureBox/img/mac-book-1x.png +0 -0
- package/dist/lib/components/PictureBox/img/mac-book-2x.png +0 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.css +1 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.d.ts +32 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.js +56 -0
- package/dist/lib/components/PromoBanner/PromoBanner.d.ts +5 -0
- package/dist/lib/components/PromoBanner/PromoBanner.js +36 -0
- package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.css +1 -0
- package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.d.ts +82 -0
- package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.js +151 -0
- package/dist/lib/components/PromoCards/PromoCards.d.ts +33 -0
- package/dist/lib/components/PromoCards/PromoCards.js +71 -0
- package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.css +1 -0
- package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.d.ts +25 -0
- package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.js +184 -0
- package/dist/lib/components/PromoCards/types.d.ts +62 -0
- package/dist/lib/components/PromoCards/types.js +5 -0
- package/dist/lib/components/Property/Property.d.ts +5 -0
- package/dist/lib/components/Property/Property.js +19 -0
- package/dist/lib/components/ServiceCards/ServiceCards.css +1 -0
- package/dist/lib/components/ServiceCards/ServiceCards.d.ts +28 -0
- package/dist/lib/components/ServiceCards/ServiceCards.js +51 -0
- package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.css +1 -0
- package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.d.ts +19 -0
- package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.js +90 -0
- package/dist/lib/components/ServiceCards/types.d.ts +26 -0
- package/dist/lib/components/ServiceCards/types.js +5 -0
- package/dist/lib/components/SidePictureCards/SidePictureCards.d.ts +31 -0
- package/dist/lib/components/SidePictureCards/SidePictureCards.js +79 -0
- package/dist/lib/components/SidePictureCards/components/SidePictureCard.css +1 -0
- package/dist/lib/components/SidePictureCards/components/SidePictureCard.d.ts +18 -0
- package/dist/lib/components/SidePictureCards/components/SidePictureCard.js +100 -0
- package/dist/lib/components/SidePictureCards/types.d.ts +48 -0
- package/dist/lib/components/SidePictureCards/types.js +5 -0
- package/dist/lib/components/Stepper/Stepper.css +1 -0
- package/dist/lib/components/Stepper/Stepper.d.ts +52 -0
- package/dist/lib/components/Stepper/Stepper.js +168 -0
- package/dist/lib/components/Stepper/StepperItem.css +1 -0
- package/dist/lib/components/Stepper/StepperItem.d.ts +57 -0
- package/dist/lib/components/Stepper/StepperItem.js +108 -0
- package/dist/lib/components/Stepper/img/separator-mobile.png +0 -0
- package/dist/lib/components/Stepper/img/separator-vertical.png +0 -0
- package/dist/lib/components/Stepper/img/separator.png +0 -0
- package/dist/lib/components/Steps/Steps.css +1 -0
- package/dist/lib/components/Steps/Steps.d.ts +21 -0
- package/dist/lib/components/Steps/Steps.js +40 -0
- package/dist/lib/components/Steps/StepsItem.css +1 -0
- package/dist/lib/components/Steps/StepsItem.d.ts +10 -0
- package/dist/lib/components/Steps/StepsItem.js +29 -0
- package/dist/lib/components/StoreBanner/StoreBanner.css +1 -0
- package/dist/lib/components/StoreBanner/StoreBanner.d.ts +101 -0
- package/dist/lib/components/StoreBanner/StoreBanner.js +209 -0
- package/dist/lib/components/StoreBanner/img/android.png +0 -0
- package/dist/lib/components/StoreBanner/img/black-iphone.png +0 -0
- package/dist/lib/components/StoreBanner/img/iphone12.png +0 -0
- package/dist/lib/components/StoreBanner/img/new-iphone.png +0 -0
- package/dist/lib/components/StoreBanner/img/white-iphone.png +0 -0
- package/dist/lib/components/StoreButton/StoreButton.css +1 -0
- package/dist/lib/components/StoreButton/StoreButton.d.ts +36 -0
- package/dist/lib/components/StoreButton/StoreButton.js +69 -0
- package/dist/lib/components/StoreButton/img/app-store-large.png +0 -0
- package/dist/lib/components/StoreButton/img/app-store.png +0 -0
- package/dist/lib/components/StoreButton/img/galaxy-store-large.png +0 -0
- package/dist/lib/components/StoreButton/img/galaxy-store.png +0 -0
- package/dist/lib/components/StoreButton/img/google-play-large.png +0 -0
- package/dist/lib/components/StoreButton/img/google-play.png +0 -0
- package/dist/lib/components/StoreButton/img/huawei-store-large.png +0 -0
- package/dist/lib/components/StoreButton/img/huawei-store.png +0 -0
- package/dist/lib/components/StoreButton/img/mi-store-large.png +0 -0
- package/dist/lib/components/StoreButton/img/mi-store.png +0 -0
- package/dist/lib/components/StoreButton/img/ru-store-large.png +0 -0
- package/dist/lib/components/StoreButton/img/ru-store.png +0 -0
- package/dist/lib/components/StoreButton/img/v-appstore-large.png +0 -0
- package/dist/lib/components/StoreButton/img/v-appstore.png +0 -0
- package/dist/lib/components/Table/Table.css +1 -0
- package/dist/lib/components/Table/Table.d.ts +18 -0
- package/dist/lib/components/Table/Table.js +136 -0
- package/dist/lib/components/Table/TableCell.d.ts +6 -0
- package/dist/lib/components/Table/TableCell.js +15 -0
- package/dist/lib/components/Table/TableRow.d.ts +11 -0
- package/dist/lib/components/Table/TableRow.js +17 -0
- package/dist/lib/components/TabsBox/TabBox.d.ts +2 -0
- package/dist/lib/components/TabsBox/TabBox.js +8 -0
- package/dist/lib/components/TabsBox/TabsBox.d.ts +8 -0
- package/dist/lib/components/TabsBox/TabsBox.js +33 -0
- package/dist/lib/components/TextBox/TextBox.css +1 -0
- package/dist/lib/components/TextBox/TextBox.d.ts +17 -0
- package/dist/lib/components/TextBox/TextBox.js +51 -0
- package/dist/lib/components/TextBox/TextBoxPicture.css +1 -0
- package/dist/lib/components/TextBox/TextBoxPicture.d.ts +21 -0
- package/dist/lib/components/TextBox/TextBoxPicture.js +38 -0
- package/dist/lib/components/TextWithIcon/TextWithIcon.css +1 -0
- package/dist/lib/components/TextWithIcon/TextWithIcon.d.ts +21 -0
- package/dist/lib/components/TextWithIcon/TextWithIcon.js +50 -0
- package/dist/lib/components/TextWithIcon/TextWithIconItem.css +1 -0
- package/dist/lib/components/TextWithIcon/TextWithIconItem.d.ts +25 -0
- package/dist/lib/components/TextWithIcon/TextWithIconItem.js +49 -0
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.css +1 -0
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +22 -0
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.js +69 -0
- package/dist/lib/components/VideoBanner/VideoBanner.css +1 -0
- package/dist/lib/components/VideoBanner/VideoBanner.d.ts +112 -0
- package/dist/lib/components/VideoBanner/VideoBanner.js +253 -0
- package/dist/lib/components/VideoBlock/VideoBlock.css +1 -0
- package/dist/lib/components/VideoBlock/VideoBlock.d.ts +63 -0
- package/dist/lib/components/VideoBlock/VideoBlock.js +238 -0
- package/dist/lib/constants/throttleTime.d.ts +4 -0
- package/dist/lib/constants/throttleTime.js +9 -0
- package/dist/lib/helpers/getColumnConfig.d.ts +6 -0
- package/dist/lib/helpers/getColumnConfig.js +16 -0
- package/dist/lib/helpers/setRelAttribute.d.ts +3 -0
- package/dist/lib/helpers/setRelAttribute.js +15 -0
- package/dist/lib/hooks/useResolutions.d.ts +8 -0
- package/dist/lib/hooks/useResolutions.js +69 -0
- package/dist/lib/index.d.ts +67 -0
- package/dist/lib/index.js +475 -0
- package/package.json +5 -5
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
require("core-js/modules/es.symbol.js");
|
|
10
|
+
require("core-js/modules/es.symbol.description.js");
|
|
11
|
+
var React = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _uiHelpers = require("@megafon/ui-helpers");
|
|
13
|
+
var _setRelAttribute = require("../../../../helpers/setRelAttribute");
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
16
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
17
|
+
var ArrowRight16 = function ArrowRight16(props) {
|
|
18
|
+
return /*#__PURE__*/React.createElement("svg", (0, _extends2["default"])({
|
|
19
|
+
viewBox: "0 0 20 20"
|
|
20
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
|
21
|
+
d: "M8 13l3-3-3-3 1-1 4 4-4 4z"
|
|
22
|
+
}));
|
|
23
|
+
};
|
|
24
|
+
var ArrowRight24 = function ArrowRight24(props) {
|
|
25
|
+
return /*#__PURE__*/React.createElement("svg", (0, _extends2["default"])({
|
|
26
|
+
viewBox: "0 0 32 32"
|
|
27
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
|
28
|
+
d: "M12.5 20.8l4.8-4.8-4.8-4.8 1.6-1.7 6.4 6.5-6.4 6.5z"
|
|
29
|
+
}));
|
|
30
|
+
};
|
|
31
|
+
var cn = (0, _uiHelpers.cnCreate)('mfui-info-card');
|
|
32
|
+
var InfoCard = function InfoCard(_ref) {
|
|
33
|
+
var className = _ref.className,
|
|
34
|
+
title = _ref.title,
|
|
35
|
+
description = _ref.description,
|
|
36
|
+
imgSrc = _ref.imgSrc,
|
|
37
|
+
_ref$imgAlt = _ref.imgAlt,
|
|
38
|
+
imgAlt = _ref$imgAlt === void 0 ? '' : _ref$imgAlt,
|
|
39
|
+
href = _ref.href,
|
|
40
|
+
target = _ref.target,
|
|
41
|
+
rel = _ref.rel,
|
|
42
|
+
download = _ref.download,
|
|
43
|
+
moreInfo = _ref.moreInfo,
|
|
44
|
+
onClick = _ref.onClick,
|
|
45
|
+
_ref$size = _ref.size,
|
|
46
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
47
|
+
imgPosition = _ref.imgPosition,
|
|
48
|
+
_ref$background = _ref.background,
|
|
49
|
+
background = _ref$background === void 0 ? 'stroke' : _ref$background,
|
|
50
|
+
dataAttrs = _ref.dataAttrs,
|
|
51
|
+
classes = _ref.classes;
|
|
52
|
+
var RootElement = href ? 'a' : 'div';
|
|
53
|
+
var isBigSize = size === 'big';
|
|
54
|
+
var finalImgPosition = size === 'big' ? false : imgPosition;
|
|
55
|
+
var isInvalidBackground = background === 'no' && (imgPosition === 'right-side' || size === 'big');
|
|
56
|
+
var finalBackground = isInvalidBackground ? 'stroke' : background;
|
|
57
|
+
var isLink = !!href;
|
|
58
|
+
var isActive = isLink || !!onClick;
|
|
59
|
+
var renderArrowRight = function renderArrowRight() {
|
|
60
|
+
var ArrowRight = isBigSize ? ArrowRight24 : ArrowRight16;
|
|
61
|
+
return /*#__PURE__*/React.createElement(ArrowRight, (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.moreArrow), {
|
|
62
|
+
className: cn('more-info-arrow')
|
|
63
|
+
}));
|
|
64
|
+
};
|
|
65
|
+
return /*#__PURE__*/React.createElement(RootElement, (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
66
|
+
href: isLink ? href : undefined,
|
|
67
|
+
target: isLink ? target : undefined,
|
|
68
|
+
rel: isLink ? (0, _setRelAttribute.setRelAttribute)(rel, target) : undefined,
|
|
69
|
+
download: isLink ? download : undefined,
|
|
70
|
+
onClick: onClick,
|
|
71
|
+
className: cn({
|
|
72
|
+
size: size,
|
|
73
|
+
position: finalImgPosition,
|
|
74
|
+
background: finalBackground,
|
|
75
|
+
active: isActive,
|
|
76
|
+
'align-center': !moreInfo
|
|
77
|
+
}, [className, classes === null || classes === void 0 ? void 0 : classes.root])
|
|
78
|
+
}), /*#__PURE__*/React.createElement("img", {
|
|
79
|
+
className: cn('image'),
|
|
80
|
+
src: imgSrc,
|
|
81
|
+
alt: imgAlt
|
|
82
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
83
|
+
className: cn('content')
|
|
84
|
+
}, !!title && /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.title), {
|
|
85
|
+
className: cn('title', [classes === null || classes === void 0 ? void 0 : classes.title])
|
|
86
|
+
}), (0, _uiHelpers.convert)(title, {})), !!description && /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.description), {
|
|
87
|
+
className: cn('description')
|
|
88
|
+
}), (0, _uiHelpers.convert)(description, _uiHelpers.textConvertConfig)), !!moreInfo && /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.moreInfo), {
|
|
89
|
+
className: cn('more-info')
|
|
90
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
91
|
+
className: cn('more-info-text')
|
|
92
|
+
}, (0, _uiHelpers.convert)(moreInfo, {})), isActive && renderArrowRight())));
|
|
93
|
+
};
|
|
94
|
+
var _default = exports["default"] = InfoCard;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface IInfoCardSettings {
|
|
3
|
+
/** Размер карточки */
|
|
4
|
+
size?: 'big' | 'medium' | 'small';
|
|
5
|
+
/** Расположение изображения */
|
|
6
|
+
imgPosition?: 'right-side' | 'top-left';
|
|
7
|
+
/** Фон карточки */
|
|
8
|
+
background?: 'shadow' | 'stroke' | 'gray' | 'green' | 'purple' | 'white' | 'no';
|
|
9
|
+
}
|
|
10
|
+
export interface IInfoCardData {
|
|
11
|
+
/** Заголовок */
|
|
12
|
+
title?: string;
|
|
13
|
+
/** Текст */
|
|
14
|
+
description?: string;
|
|
15
|
+
/** URL изображения */
|
|
16
|
+
imgSrc: string;
|
|
17
|
+
/** Атрибут alt изображения */
|
|
18
|
+
imgAlt?: string;
|
|
19
|
+
/** URL ссылки */
|
|
20
|
+
href?: string;
|
|
21
|
+
/** Атрибут target ссылки */
|
|
22
|
+
target?: '_self' | '_blank';
|
|
23
|
+
/** Атрибут rel ссылки */
|
|
24
|
+
rel?: string;
|
|
25
|
+
/** Добавление атрибута download для ссылки */
|
|
26
|
+
download?: boolean;
|
|
27
|
+
/** Дополнительная информация */
|
|
28
|
+
moreInfo?: string;
|
|
29
|
+
/** Обработчик клика */
|
|
30
|
+
onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
|
|
31
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-instructions__title_resolution_mobile{margin-bottom:32px;text-align:center}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions__title_resolution_mobile{margin-bottom:40px}}@media screen and (min-width:1024px){.mfui-instructions__title_resolution_mobile{display:none}}.mfui-instructions__title_resolution_desktop{margin-bottom:40px}@media screen and (max-width:1023px){.mfui-instructions__title_resolution_desktop{display:none}}.mfui-instructions .swiper-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}@media screen and (min-width:1024px){.mfui-instructions__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-instructions__wrapper_vertical-align_top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.mfui-instructions__wrapper_vertical-align_unset{-webkit-box-align:unset;-ms-flex-align:unset;align-items:unset}}.mfui-instructions .mfui-instructions__text{margin-top:48px}@media screen and (max-width:1023px){.mfui-instructions .mfui-instructions__text{text-align:center}}.mfui-instructions .mfui-instructions__button{display:block;margin-top:32px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}@media screen and (max-width:1023px){.mfui-instructions .mfui-instructions__button{margin-left:auto;margin-right:auto}}@media screen and (min-width:768px){.mfui-instructions .mfui-instructions__button{margin-top:40px}}.mfui-instructions__picture{max-height:490px;max-width:530px;overflow:hidden;position:relative}@media screen and (max-width:1023px){.mfui-instructions__picture{margin:0 auto}}@media screen and (min-width:1024px){.mfui-instructions__picture{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;width:50%}.mfui-instructions__picture_align_left{-webkit-box-ordinal-group:1;-ms-flex-order:0;margin-right:40px;order:0}}.mfui-instructions_mask_none .mfui-instructions__slide{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-instructions__swiper-img{height:100%;width:100%}.mfui-instructions__swiper-img_video{-webkit-filter:brightness(108.5%);filter:brightness(108.5%)}.mfui-instructions__img-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;height:490px;position:relative}@media screen and (max-width:1023px){.mfui-instructions__img-wrapper:before{background:var(--spbSky2);bottom:0;content:"";display:block;height:1px;left:0;margin:0 auto;position:absolute;right:0;width:324px;z-index:2}}.mfui-instructions__device-screen{overflow:hidden;pointer-events:none}@media screen and (max-width:1023px){.mfui-instructions_mask_android .mfui-instructions__img-wrapper,.mfui-instructions_mask_black-iphone .mfui-instructions__img-wrapper,.mfui-instructions_mask_white-iphone .mfui-instructions__img-wrapper{height:421px}}.mfui-instructions_mask_android .mfui-instructions__device-screen,.mfui-instructions_mask_black-iphone .mfui-instructions__device-screen,.mfui-instructions_mask_white-iphone .mfui-instructions__device-screen{height:490px;margin:auto;width:100%}.mfui-instructions_mask_android .mfui-instructions__swiper,.mfui-instructions_mask_black-iphone .mfui-instructions__swiper,.mfui-instructions_mask_white-iphone .mfui-instructions__swiper{height:363px;left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:59px;width:204px}.mfui-instructions_mask_black-iphone .mfui-instructions__device-screen{background:url(img/blackIphone.png) 50% no-repeat;background-size:contain}.mfui-instructions_mask_white-iphone .mfui-instructions__device-screen{background:url(img/whiteIphone.png) 50% no-repeat;background-size:contain}@media screen and (max-width:1023px){.mfui-instructions_mask_android .mfui-instructions__img-wrapper{height:424px}}.mfui-instructions_mask_android .mfui-instructions__device-screen{background:url(img/android.png) 50% no-repeat;background-size:contain}.mfui-instructions_mask_android .mfui-instructions__swiper{height:370px;width:206px}@media screen and (max-width:1023px){.mfui-instructions_mask_new-iphone .mfui-instructions__img-wrapper{height:460px}}.mfui-instructions_mask_new-iphone .mfui-instructions__device-screen{background:url(img/newIphone.png) 50% no-repeat;background-size:contain;height:490px;margin:auto;position:relative;width:100%;z-index:2}.mfui-instructions_mask_new-iphone .mfui-instructions__swiper{border-radius:20px;height:462px;left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:14px;width:214px;z-index:1}@media screen and (max-width:1023px){.mfui-instructions_mask_iphone-12 .mfui-instructions__img-wrapper:before{display:none}}.mfui-instructions_mask_iphone-12 .mfui-instructions__device-screen{background:url(img/iphone12.png) 50% no-repeat;background-size:contain;height:490px;margin:auto;position:relative;width:100%;z-index:2}.mfui-instructions_mask_iphone-12 .mfui-instructions__swiper{border-radius:20px;height:462px;left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:14px;width:214px;z-index:1}.mfui-instructions_mask_iphone-15 .mfui-instructions__img-wrapper{height:487px}@media screen and (max-width:1023px){.mfui-instructions_mask_iphone-15 .mfui-instructions__img-wrapper:before{display:none}}.mfui-instructions_mask_iphone-15 .mfui-instructions__device-screen{background:url(img/iphone15.png) 50% no-repeat;background-size:contain;height:486px;margin:auto;position:relative;width:100%;z-index:2}.mfui-instructions_mask_iphone-15 .mfui-instructions__swiper{border-radius:20px;height:468px;left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:10px;width:217px;z-index:1}.mfui-instructions_mask_android-cropped .mfui-instructions__img-wrapper{height:420px;min-height:420px}@media screen and (min-width:1024px){.mfui-instructions_mask_android-cropped .mfui-instructions__img-wrapper{height:440px;min-height:440px}}.mfui-instructions_mask_android-cropped .mfui-instructions__img-wrapper:before{background:var(--spbSky2);bottom:0;content:"";display:block;height:1px;left:0;margin:0 auto;position:absolute;right:0;width:324px;z-index:2}.mfui-instructions_mask_android-cropped .mfui-instructions__device-screen{background:url(img/android-new.png) 50% no-repeat;background-size:contain;height:510px;margin-top:24px;position:relative;width:100%;z-index:1}@media screen and (min-width:1024px){.mfui-instructions_mask_android-cropped .mfui-instructions__device-screen{height:574px}}.mfui-instructions_mask_android-cropped .mfui-instructions__swiper{left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:54px;width:222px}@media screen and (min-width:1024px){.mfui-instructions_mask_android-cropped .mfui-instructions__swiper{top:58px;width:250px}}.mfui-instructions_mask_iphone-cropped .mfui-instructions__img-wrapper{height:420px;min-height:420px}.mfui-instructions_mask_iphone-cropped .mfui-instructions__img-wrapper:before{background:var(--spbSky2);bottom:0;content:"";display:block;height:1px;left:0;margin:0 auto;position:absolute;right:0;width:324px;z-index:2}.mfui-instructions_mask_iphone-cropped .mfui-instructions__device-screen{background:url(img/iphone-new.png) 50% no-repeat;background-size:contain;height:469px;margin-top:24px;position:relative;width:100%;z-index:1}.mfui-instructions_mask_iphone-cropped .mfui-instructions__swiper{left:0;margin:auto;overflow:hidden;position:absolute;right:0;top:38px;width:205px}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper{background:url(img/laptop.png) 50% 0 no-repeat;background-size:100%;height:0;padding-bottom:53.4%}}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper{height:208px}}@media screen and (max-width:479px){.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper{height:115px}.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper:before{width:310px}}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper:before{width:460px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_mask_laptop .mfui-instructions__img-wrapper:before{width:590px}}.mfui-instructions_mask_laptop .mfui-instructions__device-screen{background:url(img/laptop.png) 50% 0 no-repeat;background-size:100%;height:100%;margin:auto;position:relative;width:100%}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_mask_laptop .mfui-instructions__device-screen{width:530px}}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop .mfui-instructions__device-screen{width:450px}}@media screen and (max-width:479px){.mfui-instructions_mask_laptop .mfui-instructions__device-screen{width:270px}}@media screen and (min-width:1024px){.mfui-instructions_mask_laptop .mfui-instructions__device-screen{background:url(img/laptop.png) 50% no-repeat;background-size:contain}}.mfui-instructions_mask_laptop .mfui-instructions__swiper{left:50%;margin:auto;overflow:hidden;position:absolute;right:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:78%}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop .mfui-instructions__swiper{height:190px;max-width:345px}}@media screen and (max-width:479px){.mfui-instructions_mask_laptop .mfui-instructions__swiper{height:105px;max-width:210px}}@media screen and (min-width:1024px){.mfui-instructions_mask_laptop .mfui-instructions__swiper{-webkit-transform:translate(-50%,-53%);transform:translate(-50%,-53%)}}@media screen and (max-width:1023px){.mfui-instructions_mask_laptop-new .mfui-instructions__img-wrapper{background:url(img/laptop-new.png) 50% 0 no-repeat;background-size:100%;height:0;padding-bottom:58.9%}}.mfui-instructions_mask_laptop-new .mfui-instructions__img-wrapper:before{display:none}.mfui-instructions_mask_laptop-new .mfui-instructions__device-screen{background:url(img/laptop-new.png) 50% 0 no-repeat;background-size:100%;height:100%;margin:auto;position:relative;width:100%}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_mask_laptop-new .mfui-instructions__device-screen{width:530px}}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop-new .mfui-instructions__device-screen{width:450px}}@media screen and (max-width:479px){.mfui-instructions_mask_laptop-new .mfui-instructions__device-screen{width:270px}}@media screen and (min-width:1024px){.mfui-instructions_mask_laptop-new .mfui-instructions__device-screen{background:url(img/laptop-new.png) 50% no-repeat;background-size:contain}}.mfui-instructions_mask_laptop-new .mfui-instructions__swiper{left:50%;margin:auto;overflow:hidden;position:absolute;right:0;top:4px;-webkit-transform:translate(-49.5%);transform:translate(-49.5%);width:78%}@media screen and (min-width:480px) and (max-width:767px){.mfui-instructions_mask_laptop-new .mfui-instructions__swiper{max-width:415px;top:7px}}@media screen and (max-width:479px){.mfui-instructions_mask_laptop-new .mfui-instructions__swiper{max-width:302px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_mask_laptop-new .mfui-instructions__swiper{top:12px}}@media screen and (min-width:1024px){.mfui-instructions_mask_laptop-new .mfui-instructions__swiper{top:50%;-webkit-transform:translate(-49.5%,-55%);transform:translate(-49.5%,-55%)}}.mfui-instructions__slide{-ms-flex-negative:0;flex-shrink:0;height:100%}@media screen and (max-width:767px){.mfui-instructions__articles{margin-top:24px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions__articles{margin-top:32px}}@media screen and (min-width:1024px){.mfui-instructions__articles{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;width:50%}.mfui-instructions__articles_align_right{margin-right:40px}}.mfui-instructions__articles-list{list-style-type:none;margin:0;padding:0}@media screen and (min-width:1024px){.mfui-instructions__articles-list_mobile{display:none}}@media screen and (max-width:1023px){.mfui-instructions__articles-list_desktop{display:none}}.mfui-instructions__articles-item{min-height:40px;opacity:.5;position:relative}@media screen and (min-width:1024px){.mfui-instructions__articles-item{margin-bottom:48px}}.mfui-instructions__articles-item:hover,.mfui-instructions__articles-item_active{opacity:1}.mfui-instructions__articles-item:hover .mfui-instructions__articles-item-dot,.mfui-instructions__articles-item_active .mfui-instructions__articles-item-dot{color:var(--stcWhite)}.mfui-instructions__articles-item:hover .mfui-instructions__articles-item-dot:before,.mfui-instructions__articles-item_active .mfui-instructions__articles-item-dot:before{background:var(--brandGreen);bottom:0;left:0;right:0;top:0}@media screen and (min-width:1024px){.mfui-instructions__articles-item:last-child{margin-bottom:0}}.mfui-instructions__articles-item-dot{border-radius:12px;-webkit-box-shadow:inset 0 0 0 1px var(--spbSky3);box-shadow:inset 0 0 0 1px var(--spbSky3);cursor:pointer;display:inline-block;font-size:15px;font-weight:500;height:40px;line-height:40px;position:absolute;text-align:center;width:40px}@media screen and (max-width:479px){.mfui-instructions__articles-item-dot{min-width:40px}}.mfui-instructions__articles-item-dot:before{border-radius:12px;bottom:50%;content:"";left:50%;position:absolute;right:50%;top:50%;-webkit-transition:all .3s ease;transition:all .3s ease}.mfui-instructions__articles-item-dot-number{position:relative}.mfui-instructions__articles-item-title{cursor:pointer;display:inline-block;font-size:15px;font-weight:400;line-height:24px}@media screen and (min-width:1024px){.mfui-instructions__articles-item-title{padding:8px 0 0 56px}}.mfui-instructions__articles-dots{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style-type:none;margin:0;padding:0}@media screen and (max-width:767px){.mfui-instructions__articles-dots{margin-top:16px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions__articles-dots{margin-top:24px}}@media screen and (min-width:1024px){.mfui-instructions__articles-dots{display:none}}.mfui-instructions__articles-dots_text-after{margin-bottom:48px}.mfui-instructions__articles-dot{background:var(--spbSky2);border-radius:4px;cursor:pointer;display:inline-block;height:8px;margin-right:12px;position:relative;width:8px}.mfui-instructions__articles-dot:hover,.mfui-instructions__articles-dot_active{background:var(--brandGreen)}.mfui-instructions__articles-dot_active{width:20px}.mfui-instructions__articles-dot:last-child{margin-right:0}.mfui-instructions__articles-title-block{margin:0 auto;text-align:center}@media screen and (max-width:767px){.mfui-instructions__articles-title-block{width:55%}}@media screen and (max-width:479px){.mfui-instructions__articles-title-block{width:100%}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions__articles-title-block{max-width:530px;width:100%}}.mfui-instructions__articles-title-block_with-numeration{text-align:left}.mfui-instructions__articles-title{font-weight:400;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.mfui-instructions__articles-num,.mfui-instructions__articles-title{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:15px;line-height:24px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-instructions__articles-num{font-weight:500;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--brandGreen);border-radius:50%;color:var(--stcWhite);height:40px;margin-right:16px;width:40px}@media screen and (min-width:1024px){.mfui-instructions__articles-num{display:none}}.mfui-instructions__picture_background_spbSky0{background-color:var(--spbSky0);border-radius:12px}.mfui-instructions__picture_background_spbSky0 .mfui-instructions__img-wrapper:before{display:none}.mfui-instructions__arrow{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:2}@media screen and (max-width:767px){.mfui-instructions__arrow{display:none}}.mfui-instructions__arrow_prev{left:24px}.mfui-instructions__arrow_next{right:24px}.mfui-instructions__qr-code{-webkit-box-sizing:border-box;box-sizing:border-box;display:none;padding:12px;position:absolute;right:64px;top:12px;width:126px;z-index:3}@media screen and (min-width:768px){.mfui-instructions__qr-code{display:block}}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-instructions__qr-code{right:44px}}.mfui-instructions__qr-code-image{display:block;height:auto;width:100%}.mfui-instructions__qr-code-text{font-size:12px;font-weight:500;line-height:12px;margin-bottom:12px;text-align:center}.mfui-instructions_reversed .mfui-instructions__title_resolution_mobile{margin-bottom:16px}@media screen and (max-width:1023px){.mfui-instructions_reversed .mfui-instructions__picture{margin-bottom:0;max-height:100%}.mfui-instructions_reversed .mfui-instructions__articles{display:none}}@media screen and (max-width:767px){.mfui-instructions_reversed .mfui-instructions__articles-title-block{margin-bottom:32px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-instructions_reversed .mfui-instructions__articles-title-block{margin-bottom:40px}}@media screen and (min-width:1024px){.mfui-instructions_items-gap_medium .mfui-instructions__articles-item:not(:last-child){margin-bottom:24px}}.mfui-instructions_items-gap_medium .mfui-instructions__text{margin-top:32px}@media screen and (min-width:768px){.mfui-instructions_items-gap_medium .mfui-instructions__text{margin-top:40px}}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import SwiperCore from 'swiper';
|
|
3
|
+
import './Instructions.scss';
|
|
4
|
+
export declare const pictureAlignTypes: {
|
|
5
|
+
readonly LEFT: "left";
|
|
6
|
+
readonly RIGHT: "right";
|
|
7
|
+
};
|
|
8
|
+
export declare const pictureVerticalAlignTypes: {
|
|
9
|
+
CENTER: string;
|
|
10
|
+
TOP: string;
|
|
11
|
+
UNSET: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const pictureMaskTypes: {
|
|
14
|
+
readonly ANDROID: "android";
|
|
15
|
+
readonly ANDROID_CROPPED: "android-cropped";
|
|
16
|
+
readonly NEW_IPHONE: "new-iphone";
|
|
17
|
+
readonly BLACK_IPHONE: "black-iphone";
|
|
18
|
+
readonly WHITE_IPHONE: "white-iphone";
|
|
19
|
+
readonly LAPTOP: "laptop";
|
|
20
|
+
readonly LAPTOP_NEW: "laptop-new";
|
|
21
|
+
readonly IPHONE_12: "iphone-12";
|
|
22
|
+
readonly IPHONE_15: "iphone-15";
|
|
23
|
+
readonly IPHONE_CROPPED: "iphone-cropped";
|
|
24
|
+
readonly NONE: "none";
|
|
25
|
+
};
|
|
26
|
+
export declare const pictureBackgroundColorTypes: {
|
|
27
|
+
readonly SPB_SKY_0: "spbSky0";
|
|
28
|
+
};
|
|
29
|
+
export declare const arrowTheme: {
|
|
30
|
+
readonly PURPLE: "purple";
|
|
31
|
+
readonly DARK: "dark";
|
|
32
|
+
};
|
|
33
|
+
export declare const elementOrderTypes: {
|
|
34
|
+
readonly DEFAULT: "default";
|
|
35
|
+
readonly REVERSED: "reversed";
|
|
36
|
+
};
|
|
37
|
+
type PictureAlignTypesType = (typeof pictureAlignTypes)[keyof typeof pictureAlignTypes];
|
|
38
|
+
type PictureVerticalAlignTypesType = (typeof pictureVerticalAlignTypes)[keyof typeof pictureVerticalAlignTypes];
|
|
39
|
+
type PictureMaskTypesType = (typeof pictureMaskTypes)[keyof typeof pictureMaskTypes];
|
|
40
|
+
type PictureBackgroundColorsType = (typeof pictureBackgroundColorTypes)[keyof typeof pictureBackgroundColorTypes];
|
|
41
|
+
type ArrowThemeType = (typeof arrowTheme)[keyof typeof arrowTheme];
|
|
42
|
+
type ElementOrderType = (typeof elementOrderTypes)[keyof typeof elementOrderTypes];
|
|
43
|
+
export type InstructionItemType = {
|
|
44
|
+
title: string | React.ReactNode | React.ReactNode[];
|
|
45
|
+
mediaUrl: string;
|
|
46
|
+
isVideo: boolean;
|
|
47
|
+
imageAlt?: string;
|
|
48
|
+
/** Ссылка на изображение с QR-кодом */
|
|
49
|
+
qrCode?: string;
|
|
50
|
+
/** Текст для плашки с изображением QR-кода */
|
|
51
|
+
qrCodeText?: string | React.ReactNode | React.ReactNode[];
|
|
52
|
+
};
|
|
53
|
+
export type ButtonType = {
|
|
54
|
+
title: string;
|
|
55
|
+
type?: 'primary' | 'outline';
|
|
56
|
+
icon?: React.JSX.Element;
|
|
57
|
+
href?: string;
|
|
58
|
+
target?: '_self' | '_blank' | '_parent' | '_top';
|
|
59
|
+
rel?: string;
|
|
60
|
+
onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
|
|
61
|
+
};
|
|
62
|
+
export interface IInstructionsProps {
|
|
63
|
+
/** Дополнительные data атрибуты к внутренним элементам */
|
|
64
|
+
dataAttrs?: {
|
|
65
|
+
root?: Record<string, string>;
|
|
66
|
+
item?: Record<string, string>;
|
|
67
|
+
image?: Record<string, string>;
|
|
68
|
+
mobileItemText?: Record<string, string>;
|
|
69
|
+
wrapper?: Record<string, string>;
|
|
70
|
+
arrowPrev?: Record<string, string>;
|
|
71
|
+
arrowNext?: Record<string, string>;
|
|
72
|
+
button?: Record<string, string>;
|
|
73
|
+
};
|
|
74
|
+
/** Ссылка на корневой элемент */
|
|
75
|
+
rootRef?: React.Ref<HTMLDivElement>;
|
|
76
|
+
/** Дополнительные классы для внутренних элементов */
|
|
77
|
+
classes?: {
|
|
78
|
+
instructionItem?: string;
|
|
79
|
+
desktopInstructionItem?: string;
|
|
80
|
+
mobileInstructionItem?: string;
|
|
81
|
+
activeInstructionItem?: string;
|
|
82
|
+
desktopItemTitle?: string;
|
|
83
|
+
mobileItemTitle?: string;
|
|
84
|
+
instructionItemImg?: string;
|
|
85
|
+
additionalText?: string;
|
|
86
|
+
arrowPrev?: string;
|
|
87
|
+
arrowNext?: string;
|
|
88
|
+
button?: string;
|
|
89
|
+
};
|
|
90
|
+
/** Заголовок инструкции */
|
|
91
|
+
title?: string;
|
|
92
|
+
/** Пункты инструкции */
|
|
93
|
+
instructionItems: InstructionItemType[];
|
|
94
|
+
/** Отступ между пунктами инструкции. DEPRECATED: 'large' */
|
|
95
|
+
itemsGap?: 'medium' | 'large';
|
|
96
|
+
/** Описание после инструкции */
|
|
97
|
+
additionalText?: string;
|
|
98
|
+
/** Расположение изображения по горизонтали */
|
|
99
|
+
pictureAlign?: PictureAlignTypesType;
|
|
100
|
+
/** Расположение изображения по вертикали */
|
|
101
|
+
pictureVerticalAlign?: PictureVerticalAlignTypesType;
|
|
102
|
+
/** Маска изображения */
|
|
103
|
+
pictureMask?: PictureMaskTypesType;
|
|
104
|
+
/** Цвет фона изображения */
|
|
105
|
+
pictureBackgroundColor?: PictureBackgroundColorsType;
|
|
106
|
+
/** Показать стрелки для смены пунктов инструкции */
|
|
107
|
+
showArrows?: boolean;
|
|
108
|
+
/** Цветовая тема стрелок навигации */
|
|
109
|
+
arrowsTheme?: ArrowThemeType;
|
|
110
|
+
/** Вертикальный порядок элементов на мобильных устройствах и планшетах */
|
|
111
|
+
elementOrder?: ElementOrderType;
|
|
112
|
+
/** Показать нумерацию пунктов инструкции на мобильных устройствах */
|
|
113
|
+
showMobileNumeration?: boolean;
|
|
114
|
+
/** Кнопка */
|
|
115
|
+
button?: ButtonType;
|
|
116
|
+
/** Ref на swiper */
|
|
117
|
+
getSwiper?: (instance: SwiperCore) => void;
|
|
118
|
+
}
|
|
119
|
+
declare const Instructions: React.FC<React.PropsWithChildren<IInstructionsProps>>;
|
|
120
|
+
export default Instructions;
|
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.pictureVerticalAlignTypes = exports.pictureMaskTypes = exports.pictureBackgroundColorTypes = exports.pictureAlignTypes = exports.elementOrderTypes = exports["default"] = exports.arrowTheme = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
require("core-js/modules/es.array.map.js");
|
|
11
|
+
var React = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _uiCore = require("@megafon/ui-core");
|
|
13
|
+
var _uiHelpers = require("@megafon/ui-helpers");
|
|
14
|
+
var _setRelAttribute = require("../../helpers/setRelAttribute");
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
18
|
+
/* eslint-disable jsx-a11y/no-static-element-interactions */
|
|
19
|
+
/* eslint-disable jsx-a11y/click-events-have-key-events */
|
|
20
|
+
|
|
21
|
+
var Swiper = null;
|
|
22
|
+
var SwiperSlide = null;
|
|
23
|
+
try {
|
|
24
|
+
// eslint-disable-next-line global-require, @typescript-eslint/no-var-requires
|
|
25
|
+
var SwiperAll = require('swiper/react');
|
|
26
|
+
Swiper = SwiperAll.Swiper;
|
|
27
|
+
SwiperSlide = SwiperAll.SwiperSlide;
|
|
28
|
+
} catch (e) {
|
|
29
|
+
// eslint-disable-next-line no-console
|
|
30
|
+
console.warn("\n WARNING: megafon/ui-share is using the latest version of swiper. \n For more information about server-side rendering\n please check the Instructions component documentation at:\n https://ui.megafon.ru/components/instructions\n ");
|
|
31
|
+
}
|
|
32
|
+
var pictureAlignTypes = exports.pictureAlignTypes = {
|
|
33
|
+
LEFT: 'left',
|
|
34
|
+
RIGHT: 'right'
|
|
35
|
+
};
|
|
36
|
+
var pictureVerticalAlignTypes = exports.pictureVerticalAlignTypes = {
|
|
37
|
+
CENTER: 'center',
|
|
38
|
+
TOP: 'top',
|
|
39
|
+
UNSET: 'unset'
|
|
40
|
+
};
|
|
41
|
+
var pictureMaskTypes = exports.pictureMaskTypes = {
|
|
42
|
+
ANDROID: 'android',
|
|
43
|
+
ANDROID_CROPPED: 'android-cropped',
|
|
44
|
+
NEW_IPHONE: 'new-iphone',
|
|
45
|
+
BLACK_IPHONE: 'black-iphone',
|
|
46
|
+
WHITE_IPHONE: 'white-iphone',
|
|
47
|
+
LAPTOP: 'laptop',
|
|
48
|
+
LAPTOP_NEW: 'laptop-new',
|
|
49
|
+
IPHONE_12: 'iphone-12',
|
|
50
|
+
IPHONE_15: 'iphone-15',
|
|
51
|
+
IPHONE_CROPPED: 'iphone-cropped',
|
|
52
|
+
NONE: 'none'
|
|
53
|
+
};
|
|
54
|
+
var pictureBackgroundColorTypes = exports.pictureBackgroundColorTypes = {
|
|
55
|
+
SPB_SKY_0: 'spbSky0'
|
|
56
|
+
};
|
|
57
|
+
var arrowTheme = exports.arrowTheme = {
|
|
58
|
+
PURPLE: 'purple',
|
|
59
|
+
DARK: 'dark'
|
|
60
|
+
};
|
|
61
|
+
var elementOrderTypes = exports.elementOrderTypes = {
|
|
62
|
+
DEFAULT: 'default',
|
|
63
|
+
REVERSED: 'reversed'
|
|
64
|
+
};
|
|
65
|
+
var testIdPrefix = 'Instructions';
|
|
66
|
+
var cn = (0, _uiHelpers.cnCreate)('mfui-instructions');
|
|
67
|
+
var swiperSlideCn = cn('slide');
|
|
68
|
+
var Instructions = function Instructions(_ref) {
|
|
69
|
+
var dataAttrs = _ref.dataAttrs,
|
|
70
|
+
rootRef = _ref.rootRef,
|
|
71
|
+
_ref$classes = _ref.classes,
|
|
72
|
+
_ref$classes2 = _ref$classes === void 0 ? {} : _ref$classes,
|
|
73
|
+
instructionItem = _ref$classes2.instructionItem,
|
|
74
|
+
desktopInstructionItem = _ref$classes2.desktopInstructionItem,
|
|
75
|
+
mobileInstructionItem = _ref$classes2.mobileInstructionItem,
|
|
76
|
+
activeInstructionItem = _ref$classes2.activeInstructionItem,
|
|
77
|
+
desktopItemTitle = _ref$classes2.desktopItemTitle,
|
|
78
|
+
mobileItemTitle = _ref$classes2.mobileItemTitle,
|
|
79
|
+
instructionItemImg = _ref$classes2.instructionItemImg,
|
|
80
|
+
additionalText = _ref$classes2.additionalText,
|
|
81
|
+
arrowPrev = _ref$classes2.arrowPrev,
|
|
82
|
+
arrowNext = _ref$classes2.arrowNext,
|
|
83
|
+
buttonClass = _ref$classes2.button,
|
|
84
|
+
_ref$title = _ref.title,
|
|
85
|
+
title = _ref$title === void 0 ? '' : _ref$title,
|
|
86
|
+
instructionItems = _ref.instructionItems,
|
|
87
|
+
itemsGap = _ref.itemsGap,
|
|
88
|
+
_ref$pictureAlign = _ref.pictureAlign,
|
|
89
|
+
pictureAlign = _ref$pictureAlign === void 0 ? 'left' : _ref$pictureAlign,
|
|
90
|
+
_ref$pictureVerticalA = _ref.pictureVerticalAlign,
|
|
91
|
+
pictureVerticalAlign = _ref$pictureVerticalA === void 0 ? 'center' : _ref$pictureVerticalA,
|
|
92
|
+
_ref$pictureMask = _ref.pictureMask,
|
|
93
|
+
pictureMask = _ref$pictureMask === void 0 ? 'none' : _ref$pictureMask,
|
|
94
|
+
pictureBackgroundColor = _ref.pictureBackgroundColor,
|
|
95
|
+
getSwiper = _ref.getSwiper,
|
|
96
|
+
text = _ref.additionalText,
|
|
97
|
+
showArrows = _ref.showArrows,
|
|
98
|
+
_ref$arrowsTheme = _ref.arrowsTheme,
|
|
99
|
+
arrowsTheme = _ref$arrowsTheme === void 0 ? arrowTheme.DARK : _ref$arrowsTheme,
|
|
100
|
+
_ref$elementOrder = _ref.elementOrder,
|
|
101
|
+
elementOrder = _ref$elementOrder === void 0 ? 'default' : _ref$elementOrder,
|
|
102
|
+
showMobileNumeration = _ref.showMobileNumeration,
|
|
103
|
+
button = _ref.button,
|
|
104
|
+
children = _ref.children;
|
|
105
|
+
var _React$useState = React.useState(),
|
|
106
|
+
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
|
107
|
+
swiperInstance = _React$useState2[0],
|
|
108
|
+
setSwiperInstance = _React$useState2[1];
|
|
109
|
+
var _React$useState3 = React.useState(0),
|
|
110
|
+
_React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
|
|
111
|
+
slideIndex = _React$useState4[0],
|
|
112
|
+
setSlideIndex = _React$useState4[1];
|
|
113
|
+
var showButton = button === null || button === void 0 ? void 0 : button.title;
|
|
114
|
+
var isMobileReversed = elementOrder === 'reversed';
|
|
115
|
+
var getSwiperInstance = React.useCallback(function (swiper) {
|
|
116
|
+
setSwiperInstance(swiper);
|
|
117
|
+
getSwiper && getSwiper(swiper);
|
|
118
|
+
}, [getSwiper]);
|
|
119
|
+
var getActiveCustomClass = React.useCallback(function (articleIndex, activeIndex) {
|
|
120
|
+
if (articleIndex !== activeIndex) {
|
|
121
|
+
return undefined;
|
|
122
|
+
}
|
|
123
|
+
return activeInstructionItem;
|
|
124
|
+
}, [activeInstructionItem]);
|
|
125
|
+
var handleArticleClick = React.useCallback(function (ind) {
|
|
126
|
+
return function () {
|
|
127
|
+
setSlideIndex(ind);
|
|
128
|
+
swiperInstance && swiperInstance.slideTo(ind);
|
|
129
|
+
};
|
|
130
|
+
}, [swiperInstance]);
|
|
131
|
+
var handleSlideChange = React.useCallback(function (_ref2) {
|
|
132
|
+
var activeIndex = _ref2.activeIndex;
|
|
133
|
+
setSlideIndex(activeIndex);
|
|
134
|
+
}, []);
|
|
135
|
+
var handlePrevClick = React.useCallback(function () {
|
|
136
|
+
if (!swiperInstance) {
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
swiperInstance.slidePrev();
|
|
140
|
+
}, [swiperInstance]);
|
|
141
|
+
var handleNextClick = React.useCallback(function () {
|
|
142
|
+
if (!swiperInstance) {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
swiperInstance.slideNext();
|
|
146
|
+
}, [swiperInstance]);
|
|
147
|
+
var renderVideo = React.useCallback(function (mediaUrl, index) {
|
|
148
|
+
return /*#__PURE__*/React.createElement("video", (0, _extends2["default"])({
|
|
149
|
+
loop: true,
|
|
150
|
+
muted: true,
|
|
151
|
+
autoPlay: true,
|
|
152
|
+
playsInline: true,
|
|
153
|
+
className: cn('swiper-img', {
|
|
154
|
+
video: true
|
|
155
|
+
})
|
|
156
|
+
}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.image, index + 1)), /*#__PURE__*/React.createElement("source", {
|
|
157
|
+
src: mediaUrl,
|
|
158
|
+
type: "video/mp4"
|
|
159
|
+
}));
|
|
160
|
+
}, [dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.image]);
|
|
161
|
+
var renderMobileDots = React.useCallback(function () {
|
|
162
|
+
return /*#__PURE__*/React.createElement("ul", {
|
|
163
|
+
className: cn('articles-dots', {
|
|
164
|
+
reversed: isMobileReversed
|
|
165
|
+
}),
|
|
166
|
+
"data-testid": "".concat(testIdPrefix, "-articles-dots-mobile")
|
|
167
|
+
}, instructionItems.map(function (_item, i) {
|
|
168
|
+
return /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, i + 1), {
|
|
169
|
+
key: i,
|
|
170
|
+
className: cn('articles-dot', {
|
|
171
|
+
active: slideIndex === i
|
|
172
|
+
}, [getActiveCustomClass(i, slideIndex), instructionItem, mobileInstructionItem]),
|
|
173
|
+
onClick: handleArticleClick(i)
|
|
174
|
+
}));
|
|
175
|
+
}));
|
|
176
|
+
}, [instructionItems, dataAttrs, slideIndex, instructionItem, mobileInstructionItem, getActiveCustomClass, handleArticleClick, isMobileReversed]);
|
|
177
|
+
var renderSlider = React.useCallback(function () {
|
|
178
|
+
if (!Swiper || !SwiperSlide) {
|
|
179
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
180
|
+
}
|
|
181
|
+
return /*#__PURE__*/React.createElement(Swiper, {
|
|
182
|
+
noSwiping: false,
|
|
183
|
+
onSwiper: getSwiperInstance,
|
|
184
|
+
noSwipingClass: swiperSlideCn,
|
|
185
|
+
onSlideChange: handleSlideChange,
|
|
186
|
+
className: cn('swiper')
|
|
187
|
+
}, instructionItems.map(function (_ref3, i) {
|
|
188
|
+
var mediaUrl = _ref3.mediaUrl,
|
|
189
|
+
isVideo = _ref3.isVideo,
|
|
190
|
+
imageAlt = _ref3.imageAlt;
|
|
191
|
+
return /*#__PURE__*/React.createElement(SwiperSlide, {
|
|
192
|
+
className: swiperSlideCn,
|
|
193
|
+
key: i + mediaUrl
|
|
194
|
+
}, isVideo ? renderVideo(mediaUrl, i) : /*#__PURE__*/React.createElement("img", (0, _extends2["default"])({
|
|
195
|
+
alt: imageAlt,
|
|
196
|
+
src: mediaUrl
|
|
197
|
+
}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.image, i + 1), {
|
|
198
|
+
className: cn('swiper-img', [instructionItemImg])
|
|
199
|
+
})));
|
|
200
|
+
}));
|
|
201
|
+
}, [getSwiperInstance, instructionItemImg, instructionItems, renderVideo, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.image, handleSlideChange]);
|
|
202
|
+
var renderTitle = React.useCallback(function (resolution) {
|
|
203
|
+
return /*#__PURE__*/React.createElement(_uiCore.Header, {
|
|
204
|
+
className: cn('title', {
|
|
205
|
+
resolution: resolution
|
|
206
|
+
}),
|
|
207
|
+
as: "h2"
|
|
208
|
+
}, (0, _uiHelpers.convert)(title, _uiHelpers.titleConvertConfig));
|
|
209
|
+
}, [title]);
|
|
210
|
+
var renderQrCode = React.useCallback(function () {
|
|
211
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, instructionItems.map(function (_ref4, i) {
|
|
212
|
+
var qrCode = _ref4.qrCode,
|
|
213
|
+
qrCodeText = _ref4.qrCodeText;
|
|
214
|
+
return slideIndex === i && !!qrCode && /*#__PURE__*/React.createElement(_uiCore.Tile, {
|
|
215
|
+
className: cn('qr-code'),
|
|
216
|
+
radius: "rounded",
|
|
217
|
+
shadowLevel: "default",
|
|
218
|
+
key: qrCode
|
|
219
|
+
}, !!qrCodeText && /*#__PURE__*/React.createElement("div", {
|
|
220
|
+
className: cn('qr-code-text')
|
|
221
|
+
}, qrCodeText), /*#__PURE__*/React.createElement("img", {
|
|
222
|
+
src: qrCode,
|
|
223
|
+
className: cn('qr-code-image'),
|
|
224
|
+
alt: "QR-\u043A\u043E\u0434"
|
|
225
|
+
}));
|
|
226
|
+
}));
|
|
227
|
+
}, [instructionItems, slideIndex]);
|
|
228
|
+
var renderText = React.useCallback(function () {
|
|
229
|
+
return /*#__PURE__*/React.createElement(_uiCore.Paragraph, {
|
|
230
|
+
className: cn('text', [additionalText]),
|
|
231
|
+
hasMargin: false
|
|
232
|
+
}, (0, _uiHelpers.convert)(text, _uiHelpers.textConvertConfig));
|
|
233
|
+
}, [text, additionalText]);
|
|
234
|
+
var renderPicture = React.useCallback(function () {
|
|
235
|
+
if (pictureMask === pictureMaskTypes.NONE) {
|
|
236
|
+
return renderSlider();
|
|
237
|
+
}
|
|
238
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
239
|
+
className: cn('img-wrapper'),
|
|
240
|
+
"data-testid": "".concat(testIdPrefix, "-img-wrapper")
|
|
241
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
242
|
+
className: cn('device-screen')
|
|
243
|
+
}), renderSlider());
|
|
244
|
+
}, [pictureMask, renderSlider]);
|
|
245
|
+
var renderDesktopArticles = React.useCallback(function () {
|
|
246
|
+
return /*#__PURE__*/React.createElement("ul", {
|
|
247
|
+
className: cn('articles-list', {
|
|
248
|
+
'text-after': !!text,
|
|
249
|
+
desktop: true
|
|
250
|
+
}),
|
|
251
|
+
"data-testid": "".concat(testIdPrefix, "-articles-list-desktop")
|
|
252
|
+
}, instructionItems.map(function (_ref5, i) {
|
|
253
|
+
var itemTitle = _ref5.title;
|
|
254
|
+
return /*#__PURE__*/(
|
|
255
|
+
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
256
|
+
React.createElement("li", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, i + 1), {
|
|
257
|
+
className: cn('articles-item', {
|
|
258
|
+
active: slideIndex === i
|
|
259
|
+
}, [getActiveCustomClass(i, slideIndex), instructionItem, desktopInstructionItem]),
|
|
260
|
+
"data-index": i,
|
|
261
|
+
onClick: handleArticleClick(i),
|
|
262
|
+
key: i
|
|
263
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
264
|
+
className: cn('articles-item-dot')
|
|
265
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
266
|
+
className: cn('articles-item-dot-number')
|
|
267
|
+
}, i + 1)), /*#__PURE__*/React.createElement("div", {
|
|
268
|
+
className: cn('articles-item-title', [desktopItemTitle])
|
|
269
|
+
}, itemTitle))
|
|
270
|
+
);
|
|
271
|
+
}));
|
|
272
|
+
}, [desktopInstructionItem, desktopItemTitle, getActiveCustomClass, handleArticleClick, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, instructionItem, instructionItems, slideIndex, text]);
|
|
273
|
+
var renderMobileArticles = React.useCallback(function () {
|
|
274
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
275
|
+
className: cn('articles-list', {
|
|
276
|
+
mobile: true
|
|
277
|
+
}),
|
|
278
|
+
"data-testid": "".concat(testIdPrefix, "-articles-list-mobile")
|
|
279
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
280
|
+
className: cn('articles-title-block', {
|
|
281
|
+
reversed: isMobileReversed,
|
|
282
|
+
'with-numeration': showMobileNumeration
|
|
283
|
+
})
|
|
284
|
+
}, instructionItems.map(function (_ref6, i) {
|
|
285
|
+
var itemTitle = _ref6.title;
|
|
286
|
+
return slideIndex === i && /*#__PURE__*/React.createElement("div", {
|
|
287
|
+
key: i,
|
|
288
|
+
"data-index": i,
|
|
289
|
+
className: cn('articles-title')
|
|
290
|
+
}, showMobileNumeration && /*#__PURE__*/React.createElement("span", {
|
|
291
|
+
className: cn('articles-num')
|
|
292
|
+
}, i + 1), /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.mobileItemText, i + 1), {
|
|
293
|
+
className: cn('articles-title-text', [mobileItemTitle])
|
|
294
|
+
}), itemTitle));
|
|
295
|
+
})));
|
|
296
|
+
}, [dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.mobileItemText, instructionItems, mobileItemTitle, slideIndex, isMobileReversed, showMobileNumeration]);
|
|
297
|
+
var renderArrows = React.useCallback(function () {
|
|
298
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_uiCore.NavArrow, {
|
|
299
|
+
dataAttrs: {
|
|
300
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowPrev
|
|
301
|
+
},
|
|
302
|
+
className: cn('arrow', {
|
|
303
|
+
prev: true
|
|
304
|
+
}, [arrowPrev]),
|
|
305
|
+
theme: arrowsTheme,
|
|
306
|
+
disabled: slideIndex === 0,
|
|
307
|
+
onClick: handlePrevClick
|
|
308
|
+
}), /*#__PURE__*/React.createElement(_uiCore.NavArrow, {
|
|
309
|
+
dataAttrs: {
|
|
310
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowNext
|
|
311
|
+
},
|
|
312
|
+
className: cn('arrow', {
|
|
313
|
+
next: true
|
|
314
|
+
}, [arrowNext]),
|
|
315
|
+
view: "next",
|
|
316
|
+
theme: arrowsTheme,
|
|
317
|
+
disabled: slideIndex === instructionItems.length - 1,
|
|
318
|
+
onClick: handleNextClick
|
|
319
|
+
}));
|
|
320
|
+
}, [handlePrevClick, handleNextClick, arrowsTheme, arrowPrev, arrowNext, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowPrev, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowNext, slideIndex, instructionItems.length]);
|
|
321
|
+
var renderButton = React.useCallback(function () {
|
|
322
|
+
var _ref7 = button || {},
|
|
323
|
+
buttonTitle = _ref7.title,
|
|
324
|
+
type = _ref7.type,
|
|
325
|
+
icon = _ref7.icon,
|
|
326
|
+
href = _ref7.href,
|
|
327
|
+
target = _ref7.target,
|
|
328
|
+
rel = _ref7.rel,
|
|
329
|
+
onClick = _ref7.onClick;
|
|
330
|
+
return /*#__PURE__*/React.createElement(_uiCore.Button, {
|
|
331
|
+
dataAttrs: {
|
|
332
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
|
|
333
|
+
},
|
|
334
|
+
className: cn('button', [buttonClass]),
|
|
335
|
+
type: type,
|
|
336
|
+
theme: "green",
|
|
337
|
+
icon: icon,
|
|
338
|
+
href: href,
|
|
339
|
+
target: target,
|
|
340
|
+
rel: (0, _setRelAttribute.setRelAttribute)(rel, target),
|
|
341
|
+
onClick: onClick
|
|
342
|
+
}, buttonTitle);
|
|
343
|
+
}, [button, buttonClass, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button]);
|
|
344
|
+
return /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
345
|
+
className: cn({
|
|
346
|
+
mask: pictureMask,
|
|
347
|
+
reversed: isMobileReversed,
|
|
348
|
+
'items-gap': itemsGap
|
|
349
|
+
}),
|
|
350
|
+
ref: rootRef
|
|
351
|
+
}), /*#__PURE__*/React.createElement(_uiCore.Grid, {
|
|
352
|
+
hAlign: "center"
|
|
353
|
+
}, /*#__PURE__*/React.createElement(_uiCore.GridColumn, {
|
|
354
|
+
all: "12"
|
|
355
|
+
}, !!title && renderTitle('mobile'), /*#__PURE__*/React.createElement("div", (0, _extends2["default"])({
|
|
356
|
+
className: cn('wrapper', {
|
|
357
|
+
'vertical-align': pictureVerticalAlign
|
|
358
|
+
})
|
|
359
|
+
}, (0, _uiHelpers.filterDataAttrs)(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.wrapper)), /*#__PURE__*/React.createElement("div", {
|
|
360
|
+
className: cn('picture', {
|
|
361
|
+
align: pictureAlign,
|
|
362
|
+
background: pictureBackgroundColor
|
|
363
|
+
}),
|
|
364
|
+
"data-testid": "".concat(testIdPrefix, "-picture")
|
|
365
|
+
}, isMobileReversed && renderMobileArticles(), renderPicture(), !!showArrows && renderArrows(), renderQrCode()), renderMobileDots(), /*#__PURE__*/React.createElement("div", {
|
|
366
|
+
className: cn('articles', {
|
|
367
|
+
align: pictureAlign
|
|
368
|
+
})
|
|
369
|
+
}, !!title && renderTitle('desktop'), !isMobileReversed && renderMobileArticles(), renderDesktopArticles(), text && renderText(), showButton && renderButton(), children)))));
|
|
370
|
+
};
|
|
371
|
+
var _default = exports["default"] = Instructions;
|