@redneckz/wildless-cms-uni-blocks 0.5.13 → 0.5.15

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