@redneckz/wildless-cms-uni-blocks 0.5.13 → 0.5.15
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 +1 -1
- package/bundle/bundle.umd.js +834 -697
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/Accordion/Accordion.d.ts +2 -2
- package/bundle/components/Accordion/Accordion.mobile.d.ts +2 -2
- package/bundle/components/Accordion/AccordionContent.d.ts +0 -26
- package/bundle/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/bundle/components/AccordionItem/AccordionItem.mobile.d.ts +3 -0
- package/bundle/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/bundle/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/bundle/components/BaseTile/BaseTile.d.ts +1 -1
- package/bundle/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/bundle/components/Blocks.d.ts +6 -3
- package/bundle/components/Blocks.mobile.d.ts +2 -1
- package/bundle/components/Bonus/Bonus.d.ts +1 -1
- package/bundle/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/bundle/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/bundle/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/bundle/components/Calculator/Calculator.d.ts +1 -1
- package/bundle/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/bundle/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/bundle/components/Calculator/renderButtonSection.d.ts +3 -1
- package/bundle/components/Calculator/renderFootnote.d.ts +1 -1
- package/bundle/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/bundle/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/bundle/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/bundle/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/bundle/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/bundle/components/Catalog/Catalog.d.ts +1 -1
- package/bundle/components/Catalog/CatalogCard.d.ts +1 -1
- package/bundle/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/bundle/components/ComparisonTable/ComparisonTable.mobile.d.ts +1 -1
- package/bundle/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/bundle/components/ContentPage/ContentPage.d.ts +2 -1
- package/bundle/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/bundle/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/bundle/components/Footer/Contacts.d.ts +1 -1
- package/bundle/components/Footer/Footer.d.ts +1 -1
- package/bundle/components/Footer/Footer.mobile.d.ts +1 -1
- package/bundle/components/Footer/FooterLink.d.ts +1 -1
- package/bundle/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/bundle/components/Footer/HorizontalNavigation.mobile.d.ts +1 -1
- package/bundle/components/Footer/Sitemap.d.ts +2 -2
- package/bundle/components/Footer/SocialMedia.d.ts +1 -1
- package/bundle/components/Footer/SocialMedia.mobile.d.ts +1 -1
- package/bundle/components/Gallery/GalleryInner.d.ts +1 -1
- package/bundle/components/Gallery/GalleryProps.d.ts +1 -1
- package/bundle/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/bundle/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/bundle/components/Header/DropdownMenu.d.ts +1 -1
- package/bundle/components/Header/Header.d.ts +1 -1
- package/bundle/components/Header/Header.mobile.d.ts +1 -1
- package/bundle/components/Headline/Headline.d.ts +1 -1
- package/bundle/components/Headline/Headline.mobile.d.ts +1 -1
- package/bundle/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/bundle/components/LikeControl/LikeControl.d.ts +1 -1
- package/bundle/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/bundle/components/LinkDocs/LinkDocs.mobile.d.ts +1 -1
- package/bundle/components/LinkList/LinkList.d.ts +1 -1
- package/bundle/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/bundle/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/bundle/components/MobileAppTile/MobileAppTile.mobile.d.ts +1 -1
- package/bundle/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/bundle/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/bundle/components/OfficeMap/YandexMap.d.ts +5 -0
- package/bundle/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/bundle/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/bundle/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/bundle/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/bundle/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/bundle/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/bundle/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/bundle/components/PictureText/PictureText.d.ts +1 -1
- package/bundle/components/Placeholder/Placeholder.d.ts +1 -1
- package/bundle/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/bundle/components/ProductBlock/ProductBlock.mobile.d.ts +1 -1
- package/bundle/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/bundle/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/bundle/components/ProductBlock/ProductBlockInner.mobile.d.ts +1 -1
- package/bundle/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/bundle/components/ProductGallery/ProductGallery.mobile.d.ts +1 -1
- package/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/bundle/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/bundle/components/ProductTile/ProductTile.d.ts +1 -1
- package/bundle/components/PromoTile/PromoTile.d.ts +1 -1
- package/bundle/components/Recommendation/Recommendation.d.ts +1 -1
- package/bundle/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/bundle/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/bundle/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/bundle/components/StepsBlock/StepsBlock.mobile.d.ts +1 -1
- package/bundle/components/Tabs/Tabs.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTable.mobile.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/bundle/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/bundle/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/bundle/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/bundle/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/bundle/components/TextBlock/TextBlock.d.ts +1 -1
- package/bundle/components/TextBlock/TextBlock.mobile.d.ts +1 -1
- package/bundle/components/Tile/Tile.d.ts +1 -1
- package/bundle/hooks/useOfficeMap.d.ts +3 -0
- package/bundle/icons/IconName.d.ts +4 -2
- package/bundle/index.d.ts +1 -0
- package/bundle/model/BlocksRegistry.d.ts +1 -7
- package/bundle/model/ContentPageDef.d.ts +0 -8
- package/bundle/model/JSXBlock.d.ts +17 -0
- package/bundle/model/getParentBlockContent.d.ts +2 -0
- package/bundle/model/getParentBlockDef.d.ts +3 -0
- package/bundle/ui-kit/BlockWrapper.d.ts +1 -1
- package/bundle/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/bundle/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/bundle/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/bundle/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/bundle/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/bundle/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/bundle/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/bundle/ui-kit/SearchBar/SearchBar.mobile.d.ts +1 -1
- package/bundle/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/bundle/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/cosmos-static/icons/MetroIcon.svg +1 -0
- package/dist/components/Accordion/Accordion.d.ts +2 -2
- package/dist/components/Accordion/Accordion.js +2 -5
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/Accordion/Accordion.mobile.d.ts +2 -2
- package/dist/components/Accordion/Accordion.mobile.js +2 -5
- package/dist/components/Accordion/Accordion.mobile.js.map +1 -1
- package/dist/components/Accordion/AccordionContent.d.ts +0 -26
- package/dist/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/dist/components/AccordionItem/AccordionItem.js +12 -0
- package/dist/components/AccordionItem/AccordionItem.js.map +1 -0
- package/dist/components/AccordionItem/AccordionItem.mobile.d.ts +3 -0
- package/dist/components/AccordionItem/AccordionItem.mobile.js +16 -0
- package/dist/components/AccordionItem/AccordionItem.mobile.js.map +1 -0
- package/dist/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/dist/components/AccordionItem/AccordionItemContent.js +2 -0
- package/dist/components/AccordionItem/AccordionItemContent.js.map +1 -0
- package/dist/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/dist/components/{Accordion → AccordionItem}/AccordionItemProps.js +0 -0
- package/dist/components/AccordionItem/AccordionItemProps.js.map +1 -0
- package/dist/components/BaseTile/BaseTile.d.ts +1 -1
- package/dist/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/dist/components/Blocks.d.ts +6 -3
- package/dist/components/Blocks.js +7 -1
- package/dist/components/Blocks.js.map +1 -1
- package/dist/components/Blocks.mobile.d.ts +2 -1
- package/dist/components/Blocks.mobile.js +2 -0
- package/dist/components/Blocks.mobile.js.map +1 -1
- package/dist/components/Bonus/Bonus.d.ts +1 -1
- package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +2 -2
- package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
- package/dist/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/dist/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/dist/components/Calculator/Calculator.d.ts +1 -1
- package/dist/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/dist/components/Calculator/CreditCalculatorForm.js +2 -1
- package/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
- package/dist/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/dist/components/Calculator/DepositCalculatorForm.js +2 -1
- package/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/dist/components/Calculator/renderButtonSection.d.ts +3 -1
- package/dist/components/Calculator/renderButtonSection.js.map +1 -1
- package/dist/components/Calculator/renderFootnote.d.ts +1 -1
- package/dist/components/Calculator/renderFootnote.js.map +1 -1
- package/dist/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/dist/components/Calculator/renderInitialFeeInput.js +1 -1
- package/dist/components/Calculator/renderInitialFeeInput.js.map +1 -1
- package/dist/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/dist/components/Calculator/renderMonthsInput.js.map +1 -1
- package/dist/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/dist/components/Calculator/renderPaymentTypeSelector.js +2 -2
- package/dist/components/Calculator/renderPaymentTypeSelector.js.map +1 -1
- package/dist/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/dist/components/Calculator/renderRealEstateValue.js +1 -1
- package/dist/components/Calculator/renderRealEstateValue.js.map +1 -1
- package/dist/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/dist/components/Calculator/renderWantedSumInput.js.map +1 -1
- package/dist/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/dist/components/CardTransfer/CardTransfer.js +3 -3
- package/dist/components/CardTransfer/CardTransfer.js.map +1 -1
- package/dist/components/Catalog/Catalog.d.ts +1 -1
- package/dist/components/Catalog/CatalogCard.d.ts +1 -1
- package/dist/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/dist/components/ComparisonTable/ComparisonTable.mobile.d.ts +1 -1
- package/dist/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/dist/components/ContentPage/ContentPage.d.ts +2 -1
- package/dist/components/ContentPage/ContentPage.js.map +1 -1
- package/dist/components/ContentPage/renderBlock.js +7 -6
- package/dist/components/ContentPage/renderBlock.js.map +1 -1
- package/dist/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +1 -1
- package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
- package/dist/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/dist/components/ExchangeRateTile/ExchangeRateTile.js +1 -2
- package/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
- package/dist/components/Footer/Contacts.d.ts +1 -1
- package/dist/components/Footer/Footer.d.ts +1 -1
- package/dist/components/Footer/Footer.mobile.d.ts +1 -1
- package/dist/components/Footer/Footer.mobile.js +1 -1
- package/dist/components/Footer/Footer.mobile.js.map +1 -1
- package/dist/components/Footer/FooterLink.d.ts +1 -1
- package/dist/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/dist/components/Footer/HorizontalNavigation.mobile.d.ts +1 -1
- package/dist/components/Footer/Sitemap.d.ts +2 -2
- package/dist/components/Footer/Sitemap.js +3 -3
- package/dist/components/Footer/Sitemap.js.map +1 -1
- package/dist/components/Footer/SocialMedia.d.ts +1 -1
- package/dist/components/Footer/SocialMedia.mobile.d.ts +1 -1
- package/dist/components/Gallery/Gallery.mobile.js +1 -1
- package/dist/components/Gallery/Gallery.mobile.js.map +1 -1
- package/dist/components/Gallery/GalleryInner.d.ts +1 -1
- package/dist/components/Gallery/GalleryProps.d.ts +1 -1
- package/dist/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/dist/components/GracePeriod/GracePeriod.js +4 -3
- package/dist/components/GracePeriod/GracePeriod.js.map +1 -1
- package/dist/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/dist/components/Header/DropdownMenu.d.ts +1 -1
- package/dist/components/Header/DropdownMenu.js.map +1 -1
- package/dist/components/Header/Header.d.ts +1 -1
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/Header/Header.mobile.d.ts +1 -1
- package/dist/components/Header/Header.mobile.js +1 -1
- package/dist/components/Header/Header.mobile.js.map +1 -1
- package/dist/components/Headline/Headline.d.ts +1 -1
- package/dist/components/Headline/Headline.mobile.d.ts +1 -1
- package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
- package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/dist/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/dist/components/LikeControl/LikeControl.d.ts +1 -1
- package/dist/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/dist/components/LinkDocs/LinkDocs.mobile.d.ts +1 -1
- package/dist/components/LinkList/LinkList.d.ts +1 -1
- package/dist/components/LinkList/LinkList.js.map +1 -1
- package/dist/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/dist/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/dist/components/MobileAppTile/MobileAppTile.mobile.d.ts +1 -1
- package/dist/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/dist/components/OfficeMap/OfficeMap.js +45 -0
- package/dist/components/OfficeMap/OfficeMap.js.map +1 -0
- package/dist/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/dist/components/OfficeMap/OfficeMapContent.js +2 -0
- package/dist/components/OfficeMap/OfficeMapContent.js.map +1 -0
- package/dist/components/OfficeMap/YandexMap.d.ts +5 -0
- package/dist/components/OfficeMap/YandexMap.js +30 -0
- package/dist/components/OfficeMap/YandexMap.js.map +1 -0
- package/dist/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/dist/components/OfficeMap/mockOfficeMap.js +82 -0
- package/dist/components/OfficeMap/mockOfficeMap.js.map +1 -0
- package/dist/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/dist/components/OfficeMap/renderFunctions.js +19 -0
- package/dist/components/OfficeMap/renderFunctions.js.map +1 -0
- package/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
- package/dist/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/dist/components/OtherProducts/OtherProducts.js +2 -4
- package/dist/components/OtherProducts/OtherProducts.js.map +1 -1
- package/dist/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/dist/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/dist/components/OtherProductsItem/OtherProductsItem.js +15 -0
- package/dist/components/OtherProductsItem/OtherProductsItem.js.map +1 -0
- package/dist/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/dist/components/OtherProductsItem/OtherProductsItemContent.js +2 -0
- package/dist/components/OtherProductsItem/OtherProductsItemContent.js.map +1 -0
- package/dist/components/PictureText/PictureText.d.ts +1 -1
- package/dist/components/Placeholder/Placeholder.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlock.mobile.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlockInner.js +4 -1
- package/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
- package/dist/components/ProductBlock/ProductBlockInner.mobile.d.ts +1 -1
- package/dist/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
- package/dist/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/dist/components/ProductGallery/ProductGallery.js +1 -1
- package/dist/components/ProductGallery/ProductGallery.js.map +1 -1
- package/dist/components/ProductGallery/ProductGallery.mobile.d.ts +1 -1
- package/dist/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/dist/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/dist/components/ProductTile/ProductTile.d.ts +1 -1
- package/dist/components/ProductTile/ProductTile.js.map +1 -1
- package/dist/components/PromoTile/PromoTile.d.ts +1 -1
- package/dist/components/Recommendation/Recommendation.d.ts +1 -1
- package/dist/components/Recommendation/Recommendation.js +2 -2
- package/dist/components/Recommendation/Recommendation.js.map +1 -1
- package/dist/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/dist/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
- package/dist/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/dist/components/StepsBlock/StepsBlock.js +1 -1
- package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
- package/dist/components/StepsBlock/StepsBlock.mobile.d.ts +1 -1
- package/dist/components/StepsBlock/StepsBlock.mobile.js.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +1 -1
- package/dist/components/Tabs/renderGroupTab.js +4 -4
- package/dist/components/Tabs/renderGroupTab.js.map +1 -1
- package/dist/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/dist/components/TariffsTable/TariffsTable.mobile.d.ts +1 -1
- package/dist/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
- package/dist/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/dist/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/dist/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
- package/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
- package/dist/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/dist/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/dist/components/TariffsTable/TariffsTableTileCell.js +2 -2
- package/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
- package/dist/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
- package/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
- package/dist/components/TextBlock/TextBlock.d.ts +1 -1
- package/dist/components/TextBlock/TextBlock.mobile.d.ts +1 -1
- package/dist/components/Tile/Tile.d.ts +1 -1
- package/dist/components/Tile/Tile.js +2 -2
- package/dist/components/Tile/Tile.js.map +1 -1
- package/dist/hooks/useOfficeMap.d.ts +3 -0
- package/dist/hooks/useOfficeMap.js +19 -0
- package/dist/hooks/useOfficeMap.js.map +1 -0
- package/dist/icons/IconName.d.ts +4 -2
- package/dist/icons/IconName.js +2 -0
- package/dist/icons/IconName.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/model/BlocksRegistry.d.ts +1 -7
- package/dist/model/ContentPageDef.d.ts +0 -8
- package/dist/model/JSXBlock.d.ts +17 -0
- package/dist/{ui-kit/BlocksList/BlocksListProps.js → model/JSXBlock.js} +1 -1
- package/dist/model/JSXBlock.js.map +1 -0
- package/dist/model/getParentBlockContent.d.ts +2 -0
- package/dist/model/getParentBlockContent.js +9 -0
- package/dist/model/getParentBlockContent.js.map +1 -0
- package/dist/model/getParentBlockDef.d.ts +3 -0
- package/dist/model/getParentBlockDef.js +8 -0
- package/dist/model/getParentBlockDef.js.map +1 -0
- package/dist/ui-kit/BenefitItem/BenefitItem.js +2 -2
- package/dist/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
- package/dist/ui-kit/BlockWrapper.d.ts +1 -1
- package/dist/ui-kit/BlockWrapper.js +3 -1
- package/dist/ui-kit/BlockWrapper.js.map +1 -1
- package/dist/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/dist/ui-kit/Foldable/FoldableSection.js +1 -1
- package/dist/ui-kit/Foldable/FoldableSection.js.map +1 -1
- package/dist/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/dist/ui-kit/Img/getIconVersion.js +1 -1
- package/dist/ui-kit/Img/getIconVersion.js.map +1 -1
- package/dist/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/dist/ui-kit/InputRange/InputRange.js.map +1 -1
- package/dist/ui-kit/Logo/Logo.js.map +1 -1
- package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/dist/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/dist/ui-kit/SearchBar/SearchBar.mobile.d.ts +1 -1
- package/dist/ui-kit/Select/Select.js +1 -1
- package/dist/ui-kit/Select/Select.js.map +1 -1
- package/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
- package/dist/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/lib/common.css +1 -1
- package/lib/components/Accordion/Accordion.d.ts +2 -2
- package/lib/components/Accordion/Accordion.fixture.d.ts +1 -0
- package/lib/components/Accordion/Accordion.fixture.mobile.d.ts +1 -0
- package/lib/components/Accordion/Accordion.js +2 -5
- package/lib/components/Accordion/Accordion.js.map +1 -1
- package/lib/components/Accordion/Accordion.mobile.d.ts +2 -2
- package/lib/components/Accordion/Accordion.mobile.js +2 -5
- package/lib/components/Accordion/Accordion.mobile.js.map +1 -1
- package/lib/components/Accordion/AccordionContent.d.ts +0 -26
- package/lib/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/lib/components/AccordionItem/AccordionItem.fixture.d.ts +5 -0
- package/lib/components/AccordionItem/AccordionItem.fixture.mobile.d.ts +5 -0
- package/lib/components/AccordionItem/AccordionItem.js +10 -0
- package/lib/components/AccordionItem/AccordionItem.js.map +1 -0
- package/lib/components/AccordionItem/AccordionItem.mobile.d.ts +3 -0
- package/lib/components/AccordionItem/AccordionItem.mobile.js +14 -0
- package/lib/components/AccordionItem/AccordionItem.mobile.js.map +1 -0
- package/lib/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/lib/components/AccordionItem/AccordionItemContent.js +2 -0
- package/lib/components/AccordionItem/AccordionItemContent.js.map +1 -0
- package/lib/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/lib/components/{Accordion → AccordionItem}/AccordionItemProps.js +0 -0
- package/lib/components/AccordionItem/AccordionItemProps.js.map +1 -0
- package/lib/components/BaseTile/BaseTile.d.ts +1 -1
- package/lib/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/lib/components/Blocks.d.ts +6 -3
- package/lib/components/Blocks.js +7 -1
- package/lib/components/Blocks.js.map +1 -1
- package/lib/components/Blocks.mobile.d.ts +2 -1
- package/lib/components/Blocks.mobile.js +2 -0
- package/lib/components/Blocks.mobile.js.map +1 -1
- package/lib/components/Bonus/Bonus.d.ts +1 -1
- package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.d.ts +1 -0
- package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +2 -2
- package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
- package/lib/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/lib/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/lib/components/Calculator/Calculator.d.ts +1 -1
- package/lib/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/lib/components/Calculator/CreditCalculatorForm.js +2 -1
- package/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
- package/lib/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/lib/components/Calculator/DepositCalculatorForm.js +2 -1
- package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/lib/components/Calculator/renderButtonSection.d.ts +3 -1
- package/lib/components/Calculator/renderButtonSection.js.map +1 -1
- package/lib/components/Calculator/renderFootnote.d.ts +1 -1
- package/lib/components/Calculator/renderFootnote.js.map +1 -1
- package/lib/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/lib/components/Calculator/renderInitialFeeInput.js +1 -1
- package/lib/components/Calculator/renderInitialFeeInput.js.map +1 -1
- package/lib/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/lib/components/Calculator/renderMonthsInput.js.map +1 -1
- package/lib/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/lib/components/Calculator/renderPaymentTypeSelector.js +2 -2
- package/lib/components/Calculator/renderPaymentTypeSelector.js.map +1 -1
- package/lib/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/lib/components/Calculator/renderRealEstateValue.js +1 -1
- package/lib/components/Calculator/renderRealEstateValue.js.map +1 -1
- package/lib/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/lib/components/Calculator/renderWantedSumInput.js.map +1 -1
- package/lib/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/lib/components/CardTransfer/CardTransfer.js +3 -3
- package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
- package/lib/components/Catalog/Catalog.d.ts +1 -1
- package/lib/components/Catalog/CatalogCard.d.ts +1 -1
- package/lib/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/lib/components/ComparisonTable/ComparisonTable.mobile.d.ts +1 -1
- package/lib/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/lib/components/ContentPage/ContentPage.d.ts +2 -1
- package/lib/components/ContentPage/ContentPage.js.map +1 -1
- package/lib/components/ContentPage/renderBlock.js +7 -6
- package/lib/components/ContentPage/renderBlock.js.map +1 -1
- package/lib/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +1 -1
- package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
- package/lib/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/lib/components/ExchangeRateTile/ExchangeRateTile.js +1 -2
- package/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
- package/lib/components/Footer/Contacts.d.ts +1 -1
- package/lib/components/Footer/Footer.d.ts +1 -1
- package/lib/components/Footer/Footer.mobile.d.ts +1 -1
- package/lib/components/Footer/Footer.mobile.js +1 -1
- package/lib/components/Footer/Footer.mobile.js.map +1 -1
- package/lib/components/Footer/FooterLink.d.ts +1 -1
- package/lib/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/lib/components/Footer/HorizontalNavigation.mobile.d.ts +1 -1
- package/lib/components/Footer/Sitemap.d.ts +2 -2
- package/lib/components/Footer/Sitemap.js +3 -3
- package/lib/components/Footer/Sitemap.js.map +1 -1
- package/lib/components/Footer/SocialMedia.d.ts +1 -1
- package/lib/components/Footer/SocialMedia.mobile.d.ts +1 -1
- package/lib/components/Gallery/Gallery.mobile.js +1 -1
- package/lib/components/Gallery/Gallery.mobile.js.map +1 -1
- package/lib/components/Gallery/GalleryInner.d.ts +1 -1
- package/lib/components/Gallery/GalleryProps.d.ts +1 -1
- package/lib/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/lib/components/GracePeriod/GracePeriod.js +4 -3
- package/lib/components/GracePeriod/GracePeriod.js.map +1 -1
- package/lib/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/lib/components/Header/DropdownMenu.d.ts +1 -1
- package/lib/components/Header/DropdownMenu.js.map +1 -1
- package/lib/components/Header/Header.d.ts +1 -1
- package/lib/components/Header/Header.js.map +1 -1
- package/lib/components/Header/Header.mobile.d.ts +1 -1
- package/lib/components/Header/Header.mobile.js +1 -1
- package/lib/components/Header/Header.mobile.js.map +1 -1
- package/lib/components/Headline/Headline.d.ts +1 -1
- package/lib/components/Headline/Headline.mobile.d.ts +1 -1
- package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
- package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/lib/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/lib/components/LikeControl/LikeControl.d.ts +1 -1
- package/lib/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/lib/components/LinkDocs/LinkDocs.mobile.d.ts +1 -1
- package/lib/components/LinkList/LinkList.d.ts +1 -1
- package/lib/components/LinkList/LinkList.js.map +1 -1
- package/lib/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/lib/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/lib/components/MobileAppTile/MobileAppTile.mobile.d.ts +1 -1
- package/lib/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/lib/components/OfficeMap/OfficeMap.fixture.d.ts +5 -0
- package/lib/components/OfficeMap/OfficeMap.js +43 -0
- package/lib/components/OfficeMap/OfficeMap.js.map +1 -0
- package/lib/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/lib/components/OfficeMap/OfficeMapContent.js +2 -0
- package/lib/components/OfficeMap/OfficeMapContent.js.map +1 -0
- package/lib/components/OfficeMap/YandexMap.d.ts +5 -0
- package/lib/components/OfficeMap/YandexMap.js +28 -0
- package/lib/components/OfficeMap/YandexMap.js.map +1 -0
- package/lib/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/lib/components/OfficeMap/mockOfficeMap.js +80 -0
- package/lib/components/OfficeMap/mockOfficeMap.js.map +1 -0
- package/lib/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/lib/components/OfficeMap/renderFunctions.js +14 -0
- package/lib/components/OfficeMap/renderFunctions.js.map +1 -0
- package/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
- package/lib/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/lib/components/OtherProducts/OtherProducts.fixture.d.ts +1 -0
- package/lib/components/OtherProducts/OtherProducts.js +2 -4
- package/lib/components/OtherProducts/OtherProducts.js.map +1 -1
- package/lib/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/lib/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/lib/components/OtherProductsItem/OtherProductsItem.fixture.d.ts +5 -0
- package/lib/components/OtherProductsItem/OtherProductsItem.js +13 -0
- package/lib/components/OtherProductsItem/OtherProductsItem.js.map +1 -0
- package/lib/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/lib/components/OtherProductsItem/OtherProductsItemContent.js +2 -0
- package/lib/components/OtherProductsItem/OtherProductsItemContent.js.map +1 -0
- package/lib/components/PictureText/PictureText.d.ts +1 -1
- package/lib/components/Placeholder/Placeholder.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlock.mobile.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlockInner.js +4 -1
- package/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
- package/lib/components/ProductBlock/ProductBlockInner.mobile.d.ts +1 -1
- package/lib/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
- package/lib/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/lib/components/ProductGallery/ProductGallery.js +1 -1
- package/lib/components/ProductGallery/ProductGallery.js.map +1 -1
- package/lib/components/ProductGallery/ProductGallery.mobile.d.ts +1 -1
- package/lib/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/lib/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/lib/components/ProductTile/ProductTile.d.ts +1 -1
- package/lib/components/ProductTile/ProductTile.js.map +1 -1
- package/lib/components/PromoTile/PromoTile.d.ts +1 -1
- package/lib/components/Recommendation/Recommendation.d.ts +1 -1
- package/lib/components/Recommendation/Recommendation.js +2 -2
- package/lib/components/Recommendation/Recommendation.js.map +1 -1
- package/lib/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/lib/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
- package/lib/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/lib/components/StepsBlock/StepsBlock.js +1 -1
- package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
- package/lib/components/StepsBlock/StepsBlock.mobile.d.ts +1 -1
- package/lib/components/StepsBlock/StepsBlock.mobile.js.map +1 -1
- package/lib/components/Tabs/Tabs.d.ts +1 -1
- package/lib/components/Tabs/renderGroupTab.js +4 -4
- package/lib/components/Tabs/renderGroupTab.js.map +1 -1
- package/lib/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/lib/components/TariffsTable/TariffsTable.mobile.d.ts +1 -1
- package/lib/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
- package/lib/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/lib/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/lib/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
- package/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
- package/lib/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/lib/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/lib/components/TariffsTable/TariffsTableTileCell.js +2 -2
- package/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
- package/lib/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
- package/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
- package/lib/components/TextBlock/TextBlock.d.ts +1 -1
- package/lib/components/TextBlock/TextBlock.mobile.d.ts +1 -1
- package/lib/components/Tile/Tile.d.ts +1 -1
- package/lib/components/Tile/Tile.js +2 -2
- package/lib/components/Tile/Tile.js.map +1 -1
- package/lib/hooks/useOfficeMap.d.ts +3 -0
- package/lib/hooks/useOfficeMap.js +16 -0
- package/lib/hooks/useOfficeMap.js.map +1 -0
- package/lib/icons/IconName.d.ts +4 -2
- package/lib/icons/IconName.js +2 -0
- package/lib/icons/IconName.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/model/BlocksRegistry.d.ts +1 -7
- package/lib/model/ContentPageDef.d.ts +0 -8
- package/lib/model/JSXBlock.d.ts +17 -0
- package/lib/model/JSXBlock.js +2 -0
- package/lib/model/JSXBlock.js.map +1 -0
- package/lib/model/getParentBlockContent.d.ts +2 -0
- package/lib/model/getParentBlockContent.js +6 -0
- package/lib/model/getParentBlockContent.js.map +1 -0
- package/lib/model/getParentBlockDef.d.ts +3 -0
- package/lib/model/getParentBlockDef.js +5 -0
- package/lib/model/getParentBlockDef.js.map +1 -0
- package/lib/ui-kit/BenefitItem/BenefitItem.js +2 -2
- package/lib/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
- package/lib/ui-kit/BlockWrapper.d.ts +1 -1
- package/lib/ui-kit/BlockWrapper.js +3 -1
- package/lib/ui-kit/BlockWrapper.js.map +1 -1
- package/lib/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/lib/ui-kit/Foldable/FoldableSection.js +1 -1
- package/lib/ui-kit/Foldable/FoldableSection.js.map +1 -1
- package/lib/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/lib/ui-kit/Img/getIconVersion.js +1 -1
- package/lib/ui-kit/Img/getIconVersion.js.map +1 -1
- package/lib/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/lib/ui-kit/InputRange/InputRange.js.map +1 -1
- package/lib/ui-kit/Logo/Logo.js.map +1 -1
- package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/lib/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/lib/ui-kit/SearchBar/SearchBar.mobile.d.ts +1 -1
- package/lib/ui-kit/Select/Select.js +2 -2
- package/lib/ui-kit/Select/Select.js.map +1 -1
- package/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
- package/lib/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/mobile/bundle/bundle.umd.js +539 -547
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/Accordion/Accordion.d.ts +2 -2
- package/mobile/bundle/components/Accordion/AccordionContent.d.ts +0 -26
- package/mobile/bundle/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/mobile/bundle/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/mobile/bundle/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/mobile/bundle/components/BaseTile/BaseTile.d.ts +1 -1
- package/mobile/bundle/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/mobile/bundle/components/Blocks.d.ts +2 -1
- package/mobile/bundle/components/Bonus/Bonus.d.ts +1 -1
- package/mobile/bundle/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/mobile/bundle/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/mobile/bundle/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/mobile/bundle/components/Calculator/Calculator.d.ts +1 -1
- package/mobile/bundle/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/mobile/bundle/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/mobile/bundle/components/Calculator/renderButtonSection.d.ts +3 -1
- package/mobile/bundle/components/Calculator/renderFootnote.d.ts +1 -1
- package/mobile/bundle/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/mobile/bundle/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/mobile/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/mobile/bundle/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/mobile/bundle/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/mobile/bundle/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/mobile/bundle/components/Catalog/Catalog.d.ts +1 -1
- package/mobile/bundle/components/Catalog/CatalogCard.d.ts +1 -1
- package/mobile/bundle/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/mobile/bundle/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/mobile/bundle/components/ContentPage/ContentPage.d.ts +2 -1
- package/mobile/bundle/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/mobile/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/mobile/bundle/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/mobile/bundle/components/Footer/Contacts.d.ts +1 -1
- package/mobile/bundle/components/Footer/Footer.d.ts +1 -1
- package/mobile/bundle/components/Footer/FooterLink.d.ts +1 -1
- package/mobile/bundle/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/mobile/bundle/components/Footer/Sitemap.d.ts +2 -2
- package/mobile/bundle/components/Footer/SocialMedia.d.ts +1 -1
- package/mobile/bundle/components/Gallery/GalleryInner.d.ts +1 -1
- package/mobile/bundle/components/Gallery/GalleryProps.d.ts +1 -1
- package/mobile/bundle/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/mobile/bundle/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/mobile/bundle/components/Header/DropdownMenu.d.ts +1 -1
- package/mobile/bundle/components/Header/Header.d.ts +1 -1
- package/mobile/bundle/components/Headline/Headline.d.ts +1 -1
- package/mobile/bundle/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/mobile/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/mobile/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/mobile/bundle/components/LikeControl/LikeControl.d.ts +1 -1
- package/mobile/bundle/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/mobile/bundle/components/LinkList/LinkList.d.ts +1 -1
- package/mobile/bundle/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/mobile/bundle/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/mobile/bundle/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/mobile/bundle/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/mobile/bundle/components/OfficeMap/YandexMap.d.ts +5 -0
- package/mobile/bundle/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/mobile/bundle/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/mobile/bundle/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/mobile/bundle/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/mobile/bundle/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/mobile/bundle/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/mobile/bundle/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/mobile/bundle/components/PictureText/PictureText.d.ts +1 -1
- package/mobile/bundle/components/Placeholder/Placeholder.d.ts +1 -1
- package/mobile/bundle/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/mobile/bundle/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/mobile/bundle/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/mobile/bundle/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/mobile/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/mobile/bundle/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/mobile/bundle/components/ProductTile/ProductTile.d.ts +1 -1
- package/mobile/bundle/components/PromoTile/PromoTile.d.ts +1 -1
- package/mobile/bundle/components/Recommendation/Recommendation.d.ts +1 -1
- package/mobile/bundle/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/mobile/bundle/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/mobile/bundle/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/mobile/bundle/components/Tabs/Tabs.d.ts +1 -1
- package/mobile/bundle/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/mobile/bundle/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/mobile/bundle/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/mobile/bundle/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/mobile/bundle/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/mobile/bundle/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/mobile/bundle/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/mobile/bundle/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/mobile/bundle/components/TextBlock/TextBlock.d.ts +1 -1
- package/mobile/bundle/components/Tile/Tile.d.ts +1 -1
- package/mobile/bundle/hooks/useOfficeMap.d.ts +3 -0
- package/mobile/bundle/icons/IconName.d.ts +4 -2
- package/mobile/bundle/index.d.ts +1 -0
- package/mobile/bundle/model/BlocksRegistry.d.ts +1 -7
- package/mobile/bundle/model/ContentPageDef.d.ts +0 -8
- package/mobile/bundle/model/JSXBlock.d.ts +17 -0
- package/mobile/bundle/model/getParentBlockContent.d.ts +2 -0
- package/mobile/bundle/model/getParentBlockDef.d.ts +3 -0
- package/mobile/bundle/ui-kit/BlockWrapper.d.ts +1 -1
- package/mobile/bundle/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/mobile/bundle/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/mobile/bundle/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/mobile/bundle/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/mobile/bundle/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/mobile/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/mobile/bundle/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/mobile/bundle/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/mobile/bundle/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/mobile/bundle/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/mobile/dist/components/Accordion/Accordion.d.ts +2 -2
- package/mobile/dist/components/Accordion/Accordion.js +2 -5
- package/mobile/dist/components/Accordion/Accordion.js.map +1 -1
- package/mobile/dist/components/Accordion/AccordionContent.d.ts +0 -26
- package/mobile/dist/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/mobile/dist/components/AccordionItem/AccordionItem.js +16 -0
- package/mobile/dist/components/AccordionItem/AccordionItem.js.map +1 -0
- package/mobile/dist/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/mobile/dist/components/AccordionItem/AccordionItemContent.js +2 -0
- package/mobile/dist/components/AccordionItem/AccordionItemContent.js.map +1 -0
- package/mobile/dist/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/mobile/dist/components/{Accordion → AccordionItem}/AccordionItemProps.js +0 -0
- package/mobile/dist/components/AccordionItem/AccordionItemProps.js.map +1 -0
- package/mobile/dist/components/BaseTile/BaseTile.d.ts +1 -1
- package/mobile/dist/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/mobile/dist/components/Blocks.d.ts +2 -1
- package/mobile/dist/components/Blocks.js +2 -0
- package/mobile/dist/components/Blocks.js.map +1 -1
- package/mobile/dist/components/Bonus/Bonus.d.ts +1 -1
- package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +2 -2
- package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
- package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/mobile/dist/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/mobile/dist/components/Calculator/Calculator.d.ts +1 -1
- package/mobile/dist/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/mobile/dist/components/Calculator/CreditCalculatorForm.js +2 -1
- package/mobile/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
- package/mobile/dist/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/mobile/dist/components/Calculator/DepositCalculatorForm.js +2 -1
- package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/mobile/dist/components/Calculator/renderButtonSection.d.ts +3 -1
- package/mobile/dist/components/Calculator/renderButtonSection.js.map +1 -1
- package/mobile/dist/components/Calculator/renderFootnote.d.ts +1 -1
- package/mobile/dist/components/Calculator/renderFootnote.js.map +1 -1
- package/mobile/dist/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/mobile/dist/components/Calculator/renderInitialFeeInput.js +1 -1
- package/mobile/dist/components/Calculator/renderInitialFeeInput.js.map +1 -1
- package/mobile/dist/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/mobile/dist/components/Calculator/renderMonthsInput.js.map +1 -1
- package/mobile/dist/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js +2 -2
- package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js.map +1 -1
- package/mobile/dist/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/mobile/dist/components/Calculator/renderRealEstateValue.js +1 -1
- package/mobile/dist/components/Calculator/renderRealEstateValue.js.map +1 -1
- package/mobile/dist/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/mobile/dist/components/Calculator/renderWantedSumInput.js.map +1 -1
- package/mobile/dist/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/mobile/dist/components/CardTransfer/CardTransfer.js +3 -3
- package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
- package/mobile/dist/components/Catalog/Catalog.d.ts +1 -1
- package/mobile/dist/components/Catalog/CatalogCard.d.ts +1 -1
- package/mobile/dist/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/mobile/dist/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/mobile/dist/components/ContentPage/ContentPage.d.ts +2 -1
- package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
- package/mobile/dist/components/ContentPage/renderBlock.js +7 -6
- package/mobile/dist/components/ContentPage/renderBlock.js.map +1 -1
- package/mobile/dist/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +1 -1
- package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
- package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js +1 -2
- package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
- package/mobile/dist/components/Footer/Contacts.d.ts +1 -1
- package/mobile/dist/components/Footer/Footer.d.ts +1 -1
- package/mobile/dist/components/Footer/Footer.js +1 -1
- package/mobile/dist/components/Footer/Footer.js.map +1 -1
- package/mobile/dist/components/Footer/FooterLink.d.ts +1 -1
- package/mobile/dist/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/mobile/dist/components/Footer/Sitemap.d.ts +2 -2
- package/mobile/dist/components/Footer/Sitemap.js +3 -3
- package/mobile/dist/components/Footer/Sitemap.js.map +1 -1
- package/mobile/dist/components/Footer/SocialMedia.d.ts +1 -1
- package/mobile/dist/components/Gallery/Gallery.js +1 -1
- package/mobile/dist/components/Gallery/Gallery.js.map +1 -1
- package/mobile/dist/components/Gallery/GalleryInner.d.ts +1 -1
- package/mobile/dist/components/Gallery/GalleryProps.d.ts +1 -1
- package/mobile/dist/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/mobile/dist/components/GracePeriod/GracePeriod.js +4 -3
- package/mobile/dist/components/GracePeriod/GracePeriod.js.map +1 -1
- package/mobile/dist/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/mobile/dist/components/Header/DropdownMenu.d.ts +1 -1
- package/mobile/dist/components/Header/DropdownMenu.js.map +1 -1
- package/mobile/dist/components/Header/Header.d.ts +1 -1
- package/mobile/dist/components/Header/Header.js +1 -1
- package/mobile/dist/components/Header/Header.js.map +1 -1
- package/mobile/dist/components/Headline/Headline.d.ts +1 -1
- package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
- package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/mobile/dist/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/mobile/dist/components/LikeControl/LikeControl.d.ts +1 -1
- package/mobile/dist/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/mobile/dist/components/LinkList/LinkList.d.ts +1 -1
- package/mobile/dist/components/LinkList/LinkList.js.map +1 -1
- package/mobile/dist/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/mobile/dist/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/mobile/dist/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/mobile/dist/components/OfficeMap/OfficeMap.js +45 -0
- package/mobile/dist/components/OfficeMap/OfficeMap.js.map +1 -0
- package/mobile/dist/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/mobile/dist/components/OfficeMap/OfficeMapContent.js +2 -0
- package/mobile/dist/components/OfficeMap/OfficeMapContent.js.map +1 -0
- package/mobile/dist/components/OfficeMap/YandexMap.d.ts +5 -0
- package/mobile/dist/components/OfficeMap/YandexMap.js +30 -0
- package/mobile/dist/components/OfficeMap/YandexMap.js.map +1 -0
- package/mobile/dist/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/mobile/dist/components/OfficeMap/mockOfficeMap.js +82 -0
- package/mobile/dist/components/OfficeMap/mockOfficeMap.js.map +1 -0
- package/mobile/dist/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/mobile/dist/components/OfficeMap/renderFunctions.js +19 -0
- package/mobile/dist/components/OfficeMap/renderFunctions.js.map +1 -0
- package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
- package/mobile/dist/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/mobile/dist/components/OtherProducts/OtherProducts.js +2 -4
- package/mobile/dist/components/OtherProducts/OtherProducts.js.map +1 -1
- package/mobile/dist/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/mobile/dist/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/mobile/dist/components/OtherProductsItem/OtherProductsItem.js +15 -0
- package/mobile/dist/components/OtherProductsItem/OtherProductsItem.js.map +1 -0
- package/mobile/dist/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/mobile/dist/components/OtherProductsItem/OtherProductsItemContent.js +2 -0
- package/mobile/dist/components/OtherProductsItem/OtherProductsItemContent.js.map +1 -0
- package/mobile/dist/components/PictureText/PictureText.d.ts +1 -1
- package/mobile/dist/components/Placeholder/Placeholder.d.ts +1 -1
- package/mobile/dist/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/mobile/dist/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/mobile/dist/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/mobile/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
- package/mobile/dist/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/mobile/dist/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/mobile/dist/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/mobile/dist/components/ProductTile/ProductTile.d.ts +1 -1
- package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
- package/mobile/dist/components/PromoTile/PromoTile.d.ts +1 -1
- package/mobile/dist/components/Recommendation/Recommendation.d.ts +1 -1
- package/mobile/dist/components/Recommendation/Recommendation.js +2 -2
- package/mobile/dist/components/Recommendation/Recommendation.js.map +1 -1
- package/mobile/dist/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/mobile/dist/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
- package/mobile/dist/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/mobile/dist/components/StepsBlock/StepsBlock.js.map +1 -1
- package/mobile/dist/components/Tabs/Tabs.d.ts +1 -1
- package/mobile/dist/components/Tabs/renderGroupTab.js +4 -4
- package/mobile/dist/components/Tabs/renderGroupTab.js.map +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTable.js.map +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js +2 -2
- package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/mobile/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
- package/mobile/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
- package/mobile/dist/components/TextBlock/TextBlock.d.ts +1 -1
- package/mobile/dist/components/Tile/Tile.d.ts +1 -1
- package/mobile/dist/components/Tile/Tile.js +2 -2
- package/mobile/dist/components/Tile/Tile.js.map +1 -1
- package/mobile/dist/hooks/useOfficeMap.d.ts +3 -0
- package/mobile/dist/hooks/useOfficeMap.js +19 -0
- package/mobile/dist/hooks/useOfficeMap.js.map +1 -0
- package/mobile/dist/icons/IconName.d.ts +4 -2
- package/mobile/dist/icons/IconName.js +2 -0
- package/mobile/dist/icons/IconName.js.map +1 -1
- package/mobile/dist/index.d.ts +1 -0
- package/mobile/dist/index.js +2 -1
- package/mobile/dist/index.js.map +1 -1
- package/mobile/dist/model/BlocksRegistry.d.ts +1 -7
- package/mobile/dist/model/ContentPageDef.d.ts +0 -8
- package/mobile/dist/model/JSXBlock.d.ts +17 -0
- package/mobile/dist/{ui-kit/BlocksList/BlocksListProps.js → model/JSXBlock.js} +1 -1
- package/mobile/dist/model/JSXBlock.js.map +1 -0
- package/mobile/dist/model/getParentBlockContent.d.ts +2 -0
- package/mobile/dist/model/getParentBlockContent.js +9 -0
- package/mobile/dist/model/getParentBlockContent.js.map +1 -0
- package/mobile/dist/model/getParentBlockDef.d.ts +3 -0
- package/mobile/dist/model/getParentBlockDef.js +8 -0
- package/mobile/dist/model/getParentBlockDef.js.map +1 -0
- package/mobile/dist/ui-kit/BenefitItem/BenefitItem.js +2 -2
- package/mobile/dist/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
- package/mobile/dist/ui-kit/BlockWrapper.d.ts +1 -1
- package/mobile/dist/ui-kit/BlockWrapper.js +3 -1
- package/mobile/dist/ui-kit/BlockWrapper.js.map +1 -1
- package/mobile/dist/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/mobile/dist/ui-kit/Foldable/FoldableSection.js +1 -1
- package/mobile/dist/ui-kit/Foldable/FoldableSection.js.map +1 -1
- package/mobile/dist/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/mobile/dist/ui-kit/Img/getIconVersion.js +1 -1
- package/mobile/dist/ui-kit/Img/getIconVersion.js.map +1 -1
- package/mobile/dist/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/mobile/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/mobile/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/mobile/dist/ui-kit/InputRange/InputRange.js.map +1 -1
- package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/mobile/dist/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/mobile/dist/ui-kit/Select/Select.js +1 -1
- package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/mobile/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/mobile/lib/components/Accordion/Accordion.d.ts +2 -2
- package/mobile/lib/components/Accordion/Accordion.js +2 -5
- package/mobile/lib/components/Accordion/Accordion.js.map +1 -1
- package/mobile/lib/components/Accordion/AccordionContent.d.ts +0 -26
- package/mobile/lib/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/mobile/lib/components/AccordionItem/AccordionItem.js +14 -0
- package/mobile/lib/components/AccordionItem/AccordionItem.js.map +1 -0
- package/mobile/lib/components/AccordionItem/AccordionItemContent.d.ts +14 -0
- package/mobile/lib/components/AccordionItem/AccordionItemContent.js +2 -0
- package/mobile/lib/components/AccordionItem/AccordionItemContent.js.map +1 -0
- package/mobile/lib/components/AccordionItem/AccordionItemProps.d.ts +4 -0
- package/mobile/lib/components/{Accordion → AccordionItem}/AccordionItemProps.js +0 -0
- package/mobile/lib/components/AccordionItem/AccordionItemProps.js.map +1 -0
- package/mobile/lib/components/BaseTile/BaseTile.d.ts +1 -1
- package/mobile/lib/components/BenefitsBlock/BenefitsBlock.d.ts +1 -1
- package/mobile/lib/components/Blocks.d.ts +2 -1
- package/mobile/lib/components/Blocks.js +2 -0
- package/mobile/lib/components/Blocks.js.map +1 -1
- package/mobile/lib/components/Bonus/Bonus.d.ts +1 -1
- package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.d.ts +1 -1
- package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +2 -2
- package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
- package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlockContent.d.ts +10 -1
- package/mobile/lib/components/Calculator/BonusCalculatorForm.d.ts +1 -1
- package/mobile/lib/components/Calculator/Calculator.d.ts +1 -1
- package/mobile/lib/components/Calculator/CreditCalculatorForm.d.ts +1 -1
- package/mobile/lib/components/Calculator/CreditCalculatorForm.js +2 -1
- package/mobile/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
- package/mobile/lib/components/Calculator/DepositCalculatorForm.d.ts +1 -1
- package/mobile/lib/components/Calculator/DepositCalculatorForm.js +2 -1
- package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
- package/mobile/lib/components/Calculator/renderButtonSection.d.ts +3 -1
- package/mobile/lib/components/Calculator/renderButtonSection.js.map +1 -1
- package/mobile/lib/components/Calculator/renderFootnote.d.ts +1 -1
- package/mobile/lib/components/Calculator/renderFootnote.js.map +1 -1
- package/mobile/lib/components/Calculator/renderInitialFeeInput.d.ts +1 -1
- package/mobile/lib/components/Calculator/renderInitialFeeInput.js +1 -1
- package/mobile/lib/components/Calculator/renderInitialFeeInput.js.map +1 -1
- package/mobile/lib/components/Calculator/renderMonthsInput.d.ts +1 -1
- package/mobile/lib/components/Calculator/renderMonthsInput.js.map +1 -1
- package/mobile/lib/components/Calculator/renderPaymentTypeSelector.d.ts +10 -5
- package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js +2 -2
- package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js.map +1 -1
- package/mobile/lib/components/Calculator/renderRealEstateValue.d.ts +1 -1
- package/mobile/lib/components/Calculator/renderRealEstateValue.js +1 -1
- package/mobile/lib/components/Calculator/renderRealEstateValue.js.map +1 -1
- package/mobile/lib/components/Calculator/renderWantedSumInput.d.ts +1 -1
- package/mobile/lib/components/Calculator/renderWantedSumInput.js.map +1 -1
- package/mobile/lib/components/CardTransfer/CardTransfer.d.ts +1 -1
- package/mobile/lib/components/CardTransfer/CardTransfer.js +3 -3
- package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
- package/mobile/lib/components/Catalog/Catalog.d.ts +1 -1
- package/mobile/lib/components/Catalog/CatalogCard.d.ts +1 -1
- package/mobile/lib/components/ComparisonTable/ComparisonTable.d.ts +1 -1
- package/mobile/lib/components/ComparisonTable/TableColumn.d.ts +1 -1
- package/mobile/lib/components/ContentPage/ContentPage.d.ts +2 -1
- package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
- package/mobile/lib/components/ContentPage/renderBlock.js +7 -6
- package/mobile/lib/components/ContentPage/renderBlock.js.map +1 -1
- package/mobile/lib/components/ErrorBlock/ErrorBlock.d.ts +1 -1
- package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +2 -2
- package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +1 -1
- package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
- package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.d.ts +1 -1
- package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js +1 -2
- package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
- package/mobile/lib/components/Footer/Contacts.d.ts +1 -1
- package/mobile/lib/components/Footer/Footer.d.ts +1 -1
- package/mobile/lib/components/Footer/Footer.js +1 -1
- package/mobile/lib/components/Footer/Footer.js.map +1 -1
- package/mobile/lib/components/Footer/FooterLink.d.ts +1 -1
- package/mobile/lib/components/Footer/HorizontalNavigation.d.ts +1 -1
- package/mobile/lib/components/Footer/Sitemap.d.ts +2 -2
- package/mobile/lib/components/Footer/Sitemap.js +3 -3
- package/mobile/lib/components/Footer/Sitemap.js.map +1 -1
- package/mobile/lib/components/Footer/SocialMedia.d.ts +1 -1
- package/mobile/lib/components/Gallery/Gallery.js +1 -1
- package/mobile/lib/components/Gallery/Gallery.js.map +1 -1
- package/mobile/lib/components/Gallery/GalleryInner.d.ts +1 -1
- package/mobile/lib/components/Gallery/GalleryProps.d.ts +1 -1
- package/mobile/lib/components/GracePeriod/GracePeriod.d.ts +1 -1
- package/mobile/lib/components/GracePeriod/GracePeriod.js +4 -3
- package/mobile/lib/components/GracePeriod/GracePeriod.js.map +1 -1
- package/mobile/lib/components/GracePeriod/GracePeriodContent.d.ts +3 -3
- package/mobile/lib/components/Header/DropdownMenu.d.ts +1 -1
- package/mobile/lib/components/Header/DropdownMenu.js.map +1 -1
- package/mobile/lib/components/Header/Header.d.ts +1 -1
- package/mobile/lib/components/Header/Header.js +1 -1
- package/mobile/lib/components/Header/Header.js.map +1 -1
- package/mobile/lib/components/Headline/Headline.d.ts +1 -1
- package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.d.ts +1 -1
- package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
- package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +1 -1
- package/mobile/lib/components/InvestmentInfo/InvestmentInfo.d.ts +1 -1
- package/mobile/lib/components/LikeControl/LikeControl.d.ts +1 -1
- package/mobile/lib/components/LinkDocs/LinkDocs.d.ts +1 -1
- package/mobile/lib/components/LinkList/LinkList.d.ts +1 -1
- package/mobile/lib/components/LinkList/LinkList.js.map +1 -1
- package/mobile/lib/components/MiniGallery/MiniGallery.d.ts +1 -1
- package/mobile/lib/components/MobileAppTile/MobileAppTile.d.ts +1 -1
- package/mobile/lib/components/OfficeMap/OfficeMap.d.ts +2 -0
- package/mobile/lib/components/OfficeMap/OfficeMap.js +43 -0
- package/mobile/lib/components/OfficeMap/OfficeMap.js.map +1 -0
- package/mobile/lib/components/OfficeMap/OfficeMapContent.d.ts +34 -0
- package/mobile/lib/components/OfficeMap/OfficeMapContent.js +2 -0
- package/mobile/lib/components/OfficeMap/OfficeMapContent.js.map +1 -0
- package/mobile/lib/components/OfficeMap/YandexMap.d.ts +5 -0
- package/mobile/lib/components/OfficeMap/YandexMap.js +28 -0
- package/mobile/lib/components/OfficeMap/YandexMap.js.map +1 -0
- package/mobile/lib/components/OfficeMap/mockOfficeMap.d.ts +57 -0
- package/mobile/lib/components/OfficeMap/mockOfficeMap.js +80 -0
- package/mobile/lib/components/OfficeMap/mockOfficeMap.js.map +1 -0
- package/mobile/lib/components/OfficeMap/renderFunctions.d.ts +5 -0
- package/mobile/lib/components/OfficeMap/renderFunctions.js +14 -0
- package/mobile/lib/components/OfficeMap/renderFunctions.js.map +1 -0
- package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +1 -1
- package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
- package/mobile/lib/components/OtherProducts/OtherProducts.d.ts +2 -2
- package/mobile/lib/components/OtherProducts/OtherProducts.js +2 -4
- package/mobile/lib/components/OtherProducts/OtherProducts.js.map +1 -1
- package/mobile/lib/components/OtherProducts/OtherProductsContent.d.ts +2 -19
- package/mobile/lib/components/OtherProductsItem/OtherProductsItem.d.ts +5 -0
- package/mobile/lib/components/OtherProductsItem/OtherProductsItem.js +13 -0
- package/mobile/lib/components/OtherProductsItem/OtherProductsItem.js.map +1 -0
- package/mobile/lib/components/OtherProductsItem/OtherProductsItemContent.d.ts +12 -0
- package/mobile/lib/components/OtherProductsItem/OtherProductsItemContent.js +2 -0
- package/mobile/lib/components/OtherProductsItem/OtherProductsItemContent.js.map +1 -0
- package/mobile/lib/components/PictureText/PictureText.d.ts +1 -1
- package/mobile/lib/components/Placeholder/Placeholder.d.ts +1 -1
- package/mobile/lib/components/ProductBlock/ProductBlock.d.ts +1 -1
- package/mobile/lib/components/ProductBlock/ProductBlockContent.d.ts +1 -1
- package/mobile/lib/components/ProductBlock/ProductBlockInner.d.ts +1 -1
- package/mobile/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
- package/mobile/lib/components/ProductGallery/ProductGallery.d.ts +1 -1
- package/mobile/lib/components/ProductGallery/ProductGalleryBlock.d.ts +1 -1
- package/mobile/lib/components/ProductGallery/ProductGalleryContent.d.ts +2 -3
- package/mobile/lib/components/ProductTile/ProductTile.d.ts +1 -1
- package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
- package/mobile/lib/components/PromoTile/PromoTile.d.ts +1 -1
- package/mobile/lib/components/Recommendation/Recommendation.d.ts +1 -1
- package/mobile/lib/components/Recommendation/Recommendation.js +2 -2
- package/mobile/lib/components/Recommendation/Recommendation.js.map +1 -1
- package/mobile/lib/components/Recommendation/RecommendationCard.d.ts +1 -1
- package/mobile/lib/components/SafeDepositRental/SafeDepositRental.d.ts +1 -1
- package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
- package/mobile/lib/components/StepsBlock/StepsBlock.d.ts +1 -1
- package/mobile/lib/components/StepsBlock/StepsBlock.js.map +1 -1
- package/mobile/lib/components/Tabs/Tabs.d.ts +1 -1
- package/mobile/lib/components/Tabs/renderGroupTab.js +4 -4
- package/mobile/lib/components/Tabs/renderGroupTab.js.map +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTable.d.ts +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTable.js.map +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableCell.d.ts +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableContent.d.ts +14 -0
- package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.d.ts +2 -6
- package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableRow.d.ts +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableTileCell.d.ts +2 -3
- package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js +2 -2
- package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableVertical.d.ts +2 -6
- package/mobile/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
- package/mobile/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
- package/mobile/lib/components/TextBlock/TextBlock.d.ts +1 -1
- package/mobile/lib/components/Tile/Tile.d.ts +1 -1
- package/mobile/lib/components/Tile/Tile.js +2 -2
- package/mobile/lib/components/Tile/Tile.js.map +1 -1
- package/mobile/lib/hooks/useOfficeMap.d.ts +3 -0
- package/mobile/lib/hooks/useOfficeMap.js +16 -0
- package/mobile/lib/hooks/useOfficeMap.js.map +1 -0
- package/mobile/lib/icons/IconName.d.ts +4 -2
- package/mobile/lib/icons/IconName.js +2 -0
- package/mobile/lib/icons/IconName.js.map +1 -1
- package/mobile/lib/index.d.ts +1 -0
- package/mobile/lib/index.js +1 -0
- package/mobile/lib/index.js.map +1 -1
- package/mobile/lib/model/BlocksRegistry.d.ts +1 -7
- package/mobile/lib/model/ContentPageDef.d.ts +0 -8
- package/mobile/lib/model/JSXBlock.d.ts +17 -0
- package/mobile/lib/model/JSXBlock.js +2 -0
- package/mobile/lib/model/JSXBlock.js.map +1 -0
- package/mobile/lib/model/getParentBlockContent.d.ts +2 -0
- package/mobile/lib/model/getParentBlockContent.js +6 -0
- package/mobile/lib/model/getParentBlockContent.js.map +1 -0
- package/mobile/lib/model/getParentBlockDef.d.ts +3 -0
- package/mobile/lib/model/getParentBlockDef.js +5 -0
- package/mobile/lib/model/getParentBlockDef.js.map +1 -0
- package/mobile/lib/ui-kit/BenefitItem/BenefitItem.js +2 -2
- package/mobile/lib/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
- package/mobile/lib/ui-kit/BlockWrapper.d.ts +1 -1
- package/mobile/lib/ui-kit/BlockWrapper.js +3 -1
- package/mobile/lib/ui-kit/BlockWrapper.js.map +1 -1
- package/mobile/lib/ui-kit/Button/ButtonSection.d.ts +1 -1
- package/mobile/lib/ui-kit/Foldable/FoldableSection.js +1 -1
- package/mobile/lib/ui-kit/Foldable/FoldableSection.js.map +1 -1
- package/mobile/lib/ui-kit/Img/getIconVersion.d.ts +2 -1
- package/mobile/lib/ui-kit/Img/getIconVersion.js +1 -1
- package/mobile/lib/ui-kit/Img/getIconVersion.js.map +1 -1
- package/mobile/lib/ui-kit/InnerTable/InnerTable.d.ts +1 -1
- package/mobile/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -1
- package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -1
- package/mobile/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -1
- package/mobile/lib/ui-kit/InputRange/InputRange.js.map +1 -1
- package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +2 -2
- package/mobile/lib/ui-kit/SearchBar/SearchBar.d.ts +1 -1
- package/mobile/lib/ui-kit/Select/Select.js +2 -2
- package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListControlList.d.ts +2 -1
- package/mobile/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +1 -1
- package/mobile/src/components/Accordion/Accordion.example.json +1 -63
- package/mobile/src/components/Accordion/Accordion.tsx +15 -31
- package/mobile/src/components/Accordion/Accordion.ui.json +1 -79
- package/mobile/src/components/Accordion/AccordionContent.ts +2 -28
- package/mobile/src/components/AccordionItem/AccordionItem.example.json +7 -0
- package/mobile/src/components/AccordionItem/AccordionItem.tsx +73 -0
- package/mobile/src/components/AccordionItem/AccordionItem.ui.json +7 -0
- package/mobile/src/components/AccordionItem/AccordionItemContent.ts +15 -0
- package/mobile/src/components/AccordionItem/AccordionItemProps.ts +4 -0
- package/mobile/src/components/BaseTile/BaseTile.tsx +1 -1
- package/mobile/src/components/BenefitsBlock/BenefitsBlock.tsx +1 -1
- package/mobile/src/components/Blocks.ts +2 -0
- package/mobile/src/components/Bonus/Bonus.tsx +1 -1
- package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +11 -5
- package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.ui.json +5 -0
- package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlockContent.ts +10 -1
- package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +1 -1
- package/mobile/src/components/Calculator/Calculator.tsx +1 -1
- package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +3 -2
- package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +3 -2
- package/mobile/src/components/Calculator/renderButtonSection.tsx +3 -1
- package/mobile/src/components/Calculator/renderCalculatorBlock.tsx +1 -1
- package/mobile/src/components/Calculator/renderFootnote.tsx +1 -1
- package/mobile/src/components/Calculator/renderInitialFeeInput.tsx +5 -1
- package/mobile/src/components/Calculator/renderMonthsInput.tsx +6 -2
- package/mobile/src/components/Calculator/renderPaymentTypeSelector.tsx +11 -9
- package/mobile/src/components/Calculator/renderRealEstateValue.tsx +5 -1
- package/mobile/src/components/Calculator/renderWantedSumInput.tsx +5 -1
- package/mobile/src/components/CardTransfer/CardTransfer.tsx +5 -5
- package/mobile/src/components/Catalog/Catalog.tsx +2 -2
- package/mobile/src/components/Catalog/Catalog.ui.json +11 -1
- package/mobile/src/components/Catalog/CatalogCard.tsx +1 -1
- package/mobile/src/components/ComparisonTable/ComparisonTable.tsx +1 -1
- package/mobile/src/components/ComparisonTable/TableColumn.tsx +1 -1
- package/mobile/src/components/ContentPage/ContentPage.tsx +2 -1
- package/mobile/src/components/ContentPage/renderBlock.tsx +15 -9
- package/mobile/src/components/ErrorBlock/ErrorBlock.tsx +1 -1
- package/mobile/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -3
- package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.tsx +2 -3
- package/mobile/src/components/Footer/Contacts.tsx +1 -1
- package/mobile/src/components/Footer/Footer.tsx +2 -2
- package/mobile/src/components/Footer/FooterLink.ts +1 -1
- package/mobile/src/components/Footer/HorizontalNavigation.tsx +1 -1
- package/mobile/src/components/Footer/Sitemap.tsx +13 -5
- package/mobile/src/components/Footer/SocialMedia.tsx +1 -1
- package/mobile/src/components/Gallery/Gallery.tsx +14 -10
- package/mobile/src/components/Gallery/GalleryInner.tsx +1 -1
- package/mobile/src/components/Gallery/GalleryProps.ts +1 -1
- package/mobile/src/components/GracePeriod/GracePeriod.example.json +7 -7
- package/mobile/src/components/GracePeriod/GracePeriod.tsx +13 -9
- package/mobile/src/components/GracePeriod/GracePeriodContent.ts +3 -3
- package/mobile/src/components/Header/DropdownMenu.tsx +2 -2
- package/mobile/src/components/Header/Header.tsx +2 -2
- package/mobile/src/components/Headline/Headline.tsx +1 -1
- package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +9 -2
- package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlock.ui.json +6 -0
- package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +1 -1
- package/mobile/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -1
- package/mobile/src/components/LikeControl/LikeControl.tsx +1 -1
- package/mobile/src/components/LinkDocs/LinkDocs.tsx +1 -1
- package/mobile/src/components/LinkList/LinkList.tsx +3 -2
- package/mobile/src/components/MiniGallery/MiniGallery.tsx +1 -1
- package/mobile/src/components/MobileAppTile/MobileAppTile.tsx +1 -1
- package/mobile/src/components/OfficeMap/OfficeMap.tsx +80 -0
- package/mobile/src/components/OfficeMap/OfficeMapContent.ts +38 -0
- package/mobile/src/components/OfficeMap/YandexMap.tsx +41 -0
- package/mobile/src/components/OfficeMap/mockOfficeMap.ts +79 -0
- package/mobile/src/components/OfficeMap/renderFunctions.tsx +69 -0
- package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +2 -2
- package/mobile/src/components/OtherProducts/OtherProducts.example.json +1 -54
- package/mobile/src/components/OtherProducts/OtherProducts.tsx +13 -25
- package/mobile/src/components/OtherProducts/OtherProducts.ui.json +1 -76
- package/mobile/src/components/OtherProducts/OtherProductsContent.ts +2 -20
- package/mobile/src/components/OtherProductsItem/OtherProductsItem.example.json +4 -0
- package/mobile/src/components/OtherProductsItem/OtherProductsItem.tsx +47 -0
- package/mobile/src/components/OtherProductsItem/OtherProductsItem.ui.json +1 -0
- package/mobile/src/components/OtherProductsItem/OtherProductsItemContent.ts +13 -0
- package/mobile/src/components/PictureText/PictureText.tsx +1 -1
- package/mobile/src/components/PictureText/PictureText.ui.json +10 -1
- package/mobile/src/components/Placeholder/Placeholder.tsx +1 -1
- package/mobile/src/components/ProductBlock/ProductBlock.tsx +1 -1
- package/mobile/src/components/ProductBlock/ProductBlockContent.ts +1 -1
- package/mobile/src/components/ProductBlock/ProductBlockInner.tsx +3 -2
- package/mobile/src/components/ProductGallery/ProductGallery.tsx +1 -1
- package/mobile/src/components/ProductGallery/ProductGalleryBlock.tsx +1 -1
- package/mobile/src/components/ProductGallery/ProductGalleryContent.ts +2 -2
- package/mobile/src/components/ProductTile/ProductTile.tsx +2 -2
- package/mobile/src/components/PromoTile/PromoTile.tsx +1 -1
- package/mobile/src/components/Recommendation/Recommendation.tsx +6 -6
- package/mobile/src/components/Recommendation/RecommendationCard.tsx +1 -1
- package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +1 -1
- package/mobile/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +1 -1
- package/mobile/src/components/StepsBlock/StepsBlock.tsx +2 -2
- package/mobile/src/components/Tabs/Tabs.tsx +1 -1
- package/mobile/src/components/Tabs/renderGroupTab.tsx +5 -4
- package/mobile/src/components/TariffsTable/TariffsTable.tsx +9 -2
- package/mobile/src/components/TariffsTable/TariffsTableCell.tsx +1 -1
- package/mobile/src/components/TariffsTable/TariffsTableContent.ts +16 -0
- package/mobile/src/components/TariffsTable/TariffsTableHorizontal.tsx +4 -7
- package/mobile/src/components/TariffsTable/TariffsTableRow.tsx +1 -1
- package/mobile/src/components/TariffsTable/TariffsTableRowContainer.tsx +1 -1
- package/mobile/src/components/TariffsTable/TariffsTableTileCell.tsx +5 -6
- package/mobile/src/components/TariffsTable/TariffsTableVertical.tsx +4 -7
- package/mobile/src/components/TextBlock/TextBlock.tsx +1 -1
- package/mobile/src/components/Tile/Tile.tsx +3 -3
- package/mobile/src/hooks/useOfficeMap.ts +23 -0
- package/mobile/src/icons/IconName.ts +4 -4
- package/mobile/src/icons/MetroIcon.svg +10 -0
- package/mobile/src/index.ts +1 -0
- package/mobile/src/model/BlocksRegistry.ts +1 -12
- package/mobile/src/model/ContentPageDef.ts +0 -9
- package/mobile/src/model/JSXBlock.ts +23 -0
- package/mobile/src/model/getParentBlockContent.ts +11 -0
- package/mobile/src/model/getParentBlockDef.ts +8 -0
- package/mobile/src/ui-kit/BenefitItem/BenefitItem.tsx +5 -3
- package/mobile/src/ui-kit/BlockWrapper.tsx +6 -2
- package/mobile/src/ui-kit/Button/ButtonSection.tsx +1 -1
- package/mobile/src/ui-kit/Foldable/FoldableSection.tsx +1 -1
- package/mobile/src/ui-kit/Img/getIconVersion.tsx +4 -2
- package/mobile/src/ui-kit/InnerTable/InnerTable.tsx +1 -1
- package/mobile/src/ui-kit/InnerTable/InnerTableBody.tsx +1 -1
- package/mobile/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -1
- package/mobile/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -1
- package/mobile/src/ui-kit/InputRange/InputRange.tsx +2 -2
- package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +2 -2
- package/mobile/src/ui-kit/SearchBar/SearchBar.tsx +1 -1
- package/mobile/src/ui-kit/Select/Select.tsx +11 -6
- package/mobile/src/ui-kit/SwipeListControl/SwipeListControl.tsx +2 -2
- package/mobile/src/ui-kit/SwipeListControl/SwipeListControlList.tsx +1 -1
- package/mobile/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +1 -1
- package/package.json +3 -2
- package/src/components/Accordion/Accordion.example.json +1 -63
- package/src/components/Accordion/Accordion.fixture.mobile.tsx +45 -41
- package/src/components/Accordion/Accordion.fixture.tsx +75 -110
- package/src/components/Accordion/Accordion.mobile.tsx +15 -31
- package/src/components/Accordion/Accordion.tsx +27 -42
- package/src/components/Accordion/Accordion.ui.json +1 -79
- package/src/components/Accordion/AccordionContent.ts +2 -28
- package/src/components/AccordionItem/AccordionItem.example.json +7 -0
- package/src/components/AccordionItem/AccordionItem.fixture.mobile.tsx +6 -0
- package/src/components/AccordionItem/AccordionItem.fixture.tsx +6 -0
- package/src/components/AccordionItem/AccordionItem.mobile.tsx +73 -0
- package/src/components/AccordionItem/AccordionItem.tsx +48 -0
- package/src/components/AccordionItem/AccordionItem.ui.json +7 -0
- package/src/components/AccordionItem/AccordionItemContent.ts +15 -0
- package/src/components/AccordionItem/AccordionItemProps.ts +4 -0
- package/src/components/BaseTile/BaseTile.tsx +1 -1
- package/src/components/BenefitsBlock/BenefitsBlock.tsx +1 -1
- package/src/components/Blocks.mobile.ts +2 -0
- package/src/components/Blocks.ts +7 -1
- package/src/components/Bonus/Bonus.tsx +1 -1
- package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.tsx +49 -34
- package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +11 -5
- package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.ui.json +5 -0
- package/src/components/BonusBenefitsBlock/BonusBenefitsBlockContent.ts +10 -1
- package/src/components/Calculator/BonusCalculatorForm.tsx +1 -1
- package/src/components/Calculator/Calculator.tsx +1 -1
- package/src/components/Calculator/CreditCalculatorForm.tsx +3 -2
- package/src/components/Calculator/DepositCalculatorForm.tsx +3 -2
- package/src/components/Calculator/renderButtonSection.tsx +3 -1
- package/src/components/Calculator/renderCalculatorBlock.tsx +1 -1
- package/src/components/Calculator/renderFootnote.tsx +1 -1
- package/src/components/Calculator/renderInitialFeeInput.tsx +5 -1
- package/src/components/Calculator/renderMonthsInput.tsx +6 -2
- package/src/components/Calculator/renderPaymentTypeSelector.tsx +11 -9
- package/src/components/Calculator/renderRealEstateValue.tsx +5 -1
- package/src/components/Calculator/renderWantedSumInput.tsx +5 -1
- package/src/components/CardTransfer/CardTransfer.tsx +5 -5
- package/src/components/Catalog/Catalog.tsx +2 -2
- package/src/components/Catalog/Catalog.ui.json +11 -1
- package/src/components/Catalog/CatalogCard.tsx +1 -1
- package/src/components/ComparisonTable/ComparisonTable.mobile.tsx +1 -1
- package/src/components/ComparisonTable/ComparisonTable.tsx +1 -1
- package/src/components/ComparisonTable/TableColumn.tsx +1 -1
- package/src/components/ContentPage/ContentPage.tsx +2 -1
- package/src/components/ContentPage/renderBlock.tsx +15 -9
- package/src/components/ErrorBlock/ErrorBlock.tsx +1 -1
- package/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -3
- package/src/components/ExchangeRateTile/ExchangeRateTile.tsx +2 -3
- package/src/components/Footer/Contacts.tsx +1 -1
- package/src/components/Footer/Footer.mobile.tsx +2 -2
- package/src/components/Footer/Footer.tsx +1 -1
- package/src/components/Footer/FooterLink.ts +1 -1
- package/src/components/Footer/HorizontalNavigation.mobile.tsx +1 -1
- package/src/components/Footer/HorizontalNavigation.tsx +1 -1
- package/src/components/Footer/Sitemap.tsx +13 -5
- package/src/components/Footer/SocialMedia.mobile.tsx +1 -1
- package/src/components/Footer/SocialMedia.tsx +1 -1
- package/src/components/Gallery/Gallery.mobile.tsx +14 -10
- package/src/components/Gallery/GalleryInner.tsx +1 -1
- package/src/components/Gallery/GalleryProps.ts +1 -1
- package/src/components/GracePeriod/GracePeriod.example.json +7 -7
- package/src/components/GracePeriod/GracePeriod.fixture.tsx +5 -5
- package/src/components/GracePeriod/GracePeriod.tsx +13 -9
- package/src/components/GracePeriod/GracePeriodContent.ts +3 -3
- package/src/components/Header/DropdownMenu.tsx +2 -2
- package/src/components/Header/Header.mobile.tsx +2 -2
- package/src/components/Header/Header.tsx +2 -2
- package/src/components/Headline/Headline.mobile.tsx +1 -1
- package/src/components/Headline/Headline.tsx +1 -1
- package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +9 -2
- package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.ui.json +6 -0
- package/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +1 -1
- package/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -1
- package/src/components/LikeControl/LikeControl.tsx +1 -1
- package/src/components/LinkDocs/LinkDocs.mobile.tsx +1 -1
- package/src/components/LinkDocs/LinkDocs.tsx +1 -1
- package/src/components/LinkList/LinkList.tsx +3 -2
- package/src/components/MiniGallery/MiniGallery.tsx +1 -1
- package/src/components/MobileAppTile/MobileAppTile.mobile.tsx +1 -1
- package/src/components/MobileAppTile/MobileAppTile.tsx +1 -1
- package/src/components/OfficeMap/OfficeMap.fixture.tsx +10 -0
- package/src/components/OfficeMap/OfficeMap.tsx +80 -0
- package/src/components/OfficeMap/OfficeMapContent.ts +38 -0
- package/src/components/OfficeMap/YandexMap.tsx +41 -0
- package/src/components/OfficeMap/mockOfficeMap.ts +79 -0
- package/src/components/OfficeMap/renderFunctions.tsx +69 -0
- package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +2 -2
- package/src/components/OtherProducts/OtherProducts.example.json +1 -54
- package/src/components/OtherProducts/OtherProducts.fixture.tsx +77 -126
- package/src/components/OtherProducts/OtherProducts.tsx +13 -25
- package/src/components/OtherProducts/OtherProducts.ui.json +1 -76
- package/src/components/OtherProducts/OtherProductsContent.ts +2 -20
- package/src/components/OtherProductsItem/OtherProductsItem.example.json +4 -0
- package/src/components/OtherProductsItem/OtherProductsItem.fixture.tsx +5 -0
- package/src/components/OtherProductsItem/OtherProductsItem.tsx +47 -0
- package/src/components/OtherProductsItem/OtherProductsItem.ui.json +1 -0
- package/src/components/OtherProductsItem/OtherProductsItemContent.ts +13 -0
- package/src/components/PictureText/PictureText.tsx +1 -1
- package/src/components/PictureText/PictureText.ui.json +10 -1
- package/src/components/Placeholder/Placeholder.tsx +1 -1
- package/src/components/ProductBlock/ProductBlock.mobile.tsx +1 -1
- package/src/components/ProductBlock/ProductBlock.tsx +1 -1
- package/src/components/ProductBlock/ProductBlockContent.ts +1 -1
- package/src/components/ProductBlock/ProductBlockInner.mobile.tsx +3 -2
- package/src/components/ProductBlock/ProductBlockInner.tsx +12 -4
- package/src/components/ProductGallery/ProductGallery.mobile.tsx +1 -1
- package/src/components/ProductGallery/ProductGallery.tsx +18 -5
- package/src/components/ProductGallery/ProductGalleryBlock.tsx +1 -1
- package/src/components/ProductGallery/ProductGalleryContent.ts +2 -2
- package/src/components/ProductTile/ProductTile.tsx +2 -2
- package/src/components/PromoTile/PromoTile.tsx +1 -1
- package/src/components/Recommendation/Recommendation.tsx +6 -6
- package/src/components/Recommendation/RecommendationCard.tsx +1 -1
- package/src/components/SafeDepositRental/SafeDepositRental.tsx +1 -1
- package/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +1 -1
- package/src/components/StepsBlock/StepsBlock.mobile.tsx +2 -2
- package/src/components/StepsBlock/StepsBlock.tsx +2 -2
- package/src/components/Tabs/Tabs.tsx +1 -1
- package/src/components/Tabs/renderGroupTab.tsx +5 -4
- package/src/components/TariffsTable/TariffsTable.mobile.tsx +9 -2
- package/src/components/TariffsTable/TariffsTable.tsx +1 -1
- package/src/components/TariffsTable/TariffsTableCell.tsx +1 -1
- package/src/components/TariffsTable/TariffsTableContent.ts +16 -0
- package/src/components/TariffsTable/TariffsTableHorizontal.tsx +4 -7
- package/src/components/TariffsTable/TariffsTableRow.tsx +1 -1
- package/src/components/TariffsTable/TariffsTableRowContainer.tsx +1 -1
- package/src/components/TariffsTable/TariffsTableTileCell.tsx +5 -6
- package/src/components/TariffsTable/TariffsTableVertical.tsx +4 -7
- package/src/components/TextBlock/TextBlock.mobile.tsx +1 -1
- package/src/components/TextBlock/TextBlock.tsx +1 -1
- package/src/components/Tile/Tile.tsx +3 -3
- package/src/hooks/useOfficeMap.ts +23 -0
- package/src/icons/IconName.ts +4 -1
- package/src/icons/MetroIcon.svg +10 -0
- package/src/index.ts +1 -0
- package/src/model/BlocksRegistry.ts +1 -12
- package/src/model/ContentPageDef.ts +0 -9
- package/src/model/JSXBlock.ts +23 -0
- package/src/model/getParentBlockContent.ts +11 -0
- package/src/model/getParentBlockDef.ts +8 -0
- package/src/ui-kit/BenefitItem/BenefitItem.tsx +5 -3
- package/src/ui-kit/BlockWrapper.tsx +6 -2
- package/src/ui-kit/Button/ButtonSection.tsx +1 -1
- package/src/ui-kit/Foldable/FoldableSection.tsx +1 -1
- package/src/ui-kit/Img/getIconVersion.tsx +4 -2
- package/src/ui-kit/InnerTable/InnerTable.tsx +1 -1
- package/src/ui-kit/InnerTable/InnerTableBody.tsx +1 -1
- package/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -1
- package/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -1
- package/src/ui-kit/InputRange/InputRange.tsx +2 -2
- package/src/ui-kit/Logo/Logo.tsx +2 -1
- package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +2 -2
- package/src/ui-kit/SearchBar/SearchBar.mobile.tsx +1 -1
- package/src/ui-kit/SearchBar/SearchBar.tsx +1 -1
- package/src/ui-kit/Select/Select.tsx +11 -6
- package/src/ui-kit/SwipeListControl/SwipeListControl.tsx +2 -2
- package/src/ui-kit/SwipeListControl/SwipeListControlList.tsx +1 -1
- package/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +1 -1
- package/tailwind.config.cjs +3 -0
- package/bundle/components/Accordion/AccordionItem.d.ts +0 -2
- package/bundle/components/Accordion/AccordionItem.mobile.d.ts +0 -2
- package/bundle/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/bundle/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/bundle/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/bundle/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/bundle/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -12
- package/bundle/ui-kit/BlocksList/EmbeddableBlocks.mobile.d.ts +0 -8
- package/bundle/ui-kit/BlocksList/renderBlocksList.d.ts +0 -9
- package/dist/components/Accordion/AccordionItem.d.ts +0 -2
- package/dist/components/Accordion/AccordionItem.js +0 -11
- package/dist/components/Accordion/AccordionItem.js.map +0 -1
- package/dist/components/Accordion/AccordionItem.mobile.d.ts +0 -2
- package/dist/components/Accordion/AccordionItem.mobile.js +0 -16
- package/dist/components/Accordion/AccordionItem.mobile.js.map +0 -1
- package/dist/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/dist/components/Accordion/AccordionItemProps.js.map +0 -1
- package/dist/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/dist/components/BonusBenefitsBlock/getElementsColsValue.js +0 -17
- package/dist/components/BonusBenefitsBlock/getElementsColsValue.js.map +0 -1
- package/dist/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/dist/components/OtherProducts/OtherProductsItem.js +0 -17
- package/dist/components/OtherProducts/OtherProductsItem.js.map +0 -1
- package/dist/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/dist/ui-kit/BlocksList/BlocksListProps.js.map +0 -1
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -12
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.js +0 -25
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.js.map +0 -1
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.mobile.d.ts +0 -8
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.mobile.js +0 -17
- package/dist/ui-kit/BlocksList/EmbeddableBlocks.mobile.js.map +0 -1
- package/dist/ui-kit/BlocksList/renderBlocksList.d.ts +0 -9
- package/dist/ui-kit/BlocksList/renderBlocksList.js +0 -20
- package/dist/ui-kit/BlocksList/renderBlocksList.js.map +0 -1
- package/lib/components/Accordion/AccordionItem.d.ts +0 -2
- package/lib/components/Accordion/AccordionItem.js +0 -9
- package/lib/components/Accordion/AccordionItem.js.map +0 -1
- package/lib/components/Accordion/AccordionItem.mobile.d.ts +0 -2
- package/lib/components/Accordion/AccordionItem.mobile.js +0 -14
- package/lib/components/Accordion/AccordionItem.mobile.js.map +0 -1
- package/lib/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/lib/components/Accordion/AccordionItemProps.js.map +0 -1
- package/lib/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/lib/components/BonusBenefitsBlock/getElementsColsValue.js +0 -14
- package/lib/components/BonusBenefitsBlock/getElementsColsValue.js.map +0 -1
- package/lib/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/lib/components/OtherProducts/OtherProductsItem.js +0 -15
- package/lib/components/OtherProducts/OtherProductsItem.js.map +0 -1
- package/lib/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/lib/ui-kit/BlocksList/BlocksListProps.js +0 -2
- package/lib/ui-kit/BlocksList/BlocksListProps.js.map +0 -1
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -12
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.js +0 -23
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.js.map +0 -1
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.mobile.d.ts +0 -8
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.mobile.js +0 -15
- package/lib/ui-kit/BlocksList/EmbeddableBlocks.mobile.js.map +0 -1
- package/lib/ui-kit/BlocksList/renderBlocksList.d.ts +0 -8
- package/lib/ui-kit/BlocksList/renderBlocksList.js +0 -17
- package/lib/ui-kit/BlocksList/renderBlocksList.js.map +0 -1
- package/mobile/bundle/components/Accordion/AccordionItem.d.ts +0 -2
- package/mobile/bundle/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/mobile/bundle/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/mobile/bundle/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/mobile/bundle/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/mobile/bundle/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -8
- package/mobile/bundle/ui-kit/BlocksList/renderBlocksList.d.ts +0 -9
- package/mobile/dist/components/Accordion/AccordionItem.d.ts +0 -2
- package/mobile/dist/components/Accordion/AccordionItem.js +0 -16
- package/mobile/dist/components/Accordion/AccordionItem.js.map +0 -1
- package/mobile/dist/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/mobile/dist/components/Accordion/AccordionItemProps.js.map +0 -1
- package/mobile/dist/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/mobile/dist/components/BonusBenefitsBlock/getElementsColsValue.js +0 -17
- package/mobile/dist/components/BonusBenefitsBlock/getElementsColsValue.js.map +0 -1
- package/mobile/dist/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/mobile/dist/components/OtherProducts/OtherProductsItem.js +0 -17
- package/mobile/dist/components/OtherProducts/OtherProductsItem.js.map +0 -1
- package/mobile/dist/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/mobile/dist/ui-kit/BlocksList/BlocksListProps.js.map +0 -1
- package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -8
- package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.js +0 -17
- package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.js.map +0 -1
- package/mobile/dist/ui-kit/BlocksList/renderBlocksList.d.ts +0 -9
- package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js +0 -20
- package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js.map +0 -1
- package/mobile/lib/components/Accordion/AccordionItem.d.ts +0 -2
- package/mobile/lib/components/Accordion/AccordionItem.js +0 -14
- package/mobile/lib/components/Accordion/AccordionItem.js.map +0 -1
- package/mobile/lib/components/Accordion/AccordionItemProps.d.ts +0 -5
- package/mobile/lib/components/Accordion/AccordionItemProps.js.map +0 -1
- package/mobile/lib/components/BonusBenefitsBlock/getElementsColsValue.d.ts +0 -1
- package/mobile/lib/components/BonusBenefitsBlock/getElementsColsValue.js +0 -14
- package/mobile/lib/components/BonusBenefitsBlock/getElementsColsValue.js.map +0 -1
- package/mobile/lib/components/OtherProducts/OtherProductsItem.d.ts +0 -6
- package/mobile/lib/components/OtherProducts/OtherProductsItem.js +0 -15
- package/mobile/lib/components/OtherProducts/OtherProductsItem.js.map +0 -1
- package/mobile/lib/ui-kit/BlocksList/BlocksListProps.d.ts +0 -96
- package/mobile/lib/ui-kit/BlocksList/BlocksListProps.js +0 -2
- package/mobile/lib/ui-kit/BlocksList/BlocksListProps.js.map +0 -1
- package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.d.ts +0 -8
- package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.js +0 -15
- package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.js.map +0 -1
- package/mobile/lib/ui-kit/BlocksList/renderBlocksList.d.ts +0 -9
- package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js +0 -17
- package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js.map +0 -1
- package/mobile/src/components/Accordion/AccordionItem.tsx +0 -72
- package/mobile/src/components/Accordion/AccordionItemProps.ts +0 -6
- package/mobile/src/components/BonusBenefitsBlock/getElementsColsValue.ts +0 -12
- package/mobile/src/components/OtherProducts/OtherProductsItem.tsx +0 -52
- package/mobile/src/ui-kit/BlocksList/BlocksListProps.ts +0 -130
- package/mobile/src/ui-kit/BlocksList/EmbeddableBlocks.tsx +0 -15
- package/mobile/src/ui-kit/BlocksList/renderBlocksList.tsx +0 -41
- package/src/components/Accordion/AccordionItem.mobile.tsx +0 -72
- package/src/components/Accordion/AccordionItem.tsx +0 -52
- package/src/components/Accordion/AccordionItemProps.ts +0 -6
- package/src/components/BonusBenefitsBlock/getElementsColsValue.ts +0 -12
- package/src/components/OtherProducts/OtherProductsItem.tsx +0 -52
- package/src/ui-kit/BlocksList/BlocksListProps.ts +0 -130
- package/src/ui-kit/BlocksList/EmbeddableBlocks.mobile.tsx +0 -15
- package/src/ui-kit/BlocksList/EmbeddableBlocks.tsx +0 -23
- package/src/ui-kit/BlocksList/renderBlocksList.tsx +0 -41
package/bundle/bundle.umd.js
CHANGED
|
@@ -228,10 +228,6 @@
|
|
|
228
228
|
return JSXTmpl;
|
|
229
229
|
};
|
|
230
230
|
|
|
231
|
-
function style2className(style) {
|
|
232
|
-
return style ? style.filter(Boolean).join(' ') : '';
|
|
233
|
-
}
|
|
234
|
-
|
|
235
231
|
class EventBus {
|
|
236
232
|
static inst = new EventBus();
|
|
237
233
|
subscribers = {};
|
|
@@ -303,11 +299,13 @@
|
|
|
303
299
|
const observerCallback = useMemo(() => changeHashOnObserve({ anchor, anchorClickRef }), [anchor]);
|
|
304
300
|
useEffect(() => {
|
|
305
301
|
const anchorClickCleanup = EventBus.inst.subscribe('anchorClick', (e) => {
|
|
302
|
+
setShouldRenderBlock(true);
|
|
306
303
|
anchorClickRef.current = e;
|
|
307
304
|
});
|
|
308
305
|
const tabCleanup = EventBus.inst.subscribe('tab', (event) => {
|
|
309
306
|
if (event.type === 'group') {
|
|
310
|
-
|
|
307
|
+
const blockHasSettgins = labels?.length || anchor;
|
|
308
|
+
setShouldRenderBlock(event.label ? !blockHasSettgins || Boolean(labels?.includes(event.label)) : true);
|
|
311
309
|
}
|
|
312
310
|
else {
|
|
313
311
|
changeHash(event.label);
|
|
@@ -336,11 +334,6 @@
|
|
|
336
334
|
}
|
|
337
335
|
}
|
|
338
336
|
|
|
339
|
-
const Description = JSX((props) => {
|
|
340
|
-
const { className = '', description } = props;
|
|
341
|
-
return jsx("div", { className: `${className}`, children: description });
|
|
342
|
-
});
|
|
343
|
-
|
|
344
337
|
const HEADING_STYLE_MAP = {
|
|
345
338
|
h0: 'text-h0',
|
|
346
339
|
h1: 'text-h1',
|
|
@@ -355,74 +348,36 @@
|
|
|
355
348
|
return (jsx(Tag, { className: `font-sans m-0 ${HEADING_STYLE_MAP[headingType]} ${className}`, children: title }));
|
|
356
349
|
});
|
|
357
350
|
|
|
358
|
-
const
|
|
351
|
+
const AccordionItemsList = JSX(({ children }) => (jsx("ul", { className: "list-none m-0 p-0", children: children })));
|
|
352
|
+
|
|
353
|
+
const ALIGN_TITLE$1 = {
|
|
359
354
|
left: 'text-left',
|
|
360
355
|
center: 'text-center',
|
|
361
356
|
right: 'text-right',
|
|
362
357
|
};
|
|
363
|
-
const
|
|
364
|
-
|
|
365
|
-
background: 'bg-transparent',
|
|
366
|
-
text: 'text-primary-text',
|
|
367
|
-
description: 'text-primary-text',
|
|
368
|
-
},
|
|
369
|
-
primary: {
|
|
370
|
-
background: 'bg-white',
|
|
371
|
-
text: 'text-primary-text',
|
|
372
|
-
description: 'text-primary-text',
|
|
373
|
-
},
|
|
374
|
-
secondary: {
|
|
375
|
-
background: 'bg-primary-main',
|
|
376
|
-
text: 'text-white',
|
|
377
|
-
description: 'text-white/80',
|
|
378
|
-
},
|
|
379
|
-
};
|
|
380
|
-
const HEADLINE_VERSION = {
|
|
381
|
-
XXL: {
|
|
382
|
-
descriptionFont: 'text-h5',
|
|
383
|
-
gap: 'gap-[18px]',
|
|
384
|
-
headingType: 'h0',
|
|
385
|
-
as: 'h1',
|
|
386
|
-
},
|
|
387
|
-
XL: {
|
|
388
|
-
descriptionFont: 'text-xl-light',
|
|
389
|
-
gap: 'gap-4',
|
|
390
|
-
headingType: 'h1',
|
|
391
|
-
as: 'h1',
|
|
392
|
-
},
|
|
393
|
-
L: {
|
|
394
|
-
descriptionFont: 'text-xl-light',
|
|
395
|
-
gap: 'gap-4',
|
|
396
|
-
headingType: 'h2',
|
|
397
|
-
as: 'h2',
|
|
398
|
-
},
|
|
399
|
-
M: {
|
|
400
|
-
descriptionFont: 'text-xl-light',
|
|
401
|
-
gap: 'gap-3',
|
|
402
|
-
headingType: 'h3',
|
|
403
|
-
as: 'h3',
|
|
404
|
-
},
|
|
405
|
-
S: {
|
|
406
|
-
descriptionFont: 'text-xl-light',
|
|
407
|
-
gap: 'gap-2',
|
|
408
|
-
headingType: 'h4',
|
|
409
|
-
as: 'h4',
|
|
410
|
-
},
|
|
411
|
-
};
|
|
412
|
-
const HEADLINE_SMALL_VERSION = {
|
|
413
|
-
XL_L: 'text-xl-light',
|
|
414
|
-
XL_R: 'text-xl',
|
|
415
|
-
L_L: 'text-l-light',
|
|
416
|
-
L_R: 'text-l',
|
|
417
|
-
M: 'text-m-light',
|
|
418
|
-
S: 'text-s-light',
|
|
419
|
-
XS: 'text-xs-light',
|
|
420
|
-
};
|
|
358
|
+
const Accordion = JSX(({ className = '', context, title, accordionAlignTitle = 'center', description, children, ...rest }) => (jsxs(BlockWrapper, { context: context, className: `p-[50px] mb-1 last:mb-0 font-sans bg-white text-primary-text ${className}`, ...rest, children: [title ? (jsx(Heading, { headingType: "h3", as: "h2", className: `mb-2.5 ${ALIGN_TITLE$1[accordionAlignTitle]}`, title: title })) : null, description ? jsx("div", { className: "mb-2.5 text-l", children: description }) : null, jsx(AccordionItemsList, { children: children })] })));
|
|
359
|
+
Accordion.childrenTypes = ['AccordionItem'];
|
|
421
360
|
|
|
422
|
-
const
|
|
423
|
-
const
|
|
424
|
-
const
|
|
425
|
-
|
|
361
|
+
const Foldable = JSX(({ isFoldButtonOnTop = false, unfoldedByDefault = false, renderFoldableSection, renderFoldButton, }) => {
|
|
362
|
+
const [isUnfolded, setIsUnfolded] = useState(unfoldedByDefault);
|
|
363
|
+
const onToggle = useCallback(() => {
|
|
364
|
+
setIsUnfolded((_) => !_);
|
|
365
|
+
}, []);
|
|
366
|
+
const sectionNode = renderFoldableSection({ isUnfolded, onToggle });
|
|
367
|
+
const buttonNode = renderFoldButton ? renderFoldButton({ isUnfolded, onToggle }) : null;
|
|
368
|
+
return isFoldButtonOnTop ? (jsxs("div", { children: [buttonNode, sectionNode] })) : (jsxs("div", { children: [sectionNode, buttonNode] }));
|
|
369
|
+
});
|
|
370
|
+
|
|
371
|
+
const FoldableSection = JSX(({ className = '', isUnfolded, children }) => {
|
|
372
|
+
const containerRef = useRef(null);
|
|
373
|
+
useEffect(() => {
|
|
374
|
+
if (containerRef.current) {
|
|
375
|
+
containerRef.current.style.maxHeight = isUnfolded
|
|
376
|
+
? `${containerRef.current.scrollHeight}px`
|
|
377
|
+
: '';
|
|
378
|
+
}
|
|
379
|
+
}, [isUnfolded, children?.length]);
|
|
380
|
+
return (jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${className}`, children: children }));
|
|
426
381
|
});
|
|
427
382
|
|
|
428
383
|
const svgUseStyleMap = {
|
|
@@ -447,7 +402,7 @@
|
|
|
447
402
|
const Background = JSX(({ className, children }) => className ? jsx("div", { className: className, children: children }) : children);
|
|
448
403
|
|
|
449
404
|
function getIconVersion$1(image) {
|
|
450
|
-
return typeof image === 'string' ? 'normal' : image
|
|
405
|
+
return typeof image === 'string' ? 'normal' : image?.iconVersion || 'normal';
|
|
451
406
|
}
|
|
452
407
|
|
|
453
408
|
const sourcesComparator = (a, b) => {
|
|
@@ -493,85 +448,58 @@
|
|
|
493
448
|
return (jsx(ImgAsPicture, { className: className, imageClassName: imageClassName, image: image, isMobile: isMobile }));
|
|
494
449
|
});
|
|
495
450
|
|
|
496
|
-
const
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
});
|
|
500
|
-
const formatSuffix = (ext, fileSize) => {
|
|
501
|
-
const prefix = ext || fileSize ? ',' : '';
|
|
502
|
-
const extension = ext ? ` ${ext}` : '';
|
|
503
|
-
const size = fileSize ? ` (${fileSize})` : '';
|
|
504
|
-
return prefix + extension + size;
|
|
505
|
-
};
|
|
506
|
-
const getExtFromHref = (href) => {
|
|
507
|
-
if (!href) {
|
|
508
|
-
return '';
|
|
509
|
-
}
|
|
510
|
-
const index = href.lastIndexOf('.');
|
|
511
|
-
return index !== -1 ? href.substring(index + 1) : '';
|
|
512
|
-
};
|
|
513
|
-
|
|
514
|
-
const LinkDocsListItem = JSX(({ className = '', doc, icon }) => (jsx(LinkDocsListItemBase, { className: `flex h-full box-border ${className}`, iconClassName: "mr-2.5 min-w-6 min-h-6", textClassName: "self-center text-l-light", suffixClassName: "text-secondary-text group-hover:text-primary-main", doc: doc, icon: icon })));
|
|
515
|
-
|
|
516
|
-
const LinkDocsList = JSX(({ className, documents, columnsMode = 'double', icon }) => {
|
|
517
|
-
return documents?.length ? (jsx("div", { className: className, role: "list", children: documents.map((doc, i) => (jsx("div", { className: columnsMode === 'double' ? 'basis-[calc(50%-20px)]' : '', role: "listitem", children: jsx(LinkDocsListItem, { className: "group flex align-middle h-fit w-fit text-primary-text no-underline hover:text-primary-main", doc: doc, icon: icon }) }, String(i)))) })) : null;
|
|
518
|
-
});
|
|
519
|
-
|
|
520
|
-
const linkColumnsModeStyleMap = {
|
|
521
|
-
double: 'flex gap-x-5 gap-y-[26px] flex-wrap',
|
|
522
|
-
single: 'flex gap-3.5 flex-col',
|
|
523
|
-
};
|
|
524
|
-
const LinkDocs = JSX(({ context, className = '', title, description, align = 'center', documents, icon = { icon: 'DocIcon' }, columnsMode = 'double', ...rest }) => {
|
|
525
|
-
return (jsxs(BlockWrapper, { className: `font-sans text-primary-text p-[50px] bg-white ${className}`, context: context, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: description, context: context, align: align, headlineVersion: "M", as: "h2" }), jsx(LinkDocsList, { className: `mt-8 ${linkColumnsModeStyleMap[columnsMode]}`, columnsMode: columnsMode, documents: documents, icon: icon })] }));
|
|
526
|
-
});
|
|
451
|
+
const icons$1 = ['PlusIcon', 'MinusIcon'];
|
|
452
|
+
const AccordionItem = JSX(({ className = '', label = '', isExpanded, children }) => (jsx("li", { className: `border-0 border-b border-solid border-main-divider last:border-b-0 ${className}`, children: jsx(Foldable, { isFoldButtonOnTop: true, unfoldedByDefault: isExpanded, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { className: "grid grid-cols-12 gap-5 [&>*]:p-0", isUnfolded: isUnfolded, children: children })), renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(FoldButton, { label: label, icon: icons$1[Number(isUnfolded)], onClick: onToggle })) }) })));
|
|
453
|
+
AccordionItem.childrenTypes = [];
|
|
454
|
+
const FoldButton = JSX(({ label, icon, onClick }) => (jsxs("button", { className: "border-none bg-transparent px-0 pt-5 pb-3.5 flex justify-between text-left w-full font-sans text-h6 group cursor-pointer", onClick: onClick, children: [jsx("span", { className: "text-xl font-medium pr-2.5", children: label }), jsx(ImgInner, { image: icon, className: "text-primary-main flex-shrink-0", width: "24", height: "24", asSVG: true })] })));
|
|
527
455
|
|
|
528
|
-
const
|
|
529
|
-
primary: 'bg-white
|
|
530
|
-
secondary: 'bg-primary-main
|
|
456
|
+
const benefitsBlockStyleMap = {
|
|
457
|
+
primary: 'bg-white',
|
|
458
|
+
secondary: 'bg-primary-main',
|
|
531
459
|
};
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
primary: 'text-primary-text',
|
|
460
|
+
const benefitsTextStyleMap = {
|
|
461
|
+
primary: '',
|
|
535
462
|
secondary: 'text-white',
|
|
536
463
|
};
|
|
537
|
-
const
|
|
464
|
+
const benefitsDescriptionStyleMap = {
|
|
538
465
|
primary: 'text-secondary-text',
|
|
539
|
-
secondary: 'text-white',
|
|
466
|
+
secondary: 'text-white opacity-80',
|
|
540
467
|
};
|
|
541
|
-
const
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
return (jsxs(
|
|
468
|
+
const benefitsIconStyleMap = {
|
|
469
|
+
primary: 'bg-main-divider text-primary-main',
|
|
470
|
+
secondary: 'bg-white/30 text-black',
|
|
471
|
+
};
|
|
472
|
+
const BenefitsBlock = JSX(({ className = '', title, benefitList, benefitsBlockVersion = 'primary', ...rest }) => {
|
|
473
|
+
return (jsxs(BlockWrapper, { className: `font-sans text-primary-text p-12 flex flex-col items-center ${className} ${benefitsBlockStyleMap[benefitsBlockVersion]}`, ...rest, children: [title ? (jsx(Heading, { headingType: "h3", as: "h2", className: `max-w-[47rem] text-center ${benefitsTextStyleMap[benefitsBlockVersion]}`, title: title })) : null, benefitList?.length ? renderBenefits$1(benefitList, benefitsBlockVersion) : null] }));
|
|
547
474
|
});
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
475
|
+
const renderBenefits$1 = (benefitList, benefitsBlockVersion) => {
|
|
476
|
+
return (jsx("div", { className: "flex flex-wrap w-full justify-center gap-x-20 mt-8", children: benefitList.map(renderStep(benefitsBlockVersion)) }));
|
|
477
|
+
};
|
|
478
|
+
const setIconVersion = (benefitIcon, benefitsBlockVersion) => {
|
|
479
|
+
if (!benefitIcon.icon || benefitIcon?.iconVersion) {
|
|
480
|
+
return benefitIcon;
|
|
552
481
|
}
|
|
553
|
-
|
|
554
|
-
|
|
482
|
+
benefitIcon.iconVersion = benefitsBlockVersion === 'secondary' ? 'white' : 'normal';
|
|
483
|
+
return benefitIcon;
|
|
484
|
+
};
|
|
485
|
+
const renderStep = (benefitsBlockVersion) => (benefit, i) => {
|
|
486
|
+
const description = (benefit?.description || undefined);
|
|
487
|
+
return (jsxs("div", { className: "flex items-center basis-1/2 max-w-[500px] mb-14", children: [benefit?.icon?.icon ? (jsx(ImgInner, { className: `w-[50px] h-[50px] min-w-[50px] p-3 rounded-full ${benefitsIconStyleMap[benefitsBlockVersion]}`, image: setIconVersion(benefit.icon, benefitsBlockVersion), asSVG: true })) : null, benefit?.icon?.src ? jsx(ImgInner, { image: benefit.icon }) : null, jsxs("div", { className: "ml-5", children: [benefit?.label ? (jsx("h3", { className: `text-h6 m-0 ${benefitsTextStyleMap[benefitsBlockVersion]}`, children: benefit.label })) : null, renderDescription$2(description, benefitsBlockVersion)] })] }, String(i)));
|
|
488
|
+
};
|
|
489
|
+
const renderDescription$2 = (description, benefitsBlockVersion) => {
|
|
490
|
+
const benefitType = description ? description?.benefitType : null;
|
|
491
|
+
if (!benefitType) {
|
|
492
|
+
return null;
|
|
555
493
|
}
|
|
556
|
-
return
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
const
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
return
|
|
564
|
-
}
|
|
565
|
-
const renderBenefit$2 = (version) => (benefit, i) => (jsx(BenefitItem, { icon: benefit.icon, label: benefit.label, description: benefit.description, version: version }, String(i)));
|
|
566
|
-
function renderInsuranceSumMonth(sum, monthLimit) {
|
|
567
|
-
return sum || monthLimit ? (jsxs("div", { className: "bg-main-divider rounded-md flex mt-7 gap-6 px-5 py-4", children: [Number.isFinite(sum) ? renderValueBlock$1('Страховая сумма:', sum, Boolean(monthLimit)) : null, Number.isFinite(monthLimit)
|
|
568
|
-
? renderValueBlock$1('Ежемесячный лимит:', monthLimit, Boolean(sum))
|
|
569
|
-
: null] })) : null;
|
|
570
|
-
}
|
|
571
|
-
function renderValueBlock$1(title, sum = 0, isAnotherBlock = false) {
|
|
572
|
-
const widthStyle = isAnotherBlock ? 'w-fit' : 'w-full';
|
|
573
|
-
return (jsxs("div", { className: `flex justify-between items-center gap-2 w-full ${widthStyle}`, children: [jsx("span", { className: "text-secondary-text text-l-light", children: title }), jsxs("span", { className: "text-primary-main text-h6", children: [addSpacesBetweenNumbers(sum), " \u20BD"] })] }));
|
|
574
|
-
}
|
|
494
|
+
return description ? (jsx("div", { className: `text-l-light mt-2 ${benefitsDescriptionStyleMap[benefitsBlockVersion]}`, children: benefitType === 'list'
|
|
495
|
+
? renderListBenefit(description)
|
|
496
|
+
: renderTextBenefit(description) })) : null;
|
|
497
|
+
};
|
|
498
|
+
const renderTextBenefit = (description) => (description ? description.name : null);
|
|
499
|
+
const renderListBenefit = (description) => {
|
|
500
|
+
const listStyleType = description?.bullets ? 'list-disc pl-6' : '';
|
|
501
|
+
return description?.items && description.items.length > 0 ? (jsx("ul", { className: listStyleType, children: description.items.map((_, i) => (jsx("li", { children: _ }, `benefitListItem-${i}`))) })) : null;
|
|
502
|
+
};
|
|
575
503
|
|
|
576
504
|
const isURL = (href) => href?.includes('//');
|
|
577
505
|
const withoutQuery = (href) => (href || '').replace(/\/?\?.*/, '');
|
|
@@ -640,19 +568,6 @@
|
|
|
640
568
|
};
|
|
641
569
|
}
|
|
642
570
|
|
|
643
|
-
const Breadcrumb = JSX(({ text, href, target, onClick, className = '', children }) => {
|
|
644
|
-
if (href) {
|
|
645
|
-
return (jsx("a", { className: `no-underline ${className}`, href: href, target: target, onClick: onClick, children: jsx("span", { className: className, children: text || children }) }));
|
|
646
|
-
}
|
|
647
|
-
else {
|
|
648
|
-
return jsx("span", { className: className, children: text || children });
|
|
649
|
-
}
|
|
650
|
-
});
|
|
651
|
-
|
|
652
|
-
function joinList(sep) {
|
|
653
|
-
return (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: i }, el) : [el]), []);
|
|
654
|
-
}
|
|
655
|
-
|
|
656
571
|
const buttonStyleMap = {
|
|
657
572
|
primary: 'text-white bg-primary-main hover:bg-primary-hover active:bg-primary-active',
|
|
658
573
|
secondary: 'text-primary-main bg-main-divider hover:text-white hover:bg-primary-hover active:bg-primary-active',
|
|
@@ -730,370 +645,80 @@
|
|
|
730
645
|
return jsx(Button, { ...button, ...buttonProps });
|
|
731
646
|
});
|
|
732
647
|
|
|
733
|
-
const
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
gray: 'bg-secondary-text',
|
|
737
|
-
};
|
|
738
|
-
const DOT_SIZE_MAP = {
|
|
739
|
-
L: 'w-1.5 h-1.5 min-w-1.5 min-h-1.5 mr-4 mt-3',
|
|
740
|
-
M: 'w-1.5 h-1.5 min-w-1.5 min-h-1.5 mr-3 mt-3',
|
|
741
|
-
S: 'w-1 h-1 min-w-1 min-h-1 mr-2 mt-2.5',
|
|
742
|
-
};
|
|
743
|
-
const ListItem = JSX(({ className = '', isDotted = true, children, version = 'primary', size = 'M' }) => {
|
|
744
|
-
return (jsxs("div", { className: `font-sans flex items-start ${className}`, role: "listitem", children: [isDotted ? (jsx("div", { className: `rounded-full inline-block ${LIST_DOT_STYLE_MAP[version]} ${DOT_SIZE_MAP[size]}` })) : null, jsx("span", { children: children })] }));
|
|
648
|
+
const Description = JSX((props) => {
|
|
649
|
+
const { className = '', description } = props;
|
|
650
|
+
return jsx("div", { className: `${className}`, children: description });
|
|
745
651
|
});
|
|
746
652
|
|
|
747
|
-
const
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
};
|
|
752
|
-
const TEXT_SIZE_MAP = {
|
|
753
|
-
S: 'text-l-light',
|
|
754
|
-
M: 'text-h6',
|
|
755
|
-
L: 'text-h5',
|
|
653
|
+
const ALIGN_TEXT = {
|
|
654
|
+
left: 'text-left',
|
|
655
|
+
center: 'text-center',
|
|
656
|
+
right: 'text-right',
|
|
756
657
|
};
|
|
757
|
-
const
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
658
|
+
const HEADLINE_BLOCK_STYLE_MAPS = {
|
|
659
|
+
transparent: {
|
|
660
|
+
background: 'bg-transparent',
|
|
661
|
+
text: 'text-primary-text',
|
|
662
|
+
description: 'text-primary-text',
|
|
663
|
+
},
|
|
664
|
+
primary: {
|
|
665
|
+
background: 'bg-white',
|
|
666
|
+
text: 'text-primary-text',
|
|
667
|
+
description: 'text-primary-text',
|
|
668
|
+
},
|
|
669
|
+
secondary: {
|
|
670
|
+
background: 'bg-primary-main',
|
|
671
|
+
text: 'text-white',
|
|
672
|
+
description: 'text-white/80',
|
|
673
|
+
},
|
|
761
674
|
};
|
|
762
|
-
const
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
});
|
|
769
|
-
|
|
770
|
-
const BaseTile = JSX(({ className = '', title = '', children, buttons, image }) => {
|
|
771
|
-
return (jsxs("div", { className: `font-sans flex flex-col grow h-full items-start ${className}`, children: [title, jsxs("div", { className: "flex grow w-full justify-between", children: [jsxs("div", { className: "flex flex-col justify-between w-full", children: [jsx("div", { className: "h-full", children: children }), buttons ? jsx("div", { className: "mt-auto pt-8", children: buttons }) : null] }), image] })] }));
|
|
772
|
-
});
|
|
773
|
-
|
|
774
|
-
const renderBenefit$1 = (version = 'primary', benefitsVersion = 'normal') => ({ icon, label, description }, i) => {
|
|
775
|
-
return (jsx(BenefitItem, { icon: icon, label: label, description: description, version: version, benefitsVersion: benefitsVersion }, String(i)));
|
|
776
|
-
};
|
|
777
|
-
|
|
778
|
-
const ProductBlockInner = JSX(({ className = '', context, title, headlineVersion = 'L', description, benefits, benefitsVersion = 'normal', buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', }) => {
|
|
779
|
-
return (jsxs("div", { className: `flex grow justify-between items-stretch h-full ${className}`, children: [jsxs("div", { className: `flex flex-col ${textBlockClassName}`, children: [jsx(Headline, { context: context, title: title, description: description, className: `!p-0 max-w-[600px]`, bgColorHeadline: version, headlineVersion: headlineVersion, align: "left" }), jsxs(BaseTile, { context: context, buttons: getButtons(context, buttons), children: [benefits?.filter((_) => _.label)?.length ? (jsx("div", { className: "flex gap-6 mt-6", children: benefits.map(renderBenefit$1(version, benefitsVersion)) })) : null, items?.length ? (jsx(List, { className: "mt-5 text-h6", items: items, itemClassName: "mb-[7px]", version: version, isDotted: isDotted })) : null] })] }), image?.src && jsx(ImgInner, { className: "mt-[-50px]", image: image })] }));
|
|
780
|
-
});
|
|
781
|
-
const getButtons = (context, buttons) => {
|
|
782
|
-
return buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex gap-4" })) : null;
|
|
783
|
-
};
|
|
784
|
-
|
|
785
|
-
function renderBackwardButton(button, version, className) {
|
|
786
|
-
const { text, href, target, onClick } = button;
|
|
787
|
-
const iconVersion = version === 'primary' ? 'white' : 'black';
|
|
788
|
-
const backwardIcon = button?.icon || { icon: 'ArrowLeftIcon' };
|
|
789
|
-
return (jsxs("div", { className: `flex items-center cursor-pointer ${className}`, onClick: onClick, children: [jsx(Button, { version: version, rounded: true, className: "w-12 h-12 min-h-12 min-w-12 flex items-center justify-center mr-3", ariaLabel: text, href: href, target: target, children: jsx(ImgInner, { className: "w-4 h-4", image: { ...backwardIcon, iconVersion }, asSVG: true }) }), text ? jsx("span", { className: "text-m", children: text }) : null] }));
|
|
790
|
-
}
|
|
791
|
-
|
|
792
|
-
const breadcrumbsStyleMap = {
|
|
793
|
-
primary: 'text-secondary-text',
|
|
794
|
-
secondary: 'text-white/80',
|
|
795
|
-
};
|
|
796
|
-
const ProductBlock = JSX((props) => {
|
|
797
|
-
const { context, className = '', breadcrumbs, backwardButton, version = 'primary', ...otherProps } = props;
|
|
798
|
-
const router = context.useRouter();
|
|
799
|
-
const { handlerDecorator } = context;
|
|
800
|
-
return (jsxs(BlockWrapper, { context: context, className: `font-sans overflow-hidden p-[50px] flex flex-col box-border min-h-[454px] ${VersionStyleMap[version]} ${className}`, ...otherProps, children: [backwardButton?.text
|
|
801
|
-
? renderBackwardButton(useLink({ router, handlerDecorator }, backwardButton), version, 'mb-10 -mt-2.5')
|
|
802
|
-
: null, breadcrumbs?.length ? (jsx("div", { className: "text-xs-light mb-6", children: joinList(jsx("span", { className: `mx-2 ${breadcrumbsStyleMap[version]}`, children: "/" }))(breadcrumbs.map((breadcrumb, i) => (jsx(Breadcrumb, { ...useLink({ router, handlerDecorator }, { className: breadcrumbsStyleMap[version], ...breadcrumb }) }, String(i))))) })) : null, jsx(ProductBlockInner, { context: context, version: version, ...otherProps })] }));
|
|
803
|
-
});
|
|
804
|
-
|
|
805
|
-
const textBlockStyleMaps = {
|
|
806
|
-
primary: {
|
|
807
|
-
background: 'bg-white',
|
|
808
|
-
icon: 'bg-primary-main text-white',
|
|
809
|
-
title: 'text-primary-text',
|
|
810
|
-
description: 'text-secondary-text',
|
|
675
|
+
const HEADLINE_VERSION = {
|
|
676
|
+
XXL: {
|
|
677
|
+
descriptionFont: 'text-h5',
|
|
678
|
+
gap: 'gap-[18px]',
|
|
679
|
+
headingType: 'h0',
|
|
680
|
+
as: 'h1',
|
|
811
681
|
},
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
682
|
+
XL: {
|
|
683
|
+
descriptionFont: 'text-xl-light',
|
|
684
|
+
gap: 'gap-4',
|
|
685
|
+
headingType: 'h1',
|
|
686
|
+
as: 'h1',
|
|
817
687
|
},
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
688
|
+
L: {
|
|
689
|
+
descriptionFont: 'text-xl-light',
|
|
690
|
+
gap: 'gap-4',
|
|
691
|
+
headingType: 'h2',
|
|
692
|
+
as: 'h2',
|
|
693
|
+
},
|
|
694
|
+
M: {
|
|
695
|
+
descriptionFont: 'text-xl-light',
|
|
696
|
+
gap: 'gap-3',
|
|
697
|
+
headingType: 'h3',
|
|
698
|
+
as: 'h3',
|
|
699
|
+
},
|
|
700
|
+
S: {
|
|
701
|
+
descriptionFont: 'text-xl-light',
|
|
702
|
+
gap: 'gap-2',
|
|
703
|
+
headingType: 'h4',
|
|
704
|
+
as: 'h4',
|
|
823
705
|
},
|
|
824
706
|
};
|
|
825
|
-
const
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
return image?.src ? jsx(ImgInner, { className: "pt-0.5 pr-3", image: image }) : null;
|
|
834
|
-
}
|
|
835
|
-
|
|
836
|
-
const getColSpan = (className) => {
|
|
837
|
-
const colSpanPrefix = 'col-span-';
|
|
838
|
-
const colSpanStr = className.split(/\s+/).find((_) => _.startsWith(colSpanPrefix));
|
|
839
|
-
return colSpanStr ? parseInt(colSpanStr.substring(colSpanPrefix.length), 10) : 12;
|
|
840
|
-
};
|
|
841
|
-
|
|
842
|
-
function getTileMinHeight(className = '') {
|
|
843
|
-
const colSpan = getColSpan(className);
|
|
844
|
-
if (colSpan <= 6) {
|
|
845
|
-
return 'min-h-[300px]';
|
|
846
|
-
}
|
|
847
|
-
else if (colSpan <= 8) {
|
|
848
|
-
return 'min-h-[320px]';
|
|
849
|
-
}
|
|
850
|
-
else {
|
|
851
|
-
return 'min-h-[360px]';
|
|
852
|
-
}
|
|
853
|
-
}
|
|
854
|
-
|
|
855
|
-
function getTileRightPadding(className = '') {
|
|
856
|
-
const colSpan = getColSpan(className);
|
|
857
|
-
if (colSpan <= 6) {
|
|
858
|
-
return 'pr-9';
|
|
859
|
-
}
|
|
860
|
-
else if (colSpan <= 8) {
|
|
861
|
-
return 'pr-[4.75rem]';
|
|
862
|
-
}
|
|
863
|
-
else {
|
|
864
|
-
return 'pr-[9.4rem]';
|
|
865
|
-
}
|
|
866
|
-
}
|
|
867
|
-
|
|
868
|
-
const Tile = JSX((props) => {
|
|
869
|
-
const { context, title, headingType = 'h3', description, items, children, buttons, image, isDotted = true, listItemSize = 'M', className = '', version = 'primary', ...rest } = props;
|
|
870
|
-
const headingClassName = version === 'primary' ? 'text-primary-text' : '';
|
|
871
|
-
return (jsx(BlockWrapper, { context: context, className: `overflow-hidden font-sans p-9 pr-3 box-border ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: jsxs(BaseTile, { context: context, title: title ? (jsx(Heading, { headingType: headingType, as: "h2", title: title, className: `whitespace-pre-wrap max-w-[600px] ${headingClassName}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons.map((button) => ({ ...button, className: 'w-[158px]' })), className: "flex mt-8 gap-3" })) : null, image: image?.src ? jsx(ImgInner, { className: "mt-auto ml-7", image: image }) : null, children: [description ? (jsx(Description, { className: "max-w-[600px] text-xl-light mt-2.5", description: description })) : null, children, renderList$1(items, { version, isDotted, listItemSize })] }) }));
|
|
872
|
-
});
|
|
873
|
-
function renderList$1(items, { version, isDotted, listItemSize }) {
|
|
874
|
-
return items?.length ? (jsx(List, { items: items, isDotted: isDotted, className: "mt-2.5", listItemSize: listItemSize, itemClassName: "mb-1.5", version: version })) : null;
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
const ProductTile = JSX(({ context, className = '', title, headlineVersion = 'S', description, additionalDescription, benefits = [], buttons, image, version = 'primary', ...rest }) => {
|
|
878
|
-
return (jsxs(BlockWrapper, { context: context, className: `overflow-hidden font-sans p-9 box-border relative justify-between grid min-h-[364px]
|
|
879
|
-
${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)}`, ...rest, children: [jsx(Headline, { context: context, className: `!p-0 !bg-transparent z-10 ${title || description ? 'mb-3.5' : ''}`, as: "h2", title: title, description: description, headlineVersion: headlineVersion, bgColorHeadline: version, align: "left" }), renderBenefits$1(benefits, version, image), additionalDescription
|
|
880
|
-
? renderAdditionalDescription$1(additionalDescription, image, version)
|
|
881
|
-
: null, buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex self-end mt-5 gap-4 z-10 text-l" })) : null, image?.src ? jsx(ImgInner, { className: "absolute right-0 bottom-0", image: image }) : null] }));
|
|
882
|
-
});
|
|
883
|
-
function renderBenefits$1(benefits, version, image) {
|
|
884
|
-
// picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
|
|
885
|
-
const BENEFITS_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
|
|
886
|
-
return (jsx("div", { className: `z-10 grid grid-cols-[max-content_1fr] auto-rows-auto gap-x-6 gap-y-2.5 items-baseline
|
|
887
|
-
${BENEFITS_WIDTH}`, children: benefits.length ? benefits.map(renderBenefit(version)) : null }));
|
|
888
|
-
}
|
|
889
|
-
function renderBenefit(version = 'primary') {
|
|
890
|
-
const labelStyleMap = {
|
|
891
|
-
primary: 'text-secondary-text',
|
|
892
|
-
secondary: 'text-white',
|
|
893
|
-
};
|
|
894
|
-
return function renderVersionedBenefit(benefit, i) {
|
|
895
|
-
const { label = '', description = '' } = benefit;
|
|
896
|
-
return [
|
|
897
|
-
jsx("div", { className: "text-h6", children: label }, `label-${i}`),
|
|
898
|
-
jsx("div", { className: `text-m-light ${labelStyleMap[version]}`, children: description }, `desc-${i}`),
|
|
899
|
-
];
|
|
900
|
-
};
|
|
901
|
-
}
|
|
902
|
-
function renderAdditionalDescription$1(additionalDescription, image, version = 'primary') {
|
|
903
|
-
const descStyleMap = {
|
|
904
|
-
primary: 'text-secondary-text',
|
|
905
|
-
secondary: 'text-white',
|
|
906
|
-
};
|
|
907
|
-
// picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
|
|
908
|
-
const DESCRIPTION_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
|
|
909
|
-
return (jsx("div", { className: `text-m-light mt-2.5 z-10 ${DESCRIPTION_WIDTH} ${descStyleMap[version]}`, children: additionalDescription }));
|
|
910
|
-
}
|
|
911
|
-
|
|
912
|
-
const ArrowButton = JSX(({ className, disabled, ...rest }) => (jsx(Button, { rounded: true, className: `group 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
|
|
913
|
-
? 'bg-secondary-light text-secondary-text'
|
|
914
|
-
: 'bg-white text-primary-text hover:text-primary-main'} ${className || ''}`, disabled: disabled, ...rest, children: jsx(ImgInner, { className: "w-4 h-4 min-w-4 min-h-4 rounded-full box-border", image: { icon: 'ArrowLeftIcon', iconVersion: 'black' }, imageClassName: "group-hover:text-primary-main", width: "16", height: "16", asSVG: true }) })));
|
|
915
|
-
|
|
916
|
-
function renderArrows({ handler, isShown, btnClass, className = '', isDisabled = false, }) {
|
|
917
|
-
return (jsxs("div", { children: [isShown[0] || isDisabled ? (jsx(ArrowButton, { className: `absolute z-10 ${btnClass[0]} ${className}`, onClick: handler[0], ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043B\u0435\u0432\u043E", "data-block-control": "scroll-left", disabled: !isShown[0] })) : null, isShown[1] || isDisabled ? (jsx(ArrowButton, { className: `absolute z-10 rotate-180 ${btnClass[1]} ${className}`, onClick: handler[1], ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E", "data-block-control": "scroll-right", disabled: !isShown[1] })) : null] }));
|
|
918
|
-
}
|
|
919
|
-
|
|
920
|
-
const galleryLengthForScrollMap = {
|
|
921
|
-
normal: 3,
|
|
922
|
-
mini: 4,
|
|
923
|
-
};
|
|
924
|
-
const cardStyleMap$1 = {
|
|
925
|
-
normal: 'min-w-[364px] w-[364px]',
|
|
926
|
-
mini: 'min-w-[260px] w-[260px]',
|
|
927
|
-
};
|
|
928
|
-
const cardWidthMap = {
|
|
929
|
-
normal: 380,
|
|
930
|
-
mini: 276,
|
|
931
|
-
};
|
|
932
|
-
|
|
933
|
-
const ALIGN_TITLE$1 = {
|
|
934
|
-
left: 'text-left',
|
|
935
|
-
center: 'text-center',
|
|
936
|
-
right: 'text-right',
|
|
937
|
-
};
|
|
938
|
-
const GalleryCardInner = JSX(({ title, headlineSmallVersion = 'XL_L', description, additionalDescription, image, items, button, version, isDotted = true, align = 'center', }) => {
|
|
939
|
-
return (jsxs("div", { className: `h-full flex flex-col justify-between ${ALIGN_TITLE$1[align]}`, children: [jsxs("div", { className: "flex flex-col h-full", children: [renderImage(image), renderCardTitle(headlineSmallVersion, title), renderDescription$2(description, title), renderAdditionalDescription(additionalDescription), items?.length ? renderItems$1(items, isDotted, version) : null] }), button ? renderButton(button) : null] }));
|
|
940
|
-
});
|
|
941
|
-
const renderImage = (image) => image?.src ? (jsx("div", { className: "flex justify-center", children: jsx(ImgInner, { className: "mb-6", image: image }) })) : null;
|
|
942
|
-
const renderCardTitle = (headlineSmallVersion, title) => title ? jsx("div", { className: HEADLINE_SMALL_VERSION[headlineSmallVersion], children: title }) : null;
|
|
943
|
-
const renderDescription$2 = (description, title) => description ? jsx("div", { className: `text-base ${title ? 'mt-2' : ''}`, children: description }) : null;
|
|
944
|
-
const renderAdditionalDescription = (additionalDescription) => additionalDescription ? (jsx("div", { className: "text-m-light text-secondary-text mt-auto", children: additionalDescription })) : null;
|
|
945
|
-
const renderButton = (button) => (jsx(Button, { className: "mt-6 w-full", ...button }));
|
|
946
|
-
const renderItems$1 = (items, isDotted, version = 'primary') => (jsx(List, { className: `max-w-[308px] mt-2 text-s ${version === 'primary' ? '!text-secondary-text' : ''}`, itemClassName: "mt-1 text-left first:mt-0", items: items.filter((item) => item?.text).map((item) => item.text), isDotted: isDotted, version: version }));
|
|
947
|
-
|
|
948
|
-
const GalleryContainer = JSX(({ context, title, headlineVersion = 'L', description, cards = [], version = 'normal', activeCardIndex, }) => {
|
|
949
|
-
return (jsxs("div", { children: [jsx("div", { className: "absolute top-0 left-0 bottom-0 w-[84px] bg-gradient-to-r from-white to-transparent" }), jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: headlineVersion, align: "center" }), jsx("div", { className: `flex mt-8 ${cards?.length <= galleryLengthForScrollMap[version] ? 'justify-center' : ''} duration-1000`, style: { transform: `translateX(-${activeCardIndex * cardWidthMap[version]}px)` }, role: "list", children: cards?.map((card, i) => renderCard({ card, version, context }, i)) })] }));
|
|
950
|
-
});
|
|
951
|
-
function renderCard({ card, version }, i) {
|
|
952
|
-
return (jsx("section", { className: `box-border border-solid border border-main-stroke p-6 mx-2 flex flex-col justify-between
|
|
953
|
-
items-stretch ${cardStyleMap$1[version]} ${VersionStyleMap[card.version ?? 'primary']} w-full col-span-4`, role: "listitem", children: jsx(GalleryCardInner, { ...card }) }, String(i)));
|
|
954
|
-
}
|
|
955
|
-
|
|
956
|
-
const GalleryInner = JSX(({ context, cards = [], className = '', version = 'normal', ...rest }) => {
|
|
957
|
-
const [activeCardIndex, setActiveCardIndex] = useState(0);
|
|
958
|
-
const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
|
|
959
|
-
const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
|
|
960
|
-
const isGalleryScrollAvailable = cards?.length > galleryLengthForScrollMap[version];
|
|
961
|
-
const showNextButton = isGalleryScrollAvailable &&
|
|
962
|
-
cards?.length - activeCardIndex > galleryLengthForScrollMap[version];
|
|
963
|
-
const showPrevButton = isGalleryScrollAvailable && activeCardIndex > 0;
|
|
964
|
-
return (jsxs(BlockWrapper, { context: context, className: `relative font-sans text-primary-text bg-white p-[42px] overflow-hidden ${className}`, ...rest, children: [jsx(GalleryContainer, { context: context, cards: cards, version: version, activeCardIndex: activeCardIndex, ...rest }), renderArrows({
|
|
965
|
-
handler: [handlePrevClick, handleNextClick],
|
|
966
|
-
isShown: [showPrevButton, showNextButton],
|
|
967
|
-
btnClass: ['left-8', 'right-8'],
|
|
968
|
-
className: 'top-1/2',
|
|
969
|
-
}), jsx("div", { className: "absolute top-0 left-0 bottom-0 w-[82px] bg-opacity-from-white" }), jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[82px] bg-opacity-to-white" })] }));
|
|
970
|
-
});
|
|
971
|
-
|
|
972
|
-
const Gallery = JSX((props) => jsx(GalleryInner, { ...props, version: "normal" }));
|
|
973
|
-
|
|
974
|
-
const MiniGallery = JSX((props) => (jsx(GalleryInner, { ...props, version: "mini" })));
|
|
975
|
-
|
|
976
|
-
const LinkList = JSX(({ className = '', documents, ...rest }) => {
|
|
977
|
-
return (jsx(BlockWrapper, { className: `font-sans bg-white mt-[10px] ${className}`, ...rest, children: jsx("ul", { className: "flex flex-col text-s text-secondary-text p-0", children: documents?.length ? renderLinkListItem(documents) : null }) }));
|
|
978
|
-
});
|
|
979
|
-
const renderLinkListItem = (documents) => {
|
|
980
|
-
return documents.map((doc, i) => {
|
|
981
|
-
const { text, ...linkProps } = doc;
|
|
982
|
-
return (jsx("li", { className: "mb-4 list-none", children: jsx("a", { className: "hover:text-primary-main", role: "link", ...linkProps, children: text ? text : null }) }, `list_item_${String(i)}`));
|
|
983
|
-
});
|
|
984
|
-
};
|
|
985
|
-
|
|
986
|
-
const EmbeddableBlocks = {
|
|
987
|
-
Headline,
|
|
988
|
-
LinkDocs,
|
|
989
|
-
TextBlock,
|
|
990
|
-
PictureText,
|
|
991
|
-
ProductBlock,
|
|
992
|
-
Tile,
|
|
993
|
-
ProductTile,
|
|
994
|
-
Gallery,
|
|
995
|
-
MiniGallery,
|
|
996
|
-
LinkList,
|
|
997
|
-
};
|
|
998
|
-
|
|
999
|
-
const renderBlocksList$1 = ({ blocks, context, className = '' }) => blocks?.length ? blocks.map(renderBlock$1({ context, className })) : [];
|
|
1000
|
-
const renderBlock$1 = ({ context, className }) => (block, i) => {
|
|
1001
|
-
if (!block) {
|
|
1002
|
-
return null;
|
|
1003
|
-
}
|
|
1004
|
-
const { style, blockListType: type, ...rest } = block;
|
|
1005
|
-
if (!type || !(type in EmbeddableBlocks)) {
|
|
1006
|
-
return null;
|
|
1007
|
-
}
|
|
1008
|
-
const classNameBlock = style2className(style);
|
|
1009
|
-
const EmbeddedBlock = EmbeddableBlocks[type];
|
|
1010
|
-
return (jsx(EmbeddedBlock, { className: `${className} ${classNameBlock}`, context: context, ...rest }, `block_${i}`));
|
|
1011
|
-
};
|
|
1012
|
-
|
|
1013
|
-
const Foldable = JSX(({ isFoldButtonOnTop = false, unfoldedByDefault = false, renderFoldableSection, renderFoldButton, }) => {
|
|
1014
|
-
const [isUnfolded, setIsUnfolded] = useState(unfoldedByDefault);
|
|
1015
|
-
const onToggle = useCallback(() => {
|
|
1016
|
-
setIsUnfolded((_) => !_);
|
|
1017
|
-
}, []);
|
|
1018
|
-
const sectionNode = renderFoldableSection({ isUnfolded, onToggle });
|
|
1019
|
-
const buttonNode = renderFoldButton ? renderFoldButton({ isUnfolded, onToggle }) : null;
|
|
1020
|
-
return isFoldButtonOnTop ? (jsxs("div", { children: [buttonNode, sectionNode] })) : (jsxs("div", { children: [sectionNode, buttonNode] }));
|
|
1021
|
-
});
|
|
1022
|
-
|
|
1023
|
-
const FoldableSection = JSX(({ className = '', isUnfolded, children }) => {
|
|
1024
|
-
const containerRef = useRef(null);
|
|
1025
|
-
useEffect(() => {
|
|
1026
|
-
if (containerRef.current) {
|
|
1027
|
-
containerRef.current.style.maxHeight = isUnfolded
|
|
1028
|
-
? `${containerRef.current.scrollHeight}px`
|
|
1029
|
-
: '';
|
|
1030
|
-
}
|
|
1031
|
-
}, [isUnfolded]);
|
|
1032
|
-
return (jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${className}`, children: children }));
|
|
1033
|
-
});
|
|
1034
|
-
|
|
1035
|
-
const icons$1 = ['PlusIcon', 'MinusIcon'];
|
|
1036
|
-
const AccordionItem = JSX(({ label = '', children, hasContent = true }) => (jsx("li", { className: "border-0 border-b border-solid border-main-divider last:border-b-0", children: jsx(Foldable, { isFoldButtonOnTop: true, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { className: "grid grid-cols-12", isUnfolded: isUnfolded, children: children })), renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(FoldButton, { label: label, icon: icons$1[Number(isUnfolded)], hasContent: hasContent, onClick: onToggle })) }) })));
|
|
1037
|
-
const FoldButton = JSX(({ label, icon, hasContent, onClick }) => (jsxs("button", { className: `border-none bg-transparent px-0 pt-5 pb-3.5 flex justify-between text-left w-full font-sans text-h6 group cursor-pointer ${hasContent ? 'group cursor-pointer' : ''}`, onClick: onClick, children: [jsx("span", { className: `text-xl font-medium pr-2.5`, children: label }), hasContent ? (jsx(ImgInner, { image: icon, className: "text-primary-main flex-shrink-0", width: "24", height: "24", asSVG: true })) : null] })));
|
|
1038
|
-
|
|
1039
|
-
const AccordionItemsList = JSX(({ children }) => (jsx("ul", { className: "list-none m-0 p-0", children: children })));
|
|
1040
|
-
|
|
1041
|
-
const ALIGN_TITLE = {
|
|
1042
|
-
left: 'text-left',
|
|
1043
|
-
center: 'text-center',
|
|
1044
|
-
right: 'text-right',
|
|
707
|
+
const HEADLINE_SMALL_VERSION = {
|
|
708
|
+
XL_L: 'text-xl-light',
|
|
709
|
+
XL_R: 'text-xl',
|
|
710
|
+
L_L: 'text-l-light',
|
|
711
|
+
L_R: 'text-l',
|
|
712
|
+
M: 'text-m-light',
|
|
713
|
+
S: 'text-s-light',
|
|
714
|
+
XS: 'text-xs-light',
|
|
1045
715
|
};
|
|
1046
|
-
const Accordion = JSX(({ title, description, accordionItems, context, className = '', accordionAlignTitle = 'center', ...rest }) => {
|
|
1047
|
-
return (jsxs(BlockWrapper, { context: context, className: `p-[50px] mb-1 last:mb-0 font-sans bg-white text-primary-text ${className}`, ...rest, children: [title ? (jsx(Heading, { headingType: "h3", as: "h2", className: `mb-2.5 ${ALIGN_TITLE[accordionAlignTitle]}`, title: title })) : null, description ? jsx("div", { className: "mb-2.5 text-l", children: description }) : null, accordionItems?.length ? (jsx(AccordionItemsList, { children: accordionItems.map((item, i) => (jsx(AccordionItem, { context: context, hasContent: Boolean(item.blocks?.length), ...item, children: renderBlocksList$1({ blocks: item.blocks, context, className: '!p-0 mb-5' }) }, `AccordionItem${i}`))) })) : null] }));
|
|
1048
|
-
});
|
|
1049
716
|
|
|
1050
|
-
const
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
const benefitsTextStyleMap = {
|
|
1055
|
-
primary: '',
|
|
1056
|
-
secondary: 'text-white',
|
|
1057
|
-
};
|
|
1058
|
-
const benefitsDescriptionStyleMap = {
|
|
1059
|
-
primary: 'text-secondary-text',
|
|
1060
|
-
secondary: 'text-white opacity-80',
|
|
1061
|
-
};
|
|
1062
|
-
const benefitsIconStyleMap = {
|
|
1063
|
-
primary: 'bg-main-divider text-primary-main',
|
|
1064
|
-
secondary: 'bg-white/30 text-black',
|
|
1065
|
-
};
|
|
1066
|
-
const BenefitsBlock = JSX(({ className = '', title, benefitList, benefitsBlockVersion = 'primary', ...rest }) => {
|
|
1067
|
-
return (jsxs(BlockWrapper, { className: `font-sans text-primary-text p-12 flex flex-col items-center ${className} ${benefitsBlockStyleMap[benefitsBlockVersion]}`, ...rest, children: [title ? (jsx(Heading, { headingType: "h3", as: "h2", className: `max-w-[47rem] text-center ${benefitsTextStyleMap[benefitsBlockVersion]}`, title: title })) : null, benefitList?.length ? renderBenefits(benefitList, benefitsBlockVersion) : null] }));
|
|
717
|
+
const Headline = JSX(({ bgColorHeadline = 'transparent', align = 'center', className = '', title, description, headlineVersion = 'XL', as, ...rest }) => {
|
|
718
|
+
const STYLE_MAPS = HEADLINE_BLOCK_STYLE_MAPS[bgColorHeadline];
|
|
719
|
+
const SIZE_MAPS = HEADLINE_VERSION[headlineVersion];
|
|
720
|
+
return (jsxs(BlockWrapper, { className: `font-sans flex flex-col p-[50px] ${SIZE_MAPS.gap} ${STYLE_MAPS.background} ${className}`, ...rest, children: [title ? (jsx(Heading, { headingType: SIZE_MAPS?.headingType, as: as || SIZE_MAPS?.as, className: `whitespace-pre-wrap ${STYLE_MAPS.text} ${ALIGN_TEXT[align]}`, title: title })) : null, description ? (jsx(Description, { className: `${SIZE_MAPS.descriptionFont} ${STYLE_MAPS.text} ${ALIGN_TEXT[align]}`, description: description })) : null] }));
|
|
1068
721
|
});
|
|
1069
|
-
const renderBenefits = (benefitList, benefitsBlockVersion) => {
|
|
1070
|
-
return (jsx("div", { className: "flex flex-wrap w-full justify-center gap-x-20 mt-8", children: benefitList.map(renderStep(benefitsBlockVersion)) }));
|
|
1071
|
-
};
|
|
1072
|
-
const setIconVersion = (benefitIcon, benefitsBlockVersion) => {
|
|
1073
|
-
if (!benefitIcon.icon || benefitIcon?.iconVersion) {
|
|
1074
|
-
return benefitIcon;
|
|
1075
|
-
}
|
|
1076
|
-
benefitIcon.iconVersion = benefitsBlockVersion === 'secondary' ? 'white' : 'normal';
|
|
1077
|
-
return benefitIcon;
|
|
1078
|
-
};
|
|
1079
|
-
const renderStep = (benefitsBlockVersion) => (benefit, i) => {
|
|
1080
|
-
const description = (benefit?.description || undefined);
|
|
1081
|
-
return (jsxs("div", { className: "flex items-center basis-1/2 max-w-[500px] mb-14", children: [benefit?.icon?.icon ? (jsx(ImgInner, { className: `w-[50px] h-[50px] min-w-[50px] p-3 rounded-full ${benefitsIconStyleMap[benefitsBlockVersion]}`, image: setIconVersion(benefit.icon, benefitsBlockVersion), asSVG: true })) : null, benefit?.icon?.src ? jsx(ImgInner, { image: benefit.icon }) : null, jsxs("div", { className: "ml-5", children: [benefit?.label ? (jsx("h3", { className: `text-h6 m-0 ${benefitsTextStyleMap[benefitsBlockVersion]}`, children: benefit.label })) : null, renderDescription$1(description, benefitsBlockVersion)] })] }, String(i)));
|
|
1082
|
-
};
|
|
1083
|
-
const renderDescription$1 = (description, benefitsBlockVersion) => {
|
|
1084
|
-
const benefitType = description ? description?.benefitType : null;
|
|
1085
|
-
if (!benefitType) {
|
|
1086
|
-
return null;
|
|
1087
|
-
}
|
|
1088
|
-
return description ? (jsx("div", { className: `text-l-light mt-2 ${benefitsDescriptionStyleMap[benefitsBlockVersion]}`, children: benefitType === 'list'
|
|
1089
|
-
? renderListBenefit(description)
|
|
1090
|
-
: renderTextBenefit(description) })) : null;
|
|
1091
|
-
};
|
|
1092
|
-
const renderTextBenefit = (description) => (description ? description.name : null);
|
|
1093
|
-
const renderListBenefit = (description) => {
|
|
1094
|
-
const listStyleType = description?.bullets ? 'list-disc pl-6' : '';
|
|
1095
|
-
return description?.items && description.items.length > 0 ? (jsx("ul", { className: listStyleType, children: description.items.map((_, i) => (jsx("li", { children: _ }, `benefitListItem-${i}`))) })) : null;
|
|
1096
|
-
};
|
|
1097
722
|
|
|
1098
723
|
const Bonus = JSX((props) => {
|
|
1099
724
|
const { context, className = '', title, description, bonusItems, ...rest } = props;
|
|
@@ -1111,23 +736,21 @@
|
|
|
1111
736
|
const renderBonusCount = (_) => (jsxs("div", { className: "relative -bottom-3 h-auto flex items-end mt-14 shrink-0", children: [_.bonusCount ? (jsx("span", { className: "font-mohave -tracking-[5px] text-title-extra bg-clip-text text-transparent bg-green-to-yellow -mb-7", children: _.bonusCount })) : null, _.bonusName ? (jsx("span", { className: "text-h2 bg-clip-text text-transparent bg-green-to-yellow", children: _.bonusName })) : null] }));
|
|
1112
737
|
const renderBonusImage = (_) => _.image ? (jsx(ImgInner, { className: `w-[50px] h-[50px] min-w-[50px] p-3 rounded-full`, image: _.image })) : null;
|
|
1113
738
|
|
|
1114
|
-
|
|
1115
|
-
const colSpan = getColSpan(className);
|
|
1116
|
-
if (colSpan <= 6) {
|
|
1117
|
-
return 'grid-cols-2';
|
|
1118
|
-
}
|
|
1119
|
-
else if (colSpan <= 8) {
|
|
1120
|
-
return 'grid-cols-3';
|
|
1121
|
-
}
|
|
1122
|
-
else {
|
|
1123
|
-
return 'grid-cols-4';
|
|
1124
|
-
}
|
|
1125
|
-
}
|
|
1126
|
-
|
|
1127
|
-
const BonusBenefitsBlock = JSX(({ context, className = '', title, subtitle, bonusBenefits, ...rest }) => (jsxs(BlockWrapper, { className: `font-sans text-primary-text bg-white p-[50px] flex flex-col text-center ${className}`, context: context, ...rest, children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: subtitle, headlineVersion: "M", align: "center" }), bonusBenefits?.length ? (jsx("div", { className: `grid gap-1 mt-8 ${getElementsColsValue(className)}`, children: bonusBenefits.map(renderBonusBenefit) })) : null] })));
|
|
739
|
+
const BonusBenefitsBlock = JSX(({ context, className = '', title, subtitle, bonusBenefits, columnsCount = '4', ...rest }) => (jsxs(BlockWrapper, { className: `font-sans text-primary-text bg-white p-[50px] flex flex-col text-center ${className}`, context: context, ...rest, children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: subtitle, headlineVersion: "M", align: "center" }), bonusBenefits?.length ? (jsx("div", { className: `grid gap-1 mt-8 ${getElementsColsValue(columnsCount)}`, children: bonusBenefits.map(renderBonusBenefit) })) : null] })));
|
|
1128
740
|
const renderBonusBenefit = (bonusBenefit, i) => {
|
|
1129
741
|
return (jsxs("div", { className: "flex flex-col items-center max-w-[292px]", children: [bonusBenefit?.icon ? (jsx(ImgInner, { className: "h-[160px] w-[180px] min-w-[180px] min-h-[160px]", image: bonusBenefit.icon, width: "180", height: "160" })) : null, jsx("div", { children: bonusBenefit?.label ? jsx("span", { className: "text-h6 m-0", children: bonusBenefit.label }) : null })] }, String(i)));
|
|
1130
742
|
};
|
|
743
|
+
const getElementsColsValue = (colValue) => colValue === '4' ? 'grid-cols-4' : 'grid-cols-5';
|
|
744
|
+
|
|
745
|
+
const ArrowButton = JSX(({ className, disabled, ...rest }) => (jsx(Button, { rounded: true, className: `group 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
|
|
746
|
+
? 'bg-secondary-light text-secondary-text'
|
|
747
|
+
: 'bg-white text-primary-text hover:text-primary-main'} ${className || ''}`, disabled: disabled, ...rest, children: jsx(ImgInner, { className: "w-4 h-4 min-w-4 min-h-4 rounded-full box-border", image: { icon: 'ArrowLeftIcon', iconVersion: 'black' }, imageClassName: "group-hover:text-primary-main", width: "16", height: "16", asSVG: true }) })));
|
|
748
|
+
|
|
749
|
+
function renderArrows({ handler, isShown, btnClass, className = '', isDisabled = false, }) {
|
|
750
|
+
return (jsxs("div", { children: [isShown[0] || isDisabled ? (jsx(ArrowButton, { className: `absolute z-10 ${btnClass[0]} ${className}`, onClick: handler[0], ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043B\u0435\u0432\u043E", "data-block-control": "scroll-left", disabled: !isShown[0] })) : null, isShown[1] || isDisabled ? (jsx(ArrowButton, { className: `absolute z-10 rotate-180 ${btnClass[1]} ${className}`, onClick: handler[1], ariaLabel: "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E", "data-block-control": "scroll-right", disabled: !isShown[1] })) : null] }));
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
const addSpacesBetweenNumbers = (number) => new Intl.NumberFormat('ru-RU', { maximumSignificantDigits: 3 }).format(number);
|
|
1131
754
|
|
|
1132
755
|
const CalculatorValueBlock = JSX(({ title, value, postfix = '', prefix, className = '' }) => {
|
|
1133
756
|
return (jsxs("div", { className: `mb-7 ${className}`, children: [title ? jsx("div", { className: "text-l-light text-secondary-text", children: title }) : null, value ? (jsxs("div", { className: "text-h3", children: [prefix, " ", addSpacesBetweenNumbers(Math.round(value)), " ", postfix] })) : null] }));
|
|
@@ -1379,8 +1002,8 @@
|
|
|
1379
1002
|
return (jsx("div", { className: "flex flex-col gap-3", children: items?.map(({ id, text }) => (jsx(Checkbox, { isRadio: true, text: text, checked: checkedItem === id, onChange: () => onChangeCheckedItem(id) }, id))) }));
|
|
1380
1003
|
});
|
|
1381
1004
|
|
|
1382
|
-
function renderPaymentTypeSelector(
|
|
1383
|
-
return
|
|
1005
|
+
function renderPaymentTypeSelector({ onChange, ...rest }) {
|
|
1006
|
+
return jsx(RadioButtonGroup, { onChangeCheckedItem: onChange, ...rest });
|
|
1384
1007
|
}
|
|
1385
1008
|
|
|
1386
1009
|
/**
|
|
@@ -1445,7 +1068,8 @@
|
|
|
1445
1068
|
monthsValue,
|
|
1446
1069
|
};
|
|
1447
1070
|
const calculatorParams = useCreditCalculatorParams(userInputParams, sourceBookDir);
|
|
1448
|
-
return (jsxs("section", { className: className, children: [jsxs("div", { className: "w-[468px]", children: [renderWantedSumInput('Сумма кредита, ₽', { ...calculatorParams, step: 500 }, setMoneyValue), renderMonthsInput('Срок кредита, месяцев', calculatorParams, setMonthsValue), jsxs("div", { className: "mt-7", children: [jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u0437\u0430\u0440\u043F\u043B\u0430\u0442\u0443 \u043D\u0430 \u0441\u0447\u0451\u0442 \u0432 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0435", checked: isSalaryClient, onChange: toggleIsSalaryClient }), jsx(Checkbox, { className: "mt-3", text: "\u0420\u0430\u0431\u043E\u0442\u0430\u044E \u0432 \u0431\u044E\u0434\u0436\u0435\u0442\u043D\u043E\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", checked: isStateEmployee, onChange: toggleIsStateEmployee }), jsx(Checkbox, { className: "mt-3", text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", checked: isInsurance, onChange: toggleIsInsurance })] })] }), jsx(Rate, { title: "\u0421\u0442\u0430\u0432\u043A\u0430", rate: calculatorParams.finalRate, rateBlockClassName: "tracking-[-25px]", unit: "%" }), jsxs("div", { className: "w-full max-w-[350px]", children: [jsx(CalculatorValueBlock, { title: isAnnuity ? 'Ежемесячный платеж' : 'Платёж в первый месяц', value: calculatorParams.monthlyPayment, postfix: "\u20BD" }), renderPaymentTypeSelector(
|
|
1071
|
+
return (jsxs("section", { className: className, children: [jsxs("div", { className: "w-[468px]", children: [renderWantedSumInput('Сумма кредита, ₽', { ...calculatorParams, step: 500 }, setMoneyValue), renderMonthsInput('Срок кредита, месяцев', calculatorParams, setMonthsValue), jsxs("div", { className: "mt-7", children: [jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u0437\u0430\u0440\u043F\u043B\u0430\u0442\u0443 \u043D\u0430 \u0441\u0447\u0451\u0442 \u0432 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0435", checked: isSalaryClient, onChange: toggleIsSalaryClient }), jsx(Checkbox, { className: "mt-3", text: "\u0420\u0430\u0431\u043E\u0442\u0430\u044E \u0432 \u0431\u044E\u0434\u0436\u0435\u0442\u043D\u043E\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", checked: isStateEmployee, onChange: toggleIsStateEmployee }), jsx(Checkbox, { className: "mt-3", text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", checked: isInsurance, onChange: toggleIsInsurance })] })] }), jsx(Rate, { title: "\u0421\u0442\u0430\u0432\u043A\u0430", rate: calculatorParams.finalRate, rateBlockClassName: "tracking-[-25px]", unit: "%" }), jsxs("div", { className: "w-full max-w-[350px]", children: [jsx(CalculatorValueBlock, { title: isAnnuity ? 'Ежемесячный платеж' : 'Платёж в первый месяц', value: calculatorParams.monthlyPayment, postfix: "\u20BD" }), renderPaymentTypeSelector({
|
|
1072
|
+
context,
|
|
1449
1073
|
items: paymentTypeItems,
|
|
1450
1074
|
checkedItem: isAnnuity ? ANNUITY : DIFFERENTIAL,
|
|
1451
1075
|
onChange: (text) => toggleIsAnnuity(text === ANNUITY),
|
|
@@ -1478,7 +1102,8 @@
|
|
|
1478
1102
|
minMonths: DEFAULT_MIN_MONTHS,
|
|
1479
1103
|
maxMonths: DEFAULT_MAX_MONTHS,
|
|
1480
1104
|
monthsValue,
|
|
1481
|
-
}, setMonthsValue)] }), jsx(Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), jsxs("div", { className: "w-full max-w-[350px]", children: [(jsx(CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) , (jsx(CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finallySum, postfix: "\u20BD" })) , renderPaymentTypeSelector(
|
|
1105
|
+
}, setMonthsValue)] }), jsx(Rate, { rate: rate || 1, rateBlockClassName: "tracking-[-25px]", unit: "%" }), jsxs("div", { className: "w-full max-w-[350px]", children: [(jsx(CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u043F\u043E \u0432\u043A\u043B\u0430\u0434\u0443", value: income, postfix: "\u20BD", prefix: "+" })) , (jsx(CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finallySum, postfix: "\u20BD" })) , renderPaymentTypeSelector({
|
|
1106
|
+
context,
|
|
1482
1107
|
items: depositTypeItems,
|
|
1483
1108
|
checkedItem: isEveryMonth ? EVERY_MONTH : AT_END_TERM,
|
|
1484
1109
|
onChange: (text) => toggleIsEveryMonth(text === EVERY_MONTH),
|
|
@@ -1615,14 +1240,14 @@
|
|
|
1615
1240
|
return (jsxs(BlockWrapper, { className: `p-[50px] flex flex-col items-center font-sans bg-white ${className}`, context: context, ...rest, children: [title ? jsx(Heading, { className: "max-w-[684px] pb-9", headingType: "h2", title: title }) : null, jsxs("form", { className: "w-[468px]", method: "POST", action: FORM_URL, children: [jsx(CurrencyInput, { name: AMOUNT_KEY, value: value, onChange: setValue, valid: value === '' || !isDisabled, placeholder: placeholder, label: label }), button?.text ? (jsx("button", { type: "submit", className: `w-full p-4 mt-6 ${buttonStyle} `, disabled: isDisabled, ...useLink({ router, handlerDecorator }, button), children: button.text })) : null] })] }));
|
|
1616
1241
|
});
|
|
1617
1242
|
|
|
1618
|
-
const cardStyleMap = {
|
|
1243
|
+
const cardStyleMap$1 = {
|
|
1619
1244
|
black: 'bg-black',
|
|
1620
1245
|
white: 'bg-white',
|
|
1621
1246
|
};
|
|
1622
1247
|
const CatalogCard = JSX(({ className = '', title, description, image, price, button, colors }) => {
|
|
1623
1248
|
return (jsxs("section", { className: `border border-solid box-border border-main-stroke p-[30px] min-w-[402px] flex flex-col justify-left ${className}`, role: "listitem", children: [image?.src ? jsx(ImgInner, { className: "mb-5 flex justify-center", image: image }) : null, title ? (jsx(Heading, { headingType: "h6", as: "h4", className: "text-left mb-1.5", title: title })) : null, description ? jsx("div", { className: "text-m-light text-left mb-4", children: description }) : null, colors?.length ? (jsxs("div", { className: "flex mb-4 text-m-light text-secondary-text", children: [jsx("div", { className: "mr-1.5", children: "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u0446\u0432\u0435\u0442\u0430: " }), colors.map(renderColorOption)] })) : null, price ? jsxs("div", { className: "text-h3 text-left", children: [price, "\u00A0\u20BD"] }) : null, button ? jsx(Button, { className: "mt-5 w-full", ...button }) : null] }));
|
|
1624
1249
|
});
|
|
1625
|
-
const renderColorOption = (color, i) => (jsx("span", { className: `w-6 h-6 ml-3 border border-solid border-main-divider rounded-full ${cardStyleMap[color]}` }, String(i)));
|
|
1250
|
+
const renderColorOption = (color, i) => (jsx("span", { className: `w-6 h-6 ml-3 border border-solid border-main-divider rounded-full ${cardStyleMap$1[color]}` }, String(i)));
|
|
1626
1251
|
|
|
1627
1252
|
const BLUR_BLOCK_CLASSES$1 = 'absolute top-0 bottom-0 w-[84px]';
|
|
1628
1253
|
const CARD_FULL_VIEW_COUNT$1 = 3;
|
|
@@ -1812,6 +1437,10 @@
|
|
|
1812
1437
|
return result;
|
|
1813
1438
|
}, []);
|
|
1814
1439
|
|
|
1440
|
+
const BaseTile = JSX(({ className = '', title = '', children, buttons, image }) => {
|
|
1441
|
+
return (jsxs("div", { className: `font-sans flex flex-col grow h-full items-start ${className}`, children: [title, jsxs("div", { className: "flex grow w-full justify-between", children: [jsxs("div", { className: "flex flex-col justify-between w-full", children: [jsx("div", { className: "h-full", children: children }), buttons ? jsx("div", { className: "mt-auto pt-8", children: buttons }) : null] }), image] })] }));
|
|
1442
|
+
});
|
|
1443
|
+
|
|
1815
1444
|
var Currency;
|
|
1816
1445
|
(function (Currency) {
|
|
1817
1446
|
Currency["RUB"] = "RUB";
|
|
@@ -1840,6 +1469,29 @@
|
|
|
1840
1469
|
|
|
1841
1470
|
const CurrentLocation = JSX(({ className = '', address, distance }) => (jsxs("div", { className: `flex ${className}`, children: [jsx(ImgInner, { image: { icon: 'GpsIcon' }, width: "24", height: "24", asSVG: true }), jsxs("div", { className: "ml-3", children: [address ? jsx("p", { className: "text-primary-main m-0 mb-1 text-l", children: address }) : null, distance ? (jsxs("p", { className: "text-secondary-text m-0 text-m-light", children: ["\u041A\u0443\u0440\u0441 \u0443\u043A\u0430\u0437\u0430\u043D \u0434\u043B\u044F \u0431\u043B\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043E \u043E\u0444\u0438\u0441\u0430 - ", distance] })) : null] })] })));
|
|
1842
1471
|
|
|
1472
|
+
const calculateResult = (value, rate, precision) => {
|
|
1473
|
+
const result = Number(formatValue(value)) * Math.pow(rate, precision ? -1 : 1);
|
|
1474
|
+
return Number.isInteger(result) ? result : roundTo(result);
|
|
1475
|
+
};
|
|
1476
|
+
const formatValue = (value) => value.replace(/[^\d.,]/g, '').replace(',', '.');
|
|
1477
|
+
|
|
1478
|
+
const tableFunc = (table) => (input) => {
|
|
1479
|
+
const [, output] = table.find(([predicate]) => predicate(input)) || [];
|
|
1480
|
+
return output;
|
|
1481
|
+
};
|
|
1482
|
+
|
|
1483
|
+
const callbackCurrencySelect = (props) => tableFunc([
|
|
1484
|
+
[
|
|
1485
|
+
(_) => _.value !== Currency.RUB && _.oppositeValue !== Currency.RUB,
|
|
1486
|
+
() => props.handleConvert(props.value, Currency.RUB),
|
|
1487
|
+
],
|
|
1488
|
+
[
|
|
1489
|
+
(_) => _.value === Currency.RUB && _.oppositeValue === Currency.RUB,
|
|
1490
|
+
() => props.handleConvert(props.value, Currency.USD),
|
|
1491
|
+
],
|
|
1492
|
+
[() => true, () => props.handleConvert(props.value)],
|
|
1493
|
+
])(props)?.();
|
|
1494
|
+
|
|
1843
1495
|
function useOutsideClick(wrapperRef, setIsOpen) {
|
|
1844
1496
|
useEffect(() => {
|
|
1845
1497
|
function handleClickOutside(event) {
|
|
@@ -1889,29 +1541,6 @@
|
|
|
1889
1541
|
return (jsxs("div", { className: "relative flex", children: [jsx(Input, { className: "shrink-0 text-l w-full appearance-none mr-[-90px]", placeholder: placeholder, type: "text", value: value, onChange: setValue }), ratesOptions.length ? (jsx(Select, { isBorder: false, onChange: (_) => setSelected(_.key), options: ratesOptions, value: selectedValue })) : null] }));
|
|
1890
1542
|
}
|
|
1891
1543
|
|
|
1892
|
-
const calculateResult = (value, rate, precision) => {
|
|
1893
|
-
const result = Number(formatValue(value)) * Math.pow(rate, precision ? -1 : 1);
|
|
1894
|
-
return Number.isInteger(result) ? result : roundTo(result);
|
|
1895
|
-
};
|
|
1896
|
-
const formatValue = (value) => value.replace(/[^\d.,]/g, '').replace(',', '.');
|
|
1897
|
-
|
|
1898
|
-
const tableFunc = (table) => (input) => {
|
|
1899
|
-
const [, output] = table.find(([predicate]) => predicate(input)) || [];
|
|
1900
|
-
return output;
|
|
1901
|
-
};
|
|
1902
|
-
|
|
1903
|
-
const callbackCurrencySelect = (props) => tableFunc([
|
|
1904
|
-
[
|
|
1905
|
-
(_) => _.value !== Currency.RUB && _.oppositeValue !== Currency.RUB,
|
|
1906
|
-
() => props.handleConvert(props.value, Currency.RUB),
|
|
1907
|
-
],
|
|
1908
|
-
[
|
|
1909
|
-
(_) => _.value === Currency.RUB && _.oppositeValue === Currency.RUB,
|
|
1910
|
-
() => props.handleConvert(props.value, Currency.USD),
|
|
1911
|
-
],
|
|
1912
|
-
[() => true, () => props.handleConvert(props.value)],
|
|
1913
|
-
])(props)?.();
|
|
1914
|
-
|
|
1915
1544
|
const ExchangeCurrencyCalculator = JSX(({ context, className = '', currencyRatesBuy, currencyRatesSell, button }) => {
|
|
1916
1545
|
const { useRouter, handlerDecorator } = context;
|
|
1917
1546
|
const router = useRouter();
|
|
@@ -1989,8 +1618,7 @@
|
|
|
1989
1618
|
currencyRatesBuy.unshift({ code: Currency.RUB });
|
|
1990
1619
|
const currencyRatesSell = currencyRates.filter((_) => _.sell);
|
|
1991
1620
|
currencyRatesSell.push({ code: Currency.RUB });
|
|
1992
|
-
return (jsx(BlockWrapper, { context: context, className: `bg-white text-primary-text font-sans p-9 box-border min-h-[320px]
|
|
1993
|
-
${className}`, ...rest, children: jsx(BaseTile, { context: context, title: jsx(Heading, { headingType: "h4", title: title, className: "whitespace-pre-wrap text-h4 mb-5" }), children: jsxs("div", { className: "flex", children: [jsxs("div", { className: "mr-14 pt-4", children: [currencyRates ? (jsx(CurrencyTable, { className: "mb-[30px]", exchangeCurrencyItems: currencyRates })) : null, jsx(CurrentLocation, { ...DEFAULT_LOCATION })] }), currencyRates.length && currencyRatesBuy.length && currencyRatesSell.length ? (jsx(ExchangeCurrencyCalculator, { className: "grow", context: context, currencyRatesBuy: currencyRatesBuy, currencyRatesSell: currencyRatesSell, button: button })) : null] }) }) }));
|
|
1621
|
+
return (jsx(BlockWrapper, { context: context, className: `bg-white text-primary-text font-sans p-9 box-border min-h-[320px] ${className}`, ...rest, children: jsx(BaseTile, { context: context, title: jsx(Heading, { headingType: "h4", title: title, className: "whitespace-pre-wrap text-h4 mb-5" }), children: jsxs("div", { className: "flex", children: [jsxs("div", { className: "mr-14 pt-4", children: [currencyRates ? (jsx(CurrencyTable, { className: "mb-[30px]", exchangeCurrencyItems: currencyRates })) : null, jsx(CurrentLocation, { ...DEFAULT_LOCATION })] }), currencyRates.length && currencyRatesBuy.length && currencyRatesSell.length ? (jsx(ExchangeCurrencyCalculator, { className: "grow", context: context, currencyRatesBuy: currencyRatesBuy, currencyRatesSell: currencyRatesSell, button: button })) : null] }) }) }));
|
|
1994
1622
|
});
|
|
1995
1623
|
|
|
1996
1624
|
const ICON_VERSION_MAP = {
|
|
@@ -2091,10 +1719,10 @@
|
|
|
2091
1719
|
router: context.useRouter(),
|
|
2092
1720
|
handlerDecorator: context.handlerDecorator,
|
|
2093
1721
|
};
|
|
2094
|
-
return (jsx("div", { className: `flex flex-grow items-start justify-between gap-[54px] xl:gap-5 ${className}`, children: mergedItems?.map((_, i) => renderColumn(_, i, linkParams)) }));
|
|
1722
|
+
return (jsx("div", { className: `flex flex-grow items-start justify-between gap-[54px] xl:gap-5 ${className}`, children: mergedItems?.map((_, i) => renderColumn({ menuItem: _, index: i, ...linkParams })) }));
|
|
2095
1723
|
});
|
|
2096
|
-
const renderColumn = (
|
|
2097
|
-
const { text, href, items, target } =
|
|
1724
|
+
const renderColumn = ({ menuItem, index, router, handlerDecorator }) => {
|
|
1725
|
+
const { text, href, items, target } = menuItem;
|
|
2098
1726
|
return (jsxs("div", { className: "flex flex-col w-1/5 last:w-1/4 gap-3.5", children: [jsx("a", { className: "block leading-5 text-l text-primary-text hover:text-primary-main no-underline", href: href, target: target || '_self', children: text || `Раздел ${index}` }), items?.map((_, i) => (jsx(ColumnItem, { ...useLink({ router, handlerDecorator }, _), index: i }, String(i))))] }, String(index)));
|
|
2099
1727
|
};
|
|
2100
1728
|
const ColumnItem = JSX(({ text, href, target, index }) => (jsx("a", { className: "block text-l-light text-secondary-text hover:text-primary-main no-underline", href: href, target: target || '_self', children: text || `Раздел ${index}` })));
|
|
@@ -2131,35 +1759,131 @@
|
|
|
2131
1759
|
if (!icon) {
|
|
2132
1760
|
return null;
|
|
2133
1761
|
}
|
|
2134
|
-
const classes = version === 'secondary'
|
|
2135
|
-
? 'bg-white hover:bg-secondary-hover'
|
|
2136
|
-
: 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
|
|
2137
|
-
const isPrimary = version === 'primary';
|
|
2138
|
-
return (jsx("a", { className: `flex items-center justify-center rounded-md w-14 h-14 group box-border ${classes} ${isPrimary ? 'hover:text-black' : ''}`, href: href, "aria-label": label, target: "_blank", rel: "noopener noreferrer", children: icon ? (jsx(ImgInner, { image: icon, imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
|
|
1762
|
+
const classes = version === 'secondary'
|
|
1763
|
+
? 'bg-white hover:bg-secondary-hover'
|
|
1764
|
+
: 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
|
|
1765
|
+
const isPrimary = version === 'primary';
|
|
1766
|
+
return (jsx("a", { className: `flex items-center justify-center rounded-md w-14 h-14 group box-border ${classes} ${isPrimary ? 'hover:text-black' : ''}`, href: href, "aria-label": label, target: "_blank", rel: "noopener noreferrer", children: icon ? (jsx(ImgInner, { image: icon, imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
|
|
1767
|
+
});
|
|
1768
|
+
|
|
1769
|
+
const SocialMedia = JSX(({ className = '', media, version, context, children }) => {
|
|
1770
|
+
const router = context.useRouter();
|
|
1771
|
+
const { handlerDecorator } = context;
|
|
1772
|
+
return (jsxs("div", { className: "font-sans", children: [jsx("div", { className: `flex gap-2.5 ${className}`, children: media?.map((_, index) => (jsx(MediaButton, { version: version, ...useLink({ router, handlerDecorator }, _) }, String(index)))) }), jsx("span", { className: "text-s-light text-secondary-text", children: children })] }));
|
|
1773
|
+
});
|
|
1774
|
+
|
|
1775
|
+
const TextInformationLink = JSX(({ className = '', index, text, href, target, onClick }) => (jsx("a", { className: `text-xs-light text-secondary-text visited:text-secondary-text hover:text-primary-main inline-block no-underline max-w-[292px] ${className}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` })));
|
|
1776
|
+
|
|
1777
|
+
const TextInformation = JSX(({ className, links, context }) => {
|
|
1778
|
+
const router = context.useRouter();
|
|
1779
|
+
const { handlerDecorator } = context;
|
|
1780
|
+
return (jsxs("div", { className: `${className || ''}`, children: [jsx("div", { className: "pt-5", children: jsx("span", { className: "text-xs-light text-secondary-text", children: `\u00a9\u00A02000-${new Date().getFullYear()}\u00A0АО \u00ABРоссельхозбанк\u00BB Генеральная лицензия Банка России \u2116\u00A03349 от\u00A012.08.2015\u00A0г.` }) }), links?.length ? (jsx("div", { className: "flex justify-start items-start gap-5 pt-2.5", children: links.map((_, i) => (jsx(TextInformationLink, { index: i, ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1781
|
+
});
|
|
1782
|
+
|
|
1783
|
+
const LEFT_COL_WIDTH_FULL_HD = 'w-[204px]';
|
|
1784
|
+
const Footer = JSX(({ className, documents, relatedEnterprises, contacts, socialMedia, mobileApps, topItems, context, page, ...rest }) => {
|
|
1785
|
+
const fallback = page?.fallback;
|
|
1786
|
+
return (jsxs(BlockWrapper, { tag: "footer", context: context, className: `p-9 bg-white font-sans ${className || ''}`, ...rest, children: [jsxs("div", { className: "flex items-stretch gap-[54px] pb-[30px] xl:gap-8", children: [jsx(Logo, { className: LEFT_COL_WIDTH_FULL_HD }), jsx(SearchBar, { context: context, className: "grow" })] }), jsxs("div", { className: "flex items-stretch gap-[54px] xl:gap-8", children: [jsxs("div", { className: `${LEFT_COL_WIDTH_FULL_HD} flex flex-col shrink-0 overflow-hidden`, children: [jsx(Contacts, { items: contacts, context: context, hasButton: true }), jsx(SocialMedia, { media: socialMedia, context: context, children: "\u0421\u043E\u0446\u0441\u0435\u0442\u0438" }), jsx(SocialMedia, { className: "mt-6", media: mobileApps, context: context, children: "\u041C\u043E\u0431\u0438\u043B\u044C\u043D\u043E\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435" })] }), jsx(Sitemap, { className: "pt-[3px]", context: context, items: topItems, fallback: fallback })] }), jsx(HorizontalNavigation, { className: "mt-[98px]", links: relatedEnterprises, context: context }), jsx(TextInformation, { links: documents, context: context })] }));
|
|
1787
|
+
});
|
|
1788
|
+
|
|
1789
|
+
const galleryLengthForScrollMap = {
|
|
1790
|
+
normal: 3,
|
|
1791
|
+
mini: 4,
|
|
1792
|
+
};
|
|
1793
|
+
const cardStyleMap = {
|
|
1794
|
+
normal: 'min-w-[364px] w-[364px]',
|
|
1795
|
+
mini: 'min-w-[260px] w-[260px]',
|
|
1796
|
+
};
|
|
1797
|
+
const cardWidthMap = {
|
|
1798
|
+
normal: 380,
|
|
1799
|
+
mini: 276,
|
|
1800
|
+
};
|
|
1801
|
+
|
|
1802
|
+
const VersionStyleMap = {
|
|
1803
|
+
primary: 'bg-white text-primary-text',
|
|
1804
|
+
secondary: 'bg-primary-main text-white',
|
|
1805
|
+
};
|
|
1806
|
+
|
|
1807
|
+
const LIST_DOT_STYLE_MAP = {
|
|
1808
|
+
primary: 'bg-primary-text',
|
|
1809
|
+
secondary: 'bg-white',
|
|
1810
|
+
gray: 'bg-secondary-text',
|
|
1811
|
+
};
|
|
1812
|
+
const DOT_SIZE_MAP = {
|
|
1813
|
+
L: 'w-1.5 h-1.5 min-w-1.5 min-h-1.5 mr-4 mt-3',
|
|
1814
|
+
M: 'w-1.5 h-1.5 min-w-1.5 min-h-1.5 mr-3 mt-3',
|
|
1815
|
+
S: 'w-1 h-1 min-w-1 min-h-1 mr-2 mt-2.5',
|
|
1816
|
+
};
|
|
1817
|
+
const ListItem = JSX(({ className = '', isDotted = true, children, version = 'primary', size = 'M' }) => {
|
|
1818
|
+
return (jsxs("div", { className: `font-sans flex items-start ${className}`, role: "listitem", children: [isDotted ? (jsx("div", { className: `rounded-full inline-block ${LIST_DOT_STYLE_MAP[version]} ${DOT_SIZE_MAP[size]}` })) : null, jsx("span", { children: children })] }));
|
|
1819
|
+
});
|
|
1820
|
+
|
|
1821
|
+
const TEXT_STYLE_MAP = {
|
|
1822
|
+
primary: 'text-primary-text',
|
|
1823
|
+
secondary: 'text-white',
|
|
1824
|
+
gray: 'text-secondary-text',
|
|
1825
|
+
};
|
|
1826
|
+
const TEXT_SIZE_MAP = {
|
|
1827
|
+
S: 'text-l-light',
|
|
1828
|
+
M: 'text-h6',
|
|
1829
|
+
L: 'text-h5',
|
|
1830
|
+
};
|
|
1831
|
+
const ITEM_INDENT_MAP = {
|
|
1832
|
+
S: 'ml-2',
|
|
1833
|
+
M: 'ml-3',
|
|
1834
|
+
L: 'ml-4',
|
|
1835
|
+
};
|
|
1836
|
+
const List = JSX((props) => {
|
|
1837
|
+
const { className = '', hasIndent, isDotted, itemClassName = '', items, listItemSize = 'M', version = 'primary', } = props;
|
|
1838
|
+
if (!items?.length) {
|
|
1839
|
+
return null;
|
|
1840
|
+
}
|
|
1841
|
+
return (jsx("section", { className: `${TEXT_STYLE_MAP[version]} ${TEXT_SIZE_MAP[listItemSize]} ${className} ${hasIndent ? ITEM_INDENT_MAP[listItemSize] : ''}`, role: "list", children: items.map((item, i) => (jsx(ListItem, { className: `${itemClassName} mb-1.5`, isDotted: isDotted, version: version, size: listItemSize, children: item }, String(i)))) }));
|
|
2139
1842
|
});
|
|
2140
1843
|
|
|
2141
|
-
const
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
1844
|
+
const ALIGN_TITLE = {
|
|
1845
|
+
left: 'text-left',
|
|
1846
|
+
center: 'text-center',
|
|
1847
|
+
right: 'text-right',
|
|
1848
|
+
};
|
|
1849
|
+
const GalleryCardInner = JSX(({ title, headlineSmallVersion = 'XL_L', description, additionalDescription, image, items, button, version, isDotted = true, align = 'center', }) => {
|
|
1850
|
+
return (jsxs("div", { className: `h-full flex flex-col justify-between ${ALIGN_TITLE[align]}`, children: [jsxs("div", { className: "flex flex-col h-full", children: [renderImage$1(image), renderCardTitle(headlineSmallVersion, title), renderDescription$1(description, title), renderAdditionalDescription$1(additionalDescription), items?.length ? renderItems$1(items, isDotted, version) : null] }), button ? renderButton(button) : null] }));
|
|
2145
1851
|
});
|
|
1852
|
+
const renderImage$1 = (image) => image?.src ? (jsx("div", { className: "flex justify-center", children: jsx(ImgInner, { className: "mb-6", image: image }) })) : null;
|
|
1853
|
+
const renderCardTitle = (headlineSmallVersion, title) => title ? jsx("div", { className: HEADLINE_SMALL_VERSION[headlineSmallVersion], children: title }) : null;
|
|
1854
|
+
const renderDescription$1 = (description, title) => description ? jsx("div", { className: `text-base ${title ? 'mt-2' : ''}`, children: description }) : null;
|
|
1855
|
+
const renderAdditionalDescription$1 = (additionalDescription) => additionalDescription ? (jsx("div", { className: "text-m-light text-secondary-text mt-auto", children: additionalDescription })) : null;
|
|
1856
|
+
const renderButton = (button) => (jsx(Button, { className: "mt-6 w-full", ...button }));
|
|
1857
|
+
const renderItems$1 = (items, isDotted, version = 'primary') => (jsx(List, { className: `max-w-[308px] mt-2 text-s ${version === 'primary' ? '!text-secondary-text' : ''}`, itemClassName: "mt-1 text-left first:mt-0", items: items.filter((item) => item?.text).map((item) => item.text), isDotted: isDotted, version: version }));
|
|
2146
1858
|
|
|
2147
|
-
const
|
|
2148
|
-
|
|
2149
|
-
const TextInformation = JSX(({ className, links, context }) => {
|
|
2150
|
-
const router = context.useRouter();
|
|
2151
|
-
const { handlerDecorator } = context;
|
|
2152
|
-
return (jsxs("div", { className: `${className || ''}`, children: [jsx("div", { className: "pt-5", children: jsx("span", { className: "text-xs-light text-secondary-text", children: `\u00a9\u00A02000-${new Date().getFullYear()}\u00A0АО \u00ABРоссельхозбанк\u00BB Генеральная лицензия Банка России \u2116\u00A03349 от\u00A012.08.2015\u00A0г.` }) }), links?.length ? (jsx("div", { className: "flex justify-start items-start gap-5 pt-2.5", children: links.map((_, i) => (jsx(TextInformationLink, { index: i, ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1859
|
+
const GalleryContainer = JSX(({ context, title, headlineVersion = 'L', description, cards = [], version = 'normal', activeCardIndex, }) => {
|
|
1860
|
+
return (jsxs("div", { children: [jsx("div", { className: "absolute top-0 left-0 bottom-0 w-[84px] bg-gradient-to-r from-white to-transparent" }), jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: headlineVersion, align: "center" }), jsx("div", { className: `flex mt-8 ${cards?.length <= galleryLengthForScrollMap[version] ? 'justify-center' : ''} duration-1000`, style: { transform: `translateX(-${activeCardIndex * cardWidthMap[version]}px)` }, role: "list", children: cards?.map((card, i) => renderCard({ card, version, context }, i)) })] }));
|
|
2153
1861
|
});
|
|
1862
|
+
function renderCard({ card, version }, i) {
|
|
1863
|
+
return (jsx("section", { className: `box-border border-solid border border-main-stroke p-6 mx-2 flex flex-col justify-between
|
|
1864
|
+
items-stretch ${cardStyleMap[version]} ${VersionStyleMap[card.version ?? 'primary']} w-full col-span-4`, role: "listitem", children: jsx(GalleryCardInner, { ...card }) }, String(i)));
|
|
1865
|
+
}
|
|
2154
1866
|
|
|
2155
|
-
const
|
|
2156
|
-
|
|
2157
|
-
const
|
|
2158
|
-
|
|
1867
|
+
const GalleryInner = JSX(({ context, cards = [], className = '', version = 'normal', ...rest }) => {
|
|
1868
|
+
const [activeCardIndex, setActiveCardIndex] = useState(0);
|
|
1869
|
+
const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
|
|
1870
|
+
const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
|
|
1871
|
+
const isGalleryScrollAvailable = cards?.length > galleryLengthForScrollMap[version];
|
|
1872
|
+
const showNextButton = isGalleryScrollAvailable &&
|
|
1873
|
+
cards?.length - activeCardIndex > galleryLengthForScrollMap[version];
|
|
1874
|
+
const showPrevButton = isGalleryScrollAvailable && activeCardIndex > 0;
|
|
1875
|
+
return (jsxs(BlockWrapper, { context: context, className: `relative font-sans text-primary-text bg-white p-[42px] overflow-hidden ${className}`, ...rest, children: [jsx(GalleryContainer, { context: context, cards: cards, version: version, activeCardIndex: activeCardIndex, ...rest }), renderArrows({
|
|
1876
|
+
handler: [handlePrevClick, handleNextClick],
|
|
1877
|
+
isShown: [showPrevButton, showNextButton],
|
|
1878
|
+
btnClass: ['left-8', 'right-8'],
|
|
1879
|
+
className: 'top-1/2',
|
|
1880
|
+
}), jsx("div", { className: "absolute top-0 left-0 bottom-0 w-[82px] bg-opacity-from-white" }), jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[82px] bg-opacity-to-white" })] }));
|
|
2159
1881
|
});
|
|
2160
1882
|
|
|
1883
|
+
const Gallery = JSX((props) => jsx(GalleryInner, { ...props, version: "normal" }));
|
|
1884
|
+
|
|
2161
1885
|
const GracePeriod = JSX(({ context, className = '', title, description, calendar, ...rest }) => {
|
|
2162
|
-
return (jsxs(BlockWrapper, { className: `font-sans bg-white p-[50px] ${className}`, context: context, ...rest, children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: "M", align: "center" }), calendar ? renderCalendar(calendar) : null] }));
|
|
1886
|
+
return (jsxs(BlockWrapper, { className: `font-sans bg-white p-[50px] ${className}`, context: context, ...rest, children: [jsx(Headline, { context: context, className: "!p-0 mb-4", title: title, description: description, headlineVersion: "M", align: "center" }), calendar ? renderCalendar(calendar) : null] }));
|
|
2163
1887
|
});
|
|
2164
1888
|
const renderCalendar = (calendar) => {
|
|
2165
1889
|
const colCount = calendar.reduce((accumulator, currentValue) => currentValue?.month?.length ? accumulator + currentValue.month.length : accumulator, 0) || 1;
|
|
@@ -2168,11 +1892,12 @@
|
|
|
2168
1892
|
.filter((_) => _?.month?.length)
|
|
2169
1893
|
.map((_) => ({
|
|
2170
1894
|
..._,
|
|
2171
|
-
|
|
1895
|
+
// Condition lower is always true, TS does not understand this, notice filter above
|
|
1896
|
+
flexBasis: `${_?.month?.length ? _.month.length * colSize : ''}%`,
|
|
2172
1897
|
}));
|
|
2173
1898
|
return (jsxs("div", { className: "w-full flex flex-col justify-center mt-13", children: [jsx("div", { className: "flex w-full mb-3 text-h6 text-center", children: mappedCalendar.map((_) => renderMonthNames(_, colSize)) }), jsx("div", { className: "flex w-full", children: mappedCalendar.map((_, ind) => (jsxs("div", { className: "pr-[11px] mr-3 border-r border-main-divider last:border-r-0 last:pr-0 last:mr-0", style: { flexBasis: _.flexBasis }, children: [jsx("div", { className: "flex", children: renderMonthImages(_) }), jsxs("div", { className: "text-s-light text-primary-text mt-3", children: [jsx("span", { children: _.text }), "\u2009", jsx("span", { className: "text-primary-main", children: _.greenText })] })] }, `monthItem-${ind}`))) })] }));
|
|
2174
1899
|
};
|
|
2175
|
-
const renderMonthNames = (item, colSize) => item.month?.map((_, i) => (jsx("div", { style: { flexBasis: `${colSize}%` }, children: _.
|
|
1900
|
+
const renderMonthNames = (item, colSize) => item.month?.map((_, i) => (jsx("div", { style: { flexBasis: `${colSize}%` }, children: _.text }, `monthName-${i}`)));
|
|
2176
1901
|
const renderMonthImages = (item) => item.month?.map((_) => _.image?.src ? (jsx("div", { className: "h-[207px] border-r-[1px] pr-3 mr-3 border-main-divider last:border-r-0 last:pr-0 last:mr-0", children: jsx(ImgInner, { image: _.image, className: "flex" }) }, `monthImage-${_.image.src}`)) : null);
|
|
2177
1902
|
|
|
2178
1903
|
const checkIsHrefSameOrigin = (href, router) => getOrigin(href) === getOrigin(router.href);
|
|
@@ -2364,9 +2089,9 @@
|
|
|
2364
2089
|
const btnClassName = isActiveBtn
|
|
2365
2090
|
? 'shadow-dark-blue/42 border-primary-main'
|
|
2366
2091
|
: `ease-in duration-300 border-main-stroke`;
|
|
2367
|
-
return (jsxs("button", { type: "button", onClick: onClick, className: `p-[30px] min-w-[460px] flex items-center bg-white border-solid border relative ${btnClassName}`, children: [slide?.icon ? (jsx(ImgInner, { className: "p-5 rounded-full bg-secondary-light mr-[30px]", image: slide.icon, width: "108", height: "108" })) : null, jsxs("div", { className: "flex gap-3.5", children: [slide?.sum ? renderValueBlock('страховая сумма', slide.sum) : null, slide?.fee ? renderValueBlock('страховой взнос', slide.fee) : null] }), renderDoneIcon(isActiveBtn)] }, String(i)));
|
|
2092
|
+
return (jsxs("button", { type: "button", onClick: onClick, className: `p-[30px] min-w-[460px] flex items-center bg-white border-solid border relative ${btnClassName}`, children: [slide?.icon ? (jsx(ImgInner, { className: "p-5 rounded-full bg-secondary-light mr-[30px]", image: slide.icon, width: "108", height: "108" })) : null, jsxs("div", { className: "flex gap-3.5", children: [slide?.sum ? renderValueBlock$1('страховая сумма', slide.sum) : null, slide?.fee ? renderValueBlock$1('страховой взнос', slide.fee) : null] }), renderDoneIcon(isActiveBtn)] }, String(i)));
|
|
2368
2093
|
}
|
|
2369
|
-
function renderValueBlock(title, sum) {
|
|
2094
|
+
function renderValueBlock$1(title, sum) {
|
|
2370
2095
|
return (jsxs("div", { className: "flex flex-col text-left whitespace-pre", children: [jsxs("span", { className: "text-h6", children: [addSpacesBetweenNumbers(sum), " \u20BD"] }), jsx("span", { className: "text-secondary-text text-l mt-1", children: title })] }));
|
|
2371
2096
|
}
|
|
2372
2097
|
function renderDoneIcon(isActive) {
|
|
@@ -2401,6 +2126,10 @@
|
|
|
2401
2126
|
return (jsx("button", { type: "button", onClick: onClick, "aria-label": title, className: `box-border px-4 py-3 text-m-light ${btnClassName}`, children: title }, String(i)));
|
|
2402
2127
|
}
|
|
2403
2128
|
|
|
2129
|
+
function joinList(sep) {
|
|
2130
|
+
return (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: i }, el) : [el]), []);
|
|
2131
|
+
}
|
|
2132
|
+
|
|
2404
2133
|
const investmentCellColorMap = {
|
|
2405
2134
|
yellow: 'bg-yellow',
|
|
2406
2135
|
green: 'bg-green',
|
|
@@ -2443,6 +2172,59 @@
|
|
|
2443
2172
|
return (jsx("div", { className: `flex-1 max-w-[180px] text-center px-2 ${isFirstColumn ? 'pl-9' : ''} ${isLastColumn ? 'pr-9' : ' '}`, children: column.title }, `title_${i}`));
|
|
2444
2173
|
};
|
|
2445
2174
|
|
|
2175
|
+
const LinkDocsListItemBase = JSX(({ className, iconClassName, textClassName, suffixClassName, doc, icon }) => {
|
|
2176
|
+
const { text, fileSize, ...linkProps } = doc;
|
|
2177
|
+
return (jsxs("a", { className: className, role: "link", ...linkProps, children: [icon ? (jsx(ImgInner, { className: iconClassName, image: icon, width: "24px", height: "24px", asSVG: true })) : null, text ? (jsxs("span", { className: textClassName, children: [text, jsx("span", { className: suffixClassName, children: linkProps?.href && formatSuffix(getExtFromHref(linkProps.href), fileSize) })] })) : null] }));
|
|
2178
|
+
});
|
|
2179
|
+
const formatSuffix = (ext, fileSize) => {
|
|
2180
|
+
const prefix = ext || fileSize ? ',' : '';
|
|
2181
|
+
const extension = ext ? ` ${ext}` : '';
|
|
2182
|
+
const size = fileSize ? ` (${fileSize})` : '';
|
|
2183
|
+
return prefix + extension + size;
|
|
2184
|
+
};
|
|
2185
|
+
const getExtFromHref = (href) => {
|
|
2186
|
+
if (!href) {
|
|
2187
|
+
return '';
|
|
2188
|
+
}
|
|
2189
|
+
const index = href.lastIndexOf('.');
|
|
2190
|
+
return index !== -1 ? href.substring(index + 1) : '';
|
|
2191
|
+
};
|
|
2192
|
+
|
|
2193
|
+
const LinkDocsListItem = JSX(({ className = '', doc, icon }) => (jsx(LinkDocsListItemBase, { className: `flex h-full box-border ${className}`, iconClassName: "mr-2.5 min-w-6 min-h-6", textClassName: "self-center text-l-light", suffixClassName: "text-secondary-text group-hover:text-primary-main", doc: doc, icon: icon })));
|
|
2194
|
+
|
|
2195
|
+
const LinkDocsList = JSX(({ className, documents, columnsMode = 'double', icon }) => {
|
|
2196
|
+
return documents?.length ? (jsx("div", { className: className, role: "list", children: documents.map((doc, i) => (jsx("div", { className: columnsMode === 'double' ? 'basis-[calc(50%-20px)]' : '', role: "listitem", children: jsx(LinkDocsListItem, { className: "group flex align-middle h-fit w-fit text-primary-text no-underline hover:text-primary-main", doc: doc, icon: icon }) }, String(i)))) })) : null;
|
|
2197
|
+
});
|
|
2198
|
+
|
|
2199
|
+
const linkColumnsModeStyleMap = {
|
|
2200
|
+
double: 'flex gap-x-5 gap-y-[26px] flex-wrap',
|
|
2201
|
+
single: 'flex gap-3.5 flex-col',
|
|
2202
|
+
};
|
|
2203
|
+
const LinkDocs = JSX(({ context, className = '', title, description, align = 'center', documents, icon = { icon: 'DocIcon' }, columnsMode = 'double', ...rest }) => {
|
|
2204
|
+
return (jsxs(BlockWrapper, { className: `font-sans text-primary-text p-[50px] bg-white ${className}`, context: context, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: description, context: context, align: align, headlineVersion: "M", as: "h2" }), jsx(LinkDocsList, { className: `mt-8 ${linkColumnsModeStyleMap[columnsMode]}`, columnsMode: columnsMode, documents: documents, icon: icon })] }));
|
|
2205
|
+
});
|
|
2206
|
+
|
|
2207
|
+
const MiniGallery = JSX((props) => (jsx(GalleryInner, { ...props, version: "mini" })));
|
|
2208
|
+
|
|
2209
|
+
const getColSpan = (className) => {
|
|
2210
|
+
const colSpanPrefix = 'col-span-';
|
|
2211
|
+
const colSpanStr = className.split(/\s+/).find((_) => _.startsWith(colSpanPrefix));
|
|
2212
|
+
return colSpanStr ? parseInt(colSpanStr.substring(colSpanPrefix.length), 10) : 12;
|
|
2213
|
+
};
|
|
2214
|
+
|
|
2215
|
+
function getTileMinHeight(className = '') {
|
|
2216
|
+
const colSpan = getColSpan(className);
|
|
2217
|
+
if (colSpan <= 6) {
|
|
2218
|
+
return 'min-h-[300px]';
|
|
2219
|
+
}
|
|
2220
|
+
else if (colSpan <= 8) {
|
|
2221
|
+
return 'min-h-[320px]';
|
|
2222
|
+
}
|
|
2223
|
+
else {
|
|
2224
|
+
return 'min-h-[360px]';
|
|
2225
|
+
}
|
|
2226
|
+
}
|
|
2227
|
+
|
|
2446
2228
|
const MobileAppTile = JSX(({ className = '', context, title = 'Мобильное приложение', qr, buttons, version = 'primary', items, image, headingType = 'h4', ...rest }) => {
|
|
2447
2229
|
const textColorClass = version === 'primary' ? 'text-primary-text' : '';
|
|
2448
2230
|
const containerStyle = version === 'secondary' ? 'p-3.5 min-w-[120px]' : 'min-w-[92px]';
|
|
@@ -2451,17 +2233,268 @@
|
|
|
2451
2233
|
${getTileMinHeight(className)}
|
|
2452
2234
|
${VersionStyleMap[version]}
|
|
2453
2235
|
${className}`, ...rest, children: [jsx(BaseTile, { context: context, className: "z-10", title: title ? (jsx(Heading, { headingType: headingType, as: "h3", title: title, className: `whitespace-pre-wrap max-w-[509px] mb-6
|
|
2454
|
-
${textColorClass}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttonsWithClass, className: "flex gap-4" })) : null, children: jsxs("div", { className: "flex flex-1 items-center", children: [qr?.src ? (jsx("div", { className: `flex justify-center mr-5 bg-white rounded-md ${containerStyle}`, children: jsx(ImgInner, { className: "w-fit", image: qr, alt: "QR-\u043A\u043E\u0434" }) })) : null, renderList(version, items)] }) }), image?.src ? (jsx("div", { className: "absolute right-0 bottom-0", children: jsx(ImgInner, { image: image }) })) : null] }));
|
|
2236
|
+
${textColorClass}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttonsWithClass, className: "flex gap-4" })) : null, children: jsxs("div", { className: "flex flex-1 items-center", children: [qr?.src ? (jsx("div", { className: `flex justify-center mr-5 bg-white rounded-md ${containerStyle}`, children: jsx(ImgInner, { className: "w-fit", image: qr, alt: "QR-\u043A\u043E\u0434" }) })) : null, renderList$1(version, items)] }) }), image?.src ? (jsx("div", { className: "absolute right-0 bottom-0", children: jsx(ImgInner, { image: image }) })) : null] }));
|
|
2455
2237
|
});
|
|
2456
|
-
const renderList = (version, items) => {
|
|
2238
|
+
const renderList$1 = (version, items) => {
|
|
2457
2239
|
return items?.length ? (jsx(List, { items: items, itemClassName: "text-l-light mb-2 last:mb-0", version: version })) : (jsx("span", { className: "text-m-light text-secondary-text", 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" }));
|
|
2458
2240
|
};
|
|
2459
2241
|
|
|
2242
|
+
const OFFICE_MAP_URL = '/api/v1/branches';
|
|
2243
|
+
// TODO: regionCode - внутренний идентификатор банка. Не соответствует государственной нумерации регионов РФ
|
|
2244
|
+
// TODO: Список регионов можно получить через api/v1/regions
|
|
2245
|
+
function useOfficeMap(regionCode) {
|
|
2246
|
+
const { data } = useAsyncData(regionCode ? `${OFFICE_MAP_URL}?regionCode=${regionCode}` : undefined, fetchOfficeMap);
|
|
2247
|
+
return data;
|
|
2248
|
+
}
|
|
2249
|
+
const fetchOfficeMap = (url) => {
|
|
2250
|
+
if (!url) {
|
|
2251
|
+
return {};
|
|
2252
|
+
}
|
|
2253
|
+
return fetchJSON(url, { method: 'GET' });
|
|
2254
|
+
};
|
|
2255
|
+
|
|
2256
|
+
const OFFICE_MAP = {
|
|
2257
|
+
id: 123,
|
|
2258
|
+
branchType: {
|
|
2259
|
+
id: 7,
|
|
2260
|
+
code: '21',
|
|
2261
|
+
name: 'Отделение на балансе филиала',
|
|
2262
|
+
},
|
|
2263
|
+
shortName: 'Ейский ДО',
|
|
2264
|
+
name: 'ДО №3349/3/05',
|
|
2265
|
+
address: '353682, Краснодарский край, г.Ейск, ул.Гоголя, 349/ ул.Баррикадная, 42/1',
|
|
2266
|
+
lawAddress: '353682, Краснодарский край, г.Ейск, ул.Гоголя, 349/ ул.Баррикадная, 42/1',
|
|
2267
|
+
openDate: '2000-12-05',
|
|
2268
|
+
closeDate: null,
|
|
2269
|
+
bik: '040349536',
|
|
2270
|
+
corAcc: '30101810700000000536',
|
|
2271
|
+
registrationNumber: '3349/3/05',
|
|
2272
|
+
phone: '+7(XXX)XXX-XX-XX',
|
|
2273
|
+
fax: '+7(XXX)XXX-XX-XY',
|
|
2274
|
+
okpo: '55105921',
|
|
2275
|
+
ogrn: '1027700342890',
|
|
2276
|
+
kpp: '231002002',
|
|
2277
|
+
inn: '7725114488',
|
|
2278
|
+
branchCode: '0305',
|
|
2279
|
+
upperBranchCode: '0300',
|
|
2280
|
+
timeZone: '+03:00',
|
|
2281
|
+
exchangeRate: {
|
|
2282
|
+
currencies: [
|
|
2283
|
+
{
|
|
2284
|
+
buyExchangeRate: 0.0,
|
|
2285
|
+
saleExchangeRate: 0.0,
|
|
2286
|
+
currency: {
|
|
2287
|
+
id: 3,
|
|
2288
|
+
code: '156',
|
|
2289
|
+
currency: 'CNY',
|
|
2290
|
+
name: 'Китайский юань',
|
|
2291
|
+
},
|
|
2292
|
+
},
|
|
2293
|
+
{
|
|
2294
|
+
buyExchangeRate: 59.15,
|
|
2295
|
+
saleExchangeRate: 69.25,
|
|
2296
|
+
currency: {
|
|
2297
|
+
id: 2,
|
|
2298
|
+
code: '978',
|
|
2299
|
+
currency: 'EUR',
|
|
2300
|
+
name: 'Евро',
|
|
2301
|
+
},
|
|
2302
|
+
},
|
|
2303
|
+
{
|
|
2304
|
+
buyExchangeRate: 58.4,
|
|
2305
|
+
saleExchangeRate: 70.05,
|
|
2306
|
+
currency: {
|
|
2307
|
+
id: 1,
|
|
2308
|
+
code: '840',
|
|
2309
|
+
currency: 'USD',
|
|
2310
|
+
name: 'Американский доллар',
|
|
2311
|
+
},
|
|
2312
|
+
},
|
|
2313
|
+
],
|
|
2314
|
+
lastUpdate: '2022-11-11 03:56:17',
|
|
2315
|
+
},
|
|
2316
|
+
workSchedule: {
|
|
2317
|
+
id: 413,
|
|
2318
|
+
workTime: '09.00–16.30',
|
|
2319
|
+
lunchHour: 'без перерыва',
|
|
2320
|
+
workTimeSaturday: '09.00–15.00',
|
|
2321
|
+
lunchHourSaturday: 'без перерыва',
|
|
2322
|
+
workingMonday: false,
|
|
2323
|
+
workingTuesday: false,
|
|
2324
|
+
workingWednesday: true,
|
|
2325
|
+
workingThursday: true,
|
|
2326
|
+
workingFriday: true,
|
|
2327
|
+
workingSaturday: true,
|
|
2328
|
+
workingSunday: false,
|
|
2329
|
+
},
|
|
2330
|
+
gpsLatitude: 46.709744,
|
|
2331
|
+
gpsLongitude: 38.260703,
|
|
2332
|
+
range: null,
|
|
2333
|
+
safeBoxCaseVolumes: null,
|
|
2334
|
+
};
|
|
2335
|
+
|
|
2336
|
+
const renderCurrentDaySchedule = ({ lunchHour, status, workTime }) => {
|
|
2337
|
+
const hasTime = /\d+/gi.test(lunchHour);
|
|
2338
|
+
const lunchHourText = hasTime ? `Перерыв ${lunchHour}` : lunchHour;
|
|
2339
|
+
return status ? (jsxs("div", { className: "flex", children: [jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-primary-main border-green-light mr-4", children: workTime ? workTime : null }), jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-golden border-golden", children: lunchHour ? lunchHourText : null })] })) : (jsx("div", { className: "flex", children: jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-error border-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }) }));
|
|
2340
|
+
};
|
|
2341
|
+
const renderNearbyOffice = ({ icon, title, distance, time }, inx) => (jsxs("div", { className: "flex mr-4", children: [jsx(Icon, { name: icon, width: "16", height: "16", asSVG: true, className: "mr-1" }), title ? jsxs("span", { className: "text-m", children: [title, "\u00A0"] }) : null, jsxs("span", { className: "text-m-light", children: [distance ? ` (${distance})` : null, time ? `, ${time}` : null] })] }, `nearbyOffice${inx}`));
|
|
2342
|
+
const renderDay = ({ title, status, workTime, lunchHour, description }, inx) => (jsxs("div", { className: "flex flex-col pb-3 border-b border-solid border-main-divider mb-3 last:border-0", children: [jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-l text-primary-text", children: [jsx("div", { children: title }), status ? null : jsx("div", { className: "text-m-light text-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }), status && workTime ? jsx("div", { children: workTime }) : null] }), status && lunchHour ? renderLunchHour(lunchHour) : null, description ? (jsx("div", { className: "pb-1 text-s-light text-secondary-text", children: description })) : null] }, `day${inx}`));
|
|
2343
|
+
const renderLunchHour = (lunchHour) => {
|
|
2344
|
+
const hasTime = /\d+/gi.test(lunchHour);
|
|
2345
|
+
return hasTime ? (jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-error", children: [jsx("div", { children: "\u041F\u0435\u0440\u0435\u0440\u044B\u0432" }), jsx("div", { children: lunchHour })] })) : (jsx("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-primary-main", children: jsx("div", { children: lunchHour }) }));
|
|
2346
|
+
};
|
|
2347
|
+
|
|
2348
|
+
function renderClusterer(yandexMaps, map, points) {
|
|
2349
|
+
map.geoObjects.removeAll();
|
|
2350
|
+
const clusterIconContentLayout = yandexMaps.templateLayoutFactory.createClass('<div style="margin-top: -3px;">{{properties.geoObjects.length}}</div>');
|
|
2351
|
+
const clusterer = new yandexMaps.Clusterer({
|
|
2352
|
+
clusterIcons: [
|
|
2353
|
+
{
|
|
2354
|
+
href: 'icons/MapMarkerClusterIcon.svg',
|
|
2355
|
+
size: [78, 84],
|
|
2356
|
+
offset: [-35, -50],
|
|
2357
|
+
},
|
|
2358
|
+
],
|
|
2359
|
+
clusterIconContentLayout,
|
|
2360
|
+
clusterHideIconOnBalloonOpen: false,
|
|
2361
|
+
geoObjectHideIconOnBalloonOpen: false,
|
|
2362
|
+
});
|
|
2363
|
+
const geoObjects = points.map((point) => new yandexMaps.Placemark(point, {}, {
|
|
2364
|
+
iconLayout: 'default#image',
|
|
2365
|
+
iconImageHref: 'icons/MapMarkerSingleIcon.svg',
|
|
2366
|
+
iconImageSize: [78, 84],
|
|
2367
|
+
iconImageOffset: [-35, -50],
|
|
2368
|
+
}));
|
|
2369
|
+
clusterer.add(geoObjects);
|
|
2370
|
+
map.geoObjects.add(clusterer);
|
|
2371
|
+
// TODO: Fix
|
|
2372
|
+
// @ts-ignore
|
|
2373
|
+
map.setBounds(yandexMaps.util.bounds.fromPoints(points)).then(() => {
|
|
2374
|
+
if (map.getZoom() > 10) {
|
|
2375
|
+
map.setZoom(10);
|
|
2376
|
+
}
|
|
2377
|
+
});
|
|
2378
|
+
}
|
|
2379
|
+
|
|
2380
|
+
const getNS = (_) => globalThis[_];
|
|
2381
|
+
function useExternalNS(namespaceName, url) {
|
|
2382
|
+
const [externalNS, setExternalNS] = useState();
|
|
2383
|
+
const setNS = useCallback(() => setExternalNS(getNS(namespaceName)), [namespaceName]);
|
|
2384
|
+
useEffect(() => {
|
|
2385
|
+
const script = document.getElementById(url);
|
|
2386
|
+
if (script) {
|
|
2387
|
+
if (getNS(namespaceName)) {
|
|
2388
|
+
setNS();
|
|
2389
|
+
}
|
|
2390
|
+
else {
|
|
2391
|
+
script.addEventListener('load', setNS);
|
|
2392
|
+
return () => {
|
|
2393
|
+
script.removeEventListener('load', setNS);
|
|
2394
|
+
};
|
|
2395
|
+
}
|
|
2396
|
+
}
|
|
2397
|
+
else {
|
|
2398
|
+
const newScript = document.createElement('script');
|
|
2399
|
+
newScript.src = url;
|
|
2400
|
+
newScript.async = true;
|
|
2401
|
+
newScript.id = url;
|
|
2402
|
+
newScript.addEventListener('load', setNS);
|
|
2403
|
+
document.head.appendChild(newScript);
|
|
2404
|
+
return () => {
|
|
2405
|
+
document.head.removeChild(newScript);
|
|
2406
|
+
setExternalNS(undefined);
|
|
2407
|
+
};
|
|
2408
|
+
}
|
|
2409
|
+
return undefined;
|
|
2410
|
+
}, [namespaceName, url]);
|
|
2411
|
+
return externalNS;
|
|
2412
|
+
}
|
|
2413
|
+
|
|
2414
|
+
const YMAPS_NAMESPACE = 'ymaps';
|
|
2415
|
+
const useYandexMaps = () => {
|
|
2416
|
+
const url = `https://api-maps.yandex.ru/2.1/?apikey=${projectSettings.YANDEX_MAP_API_KEY}&lang=ru_RU`;
|
|
2417
|
+
const yandexMaps = useExternalNS(YMAPS_NAMESPACE, url);
|
|
2418
|
+
return yandexMaps;
|
|
2419
|
+
};
|
|
2420
|
+
|
|
2421
|
+
const YandexMap$1 = JSX(({ point }) => {
|
|
2422
|
+
const map = useRef(null);
|
|
2423
|
+
const yandexMaps = useYandexMaps();
|
|
2424
|
+
useEffect(() => {
|
|
2425
|
+
yandexMaps?.ready(() => {
|
|
2426
|
+
map.current = new yandexMaps.Map('map', {
|
|
2427
|
+
center: point,
|
|
2428
|
+
zoom: 10,
|
|
2429
|
+
});
|
|
2430
|
+
renderClusterer(yandexMaps, map.current, [point]);
|
|
2431
|
+
});
|
|
2432
|
+
}, [map, point, yandexMaps]);
|
|
2433
|
+
useEffect(() => {
|
|
2434
|
+
if (map.current && point && yandexMaps) {
|
|
2435
|
+
renderClusterer(yandexMaps, map.current, [point]);
|
|
2436
|
+
}
|
|
2437
|
+
}, [map, point, yandexMaps]);
|
|
2438
|
+
if (!yandexMaps) {
|
|
2439
|
+
return null;
|
|
2440
|
+
}
|
|
2441
|
+
return (jsx("div", { className: "bg-white", children: jsx("div", { id: "map", className: "h-[560px]" }) }));
|
|
2442
|
+
});
|
|
2443
|
+
|
|
2444
|
+
const OfficeMap = JSX(({ className = '' }) => {
|
|
2445
|
+
const resultOfficeMap = useOfficeMap('063') || OFFICE_MAP;
|
|
2446
|
+
const { name, address, gpsLatitude, gpsLongitude, workSchedule } = resultOfficeMap;
|
|
2447
|
+
const { workTime, lunchHour, workTimeSaturday, lunchHourSaturday, workingMonday, workingTuesday, workingWednesday, workingThursday, workingFriday, workingSaturday, workingSunday, } = workSchedule;
|
|
2448
|
+
const point = gpsLatitude && gpsLongitude ? [gpsLatitude, gpsLongitude] : null;
|
|
2449
|
+
const workScheduleWeek = [
|
|
2450
|
+
{ title: 'Понедельник', status: workingMonday, workTime, lunchHour },
|
|
2451
|
+
{ title: 'Вторник', status: workingTuesday, workTime, lunchHour },
|
|
2452
|
+
{ title: 'Среда', status: workingWednesday, workTime, lunchHour },
|
|
2453
|
+
{
|
|
2454
|
+
title: 'Четверг',
|
|
2455
|
+
status: workingThursday,
|
|
2456
|
+
workTime,
|
|
2457
|
+
lunchHour: '13:00 - 14:00',
|
|
2458
|
+
description: 'Не работает прием денег с 17:00 до 19:00', // Добавлено для проверки
|
|
2459
|
+
},
|
|
2460
|
+
{ title: 'Пятница', status: workingFriday, workTime, lunchHour },
|
|
2461
|
+
{
|
|
2462
|
+
title: 'Суббота',
|
|
2463
|
+
status: workingSaturday,
|
|
2464
|
+
workTime: workTimeSaturday,
|
|
2465
|
+
lunchHour: lunchHourSaturday,
|
|
2466
|
+
},
|
|
2467
|
+
{ title: 'Воскресенье', status: workingSunday },
|
|
2468
|
+
];
|
|
2469
|
+
// Добавлено для проверки
|
|
2470
|
+
const nearbyOffices = [
|
|
2471
|
+
{ title: 'Деловой центр', time: '1 мин', distance: '~30 м.', icon: 'MetroIcon' },
|
|
2472
|
+
{ title: 'Выставочная', time: '5 мин', distance: '~120 м.', icon: 'MetroIcon' },
|
|
2473
|
+
{ title: 'Деловой центр', time: '8 мин', distance: '~350 м.', icon: 'MetroIcon' },
|
|
2474
|
+
];
|
|
2475
|
+
const currentWeekDayInd = new Date().getDay();
|
|
2476
|
+
const currentWeekDay = currentWeekDayInd > 0 ? workScheduleWeek[currentWeekDayInd - 1] : workScheduleWeek[6];
|
|
2477
|
+
return (jsxs("div", { className: `flex flex-col font-sans bg-white w-full ${className}`, children: [jsxs("div", { className: "flex flex-col px-12 pt-12", children: [jsxs("div", { className: "flex justify-between", children: [jsx("div", { className: "text-h2", children: name }), renderCurrentDaySchedule(currentWeekDay)] }), jsxs("div", { className: "flex text-l-light pt-4", children: [jsx(Icon, { name: "GeolocationIcon", width: "24", height: "24", asSVG: true, className: "pr-1" }), address] }), jsx("div", { className: "flex pt-4", children: nearbyOffices.map(renderNearbyOffice) })] }), jsxs("div", { className: "flex justify-between pt-8", children: [jsx("div", { className: "flex-grow h-full bg-gray", children: point ? jsx(YandexMap$1, { point: point }) : null }), jsx("div", { className: "w-[434px] pl-9 pr-12 pb-14", children: jsx("div", { className: "flex flex-col", children: workScheduleWeek.map(renderDay) }) })] })] }));
|
|
2478
|
+
});
|
|
2479
|
+
|
|
2460
2480
|
const OfficeServicesBlock = JSX(({ className = '', context, title, servicesList, anchor = '', ...rest }) => {
|
|
2461
2481
|
return (jsxs(BlockWrapper, { context: context, id: anchor, className: `font-sans bg-white p-8 flex flex-col ${className}`, ...rest, children: [title ? jsx(Heading, { headingType: "h5", className: "mb-5", title: title }) : null, servicesList?.length ? servicesList.map(renderListItems) : null] }));
|
|
2462
2482
|
});
|
|
2463
2483
|
const renderListItems = (itemList, i) => (jsxs("li", { className: "flex mb-5 last:mb-0 list-none", children: [itemList.icon ? (jsx(ImgInner, { className: "mr-3 min-w-6 min-h-6 w-6 h-6", width: "24", height: "24", asSVG: true, image: itemList.icon })) : null, itemList.label ? jsx("span", { className: "text-l-light", children: itemList.label }) : null] }, `list_item_${String(i)}`));
|
|
2464
2484
|
|
|
2485
|
+
const OtherProducts = JSX(({ context, className = '', children, ...rest }) => (jsx(BlockWrapper, { context: context, className: `font-sans text-primary-text ${className}`, ...rest, children: children })));
|
|
2486
|
+
OtherProducts.childrenTypes = ['OtherProductsItem'];
|
|
2487
|
+
|
|
2488
|
+
function getParentBlockDef(ancestors, type) {
|
|
2489
|
+
const [, ...blocks] = ancestors || [];
|
|
2490
|
+
return blocks.reverse().find((_) => !type || type === _?.type) || {};
|
|
2491
|
+
}
|
|
2492
|
+
|
|
2493
|
+
function getParentBlockContent(ancestors, defaultContent) {
|
|
2494
|
+
const { content } = getParentBlockDef(ancestors);
|
|
2495
|
+
return content || defaultContent;
|
|
2496
|
+
}
|
|
2497
|
+
|
|
2465
2498
|
const DefaultFoldButton = JSX(({ className, label, icon, dataTheme = '', onClick }) => (jsxs("button", { className: `border-none bg-primary-main hover:bg-primary-hover px-0 py-5 mb-[1px] w-full font-sans text-white flex justify-center cursor-pointer ${className || ''}`, "data-theme": dataTheme, onClick: onClick, children: [jsx("span", { className: "text-h4 pr-3", children: label }), icon ? (jsx(ImgInner, { image: {
|
|
2466
2499
|
icon,
|
|
2467
2500
|
iconVersion: 'white',
|
|
@@ -2473,17 +2506,52 @@
|
|
|
2473
2506
|
};
|
|
2474
2507
|
|
|
2475
2508
|
const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
|
|
2476
|
-
const OtherProductsItem = JSX(({ label = '',
|
|
2477
|
-
const
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2509
|
+
const OtherProductsItem = JSX(({ className, page, ancestors, label = '', isUnfolded: unfoldedByDefault, children }) => {
|
|
2510
|
+
const { colorPalette } = getParentBlockContent(ancestors, {});
|
|
2511
|
+
return (jsx("div", { className: `border-0 border-b border-solid border-main-divider ${className}`, children: jsx(Foldable, { unfoldedByDefault: unfoldedByDefault, renderFoldableSection: ({ isUnfolded }) => (jsx("div", { className: "box-border", children: jsx(FoldableSection, { className: "grid grid-cols-12 gap-1 border-box", isUnfolded: isUnfolded, children: children }) })), renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(DefaultFoldButton, { label: label, icon: icons[Number(isUnfolded)], dataTheme: page?.colorPalette || colorPalette, onClick: onToggle })) }) }));
|
|
2512
|
+
});
|
|
2513
|
+
OtherProductsItem.childrenTypes = []; // All types of blocks are suitable
|
|
2514
|
+
|
|
2515
|
+
const titleStyleMap = {
|
|
2516
|
+
primary: 'text-primary-text',
|
|
2517
|
+
secondary: 'text-white',
|
|
2518
|
+
};
|
|
2519
|
+
const descStyleMap = {
|
|
2520
|
+
primary: 'text-secondary-text',
|
|
2521
|
+
secondary: 'text-white',
|
|
2522
|
+
};
|
|
2523
|
+
const BenefitItem = JSX((props) => {
|
|
2524
|
+
const { className = '', icon, label, description, version = 'primary', benefitsVersion = 'normal', } = props;
|
|
2525
|
+
const isIconWhite = benefitsVersion === 'white' || version === 'secondary';
|
|
2526
|
+
const listItemAlign = description ? 'items-start' : 'items-center';
|
|
2527
|
+
const iconVersion = getIconVersion(isIconWhite, icon);
|
|
2528
|
+
return (jsxs("div", { className: `flex gap-5 ${listItemAlign} ${className}`, children: [icon ? (jsx("div", { className: renderBenefitIconBgStyle(version, benefitsVersion), children: jsx(ImgInner, { className: "w-6 h-6", image: { ...icon, iconVersion }, asSVG: true }) })) : null, jsxs("div", { className: "gap-0.5", children: [label ? jsx("div", { className: `text-h6 ${titleStyleMap[version]}`, children: label }) : null, description ? (jsx("div", { className: `text-m-light ${descStyleMap[version]}`, children: description })) : null] })] }));
|
|
2482
2529
|
});
|
|
2530
|
+
function renderBenefitIconBgStyle(version, benefitsVersion) {
|
|
2531
|
+
let bgColorStyle = 'bg-primary-main text-black';
|
|
2532
|
+
if (version === 'secondary') {
|
|
2533
|
+
bgColorStyle = 'bg-white/30 text-black';
|
|
2534
|
+
}
|
|
2535
|
+
else if (benefitsVersion === 'normal') {
|
|
2536
|
+
bgColorStyle = 'bg-secondary-light text-primary-main';
|
|
2537
|
+
}
|
|
2538
|
+
return `w-[50px] h-[50px] min-w-[50px] rounded-full p-2.5 box-border flex items-center justify-center ${bgColorStyle}`;
|
|
2539
|
+
}
|
|
2540
|
+
const getIconVersion = (isIconWhite, icon) => icon?.iconVersion || isIconWhite ? 'white' : 'normal';
|
|
2483
2541
|
|
|
2484
|
-
const
|
|
2485
|
-
return (
|
|
2542
|
+
const PictureText = JSX(({ className = '', context, title, description, image, benefits, version = 'primary', sum, monthLimit, directionRight = false, ...rest }) => {
|
|
2543
|
+
return (jsxs(BlockWrapper, { className: `relative font-sans py-12 px-24 ${VersionStyleMap[version]} ${className}`, context: context, ...rest, children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: "M", bgColorHeadline: version, align: "center" }), jsxs("div", { className: 'flex justify-center gap-[122px] mt-[30px]', children: [image?.src ? jsx(ImgInner, { className: directionRight ? 'order-2' : '', image: image }) : null, jsxs("div", { className: "w-[558px] m-auto", children: [benefits?.length ? (jsx("div", { className: "flex flex-col gap-4", children: benefits.map(renderBenefit$2(version)) })) : null, renderInsuranceSumMonth(sum, monthLimit)] })] })] }));
|
|
2486
2544
|
});
|
|
2545
|
+
const renderBenefit$2 = (version) => (benefit, i) => (jsx(BenefitItem, { icon: benefit.icon, label: benefit.label, description: benefit.description, version: version }, String(i)));
|
|
2546
|
+
function renderInsuranceSumMonth(sum, monthLimit) {
|
|
2547
|
+
return sum || monthLimit ? (jsxs("div", { className: "bg-main-divider rounded-md flex mt-7 gap-6 px-5 py-4", children: [Number.isFinite(sum) ? renderValueBlock('Страховая сумма:', sum, Boolean(monthLimit)) : null, Number.isFinite(monthLimit)
|
|
2548
|
+
? renderValueBlock('Ежемесячный лимит:', monthLimit, Boolean(sum))
|
|
2549
|
+
: null] })) : null;
|
|
2550
|
+
}
|
|
2551
|
+
function renderValueBlock(title, sum = 0, isAnotherBlock = false) {
|
|
2552
|
+
const widthStyle = isAnotherBlock ? 'w-fit' : 'w-full';
|
|
2553
|
+
return (jsxs("div", { className: `flex justify-between items-center gap-2 w-full ${widthStyle}`, children: [jsx("span", { className: "text-secondary-text text-l-light", children: title }), jsxs("span", { className: "text-primary-main text-h6", children: [addSpacesBetweenNumbers(sum), " \u20BD"] })] }));
|
|
2554
|
+
}
|
|
2487
2555
|
|
|
2488
2556
|
function getTileHeadingType(className = '') {
|
|
2489
2557
|
const colSpan = getColSpan(className);
|
|
@@ -2498,6 +2566,19 @@
|
|
|
2498
2566
|
}
|
|
2499
2567
|
}
|
|
2500
2568
|
|
|
2569
|
+
function getTileRightPadding(className = '') {
|
|
2570
|
+
const colSpan = getColSpan(className);
|
|
2571
|
+
if (colSpan <= 6) {
|
|
2572
|
+
return 'pr-9';
|
|
2573
|
+
}
|
|
2574
|
+
else if (colSpan <= 8) {
|
|
2575
|
+
return 'pr-[4.75rem]';
|
|
2576
|
+
}
|
|
2577
|
+
else {
|
|
2578
|
+
return 'pr-[9.4rem]';
|
|
2579
|
+
}
|
|
2580
|
+
}
|
|
2581
|
+
|
|
2501
2582
|
const GOLDEN_RATIO = 1.618;
|
|
2502
2583
|
const Placeholder = JSX(({ className, context, title, description = 'Блок в разработке...', ...rest }) => {
|
|
2503
2584
|
return (jsxs(BlockWrapper, { context: context, className: `bg-white text-primary-text font-sans p-9 box-border ${className} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: [jsx(Headline, { context: context, className: "!p-0 max-w-[600px]", title: title, description: description, headlineVersion: getTileHeadingType(className) }), jsx("figure", { className: "m-0 min-w-[80%]", children: renderShimmer() })] }));
|
|
@@ -2508,6 +2589,49 @@
|
|
|
2508
2589
|
const renderShimmerItem = (width, index) => (jsx("div", { style: { width: `${width || 100}%` }, className: "h-4 mt-2 bg-secondary-light" }, String(index)));
|
|
2509
2590
|
const goldenSequence = (first, size) => [first].concat(size > 0 ? goldenSequence(first / GOLDEN_RATIO, size - 1) : []);
|
|
2510
2591
|
|
|
2592
|
+
const Breadcrumb = JSX(({ text, href, target, onClick, className = '', children }) => {
|
|
2593
|
+
if (href) {
|
|
2594
|
+
return (jsx("a", { className: `no-underline ${className}`, href: href, target: target, onClick: onClick, children: jsx("span", { className: className, children: text || children }) }));
|
|
2595
|
+
}
|
|
2596
|
+
else {
|
|
2597
|
+
return jsx("span", { className: className, children: text || children });
|
|
2598
|
+
}
|
|
2599
|
+
});
|
|
2600
|
+
|
|
2601
|
+
const renderBenefit$1 = (version = 'primary', benefitsVersion = 'normal') => ({ icon, label, description }, i) => {
|
|
2602
|
+
return (jsx(BenefitItem, { icon: icon, label: label, description: description, version: version, benefitsVersion: benefitsVersion }, String(i)));
|
|
2603
|
+
};
|
|
2604
|
+
|
|
2605
|
+
const ProductBlockInner = JSX(({ className = '', context, title, headlineVersion = 'L', description, benefits, benefitsVersion = 'normal', buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', }) => {
|
|
2606
|
+
const benefitsCount = benefits?.filter((_) => _.label)?.length;
|
|
2607
|
+
const benefitsContainerStyles = getBenefitsContainerStyles(benefitsCount);
|
|
2608
|
+
return (jsxs("div", { className: `flex grow justify-between items-stretch h-full ${className}`, children: [jsxs("div", { className: `flex flex-col ${textBlockClassName}`, children: [jsx(Headline, { context: context, title: title, description: description, className: `!p-0 max-w-[600px]`, bgColorHeadline: version, headlineVersion: headlineVersion, align: "left" }), jsxs(BaseTile, { context: context, buttons: getButtons(context, buttons), children: [benefitsCount ? (jsx("div", { className: benefitsContainerStyles, children: benefits.map(renderBenefit$1(version, benefitsVersion)) })) : null, items?.length ? (jsx(List, { className: "mt-5 text-h6", items: items, itemClassName: "mb-[7px]", version: version, isDotted: isDotted })) : null] })] }), image?.src && jsx(ImgInner, { className: "mt-[-50px]", image: image })] }));
|
|
2609
|
+
});
|
|
2610
|
+
const getButtons = (context, buttons) => {
|
|
2611
|
+
return buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex gap-4" })) : null;
|
|
2612
|
+
};
|
|
2613
|
+
const getBenefitsContainerStyles = (benefitsCount = 0) => `gap-6 mt-6 ${benefitsCount > 3 ? 'inline-grid grid-cols-[auto_auto]' : 'flex'}`;
|
|
2614
|
+
|
|
2615
|
+
function renderBackwardButton(button, version, className) {
|
|
2616
|
+
const { text, href, target, onClick } = button;
|
|
2617
|
+
const iconVersion = version === 'primary' ? 'white' : 'black';
|
|
2618
|
+
const backwardIcon = button?.icon || { icon: 'ArrowLeftIcon' };
|
|
2619
|
+
return (jsxs("div", { className: `flex items-center cursor-pointer ${className}`, onClick: onClick, children: [jsx(Button, { version: version, rounded: true, className: "w-12 h-12 min-h-12 min-w-12 flex items-center justify-center mr-3", ariaLabel: text, href: href, target: target, children: jsx(ImgInner, { className: "w-4 h-4", image: { ...backwardIcon, iconVersion }, asSVG: true }) }), text ? jsx("span", { className: "text-m", children: text }) : null] }));
|
|
2620
|
+
}
|
|
2621
|
+
|
|
2622
|
+
const breadcrumbsStyleMap = {
|
|
2623
|
+
primary: 'text-secondary-text',
|
|
2624
|
+
secondary: 'text-white/80',
|
|
2625
|
+
};
|
|
2626
|
+
const ProductBlock = JSX((props) => {
|
|
2627
|
+
const { context, className = '', breadcrumbs, backwardButton, version = 'primary', ...otherProps } = props;
|
|
2628
|
+
const router = context.useRouter();
|
|
2629
|
+
const { handlerDecorator } = context;
|
|
2630
|
+
return (jsxs(BlockWrapper, { context: context, className: `font-sans overflow-hidden p-[50px] flex flex-col box-border min-h-[454px] ${VersionStyleMap[version]} ${className}`, ...otherProps, children: [backwardButton?.text
|
|
2631
|
+
? renderBackwardButton(useLink({ router, handlerDecorator }, backwardButton), version, 'mb-10 -mt-2.5')
|
|
2632
|
+
: null, breadcrumbs?.length ? (jsx("div", { className: "text-xs-light mb-6", children: joinList(jsx("span", { className: `mx-2 ${breadcrumbsStyleMap[version]}`, children: "/" }))(breadcrumbs.map((breadcrumb, i) => (jsx(Breadcrumb, { ...useLink({ router, handlerDecorator }, { className: breadcrumbsStyleMap[version], ...breadcrumb }) }, String(i))))) })) : null, jsx(ProductBlockInner, { context: context, version: version, ...otherProps })] }));
|
|
2633
|
+
});
|
|
2634
|
+
|
|
2511
2635
|
const productBlockStyleMap = {
|
|
2512
2636
|
primary: { title: 'text-secondary-text', text: 'text-secondary-text' },
|
|
2513
2637
|
secondary: { title: 'text-white', text: 'text-white/80' },
|
|
@@ -2545,7 +2669,42 @@
|
|
|
2545
2669
|
const additionalBorder = version === 'secondary' ? 'border-white/50' : 'border-black/50';
|
|
2546
2670
|
return (jsx("button", { type: "button", onClick: onClick, "aria-label": slide?.title, className: `box-border relative overflow-hidden border border-white/50 cursor-pointer text-left mx-1 grow basis-0
|
|
2547
2671
|
${btnClassName} ${additionalBorder}
|
|
2548
|
-
`, children: jsxs("div", { className: "border-0 px-6", children: [jsx("div", { className: `last:pb-0 ${btnTitleClassName}`, children: slide?.title }), jsx("div", { className: `text-secondary-text ${btnDescClassName}`, children: slide
|
|
2672
|
+
`, children: jsxs("div", { className: "border-0 px-6", children: [jsx("div", { className: `last:pb-0 ${btnTitleClassName}`, children: slide?.title }), jsx("div", { className: `text-secondary-text ${btnDescClassName}`, children: slide?.description })] }) }, String(i)));
|
|
2673
|
+
}
|
|
2674
|
+
|
|
2675
|
+
const ProductTile = JSX(({ context, className = '', title, headlineVersion = 'S', description, additionalDescription, benefits = [], buttons, image, version = 'primary', ...rest }) => {
|
|
2676
|
+
return (jsxs(BlockWrapper, { context: context, className: `overflow-hidden font-sans p-9 box-border relative justify-between grid min-h-[364px]
|
|
2677
|
+
${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)}`, ...rest, children: [jsx(Headline, { context: context, className: `!p-0 !bg-transparent z-10 ${title || description ? 'mb-3.5' : ''}`, as: "h2", title: title, description: description, headlineVersion: headlineVersion, bgColorHeadline: version, align: "left" }), renderBenefits(benefits, version, image), additionalDescription
|
|
2678
|
+
? renderAdditionalDescription(additionalDescription, image, version)
|
|
2679
|
+
: null, buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex self-end mt-5 gap-4 z-10 text-l" })) : null, image?.src ? jsx(ImgInner, { className: "absolute right-0 bottom-0", image: image }) : null] }));
|
|
2680
|
+
});
|
|
2681
|
+
function renderBenefits(benefits, version, image) {
|
|
2682
|
+
// picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
|
|
2683
|
+
const BENEFITS_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
|
|
2684
|
+
return (jsx("div", { className: `z-10 grid grid-cols-[max-content_1fr] auto-rows-auto gap-x-6 gap-y-2.5 items-baseline
|
|
2685
|
+
${BENEFITS_WIDTH}`, children: benefits.length ? benefits.map(renderBenefit(version)) : null }));
|
|
2686
|
+
}
|
|
2687
|
+
function renderBenefit(version = 'primary') {
|
|
2688
|
+
const labelStyleMap = {
|
|
2689
|
+
primary: 'text-secondary-text',
|
|
2690
|
+
secondary: 'text-white',
|
|
2691
|
+
};
|
|
2692
|
+
return function renderVersionedBenefit(benefit, i) {
|
|
2693
|
+
const { label = '', description = '' } = benefit;
|
|
2694
|
+
return [
|
|
2695
|
+
jsx("div", { className: "text-h6", children: label }, `label-${i}`),
|
|
2696
|
+
jsx("div", { className: `text-m-light ${labelStyleMap[version]}`, children: description }, `desc-${i}`),
|
|
2697
|
+
];
|
|
2698
|
+
};
|
|
2699
|
+
}
|
|
2700
|
+
function renderAdditionalDescription(additionalDescription, image, version = 'primary') {
|
|
2701
|
+
const descStyleMap = {
|
|
2702
|
+
primary: 'text-secondary-text',
|
|
2703
|
+
secondary: 'text-white',
|
|
2704
|
+
};
|
|
2705
|
+
// picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
|
|
2706
|
+
const DESCRIPTION_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
|
|
2707
|
+
return (jsx("div", { className: `text-m-light mt-2.5 z-10 ${DESCRIPTION_WIDTH} ${descStyleMap[version]}`, children: additionalDescription }));
|
|
2549
2708
|
}
|
|
2550
2709
|
|
|
2551
2710
|
const PromoTile = JSX(({ className = '', context, title = 'Акции и спецпредложения', date, description, buttons = [], version = 'primary', ...rest }) => {
|
|
@@ -2575,14 +2734,14 @@
|
|
|
2575
2734
|
const blockClassName = version === 'secondary' ? 'bg-primary-main text-white' : 'bg-white text-primary-text';
|
|
2576
2735
|
const cardClassName = version === 'secondary' ? 'border-white/50' : 'border-main-stroke';
|
|
2577
2736
|
return (jsxs(BlockWrapper, { context: context, className: `relative font-sans p-9 overflow-hidden text-center ${blockClassName} ${className}`, ...rest, children: [title ? jsx(Heading, { headingType: "h3", className: "mb-6", title: title }) : null, jsxs("div", { children: [jsx("div", { className: "flex duration-1000 gap-3.5", style: { transform: `translateX(-${activeCardIndex * CARD_SHIFT}px)` }, role: "list", children: recommendations?.length
|
|
2578
|
-
? recommendations.map(renderRecommendationCard(
|
|
2737
|
+
? recommendations.map(renderRecommendationCard(context, cardClassName, version))
|
|
2579
2738
|
: null }), renderNavButtons({
|
|
2580
2739
|
cardsCount: recommendations.length,
|
|
2581
2740
|
activeCardIndex,
|
|
2582
2741
|
setActiveCardIndex,
|
|
2583
2742
|
})] }), jsx("div", { className: `${BLUR_BLOCK_CLASSES} left-0 ${version === 'secondary' ? 'bg-opacity-from-main' : 'bg-opacity-from-white'}` }), jsx("div", { className: `${BLUR_BLOCK_CLASSES} right-0 ${version === 'secondary' ? 'bg-opacity-to-main' : 'bg-opacity-to-white'}` })] }));
|
|
2584
2743
|
});
|
|
2585
|
-
const renderRecommendationCard = (
|
|
2744
|
+
const renderRecommendationCard = (context, className, version) => (card, i) => {
|
|
2586
2745
|
return (jsx(RecommendationCard, { context: context, ...card, version: version, className: className }, String(i)));
|
|
2587
2746
|
};
|
|
2588
2747
|
const renderNavButtons = ({ cardsCount, activeCardIndex, setActiveCardIndex, }) => {
|
|
@@ -2713,79 +2872,6 @@
|
|
|
2713
2872
|
return data || [];
|
|
2714
2873
|
}
|
|
2715
2874
|
|
|
2716
|
-
function renderClusterer(yandexMaps, map, points) {
|
|
2717
|
-
map.geoObjects.removeAll();
|
|
2718
|
-
const clusterIconContentLayout = yandexMaps.templateLayoutFactory.createClass('<div style="margin-top: -3px;">{{properties.geoObjects.length}}</div>');
|
|
2719
|
-
const clusterer = new yandexMaps.Clusterer({
|
|
2720
|
-
clusterIcons: [
|
|
2721
|
-
{
|
|
2722
|
-
href: 'icons/MapMarkerClusterIcon.svg',
|
|
2723
|
-
size: [78, 84],
|
|
2724
|
-
offset: [-35, -50],
|
|
2725
|
-
},
|
|
2726
|
-
],
|
|
2727
|
-
clusterIconContentLayout,
|
|
2728
|
-
clusterHideIconOnBalloonOpen: false,
|
|
2729
|
-
geoObjectHideIconOnBalloonOpen: false,
|
|
2730
|
-
});
|
|
2731
|
-
const geoObjects = points.map((point) => new yandexMaps.Placemark(point, {}, {
|
|
2732
|
-
iconLayout: 'default#image',
|
|
2733
|
-
iconImageHref: 'icons/MapMarkerSingleIcon.svg',
|
|
2734
|
-
iconImageSize: [78, 84],
|
|
2735
|
-
iconImageOffset: [-35, -50],
|
|
2736
|
-
}));
|
|
2737
|
-
clusterer.add(geoObjects);
|
|
2738
|
-
map.geoObjects.add(clusterer);
|
|
2739
|
-
// TODO: Fix
|
|
2740
|
-
// @ts-ignore
|
|
2741
|
-
map.setBounds(yandexMaps.util.bounds.fromPoints(points)).then(() => {
|
|
2742
|
-
if (map.getZoom() > 10) {
|
|
2743
|
-
map.setZoom(10);
|
|
2744
|
-
}
|
|
2745
|
-
});
|
|
2746
|
-
}
|
|
2747
|
-
|
|
2748
|
-
const getNS = (_) => globalThis[_];
|
|
2749
|
-
function useExternalNS(namespaceName, url) {
|
|
2750
|
-
const [externalNS, setExternalNS] = useState();
|
|
2751
|
-
const setNS = useCallback(() => setExternalNS(getNS(namespaceName)), [namespaceName]);
|
|
2752
|
-
useEffect(() => {
|
|
2753
|
-
const script = document.getElementById(url);
|
|
2754
|
-
if (script) {
|
|
2755
|
-
if (getNS(namespaceName)) {
|
|
2756
|
-
setNS();
|
|
2757
|
-
}
|
|
2758
|
-
else {
|
|
2759
|
-
script.addEventListener('load', setNS);
|
|
2760
|
-
return () => {
|
|
2761
|
-
script.removeEventListener('load', setNS);
|
|
2762
|
-
};
|
|
2763
|
-
}
|
|
2764
|
-
}
|
|
2765
|
-
else {
|
|
2766
|
-
const newScript = document.createElement('script');
|
|
2767
|
-
newScript.src = url;
|
|
2768
|
-
newScript.async = true;
|
|
2769
|
-
newScript.id = url;
|
|
2770
|
-
newScript.addEventListener('load', setNS);
|
|
2771
|
-
document.head.appendChild(newScript);
|
|
2772
|
-
return () => {
|
|
2773
|
-
document.head.removeChild(newScript);
|
|
2774
|
-
setExternalNS(undefined);
|
|
2775
|
-
};
|
|
2776
|
-
}
|
|
2777
|
-
return undefined;
|
|
2778
|
-
}, [namespaceName, url]);
|
|
2779
|
-
return externalNS;
|
|
2780
|
-
}
|
|
2781
|
-
|
|
2782
|
-
const YMAPS_NAMESPACE = 'ymaps';
|
|
2783
|
-
const useYandexMaps = () => {
|
|
2784
|
-
const url = `https://api-maps.yandex.ru/2.1/?apikey=${projectSettings.YANDEX_MAP_API_KEY}&lang=ru_RU`;
|
|
2785
|
-
const yandexMaps = useExternalNS(YMAPS_NAMESPACE, url);
|
|
2786
|
-
return yandexMaps;
|
|
2787
|
-
};
|
|
2788
|
-
|
|
2789
2875
|
const YandexMap = JSX(({ points }) => {
|
|
2790
2876
|
const map = useRef(null);
|
|
2791
2877
|
const yandexMaps = useYandexMaps();
|
|
@@ -2833,6 +2919,24 @@
|
|
|
2833
2919
|
|
|
2834
2920
|
const checkIsIconRenderable = (icon) => Boolean(icon?.icon || icon?.src);
|
|
2835
2921
|
|
|
2922
|
+
const renderItems = ({ items, isDotted = true, version = 'primary', className = '', }) => {
|
|
2923
|
+
const listVersion = version === 'primary' ? 'gray' : version;
|
|
2924
|
+
return items ? (jsx(List, { className: `mt-4 ${className}`, version: listVersion, items: items, listItemSize: "S", isDotted: isDotted })) : null;
|
|
2925
|
+
};
|
|
2926
|
+
|
|
2927
|
+
const renderStepContent = ({ styleMap, isMainButton, version, router, handlerDecorator, }) => (step, i, { length }) => {
|
|
2928
|
+
const { label, description, button, items, isDotted } = step;
|
|
2929
|
+
const additionalMarginClass = `${button?.text ? 'mb-8' : ''} ${step?.label ? 'mt-2' : 'mt-4'}`;
|
|
2930
|
+
const widthContainer = length < 5 ? 'w-[276px]' : 'w-[210px]';
|
|
2931
|
+
return (jsxs("div", { className: `flex flex-col items-center text-center relative
|
|
2932
|
+
whitespace-pre-line overflow-hidden ${widthContainer}`, children: [renderStepLabel(label), renderStepDescription({
|
|
2933
|
+
description,
|
|
2934
|
+
className: `${styleMap.description} ${additionalMarginClass}`,
|
|
2935
|
+
}), renderItems({ items, isDotted, version, className: styleMap.description }), button?.text && !isMainButton ? (jsx(Button, { className: "box-border py-3 h-12 w-full max-w-[240px] mt-auto", ...useLink({ router, handlerDecorator }, button), version: version, children: button.text })) : null] }, String(i)));
|
|
2936
|
+
};
|
|
2937
|
+
const renderStepLabel = (label) => label ? jsx("div", { className: "text-x6 m-0 mt-4", children: label }) : null;
|
|
2938
|
+
const renderStepDescription = ({ description, className = '', }) => (description ? jsx("div", { className: className, children: description }) : null);
|
|
2939
|
+
|
|
2836
2940
|
const STEPS_BLOCK_STYLE_MAPS = {
|
|
2837
2941
|
primary: {
|
|
2838
2942
|
background: 'bg-white',
|
|
@@ -2854,24 +2958,6 @@
|
|
|
2854
2958
|
},
|
|
2855
2959
|
};
|
|
2856
2960
|
|
|
2857
|
-
const renderItems = ({ items, isDotted = true, version = 'primary', className = '', }) => {
|
|
2858
|
-
const listVersion = version === 'primary' ? 'gray' : version;
|
|
2859
|
-
return items ? (jsx(List, { className: `mt-4 ${className}`, version: listVersion, items: items, listItemSize: "S", isDotted: isDotted })) : null;
|
|
2860
|
-
};
|
|
2861
|
-
|
|
2862
|
-
const renderStepContent = ({ styleMap, isMainButton, version, router, handlerDecorator, }) => (step, i, { length }) => {
|
|
2863
|
-
const { label, description, button, items, isDotted } = step;
|
|
2864
|
-
const additionalMarginClass = `${button?.text ? 'mb-8' : ''} ${step?.label ? 'mt-2' : 'mt-4'}`;
|
|
2865
|
-
const widthContainer = length < 5 ? 'w-[276px]' : 'w-[210px]';
|
|
2866
|
-
return (jsxs("div", { className: `flex flex-col items-center text-center relative
|
|
2867
|
-
whitespace-pre-line overflow-hidden ${widthContainer}`, children: [renderStepLabel(label), renderStepDescription({
|
|
2868
|
-
description,
|
|
2869
|
-
className: `${styleMap.description} ${additionalMarginClass}`,
|
|
2870
|
-
}), renderItems({ items, isDotted, version, className: styleMap.description }), button?.text && !isMainButton ? (jsx(Button, { className: "box-border py-3 h-12 w-full max-w-[240px] mt-auto", ...useLink({ router, handlerDecorator }, button), version: version, children: button.text })) : null] }, String(i)));
|
|
2871
|
-
};
|
|
2872
|
-
const renderStepLabel = (label) => label ? jsx("div", { className: "text-x6 m-0 mt-4", children: label }) : null;
|
|
2873
|
-
const renderStepDescription = ({ description, className = '', }) => (description ? jsx("div", { className: className, children: description }) : null);
|
|
2874
|
-
|
|
2875
2961
|
const getLineOpacity = (showLines) => (showLines ? '' : 'opacity-0');
|
|
2876
2962
|
const getPaddingX = (steps) => (steps < 5 ? 'px-[88px]' : 'px-[55px]');
|
|
2877
2963
|
const StepsBlock = JSX(({ className = '', showLines = true, steps = [], button, version = 'primary', context, ...rest }) => {
|
|
@@ -2914,14 +3000,14 @@
|
|
|
2914
3000
|
const ACTIVE_TEXT_CLASSES = 'text-white';
|
|
2915
3001
|
const INACTIVE_TEXT_CLASSES = 'text-secondary-text group-hover:text-primary-main';
|
|
2916
3002
|
|
|
2917
|
-
const BADGE_CLASSES = 'min-w-[22px]
|
|
3003
|
+
const BADGE_CLASSES = 'min-w-[22px] h-[22px] rounded-full text-xs ml-2 flex justify-center items-center';
|
|
2918
3004
|
const ACTIVE_BADGE_CLASSES = 'bg-white/30 text-white';
|
|
2919
3005
|
const INACTIVE_BADGE_CLASSES = 'bg-main-divider text-secondary-text group-hover:text-primary-main';
|
|
2920
3006
|
const renderGroupTab = ({ onClick, currentTab, showCounter, page }) => (tab, i) => {
|
|
2921
3007
|
const active = currentTab === tab;
|
|
2922
|
-
const count = tab.ref
|
|
2923
|
-
? page
|
|
2924
|
-
:
|
|
3008
|
+
const count = tab.ref && page?.blocks
|
|
3009
|
+
? page.blocks.filter((block) => block?.labels?.includes(tab.ref)).length
|
|
3010
|
+
: 0;
|
|
2925
3011
|
return (jsx("div", { className: `${LINK_CLASSES} ${active ? ACTIVE_LINK_CLASSES : INACTIVE_LINK_CLASSES}`, role: "tab", "aria-selected": active, onClick: () => onClick(tab), children: jsxs("div", { className: "flex flex-1 items-center justify-center", children: [tab?.title ? renderTitle$1(tab.title, active) : null, showCounter && count ? renderCount(count, active) : null] }) }, String(i)));
|
|
2926
3012
|
};
|
|
2927
3013
|
const renderTitle$1 = (title, active) => (jsx("h3", { className: `${TEXT_CLASSES} ${active ? ACTIVE_TEXT_CLASSES : INACTIVE_TEXT_CLASSES}`, children: title }));
|
|
@@ -3153,8 +3239,49 @@
|
|
|
3153
3239
|
return (jsxs("div", { role: "table", children: [jsxs("div", { className: "relative", children: [children, jsx(TableArrowScrollControl, { ...tableArrowScrollControlProps })] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[84px] bg-opacity-to-white" })) : null] }));
|
|
3154
3240
|
});
|
|
3155
3241
|
|
|
3242
|
+
const textBlockStyleMaps = {
|
|
3243
|
+
primary: {
|
|
3244
|
+
background: 'bg-white',
|
|
3245
|
+
icon: 'bg-primary-main text-white',
|
|
3246
|
+
title: 'text-primary-text',
|
|
3247
|
+
description: 'text-secondary-text',
|
|
3248
|
+
},
|
|
3249
|
+
secondary: {
|
|
3250
|
+
background: 'bg-primary-main',
|
|
3251
|
+
icon: 'bg-white text-primary-main',
|
|
3252
|
+
title: 'text-white',
|
|
3253
|
+
description: 'text-white',
|
|
3254
|
+
},
|
|
3255
|
+
'secondary-light': {
|
|
3256
|
+
background: 'bg-primary-main/10',
|
|
3257
|
+
icon: 'bg-primary-main text-white',
|
|
3258
|
+
title: 'text-primary-text',
|
|
3259
|
+
description: 'text-secondary-text',
|
|
3260
|
+
},
|
|
3261
|
+
};
|
|
3262
|
+
const TextBlock = JSX(({ title, description, blockVersion = 'primary', iconVersion, image, className, ...rest }) => {
|
|
3263
|
+
const textBlockStyleMap = textBlockStyleMaps[blockVersion];
|
|
3264
|
+
return (jsxs(BlockWrapper, { className: `font-sans px-9 py-4 flex ${textBlockStyleMap.background} ${className || ''}`, ...rest, children: [iconVersion === 'small' ? renderIcon(textBlockStyleMap.icon) : null, iconVersion === 'big' ? renderImage(image) : null, jsxs("div", { className: "py-0.5", children: [title ? (jsx("div", { className: `text-l font-medium mb-1 ${textBlockStyleMap.title}`, children: title })) : null, description ? (jsx("div", { className: `text-s ${textBlockStyleMap.description}`, children: description })) : null] })] }));
|
|
3265
|
+
});
|
|
3266
|
+
function renderIcon(className) {
|
|
3267
|
+
return (jsx("div", { className: "pt-1.5 pl-1 pr-4", children: jsx("div", { className: `rounded-full h-4 w-4 text-center text-xs-light ${className}`, children: "i" }) }));
|
|
3268
|
+
}
|
|
3269
|
+
function renderImage(image) {
|
|
3270
|
+
return image?.src ? jsx(ImgInner, { className: "pt-0.5 pr-3", image: image }) : null;
|
|
3271
|
+
}
|
|
3272
|
+
|
|
3273
|
+
const Tile = JSX((props) => {
|
|
3274
|
+
const { context, title, headingType = 'h3', description, items, children, buttons, image, isDotted = true, listItemSize = 'M', className = '', version = 'primary', ...rest } = props;
|
|
3275
|
+
const headingClassName = version === 'primary' ? 'text-primary-text' : '';
|
|
3276
|
+
return (jsx(BlockWrapper, { context: context, className: `overflow-hidden font-sans p-9 pr-3 box-border ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: jsxs(BaseTile, { context: context, title: title ? (jsx(Heading, { headingType: headingType, as: "h2", title: title, className: `whitespace-pre-wrap max-w-[600px] ${headingClassName}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons.map((button) => ({ ...button, className: 'w-[158px]' })), className: "flex mt-8 gap-3" })) : null, image: image?.src ? jsx(ImgInner, { className: "mt-auto ml-7", image: image }) : null, children: [description ? (jsx(Description, { className: "max-w-[600px] text-xl-light mt-2.5", description: description })) : null, children, renderList({ version, isDotted, listItemSize }, items)] }) }));
|
|
3277
|
+
});
|
|
3278
|
+
function renderList({ version, isDotted, listItemSize }, items) {
|
|
3279
|
+
return items?.length ? (jsx(List, { items: items, isDotted: isDotted, className: "mt-2.5", listItemSize: listItemSize, itemClassName: "mb-1.5", version: version })) : null;
|
|
3280
|
+
}
|
|
3281
|
+
|
|
3156
3282
|
const Blocks = {
|
|
3157
3283
|
Accordion,
|
|
3284
|
+
AccordionItem,
|
|
3158
3285
|
BenefitsBlock,
|
|
3159
3286
|
Bonus,
|
|
3160
3287
|
CardTransfer,
|
|
@@ -3177,7 +3304,10 @@
|
|
|
3177
3304
|
ProductGallery,
|
|
3178
3305
|
ProductTile,
|
|
3179
3306
|
PromoTile,
|
|
3307
|
+
OfficeMap,
|
|
3308
|
+
OfficeServicesBlock,
|
|
3180
3309
|
OtherProducts,
|
|
3310
|
+
OtherProductsItem,
|
|
3181
3311
|
Recommendation,
|
|
3182
3312
|
StepsBlock,
|
|
3183
3313
|
TariffsTable,
|
|
@@ -3188,9 +3318,12 @@
|
|
|
3188
3318
|
SafeDepositRental,
|
|
3189
3319
|
Tabs,
|
|
3190
3320
|
ErrorBlock,
|
|
3191
|
-
OfficeServicesBlock,
|
|
3192
3321
|
};
|
|
3193
3322
|
|
|
3323
|
+
function style2className(style) {
|
|
3324
|
+
return style ? style.filter(Boolean).join(' ') : '';
|
|
3325
|
+
}
|
|
3326
|
+
|
|
3194
3327
|
const api = LikeAPI();
|
|
3195
3328
|
function useLikeService(pagePath) {
|
|
3196
3329
|
const [likeCount, setLikeCount] = useState(0);
|
|
@@ -3236,24 +3369,25 @@
|
|
|
3236
3369
|
const DEFAULT_SLOT_NAME = null;
|
|
3237
3370
|
const DEFAULT_ANCESTORS = [DEFAULT_SLOT_NAME];
|
|
3238
3371
|
|
|
3372
|
+
const defaultChildRenderer = (_) => _;
|
|
3239
3373
|
function renderBlock(block, options, ancestors = DEFAULT_ANCESTORS) {
|
|
3240
3374
|
const { key, page, blockDecorator, blocksRegistry, context } = options;
|
|
3241
|
-
const { type } = block;
|
|
3375
|
+
const { type, blocks: childBlocks } = block;
|
|
3242
3376
|
if (!(type && type in blocksRegistry)) {
|
|
3243
3377
|
console.warn(`No block with "${type}" is registered`);
|
|
3244
3378
|
}
|
|
3245
3379
|
const BlockComponent = type && blocksRegistry[type];
|
|
3380
|
+
const { renderChild = defaultChildRenderer } = BlockComponent || {};
|
|
3381
|
+
const renderChildBlock = (_, j) => renderChild(renderBlock(_, { ...options, key: `${options.key}-${j}` }, [...ancestors, block]), j);
|
|
3382
|
+
const children = childBlocks?.length ? childBlocks.map(renderChildBlock) : null;
|
|
3246
3383
|
return blockDecorator({
|
|
3247
3384
|
blockClassName: `scroll-mt-12 ${style2className(block.style)}`,
|
|
3248
3385
|
block,
|
|
3249
3386
|
ancestors,
|
|
3250
3387
|
// Adjusted by decorator block and blockClassName
|
|
3251
3388
|
render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
|
|
3252
|
-
const { version,
|
|
3253
|
-
|
|
3254
|
-
? childBlocks.map((_, j) => renderBlock(_, { ...options, key: `${options.key}-${j}` }, [...ancestors, block]))
|
|
3255
|
-
: null;
|
|
3256
|
-
return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, version: version, context: context, page: page, anchor: anchor, labels: labels, ...content, children: children }, key)) : null;
|
|
3389
|
+
const { version, anchor, labels, content } = adjustedBlock;
|
|
3390
|
+
return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, context: context, page: page, ancestors: ancestors, version: version, anchor: anchor, labels: labels, ...content, children: children }, key)) : null;
|
|
3257
3391
|
},
|
|
3258
3392
|
}, key);
|
|
3259
3393
|
}
|
|
@@ -3278,11 +3412,14 @@
|
|
|
3278
3412
|
return (jsx("div", { className: "flex items-end absolute bottom-0 right-0 h-full pointer-events-none", children: jsx(LikeControl, { className: "rounded-tl-lg sticky bottom-0 pointer-events-auto", context: context }, "LikeControl") }));
|
|
3279
3413
|
}
|
|
3280
3414
|
|
|
3415
|
+
const packageVersion = "0.5.15";
|
|
3416
|
+
|
|
3281
3417
|
exports.Blocks = Blocks;
|
|
3282
3418
|
exports.ContentPage = ContentPage;
|
|
3283
3419
|
exports.DaDataAPI = DaDataAPI;
|
|
3284
3420
|
exports.LikeAPI = LikeAPI;
|
|
3285
3421
|
exports.joinList = joinList;
|
|
3422
|
+
exports.packageVersion = packageVersion;
|
|
3286
3423
|
exports.projectSettings = projectSettings;
|
|
3287
3424
|
exports.setup = setup;
|
|
3288
3425
|
exports.setupHooks = setupHooks;
|