@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,65 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import "core-js/modules/es.string.link.js";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Button, TextLink } from '@megafon/ui-core';
|
|
5
|
+
import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
6
|
+
import "./ButtonLinkBox.css";
|
|
7
|
+
var cn = cnCreate('mfui-button-link-box');
|
|
8
|
+
var ButtonLinkBox = function ButtonLinkBox(_ref) {
|
|
9
|
+
var dataAttrs = _ref.dataAttrs,
|
|
10
|
+
rootRef = _ref.rootRef,
|
|
11
|
+
buttonTitle = _ref.buttonTitle,
|
|
12
|
+
buttonUrl = _ref.buttonUrl,
|
|
13
|
+
buttonDownload = _ref.buttonDownload,
|
|
14
|
+
_ref$buttonColor = _ref.buttonColor,
|
|
15
|
+
buttonColor = _ref$buttonColor === void 0 ? 'green' : _ref$buttonColor,
|
|
16
|
+
_ref$buttonType = _ref.buttonType,
|
|
17
|
+
buttonType = _ref$buttonType === void 0 ? 'primary' : _ref$buttonType,
|
|
18
|
+
buttonRel = _ref.buttonRel,
|
|
19
|
+
linkTitle = _ref.linkTitle,
|
|
20
|
+
linkUrl = _ref.linkUrl,
|
|
21
|
+
linkDownload = _ref.linkDownload,
|
|
22
|
+
linkRel = _ref.linkRel,
|
|
23
|
+
align = _ref.align,
|
|
24
|
+
className = _ref.className,
|
|
25
|
+
buttonTarget = _ref.buttonTarget,
|
|
26
|
+
linkTarget = _ref.linkTarget,
|
|
27
|
+
_ref$classes = _ref.classes,
|
|
28
|
+
classes = _ref$classes === void 0 ? {} : _ref$classes,
|
|
29
|
+
onButtonClick = _ref.onButtonClick,
|
|
30
|
+
onLinkClick = _ref.onLinkClick;
|
|
31
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
32
|
+
className: cn({
|
|
33
|
+
'h-align': align
|
|
34
|
+
}, [className, classes.root]),
|
|
35
|
+
ref: rootRef
|
|
36
|
+
}), buttonTitle && /*#__PURE__*/React.createElement("div", {
|
|
37
|
+
className: cn('row')
|
|
38
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
39
|
+
dataAttrs: {
|
|
40
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
|
|
41
|
+
},
|
|
42
|
+
className: classes.button,
|
|
43
|
+
href: buttonUrl,
|
|
44
|
+
theme: buttonColor,
|
|
45
|
+
type: buttonType,
|
|
46
|
+
onClick: onButtonClick,
|
|
47
|
+
target: buttonTarget,
|
|
48
|
+
download: buttonDownload,
|
|
49
|
+
rel: buttonRel
|
|
50
|
+
}, buttonTitle)), linkTitle && /*#__PURE__*/React.createElement("div", {
|
|
51
|
+
className: cn('row')
|
|
52
|
+
}, /*#__PURE__*/React.createElement(TextLink, {
|
|
53
|
+
dataAttrs: {
|
|
54
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.link
|
|
55
|
+
},
|
|
56
|
+
className: classes.link,
|
|
57
|
+
href: linkUrl,
|
|
58
|
+
download: linkDownload,
|
|
59
|
+
underlineVisibility: "always",
|
|
60
|
+
target: linkTarget,
|
|
61
|
+
rel: linkRel,
|
|
62
|
+
onClick: onLinkClick
|
|
63
|
+
}, linkTitle)));
|
|
64
|
+
};
|
|
65
|
+
export default ButtonLinkBox;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-buttons-box{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-buttons-box__buttons_equal-width{display:grid;gap:20px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}@media screen and (max-width:767px){.mfui-buttons-box__buttons_equal-width{grid-template-rows:repeat(2,1fr)}}@media screen and (min-width:768px){.mfui-buttons-box__buttons_equal-width{grid-template-columns:repeat(2,1fr)}}.mfui-buttons-box_h-align_center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import './ButtonsBox.scss';
|
|
3
|
+
export type ButtonType = {
|
|
4
|
+
/** Тип */
|
|
5
|
+
type?: 'primary' | 'outline';
|
|
6
|
+
/** Иконка */
|
|
7
|
+
icon?: React.JSX.Element;
|
|
8
|
+
/** Название */
|
|
9
|
+
title?: string;
|
|
10
|
+
/** Ссылка */
|
|
11
|
+
href?: string;
|
|
12
|
+
/** Target свойство кнопки */
|
|
13
|
+
target?: '_self' | '_blank' | '_parent' | '_top';
|
|
14
|
+
/** Rel - атрибут тега <a> */
|
|
15
|
+
rel?: string;
|
|
16
|
+
/** Задает атрибут download для тега <a> */
|
|
17
|
+
download?: boolean;
|
|
18
|
+
/** Показать стелку */
|
|
19
|
+
showArrow?: boolean;
|
|
20
|
+
/** Обработчик клика */
|
|
21
|
+
onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
|
|
22
|
+
};
|
|
23
|
+
export interface IButtonsBox {
|
|
24
|
+
/** Дополнительные data атрибуты к внутренним элементам */
|
|
25
|
+
dataAttrs?: {
|
|
26
|
+
root?: Record<string, string>;
|
|
27
|
+
button?: Record<string, string>;
|
|
28
|
+
extraButton?: Record<string, string>;
|
|
29
|
+
};
|
|
30
|
+
/** Дополнительный класс корневого элемента */
|
|
31
|
+
className?: string;
|
|
32
|
+
/** Дополнительные классы для внутренних элементов */
|
|
33
|
+
classes?: {
|
|
34
|
+
root?: string;
|
|
35
|
+
button?: string;
|
|
36
|
+
extraButton?: string;
|
|
37
|
+
};
|
|
38
|
+
/** Кнопка */
|
|
39
|
+
button: ButtonType;
|
|
40
|
+
/** Дополнительная кнопка */
|
|
41
|
+
extraButton?: ButtonType;
|
|
42
|
+
/** Горизонтальное выравнивание */
|
|
43
|
+
align?: 'center' | 'left';
|
|
44
|
+
/** Ссылка на корневой элемент */
|
|
45
|
+
rootRef?: React.Ref<HTMLDivElement>;
|
|
46
|
+
}
|
|
47
|
+
declare const ButtonsBox: React.FC<IButtonsBox>;
|
|
48
|
+
export default ButtonsBox;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Button } from '@megafon/ui-core';
|
|
4
|
+
import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
5
|
+
import { setRelAttribute } from "../../helpers/setRelAttribute";
|
|
6
|
+
import "./ButtonsBox.css";
|
|
7
|
+
var cn = cnCreate('mfui-buttons-box');
|
|
8
|
+
var ButtonsBox = function ButtonsBox(_ref) {
|
|
9
|
+
var className = _ref.className,
|
|
10
|
+
_ref$classes = _ref.classes,
|
|
11
|
+
classes = _ref$classes === void 0 ? {} : _ref$classes,
|
|
12
|
+
dataAttrs = _ref.dataAttrs,
|
|
13
|
+
button = _ref.button,
|
|
14
|
+
extraButton = _ref.extraButton,
|
|
15
|
+
align = _ref.align,
|
|
16
|
+
rootRef = _ref.rootRef;
|
|
17
|
+
var showTwoButtons = !!button && !!extraButton;
|
|
18
|
+
var renderButton = function renderButton(btnProps, btnClassName, dataAttr) {
|
|
19
|
+
return /*#__PURE__*/React.createElement(Button, {
|
|
20
|
+
dataAttrs: {
|
|
21
|
+
root: dataAttr
|
|
22
|
+
},
|
|
23
|
+
className: btnClassName,
|
|
24
|
+
fullWidth: showTwoButtons,
|
|
25
|
+
type: btnProps.type,
|
|
26
|
+
theme: "green",
|
|
27
|
+
icon: btnProps.icon,
|
|
28
|
+
href: btnProps.href,
|
|
29
|
+
target: btnProps.target,
|
|
30
|
+
download: btnProps.download,
|
|
31
|
+
showArrow: btnProps.showArrow,
|
|
32
|
+
rel: setRelAttribute(btnProps.rel, btnProps.target),
|
|
33
|
+
onClick: btnProps.onClick
|
|
34
|
+
}, btnProps.title);
|
|
35
|
+
};
|
|
36
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
37
|
+
className: cn({
|
|
38
|
+
'h-align': align
|
|
39
|
+
}, [className, classes.root]),
|
|
40
|
+
ref: rootRef
|
|
41
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
42
|
+
className: cn('buttons', {
|
|
43
|
+
'equal-width': showTwoButtons
|
|
44
|
+
})
|
|
45
|
+
}, !!button && renderButton(button, classes.button, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button), !!extraButton && renderButton(extraButton, classes.extraButton, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.extraButton)));
|
|
46
|
+
};
|
|
47
|
+
export default ButtonsBox;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
h1,h2,h3,h4,h5{margin:0}.mfui-card{display:-webkit-box;display:-ms-flexbox;display:flex;font-family:inherit;font-size:15px;font-weight:400;line-height:24px;-webkit-box-orient:vertical;-webkit-box-direction:normal;background-color:var(--base);border-radius:24px;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--content);-ms-flex-direction:column;flex-direction:column;padding:16px 16px 24px;text-decoration:none!important;-webkit-transition:background-color .3s,.3s,-webkit-box-shadow;transition:background-color .3s,.3s,-webkit-box-shadow;transition:background-color .3s,box-shadow,.3s;transition:background-color .3s,box-shadow,.3s,-webkit-box-shadow}@media screen and (min-width:1280px){.mfui-card{padding:24px 24px 32px}}.mfui-card_full-height{height:100%}.mfui-card_link{cursor:pointer}.mfui-card_view_shadow{-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.mfui-card_link.mfui-card_view_hover-shadow:hover,.mfui-card_link.mfui-card_view_shadow:hover{-webkit-box-shadow:0 8px 28px 0 rgba(0,0,0,.1);box-shadow:0 8px 28px 0 rgba(0,0,0,.1)}.mfui-card_view_background{background-color:var(--spbSky0)}.mfui-card_link.mfui-card_view_background:hover{background-color:var(--spbSky1)}.mfui-card_only-title{padding:24px}@media screen and (min-width:1280px){.mfui-card_only-title{padding:32px}}.mfui-card__header{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.mfui-card__icon{height:40px;margin-bottom:32px;width:40px}.mfui-card__img-box{border-radius:24px;overflow:hidden;padding-bottom:56.25%;position:relative}.mfui-card__img-box_position_top{margin:-6px -6px 24px}@media screen and (min-width:1280px){.mfui-card__img-box_position_top{margin:-12px -12px 32px}}.mfui-card__img-box_position_bottom{margin:24px -6px 0}@media screen and (min-width:1280px){.mfui-card__img-box_position_bottom{margin:32px -12px 0}}.mfui-card__img{height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;width:100%}.mfui-card_link:hover .mfui-card__img{-webkit-transform:scale(1.2);transform:scale(1.2)}.mfui-card__marker-list{list-style-type:none;margin:16px 0 0;padding:0}.mfui-card__marker-item{padding-left:20px;position:relative}.mfui-card__marker-item:not(:last-child){margin-bottom:12px}.mfui-card__marker-item:before{background-color:var(--spbSky2);border-radius:50%;content:"";height:6px;left:0;opacity:.8;position:absolute;top:7px;width:6px}.mfui-card__marker-note{display:block;font-weight:500;margin:4px 0 0;padding:0}.mfui-card__texts{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-top:16px}.mfui-card__texts ol,.mfui-card__texts ul{margin:0;padding-left:24px}.mfui-card__texts ol{list-style-type:decimal}.mfui-card__texts ul{list-style-type:disc}.mfui-card__texts-item_center .mfui-card__texts-desc,.mfui-card__texts-item_center .mfui-card__texts-title{text-align:center}.mfui-card__texts-title{font-weight:500}.mfui-card__features{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-top:16px;overflow:hidden}.mfui-card__features-list{list-style:none;margin:0;padding:0}.mfui-card__features-item{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.mfui-card__features-item:before{background-image:radial-gradient(circle,var(--spbSky3) 1px,transparent 1px);background-size:6px 2px;bottom:.4em;content:"";height:2px;position:absolute;width:100%}.mfui-card__features-item-value{-ms-flex-negative:0;flex-shrink:0;text-align:end}.mfui-card__features-item-text{background-color:var(--base);position:relative;-webkit-transition:background-color .3s;transition:background-color .3s;z-index:1}.mfui-card_view_background .mfui-card__features-item-text{background-color:var(--spbSky0)}.mfui-card_link.mfui-card_view_background:hover .mfui-card__features-item-text{background-color:var(--spbSky1)}.mfui-card__features-item-title .mfui-card__features-item-text{padding-right:4px}.mfui-card__features-item-value .mfui-card__features-item-text{padding-left:4px}.mfui-card__icons{margin-top:16px}.mfui-card__icons-desc{margin-bottom:12px}.mfui-card__icons-list{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:12px}.mfui-card__icons-item,.mfui-card__icons-list{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-card__icons-item-icon{-ms-flex-negative:0;flex-shrink:0;height:32px;margin-right:8px;width:32px}.mfui-card__icons-item-text{margin-top:4px}.mfui-card__price{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-box-pack:center;-ms-flex-pack:center;border-top:1px solid var(--spbSky1);justify-content:center;margin-top:24px;padding-top:24px}@media screen and (min-width:1280px){.mfui-card__price{margin-top:32px}}.mfui-card__img-box+.mfui-card__price{border:none;padding-top:0}.mfui-card__price-old-value{color:var(--spbSky3);position:relative}.mfui-card__price-old-value:before{background-color:var(--fury);content:"";height:1px;left:-1px;position:absolute;right:-1px;top:50%}.mfui-card__price-value{font-size:22px;font-weight:600;letter-spacing:.5px;line-height:28px}@media screen and (min-width:768px) and (max-width:1023px){.mfui-card__price-value{font-size:26px;line-height:32px}}@media screen and (min-width:1024px){.mfui-card__price-value{font-size:28px;line-height:36px}}@media screen and (min-width:1280px){.mfui-card__price-value{font-size:32px;line-height:40px}}.mfui-card__buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:16px;margin-top:32px}.mfui-card__price+.mfui-card__buttons{margin-top:24px}.mfui-card__buttons_centered{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-card__button{-ms-flex-preferred-size:190px;flex-basis:190px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;max-width:320px}.mfui-card__footer{margin-top:auto}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import './Card.scss';
|
|
3
|
+
import { ExtraButtonType, FeaturesList, IconsList, Image, Link, MainButtonType, MarkerList, Price, TextsList, Title } from './types';
|
|
4
|
+
export interface ICard {
|
|
5
|
+
/** Дополнительные data атрибуты к внутренним элементам */
|
|
6
|
+
dataAttrs?: {
|
|
7
|
+
root?: Record<string, string>;
|
|
8
|
+
icon?: Record<string, string>;
|
|
9
|
+
imgBox?: Record<string, string>;
|
|
10
|
+
button?: Record<string, string>;
|
|
11
|
+
extraButton?: Record<string, string>;
|
|
12
|
+
};
|
|
13
|
+
/** Дополнительный класс для компонента */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Дополнительные классы для внутренних элементов */
|
|
16
|
+
classes?: {
|
|
17
|
+
root?: string;
|
|
18
|
+
button?: string;
|
|
19
|
+
extraButton?: string;
|
|
20
|
+
};
|
|
21
|
+
/** Ссылка на корневой элемент */
|
|
22
|
+
rootRef?: React.Ref<HTMLDivElement | HTMLAnchorElement>;
|
|
23
|
+
isFullHeight?: boolean;
|
|
24
|
+
isCenteredText?: boolean;
|
|
25
|
+
/** Вид */
|
|
26
|
+
view?: 'shadow' | 'hover-shadow' | 'background';
|
|
27
|
+
/** Ссылка для карточки */
|
|
28
|
+
link?: Link;
|
|
29
|
+
/** Изображение */
|
|
30
|
+
image?: Image;
|
|
31
|
+
/** Иконка */
|
|
32
|
+
icon?: React.ReactNode;
|
|
33
|
+
/** Заголовок */
|
|
34
|
+
title: Title;
|
|
35
|
+
/** Маркированный список */
|
|
36
|
+
markerList?: MarkerList;
|
|
37
|
+
/** Список текстов */
|
|
38
|
+
textsList?: TextsList;
|
|
39
|
+
/** Список характеристик */
|
|
40
|
+
featuresList?: FeaturesList;
|
|
41
|
+
/** Список иконок */
|
|
42
|
+
iconsList?: IconsList;
|
|
43
|
+
/** Цена */
|
|
44
|
+
price?: Price;
|
|
45
|
+
/** Кнопка */
|
|
46
|
+
button?: MainButtonType;
|
|
47
|
+
/** Дополнительная кнопка */
|
|
48
|
+
extraButton?: ExtraButtonType;
|
|
49
|
+
/** Бейдж */
|
|
50
|
+
badge?: React.ReactElement;
|
|
51
|
+
/** Обработчик клика по карточке */
|
|
52
|
+
onClick?: () => void;
|
|
53
|
+
}
|
|
54
|
+
declare const Card: React.FC<ICard>;
|
|
55
|
+
export default Card;
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import "core-js/modules/es.array.map.js";
|
|
3
|
+
import "core-js/modules/es.string.link.js";
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { Button, Header } from '@megafon/ui-core';
|
|
6
|
+
import { cnCreate, convert, filterDataAttrs, textConvertConfig } from '@megafon/ui-helpers';
|
|
7
|
+
import "./Card.css";
|
|
8
|
+
var textsConvertConfig = _extends(_extends({}, textConvertConfig), {
|
|
9
|
+
ul: {
|
|
10
|
+
component: function component(_ref) {
|
|
11
|
+
var children = _ref.children;
|
|
12
|
+
return /*#__PURE__*/React.createElement("ul", null, children);
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
ol: {
|
|
16
|
+
component: function component(_ref2) {
|
|
17
|
+
var children = _ref2.children;
|
|
18
|
+
return /*#__PURE__*/React.createElement("ol", null, children);
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
li: {
|
|
22
|
+
component: function component(_ref3) {
|
|
23
|
+
var children = _ref3.children;
|
|
24
|
+
return /*#__PURE__*/React.createElement("li", null, children);
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
p: {
|
|
28
|
+
component: function component(_ref4) {
|
|
29
|
+
var children = _ref4.children;
|
|
30
|
+
return /*#__PURE__*/React.createElement("p", null, children);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
var cn = cnCreate('mfui-card');
|
|
35
|
+
var Card = function Card(_ref5) {
|
|
36
|
+
var dataAttrs = _ref5.dataAttrs,
|
|
37
|
+
className = _ref5.className,
|
|
38
|
+
classes = _ref5.classes,
|
|
39
|
+
rootRef = _ref5.rootRef,
|
|
40
|
+
_ref5$isFullHeight = _ref5.isFullHeight,
|
|
41
|
+
isFullHeight = _ref5$isFullHeight === void 0 ? false : _ref5$isFullHeight,
|
|
42
|
+
_ref5$isCenteredText = _ref5.isCenteredText,
|
|
43
|
+
isCenteredText = _ref5$isCenteredText === void 0 ? false : _ref5$isCenteredText,
|
|
44
|
+
link = _ref5.link,
|
|
45
|
+
_ref5$view = _ref5.view,
|
|
46
|
+
view = _ref5$view === void 0 ? 'shadow' : _ref5$view,
|
|
47
|
+
image = _ref5.image,
|
|
48
|
+
icon = _ref5.icon,
|
|
49
|
+
title = _ref5.title,
|
|
50
|
+
markerList = _ref5.markerList,
|
|
51
|
+
textsList = _ref5.textsList,
|
|
52
|
+
featuresList = _ref5.featuresList,
|
|
53
|
+
iconsList = _ref5.iconsList,
|
|
54
|
+
price = _ref5.price,
|
|
55
|
+
button = _ref5.button,
|
|
56
|
+
extraButton = _ref5.extraButton,
|
|
57
|
+
badge = _ref5.badge,
|
|
58
|
+
onClick = _ref5.onClick;
|
|
59
|
+
var isOnlyTitle = !image && !icon && !markerList && !textsList && !featuresList && !iconsList && !price && !button && !extraButton;
|
|
60
|
+
var isLink = (link === null || link === void 0 ? void 0 : link.href) && !button && !extraButton;
|
|
61
|
+
var isBottomImage = (image === null || image === void 0 ? void 0 : image.position) === 'bottom';
|
|
62
|
+
var ElementType = isLink ? 'a' : 'div';
|
|
63
|
+
var renderImage = function renderImage() {
|
|
64
|
+
if (!image) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
var _image$position = image.position,
|
|
68
|
+
position = _image$position === void 0 ? 'top' : _image$position,
|
|
69
|
+
src = image.src,
|
|
70
|
+
alt = image.alt;
|
|
71
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.imgBox), {
|
|
72
|
+
className: cn('img-box', {
|
|
73
|
+
position: position
|
|
74
|
+
})
|
|
75
|
+
}), /*#__PURE__*/React.createElement("img", {
|
|
76
|
+
className: cn('img'),
|
|
77
|
+
src: src,
|
|
78
|
+
alt: alt
|
|
79
|
+
}));
|
|
80
|
+
};
|
|
81
|
+
var renderIcon = function renderIcon() {
|
|
82
|
+
if (!icon) {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.icon), {
|
|
86
|
+
className: cn('icon')
|
|
87
|
+
}), icon);
|
|
88
|
+
};
|
|
89
|
+
var renderContent = function renderContent() {
|
|
90
|
+
if (markerList) {
|
|
91
|
+
return /*#__PURE__*/React.createElement("ul", {
|
|
92
|
+
className: cn('marker-list')
|
|
93
|
+
}, markerList.map(function (item, i) {
|
|
94
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
95
|
+
className: cn('marker-item'),
|
|
96
|
+
key: i
|
|
97
|
+
}, convert(item.title, {}), !!item.note && /*#__PURE__*/React.createElement("span", {
|
|
98
|
+
className: cn('marker-note')
|
|
99
|
+
}, convert(item.note, {})));
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
if (textsList) {
|
|
103
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: cn('texts')
|
|
105
|
+
}, textsList.map(function (item, i) {
|
|
106
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
107
|
+
className: cn('texts-item', {
|
|
108
|
+
center: isCenteredText
|
|
109
|
+
}),
|
|
110
|
+
key: i
|
|
111
|
+
}, !!item.title && /*#__PURE__*/React.createElement("div", {
|
|
112
|
+
className: cn('texts-title')
|
|
113
|
+
}, convert(item.title, textsConvertConfig)), /*#__PURE__*/React.createElement("div", {
|
|
114
|
+
className: cn('texts-desc')
|
|
115
|
+
}, convert(item.desc, textsConvertConfig)));
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
118
|
+
if (featuresList) {
|
|
119
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
120
|
+
className: cn('features')
|
|
121
|
+
}, /*#__PURE__*/React.createElement("ul", {
|
|
122
|
+
className: cn('features-list')
|
|
123
|
+
}, featuresList.items.map(function (item, i) {
|
|
124
|
+
return /*#__PURE__*/React.createElement("li", {
|
|
125
|
+
className: cn('features-item'),
|
|
126
|
+
key: i
|
|
127
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
128
|
+
className: cn('features-item-title')
|
|
129
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
130
|
+
className: cn('features-item-text')
|
|
131
|
+
}, item.title)), /*#__PURE__*/React.createElement("div", {
|
|
132
|
+
className: cn('features-item-value')
|
|
133
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
134
|
+
className: cn('features-item-text')
|
|
135
|
+
}, item.value)));
|
|
136
|
+
})), featuresList.desc);
|
|
137
|
+
}
|
|
138
|
+
if (iconsList) {
|
|
139
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
140
|
+
className: cn('icons')
|
|
141
|
+
}, !!iconsList.desc && /*#__PURE__*/React.createElement("div", {
|
|
142
|
+
className: cn('icons-desc')
|
|
143
|
+
}, iconsList.desc), /*#__PURE__*/React.createElement("div", {
|
|
144
|
+
className: cn('icons-list')
|
|
145
|
+
}, iconsList.items.map(function (item, i) {
|
|
146
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
147
|
+
className: cn('icons-item'),
|
|
148
|
+
key: i
|
|
149
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
150
|
+
className: cn('icons-item-icon')
|
|
151
|
+
}, item.icon), /*#__PURE__*/React.createElement("div", {
|
|
152
|
+
className: cn('icons-item-text')
|
|
153
|
+
}, item.text));
|
|
154
|
+
})));
|
|
155
|
+
}
|
|
156
|
+
return null;
|
|
157
|
+
};
|
|
158
|
+
var renderPrice = function renderPrice() {
|
|
159
|
+
if (!price) {
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
163
|
+
className: cn('price')
|
|
164
|
+
}, !!price.oldValue && /*#__PURE__*/React.createElement("div", {
|
|
165
|
+
className: cn('price-old-value')
|
|
166
|
+
}, price.oldValue), /*#__PURE__*/React.createElement("div", {
|
|
167
|
+
className: cn('price-value')
|
|
168
|
+
}, price.value), !!price.period && /*#__PURE__*/React.createElement("div", {
|
|
169
|
+
className: cn('price-period')
|
|
170
|
+
}, price.period));
|
|
171
|
+
};
|
|
172
|
+
var renderButtons = function renderButtons() {
|
|
173
|
+
if (!button && !extraButton) {
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
var extraButtonType = (button === null || button === void 0 ? void 0 : button.type) === 'outline' ? 'text' : extraButton === null || extraButton === void 0 ? void 0 : extraButton.type;
|
|
177
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
178
|
+
className: cn('buttons', {
|
|
179
|
+
centered: (button === null || button === void 0 ? void 0 : button.isCentered) || (extraButton === null || extraButton === void 0 ? void 0 : extraButton.isCentered)
|
|
180
|
+
})
|
|
181
|
+
}, !!button && /*#__PURE__*/React.createElement(Button, {
|
|
182
|
+
dataAttrs: {
|
|
183
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
|
|
184
|
+
},
|
|
185
|
+
className: cn('button', [classes === null || classes === void 0 ? void 0 : classes.button]),
|
|
186
|
+
href: button.href,
|
|
187
|
+
target: button.target,
|
|
188
|
+
type: button.type || 'primary',
|
|
189
|
+
theme: button.theme || 'green',
|
|
190
|
+
onClick: button === null || button === void 0 ? void 0 : button.onClick
|
|
191
|
+
}, button.title), !!extraButton && /*#__PURE__*/React.createElement(Button, {
|
|
192
|
+
dataAttrs: {
|
|
193
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.extraButton
|
|
194
|
+
},
|
|
195
|
+
className: cn('button', [classes === null || classes === void 0 ? void 0 : classes.extraButton]),
|
|
196
|
+
href: extraButton.href,
|
|
197
|
+
target: extraButton.target,
|
|
198
|
+
type: extraButtonType || 'outline',
|
|
199
|
+
onClick: extraButton === null || extraButton === void 0 ? void 0 : extraButton.onClick
|
|
200
|
+
}, extraButton.title));
|
|
201
|
+
};
|
|
202
|
+
var renderFooter = function renderFooter() {
|
|
203
|
+
if (!price && !button && !extraButton && !image) {
|
|
204
|
+
return null;
|
|
205
|
+
}
|
|
206
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
207
|
+
className: cn('footer')
|
|
208
|
+
}, isBottomImage && renderImage(), renderPrice(), renderButtons());
|
|
209
|
+
};
|
|
210
|
+
return /*#__PURE__*/React.createElement(ElementType, _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
211
|
+
className: cn({
|
|
212
|
+
'only-title': isOnlyTitle,
|
|
213
|
+
view: view,
|
|
214
|
+
link: isLink,
|
|
215
|
+
'full-height': isFullHeight
|
|
216
|
+
}, [className, classes === null || classes === void 0 ? void 0 : classes.root]),
|
|
217
|
+
href: isLink ? link === null || link === void 0 ? void 0 : link.href : undefined,
|
|
218
|
+
target: isLink ? link === null || link === void 0 ? void 0 : link.target : undefined,
|
|
219
|
+
onClick: isLink ? onClick : undefined,
|
|
220
|
+
ref: rootRef
|
|
221
|
+
}), renderIcon(), !isBottomImage && renderImage(), /*#__PURE__*/React.createElement("div", {
|
|
222
|
+
className: cn('header')
|
|
223
|
+
}, /*#__PURE__*/React.createElement(Header, {
|
|
224
|
+
className: cn('title'),
|
|
225
|
+
as: "h3",
|
|
226
|
+
align: title.align
|
|
227
|
+
}, title.text), badge), renderContent(), renderFooter());
|
|
228
|
+
};
|
|
229
|
+
export default Card;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
type Target = '_self' | '_blank' | '_parent' | '_top';
|
|
2
|
+
export type Link = {
|
|
3
|
+
/** Ссылка */
|
|
4
|
+
href?: string;
|
|
5
|
+
/** Target свойство ссылки */
|
|
6
|
+
target?: Target;
|
|
7
|
+
};
|
|
8
|
+
export type Image = {
|
|
9
|
+
/** Ссылка на изображение */
|
|
10
|
+
src: string;
|
|
11
|
+
/** Значение тега alt для изображения */
|
|
12
|
+
alt?: string;
|
|
13
|
+
/** Позиция изображения */
|
|
14
|
+
position?: 'top' | 'bottom';
|
|
15
|
+
};
|
|
16
|
+
export type Title = {
|
|
17
|
+
/** Текст */
|
|
18
|
+
text: string;
|
|
19
|
+
/** Выравнивание */
|
|
20
|
+
align?: 'left' | 'center';
|
|
21
|
+
};
|
|
22
|
+
export type MarkerList = {
|
|
23
|
+
/** Заголовок */
|
|
24
|
+
title: string;
|
|
25
|
+
/** Примечание */
|
|
26
|
+
note?: string;
|
|
27
|
+
}[];
|
|
28
|
+
export type TextsList = {
|
|
29
|
+
/** Заголовок */
|
|
30
|
+
title?: string;
|
|
31
|
+
/** Описание */
|
|
32
|
+
desc: string;
|
|
33
|
+
}[];
|
|
34
|
+
export type FeaturesList = {
|
|
35
|
+
/** Список */
|
|
36
|
+
items: {
|
|
37
|
+
/** Заголовок */
|
|
38
|
+
title: string;
|
|
39
|
+
/** Значение */
|
|
40
|
+
value: string;
|
|
41
|
+
}[];
|
|
42
|
+
/** Описание */
|
|
43
|
+
desc?: string;
|
|
44
|
+
};
|
|
45
|
+
export type IconsList = {
|
|
46
|
+
/** Список */
|
|
47
|
+
items: {
|
|
48
|
+
/** Иконка */
|
|
49
|
+
icon: React.ReactNode;
|
|
50
|
+
/** Текст */
|
|
51
|
+
text: string;
|
|
52
|
+
}[];
|
|
53
|
+
/** Описание */
|
|
54
|
+
desc?: string;
|
|
55
|
+
};
|
|
56
|
+
export type Price = {
|
|
57
|
+
/** Старая цена */
|
|
58
|
+
oldValue?: string;
|
|
59
|
+
/** Текущая цена */
|
|
60
|
+
value: string;
|
|
61
|
+
/** Период */
|
|
62
|
+
period?: string;
|
|
63
|
+
};
|
|
64
|
+
export type ButtonType = {
|
|
65
|
+
/** Название */
|
|
66
|
+
title: string;
|
|
67
|
+
/** Ссылка */
|
|
68
|
+
href?: string;
|
|
69
|
+
/** Target свойство кнопки */
|
|
70
|
+
target?: Target;
|
|
71
|
+
/** Центрировать кнопку */
|
|
72
|
+
isCentered?: boolean;
|
|
73
|
+
/** Обработчик клика по кнопке */
|
|
74
|
+
onClick?: () => void;
|
|
75
|
+
};
|
|
76
|
+
export type MainButtonType = ButtonType & {
|
|
77
|
+
/** Тип кнопки */
|
|
78
|
+
type?: 'primary' | 'outline';
|
|
79
|
+
/** Тема кнопки */
|
|
80
|
+
theme?: 'green' | 'green-soft';
|
|
81
|
+
};
|
|
82
|
+
export type ExtraButtonType = ButtonType & {
|
|
83
|
+
/** Тип кнопки */
|
|
84
|
+
type?: 'outline' | 'text';
|
|
85
|
+
};
|
|
86
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { ICard } from '../Card/Card';
|
|
3
|
+
interface ICardsBoxProps {
|
|
4
|
+
/** Выводить по две колонки в ряду для 2 или 4 карточек */
|
|
5
|
+
renderTwoColumnsInRow?: boolean;
|
|
6
|
+
/** Дата атрибуты для корневого элемента */
|
|
7
|
+
dataAttrs?: {
|
|
8
|
+
root?: Record<string, string>;
|
|
9
|
+
column?: Record<string, string>;
|
|
10
|
+
};
|
|
11
|
+
children: Array<React.ReactElement<ICard>> | React.ReactElement<ICard>;
|
|
12
|
+
}
|
|
13
|
+
declare const CardsBox: React.FC<ICardsBoxProps>;
|
|
14
|
+
export default CardsBox;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import "core-js/modules/es.array.map.js";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { Grid, GridColumn } from '@megafon/ui-core';
|
|
5
|
+
import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
6
|
+
import getColumnConfig from "./helpers";
|
|
7
|
+
var cn = cnCreate('mfui-cards-box');
|
|
8
|
+
var CardsBox = function CardsBox(_ref) {
|
|
9
|
+
var _ref$renderTwoColumns = _ref.renderTwoColumnsInRow,
|
|
10
|
+
renderTwoColumnsInRow = _ref$renderTwoColumns === void 0 ? false : _ref$renderTwoColumns,
|
|
11
|
+
dataAttrs = _ref.dataAttrs,
|
|
12
|
+
children = _ref.children;
|
|
13
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
14
|
+
className: cn()
|
|
15
|
+
}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root)), /*#__PURE__*/React.createElement(Grid, {
|
|
16
|
+
guttersBottom: "medium",
|
|
17
|
+
guttersLeft: "medium"
|
|
18
|
+
}, React.Children.map(children, function (child, i) {
|
|
19
|
+
return /*#__PURE__*/React.createElement(GridColumn, _extends({
|
|
20
|
+
dataAttrs: {
|
|
21
|
+
root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.column
|
|
22
|
+
}
|
|
23
|
+
}, getColumnConfig(React.Children.count(children), i, renderTwoColumnsInRow)), child);
|
|
24
|
+
})));
|
|
25
|
+
};
|
|
26
|
+
export default CardsBox;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type TGridSizeValues = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
|
|
2
|
+
type GridConfig = {
|
|
3
|
+
all?: TGridSizeValues;
|
|
4
|
+
tablet?: TGridSizeValues;
|
|
5
|
+
mobile?: TGridSizeValues;
|
|
6
|
+
leftOffsetWide?: TGridSizeValues;
|
|
7
|
+
leftOffsetDesktop?: TGridSizeValues;
|
|
8
|
+
};
|
|
9
|
+
declare const getColumnConfig: (count: number, index: number, renderTwoColumnsInRow: boolean) => GridConfig;
|
|
10
|
+
export default getColumnConfig;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
var getColumnConfig = function getColumnConfig(count, index, renderTwoColumnsInRow) {
|
|
3
|
+
var offset = renderTwoColumnsInRow ? '2' : undefined;
|
|
4
|
+
var offsetForEvenColumn = index % 2 ? undefined : offset;
|
|
5
|
+
var columnSize = {
|
|
6
|
+
all: '4',
|
|
7
|
+
tablet: '6',
|
|
8
|
+
mobile: '12'
|
|
9
|
+
};
|
|
10
|
+
switch (count) {
|
|
11
|
+
case 2:
|
|
12
|
+
case 4:
|
|
13
|
+
return _extends(_extends({}, columnSize), {
|
|
14
|
+
leftOffsetWide: offsetForEvenColumn,
|
|
15
|
+
leftOffsetDesktop: offsetForEvenColumn
|
|
16
|
+
});
|
|
17
|
+
default:
|
|
18
|
+
return _extends({}, columnSize);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
export default getColumnConfig;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Carousel } from '@megafon/ui-core';
|
|
3
|
+
type CarouselPropsTypes = React.ComponentProps<typeof Carousel>;
|
|
4
|
+
type DesktopSlidesPerView = 3 | 4;
|
|
5
|
+
interface ICarouselBox extends CarouselPropsTypes {
|
|
6
|
+
/** Количество видимых слайдов на разрешении 1280 и выше */
|
|
7
|
+
desktopSlidesPerView?: DesktopSlidesPerView;
|
|
8
|
+
}
|
|
9
|
+
declare const CarouselBox: React.FC<ICarouselBox>;
|
|
10
|
+
export default CarouselBox;
|