@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,81 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import "core-js/modules/es.array.concat.js";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { cnCreate, convert, filterDataAttrs, textConvertConfig, titleConvertConfig } from '@megafon/ui-helpers';
|
|
5
|
+
import { setRelAttribute } from "../../../../helpers/setRelAttribute";
|
|
6
|
+
import "./ServiceCard.css";
|
|
7
|
+
var ArrowRight = function ArrowRight(props) {
|
|
8
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
9
|
+
viewBox: "0 0 32 32"
|
|
10
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
|
11
|
+
d: "M12.5 20.8l4.8-4.8-4.8-4.8 1.6-1.7 6.4 6.5-6.4 6.5z"
|
|
12
|
+
}));
|
|
13
|
+
};
|
|
14
|
+
var cn = cnCreate('mfui-service-card');
|
|
15
|
+
var ServiceCard = function ServiceCard(_ref) {
|
|
16
|
+
var title = _ref.title,
|
|
17
|
+
subtitle = _ref.subtitle,
|
|
18
|
+
value = _ref.value,
|
|
19
|
+
_ref$background = _ref.background,
|
|
20
|
+
background = _ref$background === void 0 ? 'shadow' : _ref$background,
|
|
21
|
+
_ref$size = _ref.size,
|
|
22
|
+
size = _ref$size === void 0 ? 'big' : _ref$size,
|
|
23
|
+
imageSrc = _ref.imageSrc,
|
|
24
|
+
imageSrc2x = _ref.imageSrc2x,
|
|
25
|
+
_ref$imageAlt = _ref.imageAlt,
|
|
26
|
+
imageAlt = _ref$imageAlt === void 0 ? 'image' : _ref$imageAlt,
|
|
27
|
+
href = _ref.href,
|
|
28
|
+
_ref$target = _ref.target,
|
|
29
|
+
target = _ref$target === void 0 ? '_self' : _ref$target,
|
|
30
|
+
rel = _ref.rel,
|
|
31
|
+
classes = _ref.classes,
|
|
32
|
+
dataAttrs = _ref.dataAttrs,
|
|
33
|
+
onClick = _ref.onClick;
|
|
34
|
+
var isSizeSmall = size === 'small';
|
|
35
|
+
var currentRel = setRelAttribute(rel, target);
|
|
36
|
+
var imageSrcSet = imageSrc2x ? "".concat(imageSrc, ", ").concat(imageSrc2x, " 2x") : undefined;
|
|
37
|
+
var footerElement = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
38
|
+
className: cn('image-wrapper')
|
|
39
|
+
}, /*#__PURE__*/React.createElement("img", {
|
|
40
|
+
className: cn('image'),
|
|
41
|
+
src: imageSrc,
|
|
42
|
+
srcSet: imageSrcSet,
|
|
43
|
+
alt: imageAlt
|
|
44
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
45
|
+
className: cn('price')
|
|
46
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
47
|
+
className: cn('circle')
|
|
48
|
+
}, /*#__PURE__*/React.createElement(ArrowRight, {
|
|
49
|
+
className: cn('arrow')
|
|
50
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
51
|
+
className: cn('value')
|
|
52
|
+
}, value)));
|
|
53
|
+
var renderFooter = function renderFooter() {
|
|
54
|
+
if (isSizeSmall) {
|
|
55
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
56
|
+
className: cn('footer')
|
|
57
|
+
}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.footer)), footerElement);
|
|
58
|
+
}
|
|
59
|
+
return footerElement;
|
|
60
|
+
};
|
|
61
|
+
return /*#__PURE__*/React.createElement("a", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
62
|
+
className: cn({
|
|
63
|
+
background: background,
|
|
64
|
+
size: size
|
|
65
|
+
}, [classes === null || classes === void 0 ? void 0 : classes.root]),
|
|
66
|
+
href: href,
|
|
67
|
+
target: target,
|
|
68
|
+
rel: currentRel,
|
|
69
|
+
onClick: onClick
|
|
70
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
71
|
+
className: cn('header')
|
|
72
|
+
}, /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.title), {
|
|
73
|
+
className: cn('title', [classes === null || classes === void 0 ? void 0 : classes.title])
|
|
74
|
+
}), typeof title === 'string' ? convert(title, titleConvertConfig) : title), subtitle && /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.subtitle), {
|
|
75
|
+
className: cn('subtitle'),
|
|
76
|
+
style: {
|
|
77
|
+
WebkitBoxOrient: 'vertical'
|
|
78
|
+
}
|
|
79
|
+
}), typeof subtitle === 'string' ? convert(subtitle, textConvertConfig) : subtitle)), renderFooter());
|
|
80
|
+
};
|
|
81
|
+
export default ServiceCard;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type TargetType = '_self' | '_blank' | '_parent' | '_top';
|
|
3
|
+
export type ServiceCardDataType = {
|
|
4
|
+
/** Заголовок */
|
|
5
|
+
title: string | React.ReactNode | ReactNode[];
|
|
6
|
+
/** Подзаголовок */
|
|
7
|
+
subtitle?: string | React.ReactNode | ReactNode[];
|
|
8
|
+
/** Значение */
|
|
9
|
+
value: string;
|
|
10
|
+
/** Изображение */
|
|
11
|
+
imageSrc: string;
|
|
12
|
+
/** Изображение 2x */
|
|
13
|
+
imageSrc2x?: string;
|
|
14
|
+
/** Значение тега alt для изображения */
|
|
15
|
+
imageAlt?: string;
|
|
16
|
+
/** Ссылка */
|
|
17
|
+
href: string;
|
|
18
|
+
/** Атрибут ссылки target */
|
|
19
|
+
target?: TargetType;
|
|
20
|
+
/** Атрибут ссылки rel */
|
|
21
|
+
rel?: string;
|
|
22
|
+
/** Обработчик клика по кнопке */
|
|
23
|
+
onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
|
|
24
|
+
};
|
|
25
|
+
export type SizeType = 'big' | 'small';
|
|
26
|
+
export type BackgroundType = 'white' | 'gray' | 'shadow';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Carousel } from '@megafon/ui-core';
|
|
3
|
+
import { BackgroundType, CardDataType } from './types';
|
|
4
|
+
type CarouselProps = React.ComponentProps<typeof Carousel>;
|
|
5
|
+
export interface ISidePictureCards {
|
|
6
|
+
/** Карточки. Минимальное количество 2 карточки */
|
|
7
|
+
items: CardDataType[];
|
|
8
|
+
/** Цвет фона карточек */
|
|
9
|
+
background?: BackgroundType;
|
|
10
|
+
/** Выстраивать карточки в карусель */
|
|
11
|
+
hasCarousel?: boolean;
|
|
12
|
+
/** Дополнительный класс для компонента */
|
|
13
|
+
className?: string;
|
|
14
|
+
/** Дополнительные классы для внутренних элементов */
|
|
15
|
+
classes?: {
|
|
16
|
+
root?: string;
|
|
17
|
+
item?: string;
|
|
18
|
+
itemTitle?: string;
|
|
19
|
+
};
|
|
20
|
+
/** Дополнительные data атрибуты к внутренним элементам */
|
|
21
|
+
dataAttrs?: {
|
|
22
|
+
root?: Record<string, string>;
|
|
23
|
+
item?: Record<string, string>;
|
|
24
|
+
};
|
|
25
|
+
/** Обработчик смены слайда карусели */
|
|
26
|
+
onCarouselChange?: CarouselProps['onChange'];
|
|
27
|
+
/** Ссылка на корневой элемент */
|
|
28
|
+
rootRef?: React.Ref<HTMLDivElement>;
|
|
29
|
+
}
|
|
30
|
+
declare const SidePictureCards: React.FC<ISidePictureCards>;
|
|
31
|
+
export default SidePictureCards;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
+
import "core-js/modules/es.array.concat.js";
|
|
4
|
+
import "core-js/modules/es.array.map.js";
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import { Carousel, Grid, GridColumn } from '@megafon/ui-core';
|
|
7
|
+
import { breakpoints, cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
8
|
+
import SidePictureCard from "./components/SidePictureCard";
|
|
9
|
+
var slidesSettings = _defineProperty(_defineProperty({}, breakpoints.MOBILE_SMALL_START, {
|
|
10
|
+
slidesPerView: 1,
|
|
11
|
+
spaceBetween: 16
|
|
12
|
+
}), breakpoints.MOBILE_BIG_START, {
|
|
13
|
+
slidesPerView: 2,
|
|
14
|
+
spaceBetween: 20
|
|
15
|
+
});
|
|
16
|
+
var MIN_ITEMS_COUNT = 2;
|
|
17
|
+
var cn = cnCreate('mfui-side-picture-cards');
|
|
18
|
+
var SidePictureCards = function SidePictureCards(_ref) {
|
|
19
|
+
var items = _ref.items,
|
|
20
|
+
_ref$background = _ref.background,
|
|
21
|
+
background = _ref$background === void 0 ? 'gray' : _ref$background,
|
|
22
|
+
_ref$hasCarousel = _ref.hasCarousel,
|
|
23
|
+
hasCarousel = _ref$hasCarousel === void 0 ? false : _ref$hasCarousel,
|
|
24
|
+
className = _ref.className,
|
|
25
|
+
_ref$classes = _ref.classes,
|
|
26
|
+
classes = _ref$classes === void 0 ? {} : _ref$classes,
|
|
27
|
+
dataAttrs = _ref.dataAttrs,
|
|
28
|
+
onCarouselChange = _ref.onCarouselChange,
|
|
29
|
+
rootRef = _ref.rootRef;
|
|
30
|
+
if (items.length < MIN_ITEMS_COUNT) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
var renderItem = function renderItem(item, index) {
|
|
34
|
+
return /*#__PURE__*/React.createElement(SidePictureCard, _extends({}, item, {
|
|
35
|
+
background: background,
|
|
36
|
+
key: "".concat(item === null || item === void 0 ? void 0 : item.title, "_").concat(index),
|
|
37
|
+
classes: {
|
|
38
|
+
root: classes.item,
|
|
39
|
+
title: classes.itemTitle
|
|
40
|
+
},
|
|
41
|
+
dataAttrs: {
|
|
42
|
+
root: _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, index + 1))
|
|
43
|
+
}
|
|
44
|
+
}));
|
|
45
|
+
};
|
|
46
|
+
var renderContent = function renderContent() {
|
|
47
|
+
if (hasCarousel) {
|
|
48
|
+
return /*#__PURE__*/React.createElement(Carousel, {
|
|
49
|
+
slidesSettings: slidesSettings,
|
|
50
|
+
onChange: onCarouselChange
|
|
51
|
+
}, items.map(renderItem));
|
|
52
|
+
}
|
|
53
|
+
return /*#__PURE__*/React.createElement(Grid, {
|
|
54
|
+
guttersLeft: "medium",
|
|
55
|
+
guttersBottom: "medium"
|
|
56
|
+
}, items.map(function (item, i) {
|
|
57
|
+
return /*#__PURE__*/React.createElement(GridColumn, {
|
|
58
|
+
all: "6",
|
|
59
|
+
mobile: "12",
|
|
60
|
+
key: "".concat(item === null || item === void 0 ? void 0 : item.title, "_").concat(i)
|
|
61
|
+
}, renderItem(item, i));
|
|
62
|
+
}));
|
|
63
|
+
};
|
|
64
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
65
|
+
className: cn([className, classes.root]),
|
|
66
|
+
ref: rootRef
|
|
67
|
+
}), renderContent());
|
|
68
|
+
};
|
|
69
|
+
export default SidePictureCards;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-side-picture-card{background-color:var(--base);border-radius:24px;color:var(--content);display:grid;gap:20px;grid-template-columns:auto;grid-template-rows:1fr auto;min-height:100%;padding:12px;text-decoration:none;-webkit-transition:background-color,-webkit-box-shadow;transition:background-color,-webkit-box-shadow;transition:background-color,box-shadow;transition:background-color,box-shadow,-webkit-box-shadow;-webkit-transition-duration:.3s;transition-duration:.3s}@media screen and (min-width:1280px){.mfui-side-picture-card{grid-template-columns:1fr 1fr;grid-template-rows:none}}.mfui-side-picture-card:hover{text-decoration:none}.mfui-side-picture-card__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;padding:12px}@media screen and (min-width:1280px){.mfui-side-picture-card__content{padding:12px 0 12px 12px}}.mfui-side-picture-card__title{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin-bottom:16px}@media screen and (min-width:1280px){.mfui-side-picture-card__title{margin-bottom:24px}}.mfui-side-picture-card__items{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:12px;margin-bottom:auto}@media screen and (min-width:1280px){.mfui-side-picture-card__items{gap:16px}}.mfui-side-picture-card__item{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px}.mfui-side-picture-card__item-icon{display:block;max-height:32px;min-width:32px;width:32px}.mfui-side-picture-card__item-icon svg{display:block;height:100%;width:100%;fill:var(--brandGreen)}.mfui-side-picture-card__item-description{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-side-picture-card__item-text{-webkit-line-clamp:3;font-size:15px;font-weight:400}.mfui-side-picture-card__item-info,.mfui-side-picture-card__item-text{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;line-height:24px}.mfui-side-picture-card__item-info{-webkit-line-clamp:2;font-size:18px;font-weight:500;letter-spacing:.5px}@media screen and (min-width:1280px){.mfui-side-picture-card__item-info{font-size:20px;line-height:28px}}.mfui-side-picture-card__button{margin-top:32px}.mfui-side-picture-card__picture{height:172px;position:relative}@media screen and (min-width:768px) and (max-width:1023px){.mfui-side-picture-card__picture{height:197px}}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-side-picture-card__picture{height:270px}}@media screen and (min-width:1280px){.mfui-side-picture-card__picture{height:100%}}.mfui-side-picture-card__image{border-radius:24px;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.mfui-side-picture-card_active:hover:not(.mfui-side-picture-card_background_gray){-webkit-box-shadow:0 8px 28px rgba(0,0,0,.1);box-shadow:0 8px 28px rgba(0,0,0,.1)}.mfui-side-picture-card_background_gray{background-color:var(--spbSky0)}.mfui-side-picture-card_background_gray.mfui-side-picture-card_active:hover{background-color:var(--spbSky1)}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { BackgroundType, CardDataType } from '../types';
|
|
3
|
+
import './SidePictureCard.scss';
|
|
4
|
+
export type SidePictureCardType = CardDataType & {
|
|
5
|
+
background: BackgroundType;
|
|
6
|
+
classes?: {
|
|
7
|
+
root?: string;
|
|
8
|
+
title?: string;
|
|
9
|
+
button?: string;
|
|
10
|
+
};
|
|
11
|
+
dataAttrs?: {
|
|
12
|
+
root?: Record<string, string>;
|
|
13
|
+
title?: Record<string, string>;
|
|
14
|
+
button?: Record<string, string>;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
declare const SidePictureCard: React.FC<SidePictureCardType>;
|
|
18
|
+
export default SidePictureCard;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import "core-js/modules/es.array.concat.js";
|
|
3
|
+
import "core-js/modules/es.array.map.js";
|
|
4
|
+
import "core-js/modules/es.array.slice.js";
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import { Button, Header } from '@megafon/ui-core';
|
|
7
|
+
import { breakpoints, cnCreate, convert } from '@megafon/ui-helpers';
|
|
8
|
+
import { setRelAttribute } from "../../../helpers/setRelAttribute";
|
|
9
|
+
import "./SidePictureCard.css";
|
|
10
|
+
var MAX_ICON_ITEMS_COUNT = 4;
|
|
11
|
+
var cn = cnCreate('mfui-side-picture-card');
|
|
12
|
+
var SidePictureCard = function SidePictureCard(_ref) {
|
|
13
|
+
var background = _ref.background,
|
|
14
|
+
title = _ref.title,
|
|
15
|
+
image = _ref.image,
|
|
16
|
+
_ref$iconItems = _ref.iconItems,
|
|
17
|
+
iconItems = _ref$iconItems === void 0 ? [] : _ref$iconItems,
|
|
18
|
+
button = _ref.button,
|
|
19
|
+
href = _ref.href,
|
|
20
|
+
target = _ref.target,
|
|
21
|
+
rel = _ref.rel,
|
|
22
|
+
_ref$classes = _ref.classes,
|
|
23
|
+
classes = _ref$classes === void 0 ? {} : _ref$classes,
|
|
24
|
+
dataAttrs = _ref.dataAttrs;
|
|
25
|
+
var _ref2 = button || {},
|
|
26
|
+
buttonTitle = _ref2.title,
|
|
27
|
+
buttonHref = _ref2.href,
|
|
28
|
+
buttonTarget = _ref2.target,
|
|
29
|
+
buttonRel = _ref2.rel,
|
|
30
|
+
onButtonClick = _ref2.onClick;
|
|
31
|
+
var isLink = !!href && !buttonHref;
|
|
32
|
+
var ElementType = isLink ? 'a' : 'div';
|
|
33
|
+
var currentRel = setRelAttribute(rel, target);
|
|
34
|
+
var currentButtonRel = setRelAttribute(buttonRel, buttonTarget);
|
|
35
|
+
var visibleIconItems = iconItems.slice(0, MAX_ICON_ITEMS_COUNT);
|
|
36
|
+
var items = visibleIconItems.map(function (item, i) {
|
|
37
|
+
var icon = item.icon,
|
|
38
|
+
_item$text = item.text,
|
|
39
|
+
text = _item$text === void 0 ? '' : _item$text,
|
|
40
|
+
_item$info = item.info,
|
|
41
|
+
info = _item$info === void 0 ? '' : _item$info;
|
|
42
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
43
|
+
className: cn('item'),
|
|
44
|
+
key: "".concat(text || info, "_").concat(i)
|
|
45
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
46
|
+
className: cn('item-icon')
|
|
47
|
+
}, icon), /*#__PURE__*/React.createElement("div", {
|
|
48
|
+
className: cn('item-description')
|
|
49
|
+
}, !!text && /*#__PURE__*/React.createElement("div", {
|
|
50
|
+
className: cn('item-text')
|
|
51
|
+
}, convert(text, {})), !!info && /*#__PURE__*/React.createElement("div", {
|
|
52
|
+
className: cn('item-info')
|
|
53
|
+
}, convert(info, {}))));
|
|
54
|
+
});
|
|
55
|
+
return /*#__PURE__*/React.createElement(ElementType, _extends({
|
|
56
|
+
className: cn({
|
|
57
|
+
background: background,
|
|
58
|
+
active: isLink
|
|
59
|
+
}, [classes.root])
|
|
60
|
+
}, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root, {
|
|
61
|
+
href: href,
|
|
62
|
+
target: isLink ? target : undefined,
|
|
63
|
+
rel: isLink ? currentRel : undefined
|
|
64
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
65
|
+
className: cn('content')
|
|
66
|
+
}, !!title && /*#__PURE__*/React.createElement(Header, {
|
|
67
|
+
className: cn('title', [classes === null || classes === void 0 ? void 0 : classes.title]),
|
|
68
|
+
dataAttrs: {
|
|
69
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.title
|
|
70
|
+
},
|
|
71
|
+
as: "h3"
|
|
72
|
+
}, convert(title, {})), /*#__PURE__*/React.createElement("div", {
|
|
73
|
+
className: cn('items')
|
|
74
|
+
}, items), !!buttonTitle && /*#__PURE__*/React.createElement(Button, {
|
|
75
|
+
className: cn('button', [classes.button]),
|
|
76
|
+
dataAttrs: {
|
|
77
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
|
|
78
|
+
},
|
|
79
|
+
href: buttonHref,
|
|
80
|
+
target: buttonTarget,
|
|
81
|
+
rel: currentButtonRel,
|
|
82
|
+
onClick: onButtonClick
|
|
83
|
+
}, buttonTitle)), /*#__PURE__*/React.createElement("picture", {
|
|
84
|
+
className: cn('picture')
|
|
85
|
+
}, /*#__PURE__*/React.createElement("source", {
|
|
86
|
+
media: "(min-width: ".concat(breakpoints.DESKTOP_MIDDLE_START, "px)"),
|
|
87
|
+
srcSet: image.srcWide
|
|
88
|
+
}), /*#__PURE__*/React.createElement("img", {
|
|
89
|
+
className: cn('image'),
|
|
90
|
+
src: image.src,
|
|
91
|
+
alt: image.alt || 'image'
|
|
92
|
+
})));
|
|
93
|
+
};
|
|
94
|
+
export default SidePictureCard;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type TargetType = '_self' | '_blank' | '_parent' | '_top';
|
|
3
|
+
type ButtonType = {
|
|
4
|
+
/** Название */
|
|
5
|
+
title: string;
|
|
6
|
+
/** Ссылка */
|
|
7
|
+
href?: string;
|
|
8
|
+
/** Атрибут ссылки target */
|
|
9
|
+
target?: TargetType;
|
|
10
|
+
/** Атрибут ссылки rel */
|
|
11
|
+
rel?: string;
|
|
12
|
+
/** Обработчик клика */
|
|
13
|
+
onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
|
|
14
|
+
};
|
|
15
|
+
type ImageType = {
|
|
16
|
+
/** Изображение на разрешении экрана 0-1279 */
|
|
17
|
+
src: string;
|
|
18
|
+
/** Изображение на разрешении экрана 1280+ */
|
|
19
|
+
srcWide: string;
|
|
20
|
+
/** Значение тега alt для изображения */
|
|
21
|
+
alt?: string;
|
|
22
|
+
};
|
|
23
|
+
type IconContentType = {
|
|
24
|
+
/** Иконка */
|
|
25
|
+
icon: React.ReactNode;
|
|
26
|
+
/** Текст-описание */
|
|
27
|
+
text?: string;
|
|
28
|
+
/** Дополнительная информация, значение */
|
|
29
|
+
info?: string;
|
|
30
|
+
};
|
|
31
|
+
export type CardDataType = {
|
|
32
|
+
/** Заголовок */
|
|
33
|
+
title?: string;
|
|
34
|
+
/** Изображение */
|
|
35
|
+
image: ImageType;
|
|
36
|
+
/** Список пунктов с иконками */
|
|
37
|
+
iconItems: IconContentType[];
|
|
38
|
+
/** Кнопка */
|
|
39
|
+
button?: ButtonType;
|
|
40
|
+
/** Ссылка */
|
|
41
|
+
href?: string;
|
|
42
|
+
/** Атрибут ссылки target */
|
|
43
|
+
target?: TargetType;
|
|
44
|
+
/** Атрибут ссылки rel */
|
|
45
|
+
rel?: string;
|
|
46
|
+
};
|
|
47
|
+
export type BackgroundType = 'white' | 'gray';
|
|
48
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-stepper{gap:16px}.mfui-stepper,.mfui-stepper__items-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.mfui-stepper__items-wrap{gap:12px;overflow-x:auto}.mfui-stepper::-webkit-scrollbar{height:8px}.mfui-stepper::-webkit-scrollbar-thumb{background-color:var(--spbSky2);border-radius:8px}.mfui-stepper_is-horizontal .mfui-stepper__items-wrap{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { IStepperItemProps } from './StepperItem';
|
|
3
|
+
import './Stepper.scss';
|
|
4
|
+
export type StepperItemType = Pick<IStepperItemProps, 'title' | 'text' | 'icon' | 'linkText' | 'linkUrl'>;
|
|
5
|
+
export interface IStepperProps {
|
|
6
|
+
/** Дополнительный класс корневого элемента */
|
|
7
|
+
className?: string;
|
|
8
|
+
/** Дополнительные классы элементов */
|
|
9
|
+
classes?: {
|
|
10
|
+
root?: string;
|
|
11
|
+
itemsWrap?: string;
|
|
12
|
+
item?: string;
|
|
13
|
+
itemIconButton?: string;
|
|
14
|
+
itemTitle?: string;
|
|
15
|
+
itemText?: string;
|
|
16
|
+
itemLink?: string;
|
|
17
|
+
};
|
|
18
|
+
/** Ссылка на корневой элемент */
|
|
19
|
+
rootRef?: React.Ref<HTMLDivElement>;
|
|
20
|
+
/** Индекс активного шага */
|
|
21
|
+
activeStep?: number;
|
|
22
|
+
/** Количество шагов */
|
|
23
|
+
stepCount?: number;
|
|
24
|
+
/** Шаги */
|
|
25
|
+
items?: StepperItemType[];
|
|
26
|
+
/** Направление */
|
|
27
|
+
isHorizontal?: boolean;
|
|
28
|
+
/** Цифры вместо галочек */
|
|
29
|
+
isNumeric?: boolean;
|
|
30
|
+
/** Отключение кнопок */
|
|
31
|
+
isDisabled?: boolean;
|
|
32
|
+
/** Все шаги пройдены */
|
|
33
|
+
isAllChecked?: boolean;
|
|
34
|
+
/** Отображение контента только активного шага */
|
|
35
|
+
showActiveStepContent?: boolean;
|
|
36
|
+
/** Выравнивание */
|
|
37
|
+
align?: 'center' | 'left';
|
|
38
|
+
/** Дополнительные data атрибуты к внутренним элементам */
|
|
39
|
+
dataAttrs?: {
|
|
40
|
+
root?: Record<string, string>;
|
|
41
|
+
itemsWrap?: Record<string, string>;
|
|
42
|
+
item?: Record<string, string>;
|
|
43
|
+
itemIconButton?: Record<string, string>;
|
|
44
|
+
itemTitle?: Record<string, string>;
|
|
45
|
+
itemText?: Record<string, string>;
|
|
46
|
+
itemLink?: Record<string, string>;
|
|
47
|
+
};
|
|
48
|
+
/** Обработчик события смены шага */
|
|
49
|
+
onChange?: (index: number) => void;
|
|
50
|
+
}
|
|
51
|
+
declare const Stepper: React.FC<IStepperProps>;
|
|
52
|
+
export default Stepper;
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import "core-js/modules/es.array.from.js";
|
|
4
|
+
import "core-js/modules/es.array.map.js";
|
|
5
|
+
import "core-js/modules/es.string.iterator.js";
|
|
6
|
+
import * as React from 'react';
|
|
7
|
+
import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
8
|
+
import StepperItem, { STEPPER_ITEM_THEME_ENUM, STEPPER_ITEM_VIEW_ENUM } from "./StepperItem";
|
|
9
|
+
import "./Stepper.css";
|
|
10
|
+
var CheckedIcon = function CheckedIcon(props) {
|
|
11
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
12
|
+
viewBox: "0 0 20 20"
|
|
13
|
+
}, props), /*#__PURE__*/React.createElement("path", {
|
|
14
|
+
d: "M8.832 11.547L6.619 9.335l-1.414 1.413 2.462 2.462 1.445 1.446 5.932-8.486-1.638-1.148-4.574 6.525z"
|
|
15
|
+
}));
|
|
16
|
+
};
|
|
17
|
+
var cn = cnCreate('mfui-stepper');
|
|
18
|
+
var Stepper = function Stepper(_ref) {
|
|
19
|
+
var className = _ref.className,
|
|
20
|
+
_ref$classes = _ref.classes,
|
|
21
|
+
_ref$classes2 = _ref$classes === void 0 ? {} : _ref$classes,
|
|
22
|
+
rootClassName = _ref$classes2.root,
|
|
23
|
+
itemsWrapClassName = _ref$classes2.itemsWrap,
|
|
24
|
+
itemClassName = _ref$classes2.item,
|
|
25
|
+
itemIconButtonClassName = _ref$classes2.itemIconButton,
|
|
26
|
+
itemTitleClassName = _ref$classes2.itemTitle,
|
|
27
|
+
itemTextClassname = _ref$classes2.itemText,
|
|
28
|
+
itemLinkClassName = _ref$classes2.itemLink,
|
|
29
|
+
rootRef = _ref.rootRef,
|
|
30
|
+
_ref$activeStep = _ref.activeStep,
|
|
31
|
+
activeStep = _ref$activeStep === void 0 ? 0 : _ref$activeStep,
|
|
32
|
+
_ref$stepCount = _ref.stepCount,
|
|
33
|
+
stepCount = _ref$stepCount === void 0 ? 2 : _ref$stepCount,
|
|
34
|
+
_ref$items = _ref.items,
|
|
35
|
+
items = _ref$items === void 0 ? [] : _ref$items,
|
|
36
|
+
_ref$isHorizontal = _ref.isHorizontal,
|
|
37
|
+
isHorizontal = _ref$isHorizontal === void 0 ? true : _ref$isHorizontal,
|
|
38
|
+
isNumeric = _ref.isNumeric,
|
|
39
|
+
isDisabled = _ref.isDisabled,
|
|
40
|
+
isAllChecked = _ref.isAllChecked,
|
|
41
|
+
_ref$showActiveStepCo = _ref.showActiveStepContent,
|
|
42
|
+
showActiveStepContent = _ref$showActiveStepCo === void 0 ? false : _ref$showActiveStepCo,
|
|
43
|
+
_ref$align = _ref.align,
|
|
44
|
+
align = _ref$align === void 0 ? 'center' : _ref$align,
|
|
45
|
+
_ref$dataAttrs = _ref.dataAttrs,
|
|
46
|
+
_ref$dataAttrs2 = _ref$dataAttrs === void 0 ? {} : _ref$dataAttrs,
|
|
47
|
+
rootAttrs = _ref$dataAttrs2.root,
|
|
48
|
+
itemsWrapAttrs = _ref$dataAttrs2.itemsWrap,
|
|
49
|
+
itemAttrs = _ref$dataAttrs2.item,
|
|
50
|
+
itemIconButtonAttrs = _ref$dataAttrs2.itemIconButton,
|
|
51
|
+
itemTitleAttrs = _ref$dataAttrs2.itemTitle,
|
|
52
|
+
itemTextAttrs = _ref$dataAttrs2.itemText,
|
|
53
|
+
itemLinkAttrs = _ref$dataAttrs2.itemLink,
|
|
54
|
+
_ref$onChange = _ref.onChange,
|
|
55
|
+
onChange = _ref$onChange === void 0 ? function () {
|
|
56
|
+
return null;
|
|
57
|
+
} : _ref$onChange;
|
|
58
|
+
var _React$useState = React.useState(activeStep),
|
|
59
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
60
|
+
currentIndex = _React$useState2[0],
|
|
61
|
+
setCurrentIndex = _React$useState2[1];
|
|
62
|
+
var hasCustomItems = !!items.length;
|
|
63
|
+
var isHorizontalContent = isHorizontal || showActiveStepContent;
|
|
64
|
+
var currentItems = hasCustomItems ? items : Array.from({
|
|
65
|
+
length: stepCount
|
|
66
|
+
});
|
|
67
|
+
var isCorrectDisabled = React.useMemo(function () {
|
|
68
|
+
return !!isAllChecked || !!isDisabled;
|
|
69
|
+
}, [isAllChecked, isDisabled]);
|
|
70
|
+
var defineItemTheme = React.useCallback(function (index) {
|
|
71
|
+
switch (true) {
|
|
72
|
+
case isAllChecked:
|
|
73
|
+
case index < currentIndex:
|
|
74
|
+
{
|
|
75
|
+
return STEPPER_ITEM_THEME_ENUM.CHECKED;
|
|
76
|
+
}
|
|
77
|
+
case index === currentIndex:
|
|
78
|
+
{
|
|
79
|
+
return STEPPER_ITEM_THEME_ENUM.ACTIVE;
|
|
80
|
+
}
|
|
81
|
+
default:
|
|
82
|
+
{
|
|
83
|
+
return STEPPER_ITEM_THEME_ENUM.DEFAULT;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}, [currentIndex, isAllChecked]);
|
|
87
|
+
var handleClickItem = React.useCallback(function (index) {
|
|
88
|
+
return function () {
|
|
89
|
+
if (isCorrectDisabled) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
setCurrentIndex(index);
|
|
93
|
+
onChange(index);
|
|
94
|
+
};
|
|
95
|
+
}, [isCorrectDisabled, onChange]);
|
|
96
|
+
React.useEffect(function () {
|
|
97
|
+
if (activeStep === undefined) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
setCurrentIndex(activeStep);
|
|
101
|
+
}, [activeStep]);
|
|
102
|
+
var renderIcon = React.useCallback(function (index, theme) {
|
|
103
|
+
var isChecked = theme === STEPPER_ITEM_THEME_ENUM.CHECKED;
|
|
104
|
+
if (isNumeric || !isChecked) {
|
|
105
|
+
return index + 1;
|
|
106
|
+
}
|
|
107
|
+
return /*#__PURE__*/React.createElement(CheckedIcon, null);
|
|
108
|
+
}, [isNumeric]);
|
|
109
|
+
var renderItem = React.useCallback(function (props, index) {
|
|
110
|
+
return /*#__PURE__*/React.createElement(StepperItem, _extends({}, props, {
|
|
111
|
+
key: index,
|
|
112
|
+
className: itemClassName,
|
|
113
|
+
classes: {
|
|
114
|
+
iconButton: itemIconButtonClassName,
|
|
115
|
+
title: itemTitleClassName,
|
|
116
|
+
text: itemTextClassname,
|
|
117
|
+
link: itemLinkClassName
|
|
118
|
+
},
|
|
119
|
+
dataAttrs: {
|
|
120
|
+
root: itemAttrs,
|
|
121
|
+
iconButton: itemIconButtonAttrs,
|
|
122
|
+
title: itemTitleAttrs,
|
|
123
|
+
text: itemTextAttrs,
|
|
124
|
+
link: itemLinkAttrs
|
|
125
|
+
}
|
|
126
|
+
}));
|
|
127
|
+
}, [itemAttrs, itemIconButtonAttrs, itemIconButtonClassName, itemClassName, itemLinkAttrs, itemLinkClassName, itemTextAttrs, itemTextClassname, itemTitleAttrs, itemTitleClassName]);
|
|
128
|
+
var renderItems = React.useMemo(function () {
|
|
129
|
+
return currentItems.map(function (elem, i) {
|
|
130
|
+
var item = elem || {};
|
|
131
|
+
var itemTheme = defineItemTheme(i);
|
|
132
|
+
var itemIcon = item.icon || renderIcon(i, itemTheme);
|
|
133
|
+
return renderItem(_extends(_extends({}, item), {
|
|
134
|
+
icon: itemIcon,
|
|
135
|
+
hasSeparator: i < currentItems.length - 1,
|
|
136
|
+
isHorizontal: isHorizontalContent,
|
|
137
|
+
isDisabled: isCorrectDisabled,
|
|
138
|
+
align: align,
|
|
139
|
+
theme: itemTheme,
|
|
140
|
+
view: showActiveStepContent ? STEPPER_ITEM_VIEW_ENUM.ICON : STEPPER_ITEM_VIEW_ENUM.DEFAULT,
|
|
141
|
+
onClick: handleClickItem(i)
|
|
142
|
+
}), i);
|
|
143
|
+
});
|
|
144
|
+
}, [align, currentItems, isCorrectDisabled, showActiveStepContent, isHorizontalContent, defineItemTheme, handleClickItem, renderIcon, renderItem]);
|
|
145
|
+
var renderSingleItem = renderItem(_extends(_extends({}, currentItems[currentIndex]), {
|
|
146
|
+
isDisabled: isCorrectDisabled,
|
|
147
|
+
align: align,
|
|
148
|
+
view: STEPPER_ITEM_VIEW_ENUM.CONTENT
|
|
149
|
+
}));
|
|
150
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(rootAttrs), {
|
|
151
|
+
className: cn([className, rootClassName], {
|
|
152
|
+
'is-horizontal': isHorizontalContent
|
|
153
|
+
}),
|
|
154
|
+
ref: rootRef
|
|
155
|
+
}), /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(itemsWrapAttrs), {
|
|
156
|
+
className: cn('items-wrap', [itemsWrapClassName])
|
|
157
|
+
}), renderItems), showActiveStepContent && renderSingleItem);
|
|
158
|
+
};
|
|
159
|
+
export default Stepper;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-stepper-item{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:16px}.mfui-stepper-item_is-horizontal{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-stepper-item_is-horizontal .mfui-stepper-item__separator{-o-border-image:url(img/separator-mobile.png) 2 round;border-image:url(img/separator-mobile.png) 2 round;border-left:none;border-radius:100px;border-top:2px solid transparent;height:2px;left:calc(50% + 22px);min-height:2px;position:absolute;top:19px;width:calc(100% - 32px)}@media screen and (min-width:768px){.mfui-stepper-item_is-horizontal .mfui-stepper-item__separator{-o-border-image:url(img/separator.png) 2 repeat;border-image:url(img/separator.png) 2 repeat}}@media screen and (min-width:1024px){.mfui-stepper-item_is-horizontal .mfui-stepper-item__separator{left:calc(50% + 32px);width:calc(100% - 52px)}}.mfui-stepper-item_theme_active .mfui-stepper-item__icon-button{background-color:var(--night20)}.mfui-stepper-item_theme_active .mfui-stepper-item__icon{background-color:var(--night)}.mfui-stepper-item_theme_checked .mfui-stepper-item__icon-button{background-color:var(--brandGreen20)}.mfui-stepper-item_theme_checked .mfui-stepper-item__icon{background-color:var(--brandGreen)}.mfui-stepper-item_theme_checked .mfui-stepper-item__separator{border-color:var(--brandGreen);-o-border-image:none;border-image:none}.mfui-stepper-item_align_left{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.mfui-stepper-item_align_left .mfui-stepper-item__separator{left:42px;right:0}@media screen and (min-width:1024px){.mfui-stepper-item_align_left .mfui-stepper-item__separator{left:auto}}.mfui-stepper-item_align_left .mfui-stepper-item__content,.mfui-stepper-item_align_left .mfui-stepper-item__icon-button-area{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.mfui-stepper-item__icon-button-area{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:12px;-ms-flex-align:center;-ms-flex-item-align:stretch;align-self:stretch}.mfui-stepper-item__icon-button,.mfui-stepper-item__icon-button-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;align-items:center}.mfui-stepper-item__icon-button{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;background-color:var(--spbSky0);border:none;border-radius:100%;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;height:40px;justify-content:center;outline:none;-webkit-transition:background-color .25s ease-out;transition:background-color .25s ease-out;width:40px}.mfui-stepper-item__icon-button:disabled{cursor:default}.mfui-stepper-item__icon{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;background-color:var(--spbSky2);border-radius:100%;color:var(--stcWhite);font-weight:500;height:24px;justify-content:center;-webkit-transition:background-color .25s ease-out;transition:background-color .25s ease-out;width:24px}.mfui-stepper-item__icon svg{height:20px;width:20px;fill:var(--stcWhite)}.mfui-stepper-item__separator{-o-border-image:url(img/separator-vertical.png) 2 repeat;border-image:url(img/separator-vertical.png) 2 repeat;border-left:2px solid transparent;border-top:none;height:100%;min-height:20px;position:static;-webkit-transition:border-color .25s ease-out;transition:border-color .25s ease-out;width:2px}.mfui-stepper-item__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:4px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:160px;padding-bottom:20px}.mfui-stepper-item__link{margin-top:13px}
|