@redneckz/wildless-cms-uni-blocks 0.6.26 → 0.6.28

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 (1975) hide show
  1. package/bundle/ProjectSettings.d.ts +2 -0
  2. package/bundle/blocks.schema.json +1 -1
  3. package/bundle/bundle.umd.js +395 -429
  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/renderBlock.d.ts +0 -2
  18. package/bundle/components/ContentPage/renderBlockList.d.ts +1 -1
  19. package/bundle/components/ContentPage/renderSlots.d.ts +1 -1
  20. package/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  21. package/bundle/components/Footer/Contacts.d.ts +2 -2
  22. package/bundle/components/Footer/Footer.fallback.d.ts +2 -0
  23. package/bundle/components/Footer/FooterContent.d.ts +3 -19
  24. package/bundle/components/Footer/FooterDataProps.d.ts +12 -0
  25. package/bundle/components/Footer/FooterLink.d.ts +2 -2
  26. package/bundle/components/Footer/HorizontalNavigation.d.ts +1 -2
  27. package/bundle/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  28. package/bundle/components/Footer/Sitemap.d.ts +2 -2
  29. package/bundle/components/Footer/SocialMedia.d.ts +2 -2
  30. package/bundle/components/Footer/SocialMedia.mobile.d.ts +2 -2
  31. package/bundle/components/Footer/useFooterData.d.ts +2 -0
  32. package/bundle/components/Gallery/GalleryContainer.d.ts +1 -3
  33. package/bundle/components/Gallery/GalleryContent.d.ts +1 -1
  34. package/bundle/components/Header/DropdownMenu.d.ts +0 -2
  35. package/bundle/components/Header/HeaderBurger.d.ts +0 -2
  36. package/bundle/components/Header/HeaderSubMenu.d.ts +0 -2
  37. package/bundle/components/Header/HeaderSubMenuItem.d.ts +0 -2
  38. package/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  39. package/bundle/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  40. package/bundle/components/LikeControl/LikeControl.d.ts +5 -2
  41. package/bundle/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  42. package/bundle/components/OfficeMap/useOfficeMap.d.ts +56 -2
  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/renderBlock.d.ts +0 -2
  154. package/dist/components/ContentPage/renderBlock.js +3 -3
  155. package/dist/components/ContentPage/renderBlock.js.map +1 -1
  156. package/dist/components/ContentPage/renderBlockList.d.ts +1 -1
  157. package/dist/components/ContentPage/renderBlockList.js +5 -12
  158. package/dist/components/ContentPage/renderBlockList.js.map +1 -1
  159. package/dist/components/ContentPage/renderSlots.d.ts +1 -1
  160. package/dist/components/ContentPage/renderSlots.js +10 -12
  161. package/dist/components/ContentPage/renderSlots.js.map +1 -1
  162. package/dist/components/ErrorBlock/ErrorBlock.js +1 -6
  163. package/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  164. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  165. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  166. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  167. package/dist/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  168. package/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  169. package/dist/components/Footer/Contacts.d.ts +2 -2
  170. package/dist/components/Footer/Contacts.js +1 -10
  171. package/dist/components/Footer/Contacts.js.map +1 -1
  172. package/dist/components/Footer/Footer.fallback.d.ts +2 -0
  173. package/dist/components/Footer/Footer.fallback.js +13 -0
  174. package/dist/components/Footer/Footer.fallback.js.map +1 -0
  175. package/dist/components/Footer/Footer.js +6 -3
  176. package/dist/components/Footer/Footer.js.map +1 -1
  177. package/dist/components/Footer/Footer.mobile.js +10 -9
  178. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  179. package/dist/components/Footer/FooterContent.d.ts +3 -19
  180. package/dist/components/Footer/FooterDataProps.d.ts +12 -0
  181. package/dist/components/{ContentPage/ContentPageContext.js → Footer/FooterDataProps.js} +1 -1
  182. package/dist/components/Footer/FooterDataProps.js.map +1 -0
  183. package/dist/components/Footer/FooterLink.d.ts +2 -2
  184. package/dist/components/Footer/HorizontalNavigation.d.ts +1 -2
  185. package/dist/components/Footer/HorizontalNavigation.js +2 -5
  186. package/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  187. package/dist/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  188. package/dist/components/Footer/HorizontalNavigation.mobile.js +1 -6
  189. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  190. package/dist/components/Footer/HorizontalNavigationLink.js +6 -1
  191. package/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  192. package/dist/components/Footer/MediaButton.js +5 -2
  193. package/dist/components/Footer/MediaButton.js.map +1 -1
  194. package/dist/components/Footer/Sitemap.d.ts +2 -2
  195. package/dist/components/Footer/Sitemap.js +14 -12
  196. package/dist/components/Footer/Sitemap.js.map +1 -1
  197. package/dist/components/Footer/SocialMedia.d.ts +2 -2
  198. package/dist/components/Footer/SocialMedia.js +1 -6
  199. package/dist/components/Footer/SocialMedia.js.map +1 -1
  200. package/dist/components/Footer/SocialMedia.mobile.d.ts +2 -2
  201. package/dist/components/Footer/SocialMedia.mobile.js +1 -6
  202. package/dist/components/Footer/SocialMedia.mobile.js.map +1 -1
  203. package/dist/components/Footer/TextInformation.js +1 -6
  204. package/dist/components/Footer/TextInformation.js.map +1 -1
  205. package/dist/components/Footer/TextInformation.mobile.js +2 -5
  206. package/dist/components/Footer/TextInformation.mobile.js.map +1 -1
  207. package/dist/components/Footer/TextInformationLink.js +6 -1
  208. package/dist/components/Footer/TextInformationLink.js.map +1 -1
  209. package/dist/components/Footer/useFooterData.d.ts +2 -0
  210. package/dist/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +5 -5
  211. package/dist/components/Footer/useFooterData.js.map +1 -0
  212. package/dist/components/Gallery/Gallery.mobile.js +4 -4
  213. package/dist/components/Gallery/Gallery.mobile.js.map +1 -1
  214. package/dist/components/Gallery/GalleryContainer.d.ts +1 -3
  215. package/dist/components/Gallery/GalleryContainer.js +2 -2
  216. package/dist/components/Gallery/GalleryContainer.js.map +1 -1
  217. package/dist/components/Gallery/GalleryContent.d.ts +1 -1
  218. package/dist/components/Gallery/GalleryInner.js +2 -2
  219. package/dist/components/Gallery/GalleryInner.js.map +1 -1
  220. package/dist/components/GracePeriod/GracePeriod.js +1 -3
  221. package/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  222. package/dist/components/Header/DropdownMenu.d.ts +0 -2
  223. package/dist/components/Header/DropdownMenu.js +3 -4
  224. package/dist/components/Header/DropdownMenu.js.map +1 -1
  225. package/dist/components/Header/Header.js +8 -9
  226. package/dist/components/Header/Header.js.map +1 -1
  227. package/dist/components/Header/Header.mobile.js +8 -14
  228. package/dist/components/Header/Header.mobile.js.map +1 -1
  229. package/dist/components/Header/HeaderBurger.d.ts +0 -2
  230. package/dist/components/Header/HeaderBurger.js +2 -2
  231. package/dist/components/Header/HeaderBurger.js.map +1 -1
  232. package/dist/components/Header/HeaderSubMenu.d.ts +0 -2
  233. package/dist/components/Header/HeaderSubMenu.js +4 -3
  234. package/dist/components/Header/HeaderSubMenu.js.map +1 -1
  235. package/dist/components/Header/HeaderSubMenuItem.d.ts +0 -2
  236. package/dist/components/Header/HeaderSubMenuItem.js +2 -5
  237. package/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  238. package/dist/components/Headline/Headline.js +1 -1
  239. package/dist/components/Headline/Headline.js.map +1 -1
  240. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  241. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  242. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  243. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  244. package/dist/components/InvestmentGallery/InvestmentGallery.js +3 -7
  245. package/dist/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  246. package/dist/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  247. package/dist/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  248. package/dist/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  249. package/dist/components/InvestmentInfo/InvestmentInfo.js +2 -2
  250. package/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  251. package/dist/components/LikeControl/LikeControl.d.ts +5 -2
  252. package/dist/components/LikeControl/LikeControl.js +5 -6
  253. package/dist/components/LikeControl/LikeControl.js.map +1 -1
  254. package/dist/components/LinkDocs/LinkDocs.js +1 -3
  255. package/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  256. package/dist/components/LinkDocs/LinkDocs.mobile.js +1 -3
  257. package/dist/components/LinkDocs/LinkDocs.mobile.js.map +1 -1
  258. package/dist/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  259. package/dist/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  260. package/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  261. package/dist/components/LinkList/LinkList.js +1 -3
  262. package/dist/components/LinkList/LinkList.js.map +1 -1
  263. package/dist/components/MobileAppTile/MobileAppTile.js +4 -4
  264. package/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  265. package/dist/components/OfficeMap/OfficeMap.js +4 -2
  266. package/dist/components/OfficeMap/OfficeMap.js.map +1 -1
  267. package/dist/components/OfficeMap/useOfficeMap.d.ts +56 -2
  268. package/dist/components/OfficeMap/useOfficeMap.js +4 -1
  269. package/dist/components/OfficeMap/useOfficeMap.js.map +1 -1
  270. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  271. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  272. package/dist/components/OtherProducts/OtherProducts.js +1 -1
  273. package/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  274. package/dist/components/PictureText/PictureText.js +1 -3
  275. package/dist/components/PictureText/PictureText.js.map +1 -1
  276. package/dist/components/Placeholder/Placeholder.d.ts +0 -1
  277. package/dist/components/Placeholder/Placeholder.js +2 -2
  278. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  279. package/dist/components/ProductBlock/ProductBlock.js +4 -7
  280. package/dist/components/ProductBlock/ProductBlock.js.map +1 -1
  281. package/dist/components/ProductBlock/ProductBlockInner.js +2 -5
  282. package/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
  283. package/dist/components/ProductBlock/ProductBlockInner.mobile.js +2 -2
  284. package/dist/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
  285. package/dist/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  286. package/dist/components/ProductBlock/renderBackwardButton.js +1 -0
  287. package/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  288. package/dist/components/ProductGallery/ProductGallery.js +5 -5
  289. package/dist/components/ProductGallery/ProductGallery.js.map +1 -1
  290. package/dist/components/ProductTile/ProductTile.js +4 -6
  291. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  292. package/dist/components/PromoTile/PromoTile.js +1 -3
  293. package/dist/components/PromoTile/PromoTile.js.map +1 -1
  294. package/dist/components/Recommendation/Recommendation.js +4 -9
  295. package/dist/components/Recommendation/Recommendation.js.map +1 -1
  296. package/dist/components/Recommendation/RecommendationCard.d.ts +2 -2
  297. package/dist/components/Recommendation/RecommendationCard.js +2 -2
  298. package/dist/components/Recommendation/RecommendationCard.js.map +1 -1
  299. package/dist/components/SafeDepositRental/SafeDepositRental.js +3 -3
  300. package/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  301. package/dist/components/StepsBlock/StepsBlock.js +3 -12
  302. package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  303. package/dist/components/StepsBlock/renderStepContent.d.ts +2 -5
  304. package/dist/components/StepsBlock/renderStepContent.js +2 -3
  305. package/dist/components/StepsBlock/renderStepContent.js.map +1 -1
  306. package/dist/components/Tabs/LinkTab.d.ts +8 -0
  307. package/dist/components/Tabs/LinkTab.js +20 -0
  308. package/dist/components/Tabs/LinkTab.js.map +1 -0
  309. package/dist/components/Tabs/Tabs.d.ts +2 -2
  310. package/dist/components/Tabs/Tabs.js +2 -2
  311. package/dist/components/Tabs/Tabs.js.map +1 -1
  312. package/dist/components/Tabs/TabsContent.d.ts +5 -5
  313. package/dist/components/Tabs/renderGroupTab.d.ts +2 -2
  314. package/dist/components/Tabs/renderGroupTab.js +1 -1
  315. package/dist/components/Tabs/renderGroupTab.js.map +1 -1
  316. package/dist/components/Tabs/renderTab.d.ts +4 -6
  317. package/dist/components/Tabs/renderTab.js +5 -19
  318. package/dist/components/Tabs/renderTab.js.map +1 -1
  319. package/dist/components/TariffsTable/EmbeddableCellData.js +3 -5
  320. package/dist/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  321. package/dist/components/TariffsTable/TariffsTable.js +4 -7
  322. package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  323. package/dist/components/TariffsTable/TariffsTable.mobile.js +2 -5
  324. package/dist/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
  325. package/dist/components/TariffsTable/TariffsTableCell.js +1 -2
  326. package/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  327. package/dist/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  328. package/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  329. package/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  330. package/dist/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  331. package/dist/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  332. package/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  333. package/dist/components/TariffsTable/TariffsTableRow.js +3 -3
  334. package/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  335. package/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  336. package/dist/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  337. package/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  338. package/dist/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  339. package/dist/components/TariffsTable/TariffsTableTileCell.js +8 -13
  340. package/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  341. package/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
  342. package/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  343. package/dist/components/Tile/Tile.js +2 -2
  344. package/dist/components/Tile/Tile.js.map +1 -1
  345. package/dist/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  346. package/dist/components/VerticalLayout/VerticalLayout.js +35 -0
  347. package/dist/components/VerticalLayout/VerticalLayout.js.map +1 -0
  348. package/dist/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  349. package/dist/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  350. package/dist/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  351. package/dist/hooks/handlerDecorator.d.ts +5 -0
  352. package/dist/hooks/handlerDecorator.js +12 -0
  353. package/dist/hooks/handlerDecorator.js.map +1 -0
  354. package/dist/hooks/useLink.d.ts +6 -16
  355. package/dist/hooks/useLink.js +21 -17
  356. package/dist/hooks/useLink.js.map +1 -1
  357. package/dist/hooks/useRouter.d.ts +13 -0
  358. package/dist/hooks/useRouter.js +21 -0
  359. package/dist/hooks/useRouter.js.map +1 -0
  360. package/dist/hooks/useTableArrowScrollControl.d.ts +1 -3
  361. package/dist/hooks/useTableArrowScrollControl.js +13 -4
  362. package/dist/hooks/useTableArrowScrollControl.js.map +1 -1
  363. package/dist/index.d.ts +2 -0
  364. package/dist/index.js +5 -1
  365. package/dist/index.js.map +1 -1
  366. package/dist/model/BlockVersion.d.ts +1 -0
  367. package/dist/model/BlockVersion.js +6 -1
  368. package/dist/model/BlockVersion.js.map +1 -1
  369. package/dist/model/BlocksRegistry.d.ts +1 -1
  370. package/dist/model/JSXBlock.d.ts +7 -8
  371. package/dist/react/setup-fixture.d.ts +0 -3
  372. package/dist/react/setup-fixture.js +9 -25
  373. package/dist/react/setup-fixture.js.map +1 -1
  374. package/dist/services/sitemap/SitemapProps.d.ts +1 -1
  375. package/dist/services/sitemap/findActiveSubItem.d.ts +1 -1
  376. package/dist/services/sitemap/isHrefActive.js +1 -2
  377. package/dist/services/sitemap/isHrefActive.js.map +1 -1
  378. package/dist/services/sitemap/isSubItemActive.d.ts +1 -1
  379. package/dist/services/sitemap/isTopItemActive.d.ts +1 -1
  380. package/dist/services/sitemap/useSWRResource.d.ts +2 -0
  381. package/dist/services/sitemap/useSWRResource.js +12 -0
  382. package/dist/services/sitemap/useSWRResource.js.map +1 -0
  383. package/dist/ui-kit/BlockWrapper.d.ts +2 -2
  384. package/dist/ui-kit/BlockWrapper.js +3 -2
  385. package/dist/ui-kit/BlockWrapper.js.map +1 -1
  386. package/dist/ui-kit/Breadcrumb.js +6 -1
  387. package/dist/ui-kit/Breadcrumb.js.map +1 -1
  388. package/dist/ui-kit/Button/Button.js +8 -9
  389. package/dist/ui-kit/Button/Button.js.map +1 -1
  390. package/dist/ui-kit/Button/ButtonInner.js +2 -3
  391. package/dist/ui-kit/Button/ButtonInner.js.map +1 -1
  392. package/dist/ui-kit/Button/ButtonSection.d.ts +2 -2
  393. package/dist/ui-kit/Button/ButtonSection.js +1 -6
  394. package/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  395. package/dist/ui-kit/Checkbox/Checkbox.js +1 -3
  396. package/dist/ui-kit/Checkbox/Checkbox.js.map +1 -1
  397. package/dist/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  398. package/dist/ui-kit/HeaderItem/HeaderItem.js +6 -1
  399. package/dist/ui-kit/HeaderItem/HeaderItem.js.map +1 -1
  400. package/dist/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  401. package/dist/ui-kit/InnerTable/InnerTable.js +2 -2
  402. package/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  403. package/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  404. package/dist/ui-kit/InnerTable/InnerTableBody.js +2 -2
  405. package/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  406. package/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  407. package/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  408. package/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  409. package/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  410. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  411. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  412. package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  413. package/dist/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  414. package/dist/ui-kit/SearchBar/SearchBar.js +1 -3
  415. package/dist/ui-kit/SearchBar/SearchBar.js.map +1 -1
  416. package/dist/ui-kit/SearchBar/SearchBar.mobile.d.ts +2 -2
  417. package/dist/ui-kit/SearchBar/SearchBar.mobile.js +1 -3
  418. package/dist/ui-kit/SearchBar/SearchBar.mobile.js.map +1 -1
  419. package/dist/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  420. package/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  421. package/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  422. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  423. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  424. package/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  425. package/dist/ui-kit/TopItem/TopItem.js +6 -1
  426. package/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  427. package/dist/utils/adjustHref.js +2 -10
  428. package/dist/utils/adjustHref.js.map +1 -1
  429. package/lib/ProjectSettings.d.ts +2 -0
  430. package/lib/ProjectSettings.js +3 -0
  431. package/lib/ProjectSettings.js.map +1 -1
  432. package/lib/common.css +1 -1
  433. package/lib/components/Accordion/Accordion.fixture.d.ts +1 -0
  434. package/lib/components/Accordion/Accordion.fixture.mobile.d.ts +1 -0
  435. package/lib/components/Accordion/Accordion.js +1 -1
  436. package/lib/components/Accordion/Accordion.js.map +1 -1
  437. package/lib/components/Accordion/Accordion.mobile.js +1 -1
  438. package/lib/components/Accordion/Accordion.mobile.js.map +1 -1
  439. package/lib/components/BaseTile/BaseTile.d.ts +2 -2
  440. package/lib/components/BaseTile/BaseTile.js +1 -3
  441. package/lib/components/BaseTile/BaseTile.js.map +1 -1
  442. package/lib/components/BenefitsBlock/BenefitsBlock.fixture.d.ts +1 -0
  443. package/lib/components/Blocks.js +10 -6
  444. package/lib/components/Blocks.js.map +1 -1
  445. package/lib/components/Blocks.mobile.js +0 -2
  446. package/lib/components/Blocks.mobile.js.map +1 -1
  447. package/lib/components/Bonus/Bonus.fixture.d.ts +1 -0
  448. package/lib/components/Bonus/Bonus.js +3 -3
  449. package/lib/components/Bonus/Bonus.js.map +1 -1
  450. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.d.ts +1 -0
  451. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  452. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  453. package/lib/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  454. package/lib/{ui-kit/Button/Button.fixture.mobile.d.ts → components/BusinessBlock/BusinessBlock.fixture.d.ts} +1 -1
  455. package/lib/components/BusinessBlock/BusinessBlock.js +7 -0
  456. package/lib/components/BusinessBlock/BusinessBlock.js.map +1 -0
  457. package/lib/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  458. package/lib/components/BusinessBlock/BusinessBlockContent.js +2 -0
  459. package/lib/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  460. package/lib/components/BusinessBlock/BusinessCard.d.ts +2 -0
  461. package/lib/components/BusinessBlock/BusinessCard.js +14 -0
  462. package/lib/components/BusinessBlock/BusinessCard.js.map +1 -0
  463. package/lib/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  464. package/lib/components/Calculator/BonusCalculatorForm.js +2 -2
  465. package/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  466. package/lib/components/Calculator/Calculator.fixture.d.ts +1 -0
  467. package/lib/components/Calculator/Calculator.js +3 -5
  468. package/lib/components/Calculator/Calculator.js.map +1 -1
  469. package/lib/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  470. package/lib/components/Calculator/CreditCalculatorForm.js +3 -8
  471. package/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  472. package/lib/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  473. package/lib/components/Calculator/DepositCalculatorForm.js +3 -8
  474. package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  475. package/lib/components/Calculator/renderButtonSection.d.ts +1 -2
  476. package/lib/components/Calculator/renderButtonSection.js +2 -2
  477. package/lib/components/Calculator/renderButtonSection.js.map +1 -1
  478. package/lib/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  479. package/lib/components/Calculator/renderCalculatorBlock.js +2 -2
  480. package/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  481. package/lib/components/CardTransfer/CardTransfer.fixture.d.ts +1 -0
  482. package/lib/components/CardTransfer/CardTransfer.js +3 -4
  483. package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  484. package/lib/components/Catalog/Catalog.fixture.d.ts +1 -0
  485. package/lib/components/Catalog/Catalog.js +12 -22
  486. package/lib/components/Catalog/Catalog.js.map +1 -1
  487. package/lib/components/Catalog/CatalogCard.d.ts +2 -2
  488. package/lib/components/Catalog/CatalogCard.js +1 -3
  489. package/lib/components/Catalog/CatalogCard.js.map +1 -1
  490. package/lib/components/ComparisonTable/ComparisonTable.fixture.d.ts +1 -0
  491. package/lib/components/ComparisonTable/ComparisonTable.fixture.mobile.d.ts +1 -0
  492. package/lib/components/ComparisonTable/ComparisonTable.js +5 -7
  493. package/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  494. package/lib/components/ComparisonTable/ComparisonTable.mobile.js +3 -3
  495. package/lib/components/ComparisonTable/ComparisonTable.mobile.js.map +1 -1
  496. package/lib/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  497. package/lib/components/ComparisonTable/ComparisonTableBody.js +3 -9
  498. package/lib/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  499. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  500. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  501. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  502. package/lib/components/ComparisonTable/ComparisonTableRows.js +2 -2
  503. package/lib/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  504. package/lib/components/ComparisonTable/HeaderCell.js +1 -1
  505. package/lib/components/ComparisonTable/HeaderCell.js.map +1 -1
  506. package/lib/components/ContactsBlock/ContactsBlock.fixture.d.ts +1 -0
  507. package/lib/components/ContactsBlock/ContactsBlock.js +2 -2
  508. package/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
  509. package/lib/components/ContentPage/ContentPage.fixture.d.ts +1 -0
  510. package/lib/components/ContentPage/ContentPage.fixture.mobile.d.ts +1 -0
  511. package/lib/components/ContentPage/ContentPage.js +4 -5
  512. package/lib/components/ContentPage/ContentPage.js.map +1 -1
  513. package/lib/components/ContentPage/renderBlock.d.ts +0 -2
  514. package/lib/components/ContentPage/renderBlock.js +3 -3
  515. package/lib/components/ContentPage/renderBlock.js.map +1 -1
  516. package/lib/components/ContentPage/renderBlockList.d.ts +1 -1
  517. package/lib/components/ContentPage/renderBlockList.js +5 -12
  518. package/lib/components/ContentPage/renderBlockList.js.map +1 -1
  519. package/lib/components/ContentPage/renderSlots.d.ts +1 -1
  520. package/lib/components/ContentPage/renderSlots.js +10 -12
  521. package/lib/components/ContentPage/renderSlots.js.map +1 -1
  522. package/lib/components/ErrorBlock/ErrorBlock.fixture.d.ts +1 -0
  523. package/lib/components/ErrorBlock/ErrorBlock.js +1 -6
  524. package/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  525. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  526. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  527. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  528. package/lib/components/ExchangeRateTile/ExchangeRateTile.fixture.d.ts +1 -0
  529. package/lib/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  530. package/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  531. package/lib/components/Footer/Contacts.d.ts +2 -2
  532. package/lib/components/Footer/Contacts.js +1 -10
  533. package/lib/components/Footer/Contacts.js.map +1 -1
  534. package/lib/components/Footer/Footer.fallback.d.ts +2 -0
  535. package/lib/components/Footer/Footer.fallback.js +10 -0
  536. package/lib/components/Footer/Footer.fallback.js.map +1 -0
  537. package/lib/components/Footer/Footer.fixture.d.ts +1 -0
  538. package/lib/components/Footer/Footer.fixture.mobile.d.ts +1 -0
  539. package/lib/components/Footer/Footer.js +6 -3
  540. package/lib/components/Footer/Footer.js.map +1 -1
  541. package/lib/components/Footer/Footer.mobile.js +10 -9
  542. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  543. package/lib/components/Footer/FooterContent.d.ts +3 -19
  544. package/lib/components/Footer/FooterDataProps.d.ts +12 -0
  545. package/lib/components/Footer/FooterDataProps.js +2 -0
  546. package/lib/components/Footer/FooterDataProps.js.map +1 -0
  547. package/lib/components/Footer/FooterLink.d.ts +2 -2
  548. package/lib/components/Footer/HorizontalNavigation.d.ts +1 -2
  549. package/lib/components/Footer/HorizontalNavigation.js +2 -5
  550. package/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  551. package/lib/components/Footer/HorizontalNavigation.mobile.d.ts +1 -2
  552. package/lib/components/Footer/HorizontalNavigation.mobile.js +1 -6
  553. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  554. package/lib/components/Footer/HorizontalNavigationLink.js +6 -1
  555. package/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  556. package/lib/components/Footer/MediaButton.js +5 -2
  557. package/lib/components/Footer/MediaButton.js.map +1 -1
  558. package/lib/components/Footer/Sitemap.d.ts +2 -2
  559. package/lib/components/Footer/Sitemap.js +14 -12
  560. package/lib/components/Footer/Sitemap.js.map +1 -1
  561. package/lib/components/Footer/SocialMedia.d.ts +2 -2
  562. package/lib/components/Footer/SocialMedia.js +1 -6
  563. package/lib/components/Footer/SocialMedia.js.map +1 -1
  564. package/lib/components/Footer/SocialMedia.mobile.d.ts +2 -2
  565. package/lib/components/Footer/SocialMedia.mobile.js +1 -6
  566. package/lib/components/Footer/SocialMedia.mobile.js.map +1 -1
  567. package/lib/components/Footer/TextInformation.js +1 -6
  568. package/lib/components/Footer/TextInformation.js.map +1 -1
  569. package/lib/components/Footer/TextInformation.mobile.js +2 -5
  570. package/lib/components/Footer/TextInformation.mobile.js.map +1 -1
  571. package/lib/components/Footer/TextInformationLink.js +6 -1
  572. package/lib/components/Footer/TextInformationLink.js.map +1 -1
  573. package/lib/components/Footer/useFooterData.d.ts +2 -0
  574. package/lib/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +3 -3
  575. package/lib/components/Footer/useFooterData.js.map +1 -0
  576. package/lib/components/Gallery/Gallery.fixture.d.ts +1 -0
  577. package/lib/components/Gallery/Gallery.fixture.mobile.d.ts +1 -0
  578. package/lib/components/Gallery/Gallery.mobile.js +4 -4
  579. package/lib/components/Gallery/Gallery.mobile.js.map +1 -1
  580. package/lib/components/Gallery/GalleryContainer.d.ts +1 -3
  581. package/lib/components/Gallery/GalleryContainer.js +2 -2
  582. package/lib/components/Gallery/GalleryContainer.js.map +1 -1
  583. package/lib/components/Gallery/GalleryContent.d.ts +1 -1
  584. package/lib/components/Gallery/GalleryInner.js +2 -2
  585. package/lib/components/Gallery/GalleryInner.js.map +1 -1
  586. package/lib/components/GracePeriod/GracePeriod.fixture.d.ts +1 -0
  587. package/lib/components/GracePeriod/GracePeriod.js +1 -3
  588. package/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  589. package/lib/components/Header/DropdownMenu.d.ts +0 -2
  590. package/lib/components/Header/DropdownMenu.js +3 -4
  591. package/lib/components/Header/DropdownMenu.js.map +1 -1
  592. package/lib/components/Header/Header.fixture.d.ts +1 -0
  593. package/lib/components/Header/Header.fixture.mobile.d.ts +1 -0
  594. package/lib/components/Header/Header.js +8 -9
  595. package/lib/components/Header/Header.js.map +1 -1
  596. package/lib/components/Header/Header.mobile.js +8 -14
  597. package/lib/components/Header/Header.mobile.js.map +1 -1
  598. package/lib/components/Header/HeaderBurger.d.ts +0 -2
  599. package/lib/components/Header/HeaderBurger.js +2 -2
  600. package/lib/components/Header/HeaderBurger.js.map +1 -1
  601. package/lib/components/Header/HeaderSubMenu.d.ts +0 -2
  602. package/lib/components/Header/HeaderSubMenu.js +4 -3
  603. package/lib/components/Header/HeaderSubMenu.js.map +1 -1
  604. package/lib/components/Header/HeaderSubMenuItem.d.ts +0 -2
  605. package/lib/components/Header/HeaderSubMenuItem.js +2 -5
  606. package/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  607. package/lib/components/Headline/Headline.fixture.d.ts +1 -0
  608. package/lib/components/Headline/Headline.fixture.mobile.d.ts +1 -0
  609. package/lib/components/Headline/Headline.js +1 -1
  610. package/lib/components/Headline/Headline.js.map +1 -1
  611. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.fixture.d.ts +1 -0
  612. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  613. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  614. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  615. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  616. package/lib/components/InvestmentGallery/InvestmentGallery.fixture.d.ts +1 -0
  617. package/lib/components/InvestmentGallery/InvestmentGallery.js +3 -7
  618. package/lib/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  619. package/lib/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  620. package/lib/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  621. package/lib/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  622. package/lib/components/InvestmentInfo/InvestmentInfo.fixture.d.ts +1 -0
  623. package/lib/components/InvestmentInfo/InvestmentInfo.js +2 -2
  624. package/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  625. package/lib/components/LikeControl/LikeControl.d.ts +5 -2
  626. package/lib/components/LikeControl/LikeControl.fixture.d.ts +1 -0
  627. package/lib/components/LikeControl/LikeControl.js +4 -5
  628. package/lib/components/LikeControl/LikeControl.js.map +1 -1
  629. package/lib/components/LinkDocs/LinkDocs.fixture.d.ts +1 -0
  630. package/lib/components/LinkDocs/LinkDocs.fixture.mobile.d.ts +1 -0
  631. package/lib/components/LinkDocs/LinkDocs.js +1 -3
  632. package/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  633. package/lib/components/LinkDocs/LinkDocs.mobile.js +1 -3
  634. package/lib/components/LinkDocs/LinkDocs.mobile.js.map +1 -1
  635. package/lib/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  636. package/lib/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  637. package/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  638. package/lib/components/LinkList/LinkList.fixture.d.ts +1 -0
  639. package/lib/components/LinkList/LinkList.js +1 -3
  640. package/lib/components/LinkList/LinkList.js.map +1 -1
  641. package/lib/components/MiniGallery/MiniGallery.fixture.d.ts +1 -0
  642. package/lib/components/MobileAppTile/MobileAppTile.fixture.d.ts +1 -0
  643. package/lib/components/MobileAppTile/MobileAppTile.fixture.mobile.d.ts +1 -0
  644. package/lib/components/MobileAppTile/MobileAppTile.js +4 -4
  645. package/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  646. package/lib/components/OfficeMap/OfficeMap.fixture.d.ts +1 -0
  647. package/lib/components/OfficeMap/OfficeMap.js +4 -2
  648. package/lib/components/OfficeMap/OfficeMap.js.map +1 -1
  649. package/lib/components/OfficeMap/useOfficeMap.d.ts +56 -2
  650. package/lib/components/OfficeMap/useOfficeMap.js +4 -1
  651. package/lib/components/OfficeMap/useOfficeMap.js.map +1 -1
  652. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.fixture.d.ts +1 -0
  653. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  654. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  655. package/lib/components/OtherProducts/OtherProducts.fixture.d.ts +1 -0
  656. package/lib/components/OtherProducts/OtherProducts.js +1 -1
  657. package/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  658. package/lib/components/PictureText/PictureText.fixture.d.ts +1 -0
  659. package/lib/components/PictureText/PictureText.js +1 -3
  660. package/lib/components/PictureText/PictureText.js.map +1 -1
  661. package/lib/components/Placeholder/Placeholder.d.ts +0 -1
  662. package/lib/components/Placeholder/Placeholder.fixture.d.ts +1 -0
  663. package/lib/components/Placeholder/Placeholder.fixture.mobile.d.ts +1 -0
  664. package/lib/components/Placeholder/Placeholder.js +2 -2
  665. package/lib/components/Placeholder/Placeholder.js.map +1 -1
  666. package/lib/components/ProductBlock/ProductBlock.fixture.d.ts +1 -0
  667. package/lib/components/ProductBlock/ProductBlock.fixture.mobile.d.ts +1 -0
  668. package/lib/components/ProductBlock/ProductBlock.js +4 -7
  669. package/lib/components/ProductBlock/ProductBlock.js.map +1 -1
  670. package/lib/components/ProductBlock/ProductBlockInner.js +2 -5
  671. package/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
  672. package/lib/components/ProductBlock/ProductBlockInner.mobile.js +2 -2
  673. package/lib/components/ProductBlock/ProductBlockInner.mobile.js.map +1 -1
  674. package/lib/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  675. package/lib/components/ProductBlock/renderBackwardButton.js +1 -0
  676. package/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  677. package/lib/components/ProductGallery/ProductGallery.fixture.d.ts +1 -0
  678. package/lib/components/ProductGallery/ProductGallery.js +5 -5
  679. package/lib/components/ProductGallery/ProductGallery.js.map +1 -1
  680. package/lib/components/ProductTile/ProductTile.fixture.d.ts +1 -0
  681. package/lib/components/ProductTile/ProductTile.js +4 -6
  682. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  683. package/lib/components/PromoTile/PromoTile.fixture.d.ts +1 -0
  684. package/lib/components/PromoTile/PromoTile.js +1 -3
  685. package/lib/components/PromoTile/PromoTile.js.map +1 -1
  686. package/lib/components/Recommendation/Recommendation.fixture.d.ts +1 -0
  687. package/lib/components/Recommendation/Recommendation.js +4 -9
  688. package/lib/components/Recommendation/Recommendation.js.map +1 -1
  689. package/lib/components/Recommendation/RecommendationCard.d.ts +2 -2
  690. package/lib/components/Recommendation/RecommendationCard.js +2 -2
  691. package/lib/components/Recommendation/RecommendationCard.js.map +1 -1
  692. package/lib/components/SafeDepositRental/SafeDepositRental.fixture.d.ts +1 -0
  693. package/lib/components/SafeDepositRental/SafeDepositRental.js +3 -3
  694. package/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  695. package/lib/components/StepsBlock/StepsBlock.fixture.d.ts +1 -0
  696. package/lib/components/StepsBlock/StepsBlock.fixture.mobile.d.ts +1 -0
  697. package/lib/components/StepsBlock/StepsBlock.js +3 -12
  698. package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  699. package/lib/components/StepsBlock/renderStepContent.d.ts +2 -5
  700. package/lib/components/StepsBlock/renderStepContent.js +2 -3
  701. package/lib/components/StepsBlock/renderStepContent.js.map +1 -1
  702. package/lib/components/Tabs/LinkTab.d.ts +8 -0
  703. package/lib/components/Tabs/LinkTab.js +18 -0
  704. package/lib/components/Tabs/LinkTab.js.map +1 -0
  705. package/lib/components/Tabs/Tabs.d.ts +2 -2
  706. package/lib/components/Tabs/Tabs.fixture.d.ts +1 -0
  707. package/lib/components/Tabs/Tabs.js +2 -2
  708. package/lib/components/Tabs/Tabs.js.map +1 -1
  709. package/lib/components/Tabs/TabsContent.d.ts +5 -5
  710. package/lib/components/Tabs/renderGroupTab.d.ts +2 -2
  711. package/lib/components/Tabs/renderGroupTab.js +1 -1
  712. package/lib/components/Tabs/renderGroupTab.js.map +1 -1
  713. package/lib/components/Tabs/renderTab.d.ts +4 -6
  714. package/lib/components/Tabs/renderTab.js +5 -19
  715. package/lib/components/Tabs/renderTab.js.map +1 -1
  716. package/lib/components/TariffsTable/EmbeddableCellData.js +3 -5
  717. package/lib/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  718. package/lib/components/TariffsTable/TariffsTable.fixture.d.ts +1 -0
  719. package/lib/components/TariffsTable/TariffsTable.fixture.mobile.d.ts +1 -0
  720. package/lib/components/TariffsTable/TariffsTable.js +4 -7
  721. package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  722. package/lib/components/TariffsTable/TariffsTable.mobile.js +2 -5
  723. package/lib/components/TariffsTable/TariffsTable.mobile.js.map +1 -1
  724. package/lib/components/TariffsTable/TariffsTableCell.js +1 -2
  725. package/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  726. package/lib/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  727. package/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  728. package/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  729. package/lib/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  730. package/lib/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  731. package/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  732. package/lib/components/TariffsTable/TariffsTableRow.js +3 -3
  733. package/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  734. package/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  735. package/lib/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  736. package/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  737. package/lib/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  738. package/lib/components/TariffsTable/TariffsTableTileCell.js +8 -13
  739. package/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  740. package/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
  741. package/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  742. package/lib/components/TextBlock/TextBlock.fixture.d.ts +1 -0
  743. package/lib/components/TextBlock/TextBlock.fixture.mobile.d.ts +1 -0
  744. package/lib/components/Tile/Tile.fixture.d.ts +1 -0
  745. package/lib/components/Tile/Tile.js +2 -2
  746. package/lib/components/Tile/Tile.js.map +1 -1
  747. package/lib/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  748. package/lib/components/VerticalLayout/VerticalLayout.fixture.d.ts +9 -0
  749. package/lib/components/VerticalLayout/VerticalLayout.js +33 -0
  750. package/lib/components/VerticalLayout/VerticalLayout.js.map +1 -0
  751. package/lib/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  752. package/lib/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  753. package/lib/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  754. package/lib/hooks/handlerDecorator.d.ts +5 -0
  755. package/lib/hooks/handlerDecorator.js +9 -0
  756. package/lib/hooks/handlerDecorator.js.map +1 -0
  757. package/lib/hooks/useLink.d.ts +6 -16
  758. package/lib/hooks/useLink.js +20 -15
  759. package/lib/hooks/useLink.js.map +1 -1
  760. package/lib/hooks/useRouter.d.ts +13 -0
  761. package/lib/hooks/useRouter.js +18 -0
  762. package/lib/hooks/useRouter.js.map +1 -0
  763. package/lib/hooks/useTableArrowScrollControl.d.ts +1 -3
  764. package/lib/hooks/useTableArrowScrollControl.js +13 -4
  765. package/lib/hooks/useTableArrowScrollControl.js.map +1 -1
  766. package/lib/index.d.ts +2 -0
  767. package/lib/index.js +2 -0
  768. package/lib/index.js.map +1 -1
  769. package/lib/model/BlockVersion.d.ts +1 -0
  770. package/lib/model/BlockVersion.js +5 -0
  771. package/lib/model/BlockVersion.js.map +1 -1
  772. package/lib/model/BlocksRegistry.d.ts +1 -1
  773. package/lib/model/JSXBlock.d.ts +7 -8
  774. package/lib/react/setup-fixture.d.ts +0 -3
  775. package/lib/react/setup-fixture.js +9 -24
  776. package/lib/react/setup-fixture.js.map +1 -1
  777. package/lib/services/sitemap/SitemapProps.d.ts +1 -1
  778. package/lib/services/sitemap/findActiveSubItem.d.ts +1 -1
  779. package/lib/services/sitemap/isHrefActive.js +1 -2
  780. package/lib/services/sitemap/isHrefActive.js.map +1 -1
  781. package/lib/services/sitemap/isSubItemActive.d.ts +1 -1
  782. package/lib/services/sitemap/isTopItemActive.d.ts +1 -1
  783. package/lib/services/sitemap/useSWRResource.d.ts +2 -0
  784. package/lib/services/sitemap/useSWRResource.js +9 -0
  785. package/lib/services/sitemap/useSWRResource.js.map +1 -0
  786. package/lib/ui-kit/BlockWrapper.d.ts +2 -2
  787. package/lib/ui-kit/BlockWrapper.js +3 -2
  788. package/lib/ui-kit/BlockWrapper.js.map +1 -1
  789. package/lib/ui-kit/Breadcrumb.js +6 -1
  790. package/lib/ui-kit/Breadcrumb.js.map +1 -1
  791. package/lib/ui-kit/Button/Button.js +8 -9
  792. package/lib/ui-kit/Button/Button.js.map +1 -1
  793. package/lib/ui-kit/Button/ButtonInner.js +2 -3
  794. package/lib/ui-kit/Button/ButtonInner.js.map +1 -1
  795. package/lib/ui-kit/Button/ButtonSection.d.ts +2 -2
  796. package/lib/ui-kit/Button/ButtonSection.js +1 -6
  797. package/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  798. package/lib/ui-kit/Checkbox/Checkbox.js +1 -3
  799. package/lib/ui-kit/Checkbox/Checkbox.js.map +1 -1
  800. package/lib/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  801. package/lib/ui-kit/HeaderItem/HeaderItem.js +6 -1
  802. package/lib/ui-kit/HeaderItem/HeaderItem.js.map +1 -1
  803. package/lib/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  804. package/lib/ui-kit/InnerTable/InnerTable.js +2 -2
  805. package/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  806. package/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  807. package/lib/ui-kit/InnerTable/InnerTableBody.js +2 -2
  808. package/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  809. package/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  810. package/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  811. package/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  812. package/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  813. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  814. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.fixture.d.ts +1 -0
  815. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  816. package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  817. package/lib/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  818. package/lib/ui-kit/SearchBar/SearchBar.js +1 -3
  819. package/lib/ui-kit/SearchBar/SearchBar.js.map +1 -1
  820. package/lib/ui-kit/SearchBar/SearchBar.mobile.d.ts +2 -2
  821. package/lib/ui-kit/SearchBar/SearchBar.mobile.js +1 -3
  822. package/lib/ui-kit/SearchBar/SearchBar.mobile.js.map +1 -1
  823. package/lib/ui-kit/SwipeListControl/SwipeListControl.fixture.mobile.d.ts +1 -0
  824. package/lib/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  825. package/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  826. package/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  827. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  828. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  829. package/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  830. package/lib/ui-kit/TopItem/TopItem.js +6 -1
  831. package/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  832. package/lib/utils/adjustHref.js +2 -10
  833. package/lib/utils/adjustHref.js.map +1 -1
  834. package/mobile/bundle/ProjectSettings.d.ts +2 -0
  835. package/mobile/bundle/bundle.umd.js +231 -248
  836. package/mobile/bundle/bundle.umd.min.js +1 -1
  837. package/mobile/bundle/components/BaseTile/BaseTile.d.ts +2 -2
  838. package/mobile/bundle/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  839. package/mobile/bundle/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  840. package/mobile/bundle/components/BusinessBlock/BusinessCard.d.ts +2 -0
  841. package/mobile/bundle/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  842. package/mobile/bundle/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  843. package/mobile/bundle/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  844. package/mobile/bundle/components/Calculator/renderButtonSection.d.ts +1 -2
  845. package/mobile/bundle/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  846. package/mobile/bundle/components/Catalog/CatalogCard.d.ts +2 -2
  847. package/mobile/bundle/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  848. package/mobile/bundle/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  849. package/mobile/bundle/components/ContentPage/renderBlock.d.ts +0 -2
  850. package/mobile/bundle/components/ContentPage/renderBlockList.d.ts +1 -1
  851. package/mobile/bundle/components/ContentPage/renderSlots.d.ts +1 -1
  852. package/mobile/bundle/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  853. package/mobile/bundle/components/Footer/Contacts.d.ts +2 -2
  854. package/mobile/bundle/components/Footer/Footer.fallback.d.ts +2 -0
  855. package/mobile/bundle/components/Footer/FooterContent.d.ts +3 -19
  856. package/mobile/bundle/components/Footer/FooterDataProps.d.ts +12 -0
  857. package/mobile/bundle/components/Footer/FooterLink.d.ts +2 -2
  858. package/mobile/bundle/components/Footer/HorizontalNavigation.d.ts +1 -2
  859. package/mobile/bundle/components/Footer/Sitemap.d.ts +2 -2
  860. package/mobile/bundle/components/Footer/SocialMedia.d.ts +2 -2
  861. package/mobile/bundle/components/Footer/useFooterData.d.ts +2 -0
  862. package/mobile/bundle/components/Gallery/GalleryContainer.d.ts +1 -3
  863. package/mobile/bundle/components/Gallery/GalleryContent.d.ts +1 -1
  864. package/mobile/bundle/components/Header/DropdownMenu.d.ts +0 -2
  865. package/mobile/bundle/components/Header/HeaderBurger.d.ts +0 -2
  866. package/mobile/bundle/components/Header/HeaderSubMenu.d.ts +0 -2
  867. package/mobile/bundle/components/Header/HeaderSubMenuItem.d.ts +0 -2
  868. package/mobile/bundle/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  869. package/mobile/bundle/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  870. package/mobile/bundle/components/LikeControl/LikeControl.d.ts +5 -2
  871. package/mobile/bundle/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  872. package/mobile/bundle/components/OfficeMap/useOfficeMap.d.ts +56 -2
  873. package/mobile/bundle/components/Placeholder/Placeholder.d.ts +0 -1
  874. package/mobile/bundle/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  875. package/mobile/bundle/components/Recommendation/RecommendationCard.d.ts +2 -2
  876. package/mobile/bundle/components/StepsBlock/renderStepContent.d.ts +2 -5
  877. package/mobile/bundle/components/Tabs/LinkTab.d.ts +8 -0
  878. package/mobile/bundle/components/Tabs/Tabs.d.ts +2 -2
  879. package/mobile/bundle/components/Tabs/TabsContent.d.ts +5 -5
  880. package/mobile/bundle/components/Tabs/renderGroupTab.d.ts +2 -2
  881. package/mobile/bundle/components/Tabs/renderTab.d.ts +4 -6
  882. package/mobile/bundle/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  883. package/mobile/bundle/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  884. package/mobile/bundle/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  885. package/mobile/bundle/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  886. package/mobile/bundle/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  887. package/mobile/bundle/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  888. package/mobile/bundle/hooks/handlerDecorator.d.ts +5 -0
  889. package/mobile/bundle/hooks/useLink.d.ts +6 -16
  890. package/mobile/bundle/hooks/useRouter.d.ts +13 -0
  891. package/mobile/bundle/hooks/useTableArrowScrollControl.d.ts +1 -3
  892. package/mobile/bundle/index.d.ts +2 -0
  893. package/mobile/bundle/model/BlockVersion.d.ts +1 -0
  894. package/mobile/bundle/model/BlocksRegistry.d.ts +1 -1
  895. package/mobile/bundle/model/JSXBlock.d.ts +7 -8
  896. package/mobile/bundle/react/setup-fixture.d.ts +0 -3
  897. package/mobile/bundle/services/sitemap/SitemapProps.d.ts +1 -1
  898. package/mobile/bundle/services/sitemap/findActiveSubItem.d.ts +1 -1
  899. package/mobile/bundle/services/sitemap/isSubItemActive.d.ts +1 -1
  900. package/mobile/bundle/services/sitemap/isTopItemActive.d.ts +1 -1
  901. package/mobile/bundle/services/sitemap/useSWRResource.d.ts +2 -0
  902. package/mobile/bundle/ui-kit/BlockWrapper.d.ts +2 -2
  903. package/mobile/bundle/ui-kit/Button/ButtonSection.d.ts +2 -2
  904. package/mobile/bundle/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  905. package/mobile/bundle/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  906. package/mobile/bundle/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  907. package/mobile/bundle/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  908. package/mobile/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  909. package/mobile/bundle/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  910. package/mobile/bundle/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  911. package/mobile/bundle/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  912. package/mobile/bundle/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  913. package/mobile/dist/ProjectSettings.d.ts +2 -0
  914. package/mobile/dist/ProjectSettings.js +3 -0
  915. package/mobile/dist/ProjectSettings.js.map +1 -1
  916. package/mobile/dist/components/Accordion/Accordion.js +1 -1
  917. package/mobile/dist/components/Accordion/Accordion.js.map +1 -1
  918. package/mobile/dist/components/BaseTile/BaseTile.d.ts +2 -2
  919. package/mobile/dist/components/BaseTile/BaseTile.js +1 -3
  920. package/mobile/dist/components/BaseTile/BaseTile.js.map +1 -1
  921. package/mobile/dist/components/Blocks.js +0 -2
  922. package/mobile/dist/components/Blocks.js.map +1 -1
  923. package/mobile/dist/components/Bonus/Bonus.js +3 -3
  924. package/mobile/dist/components/Bonus/Bonus.js.map +1 -1
  925. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  926. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  927. package/mobile/dist/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  928. package/mobile/dist/components/BusinessBlock/BusinessBlock.js +9 -0
  929. package/mobile/dist/components/BusinessBlock/BusinessBlock.js.map +1 -0
  930. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  931. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.js +2 -0
  932. package/mobile/dist/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  933. package/mobile/dist/components/BusinessBlock/BusinessCard.d.ts +2 -0
  934. package/mobile/dist/components/BusinessBlock/BusinessCard.js +16 -0
  935. package/mobile/dist/components/BusinessBlock/BusinessCard.js.map +1 -0
  936. package/mobile/dist/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  937. package/mobile/dist/components/Calculator/BonusCalculatorForm.js +2 -2
  938. package/mobile/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  939. package/mobile/dist/components/Calculator/Calculator.js +3 -5
  940. package/mobile/dist/components/Calculator/Calculator.js.map +1 -1
  941. package/mobile/dist/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  942. package/mobile/dist/components/Calculator/CreditCalculatorForm.js +3 -8
  943. package/mobile/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  944. package/mobile/dist/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  945. package/mobile/dist/components/Calculator/DepositCalculatorForm.js +3 -8
  946. package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  947. package/mobile/dist/components/Calculator/renderButtonSection.d.ts +1 -2
  948. package/mobile/dist/components/Calculator/renderButtonSection.js +2 -2
  949. package/mobile/dist/components/Calculator/renderButtonSection.js.map +1 -1
  950. package/mobile/dist/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  951. package/mobile/dist/components/Calculator/renderCalculatorBlock.js +2 -2
  952. package/mobile/dist/components/Calculator/renderCalculatorBlock.js.map +1 -1
  953. package/mobile/dist/components/CardTransfer/CardTransfer.js +3 -4
  954. package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  955. package/mobile/dist/components/Catalog/Catalog.js +11 -21
  956. package/mobile/dist/components/Catalog/Catalog.js.map +1 -1
  957. package/mobile/dist/components/Catalog/CatalogCard.d.ts +2 -2
  958. package/mobile/dist/components/Catalog/CatalogCard.js +1 -3
  959. package/mobile/dist/components/Catalog/CatalogCard.js.map +1 -1
  960. package/mobile/dist/components/ComparisonTable/ComparisonTable.js +3 -3
  961. package/mobile/dist/components/ComparisonTable/ComparisonTable.js.map +1 -1
  962. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  963. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.js +3 -9
  964. package/mobile/dist/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  965. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  966. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  967. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  968. package/mobile/dist/components/ComparisonTable/ComparisonTableRows.js +2 -2
  969. package/mobile/dist/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  970. package/mobile/dist/components/ContactsBlock/ContactsBlock.js +2 -2
  971. package/mobile/dist/components/ContactsBlock/ContactsBlock.js.map +1 -1
  972. package/mobile/dist/components/ContentPage/ContentPage.js +4 -5
  973. package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
  974. package/mobile/dist/components/ContentPage/renderBlock.d.ts +0 -2
  975. package/mobile/dist/components/ContentPage/renderBlock.js +3 -3
  976. package/mobile/dist/components/ContentPage/renderBlock.js.map +1 -1
  977. package/mobile/dist/components/ContentPage/renderBlockList.d.ts +1 -1
  978. package/mobile/dist/components/ContentPage/renderBlockList.js +5 -12
  979. package/mobile/dist/components/ContentPage/renderBlockList.js.map +1 -1
  980. package/mobile/dist/components/ContentPage/renderSlots.d.ts +1 -1
  981. package/mobile/dist/components/ContentPage/renderSlots.js +10 -12
  982. package/mobile/dist/components/ContentPage/renderSlots.js.map +1 -1
  983. package/mobile/dist/components/ErrorBlock/ErrorBlock.js +1 -6
  984. package/mobile/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  985. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  986. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  987. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  988. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  989. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  990. package/mobile/dist/components/Footer/Contacts.d.ts +2 -2
  991. package/mobile/dist/components/Footer/Contacts.js +1 -10
  992. package/mobile/dist/components/Footer/Contacts.js.map +1 -1
  993. package/mobile/dist/components/Footer/Footer.fallback.d.ts +2 -0
  994. package/mobile/dist/components/Footer/Footer.fallback.js +13 -0
  995. package/mobile/dist/components/Footer/Footer.fallback.js.map +1 -0
  996. package/mobile/dist/components/Footer/Footer.js +10 -9
  997. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  998. package/mobile/dist/components/Footer/FooterContent.d.ts +3 -19
  999. package/mobile/dist/components/Footer/FooterDataProps.d.ts +12 -0
  1000. package/mobile/dist/components/{ContentPage/ContentPageContext.js → Footer/FooterDataProps.js} +1 -1
  1001. package/mobile/dist/components/Footer/FooterDataProps.js.map +1 -0
  1002. package/mobile/dist/components/Footer/FooterLink.d.ts +2 -2
  1003. package/mobile/dist/components/Footer/HorizontalNavigation.d.ts +1 -2
  1004. package/mobile/dist/components/Footer/HorizontalNavigation.js +1 -6
  1005. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  1006. package/mobile/dist/components/Footer/HorizontalNavigationLink.js +6 -1
  1007. package/mobile/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  1008. package/mobile/dist/components/Footer/MediaButton.js +5 -2
  1009. package/mobile/dist/components/Footer/MediaButton.js.map +1 -1
  1010. package/mobile/dist/components/Footer/Sitemap.d.ts +2 -2
  1011. package/mobile/dist/components/Footer/Sitemap.js +14 -12
  1012. package/mobile/dist/components/Footer/Sitemap.js.map +1 -1
  1013. package/mobile/dist/components/Footer/SocialMedia.d.ts +2 -2
  1014. package/mobile/dist/components/Footer/SocialMedia.js +1 -6
  1015. package/mobile/dist/components/Footer/SocialMedia.js.map +1 -1
  1016. package/mobile/dist/components/Footer/TextInformation.js +2 -5
  1017. package/mobile/dist/components/Footer/TextInformation.js.map +1 -1
  1018. package/mobile/dist/components/Footer/TextInformationLink.js +6 -1
  1019. package/mobile/dist/components/Footer/TextInformationLink.js.map +1 -1
  1020. package/mobile/dist/components/Footer/useFooterData.d.ts +2 -0
  1021. package/mobile/dist/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +5 -5
  1022. package/mobile/dist/components/Footer/useFooterData.js.map +1 -0
  1023. package/mobile/dist/components/Gallery/Gallery.js +4 -4
  1024. package/mobile/dist/components/Gallery/Gallery.js.map +1 -1
  1025. package/mobile/dist/components/Gallery/GalleryContainer.d.ts +1 -3
  1026. package/mobile/dist/components/Gallery/GalleryContainer.js +2 -2
  1027. package/mobile/dist/components/Gallery/GalleryContainer.js.map +1 -1
  1028. package/mobile/dist/components/Gallery/GalleryContent.d.ts +1 -1
  1029. package/mobile/dist/components/Gallery/GalleryInner.js +2 -2
  1030. package/mobile/dist/components/Gallery/GalleryInner.js.map +1 -1
  1031. package/mobile/dist/components/GracePeriod/GracePeriod.js +1 -3
  1032. package/mobile/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  1033. package/mobile/dist/components/Header/DropdownMenu.d.ts +0 -2
  1034. package/mobile/dist/components/Header/DropdownMenu.js +3 -4
  1035. package/mobile/dist/components/Header/DropdownMenu.js.map +1 -1
  1036. package/mobile/dist/components/Header/Header.js +8 -14
  1037. package/mobile/dist/components/Header/Header.js.map +1 -1
  1038. package/mobile/dist/components/Header/HeaderBurger.d.ts +0 -2
  1039. package/mobile/dist/components/Header/HeaderBurger.js +2 -2
  1040. package/mobile/dist/components/Header/HeaderBurger.js.map +1 -1
  1041. package/mobile/dist/components/Header/HeaderSubMenu.d.ts +0 -2
  1042. package/mobile/dist/components/Header/HeaderSubMenu.js +4 -3
  1043. package/mobile/dist/components/Header/HeaderSubMenu.js.map +1 -1
  1044. package/mobile/dist/components/Header/HeaderSubMenuItem.d.ts +0 -2
  1045. package/mobile/dist/components/Header/HeaderSubMenuItem.js +2 -5
  1046. package/mobile/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  1047. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  1048. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  1049. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  1050. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  1051. package/mobile/dist/components/InvestmentGallery/InvestmentGallery.js +3 -7
  1052. package/mobile/dist/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  1053. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  1054. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  1055. package/mobile/dist/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  1056. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js +2 -2
  1057. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  1058. package/mobile/dist/components/LikeControl/LikeControl.d.ts +5 -2
  1059. package/mobile/dist/components/LikeControl/LikeControl.js +5 -6
  1060. package/mobile/dist/components/LikeControl/LikeControl.js.map +1 -1
  1061. package/mobile/dist/components/LinkDocs/LinkDocs.js +1 -3
  1062. package/mobile/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  1063. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  1064. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  1065. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  1066. package/mobile/dist/components/LinkList/LinkList.js +1 -3
  1067. package/mobile/dist/components/LinkList/LinkList.js.map +1 -1
  1068. package/mobile/dist/components/OfficeMap/OfficeMap.js +4 -2
  1069. package/mobile/dist/components/OfficeMap/OfficeMap.js.map +1 -1
  1070. package/mobile/dist/components/OfficeMap/useOfficeMap.d.ts +56 -2
  1071. package/mobile/dist/components/OfficeMap/useOfficeMap.js +4 -1
  1072. package/mobile/dist/components/OfficeMap/useOfficeMap.js.map +1 -1
  1073. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  1074. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  1075. package/mobile/dist/components/OtherProducts/OtherProducts.js +1 -1
  1076. package/mobile/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  1077. package/mobile/dist/components/PictureText/PictureText.js +1 -3
  1078. package/mobile/dist/components/PictureText/PictureText.js.map +1 -1
  1079. package/mobile/dist/components/Placeholder/Placeholder.d.ts +0 -1
  1080. package/mobile/dist/components/Placeholder/Placeholder.js +2 -2
  1081. package/mobile/dist/components/Placeholder/Placeholder.js.map +1 -1
  1082. package/mobile/dist/components/ProductBlock/ProductBlockInner.js +2 -2
  1083. package/mobile/dist/components/ProductBlock/ProductBlockInner.js.map +1 -1
  1084. package/mobile/dist/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  1085. package/mobile/dist/components/ProductBlock/renderBackwardButton.js +1 -0
  1086. package/mobile/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  1087. package/mobile/dist/components/ProductGallery/ProductGallery.js +41 -4
  1088. package/mobile/dist/components/ProductGallery/ProductGallery.js.map +1 -1
  1089. package/mobile/dist/components/ProductTile/ProductTile.js +4 -6
  1090. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  1091. package/mobile/dist/components/PromoTile/PromoTile.js +1 -3
  1092. package/mobile/dist/components/PromoTile/PromoTile.js.map +1 -1
  1093. package/mobile/dist/components/Recommendation/Recommendation.js +4 -9
  1094. package/mobile/dist/components/Recommendation/Recommendation.js.map +1 -1
  1095. package/mobile/dist/components/Recommendation/RecommendationCard.d.ts +2 -2
  1096. package/mobile/dist/components/Recommendation/RecommendationCard.js +2 -2
  1097. package/mobile/dist/components/Recommendation/RecommendationCard.js.map +1 -1
  1098. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js +3 -3
  1099. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  1100. package/mobile/dist/components/StepsBlock/renderStepContent.d.ts +2 -5
  1101. package/mobile/dist/components/StepsBlock/renderStepContent.js +2 -3
  1102. package/mobile/dist/components/StepsBlock/renderStepContent.js.map +1 -1
  1103. package/mobile/dist/components/Tabs/LinkTab.d.ts +8 -0
  1104. package/mobile/dist/components/Tabs/LinkTab.js +20 -0
  1105. package/mobile/dist/components/Tabs/LinkTab.js.map +1 -0
  1106. package/mobile/dist/components/Tabs/Tabs.d.ts +2 -2
  1107. package/mobile/dist/components/Tabs/Tabs.js +2 -2
  1108. package/mobile/dist/components/Tabs/Tabs.js.map +1 -1
  1109. package/mobile/dist/components/Tabs/TabsContent.d.ts +5 -5
  1110. package/mobile/dist/components/Tabs/renderGroupTab.d.ts +2 -2
  1111. package/mobile/dist/components/Tabs/renderGroupTab.js +1 -1
  1112. package/mobile/dist/components/Tabs/renderGroupTab.js.map +1 -1
  1113. package/mobile/dist/components/Tabs/renderTab.d.ts +4 -6
  1114. package/mobile/dist/components/Tabs/renderTab.js +5 -19
  1115. package/mobile/dist/components/Tabs/renderTab.js.map +1 -1
  1116. package/mobile/dist/components/TariffsTable/TariffsTable.js +2 -5
  1117. package/mobile/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  1118. package/mobile/dist/components/TariffsTable/TariffsTableCell.js +1 -2
  1119. package/mobile/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  1120. package/mobile/dist/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  1121. package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  1122. package/mobile/dist/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  1123. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  1124. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  1125. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  1126. package/mobile/dist/components/TariffsTable/TariffsTableRow.js +3 -3
  1127. package/mobile/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1128. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  1129. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  1130. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1131. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  1132. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js +8 -13
  1133. package/mobile/dist/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  1134. package/mobile/dist/components/TariffsTable/TariffsTableVertical.js +1 -1
  1135. package/mobile/dist/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  1136. package/mobile/dist/components/Tile/Tile.js +2 -2
  1137. package/mobile/dist/components/Tile/Tile.js.map +1 -1
  1138. package/mobile/dist/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  1139. package/mobile/dist/components/VerticalLayout/VerticalLayout.js +35 -0
  1140. package/mobile/dist/components/VerticalLayout/VerticalLayout.js.map +1 -0
  1141. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  1142. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  1143. package/mobile/dist/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  1144. package/mobile/dist/hooks/handlerDecorator.d.ts +5 -0
  1145. package/mobile/dist/hooks/handlerDecorator.js +12 -0
  1146. package/mobile/dist/hooks/handlerDecorator.js.map +1 -0
  1147. package/mobile/dist/hooks/useLink.d.ts +6 -16
  1148. package/mobile/dist/hooks/useLink.js +21 -17
  1149. package/mobile/dist/hooks/useLink.js.map +1 -1
  1150. package/mobile/dist/hooks/useRouter.d.ts +13 -0
  1151. package/mobile/dist/hooks/useRouter.js +21 -0
  1152. package/mobile/dist/hooks/useRouter.js.map +1 -0
  1153. package/mobile/dist/hooks/useTableArrowScrollControl.d.ts +1 -3
  1154. package/mobile/dist/hooks/useTableArrowScrollControl.js +13 -4
  1155. package/mobile/dist/hooks/useTableArrowScrollControl.js.map +1 -1
  1156. package/mobile/dist/index.d.ts +2 -0
  1157. package/mobile/dist/index.js +5 -1
  1158. package/mobile/dist/index.js.map +1 -1
  1159. package/mobile/dist/model/BlockVersion.d.ts +1 -0
  1160. package/mobile/dist/model/BlockVersion.js +6 -1
  1161. package/mobile/dist/model/BlockVersion.js.map +1 -1
  1162. package/mobile/dist/model/BlocksRegistry.d.ts +1 -1
  1163. package/mobile/dist/model/JSXBlock.d.ts +7 -8
  1164. package/mobile/dist/react/setup-fixture.d.ts +0 -3
  1165. package/mobile/dist/react/setup-fixture.js +9 -25
  1166. package/mobile/dist/react/setup-fixture.js.map +1 -1
  1167. package/mobile/dist/services/sitemap/SitemapProps.d.ts +1 -1
  1168. package/mobile/dist/services/sitemap/findActiveSubItem.d.ts +1 -1
  1169. package/mobile/dist/services/sitemap/isHrefActive.js +1 -2
  1170. package/mobile/dist/services/sitemap/isHrefActive.js.map +1 -1
  1171. package/mobile/dist/services/sitemap/isSubItemActive.d.ts +1 -1
  1172. package/mobile/dist/services/sitemap/isTopItemActive.d.ts +1 -1
  1173. package/mobile/dist/services/sitemap/useSWRResource.d.ts +2 -0
  1174. package/mobile/dist/services/sitemap/useSWRResource.js +12 -0
  1175. package/mobile/dist/services/sitemap/useSWRResource.js.map +1 -0
  1176. package/mobile/dist/ui-kit/BlockWrapper.d.ts +2 -2
  1177. package/mobile/dist/ui-kit/BlockWrapper.js +3 -2
  1178. package/mobile/dist/ui-kit/BlockWrapper.js.map +1 -1
  1179. package/mobile/dist/ui-kit/Breadcrumb.js +6 -1
  1180. package/mobile/dist/ui-kit/Breadcrumb.js.map +1 -1
  1181. package/mobile/dist/ui-kit/Button/Button.js +10 -24
  1182. package/mobile/dist/ui-kit/Button/Button.js.map +1 -1
  1183. package/mobile/dist/ui-kit/Button/ButtonInner.js +2 -3
  1184. package/mobile/dist/ui-kit/Button/ButtonInner.js.map +1 -1
  1185. package/mobile/dist/ui-kit/Button/ButtonSection.d.ts +2 -2
  1186. package/mobile/dist/ui-kit/Button/ButtonSection.js +1 -6
  1187. package/mobile/dist/ui-kit/Button/ButtonSection.js.map +1 -1
  1188. package/mobile/dist/ui-kit/Checkbox/Checkbox.js +1 -3
  1189. package/mobile/dist/ui-kit/Checkbox/Checkbox.js.map +1 -1
  1190. package/mobile/dist/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  1191. package/mobile/dist/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  1192. package/mobile/dist/ui-kit/InnerTable/InnerTable.js +2 -2
  1193. package/mobile/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1194. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  1195. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js +2 -2
  1196. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1197. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  1198. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1199. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  1200. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1201. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  1202. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  1203. package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  1204. package/mobile/dist/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  1205. package/mobile/dist/ui-kit/SearchBar/SearchBar.js +1 -3
  1206. package/mobile/dist/ui-kit/SearchBar/SearchBar.js.map +1 -1
  1207. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  1208. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  1209. package/mobile/dist/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  1210. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  1211. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  1212. package/mobile/dist/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  1213. package/mobile/dist/ui-kit/TopItem/TopItem.js +6 -1
  1214. package/mobile/dist/ui-kit/TopItem/TopItem.js.map +1 -1
  1215. package/mobile/dist/utils/adjustHref.js +2 -10
  1216. package/mobile/dist/utils/adjustHref.js.map +1 -1
  1217. package/mobile/lib/ProjectSettings.d.ts +2 -0
  1218. package/mobile/lib/ProjectSettings.js +3 -0
  1219. package/mobile/lib/ProjectSettings.js.map +1 -1
  1220. package/mobile/lib/components/Accordion/Accordion.js +1 -1
  1221. package/mobile/lib/components/Accordion/Accordion.js.map +1 -1
  1222. package/mobile/lib/components/BaseTile/BaseTile.d.ts +2 -2
  1223. package/mobile/lib/components/BaseTile/BaseTile.js +1 -3
  1224. package/mobile/lib/components/BaseTile/BaseTile.js.map +1 -1
  1225. package/mobile/lib/components/Blocks.js +0 -2
  1226. package/mobile/lib/components/Blocks.js.map +1 -1
  1227. package/mobile/lib/components/Bonus/Bonus.js +3 -3
  1228. package/mobile/lib/components/Bonus/Bonus.js.map +1 -1
  1229. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  1230. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  1231. package/mobile/lib/components/BusinessBlock/BusinessBlock.d.ts +5 -0
  1232. package/mobile/lib/components/BusinessBlock/BusinessBlock.js +7 -0
  1233. package/mobile/lib/components/BusinessBlock/BusinessBlock.js.map +1 -0
  1234. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.d.ts +28 -0
  1235. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.js +2 -0
  1236. package/mobile/lib/components/BusinessBlock/BusinessBlockContent.js.map +1 -0
  1237. package/mobile/lib/components/BusinessBlock/BusinessCard.d.ts +2 -0
  1238. package/mobile/lib/components/BusinessBlock/BusinessCard.js +14 -0
  1239. package/mobile/lib/components/BusinessBlock/BusinessCard.js.map +1 -0
  1240. package/mobile/lib/components/Calculator/BonusCalculatorForm.d.ts +2 -2
  1241. package/mobile/lib/components/Calculator/BonusCalculatorForm.js +2 -2
  1242. package/mobile/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  1243. package/mobile/lib/components/Calculator/Calculator.js +3 -5
  1244. package/mobile/lib/components/Calculator/Calculator.js.map +1 -1
  1245. package/mobile/lib/components/Calculator/CreditCalculatorForm.d.ts +2 -2
  1246. package/mobile/lib/components/Calculator/CreditCalculatorForm.js +3 -8
  1247. package/mobile/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  1248. package/mobile/lib/components/Calculator/DepositCalculatorForm.d.ts +2 -2
  1249. package/mobile/lib/components/Calculator/DepositCalculatorForm.js +3 -8
  1250. package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  1251. package/mobile/lib/components/Calculator/renderButtonSection.d.ts +1 -2
  1252. package/mobile/lib/components/Calculator/renderButtonSection.js +2 -2
  1253. package/mobile/lib/components/Calculator/renderButtonSection.js.map +1 -1
  1254. package/mobile/lib/components/Calculator/renderCalculatorBlock.d.ts +1 -1
  1255. package/mobile/lib/components/Calculator/renderCalculatorBlock.js +2 -2
  1256. package/mobile/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  1257. package/mobile/lib/components/CardTransfer/CardTransfer.js +3 -4
  1258. package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  1259. package/mobile/lib/components/Catalog/Catalog.js +12 -22
  1260. package/mobile/lib/components/Catalog/Catalog.js.map +1 -1
  1261. package/mobile/lib/components/Catalog/CatalogCard.d.ts +2 -2
  1262. package/mobile/lib/components/Catalog/CatalogCard.js +1 -3
  1263. package/mobile/lib/components/Catalog/CatalogCard.js.map +1 -1
  1264. package/mobile/lib/components/ComparisonTable/ComparisonTable.js +3 -3
  1265. package/mobile/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  1266. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.d.ts +1 -3
  1267. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.js +3 -9
  1268. package/mobile/lib/components/ComparisonTable/ComparisonTableBody.js.map +1 -1
  1269. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.d.ts +0 -3
  1270. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -4
  1271. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  1272. package/mobile/lib/components/ComparisonTable/ComparisonTableRows.js +2 -2
  1273. package/mobile/lib/components/ComparisonTable/ComparisonTableRows.js.map +1 -1
  1274. package/mobile/lib/components/ContactsBlock/ContactsBlock.js +2 -2
  1275. package/mobile/lib/components/ContactsBlock/ContactsBlock.js.map +1 -1
  1276. package/mobile/lib/components/ContentPage/ContentPage.js +4 -5
  1277. package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
  1278. package/mobile/lib/components/ContentPage/renderBlock.d.ts +0 -2
  1279. package/mobile/lib/components/ContentPage/renderBlock.js +3 -3
  1280. package/mobile/lib/components/ContentPage/renderBlock.js.map +1 -1
  1281. package/mobile/lib/components/ContentPage/renderBlockList.d.ts +1 -1
  1282. package/mobile/lib/components/ContentPage/renderBlockList.js +5 -12
  1283. package/mobile/lib/components/ContentPage/renderBlockList.js.map +1 -1
  1284. package/mobile/lib/components/ContentPage/renderSlots.d.ts +1 -1
  1285. package/mobile/lib/components/ContentPage/renderSlots.js +10 -12
  1286. package/mobile/lib/components/ContentPage/renderSlots.js.map +1 -1
  1287. package/mobile/lib/components/ErrorBlock/ErrorBlock.js +1 -6
  1288. package/mobile/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  1289. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.d.ts +1 -2
  1290. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +2 -5
  1291. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  1292. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js +2 -2
  1293. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  1294. package/mobile/lib/components/Footer/Contacts.d.ts +2 -2
  1295. package/mobile/lib/components/Footer/Contacts.js +1 -10
  1296. package/mobile/lib/components/Footer/Contacts.js.map +1 -1
  1297. package/mobile/lib/components/Footer/Footer.fallback.d.ts +2 -0
  1298. package/mobile/lib/components/Footer/Footer.fallback.js +10 -0
  1299. package/mobile/lib/components/Footer/Footer.fallback.js.map +1 -0
  1300. package/mobile/lib/components/Footer/Footer.js +10 -9
  1301. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  1302. package/mobile/lib/components/Footer/FooterContent.d.ts +3 -19
  1303. package/mobile/lib/components/Footer/FooterDataProps.d.ts +12 -0
  1304. package/mobile/lib/components/Footer/FooterDataProps.js +2 -0
  1305. package/mobile/lib/components/Footer/FooterDataProps.js.map +1 -0
  1306. package/mobile/lib/components/Footer/FooterLink.d.ts +2 -2
  1307. package/mobile/lib/components/Footer/HorizontalNavigation.d.ts +1 -2
  1308. package/mobile/lib/components/Footer/HorizontalNavigation.js +1 -6
  1309. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  1310. package/mobile/lib/components/Footer/HorizontalNavigationLink.js +6 -1
  1311. package/mobile/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  1312. package/mobile/lib/components/Footer/MediaButton.js +5 -2
  1313. package/mobile/lib/components/Footer/MediaButton.js.map +1 -1
  1314. package/mobile/lib/components/Footer/Sitemap.d.ts +2 -2
  1315. package/mobile/lib/components/Footer/Sitemap.js +14 -12
  1316. package/mobile/lib/components/Footer/Sitemap.js.map +1 -1
  1317. package/mobile/lib/components/Footer/SocialMedia.d.ts +2 -2
  1318. package/mobile/lib/components/Footer/SocialMedia.js +1 -6
  1319. package/mobile/lib/components/Footer/SocialMedia.js.map +1 -1
  1320. package/mobile/lib/components/Footer/TextInformation.js +2 -5
  1321. package/mobile/lib/components/Footer/TextInformation.js.map +1 -1
  1322. package/mobile/lib/components/Footer/TextInformationLink.js +6 -1
  1323. package/mobile/lib/components/Footer/TextInformationLink.js.map +1 -1
  1324. package/mobile/lib/components/Footer/useFooterData.d.ts +2 -0
  1325. package/mobile/lib/{services/sitemap/useSitemap.js → components/Footer/useFooterData.js} +3 -3
  1326. package/mobile/lib/components/Footer/useFooterData.js.map +1 -0
  1327. package/mobile/lib/components/Gallery/Gallery.js +4 -4
  1328. package/mobile/lib/components/Gallery/Gallery.js.map +1 -1
  1329. package/mobile/lib/components/Gallery/GalleryContainer.d.ts +1 -3
  1330. package/mobile/lib/components/Gallery/GalleryContainer.js +2 -2
  1331. package/mobile/lib/components/Gallery/GalleryContainer.js.map +1 -1
  1332. package/mobile/lib/components/Gallery/GalleryContent.d.ts +1 -1
  1333. package/mobile/lib/components/Gallery/GalleryInner.js +2 -2
  1334. package/mobile/lib/components/Gallery/GalleryInner.js.map +1 -1
  1335. package/mobile/lib/components/GracePeriod/GracePeriod.js +1 -3
  1336. package/mobile/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  1337. package/mobile/lib/components/Header/DropdownMenu.d.ts +0 -2
  1338. package/mobile/lib/components/Header/DropdownMenu.js +3 -4
  1339. package/mobile/lib/components/Header/DropdownMenu.js.map +1 -1
  1340. package/mobile/lib/components/Header/Header.js +8 -14
  1341. package/mobile/lib/components/Header/Header.js.map +1 -1
  1342. package/mobile/lib/components/Header/HeaderBurger.d.ts +0 -2
  1343. package/mobile/lib/components/Header/HeaderBurger.js +2 -2
  1344. package/mobile/lib/components/Header/HeaderBurger.js.map +1 -1
  1345. package/mobile/lib/components/Header/HeaderSubMenu.d.ts +0 -2
  1346. package/mobile/lib/components/Header/HeaderSubMenu.js +4 -3
  1347. package/mobile/lib/components/Header/HeaderSubMenu.js.map +1 -1
  1348. package/mobile/lib/components/Header/HeaderSubMenuItem.d.ts +0 -2
  1349. package/mobile/lib/components/Header/HeaderSubMenuItem.js +2 -5
  1350. package/mobile/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  1351. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +4 -6
  1352. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  1353. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.d.ts +2 -2
  1354. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  1355. package/mobile/lib/components/InvestmentGallery/InvestmentGallery.js +3 -7
  1356. package/mobile/lib/components/InvestmentGallery/InvestmentGallery.js.map +1 -1
  1357. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.d.ts +2 -2
  1358. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.js +2 -2
  1359. package/mobile/lib/components/InvestmentGallery/InvestmentGalleryCard.js.map +1 -1
  1360. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js +2 -2
  1361. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -1
  1362. package/mobile/lib/components/LikeControl/LikeControl.d.ts +5 -2
  1363. package/mobile/lib/components/LikeControl/LikeControl.js +4 -5
  1364. package/mobile/lib/components/LikeControl/LikeControl.js.map +1 -1
  1365. package/mobile/lib/components/LinkDocs/LinkDocs.js +1 -3
  1366. package/mobile/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  1367. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.d.ts +1 -5
  1368. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js +3 -5
  1369. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  1370. package/mobile/lib/components/LinkList/LinkList.js +1 -3
  1371. package/mobile/lib/components/LinkList/LinkList.js.map +1 -1
  1372. package/mobile/lib/components/OfficeMap/OfficeMap.js +4 -2
  1373. package/mobile/lib/components/OfficeMap/OfficeMap.js.map +1 -1
  1374. package/mobile/lib/components/OfficeMap/useOfficeMap.d.ts +56 -2
  1375. package/mobile/lib/components/OfficeMap/useOfficeMap.js +4 -1
  1376. package/mobile/lib/components/OfficeMap/useOfficeMap.js.map +1 -1
  1377. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +1 -3
  1378. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -1
  1379. package/mobile/lib/components/OtherProducts/OtherProducts.js +1 -1
  1380. package/mobile/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  1381. package/mobile/lib/components/PictureText/PictureText.js +1 -3
  1382. package/mobile/lib/components/PictureText/PictureText.js.map +1 -1
  1383. package/mobile/lib/components/Placeholder/Placeholder.d.ts +0 -1
  1384. package/mobile/lib/components/Placeholder/Placeholder.js +2 -2
  1385. package/mobile/lib/components/Placeholder/Placeholder.js.map +1 -1
  1386. package/mobile/lib/components/ProductBlock/ProductBlockInner.js +2 -2
  1387. package/mobile/lib/components/ProductBlock/ProductBlockInner.js.map +1 -1
  1388. package/mobile/lib/components/ProductBlock/renderBackwardButton.d.ts +1 -1
  1389. package/mobile/lib/components/ProductBlock/renderBackwardButton.js +1 -0
  1390. package/mobile/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  1391. package/mobile/lib/components/ProductGallery/ProductGallery.js +42 -5
  1392. package/mobile/lib/components/ProductGallery/ProductGallery.js.map +1 -1
  1393. package/mobile/lib/components/ProductTile/ProductTile.js +4 -6
  1394. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  1395. package/mobile/lib/components/PromoTile/PromoTile.js +1 -3
  1396. package/mobile/lib/components/PromoTile/PromoTile.js.map +1 -1
  1397. package/mobile/lib/components/Recommendation/Recommendation.js +4 -9
  1398. package/mobile/lib/components/Recommendation/Recommendation.js.map +1 -1
  1399. package/mobile/lib/components/Recommendation/RecommendationCard.d.ts +2 -2
  1400. package/mobile/lib/components/Recommendation/RecommendationCard.js +2 -2
  1401. package/mobile/lib/components/Recommendation/RecommendationCard.js.map +1 -1
  1402. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js +3 -3
  1403. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  1404. package/mobile/lib/components/StepsBlock/renderStepContent.d.ts +2 -5
  1405. package/mobile/lib/components/StepsBlock/renderStepContent.js +2 -3
  1406. package/mobile/lib/components/StepsBlock/renderStepContent.js.map +1 -1
  1407. package/mobile/lib/components/Tabs/LinkTab.d.ts +8 -0
  1408. package/mobile/lib/components/Tabs/LinkTab.js +18 -0
  1409. package/mobile/lib/components/Tabs/LinkTab.js.map +1 -0
  1410. package/mobile/lib/components/Tabs/Tabs.d.ts +2 -2
  1411. package/mobile/lib/components/Tabs/Tabs.js +2 -2
  1412. package/mobile/lib/components/Tabs/Tabs.js.map +1 -1
  1413. package/mobile/lib/components/Tabs/TabsContent.d.ts +5 -5
  1414. package/mobile/lib/components/Tabs/renderGroupTab.d.ts +2 -2
  1415. package/mobile/lib/components/Tabs/renderGroupTab.js +1 -1
  1416. package/mobile/lib/components/Tabs/renderGroupTab.js.map +1 -1
  1417. package/mobile/lib/components/Tabs/renderTab.d.ts +4 -6
  1418. package/mobile/lib/components/Tabs/renderTab.js +5 -19
  1419. package/mobile/lib/components/Tabs/renderTab.js.map +1 -1
  1420. package/mobile/lib/components/TariffsTable/TariffsTable.js +2 -5
  1421. package/mobile/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  1422. package/mobile/lib/components/TariffsTable/TariffsTableCell.js +1 -2
  1423. package/mobile/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  1424. package/mobile/lib/components/TariffsTable/TariffsTableContent.d.ts +1 -1
  1425. package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js +1 -1
  1426. package/mobile/lib/components/TariffsTable/TariffsTableHorizontal.js.map +1 -1
  1427. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.d.ts +1 -3
  1428. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js +1 -2
  1429. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  1430. package/mobile/lib/components/TariffsTable/TariffsTableRow.js +3 -3
  1431. package/mobile/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1432. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.d.ts +1 -3
  1433. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js +1 -3
  1434. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1435. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.d.ts +3 -4
  1436. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js +8 -13
  1437. package/mobile/lib/components/TariffsTable/TariffsTableTileCell.js.map +1 -1
  1438. package/mobile/lib/components/TariffsTable/TariffsTableVertical.js +1 -1
  1439. package/mobile/lib/components/TariffsTable/TariffsTableVertical.js.map +1 -1
  1440. package/mobile/lib/components/Tile/Tile.js +2 -2
  1441. package/mobile/lib/components/Tile/Tile.js.map +1 -1
  1442. package/mobile/lib/components/VerticalLayout/VerticalLayout.d.ts +5 -0
  1443. package/mobile/lib/components/VerticalLayout/VerticalLayout.js +33 -0
  1444. package/mobile/lib/components/VerticalLayout/VerticalLayout.js.map +1 -0
  1445. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.d.ts +17 -0
  1446. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.js +2 -0
  1447. package/mobile/lib/components/VerticalLayout/VerticalLayoutContent.js.map +1 -0
  1448. package/mobile/lib/hooks/handlerDecorator.d.ts +5 -0
  1449. package/mobile/lib/hooks/handlerDecorator.js +9 -0
  1450. package/mobile/lib/hooks/handlerDecorator.js.map +1 -0
  1451. package/mobile/lib/hooks/useLink.d.ts +6 -16
  1452. package/mobile/lib/hooks/useLink.js +20 -15
  1453. package/mobile/lib/hooks/useLink.js.map +1 -1
  1454. package/mobile/lib/hooks/useRouter.d.ts +13 -0
  1455. package/mobile/lib/hooks/useRouter.js +18 -0
  1456. package/mobile/lib/hooks/useRouter.js.map +1 -0
  1457. package/mobile/lib/hooks/useTableArrowScrollControl.d.ts +1 -3
  1458. package/mobile/lib/hooks/useTableArrowScrollControl.js +13 -4
  1459. package/mobile/lib/hooks/useTableArrowScrollControl.js.map +1 -1
  1460. package/mobile/lib/index.d.ts +2 -0
  1461. package/mobile/lib/index.js +2 -0
  1462. package/mobile/lib/index.js.map +1 -1
  1463. package/mobile/lib/model/BlockVersion.d.ts +1 -0
  1464. package/mobile/lib/model/BlockVersion.js +5 -0
  1465. package/mobile/lib/model/BlockVersion.js.map +1 -1
  1466. package/mobile/lib/model/BlocksRegistry.d.ts +1 -1
  1467. package/mobile/lib/model/JSXBlock.d.ts +7 -8
  1468. package/mobile/lib/react/setup-fixture.d.ts +0 -3
  1469. package/mobile/lib/react/setup-fixture.js +9 -24
  1470. package/mobile/lib/react/setup-fixture.js.map +1 -1
  1471. package/mobile/lib/services/sitemap/SitemapProps.d.ts +1 -1
  1472. package/mobile/lib/services/sitemap/findActiveSubItem.d.ts +1 -1
  1473. package/mobile/lib/services/sitemap/isHrefActive.js +1 -2
  1474. package/mobile/lib/services/sitemap/isHrefActive.js.map +1 -1
  1475. package/mobile/lib/services/sitemap/isSubItemActive.d.ts +1 -1
  1476. package/mobile/lib/services/sitemap/isTopItemActive.d.ts +1 -1
  1477. package/mobile/lib/services/sitemap/useSWRResource.d.ts +2 -0
  1478. package/mobile/lib/services/sitemap/useSWRResource.js +9 -0
  1479. package/mobile/lib/services/sitemap/useSWRResource.js.map +1 -0
  1480. package/mobile/lib/ui-kit/BlockWrapper.d.ts +2 -2
  1481. package/mobile/lib/ui-kit/BlockWrapper.js +3 -2
  1482. package/mobile/lib/ui-kit/BlockWrapper.js.map +1 -1
  1483. package/mobile/lib/ui-kit/Breadcrumb.js +6 -1
  1484. package/mobile/lib/ui-kit/Breadcrumb.js.map +1 -1
  1485. package/mobile/lib/ui-kit/Button/Button.js +10 -24
  1486. package/mobile/lib/ui-kit/Button/Button.js.map +1 -1
  1487. package/mobile/lib/ui-kit/Button/ButtonInner.js +2 -3
  1488. package/mobile/lib/ui-kit/Button/ButtonInner.js.map +1 -1
  1489. package/mobile/lib/ui-kit/Button/ButtonSection.d.ts +2 -2
  1490. package/mobile/lib/ui-kit/Button/ButtonSection.js +1 -6
  1491. package/mobile/lib/ui-kit/Button/ButtonSection.js.map +1 -1
  1492. package/mobile/lib/ui-kit/Checkbox/Checkbox.js +1 -3
  1493. package/mobile/lib/ui-kit/Checkbox/Checkbox.js.map +1 -1
  1494. package/mobile/lib/ui-kit/Checkbox/CheckboxProps.d.ts +2 -2
  1495. package/mobile/lib/ui-kit/InnerTable/InnerTable.d.ts +2 -3
  1496. package/mobile/lib/ui-kit/InnerTable/InnerTable.js +2 -2
  1497. package/mobile/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1498. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.d.ts +1 -2
  1499. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js +2 -2
  1500. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1501. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.d.ts +1 -2
  1502. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1503. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.d.ts +1 -2
  1504. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1505. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.d.ts +4 -5
  1506. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -3
  1507. package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
  1508. package/mobile/lib/ui-kit/SearchBar/SearchBar.d.ts +2 -2
  1509. package/mobile/lib/ui-kit/SearchBar/SearchBar.js +1 -3
  1510. package/mobile/lib/ui-kit/SearchBar/SearchBar.js.map +1 -1
  1511. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControl.js +1 -1
  1512. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControl.js.map +1 -1
  1513. package/mobile/lib/ui-kit/SwipeListControl/SwipeListControlProps.d.ts +2 -2
  1514. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js +2 -2
  1515. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControl.js.map +1 -1
  1516. package/mobile/lib/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.d.ts +3 -2
  1517. package/mobile/lib/ui-kit/TopItem/TopItem.js +6 -1
  1518. package/mobile/lib/ui-kit/TopItem/TopItem.js.map +1 -1
  1519. package/mobile/lib/utils/adjustHref.js +2 -10
  1520. package/mobile/lib/utils/adjustHref.js.map +1 -1
  1521. package/mobile/src/ProjectSettings.ts +4 -0
  1522. package/mobile/src/components/Accordion/Accordion.tsx +1 -2
  1523. package/mobile/src/components/BaseTile/BaseTile.tsx +13 -14
  1524. package/mobile/src/components/Blocks.ts +0 -2
  1525. package/mobile/src/components/Bonus/Bonus.tsx +4 -10
  1526. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +2 -3
  1527. package/mobile/src/components/BusinessBlock/BusinessBlock.example.json +65 -0
  1528. package/mobile/src/components/BusinessBlock/BusinessBlock.tsx +19 -0
  1529. package/mobile/src/components/BusinessBlock/BusinessBlock.ui.json +26 -0
  1530. package/mobile/src/components/BusinessBlock/BusinessBlockContent.ts +31 -0
  1531. package/mobile/src/components/BusinessBlock/BusinessCard.tsx +41 -0
  1532. package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +5 -4
  1533. package/mobile/src/components/Calculator/Calculator.tsx +2 -5
  1534. package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +11 -11
  1535. package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +11 -14
  1536. package/mobile/src/components/Calculator/renderButtonSection.tsx +2 -3
  1537. package/mobile/src/components/Calculator/renderCalculatorBlock.tsx +20 -23
  1538. package/mobile/src/components/CardTransfer/CardTransfer.tsx +3 -5
  1539. package/mobile/src/components/Catalog/Catalog.tsx +17 -41
  1540. package/mobile/src/components/Catalog/CatalogCard.tsx +22 -24
  1541. package/mobile/src/components/ComparisonTable/ComparisonTable.tsx +3 -5
  1542. package/mobile/src/components/ComparisonTable/ComparisonTableBody.tsx +3 -16
  1543. package/mobile/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +10 -20
  1544. package/mobile/src/components/ComparisonTable/ComparisonTableRows.tsx +2 -2
  1545. package/mobile/src/components/ContactsBlock/ContactsBlock.tsx +1 -2
  1546. package/mobile/src/components/ContentPage/ContentPage.tsx +4 -10
  1547. package/mobile/src/components/ContentPage/renderBlock.tsx +4 -9
  1548. package/mobile/src/components/ContentPage/renderBlockList.tsx +9 -20
  1549. package/mobile/src/components/ContentPage/renderSlots.tsx +4 -5
  1550. package/mobile/src/components/ErrorBlock/ErrorBlock.tsx +14 -24
  1551. package/mobile/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -12
  1552. package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.tsx +1 -4
  1553. package/mobile/src/components/Footer/Contacts.tsx +17 -28
  1554. package/mobile/src/components/Footer/Footer.fallback.ts +13 -0
  1555. package/mobile/src/components/Footer/Footer.tsx +38 -56
  1556. package/mobile/src/components/Footer/FooterContent.ts +4 -19
  1557. package/mobile/src/components/Footer/FooterDataProps.ts +13 -0
  1558. package/mobile/src/components/Footer/FooterLink.ts +2 -2
  1559. package/mobile/src/components/Footer/HorizontalNavigation.tsx +13 -25
  1560. package/mobile/src/components/Footer/HorizontalNavigationLink.tsx +16 -10
  1561. package/mobile/src/components/Footer/MediaButton.tsx +6 -1
  1562. package/mobile/src/components/Footer/Sitemap.tsx +28 -30
  1563. package/mobile/src/components/Footer/SocialMedia.tsx +9 -19
  1564. package/mobile/src/components/Footer/TextInformation.tsx +3 -12
  1565. package/mobile/src/components/Footer/TextInformationLink.tsx +16 -10
  1566. package/mobile/src/components/Footer/useFooterData.ts +13 -0
  1567. package/mobile/src/components/Gallery/Gallery.tsx +5 -10
  1568. package/mobile/src/components/Gallery/GalleryContainer.tsx +4 -21
  1569. package/mobile/src/components/Gallery/GalleryContent.ts +1 -1
  1570. package/mobile/src/components/Gallery/GalleryInner.tsx +1 -3
  1571. package/mobile/src/components/GracePeriod/GracePeriod.tsx +12 -18
  1572. package/mobile/src/components/Header/DropdownMenu.tsx +34 -39
  1573. package/mobile/src/components/Header/Header.tsx +25 -29
  1574. package/mobile/src/components/Header/HeaderBurger.tsx +2 -4
  1575. package/mobile/src/components/Header/HeaderSubMenu.tsx +3 -6
  1576. package/mobile/src/components/Header/HeaderSubMenuItem.tsx +2 -22
  1577. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +3 -17
  1578. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  1579. package/mobile/src/components/InvestmentGallery/InvestmentGallery.tsx +6 -21
  1580. package/mobile/src/components/InvestmentGallery/InvestmentGalleryCard.tsx +3 -9
  1581. package/mobile/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -6
  1582. package/mobile/src/components/LikeControl/LikeControl.tsx +9 -13
  1583. package/mobile/src/components/LinkDocs/LinkDocs.tsx +19 -26
  1584. package/mobile/src/components/LinkDocs/LinkDocsHorizontalList.tsx +15 -22
  1585. package/mobile/src/components/LinkList/LinkList.tsx +7 -9
  1586. package/mobile/src/components/OfficeMap/OfficeMap.tsx +4 -2
  1587. package/mobile/src/components/OfficeMap/useOfficeMap.ts +4 -1
  1588. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +9 -16
  1589. package/mobile/src/components/OtherProducts/OtherProducts.tsx +2 -6
  1590. package/mobile/src/components/PictureText/PictureText.tsx +23 -27
  1591. package/mobile/src/components/Placeholder/Placeholder.tsx +3 -6
  1592. package/mobile/src/components/ProductBlock/ProductBlockInner.tsx +3 -12
  1593. package/mobile/src/components/ProductBlock/renderBackwardButton.tsx +3 -2
  1594. package/mobile/src/components/ProductGallery/ProductGallery.tsx +111 -12
  1595. package/mobile/src/components/ProductTile/ProductTile.tsx +24 -32
  1596. package/mobile/src/components/PromoTile/PromoTile.tsx +31 -38
  1597. package/mobile/src/components/Recommendation/Recommendation.tsx +12 -26
  1598. package/mobile/src/components/Recommendation/RecommendationCard.tsx +5 -15
  1599. package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +3 -3
  1600. package/mobile/src/components/StepsBlock/renderStepContent.tsx +4 -10
  1601. package/mobile/src/components/Tabs/LinkTab.tsx +46 -0
  1602. package/mobile/src/components/Tabs/Tabs.tsx +7 -7
  1603. package/mobile/src/components/Tabs/TabsContent.ts +5 -5
  1604. package/mobile/src/components/Tabs/renderGroupTab.tsx +3 -3
  1605. package/mobile/src/components/Tabs/renderTab.tsx +8 -27
  1606. package/mobile/src/components/TariffsTable/TariffsTable.tsx +6 -17
  1607. package/mobile/src/components/TariffsTable/TariffsTableCell.tsx +0 -2
  1608. package/mobile/src/components/TariffsTable/TariffsTableContent.ts +1 -1
  1609. package/mobile/src/components/TariffsTable/TariffsTableHorizontal.tsx +9 -7
  1610. package/mobile/src/components/TariffsTable/TariffsTableRenderCell.tsx +0 -5
  1611. package/mobile/src/components/TariffsTable/TariffsTableRow.tsx +4 -4
  1612. package/mobile/src/components/TariffsTable/TariffsTableRowContainer.tsx +11 -15
  1613. package/mobile/src/components/TariffsTable/TariffsTableTileCell.tsx +23 -34
  1614. package/mobile/src/components/TariffsTable/TariffsTableVertical.tsx +9 -7
  1615. package/mobile/src/components/Tile/Tile.tsx +2 -5
  1616. package/mobile/src/components/VerticalLayout/VerticalLayout.example.json +17 -0
  1617. package/mobile/src/components/VerticalLayout/VerticalLayout.tsx +51 -0
  1618. package/mobile/src/components/VerticalLayout/VerticalLayout.ui.json +1 -0
  1619. package/mobile/src/components/VerticalLayout/VerticalLayoutContent.ts +19 -0
  1620. package/mobile/src/hooks/handlerDecorator.ts +16 -0
  1621. package/mobile/src/hooks/useLink.ts +26 -22
  1622. package/mobile/src/hooks/useRouter.ts +28 -0
  1623. package/mobile/src/hooks/useTableArrowScrollControl.ts +13 -7
  1624. package/mobile/src/index.ts +3 -0
  1625. package/mobile/src/model/BlockVersion.ts +6 -0
  1626. package/mobile/src/model/BlocksRegistry.ts +1 -1
  1627. package/mobile/src/model/JSXBlock.ts +5 -9
  1628. package/mobile/src/react/setup-fixture.ts +9 -29
  1629. package/mobile/src/services/sitemap/SitemapProps.ts +1 -1
  1630. package/mobile/src/services/sitemap/findActiveSubItem.ts +1 -1
  1631. package/mobile/src/services/sitemap/isHrefActive.ts +1 -5
  1632. package/mobile/src/services/sitemap/isSubItemActive.ts +1 -1
  1633. package/mobile/src/services/sitemap/isTopItemActive.ts +1 -1
  1634. package/mobile/src/services/sitemap/useSWRResource.ts +11 -0
  1635. package/mobile/src/ui-kit/BlockWrapper.tsx +6 -4
  1636. package/mobile/src/ui-kit/Breadcrumb.tsx +12 -9
  1637. package/mobile/src/ui-kit/Button/Button.tsx +40 -79
  1638. package/mobile/src/ui-kit/Button/ButtonInner.tsx +2 -3
  1639. package/mobile/src/ui-kit/Button/ButtonSection.tsx +9 -14
  1640. package/mobile/src/ui-kit/Checkbox/Checkbox.tsx +1 -3
  1641. package/mobile/src/ui-kit/Checkbox/CheckboxProps.ts +2 -2
  1642. package/mobile/src/ui-kit/InnerTable/InnerTable.tsx +6 -7
  1643. package/mobile/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -4
  1644. package/mobile/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -2
  1645. package/mobile/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -2
  1646. package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +17 -20
  1647. package/mobile/src/ui-kit/SearchBar/SearchBar.tsx +4 -5
  1648. package/mobile/src/ui-kit/SwipeListControl/SwipeListControl.tsx +1 -1
  1649. package/mobile/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +2 -3
  1650. package/mobile/src/ui-kit/TableArrowScrollControl/TableArrowScrollControl.tsx +2 -2
  1651. package/mobile/src/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.ts +3 -2
  1652. package/mobile/src/ui-kit/TopItem/TopItem.tsx +18 -23
  1653. package/mobile/src/utils/adjustHref.ts +2 -13
  1654. package/package.json +1 -1
  1655. package/src/ProjectSettings.ts +4 -0
  1656. package/src/components/Accordion/Accordion.fixture.mobile.tsx +5 -10
  1657. package/src/components/Accordion/Accordion.fixture.tsx +17 -39
  1658. package/src/components/Accordion/Accordion.mobile.tsx +1 -2
  1659. package/src/components/Accordion/Accordion.tsx +1 -10
  1660. package/src/components/BaseTile/BaseTile.tsx +13 -14
  1661. package/src/components/BenefitsBlock/BenefitsBlock.fixture.tsx +2 -7
  1662. package/src/components/Blocks.mobile.ts +0 -2
  1663. package/src/components/Blocks.ts +10 -6
  1664. package/src/components/Bonus/Bonus.fixture.tsx +2 -2
  1665. package/src/components/Bonus/Bonus.tsx +4 -10
  1666. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.fixture.tsx +1 -3
  1667. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +2 -3
  1668. package/src/components/BusinessBlock/BusinessBlock.example.json +65 -0
  1669. package/src/components/BusinessBlock/BusinessBlock.fixture.tsx +74 -0
  1670. package/src/components/BusinessBlock/BusinessBlock.tsx +19 -0
  1671. package/src/components/BusinessBlock/BusinessBlock.ui.json +26 -0
  1672. package/src/components/BusinessBlock/BusinessBlockContent.ts +31 -0
  1673. package/src/components/BusinessBlock/BusinessCard.tsx +41 -0
  1674. package/src/components/Calculator/BonusCalculatorForm.tsx +5 -4
  1675. package/src/components/Calculator/Calculator.fixture.tsx +1 -3
  1676. package/src/components/Calculator/Calculator.tsx +2 -5
  1677. package/src/components/Calculator/CreditCalculatorForm.tsx +11 -11
  1678. package/src/components/Calculator/DepositCalculatorForm.tsx +11 -14
  1679. package/src/components/Calculator/renderButtonSection.tsx +2 -3
  1680. package/src/components/Calculator/renderCalculatorBlock.tsx +20 -23
  1681. package/src/components/CardTransfer/CardTransfer.fixture.tsx +3 -3
  1682. package/src/components/CardTransfer/CardTransfer.tsx +3 -5
  1683. package/src/components/Catalog/Catalog.fixture.tsx +1 -2
  1684. package/src/components/Catalog/Catalog.tsx +17 -41
  1685. package/src/components/Catalog/CatalogCard.tsx +22 -24
  1686. package/src/components/ComparisonTable/ComparisonTable.fixture.mobile.tsx +1 -3
  1687. package/src/components/ComparisonTable/ComparisonTable.fixture.tsx +1 -6
  1688. package/src/components/ComparisonTable/ComparisonTable.mobile.tsx +3 -5
  1689. package/src/components/ComparisonTable/ComparisonTable.tsx +16 -21
  1690. package/src/components/ComparisonTable/ComparisonTableBody.tsx +3 -16
  1691. package/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +10 -20
  1692. package/src/components/ComparisonTable/ComparisonTableRows.tsx +2 -2
  1693. package/src/components/ComparisonTable/HeaderCell.tsx +1 -1
  1694. package/src/components/ContactsBlock/ContactsBlock.fixture.tsx +3 -11
  1695. package/src/components/ContactsBlock/ContactsBlock.tsx +1 -2
  1696. package/src/components/ContentPage/ContentPage.fixture.mobile.tsx +2 -6
  1697. package/src/components/ContentPage/ContentPage.fixture.tsx +1 -3
  1698. package/src/components/ContentPage/ContentPage.tsx +4 -10
  1699. package/src/components/ContentPage/renderBlock.tsx +4 -9
  1700. package/src/components/ContentPage/renderBlockList.tsx +9 -20
  1701. package/src/components/ContentPage/renderSlots.tsx +4 -5
  1702. package/src/components/ErrorBlock/ErrorBlock.fixture.tsx +1 -3
  1703. package/src/components/ErrorBlock/ErrorBlock.tsx +14 -24
  1704. package/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +3 -12
  1705. package/src/components/ExchangeRateTile/ExchangeRateTile.fixture.tsx +3 -3
  1706. package/src/components/ExchangeRateTile/ExchangeRateTile.tsx +1 -4
  1707. package/src/components/Footer/Contacts.tsx +17 -28
  1708. package/src/components/Footer/Footer.fallback.ts +13 -0
  1709. package/src/components/Footer/Footer.fixture.mobile.tsx +2 -84
  1710. package/src/components/Footer/Footer.fixture.tsx +2 -141
  1711. package/src/components/Footer/Footer.mobile.tsx +38 -56
  1712. package/src/components/Footer/Footer.tsx +28 -43
  1713. package/src/components/Footer/FooterContent.ts +4 -19
  1714. package/src/components/Footer/FooterDataProps.ts +13 -0
  1715. package/src/components/Footer/FooterLink.ts +2 -2
  1716. package/src/components/Footer/HorizontalNavigation.mobile.tsx +13 -25
  1717. package/src/components/Footer/HorizontalNavigation.tsx +19 -26
  1718. package/src/components/Footer/HorizontalNavigationLink.tsx +16 -10
  1719. package/src/components/Footer/MediaButton.tsx +6 -1
  1720. package/src/components/Footer/Sitemap.tsx +28 -30
  1721. package/src/components/Footer/SocialMedia.mobile.tsx +9 -19
  1722. package/src/components/Footer/SocialMedia.tsx +12 -24
  1723. package/src/components/Footer/TextInformation.mobile.tsx +3 -12
  1724. package/src/components/Footer/TextInformation.tsx +15 -25
  1725. package/src/components/Footer/TextInformationLink.tsx +16 -10
  1726. package/src/components/Footer/useFooterData.ts +13 -0
  1727. package/src/components/Gallery/Gallery.fixture.mobile.tsx +2 -4
  1728. package/src/components/Gallery/Gallery.fixture.tsx +2 -6
  1729. package/src/components/Gallery/Gallery.mobile.tsx +5 -10
  1730. package/src/components/Gallery/GalleryContainer.tsx +4 -21
  1731. package/src/components/Gallery/GalleryContent.ts +1 -1
  1732. package/src/components/Gallery/GalleryInner.tsx +1 -3
  1733. package/src/components/GracePeriod/GracePeriod.fixture.tsx +2 -2
  1734. package/src/components/GracePeriod/GracePeriod.tsx +12 -18
  1735. package/src/components/Header/DropdownMenu.tsx +34 -39
  1736. package/src/components/Header/Header.fixture.mobile.tsx +3 -3
  1737. package/src/components/Header/Header.fixture.tsx +4 -4
  1738. package/src/components/Header/Header.mobile.tsx +25 -29
  1739. package/src/components/Header/Header.tsx +11 -13
  1740. package/src/components/Header/HeaderBurger.tsx +2 -4
  1741. package/src/components/Header/HeaderSubMenu.tsx +3 -6
  1742. package/src/components/Header/HeaderSubMenuItem.tsx +2 -22
  1743. package/src/components/Headline/Headline.fixture.mobile.tsx +10 -14
  1744. package/src/components/Headline/Headline.fixture.tsx +15 -15
  1745. package/src/components/Headline/Headline.tsx +1 -2
  1746. package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.fixture.tsx +1 -2
  1747. package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +3 -17
  1748. package/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +2 -2
  1749. package/src/components/InvestmentGallery/InvestmentGallery.fixture.tsx +1 -2
  1750. package/src/components/InvestmentGallery/InvestmentGallery.tsx +6 -21
  1751. package/src/components/InvestmentGallery/InvestmentGalleryCard.tsx +3 -9
  1752. package/src/components/InvestmentInfo/InvestmentInfo.fixture.tsx +2 -2
  1753. package/src/components/InvestmentInfo/InvestmentInfo.tsx +1 -6
  1754. package/src/components/LikeControl/LikeControl.fixture.tsx +2 -2
  1755. package/src/components/LikeControl/LikeControl.tsx +9 -13
  1756. package/src/components/LinkDocs/LinkDocs.fixture.mobile.tsx +4 -14
  1757. package/src/components/LinkDocs/LinkDocs.fixture.tsx +5 -20
  1758. package/src/components/LinkDocs/LinkDocs.mobile.tsx +19 -26
  1759. package/src/components/LinkDocs/LinkDocs.tsx +21 -25
  1760. package/src/components/LinkDocs/LinkDocsHorizontalList.tsx +15 -22
  1761. package/src/components/LinkList/LinkList.fixture.tsx +2 -2
  1762. package/src/components/LinkList/LinkList.tsx +7 -9
  1763. package/src/components/MiniGallery/MiniGallery.fixture.tsx +4 -8
  1764. package/src/components/MobileAppTile/MobileAppTile.fixture.mobile.tsx +1 -2
  1765. package/src/components/MobileAppTile/MobileAppTile.fixture.tsx +2 -10
  1766. package/src/components/MobileAppTile/MobileAppTile.tsx +1 -4
  1767. package/src/components/OfficeMap/OfficeMap.fixture.tsx +2 -2
  1768. package/src/components/OfficeMap/OfficeMap.tsx +4 -2
  1769. package/src/components/OfficeMap/useOfficeMap.ts +4 -1
  1770. package/src/components/OfficeServicesBlock/OfficeServicesBlock.fixture.tsx +1 -2
  1771. package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +9 -16
  1772. package/src/components/OtherProducts/OtherProducts.fixture.tsx +20 -32
  1773. package/src/components/OtherProducts/OtherProducts.tsx +2 -6
  1774. package/src/components/PictureText/PictureText.fixture.tsx +6 -16
  1775. package/src/components/PictureText/PictureText.tsx +23 -27
  1776. package/src/components/Placeholder/Placeholder.fixture.mobile.tsx +2 -2
  1777. package/src/components/Placeholder/Placeholder.fixture.tsx +2 -2
  1778. package/src/components/Placeholder/Placeholder.tsx +3 -6
  1779. package/src/components/ProductBlock/ProductBlock.fixture.mobile.tsx +8 -27
  1780. package/src/components/ProductBlock/ProductBlock.fixture.tsx +7 -24
  1781. package/src/components/ProductBlock/ProductBlock.tsx +6 -23
  1782. package/src/components/ProductBlock/ProductBlockInner.mobile.tsx +3 -12
  1783. package/src/components/ProductBlock/ProductBlockInner.tsx +9 -11
  1784. package/src/components/ProductBlock/renderBackwardButton.tsx +3 -2
  1785. package/src/components/ProductGallery/ProductGallery.fixture.tsx +1 -3
  1786. package/src/components/ProductGallery/ProductGallery.tsx +4 -11
  1787. package/src/components/ProductTile/ProductTile.fixture.tsx +2 -8
  1788. package/src/components/ProductTile/ProductTile.tsx +24 -32
  1789. package/src/components/PromoTile/PromoTile.fixture.tsx +1 -2
  1790. package/src/components/PromoTile/PromoTile.tsx +31 -38
  1791. package/src/components/Recommendation/Recommendation.fixture.tsx +1 -3
  1792. package/src/components/Recommendation/Recommendation.tsx +12 -26
  1793. package/src/components/Recommendation/RecommendationCard.tsx +5 -15
  1794. package/src/components/SafeDepositRental/SafeDepositRental.fixture.tsx +1 -2
  1795. package/src/components/SafeDepositRental/SafeDepositRental.tsx +3 -3
  1796. package/src/components/StepsBlock/StepsBlock.fixture.mobile.tsx +1 -9
  1797. package/src/components/StepsBlock/StepsBlock.fixture.tsx +2 -3
  1798. package/src/components/StepsBlock/StepsBlock.tsx +5 -28
  1799. package/src/components/StepsBlock/renderStepContent.tsx +4 -10
  1800. package/src/components/Tabs/LinkTab.tsx +46 -0
  1801. package/src/components/Tabs/Tabs.fixture.tsx +1 -2
  1802. package/src/components/Tabs/Tabs.tsx +7 -7
  1803. package/src/components/Tabs/TabsContent.ts +5 -5
  1804. package/src/components/Tabs/renderGroupTab.tsx +3 -3
  1805. package/src/components/Tabs/renderTab.tsx +8 -27
  1806. package/src/components/TariffsTable/EmbeddableCellData.tsx +3 -5
  1807. package/src/components/TariffsTable/TariffsTable.fixture.mobile.tsx +2 -7
  1808. package/src/components/TariffsTable/TariffsTable.fixture.tsx +1 -6
  1809. package/src/components/TariffsTable/TariffsTable.mobile.tsx +6 -17
  1810. package/src/components/TariffsTable/TariffsTable.tsx +2 -8
  1811. package/src/components/TariffsTable/TariffsTableCell.tsx +0 -2
  1812. package/src/components/TariffsTable/TariffsTableContent.ts +1 -1
  1813. package/src/components/TariffsTable/TariffsTableHorizontal.tsx +9 -7
  1814. package/src/components/TariffsTable/TariffsTableRenderCell.tsx +0 -5
  1815. package/src/components/TariffsTable/TariffsTableRow.tsx +4 -4
  1816. package/src/components/TariffsTable/TariffsTableRowContainer.tsx +11 -15
  1817. package/src/components/TariffsTable/TariffsTableTileCell.tsx +23 -34
  1818. package/src/components/TariffsTable/TariffsTableVertical.tsx +9 -7
  1819. package/src/components/TextBlock/TextBlock.fixture.mobile.tsx +10 -60
  1820. package/src/components/TextBlock/TextBlock.fixture.tsx +13 -49
  1821. package/src/components/Tile/Tile.fixture.tsx +4 -7
  1822. package/src/components/Tile/Tile.tsx +2 -5
  1823. package/src/components/VerticalLayout/VerticalLayout.example.json +17 -0
  1824. package/src/components/VerticalLayout/VerticalLayout.fixture.tsx +41 -0
  1825. package/src/components/VerticalLayout/VerticalLayout.tsx +51 -0
  1826. package/src/components/VerticalLayout/VerticalLayout.ui.json +1 -0
  1827. package/src/components/VerticalLayout/VerticalLayoutContent.ts +19 -0
  1828. package/src/hooks/handlerDecorator.ts +16 -0
  1829. package/src/hooks/useLink.ts +26 -22
  1830. package/src/hooks/useRouter.ts +28 -0
  1831. package/src/hooks/useTableArrowScrollControl.ts +13 -7
  1832. package/src/icons/IconName.ts +5 -318
  1833. package/src/index.ts +3 -0
  1834. package/src/model/BlockVersion.ts +6 -0
  1835. package/src/model/BlocksRegistry.ts +1 -1
  1836. package/src/model/JSXBlock.ts +5 -9
  1837. package/src/react/setup-fixture.ts +9 -29
  1838. package/src/services/sitemap/SitemapProps.ts +1 -1
  1839. package/src/services/sitemap/findActiveSubItem.ts +1 -1
  1840. package/src/services/sitemap/isHrefActive.ts +1 -5
  1841. package/src/services/sitemap/isSubItemActive.ts +1 -1
  1842. package/src/services/sitemap/isTopItemActive.ts +1 -1
  1843. package/src/services/sitemap/useSWRResource.ts +11 -0
  1844. package/src/ui-kit/BlockWrapper.tsx +6 -4
  1845. package/src/ui-kit/Breadcrumb.tsx +12 -9
  1846. package/src/ui-kit/Button/Button.tsx +35 -80
  1847. package/src/ui-kit/Button/ButtonInner.tsx +2 -3
  1848. package/src/ui-kit/Button/ButtonSection.tsx +9 -14
  1849. package/src/ui-kit/Checkbox/Checkbox.tsx +1 -3
  1850. package/src/ui-kit/Checkbox/CheckboxProps.ts +2 -2
  1851. package/src/ui-kit/HeaderItem/HeaderItem.tsx +18 -22
  1852. package/src/ui-kit/InnerTable/InnerTable.tsx +6 -7
  1853. package/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -4
  1854. package/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +1 -2
  1855. package/src/ui-kit/InnerTable/InnerTableButton.tsx +1 -2
  1856. package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.fixture.tsx +2 -3
  1857. package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +17 -20
  1858. package/src/ui-kit/SearchBar/SearchBar.mobile.tsx +4 -5
  1859. package/src/ui-kit/SearchBar/SearchBar.tsx +2 -5
  1860. package/src/ui-kit/SwipeListControl/SwipeListControl.fixture.mobile.tsx +5 -7
  1861. package/src/ui-kit/SwipeListControl/SwipeListControl.tsx +1 -1
  1862. package/src/ui-kit/SwipeListControl/SwipeListControlProps.ts +2 -3
  1863. package/src/ui-kit/TableArrowScrollControl/TableArrowScrollControl.tsx +2 -2
  1864. package/src/ui-kit/TableArrowScrollControl/TableArrowScrollControlProps.ts +3 -2
  1865. package/src/ui-kit/TopItem/TopItem.tsx +18 -23
  1866. package/src/utils/adjustHref.ts +2 -13
  1867. package/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1868. package/bundle/components/ContentPage/ContentPageContext.d.ts +0 -17
  1869. package/bundle/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1870. package/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1871. package/bundle/components/Tabs/renderLinkTab.d.ts +0 -9
  1872. package/bundle/services/sitemap/useSitemap.d.ts +0 -3
  1873. package/bundle/ui-kit/Button/Button.mobile.d.ts +0 -2
  1874. package/bundle/utils/withoutMobilePath.d.ts +0 -2
  1875. package/dist/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1876. package/dist/components/Calculator/renderPaymentTypeSelector.js +0 -9
  1877. package/dist/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1878. package/dist/components/ContentPage/ContentPageContext.d.ts +0 -17
  1879. package/dist/components/ContentPage/ContentPageContext.js.map +0 -1
  1880. package/dist/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1881. package/dist/components/ProductGallery/ProductGallery.mobile.js +0 -11
  1882. package/dist/components/ProductGallery/ProductGallery.mobile.js.map +0 -1
  1883. package/dist/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1884. package/dist/components/ProductGallery/ProductGalleryBlock.js +0 -11
  1885. package/dist/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1886. package/dist/components/Tabs/renderLinkTab.d.ts +0 -9
  1887. package/dist/components/Tabs/renderLinkTab.js +0 -10
  1888. package/dist/components/Tabs/renderLinkTab.js.map +0 -1
  1889. package/dist/services/sitemap/useSitemap.d.ts +0 -3
  1890. package/dist/services/sitemap/useSitemap.js.map +0 -1
  1891. package/dist/ui-kit/Button/Button.mobile.d.ts +0 -2
  1892. package/dist/ui-kit/Button/Button.mobile.js +0 -31
  1893. package/dist/ui-kit/Button/Button.mobile.js.map +0 -1
  1894. package/dist/utils/withoutMobilePath.d.ts +0 -2
  1895. package/dist/utils/withoutMobilePath.js +0 -6
  1896. package/dist/utils/withoutMobilePath.js.map +0 -1
  1897. package/lib/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1898. package/lib/components/Calculator/renderPaymentTypeSelector.js +0 -6
  1899. package/lib/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1900. package/lib/components/ContentPage/ContentPageContext.d.ts +0 -17
  1901. package/lib/components/ContentPage/ContentPageContext.js +0 -2
  1902. package/lib/components/ContentPage/ContentPageContext.js.map +0 -1
  1903. package/lib/components/ProductGallery/ProductGallery.fixture.mobile.d.ts +0 -6
  1904. package/lib/components/ProductGallery/ProductGallery.mobile.d.ts +0 -5
  1905. package/lib/components/ProductGallery/ProductGallery.mobile.js +0 -9
  1906. package/lib/components/ProductGallery/ProductGallery.mobile.js.map +0 -1
  1907. package/lib/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1908. package/lib/components/ProductGallery/ProductGalleryBlock.js +0 -9
  1909. package/lib/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1910. package/lib/components/Tabs/renderLinkTab.d.ts +0 -9
  1911. package/lib/components/Tabs/renderLinkTab.js +0 -7
  1912. package/lib/components/Tabs/renderLinkTab.js.map +0 -1
  1913. package/lib/services/sitemap/useSitemap.d.ts +0 -3
  1914. package/lib/services/sitemap/useSitemap.js.map +0 -1
  1915. package/lib/ui-kit/Button/Button.mobile.d.ts +0 -2
  1916. package/lib/ui-kit/Button/Button.mobile.js +0 -29
  1917. package/lib/ui-kit/Button/Button.mobile.js.map +0 -1
  1918. package/lib/utils/withoutMobilePath.d.ts +0 -2
  1919. package/lib/utils/withoutMobilePath.js +0 -3
  1920. package/lib/utils/withoutMobilePath.js.map +0 -1
  1921. package/mobile/bundle/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1922. package/mobile/bundle/components/ContentPage/ContentPageContext.d.ts +0 -17
  1923. package/mobile/bundle/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1924. package/mobile/bundle/components/Tabs/renderLinkTab.d.ts +0 -9
  1925. package/mobile/bundle/services/sitemap/useSitemap.d.ts +0 -3
  1926. package/mobile/bundle/utils/withoutMobilePath.d.ts +0 -2
  1927. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1928. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js +0 -9
  1929. package/mobile/dist/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1930. package/mobile/dist/components/ContentPage/ContentPageContext.d.ts +0 -17
  1931. package/mobile/dist/components/ContentPage/ContentPageContext.js.map +0 -1
  1932. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1933. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.js +0 -11
  1934. package/mobile/dist/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1935. package/mobile/dist/components/Tabs/renderLinkTab.d.ts +0 -9
  1936. package/mobile/dist/components/Tabs/renderLinkTab.js +0 -10
  1937. package/mobile/dist/components/Tabs/renderLinkTab.js.map +0 -1
  1938. package/mobile/dist/services/sitemap/useSitemap.d.ts +0 -3
  1939. package/mobile/dist/services/sitemap/useSitemap.js.map +0 -1
  1940. package/mobile/dist/utils/withoutMobilePath.d.ts +0 -2
  1941. package/mobile/dist/utils/withoutMobilePath.js +0 -6
  1942. package/mobile/dist/utils/withoutMobilePath.js.map +0 -1
  1943. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.d.ts +0 -11
  1944. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js +0 -6
  1945. package/mobile/lib/components/Calculator/renderPaymentTypeSelector.js.map +0 -1
  1946. package/mobile/lib/components/ContentPage/ContentPageContext.d.ts +0 -17
  1947. package/mobile/lib/components/ContentPage/ContentPageContext.js +0 -2
  1948. package/mobile/lib/components/ContentPage/ContentPageContext.js.map +0 -1
  1949. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.d.ts +0 -8
  1950. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.js +0 -9
  1951. package/mobile/lib/components/ProductGallery/ProductGalleryBlock.js.map +0 -1
  1952. package/mobile/lib/components/Tabs/renderLinkTab.d.ts +0 -9
  1953. package/mobile/lib/components/Tabs/renderLinkTab.js +0 -7
  1954. package/mobile/lib/components/Tabs/renderLinkTab.js.map +0 -1
  1955. package/mobile/lib/services/sitemap/useSitemap.d.ts +0 -3
  1956. package/mobile/lib/services/sitemap/useSitemap.js.map +0 -1
  1957. package/mobile/lib/utils/withoutMobilePath.d.ts +0 -2
  1958. package/mobile/lib/utils/withoutMobilePath.js +0 -3
  1959. package/mobile/lib/utils/withoutMobilePath.js.map +0 -1
  1960. package/mobile/src/components/Calculator/renderPaymentTypeSelector.tsx +0 -14
  1961. package/mobile/src/components/ContentPage/ContentPageContext.tsx +0 -20
  1962. package/mobile/src/components/ProductGallery/ProductGalleryBlock.tsx +0 -28
  1963. package/mobile/src/components/Tabs/renderLinkTab.tsx +0 -42
  1964. package/mobile/src/services/sitemap/useSitemap.ts +0 -15
  1965. package/mobile/src/utils/withoutMobilePath.ts +0 -3
  1966. package/src/components/Calculator/renderPaymentTypeSelector.tsx +0 -14
  1967. package/src/components/ContentPage/ContentPageContext.tsx +0 -20
  1968. package/src/components/ProductGallery/ProductGallery.fixture.mobile.tsx +0 -234
  1969. package/src/components/ProductGallery/ProductGallery.mobile.tsx +0 -21
  1970. package/src/components/ProductGallery/ProductGalleryBlock.tsx +0 -28
  1971. package/src/components/Tabs/renderLinkTab.tsx +0 -42
  1972. package/src/services/sitemap/useSitemap.ts +0 -15
  1973. package/src/ui-kit/Button/Button.fixture.mobile.tsx +0 -16
  1974. package/src/ui-kit/Button/Button.mobile.tsx +0 -87
  1975. 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 }));
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 }));
1760
1743
  });
