@redneckz/wildless-cms-uni-blocks 0.6.25 → 0.6.27

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.
Files changed (1965) hide show
  1. package/bundle/ProjectSettings.d.ts +2 -0
  2. package/bundle/blocks.schema.json +1 -1
  3. package/bundle/bundle.umd.js +369 -408
  4. package/bundle/bundle.umd.min.js +1 -1
  5. package/bundle/components/BaseTile/BaseTile.d.ts +2 -2
  6. package/bundle/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  7. package/bundle/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  8. package/bundle/components/BusinessBlock/BusinessCard.d.ts +2 -0
  9. package/bundle/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  10. package/bundle/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  11. package/bundle/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  12. package/bundle/components/Calculator/renderButtonSection.d.ts +1 -2
  13. package/bundle/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  14. package/bundle/components/Catalog/CatalogCard.d.ts +2 -2
  15. package/bundle/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  16. package/bundle/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  17. package/bundle/components/ContentPage/computeAPIFallback.d.ts +1 -1
  18. package/bundle/components/ContentPage/renderBlock.d.ts +0 -2
  19. package/bundle/components/ContentPage/renderBlockList.d.ts +1 -1
  20. package/bundle/components/ContentPage/renderSlots.d.ts +1 -1
  21. package/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  22. package/bundle/components/Footer/Contacts.d.ts +2 -2
  23. package/bundle/components/Footer/Footer.fallback.d.ts +2 -0
  24. package/bundle/components/Footer/FooterContent.d.ts +3 -19
  25. package/bundle/components/Footer/FooterDataProps.d.ts +12 -0
  26. package/bundle/components/Footer/FooterLink.d.ts +2 -2
  27. package/bundle/components/Footer/HorizontalNavigation.d.ts +1 -2
  28. package/bundle/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  29. package/bundle/components/Footer/Sitemap.d.ts +2 -2
  30. package/bundle/components/Footer/SocialMedia.d.ts +2 -2
  31. package/bundle/components/Footer/SocialMedia.mobile.d.ts +2 -2
  32. package/bundle/components/Footer/useFooterData.d.ts +2 -0
  33. package/bundle/components/Gallery/GalleryContainer.d.ts +1 -3
  34. package/bundle/components/Gallery/GalleryContent.d.ts +1 -1
  35. package/bundle/components/Header/DropdownMenu.d.ts +0 -2
  36. package/bundle/components/Header/HeaderBurger.d.ts +0 -2
  37. package/bundle/components/Header/HeaderSubMenu.d.ts +0 -2
  38. package/bundle/components/Header/HeaderSubMenuItem.d.ts +0 -2
  39. package/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  40. package/bundle/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  41. package/bundle/components/LikeControl/LikeControl.d.ts +5 -2
  42. package/bundle/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  43. package/bundle/components/Placeholder/Placeholder.d.ts +0 -1
  44. package/bundle/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  45. package/bundle/components/Recommendation/RecommendationCard.d.ts +2 -2
  46. package/bundle/components/StepsBlock/renderStepContent.d.ts +2 -5
  47. package/bundle/components/Tabs/LinkTab.d.ts +8 -0
  48. package/bundle/components/Tabs/Tabs.d.ts +2 -2
  49. package/bundle/components/Tabs/TabsContent.d.ts +5 -5
  50. package/bundle/components/Tabs/renderGroupTab.d.ts +2 -2
  51. package/bundle/components/Tabs/renderTab.d.ts +4 -6
  52. package/bundle/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  53. package/bundle/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  54. package/bundle/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  55. package/bundle/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  56. package/bundle/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  57. package/bundle/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  58. package/bundle/hooks/handlerDecorator.d.ts +5 -0
  59. package/bundle/hooks/useLink.d.ts +6 -16
  60. package/bundle/hooks/useRouter.d.ts +13 -0
  61. package/bundle/hooks/useTableArrowScrollControl.d.ts +1 -3
  62. package/bundle/index.d.ts +2 -0
  63. package/bundle/model/BlockVersion.d.ts +1 -0
  64. package/bundle/model/BlocksRegistry.d.ts +1 -1
  65. package/bundle/model/JSXBlock.d.ts +7 -8
  66. package/bundle/react/setup-fixture.d.ts +0 -3
  67. package/bundle/services/sitemap/SitemapProps.d.ts +1 -1
  68. package/bundle/services/sitemap/findActiveSubItem.d.ts +1 -1
  69. package/bundle/services/sitemap/isSubItemActive.d.ts +1 -1
  70. package/bundle/services/sitemap/isTopItemActive.d.ts +1 -1
  71. package/bundle/services/sitemap/useSWRResource.d.ts +2 -0
  72. package/bundle/ui-kit/BlockWrapper.d.ts +2 -2
  73. package/bundle/ui-kit/Button/ButtonSection.d.ts +2 -2
  74. package/bundle/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  75. package/bundle/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  76. package/bundle/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  77. package/bundle/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  78. package/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  79. package/bundle/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  80. package/bundle/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  81. package/bundle/ui-kit/SearchBar/SearchBar.mobile.d.ts +2 -2
  82. package/bundle/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  83. package/bundle/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  84. package/dist/ProjectSettings.d.ts +2 -0
  85. package/dist/ProjectSettings.js +3 -0
  86. package/dist/ProjectSettings.js.map +1 -1
  87. package/dist/components/Accordion/Accordion.js +1 -1
  88. package/dist/components/Accordion/Accordion.js.map +1 -1
  89. package/dist/components/Accordion/Accordion.mobile.js +1 -1
  90. package/dist/components/Accordion/Accordion.mobile.js.map +1 -1
  91. package/dist/components/BaseTile/BaseTile.d.ts +2 -2
  92. package/dist/components/BaseTile/BaseTile.js +1 -3
  93. package/dist/components/BaseTile/BaseTile.js.map +1 -1
  94. package/dist/components/Blocks.js +10 -6
  95. package/dist/components/Blocks.js.map +1 -1
  96. package/dist/components/Blocks.mobile.js +0 -2
  97. package/dist/components/Blocks.mobile.js.map +1 -1
  98. package/dist/components/Bonus/Bonus.js +3 -3
  99. package/dist/components/Bonus/Bonus.js.map +1 -1
  100. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  101. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  102. package/dist/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  103. package/dist/components/BusinessBlock/BusinessBlock.js +9 -0
  104. package/dist/components/BusinessBlock/BusinessBlock.js.map +1 -0
  105. package/dist/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  106. package/dist/components/BusinessBlock/BusinessBlockContent.js +2 -0
  107. package/dist/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  108. package/dist/components/BusinessBlock/BusinessCard.d.ts +2 -0
  109. package/dist/components/BusinessBlock/BusinessCard.js +16 -0
  110. package/dist/components/BusinessBlock/BusinessCard.js.map +1 -0
  111. package/dist/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  112. package/dist/components/Calculator/BonusCalculatorForm.js +2 -2
  113. package/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  114. package/dist/components/Calculator/Calculator.js +3 -5
  115. package/dist/components/Calculator/Calculator.js.map +1 -1
  116. package/dist/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  117. package/dist/components/Calculator/CreditCalculatorForm.js +3 -8
  118. package/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  119. package/dist/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  120. package/dist/components/Calculator/DepositCalculatorForm.js +3 -8
  121. package/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  122. package/dist/components/Calculator/renderButtonSection.d.ts +1 -2
  123. package/dist/components/Calculator/renderButtonSection.js +2 -2
  124. package/dist/components/Calculator/renderButtonSection.js.map +1 -1
  125. package/dist/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  126. package/dist/components/Calculator/renderCalculatorBlock.js +2 -2
  127. package/dist/components/Calculator/renderCalculatorBlock.js.map +1 -1
  128. package/dist/components/CardTransfer/CardTransfer.js +3 -4
  129. package/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  130. package/dist/components/Catalog/Catalog.js +11 -21
  131. package/dist/components/Catalog/Catalog.js.map +1 -1
  132. package/dist/components/Catalog/CatalogCard.d.ts +2 -2
  133. package/dist/components/Catalog/CatalogCard.js +1 -3
  134. package/dist/components/Catalog/CatalogCard.js.map +1 -1
  135. package/dist/components/ComparisonTable/ComparisonTable.js +4 -6
  136. package/dist/components/ComparisonTable/ComparisonTable.js.map +1 -1
  137. package/dist/components/ComparisonTable/ComparisonTable.mobile.js +3 -3
  138. package/dist/components/ComparisonTable/ComparisonTable.mobile.js.map +1 -1
  139. package/dist/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  140. package/dist/components/ComparisonTable/ComparisonTableBody.js +3 -9
  141. package/dist/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  142. package/dist/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  143. package/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  144. package/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  145. package/dist/components/ComparisonTable/ComparisonTableRows.js +2 -2
  146. package/dist/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  147. package/dist/components/ComparisonTable/HeaderCell.js +1 -1
  148. package/dist/components/ComparisonTable/HeaderCell.js.map +1 -1
  149. package/dist/components/ContactsBlock/ContactsBlock.js +2 -2
  150. package/dist/components/ContactsBlock/ContactsBlock.js.map +1 -1
  151. package/dist/components/ContentPage/ContentPage.js +4 -5
  152. package/dist/components/ContentPage/ContentPage.js.map +1 -1
  153. package/dist/components/ContentPage/computeAPIFallback.d.ts +1 -1
  154. package/dist/components/ContentPage/computeAPIFallback.js +1 -1
  155. package/dist/components/ContentPage/computeAPIFallback.js.map +1 -1
  156. package/dist/components/ContentPage/renderBlock.d.ts +0 -2
  157. package/dist/components/ContentPage/renderBlock.js +3 -3
  158. package/dist/components/ContentPage/renderBlock.js.map +1 -1
  159. package/dist/components/ContentPage/renderBlockList.d.ts +1 -1
  160. package/dist/components/ContentPage/renderBlockList.js +5 -12
  161. package/dist/components/ContentPage/renderBlockList.js.map +1 -1
  162. package/dist/components/ContentPage/renderSlots.d.ts +1 -1
  163. package/dist/components/ContentPage/renderSlots.js +10 -12
  164. package/dist/components/ContentPage/renderSlots.js.map +1 -1
  165. package/dist/components/ErrorBlock/ErrorBlock.js +1 -6
  166. package/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  167. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  168. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  169. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  170. package/dist/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  171. package/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  172. package/dist/components/Footer/Contacts.d.ts +2 -2
  173. package/dist/components/Footer/Contacts.js +1 -10
  174. package/dist/components/Footer/Contacts.js.map +1 -1
  175. package/dist/components/Footer/Footer.fallback.d.ts +2 -0
  176. package/dist/components/Footer/Footer.fallback.js +13 -0
  177. package/dist/components/Footer/Footer.fallback.js.map +1 -0
  178. package/dist/components/Footer/Footer.js +6 -3
  179. package/dist/components/Footer/Footer.js.map +1 -1
  180. package/dist/components/Footer/Footer.mobile.js +10 -9
  181. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  182. package/dist/components/Footer/FooterContent.d.ts +3 -19
  183. package/dist/components/Footer/FooterDataProps.d.ts +12 -0
  184. package/dist/components/{ContentPage/ContentPageContext.js → Footer/FooterDataProps.js} +1 -1
  185. package/dist/components/Footer/FooterDataProps.js.map +1 -0
  186. package/dist/components/Footer/FooterLink.d.ts +2 -2
  187. package/dist/components/Footer/HorizontalNavigation.d.ts +1 -2
  188. package/dist/components/Footer/HorizontalNavigation.js +2 -5
  189. package/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  190. package/dist/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  191. package/dist/components/Footer/HorizontalNavigation.mobile.js +1 -6
  192. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  193. package/dist/components/Footer/HorizontalNavigationLink.js +6 -1
  194. package/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  195. package/dist/components/Footer/MediaButton.js +5 -2
  196. package/dist/components/Footer/MediaButton.js.map +1 -1
  197. package/dist/components/Footer/Sitemap.d.ts +2 -2
  198. package/dist/components/Footer/Sitemap.js +14 -12
  199. package/dist/components/Footer/Sitemap.js.map +1 -1
  200. package/dist/components/Footer/SocialMedia.d.ts +2 -2
  201. package/dist/components/Footer/SocialMedia.js +1 -6
  202. package/dist/components/Footer/SocialMedia.js.map +1 -1
  203. package/dist/components/Footer/SocialMedia.mobile.d.ts +2 -2
  204. package/dist/components/Footer/SocialMedia.mobile.js +1 -6
  205. package/dist/components/Footer/SocialMedia.mobile.js.map +1 -1
  206. package/dist/components/Footer/TextInformation.js +1 -6
  207. package/dist/components/Footer/TextInformation.js.map +1 -1
  208. package/dist/components/Footer/TextInformation.mobile.js +2 -5
  209. package/dist/components/Footer/TextInformation.mobile.js.map +1 -1
  210. package/dist/components/Footer/TextInformationLink.js +6 -1
  211. package/dist/components/Footer/TextInformationLink.js.map +1 -1
  212. package/dist/components/Footer/useFooterData.d.ts +2 -0
  213. package/dist/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +5 -5
  214. package/dist/components/Footer/useFooterData.js.map +1 -0
  215. package/dist/components/Gallery/Gallery.mobile.js +4 -4
  216. package/dist/components/Gallery/Gallery.mobile.js.map +1 -1
  217. package/dist/components/Gallery/GalleryContainer.d.ts +1 -3
  218. package/dist/components/Gallery/GalleryContainer.js +2 -2
  219. package/dist/components/Gallery/GalleryContainer.js.map +1 -1
  220. package/dist/components/Gallery/GalleryContent.d.ts +1 -1
  221. package/dist/components/Gallery/GalleryInner.js +2 -2
  222. package/dist/components/Gallery/GalleryInner.js.map +1 -1
  223. package/dist/components/GracePeriod/GracePeriod.js +1 -3
  224. package/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  225. package/dist/components/Header/DropdownMenu.d.ts +0 -2
  226. package/dist/components/Header/DropdownMenu.js +3 -4
  227. package/dist/components/Header/DropdownMenu.js.map +1 -1
  228. package/dist/components/Header/Header.js +8 -9
  229. package/dist/components/Header/Header.js.map +1 -1
  230. package/dist/components/Header/Header.mobile.js +8 -14
  231. package/dist/components/Header/Header.mobile.js.map +1 -1
  232. package/dist/components/Header/HeaderBurger.d.ts +0 -2
  233. package/dist/components/Header/HeaderBurger.js +2 -2
  234. package/dist/components/Header/HeaderBurger.js.map +1 -1
  235. package/dist/components/Header/HeaderSubMenu.d.ts +0 -2
  236. package/dist/components/Header/HeaderSubMenu.js +4 -3
  237. package/dist/components/Header/HeaderSubMenu.js.map +1 -1
  238. package/dist/components/Header/HeaderSubMenuItem.d.ts +0 -2
  239. package/dist/components/Header/HeaderSubMenuItem.js +2 -5
  240. package/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  241. package/dist/components/Headline/Headline.js +1 -1
  242. package/dist/components/Headline/Headline.js.map +1 -1
  243. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  244. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  245. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  246. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  247. package/dist/components/InvestmentGallery/InvestmentGallery.js +3 -7
  248. package/dist/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  249. package/dist/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  250. package/dist/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  251. package/dist/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  252. package/dist/components/InvestmentInfo/InvestmentInfo.js +2 -2
  253. package/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  254. package/dist/components/LikeControl/LikeControl.d.ts +5 -2
  255. package/dist/components/LikeControl/LikeControl.js +5 -6
  256. package/dist/components/LikeControl/LikeControl.js.map +1 -1
  257. package/dist/components/LinkDocs/LinkDocs.js +1 -3
  258. package/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  259. package/dist/components/LinkDocs/LinkDocs.mobile.js +1 -3
  260. package/dist/components/LinkDocs/LinkDocs.mobile.js.map +1 -1
  261. package/dist/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  262. package/dist/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  263. package/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  264. package/dist/components/LinkList/LinkList.js +1 -3
  265. package/dist/components/LinkList/LinkList.js.map +1 -1
  266. package/dist/components/MobileAppTile/MobileAppTile.js +4 -4
  267. package/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  268. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  269. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  270. package/dist/components/OtherProducts/OtherProducts.js +1 -1
  271. package/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  272. package/dist/components/PictureText/PictureText.js +1 -3
  273. package/dist/components/PictureText/PictureText.js.map +1 -1
  274. package/dist/components/Placeholder/Placeholder.d.ts +0 -1
  275. package/dist/components/Placeholder/Placeholder.js +2 -2
  276. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  277. package/dist/components/ProductBlock/ProductBlock.js +4 -7
  278. package/dist/components/ProductBlock/ProductBlock.js.map +1 -1
  279. package/dist/components/ProductBlock/ProductBlockInner.js +2 -5
  280. package/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
  281. package/dist/components/ProductBlock/ProductBlockInner.mobile.js +2 -2
  282. package/dist/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
  283. package/dist/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  284. package/dist/components/ProductBlock/renderBackwardButton.js +1 -0
  285. package/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  286. package/dist/components/ProductGallery/ProductGallery.js +5 -5
  287. package/dist/components/ProductGallery/ProductGallery.js.map +1 -1
  288. package/dist/components/ProductTile/ProductTile.js +4 -6
  289. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  290. package/dist/components/PromoTile/PromoTile.js +1 -3
  291. package/dist/components/PromoTile/PromoTile.js.map +1 -1
  292. package/dist/components/Recommendation/Recommendation.js +4 -9
  293. package/dist/components/Recommendation/Recommendation.js.map +1 -1
  294. package/dist/components/Recommendation/RecommendationCard.d.ts +2 -2
  295. package/dist/components/Recommendation/RecommendationCard.js +2 -2
  296. package/dist/components/Recommendation/RecommendationCard.js.map +1 -1
  297. package/dist/components/SafeDepositRental/SafeDepositRental.js +3 -3
  298. package/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  299. package/dist/components/StepsBlock/StepsBlock.js +3 -12
  300. package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  301. package/dist/components/StepsBlock/renderStepContent.d.ts +2 -5
  302. package/dist/components/StepsBlock/renderStepContent.js +2 -3
  303. package/dist/components/StepsBlock/renderStepContent.js.map +1 -1
  304. package/dist/components/Tabs/LinkTab.d.ts +8 -0
  305. package/dist/components/Tabs/LinkTab.js +20 -0
  306. package/dist/components/Tabs/LinkTab.js.map +1 -0
  307. package/dist/components/Tabs/Tabs.d.ts +2 -2
  308. package/dist/components/Tabs/Tabs.js +2 -2
  309. package/dist/components/Tabs/Tabs.js.map +1 -1
  310. package/dist/components/Tabs/TabsContent.d.ts +5 -5
  311. package/dist/components/Tabs/renderGroupTab.d.ts +2 -2
  312. package/dist/components/Tabs/renderGroupTab.js +1 -1
  313. package/dist/components/Tabs/renderGroupTab.js.map +1 -1
  314. package/dist/components/Tabs/renderTab.d.ts +4 -6
  315. package/dist/components/Tabs/renderTab.js +5 -19
  316. package/dist/components/Tabs/renderTab.js.map +1 -1
  317. package/dist/components/TariffsTable/EmbeddableCellData.js +3 -5
  318. package/dist/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  319. package/dist/components/TariffsTable/TariffsTable.js +4 -7
  320. package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  321. package/dist/components/TariffsTable/TariffsTable.mobile.js +2 -5
  322. package/dist/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
  323. package/dist/components/TariffsTable/TariffsTableCell.js +1 -2
  324. package/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  325. package/dist/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  326. package/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  327. package/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  328. package/dist/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  329. package/dist/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  330. package/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  331. package/dist/components/TariffsTable/TariffsTableRow.js +3 -3
  332. package/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  333. package/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  334. package/dist/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  335. package/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  336. package/dist/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  337. package/dist/components/TariffsTable/TariffsTableTileCell.js +8 -13
  338. package/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  339. package/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
  340. package/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  341. package/dist/components/Tile/Tile.js +2 -2
  342. package/dist/components/Tile/Tile.js.map +1 -1
  343. package/dist/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  344. package/dist/components/VerticalLayout/VerticalLayout.js +35 -0
  345. package/dist/components/VerticalLayout/VerticalLayout.js.map +1 -0
  346. package/dist/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  347. package/dist/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  348. package/dist/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  349. package/dist/hooks/handlerDecorator.d.ts +5 -0
  350. package/dist/hooks/handlerDecorator.js +12 -0
  351. package/dist/hooks/handlerDecorator.js.map +1 -0
  352. package/dist/hooks/useLink.d.ts +6 -16
  353. package/dist/hooks/useLink.js +21 -17
  354. package/dist/hooks/useLink.js.map +1 -1
  355. package/dist/hooks/useRouter.d.ts +13 -0
  356. package/dist/hooks/useRouter.js +21 -0
  357. package/dist/hooks/useRouter.js.map +1 -0
  358. package/dist/hooks/useTableArrowScrollControl.d.ts +1 -3
  359. package/dist/hooks/useTableArrowScrollControl.js +13 -4
  360. package/dist/hooks/useTableArrowScrollControl.js.map +1 -1
  361. package/dist/index.d.ts +2 -0
  362. package/dist/index.js +5 -1
  363. package/dist/index.js.map +1 -1
  364. package/dist/model/BlockVersion.d.ts +1 -0
  365. package/dist/model/BlockVersion.js +6 -1
  366. package/dist/model/BlockVersion.js.map +1 -1
  367. package/dist/model/BlocksRegistry.d.ts +1 -1
  368. package/dist/model/JSXBlock.d.ts +7 -8
  369. package/dist/react/setup-fixture.d.ts +0 -3
  370. package/dist/react/setup-fixture.js +9 -25
  371. package/dist/react/setup-fixture.js.map +1 -1
  372. package/dist/services/sitemap/SitemapProps.d.ts +1 -1
  373. package/dist/services/sitemap/findActiveSubItem.d.ts +1 -1
  374. package/dist/services/sitemap/isHrefActive.js +1 -2
  375. package/dist/services/sitemap/isHrefActive.js.map +1 -1
  376. package/dist/services/sitemap/isSubItemActive.d.ts +1 -1
  377. package/dist/services/sitemap/isTopItemActive.d.ts +1 -1
  378. package/dist/services/sitemap/useSWRResource.d.ts +2 -0
  379. package/dist/services/sitemap/useSWRResource.js +12 -0
  380. package/dist/services/sitemap/useSWRResource.js.map +1 -0
  381. package/dist/ui-kit/BlockWrapper.d.ts +2 -2
  382. package/dist/ui-kit/BlockWrapper.js +3 -2
  383. package/dist/ui-kit/BlockWrapper.js.map +1 -1
  384. package/dist/ui-kit/Breadcrumb.js +6 -1
  385. package/dist/ui-kit/Breadcrumb.js.map +1 -1
  386. package/dist/ui-kit/Button/Button.js +8 -9
  387. package/dist/ui-kit/Button/Button.js.map +1 -1
  388. package/dist/ui-kit/Button/ButtonInner.js +2 -3
  389. package/dist/ui-kit/Button/ButtonInner.js.map +1 -1
  390. package/dist/ui-kit/Button/ButtonSection.d.ts +2 -2
  391. package/dist/ui-kit/Button/ButtonSection.js +1 -6
  392. package/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  393. package/dist/ui-kit/Checkbox/Checkbox.js +1 -3
  394. package/dist/ui-kit/Checkbox/Checkbox.js.map +1 -1
  395. package/dist/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  396. package/dist/ui-kit/HeaderItem/HeaderItem.js +6 -1
  397. package/dist/ui-kit/HeaderItem/HeaderItem.js.map +1 -1
  398. package/dist/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  399. package/dist/ui-kit/InnerTable/InnerTable.js +2 -2
  400. package/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  401. package/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  402. package/dist/ui-kit/InnerTable/InnerTableBody.js +2 -2
  403. package/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  404. package/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  405. package/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  406. package/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  407. package/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  408. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  409. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  410. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  411. package/dist/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  412. package/dist/ui-kit/SearchBar/SearchBar.js +1 -3
  413. package/dist/ui-kit/SearchBar/SearchBar.js.map +1 -1
  414. package/dist/ui-kit/SearchBar/SearchBar.mobile.d.ts +2 -2
  415. package/dist/ui-kit/SearchBar/SearchBar.mobile.js +1 -3
  416. package/dist/ui-kit/SearchBar/SearchBar.mobile.js.map +1 -1
  417. package/dist/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  418. package/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  419. package/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  420. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  421. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  422. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  423. package/dist/ui-kit/TopItem/TopItem.js +6 -1
  424. package/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  425. package/dist/utils/adjustHref.js +2 -10
  426. package/dist/utils/adjustHref.js.map +1 -1
  427. package/lib/ProjectSettings.d.ts +2 -0
  428. package/lib/ProjectSettings.js +3 -0
  429. package/lib/ProjectSettings.js.map +1 -1
  430. package/lib/common.css +1 -1
  431. package/lib/components/Accordion/Accordion.fixture.d.ts +1 -0
  432. package/lib/components/Accordion/Accordion.fixture.mobile.d.ts +1 -0
  433. package/lib/components/Accordion/Accordion.js +1 -1
  434. package/lib/components/Accordion/Accordion.js.map +1 -1
  435. package/lib/components/Accordion/Accordion.mobile.js +1 -1
  436. package/lib/components/Accordion/Accordion.mobile.js.map +1 -1
  437. package/lib/components/BaseTile/BaseTile.d.ts +2 -2
  438. package/lib/components/BaseTile/BaseTile.js +1 -3
  439. package/lib/components/BaseTile/BaseTile.js.map +1 -1
  440. package/lib/components/BenefitsBlock/BenefitsBlock.fixture.d.ts +1 -0
  441. package/lib/components/Blocks.js +10 -6
  442. package/lib/components/Blocks.js.map +1 -1
  443. package/lib/components/Blocks.mobile.js +0 -2
  444. package/lib/components/Blocks.mobile.js.map +1 -1
  445. package/lib/components/Bonus/Bonus.fixture.d.ts +1 -0
  446. package/lib/components/Bonus/Bonus.js +3 -3
  447. package/lib/components/Bonus/Bonus.js.map +1 -1
  448. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.d.ts +1 -0
  449. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  450. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  451. package/lib/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  452. package/lib/{ui-kit/Button/Button.fixture.mobile.d.ts → components/BusinessBlock/BusinessBlock.fixture.d.ts} +1 -1
  453. package/lib/components/BusinessBlock/BusinessBlock.js +7 -0
  454. package/lib/components/BusinessBlock/BusinessBlock.js.map +1 -0
  455. package/lib/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  456. package/lib/components/BusinessBlock/BusinessBlockContent.js +2 -0
  457. package/lib/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  458. package/lib/components/BusinessBlock/BusinessCard.d.ts +2 -0
  459. package/lib/components/BusinessBlock/BusinessCard.js +14 -0
  460. package/lib/components/BusinessBlock/BusinessCard.js.map +1 -0
  461. package/lib/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  462. package/lib/components/Calculator/BonusCalculatorForm.js +2 -2
  463. package/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  464. package/lib/components/Calculator/Calculator.fixture.d.ts +1 -0
  465. package/lib/components/Calculator/Calculator.js +3 -5
  466. package/lib/components/Calculator/Calculator.js.map +1 -1
  467. package/lib/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  468. package/lib/components/Calculator/CreditCalculatorForm.js +3 -8
  469. package/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  470. package/lib/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  471. package/lib/components/Calculator/DepositCalculatorForm.js +3 -8
  472. package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  473. package/lib/components/Calculator/renderButtonSection.d.ts +1 -2
  474. package/lib/components/Calculator/renderButtonSection.js +2 -2
  475. package/lib/components/Calculator/renderButtonSection.js.map +1 -1
  476. package/lib/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  477. package/lib/components/Calculator/renderCalculatorBlock.js +2 -2
  478. package/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  479. package/lib/components/CardTransfer/CardTransfer.fixture.d.ts +1 -0
  480. package/lib/components/CardTransfer/CardTransfer.js +3 -4
  481. package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  482. package/lib/components/Catalog/Catalog.fixture.d.ts +1 -0
  483. package/lib/components/Catalog/Catalog.js +12 -22
  484. package/lib/components/Catalog/Catalog.js.map +1 -1
  485. package/lib/components/Catalog/CatalogCard.d.ts +2 -2
  486. package/lib/components/Catalog/CatalogCard.js +1 -3
  487. package/lib/components/Catalog/CatalogCard.js.map +1 -1
  488. package/lib/components/ComparisonTable/ComparisonTable.fixture.d.ts +1 -0
  489. package/lib/components/ComparisonTable/ComparisonTable.fixture.mobile.d.ts +1 -0
  490. package/lib/components/ComparisonTable/ComparisonTable.js +5 -7
  491. package/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  492. package/lib/components/ComparisonTable/ComparisonTable.mobile.js +3 -3
  493. package/lib/components/ComparisonTable/ComparisonTable.mobile.js.map +1 -1
  494. package/lib/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  495. package/lib/components/ComparisonTable/ComparisonTableBody.js +3 -9
  496. package/lib/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  497. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  498. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  499. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  500. package/lib/components/ComparisonTable/ComparisonTableRows.js +2 -2
  501. package/lib/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  502. package/lib/components/ComparisonTable/HeaderCell.js +1 -1
  503. package/lib/components/ComparisonTable/HeaderCell.js.map +1 -1
  504. package/lib/components/ContactsBlock/ContactsBlock.fixture.d.ts +1 -0
  505. package/lib/components/ContactsBlock/ContactsBlock.js +2 -2
  506. package/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
  507. package/lib/components/ContentPage/ContentPage.fixture.d.ts +1 -0
  508. package/lib/components/ContentPage/ContentPage.fixture.mobile.d.ts +1 -0
  509. package/lib/components/ContentPage/ContentPage.js +4 -5
  510. package/lib/components/ContentPage/ContentPage.js.map +1 -1
  511. package/lib/components/ContentPage/computeAPIFallback.d.ts +1 -1
  512. package/lib/components/ContentPage/computeAPIFallback.js +1 -1
  513. package/lib/components/ContentPage/computeAPIFallback.js.map +1 -1
  514. package/lib/components/ContentPage/renderBlock.d.ts +0 -2
  515. package/lib/components/ContentPage/renderBlock.js +3 -3
  516. package/lib/components/ContentPage/renderBlock.js.map +1 -1
  517. package/lib/components/ContentPage/renderBlockList.d.ts +1 -1
  518. package/lib/components/ContentPage/renderBlockList.js +5 -12
  519. package/lib/components/ContentPage/renderBlockList.js.map +1 -1
  520. package/lib/components/ContentPage/renderSlots.d.ts +1 -1
  521. package/lib/components/ContentPage/renderSlots.js +10 -12
  522. package/lib/components/ContentPage/renderSlots.js.map +1 -1
  523. package/lib/components/ErrorBlock/ErrorBlock.fixture.d.ts +1 -0
  524. package/lib/components/ErrorBlock/ErrorBlock.js +1 -6
  525. package/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  526. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  527. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  528. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  529. package/lib/components/ExchangeRateTile/ExchangeRateTile.fixture.d.ts +1 -0
  530. package/lib/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  531. package/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  532. package/lib/components/Footer/Contacts.d.ts +2 -2
  533. package/lib/components/Footer/Contacts.js +1 -10
  534. package/lib/components/Footer/Contacts.js.map +1 -1
  535. package/lib/components/Footer/Footer.fallback.d.ts +2 -0
  536. package/lib/components/Footer/Footer.fallback.js +10 -0
  537. package/lib/components/Footer/Footer.fallback.js.map +1 -0
  538. package/lib/components/Footer/Footer.fixture.d.ts +1 -0
  539. package/lib/components/Footer/Footer.fixture.mobile.d.ts +1 -0
  540. package/lib/components/Footer/Footer.js +6 -3
  541. package/lib/components/Footer/Footer.js.map +1 -1
  542. package/lib/components/Footer/Footer.mobile.js +10 -9
  543. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  544. package/lib/components/Footer/FooterContent.d.ts +3 -19
  545. package/lib/components/Footer/FooterDataProps.d.ts +12 -0
  546. package/lib/components/Footer/FooterDataProps.js +2 -0
  547. package/lib/components/Footer/FooterDataProps.js.map +1 -0
  548. package/lib/components/Footer/FooterLink.d.ts +2 -2
  549. package/lib/components/Footer/HorizontalNavigation.d.ts +1 -2
  550. package/lib/components/Footer/HorizontalNavigation.js +2 -5
  551. package/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  552. package/lib/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  553. package/lib/components/Footer/HorizontalNavigation.mobile.js +1 -6
  554. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  555. package/lib/components/Footer/HorizontalNavigationLink.js +6 -1
  556. package/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  557. package/lib/components/Footer/MediaButton.js +5 -2
  558. package/lib/components/Footer/MediaButton.js.map +1 -1
  559. package/lib/components/Footer/Sitemap.d.ts +2 -2
  560. package/lib/components/Footer/Sitemap.js +14 -12
  561. package/lib/components/Footer/Sitemap.js.map +1 -1
  562. package/lib/components/Footer/SocialMedia.d.ts +2 -2
  563. package/lib/components/Footer/SocialMedia.js +1 -6
  564. package/lib/components/Footer/SocialMedia.js.map +1 -1
  565. package/lib/components/Footer/SocialMedia.mobile.d.ts +2 -2
  566. package/lib/components/Footer/SocialMedia.mobile.js +1 -6
  567. package/lib/components/Footer/SocialMedia.mobile.js.map +1 -1
  568. package/lib/components/Footer/TextInformation.js +1 -6
  569. package/lib/components/Footer/TextInformation.js.map +1 -1
  570. package/lib/components/Footer/TextInformation.mobile.js +2 -5
  571. package/lib/components/Footer/TextInformation.mobile.js.map +1 -1
  572. package/lib/components/Footer/TextInformationLink.js +6 -1
  573. package/lib/components/Footer/TextInformationLink.js.map +1 -1
  574. package/lib/components/Footer/useFooterData.d.ts +2 -0
  575. package/lib/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +3 -3
  576. package/lib/components/Footer/useFooterData.js.map +1 -0
  577. package/lib/components/Gallery/Gallery.fixture.d.ts +1 -0
  578. package/lib/components/Gallery/Gallery.fixture.mobile.d.ts +1 -0
  579. package/lib/components/Gallery/Gallery.mobile.js +4 -4
  580. package/lib/components/Gallery/Gallery.mobile.js.map +1 -1
  581. package/lib/components/Gallery/GalleryContainer.d.ts +1 -3
  582. package/lib/components/Gallery/GalleryContainer.js +2 -2
  583. package/lib/components/Gallery/GalleryContainer.js.map +1 -1
  584. package/lib/components/Gallery/GalleryContent.d.ts +1 -1
  585. package/lib/components/Gallery/GalleryInner.js +2 -2
  586. package/lib/components/Gallery/GalleryInner.js.map +1 -1
  587. package/lib/components/GracePeriod/GracePeriod.fixture.d.ts +1 -0
  588. package/lib/components/GracePeriod/GracePeriod.js +1 -3
  589. package/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  590. package/lib/components/Header/DropdownMenu.d.ts +0 -2
  591. package/lib/components/Header/DropdownMenu.js +3 -4
  592. package/lib/components/Header/DropdownMenu.js.map +1 -1
  593. package/lib/components/Header/Header.fixture.d.ts +1 -0
  594. package/lib/components/Header/Header.fixture.mobile.d.ts +1 -0
  595. package/lib/components/Header/Header.js +8 -9
  596. package/lib/components/Header/Header.js.map +1 -1
  597. package/lib/components/Header/Header.mobile.js +8 -14
  598. package/lib/components/Header/Header.mobile.js.map +1 -1
  599. package/lib/components/Header/HeaderBurger.d.ts +0 -2
  600. package/lib/components/Header/HeaderBurger.js +2 -2
  601. package/lib/components/Header/HeaderBurger.js.map +1 -1
  602. package/lib/components/Header/HeaderSubMenu.d.ts +0 -2
  603. package/lib/components/Header/HeaderSubMenu.js +4 -3
  604. package/lib/components/Header/HeaderSubMenu.js.map +1 -1
  605. package/lib/components/Header/HeaderSubMenuItem.d.ts +0 -2
  606. package/lib/components/Header/HeaderSubMenuItem.js +2 -5
  607. package/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  608. package/lib/components/Headline/Headline.fixture.d.ts +1 -0
  609. package/lib/components/Headline/Headline.fixture.mobile.d.ts +1 -0
  610. package/lib/components/Headline/Headline.js +1 -1
  611. package/lib/components/Headline/Headline.js.map +1 -1
  612. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.fixture.d.ts +1 -0
  613. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  614. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  615. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  616. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  617. package/lib/components/InvestmentGallery/InvestmentGallery.fixture.d.ts +1 -0
  618. package/lib/components/InvestmentGallery/InvestmentGallery.js +3 -7
  619. package/lib/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  620. package/lib/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  621. package/lib/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  622. package/lib/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  623. package/lib/components/InvestmentInfo/InvestmentInfo.fixture.d.ts +1 -0
  624. package/lib/components/InvestmentInfo/InvestmentInfo.js +2 -2
  625. package/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  626. package/lib/components/LikeControl/LikeControl.d.ts +5 -2
  627. package/lib/components/LikeControl/LikeControl.fixture.d.ts +1 -0
  628. package/lib/components/LikeControl/LikeControl.js +4 -5
  629. package/lib/components/LikeControl/LikeControl.js.map +1 -1
  630. package/lib/components/LinkDocs/LinkDocs.fixture.d.ts +1 -0
  631. package/lib/components/LinkDocs/LinkDocs.fixture.mobile.d.ts +1 -0
  632. package/lib/components/LinkDocs/LinkDocs.js +1 -3
  633. package/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  634. package/lib/components/LinkDocs/LinkDocs.mobile.js +1 -3
  635. package/lib/components/LinkDocs/LinkDocs.mobile.js.map +1 -1
  636. package/lib/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  637. package/lib/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  638. package/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  639. package/lib/components/LinkList/LinkList.fixture.d.ts +1 -0
  640. package/lib/components/LinkList/LinkList.js +1 -3
  641. package/lib/components/LinkList/LinkList.js.map +1 -1
  642. package/lib/components/MiniGallery/MiniGallery.fixture.d.ts +1 -0
  643. package/lib/components/MobileAppTile/MobileAppTile.fixture.d.ts +1 -0
  644. package/lib/components/MobileAppTile/MobileAppTile.fixture.mobile.d.ts +1 -0
  645. package/lib/components/MobileAppTile/MobileAppTile.js +4 -4
  646. package/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  647. package/lib/components/OfficeMap/OfficeMap.fixture.d.ts +1 -0
  648. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.fixture.d.ts +1 -0
  649. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  650. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  651. package/lib/components/OtherProducts/OtherProducts.fixture.d.ts +1 -0
  652. package/lib/components/OtherProducts/OtherProducts.js +1 -1
  653. package/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  654. package/lib/components/PictureText/PictureText.fixture.d.ts +1 -0
  655. package/lib/components/PictureText/PictureText.js +1 -3
  656. package/lib/components/PictureText/PictureText.js.map +1 -1
  657. package/lib/components/Placeholder/Placeholder.d.ts +0 -1
  658. package/lib/components/Placeholder/Placeholder.fixture.d.ts +1 -0
  659. package/lib/components/Placeholder/Placeholder.fixture.mobile.d.ts +1 -0
  660. package/lib/components/Placeholder/Placeholder.js +2 -2
  661. package/lib/components/Placeholder/Placeholder.js.map +1 -1
  662. package/lib/components/ProductBlock/ProductBlock.fixture.d.ts +1 -0
  663. package/lib/components/ProductBlock/ProductBlock.fixture.mobile.d.ts +1 -0
  664. package/lib/components/ProductBlock/ProductBlock.js +4 -7
  665. package/lib/components/ProductBlock/ProductBlock.js.map +1 -1
  666. package/lib/components/ProductBlock/ProductBlockInner.js +2 -5
  667. package/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
  668. package/lib/components/ProductBlock/ProductBlockInner.mobile.js +2 -2
  669. package/lib/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
  670. package/lib/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  671. package/lib/components/ProductBlock/renderBackwardButton.js +1 -0
  672. package/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  673. package/lib/components/ProductGallery/ProductGallery.fixture.d.ts +1 -0
  674. package/lib/components/ProductGallery/ProductGallery.js +5 -5
  675. package/lib/components/ProductGallery/ProductGallery.js.map +1 -1
  676. package/lib/components/ProductTile/ProductTile.fixture.d.ts +1 -0
  677. package/lib/components/ProductTile/ProductTile.js +4 -6
  678. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  679. package/lib/components/PromoTile/PromoTile.fixture.d.ts +1 -0
  680. package/lib/components/PromoTile/PromoTile.js +1 -3
  681. package/lib/components/PromoTile/PromoTile.js.map +1 -1
  682. package/lib/components/Recommendation/Recommendation.fixture.d.ts +1 -0
  683. package/lib/components/Recommendation/Recommendation.js +4 -9
  684. package/lib/components/Recommendation/Recommendation.js.map +1 -1
  685. package/lib/components/Recommendation/RecommendationCard.d.ts +2 -2
  686. package/lib/components/Recommendation/RecommendationCard.js +2 -2
  687. package/lib/components/Recommendation/RecommendationCard.js.map +1 -1
  688. package/lib/components/SafeDepositRental/SafeDepositRental.fixture.d.ts +1 -0
  689. package/lib/components/SafeDepositRental/SafeDepositRental.js +3 -3
  690. package/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  691. package/lib/components/StepsBlock/StepsBlock.fixture.d.ts +1 -0
  692. package/lib/components/StepsBlock/StepsBlock.fixture.mobile.d.ts +1 -0
  693. package/lib/components/StepsBlock/StepsBlock.js +3 -12
  694. package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  695. package/lib/components/StepsBlock/renderStepContent.d.ts +2 -5
  696. package/lib/components/StepsBlock/renderStepContent.js +2 -3
  697. package/lib/components/StepsBlock/renderStepContent.js.map +1 -1
  698. package/lib/components/Tabs/LinkTab.d.ts +8 -0
  699. package/lib/components/Tabs/LinkTab.js +18 -0
  700. package/lib/components/Tabs/LinkTab.js.map +1 -0
  701. package/lib/components/Tabs/Tabs.d.ts +2 -2
  702. package/lib/components/Tabs/Tabs.fixture.d.ts +1 -0
  703. package/lib/components/Tabs/Tabs.js +2 -2
  704. package/lib/components/Tabs/Tabs.js.map +1 -1
  705. package/lib/components/Tabs/TabsContent.d.ts +5 -5
  706. package/lib/components/Tabs/renderGroupTab.d.ts +2 -2
  707. package/lib/components/Tabs/renderGroupTab.js +1 -1
  708. package/lib/components/Tabs/renderGroupTab.js.map +1 -1
  709. package/lib/components/Tabs/renderTab.d.ts +4 -6
  710. package/lib/components/Tabs/renderTab.js +5 -19
  711. package/lib/components/Tabs/renderTab.js.map +1 -1
  712. package/lib/components/TariffsTable/EmbeddableCellData.js +3 -5
  713. package/lib/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  714. package/lib/components/TariffsTable/TariffsTable.fixture.d.ts +1 -0
  715. package/lib/components/TariffsTable/TariffsTable.fixture.mobile.d.ts +1 -0
  716. package/lib/components/TariffsTable/TariffsTable.js +4 -7
  717. package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  718. package/lib/components/TariffsTable/TariffsTable.mobile.js +2 -5
  719. package/lib/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
  720. package/lib/components/TariffsTable/TariffsTableCell.js +1 -2
  721. package/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  722. package/lib/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  723. package/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  724. package/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  725. package/lib/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  726. package/lib/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  727. package/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  728. package/lib/components/TariffsTable/TariffsTableRow.js +3 -3
  729. package/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  730. package/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  731. package/lib/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  732. package/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  733. package/lib/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  734. package/lib/components/TariffsTable/TariffsTableTileCell.js +8 -13
  735. package/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  736. package/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
  737. package/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  738. package/lib/components/TextBlock/TextBlock.fixture.d.ts +1 -0
  739. package/lib/components/TextBlock/TextBlock.fixture.mobile.d.ts +1 -0
  740. package/lib/components/Tile/Tile.fixture.d.ts +1 -0
  741. package/lib/components/Tile/Tile.js +2 -2
  742. package/lib/components/Tile/Tile.js.map +1 -1
  743. package/lib/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  744. package/lib/components/VerticalLayout/VerticalLayout.fixture.d.ts +9 -0
  745. package/lib/components/VerticalLayout/VerticalLayout.js +33 -0
  746. package/lib/components/VerticalLayout/VerticalLayout.js.map +1 -0
  747. package/lib/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  748. package/lib/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  749. package/lib/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  750. package/lib/hooks/handlerDecorator.d.ts +5 -0
  751. package/lib/hooks/handlerDecorator.js +9 -0
  752. package/lib/hooks/handlerDecorator.js.map +1 -0
  753. package/lib/hooks/useLink.d.ts +6 -16
  754. package/lib/hooks/useLink.js +20 -15
  755. package/lib/hooks/useLink.js.map +1 -1
  756. package/lib/hooks/useRouter.d.ts +13 -0
  757. package/lib/hooks/useRouter.js +18 -0
  758. package/lib/hooks/useRouter.js.map +1 -0
  759. package/lib/hooks/useTableArrowScrollControl.d.ts +1 -3
  760. package/lib/hooks/useTableArrowScrollControl.js +13 -4
  761. package/lib/hooks/useTableArrowScrollControl.js.map +1 -1
  762. package/lib/index.d.ts +2 -0
  763. package/lib/index.js +2 -0
  764. package/lib/index.js.map +1 -1
  765. package/lib/model/BlockVersion.d.ts +1 -0
  766. package/lib/model/BlockVersion.js +5 -0
  767. package/lib/model/BlockVersion.js.map +1 -1
  768. package/lib/model/BlocksRegistry.d.ts +1 -1
  769. package/lib/model/JSXBlock.d.ts +7 -8
  770. package/lib/react/setup-fixture.d.ts +0 -3
  771. package/lib/react/setup-fixture.js +9 -24
  772. package/lib/react/setup-fixture.js.map +1 -1
  773. package/lib/services/sitemap/SitemapProps.d.ts +1 -1
  774. package/lib/services/sitemap/findActiveSubItem.d.ts +1 -1
  775. package/lib/services/sitemap/isHrefActive.js +1 -2
  776. package/lib/services/sitemap/isHrefActive.js.map +1 -1
  777. package/lib/services/sitemap/isSubItemActive.d.ts +1 -1
  778. package/lib/services/sitemap/isTopItemActive.d.ts +1 -1
  779. package/lib/services/sitemap/useSWRResource.d.ts +2 -0
  780. package/lib/services/sitemap/useSWRResource.js +9 -0
  781. package/lib/services/sitemap/useSWRResource.js.map +1 -0
  782. package/lib/ui-kit/BlockWrapper.d.ts +2 -2
  783. package/lib/ui-kit/BlockWrapper.js +3 -2
  784. package/lib/ui-kit/BlockWrapper.js.map +1 -1
  785. package/lib/ui-kit/Breadcrumb.js +6 -1
  786. package/lib/ui-kit/Breadcrumb.js.map +1 -1
  787. package/lib/ui-kit/Button/Button.js +8 -9
  788. package/lib/ui-kit/Button/Button.js.map +1 -1
  789. package/lib/ui-kit/Button/ButtonInner.js +2 -3
  790. package/lib/ui-kit/Button/ButtonInner.js.map +1 -1
  791. package/lib/ui-kit/Button/ButtonSection.d.ts +2 -2
  792. package/lib/ui-kit/Button/ButtonSection.js +1 -6
  793. package/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  794. package/lib/ui-kit/Checkbox/Checkbox.js +1 -3
  795. package/lib/ui-kit/Checkbox/Checkbox.js.map +1 -1
  796. package/lib/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  797. package/lib/ui-kit/HeaderItem/HeaderItem.js +6 -1
  798. package/lib/ui-kit/HeaderItem/HeaderItem.js.map +1 -1
  799. package/lib/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  800. package/lib/ui-kit/InnerTable/InnerTable.js +2 -2
  801. package/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  802. package/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  803. package/lib/ui-kit/InnerTable/InnerTableBody.js +2 -2
  804. package/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  805. package/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  806. package/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  807. package/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  808. package/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  809. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  810. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.fixture.d.ts +1 -0
  811. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  812. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  813. package/lib/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  814. package/lib/ui-kit/SearchBar/SearchBar.js +1 -3
  815. package/lib/ui-kit/SearchBar/SearchBar.js.map +1 -1
  816. package/lib/ui-kit/SearchBar/SearchBar.mobile.d.ts +2 -2
  817. package/lib/ui-kit/SearchBar/SearchBar.mobile.js +1 -3
  818. package/lib/ui-kit/SearchBar/SearchBar.mobile.js.map +1 -1
  819. package/lib/ui-kit/SwipeListControl/SwipeListControl.fixture.mobile.d.ts +1 -0
  820. package/lib/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  821. package/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  822. package/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  823. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  824. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  825. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  826. package/lib/ui-kit/TopItem/TopItem.js +6 -1
  827. package/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  828. package/lib/utils/adjustHref.js +2 -10
  829. package/lib/utils/adjustHref.js.map +1 -1
  830. package/mobile/bundle/ProjectSettings.d.ts +2 -0
  831. package/mobile/bundle/bundle.umd.js +231 -248
  832. package/mobile/bundle/bundle.umd.min.js +1 -1
  833. package/mobile/bundle/components/BaseTile/BaseTile.d.ts +2 -2
  834. package/mobile/bundle/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  835. package/mobile/bundle/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  836. package/mobile/bundle/components/BusinessBlock/BusinessCard.d.ts +2 -0
  837. package/mobile/bundle/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  838. package/mobile/bundle/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  839. package/mobile/bundle/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  840. package/mobile/bundle/components/Calculator/renderButtonSection.d.ts +1 -2
  841. package/mobile/bundle/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  842. package/mobile/bundle/components/Catalog/CatalogCard.d.ts +2 -2
  843. package/mobile/bundle/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  844. package/mobile/bundle/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  845. package/mobile/bundle/components/ContentPage/computeAPIFallback.d.ts +1 -1
  846. package/mobile/bundle/components/ContentPage/renderBlock.d.ts +0 -2
  847. package/mobile/bundle/components/ContentPage/renderBlockList.d.ts +1 -1
  848. package/mobile/bundle/components/ContentPage/renderSlots.d.ts +1 -1
  849. package/mobile/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  850. package/mobile/bundle/components/Footer/Contacts.d.ts +2 -2
  851. package/mobile/bundle/components/Footer/Footer.fallback.d.ts +2 -0
  852. package/mobile/bundle/components/Footer/FooterContent.d.ts +3 -19
  853. package/mobile/bundle/components/Footer/FooterDataProps.d.ts +12 -0
  854. package/mobile/bundle/components/Footer/FooterLink.d.ts +2 -2
  855. package/mobile/bundle/components/Footer/HorizontalNavigation.d.ts +1 -2
  856. package/mobile/bundle/components/Footer/Sitemap.d.ts +2 -2
  857. package/mobile/bundle/components/Footer/SocialMedia.d.ts +2 -2
  858. package/mobile/bundle/components/Footer/useFooterData.d.ts +2 -0
  859. package/mobile/bundle/components/Gallery/GalleryContainer.d.ts +1 -3
  860. package/mobile/bundle/components/Gallery/GalleryContent.d.ts +1 -1
  861. package/mobile/bundle/components/Header/DropdownMenu.d.ts +0 -2
  862. package/mobile/bundle/components/Header/HeaderBurger.d.ts +0 -2
  863. package/mobile/bundle/components/Header/HeaderSubMenu.d.ts +0 -2
  864. package/mobile/bundle/components/Header/HeaderSubMenuItem.d.ts +0 -2
  865. package/mobile/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  866. package/mobile/bundle/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  867. package/mobile/bundle/components/LikeControl/LikeControl.d.ts +5 -2
  868. package/mobile/bundle/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  869. package/mobile/bundle/components/Placeholder/Placeholder.d.ts +0 -1
  870. package/mobile/bundle/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  871. package/mobile/bundle/components/Recommendation/RecommendationCard.d.ts +2 -2
  872. package/mobile/bundle/components/StepsBlock/renderStepContent.d.ts +2 -5
  873. package/mobile/bundle/components/Tabs/LinkTab.d.ts +8 -0
  874. package/mobile/bundle/components/Tabs/Tabs.d.ts +2 -2
  875. package/mobile/bundle/components/Tabs/TabsContent.d.ts +5 -5
  876. package/mobile/bundle/components/Tabs/renderGroupTab.d.ts +2 -2
  877. package/mobile/bundle/components/Tabs/renderTab.d.ts +4 -6
  878. package/mobile/bundle/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  879. package/mobile/bundle/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  880. package/mobile/bundle/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  881. package/mobile/bundle/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  882. package/mobile/bundle/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  883. package/mobile/bundle/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  884. package/mobile/bundle/hooks/handlerDecorator.d.ts +5 -0
  885. package/mobile/bundle/hooks/useLink.d.ts +6 -16
  886. package/mobile/bundle/hooks/useRouter.d.ts +13 -0
  887. package/mobile/bundle/hooks/useTableArrowScrollControl.d.ts +1 -3
  888. package/mobile/bundle/index.d.ts +2 -0
  889. package/mobile/bundle/model/BlockVersion.d.ts +1 -0
  890. package/mobile/bundle/model/BlocksRegistry.d.ts +1 -1
  891. package/mobile/bundle/model/JSXBlock.d.ts +7 -8
  892. package/mobile/bundle/react/setup-fixture.d.ts +0 -3
  893. package/mobile/bundle/services/sitemap/SitemapProps.d.ts +1 -1
  894. package/mobile/bundle/services/sitemap/findActiveSubItem.d.ts +1 -1
  895. package/mobile/bundle/services/sitemap/isSubItemActive.d.ts +1 -1
  896. package/mobile/bundle/services/sitemap/isTopItemActive.d.ts +1 -1
  897. package/mobile/bundle/services/sitemap/useSWRResource.d.ts +2 -0
  898. package/mobile/bundle/ui-kit/BlockWrapper.d.ts +2 -2
  899. package/mobile/bundle/ui-kit/Button/ButtonSection.d.ts +2 -2
  900. package/mobile/bundle/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  901. package/mobile/bundle/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  902. package/mobile/bundle/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  903. package/mobile/bundle/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  904. package/mobile/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  905. package/mobile/bundle/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  906. package/mobile/bundle/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  907. package/mobile/bundle/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  908. package/mobile/bundle/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  909. package/mobile/dist/ProjectSettings.d.ts +2 -0
  910. package/mobile/dist/ProjectSettings.js +3 -0
  911. package/mobile/dist/ProjectSettings.js.map +1 -1
  912. package/mobile/dist/components/Accordion/Accordion.js +1 -1
  913. package/mobile/dist/components/Accordion/Accordion.js.map +1 -1
  914. package/mobile/dist/components/BaseTile/BaseTile.d.ts +2 -2
  915. package/mobile/dist/components/BaseTile/BaseTile.js +1 -3
  916. package/mobile/dist/components/BaseTile/BaseTile.js.map +1 -1
  917. package/mobile/dist/components/Blocks.js +0 -2
  918. package/mobile/dist/components/Blocks.js.map +1 -1
  919. package/mobile/dist/components/Bonus/Bonus.js +3 -3
  920. package/mobile/dist/components/Bonus/Bonus.js.map +1 -1
  921. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  922. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  923. package/mobile/dist/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  924. package/mobile/dist/components/BusinessBlock/BusinessBlock.js +9 -0
  925. package/mobile/dist/components/BusinessBlock/BusinessBlock.js.map +1 -0
  926. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  927. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.js +2 -0
  928. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  929. package/mobile/dist/components/BusinessBlock/BusinessCard.d.ts +2 -0
  930. package/mobile/dist/components/BusinessBlock/BusinessCard.js +16 -0
  931. package/mobile/dist/components/BusinessBlock/BusinessCard.js.map +1 -0
  932. package/mobile/dist/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  933. package/mobile/dist/components/Calculator/BonusCalculatorForm.js +2 -2
  934. package/mobile/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  935. package/mobile/dist/components/Calculator/Calculator.js +3 -5
  936. package/mobile/dist/components/Calculator/Calculator.js.map +1 -1
  937. package/mobile/dist/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  938. package/mobile/dist/components/Calculator/CreditCalculatorForm.js +3 -8
  939. package/mobile/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  940. package/mobile/dist/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  941. package/mobile/dist/components/Calculator/DepositCalculatorForm.js +3 -8
  942. package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  943. package/mobile/dist/components/Calculator/renderButtonSection.d.ts +1 -2
  944. package/mobile/dist/components/Calculator/renderButtonSection.js +2 -2
  945. package/mobile/dist/components/Calculator/renderButtonSection.js.map +1 -1
  946. package/mobile/dist/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  947. package/mobile/dist/components/Calculator/renderCalculatorBlock.js +2 -2
  948. package/mobile/dist/components/Calculator/renderCalculatorBlock.js.map +1 -1
  949. package/mobile/dist/components/CardTransfer/CardTransfer.js +3 -4
  950. package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  951. package/mobile/dist/components/Catalog/Catalog.js +11 -21
  952. package/mobile/dist/components/Catalog/Catalog.js.map +1 -1
  953. package/mobile/dist/components/Catalog/CatalogCard.d.ts +2 -2
  954. package/mobile/dist/components/Catalog/CatalogCard.js +1 -3
  955. package/mobile/dist/components/Catalog/CatalogCard.js.map +1 -1
  956. package/mobile/dist/components/ComparisonTable/ComparisonTable.js +3 -3
  957. package/mobile/dist/components/ComparisonTable/ComparisonTable.js.map +1 -1
  958. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  959. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.js +3 -9
  960. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  961. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  962. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  963. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  964. package/mobile/dist/components/ComparisonTable/ComparisonTableRows.js +2 -2
  965. package/mobile/dist/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  966. package/mobile/dist/components/ContactsBlock/ContactsBlock.js +2 -2
  967. package/mobile/dist/components/ContactsBlock/ContactsBlock.js.map +1 -1
  968. package/mobile/dist/components/ContentPage/ContentPage.js +4 -5
  969. package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
  970. package/mobile/dist/components/ContentPage/computeAPIFallback.d.ts +1 -1
  971. package/mobile/dist/components/ContentPage/computeAPIFallback.js +1 -1
  972. package/mobile/dist/components/ContentPage/computeAPIFallback.js.map +1 -1
  973. package/mobile/dist/components/ContentPage/renderBlock.d.ts +0 -2
  974. package/mobile/dist/components/ContentPage/renderBlock.js +3 -3
  975. package/mobile/dist/components/ContentPage/renderBlock.js.map +1 -1
  976. package/mobile/dist/components/ContentPage/renderBlockList.d.ts +1 -1
  977. package/mobile/dist/components/ContentPage/renderBlockList.js +5 -12
  978. package/mobile/dist/components/ContentPage/renderBlockList.js.map +1 -1
  979. package/mobile/dist/components/ContentPage/renderSlots.d.ts +1 -1
  980. package/mobile/dist/components/ContentPage/renderSlots.js +10 -12
  981. package/mobile/dist/components/ContentPage/renderSlots.js.map +1 -1
  982. package/mobile/dist/components/ErrorBlock/ErrorBlock.js +1 -6
  983. package/mobile/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  984. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  985. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  986. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  987. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  988. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  989. package/mobile/dist/components/Footer/Contacts.d.ts +2 -2
  990. package/mobile/dist/components/Footer/Contacts.js +1 -10
  991. package/mobile/dist/components/Footer/Contacts.js.map +1 -1
  992. package/mobile/dist/components/Footer/Footer.fallback.d.ts +2 -0
  993. package/mobile/dist/components/Footer/Footer.fallback.js +13 -0
  994. package/mobile/dist/components/Footer/Footer.fallback.js.map +1 -0
  995. package/mobile/dist/components/Footer/Footer.js +10 -9
  996. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  997. package/mobile/dist/components/Footer/FooterContent.d.ts +3 -19
  998. package/mobile/dist/components/Footer/FooterDataProps.d.ts +12 -0
  999. package/mobile/dist/components/{ContentPage/ContentPageContext.js → Footer/FooterDataProps.js} +1 -1
  1000. package/mobile/dist/components/Footer/FooterDataProps.js.map +1 -0
  1001. package/mobile/dist/components/Footer/FooterLink.d.ts +2 -2
  1002. package/mobile/dist/components/Footer/HorizontalNavigation.d.ts +1 -2
  1003. package/mobile/dist/components/Footer/HorizontalNavigation.js +1 -6
  1004. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  1005. package/mobile/dist/components/Footer/HorizontalNavigationLink.js +6 -1
  1006. package/mobile/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  1007. package/mobile/dist/components/Footer/MediaButton.js +5 -2
  1008. package/mobile/dist/components/Footer/MediaButton.js.map +1 -1
  1009. package/mobile/dist/components/Footer/Sitemap.d.ts +2 -2
  1010. package/mobile/dist/components/Footer/Sitemap.js +14 -12
  1011. package/mobile/dist/components/Footer/Sitemap.js.map +1 -1
  1012. package/mobile/dist/components/Footer/SocialMedia.d.ts +2 -2
  1013. package/mobile/dist/components/Footer/SocialMedia.js +1 -6
  1014. package/mobile/dist/components/Footer/SocialMedia.js.map +1 -1
  1015. package/mobile/dist/components/Footer/TextInformation.js +2 -5
  1016. package/mobile/dist/components/Footer/TextInformation.js.map +1 -1
  1017. package/mobile/dist/components/Footer/TextInformationLink.js +6 -1
  1018. package/mobile/dist/components/Footer/TextInformationLink.js.map +1 -1
  1019. package/mobile/dist/components/Footer/useFooterData.d.ts +2 -0
  1020. package/mobile/dist/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +5 -5
  1021. package/mobile/dist/components/Footer/useFooterData.js.map +1 -0
  1022. package/mobile/dist/components/Gallery/Gallery.js +4 -4
  1023. package/mobile/dist/components/Gallery/Gallery.js.map +1 -1
  1024. package/mobile/dist/components/Gallery/GalleryContainer.d.ts +1 -3
  1025. package/mobile/dist/components/Gallery/GalleryContainer.js +2 -2
  1026. package/mobile/dist/components/Gallery/GalleryContainer.js.map +1 -1
  1027. package/mobile/dist/components/Gallery/GalleryContent.d.ts +1 -1
  1028. package/mobile/dist/components/Gallery/GalleryInner.js +2 -2
  1029. package/mobile/dist/components/Gallery/GalleryInner.js.map +1 -1
  1030. package/mobile/dist/components/GracePeriod/GracePeriod.js +1 -3
  1031. package/mobile/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  1032. package/mobile/dist/components/Header/DropdownMenu.d.ts +0 -2
  1033. package/mobile/dist/components/Header/DropdownMenu.js +3 -4
  1034. package/mobile/dist/components/Header/DropdownMenu.js.map +1 -1
  1035. package/mobile/dist/components/Header/Header.js +8 -14
  1036. package/mobile/dist/components/Header/Header.js.map +1 -1
  1037. package/mobile/dist/components/Header/HeaderBurger.d.ts +0 -2
  1038. package/mobile/dist/components/Header/HeaderBurger.js +2 -2
  1039. package/mobile/dist/components/Header/HeaderBurger.js.map +1 -1
  1040. package/mobile/dist/components/Header/HeaderSubMenu.d.ts +0 -2
  1041. package/mobile/dist/components/Header/HeaderSubMenu.js +4 -3
  1042. package/mobile/dist/components/Header/HeaderSubMenu.js.map +1 -1
  1043. package/mobile/dist/components/Header/HeaderSubMenuItem.d.ts +0 -2
  1044. package/mobile/dist/components/Header/HeaderSubMenuItem.js +2 -5
  1045. package/mobile/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  1046. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  1047. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  1048. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  1049. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  1050. package/mobile/dist/components/InvestmentGallery/InvestmentGallery.js +3 -7
  1051. package/mobile/dist/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  1052. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  1053. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  1054. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  1055. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js +2 -2
  1056. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  1057. package/mobile/dist/components/LikeControl/LikeControl.d.ts +5 -2
  1058. package/mobile/dist/components/LikeControl/LikeControl.js +5 -6
  1059. package/mobile/dist/components/LikeControl/LikeControl.js.map +1 -1
  1060. package/mobile/dist/components/LinkDocs/LinkDocs.js +1 -3
  1061. package/mobile/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  1062. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  1063. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  1064. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  1065. package/mobile/dist/components/LinkList/LinkList.js +1 -3
  1066. package/mobile/dist/components/LinkList/LinkList.js.map +1 -1
  1067. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  1068. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  1069. package/mobile/dist/components/OtherProducts/OtherProducts.js +1 -1
  1070. package/mobile/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  1071. package/mobile/dist/components/PictureText/PictureText.js +1 -3
  1072. package/mobile/dist/components/PictureText/PictureText.js.map +1 -1
  1073. package/mobile/dist/components/Placeholder/Placeholder.d.ts +0 -1
  1074. package/mobile/dist/components/Placeholder/Placeholder.js +2 -2
  1075. package/mobile/dist/components/Placeholder/Placeholder.js.map +1 -1
  1076. package/mobile/dist/components/ProductBlock/ProductBlockInner.js +2 -2
  1077. package/mobile/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
  1078. package/mobile/dist/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  1079. package/mobile/dist/components/ProductBlock/renderBackwardButton.js +1 -0
  1080. package/mobile/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  1081. package/mobile/dist/components/ProductGallery/ProductGallery.js +41 -4
  1082. package/mobile/dist/components/ProductGallery/ProductGallery.js.map +1 -1
  1083. package/mobile/dist/components/ProductTile/ProductTile.js +4 -6
  1084. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  1085. package/mobile/dist/components/PromoTile/PromoTile.js +1 -3
  1086. package/mobile/dist/components/PromoTile/PromoTile.js.map +1 -1
  1087. package/mobile/dist/components/Recommendation/Recommendation.js +4 -9
  1088. package/mobile/dist/components/Recommendation/Recommendation.js.map +1 -1
  1089. package/mobile/dist/components/Recommendation/RecommendationCard.d.ts +2 -2
  1090. package/mobile/dist/components/Recommendation/RecommendationCard.js +2 -2
  1091. package/mobile/dist/components/Recommendation/RecommendationCard.js.map +1 -1
  1092. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js +3 -3
  1093. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  1094. package/mobile/dist/components/StepsBlock/renderStepContent.d.ts +2 -5
  1095. package/mobile/dist/components/StepsBlock/renderStepContent.js +2 -3
  1096. package/mobile/dist/components/StepsBlock/renderStepContent.js.map +1 -1
  1097. package/mobile/dist/components/Tabs/LinkTab.d.ts +8 -0
  1098. package/mobile/dist/components/Tabs/LinkTab.js +20 -0
  1099. package/mobile/dist/components/Tabs/LinkTab.js.map +1 -0
  1100. package/mobile/dist/components/Tabs/Tabs.d.ts +2 -2
  1101. package/mobile/dist/components/Tabs/Tabs.js +2 -2
  1102. package/mobile/dist/components/Tabs/Tabs.js.map +1 -1
  1103. package/mobile/dist/components/Tabs/TabsContent.d.ts +5 -5
  1104. package/mobile/dist/components/Tabs/renderGroupTab.d.ts +2 -2
  1105. package/mobile/dist/components/Tabs/renderGroupTab.js +1 -1
  1106. package/mobile/dist/components/Tabs/renderGroupTab.js.map +1 -1
  1107. package/mobile/dist/components/Tabs/renderTab.d.ts +4 -6
  1108. package/mobile/dist/components/Tabs/renderTab.js +5 -19
  1109. package/mobile/dist/components/Tabs/renderTab.js.map +1 -1
  1110. package/mobile/dist/components/TariffsTable/TariffsTable.js +2 -5
  1111. package/mobile/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  1112. package/mobile/dist/components/TariffsTable/TariffsTableCell.js +1 -2
  1113. package/mobile/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  1114. package/mobile/dist/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  1115. package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  1116. package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  1117. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  1118. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  1119. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  1120. package/mobile/dist/components/TariffsTable/TariffsTableRow.js +3 -3
  1121. package/mobile/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1122. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  1123. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  1124. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1125. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  1126. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js +8 -13
  1127. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  1128. package/mobile/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
  1129. package/mobile/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  1130. package/mobile/dist/components/Tile/Tile.js +2 -2
  1131. package/mobile/dist/components/Tile/Tile.js.map +1 -1
  1132. package/mobile/dist/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  1133. package/mobile/dist/components/VerticalLayout/VerticalLayout.js +35 -0
  1134. package/mobile/dist/components/VerticalLayout/VerticalLayout.js.map +1 -0
  1135. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  1136. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  1137. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  1138. package/mobile/dist/hooks/handlerDecorator.d.ts +5 -0
  1139. package/mobile/dist/hooks/handlerDecorator.js +12 -0
  1140. package/mobile/dist/hooks/handlerDecorator.js.map +1 -0
  1141. package/mobile/dist/hooks/useLink.d.ts +6 -16
  1142. package/mobile/dist/hooks/useLink.js +21 -17
  1143. package/mobile/dist/hooks/useLink.js.map +1 -1
  1144. package/mobile/dist/hooks/useRouter.d.ts +13 -0
  1145. package/mobile/dist/hooks/useRouter.js +21 -0
  1146. package/mobile/dist/hooks/useRouter.js.map +1 -0
  1147. package/mobile/dist/hooks/useTableArrowScrollControl.d.ts +1 -3
  1148. package/mobile/dist/hooks/useTableArrowScrollControl.js +13 -4
  1149. package/mobile/dist/hooks/useTableArrowScrollControl.js.map +1 -1
  1150. package/mobile/dist/index.d.ts +2 -0
  1151. package/mobile/dist/index.js +5 -1
  1152. package/mobile/dist/index.js.map +1 -1
  1153. package/mobile/dist/model/BlockVersion.d.ts +1 -0
  1154. package/mobile/dist/model/BlockVersion.js +6 -1
  1155. package/mobile/dist/model/BlockVersion.js.map +1 -1
  1156. package/mobile/dist/model/BlocksRegistry.d.ts +1 -1
  1157. package/mobile/dist/model/JSXBlock.d.ts +7 -8
  1158. package/mobile/dist/react/setup-fixture.d.ts +0 -3
  1159. package/mobile/dist/react/setup-fixture.js +9 -25
  1160. package/mobile/dist/react/setup-fixture.js.map +1 -1
  1161. package/mobile/dist/services/sitemap/SitemapProps.d.ts +1 -1
  1162. package/mobile/dist/services/sitemap/findActiveSubItem.d.ts +1 -1
  1163. package/mobile/dist/services/sitemap/isHrefActive.js +1 -2
  1164. package/mobile/dist/services/sitemap/isHrefActive.js.map +1 -1
  1165. package/mobile/dist/services/sitemap/isSubItemActive.d.ts +1 -1
  1166. package/mobile/dist/services/sitemap/isTopItemActive.d.ts +1 -1
  1167. package/mobile/dist/services/sitemap/useSWRResource.d.ts +2 -0
  1168. package/mobile/dist/services/sitemap/useSWRResource.js +12 -0
  1169. package/mobile/dist/services/sitemap/useSWRResource.js.map +1 -0
  1170. package/mobile/dist/ui-kit/BlockWrapper.d.ts +2 -2
  1171. package/mobile/dist/ui-kit/BlockWrapper.js +3 -2
  1172. package/mobile/dist/ui-kit/BlockWrapper.js.map +1 -1
  1173. package/mobile/dist/ui-kit/Breadcrumb.js +6 -1
  1174. package/mobile/dist/ui-kit/Breadcrumb.js.map +1 -1
  1175. package/mobile/dist/ui-kit/Button/Button.js +10 -24
  1176. package/mobile/dist/ui-kit/Button/Button.js.map +1 -1
  1177. package/mobile/dist/ui-kit/Button/ButtonInner.js +2 -3
  1178. package/mobile/dist/ui-kit/Button/ButtonInner.js.map +1 -1
  1179. package/mobile/dist/ui-kit/Button/ButtonSection.d.ts +2 -2
  1180. package/mobile/dist/ui-kit/Button/ButtonSection.js +1 -6
  1181. package/mobile/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  1182. package/mobile/dist/ui-kit/Checkbox/Checkbox.js +1 -3
  1183. package/mobile/dist/ui-kit/Checkbox/Checkbox.js.map +1 -1
  1184. package/mobile/dist/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  1185. package/mobile/dist/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  1186. package/mobile/dist/ui-kit/InnerTable/InnerTable.js +2 -2
  1187. package/mobile/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1188. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  1189. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js +2 -2
  1190. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1191. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  1192. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1193. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  1194. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1195. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  1196. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  1197. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  1198. package/mobile/dist/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  1199. package/mobile/dist/ui-kit/SearchBar/SearchBar.js +1 -3
  1200. package/mobile/dist/ui-kit/SearchBar/SearchBar.js.map +1 -1
  1201. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  1202. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  1203. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  1204. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  1205. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  1206. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  1207. package/mobile/dist/ui-kit/TopItem/TopItem.js +6 -1
  1208. package/mobile/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  1209. package/mobile/dist/utils/adjustHref.js +2 -10
  1210. package/mobile/dist/utils/adjustHref.js.map +1 -1
  1211. package/mobile/lib/ProjectSettings.d.ts +2 -0
  1212. package/mobile/lib/ProjectSettings.js +3 -0
  1213. package/mobile/lib/ProjectSettings.js.map +1 -1
  1214. package/mobile/lib/components/Accordion/Accordion.js +1 -1
  1215. package/mobile/lib/components/Accordion/Accordion.js.map +1 -1
  1216. package/mobile/lib/components/BaseTile/BaseTile.d.ts +2 -2
  1217. package/mobile/lib/components/BaseTile/BaseTile.js +1 -3
  1218. package/mobile/lib/components/BaseTile/BaseTile.js.map +1 -1
  1219. package/mobile/lib/components/Blocks.js +0 -2
  1220. package/mobile/lib/components/Blocks.js.map +1 -1
  1221. package/mobile/lib/components/Bonus/Bonus.js +3 -3
  1222. package/mobile/lib/components/Bonus/Bonus.js.map +1 -1
  1223. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  1224. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  1225. package/mobile/lib/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  1226. package/mobile/lib/components/BusinessBlock/BusinessBlock.js +7 -0
  1227. package/mobile/lib/components/BusinessBlock/BusinessBlock.js.map +1 -0
  1228. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  1229. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.js +2 -0
  1230. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  1231. package/mobile/lib/components/BusinessBlock/BusinessCard.d.ts +2 -0
  1232. package/mobile/lib/components/BusinessBlock/BusinessCard.js +14 -0
  1233. package/mobile/lib/components/BusinessBlock/BusinessCard.js.map +1 -0
  1234. package/mobile/lib/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  1235. package/mobile/lib/components/Calculator/BonusCalculatorForm.js +2 -2
  1236. package/mobile/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  1237. package/mobile/lib/components/Calculator/Calculator.js +3 -5
  1238. package/mobile/lib/components/Calculator/Calculator.js.map +1 -1
  1239. package/mobile/lib/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  1240. package/mobile/lib/components/Calculator/CreditCalculatorForm.js +3 -8
  1241. package/mobile/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  1242. package/mobile/lib/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  1243. package/mobile/lib/components/Calculator/DepositCalculatorForm.js +3 -8
  1244. package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  1245. package/mobile/lib/components/Calculator/renderButtonSection.d.ts +1 -2
  1246. package/mobile/lib/components/Calculator/renderButtonSection.js +2 -2
  1247. package/mobile/lib/components/Calculator/renderButtonSection.js.map +1 -1
  1248. package/mobile/lib/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  1249. package/mobile/lib/components/Calculator/renderCalculatorBlock.js +2 -2
  1250. package/mobile/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  1251. package/mobile/lib/components/CardTransfer/CardTransfer.js +3 -4
  1252. package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  1253. package/mobile/lib/components/Catalog/Catalog.js +12 -22
  1254. package/mobile/lib/components/Catalog/Catalog.js.map +1 -1
  1255. package/mobile/lib/components/Catalog/CatalogCard.d.ts +2 -2
  1256. package/mobile/lib/components/Catalog/CatalogCard.js +1 -3
  1257. package/mobile/lib/components/Catalog/CatalogCard.js.map +1 -1
  1258. package/mobile/lib/components/ComparisonTable/ComparisonTable.js +3 -3
  1259. package/mobile/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  1260. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  1261. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.js +3 -9
  1262. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  1263. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  1264. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  1265. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  1266. package/mobile/lib/components/ComparisonTable/ComparisonTableRows.js +2 -2
  1267. package/mobile/lib/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  1268. package/mobile/lib/components/ContactsBlock/ContactsBlock.js +2 -2
  1269. package/mobile/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
  1270. package/mobile/lib/components/ContentPage/ContentPage.js +4 -5
  1271. package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
  1272. package/mobile/lib/components/ContentPage/computeAPIFallback.d.ts +1 -1
  1273. package/mobile/lib/components/ContentPage/computeAPIFallback.js +1 -1
  1274. package/mobile/lib/components/ContentPage/computeAPIFallback.js.map +1 -1
  1275. package/mobile/lib/components/ContentPage/renderBlock.d.ts +0 -2
  1276. package/mobile/lib/components/ContentPage/renderBlock.js +3 -3
  1277. package/mobile/lib/components/ContentPage/renderBlock.js.map +1 -1
  1278. package/mobile/lib/components/ContentPage/renderBlockList.d.ts +1 -1
  1279. package/mobile/lib/components/ContentPage/renderBlockList.js +5 -12
  1280. package/mobile/lib/components/ContentPage/renderBlockList.js.map +1 -1
  1281. package/mobile/lib/components/ContentPage/renderSlots.d.ts +1 -1
  1282. package/mobile/lib/components/ContentPage/renderSlots.js +10 -12
  1283. package/mobile/lib/components/ContentPage/renderSlots.js.map +1 -1
  1284. package/mobile/lib/components/ErrorBlock/ErrorBlock.js +1 -6
  1285. package/mobile/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  1286. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  1287. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  1288. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  1289. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  1290. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  1291. package/mobile/lib/components/Footer/Contacts.d.ts +2 -2
  1292. package/mobile/lib/components/Footer/Contacts.js +1 -10
  1293. package/mobile/lib/components/Footer/Contacts.js.map +1 -1
  1294. package/mobile/lib/components/Footer/Footer.fallback.d.ts +2 -0
  1295. package/mobile/lib/components/Footer/Footer.fallback.js +10 -0
  1296. package/mobile/lib/components/Footer/Footer.fallback.js.map +1 -0
  1297. package/mobile/lib/components/Footer/Footer.js +10 -9
  1298. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  1299. package/mobile/lib/components/Footer/FooterContent.d.ts +3 -19
  1300. package/mobile/lib/components/Footer/FooterDataProps.d.ts +12 -0
  1301. package/mobile/lib/components/Footer/FooterDataProps.js +2 -0
  1302. package/mobile/lib/components/Footer/FooterDataProps.js.map +1 -0
  1303. package/mobile/lib/components/Footer/FooterLink.d.ts +2 -2
  1304. package/mobile/lib/components/Footer/HorizontalNavigation.d.ts +1 -2
  1305. package/mobile/lib/components/Footer/HorizontalNavigation.js +1 -6
  1306. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  1307. package/mobile/lib/components/Footer/HorizontalNavigationLink.js +6 -1
  1308. package/mobile/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  1309. package/mobile/lib/components/Footer/MediaButton.js +5 -2
  1310. package/mobile/lib/components/Footer/MediaButton.js.map +1 -1
  1311. package/mobile/lib/components/Footer/Sitemap.d.ts +2 -2
  1312. package/mobile/lib/components/Footer/Sitemap.js +14 -12
  1313. package/mobile/lib/components/Footer/Sitemap.js.map +1 -1
  1314. package/mobile/lib/components/Footer/SocialMedia.d.ts +2 -2
  1315. package/mobile/lib/components/Footer/SocialMedia.js +1 -6
  1316. package/mobile/lib/components/Footer/SocialMedia.js.map +1 -1
  1317. package/mobile/lib/components/Footer/TextInformation.js +2 -5
  1318. package/mobile/lib/components/Footer/TextInformation.js.map +1 -1
  1319. package/mobile/lib/components/Footer/TextInformationLink.js +6 -1
  1320. package/mobile/lib/components/Footer/TextInformationLink.js.map +1 -1
  1321. package/mobile/lib/components/Footer/useFooterData.d.ts +2 -0
  1322. package/mobile/lib/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +3 -3
  1323. package/mobile/lib/components/Footer/useFooterData.js.map +1 -0
  1324. package/mobile/lib/components/Gallery/Gallery.js +4 -4
  1325. package/mobile/lib/components/Gallery/Gallery.js.map +1 -1
  1326. package/mobile/lib/components/Gallery/GalleryContainer.d.ts +1 -3
  1327. package/mobile/lib/components/Gallery/GalleryContainer.js +2 -2
  1328. package/mobile/lib/components/Gallery/GalleryContainer.js.map +1 -1
  1329. package/mobile/lib/components/Gallery/GalleryContent.d.ts +1 -1
  1330. package/mobile/lib/components/Gallery/GalleryInner.js +2 -2
  1331. package/mobile/lib/components/Gallery/GalleryInner.js.map +1 -1
  1332. package/mobile/lib/components/GracePeriod/GracePeriod.js +1 -3
  1333. package/mobile/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  1334. package/mobile/lib/components/Header/DropdownMenu.d.ts +0 -2
  1335. package/mobile/lib/components/Header/DropdownMenu.js +3 -4
  1336. package/mobile/lib/components/Header/DropdownMenu.js.map +1 -1
  1337. package/mobile/lib/components/Header/Header.js +8 -14
  1338. package/mobile/lib/components/Header/Header.js.map +1 -1
  1339. package/mobile/lib/components/Header/HeaderBurger.d.ts +0 -2
  1340. package/mobile/lib/components/Header/HeaderBurger.js +2 -2
  1341. package/mobile/lib/components/Header/HeaderBurger.js.map +1 -1
  1342. package/mobile/lib/components/Header/HeaderSubMenu.d.ts +0 -2
  1343. package/mobile/lib/components/Header/HeaderSubMenu.js +4 -3
  1344. package/mobile/lib/components/Header/HeaderSubMenu.js.map +1 -1
  1345. package/mobile/lib/components/Header/HeaderSubMenuItem.d.ts +0 -2
  1346. package/mobile/lib/components/Header/HeaderSubMenuItem.js +2 -5
  1347. package/mobile/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  1348. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  1349. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  1350. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  1351. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  1352. package/mobile/lib/components/InvestmentGallery/InvestmentGallery.js +3 -7
  1353. package/mobile/lib/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  1354. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  1355. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  1356. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  1357. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js +2 -2
  1358. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  1359. package/mobile/lib/components/LikeControl/LikeControl.d.ts +5 -2
  1360. package/mobile/lib/components/LikeControl/LikeControl.js +4 -5
  1361. package/mobile/lib/components/LikeControl/LikeControl.js.map +1 -1
  1362. package/mobile/lib/components/LinkDocs/LinkDocs.js +1 -3
  1363. package/mobile/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  1364. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  1365. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  1366. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  1367. package/mobile/lib/components/LinkList/LinkList.js +1 -3
  1368. package/mobile/lib/components/LinkList/LinkList.js.map +1 -1
  1369. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  1370. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  1371. package/mobile/lib/components/OtherProducts/OtherProducts.js +1 -1
  1372. package/mobile/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  1373. package/mobile/lib/components/PictureText/PictureText.js +1 -3
  1374. package/mobile/lib/components/PictureText/PictureText.js.map +1 -1
  1375. package/mobile/lib/components/Placeholder/Placeholder.d.ts +0 -1
  1376. package/mobile/lib/components/Placeholder/Placeholder.js +2 -2
  1377. package/mobile/lib/components/Placeholder/Placeholder.js.map +1 -1
  1378. package/mobile/lib/components/ProductBlock/ProductBlockInner.js +2 -2
  1379. package/mobile/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
  1380. package/mobile/lib/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  1381. package/mobile/lib/components/ProductBlock/renderBackwardButton.js +1 -0
  1382. package/mobile/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  1383. package/mobile/lib/components/ProductGallery/ProductGallery.js +42 -5
  1384. package/mobile/lib/components/ProductGallery/ProductGallery.js.map +1 -1
  1385. package/mobile/lib/components/ProductTile/ProductTile.js +4 -6
  1386. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  1387. package/mobile/lib/components/PromoTile/PromoTile.js +1 -3
  1388. package/mobile/lib/components/PromoTile/PromoTile.js.map +1 -1
  1389. package/mobile/lib/components/Recommendation/Recommendation.js +4 -9
  1390. package/mobile/lib/components/Recommendation/Recommendation.js.map +1 -1
  1391. package/mobile/lib/components/Recommendation/RecommendationCard.d.ts +2 -2
  1392. package/mobile/lib/components/Recommendation/RecommendationCard.js +2 -2
  1393. package/mobile/lib/components/Recommendation/RecommendationCard.js.map +1 -1
  1394. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js +3 -3
  1395. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  1396. package/mobile/lib/components/StepsBlock/renderStepContent.d.ts +2 -5
  1397. package/mobile/lib/components/StepsBlock/renderStepContent.js +2 -3
  1398. package/mobile/lib/components/StepsBlock/renderStepContent.js.map +1 -1
  1399. package/mobile/lib/components/Tabs/LinkTab.d.ts +8 -0
  1400. package/mobile/lib/components/Tabs/LinkTab.js +18 -0
  1401. package/mobile/lib/components/Tabs/LinkTab.js.map +1 -0
  1402. package/mobile/lib/components/Tabs/Tabs.d.ts +2 -2
  1403. package/mobile/lib/components/Tabs/Tabs.js +2 -2
  1404. package/mobile/lib/components/Tabs/Tabs.js.map +1 -1
  1405. package/mobile/lib/components/Tabs/TabsContent.d.ts +5 -5
  1406. package/mobile/lib/components/Tabs/renderGroupTab.d.ts +2 -2
  1407. package/mobile/lib/components/Tabs/renderGroupTab.js +1 -1
  1408. package/mobile/lib/components/Tabs/renderGroupTab.js.map +1 -1
  1409. package/mobile/lib/components/Tabs/renderTab.d.ts +4 -6
  1410. package/mobile/lib/components/Tabs/renderTab.js +5 -19
  1411. package/mobile/lib/components/Tabs/renderTab.js.map +1 -1
  1412. package/mobile/lib/components/TariffsTable/TariffsTable.js +2 -5
  1413. package/mobile/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  1414. package/mobile/lib/components/TariffsTable/TariffsTableCell.js +1 -2
  1415. package/mobile/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  1416. package/mobile/lib/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  1417. package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  1418. package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  1419. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  1420. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  1421. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  1422. package/mobile/lib/components/TariffsTable/TariffsTableRow.js +3 -3
  1423. package/mobile/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1424. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  1425. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  1426. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1427. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  1428. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js +8 -13
  1429. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  1430. package/mobile/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
  1431. package/mobile/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  1432. package/mobile/lib/components/Tile/Tile.js +2 -2
  1433. package/mobile/lib/components/Tile/Tile.js.map +1 -1
  1434. package/mobile/lib/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  1435. package/mobile/lib/components/VerticalLayout/VerticalLayout.js +33 -0
  1436. package/mobile/lib/components/VerticalLayout/VerticalLayout.js.map +1 -0
  1437. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  1438. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  1439. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  1440. package/mobile/lib/hooks/handlerDecorator.d.ts +5 -0
  1441. package/mobile/lib/hooks/handlerDecorator.js +9 -0
  1442. package/mobile/lib/hooks/handlerDecorator.js.map +1 -0
  1443. package/mobile/lib/hooks/useLink.d.ts +6 -16
  1444. package/mobile/lib/hooks/useLink.js +20 -15
  1445. package/mobile/lib/hooks/useLink.js.map +1 -1
  1446. package/mobile/lib/hooks/useRouter.d.ts +13 -0
  1447. package/mobile/lib/hooks/useRouter.js +18 -0
  1448. package/mobile/lib/hooks/useRouter.js.map +1 -0
  1449. package/mobile/lib/hooks/useTableArrowScrollControl.d.ts +1 -3
  1450. package/mobile/lib/hooks/useTableArrowScrollControl.js +13 -4
  1451. package/mobile/lib/hooks/useTableArrowScrollControl.js.map +1 -1
  1452. package/mobile/lib/index.d.ts +2 -0
  1453. package/mobile/lib/index.js +2 -0
  1454. package/mobile/lib/index.js.map +1 -1
  1455. package/mobile/lib/model/BlockVersion.d.ts +1 -0
  1456. package/mobile/lib/model/BlockVersion.js +5 -0
  1457. package/mobile/lib/model/BlockVersion.js.map +1 -1
  1458. package/mobile/lib/model/BlocksRegistry.d.ts +1 -1
  1459. package/mobile/lib/model/JSXBlock.d.ts +7 -8
  1460. package/mobile/lib/react/setup-fixture.d.ts +0 -3
  1461. package/mobile/lib/react/setup-fixture.js +9 -24
  1462. package/mobile/lib/react/setup-fixture.js.map +1 -1
  1463. package/mobile/lib/services/sitemap/SitemapProps.d.ts +1 -1
  1464. package/mobile/lib/services/sitemap/findActiveSubItem.d.ts +1 -1
  1465. package/mobile/lib/services/sitemap/isHrefActive.js +1 -2
  1466. package/mobile/lib/services/sitemap/isHrefActive.js.map +1 -1
  1467. package/mobile/lib/services/sitemap/isSubItemActive.d.ts +1 -1
  1468. package/mobile/lib/services/sitemap/isTopItemActive.d.ts +1 -1
  1469. package/mobile/lib/services/sitemap/useSWRResource.d.ts +2 -0
  1470. package/mobile/lib/services/sitemap/useSWRResource.js +9 -0
  1471. package/mobile/lib/services/sitemap/useSWRResource.js.map +1 -0
  1472. package/mobile/lib/ui-kit/BlockWrapper.d.ts +2 -2
  1473. package/mobile/lib/ui-kit/BlockWrapper.js +3 -2
  1474. package/mobile/lib/ui-kit/BlockWrapper.js.map +1 -1
  1475. package/mobile/lib/ui-kit/Breadcrumb.js +6 -1
  1476. package/mobile/lib/ui-kit/Breadcrumb.js.map +1 -1
  1477. package/mobile/lib/ui-kit/Button/Button.js +10 -24
  1478. package/mobile/lib/ui-kit/Button/Button.js.map +1 -1
  1479. package/mobile/lib/ui-kit/Button/ButtonInner.js +2 -3
  1480. package/mobile/lib/ui-kit/Button/ButtonInner.js.map +1 -1
  1481. package/mobile/lib/ui-kit/Button/ButtonSection.d.ts +2 -2
  1482. package/mobile/lib/ui-kit/Button/ButtonSection.js +1 -6
  1483. package/mobile/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  1484. package/mobile/lib/ui-kit/Checkbox/Checkbox.js +1 -3
  1485. package/mobile/lib/ui-kit/Checkbox/Checkbox.js.map +1 -1
  1486. package/mobile/lib/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  1487. package/mobile/lib/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  1488. package/mobile/lib/ui-kit/InnerTable/InnerTable.js +2 -2
  1489. package/mobile/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1490. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  1491. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js +2 -2
  1492. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1493. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  1494. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1495. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  1496. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1497. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  1498. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  1499. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  1500. package/mobile/lib/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  1501. package/mobile/lib/ui-kit/SearchBar/SearchBar.js +1 -3
  1502. package/mobile/lib/ui-kit/SearchBar/SearchBar.js.map +1 -1
  1503. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  1504. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  1505. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  1506. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  1507. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  1508. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  1509. package/mobile/lib/ui-kit/TopItem/TopItem.js +6 -1
  1510. package/mobile/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  1511. package/mobile/lib/utils/adjustHref.js +2 -10
  1512. package/mobile/lib/utils/adjustHref.js.map +1 -1
  1513. package/mobile/src/ProjectSettings.ts +4 -0
  1514. package/mobile/src/components/Accordion/Accordion.tsx +1 -2
  1515. package/mobile/src/components/BaseTile/BaseTile.tsx +13 -14
  1516. package/mobile/src/components/Blocks.ts +0 -2
  1517. package/mobile/src/components/Bonus/Bonus.tsx +4 -10
  1518. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +2 -3
  1519. package/mobile/src/components/BusinessBlock/BusinessBlock.example.json +65 -0
  1520. package/mobile/src/components/BusinessBlock/BusinessBlock.tsx +19 -0
  1521. package/mobile/src/components/BusinessBlock/BusinessBlock.ui.json +26 -0
  1522. package/mobile/src/components/BusinessBlock/BusinessBlockContent.ts +31 -0
  1523. package/mobile/src/components/BusinessBlock/BusinessCard.tsx +41 -0
  1524. package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +5 -4
  1525. package/mobile/src/components/Calculator/Calculator.tsx +2 -5
  1526. package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +11 -11
  1527. package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +11 -14
  1528. package/mobile/src/components/Calculator/renderButtonSection.tsx +2 -3
  1529. package/mobile/src/components/Calculator/renderCalculatorBlock.tsx +20 -23
  1530. package/mobile/src/components/CardTransfer/CardTransfer.tsx +3 -5
  1531. package/mobile/src/components/Catalog/Catalog.tsx +17 -41
  1532. package/mobile/src/components/Catalog/CatalogCard.tsx +22 -24
  1533. package/mobile/src/components/ComparisonTable/ComparisonTable.tsx +3 -5
  1534. package/mobile/src/components/ComparisonTable/ComparisonTableBody.tsx +3 -16
  1535. package/mobile/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +10 -20
  1536. package/mobile/src/components/ComparisonTable/ComparisonTableRows.tsx +2 -2
  1537. package/mobile/src/components/ContactsBlock/ContactsBlock.tsx +1 -2
  1538. package/mobile/src/components/ContentPage/ContentPage.tsx +4 -10
  1539. package/mobile/src/components/ContentPage/computeAPIFallback.ts +20 -21
  1540. package/mobile/src/components/ContentPage/renderBlock.tsx +4 -9
  1541. package/mobile/src/components/ContentPage/renderBlockList.tsx +9 -20
  1542. package/mobile/src/components/ContentPage/renderSlots.tsx +4 -5
  1543. package/mobile/src/components/ErrorBlock/ErrorBlock.tsx +14 -24
  1544. package/mobile/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -12
  1545. package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.tsx +1 -4
  1546. package/mobile/src/components/Footer/Contacts.tsx +17 -28
  1547. package/mobile/src/components/Footer/Footer.fallback.ts +13 -0
  1548. package/mobile/src/components/Footer/Footer.tsx +38 -56
  1549. package/mobile/src/components/Footer/FooterContent.ts +4 -19
  1550. package/mobile/src/components/Footer/FooterDataProps.ts +13 -0
  1551. package/mobile/src/components/Footer/FooterLink.ts +2 -2
  1552. package/mobile/src/components/Footer/HorizontalNavigation.tsx +13 -25
  1553. package/mobile/src/components/Footer/HorizontalNavigationLink.tsx +16 -10
  1554. package/mobile/src/components/Footer/MediaButton.tsx +6 -1
  1555. package/mobile/src/components/Footer/Sitemap.tsx +28 -30
  1556. package/mobile/src/components/Footer/SocialMedia.tsx +9 -19
  1557. package/mobile/src/components/Footer/TextInformation.tsx +3 -12
  1558. package/mobile/src/components/Footer/TextInformationLink.tsx +16 -10
  1559. package/mobile/src/components/Footer/useFooterData.ts +13 -0
  1560. package/mobile/src/components/Gallery/Gallery.tsx +5 -10
  1561. package/mobile/src/components/Gallery/GalleryContainer.tsx +4 -21
  1562. package/mobile/src/components/Gallery/GalleryContent.ts +1 -1
  1563. package/mobile/src/components/Gallery/GalleryInner.tsx +1 -3
  1564. package/mobile/src/components/GracePeriod/GracePeriod.tsx +12 -18
  1565. package/mobile/src/components/Header/DropdownMenu.tsx +34 -39
  1566. package/mobile/src/components/Header/Header.tsx +25 -29
  1567. package/mobile/src/components/Header/HeaderBurger.tsx +2 -4
  1568. package/mobile/src/components/Header/HeaderSubMenu.tsx +3 -6
  1569. package/mobile/src/components/Header/HeaderSubMenuItem.tsx +2 -22
  1570. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +3 -17
  1571. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  1572. package/mobile/src/components/InvestmentGallery/InvestmentGallery.tsx +6 -21
  1573. package/mobile/src/components/InvestmentGallery/InvestmentGalleryCard.tsx +3 -9
  1574. package/mobile/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -6
  1575. package/mobile/src/components/LikeControl/LikeControl.tsx +9 -13
  1576. package/mobile/src/components/LinkDocs/LinkDocs.tsx +19 -26
  1577. package/mobile/src/components/LinkDocs/LinkDocsHorizontalList.tsx +15 -22
  1578. package/mobile/src/components/LinkList/LinkList.tsx +7 -9
  1579. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +9 -16
  1580. package/mobile/src/components/OtherProducts/OtherProducts.tsx +2 -6
  1581. package/mobile/src/components/PictureText/PictureText.tsx +23 -27
  1582. package/mobile/src/components/Placeholder/Placeholder.tsx +3 -6
  1583. package/mobile/src/components/ProductBlock/ProductBlockInner.tsx +3 -12
  1584. package/mobile/src/components/ProductBlock/renderBackwardButton.tsx +3 -2
  1585. package/mobile/src/components/ProductGallery/ProductGallery.tsx +111 -12
  1586. package/mobile/src/components/ProductTile/ProductTile.tsx +24 -32
  1587. package/mobile/src/components/PromoTile/PromoTile.tsx +31 -38
  1588. package/mobile/src/components/Recommendation/Recommendation.tsx +12 -26
  1589. package/mobile/src/components/Recommendation/RecommendationCard.tsx +5 -15
  1590. package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +3 -3
  1591. package/mobile/src/components/StepsBlock/renderStepContent.tsx +4 -10
  1592. package/mobile/src/components/Tabs/LinkTab.tsx +46 -0
  1593. package/mobile/src/components/Tabs/Tabs.tsx +7 -7
  1594. package/mobile/src/components/Tabs/TabsContent.ts +5 -5
  1595. package/mobile/src/components/Tabs/renderGroupTab.tsx +3 -3
  1596. package/mobile/src/components/Tabs/renderTab.tsx +8 -27
  1597. package/mobile/src/components/TariffsTable/TariffsTable.tsx +6 -17
  1598. package/mobile/src/components/TariffsTable/TariffsTableCell.tsx +0 -2
  1599. package/mobile/src/components/TariffsTable/TariffsTableContent.ts +1 -1
  1600. package/mobile/src/components/TariffsTable/TariffsTableHorizontal.tsx +9 -7
  1601. package/mobile/src/components/TariffsTable/TariffsTableRenderCell.tsx +0 -5
  1602. package/mobile/src/components/TariffsTable/TariffsTableRow.tsx +4 -4
  1603. package/mobile/src/components/TariffsTable/TariffsTableRowContainer.tsx +11 -15
  1604. package/mobile/src/components/TariffsTable/TariffsTableTileCell.tsx +23 -34
  1605. package/mobile/src/components/TariffsTable/TariffsTableVertical.tsx +9 -7
  1606. package/mobile/src/components/Tile/Tile.tsx +2 -5
  1607. package/mobile/src/components/VerticalLayout/VerticalLayout.example.json +17 -0
  1608. package/mobile/src/components/VerticalLayout/VerticalLayout.tsx +51 -0
  1609. package/mobile/src/components/VerticalLayout/VerticalLayout.ui.json +1 -0
  1610. package/mobile/src/components/VerticalLayout/VerticalLayoutContent.ts +19 -0
  1611. package/mobile/src/hooks/handlerDecorator.ts +16 -0
  1612. package/mobile/src/hooks/useLink.ts +26 -22
  1613. package/mobile/src/hooks/useRouter.ts +28 -0
  1614. package/mobile/src/hooks/useTableArrowScrollControl.ts +13 -7
  1615. package/mobile/src/index.ts +3 -0
  1616. package/mobile/src/model/BlockVersion.ts +6 -0
  1617. package/mobile/src/model/BlocksRegistry.ts +1 -1
  1618. package/mobile/src/model/JSXBlock.ts +5 -9
  1619. package/mobile/src/react/setup-fixture.ts +9 -29
  1620. package/mobile/src/services/sitemap/SitemapProps.ts +1 -1
  1621. package/mobile/src/services/sitemap/findActiveSubItem.ts +1 -1
  1622. package/mobile/src/services/sitemap/isHrefActive.ts +1 -5
  1623. package/mobile/src/services/sitemap/isSubItemActive.ts +1 -1
  1624. package/mobile/src/services/sitemap/isTopItemActive.ts +1 -1
  1625. package/mobile/src/services/sitemap/useSWRResource.ts +11 -0
  1626. package/mobile/src/ui-kit/BlockWrapper.tsx +6 -4
  1627. package/mobile/src/ui-kit/Breadcrumb.tsx +12 -9
  1628. package/mobile/src/ui-kit/Button/Button.tsx +40 -79
  1629. package/mobile/src/ui-kit/Button/ButtonInner.tsx +2 -3
  1630. package/mobile/src/ui-kit/Button/ButtonSection.tsx +9 -14
  1631. package/mobile/src/ui-kit/Checkbox/Checkbox.tsx +1 -3
  1632. package/mobile/src/ui-kit/Checkbox/CheckboxProps.ts +2 -2
  1633. package/mobile/src/ui-kit/InnerTable/InnerTable.tsx +6 -7
  1634. package/mobile/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -4
  1635. package/mobile/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -2
  1636. package/mobile/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -2
  1637. package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +17 -20
  1638. package/mobile/src/ui-kit/SearchBar/SearchBar.tsx +4 -5
  1639. package/mobile/src/ui-kit/SwipeListControl/SwipeListControl.tsx +1 -1
  1640. package/mobile/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +2 -3
  1641. package/mobile/src/ui-kit/TableArrowScrollControl/TableArrowScrollControl.tsx +2 -2
  1642. package/mobile/src/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.ts +3 -2
  1643. package/mobile/src/ui-kit/TopItem/TopItem.tsx +18 -23
  1644. package/mobile/src/utils/adjustHref.ts +2 -13
  1645. package/package.json +1 -1
  1646. package/src/ProjectSettings.ts +4 -0
  1647. package/src/components/Accordion/Accordion.fixture.mobile.tsx +5 -10
  1648. package/src/components/Accordion/Accordion.fixture.tsx +17 -39
  1649. package/src/components/Accordion/Accordion.mobile.tsx +1 -2
  1650. package/src/components/Accordion/Accordion.tsx +1 -10
  1651. package/src/components/BaseTile/BaseTile.tsx +13 -14
  1652. package/src/components/BenefitsBlock/BenefitsBlock.fixture.tsx +2 -7
  1653. package/src/components/Blocks.mobile.ts +0 -2
  1654. package/src/components/Blocks.ts +10 -6
  1655. package/src/components/Bonus/Bonus.fixture.tsx +2 -2
  1656. package/src/components/Bonus/Bonus.tsx +4 -10
  1657. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.tsx +1 -3
  1658. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +2 -3
  1659. package/src/components/BusinessBlock/BusinessBlock.example.json +65 -0
  1660. package/src/components/BusinessBlock/BusinessBlock.fixture.tsx +74 -0
  1661. package/src/components/BusinessBlock/BusinessBlock.tsx +19 -0
  1662. package/src/components/BusinessBlock/BusinessBlock.ui.json +26 -0
  1663. package/src/components/BusinessBlock/BusinessBlockContent.ts +31 -0
  1664. package/src/components/BusinessBlock/BusinessCard.tsx +41 -0
  1665. package/src/components/Calculator/BonusCalculatorForm.tsx +5 -4
  1666. package/src/components/Calculator/Calculator.fixture.tsx +1 -3
  1667. package/src/components/Calculator/Calculator.tsx +2 -5
  1668. package/src/components/Calculator/CreditCalculatorForm.tsx +11 -11
  1669. package/src/components/Calculator/DepositCalculatorForm.tsx +11 -14
  1670. package/src/components/Calculator/renderButtonSection.tsx +2 -3
  1671. package/src/components/Calculator/renderCalculatorBlock.tsx +20 -23
  1672. package/src/components/CardTransfer/CardTransfer.fixture.tsx +3 -3
  1673. package/src/components/CardTransfer/CardTransfer.tsx +3 -5
  1674. package/src/components/Catalog/Catalog.fixture.tsx +1 -2
  1675. package/src/components/Catalog/Catalog.tsx +17 -41
  1676. package/src/components/Catalog/CatalogCard.tsx +22 -24
  1677. package/src/components/ComparisonTable/ComparisonTable.fixture.mobile.tsx +1 -3
  1678. package/src/components/ComparisonTable/ComparisonTable.fixture.tsx +1 -6
  1679. package/src/components/ComparisonTable/ComparisonTable.mobile.tsx +3 -5
  1680. package/src/components/ComparisonTable/ComparisonTable.tsx +16 -21
  1681. package/src/components/ComparisonTable/ComparisonTableBody.tsx +3 -16
  1682. package/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +10 -20
  1683. package/src/components/ComparisonTable/ComparisonTableRows.tsx +2 -2
  1684. package/src/components/ComparisonTable/HeaderCell.tsx +1 -1
  1685. package/src/components/ContactsBlock/ContactsBlock.fixture.tsx +3 -11
  1686. package/src/components/ContactsBlock/ContactsBlock.tsx +1 -2
  1687. package/src/components/ContentPage/ContentPage.fixture.mobile.tsx +2 -6
  1688. package/src/components/ContentPage/ContentPage.fixture.tsx +1 -3
  1689. package/src/components/ContentPage/ContentPage.tsx +4 -10
  1690. package/src/components/ContentPage/computeAPIFallback.ts +20 -21
  1691. package/src/components/ContentPage/renderBlock.tsx +4 -9
  1692. package/src/components/ContentPage/renderBlockList.tsx +9 -20
  1693. package/src/components/ContentPage/renderSlots.tsx +4 -5
  1694. package/src/components/ErrorBlock/ErrorBlock.fixture.tsx +1 -3
  1695. package/src/components/ErrorBlock/ErrorBlock.tsx +14 -24
  1696. package/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -12
  1697. package/src/components/ExchangeRateTile/ExchangeRateTile.fixture.tsx +3 -3
  1698. package/src/components/ExchangeRateTile/ExchangeRateTile.tsx +1 -4
  1699. package/src/components/Footer/Contacts.tsx +17 -28
  1700. package/src/components/Footer/Footer.fallback.ts +13 -0
  1701. package/src/components/Footer/Footer.fixture.mobile.tsx +2 -84
  1702. package/src/components/Footer/Footer.fixture.tsx +2 -141
  1703. package/src/components/Footer/Footer.mobile.tsx +38 -56
  1704. package/src/components/Footer/Footer.tsx +28 -43
  1705. package/src/components/Footer/FooterContent.ts +4 -19
  1706. package/src/components/Footer/FooterDataProps.ts +13 -0
  1707. package/src/components/Footer/FooterLink.ts +2 -2
  1708. package/src/components/Footer/HorizontalNavigation.mobile.tsx +13 -25
  1709. package/src/components/Footer/HorizontalNavigation.tsx +19 -26
  1710. package/src/components/Footer/HorizontalNavigationLink.tsx +16 -10
  1711. package/src/components/Footer/MediaButton.tsx +6 -1
  1712. package/src/components/Footer/Sitemap.tsx +28 -30
  1713. package/src/components/Footer/SocialMedia.mobile.tsx +9 -19
  1714. package/src/components/Footer/SocialMedia.tsx +12 -24
  1715. package/src/components/Footer/TextInformation.mobile.tsx +3 -12
  1716. package/src/components/Footer/TextInformation.tsx +15 -25
  1717. package/src/components/Footer/TextInformationLink.tsx +16 -10
  1718. package/src/components/Footer/useFooterData.ts +13 -0
  1719. package/src/components/Gallery/Gallery.fixture.mobile.tsx +2 -4
  1720. package/src/components/Gallery/Gallery.fixture.tsx +2 -6
  1721. package/src/components/Gallery/Gallery.mobile.tsx +5 -10
  1722. package/src/components/Gallery/GalleryContainer.tsx +4 -21
  1723. package/src/components/Gallery/GalleryContent.ts +1 -1
  1724. package/src/components/Gallery/GalleryInner.tsx +1 -3
  1725. package/src/components/GracePeriod/GracePeriod.fixture.tsx +2 -2
  1726. package/src/components/GracePeriod/GracePeriod.tsx +12 -18
  1727. package/src/components/Header/DropdownMenu.tsx +34 -39
  1728. package/src/components/Header/Header.fixture.mobile.tsx +3 -3
  1729. package/src/components/Header/Header.fixture.tsx +4 -4
  1730. package/src/components/Header/Header.mobile.tsx +25 -29
  1731. package/src/components/Header/Header.tsx +11 -13
  1732. package/src/components/Header/HeaderBurger.tsx +2 -4
  1733. package/src/components/Header/HeaderSubMenu.tsx +3 -6
  1734. package/src/components/Header/HeaderSubMenuItem.tsx +2 -22
  1735. package/src/components/Headline/Headline.fixture.mobile.tsx +10 -14
  1736. package/src/components/Headline/Headline.fixture.tsx +15 -15
  1737. package/src/components/Headline/Headline.tsx +1 -2
  1738. package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.fixture.tsx +1 -2
  1739. package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +3 -17
  1740. package/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  1741. package/src/components/InvestmentGallery/InvestmentGallery.fixture.tsx +1 -2
  1742. package/src/components/InvestmentGallery/InvestmentGallery.tsx +6 -21
  1743. package/src/components/InvestmentGallery/InvestmentGalleryCard.tsx +3 -9
  1744. package/src/components/InvestmentInfo/InvestmentInfo.fixture.tsx +2 -2
  1745. package/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -6
  1746. package/src/components/LikeControl/LikeControl.fixture.tsx +2 -2
  1747. package/src/components/LikeControl/LikeControl.tsx +9 -13
  1748. package/src/components/LinkDocs/LinkDocs.fixture.mobile.tsx +4 -14
  1749. package/src/components/LinkDocs/LinkDocs.fixture.tsx +5 -20
  1750. package/src/components/LinkDocs/LinkDocs.mobile.tsx +19 -26
  1751. package/src/components/LinkDocs/LinkDocs.tsx +21 -25
  1752. package/src/components/LinkDocs/LinkDocsHorizontalList.tsx +15 -22
  1753. package/src/components/LinkList/LinkList.fixture.tsx +2 -2
  1754. package/src/components/LinkList/LinkList.tsx +7 -9
  1755. package/src/components/MiniGallery/MiniGallery.fixture.tsx +4 -8
  1756. package/src/components/MobileAppTile/MobileAppTile.fixture.mobile.tsx +1 -2
  1757. package/src/components/MobileAppTile/MobileAppTile.fixture.tsx +2 -10
  1758. package/src/components/MobileAppTile/MobileAppTile.tsx +1 -4
  1759. package/src/components/OfficeMap/OfficeMap.fixture.tsx +2 -2
  1760. package/src/components/OfficeServicesBlock/OfficeServicesBlock.fixture.tsx +1 -2
  1761. package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +9 -16
  1762. package/src/components/OtherProducts/OtherProducts.fixture.tsx +20 -32
  1763. package/src/components/OtherProducts/OtherProducts.tsx +2 -6
  1764. package/src/components/PictureText/PictureText.fixture.tsx +6 -16
  1765. package/src/components/PictureText/PictureText.tsx +23 -27
  1766. package/src/components/Placeholder/Placeholder.fixture.mobile.tsx +2 -2
  1767. package/src/components/Placeholder/Placeholder.fixture.tsx +2 -2
  1768. package/src/components/Placeholder/Placeholder.tsx +3 -6
  1769. package/src/components/ProductBlock/ProductBlock.fixture.mobile.tsx +8 -27
  1770. package/src/components/ProductBlock/ProductBlock.fixture.tsx +7 -24
  1771. package/src/components/ProductBlock/ProductBlock.tsx +6 -23
  1772. package/src/components/ProductBlock/ProductBlockInner.mobile.tsx +3 -12
  1773. package/src/components/ProductBlock/ProductBlockInner.tsx +9 -11
  1774. package/src/components/ProductBlock/renderBackwardButton.tsx +3 -2
  1775. package/src/components/ProductGallery/ProductGallery.fixture.tsx +1 -3
  1776. package/src/components/ProductGallery/ProductGallery.tsx +4 -11
  1777. package/src/components/ProductTile/ProductTile.fixture.tsx +2 -8
  1778. package/src/components/ProductTile/ProductTile.tsx +24 -32
  1779. package/src/components/PromoTile/PromoTile.fixture.tsx +1 -2
  1780. package/src/components/PromoTile/PromoTile.tsx +31 -38
  1781. package/src/components/Recommendation/Recommendation.fixture.tsx +1 -3
  1782. package/src/components/Recommendation/Recommendation.tsx +12 -26
  1783. package/src/components/Recommendation/RecommendationCard.tsx +5 -15
  1784. package/src/components/SafeDepositRental/SafeDepositRental.fixture.tsx +1 -2
  1785. package/src/components/SafeDepositRental/SafeDepositRental.tsx +3 -3
  1786. package/src/components/StepsBlock/StepsBlock.fixture.mobile.tsx +1 -9
  1787. package/src/components/StepsBlock/StepsBlock.fixture.tsx +2 -3
  1788. package/src/components/StepsBlock/StepsBlock.tsx +5 -28
  1789. package/src/components/StepsBlock/renderStepContent.tsx +4 -10
  1790. package/src/components/Tabs/LinkTab.tsx +46 -0
  1791. package/src/components/Tabs/Tabs.fixture.tsx +1 -2
  1792. package/src/components/Tabs/Tabs.tsx +7 -7
  1793. package/src/components/Tabs/TabsContent.ts +5 -5
  1794. package/src/components/Tabs/renderGroupTab.tsx +3 -3
  1795. package/src/components/Tabs/renderTab.tsx +8 -27
  1796. package/src/components/TariffsTable/EmbeddableCellData.tsx +3 -5
  1797. package/src/components/TariffsTable/TariffsTable.fixture.mobile.tsx +2 -7
  1798. package/src/components/TariffsTable/TariffsTable.fixture.tsx +1 -6
  1799. package/src/components/TariffsTable/TariffsTable.mobile.tsx +6 -17
  1800. package/src/components/TariffsTable/TariffsTable.tsx +2 -8
  1801. package/src/components/TariffsTable/TariffsTableCell.tsx +0 -2
  1802. package/src/components/TariffsTable/TariffsTableContent.ts +1 -1
  1803. package/src/components/TariffsTable/TariffsTableHorizontal.tsx +9 -7
  1804. package/src/components/TariffsTable/TariffsTableRenderCell.tsx +0 -5
  1805. package/src/components/TariffsTable/TariffsTableRow.tsx +4 -4
  1806. package/src/components/TariffsTable/TariffsTableRowContainer.tsx +11 -15
  1807. package/src/components/TariffsTable/TariffsTableTileCell.tsx +23 -34
  1808. package/src/components/TariffsTable/TariffsTableVertical.tsx +9 -7
  1809. package/src/components/TextBlock/TextBlock.fixture.mobile.tsx +10 -60
  1810. package/src/components/TextBlock/TextBlock.fixture.tsx +13 -49
  1811. package/src/components/Tile/Tile.fixture.tsx +4 -7
  1812. package/src/components/Tile/Tile.tsx +2 -5
  1813. package/src/components/VerticalLayout/VerticalLayout.example.json +17 -0
  1814. package/src/components/VerticalLayout/VerticalLayout.fixture.tsx +41 -0
  1815. package/src/components/VerticalLayout/VerticalLayout.tsx +51 -0
  1816. package/src/components/VerticalLayout/VerticalLayout.ui.json +1 -0
  1817. package/src/components/VerticalLayout/VerticalLayoutContent.ts +19 -0
  1818. package/src/hooks/handlerDecorator.ts +16 -0
  1819. package/src/hooks/useLink.ts +26 -22
  1820. package/src/hooks/useRouter.ts +28 -0
  1821. package/src/hooks/useTableArrowScrollControl.ts +13 -7
  1822. package/src/icons/IconName.ts +5 -318
  1823. package/src/index.ts +3 -0
  1824. package/src/model/BlockVersion.ts +6 -0
  1825. package/src/model/BlocksRegistry.ts +1 -1
  1826. package/src/model/JSXBlock.ts +5 -9
  1827. package/src/react/setup-fixture.ts +9 -29
  1828. package/src/services/sitemap/SitemapProps.ts +1 -1
  1829. package/src/services/sitemap/findActiveSubItem.ts +1 -1
  1830. package/src/services/sitemap/isHrefActive.ts +1 -5
  1831. package/src/services/sitemap/isSubItemActive.ts +1 -1
  1832. package/src/services/sitemap/isTopItemActive.ts +1 -1
  1833. package/src/services/sitemap/useSWRResource.ts +11 -0
  1834. package/src/ui-kit/BlockWrapper.tsx +6 -4
  1835. package/src/ui-kit/Breadcrumb.tsx +12 -9
  1836. package/src/ui-kit/Button/Button.tsx +35 -80
  1837. package/src/ui-kit/Button/ButtonInner.tsx +2 -3
  1838. package/src/ui-kit/Button/ButtonSection.tsx +9 -14
  1839. package/src/ui-kit/Checkbox/Checkbox.tsx +1 -3
  1840. package/src/ui-kit/Checkbox/CheckboxProps.ts +2 -2
  1841. package/src/ui-kit/HeaderItem/HeaderItem.tsx +18 -22
  1842. package/src/ui-kit/InnerTable/InnerTable.tsx +6 -7
  1843. package/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -4
  1844. package/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -2
  1845. package/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -2
  1846. package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.fixture.tsx +2 -3
  1847. package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +17 -20
  1848. package/src/ui-kit/SearchBar/SearchBar.mobile.tsx +4 -5
  1849. package/src/ui-kit/SearchBar/SearchBar.tsx +2 -5
  1850. package/src/ui-kit/SwipeListControl/SwipeListControl.fixture.mobile.tsx +5 -7
  1851. package/src/ui-kit/SwipeListControl/SwipeListControl.tsx +1 -1
  1852. package/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +2 -3
  1853. package/src/ui-kit/TableArrowScrollControl/TableArrowScrollControl.tsx +2 -2
  1854. package/src/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.ts +3 -2
  1855. package/src/ui-kit/TopItem/TopItem.tsx +18 -23
  1856. package/src/utils/adjustHref.ts +2 -13
  1857. package/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1858. package/bundle/components/ContentPage/ContentPageContext.d.ts +0 -17
  1859. package/bundle/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1860. package/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1861. package/bundle/components/Tabs/renderLinkTab.d.ts +0 -9
  1862. package/bundle/services/sitemap/useSitemap.d.ts +0 -3
  1863. package/bundle/ui-kit/Button/Button.mobile.d.ts +0 -2
  1864. package/bundle/utils/withoutMobilePath.d.ts +0 -2
  1865. package/dist/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1866. package/dist/components/Calculator/renderPaymentTypeSelector.js +0 -9
  1867. package/dist/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1868. package/dist/components/ContentPage/ContentPageContext.d.ts +0 -17
  1869. package/dist/components/ContentPage/ContentPageContext.js.map +0 -1
  1870. package/dist/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1871. package/dist/components/ProductGallery/ProductGallery.mobile.js +0 -11
  1872. package/dist/components/ProductGallery/ProductGallery.mobile.js.map +0 -1
  1873. package/dist/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1874. package/dist/components/ProductGallery/ProductGalleryBlock.js +0 -11
  1875. package/dist/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1876. package/dist/components/Tabs/renderLinkTab.d.ts +0 -9
  1877. package/dist/components/Tabs/renderLinkTab.js +0 -10
  1878. package/dist/components/Tabs/renderLinkTab.js.map +0 -1
  1879. package/dist/services/sitemap/useSitemap.d.ts +0 -3
  1880. package/dist/services/sitemap/useSitemap.js.map +0 -1
  1881. package/dist/ui-kit/Button/Button.mobile.d.ts +0 -2
  1882. package/dist/ui-kit/Button/Button.mobile.js +0 -31
  1883. package/dist/ui-kit/Button/Button.mobile.js.map +0 -1
  1884. package/dist/utils/withoutMobilePath.d.ts +0 -2
  1885. package/dist/utils/withoutMobilePath.js +0 -6
  1886. package/dist/utils/withoutMobilePath.js.map +0 -1
  1887. package/lib/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1888. package/lib/components/Calculator/renderPaymentTypeSelector.js +0 -6
  1889. package/lib/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1890. package/lib/components/ContentPage/ContentPageContext.d.ts +0 -17
  1891. package/lib/components/ContentPage/ContentPageContext.js +0 -2
  1892. package/lib/components/ContentPage/ContentPageContext.js.map +0 -1
  1893. package/lib/components/ProductGallery/ProductGallery.fixture.mobile.d.ts +0 -6
  1894. package/lib/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1895. package/lib/components/ProductGallery/ProductGallery.mobile.js +0 -9
  1896. package/lib/components/ProductGallery/ProductGallery.mobile.js.map +0 -1
  1897. package/lib/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1898. package/lib/components/ProductGallery/ProductGalleryBlock.js +0 -9
  1899. package/lib/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1900. package/lib/components/Tabs/renderLinkTab.d.ts +0 -9
  1901. package/lib/components/Tabs/renderLinkTab.js +0 -7
  1902. package/lib/components/Tabs/renderLinkTab.js.map +0 -1
  1903. package/lib/services/sitemap/useSitemap.d.ts +0 -3
  1904. package/lib/services/sitemap/useSitemap.js.map +0 -1
  1905. package/lib/ui-kit/Button/Button.mobile.d.ts +0 -2
  1906. package/lib/ui-kit/Button/Button.mobile.js +0 -29
  1907. package/lib/ui-kit/Button/Button.mobile.js.map +0 -1
  1908. package/lib/utils/withoutMobilePath.d.ts +0 -2
  1909. package/lib/utils/withoutMobilePath.js +0 -3
  1910. package/lib/utils/withoutMobilePath.js.map +0 -1
  1911. package/mobile/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1912. package/mobile/bundle/components/ContentPage/ContentPageContext.d.ts +0 -17
  1913. package/mobile/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1914. package/mobile/bundle/components/Tabs/renderLinkTab.d.ts +0 -9
  1915. package/mobile/bundle/services/sitemap/useSitemap.d.ts +0 -3
  1916. package/mobile/bundle/utils/withoutMobilePath.d.ts +0 -2
  1917. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1918. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js +0 -9
  1919. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1920. package/mobile/dist/components/ContentPage/ContentPageContext.d.ts +0 -17
  1921. package/mobile/dist/components/ContentPage/ContentPageContext.js.map +0 -1
  1922. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1923. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.js +0 -11
  1924. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1925. package/mobile/dist/components/Tabs/renderLinkTab.d.ts +0 -9
  1926. package/mobile/dist/components/Tabs/renderLinkTab.js +0 -10
  1927. package/mobile/dist/components/Tabs/renderLinkTab.js.map +0 -1
  1928. package/mobile/dist/services/sitemap/useSitemap.d.ts +0 -3
  1929. package/mobile/dist/services/sitemap/useSitemap.js.map +0 -1
  1930. package/mobile/dist/utils/withoutMobilePath.d.ts +0 -2
  1931. package/mobile/dist/utils/withoutMobilePath.js +0 -6
  1932. package/mobile/dist/utils/withoutMobilePath.js.map +0 -1
  1933. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1934. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js +0 -6
  1935. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1936. package/mobile/lib/components/ContentPage/ContentPageContext.d.ts +0 -17
  1937. package/mobile/lib/components/ContentPage/ContentPageContext.js +0 -2
  1938. package/mobile/lib/components/ContentPage/ContentPageContext.js.map +0 -1
  1939. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1940. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.js +0 -9
  1941. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1942. package/mobile/lib/components/Tabs/renderLinkTab.d.ts +0 -9
  1943. package/mobile/lib/components/Tabs/renderLinkTab.js +0 -7
  1944. package/mobile/lib/components/Tabs/renderLinkTab.js.map +0 -1
  1945. package/mobile/lib/services/sitemap/useSitemap.d.ts +0 -3
  1946. package/mobile/lib/services/sitemap/useSitemap.js.map +0 -1
  1947. package/mobile/lib/utils/withoutMobilePath.d.ts +0 -2
  1948. package/mobile/lib/utils/withoutMobilePath.js +0 -3
  1949. package/mobile/lib/utils/withoutMobilePath.js.map +0 -1
  1950. package/mobile/src/components/Calculator/renderPaymentTypeSelector.tsx +0 -14
  1951. package/mobile/src/components/ContentPage/ContentPageContext.tsx +0 -20
  1952. package/mobile/src/components/ProductGallery/ProductGalleryBlock.tsx +0 -28
  1953. package/mobile/src/components/Tabs/renderLinkTab.tsx +0 -42
  1954. package/mobile/src/services/sitemap/useSitemap.ts +0 -15
  1955. package/mobile/src/utils/withoutMobilePath.ts +0 -3
  1956. package/src/components/Calculator/renderPaymentTypeSelector.tsx +0 -14
  1957. package/src/components/ContentPage/ContentPageContext.tsx +0 -20
  1958. package/src/components/ProductGallery/ProductGallery.fixture.mobile.tsx +0 -234
  1959. package/src/components/ProductGallery/ProductGallery.mobile.tsx +0 -21
  1960. package/src/components/ProductGallery/ProductGalleryBlock.tsx +0 -28
  1961. package/src/components/Tabs/renderLinkTab.tsx +0 -42
  1962. package/src/services/sitemap/useSitemap.ts +0 -15
  1963. package/src/ui-kit/Button/Button.fixture.mobile.tsx +0 -16
  1964. package/src/ui-kit/Button/Button.mobile.tsx +0 -87
  1965. package/src/utils/withoutMobilePath.ts +0 -3
