@megafon/ui-shared 2.0.0-beta.24 → 2.0.0-beta.240
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/CHANGELOG.md +2292 -0
- package/README.md +0 -5
- package/dist/es/components/AccordionBox/AccordionBox.css +13 -0
- package/dist/es/components/AccordionBox/AccordionBox.d.ts +33 -0
- package/dist/es/components/AccordionBox/AccordionBox.js +62 -0
- package/dist/es/components/BannerBox/BannerBox.d.ts +5 -0
- package/dist/es/components/BannerBox/BannerBox.js +31 -0
- package/dist/es/components/BenefitsIcons/BenefitsIcons.d.ts +16 -5
- package/dist/es/components/BenefitsIcons/BenefitsIcons.js +79 -14
- package/dist/es/components/BenefitsIcons/BenefitsIconsTile.d.ts +3 -2
- package/dist/es/components/BenefitsIcons/BenefitsIconsTile.js +13 -12
- package/dist/es/components/BenefitsIcons/style/BenefitsIcons.css +1 -1
- package/dist/es/components/BenefitsIcons/style/BenefitsIconsTile.css +11 -4
- package/dist/es/components/BenefitsIcons/types.d.ts +16 -7
- package/dist/es/components/BenefitsIcons/types.js +9 -7
- package/dist/es/components/BenefitsPictures/BenefitsPictures.d.ts +12 -3
- package/dist/es/components/BenefitsPictures/BenefitsPictures.js +25 -11
- package/dist/es/components/BenefitsPictures/BenfitsPictures.css +1 -1
- package/dist/es/components/BenefitsPictures/types.d.ts +3 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.css +46 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.d.ts +21 -0
- package/dist/es/components/Breadcrumbs/Breadcrumbs.js +49 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.css +122 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.d.ts +54 -0
- package/dist/es/components/ButtonBanner/ButtonBanner.js +107 -0
- package/dist/es/components/ButtonLinkBox/ButtonLinkBox.d.ts +32 -8
- package/dist/es/components/ButtonLinkBox/ButtonLinkBox.js +45 -10
- package/dist/es/components/Card/Card.css +130 -0
- package/dist/es/components/Card/Card.d.ts +67 -0
- package/dist/es/components/Card/Card.js +176 -0
- package/dist/es/components/CardsBox/CardsBox.d.ts +15 -0
- package/dist/es/components/CardsBox/CardsBox.js +80 -0
- package/dist/es/components/CarouselBox/CarouselBox.d.ts +5 -0
- package/dist/es/components/CarouselBox/CarouselBox.js +31 -0
- package/dist/es/components/Container/Container.css +2830 -0
- package/dist/es/components/Container/Container.d.ts +26 -0
- package/dist/es/components/Container/Container.js +46 -0
- package/dist/es/components/DownloadLinks/DownloadLink.css +36 -0
- package/dist/es/components/DownloadLinks/DownloadLink.d.ts +25 -0
- package/dist/es/components/DownloadLinks/DownloadLink.js +62 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.css +36 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.d.ts +10 -0
- package/dist/es/components/DownloadLinks/DownloadLinks.js +75 -0
- package/dist/es/components/Instructions/Instructions.css +489 -0
- package/dist/es/components/Instructions/Instructions.d.ts +52 -0
- package/dist/es/components/Instructions/Instructions.js +229 -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/iphone12.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/PageTitle/PageTitle.css +80 -0
- package/dist/es/components/PageTitle/PageTitle.d.ts +23 -0
- package/dist/es/components/PageTitle/PageTitle.js +65 -0
- package/dist/es/components/Partners/Partners.css +53 -0
- package/dist/es/components/Partners/Partners.d.ts +32 -0
- package/dist/es/components/Partners/Partners.js +114 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.css +80 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.d.ts +28 -0
- package/dist/es/components/PictureWithDescription/PictureWithDescription.js +61 -0
- package/dist/es/components/Property/Property.css +125 -0
- package/dist/es/components/Property/Property.d.ts +33 -0
- package/dist/es/components/Property/Property.js +130 -0
- package/dist/es/components/Property/PropertyDescription.css +17 -0
- package/dist/es/components/Property/PropertyDescription.d.ts +5 -0
- package/dist/es/components/Property/PropertyDescription.js +51 -0
- package/dist/es/components/Property/types.d.ts +14 -0
- package/dist/es/components/Property/types.js +0 -0
- package/dist/es/components/Steps/Steps.css +41 -0
- package/dist/es/components/Steps/Steps.d.ts +10 -0
- package/dist/es/components/Steps/Steps.js +35 -0
- package/dist/es/components/Steps/StepsItem.css +37 -0
- package/dist/es/components/Steps/StepsItem.d.ts +10 -0
- package/dist/es/components/Steps/StepsItem.js +26 -0
- package/dist/es/components/StoreBanner/StoreBanner.css +289 -0
- package/dist/es/components/StoreBanner/StoreBanner.d.ts +65 -0
- package/dist/es/components/StoreBanner/StoreBanner.js +145 -0
- package/dist/es/components/StoreBanner/doc/img/new-iphone-screen.png +0 -0
- package/dist/es/components/StoreBanner/doc/img/qr-code.png +0 -0
- package/dist/es/components/StoreBanner/doc/img/screen.png +0 -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/new-iphone.png +0 -0
- package/dist/es/components/StoreBanner/img/white-iphone.png +0 -0
- package/dist/es/components/StoreButton/StoreButton.css +15 -0
- package/dist/es/components/StoreButton/StoreButton.d.ts +17 -0
- package/dist/es/components/StoreButton/StoreButton.js +37 -0
- package/dist/es/components/StoreButton/img/app-store.png +0 -0
- package/dist/es/components/StoreButton/img/google-play.png +0 -0
- package/dist/es/components/StoreButton/img/huawei-store.png +0 -0
- package/dist/es/components/Table/Table.css +153 -0
- package/dist/es/components/Table/Table.d.ts +14 -0
- package/dist/es/components/Table/Table.js +124 -0
- package/dist/es/components/Table/TableCell.d.ts +6 -0
- package/dist/es/components/Table/TableCell.js +12 -0
- package/dist/es/components/Table/TableRow.d.ts +9 -0
- package/dist/es/components/Table/TableRow.js +13 -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 +32 -0
- package/dist/es/components/TextBox/TextBox.css +16 -0
- package/dist/es/components/TextBox/TextBox.d.ts +16 -0
- package/dist/es/components/TextBox/TextBox.js +53 -0
- package/dist/es/components/TextBox/TextBoxPicture.css +24 -0
- package/dist/es/components/TextBox/TextBoxPicture.d.ts +17 -0
- package/dist/es/components/TextBox/TextBoxPicture.js +31 -0
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.css +11 -0
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +13 -7
- package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.js +33 -13
- package/dist/es/components/VideoBanner/VideoBanner.css +216 -0
- package/dist/es/components/VideoBanner/VideoBanner.d.ts +90 -0
- package/dist/es/components/VideoBanner/VideoBanner.js +272 -0
- package/dist/es/components/VideoBlock/VideoBlock.css +127 -0
- package/dist/es/components/VideoBlock/VideoBlock.d.ts +49 -0
- package/dist/es/components/VideoBlock/VideoBlock.js +147 -0
- package/dist/es/constants/throttleTime.d.ts +4 -0
- package/dist/es/constants/throttleTime.js +3 -0
- package/dist/es/index.d.ts +29 -17
- package/dist/es/index.js +30 -18
- package/dist/lib/components/AccordionBox/AccordionBox.css +13 -0
- package/dist/lib/components/AccordionBox/AccordionBox.d.ts +33 -0
- package/dist/lib/components/AccordionBox/AccordionBox.js +80 -0
- package/dist/lib/components/BannerBox/BannerBox.d.ts +5 -0
- package/dist/lib/components/BannerBox/BannerBox.js +49 -0
- package/dist/lib/components/BenefitsIcons/BenefitsIcons.d.ts +16 -5
- package/dist/lib/components/BenefitsIcons/BenefitsIcons.js +82 -17
- package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.d.ts +3 -2
- package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.js +14 -15
- package/dist/lib/components/BenefitsIcons/style/BenefitsIcons.css +1 -1
- package/dist/lib/components/BenefitsIcons/style/BenefitsIconsTile.css +11 -4
- package/dist/lib/components/BenefitsIcons/types.d.ts +16 -7
- package/dist/lib/components/BenefitsIcons/types.js +11 -8
- package/dist/lib/components/BenefitsPictures/BenefitsPictures.d.ts +12 -3
- package/dist/lib/components/BenefitsPictures/BenefitsPictures.js +27 -13
- package/dist/lib/components/BenefitsPictures/BenfitsPictures.css +1 -1
- package/dist/lib/components/BenefitsPictures/types.d.ts +3 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.css +46 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.d.ts +21 -0
- package/dist/lib/components/Breadcrumbs/Breadcrumbs.js +65 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.css +122 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.d.ts +54 -0
- package/dist/lib/components/ButtonBanner/ButtonBanner.js +133 -0
- package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.d.ts +32 -8
- package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.js +53 -13
- package/dist/lib/components/Card/Card.css +130 -0
- package/dist/lib/components/Card/Card.d.ts +67 -0
- package/dist/lib/components/Card/Card.js +199 -0
- package/dist/lib/components/CardsBox/CardsBox.d.ts +15 -0
- package/dist/lib/components/CardsBox/CardsBox.js +105 -0
- package/dist/lib/components/CarouselBox/CarouselBox.d.ts +5 -0
- package/dist/lib/components/CarouselBox/CarouselBox.js +49 -0
- package/dist/lib/components/Container/Container.css +2830 -0
- package/dist/lib/components/Container/Container.d.ts +26 -0
- package/dist/lib/components/Container/Container.js +61 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.css +36 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.d.ts +25 -0
- package/dist/lib/components/DownloadLinks/DownloadLink.js +83 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.css +36 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.d.ts +10 -0
- package/dist/lib/components/DownloadLinks/DownloadLinks.js +95 -0
- package/dist/lib/components/Instructions/Instructions.css +489 -0
- package/dist/lib/components/Instructions/Instructions.d.ts +52 -0
- package/dist/lib/components/Instructions/Instructions.js +258 -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/iphone12.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/PageTitle/PageTitle.css +80 -0
- package/dist/lib/components/PageTitle/PageTitle.d.ts +23 -0
- package/dist/lib/components/PageTitle/PageTitle.js +85 -0
- package/dist/lib/components/Partners/Partners.css +53 -0
- package/dist/lib/components/Partners/Partners.d.ts +32 -0
- package/dist/lib/components/Partners/Partners.js +136 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.css +80 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.d.ts +28 -0
- package/dist/lib/components/PictureWithDescription/PictureWithDescription.js +81 -0
- package/dist/lib/components/Property/Property.css +125 -0
- package/dist/lib/components/Property/Property.d.ts +33 -0
- package/dist/lib/components/Property/Property.js +152 -0
- package/dist/lib/components/Property/PropertyDescription.css +17 -0
- package/dist/lib/components/Property/PropertyDescription.d.ts +5 -0
- package/dist/lib/components/Property/PropertyDescription.js +71 -0
- package/dist/lib/components/Property/types.d.ts +14 -0
- package/dist/lib/components/Property/types.js +1 -0
- package/dist/lib/components/Steps/Steps.css +41 -0
- package/dist/lib/components/Steps/Steps.d.ts +10 -0
- package/dist/lib/components/Steps/Steps.js +55 -0
- package/dist/lib/components/Steps/StepsItem.css +37 -0
- package/dist/lib/components/Steps/StepsItem.d.ts +10 -0
- package/dist/lib/components/Steps/StepsItem.js +39 -0
- package/dist/lib/components/StoreBanner/StoreBanner.css +289 -0
- package/dist/lib/components/StoreBanner/StoreBanner.d.ts +65 -0
- package/dist/lib/components/StoreBanner/StoreBanner.js +169 -0
- package/dist/lib/components/StoreBanner/doc/img/new-iphone-screen.png +0 -0
- package/dist/lib/components/StoreBanner/doc/img/qr-code.png +0 -0
- package/dist/lib/components/StoreBanner/doc/img/screen.png +0 -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/new-iphone.png +0 -0
- package/dist/lib/components/StoreBanner/img/white-iphone.png +0 -0
- package/dist/lib/components/StoreButton/StoreButton.css +15 -0
- package/dist/lib/components/StoreButton/StoreButton.d.ts +17 -0
- package/dist/lib/components/StoreButton/StoreButton.js +58 -0
- package/dist/lib/components/StoreButton/img/app-store.png +0 -0
- package/dist/lib/components/StoreButton/img/google-play.png +0 -0
- package/dist/lib/components/StoreButton/img/huawei-store.png +0 -0
- package/dist/lib/components/Table/Table.css +153 -0
- package/dist/lib/components/Table/Table.d.ts +14 -0
- package/dist/lib/components/Table/Table.js +146 -0
- package/dist/lib/components/Table/TableCell.d.ts +6 -0
- package/dist/lib/components/Table/TableCell.js +27 -0
- package/dist/lib/components/Table/TableRow.d.ts +9 -0
- package/dist/lib/components/Table/TableRow.js +28 -0
- package/dist/lib/components/TabsBox/TabBox.d.ts +2 -0
- package/dist/lib/components/TabsBox/TabBox.js +11 -0
- package/dist/lib/components/TabsBox/TabsBox.d.ts +8 -0
- package/dist/lib/components/TabsBox/TabsBox.js +50 -0
- package/dist/lib/components/TextBox/TextBox.css +16 -0
- package/dist/lib/components/TextBox/TextBox.d.ts +16 -0
- package/dist/lib/components/TextBox/TextBox.js +70 -0
- package/dist/lib/components/TextBox/TextBoxPicture.css +24 -0
- package/dist/lib/components/TextBox/TextBoxPicture.d.ts +17 -0
- package/dist/lib/components/TextBox/TextBoxPicture.js +48 -0
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.css +11 -0
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +13 -7
- package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.js +37 -17
- package/dist/lib/components/VideoBanner/VideoBanner.css +216 -0
- package/dist/lib/components/VideoBanner/VideoBanner.d.ts +90 -0
- package/dist/lib/components/VideoBanner/VideoBanner.js +309 -0
- package/dist/lib/components/VideoBlock/VideoBlock.css +127 -0
- package/dist/lib/components/VideoBlock/VideoBlock.d.ts +49 -0
- package/dist/lib/components/VideoBlock/VideoBlock.js +170 -0
- package/dist/lib/constants/throttleTime.d.ts +4 -0
- package/dist/lib/constants/throttleTime.js +10 -0
- package/dist/lib/index.d.ts +29 -17
- package/dist/lib/index.js +147 -51
- package/package.json +22 -77
- package/dist/es/components/ProductCard/ProductCardFeatures.css +0 -35
- package/dist/es/components/ProductCard/ProductCardFeatures.d.ts +0 -61
- package/dist/es/components/ProductCard/ProductCardFeatures.js +0 -82
- package/dist/es/components/ProductCard/ProductCardFeaturesBottom.css +0 -41
- package/dist/es/components/ProductCard/ProductCardFeaturesBottom.d.ts +0 -22
- package/dist/es/components/ProductCard/ProductCardFeaturesBottom.js +0 -80
- package/dist/es/components/ProductCard/ProductCardFeaturesTop.css +0 -16
- package/dist/es/components/ProductCard/ProductCardFeaturesTop.d.ts +0 -25
- package/dist/es/components/ProductCard/ProductCardFeaturesTop.js +0 -67
- package/dist/es/components/ProductCard/ProductCardInfo.css +0 -236
- package/dist/es/components/ProductCard/ProductCardInfo.d.ts +0 -75
- package/dist/es/components/ProductCard/ProductCardInfo.js +0 -169
- package/dist/es/components/ProductCard/ProductCardTotal.css +0 -113
- package/dist/es/components/ProductCard/ProductCardTotal.d.ts +0 -86
- package/dist/es/components/ProductCard/ProductCardTotal.js +0 -161
- package/dist/es/components/ProductCard/ProductCardWrapper.css +0 -162
- package/dist/es/components/ProductCard/ProductCardWrapper.d.ts +0 -53
- package/dist/es/components/ProductCard/ProductCardWrapper.js +0 -109
- package/dist/es/components/ProductSwitcher/ProductSwitcher.css +0 -372
- package/dist/es/components/ProductSwitcher/ProductSwitcher.d.ts +0 -86
- package/dist/es/components/ProductSwitcher/ProductSwitcher.js +0 -612
- package/dist/es/components/ProductTile/ProductTile.d.ts +0 -287
- package/dist/es/components/ProductTile/ProductTile.js +0 -497
- package/dist/es/components/ProductTile/ProductTileBuy.d.ts +0 -53
- package/dist/es/components/ProductTile/ProductTileBuy.js +0 -99
- package/dist/es/components/ProductTile/ProductTileCashback.d.ts +0 -20
- package/dist/es/components/ProductTile/ProductTileCashback.js +0 -60
- package/dist/es/components/ProductTile/ProductTileDynamic.d.ts +0 -42
- package/dist/es/components/ProductTile/ProductTileDynamic.js +0 -109
- package/dist/es/components/ProductTile/ProductTileHint.d.ts +0 -24
- package/dist/es/components/ProductTile/ProductTileHint.js +0 -67
- package/dist/es/components/ProductTile/ProductTileOptions.d.ts +0 -31
- package/dist/es/components/ProductTile/ProductTileOptions.js +0 -130
- package/dist/es/components/ProductTile/ProductTilePrice.d.ts +0 -26
- package/dist/es/components/ProductTile/ProductTilePrice.js +0 -75
- package/dist/es/components/ProductTile/ProductTileStatic.d.ts +0 -20
- package/dist/es/components/ProductTile/ProductTileStatic.js +0 -60
- package/dist/es/components/ProductTile/ProductTileValue.d.ts +0 -31
- package/dist/es/components/ProductTile/ProductTileValue.js +0 -111
- package/dist/es/components/ProductTile/style/ProductTile.css +0 -146
- package/dist/es/components/ProductTile/style/ProductTileBuy.css +0 -76
- package/dist/es/components/ProductTile/style/ProductTileCashback.css +0 -23
- package/dist/es/components/ProductTile/style/ProductTileDynamic.css +0 -38
- package/dist/es/components/ProductTile/style/ProductTileHint.css +0 -93
- package/dist/es/components/ProductTile/style/ProductTileOptions.css +0 -84
- package/dist/es/components/ProductTile/style/ProductTilePrice.css +0 -105
- package/dist/es/components/ProductTile/style/ProductTileStatic.css +0 -23
- package/dist/es/components/ProductTile/style/ProductTileValue.css +0 -58
- package/dist/es/components/ProductTileRest/ProductTileRest.css +0 -226
- package/dist/es/components/ProductTileRest/ProductTileRest.d.ts +0 -109
- package/dist/es/components/ProductTileRest/ProductTileRest.js +0 -291
- package/dist/es/constants/breakpoints.d.ts +0 -1
- package/dist/es/constants/breakpoints.js +0 -1
- package/dist/lib/components/ProductCard/ProductCardFeatures.css +0 -35
- package/dist/lib/components/ProductCard/ProductCardFeatures.d.ts +0 -61
- package/dist/lib/components/ProductCard/ProductCardFeatures.js +0 -141
- package/dist/lib/components/ProductCard/ProductCardFeaturesBottom.css +0 -41
- package/dist/lib/components/ProductCard/ProductCardFeaturesBottom.d.ts +0 -22
- package/dist/lib/components/ProductCard/ProductCardFeaturesBottom.js +0 -140
- package/dist/lib/components/ProductCard/ProductCardFeaturesTop.css +0 -16
- package/dist/lib/components/ProductCard/ProductCardFeaturesTop.d.ts +0 -25
- package/dist/lib/components/ProductCard/ProductCardFeaturesTop.js +0 -124
- package/dist/lib/components/ProductCard/ProductCardInfo.css +0 -236
- package/dist/lib/components/ProductCard/ProductCardInfo.d.ts +0 -75
- package/dist/lib/components/ProductCard/ProductCardInfo.js +0 -241
- package/dist/lib/components/ProductCard/ProductCardTotal.css +0 -113
- package/dist/lib/components/ProductCard/ProductCardTotal.d.ts +0 -86
- package/dist/lib/components/ProductCard/ProductCardTotal.js +0 -218
- package/dist/lib/components/ProductCard/ProductCardWrapper.css +0 -162
- package/dist/lib/components/ProductCard/ProductCardWrapper.d.ts +0 -53
- package/dist/lib/components/ProductCard/ProductCardWrapper.js +0 -170
- package/dist/lib/components/ProductSwitcher/ProductSwitcher.css +0 -372
- package/dist/lib/components/ProductSwitcher/ProductSwitcher.d.ts +0 -86
- package/dist/lib/components/ProductSwitcher/ProductSwitcher.js +0 -686
- package/dist/lib/components/ProductTile/ProductTile.d.ts +0 -287
- package/dist/lib/components/ProductTile/ProductTile.js +0 -590
- package/dist/lib/components/ProductTile/ProductTileBuy.d.ts +0 -53
- package/dist/lib/components/ProductTile/ProductTileBuy.js +0 -156
- package/dist/lib/components/ProductTile/ProductTileCashback.d.ts +0 -20
- package/dist/lib/components/ProductTile/ProductTileCashback.js +0 -117
- package/dist/lib/components/ProductTile/ProductTileDynamic.d.ts +0 -42
- package/dist/lib/components/ProductTile/ProductTileDynamic.js +0 -174
- package/dist/lib/components/ProductTile/ProductTileHint.d.ts +0 -24
- package/dist/lib/components/ProductTile/ProductTileHint.js +0 -124
- package/dist/lib/components/ProductTile/ProductTileOptions.d.ts +0 -31
- package/dist/lib/components/ProductTile/ProductTileOptions.js +0 -193
- package/dist/lib/components/ProductTile/ProductTilePrice.d.ts +0 -26
- package/dist/lib/components/ProductTile/ProductTilePrice.js +0 -136
- package/dist/lib/components/ProductTile/ProductTileStatic.d.ts +0 -20
- package/dist/lib/components/ProductTile/ProductTileStatic.js +0 -123
- package/dist/lib/components/ProductTile/ProductTileValue.d.ts +0 -31
- package/dist/lib/components/ProductTile/ProductTileValue.js +0 -171
- package/dist/lib/components/ProductTile/style/ProductTile.css +0 -146
- package/dist/lib/components/ProductTile/style/ProductTileBuy.css +0 -76
- package/dist/lib/components/ProductTile/style/ProductTileCashback.css +0 -23
- package/dist/lib/components/ProductTile/style/ProductTileDynamic.css +0 -38
- package/dist/lib/components/ProductTile/style/ProductTileHint.css +0 -93
- package/dist/lib/components/ProductTile/style/ProductTileOptions.css +0 -84
- package/dist/lib/components/ProductTile/style/ProductTilePrice.css +0 -105
- package/dist/lib/components/ProductTile/style/ProductTileStatic.css +0 -23
- package/dist/lib/components/ProductTile/style/ProductTileValue.css +0 -58
- package/dist/lib/components/ProductTileRest/ProductTileRest.css +0 -226
- package/dist/lib/components/ProductTileRest/ProductTileRest.d.ts +0 -109
- package/dist/lib/components/ProductTileRest/ProductTileRest.js +0 -364
- package/dist/lib/constants/breakpoints.d.ts +0 -1
- package/dist/lib/constants/breakpoints.js +0 -8
@@ -0,0 +1,229 @@
|
|
1
|
+
import "core-js/modules/es.array.map";
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
3
|
+
import React from 'react';
|
4
|
+
import PropTypes from 'prop-types';
|
5
|
+
import "./Instructions.css";
|
6
|
+
import convert from 'htmr';
|
7
|
+
import { Swiper, SwiperSlide } from 'swiper/react';
|
8
|
+
import { Grid, GridColumn, Header, Paragraph } from '@megafon/ui-core';
|
9
|
+
import { cnCreate } from '@megafon/ui-helpers';
|
10
|
+
export var pictureAlignTypes = {
|
11
|
+
LEFT: 'left',
|
12
|
+
RIGHT: 'right'
|
13
|
+
};
|
14
|
+
export var pictureMaskTypes = {
|
15
|
+
ANDROID: 'android',
|
16
|
+
NEW_IPHONE: 'new-iphone',
|
17
|
+
BLACK_IPHONE: 'black-iphone',
|
18
|
+
WHITE_IPHONE: 'white-iphone',
|
19
|
+
LAPTOP: 'laptop',
|
20
|
+
IPHONE_12: 'iphone-12',
|
21
|
+
NONE: 'none'
|
22
|
+
};
|
23
|
+
var cn = cnCreate('mfui-beta-instructions');
|
24
|
+
var swiperSlideCn = cn('slide');
|
25
|
+
|
26
|
+
var Instructions = function Instructions(_ref) {
|
27
|
+
var rootRef = _ref.rootRef,
|
28
|
+
_ref$classes = _ref.classes;
|
29
|
+
_ref$classes = _ref$classes === void 0 ? {} : _ref$classes;
|
30
|
+
var instructionItem = _ref$classes.instructionItem,
|
31
|
+
desktopInstructionItem = _ref$classes.desktopInstructionItem,
|
32
|
+
mobileInstructionItem = _ref$classes.mobileInstructionItem,
|
33
|
+
activeInstructionItem = _ref$classes.activeInstructionItem,
|
34
|
+
desktopItemTitle = _ref$classes.desktopItemTitle,
|
35
|
+
mobileItemTitle = _ref$classes.mobileItemTitle,
|
36
|
+
instructionItemImg = _ref$classes.instructionItemImg,
|
37
|
+
additionalText = _ref$classes.additionalText,
|
38
|
+
title = _ref.title,
|
39
|
+
instructionItems = _ref.instructionItems,
|
40
|
+
_ref$pictureAlign = _ref.pictureAlign,
|
41
|
+
pictureAlign = _ref$pictureAlign === void 0 ? 'left' : _ref$pictureAlign,
|
42
|
+
_ref$pictureMask = _ref.pictureMask,
|
43
|
+
pictureMask = _ref$pictureMask === void 0 ? 'none' : _ref$pictureMask,
|
44
|
+
getSwiper = _ref.getSwiper,
|
45
|
+
text = _ref.additionalText;
|
46
|
+
|
47
|
+
var _React$useState = React.useState(),
|
48
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
49
|
+
swiperInstance = _React$useState2[0],
|
50
|
+
setSwiperInstance = _React$useState2[1];
|
51
|
+
|
52
|
+
var _React$useState3 = React.useState(0),
|
53
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
54
|
+
slideIndex = _React$useState4[0],
|
55
|
+
setSlideIndex = _React$useState4[1];
|
56
|
+
|
57
|
+
var getSwiperInstance = React.useCallback(function (swiper) {
|
58
|
+
setSwiperInstance(swiper);
|
59
|
+
getSwiper && getSwiper(swiper);
|
60
|
+
}, []);
|
61
|
+
var getActiveCustomClass = React.useCallback(function (articleIndex, activeIndex) {
|
62
|
+
if (articleIndex !== activeIndex) {
|
63
|
+
return;
|
64
|
+
}
|
65
|
+
|
66
|
+
return activeInstructionItem;
|
67
|
+
}, [activeInstructionItem]);
|
68
|
+
var handleArticleClick = React.useCallback(function (ind) {
|
69
|
+
return function () {
|
70
|
+
setSlideIndex(ind);
|
71
|
+
swiperInstance && swiperInstance.slideTo(ind);
|
72
|
+
};
|
73
|
+
}, [swiperInstance]);
|
74
|
+
var renderTitle = React.useCallback(function (resolution) {
|
75
|
+
return /*#__PURE__*/React.createElement(Header, {
|
76
|
+
className: cn('title', {
|
77
|
+
resolution: resolution
|
78
|
+
}),
|
79
|
+
as: "h2"
|
80
|
+
}, title);
|
81
|
+
}, []);
|
82
|
+
var renderText = React.useCallback(function () {
|
83
|
+
return /*#__PURE__*/React.createElement(Paragraph, {
|
84
|
+
className: cn('text', [additionalText]),
|
85
|
+
hasMargin: false
|
86
|
+
}, convert(text));
|
87
|
+
}, [text, additionalText]);
|
88
|
+
var renderPicture = React.useCallback(function () {
|
89
|
+
if (pictureMask === pictureMaskTypes.NONE) {
|
90
|
+
return renderSlider();
|
91
|
+
}
|
92
|
+
|
93
|
+
return /*#__PURE__*/React.createElement("div", {
|
94
|
+
className: cn('img-wrapper')
|
95
|
+
}, /*#__PURE__*/React.createElement("div", {
|
96
|
+
className: cn('device-screen')
|
97
|
+
}), renderSlider());
|
98
|
+
}, [pictureMask]);
|
99
|
+
var renderVideo = React.useCallback(function (mediaUrl) {
|
100
|
+
return /*#__PURE__*/React.createElement("video", {
|
101
|
+
className: cn('swiper-img'),
|
102
|
+
autoPlay: true,
|
103
|
+
muted: true,
|
104
|
+
loop: true,
|
105
|
+
playsInline: true
|
106
|
+
}, /*#__PURE__*/React.createElement("source", {
|
107
|
+
src: mediaUrl,
|
108
|
+
type: "video/mp4"
|
109
|
+
}));
|
110
|
+
}, []);
|
111
|
+
var renderSlider = React.useCallback(function () {
|
112
|
+
return /*#__PURE__*/React.createElement(Swiper, {
|
113
|
+
className: cn('swiper'),
|
114
|
+
onSwiper: getSwiperInstance,
|
115
|
+
noSwipingClass: swiperSlideCn
|
116
|
+
}, instructionItems.map(function (_ref2, ind) {
|
117
|
+
var mediaUrl = _ref2.mediaUrl,
|
118
|
+
isVideo = _ref2.isVideo;
|
119
|
+
return /*#__PURE__*/React.createElement(SwiperSlide, {
|
120
|
+
className: swiperSlideCn,
|
121
|
+
key: ind + mediaUrl
|
122
|
+
}, isVideo ? renderVideo(mediaUrl) : /*#__PURE__*/React.createElement("img", {
|
123
|
+
className: cn('swiper-img', [instructionItemImg]),
|
124
|
+
src: mediaUrl,
|
125
|
+
alt: ""
|
126
|
+
}));
|
127
|
+
}));
|
128
|
+
}, [instructionItems]);
|
129
|
+
var renderDesktopArticles = React.useCallback(function () {
|
130
|
+
return /*#__PURE__*/React.createElement("ul", {
|
131
|
+
className: cn('articles-list', {
|
132
|
+
'text-after': !!text,
|
133
|
+
desktop: true
|
134
|
+
})
|
135
|
+
}, instructionItems.map(function (_ref3, ind) {
|
136
|
+
var itemTitle = _ref3.title;
|
137
|
+
return /*#__PURE__*/React.createElement("li", {
|
138
|
+
className: cn('articles-item', {
|
139
|
+
active: slideIndex === ind
|
140
|
+
}, [getActiveCustomClass(ind, slideIndex), instructionItem, desktopInstructionItem]),
|
141
|
+
"data-index": ind,
|
142
|
+
onClick: handleArticleClick(ind),
|
143
|
+
key: ind
|
144
|
+
}, /*#__PURE__*/React.createElement("div", {
|
145
|
+
className: cn('articles-item-dot')
|
146
|
+
}, /*#__PURE__*/React.createElement("span", {
|
147
|
+
className: cn('articles-item-dot-number')
|
148
|
+
}, ind + 1)), /*#__PURE__*/React.createElement("div", {
|
149
|
+
className: cn('articles-item-title', [desktopItemTitle])
|
150
|
+
}, itemTitle));
|
151
|
+
}));
|
152
|
+
}, [instructionItems, slideIndex, handleArticleClick, text]);
|
153
|
+
var renderMobileArticles = React.useCallback(function () {
|
154
|
+
return /*#__PURE__*/React.createElement("div", {
|
155
|
+
className: cn('articles-list', {
|
156
|
+
mobile: true
|
157
|
+
})
|
158
|
+
}, /*#__PURE__*/React.createElement("div", {
|
159
|
+
className: cn('articles-title-block')
|
160
|
+
}, instructionItems.map(function (_ref4, ind) {
|
161
|
+
var itemTitle = _ref4.title;
|
162
|
+
return slideIndex === ind && /*#__PURE__*/React.createElement("div", {
|
163
|
+
className: cn('articles-title', [mobileItemTitle]),
|
164
|
+
"data-index": ind,
|
165
|
+
key: ind
|
166
|
+
}, itemTitle);
|
167
|
+
})), /*#__PURE__*/React.createElement("ul", {
|
168
|
+
className: cn('articles-dots', {
|
169
|
+
'text-after': !!text
|
170
|
+
})
|
171
|
+
}, instructionItems.map(function (_item, ind) {
|
172
|
+
return /*#__PURE__*/React.createElement("div", {
|
173
|
+
key: ind,
|
174
|
+
className: cn('articles-dot', {
|
175
|
+
active: slideIndex === ind
|
176
|
+
}, [getActiveCustomClass(ind, slideIndex), instructionItem, mobileInstructionItem]),
|
177
|
+
onClick: handleArticleClick(ind)
|
178
|
+
}, /*#__PURE__*/React.createElement("span", {
|
179
|
+
className: cn('articles-dot-number')
|
180
|
+
}, ind + 1));
|
181
|
+
})));
|
182
|
+
}, [instructionItems, slideIndex, handleArticleClick, text]);
|
183
|
+
return /*#__PURE__*/React.createElement("div", {
|
184
|
+
className: cn({
|
185
|
+
mask: pictureMask
|
186
|
+
}),
|
187
|
+
ref: rootRef
|
188
|
+
}, /*#__PURE__*/React.createElement(Grid, {
|
189
|
+
hAlign: "center"
|
190
|
+
}, /*#__PURE__*/React.createElement(GridColumn, {
|
191
|
+
all: "12"
|
192
|
+
}, renderTitle('mobile'), /*#__PURE__*/React.createElement("div", {
|
193
|
+
className: cn('wrapper')
|
194
|
+
}, /*#__PURE__*/React.createElement("div", {
|
195
|
+
className: cn('picture', {
|
196
|
+
align: pictureAlign
|
197
|
+
})
|
198
|
+
}, renderPicture()), /*#__PURE__*/React.createElement("div", {
|
199
|
+
className: cn('articles', {
|
200
|
+
align: pictureAlign
|
201
|
+
})
|
202
|
+
}, renderTitle('desktop'), renderMobileArticles(), renderDesktopArticles(), text && renderText())))));
|
203
|
+
};
|
204
|
+
|
205
|
+
Instructions.propTypes = {
|
206
|
+
rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
|
207
|
+
current: PropTypes.elementType
|
208
|
+
}), PropTypes.any])]),
|
209
|
+
classes: PropTypes.shape({
|
210
|
+
instructionItem: PropTypes.string,
|
211
|
+
desktopInstructionItem: PropTypes.string,
|
212
|
+
mobileInstructionItem: PropTypes.string,
|
213
|
+
activeInstructionItem: PropTypes.string,
|
214
|
+
desktopItemTitle: PropTypes.string,
|
215
|
+
mobileItemTitle: PropTypes.string,
|
216
|
+
instructionItemImg: PropTypes.string
|
217
|
+
}),
|
218
|
+
title: PropTypes.string.isRequired,
|
219
|
+
additionalText: PropTypes.string,
|
220
|
+
instructionItems: PropTypes.arrayOf(PropTypes.shape({
|
221
|
+
title: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired,
|
222
|
+
mediaUrl: PropTypes.string.isRequired,
|
223
|
+
isVideo: PropTypes.bool.isRequired
|
224
|
+
}).isRequired).isRequired,
|
225
|
+
pictureAlign: PropTypes.oneOf([pictureAlignTypes.LEFT, pictureAlignTypes.RIGHT]),
|
226
|
+
pictureMask: PropTypes.oneOf([pictureMaskTypes.ANDROID, pictureMaskTypes.NEW_IPHONE, pictureMaskTypes.WHITE_IPHONE, pictureMaskTypes.BLACK_IPHONE, pictureMaskTypes.LAPTOP, pictureMaskTypes.IPHONE_12, pictureMaskTypes.NONE]),
|
227
|
+
getSwiper: PropTypes.func
|
228
|
+
};
|
229
|
+
export default Instructions;
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,80 @@
|
|
1
|
+
h1,
|
2
|
+
h2,
|
3
|
+
h3,
|
4
|
+
h4,
|
5
|
+
h5 {
|
6
|
+
margin: 0;
|
7
|
+
}
|
8
|
+
.mfui-beta-page-title {
|
9
|
+
display: inline-block;
|
10
|
+
width: 100%;
|
11
|
+
}
|
12
|
+
.mfui-beta-page-title__breadcrumbs {
|
13
|
+
margin-top: 32px;
|
14
|
+
}
|
15
|
+
@media screen and (max-width: 767px) {
|
16
|
+
.mfui-beta-page-title__breadcrumbs {
|
17
|
+
display: none;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
.mfui-beta-page-title__title {
|
21
|
+
margin-top: 110px;
|
22
|
+
}
|
23
|
+
@media screen and (min-width: 1024px) and (max-width: 1279px) {
|
24
|
+
.mfui-beta-page-title__title {
|
25
|
+
margin-top: 100px;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
@media screen and (min-width: 768px) and (max-width: 1023px) {
|
29
|
+
.mfui-beta-page-title__title {
|
30
|
+
margin-top: 90px;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
@media screen and (max-width: 767px) {
|
34
|
+
.mfui-beta-page-title__title {
|
35
|
+
margin-top: 45px;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
.mfui-beta-page-title__badge {
|
39
|
+
font-size: 12px;
|
40
|
+
line-height: 16px;
|
41
|
+
display: inline-block;
|
42
|
+
margin-top: 16px;
|
43
|
+
padding: 2px 14px;
|
44
|
+
color: #FFFFFF;
|
45
|
+
font-weight: 500;
|
46
|
+
background-color: #731982;
|
47
|
+
}
|
48
|
+
@media screen and (min-width: 1280px) {
|
49
|
+
.mfui-beta-page-title__badge_under-breadcrumbs {
|
50
|
+
margin-top: 32px;
|
51
|
+
}
|
52
|
+
}
|
53
|
+
@media screen and (min-width: 1024px) and (max-width: 1279px) {
|
54
|
+
.mfui-beta-page-title__badge_under-breadcrumbs {
|
55
|
+
margin-top: 24px;
|
56
|
+
}
|
57
|
+
}
|
58
|
+
@media screen and (min-width: 768px) and (max-width: 1023px) {
|
59
|
+
.mfui-beta-page-title__badge_under-breadcrumbs {
|
60
|
+
margin-top: 16px;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
@media screen and (min-width: 1280px) {
|
64
|
+
.mfui-beta-page-title__title_under-breadcrumbs {
|
65
|
+
margin-top: 60px;
|
66
|
+
}
|
67
|
+
}
|
68
|
+
@media screen and (min-width: 1024px) and (max-width: 1279px) {
|
69
|
+
.mfui-beta-page-title__title_under-breadcrumbs {
|
70
|
+
margin-top: 50px;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
@media screen and (min-width: 768px) and (max-width: 1023px) {
|
74
|
+
.mfui-beta-page-title__title_under-breadcrumbs {
|
75
|
+
margin-top: 45px;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
.mfui-beta-page-title__badge + .mfui-beta-page-title__title {
|
79
|
+
margin-top: 8px;
|
80
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import './PageTitle.less';
|
3
|
+
import { Props as BreadcrumbsType } from '../Breadcrumbs/Breadcrumbs';
|
4
|
+
declare type Props = {
|
5
|
+
/** Текст заголовка */
|
6
|
+
title: string | React.ReactNode | React.ReactNode[];
|
7
|
+
/** Хлебные крошки */
|
8
|
+
breadcrumbs?: BreadcrumbsType['items'];
|
9
|
+
/** Текст бейджа */
|
10
|
+
badge?: string;
|
11
|
+
/** Растягивание компонента на всю доступную ширину */
|
12
|
+
isFullWidth?: boolean;
|
13
|
+
/** Класс для корневого элемента */
|
14
|
+
className?: string;
|
15
|
+
/** Дополнительные классы для внутренних элементов */
|
16
|
+
classes?: {
|
17
|
+
breadcrumbs?: string;
|
18
|
+
};
|
19
|
+
/** Ссылка на корневой элемент */
|
20
|
+
rootRef?: React.RefObject<HTMLDivElement>;
|
21
|
+
};
|
22
|
+
declare const PageTitle: React.FC<Props>;
|
23
|
+
export default PageTitle;
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import PropTypes from 'prop-types';
|
3
|
+
import { Header, Grid, GridColumn } from '@megafon/ui-core';
|
4
|
+
import { cnCreate } from '@megafon/ui-helpers';
|
5
|
+
import "./PageTitle.css";
|
6
|
+
import Breadcrumbs from "../Breadcrumbs/Breadcrumbs";
|
7
|
+
var cn = cnCreate('mfui-beta-page-title');
|
8
|
+
|
9
|
+
var PageTitle = function PageTitle(_ref) {
|
10
|
+
var title = _ref.title,
|
11
|
+
breadcrumbs = _ref.breadcrumbs,
|
12
|
+
badge = _ref.badge,
|
13
|
+
_ref$isFullWidth = _ref.isFullWidth,
|
14
|
+
isFullWidth = _ref$isFullWidth === void 0 ? true : _ref$isFullWidth,
|
15
|
+
className = _ref.className,
|
16
|
+
_ref$classes = _ref.classes,
|
17
|
+
classes = _ref$classes === void 0 ? {} : _ref$classes,
|
18
|
+
rootRef = _ref.rootRef;
|
19
|
+
var isBreadcrumbs = !!(breadcrumbs === null || breadcrumbs === void 0 ? void 0 : breadcrumbs.length);
|
20
|
+
var renderPageTitle = React.useCallback(function () {
|
21
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, badge && /*#__PURE__*/React.createElement("div", {
|
22
|
+
className: cn('badge', {
|
23
|
+
'under-breadcrumbs': isBreadcrumbs
|
24
|
+
})
|
25
|
+
}, badge), /*#__PURE__*/React.createElement(Header, {
|
26
|
+
className: cn('title', {
|
27
|
+
'under-breadcrumbs': isBreadcrumbs && !badge
|
28
|
+
}),
|
29
|
+
as: "h1"
|
30
|
+
}, title));
|
31
|
+
}, [breadcrumbs, classes, badge, title]);
|
32
|
+
var renderPageTitleWithGrid = React.useCallback(function () {
|
33
|
+
return /*#__PURE__*/React.createElement(Grid, null, /*#__PURE__*/React.createElement(GridColumn, {
|
34
|
+
wide: "8",
|
35
|
+
desktop: "10",
|
36
|
+
tablet: "12",
|
37
|
+
mobile: "12"
|
38
|
+
}, renderPageTitle()));
|
39
|
+
}, [renderPageTitle]);
|
40
|
+
return /*#__PURE__*/React.createElement("div", {
|
41
|
+
className: cn([className]),
|
42
|
+
ref: rootRef
|
43
|
+
}, (breadcrumbs === null || breadcrumbs === void 0 ? void 0 : breadcrumbs.length) && /*#__PURE__*/React.createElement(Breadcrumbs, {
|
44
|
+
items: breadcrumbs,
|
45
|
+
className: cn('breadcrumbs', [classes.breadcrumbs])
|
46
|
+
}), isFullWidth ? renderPageTitle() : renderPageTitleWithGrid());
|
47
|
+
};
|
48
|
+
|
49
|
+
PageTitle.propTypes = {
|
50
|
+
title: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired,
|
51
|
+
breadcrumbs: PropTypes.arrayOf(PropTypes.shape({
|
52
|
+
title: PropTypes.string.isRequired,
|
53
|
+
href: PropTypes.string
|
54
|
+
}).isRequired),
|
55
|
+
badge: PropTypes.string,
|
56
|
+
isFullWidth: PropTypes.bool,
|
57
|
+
className: PropTypes.string,
|
58
|
+
classes: PropTypes.shape({
|
59
|
+
breadcrumbs: PropTypes.string
|
60
|
+
}),
|
61
|
+
rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
|
62
|
+
current: PropTypes.elementType
|
63
|
+
}), PropTypes.any])])
|
64
|
+
};
|
65
|
+
export default PageTitle;
|
@@ -0,0 +1,53 @@
|
|
1
|
+
h1,
|
2
|
+
h2,
|
3
|
+
h3,
|
4
|
+
h4,
|
5
|
+
h5 {
|
6
|
+
margin: 0;
|
7
|
+
}
|
8
|
+
.mfui-beta-partners__tile:not(:last-child) {
|
9
|
+
margin-bottom: 20px;
|
10
|
+
}
|
11
|
+
@media screen and (max-width: 767px) {
|
12
|
+
.mfui-beta-partners__tile:not(:last-child) {
|
13
|
+
margin-bottom: 16px;
|
14
|
+
}
|
15
|
+
}
|
16
|
+
.mfui-beta-partners__tile-inner {
|
17
|
+
-webkit-box-sizing: border-box;
|
18
|
+
box-sizing: border-box;
|
19
|
+
height: 132px;
|
20
|
+
padding: 28px 48px;
|
21
|
+
}
|
22
|
+
@media screen and (min-width: 1024px) and (max-width: 1279px) {
|
23
|
+
.mfui-beta-partners__tile-inner {
|
24
|
+
height: 104px;
|
25
|
+
padding: 22px 37px;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
@media screen and (min-width: 768px) and (max-width: 1023px) {
|
29
|
+
.mfui-beta-partners__tile-inner {
|
30
|
+
height: 77px;
|
31
|
+
padding: 10px;
|
32
|
+
}
|
33
|
+
}
|
34
|
+
@media screen and (max-width: 767px) {
|
35
|
+
.mfui-beta-partners__tile-inner {
|
36
|
+
height: 60px;
|
37
|
+
padding: 8px;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
.mfui-beta-partners__img-wrapper {
|
41
|
+
position: relative;
|
42
|
+
width: 100%;
|
43
|
+
height: 100%;
|
44
|
+
}
|
45
|
+
.mfui-beta-partners__tile-img {
|
46
|
+
position: absolute;
|
47
|
+
top: 50%;
|
48
|
+
left: 50%;
|
49
|
+
max-width: 100%;
|
50
|
+
max-height: 100%;
|
51
|
+
-webkit-transform: translate(-50%, -50%);
|
52
|
+
transform: translate(-50%, -50%);
|
53
|
+
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import './Partners.less';
|
3
|
+
export declare type ItemType = {
|
4
|
+
src: string;
|
5
|
+
href?: string;
|
6
|
+
alt: string;
|
7
|
+
};
|
8
|
+
export interface IPartnersProps {
|
9
|
+
/** Ссылка на корневой элемент */
|
10
|
+
rootRef?: React.Ref<HTMLDivElement>;
|
11
|
+
/** Дополнительные классы для корневого и внутренних элементов */
|
12
|
+
classes?: {
|
13
|
+
root?: string;
|
14
|
+
itemClass?: string;
|
15
|
+
};
|
16
|
+
/** Дата атрибуты для корневого элемента */
|
17
|
+
dataAttrs?: {
|
18
|
+
[key: string]: string;
|
19
|
+
};
|
20
|
+
/** Дополнительный класс корневого элемента */
|
21
|
+
className?: string;
|
22
|
+
/** Список логотипов */
|
23
|
+
items: ItemType[];
|
24
|
+
/** Обработчик клика по стрелке вперед (должен быть обернут в useCallback) */
|
25
|
+
onNextClick?: (index: number) => void;
|
26
|
+
/** Обработчик клика по стрелке назад (должен быть обернут в useCallback) */
|
27
|
+
onPrevClick?: (index: number) => void;
|
28
|
+
/** Обработчик смены слайда (должен быть обернут в useCallback) */
|
29
|
+
onChange?: (currentIndex: number, previousIndex: number, slidesPerView?: number | 'auto') => void;
|
30
|
+
}
|
31
|
+
declare const Partners: React.FC<IPartnersProps>;
|
32
|
+
export default Partners;
|
@@ -0,0 +1,114 @@
|
|
1
|
+
import "core-js/modules/es.array.map";
|
2
|
+
import "core-js/modules/es.array.slice";
|
3
|
+
import _extends from "@babel/runtime/helpers/extends";
|
4
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
5
|
+
|
6
|
+
var _slidesSettings;
|
7
|
+
|
8
|
+
import * as React from 'react';
|
9
|
+
import * as PropTypes from 'prop-types';
|
10
|
+
import { Grid, GridColumn, Tile, Carousel } from '@megafon/ui-core';
|
11
|
+
import { breakpoints, cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
12
|
+
import "./Partners.css";
|
13
|
+
var MAX_GRID_ITEMS_LENGTH = 8;
|
14
|
+
var slidesSettings = (_slidesSettings = {}, _defineProperty(_slidesSettings, breakpoints.MOBILE_SMALL_START, {
|
15
|
+
slidesPerView: 2,
|
16
|
+
spaceBetween: 16
|
17
|
+
}), _defineProperty(_slidesSettings, breakpoints.MOBILE_MIDDLE_START, {
|
18
|
+
slidesPerView: 3,
|
19
|
+
spaceBetween: 20
|
20
|
+
}), _defineProperty(_slidesSettings, breakpoints.DESKTOP_SMALL_START, {
|
21
|
+
slidesPerView: 4,
|
22
|
+
spaceBetween: 20
|
23
|
+
}), _slidesSettings);
|
24
|
+
var cn = cnCreate('mfui-beta-partners');
|
25
|
+
|
26
|
+
var Partners = function Partners(_ref) {
|
27
|
+
var rootRef = _ref.rootRef,
|
28
|
+
_ref$classes = _ref.classes;
|
29
|
+
_ref$classes = _ref$classes === void 0 ? {} : _ref$classes;
|
30
|
+
var root = _ref$classes.root,
|
31
|
+
itemClass = _ref$classes.itemClass,
|
32
|
+
dataAttrs = _ref.dataAttrs,
|
33
|
+
className = _ref.className,
|
34
|
+
items = _ref.items,
|
35
|
+
onChange = _ref.onChange,
|
36
|
+
onNextClick = _ref.onNextClick,
|
37
|
+
onPrevClick = _ref.onPrevClick;
|
38
|
+
var renderItem = React.useCallback(function (item) {
|
39
|
+
if (!item) {
|
40
|
+
return null;
|
41
|
+
}
|
42
|
+
|
43
|
+
var src = item.src,
|
44
|
+
href = item.href,
|
45
|
+
alt = item.alt;
|
46
|
+
return /*#__PURE__*/React.createElement(Tile, {
|
47
|
+
className: cn('tile'),
|
48
|
+
href: href,
|
49
|
+
shadowLevel: "low",
|
50
|
+
isInteractive: !!href
|
51
|
+
}, /*#__PURE__*/React.createElement("div", {
|
52
|
+
className: cn('tile-inner', [itemClass])
|
53
|
+
}, /*#__PURE__*/React.createElement("div", {
|
54
|
+
className: cn('img-wrapper')
|
55
|
+
}, /*#__PURE__*/React.createElement("img", {
|
56
|
+
src: src,
|
57
|
+
alt: alt,
|
58
|
+
className: cn('tile-img')
|
59
|
+
}))));
|
60
|
+
}, []);
|
61
|
+
var renderGrid = React.useCallback(function () {
|
62
|
+
return /*#__PURE__*/React.createElement(Grid, {
|
63
|
+
guttersLeft: "medium",
|
64
|
+
guttersBottom: "medium"
|
65
|
+
}, items.map(function (item, i) {
|
66
|
+
return /*#__PURE__*/React.createElement(GridColumn, {
|
67
|
+
key: i + item.src,
|
68
|
+
all: "3",
|
69
|
+
mobile: "6"
|
70
|
+
}, renderItem(item));
|
71
|
+
}));
|
72
|
+
}, [items]);
|
73
|
+
var renderCarousel = React.useCallback(function () {
|
74
|
+
var halfItemsLength = Math.ceil(items.length / 2);
|
75
|
+
var topRow = items.slice(0, halfItemsLength);
|
76
|
+
var bottomRow = items.slice(halfItemsLength);
|
77
|
+
return /*#__PURE__*/React.createElement(Carousel, {
|
78
|
+
slidesSettings: slidesSettings,
|
79
|
+
onChange: onChange,
|
80
|
+
onNextClick: onNextClick,
|
81
|
+
onPrevClick: onPrevClick
|
82
|
+
}, topRow.map(function (item, i) {
|
83
|
+
return /*#__PURE__*/React.createElement("div", {
|
84
|
+
key: i + item.src,
|
85
|
+
className: cn('slide')
|
86
|
+
}, renderItem(item), renderItem(bottomRow[i]));
|
87
|
+
}));
|
88
|
+
}, [items]);
|
89
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
90
|
+
ref: rootRef,
|
91
|
+
className: cn([root, className])
|
92
|
+
}, filterDataAttrs(dataAttrs)), items.length > MAX_GRID_ITEMS_LENGTH ? renderCarousel() : renderGrid());
|
93
|
+
};
|
94
|
+
|
95
|
+
Partners.propTypes = {
|
96
|
+
rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
|
97
|
+
current: PropTypes.elementType
|
98
|
+
}), PropTypes.any])]),
|
99
|
+
classes: PropTypes.shape({
|
100
|
+
root: PropTypes.string,
|
101
|
+
itemClass: PropTypes.string
|
102
|
+
}),
|
103
|
+
dataAttrs: PropTypes.objectOf(PropTypes.string.isRequired),
|
104
|
+
className: PropTypes.string,
|
105
|
+
items: PropTypes.arrayOf(PropTypes.shape({
|
106
|
+
href: PropTypes.string,
|
107
|
+
src: PropTypes.string.isRequired,
|
108
|
+
alt: PropTypes.string.isRequired
|
109
|
+
}).isRequired).isRequired,
|
110
|
+
onChange: PropTypes.func,
|
111
|
+
onNextClick: PropTypes.func,
|
112
|
+
onPrevClick: PropTypes.func
|
113
|
+
};
|
114
|
+
export default Partners;
|
@@ -0,0 +1,80 @@
|
|
1
|
+
h1,
|
2
|
+
h2,
|
3
|
+
h3,
|
4
|
+
h4,
|
5
|
+
h5 {
|
6
|
+
margin: 0;
|
7
|
+
}
|
8
|
+
@media screen and (min-width: 1024px) {
|
9
|
+
.mfui-beta-picture-with-description {
|
10
|
+
display: -webkit-box;
|
11
|
+
display: -ms-flexbox;
|
12
|
+
display: flex;
|
13
|
+
-webkit-box-align: center;
|
14
|
+
-ms-flex-align: center;
|
15
|
+
align-items: center;
|
16
|
+
-webkit-box-pack: center;
|
17
|
+
-ms-flex-pack: center;
|
18
|
+
justify-content: center;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
.mfui-beta-picture-with-description__title {
|
22
|
+
margin-bottom: 24px;
|
23
|
+
}
|
24
|
+
.mfui-beta-picture-with-description__picture {
|
25
|
+
-ms-flex-item-align: start;
|
26
|
+
align-self: flex-start;
|
27
|
+
overflow: hidden;
|
28
|
+
text-align: center;
|
29
|
+
}
|
30
|
+
@media screen and (max-width: 1023px) {
|
31
|
+
.mfui-beta-picture-with-description__picture {
|
32
|
+
margin: 0 auto 32px;
|
33
|
+
}
|
34
|
+
}
|
35
|
+
@media screen and (min-width: 1024px) {
|
36
|
+
.mfui-beta-picture-with-description__picture {
|
37
|
+
-webkit-box-ordinal-group: 3;
|
38
|
+
-ms-flex-order: 2;
|
39
|
+
order: 2;
|
40
|
+
width: 50%;
|
41
|
+
}
|
42
|
+
}
|
43
|
+
@media screen and (min-width: 1024px) {
|
44
|
+
.mfui-beta-picture-with-description__picture_align_left {
|
45
|
+
-webkit-box-ordinal-group: 1;
|
46
|
+
-ms-flex-order: 0;
|
47
|
+
order: 0;
|
48
|
+
margin-right: 20px;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
.mfui-beta-picture-with-description__img {
|
52
|
+
width: 100%;
|
53
|
+
max-width: 550px;
|
54
|
+
height: 100%;
|
55
|
+
}
|
56
|
+
.mfui-beta-picture-with-description__content :first-child {
|
57
|
+
margin-top: 0 !important;
|
58
|
+
}
|
59
|
+
.mfui-beta-picture-with-description__content :last-child {
|
60
|
+
margin-bottom: 0 !important;
|
61
|
+
}
|
62
|
+
@media screen and (min-width: 1024px) {
|
63
|
+
.mfui-beta-picture-with-description__articles {
|
64
|
+
-webkit-box-ordinal-group: 2;
|
65
|
+
-ms-flex-order: 1;
|
66
|
+
order: 1;
|
67
|
+
width: 50%;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
@media screen and (min-width: 1024px) {
|
71
|
+
.mfui-beta-picture-with-description__articles_text-top-align {
|
72
|
+
-ms-flex-item-align: start;
|
73
|
+
align-self: flex-start;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
@media screen and (min-width: 1024px) {
|
77
|
+
.mfui-beta-picture-with-description__articles_align_right {
|
78
|
+
margin-right: 20px;
|
79
|
+
}
|
80
|
+
}
|