1761
1744
 
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 })] }));
1766
- });
1767
-
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" }));
@@ -2485,6 +2462,25 @@
2485
2462
  const getArraySumAndAverage = (arr) => arr.reduce((a, b) => a + b) / arr.length;
2486
2463
  const normalizePoints = (points) => (points ? points.map((_) => _.coords) : null);
2487
2464
 
2465
+ // Добавлено для проверки
2466
+ const nearbyOffices = [
2467
+ { title: 'Деловой центр', time: '1 мин', distance: '~30 м.', icon: 'MetroIcon' },
2468
+ { title: 'Выставочная', time: '5 мин', distance: '~120 м.', icon: 'MetroIcon' },
2469
+ { title: 'Деловой центр', time: '8 мин', distance: '~350 м.', icon: 'MetroIcon' },
2470
+ ];
2471
+
2472
+ const renderCurrentDaySchedule = ({ lunchHour, status, workTime }) => {
2473
+ const hasTime = /\d+/gi.test(lunchHour);
2474
+ const lunchHourText = hasTime ? `Перерыв ${lunchHour}` : lunchHour;
2475
+ return status ? (jsxs("div", { className: "flex", children: [jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-primary-main border-green-light mr-4", children: workTime ? workTime : null }), jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-golden border-golden", children: lunchHour ? lunchHourText : null })] })) : (jsx("div", { className: "flex", children: jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-error border-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }) }));
2476
+ };
2477
+ const renderNearbyOffice = ({ icon, title, distance, time }, index) => (jsxs("div", { className: "flex mr-4", children: [jsx(Icon, { name: icon, width: "16", height: "16", asSVG: true, className: "mr-1" }), title ? jsxs("span", { className: "text-m", children: [title, "\u00A0"] }) : null, jsxs("span", { className: "text-m-light", children: [distance ? ` (${distance})` : null, time ? `, ${time}` : null] })] }, `nearbyOffice${index}`));
2478
+ const renderDay = ({ title, status, workTime, lunchHour, description }, inx) => (jsxs("div", { className: "flex flex-col pb-3 border-b border-solid border-main-divider mb-3 last:border-0", children: [jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-l text-primary-text", children: [jsx("div", { children: title }), status ? null : jsx("div", { className: "text-m-light text-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }), status && workTime ? jsx("div", { children: workTime }) : null] }), status && lunchHour ? renderLunchHour(lunchHour) : null, description ? (jsx("div", { className: "pb-1 text-s-light text-secondary-text", children: description })) : null] }, `day${inx}`));
2479
+ const renderLunchHour = (lunchHour) => {
2480
+ const hasTime = /\d+/gi.test(lunchHour);
2481
+ return hasTime ? (jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-error", children: [jsx("div", { children: "\u041F\u0435\u0440\u0435\u0440\u044B\u0432" }), jsx("div", { children: lunchHour })] })) : (jsx("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-primary-main", children: jsx("div", { children: lunchHour }) }));
2482
+ };
2483
+
2488
2484
  const OFFICE_MAP = {
2489
2485
  id: 123,
2490
2486
  branchType: {
@@ -2565,31 +2561,14 @@
2565
2561
  safeBoxCaseVolumes: null,
2566
2562
  };
2567
2563
 
2568
- // Добавлено для проверки
2569
- const nearbyOffices = [
2570
- { title: 'Деловой центр', time: '1 мин', distance: '~30 м.', icon: 'MetroIcon' },
2571
- { title: 'Выставочная', time: '5 мин', distance: '~120 м.', icon: 'MetroIcon' },
2572
- { title: 'Деловой центр', time: '8 мин', distance: '~350 м.', icon: 'MetroIcon' },
2573
- ];
2574
-
2575
- const renderCurrentDaySchedule = ({ lunchHour, status, workTime }) => {
2576
- const hasTime = /\d+/gi.test(lunchHour);
2577
- const lunchHourText = hasTime ? `Перерыв ${lunchHour}` : lunchHour;
2578
- return status ? (jsxs("div", { className: "flex", children: [jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-primary-main border-green-light mr-4", children: workTime ? workTime : null }), jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-golden border-golden", children: lunchHour ? lunchHourText : null })] })) : (jsx("div", { className: "flex", children: jsx("div", { className: "p-3 border rounded-md text-m flex items-center cursor-pointer text-error border-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }) }));
2579
- };
2580
- const renderNearbyOffice = ({ icon, title, distance, time }, index) => (jsxs("div", { className: "flex mr-4", children: [jsx(Icon, { name: icon, width: "16", height: "16", asSVG: true, className: "mr-1" }), title ? jsxs("span", { className: "text-m", children: [title, "\u00A0"] }) : null, jsxs("span", { className: "text-m-light", children: [distance ? ` (${distance})` : null, time ? `, ${time}` : null] })] }, `nearbyOffice${index}`));
2581
- const renderDay = ({ title, status, workTime, lunchHour, description }, inx) => (jsxs("div", { className: "flex flex-col pb-3 border-b border-solid border-main-divider mb-3 last:border-0", children: [jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-l text-primary-text", children: [jsx("div", { children: title }), status ? null : jsx("div", { className: "text-m-light text-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }), status && workTime ? jsx("div", { children: workTime }) : null] }), status && lunchHour ? renderLunchHour(lunchHour) : null, description ? (jsx("div", { className: "pb-1 text-s-light text-secondary-text", children: description })) : null] }, `day${inx}`));
2582
- const renderLunchHour = (lunchHour) => {
2583
- const hasTime = /\d+/gi.test(lunchHour);
2584
- return hasTime ? (jsxs("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-error", children: [jsx("div", { children: "\u041F\u0435\u0440\u0435\u0440\u044B\u0432" }), jsx("div", { children: lunchHour })] })) : (jsx("div", { className: "flex justify-between items-center w-full pb-1 text-m-light text-primary-main", children: jsx("div", { children: lunchHour }) }));
2585
- };
2586
-
2587
2564
  const OFFICE_MAP_URL = '/api/v1/branches';