@@ -79,6 +79,9 @@
79
79
  get SITEMAP() {
80
80
  return this._.SITEMAP;
81
81
  }
82
+ get FOOTER() {
83
+ return this._.FOOTER;
84
+ }
82
85
  get CDN() {
83
86
  return this._.CDN;
84
87
  }
@@ -299,8 +302,9 @@
299
302
  const OBSERVER_OPTIONS = {
300
303
  threshold: new Array(THRESHOLD_ARRAY_LENGTH).fill(0).map(getIntersectionThreshold),
301
304
  };
302
- const BlockWrapper = JSX(({ anchor, className, children, tag = 'section', labels, role }) => {
305
+ const BlockWrapper = JSX(({ className, block, tag = 'section', role, children }) => {
303
306
  const Tag = tag;
307
+ const { anchor, labels } = block || {};
304
308
  const [isVisible, setVisible] = useState(true);
305
309
  const anchorClickRef = useRef({});
306
310
  const observerCallback = useMemo(() => changeHashOnObserve({ anchor, anchorClickRef }), [anchor]);
@@ -311,7 +315,7 @@
311
315
  }), []);
312
316
  useEffect(() => EventBus.inst.subscribe('tab', (event) => {
313
317
  if (event.type === 'group') {
314
- const hasSettings = labels?.length || anchor;
318
+ const hasSettings = labels?.length || block?.anchor;
315
319
  setVisible(event.label ? !hasSettings || Boolean(labels?.includes(event.label)) : true);
316
320
  }
317
321
  else {
@@ -347,7 +351,7 @@
347
351
 
348
352
  const AccordionItemsList = JSX(({ children }) => (jsx("ul", { className: "list-none m-0 p-0", children: children })));
349
353
 
350
- 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 ${AlignText[accordionAlignTitle]}`, title: title })) : null, description ? jsx("div", { className: "mb-2.5 text-l", children: description }) : null, jsx(AccordionItemsList, { children: children })] })));
354
+ const Accordion = JSX(({ className = '', title, accordionAlignTitle = 'center', description, children, ...rest }) => (jsxs(BlockWrapper, { 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 ${AlignText[accordionAlignTitle]}`, title: title })) : null, description ? jsx("div", { className: "mb-2.5 text-l", children: description }) : null, jsx(AccordionItemsList, { children: children })] })));
351
355
  Accordion.childrenTypes = ['AccordionItem'];
