@redneckz/wildless-cms-uni-blocks 0.2.71 → 0.2.74
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/bundle/blocks.schema.json +1022 -0
- package/bundle/bundle.umd.js +152 -71
- package/bundle/bundle.umd.min.js +1 -1
- package/dist/BaseTile.d.ts +2 -12
- package/dist/BaseTile.js +9 -4
- package/dist/BaseTile.js.map +1 -1
- package/dist/BaseTileContent.d.ts +13 -0
- package/dist/BaseTileContent.js +2 -0
- package/dist/BaseTileContent.js.map +1 -0
- package/dist/BenefitsBlock.d.ts +1 -10
- package/dist/BenefitsBlock.js.map +1 -1
- package/dist/BenefitsBlockContent.d.ts +10 -0
- package/dist/BenefitsBlockContent.js +2 -0
- package/dist/BenefitsBlockContent.js.map +1 -0
- package/dist/BlockContent.d.ts +16 -0
- package/dist/BlockContent.js +2 -0
- package/dist/BlockContent.js.map +1 -0
- package/dist/Blocks.d.ts +2 -15
- package/dist/Blocks.js +11 -7
- package/dist/Blocks.js.map +1 -1
- package/dist/ComparisonTable/ComparisonTable.d.ts +5 -0
- package/dist/ComparisonTable/ComparisonTable.js +34 -0
- package/dist/ComparisonTable/ComparisonTable.js.map +1 -0
- package/dist/ComparisonTable/ComparisonTableContent.d.ts +37 -0
- package/dist/ComparisonTable/ComparisonTableContent.js +2 -0
- package/dist/ComparisonTable/ComparisonTableContent.js.map +1 -0
- package/dist/ComparisonTable/HeaderCell.d.ts +10 -0
- package/dist/ComparisonTable/HeaderCell.js +11 -0
- package/dist/ComparisonTable/HeaderCell.js.map +1 -0
- package/dist/ComparisonTable/TableCarouselContainer.d.ts +4 -0
- package/dist/ComparisonTable/TableCarouselContainer.js +7 -0
- package/dist/ComparisonTable/TableCarouselContainer.js.map +1 -0
- package/dist/ComparisonTable/TableCell.d.ts +8 -0
- package/dist/ComparisonTable/TableCell.js +12 -0
- package/dist/ComparisonTable/TableCell.js.map +1 -0
- package/dist/ComparisonTable/TableRow.d.ts +10 -0
- package/dist/ComparisonTable/TableRow.js +10 -0
- package/dist/ComparisonTable/TableRow.js.map +1 -0
- package/dist/ComparisonTable/TableRowContainer.d.ts +4 -0
- package/dist/ComparisonTable/TableRowContainer.js +6 -0
- package/dist/ComparisonTable/TableRowContainer.js.map +1 -0
- package/dist/ComparisonTable/constants.d.ts +6 -0
- package/dist/ComparisonTable/constants.js +9 -0
- package/dist/ComparisonTable/constants.js.map +1 -0
- package/dist/ComparisonTable/index.d.ts +3 -0
- package/dist/ComparisonTable/index.js +5 -0
- package/dist/ComparisonTable/index.js.map +1 -0
- package/dist/ContentPage.d.ts +1 -1
- package/dist/ExchangeRateTile.d.ts +1 -3
- package/dist/ExchangeRateTile.js +1 -0
- package/dist/ExchangeRateTile.js.map +1 -1
- package/dist/ExchangeRateTileContent.d.ts +3 -0
- package/dist/ExchangeRateTileContent.js +2 -0
- package/dist/ExchangeRateTileContent.js.map +1 -0
- package/dist/Footer/Contacts.d.ts +2 -1
- package/dist/Footer/Contacts.js +1 -1
- package/dist/Footer/Contacts.js.map +1 -1
- package/dist/Footer/Footer.d.ts +2 -8
- package/dist/Footer/Footer.js +1 -1
- package/dist/Footer/Footer.js.map +1 -1
- package/dist/Footer/Footer.mobile.d.ts +1 -1
- package/dist/Footer/FooterContent.d.ts +13 -0
- package/dist/Footer/FooterContent.js +2 -0
- package/dist/Footer/FooterContent.js.map +1 -0
- package/dist/Footer/FooterLink.d.ts +1 -1
- package/dist/Footer/Sitemap.d.ts +2 -1
- package/dist/Footer/Sitemap.js.map +1 -1
- package/dist/Footer/SocialMedia.d.ts +2 -1
- package/dist/Footer/SocialMedia.js +4 -1
- package/dist/Footer/SocialMedia.js.map +1 -1
- package/dist/Gallery.d.ts +2 -13
- package/dist/Gallery.js +2 -32
- package/dist/Gallery.js.map +1 -1
- package/dist/Gallery.mobile.d.ts +1 -1
- package/dist/Gallery.mobile.js +1 -1
- package/dist/Gallery.mobile.js.map +1 -1
- package/dist/GalleryContent.d.ts +13 -0
- package/dist/GalleryContent.js +2 -0
- package/dist/GalleryContent.js.map +1 -0
- package/dist/GalleryInner.d.ts +7 -0
- package/dist/GalleryInner.js +46 -0
- package/dist/GalleryInner.js.map +1 -0
- package/dist/Header/HeaderContent.d.ts +2 -3
- package/dist/Header/isSubItemActive.d.ts +1 -1
- package/dist/Header/isTopItemActive.d.ts +1 -1
- package/dist/MiniGallery.d.ts +5 -0
- package/dist/MiniGallery.js +7 -0
- package/dist/MiniGallery.js.map +1 -0
- package/dist/MobileAppTile.d.ts +1 -9
- package/dist/MobileAppTile.js.map +1 -1
- package/dist/MobileAppTileContent.d.ts +9 -0
- package/dist/MobileAppTileContent.js +2 -0
- package/dist/MobileAppTileContent.js.map +1 -0
- package/dist/MobileBlocks.js +2 -2
- package/dist/MobileBlocks.js.map +1 -1
- package/dist/Placeholder.d.ts +1 -3
- package/dist/Placeholder.js.map +1 -1
- package/dist/PlaceholderContent.d.ts +3 -0
- package/dist/PlaceholderContent.js +2 -0
- package/dist/PlaceholderContent.js.map +1 -0
- package/dist/ProductBlock.d.ts +2 -4
- package/dist/ProductBlock.js.map +1 -1
- package/dist/ProductBlock.mobile.d.ts +1 -1
- package/dist/ProductBlock.mobile.js.map +1 -1
- package/dist/ProductBlockContent.d.ts +5 -0
- package/dist/ProductBlockContent.js +2 -0
- package/dist/ProductBlockContent.js.map +1 -0
- package/dist/ProductBlockInner.d.ts +1 -5
- package/dist/ProductBlockInner.js +3 -3
- package/dist/ProductBlockInner.js.map +1 -1
- package/dist/ProductBlockInnerContent.d.ts +5 -0
- package/dist/ProductBlockInnerContent.js +2 -0
- package/dist/ProductBlockInnerContent.js.map +1 -0
- package/dist/ProductGallery.d.ts +1 -14
- package/dist/ProductGallery.js.map +1 -1
- package/dist/ProductGalleryContent.d.ts +14 -0
- package/dist/ProductGalleryContent.js +2 -0
- package/dist/ProductGalleryContent.js.map +1 -0
- package/dist/ProductTile.d.ts +1 -5
- package/dist/ProductTile.js.map +1 -1
- package/dist/ProductTileContent.d.ts +5 -0
- package/dist/ProductTileContent.js +2 -0
- package/dist/ProductTileContent.js.map +1 -0
- package/dist/PromoTile.d.ts +1 -4
- package/dist/PromoTile.js.map +1 -1
- package/dist/PromoTileContent.d.ts +4 -0
- package/dist/PromoTileContent.js +2 -0
- package/dist/PromoTileContent.js.map +1 -0
- package/dist/StepsBlock.d.ts +1 -10
- package/dist/StepsBlock.js.map +1 -1
- package/dist/StepsBlockContent.d.ts +10 -0
- package/dist/StepsBlockContent.js +2 -0
- package/dist/StepsBlockContent.js.map +1 -0
- package/dist/TextBlock.d.ts +2 -11
- package/dist/TextBlock.js +4 -4
- package/dist/TextBlock.js.map +1 -1
- package/dist/TextBlockContent.d.ts +10 -0
- package/dist/TextBlockContent.js +2 -0
- package/dist/TextBlockContent.js.map +1 -0
- package/dist/Tile.d.ts +2 -2
- package/dist/Tile.js.map +1 -1
- package/dist/TileContent.d.ts +2 -0
- package/dist/TileContent.js +2 -0
- package/dist/TileContent.js.map +1 -0
- package/dist/content-page-repository/transformContentPage.js.map +1 -1
- package/dist/content-page-repository/transformPicture.d.ts +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.js.map +1 -1
- package/dist/mergeTopItems.d.ts +2 -2
- package/dist/mergeTopItems.js.map +1 -1
- package/dist/model/BlockVersion.d.ts +1 -0
- package/dist/model/BlockVersion.js +2 -0
- package/dist/model/BlockVersion.js.map +1 -0
- package/dist/model/ButtonVersion.d.ts +1 -0
- package/dist/model/ButtonVersion.js +2 -0
- package/dist/model/ButtonVersion.js.map +1 -0
- package/dist/model/GalleryVersion.d.ts +1 -0
- package/dist/model/GalleryVersion.js +2 -0
- package/dist/model/GalleryVersion.js.map +1 -0
- package/dist/model/LinkContent.d.ts +5 -0
- package/dist/model/LinkContent.js +2 -0
- package/dist/model/LinkContent.js.map +1 -0
- package/dist/model/Picture.d.ts +17 -0
- package/dist/model/Picture.js +2 -0
- package/dist/model/Picture.js.map +1 -0
- package/dist/model/SitemapContent.d.ts +7 -0
- package/dist/model/SitemapContent.js +2 -0
- package/dist/model/SitemapContent.js.map +1 -0
- package/dist/types.d.ts +2 -32
- package/dist/ui-kit/ArrowButton.d.ts +2 -6
- package/dist/ui-kit/ArrowButton.js +17 -3
- package/dist/ui-kit/ArrowButton.js.map +1 -1
- package/dist/ui-kit/Breadcrumb.d.ts +1 -1
- package/dist/ui-kit/Button.d.ts +2 -8
- package/dist/ui-kit/Button.js +11 -5
- package/dist/ui-kit/Button.js.map +1 -1
- package/dist/ui-kit/ButtonProps.d.ts +21 -0
- package/dist/ui-kit/ButtonProps.js +2 -0
- package/dist/ui-kit/ButtonProps.js.map +1 -0
- package/dist/ui-kit/Icon.d.ts +1 -10
- package/dist/ui-kit/Icon.js.map +1 -1
- package/dist/ui-kit/IconProps.d.ts +32 -0
- package/dist/ui-kit/IconProps.js +26 -0
- package/dist/ui-kit/IconProps.js.map +1 -0
- package/dist/{Img.d.ts → ui-kit/Img.d.ts} +1 -1
- package/dist/{Img.js → ui-kit/Img.js} +0 -0
- package/dist/ui-kit/Img.js.map +1 -0
- package/dist/ui-kit/SVG.d.ts +2 -0
- package/dist/ui-kit/SVG.js +2 -2
- package/dist/ui-kit/SVG.js.map +1 -1
- package/dist/ui-kit/Title.d.ts +1 -10
- package/dist/ui-kit/Title.js +3 -9
- package/dist/ui-kit/Title.js.map +1 -1
- package/dist/ui-kit/TitleProps.d.ts +10 -0
- package/dist/ui-kit/TitleProps.js +10 -0
- package/dist/ui-kit/TitleProps.js.map +1 -0
- package/dist/ui-kit/TopItem.d.ts +1 -1
- package/dist/useLink.d.ts +5 -2
- package/dist/useLink.js.map +1 -1
- package/dist/useSitemap.d.ts +1 -1
- package/lib/BaseTile.d.ts +2 -12
- package/lib/BaseTile.js +9 -4
- package/lib/BaseTile.js.map +1 -1
- package/lib/BaseTileContent.d.ts +13 -0
- package/lib/BaseTileContent.js +2 -0
- package/lib/BaseTileContent.js.map +1 -0
- package/lib/BenefitsBlock.d.ts +1 -10
- package/lib/BenefitsBlock.js.map +1 -1
- package/lib/BenefitsBlockContent.d.ts +10 -0
- package/lib/BenefitsBlockContent.js +2 -0
- package/lib/BenefitsBlockContent.js.map +1 -0
- package/lib/BlockContent.d.ts +16 -0
- package/lib/BlockContent.js +2 -0
- package/lib/BlockContent.js.map +1 -0
- package/lib/Blocks.d.ts +2 -15
- package/lib/Blocks.js +9 -5
- package/lib/Blocks.js.map +1 -1
- package/lib/ComparisonTable/ComparisonTable.d.ts +5 -0
- package/lib/ComparisonTable/ComparisonTable.js +32 -0
- package/lib/ComparisonTable/ComparisonTable.js.map +1 -0
- package/lib/ComparisonTable/ComparisonTableContent.d.ts +37 -0
- package/lib/ComparisonTable/ComparisonTableContent.js +2 -0
- package/lib/ComparisonTable/ComparisonTableContent.js.map +1 -0
- package/lib/ComparisonTable/HeaderCell.d.ts +10 -0
- package/lib/ComparisonTable/HeaderCell.js +9 -0
- package/lib/ComparisonTable/HeaderCell.js.map +1 -0
- package/lib/ComparisonTable/TableCarouselContainer.d.ts +4 -0
- package/lib/ComparisonTable/TableCarouselContainer.js +5 -0
- package/lib/ComparisonTable/TableCarouselContainer.js.map +1 -0
- package/lib/ComparisonTable/TableCell.d.ts +8 -0
- package/lib/ComparisonTable/TableCell.js +10 -0
- package/lib/ComparisonTable/TableCell.js.map +1 -0
- package/lib/ComparisonTable/TableRow.d.ts +10 -0
- package/lib/ComparisonTable/TableRow.js +8 -0
- package/lib/ComparisonTable/TableRow.js.map +1 -0
- package/lib/ComparisonTable/TableRowContainer.d.ts +4 -0
- package/lib/ComparisonTable/TableRowContainer.js +4 -0
- package/lib/ComparisonTable/TableRowContainer.js.map +1 -0
- package/lib/ComparisonTable/constants.d.ts +6 -0
- package/lib/ComparisonTable/constants.js +7 -0
- package/lib/ComparisonTable/constants.js.map +1 -0
- package/lib/ComparisonTable/index.d.ts +3 -0
- package/lib/ComparisonTable/index.js +2 -0
- package/lib/ComparisonTable/index.js.map +1 -0
- package/lib/ContentPage.d.ts +1 -1
- package/lib/ExchangeRateTile.d.ts +1 -3
- package/lib/ExchangeRateTile.js +1 -0
- package/lib/ExchangeRateTile.js.map +1 -1
- package/lib/ExchangeRateTileContent.d.ts +3 -0
- package/lib/ExchangeRateTileContent.js +2 -0
- package/lib/ExchangeRateTileContent.js.map +1 -0
- package/lib/Footer/Contacts.d.ts +2 -1
- package/lib/Footer/Contacts.js +1 -1
- package/lib/Footer/Contacts.js.map +1 -1
- package/lib/Footer/Footer.d.ts +2 -8
- package/lib/Footer/Footer.js +1 -1
- package/lib/Footer/Footer.js.map +1 -1
- package/lib/Footer/Footer.mobile.d.ts +1 -1
- package/lib/Footer/FooterContent.d.ts +13 -0
- package/lib/Footer/FooterContent.js +2 -0
- package/lib/Footer/FooterContent.js.map +1 -0
- package/lib/Footer/FooterLink.d.ts +1 -1
- package/lib/Footer/Sitemap.d.ts +2 -1
- package/lib/Footer/Sitemap.js.map +1 -1
- package/lib/Footer/SocialMedia.d.ts +2 -1
- package/lib/Footer/SocialMedia.js +4 -1
- package/lib/Footer/SocialMedia.js.map +1 -1
- package/lib/Gallery.d.ts +2 -13
- package/lib/Gallery.js +3 -33
- package/lib/Gallery.js.map +1 -1
- package/lib/Gallery.mobile.d.ts +1 -1
- package/lib/Gallery.mobile.js +1 -1
- package/lib/Gallery.mobile.js.map +1 -1
- package/lib/GalleryContent.d.ts +13 -0
- package/lib/GalleryContent.js +2 -0
- package/lib/GalleryContent.js.map +1 -0
- package/lib/GalleryInner.d.ts +7 -0
- package/lib/GalleryInner.js +44 -0
- package/lib/GalleryInner.js.map +1 -0
- package/lib/Header/HeaderContent.d.ts +2 -3
- package/lib/Header/isSubItemActive.d.ts +1 -1
- package/lib/Header/isTopItemActive.d.ts +1 -1
- package/lib/MiniGallery.d.ts +5 -0
- package/lib/MiniGallery.js +5 -0
- package/lib/MiniGallery.js.map +1 -0
- package/lib/MobileAppTile.d.ts +1 -9
- package/lib/MobileAppTile.js.map +1 -1
- package/lib/MobileAppTileContent.d.ts +9 -0
- package/lib/MobileAppTileContent.js +2 -0
- package/lib/MobileAppTileContent.js.map +1 -0
- package/lib/MobileBlocks.js +1 -1
- package/lib/MobileBlocks.js.map +1 -1
- package/lib/Placeholder.d.ts +1 -3
- package/lib/Placeholder.js.map +1 -1
- package/lib/PlaceholderContent.d.ts +3 -0
- package/lib/PlaceholderContent.js +2 -0
- package/lib/PlaceholderContent.js.map +1 -0
- package/lib/ProductBlock.d.ts +2 -4
- package/lib/ProductBlock.js.map +1 -1
- package/lib/ProductBlock.mobile.d.ts +1 -1
- package/lib/ProductBlock.mobile.js.map +1 -1
- package/lib/ProductBlockContent.d.ts +5 -0
- package/lib/ProductBlockContent.js +2 -0
- package/lib/ProductBlockContent.js.map +1 -0
- package/lib/ProductBlockInner.d.ts +1 -5
- package/lib/ProductBlockInner.js +3 -3
- package/lib/ProductBlockInner.js.map +1 -1
- package/lib/ProductBlockInnerContent.d.ts +5 -0
- package/lib/ProductBlockInnerContent.js +2 -0
- package/lib/ProductBlockInnerContent.js.map +1 -0
- package/lib/ProductGallery.d.ts +1 -14
- package/lib/ProductGallery.js.map +1 -1
- package/lib/ProductGalleryContent.d.ts +14 -0
- package/lib/ProductGalleryContent.js +2 -0
- package/lib/ProductGalleryContent.js.map +1 -0
- package/lib/ProductTile.d.ts +1 -5
- package/lib/ProductTile.js.map +1 -1
- package/lib/ProductTileContent.d.ts +5 -0
- package/lib/ProductTileContent.js +2 -0
- package/lib/ProductTileContent.js.map +1 -0
- package/lib/PromoTile.d.ts +1 -4
- package/lib/PromoTile.js.map +1 -1
- package/lib/PromoTileContent.d.ts +4 -0
- package/lib/PromoTileContent.js +2 -0
- package/lib/PromoTileContent.js.map +1 -0
- package/lib/StepsBlock.d.ts +1 -10
- package/lib/StepsBlock.js.map +1 -1
- package/lib/StepsBlockContent.d.ts +10 -0
- package/lib/StepsBlockContent.js +2 -0
- package/lib/StepsBlockContent.js.map +1 -0
- package/lib/TextBlock.d.ts +2 -11
- package/lib/TextBlock.js +4 -4
- package/lib/TextBlock.js.map +1 -1
- package/lib/TextBlockContent.d.ts +10 -0
- package/lib/TextBlockContent.js +2 -0
- package/lib/TextBlockContent.js.map +1 -0
- package/lib/Tile.d.ts +2 -2
- package/lib/Tile.js.map +1 -1
- package/lib/TileContent.d.ts +2 -0
- package/lib/TileContent.js +2 -0
- package/lib/TileContent.js.map +1 -0
- package/lib/common.css +1 -1
- package/lib/content-page-repository/transformContentPage.js.map +1 -1
- package/lib/content-page-repository/transformPicture.d.ts +1 -1
- package/lib/index.d.ts +4 -3
- package/lib/index.js.map +1 -1
- package/lib/mergeTopItems.d.ts +2 -2
- package/lib/mergeTopItems.js.map +1 -1
- package/lib/model/BlockVersion.d.ts +1 -0
- package/lib/model/BlockVersion.js +2 -0
- package/lib/model/BlockVersion.js.map +1 -0
- package/lib/model/ButtonVersion.d.ts +1 -0
- package/lib/model/ButtonVersion.js +2 -0
- package/lib/model/ButtonVersion.js.map +1 -0
- package/lib/model/GalleryVersion.d.ts +1 -0
- package/lib/model/GalleryVersion.js +2 -0
- package/lib/model/GalleryVersion.js.map +1 -0
- package/lib/model/LinkContent.d.ts +5 -0
- package/lib/model/LinkContent.js +2 -0
- package/lib/model/LinkContent.js.map +1 -0
- package/lib/model/Picture.d.ts +17 -0
- package/lib/model/Picture.js +2 -0
- package/lib/model/Picture.js.map +1 -0
- package/lib/model/SitemapContent.d.ts +7 -0
- package/lib/model/SitemapContent.js +2 -0
- package/lib/model/SitemapContent.js.map +1 -0
- package/lib/types.d.ts +2 -32
- package/lib/ui-kit/ArrowButton.d.ts +2 -6
- package/lib/ui-kit/ArrowButton.js +18 -4
- package/lib/ui-kit/ArrowButton.js.map +1 -1
- package/lib/ui-kit/Breadcrumb.d.ts +1 -1
- package/lib/ui-kit/Button.d.ts +2 -8
- package/lib/ui-kit/Button.js +11 -5
- package/lib/ui-kit/Button.js.map +1 -1
- package/lib/ui-kit/ButtonProps.d.ts +21 -0
- package/lib/ui-kit/ButtonProps.js +2 -0
- package/lib/ui-kit/ButtonProps.js.map +1 -0
- package/lib/ui-kit/Icon.d.ts +1 -10
- package/lib/ui-kit/Icon.js.map +1 -1
- package/lib/ui-kit/IconProps.d.ts +32 -0
- package/lib/ui-kit/IconProps.js +24 -0
- package/lib/ui-kit/IconProps.js.map +1 -0
- package/lib/{Img.d.ts → ui-kit/Img.d.ts} +1 -1
- package/lib/{Img.js → ui-kit/Img.js} +0 -0
- package/lib/ui-kit/Img.js.map +1 -0
- package/lib/ui-kit/SVG.d.ts +2 -0
- package/lib/ui-kit/SVG.js +2 -2
- package/lib/ui-kit/SVG.js.map +1 -1
- package/lib/ui-kit/Title.d.ts +1 -10
- package/lib/ui-kit/Title.js +1 -7
- package/lib/ui-kit/Title.js.map +1 -1
- package/lib/ui-kit/TitleProps.d.ts +10 -0
- package/lib/ui-kit/TitleProps.js +8 -0
- package/lib/ui-kit/TitleProps.js.map +1 -0
- package/lib/ui-kit/TopItem.d.ts +1 -1
- package/lib/useLink.d.ts +5 -2
- package/lib/useLink.js.map +1 -1
- package/lib/useSitemap.d.ts +1 -1
- package/package.json +5 -2
- package/src/BaseTile.tsx +21 -17
- package/src/BaseTileContent.ts +14 -0
- package/src/BenefitsBlock.tsx +2 -12
- package/src/BenefitsBlockContent.ts +12 -0
- package/src/BlockContent.ts +32 -0
- package/src/Blocks.ts +16 -30
- package/src/ComparisonTable/ComparisonTable.fixture.tsx +265 -0
- package/src/ComparisonTable/ComparisonTable.tsx +126 -0
- package/src/ComparisonTable/ComparisonTableContent.ts +43 -0
- package/src/ComparisonTable/HeaderCell.tsx +50 -0
- package/src/ComparisonTable/TableCarouselContainer.tsx +19 -0
- package/src/ComparisonTable/TableCell.tsx +43 -0
- package/src/ComparisonTable/TableRow.tsx +44 -0
- package/src/ComparisonTable/TableRowContainer.tsx +7 -0
- package/src/ComparisonTable/constants.ts +6 -0
- package/src/ComparisonTable/index.ts +3 -0
- package/src/ContentPage.page.json +463 -1
- package/src/ContentPage.tsx +1 -1
- package/src/ExchangeRateTile.tsx +3 -5
- package/src/ExchangeRateTileContent.ts +3 -0
- package/src/Footer/Contacts.tsx +3 -1
- package/src/Footer/Footer.mobile.tsx +1 -1
- package/src/Footer/Footer.tsx +3 -10
- package/src/Footer/FooterContent.ts +15 -0
- package/src/Footer/FooterLink.ts +1 -1
- package/src/Footer/HorizontalNavigation.tsx +2 -2
- package/src/Footer/Sitemap.tsx +3 -2
- package/src/Footer/SocialMedia.tsx +13 -7
- package/src/Footer/TextInformation.tsx +1 -1
- package/src/Gallery.fixture.tsx +1 -1
- package/src/Gallery.mobile.tsx +3 -2
- package/src/Gallery.tsx +4 -133
- package/src/GalleryContent.ts +15 -0
- package/src/GalleryInner.tsx +135 -0
- package/src/Header/HeaderContent.ts +2 -3
- package/src/Header/isSubItemActive.ts +1 -1
- package/src/Header/isTopItemActive.ts +1 -1
- package/src/MiniGallery.fixture.tsx +90 -0
- package/src/MiniGallery.tsx +10 -0
- package/src/MobileAppTile.tsx +1 -11
- package/src/MobileAppTileContent.ts +11 -0
- package/src/MobileBlocks.ts +1 -1
- package/src/Placeholder.tsx +1 -4
- package/src/PlaceholderContent.ts +3 -0
- package/src/ProductBlock.fixture.tsx +1 -1
- package/src/ProductBlock.mobile.tsx +1 -1
- package/src/ProductBlock.tsx +3 -5
- package/src/ProductBlockContent.ts +6 -0
- package/src/ProductBlockInner.tsx +5 -9
- package/src/ProductBlockInnerContent.ts +6 -0
- package/src/ProductGallery.fixture.tsx +1 -1
- package/src/ProductGallery.tsx +2 -16
- package/src/ProductGalleryContent.ts +16 -0
- package/src/ProductTile.fixture.tsx +1 -1
- package/src/ProductTile.tsx +3 -7
- package/src/ProductTileContent.ts +6 -0
- package/src/PromoTile.tsx +1 -5
- package/src/PromoTileContent.ts +5 -0
- package/src/StepsBlock.tsx +2 -12
- package/src/StepsBlockContent.ts +12 -0
- package/src/TextBlock.fixture.tsx +1 -1
- package/src/TextBlock.tsx +9 -16
- package/src/TextBlockContent.ts +12 -0
- package/src/Tile.fixture.tsx +1 -1
- package/src/Tile.tsx +4 -3
- package/src/TileContent.ts +3 -0
- package/src/common.css +6 -0
- package/src/content-page-repository/transformContentPage.ts +2 -1
- package/src/content-page-repository/transformPicture.ts +1 -1
- package/src/icons/AppleIcon.svg +1 -13
- package/src/icons/GlassIcon.svg +1 -0
- package/src/icons/PlayMarketIcon.svg +1 -6
- package/src/index.ts +4 -11
- package/src/mergeTopItems.ts +5 -5
- package/src/model/BlockVersion.ts +1 -0
- package/src/model/ButtonVersion.ts +1 -0
- package/src/model/GalleryVersion.ts +1 -0
- package/src/model/LinkContent.ts +5 -0
- package/src/model/Picture.ts +19 -0
- package/src/model/SitemapContent.ts +9 -0
- package/src/types.ts +2 -56
- package/src/ui-kit/ArrowButton.tsx +29 -30
- package/src/ui-kit/Breadcrumb.tsx +1 -1
- package/src/ui-kit/Button.fixture.tsx +33 -5
- package/src/ui-kit/Button.tsx +42 -25
- package/src/ui-kit/ButtonProps.ts +24 -0
- package/src/ui-kit/Icon.fixture.tsx +22 -0
- package/src/ui-kit/Icon.tsx +1 -32
- package/src/ui-kit/IconProps.ts +34 -0
- package/src/{Img.tsx → ui-kit/Img.tsx} +1 -1
- package/src/ui-kit/SVG.tsx +11 -2
- package/src/ui-kit/Title.tsx +1 -13
- package/src/ui-kit/TitleProps.ts +12 -0
- package/src/ui-kit/TopItem.tsx +1 -1
- package/src/useLink.ts +2 -2
- package/src/useSitemap.ts +1 -1
- package/dist/Footer/index.d.ts +0 -2
- package/dist/Footer/index.js +0 -5
- package/dist/Footer/index.js.map +0 -1
- package/dist/Header/index.d.ts +0 -3
- package/dist/Header/index.js +0 -5
- package/dist/Header/index.js.map +0 -1
- package/dist/Img.js.map +0 -1
- package/dist/ui-kit/IconButton.d.ts +0 -7
- package/dist/ui-kit/IconButton.js +0 -10
- package/dist/ui-kit/IconButton.js.map +0 -1
- package/lib/Footer/index.d.ts +0 -2
- package/lib/Footer/index.js +0 -2
- package/lib/Footer/index.js.map +0 -1
- package/lib/Header/index.d.ts +0 -3
- package/lib/Header/index.js +0 -2
- package/lib/Header/index.js.map +0 -1
- package/lib/Img.js.map +0 -1
- package/lib/ui-kit/IconButton.d.ts +0 -7
- package/lib/ui-kit/IconButton.js +0 -8
- package/lib/ui-kit/IconButton.js.map +0 -1
- package/src/Footer/index.ts +0 -2
- package/src/Header/index.ts +0 -3
- package/src/ui-kit/IconButton.tsx +0 -27
package/bundle/bundle.umd.js
CHANGED
|
@@ -239,13 +239,6 @@
|
|
|
239
239
|
return (jsxs("div", { className: `border-main border-2 border-solid bg-white flex w-[125px] items-center justify-center gap-3 p-2 font-sans ${className || ''}`, children: [jsx(LikeButton, { onClick: likeService.like, ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u043B\u0430\u0439\u043A\u00BB" }), jsx(LikeButton, { onClick: likeService.dislike, className: "rotate-180", ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u0434\u0438\u0437\u043B\u0430\u0439\u043A\u00BB" }), jsx("span", { className: "select-none", children: likeService.likeCount })] }));
|
|
240
240
|
});
|
|
241
241
|
|
|
242
|
-
const Img = JSX(({ className, image }) => (jsxs("picture", { className: `${className || ''}`, children: [image.sources?.length
|
|
243
|
-
? image.sources.map(({ src, format }, index) => (jsx("source", { srcSet: src, type: formatToMimeType(format) }, `${index}_${src}`)))
|
|
244
|
-
: null, jsx("img", { src: image.src, alt: image.alt || image.title, title: image.title, ...image?.size })] })));
|
|
245
|
-
function formatToMimeType(format) {
|
|
246
|
-
return format ? `image/${String(format)}` : undefined;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
242
|
const listStyleMap = {
|
|
250
243
|
primary: 'bg-primary-main',
|
|
251
244
|
secondary: 'bg-white',
|
|
@@ -266,19 +259,28 @@
|
|
|
266
259
|
primary: 'bg-secondary-dark text-secondary-text',
|
|
267
260
|
secondary: 'bg-secondary-light text-secondary-text',
|
|
268
261
|
};
|
|
269
|
-
const styleButton = 'inline-block
|
|
270
|
-
const Button = JSX(({ className, text, href, target, onClick, children, disabled, version = '
|
|
262
|
+
const styleButton = 'inline-block text-center font-sans select-none';
|
|
263
|
+
const Button = JSX(({ className, text, aboveText, appendLeft, href, target, onClick, children, disabled, rounded, version = 'none', ariaLabel, ...rest }) => {
|
|
264
|
+
const buttonInner = children ?? (jsx(ButtonInner, { text: text, aboveText: aboveText, appendLeft: appendLeft, rounded: rounded }));
|
|
271
265
|
if (disabled) {
|
|
272
|
-
return (jsx("div", { role: "button", "aria-disabled": "true", "aria-label": ariaLabel, tabIndex: "-1", className: `${styleButton}
|
|
266
|
+
return (jsx("div", { role: "button", "aria-disabled": "true", "aria-label": ariaLabel, tabIndex: "-1", className: `${styleButton} ${buttonDisabledStyleMap[version] || ''} ${rounded ? 'rounded-full' : 'rounded-md'} ${className || ''}`, children: buttonInner }));
|
|
273
267
|
}
|
|
274
|
-
return (jsx("a", { className: `${styleButton} no-underline ${buttonStyleMap[version]} ${className || ''}`, href: href, target: target, onClick: onClick, "aria-label": ariaLabel,
|
|
268
|
+
return (jsx("a", { className: `${styleButton} cursor-pointer no-underline ${buttonStyleMap[version] || ''} ${rounded ? 'rounded-full' : 'rounded-md'} ${className || ''}`, href: href, target: target, onClick: onClick, "aria-label": ariaLabel, role: !href ? 'button' : 'link', ...rest, children: buttonInner }));
|
|
269
|
+
});
|
|
270
|
+
const ButtonInner = JSX(({ text, aboveText, appendLeft, rounded }) => {
|
|
271
|
+
const withoutText = !text && !aboveText && Boolean(appendLeft);
|
|
272
|
+
const buttonInnerClasses = `flex items-center justify-center ${withoutText ? 'h-12 w-12 min-h-12 min-w-12' : `px-8 gap-2 ${aboveText ? 'py-2' : 'py-[13px]'}`} ${rounded ? 'rounded-full' : ''}`;
|
|
273
|
+
return (jsxs("div", { className: buttonInnerClasses, children: [appendLeft ? appendLeft : null, !withoutText ? (jsxs("div", { children: [jsx("div", { className: "text-xxs text-left", children: aboveText }), jsx("div", { className: "text-sm font-medium text-left", children: text })] })) : null] }));
|
|
275
274
|
});
|
|
276
275
|
|
|
277
276
|
const Icon = JSX(({ className, name, alt = `Icon ${name}`, title = alt, ...imgProps }) => (jsx("img", { className: className, src: `${projectSettings.CDN || ''}icons/${name}.svg`, alt: alt, title: title, ...imgProps })));
|
|
278
277
|
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
|
|
278
|
+
const Img = JSX(({ className, image }) => (jsxs("picture", { className: `${className || ''}`, children: [image.sources?.length
|
|
279
|
+
? image.sources.map(({ src, format }, index) => (jsx("source", { srcSet: src, type: formatToMimeType(format) }, `${index}_${src}`)))
|
|
280
|
+
: null, jsx("img", { src: image.src, alt: image.alt || image.title, title: image.title, ...image?.size })] })));
|
|
281
|
+
function formatToMimeType(format) {
|
|
282
|
+
return format ? `image/${String(format)}` : undefined;
|
|
283
|
+
}
|
|
282
284
|
|
|
283
285
|
var SizeTableClass;
|
|
284
286
|
(function (SizeTableClass) {
|
|
@@ -287,6 +289,7 @@
|
|
|
287
289
|
SizeTableClass["M"] = "text-title-sm";
|
|
288
290
|
SizeTableClass["S"] = "text-title-xs";
|
|
289
291
|
})(SizeTableClass || (SizeTableClass = {}));
|
|
292
|
+
|
|
290
293
|
const Title = JSX(({ size = 'L', className, children, ...rest }) => {
|
|
291
294
|
const Tag = size === 'XL' ? 'h1' : 'h2';
|
|
292
295
|
return (jsx(Tag, { className: getClasses(SizeTableClass[size], className), ...rest, children: children }));
|
|
@@ -366,7 +369,7 @@
|
|
|
366
369
|
const BaseTile = JSX(({ className, context, title, titleSize, description, children, buttons, image, items, version = 'primary', }) => {
|
|
367
370
|
const router = context.useRouter();
|
|
368
371
|
const { handlerDecorator } = context;
|
|
369
|
-
return (jsxs("div", { className: `font-sans flex flex-col grow h-full`, children: [title && (jsx(Title, { size: titleSize || getTitleSizeByClassName(className), className: TITLE_CLASSES, children: title })), jsxs("div", { className: "flex grow justify-between", children: [jsxs("div", { className: "flex flex-col justify-between items-start", children: [jsxs("div", { children: [description ? (jsx("div", { className: "font-normal text-base max-w-[600px] mb-5", children: description })) : null, children, items?.length ? renderItems$
|
|
372
|
+
return (jsxs("div", { className: `font-sans flex flex-col grow h-full`, children: [title && (jsx(Title, { size: titleSize || getTitleSizeByClassName(className), className: TITLE_CLASSES, children: title })), jsxs("div", { className: "flex grow justify-between", children: [jsxs("div", { className: "flex flex-col justify-between items-start", children: [jsxs("div", { children: [description ? (jsx("div", { className: "font-normal text-base max-w-[600px] mb-5", children: description })) : null, children, items?.length ? renderItems$1(items, version) : null] }), buttons?.length ? (jsx("div", { className: "flex mt-9 gap-3", children: buttons.map((button, index) => renderButton(useLink({ router, handlerDecorator }, button), index)) })) : null] }), image?.src && jsx(Img, { className: "mt-auto ml-7", image: image })] })] }));
|
|
370
373
|
});
|
|
371
374
|
function getTitleSizeByClassName(className = '') {
|
|
372
375
|
const colSpan = getColSpan(className);
|
|
@@ -380,11 +383,15 @@
|
|
|
380
383
|
return 'L';
|
|
381
384
|
}
|
|
382
385
|
}
|
|
383
|
-
function renderItems$
|
|
386
|
+
function renderItems$1(items = [], version) {
|
|
384
387
|
return (jsx("section", { className: "max-w-[600px]", role: "list", children: items.map((_, i) => (jsx(BlockItem, { className: i ? 'mt-2.5' : '', text: _, version: version }, String(i)))) }));
|
|
385
388
|
}
|
|
386
|
-
function renderButton(button, i) {
|
|
387
|
-
|
|
389
|
+
function renderButton({ icon, ...button }, i) {
|
|
390
|
+
if (!button?.text)
|
|
391
|
+
return;
|
|
392
|
+
if (icon)
|
|
393
|
+
return (jsx(Button, { appendLeft: jsx(Icon, { name: icon, width: "24", height: "24" }), ...button }, String(i)));
|
|
394
|
+
return jsx(Button, { ...button }, String(i));
|
|
388
395
|
}
|
|
389
396
|
|
|
390
397
|
const tileStyleMap = {
|
|
@@ -478,6 +485,7 @@
|
|
|
478
485
|
{
|
|
479
486
|
text: 'Все показатели',
|
|
480
487
|
href: 'https://cbr.ru/currency_base/daily/',
|
|
488
|
+
version: 'secondary',
|
|
481
489
|
},
|
|
482
490
|
];
|
|
483
491
|
const ExchangeRateTile = JSX(({ className, context, title }) => {
|
|
@@ -496,8 +504,8 @@
|
|
|
496
504
|
const currencyNumberFormat = new Intl.NumberFormat('ru', { style: 'currency', currency: 'RUB' });
|
|
497
505
|
const formatCurrency = (value) => (value ? currencyNumberFormat.format(value) : '');
|
|
498
506
|
|
|
499
|
-
const SVG = JSX(({ className, viewBox, fill = 'none', paths, ...commonOptions }) => {
|
|
500
|
-
return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: className, viewBox: viewBox, fill: fill, children: paths.map(({ d, fill, ...options }, i) => (jsx("path", { d: d, fill: fill || 'currentColor', ...commonOptions, ...options }, i))) }));
|
|
507
|
+
const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
|
|
508
|
+
return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: className, viewBox: viewBox, fill: fill, width: width, height: height, children: paths.map(({ d, fill, ...options }, i) => (jsx("path", { d: d, fill: fill || 'currentColor', ...commonOptions, ...options }, i))) }));
|
|
501
509
|
});
|
|
502
510
|
|
|
503
511
|
const LOGO_PATHS = [
|
|
@@ -522,7 +530,7 @@
|
|
|
522
530
|
const Contacts = JSX(({ className, items, hasButton, context }) => {
|
|
523
531
|
const router = context.useRouter();
|
|
524
532
|
const { handlerDecorator } = context;
|
|
525
|
-
return (jsxs("div", { className: `flex flex-col ${className || ''}`, children: [items?.length ? items.map(renderContact) : null, hasButton ? (jsx(Button, { className: "my-4", ...useLink({ router, handlerDecorator }, {
|
|
533
|
+
return (jsxs("div", { className: `flex flex-col ${className || ''}`, children: [items?.length ? items.map(renderContact) : null, hasButton ? (jsx(Button, { version: "primary", className: "my-4", ...useLink({ router, handlerDecorator }, {
|
|
526
534
|
text: 'Обратная связь',
|
|
527
535
|
href: '/',
|
|
528
536
|
target: '_blank',
|
|
@@ -544,6 +552,13 @@
|
|
|
544
552
|
};
|
|
545
553
|
const formatTel = (s) => s.replaceAll(/(\-|\s|\(|\)|\D+)/g, '');
|
|
546
554
|
|
|
555
|
+
const HorizontalNavigation = JSX(({ className, links, context }) => {
|
|
556
|
+
const router = context.useRouter();
|
|
557
|
+
const { handlerDecorator } = context;
|
|
558
|
+
return (jsx("div", { className: `${className || ''}`, children: links?.length ? (jsx("div", { className: "flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y border-y-main-divider", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null }));
|
|
559
|
+
});
|
|
560
|
+
const HorizontalNavigationLink = JSX(({ className, index, text, href, target, onClick }) => (jsx("a", { className: `font-sans font-normal text-sm text-secondary-text hover:text-primary-text inline-block no-underline max-w-[292px] ${className || ''}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` })));
|
|
561
|
+
|
|
547
562
|
const cmp = (a) => (b) => a?.href === b?.href;
|
|
548
563
|
const substitute = (items, substitution) => (items || []).map((_) => substitution?.find(cmp(_)) || _);
|
|
549
564
|
const subtract = (minuend, subtrahend) => (minuend || []).filter((_) => !subtrahend?.find(cmp(_)));
|
|
@@ -590,15 +605,10 @@
|
|
|
590
605
|
});
|
|
591
606
|
const MediaButton = JSX(({ href }) => {
|
|
592
607
|
const { icon, label } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
const HorizontalNavigation = JSX(({ className, links, context }) => {
|
|
597
|
-
const router = context.useRouter();
|
|
598
|
-
const { handlerDecorator } = context;
|
|
599
|
-
return (jsx("div", { className: `${className || ''}`, children: links?.length ? (jsx("div", { className: "flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y border-y-main-divider", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null }));
|
|
608
|
+
if (!icon)
|
|
609
|
+
return null;
|
|
610
|
+
return (jsx(Button, { rounded: true, href: href, target: "_blank", rel: "noopener noreferrer", "aria-label": label, className: "border-solid border border-main-divider w-9 h-9 flex items-center justify-center hover:text-primary-main", appendLeft: jsx(Icon, { name: icon }) }));
|
|
600
611
|
});
|
|
601
|
-
const HorizontalNavigationLink = JSX(({ className, index, text, href, target, onClick }) => (jsx("a", { className: `font-sans font-normal text-sm text-secondary-text hover:text-primary-text inline-block no-underline max-w-[292px] ${className || ''}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` })));
|
|
602
612
|
|
|
603
613
|
const TextInformation = JSX(({ className, links, context }) => {
|
|
604
614
|
const router = context.useRouter();
|
|
@@ -613,6 +623,61 @@
|
|
|
613
623
|
return (jsxs("footer", { className: `${className} px-9 py-10 bg-white`, children: [jsxs("div", { className: "flex items-stretch gap-32 pb-8 xl:gap-8", children: [jsx(Logo, { className: `${LEFT_COL_WIDTH_FULL_HD} ${LEFT_COL_WIDTH_SMALL_DESKTOP}` }), jsx(SearchBar, { context: context, className: "grow" })] }), jsxs("div", { className: "flex items-stretch gap-32 xl:gap-8", children: [jsx(Contacts, { className: `${LEFT_COL_WIDTH_FULL_HD} shrink-0 overflow-hidden ${LEFT_COL_WIDTH_SMALL_DESKTOP}`, items: contacts, context: context, hasButton: true }), jsx(Sitemap, { className: "pt-[3px]", context: context, items: topItems })] }), jsx(SocialMedia, { media: socialMedia, context: context }), jsx(HorizontalNavigation, { links: relatedEnterprises, context: context }), jsx(TextInformation, { links: documents, context: context })] }));
|
|
614
624
|
});
|
|
615
625
|
|
|
626
|
+
const ARROW_PATHS = [
|
|
627
|
+
{
|
|
628
|
+
d: 'm9 12 4-4-4-4',
|
|
629
|
+
stroke: 'currentColor',
|
|
630
|
+
strokeWidth: '2',
|
|
631
|
+
strokeLinecap: 'round',
|
|
632
|
+
fill: 'none',
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
d: 'M2 9a1 1 0 0 1 0-2v2Zm6-2a1 1 0 0 1 0 2V7ZM2 7h6v2H2V7Z',
|
|
636
|
+
},
|
|
637
|
+
];
|
|
638
|
+
const ArrowButton = JSX(({ className, disabled, ...rest }) => (jsx(Button, { rounded: true, className: `shadow-[0_4px_25px_rgba(0,0,0,0.07)] w-12 h-12 min-h-12 max-h-12 flex items-center justify-center ${disabled
|
|
639
|
+
? 'bg-secondary-light text-secondary-text'
|
|
640
|
+
: 'bg-white text-primary-text hover:text-primary-main'} ${className || ''}`, disabled: disabled, ...rest, children: jsx(SVG, { paths: ARROW_PATHS, viewBox: "0 0 16 16", fill: "none", width: "16", height: "16" }) })));
|
|
641
|
+
|
|
642
|
+
const cardStyleMap = {
|
|
643
|
+
normal: 'min-w-[364px] w-[364px]',
|
|
644
|
+
mini: 'min-w-[260px] w-[260px]',
|
|
645
|
+
};
|
|
646
|
+
const cardWidthMap = {
|
|
647
|
+
normal: 380,
|
|
648
|
+
mini: 276,
|
|
649
|
+
};
|
|
650
|
+
const galleryLengthForScrollMap = {
|
|
651
|
+
normal: 3,
|
|
652
|
+
mini: 4,
|
|
653
|
+
};
|
|
654
|
+
const GalleryInner = JSX(({ title, description, context, cards = [], className, version = 'normal' }) => {
|
|
655
|
+
const [activeCardIndex, setActiveCardIndex] = context.useState(0);
|
|
656
|
+
function handleNextClick() {
|
|
657
|
+
setActiveCardIndex(activeCardIndex + 1);
|
|
658
|
+
}
|
|
659
|
+
function handlePrevClick() {
|
|
660
|
+
setActiveCardIndex(activeCardIndex - 1);
|
|
661
|
+
}
|
|
662
|
+
const isGalleryScrollAvailable = cards?.length > galleryLengthForScrollMap[version];
|
|
663
|
+
const showNextButton = isGalleryScrollAvailable &&
|
|
664
|
+
cards?.length - activeCardIndex > galleryLengthForScrollMap[version];
|
|
665
|
+
const showPrevButton = isGalleryScrollAvailable && activeCardIndex > 0;
|
|
666
|
+
return (jsxs("section", { className: `relative font-sans text-primary-text bg-white p-12 overflow-hidden ${className}`, children: [jsxs("div", { className: "flex flex-col items-center mb-8", children: [title ? jsx(Title, { className: "font-medium m-0 text-center", children: title }) : null, description ? (jsx("div", { className: "font-normal text-base max-w-[600px] mt-3", children: description })) : null] }), jsx("div", {
|
|
667
|
+
// Need to place all cards at the center if count of cards less than 4
|
|
668
|
+
className: `flex ${cards?.length <= galleryLengthForScrollMap[version] ? 'justify-center' : ''} duration-1000`,
|
|
669
|
+
// All cards has same width
|
|
670
|
+
style: { transform: `translateX(-${activeCardIndex * cardWidthMap[version]}px)` }, role: "list", children: cards?.map((card, i) => renderCard$1(card, i, version)) }), showPrevButton && (jsx(ArrowButton, { className: "absolute top-1/2 left-8 rotate-180", onClick: handlePrevClick, ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043B\u0435\u0432\u043E" })), showNextButton && (jsx(ArrowButton, { className: "absolute top-1/2 right-1 z-10", onClick: handleNextClick, ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E" })), jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[84px] bg-opacity-to-white" })] }));
|
|
671
|
+
});
|
|
672
|
+
function renderCard$1(card, i, version) {
|
|
673
|
+
return (jsxs("div", { className: `box-border border-solid border rounded-md border-main-divider p-7 mx-2 flex flex-col justify-between items-stretch ${cardStyleMap[version]} w-full`, role: "listitem", children: [jsxs("div", { children: [card.image?.src ? (jsx("div", { className: "flex justify-center", children: jsx(Img, { className: "mb-6", image: card.image }) })) : null, card.title ? (jsx("h4", { className: `font-medium text-xl m-0 ${!card.description && !card.items?.length ? 'text-center' : ''}`, children: card.title })) : null, card.description ? (jsx("div", { className: "font-normal text-sm text-secondary-text mt-2", children: card.description })) : null, card.items?.length ? (jsx("section", { className: "max-w-[308px] mt-2", role: "list", children: card.items.map(renderItem) })) : null] }), card.href ? (jsx(Button, { className: "mt-6", text: "\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u0435\u0435", version: "secondary", href: card.href })) : null] }, String(i)));
|
|
674
|
+
}
|
|
675
|
+
function renderItem(item, i) {
|
|
676
|
+
return (jsx(BlockItem, { children: jsx("span", { className: "text-sm text-secondary-text", children: item }) }, String(i)));
|
|
677
|
+
}
|
|
678
|
+
|
|
679
|
+
const Gallery$1 = JSX((props) => jsx(GalleryInner, { ...props, version: "normal" }));
|
|
680
|
+
|
|
616
681
|
const HeaderItem = JSX(({ className, text, href, target, active, onClick, children }) => {
|
|
617
682
|
const textStyle = active ? 'text-primary-main' : 'text-primary-text hover:text-primary-main';
|
|
618
683
|
return (jsxs("a", { className: `relative inline-block bg-transparent text-center no-underline ${className || ''}`, href: href, target: target, onClick: onClick, children: [jsx("span", { className: `font-sans font-normal text-base ${textStyle}`, children: text || children }), active ? (jsx("div", { className: "absolute left-0 -bottom-2 w-full h-[2px] bg-primary-main" })) : null] }));
|
|
@@ -654,6 +719,8 @@
|
|
|
654
719
|
return (jsxs("header", { className: `pt-5 pb-8 px-20 bg-white ${className || ''}`, children: [jsxs("div", { className: "flex items-center", children: [jsx(Logo, { className: "mr-8" }), topMenu, jsx(HeaderSecondaryMenu, { context: context, className: "ml-auto", defaultLocation: defaultLocation })] }), jsx("div", { className: "mt-5 h-[1px] bg-main-divider" }), jsx("nav", { className: "mt-5", children: subMenu })] }));
|
|
655
720
|
});
|
|
656
721
|
|
|
722
|
+
const MiniGallery = JSX((props) => (jsx(GalleryInner, { ...props, version: "mini" })));
|
|
723
|
+
|
|
657
724
|
const MobileAppTile = JSX(({ className, context, title = 'Мобильное приложение', qr, buttons = [] }) => {
|
|
658
725
|
return (jsx(Tile, { className: className, context: context, title: title, buttons: buttons, children: jsxs("div", { className: "flex items-center", children: [qr?.src && qr?.href && (jsx("a", { href: qr.href, target: "_blank", children: jsx("img", { src: qr.src, alt: title, title: title, width: "164", height: "164", className: "w-[90px] h-[90px] min-w-[90px] min-h-[90px] bg-secondary-light" }) })), jsx("span", { className: "font-normal text-sm text-secondary-text ml-4", children: "\u041D\u0430\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u0430\u043C\u0435\u0440\u0443 \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u0430 \u043D\u0430 QR-\u043A\u043E\u0434 \u0438 \u0441\u043A\u0430\u0447\u0430\u0439\u0442\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435" })] }) }));
|
|
659
726
|
});
|
|
@@ -661,10 +728,10 @@
|
|
|
661
728
|
const ProductBlockInner = JSX(({ className, context, title, titleSize, description, benefits, buttons, image, items }) => {
|
|
662
729
|
return (jsxs("div", { className: `flex grow justify-between items-stretch ${className || ''}`, children: [jsxs("div", { className: 'flex flex-col', children: [title && (
|
|
663
730
|
/* TODO Why <Title> is duplicated here? */
|
|
664
|
-
jsx(Title, { size: titleSize || 'XL', className: "font-medium m-0 mb-4 whitespace-pre-wrap max-w-[600px]", children: title })), jsx(BaseTile, { context: context, description: description, items: items, buttons: buttons, children: benefits?.length ? (jsx("div", { className: "flex gap-6 mt-6 mb-3.5", children: benefits.map(renderBenefit) })) : null })] }), image?.src && jsx(Img, { className: "mt-auto", image: image })] }));
|
|
731
|
+
jsx(Title, { size: titleSize || 'XL', className: "font-medium m-0 mb-4 whitespace-pre-wrap max-w-[600px] text-primary-text", children: title })), jsx(BaseTile, { context: context, description: description, items: items, buttons: buttons, children: benefits?.length ? (jsx("div", { className: "flex gap-6 mt-6 mb-3.5", children: benefits.map(renderBenefit) })) : null })] }), image?.src && jsx(Img, { className: "mt-auto", image: image })] }));
|
|
665
732
|
});
|
|
666
733
|
function renderBenefit(benefit, i) {
|
|
667
|
-
return (jsxs("div", { className: "flex gap-4 items-center", children: [benefit.icon && (jsx(Icon, { className: "w-[50px] h-[50px] min-w-[50px] min-h-[50px] bg-main rounded-full p-[10px] box-border", name: benefit.icon, width: "24", height: "24" })), jsxs("div", { className: "flex gap-1 flex-col h-full", children: [jsx("h4", { className: "font-medium text-xl m-0", children: benefit.label }), benefit.description && (jsx("div", { className: "font-normal text-sm text-secondary-text", children: benefit.description }))] })] }, String(i)));
|
|
734
|
+
return (jsxs("div", { className: "flex gap-4 items-center", children: [benefit.icon && (jsx(Icon, { className: "w-[50px] h-[50px] min-w-[50px] min-h-[50px] bg-main rounded-full p-[10px] box-border", name: benefit.icon, width: "24", height: "24" })), jsxs("div", { className: "flex gap-1 flex-col h-full", children: [jsx("h4", { className: "font-medium text-primary-text text-xl m-0", children: benefit.label }), benefit.description && (jsx("div", { className: "font-normal text-sm text-secondary-text", children: benefit.description }))] })] }, String(i)));
|
|
668
735
|
}
|
|
669
736
|
|
|
670
737
|
const Breadcrumb = JSX(({ text, href, target, onClick, className, children }) => {
|
|
@@ -709,16 +776,6 @@
|
|
|
709
776
|
return (jsxs("button", { type: "button", onClick: onClick, className: `group relative overflow-hidden border-0 bg-inherit cursor-pointer text-left px-0 py-4 grow basis-0`, children: [jsxs("div", { className: "border-0 border-r border-solid border-main-divider px-6", children: [jsx("div", { className: `text-sm font-medium group-hover:text-primary-text ${btnTitleClassName}`, children: slide?.title }), jsx("div", { className: "text-xs text-secondary-text", children: slide.desc })] }), jsx("div", { className: `absolute bottom-0 left-0 w-full h-[3px] bg-primary-main -translate-x-full ${progressBarClassName}`, style: { animationDuration: `${duration}s` } })] }, String(i)));
|
|
710
777
|
}
|
|
711
778
|
|
|
712
|
-
const StepsBlock = JSX(({ className, title, steps }) => {
|
|
713
|
-
return (jsxs("section", { className: `font-sans text-primary-text bg-white px-12 py-12 flex flex-col items-center ${className || ''}`, children: [jsx(Title, { className: "font-medium m-0 max-w-[47rem] text-center", children: title }), steps?.length ? (jsxs("div", { children: [jsx("div", { className: "flex mt-9 items-center px-[88px]", children: joinList(jsx("div", { className: "h-0.5 w-full bg-secondary-light" }))(steps.map((step, i) => renderStepIcon(step, i))) }), jsx("div", { className: "flex mt-9 justify-between gap-x-24", children: steps.map(renderStepTitle) })] })) : null] }));
|
|
714
|
-
});
|
|
715
|
-
const renderStepIcon = (step, i) => {
|
|
716
|
-
return (jsx("div", { className: "flex flex-col items-center text-center relative", children: jsx("div", { className: "h-[100px] w-[100px] min-w-[100px] min-h-[100px] bg-secondary-light rounded-full p-[26px] box-border z-10", children: (step.icon && jsx(Icon, { name: step.icon, width: "48", height: "48" })) || (jsx("span", { className: "font-medium text-title-sm text-secondary-text", children: i + 1 })) }) }, String(i)));
|
|
717
|
-
};
|
|
718
|
-
const renderStepTitle = (step, i) => {
|
|
719
|
-
return (jsx("div", { className: "flex flex-col items-center text-center relative w-[276px]", children: jsxs("div", { className: "max-w-min", children: [jsx("h5", { className: "font-medium text-xl m-0 mt-4 whitespace-nowrap px-3", children: step.label }), step.description && (jsx("div", { className: "font-normal text-sm text-secondary-text mt-2", children: step.description }))] }) }, String(i)));
|
|
720
|
-
};
|
|
721
|
-
|
|
722
779
|
const ProductTile = JSX((props) => {
|
|
723
780
|
const { benefits, version } = props;
|
|
724
781
|
return (jsx(Tile, { ...props, children: jsxs("div", { className: "flex mt-5 mb-1", children: [benefits?.length ? (jsx("div", { className: "mr-8", children: benefits.map(renderBenefitDescription) })) : null, benefits?.length ? (jsx("div", { className: "pt-1", children: benefits.map((_, i) => renderBenefitLabel(_, i, version)) })) : null] }) }));
|
|
@@ -747,11 +804,21 @@
|
|
|
747
804
|
return dateObj.toLocaleString('ru-RU', dateFormat).replace('г.', '');
|
|
748
805
|
}
|
|
749
806
|
|
|
807
|
+
const StepsBlock = JSX(({ className, title, steps }) => {
|
|
808
|
+
return (jsxs("section", { className: `font-sans text-primary-text bg-white px-12 py-12 flex flex-col items-center ${className || ''}`, children: [jsx(Title, { className: "font-medium m-0 max-w-[47rem] text-center", children: title }), steps?.length ? (jsxs("div", { children: [jsx("div", { className: "flex mt-9 items-center px-[88px]", children: joinList(jsx("div", { className: "h-0.5 w-full bg-secondary-light" }))(steps.map((step, i) => renderStepIcon(step, i))) }), jsx("div", { className: "flex mt-9 justify-between gap-x-24", children: steps.map(renderStepTitle) })] })) : null] }));
|
|
809
|
+
});
|
|
810
|
+
const renderStepIcon = (step, i) => {
|
|
811
|
+
return (jsx("div", { className: "flex flex-col items-center text-center relative", children: jsx("div", { className: "h-[100px] w-[100px] min-w-[100px] min-h-[100px] bg-secondary-light rounded-full p-[26px] box-border z-10", children: (step.icon && jsx(Icon, { name: step.icon, width: "48", height: "48" })) || (jsx("span", { className: "font-medium text-title-sm text-secondary-text", children: i + 1 })) }) }, String(i)));
|
|
812
|
+
};
|
|
813
|
+
const renderStepTitle = (step, i) => {
|
|
814
|
+
return (jsx("div", { className: "flex flex-col items-center text-center relative w-[276px]", children: jsxs("div", { className: "max-w-min", children: [jsx("h5", { className: "font-medium text-xl m-0 mt-4 whitespace-nowrap px-3", children: step.label }), step.description && (jsx("div", { className: "font-normal text-sm text-secondary-text mt-2", children: step.description }))] }) }, String(i)));
|
|
815
|
+
};
|
|
816
|
+
|
|
750
817
|
const textBlockStyleMaps = {
|
|
751
818
|
primary: {
|
|
752
819
|
background: 'bg-white',
|
|
753
820
|
icon: 'bg-primary-main text-white',
|
|
754
|
-
title: 'text-
|
|
821
|
+
title: 'text-primary-text',
|
|
755
822
|
description: 'text-secondary-text',
|
|
756
823
|
},
|
|
757
824
|
secondary: {
|
|
@@ -763,13 +830,13 @@
|
|
|
763
830
|
'secondary-light': {
|
|
764
831
|
background: 'bg-primary-main/10',
|
|
765
832
|
icon: 'bg-primary-main text-white',
|
|
766
|
-
title: 'text-
|
|
833
|
+
title: 'text-primary-text',
|
|
767
834
|
description: 'text-secondary-text',
|
|
768
835
|
},
|
|
769
836
|
};
|
|
770
837
|
const TextBlock = JSX(({ title, description, blockVersion = 'primary', iconVersion, image, className }) => {
|
|
771
838
|
const textBlockStyleMap = textBlockStyleMaps[blockVersion];
|
|
772
|
-
return (jsxs("section", { className: `font-sans px-9 py-4 flex ${textBlockStyleMap.background} ${className || ''}`, children: [iconVersion && iconVersion === 'small' ? renderIcon(textBlockStyleMap.icon) : null, iconVersion && iconVersion === 'big' ? renderImage(image) : null, jsxs("div", { className: "py-0.5", children: [title && jsx("div", { className: `font-medium mb-1 ${textBlockStyleMap.title}`, children: title }), description && (jsx("div", { className: `text-sm ${textBlockStyleMap.description}`, children: description }))] })] }));
|
|
839
|
+
return (jsxs("section", { className: `font-sans px-9 py-4 flex ${textBlockStyleMap.background} ${className || ''}`, children: [iconVersion && iconVersion === 'small' ? renderIcon(textBlockStyleMap.icon) : null, iconVersion && iconVersion === 'big' ? renderImage(image) : null, jsxs("div", { className: "py-0.5", children: [title && (jsx("div", { className: `font-medium text-base mb-1 ${textBlockStyleMap.title}`, children: title })), description && (jsx("div", { className: `text-sm ${textBlockStyleMap.description}`, children: description }))] })] }));
|
|
773
840
|
});
|
|
774
841
|
function renderIcon(className) {
|
|
775
842
|
return (jsx("div", { className: `pt-1.5 pr-4`, children: jsx("div", { className: `rounded-full h-4 w-4 text-center text-xs ${className}`, children: "i" }) }));
|
|
@@ -778,37 +845,49 @@
|
|
|
778
845
|
return image?.src ? jsx(Img, { className: "pt-0.5 pr-3", image: image }) : null;
|
|
779
846
|
}
|
|
780
847
|
|
|
781
|
-
const
|
|
782
|
-
|
|
848
|
+
const TableRowContainer = JSX(({ children }) => (jsx("div", { className: "self-start flex flex-col", role: "row", children: jsx("div", { className: "flex", children: children }) })));
|
|
849
|
+
|
|
850
|
+
const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
|
|
851
|
+
const BORDER_CLASSES = 'border-main-stroke border-solid border';
|
|
852
|
+
const DIVIDER_CLASSES = 'border-main-divider border border-t-0 border-x-0';
|
|
853
|
+
const FIRST_CELL_CLASSES = 'w-[200px] mr-6';
|
|
854
|
+
const COLS_LENGTH_FOR_SCROLL = 2;
|
|
855
|
+
const COLUMN_WIDTH = 4 * 80 + 4 * 4; // w-80 + gap-4 = 336px
|
|
856
|
+
|
|
857
|
+
const TableCarouselContainer = JSX(({ children, activeCardIndex }) => (jsx("div", { className: "flex flex-1 overflow-hidden", children: jsx("div", { className: "flex gap-4 duration-1000", style: { transform: `translateX(-${activeCardIndex * COLUMN_WIDTH}px)` }, children: children }) })));
|
|
858
|
+
|
|
859
|
+
const HeaderCell = JSX(({ icon, image, title, link }) => (jsxs("div", { className: `w-80 box-border flex flex-col items-center rounded-t-md border-b-0 px-7 pt-7 pb-12 ${BORDER_CLASSES} ${GRADIENT}`, role: "columnheader", scope: "col", children: [icon && !image?.src && (jsx(Icon, { className: "h-[63px] w-[63px] min-w-[63px] min-h-[63px] mb-4", name: icon, width: "63", height: "63" })), image?.src && jsx(Img, { className: "mb-4", image: image }), title && (jsx(Title, { size: "S", className: "font-medium m-0 text-center text-white", children: title })), link?.text && (jsx("div", { className: "mt-auto w-full", children: jsx(Button, { href: link.href, target: link.target, className: "mt-4 w-full text-primary-main bg-white hover:bg-secondary-hover active:bg-secondary-active", children: jsx("div", { className: "text-xs py-[11px]", children: link.text }) }) }))] })));
|
|
860
|
+
|
|
861
|
+
const TableCell = JSX(({ cell, isFirstRow, isLastRow, isFillGradient }) => {
|
|
862
|
+
const cellWrapperClasses = `w-80 box-border flex flex-col ${BORDER_CLASSES} ${!isLastRow ? 'border-y-0' : 'border-t-0 rounded-b-md'} ${isFillGradient ? GRADIENT : ''}`;
|
|
863
|
+
const cellClasses = `mx-7 h-full ${DIVIDER_CLASSES} ${isFillGradient && isFirstRow ? 'border-t' : ''} ${!isLastRow ? 'border-solid' : ''}`;
|
|
864
|
+
return (jsx("div", { className: cellWrapperClasses, role: "cell", children: jsx("div", { className: cellClasses, children: cell.map((item, i) => renderCellInner(item, i, isFillGradient)) }) }));
|
|
783
865
|
});
|
|
866
|
+
const renderCellInner = ({ label, description }, i, isFillGradient) => (jsxs("div", { className: "first:pt-7 pt-6 last:pb-7", children: [label && (jsx("h5", { className: `text-xl font-medium m-0 ${isFillGradient ? 'text-white' : ''}`, children: label })), description && (jsx("div", { className: `text-sm opacity-80 ${isFillGradient ? 'text-white' : 'text-secondary-text'}`, children: description }))] }, String(i)));
|
|
867
|
+
|
|
868
|
+
const TableRow = JSX(({ row: { header, data }, activeCardIndex, isColoredFirstColumn, isFirstRow, isLastRow }) => (jsxs(TableRowContainer, { children: [header?.title ? (jsx("div", { className: `text-sm py-7 ${DIVIDER_CLASSES} ${FIRST_CELL_CLASSES} ${!isLastRow ? 'border-solid' : ''}`, children: header.title })) : null, data?.length ? (jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, children: data.map((cell, i) => (jsx(TableCell, { cell: cell, isFirstRow: isFirstRow, isLastRow: isLastRow, isFillGradient: isColoredFirstColumn && i === 0 }, String(i)))) })) : null] })));
|
|
784
869
|
|
|
785
|
-
const
|
|
786
|
-
|
|
787
|
-
|
|
870
|
+
const ComparisonTable = JSX(({ className, context, title, rowHeaders, columns, visibleRowLength = 0, isColoredFirstColumn = false, }) => {
|
|
871
|
+
const router = context.useRouter();
|
|
872
|
+
const { handlerDecorator } = context;
|
|
788
873
|
const [activeCardIndex, setActiveCardIndex] = context.useState(0);
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
}
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
874
|
+
const [isShowAllRow, setIsShowAllRow] = context.useState(!visibleRowLength);
|
|
875
|
+
const colHeaders = columns?.map(({ header }) => header || {});
|
|
876
|
+
const colData = columns?.map(({ data }) => data) || [];
|
|
877
|
+
const rowData = rowHeaders
|
|
878
|
+
?.map((header, i) => ({
|
|
879
|
+
header,
|
|
880
|
+
data: colData.map((col) => col?.[i] || [{}]),
|
|
881
|
+
}))
|
|
882
|
+
.slice(0, isShowAllRow ? rowHeaders.length : visibleRowLength);
|
|
883
|
+
const nextClick = () => setActiveCardIndex(activeCardIndex + 1);
|
|
884
|
+
const prevClick = () => setActiveCardIndex(activeCardIndex - 1);
|
|
885
|
+
const showToggle = () => setIsShowAllRow(!isShowAllRow);
|
|
886
|
+
const isScrollAvailable = colData?.length && colData.length > COLS_LENGTH_FOR_SCROLL;
|
|
887
|
+
const showNextButton = isScrollAvailable && colData?.length - activeCardIndex > COLS_LENGTH_FOR_SCROLL;
|
|
888
|
+
const showPrevButton = isScrollAvailable && activeCardIndex > 0;
|
|
889
|
+
return (jsxs("section", { className: `bg-white font-sans py-[50px] pl-[50px] overflow-hidden text-primary-text relative ${className || ''}`, children: [jsx(Title, { className: "font-medium m-0 max-w-[47rem] text-center mb-9 mx-auto", children: title }), jsxs("div", { role: "table", children: [colHeaders?.length ? (jsxs(TableRowContainer, { children: [jsx("div", { className: FIRST_CELL_CLASSES, role: "columnheader", scope: "col" }), jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, children: colHeaders.map((header, i) => (jsx(HeaderCell, { ...header, link: header.link && useLink({ router, handlerDecorator }, header.link) }, String(i)))) })] })) : null, rowData?.length ? (jsxs("div", { className: "relative", children: [rowData.map((row, i, { length }) => (jsx(TableRow, { row: row, isFirstRow: i === 0, isLastRow: i + 1 === length, activeCardIndex: activeCardIndex, isColoredFirstColumn: isColoredFirstColumn }, String(i)))), isScrollAvailable ? (jsx("div", { children: jsxs("div", { className: "absolute top-7 right-7 z-10", children: [jsx(ArrowButton, { onClick: nextClick, disabled: !showNextButton, ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E" }), jsx(ArrowButton, { className: "mt-4 rotate-180", onClick: prevClick, disabled: !showPrevButton, ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043B\u0435\u0432\u043E" })] }) })) : null] })) : null] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[84px] bg-opacity-to-white" })) : null, visibleRowLength ? (jsx("div", { className: "pr-[50px]", children: jsxs("div", { className: "flex w-full", children: [jsx("div", { className: FIRST_CELL_CLASSES }), jsx("button", { onClick: showToggle, className: "mt-5 flex-1 border-main-stroke border-solid border text-primary-text bg-white hover:border-primary-main hover:text-primary-main", children: jsx("div", { className: "font-sans font-medium text-xs py-[11px]", children: !isShowAllRow ? 'Показать все параметры' : 'Скрыть' }) })] }) })) : null] }));
|
|
805
890
|
});
|
|
806
|
-
function renderCard$1(card, key) {
|
|
807
|
-
return (jsxs("div", { className: "box-border border-solid border rounded-md border-main-divider p-7 mx-2 flex flex-col justify-between items-stretch min-w-[364px] w-[364px] w-full", role: "listitem", children: [jsxs("div", { children: [card.image?.src ? (jsx("div", { className: "flex justify-center", children: jsx(Img, { className: "mb-6", image: card.image }) })) : null, card.title ? (jsx("h4", { className: `font-medium text-xl m-0 ${!card.description && !card.items?.length ? 'text-center' : ''}`, children: card.title })) : null, card.description ? (jsx("div", { className: "font-normal text-sm text-secondary-text mt-2", children: card.description })) : null, card.items?.length ? renderItems$1(card.items) : null] }), card.href ? (jsx(Button, { className: "mt-6", text: "\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u0435\u0435", version: "secondary", href: card.href })) : null] }, key));
|
|
808
|
-
}
|
|
809
|
-
function renderItems$1(items = []) {
|
|
810
|
-
return (jsx("section", { className: "max-w-[308px] mt-2", role: "list", children: items.map((item, i) => (jsx(BlockItem, { children: jsx("span", { className: "text-sm text-secondary-text", children: item }) }, String(i)))) }));
|
|
811
|
-
}
|
|
812
891
|
|
|
813
892
|
const Blocks = {
|
|
814
893
|
Header,
|
|
@@ -825,6 +904,8 @@
|
|
|
825
904
|
ExchangeRateTile,
|
|
826
905
|
MobileAppTile,
|
|
827
906
|
Gallery: Gallery$1,
|
|
907
|
+
MiniGallery,
|
|
908
|
+
ComparisonTable,
|
|
828
909
|
};
|
|
829
910
|
|
|
830
911
|
const Footer = JSX(({ className, context }) => (jsx("footer", { className: `${className} px-9 py-2 bg-white rounded-bl-3xl rounded-br-3xl`, children: jsx(TextInformation, { context: context }) })));
|