@redneckz/wildless-cms-uni-blocks 0.13.24 → 0.14.1

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 (2156) hide show
  1. package/bin/migration-scripts/0.13.22.js +28 -0
  2. package/bin/migration-scripts/0.14.0.js +26 -0
  3. package/bundle/EventBus/defaultEventBus.d.ts +3 -1
  4. package/bundle/blocks.schema.json +1 -1
  5. package/bundle/bundle.umd.js +770 -737
  6. package/bundle/bundle.umd.min.js +1 -1
  7. package/bundle/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  8. package/bundle/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  9. package/bundle/components/ApplicationForm/CreditFormState.d.ts +1 -1
  10. package/bundle/components/ApplicationForm/WedFormState.d.ts +5 -4
  11. package/bundle/components/ApplicationForm/renderAcquiringDataOrganization.mobile.d.ts +4 -0
  12. package/bundle/components/ApplicationForm/renderCreditDataOrganization.mobile.d.ts +4 -0
  13. package/bundle/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  14. package/bundle/components/ApplicationForm/renderWedTextarea.d.ts +4 -0
  15. package/bundle/components/Bonus/BonusContent.d.ts +2 -0
  16. package/bundle/components/ComparisonTable/constants.d.ts +4 -4
  17. package/bundle/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  18. package/bundle/components/DepositFiltration/getPeriod.d.ts +9 -0
  19. package/bundle/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  20. package/bundle/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  21. package/bundle/components/MobileAppTile/renderList.d.ts +2 -1
  22. package/bundle/components/OfficesAtmsMap/Badge.d.ts +11 -0
  23. package/bundle/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  24. package/bundle/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  25. package/bundle/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  26. package/bundle/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  27. package/bundle/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  28. package/bundle/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  29. package/bundle/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  30. package/bundle/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  31. package/bundle/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  32. package/bundle/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  33. package/bundle/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  34. package/bundle/components/TariffsTable/EmbeddableCellData.d.ts +4 -4
  35. package/bundle/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  36. package/bundle/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  37. package/bundle/components/TariffsTable/constants.d.ts +2 -2
  38. package/bundle/components/TariffsTable/headlineAlign.d.ts +1 -0
  39. package/bundle/components/TariffsTable/headlineAlign.mobile.d.ts +1 -0
  40. package/bundle/model/AlignStyles.d.ts +1 -0
  41. package/bundle/model/AlignStyles.mobile.d.ts +1 -0
  42. package/bundle/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  43. package/bundle/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  44. package/bundle/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  45. package/bundle/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  46. package/bundle/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  47. package/bundle/ui-kit/InnerTable/InnerTableBodyItem.mobile.d.ts +5 -0
  48. package/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  49. package/bundle/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  50. package/bundle/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  51. package/bundle/ui-kit/InnerTable/linkButtonVersion.mobile.d.ts +1 -0
  52. package/bundle/ui-kit/InnerTable/renderInnerTableRow.d.ts +3 -0
  53. package/bundle/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  54. package/bundle/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  55. package/bundle/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  56. package/bundle/ui-kit/Select/Option.d.ts +4 -0
  57. package/bundle/ui-kit/Select/Select.d.ts +2 -5
  58. package/bundle/ui-kit/Select/SelectPopup.d.ts +11 -0
  59. package/bundle/ui-kit/Select/filterOptions.d.ts +2 -0
  60. package/bundle/ui-kit/Select/formatOption.d.ts +2 -0
  61. package/bundle/ui-kit/Select/useSelectPopup.d.ts +9 -0
  62. package/bundle/ui-kit/Text/TextProps.d.ts +1 -1
  63. package/bundle/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  64. package/bundle/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  65. package/bundle/utils/fetchMultitudeJSON.d.ts +1 -0
  66. package/cosmos-static/icons/CloseIcon.svg +1 -1
  67. package/dist/EventBus/defaultEventBus.d.ts +3 -1
  68. package/dist/EventBus/defaultEventBus.js.map +1 -1
  69. package/dist/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  70. package/dist/components/ApplicationForm/ApplicationForm.js +1 -6
  71. package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  72. package/dist/components/ApplicationForm/ApplicationFormAcquiring.js +2 -2
  73. package/dist/components/ApplicationForm/ApplicationFormAcquiring.js.map +1 -1
  74. package/dist/components/ApplicationForm/ApplicationFormBusinessCard.js +1 -1
  75. package/dist/components/ApplicationForm/ApplicationFormBusinessCard.js.map +1 -1
  76. package/dist/components/ApplicationForm/ApplicationFormCredit.js +2 -2
  77. package/dist/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  78. package/dist/components/ApplicationForm/ApplicationFormDeposit.js +2 -2
  79. package/dist/components/ApplicationForm/ApplicationFormDeposit.js.map +1 -1
  80. package/dist/components/ApplicationForm/ApplicationFormGrantSupport.js +1 -1
  81. package/dist/components/ApplicationForm/ApplicationFormGrantSupport.js.map +1 -1
  82. package/dist/components/ApplicationForm/ApplicationFormWed.js +35 -16
  83. package/dist/components/ApplicationForm/ApplicationFormWed.js.map +1 -1
  84. package/dist/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  85. package/dist/components/ApplicationForm/CreditFormState.d.ts +1 -1
  86. package/dist/components/ApplicationForm/WedFormState.d.ts +5 -4
  87. package/dist/components/ApplicationForm/renderAcquiringDataOrganization.js +1 -1
  88. package/dist/components/ApplicationForm/renderAcquiringDataOrganization.js.map +1 -1
  89. package/dist/components/ApplicationForm/renderAcquiringDataOrganization.mobile.d.ts +4 -0
  90. package/dist/components/ApplicationForm/renderAcquiringDataOrganization.mobile.js +10 -0
  91. package/dist/components/ApplicationForm/renderAcquiringDataOrganization.mobile.js.map +1 -0
  92. package/dist/components/ApplicationForm/renderAcquiringRegion.js +1 -1
  93. package/dist/components/ApplicationForm/renderAcquiringRegion.js.map +1 -1
  94. package/dist/components/ApplicationForm/renderBusinessCardDataOrganization.js +1 -1
  95. package/dist/components/ApplicationForm/renderBusinessCardDataOrganization.js.map +1 -1
  96. package/dist/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  97. package/dist/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  98. package/dist/components/ApplicationForm/renderCreditDataOrganization.mobile.d.ts +4 -0
  99. package/dist/components/ApplicationForm/renderCreditDataOrganization.mobile.js +10 -0
  100. package/dist/components/ApplicationForm/renderCreditDataOrganization.mobile.js.map +1 -0
  101. package/dist/components/ApplicationForm/renderCreditParameters.js +1 -1
  102. package/dist/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  103. package/dist/components/ApplicationForm/renderQuestionsInterested.js +3 -3
  104. package/dist/components/ApplicationForm/renderQuestionsInterested.js.map +1 -1
  105. package/dist/components/ApplicationForm/renderRegion.js.map +1 -1
  106. package/dist/components/ApplicationForm/renderRegionDepartment.js +1 -1
  107. package/dist/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  108. package/dist/components/ApplicationForm/renderSubmitButton.js +1 -1
  109. package/dist/components/ApplicationForm/renderSubmitButton.js.map +1 -1
  110. package/dist/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  111. package/dist/components/ApplicationForm/renderWedDataOrganization.js +5 -1
  112. package/dist/components/ApplicationForm/renderWedDataOrganization.js.map +1 -1
  113. package/dist/components/ApplicationForm/renderWedTextarea.d.ts +4 -0
  114. package/dist/components/ApplicationForm/renderWedTextarea.js +12 -0
  115. package/dist/components/ApplicationForm/renderWedTextarea.js.map +1 -0
  116. package/dist/components/Blocks.js +2 -6
  117. package/dist/components/Blocks.js.map +1 -1
  118. package/dist/components/Bonus/Bonus.js +4 -3
  119. package/dist/components/Bonus/Bonus.js.map +1 -1
  120. package/dist/components/Bonus/BonusContent.d.ts +2 -0
  121. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  122. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  123. package/dist/components/BonusBenefitsBlock/renderBonusBenefit.js +2 -2
  124. package/dist/components/BonusBenefitsBlock/renderBonusBenefit.js.map +1 -1
  125. package/dist/components/Calculator/BonusCalculatorForm.js +1 -1
  126. package/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  127. package/dist/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  128. package/dist/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  129. package/dist/components/Calculator/CreditCalculatorForm.js +1 -1
  130. package/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  131. package/dist/components/Calculator/DepositCalculatorForm.js +1 -1
  132. package/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  133. package/dist/components/Calculator/RefinancingCalculatorForm.js +1 -1
  134. package/dist/components/Calculator/RefinancingCalculatorForm.js.map +1 -1
  135. package/dist/components/CardTransfer/CardTransfer.js +1 -1
  136. package/dist/components/Carousel/Carousel.js +1 -0
  137. package/dist/components/Carousel/Carousel.js.map +1 -1
  138. package/dist/components/CarouselCard/CarouselCard.js +2 -2
  139. package/dist/components/CarouselCard/CarouselCard.js.map +1 -1
  140. package/dist/components/CarouselCatalogCard/CarouselCatalogCard.js +2 -1
  141. package/dist/components/CarouselCatalogCard/CarouselCatalogCard.js.map +1 -1
  142. package/dist/components/CarouselLinks/CarouselLinkButton.js +5 -5
  143. package/dist/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
  144. package/dist/components/CarouselLinks/CarouselLinks.js +4 -4
  145. package/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
  146. package/dist/components/CarouselProductCard/CarouselProductCard.js +2 -2
  147. package/dist/components/CarouselProductCard/CarouselProductCard.js.map +1 -1
  148. package/dist/components/CarouselProgramsCard/CarouselProgramsCard.js +1 -1
  149. package/dist/components/CarouselProgramsCard/CarouselProgramsCard.js.map +1 -1
  150. package/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.js +2 -2
  151. package/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.js.map +1 -1
  152. package/dist/components/ComparisonTable/ComparisonTable.js +1 -1
  153. package/dist/components/ComparisonTable/ComparisonTable.js.map +1 -1
  154. package/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -1
  155. package/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  156. package/dist/components/ComparisonTable/HeaderCell.js +2 -1
  157. package/dist/components/ComparisonTable/HeaderCell.js.map +1 -1
  158. package/dist/components/ComparisonTable/TableCarouselContainer.js +1 -1
  159. package/dist/components/ComparisonTable/TableCarouselContainer.js.map +1 -1
  160. package/dist/components/ComparisonTable/TableCell.js +4 -3
  161. package/dist/components/ComparisonTable/TableCell.js.map +1 -1
  162. package/dist/components/ComparisonTable/TableCell.mobile.js +4 -6
  163. package/dist/components/ComparisonTable/TableCell.mobile.js.map +1 -1
  164. package/dist/components/ComparisonTable/TableColumn.js +3 -2
  165. package/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  166. package/dist/components/ComparisonTable/TableRow.js +2 -1
  167. package/dist/components/ComparisonTable/TableRow.js.map +1 -1
  168. package/dist/components/ComparisonTable/constants.d.ts +4 -4
  169. package/dist/components/ComparisonTable/constants.js +5 -5
  170. package/dist/components/ComparisonTable/constants.js.map +1 -1
  171. package/dist/components/ContentPage/ContentPage.js +2 -1
  172. package/dist/components/ContentPage/ContentPage.js.map +1 -1
  173. package/dist/components/DepositFiltration/DepositFiltration.js +16 -13
  174. package/dist/components/DepositFiltration/DepositFiltration.js.map +1 -1
  175. package/dist/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  176. package/dist/components/DepositFiltration/getChildSourceBook.js +6 -0
  177. package/dist/components/DepositFiltration/getChildSourceBook.js.map +1 -0
  178. package/dist/components/DepositFiltration/getPeriod.d.ts +9 -0
  179. package/dist/components/DepositFiltration/getPeriod.js +7 -0
  180. package/dist/components/DepositFiltration/getPeriod.js.map +1 -0
  181. package/dist/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  182. package/dist/components/DepositFiltration/useDepositsPeriods.js +24 -0
  183. package/dist/components/DepositFiltration/useDepositsPeriods.js.map +1 -0
  184. package/dist/components/ErrorBlock/ErrorBlock.js +2 -2
  185. package/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  186. package/dist/components/Footer/Footer.mobile.js +1 -1
  187. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  188. package/dist/components/Footer/HorizontalNavigation.mobile.js +1 -1
  189. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  190. package/dist/components/Footer/MediaButton.js +1 -1
  191. package/dist/components/Footer/MediaButton.js.map +1 -1
  192. package/dist/components/Header/DropdownMenu.js +1 -1
  193. package/dist/components/Header/DropdownMenu.js.map +1 -1
  194. package/dist/components/Header/HeaderChatBotButton.js +1 -1
  195. package/dist/components/Header/HeaderChatBotButton.js.map +1 -1
  196. package/dist/components/MobileAppTile/MobileAppTile.js +2 -3
  197. package/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  198. package/dist/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  199. package/dist/components/MobileAppTile/renderDescription.js +1 -1
  200. package/dist/components/MobileAppTile/renderDescription.js.map +1 -1
  201. package/dist/components/MobileAppTile/renderList.d.ts +2 -1
  202. package/dist/components/MobileAppTile/renderList.js +2 -2
  203. package/dist/components/MobileAppTile/renderList.js.map +1 -1
  204. package/dist/components/MortgageFiltration/MortgageFiltration.js +3 -1
  205. package/dist/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  206. package/dist/components/OfficesAtmsMap/Badge.d.ts +11 -0
  207. package/dist/components/OfficesAtmsMap/Badge.js +14 -0
  208. package/dist/components/OfficesAtmsMap/Badge.js.map +1 -0
  209. package/dist/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  210. package/dist/components/OfficesAtmsMap/CardCell.js +14 -0
  211. package/dist/components/OfficesAtmsMap/CardCell.js.map +1 -0
  212. package/dist/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  213. package/dist/components/OfficesAtmsMap/CardRow.js +7 -0
  214. package/dist/components/OfficesAtmsMap/CardRow.js.map +1 -0
  215. package/dist/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  216. package/dist/components/OfficesAtmsMap/OfficesAtmsMap.js +74 -0
  217. package/dist/components/OfficesAtmsMap/OfficesAtmsMap.js.map +1 -0
  218. package/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  219. package/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.js +2 -0
  220. package/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.js.map +1 -0
  221. package/dist/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  222. package/dist/components/OfficesAtmsMap/renderAtmCard.js +31 -0
  223. package/dist/components/OfficesAtmsMap/renderAtmCard.js.map +1 -0
  224. package/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  225. package/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.js +2 -0
  226. package/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.js.map +1 -0
  227. package/dist/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  228. package/dist/components/OfficesAtmsMap/renderDay.js +2 -0
  229. package/dist/components/OfficesAtmsMap/renderDay.js.map +1 -0
  230. package/dist/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  231. package/dist/components/OfficesAtmsMap/renderLunchHour.js +10 -0
  232. package/dist/components/OfficesAtmsMap/renderLunchHour.js.map +1 -0
  233. package/dist/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  234. package/dist/components/OfficesAtmsMap/renderOfficeCard.js +50 -0
  235. package/dist/components/OfficesAtmsMap/renderOfficeCard.js.map +1 -0
  236. package/dist/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  237. package/dist/components/OfficesAtmsMap/useOfficesAtmsMap.js +19 -0
  238. package/dist/components/OfficesAtmsMap/useOfficesAtmsMap.js.map +1 -0
  239. package/dist/components/PictureText/renderInsuranceSumMonth.js +2 -2
  240. package/dist/components/PictureText/renderInsuranceSumMonth.js.map +1 -1
  241. package/dist/components/ProductTile/ProductTile.js +1 -1
  242. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  243. package/dist/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  244. package/dist/components/RollupItem/PrimaryFoldButton.js +12 -0
  245. package/dist/components/RollupItem/PrimaryFoldButton.js.map +1 -0
  246. package/dist/components/RollupItem/RollupItem.js +3 -14
  247. package/dist/components/RollupItem/RollupItem.js.map +1 -1
  248. package/dist/components/SafeDepositRental/RegionsAndBranches.js +1 -1
  249. package/dist/components/SafeDepositRental/RegionsAndBranches.js.map +1 -1
  250. package/dist/components/SafeDepositRental/SafeBoxCases.js +1 -1
  251. package/dist/components/SafeDepositRental/SafeBoxCases.js.map +1 -1
  252. package/dist/components/SafeDepositRental/SafeDepositRentalFields.js +1 -1
  253. package/dist/components/SafeDepositRental/SafeDepositRentalFields.js.map +1 -1
  254. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js +1 -1
  255. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  256. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +2 -2
  257. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  258. package/dist/components/SafeDepositRental/WrapperSelect.js.map +1 -1
  259. package/dist/components/StickyBottomMenu/RenderMenuItems.js +1 -1
  260. package/dist/components/StickyBottomMenu/RenderMenuItems.js.map +1 -1
  261. package/dist/components/TariffsTable/EmbeddableCellData.d.ts +4 -4
  262. package/dist/components/TariffsTable/EmbeddableCellData.js +8 -6
  263. package/dist/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  264. package/dist/components/TariffsTable/TariffsTable.js +3 -10
  265. package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  266. package/dist/components/TariffsTable/TariffsTableCell.js +1 -1
  267. package/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  268. package/dist/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  269. package/dist/components/TariffsTable/TariffsTableRenderCell.js +10 -10
  270. package/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  271. package/dist/components/TariffsTable/TariffsTableRow.js +2 -1
  272. package/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  273. package/dist/components/TariffsTable/TariffsTableRowContainer.js +3 -1
  274. package/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  275. package/dist/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  276. package/dist/components/TariffsTable/TariffsTableWrapper.js +14 -0
  277. package/dist/components/TariffsTable/TariffsTableWrapper.js.map +1 -0
  278. package/dist/components/TariffsTable/constants.d.ts +2 -2
  279. package/dist/components/TariffsTable/constants.js +3 -3
  280. package/dist/components/TariffsTable/constants.js.map +1 -1
  281. package/dist/components/TariffsTable/headlineAlign.d.ts +1 -0
  282. package/dist/components/TariffsTable/headlineAlign.js +4 -0
  283. package/dist/components/TariffsTable/headlineAlign.js.map +1 -0
  284. package/dist/components/TariffsTable/headlineAlign.mobile.d.ts +1 -0
  285. package/dist/components/TariffsTable/headlineAlign.mobile.js +4 -0
  286. package/dist/components/TariffsTable/headlineAlign.mobile.js.map +1 -0
  287. package/dist/content-page-repository/transformContentPage.js +5 -6
  288. package/dist/content-page-repository/transformContentPage.js.map +1 -1
  289. package/dist/model/AlignStyles.d.ts +1 -0
  290. package/dist/model/AlignStyles.js +4 -0
  291. package/dist/model/AlignStyles.js.map +1 -0
  292. package/dist/model/AlignStyles.mobile.d.ts +1 -0
  293. package/dist/model/AlignStyles.mobile.js +4 -0
  294. package/dist/model/AlignStyles.mobile.js.map +1 -0
  295. package/dist/services/search/search.js +1 -1
  296. package/dist/services/search/search.js.map +1 -1
  297. package/dist/services/search/textRank.js +1 -1
  298. package/dist/services/search/textRank.js.map +1 -1
  299. package/dist/services/search/useSearch.js +1 -1
  300. package/dist/services/search/useSearch.js.map +1 -1
  301. package/dist/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  302. package/dist/ui-kit/BaseFiltration/BaseFiltrationInner.js +1 -3
  303. package/dist/ui-kit/BaseFiltration/BaseFiltrationInner.js.map +1 -1
  304. package/dist/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  305. package/dist/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  306. package/dist/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  307. package/dist/ui-kit/BaseFiltration/getBlocksToRender.js +7 -0
  308. package/dist/ui-kit/BaseFiltration/getBlocksToRender.js.map +1 -0
  309. package/dist/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  310. package/dist/ui-kit/BaseFiltration/shouldRenderBlock.js +33 -0
  311. package/dist/ui-kit/BaseFiltration/shouldRenderBlock.js.map +1 -0
  312. package/dist/ui-kit/BaseProductTile/BaseProductTile.js +3 -2
  313. package/dist/ui-kit/BaseProductTile/BaseProductTile.js.map +1 -1
  314. package/dist/ui-kit/BaseTile/BaseTile.js +5 -5
  315. package/dist/ui-kit/BaseTile/BaseTile.js.map +1 -1
  316. package/dist/ui-kit/BenefitItem/renderBenefitIcon.js +1 -1
  317. package/dist/ui-kit/BenefitItem/renderBenefitIcon.js.map +1 -1
  318. package/dist/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  319. package/dist/ui-kit/BenefitItem/renderBenefitText.js +1 -1
  320. package/dist/ui-kit/BenefitItem/renderBenefitText.js.map +1 -1
  321. package/dist/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  322. package/dist/ui-kit/Button/renderButtonsSection.js +2 -5
  323. package/dist/ui-kit/Button/renderButtonsSection.js.map +1 -1
  324. package/dist/ui-kit/CookiePopup/CookiePopup.js +2 -2
  325. package/dist/ui-kit/CookiePopup/CookiePopup.js.map +1 -1
  326. package/dist/ui-kit/DialogManager/DialogManager.js +7 -11
  327. package/dist/ui-kit/DialogManager/DialogManager.js.map +1 -1
  328. package/dist/ui-kit/DialogManager/useDialogsList.js +1 -1
  329. package/dist/ui-kit/DialogManager/useDialogsList.js.map +1 -1
  330. package/dist/ui-kit/Foldable/DefaultFoldButton.js +7 -8
  331. package/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  332. package/dist/ui-kit/InnerTable/InnerTable.js +1 -1
  333. package/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  334. package/dist/ui-kit/InnerTable/InnerTableBody.js +1 -5
  335. package/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  336. package/dist/ui-kit/InnerTable/InnerTableBodyItem.js +2 -18
  337. package/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  338. package/dist/ui-kit/InnerTable/InnerTableBodyItem.mobile.d.ts +5 -0
  339. package/dist/ui-kit/InnerTable/InnerTableBodyItem.mobile.js +8 -0
  340. package/dist/ui-kit/InnerTable/InnerTableBodyItem.mobile.js.map +1 -0
  341. package/dist/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  342. package/dist/ui-kit/InnerTable/InnerTableButton.js +2 -4
  343. package/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  344. package/dist/ui-kit/InnerTable/InnerTableHeader.js +2 -1
  345. package/dist/ui-kit/InnerTable/InnerTableHeader.js.map +1 -1
  346. package/dist/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  347. package/dist/ui-kit/InnerTable/getHorizontalShift.js +7 -0
  348. package/dist/ui-kit/InnerTable/getHorizontalShift.js.map +1 -0
  349. package/dist/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  350. package/dist/ui-kit/InnerTable/linkButtonVersion.js +4 -0
  351. package/dist/ui-kit/InnerTable/linkButtonVersion.js.map +1 -0
  352. package/dist/ui-kit/InnerTable/linkButtonVersion.mobile.d.ts +1 -0
  353. package/dist/ui-kit/InnerTable/linkButtonVersion.mobile.js +4 -0
  354. package/dist/ui-kit/InnerTable/linkButtonVersion.mobile.js.map +1 -0
  355. package/dist/ui-kit/InnerTable/renderInnerTableRow.d.ts +3 -0
  356. package/dist/ui-kit/InnerTable/renderInnerTableRow.js +18 -0
  357. package/dist/ui-kit/InnerTable/renderInnerTableRow.js.map +1 -0
  358. package/dist/ui-kit/LocationDialog/LocationDialog.js +2 -2
  359. package/dist/ui-kit/LocationDialog/LocationDialog.js.map +1 -1
  360. package/dist/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  361. package/dist/ui-kit/PopupManager/PopupAction.js +2 -0
  362. package/dist/ui-kit/PopupManager/PopupAction.js.map +1 -0
  363. package/dist/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  364. package/dist/ui-kit/PopupManager/PopupManager.js +39 -0
  365. package/dist/ui-kit/PopupManager/PopupManager.js.map +1 -0
  366. package/dist/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  367. package/dist/ui-kit/PopupManager/usePopupManager.js +10 -0
  368. package/dist/ui-kit/PopupManager/usePopupManager.js.map +1 -0
  369. package/dist/ui-kit/Select/Option.d.ts +4 -0
  370. package/dist/ui-kit/Select/Option.js +2 -0
  371. package/dist/ui-kit/Select/Option.js.map +1 -0
  372. package/dist/ui-kit/Select/Select.d.ts +2 -5
  373. package/dist/ui-kit/Select/Select.js +18 -25
  374. package/dist/ui-kit/Select/Select.js.map +1 -1
  375. package/dist/ui-kit/Select/SelectPopup.d.ts +11 -0
  376. package/dist/ui-kit/Select/SelectPopup.js +10 -0
  377. package/dist/ui-kit/Select/SelectPopup.js.map +1 -0
  378. package/dist/ui-kit/Select/filterOptions.d.ts +2 -0
  379. package/dist/ui-kit/Select/filterOptions.js +19 -0
  380. package/dist/ui-kit/Select/filterOptions.js.map +1 -0
  381. package/dist/ui-kit/Select/formatOption.d.ts +2 -0
  382. package/dist/ui-kit/Select/formatOption.js +5 -0
  383. package/dist/ui-kit/Select/formatOption.js.map +1 -0
  384. package/dist/ui-kit/Select/useSelectPopup.d.ts +9 -0
  385. package/dist/ui-kit/Select/useSelectPopup.js +35 -0
  386. package/dist/ui-kit/Select/useSelectPopup.js.map +1 -0
  387. package/dist/ui-kit/Text/TextProps.d.ts +1 -1
  388. package/dist/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  389. package/dist/ui-kit/TextWithIcon/TextWithIcon.js +10 -0
  390. package/dist/ui-kit/TextWithIcon/TextWithIcon.js.map +1 -0
  391. package/dist/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  392. package/dist/ui-kit/YandexMap/YandexMap.js +14 -24
  393. package/dist/ui-kit/YandexMap/YandexMap.js.map +1 -1
  394. package/dist/ui-kit/YandexMap/renderClusterer.js +2 -2
  395. package/dist/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  396. package/dist/ui-kit/YandexMap/renderSearchField.js +2 -1
  397. package/dist/ui-kit/YandexMap/renderSearchField.js.map +1 -1
  398. package/dist/utils/fetchJSON.js +1 -1
  399. package/dist/utils/fetchJSON.js.map +1 -1
  400. package/dist/utils/fetchMultitudeJSON.d.ts +1 -0
  401. package/dist/utils/fetchMultitudeJSON.js +9 -0
  402. package/dist/utils/fetchMultitudeJSON.js.map +1 -0
  403. package/dist/utils/jaroWinklerDistance.js.map +1 -0
  404. package/fonts/mohave/Mohave-Regular.ttf +0 -0
  405. package/fonts/mohave/Mohave-Regular.woff2 +0 -0
  406. package/fonts/mohave/mohave.css +2 -1
  407. package/lib/EventBus/defaultEventBus.d.ts +3 -1
  408. package/lib/EventBus/defaultEventBus.js.map +1 -1
  409. package/lib/common.css +1 -1
  410. package/lib/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  411. package/lib/components/ApplicationForm/ApplicationForm.js +1 -6
  412. package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  413. package/lib/components/ApplicationForm/ApplicationFormAcquiring.js +2 -2
  414. package/lib/components/ApplicationForm/ApplicationFormAcquiring.js.map +1 -1
  415. package/lib/components/ApplicationForm/ApplicationFormBusinessCard.js +1 -1
  416. package/lib/components/ApplicationForm/ApplicationFormBusinessCard.js.map +1 -1
  417. package/lib/components/ApplicationForm/ApplicationFormCredit.js +2 -2
  418. package/lib/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  419. package/lib/components/ApplicationForm/ApplicationFormDeposit.js +2 -2
  420. package/lib/components/ApplicationForm/ApplicationFormDeposit.js.map +1 -1
  421. package/lib/components/ApplicationForm/ApplicationFormGrantSupport.js +1 -1
  422. package/lib/components/ApplicationForm/ApplicationFormGrantSupport.js.map +1 -1
  423. package/lib/components/ApplicationForm/ApplicationFormWed.js +36 -17
  424. package/lib/components/ApplicationForm/ApplicationFormWed.js.map +1 -1
  425. package/lib/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  426. package/lib/components/ApplicationForm/CreditFormState.d.ts +1 -1
  427. package/lib/components/ApplicationForm/WedFormState.d.ts +5 -4
  428. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.d.ts +1 -0
  429. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.js +1 -1
  430. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.js.map +1 -1
  431. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.mobile.d.ts +3 -0
  432. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.mobile.js +7 -0
  433. package/lib/components/ApplicationForm/renderAcquiringDataOrganization.mobile.js.map +1 -0
  434. package/lib/components/ApplicationForm/renderAcquiringRegion.js +1 -1
  435. package/lib/components/ApplicationForm/renderAcquiringRegion.js.map +1 -1
  436. package/lib/components/ApplicationForm/renderBusinessCardDataOrganization.js +1 -1
  437. package/lib/components/ApplicationForm/renderBusinessCardDataOrganization.js.map +1 -1
  438. package/lib/components/ApplicationForm/renderCreditDataOrganization.d.ts +1 -0
  439. package/lib/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  440. package/lib/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  441. package/lib/components/ApplicationForm/renderCreditDataOrganization.mobile.d.ts +3 -0
  442. package/lib/components/ApplicationForm/renderCreditDataOrganization.mobile.js +7 -0
  443. package/lib/components/ApplicationForm/renderCreditDataOrganization.mobile.js.map +1 -0
  444. package/lib/components/ApplicationForm/renderCreditParameters.js +1 -1
  445. package/lib/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  446. package/lib/components/ApplicationForm/renderQuestionsInterested.js +3 -3
  447. package/lib/components/ApplicationForm/renderQuestionsInterested.js.map +1 -1
  448. package/lib/components/ApplicationForm/renderRegion.js.map +1 -1
  449. package/lib/components/ApplicationForm/renderRegionDepartment.js +1 -1
  450. package/lib/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  451. package/lib/components/ApplicationForm/renderSubmitButton.js +1 -1
  452. package/lib/components/ApplicationForm/renderSubmitButton.js.map +1 -1
  453. package/lib/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  454. package/lib/components/ApplicationForm/renderWedDataOrganization.js +6 -2
  455. package/lib/components/ApplicationForm/renderWedDataOrganization.js.map +1 -1
  456. package/lib/components/ApplicationForm/renderWedTextarea.d.ts +3 -0
  457. package/lib/components/ApplicationForm/renderWedTextarea.js +9 -0
  458. package/lib/components/ApplicationForm/renderWedTextarea.js.map +1 -0
  459. package/lib/components/Blocks.js +2 -6
  460. package/lib/components/Blocks.js.map +1 -1
  461. package/lib/components/Bonus/Bonus.js +4 -3
  462. package/lib/components/Bonus/Bonus.js.map +1 -1
  463. package/lib/components/Bonus/BonusContent.d.ts +2 -0
  464. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  465. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  466. package/lib/components/BonusBenefitsBlock/renderBonusBenefit.js +2 -2
  467. package/lib/components/BonusBenefitsBlock/renderBonusBenefit.js.map +1 -1
  468. package/lib/components/Calculator/BonusCalculatorForm.js +1 -1
  469. package/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  470. package/lib/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  471. package/lib/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  472. package/lib/components/Calculator/CreditCalculatorForm.js +1 -1
  473. package/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  474. package/lib/components/Calculator/DepositCalculatorForm.js +1 -1
  475. package/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  476. package/lib/components/Calculator/RefinancingCalculatorForm.js +1 -1
  477. package/lib/components/Calculator/RefinancingCalculatorForm.js.map +1 -1
  478. package/lib/components/CardTransfer/CardTransfer.js +1 -1
  479. package/lib/components/Carousel/Carousel.js +1 -0
  480. package/lib/components/Carousel/Carousel.js.map +1 -1
  481. package/lib/components/CarouselCard/CarouselCard.js +2 -2
  482. package/lib/components/CarouselCard/CarouselCard.js.map +1 -1
  483. package/lib/components/CarouselCatalogCard/CarouselCatalogCard.fixture.d.ts +16 -0
  484. package/lib/components/CarouselCatalogCard/CarouselCatalogCard.fixture.mobile.d.ts +16 -0
  485. package/lib/components/CarouselCatalogCard/CarouselCatalogCard.js +2 -1
  486. package/lib/components/CarouselCatalogCard/CarouselCatalogCard.js.map +1 -1
  487. package/lib/components/CarouselLinks/CarouselLinkButton.js +5 -5
  488. package/lib/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
  489. package/lib/components/CarouselLinks/CarouselLinks.js +4 -4
  490. package/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
  491. package/lib/components/CarouselProductCard/CarouselProductCard.js +2 -2
  492. package/lib/components/CarouselProductCard/CarouselProductCard.js.map +1 -1
  493. package/lib/components/CarouselProgramsCard/CarouselProgramsCard.js +1 -1
  494. package/lib/components/CarouselProgramsCard/CarouselProgramsCard.js.map +1 -1
  495. package/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.js +2 -2
  496. package/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.js.map +1 -1
  497. package/lib/components/ComparisonTable/ComparisonTable.js +2 -2
  498. package/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  499. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +2 -2
  500. package/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  501. package/lib/components/ComparisonTable/HeaderCell.js +3 -2
  502. package/lib/components/ComparisonTable/HeaderCell.js.map +1 -1
  503. package/lib/components/ComparisonTable/TableCarouselContainer.js +1 -1
  504. package/lib/components/ComparisonTable/TableCarouselContainer.js.map +1 -1
  505. package/lib/components/ComparisonTable/TableCell.js +5 -4
  506. package/lib/components/ComparisonTable/TableCell.js.map +1 -1
  507. package/lib/components/ComparisonTable/TableCell.mobile.js +5 -7
  508. package/lib/components/ComparisonTable/TableCell.mobile.js.map +1 -1
  509. package/lib/components/ComparisonTable/TableColumn.js +4 -3
  510. package/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  511. package/lib/components/ComparisonTable/TableRow.js +3 -2
  512. package/lib/components/ComparisonTable/TableRow.js.map +1 -1
  513. package/lib/components/ComparisonTable/constants.d.ts +4 -4
  514. package/lib/components/ComparisonTable/constants.js +4 -4
  515. package/lib/components/ComparisonTable/constants.js.map +1 -1
  516. package/lib/components/ContentPage/ContentPage.js +2 -1
  517. package/lib/components/ContentPage/ContentPage.js.map +1 -1
  518. package/lib/components/DepositFiltration/DepositFiltration.js +16 -13
  519. package/lib/components/DepositFiltration/DepositFiltration.js.map +1 -1
  520. package/lib/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  521. package/lib/components/DepositFiltration/getChildSourceBook.js +3 -0
  522. package/lib/components/DepositFiltration/getChildSourceBook.js.map +1 -0
  523. package/lib/components/DepositFiltration/getPeriod.d.ts +9 -0
  524. package/lib/components/DepositFiltration/getPeriod.js +4 -0
  525. package/lib/components/DepositFiltration/getPeriod.js.map +1 -0
  526. package/lib/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  527. package/lib/components/DepositFiltration/useDepositsPeriods.js +21 -0
  528. package/lib/components/DepositFiltration/useDepositsPeriods.js.map +1 -0
  529. package/lib/components/ErrorBlock/ErrorBlock.js +2 -2
  530. package/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  531. package/lib/components/Footer/Footer.mobile.js +1 -1
  532. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  533. package/lib/components/Footer/HorizontalNavigation.mobile.js +1 -1
  534. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  535. package/lib/components/Footer/MediaButton.js +1 -1
  536. package/lib/components/Footer/MediaButton.js.map +1 -1
  537. package/lib/components/Header/DropdownMenu.js +1 -1
  538. package/lib/components/Header/DropdownMenu.js.map +1 -1
  539. package/lib/components/Header/HeaderChatBotButton.js +1 -1
  540. package/lib/components/Header/HeaderChatBotButton.js.map +1 -1
  541. package/lib/components/MobileAppTile/MobileAppTile.js +2 -3
  542. package/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  543. package/lib/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  544. package/lib/components/MobileAppTile/renderDescription.js +1 -1
  545. package/lib/components/MobileAppTile/renderDescription.js.map +1 -1
  546. package/lib/components/MobileAppTile/renderList.d.ts +2 -1
  547. package/lib/components/MobileAppTile/renderList.js +2 -2
  548. package/lib/components/MobileAppTile/renderList.js.map +1 -1
  549. package/lib/components/MortgageFiltration/MortgageFiltration.js +3 -1
  550. package/lib/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  551. package/lib/components/OfficesAtmsMap/Badge.d.ts +11 -0
  552. package/lib/components/OfficesAtmsMap/Badge.js +12 -0
  553. package/lib/components/OfficesAtmsMap/Badge.js.map +1 -0
  554. package/lib/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  555. package/lib/components/OfficesAtmsMap/CardCell.js +12 -0
  556. package/lib/components/OfficesAtmsMap/CardCell.js.map +1 -0
  557. package/lib/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  558. package/lib/components/OfficesAtmsMap/CardRow.js +5 -0
  559. package/lib/components/OfficesAtmsMap/CardRow.js.map +1 -0
  560. package/lib/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  561. package/lib/components/OfficesAtmsMap/OfficesAtmsMap.fixture.d.ts +6 -0
  562. package/lib/components/OfficesAtmsMap/OfficesAtmsMap.js +72 -0
  563. package/lib/components/OfficesAtmsMap/OfficesAtmsMap.js.map +1 -0
  564. package/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  565. package/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.js +2 -0
  566. package/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.js.map +1 -0
  567. package/lib/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  568. package/lib/components/OfficesAtmsMap/renderAtmCard.js +28 -0
  569. package/lib/components/OfficesAtmsMap/renderAtmCard.js.map +1 -0
  570. package/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  571. package/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.js +2 -0
  572. package/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.js.map +1 -0
  573. package/lib/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  574. package/lib/components/OfficesAtmsMap/renderDay.js +2 -0
  575. package/lib/components/OfficesAtmsMap/renderDay.js.map +1 -0
  576. package/lib/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  577. package/lib/components/OfficesAtmsMap/renderLunchHour.js +7 -0
  578. package/lib/components/OfficesAtmsMap/renderLunchHour.js.map +1 -0
  579. package/lib/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  580. package/lib/components/OfficesAtmsMap/renderOfficeCard.js +44 -0
  581. package/lib/components/OfficesAtmsMap/renderOfficeCard.js.map +1 -0
  582. package/lib/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  583. package/lib/components/OfficesAtmsMap/useOfficesAtmsMap.js +16 -0
  584. package/lib/components/OfficesAtmsMap/useOfficesAtmsMap.js.map +1 -0
  585. package/lib/components/PictureText/renderInsuranceSumMonth.js +2 -2
  586. package/lib/components/PictureText/renderInsuranceSumMonth.js.map +1 -1
  587. package/lib/components/ProductTile/ProductTile.js +1 -1
  588. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  589. package/lib/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  590. package/lib/components/RollupItem/PrimaryFoldButton.js +10 -0
  591. package/lib/components/RollupItem/PrimaryFoldButton.js.map +1 -0
  592. package/lib/components/RollupItem/RollupItem.js +4 -15
  593. package/lib/components/RollupItem/RollupItem.js.map +1 -1
  594. package/lib/components/SafeDepositRental/RegionsAndBranches.js +1 -1
  595. package/lib/components/SafeDepositRental/RegionsAndBranches.js.map +1 -1
  596. package/lib/components/SafeDepositRental/SafeBoxCases.js +1 -1
  597. package/lib/components/SafeDepositRental/SafeBoxCases.js.map +1 -1
  598. package/lib/components/SafeDepositRental/SafeDepositRentalFields.js +1 -1
  599. package/lib/components/SafeDepositRental/SafeDepositRentalFields.js.map +1 -1
  600. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js +1 -1
  601. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  602. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +2 -2
  603. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  604. package/lib/components/SafeDepositRental/WrapperSelect.js.map +1 -1
  605. package/lib/components/StickyBottomMenu/RenderMenuItems.js +1 -1
  606. package/lib/components/StickyBottomMenu/RenderMenuItems.js.map +1 -1
  607. package/lib/components/TariffsTable/EmbeddableCellData.d.ts +4 -5
  608. package/lib/components/TariffsTable/EmbeddableCellData.js +8 -6
  609. package/lib/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  610. package/lib/components/TariffsTable/TariffsTable.fixture.d.ts +1 -2
  611. package/lib/components/TariffsTable/TariffsTable.fixture.mobile.d.ts +1 -1
  612. package/lib/components/TariffsTable/TariffsTable.js +3 -10
  613. package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  614. package/lib/components/TariffsTable/TariffsTableCell.js +1 -1
  615. package/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  616. package/lib/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  617. package/lib/components/TariffsTable/TariffsTableRenderCell.d.ts +0 -1
  618. package/lib/components/TariffsTable/TariffsTableRenderCell.js +11 -11
  619. package/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  620. package/lib/components/TariffsTable/TariffsTableRow.js +3 -2
  621. package/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  622. package/lib/components/TariffsTable/TariffsTableRowContainer.js +3 -1
  623. package/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  624. package/lib/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  625. package/lib/components/TariffsTable/TariffsTableWrapper.js +12 -0
  626. package/lib/components/TariffsTable/TariffsTableWrapper.js.map +1 -0
  627. package/lib/components/TariffsTable/constants.d.ts +2 -2
  628. package/lib/components/TariffsTable/constants.js +2 -2
  629. package/lib/components/TariffsTable/constants.js.map +1 -1
  630. package/lib/components/TariffsTable/headlineAlign.d.ts +1 -0
  631. package/lib/components/TariffsTable/headlineAlign.js +2 -0
  632. package/lib/components/TariffsTable/headlineAlign.js.map +1 -0
  633. package/lib/components/TariffsTable/headlineAlign.mobile.d.ts +1 -0
  634. package/lib/components/TariffsTable/headlineAlign.mobile.js +2 -0
  635. package/lib/components/TariffsTable/headlineAlign.mobile.js.map +1 -0
  636. package/lib/content-page-repository/transformContentPage.js +5 -6
  637. package/lib/content-page-repository/transformContentPage.js.map +1 -1
  638. package/lib/model/AlignStyles.d.ts +1 -0
  639. package/lib/model/AlignStyles.js +2 -0
  640. package/lib/model/AlignStyles.js.map +1 -0
  641. package/lib/model/AlignStyles.mobile.d.ts +1 -0
  642. package/lib/model/AlignStyles.mobile.js +2 -0
  643. package/lib/model/AlignStyles.mobile.js.map +1 -0
  644. package/lib/services/search/search.js +1 -1
  645. package/lib/services/search/search.js.map +1 -1
  646. package/lib/services/search/textRank.js +1 -1
  647. package/lib/services/search/textRank.js.map +1 -1
  648. package/lib/services/search/useSearch.js +1 -1
  649. package/lib/services/search/useSearch.js.map +1 -1
  650. package/lib/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  651. package/lib/ui-kit/BaseFiltration/BaseFiltrationInner.js +1 -3
  652. package/lib/ui-kit/BaseFiltration/BaseFiltrationInner.js.map +1 -1
  653. package/lib/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  654. package/lib/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  655. package/lib/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  656. package/lib/ui-kit/BaseFiltration/getBlocksToRender.js +4 -0
  657. package/lib/ui-kit/BaseFiltration/getBlocksToRender.js.map +1 -0
  658. package/lib/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  659. package/lib/ui-kit/BaseFiltration/shouldRenderBlock.js +30 -0
  660. package/lib/ui-kit/BaseFiltration/shouldRenderBlock.js.map +1 -0
  661. package/lib/ui-kit/BaseProductTile/BaseProductTile.js +3 -2
  662. package/lib/ui-kit/BaseProductTile/BaseProductTile.js.map +1 -1
  663. package/lib/ui-kit/BaseTile/BaseTile.js +5 -5
  664. package/lib/ui-kit/BaseTile/BaseTile.js.map +1 -1
  665. package/lib/ui-kit/BenefitItem/renderBenefitIcon.js +1 -1
  666. package/lib/ui-kit/BenefitItem/renderBenefitIcon.js.map +1 -1
  667. package/lib/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  668. package/lib/ui-kit/BenefitItem/renderBenefitText.js +1 -1
  669. package/lib/ui-kit/BenefitItem/renderBenefitText.js.map +1 -1
  670. package/lib/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  671. package/lib/ui-kit/Button/renderButtonsSection.js +2 -5
  672. package/lib/ui-kit/Button/renderButtonsSection.js.map +1 -1
  673. package/lib/ui-kit/CookiePopup/CookiePopup.js +2 -2
  674. package/lib/ui-kit/CookiePopup/CookiePopup.js.map +1 -1
  675. package/lib/ui-kit/DialogManager/DialogManager.js +7 -11
  676. package/lib/ui-kit/DialogManager/DialogManager.js.map +1 -1
  677. package/lib/ui-kit/DialogManager/useDialogsList.js +1 -1
  678. package/lib/ui-kit/DialogManager/useDialogsList.js.map +1 -1
  679. package/lib/ui-kit/Foldable/DefaultFoldButton.js +8 -9
  680. package/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  681. package/lib/ui-kit/InnerTable/InnerTable.js +1 -1
  682. package/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  683. package/lib/ui-kit/InnerTable/InnerTableBody.js +1 -5
  684. package/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  685. package/lib/ui-kit/InnerTable/InnerTableBodyItem.js +3 -19
  686. package/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  687. package/lib/ui-kit/InnerTable/InnerTableBodyItem.mobile.d.ts +5 -0
  688. package/lib/ui-kit/InnerTable/InnerTableBodyItem.mobile.js +6 -0
  689. package/lib/ui-kit/InnerTable/InnerTableBodyItem.mobile.js.map +1 -0
  690. package/lib/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  691. package/lib/ui-kit/InnerTable/InnerTableButton.js +3 -5
  692. package/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  693. package/lib/ui-kit/InnerTable/InnerTableHeader.js +2 -1
  694. package/lib/ui-kit/InnerTable/InnerTableHeader.js.map +1 -1
  695. package/lib/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  696. package/lib/ui-kit/InnerTable/getHorizontalShift.js +4 -0
  697. package/lib/ui-kit/InnerTable/getHorizontalShift.js.map +1 -0
  698. package/lib/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  699. package/lib/ui-kit/InnerTable/linkButtonVersion.js +2 -0
  700. package/lib/ui-kit/InnerTable/linkButtonVersion.js.map +1 -0
  701. package/lib/ui-kit/InnerTable/linkButtonVersion.mobile.d.ts +1 -0
  702. package/lib/ui-kit/InnerTable/linkButtonVersion.mobile.js +2 -0
  703. package/lib/ui-kit/InnerTable/linkButtonVersion.mobile.js.map +1 -0
  704. package/lib/ui-kit/InnerTable/renderInnerTableRow.d.ts +2 -0
  705. package/lib/ui-kit/InnerTable/renderInnerTableRow.js +15 -0
  706. package/lib/ui-kit/InnerTable/renderInnerTableRow.js.map +1 -0
  707. package/lib/ui-kit/LocationDialog/LocationDialog.js +2 -2
  708. package/lib/ui-kit/LocationDialog/LocationDialog.js.map +1 -1
  709. package/lib/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  710. package/lib/ui-kit/PopupManager/PopupAction.js +2 -0
  711. package/lib/ui-kit/PopupManager/PopupAction.js.map +1 -0
  712. package/lib/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  713. package/lib/ui-kit/PopupManager/PopupManager.js +37 -0
  714. package/lib/ui-kit/PopupManager/PopupManager.js.map +1 -0
  715. package/lib/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  716. package/lib/ui-kit/PopupManager/usePopupManager.js +7 -0
  717. package/lib/ui-kit/PopupManager/usePopupManager.js.map +1 -0
  718. package/lib/ui-kit/Select/Option.d.ts +4 -0
  719. package/lib/ui-kit/Select/Option.js +2 -0
  720. package/lib/ui-kit/Select/Option.js.map +1 -0
  721. package/lib/ui-kit/Select/Select.d.ts +2 -5
  722. package/lib/ui-kit/Select/Select.fixture.d.ts +1 -0
  723. package/lib/ui-kit/Select/Select.js +18 -25
  724. package/lib/ui-kit/Select/Select.js.map +1 -1
  725. package/lib/ui-kit/Select/SelectPopup.d.ts +11 -0
  726. package/lib/ui-kit/Select/SelectPopup.js +8 -0
  727. package/lib/ui-kit/Select/SelectPopup.js.map +1 -0
  728. package/lib/ui-kit/Select/filterOptions.d.ts +2 -0
  729. package/lib/ui-kit/Select/filterOptions.js +16 -0
  730. package/lib/ui-kit/Select/filterOptions.js.map +1 -0
  731. package/lib/ui-kit/Select/formatOption.d.ts +2 -0
  732. package/lib/ui-kit/Select/formatOption.js +2 -0
  733. package/lib/ui-kit/Select/formatOption.js.map +1 -0
  734. package/lib/ui-kit/Select/useSelectPopup.d.ts +9 -0
  735. package/lib/ui-kit/Select/useSelectPopup.js +32 -0
  736. package/lib/ui-kit/Select/useSelectPopup.js.map +1 -0
  737. package/lib/ui-kit/Text/TextProps.d.ts +1 -1
  738. package/lib/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  739. package/lib/ui-kit/TextWithIcon/TextWithIcon.js +8 -0
  740. package/lib/ui-kit/TextWithIcon/TextWithIcon.js.map +1 -0
  741. package/lib/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  742. package/lib/ui-kit/YandexMap/YandexMap.js +14 -24
  743. package/lib/ui-kit/YandexMap/YandexMap.js.map +1 -1
  744. package/lib/ui-kit/YandexMap/renderClusterer.js +2 -2
  745. package/lib/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  746. package/lib/ui-kit/YandexMap/renderSearchField.d.ts +1 -0
  747. package/lib/ui-kit/YandexMap/renderSearchField.js +2 -1
  748. package/lib/ui-kit/YandexMap/renderSearchField.js.map +1 -1
  749. package/lib/utils/fetchJSON.js +1 -1
  750. package/lib/utils/fetchJSON.js.map +1 -1
  751. package/lib/utils/fetchMultitudeJSON.d.ts +1 -0
  752. package/lib/utils/fetchMultitudeJSON.js +6 -0
  753. package/lib/utils/fetchMultitudeJSON.js.map +1 -0
  754. package/lib/utils/jaroWinklerDistance.js.map +1 -0
  755. package/mobile/bundle/EventBus/defaultEventBus.d.ts +3 -1
  756. package/mobile/bundle/bundle.umd.js +714 -526
  757. package/mobile/bundle/bundle.umd.min.js +1 -1
  758. package/mobile/bundle/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  759. package/mobile/bundle/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  760. package/mobile/bundle/components/ApplicationForm/CreditFormState.d.ts +1 -1
  761. package/mobile/bundle/components/ApplicationForm/WedFormState.d.ts +5 -4
  762. package/mobile/bundle/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  763. package/mobile/bundle/components/ApplicationForm/renderWedTextarea.d.ts +4 -0
  764. package/mobile/bundle/components/Bonus/BonusContent.d.ts +2 -0
  765. package/mobile/bundle/components/ComparisonTable/constants.d.ts +4 -4
  766. package/mobile/bundle/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  767. package/mobile/bundle/components/DepositFiltration/getPeriod.d.ts +9 -0
  768. package/mobile/bundle/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  769. package/mobile/bundle/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  770. package/mobile/bundle/components/MobileAppTile/renderList.d.ts +2 -1
  771. package/mobile/bundle/components/OfficesAtmsMap/Badge.d.ts +11 -0
  772. package/mobile/bundle/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  773. package/mobile/bundle/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  774. package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  775. package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  776. package/mobile/bundle/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  777. package/mobile/bundle/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  778. package/mobile/bundle/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  779. package/mobile/bundle/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  780. package/mobile/bundle/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  781. package/mobile/bundle/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  782. package/mobile/bundle/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  783. package/mobile/bundle/components/TariffsTable/EmbeddableCellData.d.ts +9 -1
  784. package/mobile/bundle/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  785. package/mobile/bundle/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  786. package/mobile/bundle/components/TariffsTable/constants.d.ts +2 -2
  787. package/mobile/bundle/components/TariffsTable/headlineAlign.d.ts +1 -0
  788. package/mobile/bundle/model/AlignStyles.d.ts +1 -0
  789. package/mobile/bundle/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  790. package/mobile/bundle/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  791. package/mobile/bundle/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  792. package/mobile/bundle/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  793. package/mobile/bundle/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  794. package/mobile/bundle/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  795. package/mobile/bundle/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  796. package/mobile/bundle/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  797. package/mobile/bundle/ui-kit/InnerTable/renderInnerTableRow.d.ts +3 -0
  798. package/mobile/bundle/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  799. package/mobile/bundle/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  800. package/mobile/bundle/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  801. package/mobile/bundle/ui-kit/Select/Option.d.ts +4 -0
  802. package/mobile/bundle/ui-kit/Select/Select.d.ts +2 -5
  803. package/mobile/bundle/ui-kit/Select/SelectPopup.d.ts +11 -0
  804. package/mobile/bundle/ui-kit/Select/filterOptions.d.ts +2 -0
  805. package/mobile/bundle/ui-kit/Select/formatOption.d.ts +2 -0
  806. package/mobile/bundle/ui-kit/Select/useSelectPopup.d.ts +9 -0
  807. package/mobile/bundle/ui-kit/Text/TextProps.d.ts +1 -1
  808. package/mobile/bundle/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  809. package/mobile/bundle/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  810. package/mobile/bundle/utils/fetchMultitudeJSON.d.ts +1 -0
  811. package/mobile/dist/EventBus/defaultEventBus.d.ts +3 -1
  812. package/mobile/dist/EventBus/defaultEventBus.js.map +1 -1
  813. package/mobile/dist/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  814. package/mobile/dist/components/ApplicationForm/ApplicationForm.js +1 -6
  815. package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  816. package/mobile/dist/components/ApplicationForm/ApplicationFormAcquiring.js +2 -2
  817. package/mobile/dist/components/ApplicationForm/ApplicationFormAcquiring.js.map +1 -1
  818. package/mobile/dist/components/ApplicationForm/ApplicationFormBusinessCard.js +1 -1
  819. package/mobile/dist/components/ApplicationForm/ApplicationFormBusinessCard.js.map +1 -1
  820. package/mobile/dist/components/ApplicationForm/ApplicationFormCredit.js +2 -2
  821. package/mobile/dist/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  822. package/mobile/dist/components/ApplicationForm/ApplicationFormDeposit.js +2 -2
  823. package/mobile/dist/components/ApplicationForm/ApplicationFormDeposit.js.map +1 -1
  824. package/mobile/dist/components/ApplicationForm/ApplicationFormGrantSupport.js +1 -1
  825. package/mobile/dist/components/ApplicationForm/ApplicationFormGrantSupport.js.map +1 -1
  826. package/mobile/dist/components/ApplicationForm/ApplicationFormWed.js +35 -16
  827. package/mobile/dist/components/ApplicationForm/ApplicationFormWed.js.map +1 -1
  828. package/mobile/dist/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  829. package/mobile/dist/components/ApplicationForm/CreditFormState.d.ts +1 -1
  830. package/mobile/dist/components/ApplicationForm/WedFormState.d.ts +5 -4
  831. package/mobile/dist/components/ApplicationForm/renderAcquiringDataOrganization.js +1 -1
  832. package/mobile/dist/components/ApplicationForm/renderAcquiringDataOrganization.js.map +1 -1
  833. package/mobile/dist/components/ApplicationForm/renderAcquiringRegion.js +1 -1
  834. package/mobile/dist/components/ApplicationForm/renderAcquiringRegion.js.map +1 -1
  835. package/mobile/dist/components/ApplicationForm/renderBusinessCardDataOrganization.js +1 -1
  836. package/mobile/dist/components/ApplicationForm/renderBusinessCardDataOrganization.js.map +1 -1
  837. package/mobile/dist/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  838. package/mobile/dist/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  839. package/mobile/dist/components/ApplicationForm/renderCreditParameters.js +1 -1
  840. package/mobile/dist/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  841. package/mobile/dist/components/ApplicationForm/renderQuestionsInterested.js +3 -3
  842. package/mobile/dist/components/ApplicationForm/renderQuestionsInterested.js.map +1 -1
  843. package/mobile/dist/components/ApplicationForm/renderRegion.js.map +1 -1
  844. package/mobile/dist/components/ApplicationForm/renderRegionDepartment.js +1 -1
  845. package/mobile/dist/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  846. package/mobile/dist/components/ApplicationForm/renderSubmitButton.js +1 -1
  847. package/mobile/dist/components/ApplicationForm/renderSubmitButton.js.map +1 -1
  848. package/mobile/dist/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  849. package/mobile/dist/components/ApplicationForm/renderWedDataOrganization.js +5 -1
  850. package/mobile/dist/components/ApplicationForm/renderWedDataOrganization.js.map +1 -1
  851. package/mobile/dist/components/ApplicationForm/renderWedTextarea.d.ts +4 -0
  852. package/mobile/dist/components/ApplicationForm/renderWedTextarea.js +12 -0
  853. package/mobile/dist/components/ApplicationForm/renderWedTextarea.js.map +1 -0
  854. package/mobile/dist/components/Bonus/Bonus.js +4 -3
  855. package/mobile/dist/components/Bonus/Bonus.js.map +1 -1
  856. package/mobile/dist/components/Bonus/BonusContent.d.ts +2 -0
  857. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  858. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  859. package/mobile/dist/components/BonusBenefitsBlock/renderBonusBenefit.js +2 -2
  860. package/mobile/dist/components/BonusBenefitsBlock/renderBonusBenefit.js.map +1 -1
  861. package/mobile/dist/components/Calculator/BonusCalculatorForm.js +1 -1
  862. package/mobile/dist/components/Calculator/BonusCalculatorForm.js.map +1 -1
  863. package/mobile/dist/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  864. package/mobile/dist/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  865. package/mobile/dist/components/Calculator/CreditCalculatorForm.js +1 -1
  866. package/mobile/dist/components/Calculator/CreditCalculatorForm.js.map +1 -1
  867. package/mobile/dist/components/Calculator/DepositCalculatorForm.js +1 -1
  868. package/mobile/dist/components/Calculator/DepositCalculatorForm.js.map +1 -1
  869. package/mobile/dist/components/Calculator/RefinancingCalculatorForm.js +1 -1
  870. package/mobile/dist/components/Calculator/RefinancingCalculatorForm.js.map +1 -1
  871. package/mobile/dist/components/CardTransfer/CardTransfer.js +1 -1
  872. package/mobile/dist/components/Carousel/Carousel.js +1 -0
  873. package/mobile/dist/components/Carousel/Carousel.js.map +1 -1
  874. package/mobile/dist/components/CarouselCard/CarouselCard.js +2 -2
  875. package/mobile/dist/components/CarouselCard/CarouselCard.js.map +1 -1
  876. package/mobile/dist/components/CarouselCatalogCard/CarouselCatalogCard.js +2 -1
  877. package/mobile/dist/components/CarouselCatalogCard/CarouselCatalogCard.js.map +1 -1
  878. package/mobile/dist/components/CarouselLinks/CarouselLinkButton.js +5 -5
  879. package/mobile/dist/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
  880. package/mobile/dist/components/CarouselLinks/CarouselLinks.js +4 -4
  881. package/mobile/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
  882. package/mobile/dist/components/CarouselProductCard/CarouselProductCard.js +2 -2
  883. package/mobile/dist/components/CarouselProductCard/CarouselProductCard.js.map +1 -1
  884. package/mobile/dist/components/CarouselProgramsCard/CarouselProgramsCard.js +1 -1
  885. package/mobile/dist/components/CarouselProgramsCard/CarouselProgramsCard.js.map +1 -1
  886. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js +1 -1
  887. package/mobile/dist/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  888. package/mobile/dist/components/ComparisonTable/TableCarouselContainer.js +1 -1
  889. package/mobile/dist/components/ComparisonTable/TableCarouselContainer.js.map +1 -1
  890. package/mobile/dist/components/ComparisonTable/TableCell.js +4 -6
  891. package/mobile/dist/components/ComparisonTable/TableCell.js.map +1 -1
  892. package/mobile/dist/components/ComparisonTable/TableColumn.js +3 -2
  893. package/mobile/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  894. package/mobile/dist/components/ComparisonTable/TableRow.js +2 -1
  895. package/mobile/dist/components/ComparisonTable/TableRow.js.map +1 -1
  896. package/mobile/dist/components/ComparisonTable/constants.d.ts +4 -4
  897. package/mobile/dist/components/ComparisonTable/constants.js +5 -5
  898. package/mobile/dist/components/ComparisonTable/constants.js.map +1 -1
  899. package/mobile/dist/components/ContentPage/ContentPage.js +2 -1
  900. package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
  901. package/mobile/dist/components/DepositFiltration/DepositFiltration.js +16 -13
  902. package/mobile/dist/components/DepositFiltration/DepositFiltration.js.map +1 -1
  903. package/mobile/dist/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  904. package/mobile/dist/components/DepositFiltration/getChildSourceBook.js +6 -0
  905. package/mobile/dist/components/DepositFiltration/getChildSourceBook.js.map +1 -0
  906. package/mobile/dist/components/DepositFiltration/getPeriod.d.ts +9 -0
  907. package/mobile/dist/components/DepositFiltration/getPeriod.js +7 -0
  908. package/mobile/dist/components/DepositFiltration/getPeriod.js.map +1 -0
  909. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  910. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.js +24 -0
  911. package/mobile/dist/components/DepositFiltration/useDepositsPeriods.js.map +1 -0
  912. package/mobile/dist/components/ErrorBlock/ErrorBlock.js +2 -2
  913. package/mobile/dist/components/ErrorBlock/ErrorBlock.js.map +1 -1
  914. package/mobile/dist/components/Footer/Footer.js +1 -1
  915. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  916. package/mobile/dist/components/Footer/HorizontalNavigation.js +1 -1
  917. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  918. package/mobile/dist/components/Footer/MediaButton.js +1 -1
  919. package/mobile/dist/components/Footer/MediaButton.js.map +1 -1
  920. package/mobile/dist/components/Header/DropdownMenu.js +1 -1
  921. package/mobile/dist/components/Header/DropdownMenu.js.map +1 -1
  922. package/mobile/dist/components/Header/HeaderChatBotButton.js +1 -1
  923. package/mobile/dist/components/Header/HeaderChatBotButton.js.map +1 -1
  924. package/mobile/dist/components/MobileAppTile/MobileAppTile.js +2 -3
  925. package/mobile/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  926. package/mobile/dist/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  927. package/mobile/dist/components/MobileAppTile/renderDescription.js +1 -1
  928. package/mobile/dist/components/MobileAppTile/renderDescription.js.map +1 -1
  929. package/mobile/dist/components/MobileAppTile/renderList.d.ts +2 -1
  930. package/mobile/dist/components/MobileAppTile/renderList.js +2 -2
  931. package/mobile/dist/components/MobileAppTile/renderList.js.map +1 -1
  932. package/mobile/dist/components/MortgageFiltration/MortgageFiltration.js +3 -1
  933. package/mobile/dist/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  934. package/mobile/dist/components/OfficesAtmsMap/Badge.d.ts +11 -0
  935. package/mobile/dist/components/OfficesAtmsMap/Badge.js +14 -0
  936. package/mobile/dist/components/OfficesAtmsMap/Badge.js.map +1 -0
  937. package/mobile/dist/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  938. package/mobile/dist/components/OfficesAtmsMap/CardCell.js +14 -0
  939. package/mobile/dist/components/OfficesAtmsMap/CardCell.js.map +1 -0
  940. package/mobile/dist/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  941. package/mobile/dist/components/OfficesAtmsMap/CardRow.js +7 -0
  942. package/mobile/dist/components/OfficesAtmsMap/CardRow.js.map +1 -0
  943. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  944. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMap.js +74 -0
  945. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMap.js.map +1 -0
  946. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  947. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.js +2 -0
  948. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapContent.js.map +1 -0
  949. package/mobile/dist/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  950. package/mobile/dist/components/OfficesAtmsMap/renderAtmCard.js +31 -0
  951. package/mobile/dist/components/OfficesAtmsMap/renderAtmCard.js.map +1 -0
  952. package/mobile/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  953. package/mobile/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.js +2 -0
  954. package/mobile/dist/components/OfficesAtmsMap/renderCurrentDaySchedule.js.map +1 -0
  955. package/mobile/dist/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  956. package/mobile/dist/components/OfficesAtmsMap/renderDay.js +2 -0
  957. package/mobile/dist/components/OfficesAtmsMap/renderDay.js.map +1 -0
  958. package/mobile/dist/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  959. package/mobile/dist/components/OfficesAtmsMap/renderLunchHour.js +10 -0
  960. package/mobile/dist/components/OfficesAtmsMap/renderLunchHour.js.map +1 -0
  961. package/mobile/dist/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  962. package/mobile/dist/components/OfficesAtmsMap/renderOfficeCard.js +50 -0
  963. package/mobile/dist/components/OfficesAtmsMap/renderOfficeCard.js.map +1 -0
  964. package/mobile/dist/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  965. package/mobile/dist/components/OfficesAtmsMap/useOfficesAtmsMap.js +19 -0
  966. package/mobile/dist/components/OfficesAtmsMap/useOfficesAtmsMap.js.map +1 -0
  967. package/mobile/dist/components/PictureText/renderInsuranceSumMonth.js +2 -2
  968. package/mobile/dist/components/PictureText/renderInsuranceSumMonth.js.map +1 -1
  969. package/mobile/dist/components/ProductTile/ProductTile.js +1 -1
  970. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  971. package/mobile/dist/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  972. package/mobile/dist/components/RollupItem/PrimaryFoldButton.js +12 -0
  973. package/mobile/dist/components/RollupItem/PrimaryFoldButton.js.map +1 -0
  974. package/mobile/dist/components/RollupItem/RollupItem.js +3 -14
  975. package/mobile/dist/components/RollupItem/RollupItem.js.map +1 -1
  976. package/mobile/dist/components/SafeDepositRental/RegionsAndBranches.js +1 -1
  977. package/mobile/dist/components/SafeDepositRental/RegionsAndBranches.js.map +1 -1
  978. package/mobile/dist/components/SafeDepositRental/SafeBoxCases.js +1 -1
  979. package/mobile/dist/components/SafeDepositRental/SafeBoxCases.js.map +1 -1
  980. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalFields.js +1 -1
  981. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalFields.js.map +1 -1
  982. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js +1 -1
  983. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  984. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +2 -2
  985. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  986. package/mobile/dist/components/SafeDepositRental/WrapperSelect.js.map +1 -1
  987. package/mobile/dist/components/StickyBottomMenu/RenderMenuItems.js +1 -1
  988. package/mobile/dist/components/StickyBottomMenu/RenderMenuItems.js.map +1 -1
  989. package/mobile/dist/components/TariffsTable/EmbeddableCellData.d.ts +9 -1
  990. package/mobile/dist/components/TariffsTable/EmbeddableCellData.js +10 -5
  991. package/mobile/dist/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  992. package/mobile/dist/components/TariffsTable/TariffsTable.js +24 -11
  993. package/mobile/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  994. package/mobile/dist/components/TariffsTable/TariffsTableCell.js +1 -1
  995. package/mobile/dist/components/TariffsTable/TariffsTableCell.js.map +1 -1
  996. package/mobile/dist/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  997. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js +10 -10
  998. package/mobile/dist/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  999. package/mobile/dist/components/TariffsTable/TariffsTableRow.js +2 -1
  1000. package/mobile/dist/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1001. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js +3 -1
  1002. package/mobile/dist/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1003. package/mobile/dist/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  1004. package/mobile/dist/components/TariffsTable/TariffsTableWrapper.js +14 -0
  1005. package/mobile/dist/components/TariffsTable/TariffsTableWrapper.js.map +1 -0
  1006. package/mobile/dist/components/TariffsTable/constants.d.ts +2 -2
  1007. package/mobile/dist/components/TariffsTable/constants.js +3 -3
  1008. package/mobile/dist/components/TariffsTable/constants.js.map +1 -1
  1009. package/mobile/dist/components/TariffsTable/headlineAlign.d.ts +1 -0
  1010. package/mobile/dist/components/TariffsTable/headlineAlign.js +4 -0
  1011. package/mobile/dist/components/TariffsTable/headlineAlign.js.map +1 -0
  1012. package/mobile/dist/content-page-repository/transformContentPage.js +5 -6
  1013. package/mobile/dist/content-page-repository/transformContentPage.js.map +1 -1
  1014. package/mobile/dist/model/AlignStyles.d.ts +1 -0
  1015. package/mobile/dist/model/AlignStyles.js +4 -0
  1016. package/mobile/dist/model/AlignStyles.js.map +1 -0
  1017. package/mobile/dist/services/search/search.js +1 -1
  1018. package/mobile/dist/services/search/search.js.map +1 -1
  1019. package/mobile/dist/services/search/textRank.js +1 -1
  1020. package/mobile/dist/services/search/textRank.js.map +1 -1
  1021. package/mobile/dist/services/search/useSearch.js +1 -1
  1022. package/mobile/dist/services/search/useSearch.js.map +1 -1
  1023. package/mobile/dist/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  1024. package/mobile/dist/ui-kit/BaseFiltration/BaseFiltrationInner.js +1 -3
  1025. package/mobile/dist/ui-kit/BaseFiltration/BaseFiltrationInner.js.map +1 -1
  1026. package/mobile/dist/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  1027. package/mobile/dist/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  1028. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  1029. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.js +7 -0
  1030. package/mobile/dist/ui-kit/BaseFiltration/getBlocksToRender.js.map +1 -0
  1031. package/mobile/dist/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  1032. package/mobile/dist/ui-kit/BaseFiltration/shouldRenderBlock.js +33 -0
  1033. package/mobile/dist/ui-kit/BaseFiltration/shouldRenderBlock.js.map +1 -0
  1034. package/mobile/dist/ui-kit/BaseProductTile/BaseProductTile.js +3 -2
  1035. package/mobile/dist/ui-kit/BaseProductTile/BaseProductTile.js.map +1 -1
  1036. package/mobile/dist/ui-kit/BaseTile/BaseTile.js +5 -5
  1037. package/mobile/dist/ui-kit/BaseTile/BaseTile.js.map +1 -1
  1038. package/mobile/dist/ui-kit/BenefitItem/renderBenefitIcon.js +1 -1
  1039. package/mobile/dist/ui-kit/BenefitItem/renderBenefitIcon.js.map +1 -1
  1040. package/mobile/dist/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  1041. package/mobile/dist/ui-kit/BenefitItem/renderBenefitText.js +1 -1
  1042. package/mobile/dist/ui-kit/BenefitItem/renderBenefitText.js.map +1 -1
  1043. package/mobile/dist/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  1044. package/mobile/dist/ui-kit/Button/renderButtonsSection.js +2 -5
  1045. package/mobile/dist/ui-kit/Button/renderButtonsSection.js.map +1 -1
  1046. package/mobile/dist/ui-kit/CookiePopup/CookiePopup.js +2 -2
  1047. package/mobile/dist/ui-kit/CookiePopup/CookiePopup.js.map +1 -1
  1048. package/mobile/dist/ui-kit/DialogManager/DialogManager.js +7 -11
  1049. package/mobile/dist/ui-kit/DialogManager/DialogManager.js.map +1 -1
  1050. package/mobile/dist/ui-kit/DialogManager/useDialogsList.js +1 -1
  1051. package/mobile/dist/ui-kit/DialogManager/useDialogsList.js.map +1 -1
  1052. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js +7 -8
  1053. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  1054. package/mobile/dist/ui-kit/InnerTable/InnerTable.js +1 -1
  1055. package/mobile/dist/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1056. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js +1 -5
  1057. package/mobile/dist/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1058. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.js +3 -32
  1059. package/mobile/dist/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1060. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  1061. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.js +2 -4
  1062. package/mobile/dist/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1063. package/mobile/dist/ui-kit/InnerTable/InnerTableHeader.js +2 -1
  1064. package/mobile/dist/ui-kit/InnerTable/InnerTableHeader.js.map +1 -1
  1065. package/mobile/dist/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  1066. package/mobile/dist/ui-kit/InnerTable/getHorizontalShift.js +7 -0
  1067. package/mobile/dist/ui-kit/InnerTable/getHorizontalShift.js.map +1 -0
  1068. package/mobile/dist/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  1069. package/mobile/dist/ui-kit/InnerTable/linkButtonVersion.js +4 -0
  1070. package/mobile/dist/ui-kit/InnerTable/linkButtonVersion.js.map +1 -0
  1071. package/mobile/dist/ui-kit/InnerTable/renderInnerTableRow.d.ts +3 -0
  1072. package/mobile/dist/ui-kit/InnerTable/renderInnerTableRow.js +18 -0
  1073. package/mobile/dist/ui-kit/InnerTable/renderInnerTableRow.js.map +1 -0
  1074. package/mobile/dist/ui-kit/LocationDialog/LocationDialog.js +2 -2
  1075. package/mobile/dist/ui-kit/LocationDialog/LocationDialog.js.map +1 -1
  1076. package/mobile/dist/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  1077. package/mobile/dist/ui-kit/PopupManager/PopupAction.js +2 -0
  1078. package/mobile/dist/ui-kit/PopupManager/PopupAction.js.map +1 -0
  1079. package/mobile/dist/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  1080. package/mobile/dist/ui-kit/PopupManager/PopupManager.js +39 -0
  1081. package/mobile/dist/ui-kit/PopupManager/PopupManager.js.map +1 -0
  1082. package/mobile/dist/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  1083. package/mobile/dist/ui-kit/PopupManager/usePopupManager.js +10 -0
  1084. package/mobile/dist/ui-kit/PopupManager/usePopupManager.js.map +1 -0
  1085. package/mobile/dist/ui-kit/Select/Option.d.ts +4 -0
  1086. package/mobile/dist/ui-kit/Select/Option.js +2 -0
  1087. package/mobile/dist/ui-kit/Select/Option.js.map +1 -0
  1088. package/mobile/dist/ui-kit/Select/Select.d.ts +2 -5
  1089. package/mobile/dist/ui-kit/Select/Select.js +18 -25
  1090. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  1091. package/mobile/dist/ui-kit/Select/SelectPopup.d.ts +11 -0
  1092. package/mobile/dist/ui-kit/Select/SelectPopup.js +10 -0
  1093. package/mobile/dist/ui-kit/Select/SelectPopup.js.map +1 -0
  1094. package/mobile/dist/ui-kit/Select/filterOptions.d.ts +2 -0
  1095. package/mobile/dist/ui-kit/Select/filterOptions.js +19 -0
  1096. package/mobile/dist/ui-kit/Select/filterOptions.js.map +1 -0
  1097. package/mobile/dist/ui-kit/Select/formatOption.d.ts +2 -0
  1098. package/mobile/dist/ui-kit/Select/formatOption.js +5 -0
  1099. package/mobile/dist/ui-kit/Select/formatOption.js.map +1 -0
  1100. package/mobile/dist/ui-kit/Select/useSelectPopup.d.ts +9 -0
  1101. package/mobile/dist/ui-kit/Select/useSelectPopup.js +35 -0
  1102. package/mobile/dist/ui-kit/Select/useSelectPopup.js.map +1 -0
  1103. package/mobile/dist/ui-kit/Text/TextProps.d.ts +1 -1
  1104. package/mobile/dist/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  1105. package/mobile/dist/ui-kit/TextWithIcon/TextWithIcon.js +10 -0
  1106. package/mobile/dist/ui-kit/TextWithIcon/TextWithIcon.js.map +1 -0
  1107. package/mobile/dist/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  1108. package/mobile/dist/ui-kit/YandexMap/YandexMap.js +14 -24
  1109. package/mobile/dist/ui-kit/YandexMap/YandexMap.js.map +1 -1
  1110. package/mobile/dist/ui-kit/YandexMap/renderClusterer.js +2 -2
  1111. package/mobile/dist/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  1112. package/mobile/dist/ui-kit/YandexMap/renderSearchField.js +2 -1
  1113. package/mobile/dist/ui-kit/YandexMap/renderSearchField.js.map +1 -1
  1114. package/mobile/dist/utils/fetchJSON.js +1 -1
  1115. package/mobile/dist/utils/fetchJSON.js.map +1 -1
  1116. package/mobile/dist/utils/fetchMultitudeJSON.d.ts +1 -0
  1117. package/mobile/dist/utils/fetchMultitudeJSON.js +9 -0
  1118. package/mobile/dist/utils/fetchMultitudeJSON.js.map +1 -0
  1119. package/mobile/dist/utils/jaroWinklerDistance.js.map +1 -0
  1120. package/mobile/fonts/mohave/Mohave-Regular.ttf +0 -0
  1121. package/mobile/fonts/mohave/Mohave-Regular.woff2 +0 -0
  1122. package/mobile/fonts/mohave/mohave.css +2 -1
  1123. package/mobile/lib/EventBus/defaultEventBus.d.ts +3 -1
  1124. package/mobile/lib/EventBus/defaultEventBus.js.map +1 -1
  1125. package/mobile/lib/common.css +1 -1
  1126. package/mobile/lib/components/ApplicationForm/AcquiringFormState.d.ts +1 -1
  1127. package/mobile/lib/components/ApplicationForm/ApplicationForm.js +1 -6
  1128. package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  1129. package/mobile/lib/components/ApplicationForm/ApplicationFormAcquiring.js +2 -2
  1130. package/mobile/lib/components/ApplicationForm/ApplicationFormAcquiring.js.map +1 -1
  1131. package/mobile/lib/components/ApplicationForm/ApplicationFormBusinessCard.js +1 -1
  1132. package/mobile/lib/components/ApplicationForm/ApplicationFormBusinessCard.js.map +1 -1
  1133. package/mobile/lib/components/ApplicationForm/ApplicationFormCredit.js +2 -2
  1134. package/mobile/lib/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  1135. package/mobile/lib/components/ApplicationForm/ApplicationFormDeposit.js +2 -2
  1136. package/mobile/lib/components/ApplicationForm/ApplicationFormDeposit.js.map +1 -1
  1137. package/mobile/lib/components/ApplicationForm/ApplicationFormGrantSupport.js +1 -1
  1138. package/mobile/lib/components/ApplicationForm/ApplicationFormGrantSupport.js.map +1 -1
  1139. package/mobile/lib/components/ApplicationForm/ApplicationFormWed.js +36 -17
  1140. package/mobile/lib/components/ApplicationForm/ApplicationFormWed.js.map +1 -1
  1141. package/mobile/lib/components/ApplicationForm/BusinessCardFormState.d.ts +1 -1
  1142. package/mobile/lib/components/ApplicationForm/CreditFormState.d.ts +1 -1
  1143. package/mobile/lib/components/ApplicationForm/WedFormState.d.ts +5 -4
  1144. package/mobile/lib/components/ApplicationForm/renderAcquiringDataOrganization.js +1 -1
  1145. package/mobile/lib/components/ApplicationForm/renderAcquiringDataOrganization.js.map +1 -1
  1146. package/mobile/lib/components/ApplicationForm/renderAcquiringRegion.js +1 -1
  1147. package/mobile/lib/components/ApplicationForm/renderAcquiringRegion.js.map +1 -1
  1148. package/mobile/lib/components/ApplicationForm/renderBusinessCardDataOrganization.js +1 -1
  1149. package/mobile/lib/components/ApplicationForm/renderBusinessCardDataOrganization.js.map +1 -1
  1150. package/mobile/lib/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  1151. package/mobile/lib/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  1152. package/mobile/lib/components/ApplicationForm/renderCreditParameters.js +1 -1
  1153. package/mobile/lib/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  1154. package/mobile/lib/components/ApplicationForm/renderQuestionsInterested.js +3 -3
  1155. package/mobile/lib/components/ApplicationForm/renderQuestionsInterested.js.map +1 -1
  1156. package/mobile/lib/components/ApplicationForm/renderRegion.js.map +1 -1
  1157. package/mobile/lib/components/ApplicationForm/renderRegionDepartment.js +1 -1
  1158. package/mobile/lib/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  1159. package/mobile/lib/components/ApplicationForm/renderSubmitButton.js +1 -1
  1160. package/mobile/lib/components/ApplicationForm/renderSubmitButton.js.map +1 -1
  1161. package/mobile/lib/components/ApplicationForm/renderWedDataOrganization.d.ts +2 -1
  1162. package/mobile/lib/components/ApplicationForm/renderWedDataOrganization.js +6 -2
  1163. package/mobile/lib/components/ApplicationForm/renderWedDataOrganization.js.map +1 -1
  1164. package/mobile/lib/components/ApplicationForm/renderWedTextarea.d.ts +4 -0
  1165. package/mobile/lib/components/ApplicationForm/renderWedTextarea.js +9 -0
  1166. package/mobile/lib/components/ApplicationForm/renderWedTextarea.js.map +1 -0
  1167. package/mobile/lib/components/Bonus/Bonus.js +4 -3
  1168. package/mobile/lib/components/Bonus/Bonus.js.map +1 -1
  1169. package/mobile/lib/components/Bonus/BonusContent.d.ts +2 -0
  1170. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  1171. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  1172. package/mobile/lib/components/BonusBenefitsBlock/renderBonusBenefit.js +2 -2
  1173. package/mobile/lib/components/BonusBenefitsBlock/renderBonusBenefit.js.map +1 -1
  1174. package/mobile/lib/components/Calculator/BonusCalculatorForm.js +1 -1
  1175. package/mobile/lib/components/Calculator/BonusCalculatorForm.js.map +1 -1
  1176. package/mobile/lib/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  1177. package/mobile/lib/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  1178. package/mobile/lib/components/Calculator/CreditCalculatorForm.js +1 -1
  1179. package/mobile/lib/components/Calculator/CreditCalculatorForm.js.map +1 -1
  1180. package/mobile/lib/components/Calculator/DepositCalculatorForm.js +1 -1
  1181. package/mobile/lib/components/Calculator/DepositCalculatorForm.js.map +1 -1
  1182. package/mobile/lib/components/Calculator/RefinancingCalculatorForm.js +1 -1
  1183. package/mobile/lib/components/Calculator/RefinancingCalculatorForm.js.map +1 -1
  1184. package/mobile/lib/components/CardTransfer/CardTransfer.js +1 -1
  1185. package/mobile/lib/components/Carousel/Carousel.js +1 -0
  1186. package/mobile/lib/components/Carousel/Carousel.js.map +1 -1
  1187. package/mobile/lib/components/CarouselCard/CarouselCard.js +2 -2
  1188. package/mobile/lib/components/CarouselCard/CarouselCard.js.map +1 -1
  1189. package/mobile/lib/components/CarouselCatalogCard/CarouselCatalogCard.js +2 -1
  1190. package/mobile/lib/components/CarouselCatalogCard/CarouselCatalogCard.js.map +1 -1
  1191. package/mobile/lib/components/CarouselLinks/CarouselLinkButton.js +5 -5
  1192. package/mobile/lib/components/CarouselLinks/CarouselLinkButton.js.map +1 -1
  1193. package/mobile/lib/components/CarouselLinks/CarouselLinks.js +4 -4
  1194. package/mobile/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
  1195. package/mobile/lib/components/CarouselProductCard/CarouselProductCard.js +2 -2
  1196. package/mobile/lib/components/CarouselProductCard/CarouselProductCard.js.map +1 -1
  1197. package/mobile/lib/components/CarouselProgramsCard/CarouselProgramsCard.js +1 -1
  1198. package/mobile/lib/components/CarouselProgramsCard/CarouselProgramsCard.js.map +1 -1
  1199. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js +2 -2
  1200. package/mobile/lib/components/ComparisonTable/ComparisonTableColumnHeaders.js.map +1 -1
  1201. package/mobile/lib/components/ComparisonTable/TableCarouselContainer.js +1 -1
  1202. package/mobile/lib/components/ComparisonTable/TableCarouselContainer.js.map +1 -1
  1203. package/mobile/lib/components/ComparisonTable/TableCell.js +5 -7
  1204. package/mobile/lib/components/ComparisonTable/TableCell.js.map +1 -1
  1205. package/mobile/lib/components/ComparisonTable/TableColumn.js +4 -3
  1206. package/mobile/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  1207. package/mobile/lib/components/ComparisonTable/TableRow.js +3 -2
  1208. package/mobile/lib/components/ComparisonTable/TableRow.js.map +1 -1
  1209. package/mobile/lib/components/ComparisonTable/constants.d.ts +4 -4
  1210. package/mobile/lib/components/ComparisonTable/constants.js +4 -4
  1211. package/mobile/lib/components/ComparisonTable/constants.js.map +1 -1
  1212. package/mobile/lib/components/ContentPage/ContentPage.js +2 -1
  1213. package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
  1214. package/mobile/lib/components/DepositFiltration/DepositFiltration.js +16 -13
  1215. package/mobile/lib/components/DepositFiltration/DepositFiltration.js.map +1 -1
  1216. package/mobile/lib/components/DepositFiltration/getChildSourceBook.d.ts +2 -0
  1217. package/mobile/lib/components/DepositFiltration/getChildSourceBook.js +3 -0
  1218. package/mobile/lib/components/DepositFiltration/getChildSourceBook.js.map +1 -0
  1219. package/mobile/lib/components/DepositFiltration/getPeriod.d.ts +9 -0
  1220. package/mobile/lib/components/DepositFiltration/getPeriod.js +4 -0
  1221. package/mobile/lib/components/DepositFiltration/getPeriod.js.map +1 -0
  1222. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.d.ts +8 -0
  1223. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.js +21 -0
  1224. package/mobile/lib/components/DepositFiltration/useDepositsPeriods.js.map +1 -0
  1225. package/mobile/lib/components/ErrorBlock/ErrorBlock.js +2 -2
  1226. package/mobile/lib/components/ErrorBlock/ErrorBlock.js.map +1 -1
  1227. package/mobile/lib/components/Footer/Footer.js +1 -1
  1228. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  1229. package/mobile/lib/components/Footer/HorizontalNavigation.js +1 -1
  1230. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  1231. package/mobile/lib/components/Footer/MediaButton.js +1 -1
  1232. package/mobile/lib/components/Footer/MediaButton.js.map +1 -1
  1233. package/mobile/lib/components/Header/DropdownMenu.js +1 -1
  1234. package/mobile/lib/components/Header/DropdownMenu.js.map +1 -1
  1235. package/mobile/lib/components/Header/HeaderChatBotButton.js +1 -1
  1236. package/mobile/lib/components/Header/HeaderChatBotButton.js.map +1 -1
  1237. package/mobile/lib/components/MobileAppTile/MobileAppTile.js +2 -3
  1238. package/mobile/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  1239. package/mobile/lib/components/MobileAppTile/MobileAppTileContent.d.ts +0 -5
  1240. package/mobile/lib/components/MobileAppTile/renderDescription.js +1 -1
  1241. package/mobile/lib/components/MobileAppTile/renderDescription.js.map +1 -1
  1242. package/mobile/lib/components/MobileAppTile/renderList.d.ts +2 -1
  1243. package/mobile/lib/components/MobileAppTile/renderList.js +2 -2
  1244. package/mobile/lib/components/MobileAppTile/renderList.js.map +1 -1
  1245. package/mobile/lib/components/MortgageFiltration/MortgageFiltration.js +3 -1
  1246. package/mobile/lib/components/MortgageFiltration/MortgageFiltration.js.map +1 -1
  1247. package/mobile/lib/components/OfficesAtmsMap/Badge.d.ts +11 -0
  1248. package/mobile/lib/components/OfficesAtmsMap/Badge.js +12 -0
  1249. package/mobile/lib/components/OfficesAtmsMap/Badge.js.map +1 -0
  1250. package/mobile/lib/components/OfficesAtmsMap/CardCell.d.ts +9 -0
  1251. package/mobile/lib/components/OfficesAtmsMap/CardCell.js +12 -0
  1252. package/mobile/lib/components/OfficesAtmsMap/CardCell.js.map +1 -0
  1253. package/mobile/lib/components/OfficesAtmsMap/CardRow.d.ts +4 -0
  1254. package/mobile/lib/components/OfficesAtmsMap/CardRow.js +5 -0
  1255. package/mobile/lib/components/OfficesAtmsMap/CardRow.js.map +1 -0
  1256. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMap.d.ts +5 -0
  1257. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMap.js +72 -0
  1258. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMap.js.map +1 -0
  1259. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.d.ts +35 -0
  1260. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.js +2 -0
  1261. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapContent.js.map +1 -0
  1262. package/mobile/lib/components/OfficesAtmsMap/renderAtmCard.d.ts +3 -0
  1263. package/mobile/lib/components/OfficesAtmsMap/renderAtmCard.js +28 -0
  1264. package/mobile/lib/components/OfficesAtmsMap/renderAtmCard.js.map +1 -0
  1265. package/mobile/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.d.ts +1 -0
  1266. package/mobile/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.js +2 -0
  1267. package/mobile/lib/components/OfficesAtmsMap/renderCurrentDaySchedule.js.map +1 -0
  1268. package/mobile/lib/components/OfficesAtmsMap/renderDay.d.ts +1 -0
  1269. package/mobile/lib/components/OfficesAtmsMap/renderDay.js +2 -0
  1270. package/mobile/lib/components/OfficesAtmsMap/renderDay.js.map +1 -0
  1271. package/mobile/lib/components/OfficesAtmsMap/renderLunchHour.d.ts +2 -0
  1272. package/mobile/lib/components/OfficesAtmsMap/renderLunchHour.js +7 -0
  1273. package/mobile/lib/components/OfficesAtmsMap/renderLunchHour.js.map +1 -0
  1274. package/mobile/lib/components/OfficesAtmsMap/renderOfficeCard.d.ts +6 -0
  1275. package/mobile/lib/components/OfficesAtmsMap/renderOfficeCard.js +44 -0
  1276. package/mobile/lib/components/OfficesAtmsMap/renderOfficeCard.js.map +1 -0
  1277. package/mobile/lib/components/OfficesAtmsMap/useOfficesAtmsMap.d.ts +90 -0
  1278. package/mobile/lib/components/OfficesAtmsMap/useOfficesAtmsMap.js +16 -0
  1279. package/mobile/lib/components/OfficesAtmsMap/useOfficesAtmsMap.js.map +1 -0
  1280. package/mobile/lib/components/PictureText/renderInsuranceSumMonth.js +2 -2
  1281. package/mobile/lib/components/PictureText/renderInsuranceSumMonth.js.map +1 -1
  1282. package/mobile/lib/components/ProductTile/ProductTile.js +1 -1
  1283. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  1284. package/mobile/lib/components/RollupItem/PrimaryFoldButton.d.ts +12 -0
  1285. package/mobile/lib/components/RollupItem/PrimaryFoldButton.js +10 -0
  1286. package/mobile/lib/components/RollupItem/PrimaryFoldButton.js.map +1 -0
  1287. package/mobile/lib/components/RollupItem/RollupItem.js +4 -15
  1288. package/mobile/lib/components/RollupItem/RollupItem.js.map +1 -1
  1289. package/mobile/lib/components/SafeDepositRental/RegionsAndBranches.js +1 -1
  1290. package/mobile/lib/components/SafeDepositRental/RegionsAndBranches.js.map +1 -1
  1291. package/mobile/lib/components/SafeDepositRental/SafeBoxCases.js +1 -1
  1292. package/mobile/lib/components/SafeDepositRental/SafeBoxCases.js.map +1 -1
  1293. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalFields.js +1 -1
  1294. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalFields.js.map +1 -1
  1295. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js +1 -1
  1296. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  1297. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +2 -2
  1298. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  1299. package/mobile/lib/components/SafeDepositRental/WrapperSelect.js.map +1 -1
  1300. package/mobile/lib/components/StickyBottomMenu/RenderMenuItems.js +1 -1
  1301. package/mobile/lib/components/StickyBottomMenu/RenderMenuItems.js.map +1 -1
  1302. package/mobile/lib/components/TariffsTable/EmbeddableCellData.d.ts +9 -1
  1303. package/mobile/lib/components/TariffsTable/EmbeddableCellData.js +10 -5
  1304. package/mobile/lib/components/TariffsTable/EmbeddableCellData.js.map +1 -1
  1305. package/mobile/lib/components/TariffsTable/TariffsTable.js +24 -11
  1306. package/mobile/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  1307. package/mobile/lib/components/TariffsTable/TariffsTableCell.js +1 -1
  1308. package/mobile/lib/components/TariffsTable/TariffsTableCell.js.map +1 -1
  1309. package/mobile/lib/components/TariffsTable/TariffsTableContent.d.ts +0 -3
  1310. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js +11 -11
  1311. package/mobile/lib/components/TariffsTable/TariffsTableRenderCell.js.map +1 -1
  1312. package/mobile/lib/components/TariffsTable/TariffsTableRow.js +3 -2
  1313. package/mobile/lib/components/TariffsTable/TariffsTableRow.js.map +1 -1
  1314. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js +3 -1
  1315. package/mobile/lib/components/TariffsTable/TariffsTableRowContainer.js.map +1 -1
  1316. package/mobile/lib/components/TariffsTable/TariffsTableWrapper.d.ts +6 -0
  1317. package/mobile/lib/components/TariffsTable/TariffsTableWrapper.js +12 -0
  1318. package/mobile/lib/components/TariffsTable/TariffsTableWrapper.js.map +1 -0
  1319. package/mobile/lib/components/TariffsTable/constants.d.ts +2 -2
  1320. package/mobile/lib/components/TariffsTable/constants.js +2 -2
  1321. package/mobile/lib/components/TariffsTable/constants.js.map +1 -1
  1322. package/mobile/lib/components/TariffsTable/headlineAlign.d.ts +1 -0
  1323. package/mobile/lib/components/TariffsTable/headlineAlign.js +2 -0
  1324. package/mobile/lib/components/TariffsTable/headlineAlign.js.map +1 -0
  1325. package/mobile/lib/content-page-repository/transformContentPage.js +5 -6
  1326. package/mobile/lib/content-page-repository/transformContentPage.js.map +1 -1
  1327. package/mobile/lib/model/AlignStyles.d.ts +1 -0
  1328. package/mobile/lib/model/AlignStyles.js +2 -0
  1329. package/mobile/lib/model/AlignStyles.js.map +1 -0
  1330. package/mobile/lib/services/search/search.js +1 -1
  1331. package/mobile/lib/services/search/search.js.map +1 -1
  1332. package/mobile/lib/services/search/textRank.js +1 -1
  1333. package/mobile/lib/services/search/textRank.js.map +1 -1
  1334. package/mobile/lib/services/search/useSearch.js +1 -1
  1335. package/mobile/lib/services/search/useSearch.js.map +1 -1
  1336. package/mobile/lib/ui-kit/BaseFiltration/BaseFiltrationInner.d.ts +3 -2
  1337. package/mobile/lib/ui-kit/BaseFiltration/BaseFiltrationInner.js +1 -3
  1338. package/mobile/lib/ui-kit/BaseFiltration/BaseFiltrationInner.js.map +1 -1
  1339. package/mobile/lib/ui-kit/BaseFiltration/getBadgeCount.js +2 -2
  1340. package/mobile/lib/ui-kit/BaseFiltration/getBadgeCount.js.map +1 -1
  1341. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.d.ts +2 -0
  1342. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.js +4 -0
  1343. package/mobile/lib/ui-kit/BaseFiltration/getBlocksToRender.js.map +1 -0
  1344. package/mobile/lib/ui-kit/BaseFiltration/shouldRenderBlock.d.ts +1 -0
  1345. package/mobile/lib/ui-kit/BaseFiltration/shouldRenderBlock.js +30 -0
  1346. package/mobile/lib/ui-kit/BaseFiltration/shouldRenderBlock.js.map +1 -0
  1347. package/mobile/lib/ui-kit/BaseProductTile/BaseProductTile.js +3 -2
  1348. package/mobile/lib/ui-kit/BaseProductTile/BaseProductTile.js.map +1 -1
  1349. package/mobile/lib/ui-kit/BaseTile/BaseTile.js +5 -5
  1350. package/mobile/lib/ui-kit/BaseTile/BaseTile.js.map +1 -1
  1351. package/mobile/lib/ui-kit/BenefitItem/renderBenefitIcon.js +1 -1
  1352. package/mobile/lib/ui-kit/BenefitItem/renderBenefitIcon.js.map +1 -1
  1353. package/mobile/lib/ui-kit/BenefitItem/renderBenefitText.d.ts +4 -1
  1354. package/mobile/lib/ui-kit/BenefitItem/renderBenefitText.js +1 -1
  1355. package/mobile/lib/ui-kit/BenefitItem/renderBenefitText.js.map +1 -1
  1356. package/mobile/lib/ui-kit/BenefitsList/BenefitsListProps.d.ts +1 -0
  1357. package/mobile/lib/ui-kit/Button/renderButtonsSection.js +2 -5
  1358. package/mobile/lib/ui-kit/Button/renderButtonsSection.js.map +1 -1
  1359. package/mobile/lib/ui-kit/CookiePopup/CookiePopup.js +2 -2
  1360. package/mobile/lib/ui-kit/CookiePopup/CookiePopup.js.map +1 -1
  1361. package/mobile/lib/ui-kit/DialogManager/DialogManager.js +7 -11
  1362. package/mobile/lib/ui-kit/DialogManager/DialogManager.js.map +1 -1
  1363. package/mobile/lib/ui-kit/DialogManager/useDialogsList.js +1 -1
  1364. package/mobile/lib/ui-kit/DialogManager/useDialogsList.js.map +1 -1
  1365. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js +8 -9
  1366. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -1
  1367. package/mobile/lib/ui-kit/InnerTable/InnerTable.js +1 -1
  1368. package/mobile/lib/ui-kit/InnerTable/InnerTable.js.map +1 -1
  1369. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js +1 -5
  1370. package/mobile/lib/ui-kit/InnerTable/InnerTableBody.js.map +1 -1
  1371. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.js +4 -33
  1372. package/mobile/lib/ui-kit/InnerTable/InnerTableBodyItem.js.map +1 -1
  1373. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.d.ts +3 -2
  1374. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.js +3 -5
  1375. package/mobile/lib/ui-kit/InnerTable/InnerTableButton.js.map +1 -1
  1376. package/mobile/lib/ui-kit/InnerTable/InnerTableHeader.js +2 -1
  1377. package/mobile/lib/ui-kit/InnerTable/InnerTableHeader.js.map +1 -1
  1378. package/mobile/lib/ui-kit/InnerTable/getHorizontalShift.d.ts +2 -0
  1379. package/mobile/lib/ui-kit/InnerTable/getHorizontalShift.js +4 -0
  1380. package/mobile/lib/ui-kit/InnerTable/getHorizontalShift.js.map +1 -0
  1381. package/mobile/lib/ui-kit/InnerTable/linkButtonVersion.d.ts +1 -0
  1382. package/mobile/lib/ui-kit/InnerTable/linkButtonVersion.js +2 -0
  1383. package/mobile/lib/ui-kit/InnerTable/linkButtonVersion.js.map +1 -0
  1384. package/mobile/lib/ui-kit/InnerTable/renderInnerTableRow.d.ts +3 -0
  1385. package/mobile/lib/ui-kit/InnerTable/renderInnerTableRow.js +15 -0
  1386. package/mobile/lib/ui-kit/InnerTable/renderInnerTableRow.js.map +1 -0
  1387. package/mobile/lib/ui-kit/LocationDialog/LocationDialog.js +2 -2
  1388. package/mobile/lib/ui-kit/LocationDialog/LocationDialog.js.map +1 -1
  1389. package/mobile/lib/ui-kit/PopupManager/PopupAction.d.ts +14 -0
  1390. package/mobile/lib/ui-kit/PopupManager/PopupAction.js +2 -0
  1391. package/mobile/lib/ui-kit/PopupManager/PopupAction.js.map +1 -0
  1392. package/mobile/lib/ui-kit/PopupManager/PopupManager.d.ts +2 -0
  1393. package/mobile/lib/ui-kit/PopupManager/PopupManager.js +37 -0
  1394. package/mobile/lib/ui-kit/PopupManager/PopupManager.js.map +1 -0
  1395. package/mobile/lib/ui-kit/PopupManager/usePopupManager.d.ts +7 -0
  1396. package/mobile/lib/ui-kit/PopupManager/usePopupManager.js +7 -0
  1397. package/mobile/lib/ui-kit/PopupManager/usePopupManager.js.map +1 -0
  1398. package/mobile/lib/ui-kit/Select/Option.d.ts +4 -0
  1399. package/mobile/lib/ui-kit/Select/Option.js +2 -0
  1400. package/mobile/lib/ui-kit/Select/Option.js.map +1 -0
  1401. package/mobile/lib/ui-kit/Select/Select.d.ts +2 -5
  1402. package/mobile/lib/ui-kit/Select/Select.js +18 -25
  1403. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  1404. package/mobile/lib/ui-kit/Select/SelectPopup.d.ts +11 -0
  1405. package/mobile/lib/ui-kit/Select/SelectPopup.js +8 -0
  1406. package/mobile/lib/ui-kit/Select/SelectPopup.js.map +1 -0
  1407. package/mobile/lib/ui-kit/Select/filterOptions.d.ts +2 -0
  1408. package/mobile/lib/ui-kit/Select/filterOptions.js +16 -0
  1409. package/mobile/lib/ui-kit/Select/filterOptions.js.map +1 -0
  1410. package/mobile/lib/ui-kit/Select/formatOption.d.ts +2 -0
  1411. package/mobile/lib/ui-kit/Select/formatOption.js +2 -0
  1412. package/mobile/lib/ui-kit/Select/formatOption.js.map +1 -0
  1413. package/mobile/lib/ui-kit/Select/useSelectPopup.d.ts +9 -0
  1414. package/mobile/lib/ui-kit/Select/useSelectPopup.js +32 -0
  1415. package/mobile/lib/ui-kit/Select/useSelectPopup.js.map +1 -0
  1416. package/mobile/lib/ui-kit/Text/TextProps.d.ts +1 -1
  1417. package/mobile/lib/ui-kit/TextWithIcon/TextWithIcon.d.ts +12 -0
  1418. package/mobile/lib/ui-kit/TextWithIcon/TextWithIcon.js +8 -0
  1419. package/mobile/lib/ui-kit/TextWithIcon/TextWithIcon.js.map +1 -0
  1420. package/mobile/lib/ui-kit/YandexMap/YandexMap.d.ts +1 -2
  1421. package/mobile/lib/ui-kit/YandexMap/YandexMap.js +14 -24
  1422. package/mobile/lib/ui-kit/YandexMap/YandexMap.js.map +1 -1
  1423. package/mobile/lib/ui-kit/YandexMap/renderClusterer.js +2 -2
  1424. package/mobile/lib/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  1425. package/mobile/lib/ui-kit/YandexMap/renderSearchField.js +2 -1
  1426. package/mobile/lib/ui-kit/YandexMap/renderSearchField.js.map +1 -1
  1427. package/mobile/lib/utils/fetchJSON.js +1 -1
  1428. package/mobile/lib/utils/fetchJSON.js.map +1 -1
  1429. package/mobile/lib/utils/fetchMultitudeJSON.d.ts +1 -0
  1430. package/mobile/lib/utils/fetchMultitudeJSON.js +6 -0
  1431. package/mobile/lib/utils/fetchMultitudeJSON.js.map +1 -0
  1432. package/mobile/lib/utils/jaroWinklerDistance.js.map +1 -0
  1433. package/mobile/src/EventBus/defaultEventBus.ts +3 -1
  1434. package/mobile/src/components/ApplicationForm/AcquiringFormState.ts +1 -1
  1435. package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +2 -10
  1436. package/mobile/src/components/ApplicationForm/ApplicationFormAcquiring.tsx +3 -3
  1437. package/mobile/src/components/ApplicationForm/ApplicationFormBusinessCard.tsx +1 -1
  1438. package/mobile/src/components/ApplicationForm/ApplicationFormCredit.tsx +4 -4
  1439. package/mobile/src/components/ApplicationForm/ApplicationFormDeposit.tsx +3 -3
  1440. package/mobile/src/components/ApplicationForm/ApplicationFormGrantSupport.tsx +2 -2
  1441. package/mobile/src/components/ApplicationForm/ApplicationFormWed.tsx +45 -28
  1442. package/mobile/src/components/ApplicationForm/BusinessCardFormState.ts +1 -1
  1443. package/mobile/src/components/ApplicationForm/CreditFormState.ts +1 -1
  1444. package/mobile/src/components/ApplicationForm/WedFormState.ts +6 -4
  1445. package/mobile/src/components/ApplicationForm/renderAcquiringDataOrganization.tsx +21 -25
  1446. package/mobile/src/components/ApplicationForm/renderAcquiringRegion.tsx +3 -3
  1447. package/mobile/src/components/ApplicationForm/renderBusinessCardDataOrganization.tsx +3 -3
  1448. package/mobile/src/components/ApplicationForm/renderCreditDataOrganization.tsx +11 -13
  1449. package/mobile/src/components/ApplicationForm/renderCreditParameters.tsx +3 -3
  1450. package/mobile/src/components/ApplicationForm/renderQuestionsInterested.tsx +35 -15
  1451. package/mobile/src/components/ApplicationForm/renderRegion.tsx +1 -1
  1452. package/mobile/src/components/ApplicationForm/renderRegionDepartment.tsx +4 -4
  1453. package/mobile/src/components/ApplicationForm/renderSubmitButton.tsx +1 -1
  1454. package/mobile/src/components/ApplicationForm/renderWedDataOrganization.tsx +41 -23
  1455. package/mobile/src/components/ApplicationForm/renderWedTextarea.tsx +32 -0
  1456. package/mobile/src/components/Bonus/Bonus.tsx +7 -3
  1457. package/mobile/src/components/Bonus/BonusContent.ts +2 -0
  1458. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +1 -6
  1459. package/mobile/src/components/BonusBenefitsBlock/renderBonusBenefit.tsx +3 -3
  1460. package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +2 -2
  1461. package/mobile/src/components/Calculator/BusinessDepositCalculatorForm.tsx +2 -2
  1462. package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +2 -2
  1463. package/mobile/src/components/Calculator/DepositCalculatorForm.tsx +2 -2
  1464. package/mobile/src/components/Calculator/RefinancingCalculatorForm.tsx +2 -2
  1465. package/mobile/src/components/CardTransfer/CardTransfer.tsx +1 -1
  1466. package/mobile/src/components/Carousel/Carousel.example.json +1 -0
  1467. package/mobile/src/components/Carousel/Carousel.tsx +1 -0
  1468. package/mobile/src/components/CarouselCard/CarouselCard.tsx +6 -3
  1469. package/mobile/src/components/CarouselCatalogCard/CarouselCatalogCard.tsx +49 -25
  1470. package/mobile/src/components/CarouselLinks/CarouselLinkButton.tsx +23 -21
  1471. package/mobile/src/components/CarouselLinks/CarouselLinks.tsx +24 -22
  1472. package/mobile/src/components/CarouselProductCard/CarouselProductCard.tsx +2 -2
  1473. package/mobile/src/components/CarouselProgramsCard/CarouselProgramsCard.tsx +1 -1
  1474. package/mobile/src/components/CarouselRecommendationCard/CarouselRecommendationCard.example.json +2 -1
  1475. package/mobile/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +2 -2
  1476. package/mobile/src/components/ComparisonTable/TableCarouselContainer.tsx +1 -1
  1477. package/mobile/src/components/ComparisonTable/TableCell.tsx +14 -12
  1478. package/mobile/src/components/ComparisonTable/TableColumn.tsx +7 -3
  1479. package/mobile/src/components/ComparisonTable/TableRow.tsx +3 -4
  1480. package/mobile/src/components/ComparisonTable/constants.ts +4 -4
  1481. package/mobile/src/components/ContentPage/ContentPage.tsx +2 -0
  1482. package/mobile/src/components/DepositFiltration/DepositFiltration.example.json +6 -2
  1483. package/mobile/src/components/DepositFiltration/DepositFiltration.tsx +22 -17
  1484. package/mobile/src/components/DepositFiltration/getChildSourceBook.ts +7 -0
  1485. package/mobile/src/components/DepositFiltration/getPeriod.ts +10 -0
  1486. package/mobile/src/components/DepositFiltration/useDepositsPeriods.ts +34 -0
  1487. package/mobile/src/components/ErrorBlock/ErrorBlock.tsx +13 -3
  1488. package/mobile/src/components/ExchangeRateTile/renderInput.tsx +1 -1
  1489. package/mobile/src/components/Footer/Footer.tsx +1 -1
  1490. package/mobile/src/components/Footer/HorizontalNavigation.tsx +1 -1
  1491. package/mobile/src/components/Footer/MediaButton.tsx +1 -1
  1492. package/mobile/src/components/Header/DropdownMenu.tsx +2 -2
  1493. package/mobile/src/components/Header/HeaderChatBotButton.tsx +1 -1
  1494. package/mobile/src/components/MobileAppTile/MobileAppTile.example.json +0 -1
  1495. package/mobile/src/components/MobileAppTile/MobileAppTile.tsx +4 -4
  1496. package/mobile/src/components/MobileAppTile/MobileAppTileContent.ts +0 -5
  1497. package/mobile/src/components/MobileAppTile/renderDescription.tsx +1 -1
  1498. package/mobile/src/components/MobileAppTile/renderList.tsx +3 -2
  1499. package/mobile/src/components/MortgageFiltration/MortgageFiltration.example.json +9 -2
  1500. package/mobile/src/components/MortgageFiltration/MortgageFiltration.tsx +5 -2
  1501. package/mobile/src/components/OfficesAtmsMap/Badge.tsx +30 -0
  1502. package/mobile/src/components/OfficesAtmsMap/CardCell.tsx +40 -0
  1503. package/mobile/src/components/OfficesAtmsMap/CardRow.tsx +17 -0
  1504. package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMap.tsx +165 -0
  1505. package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapContent.ts +40 -0
  1506. package/mobile/src/components/OfficesAtmsMap/renderAtmCard.tsx +60 -0
  1507. package/mobile/src/components/OfficesAtmsMap/renderCurrentDaySchedule.tsx +2 -0
  1508. package/mobile/src/components/OfficesAtmsMap/renderDay.tsx +2 -0
  1509. package/mobile/src/components/OfficesAtmsMap/renderLunchHour.tsx +28 -0
  1510. package/mobile/src/components/OfficesAtmsMap/renderOfficeCard.tsx +121 -0
  1511. package/mobile/src/components/OfficesAtmsMap/useOfficesAtmsMap.ts +118 -0
  1512. package/mobile/src/components/PictureText/renderInsuranceSumMonth.tsx +6 -6
  1513. package/mobile/src/components/ProductTile/ProductTile.tsx +1 -1
  1514. package/mobile/src/components/RollupItem/PrimaryFoldButton.tsx +44 -0
  1515. package/mobile/src/components/RollupItem/RollupItem.tsx +10 -48
  1516. package/mobile/src/components/SafeDepositRental/RegionsAndBranches.tsx +1 -1
  1517. package/mobile/src/components/SafeDepositRental/SafeBoxCases.tsx +1 -1
  1518. package/mobile/src/components/SafeDepositRental/SafeDepositRentalFields.tsx +2 -2
  1519. package/mobile/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +1 -1
  1520. package/mobile/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +8 -8
  1521. package/mobile/src/components/SafeDepositRental/WrapperSelect.tsx +2 -1
  1522. package/mobile/src/components/StickyBottomMenu/RenderMenuItems.tsx +4 -1
  1523. package/mobile/src/components/TariffsTable/EmbeddableCellData.tsx +43 -10
  1524. package/mobile/src/components/TariffsTable/TariffsTable.example.json +0 -1
  1525. package/mobile/src/components/TariffsTable/TariffsTable.tsx +50 -31
  1526. package/mobile/src/components/TariffsTable/TariffsTableCell.tsx +1 -4
  1527. package/mobile/src/components/TariffsTable/TariffsTableContent.ts +0 -3
  1528. package/mobile/src/components/TariffsTable/TariffsTableRenderCell.tsx +1 -5
  1529. package/mobile/src/components/TariffsTable/TariffsTableRow.tsx +10 -4
  1530. package/mobile/src/components/TariffsTable/TariffsTableRowContainer.tsx +10 -1
  1531. package/mobile/src/components/TariffsTable/TariffsTableWrapper.tsx +27 -0
  1532. package/mobile/src/components/TariffsTable/constants.ts +2 -2
  1533. package/mobile/src/components/TariffsTable/headlineAlign.tsx +1 -0
  1534. package/mobile/src/content-page-repository/transformContentPage.ts +12 -10
  1535. package/mobile/src/icons/CloseIcon.svg +4 -4
  1536. package/mobile/src/model/AlignStyles.ts +1 -0
  1537. package/mobile/src/services/search/search.ts +1 -1
  1538. package/mobile/src/services/search/textRank.ts +1 -1
  1539. package/mobile/src/services/search/useSearch.ts +1 -1
  1540. package/mobile/src/ui-kit/BaseFiltration/BaseFiltrationInner.tsx +5 -8
  1541. package/mobile/src/ui-kit/BaseFiltration/getBadgeCount.ts +2 -2
  1542. package/mobile/src/ui-kit/BaseFiltration/getBlocksToRender.ts +8 -0
  1543. package/mobile/src/ui-kit/BaseFiltration/shouldRenderBlock.ts +54 -0
  1544. package/mobile/src/ui-kit/BaseProductTile/BaseProductTile.tsx +22 -10
  1545. package/mobile/src/ui-kit/BaseTile/BaseTile.tsx +5 -5
  1546. package/mobile/src/ui-kit/BenefitItem/renderBenefitIcon.tsx +1 -1
  1547. package/mobile/src/ui-kit/BenefitItem/renderBenefitText.tsx +10 -2
  1548. package/mobile/src/ui-kit/BenefitsList/BenefitsListProps.ts +1 -0
  1549. package/mobile/src/ui-kit/Button/renderButtonsSection.tsx +3 -6
  1550. package/mobile/src/ui-kit/CookiePopup/CookiePopup.tsx +2 -2
  1551. package/mobile/src/ui-kit/DialogManager/DialogManager.tsx +8 -13
  1552. package/mobile/src/ui-kit/DialogManager/useDialogsList.ts +1 -1
  1553. package/mobile/src/ui-kit/Foldable/DefaultFoldButton.tsx +23 -21
  1554. package/mobile/src/ui-kit/InnerTable/InnerTable.tsx +2 -2
  1555. package/mobile/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -25
  1556. package/mobile/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +7 -82
  1557. package/mobile/src/ui-kit/InnerTable/InnerTableButton.tsx +15 -19
  1558. package/mobile/src/ui-kit/InnerTable/InnerTableHeader.tsx +5 -3
  1559. package/mobile/src/ui-kit/InnerTable/getHorizontalShift.tsx +7 -0
  1560. package/mobile/src/ui-kit/InnerTable/linkButtonVersion.tsx +1 -0
  1561. package/mobile/src/ui-kit/InnerTable/renderInnerTableRow.tsx +54 -0
  1562. package/mobile/src/ui-kit/LocationDialog/LocationDialog.tsx +2 -2
  1563. package/mobile/src/ui-kit/PopupManager/PopupAction.ts +18 -0
  1564. package/mobile/src/ui-kit/PopupManager/PopupManager.tsx +57 -0
  1565. package/mobile/src/ui-kit/PopupManager/usePopupManager.tsx +11 -0
  1566. package/mobile/src/ui-kit/Select/Option.ts +4 -0
  1567. package/mobile/src/ui-kit/Select/Select.tsx +36 -88
  1568. package/mobile/src/ui-kit/Select/SelectPopup.tsx +42 -0
  1569. package/mobile/src/ui-kit/Select/filterOptions.ts +19 -0
  1570. package/mobile/src/ui-kit/Select/formatOption.ts +3 -0
  1571. package/mobile/src/ui-kit/Select/useSelectPopup.tsx +63 -0
  1572. package/mobile/src/ui-kit/Text/TextProps.ts +2 -0
  1573. package/mobile/src/ui-kit/TextWithIcon/TextWithIcon.tsx +35 -0
  1574. package/mobile/src/ui-kit/YandexMap/YandexMap.tsx +71 -81
  1575. package/mobile/src/ui-kit/YandexMap/renderClusterer.ts +2 -2
  1576. package/mobile/src/ui-kit/YandexMap/renderSearchField.tsx +2 -1
  1577. package/mobile/src/utils/fetchJSON.ts +1 -1
  1578. package/mobile/src/utils/fetchMultitudeJSON.ts +9 -0
  1579. package/package.json +4 -3
  1580. package/src/EventBus/defaultEventBus.ts +3 -1
  1581. package/src/components/ApplicationForm/AcquiringFormState.ts +1 -1
  1582. package/src/components/ApplicationForm/ApplicationForm.fixture.mobile.tsx +7 -0
  1583. package/src/components/ApplicationForm/ApplicationForm.fixture.tsx +7 -0
  1584. package/src/components/ApplicationForm/ApplicationForm.tsx +2 -10
  1585. package/src/components/ApplicationForm/ApplicationFormAcquiring.tsx +3 -3
  1586. package/src/components/ApplicationForm/ApplicationFormBusinessCard.tsx +1 -1
  1587. package/src/components/ApplicationForm/ApplicationFormCredit.tsx +4 -4
  1588. package/src/components/ApplicationForm/ApplicationFormDeposit.tsx +3 -3
  1589. package/src/components/ApplicationForm/ApplicationFormGrantSupport.tsx +2 -2
  1590. package/src/components/ApplicationForm/ApplicationFormWed.tsx +45 -28
  1591. package/src/components/ApplicationForm/BusinessCardFormState.ts +1 -1
  1592. package/src/components/ApplicationForm/CreditFormState.ts +1 -1
  1593. package/src/components/ApplicationForm/WedFormState.ts +6 -4
  1594. package/src/components/ApplicationForm/renderAcquiringDataOrganization.mobile.tsx +31 -0
  1595. package/src/components/ApplicationForm/renderAcquiringDataOrganization.tsx +3 -3
  1596. package/src/components/ApplicationForm/renderAcquiringRegion.tsx +3 -3
  1597. package/src/components/ApplicationForm/renderBusinessCardDataOrganization.tsx +3 -3
  1598. package/src/components/ApplicationForm/renderCreditDataOrganization.mobile.tsx +39 -0
  1599. package/src/components/ApplicationForm/renderCreditDataOrganization.tsx +3 -3
  1600. package/src/components/ApplicationForm/renderCreditParameters.tsx +3 -3
  1601. package/src/components/ApplicationForm/renderQuestionsInterested.tsx +35 -15
  1602. package/src/components/ApplicationForm/renderRegion.tsx +1 -1
  1603. package/src/components/ApplicationForm/renderRegionDepartment.tsx +4 -4
  1604. package/src/components/ApplicationForm/renderSubmitButton.tsx +1 -1
  1605. package/src/components/ApplicationForm/renderWedDataOrganization.tsx +41 -23
  1606. package/src/components/ApplicationForm/renderWedTextarea.tsx +32 -0
  1607. package/src/components/Blocks.ts +2 -6
  1608. package/src/components/Bonus/Bonus.tsx +7 -3
  1609. package/src/components/Bonus/BonusContent.ts +2 -0
  1610. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +1 -6
  1611. package/src/components/BonusBenefitsBlock/renderBonusBenefit.tsx +3 -3
  1612. package/src/components/Calculator/BonusCalculatorForm.tsx +2 -2
  1613. package/src/components/Calculator/BusinessDepositCalculatorForm.tsx +2 -2
  1614. package/src/components/Calculator/CreditCalculatorForm.tsx +2 -2
  1615. package/src/components/Calculator/DepositCalculatorForm.tsx +2 -2
  1616. package/src/components/Calculator/RefinancingCalculatorForm.tsx +2 -2
  1617. package/src/components/CardTransfer/CardTransfer.tsx +1 -1
  1618. package/src/components/Carousel/Carousel.example.json +1 -0
  1619. package/src/components/Carousel/Carousel.fixture.mobile.tsx +16 -6
  1620. package/src/components/Carousel/Carousel.fixture.tsx +15 -5
  1621. package/src/components/Carousel/Carousel.tsx +1 -0
  1622. package/src/components/CarouselCard/CarouselCard.fixture.mobile.tsx +1 -1
  1623. package/src/components/CarouselCard/CarouselCard.fixture.tsx +3 -3
  1624. package/src/components/CarouselCard/CarouselCard.tsx +6 -3
  1625. package/src/components/CarouselCatalogCard/CarouselCatalogCard.fixture.mobile.tsx +30 -1
  1626. package/src/components/CarouselCatalogCard/CarouselCatalogCard.fixture.tsx +30 -1
  1627. package/src/components/CarouselCatalogCard/CarouselCatalogCard.tsx +49 -25
  1628. package/src/components/CarouselLinks/CarouselLinkButton.tsx +23 -21
  1629. package/src/components/CarouselLinks/CarouselLinks.tsx +24 -22
  1630. package/src/components/CarouselProductCard/CarouselProductCard.tsx +2 -2
  1631. package/src/components/CarouselProgramsCard/CarouselProgramsCard.fixture.tsx +1 -1
  1632. package/src/components/CarouselProgramsCard/CarouselProgramsCard.tsx +1 -1
  1633. package/src/components/CarouselRecommendationCard/CarouselRecommendationCard.example.json +2 -1
  1634. package/src/components/CarouselRecommendationCard/CarouselRecommendationCard.tsx +2 -1
  1635. package/src/components/ComparisonTable/ComparisonTable.tsx +2 -2
  1636. package/src/components/ComparisonTable/ComparisonTableColumnHeaders.tsx +2 -2
  1637. package/src/components/ComparisonTable/HeaderCell.tsx +7 -2
  1638. package/src/components/ComparisonTable/TableCarouselContainer.tsx +1 -1
  1639. package/src/components/ComparisonTable/TableCell.mobile.tsx +14 -12
  1640. package/src/components/ComparisonTable/TableCell.tsx +16 -9
  1641. package/src/components/ComparisonTable/TableColumn.tsx +7 -3
  1642. package/src/components/ComparisonTable/TableRow.tsx +3 -4
  1643. package/src/components/ComparisonTable/constants.ts +4 -4
  1644. package/src/components/ContentPage/ContentPage.tsx +2 -0
  1645. package/src/components/DepositFiltration/DepositFiltration.example.json +6 -2
  1646. package/src/components/DepositFiltration/DepositFiltration.fixture.mobile.tsx +13 -40
  1647. package/src/components/DepositFiltration/DepositFiltration.fixture.tsx +14 -41
  1648. package/src/components/DepositFiltration/DepositFiltration.tsx +22 -17
  1649. package/src/components/DepositFiltration/getChildSourceBook.ts +7 -0
  1650. package/src/components/DepositFiltration/getPeriod.ts +10 -0
  1651. package/src/components/DepositFiltration/useDepositsPeriods.ts +34 -0
  1652. package/src/components/ErrorBlock/ErrorBlock.tsx +13 -3
  1653. package/src/components/ExchangeRateTile/renderInput.tsx +1 -1
  1654. package/src/components/Footer/Footer.mobile.tsx +1 -1
  1655. package/src/components/Footer/HorizontalNavigation.mobile.tsx +1 -1
  1656. package/src/components/Footer/MediaButton.tsx +1 -1
  1657. package/src/components/Header/DropdownMenu.tsx +2 -2
  1658. package/src/components/Header/HeaderChatBotButton.tsx +1 -1
  1659. package/src/components/MobileAppTile/MobileAppTile.example.json +0 -1
  1660. package/src/components/MobileAppTile/MobileAppTile.tsx +4 -4
  1661. package/src/components/MobileAppTile/MobileAppTileContent.ts +0 -5
  1662. package/src/components/MobileAppTile/renderDescription.tsx +1 -1
  1663. package/src/components/MobileAppTile/renderList.tsx +3 -2
  1664. package/src/components/MortgageFiltration/MortgageFiltration.example.json +9 -2
  1665. package/src/components/MortgageFiltration/MortgageFiltration.tsx +5 -2
  1666. package/src/components/OfficesAtmsMap/Badge.tsx +30 -0
  1667. package/src/components/OfficesAtmsMap/CardCell.tsx +40 -0
  1668. package/src/components/OfficesAtmsMap/CardRow.tsx +17 -0
  1669. package/src/components/OfficesAtmsMap/OfficesAtmsMap.fixture.tsx +41 -0
  1670. package/src/components/OfficesAtmsMap/OfficesAtmsMap.tsx +165 -0
  1671. package/src/components/OfficesAtmsMap/OfficesAtmsMapContent.ts +40 -0
  1672. package/src/components/OfficesAtmsMap/renderAtmCard.tsx +60 -0
  1673. package/src/components/OfficesAtmsMap/renderCurrentDaySchedule.tsx +2 -0
  1674. package/src/components/OfficesAtmsMap/renderDay.tsx +2 -0
  1675. package/src/components/OfficesAtmsMap/renderLunchHour.tsx +28 -0
  1676. package/src/components/OfficesAtmsMap/renderOfficeCard.tsx +121 -0
  1677. package/src/components/OfficesAtmsMap/useOfficesAtmsMap.ts +118 -0
  1678. package/src/components/PictureText/renderInsuranceSumMonth.tsx +6 -6
  1679. package/src/components/ProductTile/ProductTile.fixture.mobile.tsx +7 -4
  1680. package/src/components/ProductTile/ProductTile.tsx +1 -1
  1681. package/src/components/RollupItem/PrimaryFoldButton.tsx +44 -0
  1682. package/src/components/RollupItem/RollupItem.tsx +10 -48
  1683. package/src/components/SafeDepositRental/RegionsAndBranches.tsx +1 -1
  1684. package/src/components/SafeDepositRental/SafeBoxCases.tsx +1 -1
  1685. package/src/components/SafeDepositRental/SafeDepositRentalFields.tsx +2 -2
  1686. package/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +1 -1
  1687. package/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +8 -8
  1688. package/src/components/SafeDepositRental/WrapperSelect.tsx +2 -1
  1689. package/src/components/StickyBottomMenu/RenderMenuItems.tsx +4 -1
  1690. package/src/components/TariffsTable/EmbeddableCellData.tsx +30 -19
  1691. package/src/components/TariffsTable/TariffsTable.example.json +0 -1
  1692. package/src/components/TariffsTable/TariffsTable.fixture.mobile.tsx +8 -4
  1693. package/src/components/TariffsTable/TariffsTable.fixture.tsx +8 -18
  1694. package/src/components/TariffsTable/TariffsTable.tsx +25 -41
  1695. package/src/components/TariffsTable/TariffsTableCell.tsx +1 -4
  1696. package/src/components/TariffsTable/TariffsTableContent.ts +0 -3
  1697. package/src/components/TariffsTable/TariffsTableRenderCell.tsx +1 -5
  1698. package/src/components/TariffsTable/TariffsTableRow.tsx +10 -4
  1699. package/src/components/TariffsTable/TariffsTableRowContainer.tsx +10 -1
  1700. package/src/components/TariffsTable/TariffsTableWrapper.tsx +27 -0
  1701. package/src/components/TariffsTable/constants.ts +2 -2
  1702. package/src/components/TariffsTable/headlineAlign.mobile.tsx +1 -0
  1703. package/src/components/TariffsTable/headlineAlign.tsx +1 -0
  1704. package/src/content-page-repository/transformContentPage.ts +12 -10
  1705. package/src/icons/CloseIcon.svg +4 -4
  1706. package/src/icons/IconName.ts +5 -422
  1707. package/src/model/AlignStyles.mobile.ts +1 -0
  1708. package/src/model/AlignStyles.ts +1 -0
  1709. package/src/services/search/search.ts +1 -1
  1710. package/src/services/search/textRank.ts +1 -1
  1711. package/src/services/search/useSearch.ts +1 -1
  1712. package/src/ui-kit/BaseFiltration/BaseFiltrationInner.tsx +5 -8
  1713. package/src/ui-kit/BaseFiltration/getBadgeCount.ts +2 -2
  1714. package/src/ui-kit/BaseFiltration/getBlocksToRender.ts +8 -0
  1715. package/src/ui-kit/BaseFiltration/shouldRenderBlock.ts +54 -0
  1716. package/src/ui-kit/BaseProductTile/BaseProductTile.tsx +22 -10
  1717. package/src/ui-kit/BaseTile/BaseTile.tsx +5 -5
  1718. package/src/ui-kit/BenefitItem/renderBenefitIcon.tsx +1 -1
  1719. package/src/ui-kit/BenefitItem/renderBenefitText.tsx +10 -2
  1720. package/src/ui-kit/BenefitsList/BenefitsListProps.ts +1 -0
  1721. package/src/ui-kit/Button/renderButtonsSection.tsx +3 -6
  1722. package/src/ui-kit/CookiePopup/CookiePopup.tsx +2 -2
  1723. package/src/ui-kit/DialogManager/DialogManager.tsx +8 -13
  1724. package/src/ui-kit/DialogManager/useDialogsList.ts +1 -1
  1725. package/src/ui-kit/Foldable/DefaultFoldButton.tsx +23 -21
  1726. package/src/ui-kit/InnerTable/InnerTable.fixture.mobile.tsx +11 -0
  1727. package/src/ui-kit/InnerTable/InnerTable.fixture.tsx +11 -0
  1728. package/src/ui-kit/InnerTable/InnerTable.tsx +2 -2
  1729. package/src/ui-kit/InnerTable/InnerTableBody.tsx +3 -25
  1730. package/src/ui-kit/InnerTable/InnerTableBodyItem.mobile.tsx +14 -0
  1731. package/src/ui-kit/InnerTable/InnerTableBodyItem.tsx +2 -62
  1732. package/src/ui-kit/InnerTable/InnerTableButton.fixture.mobile.tsx +11 -0
  1733. package/src/ui-kit/InnerTable/InnerTableButton.tsx +15 -19
  1734. package/src/ui-kit/InnerTable/InnerTableHeader.tsx +5 -3
  1735. package/src/ui-kit/InnerTable/getHorizontalShift.tsx +7 -0
  1736. package/src/ui-kit/InnerTable/linkButtonVersion.mobile.tsx +1 -0
  1737. package/src/ui-kit/InnerTable/linkButtonVersion.tsx +1 -0
  1738. package/src/ui-kit/InnerTable/renderInnerTableRow.tsx +54 -0
  1739. package/src/ui-kit/LocationDialog/LocationDialog.tsx +2 -2
  1740. package/src/ui-kit/PopupManager/PopupAction.ts +18 -0
  1741. package/src/ui-kit/PopupManager/PopupManager.tsx +57 -0
  1742. package/src/ui-kit/PopupManager/usePopupManager.tsx +11 -0
  1743. package/src/ui-kit/Select/Option.ts +4 -0
  1744. package/src/ui-kit/Select/Select.fixture.tsx +22 -4
  1745. package/src/ui-kit/Select/Select.tsx +36 -88
  1746. package/src/ui-kit/Select/SelectPopup.tsx +42 -0
  1747. package/src/ui-kit/Select/filterOptions.ts +19 -0
  1748. package/src/ui-kit/Select/formatOption.ts +3 -0
  1749. package/src/ui-kit/Select/useSelectPopup.tsx +63 -0
  1750. package/src/ui-kit/Text/TextProps.ts +2 -0
  1751. package/src/ui-kit/TextWithIcon/TextWithIcon.tsx +35 -0
  1752. package/src/ui-kit/YandexMap/YandexMap.tsx +71 -81
  1753. package/src/ui-kit/YandexMap/renderClusterer.ts +2 -2
  1754. package/src/ui-kit/YandexMap/renderSearchField.tsx +2 -1
  1755. package/src/utils/fetchJSON.ts +1 -1
  1756. package/src/utils/fetchMultitudeJSON.ts +9 -0
  1757. package/bundle/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  1758. package/bundle/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.d.ts +0 -1
  1759. package/bundle/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  1760. package/bundle/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  1761. package/bundle/components/CarouselProductCard/alignTextStyle.mobile.d.ts +0 -1
  1762. package/bundle/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  1763. package/bundle/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  1764. package/bundle/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  1765. package/bundle/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  1766. package/bundle/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  1767. package/bundle/components/OfficeMap/OfficeMap.d.ts +0 -5
  1768. package/bundle/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  1769. package/bundle/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  1770. package/bundle/components/OfficeMap/nearbyOffices.d.ts +0 -2
  1771. package/bundle/components/OfficeMap/renderFunctions.d.ts +0 -5
  1772. package/bundle/components/OfficeMap/useOfficeMap.d.ts +0 -59
  1773. package/bundle/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  1774. package/bundle/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  1775. package/bundle/components/TariffsTable/EmbeddableCellData.mobile.d.ts +0 -13
  1776. package/bundle/components/TariffsTable/TariffsTable.mobile.d.ts +0 -5
  1777. package/bundle/hooks/useBool.d.ts +0 -9
  1778. package/bundle/hooks/useList.d.ts +0 -10
  1779. package/bundle/hooks/useOutsideClick.d.ts +0 -3
  1780. package/bundle/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  1781. package/bundle/utils/useDebouncedEffect.d.ts +0 -1
  1782. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  1783. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.js +0 -4
  1784. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.js.map +0 -1
  1785. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.d.ts +0 -1
  1786. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.js +0 -4
  1787. package/dist/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.js.map +0 -1
  1788. package/dist/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  1789. package/dist/components/CarouselCatalogCard/CatalogCard.js +0 -20
  1790. package/dist/components/CarouselCatalogCard/CatalogCard.js.map +0 -1
  1791. package/dist/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  1792. package/dist/components/CarouselProductCard/alignTextStyle.js +0 -4
  1793. package/dist/components/CarouselProductCard/alignTextStyle.js.map +0 -1
  1794. package/dist/components/CarouselProductCard/alignTextStyle.mobile.d.ts +0 -1
  1795. package/dist/components/CarouselProductCard/alignTextStyle.mobile.js +0 -4
  1796. package/dist/components/CarouselProductCard/alignTextStyle.mobile.js.map +0 -1
  1797. package/dist/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  1798. package/dist/components/ExchangeRateOffice/Currencies.js +0 -12
  1799. package/dist/components/ExchangeRateOffice/Currencies.js.map +0 -1
  1800. package/dist/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  1801. package/dist/components/ExchangeRateOffice/ExchangeRateOffice.js +0 -16
  1802. package/dist/components/ExchangeRateOffice/ExchangeRateOffice.js.map +0 -1
  1803. package/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  1804. package/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.js +0 -2
  1805. package/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.js.map +0 -1
  1806. package/dist/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  1807. package/dist/components/ExchangeRateOffice/renderCurrencies.js +0 -30
  1808. package/dist/components/ExchangeRateOffice/renderCurrencies.js.map +0 -1
  1809. package/dist/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  1810. package/dist/components/ExchangeRateOffice/renderTableHeader.js +0 -9
  1811. package/dist/components/ExchangeRateOffice/renderTableHeader.js.map +0 -1
  1812. package/dist/components/OfficeMap/OfficeMap.d.ts +0 -5
  1813. package/dist/components/OfficeMap/OfficeMap.js +0 -43
  1814. package/dist/components/OfficeMap/OfficeMap.js.map +0 -1
  1815. package/dist/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  1816. package/dist/components/OfficeMap/OfficeMapContent.js +0 -2
  1817. package/dist/components/OfficeMap/OfficeMapContent.js.map +0 -1
  1818. package/dist/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  1819. package/dist/components/OfficeMap/mockOfficeMap.js +0 -82
  1820. package/dist/components/OfficeMap/mockOfficeMap.js.map +0 -1
  1821. package/dist/components/OfficeMap/nearbyOffices.d.ts +0 -2
  1822. package/dist/components/OfficeMap/nearbyOffices.js +0 -9
  1823. package/dist/components/OfficeMap/nearbyOffices.js.map +0 -1
  1824. package/dist/components/OfficeMap/renderFunctions.d.ts +0 -5
  1825. package/dist/components/OfficeMap/renderFunctions.js +0 -20
  1826. package/dist/components/OfficeMap/renderFunctions.js.map +0 -1
  1827. package/dist/components/OfficeMap/useOfficeMap.d.ts +0 -59
  1828. package/dist/components/OfficeMap/useOfficeMap.js +0 -20
  1829. package/dist/components/OfficeMap/useOfficeMap.js.map +0 -1
  1830. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  1831. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +0 -12
  1832. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +0 -1
  1833. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  1834. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js +0 -2
  1835. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +0 -1
  1836. package/dist/components/TariffsTable/EmbeddableCellData.mobile.d.ts +0 -13
  1837. package/dist/components/TariffsTable/EmbeddableCellData.mobile.js +0 -20
  1838. package/dist/components/TariffsTable/EmbeddableCellData.mobile.js.map +0 -1
  1839. package/dist/components/TariffsTable/TariffsTable.mobile.d.ts +0 -5
  1840. package/dist/components/TariffsTable/TariffsTable.mobile.js +0 -18
  1841. package/dist/components/TariffsTable/TariffsTable.mobile.js.map +0 -1
  1842. package/dist/hooks/useBool.d.ts +0 -9
  1843. package/dist/hooks/useBool.js +0 -12
  1844. package/dist/hooks/useBool.js.map +0 -1
  1845. package/dist/hooks/useList.d.ts +0 -10
  1846. package/dist/hooks/useList.js +0 -13
  1847. package/dist/hooks/useList.js.map +0 -1
  1848. package/dist/hooks/useOutsideClick.d.ts +0 -3
  1849. package/dist/hooks/useOutsideClick.js +0 -23
  1850. package/dist/hooks/useOutsideClick.js.map +0 -1
  1851. package/dist/services/search/jaroWinklerDistance.js.map +0 -1
  1852. package/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  1853. package/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.js +0 -30
  1854. package/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.js.map +0 -1
  1855. package/dist/utils/useDebouncedEffect.d.ts +0 -1
  1856. package/dist/utils/useDebouncedEffect.js +0 -11
  1857. package/dist/utils/useDebouncedEffect.js.map +0 -1
  1858. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  1859. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.js +0 -2
  1860. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.js.map +0 -1
  1861. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.d.ts +0 -1
  1862. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.js +0 -2
  1863. package/lib/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.js.map +0 -1
  1864. package/lib/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  1865. package/lib/components/CarouselCatalogCard/CatalogCard.js +0 -18
  1866. package/lib/components/CarouselCatalogCard/CatalogCard.js.map +0 -1
  1867. package/lib/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  1868. package/lib/components/CarouselProductCard/alignTextStyle.js +0 -2
  1869. package/lib/components/CarouselProductCard/alignTextStyle.js.map +0 -1
  1870. package/lib/components/CarouselProductCard/alignTextStyle.mobile.d.ts +0 -1
  1871. package/lib/components/CarouselProductCard/alignTextStyle.mobile.js +0 -2
  1872. package/lib/components/CarouselProductCard/alignTextStyle.mobile.js.map +0 -1
  1873. package/lib/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  1874. package/lib/components/ExchangeRateOffice/Currencies.js +0 -10
  1875. package/lib/components/ExchangeRateOffice/Currencies.js.map +0 -1
  1876. package/lib/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  1877. package/lib/components/ExchangeRateOffice/ExchangeRateOffice.js +0 -14
  1878. package/lib/components/ExchangeRateOffice/ExchangeRateOffice.js.map +0 -1
  1879. package/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  1880. package/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.js +0 -2
  1881. package/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.js.map +0 -1
  1882. package/lib/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  1883. package/lib/components/ExchangeRateOffice/renderCurrencies.js +0 -27
  1884. package/lib/components/ExchangeRateOffice/renderCurrencies.js.map +0 -1
  1885. package/lib/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  1886. package/lib/components/ExchangeRateOffice/renderTableHeader.js +0 -6
  1887. package/lib/components/ExchangeRateOffice/renderTableHeader.js.map +0 -1
  1888. package/lib/components/OfficeMap/OfficeMap.d.ts +0 -5
  1889. package/lib/components/OfficeMap/OfficeMap.js +0 -41
  1890. package/lib/components/OfficeMap/OfficeMap.js.map +0 -1
  1891. package/lib/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  1892. package/lib/components/OfficeMap/OfficeMapContent.js +0 -2
  1893. package/lib/components/OfficeMap/OfficeMapContent.js.map +0 -1
  1894. package/lib/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  1895. package/lib/components/OfficeMap/mockOfficeMap.js +0 -80
  1896. package/lib/components/OfficeMap/mockOfficeMap.js.map +0 -1
  1897. package/lib/components/OfficeMap/nearbyOffices.d.ts +0 -2
  1898. package/lib/components/OfficeMap/nearbyOffices.js +0 -7
  1899. package/lib/components/OfficeMap/nearbyOffices.js.map +0 -1
  1900. package/lib/components/OfficeMap/renderFunctions.d.ts +0 -5
  1901. package/lib/components/OfficeMap/renderFunctions.js +0 -15
  1902. package/lib/components/OfficeMap/renderFunctions.js.map +0 -1
  1903. package/lib/components/OfficeMap/useOfficeMap.d.ts +0 -59
  1904. package/lib/components/OfficeMap/useOfficeMap.js +0 -17
  1905. package/lib/components/OfficeMap/useOfficeMap.js.map +0 -1
  1906. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  1907. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +0 -10
  1908. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +0 -1
  1909. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  1910. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js +0 -2
  1911. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +0 -1
  1912. package/lib/components/TariffsTable/EmbeddableCellData.mobile.d.ts +0 -12
  1913. package/lib/components/TariffsTable/EmbeddableCellData.mobile.js +0 -18
  1914. package/lib/components/TariffsTable/EmbeddableCellData.mobile.js.map +0 -1
  1915. package/lib/components/TariffsTable/TariffsTable.mobile.d.ts +0 -5
  1916. package/lib/components/TariffsTable/TariffsTable.mobile.js +0 -16
  1917. package/lib/components/TariffsTable/TariffsTable.mobile.js.map +0 -1
  1918. package/lib/hooks/useBool.d.ts +0 -9
  1919. package/lib/hooks/useBool.js +0 -9
  1920. package/lib/hooks/useBool.js.map +0 -1
  1921. package/lib/hooks/useList.d.ts +0 -10
  1922. package/lib/hooks/useList.js +0 -10
  1923. package/lib/hooks/useList.js.map +0 -1
  1924. package/lib/hooks/useOutsideClick.d.ts +0 -3
  1925. package/lib/hooks/useOutsideClick.js +0 -20
  1926. package/lib/hooks/useOutsideClick.js.map +0 -1
  1927. package/lib/services/search/jaroWinklerDistance.js.map +0 -1
  1928. package/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  1929. package/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.js +0 -27
  1930. package/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.js.map +0 -1
  1931. package/lib/utils/useDebouncedEffect.d.ts +0 -1
  1932. package/lib/utils/useDebouncedEffect.js +0 -8
  1933. package/lib/utils/useDebouncedEffect.js.map +0 -1
  1934. package/mobile/bundle/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  1935. package/mobile/bundle/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  1936. package/mobile/bundle/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  1937. package/mobile/bundle/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  1938. package/mobile/bundle/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  1939. package/mobile/bundle/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  1940. package/mobile/bundle/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  1941. package/mobile/bundle/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  1942. package/mobile/bundle/components/OfficeMap/OfficeMap.d.ts +0 -5
  1943. package/mobile/bundle/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  1944. package/mobile/bundle/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  1945. package/mobile/bundle/components/OfficeMap/nearbyOffices.d.ts +0 -2
  1946. package/mobile/bundle/components/OfficeMap/renderFunctions.d.ts +0 -5
  1947. package/mobile/bundle/components/OfficeMap/useOfficeMap.d.ts +0 -59
  1948. package/mobile/bundle/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  1949. package/mobile/bundle/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  1950. package/mobile/bundle/hooks/useBool.d.ts +0 -9
  1951. package/mobile/bundle/hooks/useList.d.ts +0 -10
  1952. package/mobile/bundle/hooks/useOutsideClick.d.ts +0 -3
  1953. package/mobile/bundle/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  1954. package/mobile/bundle/utils/useDebouncedEffect.d.ts +0 -1
  1955. package/mobile/dist/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  1956. package/mobile/dist/components/BonusBenefitsBlock/bonusBenefitAlign.js +0 -4
  1957. package/mobile/dist/components/BonusBenefitsBlock/bonusBenefitAlign.js.map +0 -1
  1958. package/mobile/dist/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  1959. package/mobile/dist/components/CarouselCatalogCard/CatalogCard.js +0 -20
  1960. package/mobile/dist/components/CarouselCatalogCard/CatalogCard.js.map +0 -1
  1961. package/mobile/dist/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  1962. package/mobile/dist/components/CarouselProductCard/alignTextStyle.js +0 -4
  1963. package/mobile/dist/components/CarouselProductCard/alignTextStyle.js.map +0 -1
  1964. package/mobile/dist/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  1965. package/mobile/dist/components/ExchangeRateOffice/Currencies.js +0 -12
  1966. package/mobile/dist/components/ExchangeRateOffice/Currencies.js.map +0 -1
  1967. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  1968. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOffice.js +0 -16
  1969. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOffice.js.map +0 -1
  1970. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  1971. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.js +0 -2
  1972. package/mobile/dist/components/ExchangeRateOffice/ExchangeRateOfficeContent.js.map +0 -1
  1973. package/mobile/dist/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  1974. package/mobile/dist/components/ExchangeRateOffice/renderCurrencies.js +0 -30
  1975. package/mobile/dist/components/ExchangeRateOffice/renderCurrencies.js.map +0 -1
  1976. package/mobile/dist/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  1977. package/mobile/dist/components/ExchangeRateOffice/renderTableHeader.js +0 -9
  1978. package/mobile/dist/components/ExchangeRateOffice/renderTableHeader.js.map +0 -1
  1979. package/mobile/dist/components/OfficeMap/OfficeMap.d.ts +0 -5
  1980. package/mobile/dist/components/OfficeMap/OfficeMap.js +0 -43
  1981. package/mobile/dist/components/OfficeMap/OfficeMap.js.map +0 -1
  1982. package/mobile/dist/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  1983. package/mobile/dist/components/OfficeMap/OfficeMapContent.js +0 -2
  1984. package/mobile/dist/components/OfficeMap/OfficeMapContent.js.map +0 -1
  1985. package/mobile/dist/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  1986. package/mobile/dist/components/OfficeMap/mockOfficeMap.js +0 -82
  1987. package/mobile/dist/components/OfficeMap/mockOfficeMap.js.map +0 -1
  1988. package/mobile/dist/components/OfficeMap/nearbyOffices.d.ts +0 -2
  1989. package/mobile/dist/components/OfficeMap/nearbyOffices.js +0 -9
  1990. package/mobile/dist/components/OfficeMap/nearbyOffices.js.map +0 -1
  1991. package/mobile/dist/components/OfficeMap/renderFunctions.d.ts +0 -5
  1992. package/mobile/dist/components/OfficeMap/renderFunctions.js +0 -20
  1993. package/mobile/dist/components/OfficeMap/renderFunctions.js.map +0 -1
  1994. package/mobile/dist/components/OfficeMap/useOfficeMap.d.ts +0 -59
  1995. package/mobile/dist/components/OfficeMap/useOfficeMap.js +0 -20
  1996. package/mobile/dist/components/OfficeMap/useOfficeMap.js.map +0 -1
  1997. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  1998. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +0 -12
  1999. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +0 -1
  2000. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  2001. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js +0 -2
  2002. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +0 -1
  2003. package/mobile/dist/hooks/useBool.d.ts +0 -9
  2004. package/mobile/dist/hooks/useBool.js +0 -12
  2005. package/mobile/dist/hooks/useBool.js.map +0 -1
  2006. package/mobile/dist/hooks/useList.d.ts +0 -10
  2007. package/mobile/dist/hooks/useList.js +0 -13
  2008. package/mobile/dist/hooks/useList.js.map +0 -1
  2009. package/mobile/dist/hooks/useOutsideClick.d.ts +0 -3
  2010. package/mobile/dist/hooks/useOutsideClick.js +0 -23
  2011. package/mobile/dist/hooks/useOutsideClick.js.map +0 -1
  2012. package/mobile/dist/services/search/jaroWinklerDistance.js.map +0 -1
  2013. package/mobile/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  2014. package/mobile/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.js +0 -30
  2015. package/mobile/dist/ui-kit/BaseFiltration/checkShouldRenderBlock.js.map +0 -1
  2016. package/mobile/dist/utils/useDebouncedEffect.d.ts +0 -1
  2017. package/mobile/dist/utils/useDebouncedEffect.js +0 -11
  2018. package/mobile/dist/utils/useDebouncedEffect.js.map +0 -1
  2019. package/mobile/lib/components/BonusBenefitsBlock/bonusBenefitAlign.d.ts +0 -1
  2020. package/mobile/lib/components/BonusBenefitsBlock/bonusBenefitAlign.js +0 -2
  2021. package/mobile/lib/components/BonusBenefitsBlock/bonusBenefitAlign.js.map +0 -1
  2022. package/mobile/lib/components/CarouselCatalogCard/CatalogCard.d.ts +0 -9
  2023. package/mobile/lib/components/CarouselCatalogCard/CatalogCard.js +0 -18
  2024. package/mobile/lib/components/CarouselCatalogCard/CatalogCard.js.map +0 -1
  2025. package/mobile/lib/components/CarouselProductCard/alignTextStyle.d.ts +0 -1
  2026. package/mobile/lib/components/CarouselProductCard/alignTextStyle.js +0 -2
  2027. package/mobile/lib/components/CarouselProductCard/alignTextStyle.js.map +0 -1
  2028. package/mobile/lib/components/ExchangeRateOffice/Currencies.d.ts +0 -8
  2029. package/mobile/lib/components/ExchangeRateOffice/Currencies.js +0 -10
  2030. package/mobile/lib/components/ExchangeRateOffice/Currencies.js.map +0 -1
  2031. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOffice.d.ts +0 -5
  2032. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOffice.js +0 -14
  2033. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOffice.js.map +0 -1
  2034. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.d.ts +0 -36
  2035. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.js +0 -2
  2036. package/mobile/lib/components/ExchangeRateOffice/ExchangeRateOfficeContent.js.map +0 -1
  2037. package/mobile/lib/components/ExchangeRateOffice/renderCurrencies.d.ts +0 -3
  2038. package/mobile/lib/components/ExchangeRateOffice/renderCurrencies.js +0 -27
  2039. package/mobile/lib/components/ExchangeRateOffice/renderCurrencies.js.map +0 -1
  2040. package/mobile/lib/components/ExchangeRateOffice/renderTableHeader.d.ts +0 -2
  2041. package/mobile/lib/components/ExchangeRateOffice/renderTableHeader.js +0 -6
  2042. package/mobile/lib/components/ExchangeRateOffice/renderTableHeader.js.map +0 -1
  2043. package/mobile/lib/components/OfficeMap/OfficeMap.d.ts +0 -5
  2044. package/mobile/lib/components/OfficeMap/OfficeMap.js +0 -41
  2045. package/mobile/lib/components/OfficeMap/OfficeMap.js.map +0 -1
  2046. package/mobile/lib/components/OfficeMap/OfficeMapContent.d.ts +0 -38
  2047. package/mobile/lib/components/OfficeMap/OfficeMapContent.js +0 -2
  2048. package/mobile/lib/components/OfficeMap/OfficeMapContent.js.map +0 -1
  2049. package/mobile/lib/components/OfficeMap/mockOfficeMap.d.ts +0 -57
  2050. package/mobile/lib/components/OfficeMap/mockOfficeMap.js +0 -80
  2051. package/mobile/lib/components/OfficeMap/mockOfficeMap.js.map +0 -1
  2052. package/mobile/lib/components/OfficeMap/nearbyOffices.d.ts +0 -2
  2053. package/mobile/lib/components/OfficeMap/nearbyOffices.js +0 -7
  2054. package/mobile/lib/components/OfficeMap/nearbyOffices.js.map +0 -1
  2055. package/mobile/lib/components/OfficeMap/renderFunctions.d.ts +0 -5
  2056. package/mobile/lib/components/OfficeMap/renderFunctions.js +0 -15
  2057. package/mobile/lib/components/OfficeMap/renderFunctions.js.map +0 -1
  2058. package/mobile/lib/components/OfficeMap/useOfficeMap.d.ts +0 -59
  2059. package/mobile/lib/components/OfficeMap/useOfficeMap.js +0 -17
  2060. package/mobile/lib/components/OfficeMap/useOfficeMap.js.map +0 -1
  2061. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +0 -5
  2062. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +0 -10
  2063. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +0 -1
  2064. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +0 -11
  2065. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js +0 -2
  2066. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +0 -1
  2067. package/mobile/lib/hooks/useBool.d.ts +0 -9
  2068. package/mobile/lib/hooks/useBool.js +0 -9
  2069. package/mobile/lib/hooks/useBool.js.map +0 -1
  2070. package/mobile/lib/hooks/useList.d.ts +0 -10
  2071. package/mobile/lib/hooks/useList.js +0 -10
  2072. package/mobile/lib/hooks/useList.js.map +0 -1
  2073. package/mobile/lib/hooks/useOutsideClick.d.ts +0 -3
  2074. package/mobile/lib/hooks/useOutsideClick.js +0 -20
  2075. package/mobile/lib/hooks/useOutsideClick.js.map +0 -1
  2076. package/mobile/lib/services/search/jaroWinklerDistance.js.map +0 -1
  2077. package/mobile/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.d.ts +0 -1
  2078. package/mobile/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.js +0 -27
  2079. package/mobile/lib/ui-kit/BaseFiltration/checkShouldRenderBlock.js.map +0 -1
  2080. package/mobile/lib/utils/useDebouncedEffect.d.ts +0 -1
  2081. package/mobile/lib/utils/useDebouncedEffect.js +0 -8
  2082. package/mobile/lib/utils/useDebouncedEffect.js.map +0 -1
  2083. package/mobile/src/components/BonusBenefitsBlock/bonusBenefitAlign.ts +0 -1
  2084. package/mobile/src/components/CarouselCatalogCard/CatalogCard.ts +0 -22
  2085. package/mobile/src/components/CarouselProductCard/alignTextStyle.tsx +0 -1
  2086. package/mobile/src/components/ExchangeRateOffice/Currencies.ts +0 -8
  2087. package/mobile/src/components/ExchangeRateOffice/ExchangeRateOffice.example.json +0 -32
  2088. package/mobile/src/components/ExchangeRateOffice/ExchangeRateOffice.tsx +0 -62
  2089. package/mobile/src/components/ExchangeRateOffice/ExchangeRateOfficeContent.ts +0 -36
  2090. package/mobile/src/components/ExchangeRateOffice/renderCurrencies.tsx +0 -73
  2091. package/mobile/src/components/ExchangeRateOffice/renderTableHeader.tsx +0 -11
  2092. package/mobile/src/components/OfficeMap/OfficeMap.tsx +0 -76
  2093. package/mobile/src/components/OfficeMap/OfficeMapContent.ts +0 -42
  2094. package/mobile/src/components/OfficeMap/mockOfficeMap.ts +0 -79
  2095. package/mobile/src/components/OfficeMap/nearbyOffices.ts +0 -8
  2096. package/mobile/src/components/OfficeMap/renderFunctions.tsx +0 -75
  2097. package/mobile/src/components/OfficeMap/useOfficeMap.ts +0 -24
  2098. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.example.json +0 -49
  2099. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +0 -37
  2100. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.ui.json +0 -11
  2101. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +0 -14
  2102. package/mobile/src/hooks/useBool.ts +0 -19
  2103. package/mobile/src/hooks/useList.ts +0 -24
  2104. package/mobile/src/hooks/useOutsideClick.ts +0 -25
  2105. package/mobile/src/ui-kit/BaseFiltration/checkShouldRenderBlock.ts +0 -47
  2106. package/mobile/src/utils/useDebouncedEffect.ts +0 -14
  2107. package/src/components/BonusBenefitsBlock/bonusBenefitAlign.mobile.ts +0 -1
  2108. package/src/components/BonusBenefitsBlock/bonusBenefitAlign.ts +0 -1
  2109. package/src/components/CarouselCatalogCard/CatalogCard.ts +0 -22
  2110. package/src/components/CarouselProductCard/alignTextStyle.mobile.tsx +0 -1
  2111. package/src/components/CarouselProductCard/alignTextStyle.tsx +0 -1
  2112. package/src/components/ExchangeRateOffice/Currencies.ts +0 -8
  2113. package/src/components/ExchangeRateOffice/ExchangeRateOffice.example.json +0 -32
  2114. package/src/components/ExchangeRateOffice/ExchangeRateOffice.fixture.tsx +0 -79
  2115. package/src/components/ExchangeRateOffice/ExchangeRateOffice.tsx +0 -62
  2116. package/src/components/ExchangeRateOffice/ExchangeRateOfficeContent.ts +0 -36
  2117. package/src/components/ExchangeRateOffice/renderCurrencies.tsx +0 -73
  2118. package/src/components/ExchangeRateOffice/renderTableHeader.tsx +0 -11
  2119. package/src/components/OfficeMap/OfficeMap.fixture.tsx +0 -11
  2120. package/src/components/OfficeMap/OfficeMap.tsx +0 -76
  2121. package/src/components/OfficeMap/OfficeMapContent.ts +0 -42
  2122. package/src/components/OfficeMap/mockOfficeMap.ts +0 -79
  2123. package/src/components/OfficeMap/nearbyOffices.ts +0 -8
  2124. package/src/components/OfficeMap/renderFunctions.tsx +0 -75
  2125. package/src/components/OfficeMap/useOfficeMap.ts +0 -24
  2126. package/src/components/OfficeServicesBlock/OfficeServicesBlock.example.json +0 -49
  2127. package/src/components/OfficeServicesBlock/OfficeServicesBlock.fixture.tsx +0 -44
  2128. package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +0 -37
  2129. package/src/components/OfficeServicesBlock/OfficeServicesBlock.ui.json +0 -11
  2130. package/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +0 -14
  2131. package/src/components/TariffsTable/EmbeddableCellData.mobile.tsx +0 -45
  2132. package/src/components/TariffsTable/TariffsTable.mobile.tsx +0 -56
  2133. package/src/hooks/useBool.ts +0 -19
  2134. package/src/hooks/useList.ts +0 -24
  2135. package/src/hooks/useOutsideClick.ts +0 -25
  2136. package/src/ui-kit/BaseFiltration/checkShouldRenderBlock.ts +0 -47
  2137. package/src/utils/useDebouncedEffect.ts +0 -14
  2138. /package/bundle/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2139. /package/dist/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2140. /package/dist/{services/search → utils}/jaroWinklerDistance.js +0 -0
  2141. /package/lib/{components/ExchangeRateOffice/ExchangeRateOffice.fixture.d.ts → ui-kit/InnerTable/InnerTable.fixture.d.ts} +0 -0
  2142. /package/lib/{components/OfficeMap/OfficeMap.fixture.d.ts → ui-kit/InnerTable/InnerTable.fixture.mobile.d.ts} +0 -0
  2143. /package/lib/{components/OfficeServicesBlock/OfficeServicesBlock.fixture.d.ts → ui-kit/InnerTable/InnerTableButton.fixture.mobile.d.ts} +0 -0
  2144. /package/lib/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2145. /package/lib/{services/search → utils}/jaroWinklerDistance.js +0 -0
  2146. /package/mobile/bundle/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2147. /package/mobile/dist/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2148. /package/mobile/dist/{services/search → utils}/jaroWinklerDistance.js +0 -0
  2149. /package/mobile/lib/{services/search → utils}/jaroWinklerDistance.d.ts +0 -0
  2150. /package/mobile/lib/{services/search → utils}/jaroWinklerDistance.js +0 -0
  2151. /package/mobile/src/components/{ExchangeRateOffice/ExchangeRateOffice.ui.json → OfficesAtmsMap/OfficesAtmsMap.ui.json} +0 -0
  2152. /package/mobile/src/components/{OfficeMap/OfficeMap.ui.json → OfficesAtmsMap/OfficesAtmsMaps.example.json} +0 -0
  2153. /package/mobile/src/{services/search → utils}/jaroWinklerDistance.ts +0 -0
  2154. /package/src/components/{ExchangeRateOffice/ExchangeRateOffice.ui.json → OfficesAtmsMap/OfficesAtmsMap.ui.json} +0 -0
  2155. /package/src/components/{OfficeMap/OfficeMap.ui.json → OfficesAtmsMap/OfficesAtmsMaps.example.json} +0 -0
  2156. /package/src/{services/search → utils}/jaroWinklerDistance.ts +0 -0
@@ -4,22 +4,22 @@
4
4
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.UniBlocks = {}));
5
5
  })(this, (function (exports) { 'use strict';
6
6
 
7
- let _hooks;
8
- const setupHooks = (_) => {
9
- _hooks = _;
10
- };
11
- const lazyHook = (name) => (...args) => _hooks[name](...args);
12
- const useState = lazyHook('useState');
13
- const useEffect = lazyHook('useEffect');
14
- const useCallback = lazyHook('useCallback');
15
- const useMemo = lazyHook('useMemo');
7
+ let _hooks;
8
+ const setupHooks = (_) => {
9
+ _hooks = _;
10
+ };
11
+ const lazyHook = (name) => (...args) => _hooks[name](...args);
12
+ const useState = lazyHook('useState');
13
+ const useEffect = lazyHook('useEffect');
14
+ const useCallback = lazyHook('useCallback');
15
+ const useMemo = lazyHook('useMemo');
16
16
  const useRef = lazyHook('useRef');
17
17
 
18
- const setup = (_jsx, _jsxs) => {
19
- globalThis._uni = {
20
- _jsx,
21
- _jsxs: _jsxs || _jsx
22
- };
18
+ const setup = (_jsx, _jsxs) => {
19
+ globalThis._uni = {
20
+ _jsx,
21
+ _jsxs: _jsxs || _jsx
22
+ };
23
23
  };
24
24
 
25
25
  const getGeolocation = async () => new Promise((resolve) => navigator.geolocation.getCurrentPosition(({ coords }) => resolve(coords)));
@@ -225,22 +225,22 @@
225
225
  const jsx = (...args) => globalThis._uni._jsx(...args);
226
226
  const jsxs = (...args) => globalThis._uni._jsxs(...args);
227
227
 
228
- const JSX = (Component) => {
229
- const Internal = Component;
230
- if (!Internal._tmpl) {
231
- Internal._tmpl = globalThis.__UNI_REACT__ ? Component : VueTmpl(Component);
232
- }
233
- return Internal._tmpl;
234
- };
235
- const VueTmpl = (Component) => {
236
- function JSXTmpl(rawProps, context) {
237
- const { children: rawChildren, ...props } = rawProps || {};
238
- const defaultSlot = context?.slots?.default; // Vue
239
- const children = rawChildren || (defaultSlot && defaultSlot());
240
- return Component(Object.assign(props, children && { children }), context);
241
- }
242
- JSXTmpl.inheritAttrs = false;
243
- return JSXTmpl;
228
+ const JSX = (Component) => {
229
+ const Internal = Component;
230
+ if (!Internal._tmpl) {
231
+ Internal._tmpl = globalThis.__UNI_REACT__ ? Component : VueTmpl(Component);
232
+ }
233
+ return Internal._tmpl;
234
+ };
235
+ const VueTmpl = (Component) => {
236
+ function JSXTmpl(rawProps, context) {
237
+ const { children: rawChildren, ...props } = rawProps || {};
238
+ const defaultSlot = context?.slots?.default; // Vue
239
+ const children = rawChildren || (defaultSlot && defaultSlot());
240
+ return Component(Object.assign(props, children && { children }), context);
241
+ }
242
+ JSXTmpl.inheritAttrs = false;
243
+ return JSXTmpl;
244
244
  };
245
245
 
246
246
  function CorporateLeadAPI() {
@@ -356,7 +356,7 @@
356
356
 
357
357
  const headingTag = (tag) => tag;
358
358
 
359
- const styles$4 = {
359
+ const styles$3 = {
360
360
  h0: 'text-h0',
361
361
  h1: 'text-h1',
362
362
  h2: 'text-h2',
@@ -367,7 +367,7 @@
367
367
  };
368
368
  const Heading = JSX(({ className = '', headingType = 'h3', as = 'h3', title, children }) => {
369
369
  const Tag = headingTag(as);
370
- return (jsx(Tag, { className: style('font-sans m-0', styles$4[headingType], className), children: title || children }));
370
+ return (jsx(Tag, { className: style('font-sans m-0', styles$3[headingType], className), children: title || children }));
371
371
  });
372
372
 
373
373
  const identity = (_) => _;
@@ -427,65 +427,69 @@
427
427
 
428
428
  const isFilled = (_) => _ !== null && _ !== undefined;
429
429
 
430
- const defaultCache = new Map();
431
- const applyCache = (fetcher, cache = defaultCache) => (key) => {
432
- const cachedData = cache.get(key);
433
- if (isFilled(cachedData)) {
434
- return cachedData;
435
- }
436
- const data = fetcher(key);
437
- if (isFilled(data)) {
438
- cache.set(key, Promise.resolve(data));
439
- }
440
- else {
441
- cache.delete(key);
442
- }
443
- return data;
444
- };
445
-
446
- const isSimpleKey = (args) => Boolean(args && Array.isArray(args) && args.length === 1 && typeof args[0] === 'string');
447
- function useAsyncData(key, fetcher, { fallback, cache } = {}) {
448
- const args = useMemo(() => keyToArgs(key), [key]);
449
- const [simpleKey] = isSimpleKey(args) ? args : [];
450
- const [data, setData] = useState(undefined);
451
- const [error, setError] = useState(undefined);
452
- useEffect(() => {
453
- const isEmptyKey = !args.some(isFilled);
454
- if (isEmptyKey) {
455
- return;
456
- }
457
- (async () => {
458
- try {
459
- const newData = await (simpleKey
460
- ? applyCache(fetcher, cache)(simpleKey)
461
- : fetcher(...args));
462
- setData(newData);
463
- setError(undefined);
464
- }
465
- catch (err) {
466
- setData(undefined);
467
- setError(err);
468
- }
469
- })();
470
- }, [fetcher, cache, args]);
471
- const fallbackData = fallback && simpleKey && fallback[simpleKey];
472
- return {
473
- data: !data && fallbackData ? fallbackData : data,
474
- error,
475
- mutate: () => Promise.resolve(undefined),
476
- isValidating: false
477
- };
478
- }
479
- function keyToArgs(key) {
480
- if (Array.isArray(key)) {
481
- return key;
482
- }
483
- else if (key instanceof Function) {
484
- return keyToArgs(key());
485
- }
486
- else {
487
- return [key];
488
- }
430
+ const defaultCache = new Map();
431
+ const applyCache = (fetcher, cache = defaultCache) => (key) => {
432
+ const cachedData = cache.get(key);
433
+ if (isFilled(cachedData)) {
434
+ return cachedData;
435
+ }
436
+ const data = fetcher(key);
437
+ if (isFilled(data)) {
438
+ cache.set(key, Promise.resolve(data));
439
+ }
440
+ else {
441
+ cache.delete(key);
442
+ }
443
+ return data;
444
+ };
445
+
446
+ const isSimpleKey = (args) => Boolean(args && Array.isArray(args) && args.length === 1 && typeof args[0] === 'string');
447
+ function useAsyncData(key, fetcher, { fallback, cache } = {}) {
448
+ const args = useMemo(() => keyToArgs(key), [key]);
449
+ const [simpleKey] = isSimpleKey(args) ? args : [];
450
+ const [data, setData] = useState(undefined);
451
+ const [error, setError] = useState(undefined);
452
+ useEffect(() => {
453
+ const isEmptyKey = !args.some(isFilled);
454
+ if (isEmptyKey) {
455
+ return;
456
+ }
457
+ let canceled = false;
458
+ const setResult = (newData, err) => {
459
+ if (!canceled) {
460
+ setData(newData);
461
+ setError(err);
462
+ }
463
+ };
464
+ (async () => {
465
+ try {
466
+ setResult(await (simpleKey ? applyCache(fetcher, cache)(simpleKey) : fetcher(...args)));
467
+ }
468
+ catch (err) {
469
+ setResult(undefined, err);
470
+ }
471
+ })();
472
+ return () => {
473
+ canceled = true;
474
+ };
475
+ }, [fetcher, cache, args]);
476
+ const fallbackData = fallback && simpleKey && fallback[simpleKey];
477
+ return {
478
+ data: !data && fallbackData ? fallbackData : data,
479
+ error,
480
+ mutate: () => Promise.resolve(undefined) // TODO Clean up cache
481
+ };
482
+ }
483
+ function keyToArgs(key) {
484
+ if (Array.isArray(key)) {
485
+ return key;
486
+ }
487
+ else if (key instanceof Function) {
488
+ return keyToArgs(key());
489
+ }
490
+ else {
491
+ return [key];
492
+ }
489
493
  }
490
494
 
491
495
  async function fetchJSON(url, options) {
@@ -505,14 +509,14 @@
505
509
  'Content-Type': 'application/json',
506
510
  },
507
511
  });
508
- return await response.json();
512
+ return response.json();
509
513
  }
510
514
 
511
515
  const REGIONS_URL$1 = '/api/v1/regions';
512
- const EMPTY_VALUE$3 = [];
516
+ const EMPTY_VALUE$4 = [];
513
517
  function useGetRegions() {
514
518
  const { data } = useAsyncData(REGIONS_URL$1, fetchJSONUnsafe);
515
- return data || EMPTY_VALUE$3;
519
+ return data || EMPTY_VALUE$4;
516
520
  }
517
521
 
518
522
  const useDialogManager = () => ({
@@ -731,7 +735,7 @@
731
735
  const innValidator = validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(ERROR_MESSAGE);
732
736
  const phoneValidator = pattern(/^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/)(ERROR_MESSAGE);
733
737
 
734
- const renderAcquiringDataOrganization = (field) => (jsxs("div", { className: "sm:flex sm:justify-between sm:gap-lg", children: [jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) })] }), jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] })] }));
738
+ const renderAcquiringDataOrganization = (field) => (jsxs("div", { className: "@xl:flex @xl:justify-between @xl:gap-lg", children: [jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) })] }), jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] })] }));
735
739
 
736
740
  const ACQUIRING_TYPES = [
737
741
  {
@@ -751,33 +755,73 @@
751
755
  },
752
756
  ];
753
757
 
754
- function useBool(defaultValue = false) {
755
- const [value, setValue] = useState(defaultValue);
756
- const setTrue = useCallback(() => setValue(true), []);
757
- const setFalse = useCallback(() => setValue(false), []);
758
- const toggle = useCallback(() => setValue((_) => !_), []);
759
- return [value, { setValue, setTrue, setFalse, toggle }];
758
+ function useBool(defaultValue = false) {
759
+ const [value, setValue] = useState(defaultValue);
760
+ const setTrue = useCallback(() => setValue(true), []);
761
+ const setFalse = useCallback(() => setValue(false), []);
762
+ const toggle = useCallback(() => setValue(_ => !_), []);
763
+ return [value, { setValue, setTrue, setFalse, toggle }];
760
764
  }
761
765
 
762
- function useOutsideClick(onClick) {
763
- const targetRef = useRef(null);
764
- useEffect(() => {
765
- const handleClickOutside = (event) => {
766
- if (targetRef &&
767
- targetRef.current &&
768
- event.target instanceof Node &&
769
- !targetRef.current.contains(event.target)) {
770
- onClick();
771
- }
772
- };
773
- document.addEventListener('click', handleClickOutside);
774
- return () => {
775
- document.removeEventListener('click', handleClickOutside);
776
- };
777
- }, [onClick]);
778
- return targetRef;
766
+ const isOnlyDigits = (str) => str && !/\D/.test(str);
767
+
768
+ const svgUseStyleMap = {
769
+ normal: '',
770
+ color: 'text-primary-main',
771
+ black: 'text-black',
772
+ white: 'text-black',
773
+ };
774
+ const Icon = JSX(({ className = '', imageClassName = '', name = '', alt = `Иконка ${name}`, title = alt, iconVersion = 'color', width, height, }) => {
775
+ const router = useRouter();
776
+ const href = adjustHref(router)(joinPath(projectSettings.CDN, '/icons', `${name}.svg`));
777
+ if (iconVersion !== 'normal') {
778
+ return (jsx(Background, { className: className, children: jsxs("svg", { className: style(getSvgSize(width), svgUseStyleMap[iconVersion], iconVersion === 'white' ? 'invert' : '', imageClassName), width: width, height: height, "aria-hidden": "true", children: [title ? jsx("title", { children: title }) : null, alt ? jsx("desc", { children: alt }) : null, jsx("use", { href: `${href}#icon`, xlinkHref: `${href}#icon` })] }) }));
779
+ }
780
+ return (jsx("img", { className: className, src: href, alt: alt, title: title, "aria-hidden": "true", width: width, height: height, style: getInlineStyle(className, height) }));
781
+ });
782
+ const getInlineStyle = (className, height) => {
783
+ if (className?.includes('h-')) {
784
+ return {};
785
+ }
786
+ return { height: isOnlyDigits(height) ? `${height}px` : height };
787
+ };
788
+ const getSvgSize = (width) => (width ? '' : 'w-full h-full');
789
+ const Background = JSX(({ className, children }) => className ? jsx("div", { className: className, children: children }) : children);
790
+
791
+ const formatOption = (_) => _?.text || _?.key || '';
792
+
793
+ function useEventListener(target, type, listener, options) {
794
+ useEffect(() => {
795
+ if (!target || !listener) {
796
+ return;
797
+ }
798
+ target.addEventListener(type, listener, options);
799
+ return () => {
800
+ target.removeEventListener(type, listener, options);
801
+ };
802
+ }, [target, type, listener]);
779
803
  }
780
804
 
805
+ function useOutsideClick(onClick) {
806
+ const targetRef = useRef(null);
807
+ const handleClickOutside = useCallback((event) => {
808
+ if (targetRef && targetRef.current && event.target instanceof Node && !targetRef.current.contains(event.target)) {
809
+ onClick();
810
+ }
811
+ }, [onClick]);
812
+ useEventListener(globalThis.document, 'click', handleClickOutside);
813
+ return targetRef;
814
+ }
815
+
816
+ const usePopupManager = () => ({
817
+ open: (popup, options) => defaultEventBus.fire('popup', { type: 'open', popup, ...options }),
818
+ update: (popup, options) => defaultEventBus.fire('popup', { type: 'update', popup, ...options }),
819
+ close: () => defaultEventBus.fire('popup', { type: 'close' }),
820
+ });
821
+
822
+ const compareBy = (indexOf) => (a, b) => indexOf(a) - indexOf(b);
823
+ const desc = (cmp) => (a, b) => -cmp(a, b);
824
+
781
825
  const JARO_WINKLER_P = 0.1;
782
826
  const JARO_WINKLER_MAX_L = 4;
783
827
  const jaroWinklerDistance = (s1) => (s2) => {
@@ -842,62 +886,76 @@
842
886
  return prefixL;
843
887
  }
844
888
 
845
- const isOnlyDigits = (str) => str && !/\D/.test(str);
889
+ function zip(firstCol, ...restCols) {
890
+ return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
891
+ }
846
892
 
847
- const svgUseStyleMap = {
848
- normal: '',
849
- color: 'text-primary-main',
850
- black: 'text-black',
851
- white: 'text-black',
852
- };
853
- const Icon = JSX(({ className = '', imageClassName = '', name = '', alt = `Иконка ${name}`, title = alt, iconVersion = 'color', width, height, }) => {
854
- const router = useRouter();
855
- const href = adjustHref(router)(joinPath(projectSettings.CDN, '/icons', `${name}.svg`));
856
- if (iconVersion !== 'normal') {
857
- return (jsx(Background, { className: className, children: jsxs("svg", { className: style(getSvgSize(width), svgUseStyleMap[iconVersion], iconVersion === 'white' ? 'invert' : '', imageClassName), width: width, height: height, "aria-hidden": "true", children: [title ? jsx("title", { children: title }) : null, alt ? jsx("desc", { children: alt }) : null, jsx("use", { href: `${href}#icon`, xlinkHref: `${href}#icon` })] }) }));
858
- }
859
- return (jsx("img", { className: className, src: href, alt: alt, title: title, "aria-hidden": "true", width: width, height: height, style: getInlineStyle(className, height) }));
860
- });
861
- const getInlineStyle = (className, height) => {
862
- if (className?.includes('h-')) {
863
- return {};
893
+ const filterOptions = (options, query) => {
894
+ if (!options?.length || !query?.trim()) {
895
+ return options;
864
896
  }
865
- return { height: isOnlyDigits(height) ? `${height}px` : height };
897
+ const ranking = options
898
+ .map((_) => _.text?.toLowerCase())
899
+ .map(jaroWinklerDistance(query?.trim().toLowerCase()));
900
+ return zip(options, ranking)
901
+ .filter(([, rank]) => rank >= 0.5)
902
+ .sort(desc(compareBy(([, rank]) => rank)))
903
+ .map(([option]) => option);
866
904
  };
867
- const getSvgSize = (width) => (width ? '' : 'w-full h-full');
868
- const Background = JSX(({ className, children }) => className ? jsx("div", { className: className, children: children }) : children);
869
905
 
870
- const Select = JSX(({ className = '', label, options = [], value, valid = true, isBorder = true, placeholder = '', onChange, isSearch = false, }) => {
871
- const [isOpen, { setFalse: close, toggle }] = useBool();
872
- const [searchValue, setSearchValue] = useState('');
873
- const reset = useCallback(() => {
874
- close();
875
- setSearchValue('');
876
- }, []);
877
- const wrapperRef = useOutsideClick(reset);
906
+ const SelectPopup = JSX(({ popupRef, options, value, query, onChange }) => options?.length ? (jsx("div", { className: "bg-white text-l max-h-64 overflow-y-auto overflow-x-hidden rounded-md shadow-[0_4px_25px_rgba(0,0,0,0.07)]", role: "listbox", ref: popupRef, children: filterOptions(options, query).map((option) => (jsxs("div", { className: "flex px-m py-s cursor-pointer hover:bg-main-divider pr-5xl relative", role: "option", "aria-selected": option.key === value?.key, onClick: () => onChange && onChange(option), children: [jsx("span", { className: "min-h-6", children: formatOption(option) }), jsx(Icon, { name: "DoneSimpleIcon", width: "16", height: "16", className: style('absolute right-4 pt-3xs', option.key === value?.key ? '' : 'hidden') })] }, option.key))) })) : null);
907
+
908
+ function useSelectPopup({ isOpen, options, value, query, onChange, onClose, }) {
909
+ const popup = usePopupManager();
910
+ const close = useCallback(() => {
911
+ popup.close();
912
+ onClose && onClose();
913
+ }, [onClose]);
878
914
  const handleChange = useCallback((option) => {
879
- reset();
915
+ close();
880
916
  onChange && onChange(option);
881
- }, [onChange]);
882
- const isSelected = (option) => option.key === value?.key;
883
- return (jsxs("div", { className: className, ref: wrapperRef, children: [renderLabel(label), jsxs("div", { className: style('relative', isOpen ? 'z-20' : 'z-10'), children: [jsxs("div", { className: style('text-l flex justify-between items-center text-primary-text cursor-pointer relative z-10', getBorderStyle(isBorder, valid)), onClick: toggle, children: [jsx("p", { className: "p-m pr-3xl h-14 overflow-hidden text-ellipsis whitespace-nowrap", children: formatOption(value) || placeholder }), jsx(Icon, { className: style('absolute right-3', isOpen ? '' : 'rotate-180'), name: "ArrowUpIcon", width: "16", height: "16" })] }), isSearch ? renderSearch(isOpen, searchValue, setSearchValue) : null, options?.length ? (jsx("div", { className: style('h-0', isOpen ? '' : 'overflow-hidden'), children: jsx("div", { className: "bg-white text-l max-h-64 overflow-y-auto overflow-x-hidden rounded-md shadow-[0_4px_25px_rgba(0,0,0,0.07)]", children: getFilteredOptions(options, searchValue).map(renderOption(handleChange, isOpen, isSelected)) }) })) : null] })] }));
917
+ }, [close, onChange]);
918
+ const inputRef = useRef(null);
919
+ const popupRef = useOutsideClick(close);
920
+ useEffect(() => {
921
+ if (!isOpen || !inputRef.current) {
922
+ return;
923
+ }
924
+ const inputElement = inputRef.current;
925
+ const { top, left, width, height } = inputElement.getBoundingClientRect();
926
+ popup.update(jsx(SelectPopup, { popupRef: popupRef, options: options, value: value, query: query, onChange: handleChange }), {
927
+ top: top + window.scrollY + height,
928
+ left,
929
+ width,
930
+ });
931
+ }, [isOpen, options, value, query, handleChange]);
932
+ return inputRef;
933
+ }
934
+
935
+ const Select = JSX(({ className, label, options = [], value, valid = true, isBorder = true, placeholder = '', isSearch = false, onChange, }) => {
936
+ const [isOpen, { setFalse: close, setTrue: open }] = useBool();
937
+ const [query, setQuery] = useState('');
938
+ const handleClose = useCallback(() => {
939
+ setQuery('');
940
+ close();
941
+ }, []);
942
+ const inputRef = useSelectPopup({
943
+ isOpen,
944
+ options,
945
+ value,
946
+ query,
947
+ onChange,
948
+ onClose: handleClose,
949
+ });
950
+ return (jsxs("div", { className: className, children: [renderLabel(label), jsxs("div", { className: style('relative', isOpen ? 'z-20' : 'z-10'), ref: inputRef, children: [jsxs("div", { className: style('text-l flex justify-between items-center text-primary-text cursor-pointer relative z-10', getBorderStyle(isBorder, valid)), onClick: isOpen ? handleClose : open, children: [jsx("p", { className: "p-m pr-3xl flex items-center overflow-hidden text-ellipsis whitespace-nowrap", children: formatOption(value) || placeholder }), renderIcon$1(isOpen)] }), isSearch && isOpen ? (jsx("div", { className: style('absolute top-0 w-full z-20'), children: jsx(Input, { type: "text", autoFocus: true, value: query, onChange: setQuery }) })) : null] })] }));
884
951
  });
885
952
  const renderLabel = (label) => label ? (jsx("div", { className: "mb-xs", children: jsx(Text, { size: "text-m", color: "text-primary-text", font: "font-light", children: label }) })) : null;
886
- const getFilteredOptions = (options, searchValue) => {
887
- return searchValue
888
- ? options.filter((_) => jaroWinklerDistance(_.text?.toLowerCase())(searchValue.toLowerCase()) >= 0.6)
889
- : options;
890
- };
891
- const renderSearch = (isOpen, searchValue, setSearchValue) => isOpen ? (jsx("div", { className: style('absolute top-0 w-full h-full z-20'), children: jsx(Input, { type: "text", autoFocus: true, value: searchValue, onChange: setSearchValue }) })) : null;
892
- const renderOption = (handleChange, isOpen, isSelected) => (option, i) => (jsxs("div", { onClick: () => {
893
- handleChange(option);
894
- }, className: "flex px-m py-s cursor-pointer hover:bg-main-divider pr-5xl relative", children: [jsx("span", { className: "min-h-6", children: formatOption(option) }), jsx(Icon, { name: "DoneSimpleIcon", width: "16", height: "16", className: style('absolute right-4 pt-3xs', isSelected(option) && isOpen ? '' : 'hidden') })] }, String(i)));
895
- const formatOption = (_) => _?.text || _?.key || '';
953
+ const renderIcon$1 = (isOpen) => (jsx(Icon, { className: style('absolute right-3', isOpen ? '' : 'rotate-180'), name: "ArrowUpIcon", width: "16", height: "16" }));
896
954
  const getBorderStyle = (isBorder, valid) => style(isBorder ? 'border rounded-md hover:border-primary-hover' : '', valid ? ' border-gray' : 'border-error');
897
955
 
898
956
  const SelectControl = JSX(({ className = '', error, ...rest }) => (jsxs("div", { className: className, children: [jsx(Select, { ...rest, valid: !error }), jsx("div", { className: "h-2", children: error ? (jsx(Text, { size: "text-xs", font: "font-light", color: "text-error", children: error })) : null })] })));
899
957
 
900
- const renderAcquiringRegion = ({ regions, field }) => (jsxs("div", { className: "border-b border-b-main-divider sm:border-none sm:flex sm:justify-between gap-lg ", children: [jsx("div", { className: "sm:w-1/2", children: jsx(SelectControl, { label: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433", options: ACQUIRING_TYPES.map(({ name: key = '' }) => ({ key, text: key })), ...withValidator(field('acquiringType'), defaultValidator) }) }), jsx("div", { className: "sm:w-1/2", children: jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441", options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }) })] }));
958
+ const renderAcquiringRegion = ({ regions, field }) => (jsxs("div", { className: "border-b border-b-main-divider @xl:border-none @xl:flex @xl:justify-between gap-lg ", children: [jsx("div", { className: "@xl:w-1/2", children: jsx(SelectControl, { label: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433", options: ACQUIRING_TYPES.map(({ name: key = '' }) => ({ key, text: key })), ...withValidator(field('acquiringType'), defaultValidator) }) }), jsx("div", { className: "@xl:w-1/2", children: jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441", options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }) })] }));
901
959
 
902
960
  const SlideCheckbox = JSX(({ value = false, text, type = 'checkbox', onChange }) => (jsxs("div", { role: type, "aria-checked": value, className: "flex justify-start items-center w-full cursor-pointer mb-s", onClick: () => onChange && onChange(!value), children: [jsx("div", { className: style('relative flex-shrink-0 duration-300 w-9 h-5 mr-s rounded-2xl', value ? 'bg-primary-main' : 'bg-main-divider'), children: jsx("div", { className: style('absolute opacity-80 duration-500 top-0.5 w-4 h-4 bg-white rounded-full', value ? 'left-1/2' : 'left-[5%]') }) }), jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })] })));
903
961
 
@@ -908,7 +966,7 @@
908
966
  className: 'text-white',
909
967
  version: button?.version,
910
968
  });
911
- return (jsx("button", { type: "submit", className: style('p-m w-full sm:w-auto', buttonStyle, className), children: button?.text ? button.text : 'Отправить заявку' }));
969
+ return (jsx("button", { type: "submit", className: style('p-m w-full @xl:w-auto', buttonStyle, className), children: button?.text ? button.text : 'Отправить заявку' }));
912
970
  };
913
971
 
914
972
  const initialFormState$4 = {
@@ -940,15 +998,15 @@
940
998
  fullName,
941
999
  inn,
942
1000
  name,
943
- phone,
1001
+ phone: phone.replace(/[^+\d]/g, ''),
944
1002
  });
945
1003
  }, [onSubmit]);
946
1004
  const [, { field, ...formProps }] = useForm(initialFormState$4, handleSubmit);
947
1005
  const regions = useGetRegions();
948
- return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430 \u0438 \u0440\u0435\u0433\u0438\u043E\u043D", className: "sm:text-center" }), renderAcquiringRegion({ regions, field }), jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "sm:text-center" }), renderAcquiringDataOrganization(field), renderSlideCheckboxes(field), renderSubmitButton(button), jsx(Footnote, { link: link })] }));
1006
+ return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430 \u0438 \u0440\u0435\u0433\u0438\u043E\u043D", className: "@xl:text-center" }), renderAcquiringRegion({ regions, field }), jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "@xl:text-center" }), renderAcquiringDataOrganization(field), renderSlideCheckboxes(field), renderSubmitButton(button), jsx(Footnote, { link: link })] }));
949
1007
  });
950
1008
 
951
- const renderBusinessCardDataOrganization = (field) => (jsxs("div", { className: "sm:flex sm:justify-between sm:gap-lg", children: [jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) })] }), jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...withValidator(field('mail'), defaultValidator) })] })] }));
1009
+ const renderBusinessCardDataOrganization = (field) => (jsxs("div", { className: "@xl:flex @xl:justify-between @xl:gap-lg", children: [jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) })] }), jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...withValidator(field('mail'), defaultValidator) })] })] }));
952
1010
 
953
1011
  const renderRegion$1 = ({ regions, field }) => (jsx(SelectControl, { className: "w-full", label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }));
954
1012
 
@@ -974,9 +1032,9 @@
974
1032
  typeForm: 'bcrd',
975
1033
  region: region?.text || '',
976
1034
  name,
977
- phone,
978
1035
  inn,
979
1036
  mail,
1037
+ phone: phone.replace(/[^+\d]/g, ''),
980
1038
  });
981
1039
  }, [onSubmit]);
982
1040
  const [, { field, ...formProps }] = useForm(initialFormState$3, handleSubmit);
@@ -985,14 +1043,14 @@
985
1043
  });
986
1044
 
987
1045
  const BRANCHES_URL = '/api/v1/branches';
988
- const EMPTY_VALUE$2 = [];
1046
+ const EMPTY_VALUE$3 = [];
989
1047
  function useBranches(regionCode) {
990
1048
  const { data } = useAsyncData(regionCode ? `${BRANCHES_URL}?regionCode=${regionCode}` : null, fetchSafeBoxes$1);
991
- return data || EMPTY_VALUE$2;
1049
+ return data || EMPTY_VALUE$3;
992
1050
  }
993
1051
  const fetchSafeBoxes$1 = async (url) => {
994
1052
  const result = await fetchJSON(url, { method: 'GET' });
995
- return result || EMPTY_VALUE$2;
1053
+ return result || EMPTY_VALUE$3;
996
1054
  };
997
1055
 
998
1056
  const MIN_CREDIT_AMOUNT = 1000;
@@ -1002,7 +1060,7 @@
1002
1060
  const MAX_CREDIT_TERM = 180;
1003
1061
  const ITEMS_CREDIT_TERM = ['От 1 мес', 'До 15 лет'];
1004
1062
 
1005
- const renderCreditDataOrganization = (field) => (jsxs("div", { className: "pb-2xs border-b border-b-main-divider sm:flex sm:justify-between sm:gap-lg sm:border-none sm:pb-0", children: [jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] }), jsxs("div", { className: "sm:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0413\u043E\u0434\u043E\u0432\u0430\u044F \u0432\u044B\u0440\u0443\u0447\u043A\u0430, \u20BD", ...withValidator(field('annualRevenue'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...field('mail') })] })] }));
1063
+ const renderCreditDataOrganization = (field) => (jsxs("div", { className: "pb-2xs border-b border-b-main-divider @xl:flex @xl:justify-between @xl:gap-lg @xl:border-none @xl:pb-0", children: [jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] }), jsxs("div", { className: "@xl:w-1/2 space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0413\u043E\u0434\u043E\u0432\u0430\u044F \u0432\u044B\u0440\u0443\u0447\u043A\u0430, \u20BD", ...withValidator(field('annualRevenue'), defaultValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442\u043D\u043E\u0435 \u043B\u0438\u0446\u043E", ...withValidator(field('name'), nameValidator) }), jsx(InputControl, { className: "shrink-0 w-full", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...field('mail') })] })] }));
1006
1064
 
1007
1065
  const useNormalizedInput = (props, { normalize, format }) => {
1008
1066
  const { value, onFocus, onBlur, onChange } = props;
@@ -1066,9 +1124,9 @@
1066
1124
  const closestValue = (list) => (_) => list.reduce((prev, curr) => (Math.abs(curr - _) < Math.abs(prev - _) ? curr : prev));
1067
1125
  const renderRangeCaption = (items) => (jsx("div", { className: "flex justify-between my-xs", children: items.map((item, i) => (jsx(Text, { size: "text-s", font: "font-light", color: "text-secondary-text", children: item }, String(i)))) }));
1068
1126
 
1069
- const renderCreditParameters = (field) => (jsxs("div", { className: "border-b border-b-main-divider sm:flex sm:justify-between gap-lg sm:border-none", children: [jsxs("div", { className: "sm:w-1/2", children: [jsx("label", { children: jsx(Text, { size: "text-m", font: "font-light", children: "\u0421\u0443\u043C\u043C\u0430, \u20BD" }) }), jsx(InputRange, { items: ITEMS_CREDIT_AMOUNT, min: MIN_CREDIT_AMOUNT, max: MAX_CREDIT_AMOUNT, ...field('amount') })] }), jsxs("div", { className: "sm:w-1/2", children: [jsx("label", { children: jsx(Text, { size: "text-m", font: "font-light", children: "\u0421\u0440\u043E\u043A, \u043C\u0435\u0441\u044F\u0446\u0435\u0432" }) }), jsx(InputRange, { items: ITEMS_CREDIT_TERM, min: MIN_CREDIT_TERM, max: MAX_CREDIT_TERM, ...field('term') })] })] }));
1127
+ const renderCreditParameters = (field) => (jsxs("div", { className: "border-b border-b-main-divider @xl:border-none @xl:flex @xl:justify-between gap-lg", children: [jsxs("div", { className: "@xl:w-1/2", children: [jsx("label", { children: jsx(Text, { size: "text-m", font: "font-light", children: "\u0421\u0443\u043C\u043C\u0430, \u20BD" }) }), jsx(InputRange, { items: ITEMS_CREDIT_AMOUNT, min: MIN_CREDIT_AMOUNT, max: MAX_CREDIT_AMOUNT, ...field('amount') })] }), jsxs("div", { className: "@xl:w-1/2", children: [jsx("label", { children: jsx(Text, { size: "text-m", font: "font-light", children: "\u0421\u0440\u043E\u043A, \u043C\u0435\u0441\u044F\u0446\u0435\u0432" }) }), jsx(InputRange, { items: ITEMS_CREDIT_TERM, min: MIN_CREDIT_TERM, max: MAX_CREDIT_TERM, ...field('term') })] })] }));
1070
1128
 
1071
- const renderRegionDepartment = ({ regions, branches, field }) => (jsxs("div", { className: "sm:flex sm:justify-between sm:gap-m sm:mb-2xl sm:border-none sm:pb-0", children: [jsx("div", { className: "sm:w-1/2", children: jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }) }), jsx("div", { className: "sm:w-1/2", children: jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441", options: branches.map(({ branchCode = '', address = '' }) => ({
1129
+ const renderRegionDepartment = ({ regions, branches, field }) => (jsxs("div", { className: "@xl:flex @xl:justify-between @xl:gap-lg @xl:mb-2xl @xl:border-none @xl:pb-0", children: [jsx("div", { className: "@xl:w-1/2", children: jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }) }), jsx("div", { className: "@xl:w-1/2", children: jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441", options: branches.map(({ branchCode = '', address = '' }) => ({
1072
1130
  key: branchCode,
1073
1131
  text: address,
1074
1132
  })), ...withValidator(field('department'), defaultValidator) }) })] }));
@@ -1101,7 +1159,7 @@
1101
1159
  fullName,
1102
1160
  inn,
1103
1161
  name,
1104
- phone,
1162
+ phone: phone.replace(/[^+\d]/g, ''),
1105
1163
  mail,
1106
1164
  region: region?.text || '',
1107
1165
  department: department?.text || '',
@@ -1111,7 +1169,7 @@
1111
1169
  const [formState, { field, ...formProps }] = useForm(initialFormState$2, handleSubmit);
1112
1170
  const regions = useGetRegions();
1113
1171
  const branches = useBranches(formState.region?.key).filter((branch) => branch?.address);
1114
- return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B", className: "sm:text-center" }), renderCreditParameters(field), jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "sm:text-center" }), renderCreditDataOrganization(field), jsx(Heading, { headingType: "h6", title: "\u041E\u0444\u0438\u0441 \u0431\u0430\u043D\u043A\u0430", className: "sm:text-center" }), renderRegionDepartment({ regions, branches, field }), renderSubmitButton(button), jsx(Footnote, { link: link })] }));
1172
+ return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B", className: "@xl:text-center" }), renderCreditParameters(field), jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "@xl:text-center" }), renderCreditDataOrganization(field), jsx(Heading, { headingType: "h6", title: "\u041E\u0444\u0438\u0441 \u0431\u0430\u043D\u043A\u0430", className: "@xl:text-center" }), renderRegionDepartment({ regions, branches, field }), renderSubmitButton(button), jsx(Footnote, { link: link })] }));
1115
1173
  });
1116
1174
 
1117
1175
  const initialFormState$1 = {
@@ -1130,22 +1188,22 @@
1130
1188
  onSubmit({
1131
1189
  typeForm: 'dpst',
1132
1190
  name,
1133
- phone,
1191
+ phone: phone.replace(/[^+\d]/g, ''),
1134
1192
  });
1135
1193
  }, [onSubmit]);
1136
1194
  const [, { field, ...formProps }] = useForm(initialFormState$1, handleSubmit);
1137
- return (jsxs("form", { className: "container", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u041E\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u0437\u0430\u044F\u0432\u043A\u0443 \u0438 \u043C\u044B \u043E\u0442\u0432\u0435\u0442\u0438\u043C \u043D\u0430 \u043B\u044E\u0431\u044B\u0435 \u0432\u043E\u043F\u0440\u043E\u0441\u044B \u043F\u043E \u0434\u0435\u043F\u043E\u0437\u0438\u0442\u0430\u043C", className: "sm:text-center mb-m" }), jsxs("div", { className: "max-w-[560px] m-auto space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u043C\u044F", ...withValidator(field('name'), nameValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] }), jsxs("div", { className: "flex justify-between flex-col-reverse sm:items-center sm:flex-row max-w-[560px] m-auto", children: [jsx("div", { className: "flex-1", children: jsx(Footnote, { link: link }) }), renderSubmitButton(button)] })] }));
1195
+ return (jsxs("form", { className: "container", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u041E\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u0437\u0430\u044F\u0432\u043A\u0443 \u0438 \u043C\u044B \u043E\u0442\u0432\u0435\u0442\u0438\u043C \u043D\u0430 \u043B\u044E\u0431\u044B\u0435 \u0432\u043E\u043F\u0440\u043E\u0441\u044B \u043F\u043E \u0434\u0435\u043F\u043E\u0437\u0438\u0442\u0430\u043C", className: "@xl:text-center mb-m" }), jsxs("div", { className: "max-w-[560px] m-auto space-y-s", children: [jsx(InputControl, { className: "shrink-0 w-full", label: "\u0418\u043C\u044F", ...withValidator(field('name'), nameValidator) }), jsx(PhoneInputControl, { className: "shrink-0 w-full", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) })] }), jsxs("div", { className: "flex justify-between flex-col-reverse @xl:items-center @xl:flex-row max-w-[560px] m-auto", children: [jsx("div", { className: "flex-1", children: jsx(Footnote, { link: link }) }), renderSubmitButton(button)] })] }));
1138
1196
  });
1139
1197
 
1140
- const EMPTY_VALUE$1 = {};
1198
+ const EMPTY_VALUE$2 = {};
1141
1199
  const DEFAULT_FOLDER_NAME = 'wcms-resources';
1142
1200
  function useSWRResource(filename, options = {}) {
1143
- const { fallback = EMPTY_VALUE$1, folderName = DEFAULT_FOLDER_NAME, setBasePath = false } = options;
1201
+ const { fallback = EMPTY_VALUE$2, folderName = DEFAULT_FOLDER_NAME, setBasePath = false } = options;
1144
1202
  const path = joinPath('/', setBasePath ? projectSettings.BASE_PATH : '', folderName, `${filename}.json`);
1145
1203
  const { data } = useAsyncData(filename ? path : null, fetchJSONUnsafe, {
1146
1204
  fallback,
1147
1205
  });
1148
- return data || EMPTY_VALUE$1;
1206
+ return data || EMPTY_VALUE$2;
1149
1207
  }
1150
1208
 
1151
1209
  const ApplicationFormGrantSupport = JSX((props) => {
@@ -1157,7 +1215,7 @@
1157
1215
  version: button?.version,
1158
1216
  });
1159
1217
  const regionHref = regions?.find((_) => _.name === region.key)?.href;
1160
- return (jsxs("div", { className: "container space-y-s sm:space-y-lg", children: [regions ? (jsx(SelectControl, { label: "\u0412\u0430\u0448 \u0440\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions.map(({ name = '' }) => ({ key: name })), value: region, onChange: setRegion })) : null, regionHref ? (jsx("div", { className: "text-center", children: jsx(Button, { href: regionHref, target: "_blank", className: style('p-m w-full sm:w-auto', buttonStyle), children: button?.text ? button.text : 'Перейти' }) })) : null] }));
1218
+ return (jsxs("div", { className: "container space-y-s @xl:space-y-lg", children: [regions ? (jsx(SelectControl, { label: "\u0412\u0430\u0448 \u0440\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions.map(({ name = '' }) => ({ key: name })), value: region, onChange: setRegion })) : null, regionHref ? (jsx("div", { className: "text-center", children: jsx(Button, { href: regionHref, target: "_blank", className: style('p-m w-full @xl:w-auto', buttonStyle), children: button?.text ? button.text : 'Перейти' }) })) : null] }));
1161
1219
  });
1162
1220
 
1163
1221
  const sourcesComparator = (a, b) => a?.media && b?.media ? a.media - b.media : 0;
@@ -1188,70 +1246,73 @@
1188
1246
 
1189
1247
  const renderContacts = () => (jsxs("div", { className: "flex gap-xl", children: [jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", href: `tel:8 (800) 200-78-70`, "aria-label": "8 (800) 200-78-70", children: [jsx(Img, { image: { icon: 'PhoneIcon' }, width: "24", height: "24" }), jsx("span", { children: "8 (800) 200-78-70" })] }), jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", "aria-label": "ved@rshb.ru", href: `mailto:ved@rshb.ru`, children: [jsx(Img, { image: { icon: 'MailIcon' }, width: "24", height: "24" }), jsx("span", { children: "ved@rshb.ru" })] })] }));
1190
1248
 
1191
- const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
1192
- return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: className, viewBox: viewBox, fill: fill, width: width, height: height, children: paths.map(({ d, fill: pathFill, ...options }, i) => (jsx("path", { d: d, fill: pathFill || 'currentColor', ...commonOptions, ...options }, i))) }));
1193
- });
1194
-
1195
- const CHECK_PATHS = [
1196
- {
1197
- d: 'M10.207.793a1 1 0 0 1 0 1.414l-6 6a1 1 0 0 1-1.414 0l-2.5-2.5a1 1 0 0 1 1.414-1.414L3.5 6.086 8.793.793a1 1 0 0 1 1.414 0Z',
1198
- fillRule: 'evenodd',
1199
- clipRule: 'evenodd',
1200
- fill: 'white',
1201
- },
1202
- ];
1203
- const Checkbox = JSX(({ className, value, text, disabled, isRadio, onChange }) => {
1204
- const handleChange = useCallback((e) => {
1205
- if (disabled) {
1206
- return;
1207
- }
1208
- e.preventDefault();
1209
- onChange && onChange(!value);
1210
- }, [onChange, disabled, value]);
1211
- const icon = isRadio ? (jsx("div", { className: "absolute left-1 w-3 h-3 rounded-full bg-primary-main" })) : (jsx(SVG, { paths: CHECK_PATHS, className: "absolute left-1 ml-px block", width: "11", height: "9", fill: "white", viewBox: "0 0 11 9" }));
1212
- return (jsx("div", { className: className, children: jsxs("label", { className: "flex items-center relative cursor-pointer group/box", onClick: handleChange, children: [jsx("div", { className: style('appearance-none w-5 h-5 border-solid cursor-pointer m-0', isRadio ? 'rounded-full border-2' : checkboxStyle(value), value ? 'border-primary-main' : 'border-gray', disabled ? 'bg-main-disabled' : 'group-hover/box:border-primary-hover'), role: "checkbox", "aria-checked": Boolean(value), "aria-disabled": Boolean(disabled) }), value ? icon : null, text ? (jsx("div", { className: "ml-s", children: jsx(Text, { size: "text-l", font: "font-light", children: text }) })) : null] }) }));
1213
- });
1214
- const checkboxStyle = (value) => style('rounded border', value ? 'bg-primary-main' : '');
1249
+ const Radio = JSX(({ name, text, value, checked, onChange, className }) => (jsx("div", { className: className, children: jsxs("label", { className: "font-sans flex gap-s items-center relative cursor-pointer", children: [jsx("input", { className: "appearance-none flex justify-center items-center shrink-0 w-5 h-5 border border-gray hover:border-primary-hover\n checked:border-2 checked:!border-primary-main focus:checked:border-primary-main focus:border-primary-text active:border-primary-text\n after:block after:w-2.5 after:h-2.5 after:rounded-full checked:after:bg-primary-main outline-none rounded-full cursor-pointer", type: "radio", value: value, name: name, checked: checked, onChange: (_) => onChange(_.target.value) }), text ? jsx("span", { className: "text-primary-text cursor-pointer", children: text }) : null] }) })));
1215
1250
 
1216
1251
  const renderQuestionsInterested = (field) => {
1217
- const textField = field('text');
1218
- return (jsxs("div", { className: "space-y-m", children: [jsxs("div", { className: "sm:flex sm:items-center sm:gap-xl", children: [jsx(Checkbox, { text: "\u0412\u0430\u043B\u044E\u0442\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u044C", ...field('currencyControl') }), jsx(Checkbox, { text: "\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430\u0440\u043D\u044B\u0435 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438", ...field('documentaryOperations') }), jsx(Checkbox, { text: "\u041A\u043E\u043D\u0432\u0435\u0440\u0441\u0438\u043E\u043D\u043D\u044B\u0435 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438", ...field('conversionOperations') })] }), jsx("textarea", { placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441, \u043C\u0435\u0441\u0442\u043E \u0432\u0435\u0434\u0435\u043D\u0438\u044F \u0431\u0438\u0437\u043D\u0435\u0441\u0430 \u0438 \u0443\u0434\u043E\u0431\u043D\u043E\u0435 \u0432\u0440\u0435\u043C\u044F \u0434\u043B\u044F \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u043D\u043E\u0433\u043E \u0437\u0432\u043E\u043D\u043A\u0430", className: "block w-full resize-y min-h-24 p-m outline-none border rounded-md border-main-stroke hover:border-primary-hover active:focus:border-primary-text", value: textField.value, onInput: ((e) => textField.onChange && textField.onChange(e.target?.value || '')) })] }));
1252
+ const { value, onChange } = field('vedTypes');
1253
+ return (jsx("div", { className: "space-y-m", children: jsxs("div", { className: "@xl:flex @xl:items-center @xl:gap-xl", children: [jsx(Radio, { className: "mb-xs", name: "vedTypes", text: "\u0412\u0430\u043B\u044E\u0442\u043D\u044B\u0439 \u043A\u043E\u0442\u0440\u043E\u043B\u044C", value: "currencyControl", checked: value === 'currencyControl', onChange: (_) => onChange && onChange(_) }), jsx(Radio, { className: "mb-xs", name: "vedTypes", text: "\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430\u0440\u043D\u044B\u0435 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438", value: "documentOperations", checked: value === 'documentOperations', onChange: (_) => onChange && onChange(_) }), jsx(Radio, { className: "mb-xs", name: "vedTypes", text: "\u041A\u043E\u043D\u0432\u0435\u0440\u0441\u0438\u043E\u043D\u043D\u044B\u0435 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438", value: "conversionTransactions", checked: value === 'conversionTransactions', onChange: (_) => onChange && onChange(_) }), jsx(Radio, { className: "mb-xs", name: "vedTypes", text: "\u0418\u043D\u044B\u0435 \u0432\u043E\u043F\u0440\u043E\u0441\u044B \u0412\u042D\u0414", value: "otherIssues", checked: value === 'otherIssues', onChange: (_) => onChange && onChange(_) })] }) }));
1219
1254
  };
1220
1255
 
1221
- const renderWedDataOrganization = (field) => (jsxs("div", { children: [jsxs("div", { className: "sm:flex sm:justify-between sm:gap-lg", children: [jsx("div", { className: "sm:w-1/2", children: jsx(InputControl, { className: "shrink-0 w-full mb-s", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }) }), jsx("div", { className: "sm:w-1/2", children: jsx(InputControl, { className: "shrink-0 w-full mb-s", label: "\u0424\u0418\u041E", ...withValidator(field('name'), nameValidator) }) })] }), jsxs("div", { className: "sm:flex sm:justify-between sm:gap-lg sm:mb-2xl", children: [jsx("div", { className: "sm:w-1/2", children: jsx(PhoneInputControl, { className: "shrink-0 w-full mb-s", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) }) }), jsx("div", { className: "sm:w-1/2", children: jsx(InputControl, { className: "shrink-0 w-full mb-s", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...withValidator(field('mail'), defaultValidator) }) })] })] }));
1256
+ const renderWedDataOrganization = (field, regions) => {
1257
+ const isCurrencyControl = field('vedTypes').value === 'currencyControl';
1258
+ return (jsxs("div", { children: [regions.length && isCurrencyControl ? (jsx(SelectControl, { className: "mb-s", label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) })) : null, jsxs("div", { className: "@xl:grid @xl:grid-cols-2 @xl:gap-x-lg", children: [isCurrencyControl ? (jsx(InputControl, { className: "w-full mb-s", label: "\u0418\u041D\u041D", ...withValidator(field('inn'), innValidator) })) : null, jsx(InputControl, { className: "w-full mb-s", label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...withValidator(field('fullName'), defaultValidator) }), jsx(InputControl, { className: "w-full mb-s", label: "\u0424\u0418\u041E", ...withValidator(field('name'), nameValidator) }), jsx(PhoneInputControl, { className: "w-full mb-s", label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...withValidator(field('phone'), phoneValidator) }), !isCurrencyControl ? (jsx(InputControl, { className: "w-full mb-s", label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...withValidator(field('mail'), defaultValidator) })) : null] })] }));
1259
+ };
1260
+
1261
+ const activeTextareaStyles = 'hover:border-primary-hover active:focus:border-primary-text focus:border-primary-text';
1262
+ const renderWedTextarea = (field) => {
1263
+ const textField = field('text');
1264
+ return (jsxs("label", { children: [jsx("div", { className: "mb-xs", children: jsx(Text, { size: "text-m", font: "font-light", children: "\u041E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u0435" }) }), jsx("textarea", { placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441, \u043C\u0435\u0441\u0442\u043E \u0432\u0435\u0434\u0435\u043D\u0438\u044F \u0431\u0438\u0437\u043D\u0435\u0441\u0430 \u0438 \u0443\u0434\u043E\u0431\u043D\u043E\u0435 \u0432\u0440\u0435\u043C\u044F \u0434\u043B\u044F \u0442\u0435\u043B\u0435\u0444\u043E\u043D\u043D\u043E\u0433\u043E \u0437\u0432\u043E\u043D\u043A\u0430", className: style('block w-full resize-y min-h-24 p-m outline-none border rounded-md border-gray', activeTextareaStyles), value: textField.value, onInput: ((e) => textField.onChange && textField.onChange(e.target?.value || '')) })] }));
1265
+ };
1222
1266
 
1223
1267
  const initialFormState = {
1224
1268
  fullName: '',
1225
1269
  name: '',
1226
1270
  phone: '',
1227
- mail: '',
1228
- currencyControl: false,
1229
- documentaryOperations: false,
1230
- conversionOperations: false,
1271
+ inn: '',
1272
+ vedTypes: 'currencyControl',
1231
1273
  text: '',
1232
1274
  };
1233
- const webValidator = objectValidator({
1275
+ const defaultValidators = {
1234
1276
  fullName: defaultValidator,
1235
1277
  name: nameValidator,
1236
1278
  phone: phoneValidator,
1279
+ };
1280
+ const wedValidator = objectValidator({
1281
+ ...defaultValidators,
1237
1282
  mail: defaultValidator,
1238
1283
  });
1284
+ const wedValidatorCurrencyControl = objectValidator({
1285
+ ...defaultValidators,
1286
+ inn: innValidator,
1287
+ region: defaultValidator,
1288
+ });
1289
+ const isCurrencyControl = (vedTypes) => vedTypes === 'currencyControl';
1290
+ const getValidator = (vedTypes) => isCurrencyControl(vedTypes) ? wedValidatorCurrencyControl : wedValidator;
1291
+ const getVedTypes = (vedTypes) => ({
1292
+ currencyControl: vedTypes === 'currencyControl',
1293
+ documentOperations: vedTypes === 'documentOperations',
1294
+ conversionTransactions: vedTypes === 'conversionTransactions',
1295
+ otherIssues: vedTypes === 'otherIssues',
1296
+ });
1239
1297
  const ApplicationFormWed = JSX((props) => {
1240
1298
  const { button, link, onSubmit } = props;
1241
1299
  const handleSubmit = useCallback((formState) => {
1242
- const { fullName, name, phone, mail, currencyControl, documentaryOperations, conversionOperations, text, } = formState;
1243
- isValidationSuccess(webValidator(formState)) &&
1244
- onSubmit({
1245
- typeForm: 'kved',
1246
- fullName,
1247
- name,
1248
- phone,
1249
- mail,
1250
- partnerComments: `Валютный контроль=${currencyControl}/Документарные операции=${documentaryOperations}/Конверсионные операции=${conversionOperations}/Доп инф=${text}`,
1251
- });
1300
+ const { fullName, name, phone, mail, inn, region, vedTypes, text } = formState;
1301
+ const data = {
1302
+ typeForm: 'KVED',
1303
+ fullName,
1304
+ name,
1305
+ phone: phone.replace(/[^+\d]/g, ''),
1306
+ text,
1307
+ vedTypes: getVedTypes(vedTypes),
1308
+ PartnerComments: text,
1309
+ ...(!isCurrencyControl(vedTypes) ? { mail } : { inn, region: region?.text || '' }),
1310
+ };
1311
+ isValidationSuccess(getValidator(vedTypes)(formState)) && onSubmit(data);
1252
1312
  }, [onSubmit]);
1253
1313
  const [, { field, ...formProps }] = useForm(initialFormState, handleSubmit);
1254
- return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "sm:text-center" }), renderWedDataOrganization(field), jsx(Heading, { headingType: "h6", title: "\u0418\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u043E\u043F\u0440\u043E\u0441", className: "sm:text-center" }), renderQuestionsInterested(field), jsxs("div", { className: "flex flex-col gap-m border-b border-main-divider pb-lg sm:items-center sm:flex-row sm:pb-4xl", children: [renderSubmitButton(button), jsx(Footnote, { link: link })] }), jsx(Heading, { headingType: "h6", title: "\u0418\u043B\u0438 \u0441\u0432\u044F\u0436\u0438\u0442\u0435\u0441\u044C \u0441 \u043D\u0430\u043C\u0438 \u0443\u0434\u043E\u0431\u043D\u044B\u043C \u0441\u043F\u043E\u0441\u043E\u0431\u043E\u043C", className: "sm:text-center" }), renderContacts()] }));
1314
+ const regions = useGetRegions();
1315
+ return (jsxs("form", { className: "container space-y-m", onSubmit: formProps.onSubmit, children: [renderQuestionsInterested(field), jsx(Heading, { headingType: "h6", title: "\u0414\u0430\u043D\u043D\u044B\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", className: "@xl:text-center" }), renderWedDataOrganization(field, regions), renderWedTextarea(field), jsxs("div", { className: "flex flex-col gap-m border-b border-main-divider pb-lg @xl:items-center @xl:flex-row @xl:pb-4xl", children: [renderSubmitButton(button), jsx(Footnote, { link: link })] }), jsx(Heading, { headingType: "h6", title: "\u0418\u043B\u0438 \u0441\u0432\u044F\u0436\u0438\u0442\u0435\u0441\u044C \u0441 \u043D\u0430\u043C\u0438 \u0443\u0434\u043E\u0431\u043D\u044B\u043C \u0441\u043F\u043E\u0441\u043E\u0431\u043E\u043C", className: "@xl:text-center" }), renderContacts()] }));
1255
1316
  });
1256
1317
 
1257
1318
  const EmbeddableForms = {
@@ -1272,18 +1333,13 @@
1272
1333
  const API = CorporateLeadAPI();
1273
1334
  const ApplicationForm = JSX((props) => {
1274
1335
  const { className, formBlock, ...rest } = props;
1275
- // const type = formBlock?.formType;
1276
- // if (!type || !(type in EmbeddableForms)) {
1277
- // return null;
1278
- // }
1279
- // const EmbeddedForm = EmbeddableForms[type];
1280
1336
  const [responseType, setResponseType] = useState('');
1281
1337
  const handleSubmit = useCallback(async (data) => {
1282
1338
  const status = (await API.send(data)) ? 'OK' : 'Fail';
1283
1339
  setResponseType(status);
1284
1340
  return status;
1285
1341
  }, []);
1286
- return (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: "container max-w-[978px] space-y-lg", children: [formBlock?.title ? (jsx(Heading, { headingType: "h3", title: formBlock.title, className: "sm:text-center" })) : null, formBlock ? renderEmbeddedForm(formBlock, handleSubmit) : null, responseType ? jsx(ResponseNotification, { responseType: responseType }) : null] }) }));
1342
+ return (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: "container max-w-[978px] space-y-lg", children: [formBlock?.title ? (jsx(Heading, { headingType: "h3", title: formBlock.title, className: "@xl:text-center" })) : null, formBlock ? renderEmbeddedForm(formBlock, handleSubmit) : null, responseType ? jsx(ResponseNotification, { responseType: responseType }) : null] }) }));
1287
1343
  });
1288
1344
  const renderEmbeddedForm = (formBlock, handleSubmit) => {
1289
1345
  const type = formBlock?.formType;
@@ -1324,7 +1380,7 @@
1324
1380
  return description?.items && description.items.length > 0 ? (jsx("ul", { className: listStyleType, children: description.items.map((_, i) => (jsx(Paragraph, { font: "font-light", size: "text-l", color: "text-secondary-text group-data-secondary:text-white", children: _ }, `benefitListItem-${i}`))) })) : null;
1325
1381
  };
1326
1382
 
1327
- const renderButtonsSection = (buttons, { className, buttonClassName, isVertical } = {}) => buttons?.length && buttons.some((_) => _?.text || _?.icon?.icon) ? (jsx("div", { className: style('flex', isVertical ? 'flex-col gap-xs justify-items-stretch' : 'flex-wrap gap-m', className), children: buttons.map(renderButton(buttonClassName)) })) : null;
1383
+ const renderButtonsSection = (buttons, { className, buttonClassName, isVertical } = {}) => buttons?.length && buttons.some((_) => _?.text || _?.icon?.icon) ? (jsx("div", { className: style('flex', isVertical ? 'flex-col gap-xs justify-items-stretch' : 'flex-wrap gap-lg sm:gap-m', className), children: buttons.map(renderButton(buttonClassName)) })) : null;
1328
1384
  const renderButton = (buttonClassName = '') => (button, index) => {
1329
1385
  const { text, icon, iconRight, version, ...rest } = button || {};
1330
1386
  const iconVersion = getIconVersion(icon, version);
@@ -1336,10 +1392,7 @@
1336
1392
  const iconVersionDefault = version === 'secondary' ? 'color' : 'white';
1337
1393
  return icon?.iconVersion ? icon?.iconVersion : iconVersionDefault;
1338
1394
  };
1339
- const renderButtonIcon = (icon) => {
1340
- console.log(icon);
1341
- return icon?.icon || icon?.src ? (jsx(Img, { image: icon, width: String(icon?.size?.width || DEFAULT_ICON_W), height: String(DEFAULT_ICON_W) })) : null;
1342
- };
1395
+ const renderButtonIcon = (icon) => icon?.icon || icon?.src ? (jsx(Img, { image: icon, width: String(icon?.size?.width || DEFAULT_ICON_W), height: String(DEFAULT_ICON_W) })) : null;
1343
1396
 
1344
1397
  const headlineVersionStyles = {
1345
1398
  XXL: {
@@ -1397,8 +1450,10 @@
1397
1450
  return (jsxs(BlockWrapper, { className: style(isEmbedded ? '@container-normal' : '', className), defaultPadding: isEmbedded ? '' : 'p-6xl', version: version, isTheme: isTheme, ...rest, children: [title ? (jsx(Heading, { className: style('whitespace-pre-wrap', align), ...versionStyle?.title, as: as || versionStyle?.title.as, title: title })) : null, description ? (jsx(Paragraph, { size: versionStyle.descriptionSize, font: versionStyle.descriptionWeight, align: align, ...descriptionStyle, children: description })) : null] }));
1398
1451
  });
1399
1452
 
1400
- const Bonus = JSX(({ className = '', title, description, bonusItems = [], ...rest }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: "container", children: [jsx(Headline, { className: "mb-xl", isEmbedded: true, title: title, description: description, headlineVersion: "M" }), jsx("div", { className: "flex flex-wrap w-full", children: bonusItems.length > 0
1401
- ? bonusItems.map((_, i) => (jsxs("div", { className: "space-y-xs flex flex-col grow w-full sm:w-[49%] border border-gray p-m", children: [jsx("div", { className: "grow", children: jsx(Headline, { title: _?.title, description: _?.description, headlineVersion: "S", isEmbedded: true, align: "text-left" }) }), jsxs("div", { className: "flex justify-center sm:justify-between sm:items-end", children: [jsx("div", { className: "hidden sm:block", children: renderButtonsSection(_?.buttons) }), _.bonusItemContent?.bonusType
1453
+ const AlignStyles = 'text-center';
1454
+
1455
+ const Bonus = JSX(({ className = '', title, description, bonusItems = [], align = AlignStyles, ...rest }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: "container", children: [jsx(Headline, { className: "mb-xl", isEmbedded: true, title: title, description: description, headlineVersion: "M", align: align }), jsx("div", { className: "flex flex-wrap w-full", children: bonusItems.length > 0
1456
+ ? bonusItems.map((_, i) => (jsxs("div", { className: "mb-3xl last:mb-0 sm:space-y-xs flex flex-col grow w-full p-4xl sm:p-m @xl:w-[49%] border border-gray", children: [jsx("div", { className: "grow", children: jsx(Headline, { title: _?.title, description: _?.description, headlineVersion: "S", isEmbedded: true, align: "text-left" }) }), jsxs("div", { className: "flex justify-center sm:justify-between sm:items-end", children: [jsx("div", { className: "hidden sm:block", children: renderButtonsSection(_?.buttons) }), _.bonusItemContent?.bonusType
1402
1457
  ? renderBonusItemContent(_.bonusItemContent)
1403
1458
  : null] })] }, String(i))))
1404
1459
  : null })] }) })));
@@ -1407,7 +1462,7 @@
1407
1462
  : renderBonusImage(bonusItemContent);
1408
1463
  const renderBonusCount = (_) => (jsxs("div", { className: "w-full pt-default mt-s flex justify-center sm:justify-end items-end", children: [_.bonusCount ? (
1409
1464
  // -mb-10 добавлен для выравнивания bonusCount относительно bonusName, тк шрифт font-mohave неправильно высчитывает line-height
1410
- jsx("div", { className: "shrink-0 -mb-10", children: jsx("span", { className: "font-mohave text-title-extra gradient-color-text", children: _.bonusCount }) })) : null, _.bonusName ? (jsx("div", { className: "shrink-0 gradient-color-text", children: jsx(Text, { size: "text-h2", children: _.bonusName }) })) : null] }));
1465
+ jsx("div", { className: "shrink-0 -mb-10", children: jsx("span", { className: "font-mohave text-title-large sm:text-title-extra gradient-color-text", children: _.bonusCount }) })) : null, _.bonusName ? (jsx("div", { className: "shrink-0 gradient-color-text", children: jsx(Text, { size: "text-h2", children: _.bonusName }) })) : null] }));
1411
1466
  const renderBonusImage = (_) => _.image ? jsx(Img, { className: "min-w-12 p-xs rounded-icon shrink-0", image: _.image }) : null;
1412
1467
 
1413
1468
  /**
@@ -1419,11 +1474,9 @@
1419
1474
  right: 'text-right',
1420
1475
  };
1421
1476
 
1422
- const bonusBenefitAlign = 'text-center';
1423
-
1424
1477
  const bonusBenefitStyles = 'items-center';
1425
1478
 
1426
- const renderBonusBenefit = ({ icon, title, description }, i) => (jsxs("div", { className: style('flex flex-col', bonusBenefitStyles, !description && !title ? 'justify-center' : ''), children: [title ? (jsx(Text, { size: "text-h6", font: "font-normal", align: bonusBenefitAlign, children: title })) : null, icon ? jsx(Img, { image: icon, height: "180", className: "w-auto" }) : null, description ? (jsx(Text, { size: "text-h6", font: "font-normal", align: bonusBenefitAlign, children: description })) : null] }, String(i)));
1479
+ const renderBonusBenefit = ({ icon, title, description }, i) => (jsxs("div", { className: style('flex flex-col', bonusBenefitStyles, !description && !title ? 'justify-center' : ''), children: [title ? (jsx(Text, { size: "text-h6", font: "font-normal", align: AlignStyles, children: title })) : null, icon ? jsx(Img, { image: icon, height: "180", className: "w-auto" }) : null, description ? (jsx(Text, { size: "text-h6", font: "font-normal", align: AlignStyles, children: description })) : null] }, String(i)));
1427
1480
 
1428
1481
  const renderBonusBenefits = (bonusBenefits, columnsCount, cardTextAlign) => (jsx("div", { className: `grid gap-2xs ${AlignText[cardTextAlign]} ${getElementsColsValue(columnsCount)}`, children: bonusBenefits.map(renderBonusBenefit) }));
1429
1482
  const getElementsColsValue = (colValue) => {
@@ -1439,7 +1492,7 @@
1439
1492
  }
1440
1493
  };
1441
1494
 
1442
- const BonusBenefitsBlock = JSX(({ bonusBenefits, cardTextAlign = 'center', className = '', columnsCount = '4', subtitle, title, ...rest }) => (jsxs(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: [jsx(Headline, { className: "mb-4xl sm:mb-3xl", title: title, description: subtitle, headlineVersion: "M" }), bonusBenefits?.length
1495
+ const BonusBenefitsBlock = JSX(({ bonusBenefits, cardTextAlign = 'center', className = '', columnsCount = '4', subtitle, title, ...rest }) => (jsxs(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: [jsx(Headline, { title: title, description: subtitle, headlineVersion: "M" }), bonusBenefits?.length
1443
1496
  ? renderBonusBenefits(bonusBenefits, columnsCount, cardTextAlign)
1444
1497
  : null] })));
1445
1498
 
@@ -1511,11 +1564,11 @@
1511
1564
  const REFINANCING_EXTRA_MIN_SUM = 0;
1512
1565
  const REFINANCING_EXTRA_MAX_SUM = 500000;
1513
1566
  const DEPOSIT_DEFAULT_SUM = 20000;
1514
- const DEFAULT_MIN_MONTHS$1 = 13;
1567
+ const DEFAULT_MIN_MONTHS = 13;
1515
1568
  const DEFAULT_REFINANCING_MIN_MONTHS = 13;
1516
1569
  const DEFAULT_REFINANCING_MONTHS = 48;
1517
- const DEFAULT_MAX_MONTHS$1 = 60;
1518
- const DEFAULT_MONTHS = Math.round((DEFAULT_MAX_MONTHS$1 - DEFAULT_MIN_MONTHS$1) / 2);
1570
+ const DEFAULT_MAX_MONTHS = 60;
1571
+ const DEFAULT_MONTHS = Math.round((DEFAULT_MAX_MONTHS - DEFAULT_MIN_MONTHS) / 2);
1519
1572
  const BUSINESS_DEFAULT_SUM = 100000;
1520
1573
  const BUSINESS_MIN_DAYS = 1;
1521
1574
  const BUSINESS_MAX_DAYS = 1095;
@@ -1528,8 +1581,8 @@
1528
1581
  const DEFAULT_CREDIT_CALCULATOR_PARAMS = {
1529
1582
  minSum: DEFAULT_MIN_SUM$1,
1530
1583
  maxSum: DEFAULT_MAX_SUM$1,
1531
- minMonths: DEFAULT_MIN_MONTHS$1,
1532
- maxMonths: DEFAULT_MAX_MONTHS$1,
1584
+ minMonths: DEFAULT_MIN_MONTHS,
1585
+ maxMonths: DEFAULT_MAX_MONTHS,
1533
1586
  rate: 0,
1534
1587
  isSalaryClient: false,
1535
1588
  isPensionClient: false,
@@ -1544,7 +1597,7 @@
1544
1597
  minSumExtra: REFINANCING_EXTRA_MIN_SUM,
1545
1598
  maxSumExtra: REFINANCING_EXTRA_MAX_SUM,
1546
1599
  minMonths: DEFAULT_REFINANCING_MIN_MONTHS,
1547
- maxMonths: DEFAULT_MAX_MONTHS$1,
1600
+ maxMonths: DEFAULT_MAX_MONTHS,
1548
1601
  rate: 0,
1549
1602
  isExtraMoney: false,
1550
1603
  isSalaryClient: false,
@@ -1640,7 +1693,7 @@
1640
1693
  restExpenseValue: DEFAULT_REST_MIN_SUM,
1641
1694
  });
1642
1695
  const { minSumTravel, maxSumTravel, minSumOther, maxSumOther, monthBonus, yearBonus } = useBonusCalculatorParams(userInputParams, sourceBookDir);
1643
- return (jsxs("section", { className: style('flex flex-col justify-between sm:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:w-2/5 gap-2xl", children: [renderWantedSumInput({
1696
+ return (jsxs("section", { className: style('flex flex-col justify-between @5xl:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:max-w-md gap-2xl", children: [renderWantedSumInput({
1644
1697
  title: 'Сумма покупок в категории путешествия, ₽',
1645
1698
  min: minSumTravel,
1646
1699
  max: maxSumTravel,
@@ -1657,6 +1710,31 @@
1657
1710
  })] }), monthBonus >= 0 ? (jsx(Rate, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u043C\u0435\u0441\u044F\u0446", rate: monthBonus, rateBlockClassName: "tracking-[-14px]", fractionDigits: 0 })) : null, jsxs("div", { className: "flex flex-col gap-2xl sm:w-96", children: [yearBonus >= 0 ? jsx(CalculatorValueBlock, { title: "\u0411\u0430\u043B\u043B\u043E\u0432 \u0437\u0430 \u0433\u043E\u0434", value: yearBonus }) : null, renderButtonsSection(buttons, { isVertical: true }), renderFootnote(footnote)] })] }));
1658
1711
  });
1659
1712
 
1713
+ const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
1714
+ return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: className, viewBox: viewBox, fill: fill, width: width, height: height, children: paths.map(({ d, fill: pathFill, ...options }, i) => (jsx("path", { d: d, fill: pathFill || 'currentColor', ...commonOptions, ...options }, i))) }));
1715
+ });
1716
+
1717
+ const CHECK_PATHS = [
1718
+ {
1719
+ d: 'M10.207.793a1 1 0 0 1 0 1.414l-6 6a1 1 0 0 1-1.414 0l-2.5-2.5a1 1 0 0 1 1.414-1.414L3.5 6.086 8.793.793a1 1 0 0 1 1.414 0Z',
1720
+ fillRule: 'evenodd',
1721
+ clipRule: 'evenodd',
1722
+ fill: 'white',
1723
+ },
1724
+ ];
1725
+ const Checkbox = JSX(({ className, value, text, disabled, isRadio, onChange }) => {
1726
+ const handleChange = useCallback((e) => {
1727
+ if (disabled) {
1728
+ return;
1729
+ }
1730
+ e.preventDefault();
1731
+ onChange && onChange(!value);
1732
+ }, [onChange, disabled, value]);
1733
+ const icon = isRadio ? (jsx("div", { className: "absolute left-1 w-3 h-3 rounded-full bg-primary-main" })) : (jsx(SVG, { paths: CHECK_PATHS, className: "absolute left-1 ml-px block", width: "11", height: "9", fill: "white", viewBox: "0 0 11 9" }));
1734
+ return (jsx("div", { className: className, children: jsxs("label", { className: "flex items-center relative cursor-pointer group/box", onClick: handleChange, children: [jsx("div", { className: style('appearance-none w-5 h-5 border-solid cursor-pointer m-0', isRadio ? 'rounded-full border-2' : checkboxStyle(value), value ? 'border-primary-main' : 'border-gray', disabled ? 'bg-main-disabled' : 'group-hover/box:border-primary-hover'), role: "checkbox", "aria-checked": Boolean(value), "aria-disabled": Boolean(disabled) }), value ? icon : null, text ? (jsx("div", { className: "ml-s", children: jsx(Text, { size: "text-l", font: "font-light", children: text }) })) : null] }) }));
1735
+ });
1736
+ const checkboxStyle = (value) => style('rounded border', value ? 'bg-primary-main' : '');
1737
+
1660
1738
  const STEP_DAYS = 1;
1661
1739
  const renderDaysInput = (props) => (jsx(InputRange, { items: [`От ${daysText(props.min || 0)}`, `До ${daysText(props.max || 0)}`], step: STEP_DAYS, ...props }));
1662
1740
  const daysText = (days) => `${days} ${Number(days) % 10 === 1 ? 'дня' : 'дней'}`;
@@ -1789,7 +1867,7 @@
1789
1867
  });
1790
1868
  const calculatorParams = useBusinessDepositCalculatorParams(userInputParams, sourceBookDir);
1791
1869
  const { income, finalSum, rate, isUnavailableByTerm, depositeName } = calculatorParams;
1792
- return (jsxs("section", { className: style('flex flex-col justify-between sm:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:w-2/5 gap-2xl", children: [renderWantedSumInput({
1870
+ return (jsxs("section", { className: style('flex flex-col justify-between @5xl:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:max-w-md gap-2xl", children: [renderWantedSumInput({
1793
1871
  title: 'Сумма, ₽',
1794
1872
  min: calculatorParams.minSum,
1795
1873
  max: calculatorParams.maxSum,
@@ -1941,7 +2019,7 @@
1941
2019
  orientation: 'vertical',
1942
2020
  ...field('isAnnuity'),
1943
2021
  });
1944
- return (jsxs("section", { className: style('flex flex-col justify-between sm:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:w-2/5 gap-2xl", children: [renderWantedSumInput({
2022
+ return (jsxs("section", { className: style('flex flex-col justify-between @5xl:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:max-w-md gap-2xl", children: [renderWantedSumInput({
1945
2023
  title: 'Сумма кредита, ₽',
1946
2024
  step: 500,
1947
2025
  min: calculatorParams.minSum,
@@ -2035,7 +2113,7 @@
2035
2113
  useEffect(() => {
2036
2114
  setMonthsValue && setMonthsValue(defaultMonth);
2037
2115
  }, [defaultMonth]);
2038
- return (jsxs("section", { className: style('flex flex-col justify-between sm:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:w-2/5 gap-2xl", children: [renderWantedSumInput({
2116
+ return (jsxs("section", { className: style('flex flex-col justify-between @5xl:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:max-w-md gap-2xl", children: [renderWantedSumInput({
2039
2117
  title: 'Сумма, ₽',
2040
2118
  min: calculatorParams.minSum,
2041
2119
  max: calculatorParams.maxSum,
@@ -2149,7 +2227,7 @@
2149
2227
  moneyExtra: REFINANCING_OLD_DEFAULT_SUM,
2150
2228
  });
2151
2229
  const calculatorParams = useRefinancingCalculatorParams(userInputParams, sourceBookDir, paramsViewSettings);
2152
- return (jsxs("section", { className: style('flex flex-col justify-between sm:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:w-2/5 gap-2xl", children: [renderWantedSumInput({
2230
+ return (jsxs("section", { className: style('flex flex-col justify-between @5xl:flex-row gap-m', className), children: [jsxs("div", { className: "flex flex-col gap-y-m sm:max-w-md gap-2xl", children: [renderWantedSumInput({
2153
2231
  title: 'Остаток долга в других банках, ₽ ',
2154
2232
  step: 500,
2155
2233
  min: calculatorParams.minSum,
@@ -2279,7 +2357,7 @@
2279
2357
  ? getDisabledButtonClasses({ version: button?.version })
2280
2358
  : getRegularButtonClasses({ className: 'text-white', version: button?.version });
2281
2359
  const link = useLink();
2282
- return (jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h2", title: title })) : null, jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", action: FORM_URL_MAP[formType], children: [jsx(CurrencyInput, { name: "_amount", valid: !isDisabled, placeholder: placeholder, label: label, ...field('_amount', { parse: Number, format: String }) }), jsx("input", { type: "hidden", name: "amount", value: _amount }), button?.text ? (jsx("button", { type: "submit", className: style('w-full p-m mt-lg', buttonStyle), disabled: isDisabled, ...link(button), children: button.text })) : null] })] }));
2360
+ return (jsxs(BlockWrapper, { className: style('flex flex-col items-center', className), defaultPadding: "p-6xl", ...rest, children: [title ? (jsx(Heading, { className: "pb-lg xl:pb-4xl self-start xl:self-center", headingType: "h3", title: title })) : null, jsxs("form", { className: "w-full xl:max-w-[468px]", method: "POST", action: FORM_URL_MAP[formType], children: [jsx(CurrencyInput, { name: "_amount", valid: !isDisabled, placeholder: placeholder, label: label, ...field('_amount', { parse: Number, format: String }) }), jsx("input", { type: "hidden", name: "amount", value: _amount }), button?.text ? (jsx("button", { type: "submit", className: style('w-full p-m mt-lg', buttonStyle), disabled: isDisabled, ...link(button), children: button.text })) : null] })] }));
2283
2361
  });
2284
2362
 
2285
2363
  const mapChildren = (mapper) => (children) => {
@@ -2576,6 +2654,7 @@
2576
2654
  'CarouselRichTextCard',
2577
2655
  'CarouselInvestmentCard',
2578
2656
  'CarouselEventCard',
2657
+ 'ProductBlock',
2579
2658
  ];
2580
2659
  Carousel.childSchema = () => ({
2581
2660
  isHighlighting: {
@@ -2595,17 +2674,28 @@
2595
2674
  const titleSize = 'L';
2596
2675
 
2597
2676
  const layerBaseStyle = 'z-10 border border-solid w-full h-full';
2598
- const layerStyle = style(layerBaseStyle, 'absolute hidden sm:block border-transparent');
2599
- const CarouselCard = JSX(({ className, title, description, button, ...rest }) => (jsx(BlockWrapper, { className: style('sm:pl-6xl sm:pb-4xl', className), defaultPadding: "p-0", ...rest, children: jsxs("div", { className: "relative", children: [jsx("div", { className: style(layerStyle, 'top-9 right-12 bg-green-dark') }), jsx("div", { className: style(layerStyle, 'top-6 right-8 bg-green') }), jsx("div", { className: style(layerStyle, 'top-3 right-4 bg-green-light') }), jsxs("div", { className: style(layerBaseStyle, 'relative p-xl sm:p-5xl bg-white border-green-light'), children: [jsx(Headline, { title: title, description: description, headlineVersion: titleSize, align: "text-left", isEmbedded: true }), renderButtonsSection([button], {
2677
+ const layerStyle = style(layerBaseStyle, 'absolute hidden @xl:block border-transparent');
2678
+ const CarouselCard = JSX(({ className, title, description, button, ...rest }) => (jsx(BlockWrapper, { className: style('sm:pl-6xl sm:pb-4xl @container-normal', className), defaultPadding: "p-0", ...rest, children: jsxs("div", { className: "relative", children: [jsx("div", { className: style(layerStyle, 'top-9 right-12 bg-green-dark') }), jsx("div", { className: style(layerStyle, 'top-6 right-8 bg-green') }), jsx("div", { className: style(layerStyle, 'top-3 right-4 bg-green-light') }), jsxs("div", { className: style(layerBaseStyle, 'relative p-xl sm:p-5xl bg-white border-transparent sm:border-green-light'), children: [jsx(Headline, { title: title, description: description, headlineVersion: titleSize, align: "text-left", isEmbedded: true }), renderButtonsSection([button], {
2600
2679
  className: 'mt-m sm:mt-6xl sm:justify-center',
2601
2680
  isVertical: true,
2602
2681
  })] })] }) })));
2603
2682
 
2683
+ const imageAlignmentMap = {
2684
+ start: '@xl:self-start',
2685
+ center: '@xl:self-center',
2686
+ end: '@xl:self-end',
2687
+ };
2688
+ const BaseTile = JSX(({ className, defaultPadding, padding, title = '', insetTitle = '', buttons, leftImage, rightImage, imageAlign, backImage, isImageAlwaysOnRight = false, children, }) => (jsxs("div", { className: style('relative flex flex-col gap-3xl font-sans overflow-hidden', padding || defaultPadding, className), children: [title ? jsx("div", { className: "relative", children: title }) : null, jsxs("div", { className: style('grow relative flex justify-around @lg:justify-between items-stretch gap-3xl', isImageAlwaysOnRight ? 'flex-row' : 'flex-col-reverse @lg:flex-row'), children: [renderImageContainer(leftImage, { imageAlign }), jsxs("div", { className: style('flex flex-col gap-3xl max-w-[600px] @xl:max-w-[728px]', leftImage ? '' : 'grow'), children: [insetTitle, jsx("div", { className: "grow", children: children }), backImage ? (jsx("div", { className: "justify-center mx-auto sm:absolute sm:-z-10 sm:-bottom-4 sm:-right-4", children: backImage })) : null, buttons] }), renderImageContainer(rightImage, {
2689
+ className: isImageAlwaysOnRight ? '' : '@xl:order-1',
2690
+ imageAlign,
2691
+ })] })] })));
2692
+ const renderImageContainer = (image, { className, imageAlign }) => image ? (jsx("div", { className: style('md:flex-shrink-0 self-center', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2693
+
2604
2694
  const cardStyleMap = {
2605
2695
  black: 'bg-black',
2606
2696
  white: 'bg-white',
2607
2697
  };
2608
- const CarouselCatalogCard = JSX(({ className = '', title, description, image, price, button, colors, ...rest }) => (jsxs(BlockWrapper, { className: style('flex flex-col justify-left', className), defaultPadding: "p-2xl", ...rest, children: [image?.src ? jsx(Img, { className: "flex justify-center mb-xl", image: image }) : null, jsx(Headline, { title: title, description: description, headlineVersion: "XS", isEmbedded: true, align: "text-left", className: "mb-m" }), colors?.length ? (jsxs("div", { className: "flex text-secondary-text mb-m", children: [jsx("div", { className: "mr-xs", children: jsx(Text, { size: "text-s", align: "text-left", font: "font-light", children: "\u0426\u0432\u0435\u0442\u0430:" }) }), colors.map(renderColorOption)] })) : null, price ? (jsxs(Text, { size: "text-h3", align: "text-left", children: [price, "\u00A0\u20BD"] })) : null, renderButtonsSection([button], { buttonClassName: 'w-full mt-lg' })] })));
2698
+ const CarouselCatalogCard = JSX(({ className = '', title, description, image, price, button, colors = [], align = 'text-left', padding, ...rest }) => (jsx(BlockWrapper, { className: style('flex flex-col justify-left', className), defaultPadding: "p-2xl", ...rest, children: jsxs(BaseTile, { className: "h-full", padding: padding, title: title ? (jsx(Headline, { title: title, description: description, headlineVersion: "XS", isEmbedded: true, align: align })) : null, rightImage: image?.src ? (jsx(Img, { className: "flex justify-center align-center mb-xl", image: image })) : null, buttons: renderButtonsSection([button], { buttonClassName: 'w-full mt-lg' }), children: [colors?.length ? (jsxs("div", { className: "flex text-secondary-text mb-m", children: [jsx("div", { className: "mr-xs", children: jsx(Text, { size: "text-s", align: "text-left", font: "font-light", children: "\u0426\u0432\u0435\u0442\u0430:" }) }), colors.map(renderColorOption)] })) : null, price ? (jsxs(Text, { size: "text-h3", align: "text-left", children: [price, "\u00A0\u20BD"] })) : null] }) })));
2609
2699
  const renderColorOption = (color, i) => (jsx("div", { role: "figure", className: `w-6 h-6 ml-s border border-solid border-main-divider rounded-full ${cardStyleMap[color]}` }, String(i)));
2610
2700
 
2611
2701
  const LinkWrapper = JSX(({ className = '', href, target, isRemote = false, children }) => {
@@ -2619,17 +2709,6 @@
2619
2709
  return (jsx(BlockWrapper, { className: className, defaultPadding: "p-0", ...rest, children: jsxs(LinkWrapper, { className: "flex flex-col", href: href, target: target, children: [icon?.icon ? jsx(Img, { image: icon }) : null, icon?.src ? jsx(Img, { image: icon }) : null, jsx("div", { className: "p-s", children: jsx(Headline, { title: title, description: description, headlineVersion: "XS", isEmbedded: true, align: "text-left" }) })] }) }));
2620
2710
  });
2621
2711
 
2622
- const imageAlignmentMap = {
2623
- start: '@lg:self-start',
2624
- center: '@lg:self-center',
2625
- end: '@lg:self-end',
2626
- };
2627
- const BaseTile = JSX(({ className, defaultPadding, padding, title = '', insetTitle = '', buttons, leftImage, rightImage, imageAlign, backImage, isImageAlwaysOnRight = false, children, }) => (jsxs("div", { className: style('relative flex flex-col gap-3xl font-sans overflow-hidden', padding || defaultPadding, className), children: [title ? jsx("div", { className: "relative", children: title }) : null, jsxs("div", { className: style('grow relative flex justify-around @lg:justify-between items-stretch gap-3xl', isImageAlwaysOnRight ? 'flex-row' : 'flex-col @lg:flex-row'), children: [renderImageContainer(leftImage, { imageAlign }), jsxs("div", { className: style('flex flex-col gap-3xl max-w-[600px] @xl:max-w-[728px]', leftImage ? '' : 'grow'), children: [insetTitle, jsx("div", { className: "grow", children: children }), backImage ? (jsx("div", { className: "justify-center mx-auto sm:absolute sm:-z-10 sm:-bottom-4 sm:-right-4", children: backImage })) : null, buttons] }), renderImageContainer(rightImage, {
2628
- className: isImageAlwaysOnRight ? '' : '-order-1 @xl:order-1',
2629
- imageAlign,
2630
- })] })] })));
2631
- const renderImageContainer = (image, { className, imageAlign }) => image ? (jsx("div", { className: style('md:flex-shrink-0 self-center', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2632
-
2633
2712
  const cardColumnsModeStyleMap = {
2634
2713
  1: 'grid-cols-1',
2635
2714
  2: 'grid-cols-2',
@@ -2637,24 +2716,23 @@
2637
2716
  const CarouselInvestmentCard = JSX(({ className, padding, additionalDescription, cardsList = [], columnsMode = 1, description, image, title, ...rest }) => (jsx(BlockWrapper, { className: style('text-left', className), padding: "p-0", ...rest, children: jsxs(BaseTile, { className: "h-full", defaultPadding: "p-xl", padding: padding, title: title ? jsx(Heading, { headingType: "h4", as: "h3", className: "mb-m z-10", title: title }) : null, backImage: image?.src ? jsx(Img, { image: image }) : null, children: [jsxs("div", { className: "flex justify-between mb-m", children: [description ? (jsx("div", { className: "w-1/3", children: jsx(Text, { size: "text-h6", children: description }) })) : null, additionalDescription ? (jsx(Text, { size: "text-m", font: "font-light", color: "group-data-primary:text-secondary-text", children: additionalDescription })) : null] }), cardsList.length ? (jsx("ul", { className: style('list-none m-0 p-0 grid gap-xs', cardColumnsModeStyleMap[columnsMode]), children: renderCardList(cardsList) })) : null] }) })));
2638
2717
  const renderCardList = (cardsList) => cardsList.map((item, i) => (jsxs("li", { children: [item?.parameter ? jsx(Text, { size: "text-h6", children: item.parameter }) : null, item?.parameterDescription ? (jsx(Text, { size: "text-m", font: "font-light", color: "text-secondary-text", children: item.parameterDescription })) : null] }, String(i))));
2639
2718
 
2640
- const LINK_CLASS_NAME = `absolute border border-primary-main px-xl py-lg
2641
- text-l font-light bg-white text-primary-text flex
2642
- justify-between items-center group-hover/link:text-primary-main z-10`;
2643
- const LINK_BORDER_CLASS_NAME = 'bg-transparent border-white border h-[70px] absolute w-80 top-0';
2719
+ const LINK_CLASS_NAME = `absolute border
2720
+ bg-white flex justify-between group-hover/link:text-primary-main`;
2721
+ const LINK_BORDER_CLASS_NAME = 'hidden xl:block absolute w-full h-full border border-white';
2644
2722
  const CarouselLinkButton = JSX(({ text, href = '', target = '', className = '' }) => {
2645
2723
  const link = useLink();
2646
2724
  const adjustedProps = link({ href, target });
2647
- return text ? (jsxs("div", { className: style('flex max-w-sm relative group/link cursor-pointer w-64 h-16 sm:w-[47%] sm:h-20 sm:mr-m', className), children: [jsxs("a", { className: style(LINK_CLASS_NAME, 'rounded-md sm:rounded-none w-full h-12 sm:ml-s sm:w-full sm:h-auto'), role: "link", ...adjustedProps, children: [jsx("div", { className: "p-0.5", children: text }), jsx("div", { className: "w-6 h-6 hidden sm:block", children: jsx(Img, { className: "w-4 h-4 rounded-full box-border brightness-0 group-hover/link:brightness-100", image: { icon: 'ArrowRightIcon', iconVersion: 'black' }, imageClassName: "group-hover/link:text-primary-main", width: "24", height: "24" }) })] }), jsx("div", { className: LINK_BORDER_CLASS_NAME + ' hidden sm:block mx-1.5 mt-1.5' }), jsx("div", { className: LINK_BORDER_CLASS_NAME + ' hidden sm:block mt-3 mr-3' })] })) : null;
2725
+ return text ? (jsx("div", { className: style('flex relative group/link pl-s pb-s min-w-[16rem] xl:min-w-[20rem]', className), children: jsxs("div", { className: "relative min-h-16 w-full", children: [jsxs("a", { className: style(LINK_CLASS_NAME, 'sm:rounded-md rounded-none w-full px-xl py-lg whitespace-nowrap'), role: "link", ...adjustedProps, children: [jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text }), jsx(Img, { className: "group-hover/link:brightness-100 hidden xl:block ml-2xs", image: { icon: 'ArrowRightIcon', iconVersion: 'black' }, imageClassName: "group-hover/link:text-primary-main hidden xl:block", width: "24", height: "24" })] }), jsx("div", { className: style(LINK_BORDER_CLASS_NAME, '-bottom-1.5 -left-1.5') }), jsx("div", { className: style(LINK_BORDER_CLASS_NAME, '-bottom-3 -left-3') })] }) })) : null;
2648
2726
  });
2649
2727
 
2650
2728
  const MAX_LINKS_COUNT = 10;
2651
2729
 
2652
- const CarouselLinks = JSX(({ className, additionalDescription, description, links, title, ...rest }) => (jsxs(BlockWrapper, { className: style('flex flex-col sm:flex-row w-full overflow-hidden', className), ...rest, children: [jsxs("div", { className: "mr-xl flex-auto", children: [jsx(Headline, { isEmbedded: true, title: title, description: description, as: "h1", align: "text-left" }), additionalDescription ? (jsx(Headline, { className: "pt-m", description: additionalDescription, align: "text-left", isEmbedded: true })) : null] }), links?.length ? renderLinks(links) : null] })));
2653
- const renderLinks = (links) => {
2730
+ const CarouselLinks = JSX(({ className, additionalDescription, description, links, title, ...rest }) => (jsx(BlockWrapper, { className: style('overflow-hidden', className), ...rest, children: jsxs("div", { className: "flex flex-col @6xl:flex-row gap-m", children: [jsxs("div", { children: [jsx(Headline, { isEmbedded: true, title: title, description: description, as: "h1", align: "text-left" }), additionalDescription ? (jsx(Headline, { className: "pt-m", description: additionalDescription, align: "text-left", isEmbedded: true })) : null] }), links?.length ? renderLinks(links, '@6xl:min-w-[672px] p-0 justify-self-end') : null] }) })));
2731
+ const renderLinks = (links, className = '') => {
2654
2732
  const itemCount = Math.ceil(links.length / MAX_LINKS_COUNT);
2655
- return (jsx(Carousel, { className: "@container-normal sm:w-2/3 w-full p-0 sm:p-xs", version: "secondary", itemCount: itemCount, arrowsPadded: false, children: new Array(itemCount).fill(null).map((_, groupIndex) => (jsx("div", { className: style('flex flex-wrap self-start w-full sm:w-[672px]'), children: links
2733
+ return (jsx(Carousel, { className: className, version: "secondary", itemCount: itemCount, arrowsPadded: false, padding: "p-0", children: new Array(itemCount).fill(null).map((_, groupIndex) => (jsx("div", { className: style('flex flex-wrap gap-2xs self-start xl:justify-center @5xl:grid @5xl:grid-cols-2'), children: links
2656
2734
  .slice(groupIndex * MAX_LINKS_COUNT, (groupIndex + 1) * MAX_LINKS_COUNT)
2657
- .map((link, index) => (jsx(CarouselLinkButton, { className: "sm:m-2xs", ...link }, String(index)))) }, String(groupIndex)))) }));
2735
+ .map((link, index) => (jsx(CarouselLinkButton, { ...link }, String(index)))) }, String(groupIndex)))) }));
2658
2736
  };
2659
2737
 
2660
2738
  const DOT_SIZE_MAP = {
@@ -2679,9 +2757,7 @@
2679
2757
  };
2680
2758
  const List = JSX(({ className, hasIndent, isDotted, items, listItemSize = 'M' }) => items?.length ? (jsx("section", { className: style('flex flex-col gap-xs text-left text-primary-text group-data-secondary:text-white group-data-gray:text-secondary-text', TEXT_SIZE_MAP[listItemSize], hasIndent ? ITEM_INDENT_MAP[listItemSize] : '', className), role: "list", children: items.map((item, i) => (jsx(ListItem, { isDotted: isDotted, size: listItemSize, children: item }, String(i)))) })) : null);
2681
2759
 
2682
- const alignTextStyle = 'text-center';
2683
-
2684
- const CarouselProductCard = JSX(({ additionalDescription, align = alignTextStyle, button = {}, className = '', description, headlineSmallVersion = 'H6', href, icon, isDotted = true, isButtonFullWidth = true, isImageFullWidth = false, isTopPosition = false, items = [], target, title, version = 'primary', ...rest }) => {
2760
+ const CarouselProductCard = JSX(({ additionalDescription, align = AlignStyles, button = {}, className = '', description, headlineSmallVersion = 'H6', href, icon, isDotted = true, isButtonFullWidth = true, isImageFullWidth = false, isTopPosition = false, items = [], target, title, version = 'primary', ...rest }) => {
2685
2761
  return (jsxs(BlockWrapper, { className: style('flex flex-col justify-between', align, className), defaultPadding: "p-0", version: version, ...rest, children: [jsxs(LinkWrapper, { className: "p-m flex flex-col gap-xs", href: href, target: target, children: [renderCardTitle(headlineSmallVersion, title), renderDescription$2(description), renderItems(items, isDotted, version), renderAdditionalDescription(additionalDescription), renderImage$2(icon, isImageFullWidth, isTopPosition)] }), renderButtonsSection([button], {
2686
2762
  className: style('p-m pt-0', isButtonFullWidth ? '' : 'self-center'),
2687
2763
  isVertical: isButtonFullWidth,
@@ -2699,7 +2775,7 @@
2699
2775
 
2700
2776
  const deviation = (items) => items?.length ? Math.sqrt(Math.abs(avg(items.map((_) => _ ** 2)) - avg(items) ** 2)) : 0;
2701
2777
 
2702
- const renderBenefitIcon = (icon, benefitsVersion = 'normal') => icon ? (jsx("div", { className: style('w-12 h-12 min-w-12 box-border flex items-center justify-center rounded-icon', benefitsVersion === 'normal'
2778
+ const renderBenefitIcon = (icon, benefitsVersion = 'normal') => icon ? (jsx("div", { className: style('sm:w-12 sm:h-12 sm:min-w-12 w-11 h-11 min-w-11 box-border flex items-center justify-center rounded-icon', benefitsVersion === 'normal'
2703
2779
  ? 'bg-secondary-light text-primary-main'
2704
2780
  : 'bg-primary-main text-black group-data-secondary:bg-white/30 group-data-secondary:text-black'), children: jsx(Img, { className: "w-6 h-6", image: { ...icon, iconVersion: icon.iconVersion || benefitsVersion } }) })) : null;
2705
2781
 
@@ -2716,7 +2792,7 @@
2716
2792
 
2717
2793
  const renderBenefitText = (_, i) => _.type === 'rte' && '__html' in _ && _.__html ? (jsx(RichText, { ..._ }, `rte-${i}`)) : ([
2718
2794
  'label' in _ ? renderBenefitLabel(_.label, i) : null,
2719
- 'description' in _ ? renderBenefitDescription(_.description, i) : null,
2795
+ 'description' in _ ? (jsx("span", { className: _.descriptionClassName, children: renderBenefitDescription(_.description, i) }, String(i))) : null,
2720
2796
  ]);
2721
2797
 
2722
2798
  const BenefitItem = JSX(({ className, benefitsVersion, ..._ }) => (jsxs("div", { className: style('flex gap-m', 'description' in _ && _.description ? 'items-start' : 'items-center', className), children: ['icon' in _ ? renderBenefitIcon(_.icon, benefitsVersion) : null, jsx("div", { children: renderBenefitText(_) })] })));
@@ -2739,14 +2815,15 @@
2739
2815
 
2740
2816
  const BaseProductTile = JSX(({ className, padding, defaultPadding, title, description, headlineVersion = 'L', align = 'text-left', benefitsVersion, isTabularBenefits, benefits, __html, isFullWidthTitle = true, items, isDotted = true, listItemSize, tags = [], buttons, image, imageOptions: { imageAlign = 'end', directionRight = true, isBackground, isImageAlwaysOnRight, } = {}, children, }) => {
2741
2817
  const img = image?.src ? jsx(Img, { image: image }) : null;
2742
- const headline = (jsx(Headline, { title: title, description: description, headlineVersion: headlineVersion, align: align, isEmbedded: true }));
2818
+ const headline = renderHeadline({ title, description, headlineVersion, align });
2743
2819
  const filteredBenefits = benefits?.filter((_) => _?.type === 'rte' || 'label' in _ || 'description' in _);
2744
- return (jsx(BaseTile, { className: className, padding: padding, defaultPadding: defaultPadding, ...(isFullWidthTitle ? { insetTitle: headline } : { title: headline }), ...(isBackground ? { backImage: img } : leftOrRightImage(img, directionRight)), imageAlign: imageAlign, isImageAlwaysOnRight: isImageAlwaysOnRight, buttons: renderButtonsSection(buttons), children: jsxs("div", { className: "flex flex-col gap-xl", children: [filteredBenefits?.length ? (jsx(BenefitsList, { benefitsVersion: benefitsVersion, isTabularBenefits: isTabularBenefits, benefits: filteredBenefits })) : null, __html ? jsx(RichText, { __html: __html }) : null, items?.length ? (jsx(List, { items: items, isDotted: isDotted, listItemSize: listItemSize })) : null, children, renderTags(tags)] }) }));
2820
+ return (jsx(BaseTile, { className: className, padding: padding, defaultPadding: defaultPadding, ...(isFullWidthTitle ? { insetTitle: headline } : { title: headline }), ...(isBackground ? { backImage: img } : leftOrRightImage(img, directionRight)), imageAlign: imageAlign, isImageAlwaysOnRight: isImageAlwaysOnRight, buttons: renderButtonsSection(buttons), children: jsxs("div", { className: "flex flex-col sm:gap-xl gap-4xl", children: [filteredBenefits?.length ? (jsx(BenefitsList, { benefitsVersion: benefitsVersion, isTabularBenefits: isTabularBenefits, benefits: filteredBenefits })) : null, __html ? jsx(RichText, { __html: __html }) : null, items?.length ? (jsx(List, { items: items, isDotted: isDotted, listItemSize: listItemSize })) : null, children, renderTags(tags)] }) }));
2745
2821
  });
2746
2822
  const leftOrRightImage = (img, directionRight) => directionRight ? { rightImage: img } : { leftImage: img };
2747
2823
  const renderTags = (tags) => (tags?.length ? jsx(Tags, { tags: tags }) : null);
2824
+ const renderHeadline = ({ title, description, headlineVersion, align }) => title || description ? (jsx(Headline, { title: title, description: description, headlineVersion: headlineVersion, align: align, isEmbedded: true })) : null;
2748
2825
 
2749
- const CarouselProgramsCard = JSX(({ className, title, icon, list, href, target, ...rest }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-3xl", ...rest, children: jsx(LinkWrapper, { className: "flex items-center h-full", href: href, target: target, children: jsx(BaseProductTile, { title: title, headlineVersion: "XS", image: icon, imageOptions: { directionRight: false, imageAlign: 'center' }, benefits: list?.map((_) => ({
2826
+ const CarouselProgramsCard = JSX(({ className, title, icon, list, href, target, ...rest }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-3xl", ...rest, children: jsx(LinkWrapper, { className: "flex items-center h-full", href: href, target: target, children: jsx(BaseProductTile, { title: title, headlineVersion: "XS", image: icon, imageOptions: { directionRight: true, imageAlign: 'center' }, benefits: list?.map((_) => ({
2750
2827
  type: 'default',
2751
2828
  label: _.title,
2752
2829
  description: _.description,
@@ -2802,15 +2879,15 @@
2802
2879
  const { href } = rest;
2803
2880
  const { iconMapped, label } = findIconByHref(href);
2804
2881
  const iconCustom = getFilteredIcon(icon) ?? iconMapped;
2805
- return (jsx(Button, { className: style('border border-solid hover:border-transparent', 'group-data-primary:border-main-divider', 'hover:bg-primary-main hover:text-black', 'group-data-secondary:bg-white border-main-divider group-data-secondary:hover:bg-secondary-hover', 'group-data-gray:border-green', 'py-m group/media flex items-center justify-center box-border', buttonSizeStyle[buttonSize]), "aria-label": label, rel: "noopener noreferrer", target: "_blank", ...rest, children: jsx(Img, { image: iconCustom, imageClassName: "group-hover/media:text-white", width: "24", height: "24" }) }));
2882
+ return (jsx(Button, { className: style('border border-solid hover:border-transparent', 'group-data-primary:border-main-divider', 'hover:bg-primary-main hover:text-black', 'group-data-secondary:bg-white border-main-divider group-data-secondary:hover:bg-secondary-hover', 'group-data-gray:border-green', 'p-m min-h-14 group/media flex items-center justify-center box-border', buttonSizeStyle[buttonSize]), "aria-label": label, rel: "noopener noreferrer", target: "_blank", ...rest, children: jsx(Img, { image: iconCustom, imageClassName: "group-hover/media:text-white", width: "24", height: "24" }) }));
2806
2883
  });
2807
2884
  const getFilteredIcon = (icon) => (icon?.src || icon?.icon ? icon : undefined);
2808
2885
 
2809
2886
  const SocialMedia = JSX(({ className = '', media, children, buttonSize }) => (jsxs("div", { className: "flex flex-col sm:flex-col-reverse gap-xs", children: [children ? (jsx(Text, { size: "text-s", font: "font-light", color: "text-secondary-text", children: children })) : null, jsx("div", { className: style('flex gap-xs', className), children: media?.map((_, index) => (jsx(MediaButton, { buttonSize: buttonSize, ..._ }, String(index)))) })] })));
2810
2887
 
2811
2888
  //TODO: replace SocialMedia with renderButtonSection
2812
- const CarouselRecommendationCard = JSX(({ className, padding, description, href, icon, items = [], socialMedia = [], target, title, align = 'text-left', ...rest }) => {
2813
- return (jsx(BlockWrapper, { className: style('relative min-h-28 group-data-gray:bg-main-divider/50', className), defaultPadding: "p-0", ...rest, children: jsx(LinkWrapper, { href: href, target: target, className: "h-full", children: jsx(BaseTile, { className: "h-full", defaultPadding: "p-m", padding: padding, title: title ? (jsx(Headline, { title: title, description: description, headlineVersion: "S", isEmbedded: true, align: align })) : null, backImage: icon?.icon || icon?.src ? jsx(Img, { image: icon }) : null, buttons: socialMedia.length ? jsx(SocialMedia, { media: socialMedia }) : null, children: items.length ? jsx(List, { items: items, listItemSize: "S" }) : null }) }) }));
2889
+ const CarouselRecommendationCard = JSX(({ className, padding, description, href, icon, items = [], listItemSize = 'S', socialMedia = [], target, title, align = 'text-left', ...rest }) => {
2890
+ return (jsx(BlockWrapper, { className: style('relative min-h-28 group-data-gray:bg-main-divider/50', className), defaultPadding: "p-0", ...rest, children: jsx(LinkWrapper, { href: href, target: target, className: "h-full", children: jsx(BaseTile, { className: "h-full", defaultPadding: "p-m", padding: padding, title: title ? (jsx(Headline, { title: title, description: description, headlineVersion: "S", isEmbedded: true, align: align })) : null, backImage: icon?.icon || icon?.src ? jsx(Img, { image: icon }) : null, buttons: socialMedia.length ? jsx(SocialMedia, { media: socialMedia }) : null, children: items.length ? jsx(List, { items: items, listItemSize: listItemSize }) : null }) }) }));
2814
2891
  });
2815
2892
 
2816
2893
  const CarouselRichTextCard = JSX(({ className = '', __html, richVersion = 'striped', ...rest }) => (jsx(BlockWrapper, { className: className, ...rest, children: jsx(RichText, { __html: __html, richVersion: richVersion }) })));
@@ -2852,35 +2929,35 @@
2852
2929
  const renderIconBlock$1 = (icon) => (jsx("div", { className: "self-center", children: icon?.src || icon?.icon ? jsx(Img, { image: icon }) : null }));
2853
2930
  const renderFoldButton$1 = ({ isUnfolded, onToggle }) => (jsxs("button", { className: "w-full cursor-pointer text-primary-main pt-lg flex justify-between items-center", onClick: onToggle, children: [jsx("div", { children: isUnfolded ? 'Скрыть' : 'Подробнее о тарифе' }), jsx(Icon, { className: "text-primary-text", name: isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', width: "16", height: "16" })] }));
2854
2931
 
2855
- const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
2856
- const BORDER_CLASSES = 'border-gray border-solid border';
2857
- const DIVIDER_CLASSES$1 = 'border-main-divider border border-t-0 border-x-0';
2858
- const FIRST_CELL_CLASSES$1 = 'w-52';
2932
+ const gradientStyle = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
2933
+ const borderStyle = 'border-gray border-solid border';
2934
+ const dividerStyle$1 = 'border-main-divider border-b';
2935
+ const firstCellStyle$1 = 'w-52';
2859
2936
  const COLS_LENGTH_FOR_SCROLL$1 = 3;
2860
2937
  const COLUMN_WIDTH$2 = 4 * 80 + 4 * 4; // w-80 + gap-4 = 336px
2861
2938
 
2862
- const HeaderCell = JSX(({ icon, image, title, link }) => (jsxs("div", { className: `w-80 box-border flex flex-col gap-m items-center rounded-t-md border-b-0 p-2xl ${BORDER_CLASSES} ${GRADIENT}`, role: "columnheader", children: [icon && !image?.src && (jsx(Img, { className: "h-16 w-16 min-w-16 min-h-16", image: icon, width: "64", height: "64" })), image?.src && jsx(Img, { image: image }), title ? (jsx(Heading, { headingType: "h4", as: "h3", className: "text-center text-white", title: title })) : null, link?.text && (jsx("div", { className: "mt-auto w-full", children: jsx(Button, { href: link.href, target: link.target, className: "w-full text-primary-main bg-white hover:bg-secondary-hover active:bg-secondary-active", children: jsx("div", { className: "text-xs font-light font-medium py-s", children: link.text }) }) }))] })));
2939
+ const HeaderCell = JSX(({ icon, image, title, link }) => (jsxs("div", { className: style('w-80 box-border flex flex-col gap-m items-center rounded-t-md border-b-0 p-2xl', borderStyle, gradientStyle), role: "columnheader", children: [icon && !image?.src && (jsx(Img, { className: "h-16 w-16 min-w-16 min-h-16", image: icon, width: "64", height: "64" })), image?.src && jsx(Img, { image: image }), title ? (jsx(Heading, { headingType: "h4", as: "h3", className: "text-center text-white", title: title })) : null, link?.text && (jsx("div", { className: "mt-auto w-full", children: jsx(Button, { href: link.href, target: link.target, className: "w-full text-primary-main bg-white hover:bg-secondary-hover active:bg-secondary-active", children: jsx("div", { className: "text-xs font-light font-medium py-s", children: link.text }) }) }))] })));
2863
2940
 
2864
2941
  const carouselContainerClassesMap = {
2865
2942
  comparison: 'flex gap-m duration-1000',
2866
- tariff: 'flex flex-grow duration-1000',
2943
+ tariff: 'flex gap-5xl flex-grow duration-1000',
2867
2944
  };
2868
2945
  const TableCarouselContainer = JSX(({ children, activeIndex, columnWidth, version = 'comparison' }) => (jsx("div", { className: "flex flex-1 overflow-hidden", children: jsx("div", { className: carouselContainerClassesMap[version], style: { transform: `translateX(-${activeIndex * columnWidth}px)` }, children: children }) })));
2869
2946
 
2870
2947
  const TableRowContainer = JSX(({ children }) => (jsx("div", { className: "self-start flex flex-col", role: "row", children: jsx("div", { className: "flex gap-xl", children: children }) })));
2871
2948
 
2872
- const ComparisonTableColumnHeaders = JSX(({ colHeaders, activeIndex }) => (jsxs(TableRowContainer, { children: [jsx("div", { className: FIRST_CELL_CLASSES$1, role: "columnheader" }), jsx(TableCarouselContainer, { activeIndex: activeIndex, columnWidth: COLUMN_WIDTH$2, children: colHeaders.map((header, i) => (jsx(HeaderCell, { ...header }, String(i)))) })] })));
2949
+ const ComparisonTableColumnHeaders = JSX(({ colHeaders, activeIndex }) => (jsxs(TableRowContainer, { children: [jsx("div", { className: firstCellStyle$1, role: "columnheader" }), jsx(TableCarouselContainer, { activeIndex: activeIndex, columnWidth: COLUMN_WIDTH$2, children: colHeaders.map((header, i) => (jsx(HeaderCell, { ...header }, String(i)))) })] })));
2873
2950
 
2874
2951
  const TableCell = JSX(({ cell, isFirstRow, isLastRow, isFillGradient }) => {
2875
- const cellWrapperClasses = `w-80 box-border flex flex-col ${BORDER_CLASSES} ${!isLastRow ? 'border-y-0' : 'border-t-0 rounded-b-md'} ${isFillGradient ? GRADIENT : ''}`;
2876
- const cellClasses = `mx-2xl h-full ${DIVIDER_CLASSES$1} ${isFillGradient && isFirstRow ? 'border-t' : ''} ${!isLastRow ? 'border-solid' : 'border-b-0'}`;
2877
- return (jsx("div", { className: cellWrapperClasses, role: "cell", children: jsx("div", { className: cellClasses, children: cell.map((item, i) => renderCellInner$1(item, i, isFillGradient)) }) }));
2952
+ const cellWrapperStyle = style('w-80 box-border flex flex-col', borderStyle, !isLastRow ? 'border-y-0' : 'border-t-0 rounded-b-md', isFillGradient ? gradientStyle : '');
2953
+ const cellStyle = style('mx-2xl h-full', dividerStyle$1, isFillGradient && isFirstRow ? 'border-t' : '', !isLastRow ? 'border-solid' : 'border-b-0');
2954
+ return (jsx("div", { className: cellWrapperStyle, role: "cell", children: jsx("div", { className: cellStyle, children: cell.map((item, i) => renderCellInner$1(item, i, isFillGradient)) }) }));
2878
2955
  });
2879
2956
  const labelStyle = (isFillGradient = false) => `text-xl m-0 ${isFillGradient ? 'text-white' : ''}`;
2880
2957
  const descriptionStyle = (isFillGradient = false) => `text-s opacity-80 ${isFillGradient ? 'text-white' : 'text-secondary-text'}`;
2881
2958
  const renderCellInner$1 = ({ label, description }, i, isFillGradient) => (jsxs("div", { className: "first:pt-2xl pt-xl last:pb-2xl", children: [label ? jsx("h4", { className: labelStyle(isFillGradient), children: label }) : null, description ? jsx("div", { className: descriptionStyle(isFillGradient), children: description }) : null] }, String(i)));
2882
2959
 
2883
- const titleStyle = (isLastRow = false) => `text-s py-2xl ${DIVIDER_CLASSES$1} ${FIRST_CELL_CLASSES$1} ${isLastRow ? 'border-b-0' : 'border-solid'}`;
2960
+ const titleStyle = (isLastRow = false) => style('text-s py-2xl', dividerStyle$1, firstCellStyle$1, isLastRow ? 'border-b-0' : 'border-solid');
2884
2961
  const TableRow = JSX(({ row: { header, data }, activeIndex, isColoredFirstColumn, isFirstRow, isLastRow }) => (jsxs(TableRowContainer, { children: [header?.title ? jsx("div", { className: titleStyle(isLastRow), children: header.title }) : null, data?.length ? (jsx(TableCarouselContainer, { activeIndex: activeIndex, columnWidth: COLUMN_WIDTH$2, children: data.map((cell, i) => (jsx(TableCell, { cell: cell, isFirstRow: isFirstRow, isLastRow: isLastRow, isFillGradient: isColoredFirstColumn && i === 0 }, String(i)))) })) : null] })));
2885
2962
 
2886
2963
  const ComparisonTableRows = JSX(({ rowData, isColoredFirstColumn, activeIndex, controls }) => {
@@ -2919,12 +2996,43 @@
2919
2996
  ? renderShowMoreToggleButton({ isShowAllRow, onClick: handleToggle })
2920
2997
  : null] }));
2921
2998
  });
2922
- const renderShowMoreToggleButton = ({ isShowAllRow, onClick, }) => (jsx("div", { className: "pr-6xl", children: jsxs("div", { className: "flex gap-m w-full", children: [jsx("div", { className: FIRST_CELL_CLASSES$1 }), jsx("button", { onClick: onClick, className: "py-xs flex-1 border-gray border-solid border text-primary-text bg-white hover:border-primary-main hover:text-primary-main", children: jsx(Text, { size: "text-xs", font: "font-medium", children: !isShowAllRow ? 'Показать все параметры' : 'Скрыть' }) })] }) }));
2999
+ const renderShowMoreToggleButton = ({ isShowAllRow, onClick, }) => (jsx("div", { className: "pr-6xl", children: jsxs("div", { className: "flex gap-m w-full", children: [jsx("div", { className: firstCellStyle$1 }), jsx("button", { onClick: onClick, className: "py-xs flex-1 border-gray border-solid border text-primary-text bg-white hover:border-primary-main hover:text-primary-main", children: jsx(Text, { size: "text-xs", font: "font-medium", children: !isShowAllRow ? 'Показать все параметры' : 'Скрыть' }) })] }) }));
2923
3000
 
2924
3001
  const ContactsBlock = JSX(({ className, contacts, info, version = 'secondary', ...rest }) => (jsxs(BlockWrapper, { className: style('flex', className), defaultPadding: "p-6xl", version: version, ...rest, children: [info?.length ? renderBlocks(info) : null, contacts?.length ? renderBlocks(contacts) : null] })));
2925
3002
  const renderBlocks = (info) => (jsx("div", { className: "flex gap-5xl grow basis-0", children: info.map((column, index) => renderBlocksColumn({ column, index })) }));
2926
3003
  const renderBlocksColumn = ({ column, index }) => column ? (jsx("div", { className: "flex flex-col gap-xl grow basis-0", children: column.map(({ title = '', description, additionalDescription, button }, key) => (jsxs("div", { children: [jsx(Headline, { title: title, description: description, headlineVersion: "XS", align: "text-left", isEmbedded: true }), additionalDescription ? (jsx("div", { className: "mt-xs opacity-80", children: jsx(Paragraph, { size: "text-m", font: "font-light", children: additionalDescription }) })) : null, button?.href ? jsx(Button, { className: "mt-xl", ...button }) : null] }, String(key)))) }, `col-${String(index)}`)) : null;
2927
3004
 
3005
+ const TextWithIcon = JSX(({ textNode, iconNode, tag, onClick, justifyContent = 'between', className, ...rest }) => {
3006
+ const Tag = tag;
3007
+ return (jsxs(Tag, { tag: tag, className: style('flex items-center w-full gap-1', justifyContent === 'between' ? 'justify-between' : 'justify-center', className), onClick: onClick, ...rest, children: [textNode ? jsx("div", { children: textNode }) : null, iconNode ? jsx("div", { children: iconNode }) : null] }));
3008
+ });
3009
+
3010
+ const DefaultFoldButton = JSX(({ className = '', label, icon, dataTheme = '', disabled = false, onClick }) => (jsx(TextWithIcon, { tag: "button", onClick: onClick, disabled: disabled, "data-theme": dataTheme, justifyContent: "center", className: style('py-4 border border-transparent outline-none focus:border-primary-text', disabled
3011
+ ? 'bg-main-divider text-main-disabled hover:bg-main-divider'
3012
+ : 'bg-primary-main text-white hover:bg-primary-hove', className), textNode: jsx("span", { className: "text-h4 pr-s", children: label }), iconNode: icon ? (jsx(Img, { image: {
3013
+ icon,
3014
+ iconVersion: 'white',
3015
+ }, className: "my-auto", width: "20", height: "20" })) : null })));
3016
+ const renderDefaultFoldButton = ({ isUnfolded, onToggle }) => {
3017
+ const labels = ['Развернуть', 'Скрыть'];
3018
+ const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
3019
+ return (jsx(DefaultFoldButton, { icon: icons[Number(isUnfolded)], label: labels[Number(isUnfolded)], onClick: onToggle }));
3020
+ };
3021
+
3022
+ const ICONS = ['ArrowDownIcon', 'ArrowUpIcon'];
3023
+ const resultsGridStyle = 'space-y-px lg:space-y-0 lg:grid lg:grid-cols-12 gap-2xs border-box';
3024
+ const BaseFiltrationInner = JSX(({ label = '', blocksToRender = [], topItemsCount = 0, block, notFound, ...rest }) => {
3025
+ const [visibleBlocks, hiddenBlocks] = topItemsCount > 0
3026
+ ? [blocksToRender.slice(0, topItemsCount), blocksToRender.slice(topItemsCount)]
3027
+ : [blocksToRender, []];
3028
+ return (jsxs("div", { children: [jsx("div", { className: style(blocksToRender.length ? 'hidden' : 'block'), children: notFound ? renderNotFound(notFound) : null }), jsxs("div", { className: style('space-y-2xs', blocksToRender.length ? '' : 'hidden'), children: [jsx("div", { className: style(resultsGridStyle), children: renderBlocksList(visibleBlocks, { ...rest.options, parent: block }) }), jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => {
3029
+ return (jsx(FoldableSection, { className: style(resultsGridStyle), isUnfolded: isUnfolded, children: renderBlocksList(hiddenBlocks, { ...rest.options, parent: block }) }));
3030
+ }, renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(DefaultFoldButton, { className: style(topItemsCount < 1 ? 'hidden' : ''), disabled: !hiddenBlocks?.length, label: label, icon: ICONS[Number(isUnfolded)], dataTheme: rest.options?.page?.colorPalette, onClick: onToggle })) })] })] }));
3031
+ });
3032
+ function renderNotFound({ title, description }) {
3033
+ return (jsx("div", { className: "bg-white py-20", children: jsx(Headline, { title: title, description: description, headlineVersion: "S", isEmbedded: true }) }));
3034
+ }
3035
+
2928
3036
  const isEmpty = (v) => v === null ||
2929
3037
  v === undefined ||
2930
3038
  v === '' ||
@@ -2938,14 +3046,17 @@
2938
3046
  const isNumberFieldMatch = (key, pattern) => (target) => isEmpty(pattern[key]) ||
2939
3047
  isEmpty(target[key]) ||
2940
3048
  naturalNumber(pattern[key]) <= naturalNumber(target[key]);
3049
+ const isMultipleNumberFieldMatch = (key, pattern) => (target) => isEmpty(pattern[key]) || isEmpty(target[key]) || target[key]?.includes(pattern[key]);
2941
3050
  const isValueInRange = (key, pattern) => (target) => isEmpty(pattern[key]) ||
2942
3051
  isEmpty(target[key]) ||
2943
3052
  (naturalNumber(pattern[key]?.min) >= naturalNumber(target[key]?.min) &&
2944
3053
  naturalNumber(pattern[key]?.min) <= naturalNumber(target[key]?.max));
2945
- const checkShouldRenderBlock = (pattern, target) => Object.entries(pattern)
3054
+ const shouldRenderBlock = (pattern, target) => Object.entries(pattern)
2946
3055
  .map(([key, subPattern]) => {
2947
3056
  if (typeof subPattern === 'number') {
2948
- return isNumberFieldMatch(key, pattern);
3057
+ return Array.isArray(target[key])
3058
+ ? isMultipleNumberFieldMatch(key, pattern)
3059
+ : isNumberFieldMatch(key, pattern);
2949
3060
  }
2950
3061
  if (typeof subPattern === 'object' && 'min' in subPattern && 'max' in subPattern) {
2951
3062
  return isValueInRange(key, pattern);
@@ -2957,34 +3068,7 @@
2957
3068
  .every((predicate) => predicate(target));
2958
3069
  const naturalNumber = (n) => Number(n || 0);
2959
3070
 
2960
- const DefaultFoldButton = JSX(({ className = '', label, icon, dataTheme = '', disabled = false, onClick }) => {
2961
- return (jsxs("button", { className: style('flex justify-center w-full py-4 border border-transparent outline-none focus:border-primary-text', disabled
2962
- ? 'bg-main-divider text-main-disabled hover:bg-main-divider'
2963
- : 'bg-primary-main text-white hover:bg-primary-hove', className), onClick: onClick, disabled: disabled, "data-theme": dataTheme, children: [jsx("span", { className: "text-h4 pr-s", children: label }), icon ? (jsx(Img, { image: {
2964
- icon,
2965
- iconVersion: 'white',
2966
- }, className: "flex-shrink-0 my-auto", width: "20", height: "20" })) : null] }));
2967
- });
2968
- const renderDefaultFoldButton = ({ isUnfolded, onToggle }) => {
2969
- const labels = ['Развернуть', 'Скрыть'];
2970
- const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
2971
- return (jsx(DefaultFoldButton, { icon: icons[Number(isUnfolded)], label: labels[Number(isUnfolded)], onClick: onToggle }));
2972
- };
2973
-
2974
- const ICONS = ['ArrowDownIcon', 'ArrowUpIcon'];
2975
- const resultsGridStyle = 'space-y-px lg:space-y-0 lg:grid lg:grid-cols-12 gap-2xs border-box';
2976
- const BaseFiltrationInner = JSX(({ label = '', filtrationState = {}, topItemsCount = 0, block, notFound, ...rest }) => {
2977
- const blocksToRender = block?.blocks?.filter((b) => checkShouldRenderBlock(filtrationState, b.content || {})) || [];
2978
- const [visibleBlocks, hiddenBlocks] = topItemsCount > 0
2979
- ? [blocksToRender.slice(0, topItemsCount), blocksToRender.slice(topItemsCount)]
2980
- : [blocksToRender, []];
2981
- return (jsxs("div", { children: [jsx("div", { className: style(blocksToRender.length ? 'hidden' : 'block'), children: notFound ? renderNotFound(notFound) : null }), jsxs("div", { className: style('space-y-2xs', blocksToRender.length ? '' : 'hidden'), children: [jsx("div", { className: style(resultsGridStyle), children: renderBlocksList(visibleBlocks, { ...rest.options, parent: block }) }), jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => {
2982
- return (jsx(FoldableSection, { className: style(resultsGridStyle), isUnfolded: isUnfolded, children: renderBlocksList(hiddenBlocks, { ...rest.options, parent: block }) }));
2983
- }, renderFoldButton: ({ isUnfolded, onToggle }) => (jsx(DefaultFoldButton, { className: style(topItemsCount < 1 ? 'hidden' : ''), disabled: !hiddenBlocks?.length, label: label, icon: ICONS[Number(isUnfolded)], dataTheme: rest.options?.page?.colorPalette, onClick: onToggle })) })] })] }));
2984
- });
2985
- function renderNotFound({ title, description }) {
2986
- return (jsx("div", { className: "bg-white py-20", children: jsx(Headline, { title: title, description: description, headlineVersion: "S", isEmbedded: true }) }));
2987
- }
3071
+ const getBlocksToRender = (blocks, filtrationState) => (normalize = identity) => blocks && blocks.filter((b) => shouldRenderBlock(filtrationState, normalize(b.content || {})));
2988
3072
 
2989
3073
  const SlideCheckboxGroup = JSX(({ value, onChange, items = [], multiple }) => {
2990
3074
  const handleChange = (newValue) => {
@@ -3002,7 +3086,7 @@
3002
3086
  return items.map((item) => (jsx(SlideCheckbox, { text: item.title, value: [value].flatMap((_) => _).includes(item.value), onChange: () => handleChange(item.value), type: multiple ? 'checkbox' : 'radio' }, item.value)));
3003
3087
  });
3004
3088
 
3005
- const renderFiltrationForm = ({ field, reset, filtrationSchema, resetButton, children, }) => (jsxs("form", { className: "flex flex-col @4xl:flex-row justify-between bg-white p-4xl gap-s @4xl:gap-0", children: [jsxs("div", { className: "flex flex-col @4xl:flex-row gap-5xl", children: [children, Object.entries(filtrationSchema).map(renderFormItem(field))] }), resetButton ? (jsx("div", { children: jsx(Button, { className: "w-full @4xl:w-72 @4xl:ml-s", onClick: reset, ...resetButton }) })) : null] }));
3089
+ const renderFiltrationForm$1 = ({ field, reset, filtrationSchema, resetButton, children, }) => (jsxs("form", { className: "flex flex-col @4xl:flex-row justify-between bg-white p-4xl gap-s @4xl:gap-0", children: [jsxs("div", { className: "flex flex-col @4xl:flex-row gap-5xl", children: [children, Object.entries(filtrationSchema).map(renderFormItem(field))] }), resetButton ? (jsx("div", { children: jsx(Button, { className: "w-full @4xl:w-72 @4xl:ml-s", onClick: reset, ...resetButton }) })) : null] }));
3006
3090
  const renderFormItem = (field) => ([key, item]) => {
3007
3091
  const type = item?.type;
3008
3092
  switch (type) {
@@ -3018,8 +3102,35 @@
3018
3102
  return (jsxs("div", { children: [item?.title ? (jsx("div", { className: "mb-m", children: jsx(Text, { size: "text-m", font: "font-light", color: "text-secondary-text", children: item.title }) })) : null, jsx(SlideCheckboxGroup, { items: options, multiple: true, ...field(key) })] }, key));
3019
3103
  };
3020
3104
 
3021
- const DEFAULT_MIN_MONTHS = 3;
3022
- const DEFAULT_MAX_MONTHS = 60;
3105
+ const getPeriod = (source, content) => source[content?.sourceBook]?.rateRows
3106
+ .map((el) => el.minMonths)
3107
+ .filter((minMonths) => minMonths !== undefined);
3108
+
3109
+ async function fetchMultitudeJSON(...urls) {
3110
+ const fetchPromises = urls.map((url) => fetchJSON(url));
3111
+ return await Promise.all(fetchPromises);
3112
+ }
3113
+
3114
+ const unique = (list) => [...new Set(list)];
3115
+
3116
+ const getChildSourceBook = (blocks) => blocks?.filter(hasSourceBook).map(({ content: { sourceBook } }) => sourceBook);
3117
+ const hasSourceBook = (block) => Boolean(block && block.content && typeof block.content.sourceBook === 'string');
3118
+
3119
+ function useDepositsPeriods(blocks) {
3120
+ const { dirs = [], source = [] } = useMemo(() => {
3121
+ const sourceBooks = getChildSourceBook(blocks);
3122
+ return { dirs: sourceBooks?.map((url) => `/wcms-resources/${url}.json`), source: sourceBooks };
3123
+ }, [blocks]);
3124
+ const { data = [] } = useAsyncData(dirs, fetchMultitudeJSON);
3125
+ return {
3126
+ source: Object.fromEntries(zip(source, data).filter(([, sourceData]) => Boolean(sourceData))),
3127
+ months: unique(data
3128
+ .flatMap((item) => item?.rateRows || [])
3129
+ .filter((row) => typeof row.minMonths === 'number' && row.minMonths === row.maxMonths)
3130
+ .map((row) => row.minMonths)).sort((a, b) => a - b) || [],
3131
+ };
3132
+ }
3133
+
3023
3134
  const DEFAULT_MIN_SUM = 500;
3024
3135
  const DEFAULT_MAX_SUM = 1000000000;
3025
3136
  const initialFiltrationState$1 = {
@@ -3027,79 +3138,38 @@
3027
3138
  min: 10000,
3028
3139
  max: DEFAULT_MAX_SUM,
3029
3140
  },
3030
- period: {
3031
- min: 3,
3032
- max: 36,
3033
- },
3141
+ period: 3,
3034
3142
  };
3035
3143
  const DepositFiltration = JSX(({ className, filtrationSchema = {}, resetButton, sumInput, periodInput, ...rest }) => {
3144
+ const { source, months } = useDepositsPeriods(rest.block?.blocks);
3036
3145
  const [filtrationState, { field, reset }] = useForm(initialFiltrationState$1);
3037
- const maxPeriodValue = periodInput?.max || DEFAULT_MAX_MONTHS;
3146
+ const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)((content) => ({ ...content, period: getPeriod(source, content || {}) || [] }));
3038
3147
  const Inputs = (jsxs("div", { children: [jsx(CurrencyInput, { label: sumInput?.title, min: DEFAULT_MIN_SUM, max: DEFAULT_MAX_SUM, ...field('sum', {
3039
3148
  parse: (min) => ({ min: Number(min), max: DEFAULT_MAX_SUM }),
3040
3149
  format: ({ min }) => String(min),
3041
- }) }), jsx(InputRange, { title: periodInput?.title, items: ['От 3 мес', 'До 5 лет'], min: periodInput?.min || DEFAULT_MIN_MONTHS, max: maxPeriodValue, ...field('period', {
3042
- parse: (min) => ({ min, max: maxPeriodValue }),
3043
- format: ({ min }) => min,
3044
- }) })] }));
3045
- return (jsxs(BlockWrapper, { className: style('space-y-2xs', className), defaultPadding: "p-0", version: "transparent", ...rest, children: [renderFiltrationForm({ field, reset, filtrationSchema, resetButton, children: Inputs }), jsx(BaseFiltrationInner, { filtrationState: filtrationState, ...rest })] }));
3150
+ }) }), jsx(InputRange, { title: periodInput?.title, items: ['От 3 мес', 'До 5 лет'], list: months, ...field('period') })] }));
3151
+ return (jsxs(BlockWrapper, { className: style('space-y-2xs', className), defaultPadding: "p-0", version: "transparent", ...rest, children: [renderFiltrationForm$1({ field, reset, filtrationSchema, resetButton, children: Inputs }), jsx(BaseFiltrationInner, { blocksToRender: blocksToRender, ...rest })] }));
3046
3152
  });
3153
+ const sourceBookSchema = {
3154
+ type: 'string',
3155
+ title: 'Адрес справочника',
3156
+ };
3047
3157
  DepositFiltration.childrenTypes = ['ProductTile'];
3048
- DepositFiltration.childSchema = (content) => content?.filtrationSchema || {};
3158
+ DepositFiltration.childSchema = (content) => ({
3159
+ ...(content?.filtrationSchema || {}),
3160
+ sourceBook: sourceBookSchema,
3161
+ });
3049
3162
 
3050
3163
  const renderErrorContent = (error) => {
3051
3164
  if (error?.contentType === 'Image' && error?.image) {
3052
3165
  return jsx(Img, { image: error.image });
3053
3166
  }
3054
3167
  if (error?.contentType === 'Code' && error.code) {
3055
- return jsx("div", { className: "font-mohave text-title-extra gradient-color-text", children: error.code });
3168
+ return (jsx("div", { className: "font-mohave text-title-large sm:text-title-extra gradient-color-text", children: error.code }));
3056
3169
  }
3057
3170
  return null;
3058
3171
  };
3059
- const ErrorBlock = JSX(({ className = '', title, description, error, button, ...rest }) => (jsxs(BlockWrapper, { className: style('flex flex-col gap-2xl justify-center items-center', className), defaultPadding: style('p-6xl'), version: "transparent", ...rest, children: [jsx("div", { className: "flex justify-center", children: renderErrorContent(error) }), jsx(Headline, { title: title, description: description, headlineVersion: "XL", isEmbedded: true }), button?.text ? jsx(Button, { version: button?.version, text: button?.text, ...button }) : null] })));
3060
-
3061
- var Currencies;
3062
- (function (Currencies) {
3063
- Currencies["EUR"] = "EUR";
3064
- Currencies["USD"] = "USD";
3065
- Currencies["GBP"] = "GBP";
3066
- Currencies["AUD"] = "AUD";
3067
- Currencies["CNY"] = "CNY";
3068
- Currencies["RUB"] = "RUB";
3069
- })(Currencies || (Currencies = {}));
3070
-
3071
- const CURRENCY_ICONS_MAP$1 = {
3072
- USD: 'DollarIcon',
3073
- EUR: 'EuroIcon',
3074
- GBP: 'DollarIcon',
3075
- AUD: 'DollarIcon',
3076
- CNY: 'DollarIcon',
3077
- RUB: 'RoundRubleIcon',
3078
- };
3079
- const renderCurrencyRow$1 = ({ title, buyPrice, buyDifference, sellPrice, sellDifference, buyOfficeName, sellOfficeName, }) => {
3080
- return (jsxs("tr", { className: "pb-2xs text-h6", children: [jsx("td", { className: "pt-m", children: jsxs("div", { className: "flex items-center", children: [title ? (jsx(Img, { image: { icon: CURRENCY_ICONS_MAP$1[title] }, width: "24", height: "24" })) : null, jsx("span", { className: "ml-xs", children: title })] }) }), renderCurrency(buyPrice, buyDifference), renderCurrency(sellPrice, sellDifference), renderOffice(buyPrice, buyOfficeName), renderOffice(sellPrice, sellOfficeName)] }, title));
3081
- };
3082
- const formatCurrency$1 = (value) => (value ? currencyNumberFormat$1.format(value) : '');
3083
- const renderCurrency = (price, difference) => {
3084
- return (jsxs("td", { className: "pt-m pl-5xl", children: [jsx("div", { children: formatCurrency$1(price) }), jsx("div", { className: style('font-normal text-sm text-secondary-text', (difference || 0) >= 0 ? 'text-green' : 'text-red'), children: formatCurrency$1(difference) })] }));
3085
- };
3086
- const renderOffice = (price, officeName = '') => {
3087
- return (jsxs("td", { className: "pt-m pl-5xl", children: [jsx("div", { children: formatCurrency$1(price) }), jsx("div", { className: "font-normal text-sm text-green", children: officeName })] }));
3088
- };
3089
- const currencyNumberFormat$1 = new Intl.NumberFormat('ru', {
3090
- style: 'currency',
3091
- currency: Currencies.RUB,
3092
- });
3093
-
3094
- const renderTableHeader = (title) => {
3095
- return (jsx("th", { className: "pl-5xl", children: jsx(Text, { size: "text-m", font: "font-light", align: "text-left", color: "text-secondary-text", children: title }) }));
3096
- };
3097
-
3098
- const ExchangeRateOffice = JSX(({ className, currencies = [], actuality = '', officeName = '', ...rest }) => {
3099
- const fourRates = topNRates(currencies, 4);
3100
- return (jsxs(BlockWrapper, { className: style('space-y-3xl', className), ...rest, children: [jsxs("div", { className: "flex flex-row flex-grow-0 justify-between space-y-lg", children: [jsx(Heading, { headingType: "h4", title: 'Курс обмена валют в ' + officeName, className: "whitespace-pre-wrap text-h4" }), jsx("div", { className: "pl-6xl", children: jsx(Text, { size: "text-m", font: "font-light", align: "text-left", color: "text-secondary-text", children: actuality }) })] }), jsx("div", { className: "flex flex-row pt-m text-left", children: fourRates.length > 0 ? (jsxs("table", { className: style('h-fit w-fit', className), children: [jsx("thead", { children: jsxs("tr", { children: [jsx("th", { children: jsx(Text, { size: "text-m", font: "font-light", align: "text-left", color: "text-secondary-text", children: "\u0412\u0430\u043B\u044E\u0442\u0430" }) }), renderTableHeader('Купить'), renderTableHeader('Продать'), renderTableHeader('Лучшая покупка'), renderTableHeader('Лучшая продажа')] }) }), jsx("tbody", { children: fourRates.map((item) => renderCurrencyRow$1(item)) })] })) : null })] }));
3101
- });
3102
- const topNRates = (rates, n) => rates.sort((a, b) => Number(a.id) - Number(b.id)).slice(0, n);
3172
+ const ErrorBlock = JSX(({ className = '', title, description, error, button, ...rest }) => (jsxs(BlockWrapper, { className: style('flex flex-col justify-center items-center', className), defaultPadding: style('p-6xl'), version: "transparent", ...rest, children: [jsx("div", { className: "flex justify-center", children: renderErrorContent(error) }), jsx(Headline, { title: title, description: description, headlineVersion: "XL", isEmbedded: true, className: "mb-2xl last:mb-0" }), button?.text ? jsx(Button, { version: button?.version, text: button?.text, ...button }) : null] })));
3103
3173
 
3104
3174
  var Currency;
3105
3175
  (function (Currency) {
@@ -3314,18 +3384,13 @@
3314
3384
  return (jsxs("div", { className: style('font-sans relative', className), role: "form", children: [jsx("div", { className: "absolute h-full flex items-center pl-m pointer-events-none", children: jsx(Img, { image: { icon: 'LoupeIcon', iconVersion: 'black' }, width: "24", height: "24" }) }), jsx("input", { className: style('h-12 w-full px-10 text-l text-black outline-none box-border', 'border border-solid rounded-md border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text'), value: value, type: "text", name: "search-bar-input", placeholder: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", autoFocus: autoFocus, onChange: handleChange, onFocus: onFocus })] }));
3315
3385
  });
3316
3386
 
3317
- const useDebouncedEffect = (effect, deps, delay = 300) => useEffect(() => {
3318
- const timerId = setTimeout(effect, delay);
3319
- return () => {
3320
- clearTimeout(timerId);
3321
- };
3322
- }, deps);
3323
-
3324
- const compareBy = (indexOf) => (a, b) => indexOf(a) - indexOf(b);
3325
- const desc = (cmp) => (a, b) => -cmp(a, b);
3326
-
3327
- function zip(firstCol, ...restCols) {
3328
- return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
3387
+ function useDebouncedEffect(effect, deps, delay = 300) {
3388
+ useEffect(() => {
3389
+ const timerId = globalThis.setTimeout(effect, delay);
3390
+ return () => {
3391
+ globalThis.clearTimeout(timerId);
3392
+ };
3393
+ }, deps);
3329
3394
  }
3330
3395
 
3331
3396
  const joinMaps = (aggregate, emptyVal) => (acc, map) => {
@@ -3614,6 +3679,11 @@
3614
3679
  return result;
3615
3680
  };
3616
3681
 
3682
+ const SearchBar = JSX(({ className, searchTerm, onSearch }) => {
3683
+ return (jsxs("form", { className: `font-sans relative ${className}`, children: [jsx("div", { className: "absolute rounded h-full flex items-center justify-center pl-m max-w-44 gap-s pointer-events-none", children: searchTerm ? null : (jsx("label", { htmlFor: "search-bar-input", className: `text-secondary-text `, children: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0444\u0438\u043B\u0438\u0430\u043B\u0430\u043C" })) }), jsx("input", { id: "search-bar-input", className: `h-12 pl-m w-full peer text-l text-black border border-solid rounded-md box-border
3684
+ outline-none border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text`, value: searchTerm, onChange: (e) => onSearch(e.target.value.toLowerCase()), type: "text", name: "location-search-bar-input" })] }));
3685
+ });
3686
+
3617
3687
  const renderForeignOffices = (foreignOffices) => foreignOffices?.length ? (jsxs("div", { className: "border-t border-main-divider mt-2xs pt-2xs", children: [jsx("div", { className: "mb-m", children: jsx(Text, { size: "text-m", font: "font-light", color: "text-secondary-text", children: "\u041F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430 \u0437\u0430 \u0440\u0443\u0431\u0435\u0436\u043E\u043C:" }) }), jsx("div", { className: "flex gap-5xl", children: foreignOffices.map((office, i) => (jsx(ForeignOffice, { ...office }, String(i)))) })] })) : null;
3618
3688
  const ForeignOffice = JSX(({ icon, ...rest }) => {
3619
3689
  const link = useLink();
@@ -3627,11 +3697,6 @@
3627
3697
 
3628
3698
  const renderRegionGroup = (onChangeLocation) => ([letter, regions]) => (jsxs("div", { className: "break-inside-avoid mb-2xl w-56", children: [jsx("div", { className: "mb-s", children: jsx(Text, { size: "text-h6", children: letter }) }), regions.map(renderRegion(onChangeLocation))] }, letter));
3629
3699
 
3630
- const SearchBar = JSX(({ className, searchTerm, onSearch }) => {
3631
- return (jsxs("form", { className: `font-sans relative ${className}`, children: [jsx("div", { className: "absolute rounded h-full flex items-center justify-center pl-m max-w-44 gap-s pointer-events-none", children: searchTerm ? null : (jsx("label", { htmlFor: "search-bar-input", className: `text-secondary-text `, children: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0444\u0438\u043B\u0438\u0430\u043B\u0430\u043C" })) }), jsx("input", { id: "search-bar-input", className: `h-12 pl-m w-full peer text-l text-black border border-solid rounded-md box-border
3632
- outline-none border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text`, value: searchTerm, onChange: (e) => onSearch(e.target.value.toLowerCase()), type: "text", name: "location-search-bar-input" })] }));
3633
- });
3634
-
3635
3700
  const SEARCH_TERM_MIN_LENGTH = 3;
3636
3701
  const LocationDialog = JSX(() => {
3637
3702
  const { defaultLocation, foreignOffices } = useSitemap();
@@ -3997,17 +4062,17 @@
3997
4062
  return (jsx("div", { role: "listitem", children: jsx(LinkDocItem, { text: docBlockDef?.text, target: docBlockDef?.target, href: href, fileSize: fileSize, icon: icon ? jsx(Img, { className: linkIconStyle, image: icon, width: "24", height: "24" }) : null }) }, String(i)));
3998
4063
  };
3999
4064
 
4000
- const renderDescription$1 = (description) => description ? (jsx("div", { className: "mb-lg pt-3xs", children: jsx(Text, { size: "text-xl", "font-weight": "light", children: description }) })) : null;
4065
+ const renderDescription$1 = (description) => description ? (jsx("div", { className: "mb-lg pt-3xs", children: jsx(Text, { size: "text-xl", "font-weight": "font-light", children: description }) })) : null;
4001
4066
 
4002
- const renderList$1 = (items) => {
4003
- return items?.length ? (jsx(List, { items: items, className: "text-l font-light" })) : (jsx("span", { className: "text-m font-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" }));
4067
+ const renderList$1 = (items, listItemSize) => {
4068
+ return items?.length ? (jsx(List, { items: items, listItemSize: listItemSize, className: "text-l font-light" })) : (jsx("span", { className: "text-m font-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" }));
4004
4069
  };
4005
4070
 
4006
4071
  const buttonsConditionStyle = (buttons) => renderButtonsSection(buttons, { isVertical: false });
4007
4072
 
4008
- const MobileAppTile = JSX(({ className, padding, alignTitle = 'left', buttons = [], description, headingType = 'h4', image, items, qr, title = 'Мобильное приложение', version = 'primary', ...rest }) => {
4073
+ const MobileAppTile = JSX(({ className, padding, align = 'text-left', buttons = [], description, headingType = 'h4', image, items, listItemSize, qr, title = 'Мобильное приложение', version = 'primary', ...rest }) => {
4009
4074
  const containerStyle = version === 'secondary' ? 'p-m min-w-32' : 'min-w-24';
4010
- return (jsx(BlockWrapper, { className: style('min-h-80', className), padding: "p-0", version: version, ...rest, children: jsxs(BaseTile, { className: "h-full", padding: padding, defaultPadding: "p-6xl", title: title ? (jsx(Heading, { headingType: headingType, title: title, className: style('whitespace-pre-wrap', AlignText[alignTitle]) })) : null, rightImage: image?.src ? jsx(Img, { className: "hidden lg:block", image: image }) : null, buttons: buttonsConditionStyle(buttons), children: [renderDescription$1(description), jsxs("div", { className: "flex flex-1 flex-wrap gap-m items-center", children: [qr?.src ? (jsx("div", { className: style('flex justify-center bg-white rounded-md', containerStyle), children: jsx(Img, { className: "w-fit", image: qr }) })) : null, renderList$1(items), image?.src ? jsx(Img, { className: "lg:hidden", image: image }) : null] })] }) }));
4075
+ return (jsx(BlockWrapper, { className: style('min-h-80', className), padding: "p-0", version: version, ...rest, children: jsxs(BaseTile, { className: "h-full", padding: padding, defaultPadding: "p-6xl", title: title ? (jsx(Heading, { headingType: headingType, title: title, className: style('whitespace-pre-wrap', align) })) : null, rightImage: image?.src ? jsx(Img, { className: "hidden lg:block", image: image }) : null, buttons: buttonsConditionStyle(buttons), children: [renderDescription$1(description), jsxs("div", { className: "flex flex-1 flex-wrap gap-m items-center", children: [qr?.src ? (jsx("div", { className: style('flex justify-center bg-white rounded-md', containerStyle), children: jsx(Img, { className: "w-fit", image: qr }) })) : null, renderList$1(items, listItemSize), image?.src ? jsx(Img, { className: "lg:hidden", image: image }) : null] })] }) }));
4011
4076
  });
4012
4077
 
4013
4078
  const badgeBgStyleMap = {
@@ -4018,11 +4083,11 @@
4018
4083
  primary: 'text-white',
4019
4084
  secondary: 'text-secondary-text',
4020
4085
  };
4021
- const Badge = JSX(({ count, version = 'secondary' }) => {
4086
+ const Badge$1 = JSX(({ count, version = 'secondary' }) => {
4022
4087
  return (jsx("div", { className: style('w-6 h-6 rounded-full flex items-center justify-center', badgeBgStyleMap[version]), children: jsx(Text, { size: "text-xs", color: badgeTextColorStyleMap[version], children: count }) }));
4023
4088
  });
4024
4089
 
4025
- const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => checkShouldRenderBlock(filter, content)).length;
4090
+ const getBadgeCount = (blocks = [], filter = {}) => blocks.filter(({ content = {} }) => shouldRenderBlock(filter, content)).length;
4026
4091
 
4027
4092
  const scalarCmp = (a, b) => a === b;
4028
4093
  const arrCmp = (cmp = scalarCmp) => (a, b) => a === b || Boolean(a && b && a.length === b.length && a.every((_, i) => cmp(_, b[i])));
@@ -4043,7 +4108,7 @@
4043
4108
  const activeItemIndex = useMemo(() => Math.max(0, hotFilters.findIndex((_) => hotFilterRecordCmp(_.filter, filtrationState))), [hotFilters, filtrationState]);
4044
4109
  const items = useMemo(() => hotFilters.map((_) => ({
4045
4110
  text: _.text,
4046
- appendRight: (jsx(Badge, { version: _ === hotFilters[activeItemIndex] ? 'primary' : 'secondary', count: getBadgeCount(blocks, _.filter) })),
4111
+ appendRight: (jsx(Badge$1, { version: _ === hotFilters[activeItemIndex] ? 'primary' : 'secondary', count: getBadgeCount(blocks, _.filter) })),
4047
4112
  })), [hotFilters, blocks, activeItemIndex]);
4048
4113
  const handleChange = useCallback((_) => {
4049
4114
  onFiltrationStateChange(hotFilters[items.indexOf(_)].filter);
@@ -4111,6 +4176,7 @@
4111
4176
  };
4112
4177
  const MortgageFiltration = JSX(({ className, hotFilters, filtrationSchema = {}, resetButton, ...rest }) => {
4113
4178
  const [filtrationState, { field, reset, update: replaceFiltrationState }] = useForm(initialFiltrationState);
4179
+ const blocksToRender = getBlocksToRender(rest.block?.blocks, filtrationState)();
4114
4180
  const handleFiltrationStateChange = useCallback((_ = initialFiltrationState) => replaceFiltrationState(_), []);
4115
4181
  const tabsControlProps = useHotFilters({
4116
4182
  hotFilters,
@@ -4118,36 +4184,29 @@
4118
4184
  blocks: rest.block?.blocks,
4119
4185
  onFiltrationStateChange: handleFiltrationStateChange,
4120
4186
  });
4121
- return (jsxs(BlockWrapper, { className: style('space-y-2xs', className), defaultPadding: "p-0", version: "transparent", ...rest, children: [jsx(TabsControl, { ...tabsControlProps }), renderFiltrationForm({ field, reset, filtrationSchema, resetButton }), jsx(BaseFiltrationInner, { filtrationState: filtrationState, ...rest })] }));
4187
+ return (jsxs(BlockWrapper, { className: style('space-y-2xs', className), defaultPadding: "p-0", version: "transparent", ...rest, children: [jsx(TabsControl, { ...tabsControlProps }), renderFiltrationForm$1({ field, reset, filtrationSchema, resetButton }), jsx(BaseFiltrationInner, { blocksToRender: blocksToRender, ...rest })] }));
4122
4188
  });
4123
4189
  MortgageFiltration.childrenTypes = ['ProductTile'];
4124
4190
  MortgageFiltration.childSchema = (content) => content?.filtrationSchema || {};
4125
4191
 
4126
- const mockPoints = [
4127
- { coords: [55.77, 37.46], text: 'Трактир' },
4128
- { coords: [55.66, 37.48], text: 'Трактор' },
4129
- { coords: [55.65, 37.42], text: 'Ресторан' },
4130
- { coords: [55.64, 37.54], text: 'Музей' },
4131
- { coords: [55.54, 37.52], text: 'Библиотека' },
4132
- { coords: [55.53, 37.56], text: 'Школа' },
4133
- { coords: [55.61, 37.61], text: 'Аптека' },
4134
- { coords: [55.8, 37.58], text: 'Бар' },
4135
- { coords: [55.71, 37.35], text: 'Институт' },
4136
- { coords: [55.74, 37.57], text: 'Университет' },
4137
- { coords: [55.58, 37.69], text: 'Больница' },
4138
- { coords: [55.57, 37.7], text: 'Цирк' },
4139
- { coords: [55.55, 37.64], text: 'Магазин' },
4140
- { coords: [55.5, 37.75], text: 'Булочная' },
4141
- { coords: [55.81, 37.73], text: 'Полиция' },
4142
- { coords: [55.73, 37.68], text: 'Салон красоты' },
4143
- { coords: [55.86, 37.76], text: 'Баня' },
4144
- { coords: [55.38, 37.69], text: 'Гараж' },
4145
- { coords: [55.91, 37.5], text: 'Дом' },
4146
- { coords: [55.62, 37.32], text: 'Прачечная' },
4147
- { coords: [55.85, 37.41], text: 'Стадион' },
4148
- { coords: [55.67, 37.24], text: 'Вокзал' },
4149
- { coords: [55.79, 37.41], text: 'Кафе' },
4150
- ];
4192
+ const styles$2 = {
4193
+ focus: 'focus:border-primary-text focus:border',
4194
+ hover: 'hover:bg-primary-hover',
4195
+ active: 'active:bg-primary-active',
4196
+ border: 'border-b border-b-2 border-gray last:border-0',
4197
+ position: 'relative flex items-center justify-center',
4198
+ font: 'text-center font-sans text-l',
4199
+ };
4200
+ // TODO: Добавить метод определения центральной точки
4201
+ const ZoomButton = JSX(({ yandexMaps, direction = 'in' }) => {
4202
+ const iconName = direction === 'in' ? 'PlusIcon' : 'MinusIcon';
4203
+ const changeZoom = () => {
4204
+ const currentZoom = yandexMaps.current.getZoom();
4205
+ const newZoom = direction === 'in' ? currentZoom + 1 : currentZoom - 1;
4206
+ yandexMaps.current.setZoom(newZoom, { checkZoomRange: true });
4207
+ };
4208
+ return (jsx("div", { onClick: changeZoom, className: `${Object.values(styles$2).join(' ')} bg-white select-none cursor-pointer w-12 h-12`, children: jsx(Icon, { name: iconName, width: "20", height: "16" }) }));
4209
+ });
4151
4210
 
4152
4211
  function renderClusterer(yandexMaps, map, points) {
4153
4212
  map.geoObjects.removeAll();
@@ -4155,7 +4214,7 @@
4155
4214
  const clusterer = new yandexMaps.Clusterer({
4156
4215
  clusterIcons: [
4157
4216
  {
4158
- href: 'icons/MapMarkerClusterIcon.svg',
4217
+ href: '/icons/MapMarkerClusterIcon.svg',
4159
4218
  size: [78, 84],
4160
4219
  offset: [-35, -50],
4161
4220
  },
@@ -4166,7 +4225,7 @@
4166
4225
  });
4167
4226
  const geoObjects = points.map((point) => new yandexMaps.Placemark(point, {}, {
4168
4227
  iconLayout: 'default#image',
4169
- iconImageHref: 'icons/MapMarkerSingleIcon.svg',
4228
+ iconImageHref: '/icons/MapMarkerSingleIcon.svg',
4170
4229
  iconImageSize: [78, 84],
4171
4230
  iconImageOffset: [-35, -50],
4172
4231
  }));
@@ -4181,7 +4240,7 @@
4181
4240
  });
4182
4241
  }
4183
4242
 
4184
- const styles$3 = {
4243
+ const styles$1 = {
4185
4244
  focus: 'focus:border-primary-text focus:border',
4186
4245
  hover: 'hover:bg-primary-hover',
4187
4246
  active: 'active:bg-primary-active',
@@ -4193,36 +4252,10 @@
4193
4252
  const getYandexMapUrl = () => {
4194
4253
  return `https://yandex.ru/maps/?ll=${[pointsCenter[1], pointsCenter[0]]}&z=10&l=map`;
4195
4254
  };
4196
- return (jsx("a", { className: `select-none cursor-pointer px-4xl h-12 bg-primary-main text-white ${Object.values(styles$3).join(' ')}`, href: getYandexMapUrl(), target: "_blank", children: "\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043D\u0430 \u043A\u0430\u0440\u0442\u0435" }));
4197
- };
4198
-
4199
- const styles$2 = {
4200
- border: 'border border-transparent rounded-md',
4201
- position: 'relative flex items-center',
4202
- font: 'text-center font-sans',
4203
- shadow: 'shadow-[0_4px_25px_rgba(0,0,0,0.07)]',
4204
- };
4205
- const renderSearchField = (points, yandexMaps, updatePointsToRender) => {
4206
- const onChange = (e) => {
4207
- const value = e.target?.value ? e.target?.value.toLowerCase() : '';
4208
- if (value) {
4209
- const searchResult = points.filter((_) => {
4210
- const textLowerCase = _.text.toLowerCase();
4211
- if (textLowerCase.indexOf(value) > -1) {
4212
- return _;
4213
- }
4214
- return null;
4215
- });
4216
- updatePointsToRender(searchResult);
4217
- }
4218
- else {
4219
- updatePointsToRender(null);
4220
- }
4221
- };
4222
- return (jsxs("div", { className: `${Object.values(styles$2).join(' ')} bg-white py-s pl-5xl pr-m w-full`, children: [jsx(Icon, { name: "LoupeIcon", iconVersion: "black", width: "20", height: "20", className: "absolute left-4" }), jsx("input", { type: "text", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441 \u0438\u043B\u0438 \u043C\u0435\u0442\u0440\u043E", onChange: onChange, className: "border-0 focus:border-0 outline-0 w-full" })] }));
4255
+ return (jsx("a", { className: `select-none cursor-pointer px-4xl h-12 bg-primary-main text-white ${Object.values(styles$1).join(' ')}`, href: getYandexMapUrl(), target: "_blank", children: "\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043D\u0430 \u043A\u0430\u0440\u0442\u0435" }));
4223
4256
  };
4224
4257
 
4225
- const styles$1 = {
4258
+ const styles = {
4226
4259
  focus: 'focus:border-primary-text focus:border',
4227
4260
  hover: 'hover:bg-primary-hover',
4228
4261
  active: 'active:bg-primary-active',
@@ -4244,7 +4277,7 @@
4244
4277
  map.geoObjects.add(result.geoObjects);
4245
4278
  });
4246
4279
  };
4247
- return (jsx("div", { className: `select-none cursor-pointer py-m w-12 bg-white ${Object.values(styles$1).join(' ')} ${className}`, onClick: setUserGeoLocation, children: jsx(Icon, { name: "UserGeoLocationIcon", width: "20", height: "16" }) }));
4280
+ return (jsx("div", { className: `select-none cursor-pointer py-m w-12 bg-white ${Object.values(styles).join(' ')} ${className}`, onClick: setUserGeoLocation, children: jsx(Icon, { name: "UserGeoLocationIcon", width: "20", height: "16" }) }));
4248
4281
  };
4249
4282
 
4250
4283
  const YMAPS_NAMESPACE = 'ymaps';
@@ -4253,25 +4286,6 @@
4253
4286
  return useExternalNS(YMAPS_NAMESPACE, url);
4254
4287
  };
4255
4288
 
4256
- const styles = {
4257
- focus: 'focus:border-primary-text focus:border',
4258
- hover: 'hover:bg-primary-hover',
4259
- active: 'active:bg-primary-active',
4260
- border: 'border-b border-b-2 border-gray last:border-0',
4261
- position: 'relative flex items-center justify-center',
4262
- font: 'text-center font-sans text-l',
4263
- };
4264
- // TODO: Добавить метод определения центральной точки
4265
- const ZoomButton = JSX(({ yandexMaps, direction = 'in' }) => {
4266
- const iconName = direction === 'in' ? 'PlusIcon' : 'MinusIcon';
4267
- const changeZoom = () => {
4268
- const currentZoom = yandexMaps.current.getZoom();
4269
- const newZoom = direction === 'in' ? currentZoom + 1 : currentZoom - 1;
4270
- yandexMaps.current.setZoom(newZoom, { checkZoomRange: true });
4271
- };
4272
- return (jsx("div", { onClick: changeZoom, className: `${Object.values(styles).join(' ')} bg-white select-none cursor-pointer w-12 h-12`, children: jsx(Icon, { name: iconName, width: "20", height: "16" }) }));
4273
- });
4274
-
4275
4289
  const FULLSCREEN_STYLES = {
4276
4290
  border: 'border border-transparent rounded-md ',
4277
4291
  position: 'absolute flex items-center justify-center',
@@ -4282,16 +4296,16 @@
4282
4296
  hover: 'hover:bg-primary-hover',
4283
4297
  other: 'select-none cursor-pointer',
4284
4298
  };
4299
+ const DEFAULT_CENTER_COORDS = [55.753995, 37.614069];
4285
4300
  // TODO: Поле для поиска: невыяснено среди каких данных делать поиск (искать в имени офиса, в адресе, метро и т.д.).
4286
4301
  // Сейчас реализован поиск среди тестовых данных
4287
4302
  // TODO: Также выяснить что делать когда ничего не найдено
4288
4303
  // TODO: На макетах также когда есть поле поиска нет кнопки открыть на карте.
4289
- const YandexMap = JSX(({ points, className = '', zoom = 5, showSearchField = false }) => {
4304
+ const YandexMap = JSX(({ points, className = '', zoom = 5 }) => {
4290
4305
  const map = useRef(null);
4291
4306
  const yandexMaps = useYandexMaps();
4292
4307
  const [isFullScreen, setIsFullScreen] = useState();
4293
- const [pointsToRender, setPointsToRender] = useState(normalizePoints(mockPoints));
4294
- const pointsCenter = getCenterPoint(points);
4308
+ const pointsCenter = points ? getCenterPoint(points) : DEFAULT_CENTER_COORDS;
4295
4309
  useEffect(() => {
4296
4310
  if (!map?.current) {
4297
4311
  yandexMaps?.ready(() => {
@@ -4301,16 +4315,16 @@
4301
4315
  controls: [],
4302
4316
  suppressMapOpenBlock: true,
4303
4317
  });
4304
- renderClusterer(yandexMaps, map.current, pointsToRender);
4318
+ renderClusterer(yandexMaps, map.current, points);
4305
4319
  });
4306
4320
  }
4307
- }, [yandexMaps, map, pointsToRender]);
4308
- useEffect(() => {
4309
- if (map.current && pointsToRender && yandexMaps) {
4310
- const newPoints = pointsToRender.length < 1 ? normalizePoints(mockPoints) : pointsToRender;
4311
- renderClusterer(yandexMaps, map.current, newPoints);
4321
+ if (map.current && yandexMaps) {
4322
+ renderClusterer(yandexMaps, map.current, points);
4323
+ if (!points?.length) {
4324
+ map.current.setCenter(DEFAULT_CENTER_COORDS);
4325
+ }
4312
4326
  }
4313
- }, [map, pointsToRender, yandexMaps]);
4327
+ }, [yandexMaps, map, points]);
4314
4328
  if (!yandexMaps) {
4315
4329
  return null;
4316
4330
  }
@@ -4325,164 +4339,165 @@
4325
4339
  setIsFullScreen(container.isFullscreen());
4326
4340
  };
4327
4341
  const zIndex = isFullScreen ? 'z-[100000]' : 'z-10';
4328
- const updatePointsToRender = (newPoints) => {
4329
- if (newPoints) {
4330
- const normalizedPoints = normalizePoints(newPoints);
4331
- setPointsToRender(normalizedPoints);
4332
- }
4333
- };
4334
- return (jsxs("div", { id: "map", className: `${isFullScreen ? '' : 'relative'} w-full ${className}`, children: [jsx("div", { className: `absolute flex left-2 top-4 w-1/2 ${zIndex}`, children: showSearchField
4335
- ? renderSearchField(mockPoints, yandexMaps, updatePointsToRender)
4336
- : renderOpenMap(pointsCenter) }), jsx("div", { className: `${Object.values(FULLSCREEN_STYLES).join(' ')} ${zIndex} right-2 top-4 bg-white`, onClick: toggleFullscreen, children: jsx(Icon, { name: "FullScreenIcon", width: "16", height: "16" }) }), jsxs("div", { className: `absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md ${zIndex}`, children: [jsx(ZoomButton, { yandexMaps: map }), jsx(ZoomButton, { yandexMaps: map, direction: "out" })] }), renderUserGeolocation(map.current, yandexMaps, `right-2 top-80 ${zIndex}`)] }));
4342
+ return (jsxs("div", { id: "map", className: style(!isFullScreen && 'relative', 'w-full', className), children: [jsx("div", { className: style('absolute flex left-2 top-4 w-1/2', zIndex), children: renderOpenMap(pointsCenter) }), jsx("div", { className: style(Object.values(FULLSCREEN_STYLES), zIndex, 'right-2 top-4 bg-white'), onClick: toggleFullscreen, children: jsx(Icon, { name: "FullScreenIcon", width: "16", height: "16" }) }), jsxs("div", { className: style('absolute right-2 top-52 z-10 w-12 overflow-hidden border border-transparent rounded-md', zIndex), children: [jsx(ZoomButton, { yandexMaps: map }), jsx(ZoomButton, { yandexMaps: map, direction: "out" })] }), renderUserGeolocation(map.current, yandexMaps, style('right-2 top-80', zIndex))] }));
4337
4343
  });
4338
4344
  const getCenterPoint = (points) => [
4339
4345
  getArraySumAndAverage(mapByIndex(points, 0)),
4340
4346
  getArraySumAndAverage(mapByIndex(points, 1)),
4341
4347
  ];
4342
4348
  const mapByIndex = (arr, index) => arr.map((a) => a[index]);
4343
- const getArraySumAndAverage = (arr) => arr.reduce((a, b) => a + b) / arr.length;
4344
- const normalizePoints = (points) => (points ? points.map((_) => _.coords) : null);
4345
-
4346
- const OFFICE_MAP = {
4347
- id: 123,
4348
- branchType: {
4349
- id: 7,
4350
- code: '21',
4351
- name: 'Отделение на балансе филиала',
4352
- },
4353
- shortName: 'Ейский ДО',
4354
- name: 'ДО №3349/3/05',
4355
- address: '353682, Краснодарский край, г.Ейск, ул.Гоголя, 349/ ул.Баррикадная, 42/1',
4356
- lawAddress: '353682, Краснодарский край, г.Ейск, ул.Гоголя, 349/ ул.Баррикадная, 42/1',
4357
- openDate: '2000-12-05',
4358
- closeDate: null,
4359
- bik: '040349536',
4360
- corAcc: '30101810700000000536',
4361
- registrationNumber: '3349/3/05',
4362
- phone: '+7(XXX)XXX-XX-XX',
4363
- fax: '+7(XXX)XXX-XX-XY',
4364
- okpo: '55105921',
4365
- ogrn: '1027700342890',
4366
- kpp: '231002002',
4367
- inn: '7725114488',
4368
- branchCode: '0305',
4369
- upperBranchCode: '0300',
4370
- timeZone: '+03:00',
4371
- exchangeRate: {
4372
- currencies: [
4373
- {
4374
- buyExchangeRate: 0.0,
4375
- saleExchangeRate: 0.0,
4376
- currency: {
4377
- id: 3,
4378
- code: '156',
4379
- currency: 'CNY',
4380
- name: 'Китайский юань',
4381
- },
4382
- },
4383
- {
4384
- buyExchangeRate: 59.15,
4385
- saleExchangeRate: 69.25,
4386
- currency: {
4387
- id: 2,
4388
- code: '978',
4389
- currency: 'EUR',
4390
- name: 'Евро',
4391
- },
4392
- },
4393
- {
4394
- buyExchangeRate: 58.4,
4395
- saleExchangeRate: 70.05,
4396
- currency: {
4397
- id: 1,
4398
- code: '840',
4399
- currency: 'USD',
4400
- name: 'Американский доллар',
4401
- },
4402
- },
4403
- ],
4404
- lastUpdate: '2022-11-11 03:56:17',
4405
- },
4406
- workSchedule: {
4407
- id: 413,
4408
- workTime: '09.00–16.30',
4409
- lunchHour: 'без перерыва',
4410
- workTimeSaturday: '09.00–15.00',
4411
- lunchHourSaturday: 'без перерыва',
4412
- workingMonday: false,
4413
- workingTuesday: false,
4414
- workingWednesday: true,
4415
- workingThursday: true,
4416
- workingFriday: true,
4417
- workingSaturday: true,
4418
- workingSunday: false,
4419
- },
4420
- gpsLatitude: 46.709744,
4421
- gpsLongitude: 38.260703,
4422
- range: null,
4423
- safeBoxCaseVolumes: null,
4349
+ const getArraySumAndAverage = (arr) => arr.length && arr.reduce((a, b) => a + b) / arr.length;
4350
+
4351
+ const colorStyle = {
4352
+ yellow: { border: 'border-yellow-light', text: 'text-yellow' },
4353
+ green: { border: 'border-green-light', text: 'text-green-dark' },
4354
+ gray: { border: 'border-gray', text: 'text-secondary-text' },
4355
+ red: { border: 'border-error', text: 'text-error' },
4424
4356
  };
4357
+ const Badge = JSX(({ className, children, color = 'gray' }) => (jsx("div", { className: style('p-s border border-gray rounded-md flex items-center', colorStyle[color].border, className), children: jsx(Text, { size: "text-m", color: colorStyle[color].text, children: children }) })));
4425
4358
 
4426
- // Добавлено для проверки
4427
- const nearbyOffices = [
4428
- { title: 'Деловой центр', time: '1 мин', distance: '~30 м.', icon: 'MetroIcon' },
4429
- { title: 'Выставочная', time: '5 мин', distance: '~120 м.', icon: 'MetroIcon' },
4430
- { title: 'Деловой центр', time: '8 мин', distance: '~350 м.', icon: 'MetroIcon' },
4431
- ];
4359
+ const CardCell = JSX(({ className, label, value, subText, subColor }) => {
4360
+ const textItems = value?.split(',') ?? [];
4361
+ if (!textItems.length && !subText) {
4362
+ return null;
4363
+ }
4364
+ return (jsxs("div", { className: style('flex gap-2xs flex-col h-full max-w-[300px]', className), children: [label ? (jsx(Text, { color: "text-secondary-text", font: "font-light", size: "text-m", children: label })) : null, textItems.filter(Boolean).map((text, i) => (jsx(Text, { size: "text-l", children: text.trim() }, String(i)))), subText ? (jsx(Text, { color: subColor, size: "text-m", children: subText })) : null] }));
4365
+ });
4366
+
4367
+ const CardRow = JSX(({ className, children }) => (jsx("div", { className: style('flex border-t border-solid border-main-divider py-xl gap-x-6xl gap-y-xl', className), children: children })));
4432
4368
 
4433
- const renderCurrentDaySchedule = ({ lunchHour, status, workTime }) => {
4434
- const hasTime = /\d+/gi.test(lunchHour);
4435
- const lunchHourText = hasTime ? `Перерыв ${lunchHour}` : lunchHour;
4436
- return status ? (jsxs("div", { className: "flex gap-m", children: [jsx("div", { className: "p-s border rounded-md text-m flex items-center cursor-pointer text-primary-main border-green-light", children: workTime ? workTime : null }), jsx("div", { className: "p-s border rounded-md text-m flex items-center cursor-pointer text-yellow border-golden", children: lunchHour ? lunchHourText : null })] })) : (jsx("div", { className: "flex", children: jsx("div", { className: "p-s border rounded-md text-m flex items-center cursor-pointer text-error border-error", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }) }));
4437
- };
4438
- const renderNearbyOffice = ({ icon, title, distance, time }, index) => (jsxs("div", { className: "flex mr-m", children: [jsx(Icon, { name: icon, width: "16", height: "16", className: "mr-xs" }), title ? jsxs(Text, { size: "text-m", children: [title, "\u00A0"] }) : null, jsxs(Text, { size: "text-m", font: "font-light", children: [distance ? ` (${distance})` : null, time ? `, ${time}` : null] })] }, `nearbyOffice${index}`));
4439
- const renderDay = ({ title, status, workTime, lunchHour, description }, inx) => (jsxs("div", { className: "flex flex-col gap-2xs pb-s border-b border-solid border-main-divider mb-s last:border-0", children: [jsxs("div", { className: "flex justify-between items-center w-full text-l text-primary-text", children: [jsx("div", { children: title }), status ? null : jsx("div", { className: "text-m font-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: "text-s font-light text-secondary-text", children: description })) : null] }, `day${inx}`));
4440
- const renderLunchHour = (lunchHour) => {
4441
- const hasTime = /\d+/gi.test(lunchHour);
4442
- return hasTime ? (jsxs("div", { className: "flex justify-between items-center w-full text-m font-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", children: jsx(Text, { size: "text-m", font: "font-light", color: "text-primary-main", children: lunchHour }) }));
4443
- };
4444
-
4445
- const OfficeMap = JSX(({ className = '' }) => {
4446
- // TODO: useOfficeMap endpoint had use /api/v1/branches. This endpoint now is`t correct/
4447
- // TODO: useOfficeMap has return MOCK OBJECT!
4448
- // TODO: Fix this when endpoint /api/v1/branches (or new endpoint) had returning right data
4449
- const resultOfficeMap = OFFICE_MAP;
4450
- const { name, address, gpsLatitude, gpsLongitude, workSchedule } = resultOfficeMap;
4451
- const { workingMonday, workingTuesday, workingWednesday, workingThursday, workingFriday, workingSaturday, workingSunday, } = workSchedule;
4452
- const { workTime, lunchHour, workTimeSaturday, lunchHourSaturday } = workSchedule;
4453
- const point = gpsLatitude && gpsLongitude ? [gpsLatitude, gpsLongitude] : null;
4454
- const workScheduleWeek = [
4455
- { title: 'Понедельник', status: workingMonday, workTime, lunchHour },
4456
- { title: 'Вторник', status: workingTuesday, workTime, lunchHour },
4457
- { title: 'Среда', status: workingWednesday, workTime, lunchHour },
4369
+ const renderAtmCard = ({ location, address, billAcceptorType, terminalType, billAcceptorEnable, atmCode = '', atmAccess = '', workTime, }, index) => {
4370
+ const additionalInfo = [
4371
+ {
4372
+ label: 'Устройство',
4373
+ value: capitalizedFirstLetter(terminalType),
4374
+ },
4375
+ { label: 'Модуль приема наличных', value: billAcceptorEnable ? 'Да' : 'Нет' },
4458
4376
  {
4459
- title: 'Четверг',
4460
- status: workingThursday,
4461
- workTime,
4462
- lunchHour: '13:00 - 14:00',
4463
- description: 'Не работает прием денег с 17:00 до 19:00', // Добавлено для проверки
4377
+ label: 'Прием наличных пачкой',
4378
+ value: billAcceptorType === 'банкомат принимает пачками' ? 'Да' : 'Нет',
4464
4379
  },
4465
- { title: 'Пятница', status: workingFriday, workTime, lunchHour },
4466
4380
  {
4467
- title: 'Суббота',
4468
- status: workingSaturday,
4469
- workTime: workTimeSaturday,
4470
- lunchHour: lunchHourSaturday,
4381
+ label: 'Доступность',
4382
+ value: ['внешняя установка', 'территория банка'].includes(atmAccess) ? 'Общедоступный' : '',
4471
4383
  },
4472
- { title: 'Воскресенье', status: workingSunday },
4384
+ { label: 'Регистрационный номер', value: atmCode },
4473
4385
  ];
4474
- const currentWeekDayInd = new Date().getDay();
4475
- const currentWeekDay = currentWeekDayInd > 0 ? workScheduleWeek[currentWeekDayInd - 1] : workScheduleWeek[6];
4476
- return (jsxs("div", { className: `flex flex-col font-sans w-full ${className}`, children: [jsxs("div", { className: "flex flex-col gap-m p-6xl pb-3xl", children: [jsxs("div", { className: "flex justify-between", children: [jsx("div", { className: "text-h2", children: name }), renderCurrentDaySchedule(currentWeekDay)] }), jsxs("div", { className: "flex text-l font-light", children: [jsx(Icon, { name: "GeolocationIcon", width: "24", height: "24", className: "pr-2xs" }), address] }), jsx("div", { className: "flex", children: nearbyOffices.map(renderNearbyOffice) })] }), jsxs("div", { className: "flex justify-between", children: [jsx("div", { className: "flex-grow h-full w-full overflow-hidden", children: point ? jsx(YandexMap, { points: [point], className: "h-full" }) : null }), jsx("div", { className: "w-[434px] min-w-[434px] p-6xl pt-0 flex flex-col", children: workScheduleWeek.map(renderDay) })] })] }));
4386
+ return (jsxs("div", { className: "bg-white col-span-12 p-3xl border-green border", children: [jsxs("div", { className: "flex justify-between", children: [jsx(Text, { size: "text-h4", children: capitalizedFirstLetter(location) }), jsx(Badge, { color: "green", children: capitalizedFirstLetter(workTime) })] }), address ? (jsxs("div", { className: "flex pb-xl pt-xs gap-2xs", children: [jsx(Icon, { name: "GeolocationIcon", width: "24", height: "24" }), jsx(Text, { size: "text-l", children: address })] })) : null, jsx(CardRow, { className: "flex-wrap", children: additionalInfo?.map(renderInfo) })] }, String(index)));
4387
+ };
4388
+ const renderInfo = (item, index) => (jsx(CardCell, { ...item }, String(index)));
4389
+ const capitalizedFirstLetter = (text) => text ? `${text?.charAt(0)?.toUpperCase()}${text?.slice(1)}` : '';
4390
+
4391
+ const WEEKDAY_MAP = [
4392
+ ['Понедельник', 'workingMonday'],
4393
+ ['Вторник', 'workingTuesday'],
4394
+ ['Среда', 'workingWednesday'],
4395
+ ['Четверг', 'workingThursday'],
4396
+ ['Пятница', 'workingFriday'],
4397
+ ['Суббота', 'workingSaturday'],
4398
+ ['Воскресенье', 'workingSunday'],
4399
+ ];
4400
+ const currentWeekDayIdx = new Date().getDay();
4401
+ const renderOfficeCard = ({ name, address, phone, fax, phoneBusiness, phoneNatural, phoneCallCentre, phoneCurrencyControl, workSchedule, exchangeRate, }, index) => {
4402
+ const workScheduleWeek = workSchedule ? getWorkScheduleWeek(workSchedule) : null;
4403
+ const [currentWeekDay] = workScheduleWeek?.slice(currentWeekDayIdx - 1) ?? [];
4404
+ return (jsxs("div", { className: "bg-white col-span-12 p-3xl border-green border", children: [jsxs("div", { className: "flex justify-between", children: [jsx(Text, { size: "text-h4", children: name }), renderCurrentDaySchedule(currentWeekDay)] }), address ? (jsxs("div", { className: "flex pb-xl pt-xs gap-2xs", children: [jsx(Icon, { name: "GeolocationIcon", width: "24", height: "24" }), jsx(Text, { size: "text-l", children: address })] })) : null, jsxs(CardRow, { className: "flex-wrap", children: [jsx(CardCell, { label: "\u0424\u0430\u043A\u0441", value: fax }), jsx(CardCell, { label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D \u0444\u0438\u043B\u0438\u0430\u043B\u0430", value: phone }), jsx(CardCell, { label: "\u0414\u043B\u044F \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u0439 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", value: phoneBusiness }), jsx(CardCell, { label: "\u041E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u0435 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", value: phoneNatural }), jsx(CardCell, { label: "\u0414\u043B\u044F \u043A\u043E\u043D\u0441\u0443\u043B\u044C\u0442\u0430\u0446\u0438\u0439 \u043F\u043E \u0432\u0430\u043B\u044E\u0442\u043D\u043E\u043C\u0443 \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u044E", value: phoneCurrencyControl }), jsx(CardCell, { label: "\u041A\u043E\u043D\u0442\u0430\u043A\u0442-\u0446\u0435\u043D\u0442\u0440", value: phoneCallCentre })] }), workScheduleWeek?.length ? jsx(CardRow, { children: workScheduleWeek?.map(renderDay) }) : null, exchangeRate?.currencies?.length ? (jsx(CardRow, { className: "flex-wrap", children: exchangeRate?.currencies?.map(renderCurrency) })) : null] }, String(index)));
4405
+ };
4406
+ const getWorkScheduleWeek = (workSchedule) => WEEKDAY_MAP.map(([title, key]) => {
4407
+ const dayOff = ['workingSaturday', 'workingSunday'].includes(key);
4408
+ return {
4409
+ title,
4410
+ status: Boolean(workSchedule?.[key]),
4411
+ workTime: dayOff ? workSchedule?.workTimeSaturday : workSchedule?.workTime,
4412
+ lunchHour: dayOff ? workSchedule?.lunchHourSaturday : workSchedule?.lunchHour,
4413
+ get hasLunch() {
4414
+ return /\d+/.test(this.lunchHour ?? '');
4415
+ },
4416
+ };
4477
4417
  });
4418
+ const renderCurrency = ({ currency, buyExchangeRate, saleExchangeRate }, i) => (jsxs("div", { className: "flex gap-lg h-full", children: [currency?.currency ? jsx(CardCell, { label: "\u0412\u0430\u043B\u044E\u0442\u0430", value: currency.currency }) : null, buyExchangeRate ? jsx(CardCell, { label: "\u041A\u0443\u043F\u0438\u0442\u044C", value: String(buyExchangeRate) }) : null, saleExchangeRate ? jsx(CardCell, { label: "\u041F\u0440\u043E\u0434\u0430\u0442\u044C", value: String(saleExchangeRate) }) : null] }, String(i)));
4419
+ //TODO: Add logic time https://github.com/redneckz/wildless-cms-uni-blocks/pull/1549
4420
+ const renderCurrentDaySchedule = (workScheduleWeek) => {
4421
+ if (!workScheduleWeek) {
4422
+ return null;
4423
+ }
4424
+ const { lunchHour, status, workTime, hasLunch } = workScheduleWeek;
4425
+ return status ? (jsxs("div", { className: "flex gap-s", children: [workTime ? jsx(Badge, { color: "green", children: workTime }) : null, lunchHour && hasLunch ? jsx(Badge, { color: "yellow", children: lunchHour }) : null] })) : (jsx(Badge, { color: "red", children: "\u0412\u044B\u0445\u043E\u0434\u043D\u043E\u0439" }));
4426
+ };
4427
+ const renderDay = ({ title, status, workTime, lunchHour, hasLunch }, index) => (jsx(CardCell, { label: title, value: status && workTime ? workTime : '', subText: !status ? 'Выходной' : lunchHour, subColor: !status || hasLunch ? 'text-error' : 'text-green-dark' }, String(index)));
4478
4428
 
4479
- const OfficeServicesBlock = JSX(({ className = '', title, servicesList, ...rest }) => (jsxs(BlockWrapper, { className: style('flex flex-col gap-lg', className), ...rest, children: [title ? jsx(Heading, { headingType: "h5", title: title }) : null, servicesList?.length ? (jsx("ul", { className: "list-none space-y-lg", children: servicesList.map(renderListItems) })) : null] })));
4480
- const renderListItems = (itemList, i) => (jsxs("li", { className: "flex gap-s list-none ", children: [itemList.icon ? (jsx(Img, { className: "min-w-6 min-h-6 w-6 h-6", width: "24", height: "24", image: itemList.icon })) : null, itemList.label ? (jsx(Text, { size: "text-l", font: "font-light", children: itemList.label })) : null] }, `list_item_${String(i)}`));
4429
+ const MAP_URL = {
4430
+ offices: '/api/v1/branches',
4431
+ atms: '/api/v1/atms',
4432
+ };
4433
+ const EMPTY_VALUE$1 = [];
4434
+ function useOfficesAtmsMap(regionCode, type = 'offices') {
4435
+ const { data } = useAsyncData(`${MAP_URL[type]}?regionCode=${regionCode}`, fetchMap);
4436
+ return data || EMPTY_VALUE$1;
4437
+ }
4438
+ const fetchMap = async (url) => {
4439
+ const result = await fetchJSON(url, { method: 'GET' });
4440
+ return result || EMPTY_VALUE$1;
4441
+ };
4442
+
4443
+ const INITIAL_FILTRATION_OFFICES_STATE = {
4444
+ safeBoxCaseVolumes: false,
4445
+ workingSaturday: false,
4446
+ };
4447
+ const INITIAL_FILTRATION_ATMS_STATE = {
4448
+ terminalTypeAtms: true,
4449
+ terminalTypeTerm: false,
4450
+ workAllTime: false,
4451
+ billAcceptorEnable: false,
4452
+ };
4453
+ const FILTRATION_LABELS = {
4454
+ safeBoxCaseVolumes: 'Аренда индивидуальных сейфовых ячеек',
4455
+ workingSaturday: 'Открыты по субботам',
4456
+ terminalTypeAtms: 'Банкоматы',
4457
+ terminalTypeTerm: 'Терминалы',
4458
+ workAllTime: 'Круглосуточно',
4459
+ billAcceptorEnable: 'Прием наличных',
4460
+ };
4461
+ const FILTRATION_BRANCHES_PREDICATES = {
4462
+ safeBoxCaseVolumes: (item) => Boolean(item.safeBoxCaseVolumes),
4463
+ workingSaturday: (item) => Boolean(item.workSchedule?.workingSaturday),
4464
+ };
4465
+ const FILTRATION_ATMS_PREDICATES = {
4466
+ terminalTypeAtms: (item) => item.terminalType?.toLowerCase() === 'банкомат',
4467
+ terminalTypeTerm: (item) => item.terminalType?.toLowerCase() === 'терминал',
4468
+ workAllTime: (item) => item.workTime?.toLowerCase() === 'круглосуточно',
4469
+ billAcceptorEnable: (item) => Boolean(item.billAcceptorEnable),
4470
+ };
4471
+ const OfficesAtmsMap = JSX(({ data, className = '', ...rest }) => {
4472
+ const dataType = data?.dataType ?? 'offices';
4473
+ const initialState = dataType === 'offices' ? INITIAL_FILTRATION_OFFICES_STATE : INITIAL_FILTRATION_ATMS_STATE;
4474
+ const [filtrationState, { field, reset }] = useForm(initialState);
4475
+ const [currentLocation] = useLocation();
4476
+ const [regionCode, title] = useMemo(() => [currentLocation?.code || '000', getTitle(currentLocation?.name, dataType)], [currentLocation, dataType]);
4477
+ const officesAtmsData = useOfficesAtmsMap(regionCode, dataType);
4478
+ const filteredOfficesAtmsData = filterOfficesAtms(officesAtmsData, filtrationState);
4479
+ const lengthOfficesAtms = filteredOfficesAtmsData.length;
4480
+ const points = filteredOfficesAtmsData
4481
+ .map((_) => [_.gpsLatitude, _.gpsLongitude].filter(Boolean))
4482
+ .filter((_) => _ && _.length === 2);
4483
+ return (jsxs(BlockWrapper, { version: "transparent", className: style('grid grid-cols-12 gap-1', className), defaultPadding: "p-0", ...rest, children: [jsxs("div", { className: "col-span-12 bg-white", children: [jsxs("div", { className: "pt-6xl px-6xl", children: [jsxs("div", { className: "flex gap-2 pb-2xl", children: [jsx(Heading, { headingType: "h2", children: title }), lengthOfficesAtms ? (jsx(Text, { size: "text-h2", color: "text-secondary-text", children: `(${lengthOfficesAtms})` })) : null] }), data && 'description' in data ? renderDescriptionBlock$1(data) : null, renderFiltrationForm(Object.keys(initialState), { field, reset })] }), jsx("div", { className: "h-[600px]", children: jsx(YandexMap, { points: points, className: "h-full" }) })] }), filteredOfficesAtmsData.map(dataType === 'offices' ? renderOfficeCard : renderAtmCard)] }));
4484
+ });
4485
+ const filterOfficesAtms = (data, filtrationState) => {
4486
+ const truthyFilters = Object.keys(filtrationState).filter((key) => filtrationState[key]);
4487
+ return 'name' in data
4488
+ ? data.filter(filterOffices(truthyFilters))
4489
+ : data.filter(filterAtms(truthyFilters));
4490
+ };
4491
+ const filterOffices = (filters) => (item) => filters.every((filterName) => FILTRATION_BRANCHES_PREDICATES[filterName](item));
4492
+ const filterAtms = (filters) => (item) => filters.every((filterName) => FILTRATION_ATMS_PREDICATES[filterName](item));
4493
+ const getTitle = (name = '', dataType = 'offices') => dataType === 'offices' ? `Офисы филиала ${name}` : `Банкоматы филиала ${name}`;
4494
+ const renderFiltrationForm = (filters, { field, reset }) => (jsxs("div", { className: "pb-2xl", children: [filters?.length ? (jsx("div", { className: "flex flex-wrap gap-3xl pb-2xl", children: filters.map((key) => (jsx(Checkbox, { text: FILTRATION_LABELS[key], ...field(key) }, key))) })) : null, jsx(Button, { version: "transparent", className: "text-secondary-text [&>*]:p-0", onClick: reset, text: "\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440", appendRight: jsx(Icon, { name: "CloseIcon", width: "16", height: "16" }) })] }));
4495
+ const renderDescriptionBlock$1 = ({ description, list }) => (jsxs("div", { className: "p-xl mb-2xl border border-gray rounded-md", children: [jsx(Paragraph, { size: "text-l", font: "font-light", children: description }), list?.length ? (jsx("div", { className: "flex gap-2xl flex-wrap pt-xs", children: list.map((item, i) => (jsxs("div", { className: "flex gap-xs items-center", children: [item?.image ? jsx(Img, { image: item.image }) : null, item?.text ? (jsx(Text, { size: "text-m", font: "font-light", children: item.text })) : null] }, String(i)))) })) : null] }));
4481
4496
 
4482
4497
  const ParagraphBlock = JSX(({ text, size, align, font, children, ...rest }) => (jsx(BlockWrapper, { defaultPadding: "p-0", ...rest, children: jsx(Paragraph, { size: size, align: align, font: font, children: text || children }) })));
4483
4498
 
4484
- const renderInsuranceSumMonth = (sum, monthLimit) => sum || monthLimit ? (jsxs("div", { className: "flex flex-wrap xl:flex-nowrap xl:bg-main-divider xl:rounded-md p-xs gap-xl", children: [Number(sum) > 0 ? renderValueBlock('Страховая сумма:', sum) : null, Number(monthLimit) > 0 ? renderValueBlock('Ежемесячный лимит:', monthLimit) : null] })) : null;
4485
- const renderValueBlock = (title, value = 0) => (jsxs("div", { className: "basis-full flex flex-col-reverse sm:flex-row sm:justify-between items-baseline whitespace-pre", children: [jsx(Text, { font: "font-light", size: "text-l", children: title }), jsxs(Text, { size: "text-h6", color: "text-primary-text", children: [toLocalNumberFormat(2)(value), " \u20BD"] })] }));
4499
+ const renderInsuranceSumMonth = (sum, monthLimit) => sum || monthLimit ? (jsxs("div", { className: "flex flex-wrap xl:flex-nowrap xl:bg-main-divider xl:rounded-md p-xs gap-xl", children: [Number(sum) > 0 ? renderValueBlock('Страховая сумма', sum) : null, Number(monthLimit) > 0 ? renderValueBlock('Ежемесячный лимит', monthLimit) : null] })) : null;
4500
+ const renderValueBlock = (title, value = 0) => (jsxs("div", { className: "basis-full flex flex-col-reverse sm:flex-row sm:justify-between sm:bg-main-divider sm:py-m sm:px-lg sm:rounded-md items-baseline whitespace-pre", children: [jsx(Text, { font: "font-light", size: "text-l", color: "text-secondary-text", children: title }), jsxs("span", { className: "font-sans text-h6 sm:text-primary-main text-primary-text", children: [toLocalNumberFormat(2)(value), " \u20BD"] })] }));
4486
4501
 
4487
4502
  const PictureText = JSX(({ className, padding, headlineVersion = 'M', align = 'text-center', sum, monthLimit, imageOptions, ...rest }) => (jsx(BlockWrapper, { className: className, padding: "p-0", ...rest, children: jsx(BaseProductTile, { className: "h-full", defaultPadding: "p-6xl", padding: padding, headlineVersion: headlineVersion, align: align, isFullWidthTitle: false, imageOptions: { directionRight: false, imageAlign: 'center', ...imageOptions }, ...rest, children: renderInsuranceSumMonth(Number(sum), Number(monthLimit)) }) })));
4488
4503
 
@@ -4533,7 +4548,7 @@
4533
4548
  return (jsxs("button", { type: "button", onClick: () => onClick(i), "aria-label": nav?.title, className: style('relative px-xl box-border overflow-hidden text-left grow basis-0 border border-gray group-data-secondary:border-white/50', btnClassName), children: [jsx("div", { className: btnTitleClassName, children: nav?.title }), jsx("div", { className: btnDescClassName, children: nav?.description })] }, String(i)));
4534
4549
  };
4535
4550
 
4536
- const ProductTile = JSX(({ className, padding, headlineVersion = 'S', isTabularBenefits = true, additionalDescription, imageOptions, ...rest }) => (jsx(BlockWrapper, { className: className, padding: "p-0", ...rest, children: jsx(BaseProductTile, { className: "h-full", defaultPadding: "p-xl", padding: padding, headlineVersion: headlineVersion, isTabularBenefits: isTabularBenefits, imageOptions: { isBackground: true, ...imageOptions }, ...rest, children: additionalDescription ? (jsx(Paragraph, { size: "text-m", font: "font-light", color: "group-data-primary:text-secondary-text", children: additionalDescription })) : null }) })));
4551
+ const ProductTile = JSX(({ className, padding, headlineVersion = 'S', isTabularBenefits = true, additionalDescription, imageOptions, ...rest }) => (jsx(BlockWrapper, { className: className, padding: "p-0", ...rest, children: jsx(BaseProductTile, { className: "h-full", defaultPadding: "p-4xl sm:p-xl", padding: padding, headlineVersion: headlineVersion, isTabularBenefits: isTabularBenefits, imageOptions: { isBackground: true, ...imageOptions }, ...rest, children: additionalDescription ? (jsx(Paragraph, { size: "text-m", font: "font-light", color: "group-data-primary:text-secondary-text", children: additionalDescription })) : null }) })));
4537
4552
 
4538
4553
  const PromoTile = JSX(({ className, title = 'Акции и спецпредложения', description, headlineVersion = 'S', date, buttons = [], ...rest }) => (jsx(BlockWrapper, { className: style('box-border', className), ...rest, children: jsxs(BaseTile, { className: "h-full", title: title ? (jsx(Headline, { title: title, headlineVersion: headlineVersion, align: "text-left", isEmbedded: true })) : null, buttons: renderButtonsSection(buttons), children: [date ? jsx("div", { className: "text-s mb-xs", children: formatDate(date) }) : null, jsx("div", { className: "text-l", children: description })] }) })));
4539
4554
  function formatDate(date) {
@@ -4569,13 +4584,15 @@
4569
4584
 
4570
4585
  const getIconName = (isUnfolded) => (isUnfolded ? 'MinusIcon' : 'PlusIcon');
4571
4586
 
4572
- const rollupIconVersion = 'color';
4573
-
4574
4587
  const rollupItemStyles = 'border-0 border-b border-solid border-main-divider last:border-b-0';
4575
4588
 
4576
4589
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
4577
4590
  const renderRoundedIcon = (_icon, _iconBgVersion) => null;
4578
4591
 
4592
+ const rollupIconVersion = 'color';
4593
+
4594
+ const PrimaryFoldButton = JSX(({ label, labelIconBgVersion, icon, onToggle, labelIcon }) => (jsx(TextWithIcon, { tag: "button", className: style('border-none bg-transparent items-center group/button', labelIcon?.icon ? 'py-xs' : 'py-lg'), onClick: onToggle, textNode: jsxs("div", { className: "flex items-center text-start group-hover/button:text-primary-main gap-s", children: [renderRoundedIcon(), label ? (jsx(Text, { size: "text-h6", font: "font-normal", children: label })) : null] }), iconNode: icon ? jsx(Icon, { name: icon, iconVersion: rollupIconVersion, width: "24", height: "24" }) : null })));
4595
+
4579
4596
  const RollupItem = JSX(({ className = '', isExpanded, isFoldButtonOnTop = true, label = 'Развернуть', labelIcon, labelIconBgVersion, version = 'primary', ...rest }) => (jsx(BlockWrapper, { className: style('w-full', rollupItemStyles, className), defaultPadding: "p-0", tag: "div", version: "transparent", ...rest, children: jsx(Foldable, { isFoldButtonOnTop: isFoldButtonOnTop, unfoldedByDefault: isExpanded, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { className: style('gap-lg', foldableSectionStyles), isUnfolded: isUnfolded, children: renderChildren({
4580
4597
  ...rest,
4581
4598
  extraProps: { className: 'w-full', padding: 'p-0' },
@@ -4592,16 +4609,8 @@
4592
4609
  };
4593
4610
  const renderFoldButton = ({ version, label: defaultLabel, labelIcon, labelIconBgVersion, isUnfolded, onToggle, }) => {
4594
4611
  const label = defaultLabel || (isUnfolded ? 'Скрыть' : 'Развернуть');
4595
- return version === 'primary' ? (renderPrimaryFoldButton({
4596
- label,
4597
- labelIcon,
4598
- labelIconBgVersion,
4599
- icon: getIconName(isUnfolded),
4600
- onToggle,
4601
- })) : (jsx(DefaultFoldButton, { label: label, icon: isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', onClick: onToggle }));
4602
- };
4603
- const renderPrimaryFoldButton = ({ label, labelIconBgVersion, icon, onToggle, labelIcon, }) => {
4604
- return (jsxs("button", { className: style('border-none bg-transparent flex justify-between items-center w-full group/button', labelIcon?.icon ? 'py-xs' : 'py-lg'), onClick: onToggle, children: [jsxs("div", { className: "flex items-center text-start group-hover/button:text-primary-main gap-s", children: [renderRoundedIcon(), label ? (jsx(Text, { size: "text-h6", font: "font-normal", children: label })) : null] }), icon ? jsx(Icon, { name: icon, iconVersion: rollupIconVersion, width: "24", height: "24" }) : null] }));
4612
+ const icon = getIconName(isUnfolded);
4613
+ return version === 'primary' ? (jsx(PrimaryFoldButton, { label: label, labelIcon: labelIcon, labelIconBgVersion: labelIconBgVersion, icon: icon, onToggle: onToggle })) : (jsx(DefaultFoldButton, { label: label, icon: isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', onClick: onToggle }));
4605
4614
  };
4606
4615
 
4607
4616
  const WrapperSelect = JSX(({ data, fieldLabel, fieldValue, selected, placeholder = '', setSelected, label }) => {
@@ -4612,9 +4621,7 @@
4612
4621
  return (jsx(Select, { options: dataFormat, label: label, placeholder: placeholder || selected, onChange: (_) => setSelected(_.key), value: selectedObj }));
4613
4622
  });
4614
4623
 
4615
- const RegionsAndBranches = JSX(({ regions = [], selectedRegion, onSelectedRegion: onSelectedRegion, branches = [], selectedBranch, onSelectedBranch, }) => (jsxs("div", { className: "flex flex-col sm:flex-row gap-m order-1", children: [jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: regions, fieldValue: "code", fieldLabel: "name", selected: selectedRegion, setSelected: onSelectedRegion, label: "\u0420\u0435\u0433\u0438\u043E\u043D" }) }), jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: branches, fieldValue: "branchCode", fieldLabel: "address", selected: selectedBranch, setSelected: onSelectedBranch, label: "\u041E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435" }) })] })));
4616
-
4617
- const Radio = JSX(({ name, text, value, checked, onChange, className }) => (jsx("div", { className: className, children: jsxs("label", { className: "font-sans flex gap-s items-center relative cursor-pointer", children: [jsx("input", { className: "appearance-none flex justify-center items-center shrink-0 w-5 h-5 border border-gray hover:border-primary-hover\n checked:border-2 checked:!border-primary-main focus:checked:border-primary-main focus:border-primary-text active:border-primary-text\n after:block after:w-2.5 after:h-2.5 after:rounded-full checked:after:bg-primary-main outline-none rounded-full cursor-pointer", type: "radio", value: value, name: name, checked: checked, onChange: (_) => onChange(_.target.value) }), text ? jsx("span", { className: "text-primary-text cursor-pointer", children: text }) : null] }) })));
4624
+ const RegionsAndBranches = JSX(({ regions = [], selectedRegion, onSelectedRegion: onSelectedRegion, branches = [], selectedBranch, onSelectedBranch, }) => (jsxs("div", { className: "flex flex-col @xl:flex-row gap-m order-1", children: [jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: regions, fieldValue: "code", fieldLabel: "name", selected: selectedRegion, setSelected: onSelectedRegion, label: "\u0420\u0435\u0433\u0438\u043E\u043D" }) }), jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: branches, fieldValue: "branchCode", fieldLabel: "address", selected: selectedBranch, setSelected: onSelectedBranch, label: "\u041E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435" }) })] })));
4618
4625
 
4619
4626
  const RadioButtons = JSX(({ className = '' }) => {
4620
4627
  const [selectedOption, setSelectedOption] = useState('option2');
@@ -4628,11 +4635,11 @@
4628
4635
  const RentalPeriod = JSX(({ days, setDays }) => (jsxs("div", { className: "order-1", children: [jsx(Text, { size: "text-m", font: "font-light", children: "\u0421\u0440\u043E\u043A \u0430\u0440\u0435\u043D\u0434\u044B" }), jsx(InputRange, { min: MIN, max: MAX, value: days, items: ITEMS, onChange: setDays })] })));
4629
4636
 
4630
4637
  const SafeBoxCases = JSX(({ caseVolumes = [], selectedCaseVolume, onSelectedCaseVolume, safeBoxCases = [], selectedBoxSize, onSelectedBoxSize, }) => {
4631
- return (jsxs("div", { className: "flex flex-col sm:flex-row gap-m order-1", children: [jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: caseVolumes, fieldLabel: "volume", selected: selectedCaseVolume, setSelected: onSelectedCaseVolume, label: "\u0420\u0430\u0437\u043C\u0435\u0440", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0430\u0437\u043C\u0435\u0440" }) }), jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: safeBoxCases, fieldLabel: "safeBoxCasesSize", selected: selectedBoxSize, setSelected: onSelectedBoxSize, label: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u044F\u0447\u0435\u0439\u043A\u0438, \u043C\u043C (\u0412\u0445\u0428\u0445\u0414)", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 \u044F\u0447\u0435\u0439\u043A\u0438" }) })] }));
4638
+ return (jsxs("div", { className: "flex flex-col @xl:flex-row gap-m order-1", children: [jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: caseVolumes, fieldLabel: "volume", selected: selectedCaseVolume, setSelected: onSelectedCaseVolume, label: "\u0420\u0430\u0437\u043C\u0435\u0440", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0430\u0437\u043C\u0435\u0440" }) }), jsx("div", { className: "flex-1 min-w-0", children: jsx(WrapperSelect, { data: safeBoxCases, fieldLabel: "safeBoxCasesSize", selected: selectedBoxSize, setSelected: onSelectedBoxSize, label: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u044F\u0447\u0435\u0439\u043A\u0438, \u043C\u043C (\u0412\u0445\u0428\u0445\u0414)", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 \u044F\u0447\u0435\u0439\u043A\u0438" }) })] }));
4632
4639
  });
4633
4640
 
4634
4641
  const SafeDepositRentalFields = JSX(({ regions, selectedRegion, branches, selectedBranch, days, selectedCaseVolume, selectedBoxSize, safeBoxCases, caseVolumes, onChange, onClick, }) => {
4635
- return (jsxs("div", { className: "contents sm:block flex-1 space-y-xl", children: [jsx(RegionsAndBranches, { regions: regions, selectedRegion: selectedRegion, onSelectedRegion: (value) => onChange({ selectedRegion: value }), branches: branches, selectedBranch: selectedBranch, onSelectedBranch: onSelectedBranch(onChange) }), jsx(RentalPeriod, { days: days, setDays: (value) => onChange({ days: value }) }), jsx(SafeBoxCases, { caseVolumes: caseVolumes, selectedCaseVolume: selectedCaseVolume, onSelectedCaseVolume: onSelectedCaseVolume(onChange), safeBoxCases: safeBoxCases, selectedBoxSize: selectedBoxSize, onSelectedBoxSize: (value) => onChange({ selectedBoxSize: value }) }), jsx("div", { className: "order-4", children: jsx(Text, { size: "text-l", font: "font-light", color: "text-secondary-text", children: "\u0422\u0438\u043F \u0434\u043E\u0433\u043E\u0432\u043E\u0440\u0430" }) }), jsxs("div", { className: "contents sm:flex justify-between items-center gap-m", children: [jsx(RadioButtons, {}), jsx(Button, { text: "\u041E\u0444\u0438\u0441\u044B \u043D\u0430 \u043A\u0430\u0440\u0442\u0435", version: "primary", onClick: onClick, className: "order-6" })] })] }));
4642
+ return (jsxs("div", { className: "contents @xl:block flex-1 space-y-xl", children: [jsx(RegionsAndBranches, { regions: regions, selectedRegion: selectedRegion, onSelectedRegion: (value) => onChange({ selectedRegion: value }), branches: branches, selectedBranch: selectedBranch, onSelectedBranch: onSelectedBranch(onChange) }), jsx(RentalPeriod, { days: days, setDays: (value) => onChange({ days: value }) }), jsx(SafeBoxCases, { caseVolumes: caseVolumes, selectedCaseVolume: selectedCaseVolume, onSelectedCaseVolume: onSelectedCaseVolume(onChange), safeBoxCases: safeBoxCases, selectedBoxSize: selectedBoxSize, onSelectedBoxSize: (value) => onChange({ selectedBoxSize: value }) }), jsx("div", { className: "order-4", children: jsx(Text, { size: "text-l", font: "font-light", color: "text-secondary-text", children: "\u0422\u0438\u043F \u0434\u043E\u0433\u043E\u0432\u043E\u0440\u0430" }) }), jsxs("div", { className: "contents @md:flex justify-between items-center gap-m", children: [jsx(RadioButtons, {}), jsx(Button, { text: "\u041E\u0444\u0438\u0441\u044B \u043D\u0430 \u043A\u0430\u0440\u0442\u0435", version: "primary", onClick: onClick, className: "order-6" })] })] }));
4636
4643
  });
4637
4644
  const onSelectedBranch = (onChange) => (value) => {
4638
4645
  onChange({ selectedBranch: value, selectedCaseVolume: '', selectedBoxSize: '' });
@@ -4644,10 +4651,10 @@
4644
4651
  const SafeDepositRentalTotal = JSX(({ days, tariffs = [] }) => {
4645
4652
  const price = calculatePrice(days, tariffs);
4646
4653
  const imageDescription = 'На рисунке изображена пачка листов\nформата А4';
4647
- return (jsxs("div", { className: "contents sm:flex flex-col justify-between order-2", children: [jsxs("div", { className: "flex flex-col sm:flex-row gap-x-6xl gap-y-2xl order-5 sm:order-none py-2xl sm:py-0 border-t border-main-divider sm:border-none", children: [renderTotal('Аренда за', days), renderTotal('Цена', price + ' ₽')] }), jsx("span", { className: "sm:hidden order-3 mb-xs text-s font-light text-secondary-text", children: imageDescription }), jsxs("div", { className: "flex flex-col items-center gap-s order-3 sm:order-none mb-xl sm:mb-0 bg-primary-main py-s sm:p-3xl text-center", children: [jsx(Img, { image: { icon: 'PackA4Icon' }, className: "sm:h-60" }), jsx("span", { className: "hidden sm:inline text-s font-light text-white opacity-80 whitespace-pre-line", children: imageDescription })] })] }));
4654
+ return (jsxs("div", { className: "contents @xl:flex flex-col justify-between gap-xl order-2", children: [jsxs("div", { className: "flex flex-col @xl:flex-row gap-x-6xl gap-y-2xl order-5 @xl:order-none py-2xl @xl:py-0 border-t border-main-divider @xl:border-none", children: [renderTotal('Аренда за', days), renderTotal('Цена', price + ' ₽')] }), jsx("span", { className: "@xl:hidden order-3 mb-xs text-s font-light text-secondary-text", children: imageDescription }), jsxs("div", { className: "flex flex-col items-center gap-s order-3 @xl:order-none mb-xl @xl:mb-0 bg-primary-main py-s @xl:p-3xl text-center", children: [jsx(Img, { image: { icon: 'PackA4Icon' }, className: "@xl:h-60" }), jsx("span", { className: "hidden @xl:inline text-s font-light text-white opacity-80 whitespace-pre-line", children: imageDescription })] })] }));
4648
4655
  });
4649
4656
  const renderTotal = (label, total) => {
4650
- return (jsxs("div", { className: "flex justify-between items-center gap-y-xs sm:flex-col sm:items-start", children: [jsx("div", { className: "text-l font-light text-secondary-text", children: label }), jsx("span", { className: "text-l sm:text-h3 text-primary-text", children: total })] }));
4657
+ return (jsxs("div", { className: "flex justify-between items-center gap-y-xs @xl:flex-col @xl:items-start", children: [jsx("div", { className: "text-l font-light text-secondary-text", children: label }), jsx("span", { className: "text-l @xl:text-h3 text-primary-text", children: total })] }));
4651
4658
  };
4652
4659
  const calculatePrice = (days, tariffs) => {
4653
4660
  const tariffType = getTariffType(days);
@@ -4694,7 +4701,7 @@
4694
4701
  const caseVolumes = getCaseVolumes(branch?.safeBoxCaseVolumes);
4695
4702
  const safeBoxCases = getCaseVolume(branch?.safeBoxCaseVolumes, data.selectedCaseVolume)?.safeBoxCases;
4696
4703
  const tariffs = getTariffs(safeBoxCases, data.selectedBoxSize);
4697
- return (jsxs("div", { className: "flex flex-col sm:flex-row gap-4xl align-top", children: [jsx(SafeDepositRentalFields, { ...data, regions: regions, onClick: onClick, branches: branches, caseVolumes: caseVolumes, safeBoxCases: safeBoxCases, onChange: onChange }), jsx(SafeDepositRentalTotal, { days: data.days, tariffs: tariffs })] }));
4704
+ return (jsxs("div", { className: "flex flex-col @4xl:flex-row gap-4xl align-top", children: [jsx(SafeDepositRentalFields, { ...data, regions: regions, onClick: onClick, branches: branches, caseVolumes: caseVolumes, safeBoxCases: safeBoxCases, onChange: onChange }), jsx(SafeDepositRentalTotal, { days: data.days, tariffs: tariffs })] }));
4698
4705
  });
4699
4706
  const getCaseVolumes = (safeBoxCaseVolumes) => safeBoxCaseVolumes?.length ? safeBoxCaseVolumes?.filter((_) => _?.safeBoxCases?.length) : [];
4700
4707
  const getCaseVolume = (caseVolumes, selectedCaseVolume) => caseVolumes?.find((_) => _.volume === selectedCaseVolume);
@@ -4861,28 +4868,28 @@
4861
4868
  };
4862
4869
  const normalizeTab = (_) => (_?.type === 'group' ? { text: _.title } : _);
4863
4870
 
4864
- const DIVIDER_CLASSES = 'border-main-divider border border-t-0 border-x-0';
4865
- const FIRST_CELL_CLASSES = 'w-80 flex-shrink-0';
4871
+ const dividerStyle = '@4xl:border-main-divider @4xl:border-b';
4872
+ const firstCellStyle = 'w-80 flex-shrink-0';
4866
4873
  const COLS_LENGTH_FOR_SCROLL = 2;
4867
4874
  const COLUMN_WIDTH$1 = 4 * 80 + 40; // w-80 + pl-10 = 360px
4868
4875
 
4869
- const TableInnerButton = JSX(({ isOpen, onClick }) => {
4870
- return (jsxs(Button, { version: "primary", onClick: onClick, className: "w-full flex items-center justify-center rounded-none py-lg", children: [jsx("div", { className: "text-h4", children: isOpen ? 'Скрыть' : 'Показать' }), jsx(Icon, { name: isOpen ? 'ArrowUpIcon' : 'ArrowDownIcon', className: "ml-s", iconVersion: "white", width: "20", height: "20" })] }));
4871
- });
4876
+ const TableInnerButton = JSX(({ className = '', isOpen, onClick }) => (jsx(Button, { className: className, appendRight: jsx(Img, { image: { icon: isOpen ? 'ArrowUpIcon' : 'ArrowDownIcon' }, width: "20", height: "20" }), text: isOpen ? 'Скрыть' : 'Показать', version: "gray", onClick: onClick })));
4872
4877
 
4873
- const renderButtonsCellData = ({ buttons }) => renderButtonsSection(buttons);
4874
- const renderLabelDescriptionCellData = ({ label, description }) => (jsxs("div", { className: "space-y-2xs", children: [label ? jsx("div", { className: "text-h6 m-0", children: label }) : null, description ? (jsx("div", { className: "text-secondary-text text-l font-light", children: description })) : null] }));
4878
+ const renderButtonsCellData = ({ buttons }) => renderButtonsSection(buttons, {
4879
+ buttonClassName: 'basis-0',
4880
+ });
4881
+ const renderLabelDescriptionCellData = ({ label, description }) => (jsxs("div", { className: "space-y-2xs", children: [label ? jsx("div", { children: label }) : null, description ? (jsx("div", { children: jsx(Text, { size: "text-s", color: "text-secondary-text", children: description }) })) : null] }));
4875
4882
  const renderImgCellData = ({ image }) => (image?.src ? jsx(Img, { image: image }) : null);
4876
4883
  const renderListCellData = ({ isDotted, ...rest }) => (jsx(List, { className: "flex flex-col justify-between items-start text-h6", isDotted: isDotted ?? true, ...rest }));
4877
- const renderTableCellData = JSX(({ isVisible, displayTable, dataUrl, pdfUrl, isOpen }) => isVisible ? (jsx(TableInnerButton, { isOpen: isOpen, onClick: () => {
4884
+ const renderInnerTableCellData = ({ isVisible, displayTable, dataUrl, pdfUrl, isOpen, }) => isVisible ? (jsx(TableInnerButton, { isOpen: isOpen, onClick: () => {
4878
4885
  displayTable({ dataUrl, pdfUrl });
4879
- } })) : null);
4886
+ } })) : null;
4880
4887
  const EmbeddableCellData = {
4881
4888
  Buttons: renderButtonsCellData,
4882
4889
  Img: renderImgCellData,
4883
4890
  List: renderListCellData,
4884
4891
  LabelDescription: renderLabelDescriptionCellData,
4885
- Table: renderTableCellData,
4892
+ Table: renderInnerTableCellData,
4886
4893
  };
4887
4894
 
4888
4895
  const renderCellInner = ({ rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => (cell, i) => {
@@ -4897,16 +4904,16 @@
4897
4904
  setOpenTableInnerIdx(cellIdx);
4898
4905
  setTableInner(props);
4899
4906
  };
4900
- return (jsxs("div", { className: cell?.tableCellType === 'Table' ? 'ml-5xl' : `first:pt-lg last:pb-lg pl-5xl`, children: [i > 0 ? jsx("div", { className: "h-5" }) : null, renderCell({
4901
- cell,
4902
- cellProps: {
4903
- rowIdx,
4904
- cellIdx,
4905
- fieldIdx: i,
4906
- displayTable,
4907
- isVisible,
4908
- },
4909
- })] }, String(i)));
4907
+ return (jsx("div", { children: renderCell({
4908
+ cell,
4909
+ cellProps: {
4910
+ rowIdx,
4911
+ cellIdx,
4912
+ fieldIdx: i,
4913
+ displayTable,
4914
+ isVisible,
4915
+ },
4916
+ }) }, String(i)));
4910
4917
  };
4911
4918
  const renderCell = ({ cell, cellProps }) => {
4912
4919
  if (!cell) {
@@ -4921,7 +4928,7 @@
4921
4928
  };
4922
4929
 
4923
4930
  const TariffsTableCell = JSX(({ cells, rowIdx, cellIdx, setTableInner, tableInner, openTableInnerIdx, setOpenTableInnerIdx, }) => {
4924
- return (jsx("div", { className: "w-80 flex-grow flex flex-col border-solid border-main-divider border border-t-0 border-x-0", role: "cell", children: cells?.length
4931
+ return (jsx("div", { className: "w-80 flex-grow flex flex-col gap-m @4xl:gap-lg", role: "cell", children: cells?.length
4925
4932
  ? cells.map(renderCellInner({
4926
4933
  rowIdx,
4927
4934
  cellIdx,
@@ -4934,6 +4941,20 @@
4934
4941
  });
4935
4942
 
4936
4943
  const COLUMN_WIDTH = 140;
4944
+ const getHorizontalShift = (columns, activeColumnIndex) => sum(columns.slice(0, activeColumnIndex).map((_) => _?.cols?.length ?? 1)) * COLUMN_WIDTH;
4945
+
4946
+ const renderInnerTableRow = (activeColumnIndex) => (rowData, rowIdx) => {
4947
+ if (!rowData?.length) {
4948
+ return null;
4949
+ }
4950
+ const [headerColumn, ...columns] = rowData;
4951
+ const columnsStyle = style('flex duration-1000 text-center', rowIdx !== 0 ? 'font-normal' : 'font-light');
4952
+ return (jsxs("div", { className: "flex border-main-divider border-b border-solid h-full", children: [headerColumn?.data ? (jsx("div", { className: "text-xl font-light min-w-56 py-lg", children: headerColumn.data })) : null, jsx("div", { className: "flex flex-grow overflow-hidden", children: jsx("div", { className: columnsStyle, style: {
4953
+ transform: `translateX(-${getHorizontalShift(columns, activeColumnIndex)}px)`,
4954
+ }, children: columns?.map((_, i) => (jsxs("div", { className: "flex flex-col flex-grow gap-s justify-center py-xl odd:bg-main-divider", children: [_?.data ? jsx("div", { className: "text-xl font-light", children: _.data }) : null, _?.cols ? renderCols(_.cols, activeColumnIndex) : null] }, `row${i}`))) }) })] }, String(rowIdx)));
4955
+ };
4956
+ const renderCols = (cols, rowIndex) => cols?.length > 0 ? (jsx("div", { className: style('flex', rowIndex === 0 ? 'text-secondary-text' : ''), children: cols.map((data, i) => (jsx("div", { className: "w-20 text-h6 mx-lg", children: data }, String(i)))) })) : null;
4957
+
4937
4958
  const InnerTableBodyItem = JSX(({ rows }) => {
4938
4959
  const rowsLength = rows?.[0]?.length ?? 0;
4939
4960
  const CARD_VIEW_COUNT = 5;
@@ -4941,38 +4962,23 @@
4941
4962
  itemCount: rowsLength,
4942
4963
  visibleItemCount: CARD_VIEW_COUNT,
4943
4964
  });
4944
- return (jsxs("div", { children: [rows?.map(renderRow(activeIndex)), renderArrows({
4965
+ return (jsxs("div", { children: [rows?.map(renderInnerTableRow(activeIndex)), renderArrows({
4945
4966
  ...controls,
4946
4967
  btnClass: ['left-3 top-20', 'right-3 top-20'],
4947
4968
  className: '',
4948
4969
  })] }));
4949
4970
  });
4950
- const renderRow = (activeColumnIndex) => (rowData, rowIdx) => {
4951
- if (!rowData?.length) {
4952
- return null;
4953
- }
4954
- const [headerColumn, ...columns] = rowData;
4955
- const transform = [...Array(activeColumnIndex).keys()].reduce((res, i) => (columns?.[i]?.cols?.length ?? 1) * COLUMN_WIDTH + res, 0);
4956
- const columnsClassName = [
4957
- 'flex duration-1000 text-center',
4958
- rowIdx !== 0 ? 'font-normal' : 'font-light',
4959
- ].join(' ');
4960
- return (jsxs("div", { className: "flex border-main-divider border border-t-0 border-x-0 border-solid", children: [headerColumn?.data ? (jsx("div", { className: `text-xl font-light w-52 py-lg `, children: headerColumn.data })) : null, jsx("div", { className: "flex flex-grow overflow-hidden", children: jsx("div", { className: columnsClassName, style: {
4961
- transform: `translateX(-${transform}px)`,
4962
- }, children: columns?.map((_, i) => (jsxs("div", { className: "flex flex-col flex-grow gap-s justify-center py-xl odd:bg-main-divider", children: [_?.data ? jsx("div", { className: "text-xl font-light", children: _.data }) : null, _?.cols ? renderCols(_.cols, activeColumnIndex) : null] }, `row${i}`))) }) })] }, String(rowIdx)));
4963
- };
4964
- const renderCols = (cols, rowIndex) => cols?.length > 0 ? (jsx("div", { className: style('flex', rowIndex === 0 ? 'text-secondary-text' : ''), children: cols.map((data, i) => (jsx("div", { className: `w-20 text-h6 mx-lg`, children: data }, String(i)))) })) : null;
4965
4971
 
4966
4972
  const InnerTableBody = JSX(({ activeTabIndex, items }) => {
4967
- const [hiddenTables, setHiddenTables] = useState({});
4968
- const toggleTables = useCallback((key) => setHiddenTables((oldState) => ({ ...oldState, [key]: !oldState[key] })), []);
4969
4973
  return (jsx("div", { children: items.map((_, tableIdx) => {
4970
4974
  const key = `activeTabIdx:${activeTabIndex}-tableIdx:${tableIdx}`;
4971
- return (jsxs("div", { className: "w-full", children: [jsxs("div", { className: "flex p-m bg-gray text-center justify-center cursor-pointer relative", onClick: () => toggleTables(key), children: [jsx(Text, { size: "text-xl", font: "font-light", children: _.title }), jsx(Img, { image: { icon: hiddenTables[key] ? 'PlusIcon' : 'MinusIcon' }, className: "absolute right-6", width: "24", height: "24" })] }), jsx("div", { className: `w-full pl-xs overflow-hidden transition-height duration-500 ease-in-out ${hiddenTables[key] ? 'h-0' : ''}`, children: jsx("div", { className: "relative", children: jsx(InnerTableBodyItem, { rows: _.rowsData }) }) })] }, key));
4975
+ return (jsxs("div", { className: "w-full @container", children: [jsx("div", { className: "flex p-m bg-white @4xl:bg-gray text-center justify-center relative", children: jsx(Text, { size: "text-xl", font: "font-light", children: _.title }) }), jsx("div", { className: "w-full pl-xs overflow-hidden transition-height duration-500 ease-in-out", children: jsx("div", { className: "relative", children: jsx(InnerTableBodyItem, { rows: _.rowsData }) }) })] }, key));
4972
4976
  }) }));
4973
4977
  });
4974
4978
 
4975
- const InnerTableHeader = JSX(({ currencies, linkToPDF, activeTabIndex, setActiveTabIndex }) => (jsxs("div", { className: "flex justify-between w-full px-s", children: [currencies && currencies.length > 1 ? (jsx("div", { className: "flex bg-secondary-light p-2xs rounded-md", children: currencies.map((currency, idx) => (jsx("div", { className: `rounded-md text-xl font-light px-m py-s cursor-pointer ${idx === activeTabIndex ? 'bg-primary-main text-white' : 'text-secondary-text'}`, onClick: () => setActiveTabIndex(idx), children: currency || idx + 1 }, currency))) })) : null, linkToPDF ? (jsx(Button, { href: linkToPDF, version: "secondary", target: "_blank", appendLeft: jsx(Icon, { name: "DocDownloadIcon", iconVersion: "color", className: "mr-3xs", width: "20", height: "20" }), text: "\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0432 PDF" })) : null] })));
4979
+ const linkButtonVersion = 'secondary';
4980
+
4981
+ const InnerTableHeader = JSX(({ currencies, linkToPDF, activeTabIndex, setActiveTabIndex }) => (jsxs("div", { className: "flex justify-between items-center w-full py-lg", children: [currencies && currencies.length > 1 ? (jsx("div", { className: "flex bg-secondary-light p-2xs rounded-md", children: currencies.map((currency, idx) => (jsx("div", { className: `rounded-md text-xl font-light px-4 py-3 cursor-pointer ${idx === activeTabIndex ? 'bg-primary-main text-white' : 'text-secondary-text'}`, onClick: () => setActiveTabIndex(idx), children: currency || idx + 1 }, currency))) })) : null, linkToPDF ? (jsx(Button, { className: "text-primary-main", href: linkToPDF, version: linkButtonVersion, target: "_blank", appendLeft: jsx(Icon, { name: "DocDownloadIcon", iconVersion: "color", className: "mr-3xs", width: "20", height: "20" }), text: "\u0421\u043A\u0430\u0447\u0430\u0442\u044C \u0432 PDF" })) : null] })));
4976
4982
 
4977
4983
  function useTariffsInnerTableData(directoryName) {
4978
4984
  const { data } = useAsyncData(tariffsInnerTableDataUrl(directoryName), fetchTariffsInnerTableData);
@@ -4993,10 +4999,10 @@
4993
4999
  const handleActiveTabIndex = useCallback((_) => setActiveTabIndex(_), []);
4994
5000
  const items = tableData?.[activeTabIndex]?.items ?? [];
4995
5001
  const currencies = tableData?.map((item) => item.currency ?? '');
4996
- return tableData ? (jsxs("div", { className: "bg-white z-10", children: [jsx(InnerTableHeader, { currencies: currencies, activeTabIndex: activeTabIndex, setActiveTabIndex: handleActiveTabIndex, linkToPDF: pdfUrl }), jsx(InnerTableBody, { activeTabIndex: activeTabIndex, items: items }), jsx(TableInnerButton, { onClick: onClick, isOpen: true })] })) : (jsxs("div", { className: "my-lg text-h6 text-center", children: [jsx("p", { children: EMPTY_DATA }), jsx(TableInnerButton, { onClick: onClick, isOpen: true })] }));
5002
+ return tableData ? (jsxs("div", { className: "bg-white z-10", children: [jsx(InnerTableHeader, { currencies: currencies, activeTabIndex: activeTabIndex, setActiveTabIndex: handleActiveTabIndex, linkToPDF: pdfUrl }), jsx(InnerTableBody, { activeTabIndex: activeTabIndex, items: items }), jsx(TableInnerButton, { className: "mt-xl", onClick: onClick, isOpen: true })] })) : (jsxs("div", { className: "my-lg space-y-m text-h6 text-center", children: [jsx("p", { children: EMPTY_DATA }), jsx(TableInnerButton, { onClick: onClick, isOpen: true })] }));
4997
5003
  });
4998
5004
 
4999
- const TariffsTableRowContainer = JSX(({ children, tableInner, onHideContentClick }) => (jsxs("div", { className: "self-start flex flex-col", role: "row", children: [jsx("div", { className: "flex", children: children }), tableInner ? (jsx("div", { className: "origin-top animate-expansion", children: jsx(InnerTable, { ...tableInner, onClick: onHideContentClick }) })) : null] })));
5005
+ const TariffsTableRowContainer = JSX(({ children, tableInner, onHideContentClick }) => (jsxs("div", { className: "self-start flex flex-col", role: "row", children: [jsx("div", { className: style(dividerStyle, 'flex flex-col @4xl:flex-row gap-y-xs gap-x-5xl pb-lg @4xl:pt-lg'), children: children }), tableInner ? (jsx("div", { className: "origin-top animate-expansion", children: jsx(InnerTable, { ...tableInner, onClick: onHideContentClick }) })) : null] })));
5000
5006
 
5001
5007
  const TariffsTableRow = JSX(({ row: { header, data }, activeIndex, rowIdx, ...rest }) => {
5002
5008
  const [tableInner, setTableInner] = useState(undefined);
@@ -5004,9 +5010,20 @@
5004
5010
  const [openTableInnerIdx, setOpenTableInnerIdx] = useState(undefined);
5005
5011
  const handleOpenTableInnerIdx = useCallback((_) => setOpenTableInnerIdx(_), []);
5006
5012
  const onHideContentClick = () => setTableInner(undefined);
5007
- return (jsxs(TariffsTableRowContainer, { onHideContentClick: onHideContentClick, tableInner: tableInner, ...rest, children: [jsx("div", { className: `text-s py-lg ${FIRST_CELL_CLASSES} ${DIVIDER_CLASSES}`, children: jsxs("div", { className: "flex items-center text-primary-text", role: "cell", children: [header?.icon ? (jsx(Img, { className: "mr-m max-w-6", image: header.icon, width: "24", height: "24" })) : null, header?.title ? jsx("div", { className: "text-m font-light", children: header?.title }) : null] }) }), data?.length ? (jsx(TableCarouselContainer, { activeIndex: activeIndex, columnWidth: COLUMN_WIDTH$1, version: "tariff", children: data.map((cells, i) => (jsx(TariffsTableCell, { cells: cells, rowIdx: rowIdx, cellIdx: i, setTableInner: handleSetTableInner, tableInner: tableInner, openTableInnerIdx: openTableInnerIdx, setOpenTableInnerIdx: handleOpenTableInnerIdx, ...rest }, String(i)))) })) : null] }));
5013
+ return (jsxs(TariffsTableRowContainer, { onHideContentClick: onHideContentClick, tableInner: tableInner, ...rest, children: [jsx("div", { className: style('text-s', firstCellStyle), children: jsxs("div", { className: "flex gap-m items-center text-primary-text", role: "cell", children: [header?.icon ? (jsx(Img, { className: "hidden @4xl:block max-w-6", image: header.icon, width: "24", height: "24" })) : null, header?.title ? jsx("div", { className: "text-m font-light", children: header?.title }) : null] }) }), data?.length ? (jsx(TableCarouselContainer, { activeIndex: activeIndex, columnWidth: COLUMN_WIDTH$1, version: "tariff", children: data.map((cells, i) => (jsx(TariffsTableCell, { cells: cells, rowIdx: rowIdx, cellIdx: i, setTableInner: handleSetTableInner, tableInner: tableInner, openTableInnerIdx: openTableInnerIdx, setOpenTableInnerIdx: handleOpenTableInnerIdx, ...rest }, String(i)))) })) : null] }));
5014
+ });
5015
+
5016
+ const TariffsTableWrapper = JSX(({ children, controls }) => {
5017
+ const { isScrollAvailable } = controls;
5018
+ return (jsxs("div", { role: "table", children: [jsxs("div", { className: "relative space-y-xs", children: [children, renderArrows({
5019
+ ...controls,
5020
+ btnClass: ['top-28', 'top-11'],
5021
+ className: 'right-7',
5022
+ })] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-20 bg-opacity-to-white" })) : null] }));
5008
5023
  });
5009
5024
 
5025
+ const headlineAlign = 'text-center';
5026
+
5010
5027
  const TariffsTable = JSX(({ className = '', title, description, rowHeaders, tariffsColumns: columns, hiddenRowsNum = 0, ...rest }) => {
5011
5028
  const colData = columns?.map(({ data }) => data) || [];
5012
5029
  const rowData = rowHeaders?.map((header, i) => ({
@@ -5020,15 +5037,7 @@
5020
5037
  });
5021
5038
  const rows = (rowData || []).map((row, i) => (jsx(TariffsTableRow, { row: row, activeIndex: activeIndex, rowIdx: i, ...rest }, String(i))));
5022
5039
  const [visibleRows, hiddenRows] = hiddenRowsNum > 0 ? [rows.slice(0, -hiddenRowsNum), rows.slice(-hiddenRowsNum)] : [rows, []];
5023
- return (jsxs(BlockWrapper, { className: style('overflow-hidden relative space-y-xl', className), defaultPadding: "p-6xl", ...rest, children: [jsx(Headline, { title: title, description: description, headlineVersion: "M", isEmbedded: true }), hiddenRowsNum > 0 ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs(Wrapper, { controls: controls, children: [visibleRows, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenRows })] })), renderFoldButton: renderDefaultFoldButton })) : (jsx(Wrapper, { controls: controls, children: rows }))] }));
5024
- });
5025
- const Wrapper = JSX(({ children, controls }) => {
5026
- const { isScrollAvailable } = controls;
5027
- return (jsxs("div", { role: "table", children: [jsxs("div", { className: "relative", children: [children, renderArrows({
5028
- ...controls,
5029
- btnClass: ['top-28', 'top-11'],
5030
- className: 'right-7',
5031
- })] }), isScrollAvailable ? (jsx("div", { className: "absolute top-0 right-0 bottom-0 w-20 bg-opacity-to-white" })) : null] }));
5040
+ return (jsxs(BlockWrapper, { className: style('overflow-hidden relative space-y-0 @4xl:space-y-xl', className), defaultPadding: "p-6xl", ...rest, children: [jsx(Headline, { title: title, description: description, headlineVersion: "M", isEmbedded: true, align: headlineAlign }), jsx("div", { className: "space-y-m", children: hiddenRowsNum > 0 ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs(TariffsTableWrapper, { controls: controls, children: [visibleRows, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenRows })] })), renderFoldButton: renderDefaultFoldButton })) : (jsx(TariffsTableWrapper, { controls: controls, children: rows })) })] }));
5032
5041
  });
5033
5042
 
5034
5043
  const TextBlock = JSX(({ className = '', title, description, iconVersion, image, __html, items = [], ...rest }) => (jsxs(BlockWrapper, { className: style('flex gap-s sm:gap-m bg-white group-data-secondary:bg-primary-main/10', className), ...rest, children: [iconVersion === 'small' ? renderIcon() : null, iconVersion === 'big' ? renderImage(image) : null, jsxs("div", { className: "flex flex-col w-fit gap-2xs sm:gap-xs", children: [title ? (jsx(Text, { size: "text-l", font: "font-normal", color: "text-primary-text group-data-secondary:text-white", children: title })) : null, description ? renderDescription(description) : null, items?.length ? renderList(items, true) : null, __html ? jsx(RichText, { __html: __html }) : null] })] })));
@@ -5099,8 +5108,7 @@
5099
5108
  LinkDocs,
5100
5109
  MobileAppTile,
5101
5110
  MortgageFiltration,
5102
- OfficeMap,
5103
- OfficeServicesBlock,
5111
+ OfficesAtmsMap,
5104
5112
  ParagraphBlock,
5105
5113
  PictureText,
5106
5114
  Placeholder,
@@ -5121,7 +5129,6 @@
5121
5129
  Tile,
5122
5130
  VerticalLayout,
5123
5131
  Video,
5124
- ExchangeRateOffice,
5125
5132
  };
5126
5133
 
5127
5134
  const debounce = (fn, delay = 600) => {
@@ -5196,13 +5203,13 @@
5196
5203
  });
5197
5204
  const linkWrapperStyle = (href) => style('inline mx-2xs', href ? 'text-green-dark' : '');
5198
5205
 
5199
- function useList(initialList = []) {
5200
- const [list, setList] = useState(initialList);
5201
- const push = useCallback((item) => setList((_) => [..._, item]), []);
5202
- const pop = useCallback(() => setList((_) => _.slice(0, -1)), []);
5203
- const remove = useCallback((item) => setList((_) => _.filter((currentItem) => currentItem !== item)), []);
5204
- const clear = useCallback(() => setList([]), []);
5205
- return [list, { setList, push, pop, remove, clear }];
5206
+ function useList(initialList = []) {
5207
+ const [list, setList] = useState(initialList);
5208
+ const push = useCallback((item) => setList(_ => [..._, item]), []);
5209
+ const pop = useCallback(() => setList(_ => _.slice(0, -1)), []);
5210
+ const remove = useCallback((item) => setList(_ => _.filter(currentItem => currentItem !== item)), []);
5211
+ const clear = useCallback(() => setList([]), []);
5212
+ return [list, { setList, push, pop, remove, clear }];
5206
5213
  }
5207
5214
 
5208
5215
  function assertUnreachable(x) {
@@ -5250,17 +5257,12 @@
5250
5257
  }, []);
5251
5258
  const dialogs = useDialogsList({ onCloseAll: handleCloseAll, onClose: handleClose });
5252
5259
  const { close } = useDialogManager();
5253
- useEffect(() => {
5254
- const handleEscape = ({ key }) => {
5255
- if (key === 'Escape') {
5256
- close();
5257
- }
5258
- };
5259
- globalThis.document?.addEventListener('keydown', handleEscape);
5260
- return () => {
5261
- globalThis.document?.removeEventListener('keydown', handleEscape);
5262
- };
5263
- }, [close]);
5260
+ const escapeHandler = useCallback(({ key }) => {
5261
+ if (key === 'Escape') {
5262
+ close();
5263
+ }
5264
+ }, []);
5265
+ useEventListener(globalThis.document, 'keydown', escapeHandler);
5264
5266
  useEffect(() => {
5265
5267
  if (dialogs.length) {
5266
5268
  globalThis.document?.body.classList.add('no-scrollbar');
@@ -5274,6 +5276,37 @@
5274
5276
  return dialogs.length ? (jsx("div", { className: "fixed inset-0 z-50", role: "dialog", children: dialogs.map(({ dialog, id }, i) => (jsx("div", { className: style('absolute inset-0 overflow-x-hidden overflow-y-scroll no-scrollbar', i === dialogs.length - 1 ? '' : 'hidden'), children: dialog }, String(id || i)))) })) : null;
5275
5277
  });
5276
5278
 
5279
+ const PopupManager = JSX(() => {
5280
+ const [popup, setPopup] = useState(null);
5281
+ const close = useCallback(() => {
5282
+ setPopup(null);
5283
+ }, []);
5284
+ useEffect(() => defaultEventBus.subscribe('popup', (action) => {
5285
+ switch (action.type) {
5286
+ case 'open':
5287
+ case 'update':
5288
+ setPopup(action);
5289
+ break;
5290
+ case 'close':
5291
+ close();
5292
+ break;
5293
+ default:
5294
+ assertUnreachable(action);
5295
+ }
5296
+ }), []);
5297
+ const escapeHandler = useCallback(({ key }) => {
5298
+ if (key === 'Escape') {
5299
+ close();
5300
+ }
5301
+ }, [close]);
5302
+ useEventListener(globalThis.document, 'keydown', escapeHandler);
5303
+ return popup ? (jsx("div", { className: "absolute z-50", style: {
5304
+ left: `${popup.left}px`,
5305
+ top: `${popup.top}px`,
5306
+ ...(popup.width ? { width: `${popup.width}px` } : {}),
5307
+ }, role: "dialog", children: popup.popup })) : null;
5308
+ });
5309
+
5277
5310
  const api = LikeAPI();
5278
5311
  function useLikeService(pagePath) {
5279
5312
  const [likeCount, setLikeCount] = useState(0);
@@ -5325,7 +5358,7 @@
5325
5358
  parent: data,
5326
5359
  };
5327
5360
  useBlockRouterProvider();
5328
- return (jsxs("div", { "data-theme": colorPalette, children: [jsxs("section", { className: style('relative @container', pageStyle, className), children: [slots?.header ? (jsx("div", { className: "relative z-10 mb-lg shadow-[0_8px_32px_0px_#00000014]", children: renderBlocksList(slots?.header, { ...options, slotName: 'header' }) })) : null, jsxs("div", { className: "container space-y-px @lg:space-y-0 @lg:grid @lg:grid-cols-12 @lg:gap-2xs", children: [renderChildren({ block: data, options, extraProps: { className: 'scroll-mt-12' } }), renderBlocksList(slots?.footer, { ...options, slotName: 'footer' })] }), likeControl ? renderLikeControl() : null] }), jsx(StickyBottomMenu, {}), jsx(DialogManager, {}), jsx(CookiePopup, { termLink: { href: '/pd-policy#cookie', target: '_blank' }, personalDataPolicyLink: { href: '/pd-policy', target: '_blank' } })] }));
5361
+ return (jsxs("div", { "data-theme": colorPalette, children: [jsxs("section", { className: style('relative @container', pageStyle, className), children: [slots?.header ? (jsx("div", { className: "relative z-10 mb-lg shadow-[0_8px_32px_0px_#00000014]", children: renderBlocksList(slots?.header, { ...options, slotName: 'header' }) })) : null, jsxs("div", { className: "container space-y-px @lg:space-y-0 @lg:grid @lg:grid-cols-12 @lg:gap-2xs", children: [renderChildren({ block: data, options, extraProps: { className: 'scroll-mt-12' } }), renderBlocksList(slots?.footer, { ...options, slotName: 'footer' })] }), likeControl ? renderLikeControl() : null] }), jsx(StickyBottomMenu, {}), jsx(DialogManager, {}), jsx(PopupManager, {}), jsx(CookiePopup, { termLink: { href: '/pd-policy#cookie', target: '_blank' }, personalDataPolicyLink: { href: '/pd-policy', target: '_blank' } })] }));
5329
5362
  });
5330
5363
  ContentPage.childrenTypes = [];
5331
5364
  ContentPage.slots = () => ['header', 'footer', 'StickyBottomMenu'];
@@ -5333,7 +5366,7 @@
5333
5366
  return (jsx("div", { className: "flex items-end absolute bottom-0 right-0 h-full pointer-events-none", children: jsx(LikeControl, { className: "rounded-tl-3xl sticky bottom-0 pointer-events-auto" }) }));
5334
5367
  }
5335
5368
 
5336
- const packageVersion = "0.13.24";
5369
+ const packageVersion = "0.14.1";
5337
5370
 
5338
5371
  exports.Blocks = Blocks;
5339
5372
  exports.ContentPage = ContentPage;