352
356
 
353
357
  const Foldable = JSX(({ isFoldButtonOnTop = false, unfoldedByDefault = false, renderFoldableSection, renderFoldButton, }) => {
@@ -515,40 +519,60 @@
515
519
  isHash: isHash
516
520
  });
517
521
 
518
- const MOBILE_URL_PATH = '/mobile';
519
- const withoutMobilePath = (href) => (href || '').replace(MOBILE_URL_PATH, '');
520
-
521
522
  const adjustHref = (href, router) => {
522
- if (!href) {
523
- return href;
524
- }
525
- const relativeHref = toRelativeHref(href, router) || '';
526
- const isMobilePage = router?.pathname.startsWith(MOBILE_URL_PATH);
527
- return isMobilePage && !isURL(relativeHref) ? `${MOBILE_URL_PATH}${relativeHref}` : relativeHref;
528
- };
529
- const toRelativeHref = (href, router) => {
530
523
  if (!href) {
531
524
  return href;
532
525
  }
533
526
  const origin = getOrigin(router?.href);
527
+ // Relative URL
534
528
  return origin ? href.replace(origin, '') || '/' : href;
535
529
  };
536
530
 
537
- const defaultHandlerDecorator = (handler) => handler;
538
- function useLink({ router, handlerDecorator = defaultHandlerDecorator, }, link) {
539
- const href = adjustHref(link.href, router);
540
- return {
541
- ...link,
542
- href,
543
- 'aria-label': link.text,
544
- onClick: handlerDecorator((ev) => {
545
- const isLocalHref = href && !isURL(href);
546
- const isLocalTarget = !link.target || link.target === '_self';
547
- if (isLocalHref && isLocalTarget) {
548
- ev?.preventDefault();
549
- router.push(href);
550
- }
551
- }, link),
531
+ /* eslint-disable @typescript-eslint/ban-types */
532
+ const handlerDecorator = (handler, targetContent) => {
533
+ return handlerDecorator._impl(handler, targetContent);
534
+ };
535
+ handlerDecorator._impl = (handler) => handler;
536
+ handlerDecorator.setup = (impl) => {
537
+ handlerDecorator._impl = impl;
538
+ };
539
+
540
+ function useRouter() {
541
+ return useRouter._impl();
542
+ }
543
+ useRouter._impl = () => ({
544
+ href: globalThis.location?.href || '/',
545
+ pathname: globalThis.location?.pathname || '/',
546
+ query: {},
547
+ push: () => {
548
+ // Do nothing
549
+ },
550
+ replace: () => {
551
+ // Do nothing
552
+ },
553
+ });
554
+ useRouter.setup = (impl) => {
555
+ useRouter._impl = impl;
556
+ };
557
+
558
+ function useLink() {
559
+ const router = useRouter();
560
+ return (props) => {
561
+ const href = adjustHref(props.href, router);
562
+ return {
563
+ ...props,
564
+ href,
565
+ 'aria-label': props.text,
566
+ onClick: handlerDecorator((ev) => {
567
+ props.onClick && props.onClick(ev);
568
+ const isLocalHref = href && !isURL(href);
569
+ const isLocalTarget = !props.target || props.target === '_self';
570
+ if (isLocalHref && isLocalTarget) {
571
+ ev?.preventDefault();
572
+ router.push(href);
573
+ }
574
+ }, props),
575
+ };
552
576
  };
553
577
  }
554
578
 
@@ -575,10 +599,10 @@
575
599
 
576
600
  const ButtonInner = JSX((props) => {
577
601
  const { text, aboveText, appendLeft, appendRight, version = 'primary' } = props;
578
- return (jsxs("div", { className: getButtonStyle(props), children: [appendLeft ? jsx("div", { className: iconStyleMap[version], children: appendLeft }) : null, isWithText(props) ? (jsxs("div", { children: [jsx("div", { className: "text-xs-light text-left", children: aboveText }), jsx("div", { className: `text-left ${aboveText ? 'text-s -mt-0.5' : 'text-l'}`, children: text })] })) : null, appendRight ? jsx("div", { className: iconStyleMap[version], children: appendRight }) : null] }));
602
+ return (jsxs("div", { className: getButtonStyle(props), children: [appendLeft ? jsx("div", { className: iconStyleMap[version], children: appendLeft }) : null, isWithText(props) ? (jsxs("div", { children: [aboveText ? jsx("div", { className: "text-xs-light text-left", children: aboveText }) : null, jsx("div", { className: `text-left ${aboveText ? 'text-s -mt-0.5' : 'text-l'}`, children: text })] })) : null, appendRight ? jsx("div", { className: iconStyleMap[version], children: appendRight }) : null] }));
579
603
  });
580
604
  const getButtonStyle = (props) => {
581
- const { className = '', version, aboveText, rounded } = props;
605
+ const { version, aboveText, rounded } = props;
582
606
  if (version === 'link') {
583
607
  return '';
584
608
  }
@@ -587,7 +611,6 @@
587
611
  'group flex items-center justify-center',
588
612
  isWithText(props) ? withTextStyle : 'h-12 w-12',
589
613
  rounded ? 'rounded-full' : '',
590
- className,
591
614
  ].join(' ');
592
615
  };
593
616
  const isWithText = ({ text, aboveText, appendLeft }) => Boolean(text || aboveText || !appendLeft);
@@ -608,22 +631,16 @@
608
631
  className,
609
632
  ].join(' ');