2588
2565
  // TODO: regionCode - внутренний идентификатор банка. Не соответствует государственной нумерации регионов РФ
2589
2566
  // TODO: Список регионов можно получить через api/v1/regions
2590
2567
  function useOfficeMap(regionCode) {
2591
2568
  const { data } = useAsyncData(regionCode ? `${OFFICE_MAP_URL}?regionCode=${regionCode}` : undefined, fetchOfficeMap);
2592
- return data;
2569
+ console.warn('WARNING!!! Hook useOfficeMap RETURN MOCK object for testing!');
2570
+ console.log('Hook useOfficeMap get this data:', data);
2571
+ return OFFICE_MAP;
2593
2572
  }
2594
2573
  const fetchOfficeMap = (url) => {
2595
2574
  if (!url) {
@@ -2599,7 +2578,10 @@
2599
2578
  };
2600
2579
 
2601
2580
  const OfficeMap = JSX(({ className = '' }) => {
2602
- const resultOfficeMap = useOfficeMap('063') || OFFICE_MAP;
2581
+ // TODO: useOfficeMap endpoint had use /api/v1/branches. This endpoint now is`t correct/
2582
+ // TODO: useOfficeMap has return MOCK OBJECT!
2583
+ // TODO: Fix this when endpoint /api/v1/branches (or new endpoint) had returning right data
2584
+ const resultOfficeMap = useOfficeMap('000');
2603
2585
  const { name, address, gpsLatitude, gpsLongitude, workSchedule } = resultOfficeMap;
2604
2586
  const { workingMonday, workingTuesday, workingWednesday, workingThursday, workingFriday, workingSaturday, workingSunday, } = workSchedule;
2605
2587
  const { workTime, lunchHour, workTimeSaturday, lunchHourSaturday } = workSchedule;
@@ -2629,12 +2611,10 @@
2629
2611
  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
2612
  });
2631
2613
 
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
- });
2614
+ 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
2615
  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
