@redneckz/wildless-cms-uni-blocks 0.5.12 → 0.5.13
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 +125 -69
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/Accordion/AccordionContent.d.ts +9 -7
- package/bundle/components/Accordion/AccordionItem.d.ts +1 -4
- package/bundle/components/Accordion/AccordionItem.mobile.d.ts +1 -4
- package/bundle/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/bundle/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/bundle/components/Blocks.d.ts +1 -0
- package/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/bundle/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/bundle/components/StepsBlock/renderItems.d.ts +7 -2
- package/bundle/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/bundle/model/BlockDecorator.d.ts +1 -0
- package/bundle/model/BlocksRegistry.d.ts +4 -1
- package/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/bundle/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/bundle/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/bundle/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/dist/components/Accordion/Accordion.js +3 -1
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/Accordion/Accordion.mobile.js +5 -2
- package/dist/components/Accordion/Accordion.mobile.js.map +1 -1
- package/dist/components/Accordion/AccordionContent.d.ts +9 -7
- package/dist/components/Accordion/AccordionItem.d.ts +1 -4
- package/dist/components/Accordion/AccordionItem.js +3 -8
- package/dist/components/Accordion/AccordionItem.js.map +1 -1
- package/dist/components/Accordion/AccordionItem.mobile.d.ts +1 -4
- package/dist/components/Accordion/AccordionItem.mobile.js +2 -5
- package/dist/components/Accordion/AccordionItem.mobile.js.map +1 -1
- package/dist/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/dist/components/Accordion/AccordionItemProps.js +2 -0
- package/dist/components/Accordion/AccordionItemProps.js.map +1 -0
- package/dist/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/dist/components/Accordion/AccordionItemsList.js +6 -0
- package/dist/components/Accordion/AccordionItemsList.js.map +1 -0
- package/dist/components/Blocks.d.ts +1 -0
- package/dist/components/Blocks.js +2 -0
- package/dist/components/Blocks.js.map +1 -1
- package/dist/components/ContentPage/filterBlocks.js +1 -2
- package/dist/components/ContentPage/filterBlocks.js.map +1 -1
- package/dist/components/ContentPage/filterBlocks.mobile.js +1 -3
- package/dist/components/ContentPage/filterBlocks.mobile.js.map +1 -1
- package/dist/components/ContentPage/renderBlock.js +1 -1
- package/dist/components/ContentPage/renderBlock.js.map +1 -1
- package/dist/components/Footer/Footer.mobile.js +8 -7
- package/dist/components/Footer/Footer.mobile.js.map +1 -1
- package/dist/components/Header/Header.mobile.js +5 -5
- package/dist/components/Header/Header.mobile.js.map +1 -1
- package/dist/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/dist/components/InvestmentInfo/InvestmentInfo.js +49 -0
- package/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
- package/dist/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/dist/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
- package/dist/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
- package/dist/components/OtherProducts/OtherProductsItem.js +4 -6
- package/dist/components/OtherProducts/OtherProductsItem.js.map +1 -1
- package/dist/components/StepsBlock/StepsBlock.js +2 -8
- package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
- package/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
- package/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
- package/dist/components/StepsBlock/renderItems.d.ts +7 -2
- package/dist/components/StepsBlock/renderItems.js +5 -1
- package/dist/components/StepsBlock/renderItems.js.map +1 -1
- package/dist/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/dist/components/StepsBlock/renderStepContent.js +20 -0
- package/dist/components/StepsBlock/renderStepContent.js.map +1 -0
- package/dist/components/TariffsTable/TariffsTable.js +11 -2
- package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
- package/dist/model/BlockDecorator.d.ts +1 -0
- package/dist/model/BlockDecorator.js +2 -1
- package/dist/model/BlockDecorator.js.map +1 -1
- package/dist/model/BlocksRegistry.d.ts +4 -1
- package/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/dist/ui-kit/Foldable/DefaultFoldButton.js +16 -0
- package/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
- package/dist/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/dist/ui-kit/Foldable/Foldable.js +7 -23
- package/dist/ui-kit/Foldable/Foldable.js.map +1 -1
- package/dist/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/dist/ui-kit/Foldable/{FoldButtonProps.js → FoldablePartProps.js} +1 -1
- package/dist/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
- package/dist/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/dist/ui-kit/Foldable/FoldableSection.js +17 -0
- package/dist/ui-kit/Foldable/FoldableSection.js.map +1 -0
- package/lib/common.css +1 -1
- package/lib/components/Accordion/Accordion.js +3 -1
- package/lib/components/Accordion/Accordion.js.map +1 -1
- package/lib/components/Accordion/Accordion.mobile.js +5 -2
- package/lib/components/Accordion/Accordion.mobile.js.map +1 -1
- package/lib/components/Accordion/AccordionContent.d.ts +9 -7
- package/lib/components/Accordion/AccordionItem.d.ts +1 -4
- package/lib/components/Accordion/AccordionItem.js +3 -8
- package/lib/components/Accordion/AccordionItem.js.map +1 -1
- package/lib/components/Accordion/AccordionItem.mobile.d.ts +1 -4
- package/lib/components/Accordion/AccordionItem.mobile.js +2 -5
- package/lib/components/Accordion/AccordionItem.mobile.js.map +1 -1
- package/lib/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/lib/components/Accordion/AccordionItemProps.js +2 -0
- package/lib/components/Accordion/AccordionItemProps.js.map +1 -0
- package/lib/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/lib/components/Accordion/AccordionItemsList.js +4 -0
- package/lib/components/Accordion/AccordionItemsList.js.map +1 -0
- package/lib/components/Blocks.d.ts +1 -0
- package/lib/components/Blocks.js +2 -0
- package/lib/components/Blocks.js.map +1 -1
- package/lib/components/ContentPage/filterBlocks.js +1 -2
- package/lib/components/ContentPage/filterBlocks.js.map +1 -1
- package/lib/components/ContentPage/filterBlocks.mobile.js +1 -3
- package/lib/components/ContentPage/filterBlocks.mobile.js.map +1 -1
- package/lib/components/ContentPage/renderBlock.js +2 -2
- package/lib/components/ContentPage/renderBlock.js.map +1 -1
- package/lib/components/Footer/Footer.mobile.js +8 -7
- package/lib/components/Footer/Footer.mobile.js.map +1 -1
- package/lib/components/Header/Header.mobile.js +5 -5
- package/lib/components/Header/Header.mobile.js.map +1 -1
- package/lib/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/lib/components/InvestmentInfo/InvestmentInfo.fixture.d.ts +7 -0
- package/lib/components/InvestmentInfo/InvestmentInfo.js +47 -0
- package/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
- package/lib/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/lib/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
- package/lib/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
- package/lib/components/OtherProducts/OtherProductsItem.js +4 -6
- package/lib/components/OtherProducts/OtherProductsItem.js.map +1 -1
- package/lib/components/StepsBlock/StepsBlock.fixture.d.ts +2 -1
- package/lib/components/StepsBlock/StepsBlock.js +2 -8
- package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
- package/lib/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
- package/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
- package/lib/components/StepsBlock/renderItems.d.ts +7 -2
- package/lib/components/StepsBlock/renderItems.js +6 -2
- package/lib/components/StepsBlock/renderItems.js.map +1 -1
- package/lib/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/lib/components/StepsBlock/renderStepContent.js +17 -0
- package/lib/components/StepsBlock/renderStepContent.js.map +1 -0
- package/lib/components/TariffsTable/TariffsTable.js +11 -2
- package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
- package/lib/model/BlockDecorator.d.ts +1 -0
- package/lib/model/BlockDecorator.js +1 -0
- package/lib/model/BlockDecorator.js.map +1 -1
- package/lib/model/BlocksRegistry.d.ts +4 -1
- package/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/lib/ui-kit/Foldable/DefaultFoldButton.js +13 -0
- package/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
- package/lib/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/lib/ui-kit/Foldable/Foldable.js +9 -25
- package/lib/ui-kit/Foldable/Foldable.js.map +1 -1
- package/lib/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/lib/ui-kit/Foldable/FoldablePartProps.js +2 -0
- package/lib/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
- package/lib/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/lib/ui-kit/Foldable/FoldableSection.js +15 -0
- package/lib/ui-kit/Foldable/FoldableSection.js.map +1 -0
- package/mobile/bundle/bundle.umd.js +131 -153
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/Accordion/AccordionContent.d.ts +9 -7
- package/mobile/bundle/components/Accordion/AccordionItem.d.ts +1 -4
- package/mobile/bundle/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/mobile/bundle/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/mobile/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/mobile/bundle/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/mobile/bundle/components/StepsBlock/renderItems.d.ts +7 -2
- package/mobile/bundle/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/mobile/bundle/model/BlockDecorator.d.ts +1 -0
- package/mobile/bundle/model/BlocksRegistry.d.ts +4 -1
- package/mobile/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/mobile/bundle/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/mobile/bundle/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/mobile/bundle/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/mobile/dist/components/Accordion/Accordion.js +5 -2
- package/mobile/dist/components/Accordion/Accordion.js.map +1 -1
- package/mobile/dist/components/Accordion/AccordionContent.d.ts +9 -7
- package/mobile/dist/components/Accordion/AccordionItem.d.ts +1 -4
- package/mobile/dist/components/Accordion/AccordionItem.js +2 -5
- package/mobile/dist/components/Accordion/AccordionItem.js.map +1 -1
- package/mobile/dist/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/mobile/dist/components/Accordion/AccordionItemProps.js +2 -0
- package/mobile/dist/components/Accordion/AccordionItemProps.js.map +1 -0
- package/mobile/dist/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/mobile/dist/components/Accordion/AccordionItemsList.js +6 -0
- package/mobile/dist/components/Accordion/AccordionItemsList.js.map +1 -0
- package/mobile/dist/components/ContentPage/filterBlocks.js +1 -3
- package/mobile/dist/components/ContentPage/filterBlocks.js.map +1 -1
- package/mobile/dist/components/ContentPage/renderBlock.js +1 -1
- package/mobile/dist/components/ContentPage/renderBlock.js.map +1 -1
- package/mobile/dist/components/Footer/Footer.js +8 -7
- package/mobile/dist/components/Footer/Footer.js.map +1 -1
- package/mobile/dist/components/Header/Header.js +5 -5
- package/mobile/dist/components/Header/Header.js.map +1 -1
- package/mobile/dist/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js +49 -0
- package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
- package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
- package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
- package/mobile/dist/components/OtherProducts/OtherProductsItem.js +4 -6
- package/mobile/dist/components/OtherProducts/OtherProductsItem.js.map +1 -1
- package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
- package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
- package/mobile/dist/components/StepsBlock/renderItems.d.ts +7 -2
- package/mobile/dist/components/StepsBlock/renderItems.js +5 -1
- package/mobile/dist/components/StepsBlock/renderItems.js.map +1 -1
- package/mobile/dist/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/mobile/dist/components/StepsBlock/renderStepContent.js +20 -0
- package/mobile/dist/components/StepsBlock/renderStepContent.js.map +1 -0
- package/mobile/dist/model/BlockDecorator.d.ts +1 -0
- package/mobile/dist/model/BlockDecorator.js +2 -1
- package/mobile/dist/model/BlockDecorator.js.map +1 -1
- package/mobile/dist/model/BlocksRegistry.d.ts +4 -1
- package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js +16 -0
- package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
- package/mobile/dist/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/mobile/dist/ui-kit/Foldable/Foldable.js +7 -23
- package/mobile/dist/ui-kit/Foldable/Foldable.js.map +1 -1
- package/mobile/dist/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/mobile/dist/ui-kit/Foldable/{FoldButtonProps.js → FoldablePartProps.js} +1 -1
- package/mobile/dist/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
- package/mobile/dist/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/mobile/dist/ui-kit/Foldable/FoldableSection.js +17 -0
- package/mobile/dist/ui-kit/Foldable/FoldableSection.js.map +1 -0
- package/mobile/lib/components/Accordion/Accordion.js +5 -2
- package/mobile/lib/components/Accordion/Accordion.js.map +1 -1
- package/mobile/lib/components/Accordion/AccordionContent.d.ts +9 -7
- package/mobile/lib/components/Accordion/AccordionItem.d.ts +1 -4
- package/mobile/lib/components/Accordion/AccordionItem.js +2 -5
- package/mobile/lib/components/Accordion/AccordionItem.js.map +1 -1
- package/mobile/lib/components/Accordion/AccordionItemProps.d.ts +5 -0
- package/mobile/lib/components/Accordion/AccordionItemProps.js +2 -0
- package/mobile/lib/components/Accordion/AccordionItemProps.js.map +1 -0
- package/mobile/lib/components/Accordion/AccordionItemsList.d.ts +1 -0
- package/mobile/lib/components/Accordion/AccordionItemsList.js +4 -0
- package/mobile/lib/components/Accordion/AccordionItemsList.js.map +1 -0
- package/mobile/lib/components/ContentPage/filterBlocks.js +1 -3
- package/mobile/lib/components/ContentPage/filterBlocks.js.map +1 -1
- package/mobile/lib/components/ContentPage/renderBlock.js +2 -2
- package/mobile/lib/components/ContentPage/renderBlock.js.map +1 -1
- package/mobile/lib/components/Footer/Footer.js +8 -7
- package/mobile/lib/components/Footer/Footer.js.map +1 -1
- package/mobile/lib/components/Header/Header.js +5 -5
- package/mobile/lib/components/Header/Header.js.map +1 -1
- package/mobile/lib/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
- package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js +47 -0
- package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
- package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
- package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
- package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
- package/mobile/lib/components/OtherProducts/OtherProductsItem.js +4 -6
- package/mobile/lib/components/OtherProducts/OtherProductsItem.js.map +1 -1
- package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
- package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
- package/mobile/lib/components/StepsBlock/renderItems.d.ts +7 -2
- package/mobile/lib/components/StepsBlock/renderItems.js +6 -2
- package/mobile/lib/components/StepsBlock/renderItems.js.map +1 -1
- package/mobile/lib/components/StepsBlock/renderStepContent.d.ts +14 -0
- package/mobile/lib/components/StepsBlock/renderStepContent.js +17 -0
- package/mobile/lib/components/StepsBlock/renderStepContent.js.map +1 -0
- package/mobile/lib/model/BlockDecorator.d.ts +1 -0
- package/mobile/lib/model/BlockDecorator.js +1 -0
- package/mobile/lib/model/BlockDecorator.js.map +1 -1
- package/mobile/lib/model/BlocksRegistry.d.ts +4 -1
- package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
- package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js +13 -0
- package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
- package/mobile/lib/ui-kit/Foldable/Foldable.d.ts +3 -10
- package/mobile/lib/ui-kit/Foldable/Foldable.js +9 -25
- package/mobile/lib/ui-kit/Foldable/Foldable.js.map +1 -1
- package/mobile/lib/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
- package/mobile/lib/ui-kit/Foldable/FoldablePartProps.js +2 -0
- package/mobile/lib/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
- package/mobile/lib/ui-kit/Foldable/FoldableSection.d.ts +5 -0
- package/mobile/lib/ui-kit/Foldable/FoldableSection.js +15 -0
- package/mobile/lib/ui-kit/Foldable/FoldableSection.js.map +1 -0
- package/mobile/src/common.css +11 -3
- package/mobile/src/components/Accordion/Accordion.tsx +17 -7
- package/mobile/src/components/Accordion/AccordionContent.ts +10 -7
- package/mobile/src/components/Accordion/AccordionItem.tsx +34 -30
- package/mobile/src/components/Accordion/AccordionItemProps.ts +6 -0
- package/mobile/src/components/Accordion/AccordionItemsList.tsx +5 -0
- package/mobile/src/components/ContentPage/filterBlocks.ts +1 -3
- package/mobile/src/components/ContentPage/renderBlock.tsx +2 -2
- package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.ui.json +8 -1
- package/mobile/src/components/Footer/Footer.tsx +15 -13
- package/mobile/src/components/GracePeriod/GracePeriod.ui.json +5 -0
- package/mobile/src/components/Header/Header.tsx +16 -11
- package/mobile/src/components/InvestmentInfo/InvestmentInfo.example.json +48 -0
- package/mobile/src/components/InvestmentInfo/InvestmentInfo.tsx +149 -0
- package/mobile/src/components/InvestmentInfo/InvestmentInfo.ui.json +16 -0
- package/mobile/src/components/InvestmentInfo/InvestmentInfoContent.ts +55 -0
- package/mobile/src/components/OtherProducts/OtherProductsItem.tsx +18 -15
- package/mobile/src/components/SafeDepositRental/SafeDepositRental.ui.json +8 -1
- package/mobile/src/components/StepsBlock/StepsBlockStyleMaps.ts +2 -2
- package/mobile/src/components/StepsBlock/renderItems.tsx +24 -15
- package/mobile/src/components/StepsBlock/renderStepContent.tsx +63 -0
- package/mobile/src/model/BlockDecorator.ts +2 -0
- package/mobile/src/model/BlocksRegistry.ts +4 -1
- package/mobile/src/ui-kit/Foldable/DefaultFoldButton.tsx +52 -0
- package/mobile/src/ui-kit/Foldable/Foldable.tsx +19 -67
- package/mobile/src/ui-kit/Foldable/FoldablePartProps.ts +4 -0
- package/mobile/src/ui-kit/Foldable/FoldableSection.tsx +30 -0
- package/package.json +2 -2
- package/src/common.css +11 -3
- package/src/components/Accordion/Accordion.mobile.tsx +17 -7
- package/src/components/Accordion/Accordion.tsx +12 -3
- package/src/components/Accordion/AccordionContent.ts +10 -7
- package/src/components/Accordion/AccordionItem.mobile.tsx +34 -30
- package/src/components/Accordion/AccordionItem.tsx +24 -23
- package/src/components/Accordion/AccordionItemProps.ts +6 -0
- package/src/components/Accordion/AccordionItemsList.tsx +5 -0
- package/src/components/Blocks.ts +2 -0
- package/src/components/ContentPage/filterBlocks.mobile.ts +1 -3
- package/src/components/ContentPage/filterBlocks.ts +1 -2
- package/src/components/ContentPage/renderBlock.tsx +2 -2
- package/src/components/ExchangeRateTile/ExchangeRateTile.ui.json +8 -1
- package/src/components/Footer/Footer.mobile.tsx +15 -13
- package/src/components/GracePeriod/GracePeriod.ui.json +5 -0
- package/src/components/Header/Header.mobile.tsx +16 -11
- package/src/components/InvestmentInfo/InvestmentInfo.example.json +48 -0
- package/src/components/InvestmentInfo/InvestmentInfo.fixture.tsx +107 -0
- package/src/components/InvestmentInfo/InvestmentInfo.tsx +149 -0
- package/src/components/InvestmentInfo/InvestmentInfo.ui.json +16 -0
- package/src/components/InvestmentInfo/InvestmentInfoContent.ts +55 -0
- package/src/components/OtherProducts/OtherProductsItem.tsx +18 -15
- package/src/components/SafeDepositRental/SafeDepositRental.ui.json +8 -1
- package/src/components/StepsBlock/StepsBlock.fixture.tsx +39 -25
- package/src/components/StepsBlock/StepsBlock.tsx +3 -49
- package/src/components/StepsBlock/StepsBlockStyleMaps.ts +2 -2
- package/src/components/StepsBlock/renderItems.tsx +24 -15
- package/src/components/StepsBlock/renderStepContent.tsx +63 -0
- package/src/components/TariffsTable/TariffsTable.tsx +32 -23
- package/src/model/BlockDecorator.ts +2 -0
- package/src/model/BlocksRegistry.ts +4 -1
- package/src/ui-kit/Foldable/DefaultFoldButton.tsx +52 -0
- package/src/ui-kit/Foldable/Foldable.tsx +19 -67
- package/src/ui-kit/Foldable/FoldablePartProps.ts +4 -0
- package/src/ui-kit/Foldable/FoldableSection.tsx +30 -0
- package/tailwind.config.cjs +5 -0
- package/bundle/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/bundle/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/bundle/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/bundle/utils/getAccordionItems.d.ts +0 -1
- package/dist/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/dist/components/ContentPage/isBlockInRegistry.js +0 -7
- package/dist/components/ContentPage/isBlockInRegistry.js.map +0 -1
- package/dist/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/dist/ui-kit/Foldable/DefaultButton.js +0 -12
- package/dist/ui-kit/Foldable/DefaultButton.js.map +0 -1
- package/dist/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/dist/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
- package/dist/utils/getAccordionItems.d.ts +0 -1
- package/dist/utils/getAccordionItems.js +0 -13
- package/dist/utils/getAccordionItems.js.map +0 -1
- package/lib/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/lib/components/ContentPage/isBlockInRegistry.js +0 -4
- package/lib/components/ContentPage/isBlockInRegistry.js.map +0 -1
- package/lib/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/lib/ui-kit/Foldable/DefaultButton.js +0 -10
- package/lib/ui-kit/Foldable/DefaultButton.js.map +0 -1
- package/lib/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/lib/ui-kit/Foldable/FoldButtonProps.js +0 -2
- package/lib/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
- package/lib/utils/getAccordionItems.d.ts +0 -1
- package/lib/utils/getAccordionItems.js +0 -10
- package/lib/utils/getAccordionItems.js.map +0 -1
- package/mobile/bundle/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/mobile/bundle/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/mobile/bundle/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/mobile/bundle/utils/getAccordionItems.d.ts +0 -1
- package/mobile/dist/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/mobile/dist/components/ContentPage/isBlockInRegistry.js +0 -7
- package/mobile/dist/components/ContentPage/isBlockInRegistry.js.map +0 -1
- package/mobile/dist/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/mobile/dist/ui-kit/Foldable/DefaultButton.js +0 -12
- package/mobile/dist/ui-kit/Foldable/DefaultButton.js.map +0 -1
- package/mobile/dist/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/mobile/dist/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
- package/mobile/dist/utils/getAccordionItems.d.ts +0 -1
- package/mobile/dist/utils/getAccordionItems.js +0 -13
- package/mobile/dist/utils/getAccordionItems.js.map +0 -1
- package/mobile/lib/components/ContentPage/isBlockInRegistry.d.ts +0 -2
- package/mobile/lib/components/ContentPage/isBlockInRegistry.js +0 -4
- package/mobile/lib/components/ContentPage/isBlockInRegistry.js.map +0 -1
- package/mobile/lib/ui-kit/Foldable/DefaultButton.d.ts +0 -2
- package/mobile/lib/ui-kit/Foldable/DefaultButton.js +0 -10
- package/mobile/lib/ui-kit/Foldable/DefaultButton.js.map +0 -1
- package/mobile/lib/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
- package/mobile/lib/ui-kit/Foldable/FoldButtonProps.js +0 -2
- package/mobile/lib/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
- package/mobile/lib/utils/getAccordionItems.d.ts +0 -1
- package/mobile/lib/utils/getAccordionItems.js +0 -10
- package/mobile/lib/utils/getAccordionItems.js.map +0 -1
- package/mobile/src/components/ContentPage/isBlockInRegistry.ts +0 -5
- package/mobile/src/ui-kit/Foldable/DefaultButton.tsx +0 -27
- package/mobile/src/ui-kit/Foldable/FoldButtonProps.ts +0 -13
- package/mobile/src/utils/getAccordionItems.ts +0 -10
- package/src/components/ContentPage/isBlockInRegistry.ts +0 -5
- package/src/ui-kit/Foldable/DefaultButton.tsx +0 -27
- package/src/ui-kit/Foldable/FoldButtonProps.ts +0 -13
- package/src/utils/getAccordionItems.ts +0 -10
|
@@ -228,6 +228,10 @@
|
|
|
228
228
|
return JSXTmpl;
|
|
229
229
|
};
|
|
230
230
|
|
|
231
|
+
function style2className(style) {
|
|
232
|
+
return style ? style.filter(Boolean).join(' ') : '';
|
|
233
|
+
}
|
|
234
|
+
|
|
231
235
|
const HeadingClass = {
|
|
232
236
|
h0: 'text-m-title',
|
|
233
237
|
h1: 'text-m-title',
|
|
@@ -242,10 +246,6 @@
|
|
|
242
246
|
return (jsx(Tag, { className: `font-sans font-medium m-0 ${HeadingClass[headingType]} ${className || ''}`, children: title }));
|
|
243
247
|
});
|
|
244
248
|
|
|
245
|
-
function style2className(style) {
|
|
246
|
-
return style ? style.filter(Boolean).join(' ') : '';
|
|
247
|
-
}
|
|
248
|
-
|
|
249
249
|
const svgUseStyleMap = {
|
|
250
250
|
normal: 'text-primary-main',
|
|
251
251
|
black: 'text-black',
|
|
@@ -935,44 +935,30 @@
|
|
|
935
935
|
return (jsx(EmbeddedBlock, { className: `${className} ${classNameBlock}`, context: context, ...rest }, `block_${i}`));
|
|
936
936
|
};
|
|
937
937
|
|
|
938
|
-
const
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
938
|
+
const Foldable = JSX(({ isFoldButtonOnTop = false, unfoldedByDefault = false, renderFoldableSection, renderFoldButton, }) => {
|
|
939
|
+
const [isUnfolded, setIsUnfolded] = useState(unfoldedByDefault);
|
|
940
|
+
const onToggle = useCallback(() => {
|
|
941
|
+
setIsUnfolded((_) => !_);
|
|
942
|
+
}, []);
|
|
943
|
+
const sectionNode = renderFoldableSection({ isUnfolded, onToggle });
|
|
944
|
+
const buttonNode = renderFoldButton ? renderFoldButton({ isUnfolded, onToggle }) : null;
|
|
945
|
+
return isFoldButtonOnTop ? (jsxs("div", { children: [buttonNode, sectionNode] })) : (jsxs("div", { children: [sectionNode, buttonNode] }));
|
|
945
946
|
});
|
|
946
947
|
|
|
947
|
-
const
|
|
948
|
-
const [isUnfolded, setIsUnfolded] = useState(unfoldedByDefault);
|
|
949
|
-
const blocksToHide = clamp(hiddenBlocksNum, 0, blocks?.length);
|
|
950
|
-
const visibleBlocks = blocks.slice(0, blocks.length - blocksToHide);
|
|
951
|
-
const hiddenBlocks = blocksToHide > 0 ? blocks.slice(-blocksToHide) : [];
|
|
948
|
+
const FoldableSection = JSX(({ className = '', isUnfolded, children }) => {
|
|
952
949
|
const containerRef = useRef(null);
|
|
953
|
-
|
|
954
|
-
setIsUnfolded(!isUnfolded);
|
|
950
|
+
useEffect(() => {
|
|
955
951
|
if (containerRef.current) {
|
|
956
952
|
containerRef.current.style.maxHeight = isUnfolded
|
|
957
|
-
?
|
|
958
|
-
:
|
|
953
|
+
? `${containerRef.current.scrollHeight}px`
|
|
954
|
+
: '';
|
|
959
955
|
}
|
|
960
|
-
};
|
|
961
|
-
|
|
962
|
-
const blocksNode = blockWrapper(jsxs("div", { children: [visibleBlocks, jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${containerClassName}`, children: hiddenBlocks })] }));
|
|
963
|
-
return (jsx("div", { children: isFoldButtonOnTop ? (jsxs("div", { children: [buttonNode, blocksNode] })) : (jsxs("div", { children: [blocksNode, buttonNode] })) }));
|
|
956
|
+
}, [isUnfolded]);
|
|
957
|
+
return (jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${className}`, children: children }));
|
|
964
958
|
});
|
|
965
|
-
const renderDefaultFoldButton = (props) => {
|
|
966
|
-
const labels = ['Развернуть', 'Скрыть'];
|
|
967
|
-
const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
|
|
968
|
-
return (jsx(DefaultButton, { icon: icons[Number(props.isUnfolded)], label: labels[Number(props.isUnfolded)], onClick: props.onToggle }));
|
|
969
|
-
};
|
|
970
959
|
|
|
971
960
|
const icons = ['PlusIcon', 'MinusIcon'];
|
|
972
|
-
const AccordionItem = JSX(({ label = '', labelIcon,
|
|
973
|
-
const foldableBlocks = blocks ? renderBlocksList$1({ context, blocks, className: '!px-0' }) : [];
|
|
974
|
-
return (jsx("li", { className: `${borderedLiClass(bordered)} border-solid border-main-divider`, children: jsx(Foldable, { hiddenBlocksNum: foldableBlocks.length, blocks: foldableBlocks, isFoldButtonOnTop: true, containerClassName: "flex flex-wrap group-last:last:pb-0", renderFoldButton: (props) => (jsx(FoldButton, { className: bordered ? '' : 'py-[14px] px-0', icon: icons[Number(props.isUnfolded)], label: label, primaryIcon: labelIcon, hasContent: Boolean(blocks?.length), onClick: props.onToggle })) }) }));
|
|
975
|
-
});
|
|
961
|
+
const AccordionItem = JSX(({ label = '', labelIcon, bordered, children, hasContent = true }) => (jsx("li", { className: `${borderedLiClass(bordered)} border-solid border-main-divider`, children: jsx(Foldable, { isFoldButtonOnTop: true, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { className: "flex flex-wrap group-last:last:pb-0", isUnfolded: isUnfolded, children: children })), renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(FoldButton, { className: bordered ? '' : 'py-[14px] px-0', label: label, icon: icons[Number(isUnfolded)], primaryIcon: labelIcon, hasContent: hasContent, onClick: onToggle })) }) })));
|
|
976
962
|
const FoldButton = JSX(({ className, hasContent, icon, label, primaryIcon, onClick }) => (jsxs("button", { className: `border-none bg-transparent flex justify-between text-left w-full font-sans text-primary-text
|
|
977
963
|
${className}
|
|
978
964
|
${hasContent ? 'group cursor-pointer' : ''}`, onClick: onClick, children: [jsxs("span", { className: `text-m-title-xs font-medium pr-2.5 flex ${hasContent ? 'group-hover:text-primary-main' : ''}`, children: [primaryIcon ? (jsx(Img, { image: primaryIcon, className: "mr-3 flex-shrink-0", width: "24", height: "24", asSVG: true })) : null, label] }), hasContent ? (jsx(Img, { className: "flex-shrink-0", image: icon, width: "24", height: "24", asSVG: true })) : null] })));
|
|
@@ -980,8 +966,10 @@
|
|
|
980
966
|
return bordered ? 'border p-4 rounded mb-4' : 'border-0 border-b last:border-b-0';
|
|
981
967
|
}
|
|
982
968
|
|
|
983
|
-
const
|
|
984
|
-
|
|
969
|
+
const AccordionItemsList = JSX(({ children }) => (jsx("ul", { className: "list-none m-0 p-0", children: children })));
|
|
970
|
+
|
|
971
|
+
const Accordion = JSX(({ title, description, accordionItems, context, className = '', bordered, ...rest }) => {
|
|
972
|
+
return (jsxs(BlockWrapper, { context: context, className: `py-6 px-4 font-sans bg-white text-primary-text ${className}`, ...rest, children: [title ? jsx(Heading, { headingType: "h3", className: "mb-2 text-center", title: title }) : null, description ? jsx("div", { className: "mb-5 text-m-light text-center", children: description }) : null, accordionItems?.length ? (jsx(AccordionItemsList, { children: accordionItems.map((item, i) => (jsx(AccordionItem, { context: context, bordered: bordered, hasContent: Boolean(item.blocks?.length), ...item, children: renderBlocksList$1({ blocks: item.blocks, context, className: '!p-0 mb-5' }) }, `AccordionItem_${i}`))) })) : null] }));
|
|
985
973
|
});
|
|
986
974
|
|
|
987
975
|
const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
|
|
@@ -1024,108 +1012,6 @@
|
|
|
1024
1012
|
return orientation === 'horizontal' ? (jsx(SwipeListControl, { context: context, onSlideChange: handleSlideChange, children: tableColumns })) : (tableColumns);
|
|
1025
1013
|
});
|
|
1026
1014
|
|
|
1027
|
-
const SVG_COLOR = {
|
|
1028
|
-
'bg-white': 'text-primary-main',
|
|
1029
|
-
transparent: 'text-white',
|
|
1030
|
-
};
|
|
1031
|
-
const TEXT_COLOR = {
|
|
1032
|
-
'bg-white': 'text-black',
|
|
1033
|
-
transparent: 'text-white',
|
|
1034
|
-
};
|
|
1035
|
-
const Logo = JSX(({ className = '', href, children, targetBlank, bgColor = 'bg-white', showTitle = true }) => {
|
|
1036
|
-
return (jsxs("a", { className: `inline-flex items-center font-sans no-underline ${className}`, href: href || 'https://rshb.ru/', target: targetBlank ? '_blank' : '_self', "aria-label": "\u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A", children: [jsx(Img, { image: { icon: 'LogoIcon', iconVersion: SVG_COLOR[bgColor] }, className: `${SVG_COLOR[bgColor]} w-10 h-[38px]`, asSVG: true }), showTitle ? (jsx("span", { className: `${TEXT_COLOR[bgColor]} text-s font-medium ml-2.5`, children: children || 'Россельхозбанк' })) : null] }));
|
|
1037
|
-
});
|
|
1038
|
-
|
|
1039
|
-
const MobileAppTile = JSX(({ className = '', title = 'Мобильное приложение', description, href = '#' }) => {
|
|
1040
|
-
return (jsx("div", { className: `col-span-12 rounded-md cursor-pointer p-4 mt-6 mb-6 bg-secondary-light font-sans ${className}`, children: href ? (jsxs("div", { className: "flex", children: [jsx("div", { className: "flex justify-center align-middle rounded-md bg-primary-main w-[50px] h-[50px]", children: jsx(Logo, { className: "w-[33px]", bgColor: "transparent", showTitle: true }) }), jsxs("a", { href: href, target: "_blank", className: "flex flex-col justify-center pl-3", children: [jsx("div", { className: "text-s font-medium mb-[3px]", children: title }), jsx("div", { className: "text-s text-secondary-text", children: description })] })] })) : null }));
|
|
1041
|
-
});
|
|
1042
|
-
|
|
1043
|
-
const Contacts = JSX(({ className = '', items, hasButton, context }) => {
|
|
1044
|
-
const router = context.useRouter();
|
|
1045
|
-
const { handlerDecorator } = context;
|
|
1046
|
-
return (jsxs("div", { className: className, children: [items?.length ? items.map(renderContact) : null, hasButton ? (jsx(Button, { version: "primary", className: "mb-6 w-full", ...useLink({ router, handlerDecorator }, {
|
|
1047
|
-
text: 'Обратная связь',
|
|
1048
|
-
href: '/',
|
|
1049
|
-
target: '_blank',
|
|
1050
|
-
}), ariaLabel: "\u041E\u0431\u0440\u0430\u0442\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u044C" })) : null] }));
|
|
1051
|
-
});
|
|
1052
|
-
const renderContact = (item, index) => {
|
|
1053
|
-
const { type, text, description } = item;
|
|
1054
|
-
return (jsxs("div", { className: "mb-4", children: [jsx("div", { children: renderText(type, text) }), jsx("div", { className: "mt-1 text-s-light text-secondary-text", children: description })] }, String(index)));
|
|
1055
|
-
};
|
|
1056
|
-
const renderText = (type, text = '') => {
|
|
1057
|
-
switch (type) {
|
|
1058
|
-
case 'tel':
|
|
1059
|
-
return (jsx("a", { className: "text-h6 text-primary-text hover:text-primary-main no-underline", href: `tel:${formatTel(text)}`, children: text }));
|
|
1060
|
-
case 'email':
|
|
1061
|
-
return (jsx("a", { className: "text-xl-light text-primary-text no-underline", href: `mailto:${text}`, children: text }));
|
|
1062
|
-
default:
|
|
1063
|
-
return jsx("span", { children: text });
|
|
1064
|
-
}
|
|
1065
|
-
};
|
|
1066
|
-
const formatTel = (s) => s.replaceAll(/\D/g, '');
|
|
1067
|
-
|
|
1068
|
-
const HorizontalNavigationLink = JSX(({ className = '', index, text, href, target, onClick }) => (jsx("a", { className: `text-secondary-text hover:text-primary-main inline-block no-underline ${className}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` })));
|
|
1069
|
-
|
|
1070
|
-
const HorizontalNavigation = JSX(({ title, links, className = '', context }) => {
|
|
1071
|
-
const router = context.useRouter();
|
|
1072
|
-
const { handlerDecorator } = context;
|
|
1073
|
-
return (jsxs("div", { className: className, children: [jsx("span", { className: "text-primary-text text-s font-medium", children: title }), links?.length ? (jsx("div", { className: "flex flex-col gap-2 pt-3", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-s", ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1074
|
-
});
|
|
1075
|
-
|
|
1076
|
-
const ICONS_MAP = [
|
|
1077
|
-
{
|
|
1078
|
-
origins: ['t.me', 'telegram.org'],
|
|
1079
|
-
icon: { icon: 'TelegramIcon' },
|
|
1080
|
-
label: 'Телеграм',
|
|
1081
|
-
},
|
|
1082
|
-
{
|
|
1083
|
-
origins: ['vk.com'],
|
|
1084
|
-
icon: { icon: 'VKIcon' },
|
|
1085
|
-
label: 'ВКонтакте',
|
|
1086
|
-
},
|
|
1087
|
-
{
|
|
1088
|
-
origins: ['ok.ru'],
|
|
1089
|
-
icon: { icon: 'OkIcon' },
|
|
1090
|
-
label: 'Одноклассники',
|
|
1091
|
-
},
|
|
1092
|
-
{
|
|
1093
|
-
origins: ['apps.apple.com'],
|
|
1094
|
-
icon: { icon: 'AppleIcon' },
|
|
1095
|
-
label: 'App Store',
|
|
1096
|
-
},
|
|
1097
|
-
{
|
|
1098
|
-
origins: ['play.google.com'],
|
|
1099
|
-
icon: { icon: 'PlayMarketIcon' },
|
|
1100
|
-
label: 'Google Play',
|
|
1101
|
-
},
|
|
1102
|
-
];
|
|
1103
|
-
const MediaButton = JSX(({ href, version = 'primary' }) => {
|
|
1104
|
-
const { icon, label } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
|
|
1105
|
-
if (!icon) {
|
|
1106
|
-
return null;
|
|
1107
|
-
}
|
|
1108
|
-
const classes = version === 'secondary'
|
|
1109
|
-
? 'bg-white hover:bg-secondary-hover'
|
|
1110
|
-
: 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
|
|
1111
|
-
const isPrimary = version === 'primary';
|
|
1112
|
-
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(Img, { image: icon, imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
|
|
1113
|
-
});
|
|
1114
|
-
|
|
1115
|
-
const SocialMedia = JSX(({ className, media, version, context }) => {
|
|
1116
|
-
const router = context.useRouter();
|
|
1117
|
-
const { handlerDecorator } = context;
|
|
1118
|
-
return (jsx("div", { className: `flex gap-2 items-start justify-start pt-6 pb-6 ${className || ''}`, children: media?.map((_, index) => (jsx(MediaButton, { version: version, ...useLink({ router, handlerDecorator }, _) }, String(index)))) }));
|
|
1119
|
-
});
|
|
1120
|
-
|
|
1121
|
-
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}` })));
|
|
1122
|
-
|
|
1123
|
-
const TextInformation = JSX(({ className, links, context }) => {
|
|
1124
|
-
const router = context.useRouter();
|
|
1125
|
-
const { handlerDecorator } = context;
|
|
1126
|
-
return (jsxs("div", { className: `${className || ''}`, children: [jsx("div", { className: "py-6", 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 flex-col justify-start items-start gap-2`, children: links.map((_, i) => (jsx(TextInformationLink, { index: i, className: "", ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1127
|
-
});
|
|
1128
|
-
|
|
1129
1015
|
const consistentDataMap = new Map();
|
|
1130
1016
|
function useAsyncData(key, fetcher, { fallback } = {}) {
|
|
1131
1017
|
const args = useMemo(() => keyToArgs(key), [key]);
|
|
@@ -1230,21 +1116,113 @@
|
|
|
1230
1116
|
return jsx(SearchBarInner, { className: className, isMobile: true });
|
|
1231
1117
|
});
|
|
1232
1118
|
|
|
1233
|
-
const
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
})
|
|
1119
|
+
const SVG_COLOR = {
|
|
1120
|
+
'bg-white': 'text-primary-main',
|
|
1121
|
+
transparent: 'text-white',
|
|
1122
|
+
};
|
|
1123
|
+
const TEXT_COLOR = {
|
|
1124
|
+
'bg-white': 'text-black',
|
|
1125
|
+
transparent: 'text-white',
|
|
1126
|
+
};
|
|
1127
|
+
const Logo = JSX(({ className = '', href, children, targetBlank, bgColor = 'bg-white', showTitle = true }) => {
|
|
1128
|
+
return (jsxs("a", { className: `inline-flex items-center font-sans no-underline ${className}`, href: href || 'https://rshb.ru/', target: targetBlank ? '_blank' : '_self', "aria-label": "\u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A", children: [jsx(Img, { image: { icon: 'LogoIcon', iconVersion: SVG_COLOR[bgColor] }, className: `${SVG_COLOR[bgColor]} w-10 h-[38px]`, asSVG: true }), showTitle ? (jsx("span", { className: `${TEXT_COLOR[bgColor]} text-s font-medium ml-2.5`, children: children || 'Россельхозбанк' })) : null] }));
|
|
1129
|
+
});
|
|
1130
|
+
|
|
1131
|
+
const MobileAppTile = JSX(({ className = '', title = 'Мобильное приложение', description, href = '#' }) => {
|
|
1132
|
+
return (jsx("div", { className: `col-span-12 rounded-md cursor-pointer p-4 mt-6 mb-6 bg-secondary-light font-sans ${className}`, children: href ? (jsxs("div", { className: "flex", children: [jsx("div", { className: "flex justify-center align-middle rounded-md bg-primary-main w-[50px] h-[50px]", children: jsx(Logo, { className: "w-[33px]", bgColor: "transparent", showTitle: true }) }), jsxs("a", { href: href, target: "_blank", className: "flex flex-col justify-center pl-3", children: [jsx("div", { className: "text-s font-medium mb-[3px]", children: title }), jsx("div", { className: "text-s text-secondary-text", children: description })] })] })) : null }));
|
|
1133
|
+
});
|
|
1134
|
+
|
|
1135
|
+
const Contacts = JSX(({ className = '', items, hasButton, context }) => {
|
|
1136
|
+
const router = context.useRouter();
|
|
1137
|
+
const { handlerDecorator } = context;
|
|
1138
|
+
return (jsxs("div", { className: className, children: [items?.length ? items.map(renderContact) : null, hasButton ? (jsx(Button, { version: "primary", className: "mb-6 w-full", ...useLink({ router, handlerDecorator }, {
|
|
1139
|
+
text: 'Обратная связь',
|
|
1140
|
+
href: '/',
|
|
1141
|
+
target: '_blank',
|
|
1142
|
+
}), ariaLabel: "\u041E\u0431\u0440\u0430\u0442\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u044C" })) : null] }));
|
|
1143
|
+
});
|
|
1144
|
+
const renderContact = (item, index) => {
|
|
1145
|
+
const { type, text, description } = item;
|
|
1146
|
+
return (jsxs("div", { className: "mb-4", children: [jsx("div", { children: renderText(type, text) }), jsx("div", { className: "mt-1 text-s-light text-secondary-text", children: description })] }, String(index)));
|
|
1147
|
+
};
|
|
1148
|
+
const renderText = (type, text = '') => {
|
|
1149
|
+
switch (type) {
|
|
1150
|
+
case 'tel':
|
|
1151
|
+
return (jsx("a", { className: "text-h6 text-primary-text hover:text-primary-main no-underline", href: `tel:${formatTel(text)}`, children: text }));
|
|
1152
|
+
case 'email':
|
|
1153
|
+
return (jsx("a", { className: "text-xl-light text-primary-text no-underline", href: `mailto:${text}`, children: text }));
|
|
1154
|
+
default:
|
|
1155
|
+
return jsx("span", { children: text });
|
|
1156
|
+
}
|
|
1157
|
+
};
|
|
1158
|
+
const formatTel = (s) => s.replaceAll(/\D/g, '');
|
|
1159
|
+
|
|
1160
|
+
const HorizontalNavigationLink = JSX(({ className = '', index, text, href, target, onClick }) => (jsx("a", { className: `text-secondary-text hover:text-primary-main inline-block no-underline ${className}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` })));
|
|
1161
|
+
|
|
1162
|
+
const HorizontalNavigation = JSX(({ title, links, className = '', context }) => {
|
|
1163
|
+
const router = context.useRouter();
|
|
1164
|
+
const { handlerDecorator } = context;
|
|
1165
|
+
return (jsxs("div", { className: className, children: [jsx("span", { className: "text-primary-text text-s font-medium", children: title }), links?.length ? (jsx("div", { className: "flex flex-col gap-2 pt-3", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-s", ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1166
|
+
});
|
|
1167
|
+
|
|
1168
|
+
const ICONS_MAP = [
|
|
1169
|
+
{
|
|
1170
|
+
origins: ['t.me', 'telegram.org'],
|
|
1171
|
+
icon: { icon: 'TelegramIcon' },
|
|
1172
|
+
label: 'Телеграм',
|
|
1173
|
+
},
|
|
1174
|
+
{
|
|
1175
|
+
origins: ['vk.com'],
|
|
1176
|
+
icon: { icon: 'VKIcon' },
|
|
1177
|
+
label: 'ВКонтакте',
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
origins: ['ok.ru'],
|
|
1181
|
+
icon: { icon: 'OkIcon' },
|
|
1182
|
+
label: 'Одноклассники',
|
|
1183
|
+
},
|
|
1184
|
+
{
|
|
1185
|
+
origins: ['apps.apple.com'],
|
|
1186
|
+
icon: { icon: 'AppleIcon' },
|
|
1187
|
+
label: 'App Store',
|
|
1188
|
+
},
|
|
1189
|
+
{
|
|
1190
|
+
origins: ['play.google.com'],
|
|
1191
|
+
icon: { icon: 'PlayMarketIcon' },
|
|
1192
|
+
label: 'Google Play',
|
|
1193
|
+
},
|
|
1194
|
+
];
|
|
1195
|
+
const MediaButton = JSX(({ href, version = 'primary' }) => {
|
|
1196
|
+
const { icon, label } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
|
|
1197
|
+
if (!icon) {
|
|
1198
|
+
return null;
|
|
1199
|
+
}
|
|
1200
|
+
const classes = version === 'secondary'
|
|
1201
|
+
? 'bg-white hover:bg-secondary-hover'
|
|
1202
|
+
: 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
|
|
1203
|
+
const isPrimary = version === 'primary';
|
|
1204
|
+
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(Img, { image: icon, imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
|
|
1205
|
+
});
|
|
1206
|
+
|
|
1207
|
+
const SocialMedia = JSX(({ className, media, version, context }) => {
|
|
1208
|
+
const router = context.useRouter();
|
|
1209
|
+
const { handlerDecorator } = context;
|
|
1210
|
+
return (jsx("div", { className: `flex gap-2 items-start justify-start pt-6 pb-6 ${className || ''}`, children: media?.map((_, index) => (jsx(MediaButton, { version: version, ...useLink({ router, handlerDecorator }, _) }, String(index)))) }));
|
|
1211
|
+
});
|
|
1212
|
+
|
|
1213
|
+
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}` })));
|
|
1214
|
+
|
|
1215
|
+
const TextInformation = JSX(({ className, links, context }) => {
|
|
1216
|
+
const router = context.useRouter();
|
|
1217
|
+
const { handlerDecorator } = context;
|
|
1218
|
+
return (jsxs("div", { className: `${className || ''}`, children: [jsx("div", { className: "py-6", 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 flex-col justify-start items-start gap-2`, children: links.map((_, i) => (jsx(TextInformationLink, { index: i, className: "", ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null] }));
|
|
1219
|
+
});
|
|
1242
1220
|
|
|
1243
1221
|
const Footer = JSX(({ className = '', documents, relatedEnterprises, contacts, socialMedia, context, horizontalNavigationTitle, page, }) => {
|
|
1244
1222
|
const fallback = page?.fallback;
|
|
1245
1223
|
const sitemap = useSitemap(fallback);
|
|
1246
1224
|
const dispositions = sitemap?.dispositions;
|
|
1247
|
-
return (jsxs("footer", { className: `font-sans px-4 py-[26px] bg-white ${className}`, children: [jsx(Contacts, { className: "overflow-hidden", items: contacts, context: context, hasButton: true }), jsx(
|
|
1225
|
+
return (jsxs("footer", { className: `font-sans px-4 py-[26px] bg-white ${className}`, children: [jsx(Contacts, { className: "overflow-hidden", items: contacts, context: context, hasButton: true }), jsx(AccordionItemsList, { children: sitemap.topItems?.map((item, i) => (jsx(AccordionItem, { context: context, label: item.text, children: jsx(LinkList, { context: context, documents: item.items }) }, String(i)))) }), jsx("div", { children: dispositions?.map(renderSubMenuItem) }), jsx(MobileAppTile, { context: context, title: "\u041C\u043E\u0431\u0438\u043B\u044C\u043D\u043E\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435", description: "\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0434\u043B\u044F IOS \u0438 Android" }), jsx(SearchBar, { context: context, className: "grow" }), jsx(SocialMedia, { className: "pb-4", media: socialMedia, context: context }), jsx(HorizontalNavigation, { title: horizontalNavigationTitle, links: relatedEnterprises, context: context }), jsx(TextInformation, { links: documents, context: context })] }));
|
|
1248
1226
|
});
|
|
1249
1227
|
const renderSubMenuItem = (menu, i) => {
|
|
1250
1228
|
const { icon, href, text } = menu;
|
|
@@ -1324,11 +1302,10 @@
|
|
|
1324
1302
|
const HeaderTop = JSX(({ onClick, bgColor }) => (jsxs("div", { className: "flex items-center justify-between border-0 border-b border-main-divider h-[50px]", children: [jsxs("div", { className: "flex items-center", children: [jsx("button", { className: "pl-0 pr-4 border-0 bg-transparent cursor-pointer", onClick: onClick, "aria-label": "\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043C\u0435\u043D\u044E", children: jsx(Img, { image: { icon: 'BurgerIcon', iconVersion: bgColor === 'bg-white' ? 'black' : 'white' }, className: "text-primary-text w-6 h-6", width: "24", height: "24", asSVG: true }) }), jsx(Logo, { className: "mr-8", bgColor: bgColor })] }), jsx("button", { className: `${bgColor === 'bg-white' ? 'text-primary-main' : 'text-white'} text-s border-0 bg-transparent cursor-pointer`, children: "\u0412\u043E\u0439\u0442\u0438" })] })));
|
|
1325
1303
|
|
|
1326
1304
|
const Header = JSX(({ className = '', defaultLocation, bgColor = 'bg-white', context, topItems, page }) => {
|
|
1305
|
+
const { handlerDecorator } = context;
|
|
1327
1306
|
const router = context.useRouter();
|
|
1328
1307
|
const fallback = page?.fallback;
|
|
1329
1308
|
const sitemap = useSitemap(fallback);
|
|
1330
|
-
const dispositions = sitemap?.dispositions;
|
|
1331
|
-
const { handlerDecorator } = context;
|
|
1332
1309
|
const mergedItems = mergeTopItems(sitemap.topItems, topItems);
|
|
1333
1310
|
const activeTopItem = mergedItems.find(isTopItemActive(router));
|
|
1334
1311
|
const subItems = activeTopItem?.items;
|
|
@@ -1339,7 +1316,7 @@
|
|
|
1339
1316
|
...useLink({ router, handlerDecorator }, _),
|
|
1340
1317
|
active: _ === activeSubItem,
|
|
1341
1318
|
bgColor,
|
|
1342
|
-
}, i)) }) })] }), burgerMenuShow ? (jsx(HeaderBurger, { context: context, onClick: toggleBurgerMenu, burgerSubMenu: dispositions, defaultLocation: defaultLocation, children: jsx(
|
|
1319
|
+
}, i)) }) })] }), burgerMenuShow ? (jsx(HeaderBurger, { context: context, onClick: toggleBurgerMenu, burgerSubMenu: sitemap?.dispositions, defaultLocation: defaultLocation, children: jsx(AccordionItemsList, { children: sitemap.topItems?.map((item, i) => (jsx(AccordionItem, { context: context, label: item.text, children: jsx(LinkList, { context: context, documents: item.items }) }, String(i)))) }) })) : null] }));
|
|
1343
1320
|
});
|
|
1344
1321
|
const renderSubItem = (item, i) => (jsx(HeaderItem, { className: "mr-8 whitespace-nowrap text-s", ...item }, String(i)));
|
|
1345
1322
|
|
|
@@ -1414,7 +1391,7 @@
|
|
|
1414
1391
|
primary: {
|
|
1415
1392
|
background: 'bg-white',
|
|
1416
1393
|
title: 'text-primary-text',
|
|
1417
|
-
description: 'text-secondary-text',
|
|
1394
|
+
description: '!text-secondary-text text-l-light',
|
|
1418
1395
|
iconText: 'text-secondary-text',
|
|
1419
1396
|
iconBackground: 'bg-main-divider',
|
|
1420
1397
|
iconConnector: 'bg-secondary-light',
|
|
@@ -1423,7 +1400,7 @@
|
|
|
1423
1400
|
secondary: {
|
|
1424
1401
|
background: 'bg-primary-main',
|
|
1425
1402
|
title: 'text-white',
|
|
1426
|
-
description: 'text-white/80',
|
|
1403
|
+
description: '!text-white/80 text-l-light',
|
|
1427
1404
|
iconText: 'text-white',
|
|
1428
1405
|
iconBackground: 'bg-white/30',
|
|
1429
1406
|
iconConnector: 'bg-white',
|
|
@@ -1576,8 +1553,9 @@
|
|
|
1576
1553
|
});
|
|
1577
1554
|
|
|
1578
1555
|
const DEFAULT_SLOT_NAME = null;
|
|
1556
|
+
const DEFAULT_ANCESTORS = [DEFAULT_SLOT_NAME];
|
|
1579
1557
|
|
|
1580
|
-
function renderBlock(block, options, ancestors =
|
|
1558
|
+
function renderBlock(block, options, ancestors = DEFAULT_ANCESTORS) {
|
|
1581
1559
|
const { key, page, blockDecorator, blocksRegistry, context } = options;
|
|
1582
1560
|
const { type } = block;
|
|
1583
1561
|
if (!(type && type in blocksRegistry)) {
|