610
633
 
611
- const Button = JSX(({ aboveText, appendLeft, appendRight, ariaLabel, children, className, disabled, href, onClick, rel, rounded, target, text, version, }) => {
612
- const buttonInner = children ?? (jsx(ButtonInner, { aboveText: aboveText, appendLeft: appendLeft, appendRight: appendRight, rounded: rounded, text: text, version: version }));
613
- return disabled ? (jsx(DisabledButton, { ariaLabel: ariaLabel, className: className, rounded: rounded, version: version, children: buttonInner })) : (jsx(RegularButton, { ariaLabel: ariaLabel, className: className, href: href, onClick: onClick, rel: rel, rounded: rounded, target: target, version: version, children: buttonInner }));
614
- });
615
- const RegularButton = JSX(({ className = '', ariaLabel, version, rounded, href, target, children, onClick, rel }) => {
616
- return (jsx("a", { className: getRegularButtonClasses({ className, version, rounded }), href: href, target: target, onClick: onClick, "aria-label": ariaLabel, role: href ? 'link' : 'button', rel: rel, children: children }));
617
- });
618
- const DisabledButton = JSX(({ className, children, ariaLabel, version, rounded }) => {
619
- return (jsx("div", { role: "button", "aria-disabled": "true", "aria-label": ariaLabel, tabIndex: -1, className: getDisabledButtonClasses({ className, rounded, version }), children: children }));
634
+ const Button = JSX(({ disabled, children, ...rest }) => {
635
+ const link = useLink();
636
+ const adjustedProps = link(rest);
637
+ const buttonInner = children ?? jsx(ButtonInner, { ...adjustedProps });
638
+ return disabled ? (jsx(DisabledButton, { ...adjustedProps, children: buttonInner })) : (jsx(RegularButton, { ...adjustedProps, children: buttonInner }));
620
639
  });
640
+ const RegularButton = JSX(({ className = '', href, rel, target, ariaLabel, version, rounded, onClick, children }) => (jsx("a", { className: getRegularButtonClasses({ className, version, rounded }), href: href, rel: rel, target: target, "aria-label": ariaLabel, role: href ? 'link' : 'button', onClick: onClick, children: children })));
641
+ const DisabledButton = JSX(({ className, ariaLabel, version, rounded, children }) => (jsx("div", { role: "button", "aria-disabled": "true", "aria-label": ariaLabel, tabIndex: -1, className: getDisabledButtonClasses({ className, rounded, version }), children: children })));
621
642
 
622
- const ButtonSection = JSX(({ context, className = '', buttons }) => {
623
- const { handlerDecorator } = context;
624
- const router = context.useRouter();
625
- return buttons && buttons?.length ? (jsx("div", { className: className, children: buttons.map((button, index) => renderButton({ button: useLink({ router, handlerDecorator }, button), index })) })) : null;
626
- });
643
+ const ButtonSection = JSX(({ className = '', buttons }) => buttons && buttons?.length ? (jsx("div", { className: className, children: buttons.map((button, index) => renderButton({ button, index })) })) : null);
627
644
  function renderButton({ button, buttonClassName, index }) {
628
645
  const { icon, iconRight, version, ...rest } = button;
629
646
  const iconVersion = version === 'secondary' ? 'color' : 'white';
@@ -704,17 +721,17 @@
704
721
  XS: 'text-xs-light',
705
722
  };
706
723
 
707
- const Headline = JSX(({ bgColorHeadline = 'transparent', align = 'center', className = '', title, description, headlineVersion = 'XL', as, ...rest }) => {
724
+ const Headline = JSX(({ className = '', bgColorHeadline = 'transparent', align = 'center', title, description, headlineVersion = 'XL', as, ...rest }) => {
708
725
  const STYLE_MAPS = HEADLINE_BLOCK_STYLE_MAPS[bgColorHeadline];
709
726
  const SIZE_MAPS = HEADLINE_VERSION[headlineVersion];
710
727
  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} ${AlignText[align]}`, title: title })) : null, description ? (jsx(Description, { className: `${SIZE_MAPS.descriptionFont} ${STYLE_MAPS.text} ${AlignText[align]}`, description: description })) : null] }));
711
728
  });
712
729
 
713
730
  const Bonus = JSX((props) => {
714
- const { context, className = '', title, description, bonusItems, ...rest } = props;
715
- return (jsx(BlockWrapper, { className: `font-sans bg-white p-[50px] pb-9 ${className}`, context: context, ...rest, children: jsxs("div", { className: "container", children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: "M", align: "center" }), jsx("div", { className: "flex flex-wrap w-full mt-9", children: bonusItems?.length
731
+ const { className = '', title, description, bonusItems, ...rest } = props;
732
+ return (jsx(BlockWrapper, { className: `font-sans bg-white p-[50px] pb-9 ${className}`, ...rest, children: jsxs("div", { className: "container", children: [jsx(Headline, { className: "!p-0", title: title, description: description, headlineVersion: "M", align: "center", ...rest }), jsx("div", { className: "flex flex-wrap w-full mt-9", children: bonusItems?.length
716
733
  ? bonusItems.map((_, i) => {
717
- return (jsx("div", { className: "flex-grow w-[49%] border border-gray p-9 mb-3 mx-2 even:mr-0 odd:ml-0 last:odd:mx-0", children: jsxs("div", { className: "flex justify-between w-full", children: [jsxs("div", { className: "flex flex-col justify-between mr-4", children: [jsxs("div", { children: [jsx("div", { className: "text-h4", children: _.title }), jsx("div", { className: "text-xl-light mt-2 max-w-[488px]", children: _.description })] }), _?.buttons?.length ? (jsx(ButtonSection, { context: context, buttons: _?.buttons })) : null] }), _.bonusItemContent?.bonusType
734
+ return (jsx("div", { className: "flex-grow w-[49%] border border-gray p-9 mb-3 mx-2 even:mr-0 odd:ml-0 last:odd:mx-0", children: jsxs("div", { className: "flex justify-between w-full", children: [jsxs("div", { className: "flex flex-col justify-between mr-4", children: [jsxs("div", { children: [jsx("div", { className: "text-h4", children: _.title }), jsx("div", { className: "text-xl-light mt-2 max-w-[488px]", children: _.description })] }), _?.buttons?.length ? jsx(ButtonSection, { buttons: _?.buttons }) : null] }), _.bonusItemContent?.bonusType
718
735
  ? renderBonusItemContent(_.bonusItemContent)
719
736
  : null] }) }, String(i)));
720
737
  })
@@ -726,12 +743,23 @@
726
743
  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] }));
727
744
  const renderBonusImage = (_) => _.image ? (jsx(ImgInner, { className: `w-[50px] h-[50px] min-w-[50px] p-3 rounded-full`, image: _.image })) : null;
728
745
 
729
- 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] })));
746
+ const BonusBenefitsBlock = JSX(({ 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}`, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: subtitle, headlineVersion: "M", align: "center", ...rest }), bonusBenefits?.length ? (jsx("div", { className: `grid gap-1 mt-8 ${getElementsColsValue(columnsCount)}`, children: bonusBenefits.map(renderBonusBenefit) })) : null] })));
730
747
  const renderBonusBenefit = (bonusBenefit, i) => {
731
748
  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)));