2616
 
2637
- const OtherProducts = JSX(({ context, className = '', children, ...rest }) => (jsx(BlockWrapper, { context: context, className: `font-sans text-primary-text ${className}`, ...rest, children: children })));
2617
+ const OtherProducts = JSX(({ className = '', children, ...rest }) => (jsx(BlockWrapper, { className: `font-sans text-primary-text ${className}`, ...rest, children: children })));
2638
2618
  OtherProducts.childrenTypes = ['OtherProductsItem'];
2639
2619
 
2640
2620
  function getParentBlockDef(ancestors, type) {
@@ -2701,9 +2681,7 @@
2701
2681
  return `w-[50px] h-[50px] min-w-[50px] rounded-full p-2.5 box-border flex items-center justify-center ${bgColorStyle}`;
2702
2682
  }
2703
2683
 
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
- });
2684
+ 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
2685
  const renderBenefit$2 = (version) => (benefit, i) => (jsx(BenefitItem, { icon: benefit.icon, label: benefit.label, description: benefit.description, version: version }, String(i)));
2708
2686
  function renderInsuranceSumMonth(sum, monthLimit) {
2709
2687
  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 +2720,8 @@
2742
2720
  }
2743
2721
 
2744
2722
  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() })] }));
2723
+ const Placeholder = JSX(({ className, title, description = 'Блок в разработке...', ...rest }) => {
2724
+ 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
2725
  });