732
749
  };
733
750
  const getElementsColsValue = (colValue) => colValue === '4' ? 'grid-cols-4' : 'grid-cols-5';
734
751
 
752
+ const BusinessCard = JSX((props) => {
753
+ const { title, image, cardItems, button } = props;
754
+ return (jsxs("div", { className: "border-color-stroke border p-9 w-1/2", children: [image ? (jsxs("div", { className: "flex justify-center", children: [image?.src ? jsx(ImgInner, { className: "mb-5", image: image }) : null, image?.icon ? jsx(ImgInner, { image: image, asSVG: true }) : null] })) : null, title ? jsx(Heading, { headingType: "h4", title: title, className: "mb-6" }) : null, cardItems?.length ? jsx("ul", { children: cardItems.map((_, i) => renderItem(_, String(i))) }) : null, button?.text ? renderButton({ button, buttonClassName: 'mt-6' }) : null] }));
755
+ });
756
+ const renderItem = (item, key) => {
757
+ const { icon, text } = item;
758
+ return (jsxs("li", { className: "flex items-center gap-3.5 mb-3 last:mb-0", children: [icon?.icon ? (jsx(ImgInner, { className: `w-12 h-12 min-w-12 p-3 rounded-full bg-main-divider`, image: icon.icon, asSVG: true })) : null, icon?.src ? jsx(ImgInner, { image: icon.icon }) : null, jsx("span", { className: "text-xl-light", children: text })] }, key));
759
+ };
760
+
761
+ const BusinessBlock = JSX(({ className = '', title, cards, ...rest }) => (jsxs(BlockWrapper, { className: `font-sans bg-white p-[50px] pb-9 ${className}`, ...rest, children: [jsx(Heading, { headingType: "h3", title: title, className: "text-center mb-8" }), jsx("div", { className: "flex gap-5", children: cards?.length ? cards.map((_, i) => jsx(BusinessCard, { ..._ }, String(i))) : null })] })));
762
+
735
763
  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
736
764
  ? 'bg-secondary-light text-secondary-text'
737
765
  : '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 }) })));
@@ -785,8 +813,8 @@
785
813
 
786
814
  const Rate = JSX(({ rate, title = 'Ставка', unit, rateBlockClassName }) => (jsxs("div", { children: [jsx("div", { className: "text-l-light text-secondary-text", children: title }), jsxs("div", { className: "flex justify-start", children: [jsx("span", { className: `block gradient-color-text font-mohave text-title-huge pr-6 -mt-4 ${rateBlockClassName}`, children: String(rate).replace('.', ',') }), unit ? jsx("span", { className: "gradient-color-text text-[65px] leading-[75px]", children: unit }) : ''] })] })));
787
815
 
788
- function renderButtonSection(context, buttons) {
789
- return buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex flex-col mt-7 gap-2" })) : null;
816
+ function renderButtonSection(buttons) {
817
+ return buttons?.length ? (jsx(ButtonSection, { buttons: buttons, className: "flex flex-col mt-7 gap-2" })) : null;
790
818
  }
791
819
 
792
820
  const renderFootnote = (text) => text ? jsx("p", { className: "text-s-light text-secondary-text mt-7", children: text }) : null;
@@ -933,7 +961,7 @@
933
961
  };
934
962
  };
935
963
 
936
- const BonusCalculatorForm = JSX(({ context, className = '', sourceBookDir = '', buttons, footnote }) => {
964
+ const BonusCalculatorForm = JSX(({ className = '', sourceBookDir = '', buttons, footnote }) => {
937
965
  const [travelExpenseValue, setTravelExpenseValue] = useState(DEFAULT_TRAVEL_MIN_SUM);
938
966
  const [restExpenseValue, setRestExpenseValue] = useState(DEFAULT_REST_MIN_SUM);
939
967
  const userInputParams = {
@@ -954,7 +982,7 @@
954
982
  moneyValue: restExpenseValue,
955
983
  step: 500,
956
984
  isShowItems: false,
957
- }, setRestExpenseValue)] }), jsx("div", { children: monthBonus >= 0 ? (jsx(Rate, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u043C\u0435\u0441\u044F\u0446", rate: monthBonus, rateBlockClassName: "tracking-[-14px]" })) : null }), jsxs("div", { className: "w-full max-w-[350px]", children: [yearBonus >= 0 ? jsx(CalculatorValueBlock, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u0433\u043E\u0434", value: yearBonus }) : null, renderButtonSection(context, buttons), renderFootnote(footnote)] })] }));
985
+ }, setRestExpenseValue)] }), jsx("div", { children: monthBonus >= 0 ? (jsx(Rate, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u043C\u0435\u0441\u044F\u0446", rate: monthBonus, rateBlockClassName: "tracking-[-14px]" })) : null }), jsxs("div", { className: "w-full max-w-[350px]", children: [yearBonus >= 0 ? jsx(CalculatorValueBlock, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u0433\u043E\u0434", value: yearBonus }) : null, renderButtonSection(buttons), renderFootnote(footnote)] })] }));
958
986
  });
959
987
 
960
988
  const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
@@ -973,11 +1001,11 @@
973
1001
  return (jsx("div", { className: className, children: jsxs("label", { className: "flex items-center relative cursor-pointer group", children: [jsx("input", { className: `peer appearance-none w-5 h-5 border-solid cursor-pointer group-hover:border-checkbox-hover
974
1002
  ${isRadio ? 'rounded-full border-2' : 'rounded checked:bg-primary-main border'}
975
1003
  ${checked ? 'border-black' : 'border-main-stroke'}
976
- checked:border-primary-main m-0`, type: "checkbox", onChange: (e) => {
977
- onChange(e.target.checked);
978
- }, checked: checked }), isRadio ? (jsx("div", { className: "left-1 w-3 h-3 rounded-full bg-primary-main hidden absolute peer-checked:block" })) : (jsx(SVG, { paths: CHECK_PATHS, className: "hidden absolute left-1 ml-px peer-checked:block", width: "11", height: "9", fill: "white", viewBox: "0 0 11 9" })), text ? jsx("span", { className: "font-sans ml-3 text-l-light", children: text }) : null] }) }));
1004
+ checked:border-primary-main m-0`, type: "checkbox", onChange: (e) => onChange && onChange(e.target.checked), checked: checked }), isRadio ? (jsx("div", { className: "left-1 w-3 h-3 rounded-full bg-primary-main hidden absolute peer-checked:block" })) : (jsx(SVG, { paths: CHECK_PATHS, className: "hidden absolute left-1 ml-px peer-checked:block", width: "11", height: "9", fill: "white", viewBox: "0 0 11 9" })), text ? jsx("span", { className: "font-sans ml-3 text-l-light", children: text }) : null] }) }));
979
1005
  });
980
1006
 
1007
+ const RadioButtonGroup = JSX(({ items, checkedItem, onChange: onChangeCheckedItem }) => (jsx("div", { className: "flex flex-col gap-3", children: items?.map(({ id, text }) => (jsx(Checkbox, { isRadio: true, text: text, checked: checkedItem === id, onChange: () => onChangeCheckedItem && onChangeCheckedItem(id) }, String(id)))) })));
1008
+
981
1009
  const STEP_MONTHS = 1;
982
1010
  function renderMonthsInput(title, params, callback) {
983
1011
  const { minMonths, maxMonths, monthsValue } = params;
@@ -988,14 +1016,6 @@
988
1016
  return (jsx(InputRange, { className: "mt-7", title: title, items: [`От ${monthText(minMonths)}`, `До ${monthText(maxMonths)}`], min: minMonths, max: maxMonths, step: STEP_MONTHS, value: clamp(monthsValue, minMonths, maxMonths), onChange: callback }));
989
1017
  }
990
1018
 
991
- const RadioButtonGroup = JSX(({ items, checkedItem, onChangeCheckedItem }) => {
992
- 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))) }));
993
- });
994
-
995
- function renderPaymentTypeSelector({ onChange, ...rest }) {
996
- return jsx(RadioButtonGroup, { onChangeCheckedItem: onChange, ...rest });
997
- }
998
-
999
1019
  /**
1000
1020
  * Формулы расчёта аннуитетных и дифференцированных платежей:
1001
1021
  * https://finuslugi.ru/potrebitelskie_kredity/stat_annuitetnye_i_differentsirovannye_platezhi
@@ -1042,7 +1062,7 @@
1042
1062
  text: 'Дифференцированный',
1043
1063
  },
1044
1064
  ];
1045
- const CreditCalculatorForm = JSX(({ context, className = '', sourceBookDir, buttons, footnote }) => {
1065
+ const CreditCalculatorForm = JSX(({ className = '', sourceBookDir, buttons, footnote }) => {
1046
1066
  const [isAnnuity, toggleIsAnnuity] = useState(false);
1047
1067
  const [isInsurance, toggleIsInsurance] = useState(true);
1048
1068
  const [isSalaryClient, toggleIsSalaryClient] = useState(false);
@@ -1058,12 +1078,7 @@
1058
1078
  monthsValue,
1059
1079
  };
1060
1080
  const calculatorParams = useCreditCalculatorParams(userInputParams, sourceBookDir);
1061
- 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({
1062
- context,
1063
- items: paymentTypeItems,
1064
- checkedItem: isAnnuity ? ANNUITY : DIFFERENTIAL,
1065
- onChange: (text) => toggleIsAnnuity(text === ANNUITY),
1066
- }), renderButtonSection(context, buttons), renderFootnote(footnote)] })] }));
1081
+ 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" }), jsx(RadioButtonGroup, { items: paymentTypeItems, checkedItem: isAnnuity ? ANNUITY : DIFFERENTIAL, onChange: (text) => toggleIsAnnuity(text === ANNUITY) }), renderButtonSection(buttons), renderFootnote(footnote)] })] }));
1067
1082
  });
1068
1083
 
1069
1084
  const EVERY_MONTH = 'everyMonth';
@@ -1078,7 +1093,7 @@
1078
1093
  text: 'В конце срока',
1079
1094
  },
1080
1095
  ];
1081
- const DepositCalculatorForm = JSX(({ context, className = '', rate, buttons, footnote }) => {
1096
+ const DepositCalculatorForm = JSX(({ className = '', rate, buttons, footnote }) => {
1082
1097
  const [moneyValue, setMoneyValue] = useState(DEFAULT_SUM);
1083
1098
  const [monthsValue, setMonthsValue] = useState(DEFAULT_MONTHS);
1084
1099
  const [isEveryMonth, toggleIsEveryMonth] = useState(false);
@@ -1092,12 +1107,7 @@
1092
1107
  minMonths: DEFAULT_MIN_MONTHS,
1093
1108
  maxMonths: DEFAULT_MAX_MONTHS,
1094
1109
  monthsValue,
1095
- }, 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({
1096
- context,
1097
- items: depositTypeItems,
1098
- checkedItem: isEveryMonth ? EVERY_MONTH : AT_END_TERM,
1099
- onChange: (text) => toggleIsEveryMonth(text === EVERY_MONTH),
1100
- }), renderButtonSection(context, buttons), renderFootnote(footnote)] })] }));
1110
+ }, 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" })) , jsx(RadioButtonGroup, { items: depositTypeItems, checkedItem: isEveryMonth ? EVERY_MONTH : AT_END_TERM, onChange: (text) => toggleIsEveryMonth(text === EVERY_MONTH) }), renderButtonSection(buttons), renderFootnote(footnote)] })] }));
1101
1111
  });
1102
1112
 
1103
1113
  const EmbeddableCalcBlocks = {
@@ -1106,16 +1116,16 @@
1106
1116
  BonusCalculatorForm,
1107
1117
  };
1108
1118
 
1109
- const renderCalculatorBlock = ({ context, className }) => (block, i) => {
1119
+ const renderCalculatorBlock = (block, i) => {
1110
1120
  const type = block?.calcType;
1111
1121
  if (!type || !(type in EmbeddableCalcBlocks)) {
1112
1122
  return null;
1113
1123
  }
1114
1124
  const EmbeddedBlock = EmbeddableCalcBlocks[type];
1115
- return (jsx("section", { className: `box-border relative bg-white flex shrink-0 self-start basis-full ${className}`, role: "listitem", children: jsxs("div", { className: "box-border p-9 w-full", children: [block?.title ? jsx(Heading, { className: "text-center mb-6", title: block.title }) : null, jsx(EmbeddedBlock, { context: context, ...block, className: "flex justify-between" })] }) }, String(i)));
1125
+ return (jsx("section", { className: "box-border relative bg-white flex shrink-0 self-start basis-full", role: "listitem", children: jsxs("div", { className: "box-border p-9 w-full", children: [block?.title ? jsx(Heading, { className: "text-center mb-6", title: block.title }) : null, jsx(EmbeddedBlock, { ...block, className: "flex justify-between" })] }) }, String(i)));
1116
1126
  };
1117
1127
 
1118
- const Calculator = JSX(({ className = '', context, calculatorTabs = [], ...rest }) => {
1128
+ const Calculator = JSX(({ className = '', calculatorTabs = [], ...rest }) => {
1119
1129
  const tabsNav = calculatorTabs.map((_) => _.nav || {});
1120
1130
  const calculatorBlocks = calculatorTabs.map(({ calculatorBlock }) => calculatorBlock || {});
1121
1131
  const [activeSlideIndex, setActiveSlideIndex] = useState(0);
@@ -1125,16 +1135,14 @@
1125
1135
  const isGalleryScrollAvailable = calculatorTabs?.length > 3;
1126
1136
  const showNextButton = isGalleryScrollAvailable && calculatorTabs?.length > tabsShift + 3;
1127
1137
  const showPrevButton = tabsShift > 0;
1128
- return (jsxs(BlockWrapper, { context: context, className: `box-border overflow-hidden relative font-sans w-100 text-primary-text bg-white ${className}`, ...rest, children: [jsxs("div", { className: "bg-white", children: [tabsNav.length > 1
1138
+ return (jsxs(BlockWrapper, { className: `box-border overflow-hidden relative font-sans w-100 text-primary-text bg-white ${className}`, ...rest, children: [jsxs("div", { className: "bg-white", children: [tabsNav.length > 1
1129
1139
  ? renderTabs({ tabsShift, tabsNav, activeSlideIndex, setActiveSlideIndex })
1130
1140
  : null, renderArrows({
1131
1141
  handler: [handlePrevClick, handleNextClick],
1132
1142
  isShown: [showPrevButton, showNextButton],
1133
1143
  btnClass: ['left-3', 'right-3'],
1134
1144
  className: 'top-8',
1135
- })] }), jsx("div", { className: "flex", style: { transform: `translateX(-${activeSlideIndex}00%)` }, role: "list", children: calculatorBlocks?.length
1136
- ? calculatorBlocks.map(renderCalculatorBlock({ context, className }))
1137
- : null })] }));
1145
+ })] }), jsx("div", { className: "flex", style: { transform: `translateX(-${activeSlideIndex}00%)` }, role: "list", children: calculatorBlocks?.length ? calculatorBlocks.map(renderCalculatorBlock) : null })] }));
1138
1146
  });
1139
1147
  function renderNavButton$2({ tab, i, activeSlideIndex, onClick }) {
1140
1148
  const isActiveBtn = i === activeSlideIndex;
@@ -1224,61 +1232,56 @@
1224
1232
  const DEFAULT_TITLE = 'Укажите сумму перевода';
1225
1233
  const DEFAULT_LABEL = 'Сумма перевода';
1226
1234
  const DEFAULT_PLACEHOLDER = '1500';
1227
- const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, context, ...rest }) => {
1228
- const router = context.useRouter();
1229
- const { handlerDecorator } = context;
1235
+ const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, ...rest }) => {
1230
1236
  const [value, setValue] = useState('');
1231
1237
  const isDisabled = !Number(getSanitizedValue(value));
1232
1238
  const buttonStyle = isDisabled
1233
1239
  ? getDisabledButtonClasses({ version: button?.version })
1234
1240
  : getRegularButtonClasses({ className: 'text-white', version: button?.version });
1235
- 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] })] }));
1241
+ const link = useLink();
1242
+ return (jsxs(BlockWrapper, { className: `p-[50px] flex flex-col items-center font-sans bg-white ${className}`, ...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, ...link(button), children: button.text })) : null] })] }));
1236
1243
  });
1237
1244
 
1238
1245
  const cardStyleMap$1 = {
1239
1246
  black: 'bg-black',
1240
1247
  white: 'bg-white',
1241
1248
  };
1242
- const CatalogCard = JSX(({ className = '', title, description, image, price, button, colors }) => {
1243
- 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-s-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 ? renderButton({ button, buttonClassName: 'mt-5 w-full' }) : null] }));
1244
- });
1249
+ const CatalogCard = JSX(({ className = '', title, description, image, price, button, colors }) => (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-s-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 ? renderButton({ button, buttonClassName: 'mt-5 w-full' }) : null] })));
1245
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)));
1246
1251
 
1247
1252
  const BLUR_BLOCK_CLASSES$2 = 'absolute top-0 bottom-0 w-[84px]';
1248
1253
  const CARD_FULL_VIEW_COUNT$2 = 3;
1249
1254
  const CARD_SHIFT$1 = 430;
1250
- const Catalog = JSX(({ context, cards = [], className = '', title, description, ...rest }) => {
1255
+ const Catalog = JSX(({ cards = [], className = '', title, description, ...rest }) => {
1251
1256
  const [activeCardIndex, setActiveCardIndex] = useState(0);
1252
- return (jsxs(BlockWrapper, { context: context, className: `bg-white relative font-sans p-[50px] overflow-hidden text-center ${className}`, ...rest, children: [jsx(Headline, { context: context, className: "!p-0", title: title, description: description, headlineVersion: "M", align: "center" }), jsx("div", { className: "flex duration-1000 gap-3.5 mt-8", style: { transform: `translateX(-${activeCardIndex * CARD_SHIFT$1}px)` }, role: "list", children: cards?.length ? cards.map(renderCatalogCard(context)) : null }), renderNavButtons$2({
1253
- cardsCount: cards.length,
1254
- activeCardIndex,
1255
- setActiveCardIndex,
1257
+ const handleNextClick = useCallback(() => setActiveCardIndex((_) => _ + 1), []);
1258
+ const handlePrevClick = useCallback(() => setActiveCardIndex((_) => _ - 1), []);
1259
+ const isUseSlider = cards.length > CARD_FULL_VIEW_COUNT$2;
1260
+ const showNextButton = isUseSlider && cards.length - activeCardIndex > CARD_FULL_VIEW_COUNT$2;
1261
+ const showPrevButton = isUseSlider && activeCardIndex > 0;
1262
+ return (jsxs(BlockWrapper, { className: `bg-white relative font-sans p-[50px] overflow-hidden text-center ${className}`, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: description, headlineVersion: "M", align: "center", ...rest }), jsx("div", { className: "flex duration-1000 gap-3.5 mt-8", style: { transform: `translateX(-${activeCardIndex * CARD_SHIFT$1}px)` }, role: "list", children: cards?.length ? cards.map((card, i) => jsx(CatalogCard, { ...card }, String(i))) : null }), renderArrows({
1263
+ handler: [handlePrevClick, handleNextClick],
1264
+ isShown: [showPrevButton, showNextButton],
1265
+ btnClass: ['left-8', 'right-8'],
1266
+ className: 'top-1/2 z-10 mt-6',
1256
1267
  }), jsx("div", { className: `${BLUR_BLOCK_CLASSES$2} left-0 bg-opacity-from-white` }), jsx("div", { className: `${BLUR_BLOCK_CLASSES$2} right-0 bg-opacity-to-white` })] }));
1257
1268
  });
1258
- const renderCatalogCard = (context) => (card, i) => {
1259
- return jsx(CatalogCard, { context: context, ...card }, String(i));
1260
- };
1261
- const renderNavButtons$2 = ({ cardsCount, activeCardIndex, setActiveCardIndex, }) => {
1262
- const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
1263
- const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
1264
- const isUseSlider = cardsCount > CARD_FULL_VIEW_COUNT$2;
1265
- const showNextButton = isUseSlider && cardsCount - activeCardIndex > CARD_FULL_VIEW_COUNT$2;
1266
- const showPrevButton = isUseSlider && activeCardIndex > 0;
1267
- return renderArrows({
1268
- handler: [handlePrevClick, handleNextClick],
1269
- isShown: [showPrevButton, showNextButton],
1270
- btnClass: ['left-8', 'right-8'],
1271
- className: 'top-1/2 z-10 mt-6',
1272
- });
1273
- };
1274
1269
 
1275
- const useTableArrowScrollControl = ({ columnsLength, colsLengthForScroll, activeCardIndex, setActiveCardIndex, }) => {
1276
- const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
1277
- const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
1270
+ const useTableArrowScrollControl = ({ columnsLength, colsLengthForScroll, }) => {
1271
+ const [activeCardIndex, setActiveCardIndex] = useState(0);
1272
+ const onNextClick = useCallback(() => setActiveCardIndex((_) => _ + 1), []);
1273
+ const onPrevClick = useCallback(() => setActiveCardIndex((_) => _ - 1), []);
1278
1274
  const isScrollAvailable = columnsLength > colsLengthForScroll;
1279
1275
  const showNextButton = isScrollAvailable && columnsLength - activeCardIndex > colsLengthForScroll;
1280
1276
  const showPrevButton = Boolean(isScrollAvailable && activeCardIndex > 0);
1281
- return { handleNextClick, handlePrevClick, isScrollAvailable, showNextButton, showPrevButton };
1277
+ return {
1278
+ activeCardIndex,
1279
+ onNextClick,
1280
+ onPrevClick,
1281
+ isScrollAvailable,
1282
+ showNextButton,
1283
+ showPrevButton,
1284
+ };
1282
1285
  };
1283
1286
 
1284
1287
  const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
@@ -1298,13 +1301,11 @@
1298
1301
 
1299
1302
  const TableRowContainer = JSX(({ children }) => (jsx("div", { className: "self-start flex flex-col", role: "row", children: jsx("div", { className: "flex", children: children }) })));
1300
1303
 
1301
- const ComparisonTableColumnHeaders = JSX(({ colHeaders, activeCardIndex, router, handlerDecorator }) => {
1302
- return (jsxs(TableRowContainer, { children: [jsx("div", { className: FIRST_CELL_CLASSES$1, role: "columnheader" }), jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, columnWidth: COLUMN_WIDTH$2, children: colHeaders.map((header, i) => (jsx(HeaderCell, { ...header, link: header.link && useLink({ router, handlerDecorator }, header.link) }, String(i)))) })] }));
1303
- });
1304
+ const ComparisonTableColumnHeaders = JSX(({ colHeaders, activeCardIndex }) => (jsxs(TableRowContainer, { children: [jsx("div", { className: FIRST_CELL_CLASSES$1, role: "columnheader" }), jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, columnWidth: COLUMN_WIDTH$2, children: colHeaders.map((header, i) => (jsx(HeaderCell, { ...header }, String(i)))) })] })));
1304
1305
 
1305
- const TableArrowScrollControl = JSX(({ isScrollAvailable, handleNextClick, handlePrevClick, showNextButton, showPrevButton }) => {
1306
+ const TableArrowScrollControl = JSX(({ isScrollAvailable, onNextClick, onPrevClick, showNextButton, showPrevButton }) => {
1306
1307
  return isScrollAvailable ? (jsx("div", { children: renderArrows({
1307
- handler: [handlePrevClick, handleNextClick],
1308
+ handler: [onPrevClick, onNextClick],
1308
1309
  isShown: [showPrevButton, showNextButton],
1309
1310
  btnClass: ['top-[108px]', 'top-11'],
1310
1311
  className: 'right-7',
@@ -1324,13 +1325,11 @@
1324
1325
  const titleStyle = (isLastRow = false) => `text-s py-7 ${DIVIDER_CLASSES$1} ${FIRST_CELL_CLASSES$1} ${isLastRow ? 'border-b-0' : 'border-solid'}`;
1325
1326
  const TableRow = JSX(({ row: { header, data }, activeCardIndex, isColoredFirstColumn, isFirstRow, isLastRow }) => (jsxs(TableRowContainer, { children: [header?.title ? jsx("div", { className: titleStyle(isLastRow), children: header.title }) : null, data?.length ? (jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, columnWidth: COLUMN_WIDTH$2, children: data.map((cell, i) => (jsx(TableCell, { cell: cell, isFirstRow: isFirstRow, isLastRow: isLastRow, isFillGradient: isColoredFirstColumn && i === 0 }, String(i)))) })) : null] })));
1326
1327
 
1327
- const ComparisonTableRows = JSX(({ rowData, activeCardIndex, isColoredFirstColumn, ...tableArrowScrollProps }) => {
1328
- return (jsxs("div", { className: "relative", children: [rowData.map((row, i, { length }) => (jsx(TableRow, { row: row, isFirstRow: i === 0, isLastRow: i + 1 === length, activeCardIndex: activeCardIndex, isColoredFirstColumn: isColoredFirstColumn }, String(i)))), jsx(TableArrowScrollControl, { ...tableArrowScrollProps })] }));
1328
+ const ComparisonTableRows = JSX(({ rowData, isColoredFirstColumn, ...tableArrowScrollProps }) => {
1329
+ return (jsxs("div", { className: "relative", children: [rowData.map((row, i, { length }) => (jsx(TableRow, { row: row, isFirstRow: i === 0, isLastRow: i + 1 === length, activeCardIndex: tableArrowScrollProps.activeCardIndex, isColoredFirstColumn: isColoredFirstColumn }, String(i)))), jsx(TableArrowScrollControl, { ...tableArrowScrollProps })] }));
1329
1330
  });
1330
1331
 
1331
- const ComparisonTableBody = JSX(({ context, columns, rowHeaders, isShowAllRow, visibleRowLength, isColoredFirstColumn }) => {
1332
- const router = context.useRouter();
1333
- const { handlerDecorator } = context;
1332
+ const ComparisonTableBody = JSX(({ columns, rowHeaders, isShowAllRow, visibleRowLength, isColoredFirstColumn }) => {
1334
1333
  const colHeaders = columns?.map(({ header }) => header || {});
1335
1334
  const colData = columns?.map(({ data }) => data) || [];
1336
1335
  const rowData = rowHeaders
@@ -1339,34 +1338,29 @@
1339
1338
  data: colData.map((col) => col?.[i] || [{}]),
1340
1339
  }))
1341
1340
  .slice(0, isShowAllRow ? rowHeaders.length : visibleRowLength);
1342
- const [activeCardIndex, setActiveCardIndex] = useState(0);
1343
1341
  const tableArrowScrollProps = useTableArrowScrollControl({
1344
1342
  columnsLength: colData.length,
1345
1343
  colsLengthForScroll: COLS_LENGTH_FOR_SCROLL$1,
1346
- activeCardIndex,
1347
- setActiveCardIndex,
1348
1344
  });
1349
- const { isScrollAvailable } = tableArrowScrollProps;
1350
- return (jsxs("div", { children: [jsxs("div", { role: "table", children: [colHeaders?.length ? (jsx(ComparisonTableColumnHeaders, { colHeaders: colHeaders, activeCardIndex: activeCardIndex, router: router, handlerDecorator: handlerDecorator })) : null, rowData?.length ? (jsx(ComparisonTableRows, { rowData: rowData, activeCardIndex: activeCardIndex, isColoredFirstColumn: isColoredFirstColumn, ...tableArrowScrollProps })) : null] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[84px] bg-opacity-to-white" })) : null] }));
1345
+ const { activeCardIndex, isScrollAvailable } = tableArrowScrollProps;
1346
+ return (jsxs("div", { children: [jsxs("div", { role: "table", children: [colHeaders?.length ? (jsx(ComparisonTableColumnHeaders, { colHeaders: colHeaders, activeCardIndex: activeCardIndex })) : null, rowData?.length ? (jsx(ComparisonTableRows, { rowData: rowData, isColoredFirstColumn: isColoredFirstColumn, ...tableArrowScrollProps })) : null] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-[84px] bg-opacity-to-white" })) : null] }));
1351
1347
  });
1352
1348
 
1353
- const ComparisonTable = JSX(({ className = '', context, title, rowHeaders, columns, visibleRowLength = 0, isColoredFirstColumn = false, ...rest }) => {
1349
+ const ComparisonTable = JSX(({ className = '', title, rowHeaders, columns, visibleRowLength = 0, isColoredFirstColumn = false, ...rest }) => {
1354
1350
  const [isShowAllRow, setIsShowAllRow] = useState(!visibleRowLength);
1355
- const showToggle = () => setIsShowAllRow(!isShowAllRow);
1356
- return (jsxs(BlockWrapper, { context: context, className: `bg-white font-sans py-[50px] pl-[50px] overflow-hidden text-primary-text relative ${className}`, ...rest, children: [jsx(Heading, { headingType: "h2", className: "max-w-[47rem] text-center mb-9 mx-auto", title: title }), jsx(ComparisonTableBody, { context: context, columns: columns, rowHeaders: rowHeaders, isShowAllRow: isShowAllRow, isColoredFirstColumn: isColoredFirstColumn, visibleRowLength: visibleRowLength }), visibleRowLength
1351
+ const showToggle = useCallback(() => setIsShowAllRow((_) => !_), []);
1352
+ return (jsxs(BlockWrapper, { className: `bg-white font-sans py-[50px] pl-[50px] overflow-hidden text-primary-text relative ${className}`, ...rest, children: [jsx(Heading, { headingType: "h2", className: "max-w-[47rem] text-center mb-9 mx-auto", title: title }), jsx(ComparisonTableBody, { columns: columns, rowHeaders: rowHeaders, isShowAllRow: isShowAllRow, isColoredFirstColumn: isColoredFirstColumn, visibleRowLength: visibleRowLength }), visibleRowLength
1357
1353
  ? renderShowMoreToggleButton({ isShowAllRow, onClick: showToggle })
1358
1354
  : null] }));
1359
1355
  });
1360
- const renderShowMoreToggleButton = ({ isShowAllRow, onClick, }) => {
1361
- return (jsx("div", { className: "pr-[50px]", children: jsxs("div", { className: "flex w-full", children: [jsx("div", { className: FIRST_CELL_CLASSES$1 }), jsx("button", { onClick: onClick, className: "mt-5 flex-1 border-main-stroke border-solid border text-primary-text bg-white hover:border-primary-main hover:text-primary-main", children: jsx("div", { className: "font-sans text-xs-light font-medium py-3", children: !isShowAllRow ? 'Показать все параметры' : 'Скрыть' }) })] }) }));
1362
- };
1356
+ const renderShowMoreToggleButton = ({ isShowAllRow, onClick, }) => (jsx("div", { className: "pr-[50px]", children: jsxs("div", { className: "flex w-full", children: [jsx("div", { className: FIRST_CELL_CLASSES$1 }), jsx("button", { onClick: onClick, className: "mt-5 flex-1 border-main-stroke border-solid border text-primary-text bg-white hover:border-primary-main hover:text-primary-main", children: jsx("div", { className: "font-sans text-xs-light font-medium py-3", children: !isShowAllRow ? 'Показать все параметры' : 'Скрыть' }) })] }) }));
1363
1357
 
1364
1358
  const contactsBlockStyleMap = {
1365
1359
  primary: 'bg-white',
1366
1360
  secondary: 'bg-primary-main text-white',
1367
1361
  };
1368
- const ContactsBlock = JSX(({ className = '', contacts, context, info, version = 'secondary', ...rest }) => {
1369
- return (jsxs(BlockWrapper, { context: context, className: `${contactsBlockStyleMap[version]} flex p-12 ${className}`, ...rest, children: [info ? renderInfo(info) : null, contacts ? renderContacts(contacts) : null] }));
1362
+ const ContactsBlock = JSX(({ className = '', contacts, info, version = 'secondary', ...rest }) => {
1363
+ return (jsxs(BlockWrapper, { className: `${contactsBlockStyleMap[version]} flex p-12 ${className}`, ...rest, children: [info ? renderInfo(info) : null, contacts ? renderContacts(contacts) : null] }));
1370
1364
  });
1371
1365
  const renderInfo = (info) => (jsx("div", { className: "flex grow basis-0 pr-11", children: info.map(({ title, description, button }, index) => (jsxs("div", { className: "grow basis-0 pr-11 last:pr-0", children: [jsx(Heading, { as: "h5", headingType: "h5", title: title, className: "pb-2.5" }), jsx(Description, { className: "text-l-light pb-6", description: description }), button ? jsx(Button, { ...button }) : null] }, String(index)))) }));
1372
1366
  const renderContacts = (contacts) => (jsx("div", { className: "flex grow basis-0", children: contacts.map((contactsColumn, index) => renderContactsColumn({ contactsColumn, index })) }));
@@ -1381,15 +1375,9 @@
1381
1375
  }
1382
1376
  return null;
1383
1377
  };
1384
- const ErrorBlock = JSX(({ context, className = '', title, subtitle, error, button }) => {
1385
- const { useRouter, handlerDecorator } = context;
1386
- const router = useRouter();
1387
- return (jsxs("section", { className: `flex flex-col justify-center items-center mt-12 ${className}`, children: [jsx("div", { className: "flex justify-center py-20", children: renderErrorContent(error) }), title ? jsx(Heading, { headingType: "h1", className: "text-left mb-4", title: title }) : null, subtitle ? (jsx("div", { className: "font-sans text-xl-light mb-7 max-w-[613px] text-center", children: subtitle })) : null, button?.text ? (jsx(Button, { className: "py-4 px-9", version: button?.version, ...useLink({ router, handlerDecorator }, button), children: button.text })) : null] }));
1388
- });
1378
+ const ErrorBlock = JSX(({ className = '', title, subtitle, error, button }) => (jsxs("section", { className: `flex flex-col justify-center items-center mt-12 ${className}`, children: [jsx("div", { className: "flex justify-center py-20", children: renderErrorContent(error) }), title ? jsx(Heading, { headingType: "h1", className: "text-left mb-4", title: title }) : null, subtitle ? (jsx("div", { className: "font-sans text-xl-light mb-7 max-w-[613px] text-center", children: subtitle })) : null, button?.text ? (jsx(Button, { className: "py-4 px-9", version: button?.version, ...button, children: button.text })) : null] })));
1389
1379
 
1390
- const BaseTile = JSX(({ className = '', title = '', children, buttons, image }) => {
1391
- 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] })] }));
1392
- });
1380
+ const BaseTile = JSX(({ className = '', title = '', buttons, image, children }) => (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] })] })));
1393
1381
 
1394
1382
  var Currency;
1395
1383
  (function (Currency) {
@@ -1501,9 +1489,7 @@
1501
1489
  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] }));
1502
1490
  }
1503
1491
 
1504
- const ExchangeCurrencyCalculator = JSX(({ context, className = '', currencyRatesBuy, currencyRatesSell, button }) => {
1505
- const { useRouter, handlerDecorator } = context;
1506
- const router = useRouter();
1492
+ const ExchangeCurrencyCalculator = JSX(({ className = '', currencyRatesBuy, currencyRatesSell, button }) => {
1507
1493
  const [calcState, setCalcState] = useState({
1508
1494
  inputSell: '',
1509
1495
  inputBuy: '',
@@ -1527,7 +1513,7 @@
1527
1513
  setSelected: handleSelectBuy(calcState, handleSetCalcState, currencyRatesBuy),
1528
1514
  value: calcState.inputBuy,
1529
1515
  setValue: (value) => handleInputBuy(handleSetCalcState, currencyRatesBuy)(value, calcState.selectBuy, calcState.selectSell),
1530
- }), button?.text ? (jsx(Button, { className: "py-4 mr-1", version: button?.version, ...useLink({ router, handlerDecorator }, button), children: button.text })) : null] }));
1516
+ }), button?.text ? (jsx(Button, { className: "py-4 mr-1", version: button?.version, ...button, children: button.text })) : null] }));
1531
1517
  });
1532
1518
  const handleSelectSell = (calcState, setCalcState, currencyRatesSell) => (value) => {
1533
1519
  setCalcState({ selectSell: value });
@@ -1601,19 +1587,26 @@
1601
1587
  }
1602
1588
  };
1603
1589
 
1604
- const ExchangeRateTile = JSX(({ className = '', context, title = 'Курсы обмена валют', button, ...rest }) => {
1590
+ const ExchangeRateTile = JSX(({ className = '', title = 'Курсы обмена валют', button, ...rest }) => {
1605
1591
  const { exchangeRates } = useFetchExchangeRateData();
1606
1592
  const currencyRates = getCurrencyRates(exchangeRates?.exchangeRate?.currencies);
1607
1593
  const currencyRatesBuy = currencyRates.filter((_) => _.buyExchangeRate);
1608
1594
  currencyRatesBuy.unshift({ currency: { currency: Currency.RUB } });
1609
1595
  const currencyRatesSell = currencyRates.filter((_) => _.saleExchangeRate);
1610
1596
  currencyRatesSell.push({ currency: { currency: Currency.RUB } });
1611
- 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, { address: exchangeRates?.address })] }), currencyRates.length && currencyRatesBuy.length && currencyRatesSell.length ? (jsx(ExchangeCurrencyCalculator, { className: "grow", context: context, currencyRatesBuy: currencyRatesBuy, currencyRatesSell: currencyRatesSell, button: button })) : null] }) }) }));
1597
+ return (jsx(BlockWrapper, { className: `bg-white text-primary-text font-sans p-9 box-border min-h-[320px] ${className}`, ...rest, children: jsx(BaseTile, { 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, { address: exchangeRates?.address })] }), currencyRates.length && currencyRatesBuy.length && currencyRatesSell.length ? (jsx(ExchangeCurrencyCalculator, { className: "grow", currencyRatesBuy: currencyRatesBuy, currencyRatesSell: currencyRatesSell, button: button })) : null] }) }) }));
1612
1598
  });
1613
1599
  const getCurrencyRates = (currencies) => {
1614
1600
  return currencies?.filter((_) => _?.currency?.id === 1 || _?.currency?.id === 2) || [];
1615
1601
  };
1616
1602
 
1603
+ function useSWRResource(fileName, fallback = {}) {
1604
+ const { data } = useAsyncData(`/wcms-resources/${fileName}.json`, fetchJSONUnsafe, {
1605
+ fallback,
1606
+ });
1607
+ return data || {};
1608
+ }
1609
+
1617
1610
  const ICON_VERSION_MAP = {
1618
1611
  'bg-white': 'color',
1619
1612
  transparent: 'white',
@@ -1658,19 +1651,9 @@
1658
1651
  }, children: jsx("div", { className: "text-s px-9 py-2.5", children: "\u041D\u0430\u0439\u0442\u0438" }) }))] }));
1659
1652
  });
1660
1653
 
1661
- const SearchBar = JSX(({ className = '' }) => {
1662
- return jsx(SearchBarInner, { className: className });
1663
- });
1654
+ const SearchBar = JSX((props) => jsx(SearchBarInner, { ...props }));
1664
1655
 
1665
- const Contacts = JSX(({ className = '', items, hasButton, context }) => {
1666
- const router = context.useRouter();
1667
- const { handlerDecorator } = context;
1668
- 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 }, {
1669
- text: 'Обратная связь',
1670
- href: '/',
1671
- target: '_blank',
1672
- }), ariaLabel: "\u041E\u0431\u0440\u0430\u0442\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u044C" })) : null] }));
1673
- });
1656
+ const Contacts = JSX(({ className = '', items, hasButton }) => (jsxs("div", { className: className, children: [items?.length ? items.map(renderContact) : null, hasButton ? (jsx(Button, { version: "primary", className: "mb-6 w-full", href: "/", target: "_blank", ariaLabel: "\u041E\u0431\u0440\u0430\u0442\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u044C", text: "\u041E\u0431\u0440\u0430\u0442\u043D\u0430\u044F \u0441\u0432\u044F\u0437\u044C" })) : null] })));
1674
1657
  const renderContact = (item, index) => {
1675
1658
  const { type, text, description } = item;
1676
1659
  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)));
@@ -1687,12 +1670,14 @@
1687
1670
  };
1688
1671
  const formatTel = (s) => s.replaceAll(/\D/g, '');
1689
1672
 
1690
- 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}` })));
1673
+ const HorizontalNavigationLink = JSX(({ className = '', index, text, ...rest }) => {
1674
+ const link = useLink();
1675
+ const { href, target, onClick } = link(rest);
1676
+ return (jsx("a", { className: `text-secondary-text hover:text-primary-main inline-block no-underline ${className}`, href: href, target: target, onClick: onClick, children: text || `Документ ${index}` }));
1677
+ });
1691
1678
 
1692
- const HorizontalNavigation = JSX(({ links, className = '', context }) => {
1693
- const router = context.useRouter();
1694
- const { handlerDecorator } = context;
1695
- return (jsx("div", { className: className, children: links?.length ? (jsx("div", { className: "flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y border-y-main-divider", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-l-light max-w-[292px]", ...useLink({ router, handlerDecorator }, _) }, String(i)))) })) : null }));
1679
+ const HorizontalNavigation = JSX(({ className = '', links }) => {
1680
+ return (jsx("div", { className: className, children: links?.length ? (jsx("div", { className: "flex justify-between items-center gap-5 py-5 border-solid border-x-0 border-y border-y-main-divider", children: links.map((_, i) => (jsx(HorizontalNavigationLink, { index: i, className: "text-l-light max-w-[292px]", ..._ }, String(i)))) })) : null }));
1696
1681
  });
1697
1682
 
1698
1683
  const cmp = (a) => (b) => a?.href === b?.href;
@@ -1700,25 +1685,21 @@
1700
1685
  const subtract = (minuend, subtrahend) => (minuend || []).filter((_) => !subtrahend?.find(cmp(_)));
1701
1686
  const mergeTopItems = (left, right) => substitute(left, right).concat(subtract(right, left));
1702
1687
 
1703
- function useSitemap(fallback = {}) {
1704
- const { data } = useAsyncData(`/wcms-resources/${projectSettings.SITEMAP || 'sitemap'}.json`, fetchJSONUnsafe, { fallback });
1705
- return data || {};
1706
- }
1707
-
1708
- const Sitemap = JSX(({ className = '', items, fallback, context }) => {
1709
- const sitemap = useSitemap(fallback);
1688
+ const Sitemap = JSX(({ className = '', items, fallback }) => {
1689
+ const link = useLink();
1690
+ const sitemap = useSWRResource(projectSettings.SITEMAP || 'sitemap', fallback);
1710
1691
  const mergedItems = mergeTopItems(sitemap.topItems, items);
1711
- const linkParams = {
1712
- router: context.useRouter(),
1713
- handlerDecorator: context.handlerDecorator,
1714
- };
1715
- 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 })) }));
1692
+ return (jsx("div", { className: `flex flex-grow items-start justify-between gap-[54px] xl:gap-5 ${className}`, children: mergedItems?.map((_, i) => renderColumn(link(_), i)) }));
1716
1693
  });
1717
- const renderColumn = ({ menuItem, index, router, handlerDecorator }) => {
1718
- const { text, href, items, target } = menuItem;
1719
- 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)));
1694
+ const renderColumn = (menuItem, index) => {
1695
+ const { text, items, href, target, onClick } = menuItem;
1696
+ 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', onClick: onClick, children: text || `Раздел ${index}` }), items?.map((_, i) => (jsx(ColumnItem, { ..._, index: i }, String(i))))] }, String(index)));
1720
1697
  };
1721
- 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}` })));
1698
+ const ColumnItem = JSX(({ text, index, ...rest }) => {
1699
+ const link = useLink();
1700
+ const { href, target, onClick } = link(rest);
1701
+ return (jsx("a", { className: "block text-l-light text-secondary-text hover:text-primary-main no-underline", href: href, target: target || '_self', onClick: onClick, children: text || `Раздел ${index}` }));
1702
+ });
1722
1703
 
1723
1704
  const ICONS_MAP = [
1724
1705
  {
@@ -1747,7 +1728,9 @@
1747
1728
  label: 'Google Play',
1748
1729
  },
1749
1730
  ];
1750
- const MediaButton = JSX(({ href, version = 'primary' }) => {
1731
+ const MediaButton = JSX(({ version = 'primary', ...rest }) => {
1732
+ const link = useLink();
1733
+ const { href, onClick } = link(rest);
1751
1734
  const { icon, label } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
1752
1735
  if (!icon) {
1753
1736
  return null;
@@ -1756,27 +1739,24 @@
1756
1739
  ? 'bg-white hover:bg-secondary-hover'
1757
1740
  : 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
1758
1741
  const isPrimary = version === 'primary';
1759
- 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: getIconWithVersion(icon), imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
1760
- });
1761
-
1762
- const SocialMedia = JSX(({ className = '', media, version, context, children }) => {
1763
- const router = context.useRouter();
1764
- const { handlerDecorator } = context;
1765
- 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 })] }));
1742
+ 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", onClick: onClick, children: icon ? (jsx(ImgInner, { image: getIconWithVersion(icon), imageClassName: "group-hover:text-white", width: "24", height: "24", asSVG: true })) : null }));
1766
1743
  });
1767
1744
 
1768
- 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}` })));
1745
+ const SocialMedia = JSX(({ className = '', media, version, children }) => (jsxs("div", { className: "font-sans", children: [jsx("div", { className: `flex gap-2.5 ${className}`, children: media?.map((_, index) => (jsx(MediaButton, { version: version, ..._ }, String(index)))) }), jsx("span", { className: "text-s-light text-secondary-text", children: children })] })));
1769
1746
 
1770
- const TextInformation = JSX(({ className, links, context }) => {
1771
- const router = context.useRouter();
1772
- const { handlerDecorator } = context;
1773
- 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] }));
1747
+ const TextInformationLink = JSX(({ className = '', index, ...rest }) => {
1748
+ const link = useLink();
1749
+ const { href, target, text, onClick } = link(rest);
1750
+ return (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}` }));
1774
1751
  });
1775
1752
 
1753
+ const TextInformation = JSX(({ className = '', links }) => (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, ..._ }, String(i)))) })) : null] })));
1754
+
1776
1755
  const LEFT_COL_WIDTH_FULL_HD = 'w-[204px]';
1777
- const Footer = JSX(({ className, documents, relatedEnterprises, contacts, socialMedia, mobileApps, topItems, context, page, ...rest }) => {
1778
- const fallback = page?.fallback;
1779
- 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 })] }));
1756
+ const Footer = JSX(({ className, ...rest }) => {
1757
+ const fallback = rest.page?.fallback;
1758
+ const { documents, relatedEnterprises, contacts, socialMedia, mobileApps, topItems } = useSWRResource(projectSettings.FOOTER || 'footer', fallback);
1759
+ return (jsxs(BlockWrapper, { tag: "footer", 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, { 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, hasButton: true }), jsx(SocialMedia, { media: socialMedia, children: "\u0421\u043E\u0446\u0441\u0435\u0442\u0438" }), jsx(SocialMedia, { className: "mt-6", media: mobileApps, 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]", items: topItems, fallback: fallback })] }), jsx(HorizontalNavigation, { className: "mt-[98px]", links: relatedEnterprises }), jsx(TextInformation, { links: documents })] }));
1780
1760
  });
1781
1761
 
1782
1762
  const galleryLengthForScrollMap = {
@@ -1838,15 +1818,15 @@
1838
1818
  const renderAdditionalDescription$1 = (additionalDescription) => additionalDescription ? (jsx("div", { className: "text-m-light text-secondary-text mt-auto", children: additionalDescription })) : null;
1839
1819
  const renderItems$1 = (items, isDotted, version = 'primary') => (jsx(List, { className: `max-w-[308px] mt-2 text-s ${version === 'primary' ? '!text-secondary-text' : ''}`, itemClassName: "text-left", items: items.filter((item) => item?.text).map((item) => item.text), isDotted: isDotted, version: version }));
1840
1820
 
1841
- const GalleryContainer = JSX(({ context, title, headlineVersion = 'M', description, cards = [], version = 'normal', activeCardIndex, }) => {
1842
- return (jsxs("div", { children: [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)) })] }));
1821
+ const GalleryContainer = JSX(({ headlineVersion = 'M', cards = [], version = 'normal', activeCardIndex, ...rest }) => {
1822
+ return (jsxs("div", { children: [jsx(Headline, { ...rest, className: "!p-0", 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 }, i)) })] }));
1843
1823
  });
1844
1824
  function renderCard({ card, version }, i) {
1845
1825
  return (jsx("section", { className: `box-border border-solid border border-main-stroke p-6 mx-2 flex flex-col justify-between
1846
1826
  items-stretch ${cardStyleMap[version]} ${VersionStyleMap[card.version ?? 'primary']} w-full col-span-4`, role: "listitem", children: jsx(GalleryCardInner, { ...card }) }, String(i)));
1847
1827
  }
1848
1828
 
1849
- const GalleryInner = JSX(({ context, cards = [], className = '', version = 'normal', button, ...rest }) => {
1829
+ const GalleryInner = JSX(({ cards = [], className = '', version = 'normal', button, ...rest }) => {
1850
1830
  const [activeCardIndex, setActiveCardIndex] = useState(0);
1851
1831
  const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
1852
1832
  const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
@@ -1854,7 +1834,7 @@
1854
1834
  const showNextButton = isGalleryScrollAvailable &&
1855
1835
  cards?.length - activeCardIndex > galleryLengthForScrollMap[version];
1856
1836
  const showPrevButton = isGalleryScrollAvailable && activeCardIndex > 0;
1857
- return (jsxs(BlockWrapper, { context: context, className: `relative font-sans text-primary-text bg-white p-[42px] overflow-hidden flex flex-col ${className}`, ...rest, children: [jsx(GalleryContainer, { context: context, cards: cards, version: version, activeCardIndex: activeCardIndex, ...rest }), renderArrows({
1837
+ return (jsxs(BlockWrapper, { className: `relative font-sans text-primary-text bg-white p-[42px] overflow-hidden flex flex-col ${className}`, ...rest, children: [jsx(GalleryContainer, { cards: cards, version: version, activeCardIndex: activeCardIndex, ...rest }), renderArrows({
1858
1838
  handler: [handlePrevClick, handleNextClick],
1859
1839
  isShown: [showPrevButton, showNextButton],
1860
1840
  btnClass: ['left-8', 'right-8'],
@@ -1864,9 +1844,7 @@
1864
1844
 
1865
1845
  const Gallery = JSX((props) => jsx(GalleryInner, { ...props, version: "normal" }));
1866
1846
 
1867
- const GracePeriod = JSX(({ context, className = '', title, description, calendar, ...rest }) => {
1868
- 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] }));
1869
- });
1847
+ const GracePeriod = JSX(({ className = '', title, description, calendar, ...rest }) => (jsxs(BlockWrapper, { className: `font-sans bg-white p-[50px] ${className}`, ...rest, children: [jsx(Headline, { className: "!p-0 mb-4", title: title, description: description, headlineVersion: "M", align: "center", ...rest }), calendar ? renderCalendar(calendar) : null] })));
1870
1848
  const renderCalendar = (calendar) => {
1871
1849
  const colCount = calendar.reduce((accumulator, currentValue) => currentValue?.month?.length ? accumulator + currentValue.month.length : accumulator, 0) || 1;
1872
1850
  const colSize = 100 / colCount;
@@ -1885,7 +1863,7 @@
1885
1863
  const checkIsHrefSameOrigin = (href, router) => getOrigin(href) === getOrigin(router.href);
1886
1864
 
1887
1865
  const isHrefActive = (href, router, cmp = (targetHref, baseHref) => baseHref.startsWith(targetHref)) => {
1888
- return cmp(withoutQuery(href), withoutMobilePath(withoutQuery(isURL(href) ? router.href : router.pathname)));
1866
+ return cmp(withoutQuery(href), withoutQuery(isURL(href) ? router.href : router.pathname));
1889
1867
  };
1890
1868
 
1891
1869
  const isSubItemActive = (router) => (subItem) => isHrefActive(subItem.href, router);
@@ -1896,7 +1874,11 @@
1896
1874
 
1897
1875
  const TEXT_CLASSES$2 = 'font-sans text-s-light';
1898
1876
  const LINK_CLASSES$1 = 'inline-block border border-solid bg-transparent text-center no-underline';
1899
- const TopItem = JSX(({ className = '', text, href, target, active, flat, onClick, children, ariaLabel, bgColor = 'bg-white', }) => (jsx("a", { className: `${getLinkClasses(bgColor, active, flat)} ${className}`, href: href, target: target, onClick: onClick, rel: "noopener noreferrer", "aria-label": ariaLabel, children: jsx("span", { className: getTextClasses$1(bgColor, active, flat), children: text || children }) })));
1877
+ const TopItem = JSX(({ className = '', active, flat, ariaLabel, bgColor = 'bg-white', children, ...rest }) => {
1878
+ const link = useLink();
1879
+ const { href, target, text, onClick } = link(rest);
1880
+ return (jsx("a", { className: `${getLinkClasses(bgColor, active, flat)} ${className}`, href: href, target: target, onClick: onClick, rel: "noopener noreferrer", "aria-label": ariaLabel, children: jsx("span", { className: getTextClasses$1(bgColor, active, flat), children: text || children }) }));
1881
+ });
1900
1882
  const getLinkClasses = (bgColor, active = false, flat = false) => {
1901
1883
  let classes = 'border-transparent';
1902
1884
  if (active) {
@@ -1960,20 +1942,23 @@
1960
1942
  'bg-white': 'bg-primary-text',
1961
1943
  transparent: 'bg-white',
1962
1944
  };
1963
- const DropdownMenu = JSX(({ context, className, items, activeItem, bgColor }) => {
1964
- const { useRouter, handlerDecorator } = context;
1965
- const router = useRouter();
1945
+ const DropdownMenu = JSX(({ className, items, activeItem, bgColor }) => {
1946
+ const link = useLink();
1966
1947
  const [visible, setVisible] = useState(false);
1967
1948
  const handleToggle = useCallback(() => setVisible((_) => !_), []);
1968
1949
  const handleClickOutside = useCallback(() => setVisible(false), []);
1969
1950
  const ref = useOutsideClick(handleClickOutside);
1970
- return (jsxs("div", { className: `${visible ? 'bg-white rounded-md shadow-blue-gray/24' : ''} ${className || ''}`, ref: ref, children: [jsx("button", { className: "flex justify-between items-center cursor-pointer h-6 ml-6", "aria-label": `${visible ? 'Скрыть другие разделы' : 'Показать другие разделы'}`, onClick: handleToggle, children: Array(3).fill(bgColor).map(renderDot) }), jsx("div", { className: `flex flex-col rounded-md bg-white p-6 pb-2 ${visible ? '' : 'hidden'}`, "aria-hidden": !visible, children: items?.map((item, i) => (jsx("a", { className: `text-l-light pb-4 hover:text-primary-main ${item === activeItem ? 'text-primary-main' : ''}`, ...useLink({ router, handlerDecorator }, item), children: item.text }, item.href || String(i)))) })] }));
1951
+ return (jsxs("div", { className: `${visible ? 'bg-white rounded-md shadow-blue-gray/24' : ''} ${className || ''}`, ref: ref, children: [jsx("button", { className: "flex justify-between items-center cursor-pointer h-6 ml-6", "aria-label": `${visible ? 'Скрыть другие разделы' : 'Показать другие разделы'}`, onClick: handleToggle, children: Array(3).fill(bgColor).map(renderDot) }), jsx("div", { className: `flex flex-col rounded-md bg-white p-6 pb-2 ${visible ? '' : 'hidden'}`, "aria-hidden": !visible, children: items?.map((item, i) => (jsx("a", { className: `text-l-light pb-4 hover:text-primary-main ${item === activeItem ? 'text-primary-main' : ''}`, ...link(item), children: item.text }, item.href || String(i)))) })] }));
1971
1952
  });
1972
1953
  const renderDot = (bgColor, i) => (jsx("div", { className: `w-[3px] h-[3px] rounded mr-1 ${DOT_BG_COLORS_MAP[bgColor]}` }, String(i)));
1973
1954
 
1974
1955
  const TEXT_CLASSES$1 = 'font-sans text-l-light';
1975
1956
  const BORDER_CLASSES = 'absolute left-0 -bottom-3 w-full h-[2px]';
1976
- const HeaderItem = JSX(({ className = '', text, href, target, active, bgColor = 'bg-white', dataItemName, children, onClick, }) => (jsxs("a", { className: `relative inline-block bg-transparent text-center no-underline ${className}`, href: href, target: target, "data-item-name": dataItemName, onClick: onClick, children: [jsx("span", { className: getTextClasses(bgColor, active), children: text || children }), active ? jsx("div", { className: getBorderClasses(bgColor, active) }) : null] })));
1957
+ const HeaderItem = JSX(({ className = '', active, bgColor = 'bg-white', dataItemName, children, ...rest }) => {
1958
+ const link = useLink();
1959
+ const { href, target, text, onClick } = link(rest);
1960
+ return (jsxs("a", { className: `relative inline-block bg-transparent text-center no-underline ${className}`, href: href, target: target, "data-item-name": dataItemName, onClick: onClick, children: [jsx("span", { className: getTextClasses(bgColor, active), children: text || children }), active ? jsx("div", { className: getBorderClasses(bgColor, active) }) : null] }));
1961
+ });
1977
1962
  const getTextClasses = (bgColor, active = false) => {
1978
1963
  let classes = 'text-white';
1979
1964
  if (bgColor === 'bg-white') {
@@ -1988,9 +1973,7 @@
1988
1973
  return `${bgColor === 'bg-white' ? 'bg-primary-main' : bgColor} ${BORDER_CLASSES}`;
1989
1974
  };
1990
1975
 
1991
- const HeaderSubMenuItem = JSX(({ context, className, active, bgColor, observerOptions, onVisibilityChange, children, ...linkProps }) => {
1992
- const { handlerDecorator } = context;
1993
- const router = context.useRouter();
1976
+ const HeaderSubMenuItem = JSX(({ className, active, bgColor, observerOptions, onVisibilityChange, children, ...linkProps }) => {
1994
1977
  const observerCallback = useCallback((entries) => {
1995
1978
  if (!entries.length || !onVisibilityChange) {
1996
1979
  return;
@@ -2000,11 +1983,11 @@
2000
1983
  onVisibilityChange(entry.isIntersecting);
2001
1984
  }, [onVisibilityChange]);
2002
1985
  const ref = useIntersectionObserver(observerCallback, observerOptions);
2003
- return (jsx("span", { ref: ref, children: jsx(HeaderItem, { className: className, active: active, bgColor: bgColor, ...useLink({ router, handlerDecorator }, linkProps), children: children }) }));
1986
+ return (jsx("span", { ref: ref, children: jsx(HeaderItem, { className: className, active: active, bgColor: bgColor, ...linkProps, children: children }) }));
2004
1987
  });
2005
1988
 
2006
- const HeaderSubMenu = JSX(({ context, subItems = [], bgColor }) => {
2007
- const router = context.useRouter();
1989
+ const HeaderSubMenu = JSX(({ subItems = [], bgColor }) => {
1990
+ const router = useRouter();
2008
1991
  const activeSubItem = findActiveSubItem(router)(subItems);
2009
1992
  const [visibleItemsCount, setVisibleItemsCount] = useState(subItems.length);
2010
1993
  const dropDownMenuItems = subItems.slice(visibleItemsCount);
@@ -2015,7 +1998,7 @@
2015
1998
  ? handleIntersectionActivation(index)
2016
1999
  : handleIntersectionDeactivation(index));
2017
2000
  }), [subItems]);
2018
- return (jsxs("nav", { className: "relative mt-6", children: [jsx("div", { ref: subItemsListRef, className: "overflow-hidden whitespace-nowrap mr-52 pb-3", children: subItems.map((_, i) => (jsx(HeaderSubMenuItem, { context: context, className: `mr-8 ${visibleItemsCount - 1 < i ? 'invisible' : ''}`, active: _ === activeSubItem, bgColor: bgColor, observerOptions: observerOptions, onVisibilityChange: subItemsVisibilityHandlers[i], ..._ }, String(i)))) }), dropDownMenuItems.length ? (jsx(DropdownMenu, { context: context, className: "absolute w-52 -top-4 right-0 pt-4 z-40", items: dropDownMenuItems, activeItem: activeSubItem, bgColor: bgColor })) : null] }));
2001
+ return (jsxs("nav", { className: "relative mt-6", children: [jsx("div", { ref: subItemsListRef, className: "overflow-hidden whitespace-nowrap mr-52 pb-3", children: subItems.map((_, i) => (jsx(HeaderSubMenuItem, { className: `mr-8 ${visibleItemsCount - 1 < i ? 'invisible' : ''}`, active: _ === activeSubItem, bgColor: bgColor, observerOptions: observerOptions, onVisibilityChange: subItemsVisibilityHandlers[i], ..._ }, String(i)))) }), dropDownMenuItems.length ? (jsx(DropdownMenu, { className: "absolute w-52 -top-4 right-0 pt-4 z-40", items: dropDownMenuItems, activeItem: activeSubItem, bgColor: bgColor })) : null] }));
2019
2002
  });
2020
2003
  const handleIntersectionActivation = (index) => (prev) => Math.max(prev, index + 1);
2021
2004
  const handleIntersectionDeactivation = (index) => (prev) => Math.min(prev, index);
@@ -2024,14 +2007,12 @@
2024
2007
  'bg-white': 'bg-main-divider',
2025
2008
  transparent: 'bg-main-divider opacity-30',
2026
2009
  };
2027
- const Header = JSX(({ bgColor = 'bg-white', className = '', context, defaultLocation = 'Москва', logo, page, showSubMenu = true, ...rest }) => {
2028
- const router = context.useRouter();
2029
- const fallback = page?.fallback;
2030
- const { handlerDecorator } = context;
2031
- const { topItems } = useSitemap(fallback);
2010
+ const Header = JSX(({ bgColor = 'bg-white', className = '', defaultLocation = 'Москва', logo, showSubMenu = true, ...rest }) => {
2011
+ const router = useRouter();
2012
+ const { topItems } = useSWRResource(projectSettings.SITEMAP || 'sitemap', rest.page?.fallback);
2032
2013
  const activeTopItem = showSubMenu ? getActiveItem(topItems, router) : null;
2033
- const topMenu = topItems?.map((_, i) => (jsx(TopItem, { active: _ === activeTopItem, ...useLink({ router, handlerDecorator }, _), "aria-label": _.text, bgColor: bgColor }, String(i))));
2034
- return (jsx(BlockWrapper, { tag: "header", context: context, className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: jsxs("div", { className: "container", children: [jsxs("div", { className: "flex items-center", children: [jsx(Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, jsx(HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, bgColor: bgColor })] }), jsx("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? (jsx(HeaderSubMenu, { context: context, subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
2014
+ const topMenu = topItems?.map((_, i) => (jsx(TopItem, { active: _ === activeTopItem, "aria-label": _.text, bgColor: bgColor, ..._ }, String(i))));
2015
+ return (jsx(BlockWrapper, { tag: "header", className: `pt-6 px-20 ${bgColor} ${className} ${showSubMenu && activeTopItem?.items?.length ? 'pb-4' : 'pb-5'}`, ...rest, children: jsxs("div", { className: "container", children: [jsxs("div", { className: "flex items-center", children: [jsx(Logo, { className: "mr-8", bgColor: bgColor, logo: logo }), topMenu, jsx(HeaderSecondaryMenu, { className: "ml-auto", defaultLocation: defaultLocation, bgColor: bgColor })] }), jsx("div", { className: `mt-6 h-[1px] ${BORDER_COLORS[bgColor]}` }), showSubMenu && activeTopItem?.items?.length ? (jsx(HeaderSubMenu, { subItems: activeTopItem.items, bgColor: bgColor })) : null] }) }));
2035
2016
  });
2036
2017
  const getActiveItem = (topItems, router) => {
2037
2018
  const [firstPortal] = topItems || [];
@@ -2089,24 +2070,22 @@
2089
2070
  return isActive ? (jsx(ImgInner, { className: `h-6 w-6 min-w-6 min-h-6 absolute right-4 top-4`, image: "DoneIcon", width: "24", height: "24" })) : null;
2090
2071
  }
2091
2072
 
2092
- const InsuranceAmountBlock = JSX(({ className = '', context, title, insuranceTabs = [], button, ...rest }) => {
2073
+ const InsuranceAmountBlock = JSX(({ className = '', title, insuranceTabs = [], button, ...rest }) => {
2093
2074
  const [activeSlideIndex, setActiveSlideIndex] = useState(0);
2094
- return (jsxs(BlockWrapper, { context: context, className: `box-border py-[50px] overflow-hidden relative font-sans w-100 bg-white ${className}`, ...rest, children: [title ? jsx(Heading, { className: "text-center mb-8", title: title, headingType: "h3" }) : null, insuranceTabs?.length > 1 ? (jsx("div", { className: "p-1.5 bg-secondary-light w-fit mx-auto mb-7 rounded-md", children: insuranceTabs.map((item, i) => renderNavButton$1({
2075
+ return (jsxs(BlockWrapper, { className: `box-border py-[50px] overflow-hidden relative font-sans w-100 bg-white ${className}`, ...rest, children: [title ? jsx(Heading, { className: "text-center mb-8", title: title, headingType: "h3" }) : null, insuranceTabs?.length > 1 ? (jsx("div", { className: "p-1.5 bg-secondary-light w-fit mx-auto mb-7 rounded-md", children: insuranceTabs.map((item, i) => renderNavButton$1({
2095
2076
  title: item?.title,
2096
2077
  i,
2097
2078
  activeSlideIndex,
2098
2079
  onClick: () => setActiveSlideIndex(i),
2099
2080
  })) })) : null, jsx("div", { className: "flex", style: { transform: `translateX(-${activeSlideIndex}00%)` }, role: "list", children: renderInsuranceGalleries({
2100
- context,
2101
- className,
2102
2081
  insuranceTabs,
2103
2082
  button,
2104
2083
  }) })] }));
2105
2084
  });
2106
- const renderInsuranceGalleries = ({ insuranceTabs, button, context, className = '', }) => {
2085
+ const renderInsuranceGalleries = ({ insuranceTabs, button }) => {
2107
2086
  const insuranceGalleries = insuranceTabs?.map((_) => _.cards);
2108
2087
  return insuranceGalleries?.length
2109
- ? insuranceGalleries.map((cards, i) => (jsx(InsuranceAmountBlockInner, { context: context, className: className, button: button, cards: cards }, String(i))))
2088
+ ? insuranceGalleries.map((cards, i) => (jsx(InsuranceAmountBlockInner, { button: button, cards: cards }, String(i))))
2110
2089
  : null;
2111
2090
  };
2112
2091
  function renderNavButton$1({ title, i, activeSlideIndex, onClick }) {
@@ -2135,12 +2114,12 @@
2135
2114
  XL: 'h-[204px]',
2136
2115
  };
2137
2116
  const InvestmentInfo = JSX((props) => {
2138
- const { context, className = '', items, isDotted, investmentZeroColumn, investmentColumns, ...rest } = props;
2117
+ const { className = '', items, isDotted, investmentZeroColumn, investmentColumns, ...rest } = props;
2139
2118
  const colums = investmentColumns ? [...investmentColumns] : [];
2140
2119
  if (investmentZeroColumn) {
2141
2120
  colums.unshift(investmentZeroColumn);
2142
2121
  }
2143
- return (jsx(BlockWrapper, { className: `font-sans bg-white px-9 py-12 ${className}`, context: context, ...rest, children: jsxs("div", { className: "container text-m-light", children: [colums?.length ? (jsxs("div", { children: [jsxs("div", { className: "flex items-end relative pl-9 pr-5 text-white", children: [joinList(jsx("div", { className: "w-px h-4 bg-main-stroke" }))(colums.map(renderInvestmentColumn)), jsx("div", { className: "absolute right-[30px] w-px h-4 bg-main-stroke" })] }), jsx("div", { className: "border-t border-main-stroke -mt-2 ml-9 mr-8" }), jsx("div", { className: "flex justify-between text-primary-text mt-3 -mx-10", children: colums.map(renderInvestmentColumnTitle) })] })) : null, items?.length ? (jsx(List, { className: "mt-9 text-l-light max-w-[657px]", items: items, itemClassName: "mb-[7px]", isDotted: isDotted })) : null] }) }));
2122
+ return (jsx(BlockWrapper, { className: `font-sans bg-white px-9 py-12 ${className}`, ...rest, children: jsxs("div", { className: "container text-m-light", children: [colums?.length ? (jsxs("div", { children: [jsxs("div", { className: "flex items-end relative pl-9 pr-5 text-white", children: [joinList(jsx("div", { className: "w-px h-4 bg-main-stroke" }))(colums.map(renderInvestmentColumn)), jsx("div", { className: "absolute right-[30px] w-px h-4 bg-main-stroke" })] }), jsx("div", { className: "border-t border-main-stroke -mt-2 ml-9 mr-8" }), jsx("div", { className: "flex justify-between text-primary-text mt-3 -mx-10", children: colums.map(renderInvestmentColumnTitle) })] })) : null, items?.length ? (jsx(List, { className: "mt-9 text-l-light max-w-[657px]", items: items, itemClassName: "mb-[7px]", isDotted: isDotted })) : null] }) }));
2144
2123
  });
2145
2124
  const renderInvestmentColumn = (column, i, arr) => {
2146
2125
  const isSecondColumn = i === 1;
@@ -2191,9 +2170,7 @@
2191
2170
  double: 'flex gap-x-5 gap-y-[26px] flex-wrap',
2192
2171
  single: 'flex gap-3.5 flex-col',
2193
2172
  };
2194
- const LinkDocs = JSX(({ context, className = '', title, description, align = 'center', documents, icon = { icon: 'DocIcon' }, columnsMode = 'double', ...rest }) => {
2195
- 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 })] }));
2196
- });
2173
+ const LinkDocs = JSX(({ className = '', title, description, align = 'center', documents, icon = { icon: 'DocIcon' }, columnsMode = 'double', ...rest }) => (jsxs(BlockWrapper, { className: `font-sans text-primary-text p-[50px] bg-white ${className}`, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: description, align: align, headlineVersion: "M", as: "h2", ...rest }), jsx(LinkDocsList, { className: `mt-8 ${linkColumnsModeStyleMap[columnsMode]}`, columnsMode: columnsMode, documents: documents, icon: icon })] })));
2197
2174
 
2198
2175
  const MiniGallery = JSX((props) => (jsx(GalleryInner, { ...props, version: "mini" })));
2199
2176
 
@@ -2216,15 +2193,15 @@
2216
2193
  }
2217
2194
  }
2218
2195
 
2219
- const MobileAppTile = JSX(({ className = '', context, title = 'Мобильное приложение', qr, buttons, version = 'primary', items, image, headingType = 'h4', alignTitle = 'left', description, ...rest }) => {
2196
+ const MobileAppTile = JSX(({ className = '', title = 'Мобильное приложение', qr, buttons, version = 'primary', items, image, headingType = 'h4', alignTitle = 'left', description, ...rest }) => {
2220
2197
  const textColorClass = version === 'primary' ? 'text-primary-text' : '';
2221
2198
  const containerStyle = version === 'secondary' ? 'p-3.5 min-w-[120px]' : 'min-w-[92px]';
2222
2199
  const buttonsWithClass = buttons?.map((_) => ({ ..._, className: 'min-w-[168px]' }));
2223
- return (jsxs(BlockWrapper, { context: context, className: `flex justify-between font-sans p-9 box-border relative min-h-[320px]
2200
+ return (jsxs(BlockWrapper, { className: `flex justify-between font-sans p-9 box-border relative min-h-[320px]
2224
2201
  ${getTileMinHeight(className)}
2225
2202
  ${VersionStyleMap[version]}
2226
- ${className}`, ...rest, children: [jsxs(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
2227
- ${textColorClass} ${AlignText[alignTitle]}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttonsWithClass, className: "flex gap-4" })) : null, children: [renderDescription$1(description), 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 }) })) : null, renderList$1(version, items)] })] }), image?.src ? (jsx("div", { className: "absolute right-0 bottom-0", children: jsx(ImgInner, { image: image }) })) : null] }));
2203
+ ${className}`, ...rest, children: [jsxs(BaseTile, { className: "z-10", title: title ? (jsx(Heading, { headingType: headingType, as: "h3", title: title, className: `whitespace-pre-wrap max-w-[509px] mb-6
2204
+ ${textColorClass} ${AlignText[alignTitle]}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { buttons: buttonsWithClass, className: "flex gap-4", ...rest })) : null, children: [renderDescription$1(description), 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 }) })) : null, renderList$1(version, items)] })] }), image?.src ? (jsx("div", { className: "absolute right-0 bottom-0", children: jsx(ImgInner, { image: image }) })) : null] }));
2228
2205
  });