2748
2726
  const renderShimmer = (size = 3) => goldenSequence(100, size)
2749
2727
  .map((_) => Math.floor(_))
@@ -2751,24 +2729,26 @@
2751
2729
  const renderShimmerItem = (width, index) => (jsx("div", { style: { width: `${width || 100}%` }, className: "h-4 mt-2 bg-secondary-light" }, String(index)));
2752
2730
  const goldenSequence = (first, size) => [first].concat(size > 0 ? goldenSequence(first / GOLDEN_RATIO, size - 1) : []);
2753
2731
 
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 })));
2732
+ const Breadcrumb = JSX(({ className = '', children, ...props }) => {
2733
+ const link = useLink();
2734
+ const { text, href, target, onClick } = link(props);
2735
+ 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 }));
2736
+ });
2755
2737
 
2756
2738
  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
2739
 
2758
- const ProductBlockInner = JSX(({ className = '', context, title, headlineVersion = 'L', description, benefits, benefitsVersion, buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', }) => {
2740
+ const ProductBlockInner = JSX(({ className = '', title, headlineVersion = 'L', description, benefits, benefitsVersion, buttons, image, items, version = 'primary', isDotted = true, textBlockClassName = '', ...rest }) => {
2759
2741
  const benefitsCount = benefits?.filter((_) => _.label)?.length;
2760
2742
  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 })] }));
2743
+ 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
2744
  });
2763
- const getButtons = (context, buttons) => {
2764
- return buttons?.length ? (jsx(ButtonSection, { context: context, buttons: buttons, className: "flex gap-4" })) : null;
2765
- };
2766
2745
  const getBenefitsContainerStyles = (benefitsCount = 0) => `gap-6 mt-6 ${benefitsCount > 3 ? 'inline-grid grid-cols-[auto_auto]' : 'flex'}`;
2767
2746
 
2768
2747
  function renderBackwardButton(button, version, className) {
2769
2748
  const { text, href, target, onClick } = button;
2770
2749
  const iconVersion = version === 'primary' ? 'white' : 'black';
2771
2750
  const backwardIcon = button?.icon || { icon: 'ArrowLeftIcon' };
2751
+ // TODO Move click handler to Button
2772
2752
  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
2753
  }
2774
2754
 
@@ -2777,13 +2757,11 @@
2777
2757
  secondary: 'text-white/80',
2778
2758
  };
2779
2759
  const ProductBlock = JSX((props) => {
2780
- const { context, className = '', breadcrumbs, backwardButton, version = 'primary', ...otherProps } = props;
2781
- const router = context.useRouter();
2782
- const { handlerDecorator } = context;
2760
+ const { className = '', breadcrumbs, backwardButton, version = 'primary', ...rest } = props;
2783
2761
  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 })] }));