2229
2206
  const renderList$1 = (version, items) => {
2230
2207
  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" }));
@@ -2629,12 +2606,10 @@
2629
2606
  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 w-full overflow-hidden", children: point ? jsx(YandexMap, { points: [point], className: "h-full" }) : null }), jsx("div", { className: "w-[434px] min-w-[434px] pl-9 pr-12 pb-14 flex flex-col", children: workScheduleWeek.map(renderDay) })] })] }));
2630
2607
  });
2631
2608
 
2632
- const OfficeServicesBlock = JSX(({ className = '', context, title, servicesList, anchor = '', ...rest }) => {
2633
- 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 ? (jsx("ul", { className: "list-none m-0 p-0", children: servicesList.map(renderListItems) })) : null] }));
2634
- });
2609
+ const OfficeServicesBlock = JSX(({ className = '', title, servicesList, ...rest }) => (jsxs(BlockWrapper, { 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 ? (jsx("ul", { className: "list-none m-0 p-0", children: servicesList.map(renderListItems) })) : null] })));
2635
2610
  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: getIconWithVersion(itemList.icon) })) : null, itemList.label ? jsx("span", { className: "text-l-light", children: itemList.label }) : null] }, `list_item_${String(i)}`));
2636
2611
 
2637
- const OtherProducts = JSX(({ context, className = '', children, ...rest }) => (jsx(BlockWrapper, { context: context, className: `font-sans text-primary-text ${className}`, ...rest, children: children })));
2612
+ const OtherProducts = JSX(({ className = '', children, ...rest }) => (jsx(BlockWrapper, { className: `font-sans text-primary-text ${className}`, ...rest, children: children })));
2638
2613
  OtherProducts.childrenTypes = ['OtherProductsItem'];
2639
2614
 
2640
2615
  function getParentBlockDef(ancestors, type) {
@@ -2701,9 +2676,7 @@
2701
2676
  return `w-[50px] h-[50px] min-w-[50px] rounded-full p-2.5 box-border flex items-center justify-center ${bgColorStyle}`;
2702
2677
  }
2703
2678
 
2704
- const PictureText = JSX(({ className = '', context, title, description, image, benefits, version = 'primary', sum, monthLimit, directionRight = false, ...rest }) => {
2705
- 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(Number(sum), Number(monthLimit))] })] })] }));
2706
- });
2679
+ const PictureText = JSX(({ className = '', title, description, image, benefits, version = 'primary', sum, monthLimit, directionRight = false, ...rest }) => (jsxs(BlockWrapper, { className: `relative font-sans py-12 px-24 ${VersionStyleMap[version]} ${className}`, ...rest, children: [jsx(Headline, { className: "!p-0", title: title, description: description, headlineVersion: "M", bgColorHeadline: version, align: "center", ...rest }), 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(Number(sum), Number(monthLimit))] })] })] })));
2707
2680
  const renderBenefit$2 = (version) => (benefit, i) => (jsx(BenefitItem, { icon: benefit.icon, label: benefit.label, description: benefit.description, version: version }, String(i)));