2762
+ 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
2763
+ ? renderBackwardButton(backwardButton, buttonVersion, 'mb-10 -mt-2.5')
2764
+ : 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
2765
  });
2788
2766
 
2789
2767
  const BorderVersionStyleMap = {
@@ -2795,12 +2773,12 @@
2795
2773
  primary: { title: 'text-secondary-text', text: 'text-secondary-text' },
2796
2774
  secondary: { title: 'text-white', text: 'text-white/80' },
2797
2775
  };
2798
- const ProductGallery = JSX(({ className = '', context, slides = [], version = 'primary', ...rest }) => {
2776
+ const ProductGallery = JSX(({ className = '', slides = [], version = 'primary', ...rest }) => {
2799
2777
  const galleryNav = slides.map((s) => s.nav);
2800
2778
  const galleryBlocks = slides.map((s) => s.productBlock);
2801
2779
  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({
2780
+ return (jsxs(BlockWrapper, { className: `box-border pt-[50px] overflow-hidden relative font-sans w-100 mb-6 ${className}
2781
+ ${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
2782
  slide,
2805
2783
  i,
2806
2784
  activeSlideIndex,
@@ -2808,10 +2786,10 @@
2808
2786
  version,
2809
2787
  })) })] }));
2810
2788
  });
2811
- function renderProductBlock(block, i, context) {
2789
+ function renderProductBlock(block, i) {
2812
2790
  const { version } = block;
2813
2791
  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)));
2792
+ 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
2793
  }
2816
2794
  function renderNavButton({ slide, i, activeSlideIndex, onClick, version }) {
2817
2795
  const isActiveBtn = i === activeSlideIndex;
@@ -2830,12 +2808,10 @@
2830
2808
  `, 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
2809
  }
2832
2810
 
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
- });
2811
+ 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]
2812
+ ${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
2813
+ ? renderAdditionalDescription(additionalDescription, image, version)
2814
+ : 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
2815
  function renderBenefits(benefits, version, image) {
2840
2816
  // picture width = 242px. Text can overlay picture 20px deep. Outer paddings_x = 36px. 242-36-20 = 186px
2841
2817
  const BENEFITS_WIDTH = image?.src ? 'max-w-[calc(100%-186px)]' : '100%';
@@ -2865,9 +2841,7 @@
2865
2841
  return (jsx("div", { className: `text-m-light mt-2.5 z-10 ${DESCRIPTION_WIDTH} ${descStyleMap[version]}`, children: additionalDescription }));
2866
2842
  }
2867
2843
 
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
- });
2844
+ 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
2845
  function formatDate(date) {
2872
2846
  const dateObj = new Date(date);
2873
2847
  const dateFormat = {
@@ -2878,30 +2852,25 @@
2878
2852
  return dateObj.toLocaleString('ru-RU', dateFormat).replace('г.', '');
2879
2853
  }
2880
2854
 
2881
- const RecommendationCard = JSX(({ context, className = '', title, description, items, image, version, socialMedia }) => {
2855
+ const RecommendationCard = JSX(({ className = '', title, description, items, image, version, socialMedia }) => {
2882
2856
  const tileTitle = title ? (jsx(Heading, { headingType: "h5", as: "h3", className: "mb-3.5 z-10", title: title })) : null;
2883
2857
  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] }) }) }));
2858
+ 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
2859
  });
2886
2860
 
2887
2861
  const BLUR_BLOCK_CLASSES$1 = 'absolute top-0 bottom-0 w-[84px]';
2888
2862
  const CARD_FULL_VIEW_COUNT$1 = 2;
2889
2863
  const CARD_SHIFT = 525;
2890
- const Recommendation = JSX(({ context, recommendations = [], className = '', title, version = 'primary', ...rest }) => {
2864
+ const Recommendation = JSX(({ recommendations = [], className = '', title, version = 'primary', ...rest }) => {
2891
2865
  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))
2866
+ 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
2867
+ ? recommendations.map((card, i) => (jsx(RecommendationCard, { version: version, className: BorderVersionStyleMap[version], ...card }, String(i))))
2896
2868
  : null }), renderNavButtons$1({
2897
2869
  cardsCount: recommendations.length,
2898
2870
  activeCardIndex,
2899
2871
  setActiveCardIndex,
2900
2872
  })] }), 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
2873
  });
2902
- const renderRecommendationCard = (context, className, version) => (card, i) => {
2903
- return (jsx(RecommendationCard, { context: context, ...card, version: version, className: className }, String(i)));
2904
- };
2905
2874
  const renderNavButtons$1 = ({ cardsCount, activeCardIndex, setActiveCardIndex, }) => {
2906
2875
  const handleNextClick = () => setActiveCardIndex(activeCardIndex + 1);
2907
2876
  const handlePrevClick = () => setActiveCardIndex(activeCardIndex - 1);
@@ -3031,7 +3000,7 @@
3031
3000
  }
3032
3001
 
3033
3002
  const DEFAULT_DAYS = 26;
3034
- const SafeDepositRental = JSX(({ title, footnote, context, className = '', ...rest }) => {
3003
+ const SafeDepositRental = JSX(({ title, footnote, className = '', ...rest }) => {
3035
3004
  const [showMap, setShowMap] = useState(false);
3036
3005
  const [safeDepositState, setStateDepositState] = useState({
3037
3006
  selectedRegion: '',
@@ -3048,7 +3017,7 @@
3048
3017
  setShowMap(!showMap);
3049
3018
  };
3050
3019
  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] }));
3020
+ 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
3021
  });
3053
3022
  const normalizeSelectedRegion = (selectedRegion, regions) => !selectedRegion && regions?.length && regions[0]?.code ? regions[0].code : selectedRegion;
3054
3023
 
@@ -3056,7 +3025,7 @@
3056
3025
 
3057
3026
  const renderItems = ({ items, isDotted = true, version = 'primary', className = '', }) => items ? (jsx(List, { className: className, version: version, items: items, listItemSize: "M", isDotted: isDotted })) : null;
3058
3027
 
3059
- const renderStepContent = ({ styleMap, isMainButton, version, router, handlerDecorator, }) => (step, i, { length }) => {
3028
+ const renderStepContent = ({ styleMap, isMainButton, version, }) => (step, i, { length }) => {
3060
3029
  const { label, description, button, items, isDotted } = step;
3061
3030
  const contentMarginClass = label && (description || items) ? 'mt-2' : '';
3062
3031
  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 +3036,7 @@
3067
3036
  isDotted,
3068
3037
  version,
3069
3038
  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)));
3039
+ })] })] }), 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
3040
  };
3072
3041
  const renderStepLabel = (label) => label ? jsx("div", { className: "text-h6", children: label }) : null;
3073
3042
  const renderStepDescription = ({ description, className = '', }) => (description ? jsx("div", { className: className, children: description }) : null);