2708
2681
  function renderInsuranceSumMonth(sum, monthLimit) {
2709
2682
  return sum || monthLimit ? (jsxs("div", { className: "bg-main-divider rounded-md flex mt-7 gap-6 px-5 py-4", children: [Number(sum) > 0 ? renderValueBlock('Страховая сумма:', sum, Boolean(monthLimit)) : null, Number(monthLimit) > 0
@@ -2742,8 +2715,8 @@
2742
2715
  }
2743
2716
 
2744
2717
  const GOLDEN_RATIO = 1.618;
2745
- const Placeholder = JSX(({ className, context, title, description = 'Блок в разработке...', ...rest }) => {
2746
- 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() })] }));
2718
+ const Placeholder = JSX(({ className, title, description = 'Блок в разработке...', ...rest }) => {
2719
+ return (jsxs(BlockWrapper, { className: `bg-white text-primary-text font-sans p-9 box-border ${className} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: [jsx(Headline, { className: "!p-0 max-w-[600px]", title: title, description: description, headlineVersion: getTileHeadingType(className), ...rest }), jsx("figure", { className: "m-0 min-w-[80%]", children: renderShimmer() })] }));
2747
2720
  });
2748
2721
  const renderShimmer = (size = 3) => goldenSequence(100, size)
2749
2722
  .map((_) => Math.floor(_))
@@ -2751,24 +2724,26 @@
2751
2724
  const renderShimmerItem = (width, index) => (jsx("div", { style: { width: `${width || 100}%` }, className: "h-4 mt-2 bg-secondary-light" }, String(index)));
2752
2725
  const goldenSequence = (first, size) => [first].concat(size > 0 ? goldenSequence(first / GOLDEN_RATIO, size - 1) : []);
2753
2726
 
2754
- const Breadcrumb = JSX(({ text, href, target, onClick, className = '', children }) => href ? (jsx("a", { className: `no-underline ${className}`, href: href, target: target, onClick: onClick, children: jsx("span", { className: className, children: text || children }) })) : (jsx("span", { className: className, children: text || children })));
2727
+ const Breadcrumb = JSX(({ className = '', children, ...props }) => {
2728
+ const link = useLink();
2729
+ const { text, href, target, onClick } = link(props);
2730
+ return href ? (jsx("a", { className: `no-underline ${className}`, href: href, target: target, onClick: onClick, children: jsx("span", { className: className, children: text || children }) })) : (jsx("span", { className: className, children: text || children }));
2731
+ });
2755
2732
 
2756
2733
  const renderBenefit$1 = (version = 'primary', benefitsVersion = 'normal') => ({ icon, label, description }, i) => (jsx(BenefitItem, { icon: icon, label: label, description: description, version: version, benefitsVersion: benefitsVersion }, String(i)));
2757
2734
 
2758
- const ProductBlockInner = JSX(({ className = '', context, title, headlineVersion = 'L', description, benefits, benefitsVersion, buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', }) => {
2735
+ const ProductBlockInner = JSX(({ className = '', title, headlineVersion = 'L', description, benefits, benefitsVersion, buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', ...rest }) => {
2759
2736
  const benefitsCount = benefits?.filter((_) => _.label)?.length;
2760
2737
  const benefitsContainerStyles = getBenefitsContainerStyles(benefitsCount);
2761
- 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 })] }));
2738
+ return (jsxs("div", { className: `flex grow justify-between items-stretch h-full ${className}`, children: [jsxs("div", { className: `flex flex-col ${textBlockClassName}`, children: [jsx(Headline, { title: title, description: description, className: `!p-0 max-w-[600px]`, bgColorHeadline: version, headlineVersion: headlineVersion, align: "left", ...rest }), jsxs(BaseTile, { buttons: buttons?.length ? (jsx(ButtonSection, { buttons: buttons, className: "flex gap-4", ...rest })) : null, 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 })] }));
2762
2739
  });
2763
- const getButtons = (context, buttons) => {
2764
- return buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex gap-4" })) : null;
2765
- };
2766
2740
  const getBenefitsContainerStyles = (benefitsCount = 0) => `gap-6 mt-6 ${benefitsCount > 3 ? 'inline-grid grid-cols-[auto_auto]' : 'flex'}`;
2767
2741
 
2768
2742
  function renderBackwardButton(button, version, className) {
2769
2743
  const { text, href, target, onClick } = button;
2770
2744
  const iconVersion = version === 'primary' ? 'white' : 'black';
2771
2745
  const backwardIcon = button?.icon || { icon: 'ArrowLeftIcon' };
2746
+ // TODO Move click handler to Button
2772
2747
  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: backwardIcon.iconVersion || iconVersion }, asSVG: true }) }), text ? jsx("span", { className: "text-m", children: text }) : null] }));
2773
2748
  }
2774
2749
 
@@ -2777,13 +2752,11 @@
2777
2752
  secondary: 'text-white/80',
2778
2753
  };
2779
2754
  const ProductBlock = JSX((props) => {
2780
- const { context, className = '', breadcrumbs, backwardButton, version = 'primary', ...otherProps } = props;
2781
- const router = context.useRouter();
2782
- const { handlerDecorator } = context;
2755
+ const { className = '', breadcrumbs, backwardButton, version = 'primary', ...rest } = props;
2783
2756
  const buttonVersion = version === 'primary' ? version : 'white';
2784
- 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
2785
- ? renderBackwardButton(useLink({ router, handlerDecorator }, backwardButton), buttonVersion, 'mb-10 -mt-2.5')
2786
- : 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 })] }));
2757
+ return (jsxs(BlockWrapper, { className: `font-sans overflow-hidden p-[50px] flex flex-col box-border min-h-[454px] ${VersionStyleMap[version]} ${className}`, ...rest, children: [backwardButton?.text
2758
+ ? renderBackwardButton(backwardButton, buttonVersion, 'mb-10 -mt-2.5')
2759
+ : 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, { className: breadcrumbsStyleMap[version], ...breadcrumb }, String(i))))) })) : null, jsx(ProductBlockInner, { version: version, ...rest })] }));
2787
2760
  });
2788
2761
 
2789
2762
  const BorderVersionStyleMap = {
@@ -2795,12 +2768,12 @@
2795
2768
  primary: { title: 'text-secondary-text', text: 'text-secondary-text' },
2796
2769
  secondary: { title: 'text-white', text: 'text-white/80' },
2797
2770
  };
2798
- const ProductGallery = JSX(({ className = '', context, slides = [], version = 'primary', ...rest }) => {
2771
+ const ProductGallery = JSX(({ className = '', slides = [], version = 'primary', ...rest }) => {
2799
2772
  const galleryNav = slides.map((s) => s.nav);
2800
2773
  const galleryBlocks = slides.map((s) => s.productBlock);
2801
2774
  const [activeSlideIndex, setActiveSlideIndex] = useState(0);
2802
- return (jsxs(BlockWrapper, { context: context, className: `box-border pt-[50px] overflow-hidden relative font-sans w-100 mb-6 ${className}
2803
- ${VersionStyleMap[version]}`, ...rest, children: [jsx("div", { className: "flex duration-1000 pb-14", style: { transform: `translateX(-${activeSlideIndex}00%)` }, role: "list", children: galleryBlocks.map((_, i) => renderProductBlock({ ..._, version }, i, context)) }), jsx("div", { className: "flex items-center absolute bottom-6 left-0 right-0 px-[26px] box-border h-28", children: galleryNav.map((slide, i) => renderNavButton({
2775
+ return (jsxs(BlockWrapper, { className: `box-border pt-[50px] overflow-hidden relative font-sans w-100 mb-6 ${className}
2776
+ ${VersionStyleMap[version]}`, ...rest, children: [jsx("div", { className: "flex duration-1000 pb-14", style: { transform: `translateX(-${activeSlideIndex}00%)` }, role: "list", children: galleryBlocks.map((_, i) => renderProductBlock({ ..._, ...rest, version }, i)) }), jsx("div", { className: "flex items-center absolute bottom-6 left-0 right-0 px-[26px] box-border h-28", children: galleryNav.map((slide, i) => renderNavButton({
2804
2777
  slide,
2805
2778
  i,
2806
2779
  activeSlideIndex,
@@ -2808,10 +2781,10 @@
2808
2781
  version,
2809
2782
  })) })] }));
2810
2783
  });
2811
- function renderProductBlock(block, i, context) {
2784
+ function renderProductBlock(block, i) {
2812
2785
  const { version } = block;
2813
2786
  const additionalClass = version ? productBlockStyleMap[version].title : '';
2814
- return (jsx("section", { className: "box-border relative flex grow-0 shrink-0 basis-full", role: "listitem", children: jsx("div", { className: "flex grow", children: jsx(ProductBlockInner, { className: `pl-[50px] z-10 ${additionalClass}`, context: context, textBlockClassName: "mb-[154px]", ...block, headlineVersion: "XXL" }) }) }, String(i)));
2787
+ return (jsx("section", { className: "box-border relative flex grow-0 shrink-0 basis-full", role: "listitem", children: jsx("div", { className: "flex grow", children: jsx(ProductBlockInner, { className: `pl-[50px] z-10 ${additionalClass}`, textBlockClassName: "mb-[154px]", headlineVersion: "XXL", ...block }) }) }, String(i)));
2815
2788
  }
2816
2789
  function renderNavButton({ slide, i, activeSlideIndex, onClick, version }) {
2817
2790
  const isActiveBtn = i === activeSlideIndex;
@@ -2830,12 +2803,10 @@
2830
2803
  `, 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)));
2831
2804
  }
2832
2805
 
2833
- const ProductTile = JSX(({ context, className = '', title, headlineVersion = 'S', description, additionalDescription, benefits = [], buttons, image, version = 'primary', ...rest }) => {
2834
- return (jsxs(BlockWrapper, { context: context, className: `overflow-hidden font-sans p-9 box-border relative justify-between grid min-h-[364px]
2835
- ${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
2836
- ? renderAdditionalDescription(additionalDescription, image, version)
2837
- : 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] }));
2838
- });
2806
+ const ProductTile = JSX(({ className = '', title, headlineVersion = 'S', description, additionalDescription, benefits = [], buttons, image, version = 'primary', ...rest }) => (jsxs(BlockWrapper, { className: `overflow-hidden font-sans p-9 box-border relative justify-between grid min-h-[364px]
2807
+ ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)}`, ...rest, children: [jsx(Headline, { className: `!p-0 !bg-transparent z-10 ${title || description ? 'mb-3.5' : ''}`, as: "h2", title: title, description: description, headlineVersion: headlineVersion, bgColorHeadline: version, align: "left", ...rest }), renderBenefits(benefits, version, image), additionalDescription
2808
+ ? renderAdditionalDescription(additionalDescription, image, version)
2809
+ : null, buttons?.length ? (jsx(ButtonSection, { 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] })));
2839
2810
  function renderBenefits(benefits, version, image) {
2840
2811
  // picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
2841
2812
  const BENEFITS_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
@@ -2865,9 +2836,7 @@
2865
2836
  return (jsx("div", { className: `text-m-light mt-2.5 z-10 ${DESCRIPTION_WIDTH} ${descStyleMap[version]}`, children: additionalDescription }));
2866
2837
  }
2867
2838
 
2868
- const PromoTile = JSX(({ className = '', context, title = 'Акции и спецпредложения', date, description, buttons = [], version = 'primary', ...rest }) => {
2869
- return (jsx(BlockWrapper, { context: context, className: `bg-white text-primary-text font-sans p-9 box-border ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: jsx(BaseTile, { context: context, title: title ? (jsx(Headline, { context: context, title: title, className: `!p-0 max-w-[600px]`, headlineVersion: getTileHeadingType(className), bgColorHeadline: version, align: "left", as: "h2" })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex gap-3" })) : null, children: jsxs("div", { className: "mt-1.5", children: [date ? jsx("div", { className: "text-s mb-2", children: formatDate(date) }) : null, jsx("div", { className: "text-l", children: description })] }) }) }));
2870
- });
2839
+ const PromoTile = JSX(({ className = '', title = 'Акции и спецпредложения', date, description, buttons = [], version = 'primary', ...rest }) => (jsx(BlockWrapper, { className: `bg-white text-primary-text font-sans p-9 box-border ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: jsx(BaseTile, { title: title ? (jsx(Headline, { title: title, className: `!p-0 max-w-[600px]`, headlineVersion: getTileHeadingType(className), bgColorHeadline: version, align: "left", as: "h2", ...rest })) : null, buttons: buttons?.length ? jsx(ButtonSection, { buttons: buttons, className: "flex gap-3" }) : null, children: jsxs("div", { className: "mt-1.5", children: [date ? jsx("div", { className: "text-s mb-2", children: formatDate(date) }) : null, jsx("div", { className: "text-l", children: description })] }) }) })));
2871
2840
  function formatDate(date) {
2872
2841
  const dateObj = new Date(date);
2873
2842
  const dateFormat = {
@@ -2878,30 +2847,25 @@
2878
2847
  return dateObj.toLocaleString('ru-RU', dateFormat).replace('г.', '');
2879
2848
  }
2880
2849
 
2881
- const RecommendationCard = JSX(({ context, className = '', title, description, items, image, version, socialMedia }) => {
2850
+ const RecommendationCard = JSX(({ className = '', title, description, items, image, version, socialMedia }) => {
2882
2851
  const tileTitle = title ? (jsx(Heading, { headingType: "h5", as: "h3", className: "mb-3.5 z-10", title: title })) : null;
2883
2852
  const tileImage = image?.src ? (jsx(ImgInner, { className: "absolute bottom-0 right-0 m-0", image: image })) : null;
2884
- return (jsx("section", { className: `relative overflow-hidden text-left border border-solid box-border p-7 min-w-[524px] min-h-[218px] ${className}`, role: "listitem", children: jsx(BaseTile, { context: context, className: "flex justify-between", title: tileTitle, image: tileImage, children: jsxs("div", { className: "h-full flex flex-col justify-between", children: [description ? jsx(Description, { className: "mb-2", description: description }) : null, items?.length ? (jsx(List, { className: "text-xl-light flex flex-col flex-1 gap-2 max-w-[236px]", items: items, version: version })) : null, socialMedia ? (jsx(SocialMedia, { className: "pt-10 pb-0", media: socialMedia, version: version, context: context })) : null] }) }) }));
2853
+ return (jsx("section", { className: `relative overflow-hidden text-left border border-solid box-border p-7 min-w-[524px] min-h-[218px] ${className}`, role: "listitem", children: jsx(BaseTile, { className: "flex justify-between", title: tileTitle, image: tileImage, children: jsxs("div", { className: "h-full flex flex-col justify-between", children: [description ? jsx(Description, { className: "mb-2", description: description }) : null, items?.length ? (jsx(List, { className: "text-xl-light flex flex-col flex-1 gap-2 max-w-[236px]", items: items, version: version })) : null, socialMedia ? (jsx(SocialMedia, { className: "pt-10 pb-0", media: socialMedia, version: version })) : null] }) }) }));
2885
2854
  });
2886
2855
 
2887
2856
  const BLUR_BLOCK_CLASSES$1 = 'absolute top-0 bottom-0 w-[84px]';
2888
2857
  const CARD_FULL_VIEW_COUNT$1 = 2;
2889
2858
  const CARD_SHIFT = 525;
2890
- const Recommendation = JSX(({ context, recommendations = [], className = '', title, version = 'primary', ...rest }) => {
2859
+ const Recommendation = JSX(({ recommendations = [], className = '', title, version = 'primary', ...rest }) => {
2891
2860
  const [activeCardIndex, setActiveCardIndex] = useState(0);
2892
- return (jsxs(BlockWrapper, { context: context, className: `relative font-sans p-9 overflow-hidden text-center
2893
- ${VersionStyleMap[version]}
2894
- ${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
2895
- ? recommendations.map(renderRecommendationCard(context, BorderVersionStyleMap[version], version))
2861
+ return (jsxs(BlockWrapper, { className: `relative font-sans p-9 overflow-hidden text-center ${VersionStyleMap[version]} ${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
2862
+ ? recommendations.map((card, i) => (jsx(RecommendationCard, { version: version, className: BorderVersionStyleMap[version], ...card }, String(i))))
2896
2863
  : null }), renderNavButtons$1({
2897
2864
  cardsCount: recommendations.length,
2898
2865
  activeCardIndex,
2899
2866
  setActiveCardIndex,
2900
2867
  })] }), jsx("div", { className: `${BLUR_BLOCK_CLASSES$1} left-0 ${version === 'secondary' ? 'bg-opacity-from-main' : 'bg-opacity-from-white'}` }), jsx("div", { className: `${BLUR_BLOCK_CLASSES$1} right-0 ${version === 'secondary' ? 'bg-opacity-to-main' : 'bg-opacity-to-white'}` })] }));
2901
2868
  });
2902
- const renderRecommendationCard = (context, className, version) => (card, i) => {
2903
- return (jsx(RecommendationCard, { context: context, ...card, version: version, className: className }, String(i)));
2904
- };
2905
2869
  const renderNavButtons$1 = ({ cardsCount, activeCardIndex, setActiveCardIndex, }) => {
2906
2870
  const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
2907
2871
  const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
@@ -3031,7 +2995,7 @@
3031
2995
  }
3032
2996
 
3033
2997
  const DEFAULT_DAYS = 26;
3034
- const SafeDepositRental = JSX(({ title, footnote, context, className = '', ...rest }) => {
2998
+ const SafeDepositRental = JSX(({ title, footnote, className = '', ...rest }) => {
3035
2999
  const [showMap, setShowMap] = useState(false);
3036
3000
  const [safeDepositState, setStateDepositState] = useState({
3037
3001
  selectedRegion: '',
@@ -3048,7 +3012,7 @@
3048
3012
  setShowMap(!showMap);
3049
3013
  };
3050
3014
  const points = getCoordinates(getBranch(branches, safeDepositState.selectedBranch) || branches);
3051
- return (jsxs(BlockWrapper, { context: context, className: className, ...rest, children: [jsxs("div", { className: "font-sans bg-white px-8 py-12", children: [title ? (jsx(Heading, { title: title, headingType: "h3", as: "h2", className: "text-primary-text mb-2.5 text-center" })) : null, jsx(SafeDepositRentalForm, { regions: regions, branches: branches, data: { ...safeDepositState, selectedRegion }, onShowMapToggle: onShowMapToggle, onChange: handleChangeSafeDepositState }), footnote ? jsx("p", { className: "text-s-light text-secondary-text", children: footnote }) : null] }), points.length && showMap ? jsx(YandexMap, { points: points, className: "h-[640px]" }) : null] }));
3015
+ return (jsxs(BlockWrapper, { className: className, ...rest, children: [jsxs("div", { className: "font-sans bg-white px-8 py-12", children: [title ? (jsx(Heading, { title: title, headingType: "h3", as: "h2", className: "text-primary-text mb-2.5 text-center" })) : null, jsx(SafeDepositRentalForm, { regions: regions, branches: branches, data: { ...safeDepositState, selectedRegion }, onShowMapToggle: onShowMapToggle, onChange: handleChangeSafeDepositState }), footnote ? jsx("p", { className: "text-s-light text-secondary-text", children: footnote }) : null] }), points.length && showMap ? jsx(YandexMap, { points: points, className: "h-[640px]" }) : null] }));
3052
3016
  });
3053
3017
  const normalizeSelectedRegion = (selectedRegion, regions) => !selectedRegion && regions?.length && regions[0]?.code ? regions[0].code : selectedRegion;
3054
3018
 
@@ -3056,7 +3020,7 @@
3056
3020
 
3057
3021
  const renderItems = ({ items, isDotted = true, version = 'primary', className = '', }) => items ? (jsx(List, { className: className, version: version, items: items, listItemSize: "M", isDotted: isDotted })) : null;
3058
3022
 
3059
- const renderStepContent = ({ styleMap, isMainButton, version, router, handlerDecorator, }) => (step, i, { length }) => {
3023
+ const renderStepContent = ({ styleMap, isMainButton, version, }) => (step, i, { length }) => {
3060
3024
  const { label, description, button, items, isDotted } = step;
3061
3025
  const contentMarginClass = label && (description || items) ? 'mt-2' : '';
3062
3026
  return (jsxs("div", { className: `relative flex flex-col items-center text-center whitespace-pre-line overflow-hidden ${getContainerWidth(length)}`, children: [jsxs("div", { className: `${button?.text ? 'mb-8' : ''} text-center`, children: [renderStepLabel(label), jsxs("div", { className: `${contentMarginClass} flex flex-col items-center`, children: [renderStepDescription({
@@ -3067,7 +3031,7 @@
3067
3031
  isDotted,
3068
3032
  version,
3069
3033
  className: getItemsClasses({ className: 'text-left', description, styleMap }),
3070
- })] })] }), 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)));
3034
+ })] })] }), button?.text && !isMainButton ? (jsx(Button, { className: "box-border py-3 h-12 w-full max-w-[240px] mt-auto", version: version, ...button, children: button?.text })) : null] }, String(i)));
3071
3035
  };
3072
3036
  const renderStepLabel = (label) => label ? jsx("div", { className: "text-h6", children: label }) : null;
3073
3037
  const renderStepDescription = ({ description, className = '', }) => (description ? jsx("div", { className: className, children: description }) : null);
@@ -3097,9 +3061,7 @@
3097
3061
 
3098
3062
  const getLineOpacity = (showLines) => (showLines ? '' : 'opacity-0');
3099
3063
  const getPaddingX = (steps) => (steps < 5 ? 'px-[88px]' : 'px-[55px]');
3100
- const StepsBlock = JSX(({ className = '', showLines = true, steps = [], button, version = 'primary', context, ...rest }) => {
3101
- const router = context.useRouter();
3102
- const { handlerDecorator } = context;
3064
+ const StepsBlock = JSX(({ className = '', showLines = true, steps = [], button, version = 'primary', ...rest }) => {
3103
3065
  const { title } = rest;
3104
3066
  const styleMap = STEPS_BLOCK_STYLE_MAPS[version];
3105
3067
  const shortGaps = steps.length > 3;
@@ -3113,13 +3075,7 @@
3113
3075
  styleMap.background,
3114
3076
  styleMap.title,
3115
3077
  className,
3116
- ].join(' '), context: context, ...rest, children: [title ? (jsx(Heading, { headingType: "h3", className: "max-w-[752px] text-center", title: title })) : null, steps?.length ? (jsxs("div", { className: `box-border ${titleMargin}`, children: [jsx("div", { className: `flex items-center ${paddingX}`, children: joinList(jsx("div", { className: `h-0.5 w-full bg-secondary-light ${lineOpacity}` }))(steps.map(renderStepIcon(styleMap, version))) }), jsx("div", { className: `flex justify-between mt-4 ${shortGaps ? 'gap-x-3' : 'gap-x-[101px]'}`, children: steps.map(renderStepContent({
3117
- styleMap,
3118
- isMainButton: Boolean(button?.text),
3119
- version,
3120
- router,
3121
- handlerDecorator,
3122
- })) })] })) : null, button?.text ? (jsx(Button, { className: "mt-8 min-w-[240px]", version: "primary", ...useLink({ router, handlerDecorator }, button) })) : null] }));
3078
+ ].join(' '), ...rest, children: [title ? (jsx(Heading, { headingType: "h3", className: "max-w-[752px] text-center", title: title })) : null, steps?.length ? (jsxs("div", { className: `box-border ${titleMargin}`, children: [jsx("div", { className: `flex items-center ${paddingX}`, children: joinList(jsx("div", { className: `h-0.5 w-full bg-secondary-light ${lineOpacity}` }))(steps.map(renderStepIcon(styleMap, version))) }), jsx("div", { className: `flex justify-between mt-4 ${shortGaps ? 'gap-x-3' : 'gap-x-[101px]'}`, children: steps.map(renderStepContent({ styleMap, isMainButton: Boolean(button?.text), version })) })] })) : null, button?.text ? (jsx(Button, { className: "mt-8 min-w-[240px]", version: "primary", ...button })) : null] }));
3123
3079
  });
3124
3080
  const renderStepIcon = (styleMap, version) => ({ icon }, i) => {
3125
3081
  return (jsx("div", { className: "flex flex-col items-center text-center", children: jsx("div", { className: `h-[100px] w-[100px] min-w-[100px] min-h-[100px] rounded-full p-[26px] box-border z-10 flex justify-center items-center
@@ -3137,10 +3093,22 @@
3137
3093
  const ACTIVE_TEXT_CLASSES = 'text-white';
3138
3094
  const INACTIVE_TEXT_CLASSES = 'text-secondary-text group-hover:text-primary-main';
3139
3095
 
3096
+ const LinkTab = JSX((props) => {
3097
+ const { tab, currentTab, onClick } = props;
3098
+ const active = currentTab?.type === 'link' && currentTab.href === tab.href;
3099
+ const handleClick = useCallback(() => {
3100
+ onClick && onClick(tab);
3101
+ EventBus.inst.fire('anchorClick', { isScrolling: true, label: tab.href });
3102
+ }, [tab, onClick]);
3103
+ const link = useLink();
3104
+ const adjustedProps = link({ ...tab, onClick: handleClick });
3105
+ return (jsx("a", { role: "tab", className: `${LINK_CLASSES} ${active ? ACTIVE_LINK_CLASSES : INACTIVE_LINK_CLASSES}`, target: tab.target, href: adjustedProps.href, onClick: adjustedProps.onClick, children: jsx("span", { className: `${TEXT_CLASSES} ${active ? ACTIVE_TEXT_CLASSES : INACTIVE_TEXT_CLASSES}`, children: tab.text }) }));
3106
+ });
3107
+
3140
3108
  const BADGE_CLASSES = 'min-w-[22px] h-[22px] rounded-full text-xs ml-2 flex justify-center items-center';
3141
3109
  const ACTIVE_BADGE_CLASSES = 'bg-white/30 text-white';
3142
3110
  const INACTIVE_BADGE_CLASSES = 'bg-main-divider text-secondary-text group-hover:text-primary-main';
3143
- const renderGroupTab = ({ onClick, currentTab, showCounter, page }) => (tab, i) => {
3111
+ const renderGroupTab = ({ page, currentTab, showCounter, onClick }) => (tab, i) => {
3144
3112
  const active = currentTab === tab;
3145
3113
  const count = tab.ref && page?.blocks
3146
3114
  ? page.blocks.filter((block) => block?.labels?.includes(tab.ref)).length
@@ -3150,37 +3118,19 @@
3150
3118
  const renderTitle$1 = (title, active) => (jsx("h3", { className: `${TEXT_CLASSES} ${active ? ACTIVE_TEXT_CLASSES : INACTIVE_TEXT_CLASSES}`, children: title }));
3151
3119
  const renderCount = (count, active) => (jsx("div", { className: `${BADGE_CLASSES} ${active ? ACTIVE_BADGE_CLASSES : INACTIVE_BADGE_CLASSES}`, children: count }));
3152
3120
 
3153
- const renderLinkTab = ({ text, currentTab, onClick, href, target = '_self', i, }) => {
3154
- const active = currentTab?.type === 'link' && currentTab.href === href;
3155
- return (jsx("a", { role: "tab", className: `${LINK_CLASSES} ${active ? ACTIVE_LINK_CLASSES : INACTIVE_LINK_CLASSES}`, target: target, href: href, onClick: onClick, children: jsx("span", { className: `${TEXT_CLASSES} ${active ? ACTIVE_TEXT_CLASSES : INACTIVE_TEXT_CLASSES}`, children: text }) }, String(i)));
3156
- };
3157
-
3158
- const renderTab = ({ onClick, currentTab, showCounter, page, context }) =>
3121
+ const renderTab = ({ page, currentTab, showCounter, onClick }) =>
3159
3122
  // Linter doesn't understand that switch processes all cases
3160
3123
  // eslint-disable-next-line consistent-return
3161
3124
  (tab, i) => {
3162
- const { useRouter, handlerDecorator } = context;
3163
- const router = useRouter();
3164
3125
  const type = tab.type;
3165
3126
  if (!(type === 'group' || type === 'link')) {
3166
3127
  return null;
3167
3128
  }
3168
3129
  switch (type) {
3169
3130
  case 'group':
3170
- return renderGroupTab({ onClick, currentTab, showCounter, page, context })(tab, i);
3131
+ return renderGroupTab({ page, currentTab, showCounter, onClick })(tab, i);
3171
3132
  case 'link': {
3172
- const link = useLink({ router, handlerDecorator }, tab);
3173
- const linkClick = link.onClick;
3174
- return renderLinkTab({
3175
- ...link,
3176
- onClick: (ev) => {
3177
- linkClick(ev);
3178
- onClick(tab);
3179
- EventBus.inst.fire('anchorClick', { isScrolling: true, label: tab.href });
3180
- },
3181
- currentTab,
3182
- i,
3183
- });
3133
+ return jsx(LinkTab, { tab: tab, currentTab: currentTab }, String(i));
3184
3134
  }
3185
3135
  default:
3186
3136
  assertUnreachable(type);
@@ -3188,7 +3138,7 @@
3188
3138
  };
3189
3139
 
3190
3140
  const Tabs = JSX((props) => {
3191
- const { context, className = '', tabs, page, showCounter, isSticky } = props;
3141
+ const { className = '', tabs, showCounter, isSticky, ...rest } = props;
3192
3142
  const [currentTab, setCurrentTab] = useState(tabs ? tabs[0] : undefined);
3193
3143
  useEffect(() => EventBus.inst.subscribe('tab', (event) => {
3194
3144
  if (!tabs) {
@@ -3211,7 +3161,7 @@
3211
3161
  }
3212
3162
  setCurrentTab(selectedTab);
3213
3163
  };
3214
- return (jsx(BlockWrapper, { context: context, className: `${isSticky ? 'sticky top-1 z-20 ' : ''}box-border flex gap-x-1 ${className}`, role: "tablist", children: tabs?.map(renderTab({ onClick: handleClick, currentTab, page, showCounter, context })) }));
3164
+ return (jsx(BlockWrapper, { className: `${isSticky ? 'sticky top-1 z-20 ' : ''}box-border flex gap-x-1 ${className}`, role: "tablist", ...rest, children: tabs?.map(renderTab({ onClick: handleClick, currentTab, showCounter, ...rest })) }));
3215
3165
  });
3216
3166
  const checkTab = (event) => (_) => _.type === 'link' && _.href === `#${event.label}`;
3217
3167
 
@@ -3234,11 +3184,9 @@
3234
3184
  };
3235
3185
  const renderImgCellData = ({ image }) => (image?.src ? jsx(ImgInner, { image: image }) : null);
3236
3186
  const renderListCellData = ({ isDotted, ...rest }) => (jsx(List, { className: "flex flex-col justify-between items-start text-h6", version: "primary", isDotted: isDotted ?? true, ...rest }));
3237
- const renderTableCellData = JSX(({ isVisible, displayTable, dataUrl, pdfUrl, isOpen, context }) => {
3238
- return isVisible ? (jsx(TableInnerButton, { isOpen: isOpen, context: context, onClick: () => {
3239
- displayTable({ dataUrl, pdfUrl });
3240
- } })) : null;
3241
- });
3187
+ const renderTableCellData = JSX(({ isVisible, displayTable, dataUrl, pdfUrl, isOpen }) => isVisible ? (jsx(TableInnerButton, { isOpen: isOpen, onClick: () => {
3188
+ displayTable({ dataUrl, pdfUrl });
3189
+ } })) : null);
3242
3190
  const EmbeddableCellData = {
3243
3191
  Buttons: renderButtonsCellData,
3244
3192
  Img: renderImgCellData,
@@ -3247,7 +3195,7 @@
3247
3195
  Table: renderTableCellData,
3248
3196
  };
3249
3197
 
3250
- const renderCellInner = ({ rowIdx, context, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => (cell, i) => {
3198
+ const renderCellInner = ({ rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => (cell, i) => {
3251
3199
  const [isVisible, setVisibility] = useState(true);
3252
3200
  useEffect(() => {
3253
3201
  if (cellIdx !== openTableInnerIdx || !tableInner) {
@@ -3267,7 +3215,6 @@
3267
3215
  fieldIdx: i,
3268
3216
  displayTable,
3269
3217
  isVisible,
3270
- context,
3271
3218
  },
3272
3219
  })] }, String(i)));
3273
3220
  };
@@ -3283,11 +3230,10 @@
3283
3230
  return jsx(EmbeddableCellInner, { ...cellProps, ...rest });
3284
3231
  };
3285
3232
 
3286
- const TariffsTableCell = JSX(({ context, cells, rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => {
3233
+ const TariffsTableCell = JSX(({ cells, rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => {
3287
3234
  return (jsx("div", { className: "first:pl-0 w-80 flex-grow flex flex-col border-solid border-main-divider border border-t-0 border-x-0", role: "cell", children: cells?.length
3288
3235
  ? cells.map(renderCellInner({
3289
3236
  rowIdx,
3290
- context,
3291
3237
  cellIdx,
3292
3238
  setTableInner,
3293
3239
  tableInner,
@@ -3340,41 +3286,38 @@
3340
3286
  };
3341
3287
  const renderCols = (cols, rowIndex) => cols?.length > 0 ? (jsx("div", { className: `flex ${rowIndex} ${rowIndex === 0 ? 'text-secondary-text' : ''} last:mr-3`, children: cols.map((data, i) => (jsx("div", { className: `w-[76px] text-h6 mr-5 first:ml-8`, children: data }, String(i)))) })) : null;
3342
3288
 
3343
- const InnerTableBody = JSX(({ context, activeTabIndex, items }) => {
3289
+ const InnerTableBody = JSX(({ activeTabIndex, items }) => {
3344
3290
  const [hiddenTables, setHiddenTables] = useState({});
3345
3291
  const toggleTable = (key) => {
3346
3292
  setHiddenTables((oldState) => ({ ...oldState, [key]: !oldState[key] }));
3347
3293
  };
3348
3294
  return (jsx("div", { children: items.map((_, tableIdx) => {
3349
3295
  const key = `activeTabIdx:${activeTabIndex}-tableIdx:${tableIdx}`;
3350
- return (jsxs("div", { className: "w-full", children: [jsxs("div", { className: "flex p-4 bg-main-stroke text-xl-light text-center justify-center cursor-pointer relative", onClick: () => toggleTable(key), children: [_.title, jsx(ImgInner, { image: hiddenTables[key] ? 'PlusIcon' : 'MinusIcon', className: "absolute right-[22px]", width: "24", height: "24" })] }), jsx("div", { className: `w-full pl-2 overflow-hidden transition-height duration-500 ease-in-out ${hiddenTables[key] ? 'h-0' : ''}`, children: jsx("div", { className: "relative", children: jsx(InnerTableBodyItem, { context: context, rows: _.rowsData }) }) })] }, key));
3296
+ return (jsxs("div", { className: "w-full", children: [jsxs("div", { className: "flex p-4 bg-main-stroke text-xl-light text-center justify-center cursor-pointer relative", onClick: () => toggleTable(key), children: [_.title, jsx(ImgInner, { image: hiddenTables[key] ? 'PlusIcon' : 'MinusIcon', className: "absolute right-[22px]", width: "24", height: "24" })] }), jsx("div", { className: `w-full pl-2 overflow-hidden transition-height duration-500 ease-in-out ${hiddenTables[key] ? 'h-0' : ''}`, children: jsx("div", { className: "relative", children: jsx(InnerTableBodyItem, { rows: _.rowsData }) }) })] }, key));
3351
3297
  }) }));
3352
3298
  });
3353
3299
 
3354
3300
  const InnerTableHeader = JSX(({ currencies, linkToPDF, activeTabIndex, setActiveTabIndex }) => (jsxs("div", { className: "flex justify-between w-full pt-2.5 pb-3", children: [currencies && currencies.length > 1 ? (jsx("div", { className: "flex bg-secondary-light p-1.5 rounded-md", children: currencies.map((currency, idx) => (jsx("div", { className: `rounded-md text-xl-light px-4 py-3 cursor-pointer ${idx === activeTabIndex ? 'bg-primary-main text-white' : 'text-secondary-text'}`, onClick: () => setActiveTabIndex(idx), children: currency || idx + 1 }, currency))) })) : null, linkToPDF ? (jsx(Button, { href: linkToPDF, version: "secondary", target: "_blank", appendLeft: jsx(ImgInner, { image: "DocDownloadIcon", className: "mr-0.5", width: "20", height: "20", asSVG: true }), text: "\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0432 PDF" })) : null] })));
3355
3301
 
3356
3302
  const EMPTY_DATA = 'Данных нет';
3357
- const InnerTable = JSX(({ context, dataUrl, pdfUrl, onClick }) => {
3303
+ const InnerTable = JSX(({ dataUrl, pdfUrl, onClick }) => {
3358
3304
  const { tableData } = useTariffsInnerTableData(dataUrl);
3359
3305
  const [activeTabIndex, setActiveTabIndex] = useState(0);
3360
3306
  const items = tableData?.[activeTabIndex]?.items ?? [];
3361
3307
  const currencies = tableData?.map((item) => item.currency ?? '');
3362
- return tableData ? (jsxs("div", { className: "bg-white z-10", children: [jsx(InnerTableHeader, { currencies: currencies, activeTabIndex: activeTabIndex, setActiveTabIndex: setActiveTabIndex, linkToPDF: pdfUrl }), jsx(InnerTableBody, { context: context, activeTabIndex: activeTabIndex, items: items }), jsx(TableInnerButton, { context: context, onClick: onClick, isOpen: true })] })) : (jsxs("div", { className: "my-5 text-h6 text-center", children: [jsx("p", { children: EMPTY_DATA }), jsx(TableInnerButton, { context: context, onClick: onClick, isOpen: true })] }));
3308
+ return tableData ? (jsxs("div", { className: "bg-white z-10", children: [jsx(InnerTableHeader, { currencies: currencies, activeTabIndex: activeTabIndex, setActiveTabIndex: setActiveTabIndex, linkToPDF: pdfUrl }), jsx(InnerTableBody, { activeTabIndex: activeTabIndex, items: items }), jsx(TableInnerButton, { onClick: onClick, isOpen: true })] })) : (jsxs("div", { className: "my-5 text-h6 text-center", children: [jsx("p", { children: EMPTY_DATA }), jsx(TableInnerButton, { onClick: onClick, isOpen: true })] }));
3363
3309
  });
3364
3310
 
3365
- const TariffsTableRowContainer = JSX(({ context, children, tableInner, onHideContentClick }) => {
3366
- return (jsxs("div", { className: "self-start flex flex-col", role: "row", children: [jsx("div", { className: "flex", children: children }), tableInner ? (jsx("div", { className: "origin-top animate-expansion", children: jsx(InnerTable, { context: context, ...tableInner, onClick: onHideContentClick }) })) : null] }));
3367
- });
3311
+ const TariffsTableRowContainer = JSX(({ children, tableInner, onHideContentClick }) => (jsxs("div", { className: "self-start flex flex-col", role: "row", children: [jsx("div", { className: "flex", children: children }), tableInner ? (jsx("div", { className: "origin-top animate-expansion", children: jsx(InnerTable, { ...tableInner, onClick: onHideContentClick }) })) : null] })));
3368
3312
 
3369
- const TariffsTableRow = JSX(({ row: { header, data }, activeCardIndex, context, rowIdx }) => {
3313
+ const TariffsTableRow = JSX(({ row: { header, data }, activeCardIndex, rowIdx, ...rest }) => {
3370
3314
  const [tableInner, setTableInner] = useState(undefined);
3371
3315
  const [openTableInnerIdx, setOpenTableInnerIdx] = useState(undefined);
3372
3316
  const onHideContentClick = () => setTableInner(undefined);
3373
- return (jsxs(TariffsTableRowContainer, { context: context, onHideContentClick: onHideContentClick, tableInner: tableInner, children: [jsx("div", { className: `text-s py-5 ${FIRST_CELL_CLASSES} ${DIVIDER_CLASSES}`, children: jsxs("div", { className: "flex items-center text-primary-text", role: "cell", children: [header?.icon ? (jsx(ImgInner, { className: "mr-[14px] max-w-6 max-h-6", image: getIconWithVersion(header.icon), width: "24px", height: "24px", asSVG: true })) : null, header?.title ? jsx("div", { className: "text-m-light", children: header?.title }) : null] }) }), data?.length ? (jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, columnWidth: COLUMN_WIDTH$1, version: "tariff", children: data.map((cells, i) => (jsx(TariffsTableCell, { cells: cells, rowIdx: rowIdx, cellIdx: i, context: context, setTableInner: setTableInner, tableInner: tableInner, openTableInnerIdx: openTableInnerIdx, setOpenTableInnerIdx: setOpenTableInnerIdx }, String(i)))) })) : null] }));
3317
+ return (jsxs(TariffsTableRowContainer, { onHideContentClick: onHideContentClick, tableInner: tableInner, ...rest, children: [jsx("div", { className: `text-s py-5 ${FIRST_CELL_CLASSES} ${DIVIDER_CLASSES}`, children: jsxs("div", { className: "flex items-center text-primary-text", role: "cell", children: [header?.icon ? (jsx(ImgInner, { className: "mr-[14px] max-w-6 max-h-6", image: getIconWithVersion(header.icon), width: "24px", height: "24px", asSVG: true })) : null, header?.title ? jsx("div", { className: "text-m-light", children: header?.title }) : null] }) }), data?.length ? (jsx(TableCarouselContainer, { activeCardIndex: activeCardIndex, columnWidth: COLUMN_WIDTH$1, version: "tariff", children: data.map((cells, i) => (jsx(TariffsTableCell, { cells: cells, rowIdx: rowIdx, cellIdx: i, setTableInner: setTableInner, tableInner: tableInner, openTableInnerIdx: openTableInnerIdx, setOpenTableInnerIdx: setOpenTableInnerIdx, ...rest }, String(i)))) })) : null] }));
3374
3318
  });
3375
3319
 
3376
- const TariffsTable = JSX(({ className = '', context, title, description, rowHeaders, tariffsColumns: columns, hiddenRowsNum = 0, ...rest }) => {
3377
- const [activeCardIndex, setActiveCardIndex] = useState(0);
3320
+ const TariffsTable = JSX(({ className = '', title, description, rowHeaders, tariffsColumns: columns, hiddenRowsNum = 0, ...rest }) => {
3378
3321
  const colData = columns?.map(({ data }) => data) || [];
3379
3322
  const rowData = rowHeaders?.map((header, i) => ({
3380
3323
  header,
@@ -3384,12 +3327,11 @@
3384
3327
  const tableArrowScrollControlProps = useTableArrowScrollControl({
3385
3328
  columnsLength,
3386
3329
  colsLengthForScroll: COLS_LENGTH_FOR_SCROLL,
3387
- activeCardIndex,
3388
- setActiveCardIndex,
3389
3330
  });
3390
- const rows = (rowData || []).map((row, i) => (jsx(TariffsTableRow, { context: context, row: row, activeCardIndex: activeCardIndex, rowIdx: i }, String(i))));
3331
+ const { activeCardIndex } = tableArrowScrollControlProps;
3332
+ const rows = (rowData || []).map((row, i) => (jsx(TariffsTableRow, { row: row, activeCardIndex: activeCardIndex, rowIdx: i, ...rest }, String(i))));
3391
3333
  const [visibleRows, hiddenRows] = hiddenRowsNum > 0 ? [rows.slice(0, -hiddenRowsNum), rows.slice(-hiddenRowsNum)] : [rows, []];
3392
- return (jsxs(BlockWrapper, { className: `bg-white font-sans p-[50px] overflow-hidden text-primary-text relative ${columnsLength > 1 ? 'pr-0' : ''} ${className}`, context: context, ...rest, children: [renderTitle({ title, description }), renderDescription(description), hiddenRowsNum > 0 ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs(Wrapper, { tableArrowScrollControlProps: tableArrowScrollControlProps, children: [visibleRows, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenRows })] })), renderFoldButton: renderDefaultFoldButton })) : (jsx(Wrapper, { tableArrowScrollControlProps: tableArrowScrollControlProps, children: rows }))] }));
3334
+ return (jsxs(BlockWrapper, { className: `bg-white font-sans p-[50px] overflow-hidden text-primary-text relative ${columnsLength > 1 ? 'pr-0' : ''} ${className}`, ...rest, children: [renderTitle({ title, description }), renderDescription(description), hiddenRowsNum > 0 ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs(Wrapper, { tableArrowScrollControlProps: tableArrowScrollControlProps, children: [visibleRows, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenRows })] })), renderFoldButton: renderDefaultFoldButton })) : (jsx(Wrapper, { tableArrowScrollControlProps: tableArrowScrollControlProps, children: rows }))] }));
3393
3335
  });
3394
3336
  function renderTitle({ title, description }) {
3395
3337
  return title ? (jsx(Heading, { headingType: "h3", className: `text-center ${description ? 'mb-2.5' : 'mb-8'}`, title: title })) : null;
@@ -3440,45 +3382,71 @@
3440
3382
  const renderTag = (tag, key) => (jsx("span", { className: "text-m-light py-2 px-2.5 border-solid border rounded-md border-color-stroke", children: tag }, String(key)));
3441
3383
 
3442
3384
  const Tile = JSX((props) => {
3443
- const { context, title, headingType = 'h3', description, items, children, buttons, image, isDotted = true, listItemSize = 'M', className = '', version = 'primary', tags, ...rest } = props;
3385
+ const { title, headingType = 'h3', description, items, buttons, image, isDotted = true, listItemSize = 'M', className = '', version = 'primary', tags, children, ...rest } = props;
3444
3386
  const headingClassName = version === 'primary' ? 'text-primary-text' : '';
3445
- 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: 'min-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), tags?.length ? jsx(Tags, { tags: tags, className: "mt-5" }) : null] }) }));
3387
+ return (jsx(BlockWrapper, { className: `overflow-hidden font-sans p-9 pr-3 box-border ${className} ${VersionStyleMap[version]} ${getTileRightPadding(className)} ${getTileMinHeight(className)} `, ...rest, children: jsxs(BaseTile, { title: title ? (jsx(Heading, { headingType: headingType, as: "h2", title: title, className: `whitespace-pre-wrap max-w-[600px] ${headingClassName}` })) : null, buttons: buttons?.length ? (jsx(ButtonSection, { buttons: buttons.map((button) => ({ ...button, className: 'min-w-[158px]' })), className: "flex mt-8 gap-3", ...rest })) : 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), tags?.length ? jsx(Tags, { tags: tags, className: "mt-5" }) : null] }) }));
3446
3388
  });
3447
3389
  function renderList({ version, isDotted, listItemSize }, items) {
3448
3390
  return items?.length ? (jsx(List, { items: items, isDotted: isDotted, className: "mt-2.5", listItemSize: listItemSize, itemClassName: "mb-1.5", version: version })) : null;
3449
3391
  }
3450
3392
 
3393
+ const alignStyle = {
3394
+ left: 'items-start',
3395
+ center: 'items-center',
3396
+ right: 'items-end',
3397
+ };
3398
+ const gapStyleMap = {
3399
+ XXL: 'gap-10',
3400
+ XL: 'gap-8',
3401
+ L: 'gap-4',
3402
+ M: 'gap-3',
3403
+ S: 'gap-2',
3404
+ XS: 'gap-1',
3405
+ '': '',
3406
+ };
3407
+ const backgroundStyleMap = {
3408
+ transparent: '',
3409
+ primary: 'bg-white',
3410
+ secondary: 'bg-primary-main',
3411
+ };
3412
+ const VerticalLayout = JSX(({ className = '', children, gap = '', align = 'left', version = 'primary', ...rest }) => (jsx(BlockWrapper, { className: [
3413
+ 'flex flex-col',
3414
+ gapStyleMap[gap],
3415
+ alignStyle[align],
3416
+ backgroundStyleMap[version],
3417
+ className,
3418
+ ].join(' '), ...rest, children: children })));
3419
+ VerticalLayout.childrenTypes = {
3420
+ exclude: ['VerticalLayout'],
3421
+ };
3422
+
3451
3423
  const getItemListFontSize = (colValue) => (colValue === 'single' ? 'text-h6' : 'text-l');
3452
3424
  const cardColumnsModeStyleMap = {
3453
3425
  double: 'flex gap-y-2 gap-x-10 flex-wrap',
3454
3426
  single: 'flex gap-y-2 flex-col',
3455
3427
  };
3456
- const InvestmentGalleryCard = JSX(({ className = '', columnsMode = 'double', context, description, additionalDescription, image, cardList, title, version = 'primary', }) => {
3428
+ const InvestmentGalleryCard = JSX(({ className = '', columnsMode = 'double', description, additionalDescription, image, cardList, title, version = 'primary', }) => {
3457
3429
  const tileTitle = title ? (jsx(Heading, { headingType: "h4", as: "h3", className: "mb-3.5 z-10", title: title })) : null;
3458
3430
  const tileImage = image?.src ? (jsx(ImgInner, { className: "absolute bottom-0 right-0 m-0", image: image })) : null;
3459
3431
  return (jsx("section", { className: `relative overflow-hidden text-left border border-solid box-border
3460
3432
  p-9 min-w-[697px] min-h-[319px]
3461
3433
  ${BorderVersionStyleMap[version]}
3462
- ${className}`, role: "listitem", children: jsx(BaseTile, { context: context, className: "flex justify-between", title: tileTitle, image: tileImage, children: jsxs("div", { className: "flex flex-col justify-between", children: [jsxs("div", { className: "flex itens-center justify-between mb-4", children: [description ? jsx(Description, { className: "text-h6", description: description }) : null, additionalDescription ? (jsxs("div", { className: "text-m-light text-secondary-text", children: [" ", additionalDescription, " "] })) : null] }), cardList?.length ? (jsx("div", { className: `${cardColumnsModeStyleMap[columnsMode]}`, role: "list", children: renderCardList(cardList, columnsMode) })) : null] }) }) }));
3434
+ ${className}`, role: "listitem", children: jsx(BaseTile, { className: "flex justify-between", title: tileTitle, image: tileImage, children: jsxs("div", { className: "flex flex-col justify-between", children: [jsxs("div", { className: "flex itens-center justify-between mb-4", children: [description ? jsx(Description, { className: "text-h6", description: description }) : null, additionalDescription ? (jsxs("div", { className: "text-m-light text-secondary-text", children: [" ", additionalDescription, " "] })) : null] }), cardList?.length ? (jsx("div", { className: `${cardColumnsModeStyleMap[columnsMode]}`, role: "list", children: renderCardList(cardList, columnsMode) })) : null] }) }) }));
3463
3435
  });
3464
3436
  const renderCardList = (cardList, columnsMode) => cardList.map((item, i) => (jsxs("div", { className: columnsMode === 'double' ? 'basis-[calc(50%-20px)]' : '', role: "listitem", children: [item?.parameter ? (jsx("span", { className: `pr-2.5 ${getItemListFontSize(columnsMode)}`, children: item.parameter })) : null, item?.parameterDesccription ? (jsx("span", { className: "text-m-light text-secondary-text", children: item.parameterDesccription })) : null] }, String(i))));
3465
3437
 
3466
3438
  const BLUR_BLOCK_CLASSES = 'absolute top-0 bottom-0 w-[84px]';
3467
3439
  const CARD_FULL_VIEW_COUNT = 1;
3468
- const InvestmentGallery = JSX(({ context, cards = [], className = '', title, version = 'primary', ...rest }) => {
3440
+ const InvestmentGallery = JSX(({ cards = [], className = '', title, version = 'primary', ...rest }) => {
3469
3441
  const [activeCardIndex, setActiveCardIndex] = useState(0);
3470
3442
  const cardWidth = 525;
3471
- return (jsxs(BlockWrapper, { context: context, className: `relative font-sans p-9 overflow-hidden text-center
3472
- ${VersionStyleMap[version]}
3473
- ${className}`, ...rest, children: [title ? jsx(Heading, { headingType: "h3", className: "mb-9", title: title }) : null, jsxs("div", { children: [jsx("div", { className: "flex duration-1000 gap-3.5", style: { transform: `translateX(-${activeCardIndex * cardWidth}px)` }, role: "list", children: cards?.length
3474
- ? cards.map(renderInvestmentGalleryCard(context, className, version))
3475
- : null }), renderNavButtons({
3443
+ return (jsxs(BlockWrapper, { className: `relative font-sans p-9 overflow-hidden text-center ${VersionStyleMap[version]} ${className}`, ...rest, children: [title ? jsx(Heading, { headingType: "h3", className: "mb-9", title: title }) : null, jsxs("div", { children: [jsx("div", { className: "flex duration-1000 gap-3.5", style: { transform: `translateX(-${activeCardIndex * cardWidth}px)` }, role: "list", children: cards?.length ? cards.map(renderInvestmentGalleryCard(className, version)) : null }), renderNavButtons({
3476
3444
  cardsCount: cards.length,
3477
3445
  activeCardIndex,
3478
3446
  setActiveCardIndex,
3479
3447
  })] }), 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'}` })] }));
3480
3448
  });
3481
- const renderInvestmentGalleryCard = (context, className, version) => (card, i) => (jsx(InvestmentGalleryCard, { className: className, context: context, version: version, ...card }, String(i)));
3449
+ const renderInvestmentGalleryCard = (className, version) => (card, i) => jsx(InvestmentGalleryCard, { className: className, version: version, ...card }, String(i));
3482
3450
  const renderNavButtons = ({ cardsCount, activeCardIndex, setActiveCardIndex }) => {
3483
3451
  const isUseSlider = cardsCount > CARD_FULL_VIEW_COUNT;
3484
3452
  const showNextButton = isUseSlider && cardsCount - activeCardIndex > CARD_FULL_VIEW_COUNT;
@@ -3497,12 +3465,15 @@
3497
3465
  Accordion,
3498
3466
  AccordionItem,
3499
3467
  BenefitsBlock,
3468
+ BusinessBlock,
3500
3469
  Bonus,
3470
+ BonusBenefitsBlock,
3501
3471
  CardTransfer,
3502
3472
  ComparisonTable,
3503
3473
  Calculator,
3504
3474
  Catalog,
3505
3475
  ContactsBlock,
3476
+ ErrorBlock,
3506
3477
  ExchangeRateTile,
3507
3478
  Footer,
3508
3479
  Gallery,
@@ -3511,10 +3482,12 @@
3511
3482
  Headline,
3512
3483
  InsuranceAmountBlock,
3513
3484
  InvestmentInfo,
3485
+ InvestmentGallery,
3514
3486
  LinkDocs,
3515
3487
  MiniGallery,
3516
3488
  MobileAppTile,
3517
3489
  PictureText,
3490
+ Placeholder,
3518
3491
  ProductBlock,
3519
3492
  ProductGallery,
3520
3493
  ProductTile,
@@ -3524,16 +3497,13 @@
3524
3497
  OtherProducts,
3525
3498
  OtherProductsItem,
3526
3499
  Recommendation,
3500
+ SafeDepositRental,
3527
3501
  StepsBlock,
3502
+ Tabs,
3528
3503
  TariffsTable,
3529
3504
  TextBlock,
3530
3505
  Tile,
3531
- Placeholder,
3532
- BonusBenefitsBlock,
3533
- SafeDepositRental,
3534
- Tabs,
3535
- ErrorBlock,
3536
- InvestmentGallery,
3506
+ VerticalLayout,
3537
3507
  };
3538
3508
 
3539
3509
  function style2className(style) {
@@ -3575,30 +3545,27 @@
3575
3545
  d: "M21.48 11.95c.5-1.4-.4-2.6-1.9-2.6h-4c-.6 0-1.1-.5-1-1.2l.5-3.2c.2-.9-.4-1.9-1.3-2.2-.8-.3-1.8.1-2.2.7l-4.1 6.1M7.48 18.35l3.1 2.4c.4.4 1.3.6 1.9.6h3.8c1.2 0 2.5-.9 2.8-2.1l1.24-3.77" }), jsx("path", { ...params, d: "M2.38 18.35v-9.8c0-1.4.6-1.9 2-1.9h1c1.4 0 2 .5 2 1.9v9.8c0 1.4-.6 1.9-2 1.9h-1c-1.4 0-2-.5-2-1.9Z" })] }));
3576
3546
  };
3577
3547
 
3578
- const LikeControl = JSX(({ className, context, ...rest }) => {
3579
- const { useRouter, handlerDecorator = defaultHandlerDecorator } = context;
3548
+ const LikeControl = JSX(({ className = '' }) => {
3580
3549
  const router = useRouter();
3581
3550
  const likeService = useLikeService(router.pathname);
3582
- return (jsxs(BlockWrapper, { tag: "div", context: context, className: `border-main border-2 border-solid bg-white flex w-[125px] items-center justify-center gap-3 p-2 font-sans ${className || ''}`, ...rest, children: [jsx(LikeButton, { onClick: handlerDecorator(likeService.like), ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u043B\u0430\u0439\u043A\u00BB" }), jsx(LikeButton, { onClick: handlerDecorator(likeService.dislike), className: "rotate-180", ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u0434\u0438\u0437\u043B\u0430\u0439\u043A\u00BB" }), jsx("span", { className: "select-none", children: likeService.likeCount })] }));
3551
+ return (jsxs("div", { className: `border-main border-2 border-solid bg-white flex w-[125px] items-center justify-center gap-3 p-2 font-sans ${className}`, children: [jsx(LikeButton, { onClick: handlerDecorator(likeService.like), ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u043B\u0430\u0439\u043A\u00BB" }), jsx(LikeButton, { onClick: handlerDecorator(likeService.dislike), className: "rotate-180", ariaLabel: "\u041F\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C \u043E\u0442\u043C\u0435\u0442\u043A\u0443 \u00AB\u0434\u0438\u0437\u043B\u0430\u0439\u043A\u00BB" }), jsx("span", { className: "select-none", children: likeService.likeCount })] }));
3583
3552
  });
3584
3553
 
3585
3554
  const DEFAULT_SLOT_NAME = null;
3586
3555
 
3587
- function renderSlots({ slots = {}, parent, options, ancestors = [], }) {
3588
- return Object.entries(slots).reduce((res, [slotName, slotBlocks]) => ({
3589
- ...res,
3590
- [slotName]: renderBlocksList({
3591
- blocks: slotBlocks,
3592
- parent,
3593
- slotName,
3594
- options,
3595
- ancestors,
3596
- }),
3597
- }), {});
3598
- }
3556
+ const renderSlots = ({ slots, parent, options, ancestors = [], }) => Object.entries(slots || {}).reduce((res, [slotName, slotBlocks]) => ({
3557
+ ...res,
3558
+ [slotName]: renderBlocksList({
3559
+ blocks: slotBlocks,
3560
+ parent,
3561
+ slotName,
3562
+ options,
3563
+ ancestors,
3564
+ }),
3565
+ }), {});
3599
3566
 
3600
3567
  function renderBlock({ block = {}, options, ancestors = [] }) {
3601
- const { key, page, blockDecorator, blocksRegistry = {}, context } = options;
3568
+ const { key, page, blockDecorator, blocksRegistry = {} } = options;
3602
3569
  const { type, slots, blocks: childBlocks } = block;
3603
3570
  if (!(type && type in blocksRegistry)) {
3604
3571
  console.warn(`No block with "${type}" is registered`);
@@ -3613,57 +3580,51 @@
3613
3580
  ancestors,
3614
3581
  // Adjusted by decorator block and blockClassName
3615
3582
  render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
3616
- const { version, anchor, labels, content } = adjustedBlock;
3617
- return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, context: context, page: page, ancestors: ancestors, version: version, anchor: anchor, labels: labels, slots: blockSlots, ...content, children: children }, key)) : null;
3583
+ const { content } = adjustedBlock;
3584
+ return BlockComponent ? (jsx(BlockComponent, { page: page, block: adjustedBlock, className: adjustedBlockClassName, ancestors: ancestors, slots: blockSlots, ...content, children: children }, key)) : null;
3618
3585
  },
3619
3586
  }, key);
3620
3587
  }
3621
3588
 
3622
- const defaultChildRenderer = (_) => _;
3623
- function renderBlocksList({ blocks = [], parent, slotName = DEFAULT_SLOT_NAME, options, ancestors = [], }) {
3624
- const { blocksRegistry = {} } = options;
3625
- const { type } = parent;
3626
- const BlockComponent = type && blocksRegistry[type];
3627
- const { renderChild = defaultChildRenderer } = BlockComponent || {};
3628
- return blocks.map((_, j) => renderChild(renderBlock({
3629
- block: _,
3630
- options: { ...options, key: `${options.key ? options.key : _.type}-${j}` },
3631
- ancestors: [...ancestors, [parent, slotName]],
3632
- }), j));
3633
- }
3589
+ const renderBlocksList = ({ blocks, parent, slotName = DEFAULT_SLOT_NAME, options, ancestors = [], }) => (blocks || []).map((_, j) => renderBlock({
3590
+ block: _,
3591
+ options: { ...options, key: `${options.key ? options.key : _.type}-${j}` },
3592
+ ancestors: [...ancestors, [parent, slotName]],
3593
+ }));
3634
3594
 
3635
3595
  const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
3636
3596
  const ContentPage = JSX((props) => {
3637
- const { className = '', blocksRegistry, blockDecorator, context, data = {} } = props;
3597
+ const { className = '', blocksRegistry, blockDecorator, data = {} } = props;
3638
3598
  const { style: pageStyle, blocks, slots, likeControl, colorPalette = 'pc' } = data;
3639
3599
  const options = {
3640
3600
  key: '',
3641
3601
  blocksRegistry,
3642
3602
  page: data,
3643
3603
  blockDecorator: blockDecorator || defaultBlockDecorator,
3644
- context,
3645
3604
  };
3646
3605
  const pageSlots = renderSlots({ slots, parent: data, options });
3647
- return (jsxs("section", { className: `relative ${style2className(pageStyle)} ${className}`, "data-theme": colorPalette, children: [pageSlots?.header ? (jsx("div", { className: "mb-5 shadow-[0_8px_32px_0px_#00000014]", children: pageSlots.header })) : null, blocks?.length ? (jsxs("div", { className: "container grid grid-cols-12 gap-1", children: [renderBlocksList({ blocks, parent: data, options }), pageSlots?.footer ? pageSlots.footer : null] })) : null, likeControl ? renderLikeControl(context) : null] }));
3606
+ return (jsxs("section", { className: `relative ${style2className(pageStyle)} ${className}`, "data-theme": colorPalette, children: [pageSlots?.header ? (jsx("div", { className: "mb-5 shadow-[0_8px_32px_0px_#00000014]", children: pageSlots.header })) : null, blocks?.length ? (jsxs("div", { className: "container grid grid-cols-12 gap-1", children: [renderBlocksList({ blocks, parent: data, options }), pageSlots?.footer ? pageSlots.footer : null] })) : null, likeControl ? renderLikeControl() : null] }));
3648
3607
  });
3649
3608
  ContentPage.childrenTypes = [];
3650
3609
  ContentPage.slots = () => ['header', 'footer'];
3651
- function renderLikeControl(context) {
3652
- 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") }));
3610
+ function renderLikeControl() {
3611
+ 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" }) }));
3653
3612
  }
3654
3613
 
3655
- const packageVersion = "0.6.25";
3614
+ const packageVersion = "0.6.27";
3656
3615
 
3657
3616
  exports.Blocks = Blocks;
3658
3617
  exports.ContentPage = ContentPage;
3659
3618
  exports.DaDataAPI = DaDataAPI;
3660
3619
  exports.LikeAPI = LikeAPI;
3620
+ exports.handlerDecorator = handlerDecorator;
3661
3621
  exports.joinList = joinList;
3662
3622
  exports.packageVersion = packageVersion;
3663
3623
  exports.projectSettings = projectSettings;
3664
3624
  exports.setup = setup;
3665
3625
  exports.setupHooks = setupHooks;
3666
3626
  exports.url = url;
3627
+ exports.useRouter = useRouter;
3667
3628
 
3668
3629
  Object.defineProperty(exports, '__esModule', { value: true });
3669
3630