@@ -3097,9 +3066,7 @@
3097
3066
 
3098
3067
  const getLineOpacity = (showLines) => (showLines ? '' : 'opacity-0');
3099
3068
  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;
3069
+ const StepsBlock = JSX(({ className = '', showLines = true, steps = [], button, version = 'primary', ...rest }) => {
3103
3070
  const { title } = rest;
3104
3071
  const styleMap = STEPS_BLOCK_STYLE_MAPS[version];
3105
3072
  const shortGaps = steps.length > 3;
@@ -3113,13 +3080,7 @@
3113
3080
  styleMap.background,
3114
3081
  styleMap.title,
3115
3082
  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] }));
3083
+ ].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
3084
  });
3124
3085
  const renderStepIcon = (styleMap, version) => ({ icon }, i) => {
3125
3086
  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 +3098,22 @@
3137
3098
  const ACTIVE_TEXT_CLASSES = 'text-white';
3138
3099
  const INACTIVE_TEXT_CLASSES = 'text-secondary-text group-hover:text-primary-main';
3139
3100
 
3101
+ const LinkTab = JSX((props) => {
3102
+ const { tab, currentTab, onClick } = props;
3103
+ const active = currentTab?.type === 'link' && currentTab.href === tab.href;
3104
+ const handleClick = useCallback(() => {
3105
+ onClick && onClick(tab);
3106
+ EventBus.inst.fire('anchorClick', { isScrolling: true, label: tab.href });
3107
+ }, [tab, onClick]);
3108
+ const link = useLink();
3109
+ const adjustedProps = link({ ...tab, onClick: handleClick });
3110
+ 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 }) }));
3111
+ });
3112
+
3140
3113
  const BADGE_CLASSES = 'min-w-[22px] h-[22px] rounded-full text-xs ml-2 flex justify-center items-center';
3141
3114
  const ACTIVE_BADGE_CLASSES = 'bg-white/30 text-white';
3142
3115
  const INACTIVE_BADGE_CLASSES = 'bg-main-divider text-secondary-text group-hover:text-primary-main';
3143
- const renderGroupTab = ({ onClick, currentTab, showCounter, page }) => (tab, i) => {
3116
+ const renderGroupTab = ({ page, currentTab, showCounter, onClick }) => (tab, i) => {
3144
3117
  const active = currentTab === tab;
3145
3118
  const count = tab.ref && page?.blocks
3146
3119
  ? page.blocks.filter((block) => block?.labels?.includes(tab.ref)).length
@@ -3150,37 +3123,19 @@
3150
3123
  const renderTitle$1 = (title, active) => (jsx("h3", { className: `${TEXT_CLASSES} ${active ? ACTIVE_TEXT_CLASSES : INACTIVE_TEXT_CLASSES}`, children: title }));
3151
3124
  const renderCount = (count, active) => (jsx("div", { className: `${BADGE_CLASSES} ${active ? ACTIVE_BADGE_CLASSES : INACTIVE_BADGE_CLASSES}`, children: count }));
3152
3125
 
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 }) =>
3126
+ const renderTab = ({ page, currentTab, showCounter, onClick }) =>
3159
3127
  // Linter doesn't understand that switch processes all cases
3160
3128
  // eslint-disable-next-line consistent-return
3161
3129
  (tab, i) => {
3162
- const { useRouter, handlerDecorator } = context;
3163
- const router = useRouter();
3164
3130
  const type = tab.type;
3165
3131
  if (!(type === 'group' || type === 'link')) {
3166
3132
  return null;
3167
3133
  }
3168
3134
  switch (type) {
3169
3135
  case 'group':
3170
- return renderGroupTab({ onClick, currentTab, showCounter, page, context })(tab, i);
3136
+ return renderGroupTab({ page, currentTab, showCounter, onClick })(tab, i);
3171
3137
  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
- });
3138
+ return jsx(LinkTab, { tab: tab, currentTab: currentTab }, String(i));
3184
3139
  }
3185
3140
  default:
3186
3141
  assertUnreachable(type);
@@ -3188,7 +3143,7 @@
3188
3143
  };
3189
3144
 
3190
3145
  const Tabs = JSX((props) => {
3191
- const { context, className = '', tabs, page, showCounter, isSticky } = props;
3146
+ const { className = '', tabs, showCounter, isSticky, ...rest } = props;
3192
3147
  const [currentTab, setCurrentTab] = useState(tabs ? tabs[0] : undefined);
3193
3148
  useEffect(() => EventBus.inst.subscribe('tab', (event) => {
3194
3149
  if (!tabs) {
@@ -3211,7 +3166,7 @@
3211
3166
  }
3212
3167
  setCurrentTab(selectedTab);
3213
3168
  };
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 })) }));
3169
+ 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
3170
  });
3216
3171
  const checkTab = (event) => (_) => _.type === 'link' && _.href === `#${event.label}`;
3217
3172
 
@@ -3234,11 +3189,9 @@
3234
3189
  };
3235
3190
  const renderImgCellData = ({ image }) => (image?.src ? jsx(ImgInner, { image: image }) : null);
3236
3191
  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
- });
3192
+ const renderTableCellData = JSX(({ isVisible, displayTable, dataUrl, pdfUrl, isOpen }) => isVisible ? (jsx(TableInnerButton, { isOpen: isOpen, onClick: () => {
3193
+ displayTable({ dataUrl, pdfUrl });
3194
+ } })) : null);
3242
3195
  const EmbeddableCellData = {
3243
3196
  Buttons: renderButtonsCellData,
3244
3197
  Img: renderImgCellData,
@@ -3247,7 +3200,7 @@
3247
3200
  Table: renderTableCellData,
3248
3201
  };
3249
3202
 
3250
- const renderCellInner = ({ rowIdx, context, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => (cell, i) => {
3203
+ const renderCellInner = ({ rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => (cell, i) => {
3251
3204
  const [isVisible, setVisibility] = useState(true);
3252
3205
  useEffect(() => {
3253
3206
  if (cellIdx !== openTableInnerIdx || !tableInner) {
@@ -3267,7 +3220,6 @@
3267
3220
  fieldIdx: i,
3268
3221
  displayTable,
3269
3222
  isVisible,
3270
- context,
3271
3223
  },
3272
3224
  })] }, String(i)));
3273
3225
  };
@@ -3283,11 +3235,10 @@
3283
3235
  return jsx(EmbeddableCellInner, { ...cellProps, ...rest });
3284
3236
  };
3285
3237
 
3286
- const TariffsTableCell = JSX(({ context, cells, rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => {
3238
+ const TariffsTableCell = JSX(({ cells, rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => {
3287
3239
  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
3240
  ? cells.map(renderCellInner({
3289
3241
  rowIdx,
3290
- context,
3291
3242
  cellIdx,
3292
3243
  setTableInner,
3293
3244
  tableInner,
@@ -3340,41 +3291,38 @@
3340
3291
  };
3341
3292
  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
3293
 
3343
- const InnerTableBody = JSX(({ context, activeTabIndex, items }) => {
3294
+ const InnerTableBody = JSX(({ activeTabIndex, items }) => {
3344
3295
  const [hiddenTables, setHiddenTables] = useState({});
3345
3296
  const toggleTable = (key) => {
3346
3297
  setHiddenTables((oldState) => ({ ...oldState, [key]: !oldState[key] }));
3347
3298
  };
3348
3299
  return (jsx("div", { children: items.map((_, tableIdx) => {
3349
3300
  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));
3301
+ 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
3302
  }) }));
3352
3303
  });
3353
3304
 
3354
3305
  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
3306
 
3356
3307
  const EMPTY_DATA = 'Данных нет';
3357
- const InnerTable = JSX(({ context, dataUrl, pdfUrl, onClick }) => {
3308
+ const InnerTable = JSX(({ dataUrl, pdfUrl, onClick }) => {
3358
3309
  const { tableData } = useTariffsInnerTableData(dataUrl);
3359
3310
  const [activeTabIndex, setActiveTabIndex] = useState(0);
3360
3311
  const items = tableData?.[activeTabIndex]?.items ?? [];
3361
3312
  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 })] }));
3313
+ 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
3314
  });
3364
3315
 
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
- });
3316
+ 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
3317
 
3369
- const TariffsTableRow = JSX(({ row: { header, data }, activeCardIndex, context, rowIdx }) => {
3318
+ const TariffsTableRow = JSX(({ row: { header, data }, activeCardIndex, rowIdx, ...rest }) => {
3370
3319
  const [tableInner, setTableInner] = useState(undefined);
3371
3320
  const [openTableInnerIdx, setOpenTableInnerIdx] = useState(undefined);
3372
3321
  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] }));
3322
+ 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
3323
  });
3375
3324
 
3376
- const TariffsTable = JSX(({ className = '', context, title, description, rowHeaders, tariffsColumns: columns, hiddenRowsNum = 0, ...rest }) => {
3377
- const [activeCardIndex, setActiveCardIndex] = useState(0);
3325
+ const TariffsTable = JSX(({ className = '', title, description, rowHeaders, tariffsColumns: columns, hiddenRowsNum = 0, ...rest }) => {
3378
3326
  const colData = columns?.map(({ data }) => data) || [];
3379
3327
  const rowData = rowHeaders?.map((header, i) => ({
3380
3328
  header,
@@ -3384,12 +3332,11 @@
3384
3332
  const tableArrowScrollControlProps = useTableArrowScrollControl({
3385
3333
  columnsLength,
3386
3334
  colsLengthForScroll: COLS_LENGTH_FOR_SCROLL,
3387
- activeCardIndex,
3388
- setActiveCardIndex,
3389
3335
  });
3390
- const rows = (rowData || []).map((row, i) => (jsx(TariffsTableRow, { context: context, row: row, activeCardIndex: activeCardIndex, rowIdx: i }, String(i))));
3336
+ const { activeCardIndex } = tableArrowScrollControlProps;
3337
+ const rows = (rowData || []).map((row, i) => (jsx(TariffsTableRow, { row: row, activeCardIndex: activeCardIndex, rowIdx: i, ...rest }, String(i))));
3391
3338
  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 }))] }));
3339
+ 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
3340
  });
3394
3341
  function renderTitle({ title, description }) {
3395
3342
  return title ? (jsx(Heading, { headingType: "h3", className: `text-center ${description ? 'mb-2.5' : 'mb-8'}`, title: title })) : null;
@@ -3440,45 +3387,71 @@
3440
3387
  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
3388
 
3442
3389
  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;
3390
+ const { title, headingType = 'h3', description, items, buttons, image, isDotted = true, listItemSize = 'M', className = '', version = 'primary', tags, children, ...rest } = props;
3444
3391
  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] }) }));
3392
+ 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
3393
  });
3447
3394
  function renderList({ version, isDotted, listItemSize }, items) {
3448
3395
  return items?.length ? (jsx(List, { items: items, isDotted: isDotted, className: "mt-2.5", listItemSize: listItemSize, itemClassName: "mb-1.5", version: version })) : null;
3449
3396
  }
3450
3397
 
3398
+ const alignStyle = {
3399
+ left: 'items-start',
3400
+ center: 'items-center',
3401
+ right: 'items-end',
3402
+ };
3403
+ const gapStyleMap = {
3404
+ XXL: 'gap-10',
3405
+ XL: 'gap-8',
3406
+ L: 'gap-4',
3407
+ M: 'gap-3',
3408
+ S: 'gap-2',
3409
+ XS: 'gap-1',
3410
+ '': '',
3411
+ };
3412
+ const backgroundStyleMap = {
3413
+ transparent: '',
3414
+ primary: 'bg-white',
3415
+ secondary: 'bg-primary-main',
3416
+ };
3417
+ const VerticalLayout = JSX(({ className = '', children, gap = '', align = 'left', version = 'primary', ...rest }) => (jsx(BlockWrapper, { className: [
3418
+ 'flex flex-col',
3419
+ gapStyleMap[gap],
3420
+ alignStyle[align],
3421
+ backgroundStyleMap[version],
3422
+ className,
3423
+ ].join(' '), ...rest, children: children })));
3424
+ VerticalLayout.childrenTypes = {
3425
+ exclude: ['VerticalLayout'],
3426
+ };
3427
+
3451
3428
  const getItemListFontSize = (colValue) => (colValue === 'single' ? 'text-h6' : 'text-l');
3452
3429
  const cardColumnsModeStyleMap = {
3453
3430
  double: 'flex gap-y-2 gap-x-10 flex-wrap',
3454
3431
  single: 'flex gap-y-2 flex-col',
3455
3432
  };
3456
- const InvestmentGalleryCard = JSX(({ className = '', columnsMode = 'double', context, description, additionalDescription, image, cardList, title, version = 'primary', }) => {
3433
+ const InvestmentGalleryCard = JSX(({ className = '', columnsMode = 'double', description, additionalDescription, image, cardList, title, version = 'primary', }) => {
3457
3434
  const tileTitle = title ? (jsx(Heading, { headingType: "h4", as: "h3", className: "mb-3.5 z-10", title: title })) : null;
3458
3435
  const tileImage = image?.src ? (jsx(ImgInner, { className: "absolute bottom-0 right-0 m-0", image: image })) : null;
3459
3436
  return (jsx("section", { className: `relative overflow-hidden text-left border border-solid box-border
3460
3437
  p-9 min-w-[697px] min-h-[319px]
3461
3438
  ${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] }) }) }));
3439
+ ${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
3440
  });
3464
3441
  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
3442
 
3466
3443
  const BLUR_BLOCK_CLASSES = 'absolute top-0 bottom-0 w-[84px]';
3467
3444
  const CARD_FULL_VIEW_COUNT = 1;
3468
- const InvestmentGallery = JSX(({ context, cards = [], className = '', title, version = 'primary', ...rest }) => {
3445
+ const InvestmentGallery = JSX(({ cards = [], className = '', title, version = 'primary', ...rest }) => {
3469
3446
  const [activeCardIndex, setActiveCardIndex] = useState(0);
3470
3447
  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({
3448
+ 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
3449
  cardsCount: cards.length,
3477
3450
  activeCardIndex,
3478
3451
  setActiveCardIndex,
3479
3452
  })] }), 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
3453
  });
3481
- const renderInvestmentGalleryCard = (context, className, version) => (card, i) => (jsx(InvestmentGalleryCard, { className: className, context: context, version: version, ...card }, String(i)));
3454
+ const renderInvestmentGalleryCard = (className, version) => (card, i) => jsx(InvestmentGalleryCard, { className: className, version: version, ...card }, String(i));
3482
3455
  const renderNavButtons = ({ cardsCount, activeCardIndex, setActiveCardIndex }) => {
3483
3456
  const isUseSlider = cardsCount > CARD_FULL_VIEW_COUNT;
3484
3457
  const showNextButton = isUseSlider && cardsCount - activeCardIndex > CARD_FULL_VIEW_COUNT;
@@ -3497,12 +3470,15 @@
3497
3470
  Accordion,
3498
3471
  AccordionItem,
3499
3472
  BenefitsBlock,
3473
+ BusinessBlock,
3500
3474
  Bonus,
3475
+ BonusBenefitsBlock,
3501
3476
  CardTransfer,
3502
3477
  ComparisonTable,
3503
3478
  Calculator,
3504
3479
  Catalog,
3505
3480
  ContactsBlock,
3481
+ ErrorBlock,
3506
3482
  ExchangeRateTile,
3507
3483
  Footer,
3508
3484
  Gallery,
@@ -3511,10 +3487,12 @@
3511
3487
  Headline,
3512
3488
  InsuranceAmountBlock,
3513
3489
  InvestmentInfo,
3490
+ InvestmentGallery,
3514
3491
  LinkDocs,
3515
3492
  MiniGallery,
3516
3493
  MobileAppTile,
3517
3494
  PictureText,
3495
+ Placeholder,
3518
3496
  ProductBlock,
3519
3497
  ProductGallery,
3520
3498
  ProductTile,
@@ -3524,16 +3502,13 @@
3524
3502
  OtherProducts,
3525
3503
  OtherProductsItem,
3526
3504
  Recommendation,
3505
+ SafeDepositRental,
3527
3506
  StepsBlock,
3507
+ Tabs,
3528
3508
  TariffsTable,
3529
3509
  TextBlock,
3530
3510
  Tile,
3531
- Placeholder,
3532
- BonusBenefitsBlock,
3533
- SafeDepositRental,
3534
- Tabs,
3535
- ErrorBlock,
3536
- InvestmentGallery,
3511
+ VerticalLayout,
3537
3512
  };
3538
3513
 
3539
3514
  function style2className(style) {
@@ -3575,30 +3550,27 @@
3575
3550
  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
3551
  };
3577
3552
 
3578
- const LikeControl = JSX(({ className, context, ...rest }) => {
3579
- const { useRouter, handlerDecorator = defaultHandlerDecorator } = context;
3553
+ const LikeControl = JSX(({ className = '' }) => {
3580
3554
  const router = useRouter();
3581
3555
  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 })] }));
3556
+ 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
3557
  });
3584
3558
 
3585
3559
  const DEFAULT_SLOT_NAME = null;
3586
3560
 
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
- }
3561
+ const renderSlots = ({ slots, parent, options, ancestors = [], }) => Object.entries(slots || {}).reduce((res, [slotName, slotBlocks]) => ({
3562
+ ...res,
3563
+ [slotName]: renderBlocksList({
3564
+ blocks: slotBlocks,
3565
+ parent,
3566
+ slotName,
3567
+ options,
3568
+ ancestors,
3569
+ }),
3570
+ }), {});
3599
3571
 
3600
3572
  function renderBlock({ block = {}, options, ancestors = [] }) {
3601
- const { key, page, blockDecorator, blocksRegistry = {}, context } = options;
3573
+ const { key, page, blockDecorator, blocksRegistry = {} } = options;
3602
3574
  const { type, slots, blocks: childBlocks } = block;
3603
3575
  if (!(type && type in blocksRegistry)) {
3604
3576
  console.warn(`No block with "${type}" is registered`);
@@ -3613,57 +3585,51 @@
3613
3585
  ancestors,
3614
3586
  // Adjusted by decorator block and blockClassName
3615
3587
  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;
3588
+ const { content } = adjustedBlock;
3589
+ return BlockComponent ? (jsx(BlockComponent, { page: page, block: adjustedBlock, className: adjustedBlockClassName, ancestors: ancestors, slots: blockSlots, ...content, children: children }, key)) : null;
3618
3590
  },
3619
3591
  }, key);
3620
3592
  }
3621
3593
 
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
- }
3594
+ const renderBlocksList = ({ blocks, parent, slotName = DEFAULT_SLOT_NAME, options, ancestors = [], }) => (blocks || []).map((_, j) => renderBlock({
3595
+ block: _,
3596
+ options: { ...options, key: `${options.key ? options.key : _.type}-${j}` },
3597
+ ancestors: [...ancestors, [parent, slotName]],
3598
+ }));
3634
3599
 
3635
3600
  const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
3636
3601
  const ContentPage = JSX((props) => {
3637
- const { className = '', blocksRegistry, blockDecorator, context, data = {} } = props;
3602
+ const { className = '', blocksRegistry, blockDecorator, data = {} } = props;
3638
3603
  const { style: pageStyle, blocks, slots, likeControl, colorPalette = 'pc' } = data;
3639
3604
  const options = {
3640
3605
  key: '',
3641
3606
  blocksRegistry,
3642
3607
  page: data,
3643
3608
  blockDecorator: blockDecorator || defaultBlockDecorator,
3644
- context,
3645
3609
  };
3646
3610
  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] }));
3611
+ 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
3612
  });
3649
3613
  ContentPage.childrenTypes = [];
3650
3614
  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") }));
3615
+ function renderLikeControl() {
3616
+ 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
3617
  }
3654
3618
 
3655
- const packageVersion = "0.6.26";
3619
+ const packageVersion = "0.6.28";
3656
3620
 
3657
3621
  exports.Blocks = Blocks;
3658
3622
  exports.ContentPage = ContentPage;
3659
3623
  exports.DaDataAPI = DaDataAPI;
3660
3624
  exports.LikeAPI = LikeAPI;
3625
+ exports.handlerDecorator = handlerDecorator;
3661
3626
  exports.joinList = joinList;
3662
3627
  exports.packageVersion = packageVersion;
3663
3628
  exports.projectSettings = projectSettings;
3664
3629
  exports.setup = setup;
3665
3630
  exports.setupHooks = setupHooks;
3666
3631
  exports.url = url;
3632
+ exports.useRouter = useRouter;
3667
3633
 
3668
3634
  Object.defineProperty(exports, '__esModule', { value: true });
3669
3635