@redneckz/wildless-cms-uni-blocks 0.13.3 → 0.13.5

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 (452) hide show
  1. package/bin/migration-scripts/0.12.11.js +28 -0
  2. package/bin/migration-scripts/0.13.4.js +30 -0
  3. package/bundle/blocks.schema.json +1 -1
  4. package/bundle/bundle.umd.js +217 -165
  5. package/bundle/bundle.umd.min.js +1 -1
  6. package/bundle/components/CardTransfer/CardTransferContent.d.ts +5 -0
  7. package/bundle/components/Carousel/Carousel.d.ts +1 -1
  8. package/bundle/components/Carousel/CarouselContent.d.ts +6 -0
  9. package/bundle/components/Carousel/renderCardHighlight.d.ts +7 -0
  10. package/bundle/components/Carousel/renderCarouselCards.d.ts +7 -0
  11. package/bundle/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  12. package/bundle/components/Carousel/visibleItemCountStyle.mobile.d.ts +1 -0
  13. package/bundle/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.d.ts +1 -1
  14. package/bundle/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  15. package/bundle/components/MobileAppTile/buttonsConditionStyle.mobile.d.ts +3 -0
  16. package/bundle/components/RollupItem/RollupItem.d.ts +6 -1
  17. package/bundle/components/RollupItem/RollupItemContent.d.ts +0 -4
  18. package/bundle/ui-kit/Input/InputProps.d.ts +1 -0
  19. package/bundle/ui-kit/List/ListContent.d.ts +2 -2
  20. package/bundle/ui-kit/Select/Select.d.ts +1 -0
  21. package/bundle/utils/style.d.ts +2 -1
  22. package/dist/components/ApplicationForm/ApplicationFormCredit.js +2 -1
  23. package/dist/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  24. package/dist/components/ApplicationForm/PhoneInputControl.js +1 -1
  25. package/dist/components/ApplicationForm/PhoneInputControl.js.map +1 -1
  26. package/dist/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  27. package/dist/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  28. package/dist/components/ApplicationForm/renderCreditParameters.js +1 -1
  29. package/dist/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  30. package/dist/components/ApplicationForm/renderRegion.js +1 -1
  31. package/dist/components/ApplicationForm/renderRegion.js.map +1 -1
  32. package/dist/components/ApplicationForm/renderRegionDepartment.js +1 -1
  33. package/dist/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  34. package/dist/components/Bonus/Bonus.js +6 -4
  35. package/dist/components/Bonus/Bonus.js.map +1 -1
  36. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  37. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  38. package/dist/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  39. package/dist/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  40. package/dist/components/CardTransfer/CardTransfer.js +9 -6
  41. package/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  42. package/dist/components/CardTransfer/CardTransferContent.d.ts +5 -0
  43. package/dist/components/Carousel/Carousel.d.ts +1 -1
  44. package/dist/components/Carousel/Carousel.js +9 -13
  45. package/dist/components/Carousel/Carousel.js.map +1 -1
  46. package/dist/components/Carousel/CarouselContent.d.ts +6 -0
  47. package/dist/components/Carousel/renderCardHighlight.d.ts +7 -0
  48. package/dist/components/Carousel/renderCardHighlight.js +9 -0
  49. package/dist/components/Carousel/renderCardHighlight.js.map +1 -0
  50. package/dist/components/Carousel/renderCarouselCards.d.ts +7 -0
  51. package/dist/components/Carousel/renderCarouselCards.js +37 -0
  52. package/dist/components/Carousel/renderCarouselCards.js.map +1 -0
  53. package/dist/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  54. package/dist/components/Carousel/visibleItemCountStyle.js +4 -0
  55. package/dist/components/Carousel/visibleItemCountStyle.js.map +1 -0
  56. package/dist/components/Carousel/visibleItemCountStyle.mobile.d.ts +1 -0
  57. package/dist/components/Carousel/visibleItemCountStyle.mobile.js +4 -0
  58. package/dist/components/Carousel/visibleItemCountStyle.mobile.js.map +1 -0
  59. package/dist/components/CarouselCard/CarouselCard.js +2 -2
  60. package/dist/components/CarouselCard/CarouselCard.js.map +1 -1
  61. package/dist/components/CarouselLinks/CarouselLinks.js +1 -1
  62. package/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
  63. package/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.d.ts +1 -1
  64. package/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.js +1 -1
  65. package/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.js.map +1 -1
  66. package/dist/components/CarouselTariffsCard/CarouselTariffsCard.js +3 -6
  67. package/dist/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
  68. package/dist/components/Headline/headlineVersionStyles.js +1 -1
  69. package/dist/components/MobileAppTile/MobileAppTile.js +2 -2
  70. package/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  71. package/dist/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  72. package/dist/components/MobileAppTile/buttonsConditionStyle.js +6 -0
  73. package/dist/components/MobileAppTile/buttonsConditionStyle.js.map +1 -0
  74. package/dist/components/MobileAppTile/buttonsConditionStyle.mobile.d.ts +3 -0
  75. package/dist/components/MobileAppTile/buttonsConditionStyle.mobile.js +13 -0
  76. package/dist/components/MobileAppTile/buttonsConditionStyle.mobile.js.map +1 -0
  77. package/dist/components/RollupItem/RollupItem.d.ts +6 -1
  78. package/dist/components/RollupItem/RollupItem.js +2 -2
  79. package/dist/components/RollupItem/RollupItem.js.map +1 -1
  80. package/dist/components/RollupItem/RollupItemContent.d.ts +0 -4
  81. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +1 -1
  82. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  83. package/dist/ui-kit/BaseTile/BaseTile.js +6 -2
  84. package/dist/ui-kit/BaseTile/BaseTile.js.map +1 -1
  85. package/dist/ui-kit/Input/Input.js +2 -2
  86. package/dist/ui-kit/Input/Input.js.map +1 -1
  87. package/dist/ui-kit/Input/InputProps.d.ts +1 -0
  88. package/dist/ui-kit/List/List.js +2 -0
  89. package/dist/ui-kit/List/List.js.map +1 -1
  90. package/dist/ui-kit/List/ListContent.d.ts +2 -2
  91. package/dist/ui-kit/List/ListItem.js +1 -0
  92. package/dist/ui-kit/List/ListItem.js.map +1 -1
  93. package/dist/ui-kit/Select/Select.d.ts +1 -0
  94. package/dist/ui-kit/Select/Select.js +18 -4
  95. package/dist/ui-kit/Select/Select.js.map +1 -1
  96. package/dist/utils/style.d.ts +2 -1
  97. package/dist/utils/style.js.map +1 -1
  98. package/lib/common.css +1 -1
  99. package/lib/components/ApplicationForm/ApplicationFormCredit.js +2 -1
  100. package/lib/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  101. package/lib/components/ApplicationForm/PhoneInputControl.js +1 -1
  102. package/lib/components/ApplicationForm/PhoneInputControl.js.map +1 -1
  103. package/lib/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  104. package/lib/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  105. package/lib/components/ApplicationForm/renderCreditParameters.js +1 -1
  106. package/lib/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  107. package/lib/components/ApplicationForm/renderRegion.js +1 -1
  108. package/lib/components/ApplicationForm/renderRegion.js.map +1 -1
  109. package/lib/components/ApplicationForm/renderRegionDepartment.js +1 -1
  110. package/lib/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  111. package/lib/components/Bonus/Bonus.js +6 -4
  112. package/lib/components/Bonus/Bonus.js.map +1 -1
  113. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  114. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  115. package/lib/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  116. package/lib/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  117. package/lib/components/CardTransfer/CardTransfer.js +9 -6
  118. package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  119. package/lib/components/CardTransfer/CardTransferContent.d.ts +5 -0
  120. package/lib/components/Carousel/Carousel.d.ts +1 -1
  121. package/lib/components/Carousel/Carousel.js +9 -13
  122. package/lib/components/Carousel/Carousel.js.map +1 -1
  123. package/lib/components/Carousel/CarouselContent.d.ts +6 -0
  124. package/lib/components/Carousel/renderCardHighlight.d.ts +6 -0
  125. package/lib/components/Carousel/renderCardHighlight.js +6 -0
  126. package/lib/components/Carousel/renderCardHighlight.js.map +1 -0
  127. package/lib/components/Carousel/renderCarouselCards.d.ts +7 -0
  128. package/lib/components/Carousel/renderCarouselCards.js +34 -0
  129. package/lib/components/Carousel/renderCarouselCards.js.map +1 -0
  130. package/lib/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  131. package/lib/components/Carousel/visibleItemCountStyle.js +2 -0
  132. package/lib/components/Carousel/visibleItemCountStyle.js.map +1 -0
  133. package/lib/components/Carousel/visibleItemCountStyle.mobile.d.ts +1 -0
  134. package/lib/components/Carousel/visibleItemCountStyle.mobile.js +2 -0
  135. package/lib/components/Carousel/visibleItemCountStyle.mobile.js.map +1 -0
  136. package/lib/components/CarouselCard/CarouselCard.js +2 -2
  137. package/lib/components/CarouselCard/CarouselCard.js.map +1 -1
  138. package/lib/components/CarouselLinks/CarouselLinks.js +1 -1
  139. package/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
  140. package/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.d.ts +1 -1
  141. package/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.js +1 -1
  142. package/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.js.map +1 -1
  143. package/lib/components/CarouselTariffsCard/CarouselTariffsCard.fixture.d.ts +0 -1
  144. package/lib/components/CarouselTariffsCard/CarouselTariffsCard.fixture.mobile.d.ts +0 -1
  145. package/lib/components/CarouselTariffsCard/CarouselTariffsCard.js +3 -6
  146. package/lib/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
  147. package/lib/components/Headline/headlineVersionStyles.js +1 -1
  148. package/lib/components/MobileAppTile/MobileAppTile.js +2 -2
  149. package/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  150. package/lib/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  151. package/lib/components/MobileAppTile/buttonsConditionStyle.js +3 -0
  152. package/lib/components/MobileAppTile/buttonsConditionStyle.js.map +1 -0
  153. package/lib/components/MobileAppTile/buttonsConditionStyle.mobile.d.ts +2 -0
  154. package/lib/components/MobileAppTile/buttonsConditionStyle.mobile.js +10 -0
  155. package/lib/components/MobileAppTile/buttonsConditionStyle.mobile.js.map +1 -0
  156. package/lib/components/RollupItem/RollupItem.d.ts +6 -1
  157. package/lib/components/RollupItem/RollupItem.js +2 -2
  158. package/lib/components/RollupItem/RollupItem.js.map +1 -1
  159. package/lib/components/RollupItem/RollupItemContent.d.ts +0 -4
  160. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +1 -1
  161. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  162. package/lib/ui-kit/BaseTile/BaseTile.js +6 -2
  163. package/lib/ui-kit/BaseTile/BaseTile.js.map +1 -1
  164. package/lib/ui-kit/Input/Input.js +2 -2
  165. package/lib/ui-kit/Input/Input.js.map +1 -1
  166. package/lib/ui-kit/Input/InputProps.d.ts +1 -0
  167. package/lib/ui-kit/List/List.js +2 -0
  168. package/lib/ui-kit/List/List.js.map +1 -1
  169. package/lib/ui-kit/List/ListContent.d.ts +2 -2
  170. package/lib/ui-kit/List/ListItem.js +1 -0
  171. package/lib/ui-kit/List/ListItem.js.map +1 -1
  172. package/lib/ui-kit/Select/Select.d.ts +1 -0
  173. package/lib/ui-kit/Select/Select.js +19 -5
  174. package/lib/ui-kit/Select/Select.js.map +1 -1
  175. package/lib/utils/style.d.ts +2 -1
  176. package/lib/utils/style.js.map +1 -1
  177. package/mobile/bundle/bundle.umd.js +218 -98
  178. package/mobile/bundle/bundle.umd.min.js +1 -1
  179. package/mobile/bundle/components/CardTransfer/CardTransferContent.d.ts +5 -0
  180. package/mobile/bundle/components/Carousel/Carousel.d.ts +1 -1
  181. package/mobile/bundle/components/Carousel/CarouselContent.d.ts +6 -0
  182. package/mobile/bundle/components/Carousel/renderCardHighlight.d.ts +7 -0
  183. package/mobile/bundle/components/Carousel/renderCarouselCards.d.ts +7 -0
  184. package/mobile/bundle/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  185. package/mobile/bundle/components/CarouselRecommendationCard/CarouselRecommendationCard.d.ts +1 -1
  186. package/mobile/bundle/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  187. package/mobile/bundle/components/RollupItem/RollupItem.d.ts +6 -1
  188. package/mobile/bundle/components/RollupItem/RollupItemContent.d.ts +0 -4
  189. package/mobile/bundle/ui-kit/Input/InputProps.d.ts +1 -0
  190. package/mobile/bundle/ui-kit/List/ListContent.d.ts +2 -2
  191. package/mobile/bundle/ui-kit/Select/Select.d.ts +1 -0
  192. package/mobile/bundle/utils/style.d.ts +2 -1
  193. package/mobile/dist/components/ApplicationForm/ApplicationFormCredit.js +2 -1
  194. package/mobile/dist/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  195. package/mobile/dist/components/ApplicationForm/PhoneInputControl.js +1 -1
  196. package/mobile/dist/components/ApplicationForm/PhoneInputControl.js.map +1 -1
  197. package/mobile/dist/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  198. package/mobile/dist/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  199. package/mobile/dist/components/ApplicationForm/renderCreditParameters.js +1 -1
  200. package/mobile/dist/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  201. package/mobile/dist/components/ApplicationForm/renderRegion.js +1 -1
  202. package/mobile/dist/components/ApplicationForm/renderRegion.js.map +1 -1
  203. package/mobile/dist/components/ApplicationForm/renderRegionDepartment.js +1 -1
  204. package/mobile/dist/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  205. package/mobile/dist/components/Bonus/Bonus.js +6 -4
  206. package/mobile/dist/components/Bonus/Bonus.js.map +1 -1
  207. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  208. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  209. package/mobile/dist/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  210. package/mobile/dist/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  211. package/mobile/dist/components/CardTransfer/CardTransfer.js +9 -6
  212. package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
  213. package/mobile/dist/components/CardTransfer/CardTransferContent.d.ts +5 -0
  214. package/mobile/dist/components/Carousel/Carousel.d.ts +1 -1
  215. package/mobile/dist/components/Carousel/Carousel.js +9 -13
  216. package/mobile/dist/components/Carousel/Carousel.js.map +1 -1
  217. package/mobile/dist/components/Carousel/CarouselContent.d.ts +6 -0
  218. package/mobile/dist/components/Carousel/renderCardHighlight.d.ts +7 -0
  219. package/mobile/dist/components/Carousel/renderCardHighlight.js +9 -0
  220. package/mobile/dist/components/Carousel/renderCardHighlight.js.map +1 -0
  221. package/mobile/dist/components/Carousel/renderCarouselCards.d.ts +7 -0
  222. package/mobile/dist/components/Carousel/renderCarouselCards.js +37 -0
  223. package/mobile/dist/components/Carousel/renderCarouselCards.js.map +1 -0
  224. package/mobile/dist/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  225. package/mobile/dist/components/Carousel/visibleItemCountStyle.js +4 -0
  226. package/mobile/dist/components/Carousel/visibleItemCountStyle.js.map +1 -0
  227. package/mobile/dist/components/CarouselCard/CarouselCard.js +2 -2
  228. package/mobile/dist/components/CarouselCard/CarouselCard.js.map +1 -1
  229. package/mobile/dist/components/CarouselLinks/CarouselLinks.js +1 -1
  230. package/mobile/dist/components/CarouselLinks/CarouselLinks.js.map +1 -1
  231. package/mobile/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.d.ts +1 -1
  232. package/mobile/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.js +1 -1
  233. package/mobile/dist/components/CarouselRecommendationCard/CarouselRecommendationCard.js.map +1 -1
  234. package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCard.js +3 -6
  235. package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
  236. package/mobile/dist/components/Footer/buttonSizeStyles.js +1 -1
  237. package/mobile/dist/components/Headline/headlineVersionStyles.js +1 -1
  238. package/mobile/dist/components/MobileAppTile/MobileAppTile.js +2 -2
  239. package/mobile/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  240. package/mobile/dist/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  241. package/mobile/dist/components/MobileAppTile/buttonsConditionStyle.js +13 -0
  242. package/mobile/dist/components/MobileAppTile/buttonsConditionStyle.js.map +1 -0
  243. package/mobile/dist/components/RollupItem/RollupItem.d.ts +6 -1
  244. package/mobile/dist/components/RollupItem/RollupItem.js +2 -2
  245. package/mobile/dist/components/RollupItem/RollupItem.js.map +1 -1
  246. package/mobile/dist/components/RollupItem/RollupItemContent.d.ts +0 -4
  247. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +1 -1
  248. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  249. package/mobile/dist/ui-kit/BaseTile/BaseTile.js +6 -2
  250. package/mobile/dist/ui-kit/BaseTile/BaseTile.js.map +1 -1
  251. package/mobile/dist/ui-kit/Input/Input.js +2 -2
  252. package/mobile/dist/ui-kit/Input/Input.js.map +1 -1
  253. package/mobile/dist/ui-kit/Input/InputProps.d.ts +1 -0
  254. package/mobile/dist/ui-kit/List/List.js +2 -0
  255. package/mobile/dist/ui-kit/List/List.js.map +1 -1
  256. package/mobile/dist/ui-kit/List/ListContent.d.ts +2 -2
  257. package/mobile/dist/ui-kit/List/ListItem.js +1 -0
  258. package/mobile/dist/ui-kit/List/ListItem.js.map +1 -1
  259. package/mobile/dist/ui-kit/Select/Select.d.ts +1 -0
  260. package/mobile/dist/ui-kit/Select/Select.js +18 -4
  261. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  262. package/mobile/dist/utils/style.d.ts +2 -1
  263. package/mobile/dist/utils/style.js.map +1 -1
  264. package/mobile/lib/common.css +1 -1
  265. package/mobile/lib/components/ApplicationForm/ApplicationFormCredit.js +2 -1
  266. package/mobile/lib/components/ApplicationForm/ApplicationFormCredit.js.map +1 -1
  267. package/mobile/lib/components/ApplicationForm/PhoneInputControl.js +1 -1
  268. package/mobile/lib/components/ApplicationForm/PhoneInputControl.js.map +1 -1
  269. package/mobile/lib/components/ApplicationForm/renderCreditDataOrganization.js +1 -1
  270. package/mobile/lib/components/ApplicationForm/renderCreditDataOrganization.js.map +1 -1
  271. package/mobile/lib/components/ApplicationForm/renderCreditParameters.js +1 -1
  272. package/mobile/lib/components/ApplicationForm/renderCreditParameters.js.map +1 -1
  273. package/mobile/lib/components/ApplicationForm/renderRegion.js +1 -1
  274. package/mobile/lib/components/ApplicationForm/renderRegion.js.map +1 -1
  275. package/mobile/lib/components/ApplicationForm/renderRegionDepartment.js +1 -1
  276. package/mobile/lib/components/ApplicationForm/renderRegionDepartment.js.map +1 -1
  277. package/mobile/lib/components/Bonus/Bonus.js +6 -4
  278. package/mobile/lib/components/Bonus/Bonus.js.map +1 -1
  279. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +1 -1
  280. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  281. package/mobile/lib/components/Calculator/BusinessDepositCalculatorForm.js +1 -1
  282. package/mobile/lib/components/Calculator/BusinessDepositCalculatorForm.js.map +1 -1
  283. package/mobile/lib/components/CardTransfer/CardTransfer.js +9 -6
  284. package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
  285. package/mobile/lib/components/CardTransfer/CardTransferContent.d.ts +5 -0
  286. package/mobile/lib/components/Carousel/Carousel.d.ts +1 -1
  287. package/mobile/lib/components/Carousel/Carousel.js +9 -13
  288. package/mobile/lib/components/Carousel/Carousel.js.map +1 -1
  289. package/mobile/lib/components/Carousel/CarouselContent.d.ts +6 -0
  290. package/mobile/lib/components/Carousel/renderCardHighlight.d.ts +7 -0
  291. package/mobile/lib/components/Carousel/renderCardHighlight.js +6 -0
  292. package/mobile/lib/components/Carousel/renderCardHighlight.js.map +1 -0
  293. package/mobile/lib/components/Carousel/renderCarouselCards.d.ts +7 -0
  294. package/mobile/lib/components/Carousel/renderCarouselCards.js +34 -0
  295. package/mobile/lib/components/Carousel/renderCarouselCards.js.map +1 -0
  296. package/mobile/lib/components/Carousel/visibleItemCountStyle.d.ts +1 -0
  297. package/mobile/lib/components/Carousel/visibleItemCountStyle.js +2 -0
  298. package/mobile/lib/components/Carousel/visibleItemCountStyle.js.map +1 -0
  299. package/mobile/lib/components/CarouselCard/CarouselCard.js +2 -2
  300. package/mobile/lib/components/CarouselCard/CarouselCard.js.map +1 -1
  301. package/mobile/lib/components/CarouselLinks/CarouselLinks.js +1 -1
  302. package/mobile/lib/components/CarouselLinks/CarouselLinks.js.map +1 -1
  303. package/mobile/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.d.ts +1 -1
  304. package/mobile/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.js +1 -1
  305. package/mobile/lib/components/CarouselRecommendationCard/CarouselRecommendationCard.js.map +1 -1
  306. package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCard.js +3 -6
  307. package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
  308. package/mobile/lib/components/Footer/buttonSizeStyles.js +1 -1
  309. package/mobile/lib/components/Headline/headlineVersionStyles.js +1 -1
  310. package/mobile/lib/components/MobileAppTile/MobileAppTile.js +2 -2
  311. package/mobile/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  312. package/mobile/lib/components/MobileAppTile/buttonsConditionStyle.d.ts +3 -0
  313. package/mobile/lib/components/MobileAppTile/buttonsConditionStyle.js +10 -0
  314. package/mobile/lib/components/MobileAppTile/buttonsConditionStyle.js.map +1 -0
  315. package/mobile/lib/components/RollupItem/RollupItem.d.ts +6 -1
  316. package/mobile/lib/components/RollupItem/RollupItem.js +2 -2
  317. package/mobile/lib/components/RollupItem/RollupItem.js.map +1 -1
  318. package/mobile/lib/components/RollupItem/RollupItemContent.d.ts +0 -4
  319. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +1 -1
  320. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  321. package/mobile/lib/ui-kit/BaseTile/BaseTile.js +6 -2
  322. package/mobile/lib/ui-kit/BaseTile/BaseTile.js.map +1 -1
  323. package/mobile/lib/ui-kit/Input/Input.js +2 -2
  324. package/mobile/lib/ui-kit/Input/Input.js.map +1 -1
  325. package/mobile/lib/ui-kit/Input/InputProps.d.ts +1 -0
  326. package/mobile/lib/ui-kit/List/List.js +2 -0
  327. package/mobile/lib/ui-kit/List/List.js.map +1 -1
  328. package/mobile/lib/ui-kit/List/ListContent.d.ts +2 -2
  329. package/mobile/lib/ui-kit/List/ListItem.js +1 -0
  330. package/mobile/lib/ui-kit/List/ListItem.js.map +1 -1
  331. package/mobile/lib/ui-kit/Select/Select.d.ts +1 -0
  332. package/mobile/lib/ui-kit/Select/Select.js +19 -5
  333. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  334. package/mobile/lib/utils/style.d.ts +2 -1
  335. package/mobile/lib/utils/style.js.map +1 -1
  336. package/mobile/src/components/ApplicationForm/ApplicationFormCredit.tsx +2 -1
  337. package/mobile/src/components/ApplicationForm/PhoneInputControl.tsx +1 -0
  338. package/mobile/src/components/ApplicationForm/renderCreditDataOrganization.tsx +1 -1
  339. package/mobile/src/components/ApplicationForm/renderCreditParameters.tsx +2 -2
  340. package/mobile/src/components/ApplicationForm/renderRegion.tsx +1 -0
  341. package/mobile/src/components/ApplicationForm/renderRegionDepartment.tsx +1 -0
  342. package/mobile/src/components/Bonus/Bonus.tsx +25 -21
  343. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +1 -2
  344. package/mobile/src/components/Calculator/BusinessDepositCalculatorForm.tsx +1 -0
  345. package/mobile/src/components/CardTransfer/CardTransfer.example.json +2 -1
  346. package/mobile/src/components/CardTransfer/CardTransfer.tsx +13 -7
  347. package/mobile/src/components/CardTransfer/CardTransferContent.ts +5 -0
  348. package/mobile/src/components/Carousel/Carousel.example.json +2 -1
  349. package/mobile/src/components/Carousel/Carousel.tsx +12 -20
  350. package/mobile/src/components/Carousel/CarouselContent.ts +7 -0
  351. package/mobile/src/components/Carousel/renderCardHighlight.tsx +22 -0
  352. package/mobile/src/components/Carousel/renderCarouselCards.tsx +74 -0
  353. package/mobile/src/components/Carousel/visibleItemCountStyle.tsx +1 -0
  354. package/mobile/src/components/CarouselCard/CarouselCard.tsx +4 -2
  355. package/mobile/src/components/CarouselLinks/CarouselLinks.tsx +3 -3
  356. package/mobile/src/components/CarouselRecommendationCard/CarouselRecommendationCard.tsx +7 -7
  357. package/mobile/src/components/CarouselTariffsCard/CarouselTariffsCard.tsx +3 -30
  358. package/mobile/src/components/Footer/buttonSizeStyles.ts +1 -1
  359. package/mobile/src/components/Headline/headlineVersionStyles.ts +1 -1
  360. package/mobile/src/components/MobileAppTile/MobileAppTile.tsx +2 -2
  361. package/mobile/src/components/MobileAppTile/buttonsConditionStyle.tsx +12 -0
  362. package/mobile/src/components/RollupItem/RollupItem.tsx +9 -6
  363. package/mobile/src/components/RollupItem/RollupItem.ui.json +1 -5
  364. package/mobile/src/components/RollupItem/RollupItemContent.ts +0 -4
  365. package/mobile/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +1 -1
  366. package/mobile/src/ui-kit/BaseTile/BaseTile.tsx +15 -4
  367. package/mobile/src/ui-kit/Input/Input.tsx +2 -0
  368. package/mobile/src/ui-kit/Input/InputProps.ts +1 -0
  369. package/mobile/src/ui-kit/List/List.tsx +2 -0
  370. package/mobile/src/ui-kit/List/ListContent.ts +2 -2
  371. package/mobile/src/ui-kit/List/ListItem.tsx +1 -0
  372. package/mobile/src/ui-kit/Select/Select.tsx +46 -12
  373. package/mobile/src/utils/style.ts +2 -1
  374. package/package.json +1 -1
  375. package/src/components/ApplicationForm/ApplicationFormCredit.tsx +2 -1
  376. package/src/components/ApplicationForm/PhoneInputControl.tsx +1 -0
  377. package/src/components/ApplicationForm/renderCreditDataOrganization.tsx +1 -1
  378. package/src/components/ApplicationForm/renderCreditParameters.tsx +2 -2
  379. package/src/components/ApplicationForm/renderRegion.tsx +1 -0
  380. package/src/components/ApplicationForm/renderRegionDepartment.tsx +1 -0
  381. package/src/components/Bonus/Bonus.tsx +25 -21
  382. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +1 -2
  383. package/src/components/Calculator/BusinessDepositCalculatorForm.tsx +1 -0
  384. package/src/components/CardTransfer/CardTransfer.example.json +2 -1
  385. package/src/components/CardTransfer/CardTransfer.tsx +13 -7
  386. package/src/components/CardTransfer/CardTransferContent.ts +5 -0
  387. package/src/components/Carousel/Carousel.example.json +2 -1
  388. package/src/components/Carousel/Carousel.fixture.tsx +2 -0
  389. package/src/components/Carousel/Carousel.tsx +12 -20
  390. package/src/components/Carousel/CarouselContent.ts +7 -0
  391. package/src/components/Carousel/renderCardHighlight.tsx +22 -0
  392. package/src/components/Carousel/renderCarouselCards.tsx +74 -0
  393. package/src/components/Carousel/visibleItemCountStyle.mobile.tsx +1 -0
  394. package/src/components/Carousel/visibleItemCountStyle.tsx +1 -0
  395. package/src/components/CarouselCard/CarouselCard.tsx +4 -2
  396. package/src/components/CarouselInvestmentCard/CarouselInvestmentCard.fixture.tsx +6 -6
  397. package/src/components/CarouselLinks/CarouselLinks.fixture.tsx +3 -3
  398. package/src/components/CarouselLinks/CarouselLinks.tsx +3 -3
  399. package/src/components/CarouselRecommendationCard/CarouselRecommendationCard.fixture.mobile.tsx +1 -1
  400. package/src/components/CarouselRecommendationCard/CarouselRecommendationCard.mobile.tsx +7 -7
  401. package/src/components/CarouselTariffsCard/CarouselTariffsCard.fixture.mobile.tsx +1 -6
  402. package/src/components/CarouselTariffsCard/CarouselTariffsCard.fixture.tsx +0 -5
  403. package/src/components/CarouselTariffsCard/CarouselTariffsCard.tsx +3 -30
  404. package/src/components/Headline/headlineVersionStyles.ts +1 -1
  405. package/src/components/MobileAppTile/MobileAppTile.tsx +2 -2
  406. package/src/components/MobileAppTile/buttonsConditionStyle.mobile.tsx +12 -0
  407. package/src/components/MobileAppTile/buttonsConditionStyle.tsx +5 -0
  408. package/src/components/RollupItem/RollupItem.fixture.mobile.tsx +6 -3
  409. package/src/components/RollupItem/RollupItem.tsx +9 -6
  410. package/src/components/RollupItem/RollupItem.ui.json +1 -5
  411. package/src/components/RollupItem/RollupItemContent.ts +0 -4
  412. package/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +1 -1
  413. package/src/ui-kit/BaseTile/BaseTile.tsx +15 -4
  414. package/src/ui-kit/Input/Input.tsx +2 -0
  415. package/src/ui-kit/Input/InputProps.ts +1 -0
  416. package/src/ui-kit/List/List.tsx +2 -0
  417. package/src/ui-kit/List/ListContent.ts +2 -2
  418. package/src/ui-kit/List/ListItem.tsx +1 -0
  419. package/src/ui-kit/Select/Select.tsx +46 -12
  420. package/src/utils/style.ts +2 -1
  421. package/bundle/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  422. package/bundle/components/CarouselTariffsCard/getPaddingStyle.mobile.d.ts +0 -1
  423. package/bundle/components/Footer/buttonSizeStyles.mobile.d.ts +0 -4
  424. package/dist/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  425. package/dist/components/CarouselTariffsCard/getPaddingStyle.js +0 -5
  426. package/dist/components/CarouselTariffsCard/getPaddingStyle.js.map +0 -1
  427. package/dist/components/CarouselTariffsCard/getPaddingStyle.mobile.d.ts +0 -1
  428. package/dist/components/CarouselTariffsCard/getPaddingStyle.mobile.js +0 -5
  429. package/dist/components/CarouselTariffsCard/getPaddingStyle.mobile.js.map +0 -1
  430. package/dist/components/Footer/buttonSizeStyles.mobile.d.ts +0 -4
  431. package/dist/components/Footer/buttonSizeStyles.mobile.js +0 -7
  432. package/dist/components/Footer/buttonSizeStyles.mobile.js.map +0 -1
  433. package/lib/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  434. package/lib/components/CarouselTariffsCard/getPaddingStyle.js +0 -2
  435. package/lib/components/CarouselTariffsCard/getPaddingStyle.js.map +0 -1
  436. package/lib/components/CarouselTariffsCard/getPaddingStyle.mobile.d.ts +0 -1
  437. package/lib/components/CarouselTariffsCard/getPaddingStyle.mobile.js +0 -2
  438. package/lib/components/CarouselTariffsCard/getPaddingStyle.mobile.js.map +0 -1
  439. package/lib/components/Footer/buttonSizeStyles.mobile.d.ts +0 -4
  440. package/lib/components/Footer/buttonSizeStyles.mobile.js +0 -5
  441. package/lib/components/Footer/buttonSizeStyles.mobile.js.map +0 -1
  442. package/mobile/bundle/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  443. package/mobile/dist/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  444. package/mobile/dist/components/CarouselTariffsCard/getPaddingStyle.js +0 -5
  445. package/mobile/dist/components/CarouselTariffsCard/getPaddingStyle.js.map +0 -1
  446. package/mobile/lib/components/CarouselTariffsCard/getPaddingStyle.d.ts +0 -1
  447. package/mobile/lib/components/CarouselTariffsCard/getPaddingStyle.js +0 -2
  448. package/mobile/lib/components/CarouselTariffsCard/getPaddingStyle.js.map +0 -1
  449. package/mobile/src/components/CarouselTariffsCard/getPaddingStyle.tsx +0 -2
  450. package/src/components/CarouselTariffsCard/getPaddingStyle.mobile.tsx +0 -2
  451. package/src/components/CarouselTariffsCard/getPaddingStyle.tsx +0 -2
  452. package/src/components/Footer/buttonSizeStyles.mobile.ts +0 -6
@@ -693,7 +693,7 @@
693
693
  };
694
694
  };
695
695
 
696
- const Input = JSX(({ key, className = '', inputClassName = '', id, name, type = 'text', label, placeholder, value = '', valid = true, children, onChange, onFocus, onBlur, pattern, }) => {
696
+ const Input = JSX(({ key, className = '', inputClassName = '', id, name, type = 'text', label, placeholder, value = '', valid = true, children, onChange, onFocus, onBlur, pattern, autoFocus = false, }) => {
697
697
  const handleChange = useCallback((e) => {
698
698
  onChange && onChange(e.target?.value || '');
699
699
  }, [onChange]);
@@ -701,7 +701,7 @@
701
701
  const validStyle = valid
702
702
  ? 'border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text'
703
703
  : 'border-error';
704
- return (jsxs("div", { className: style('relative', className), children: [jsxs("label", { children: [label ? (jsx("div", { className: "mb-xs", children: jsx(Text, { size: "text-m", font: "font-light", children: label }) })) : null, jsx("input", { className: style('w-full border rounded-md text-primary-text outline-none p-m', paddingStyle, validStyle, inputClassName), id: id, name: name || id, placeholder: placeholder, type: type, value: value, onInput: handleChange, onFocus: onFocus, onBlur: onBlur, pattern: pattern }, key)] }), children] }));
704
+ return (jsxs("div", { className: style('relative', className), children: [jsxs("label", { children: [label ? (jsx("div", { className: "mb-xs", children: jsx(Text, { size: "text-m", font: "font-light", children: label }) })) : null, jsx("input", { className: style('w-full border rounded-md text-primary-text outline-none p-m', paddingStyle, validStyle, inputClassName), id: id, name: name || id, placeholder: placeholder, type: type, value: value, onInput: handleChange, onFocus: onFocus, onBlur: onBlur, pattern: pattern, autoFocus: autoFocus }, key)] }), children] }));
705
705
  });
706
706
 
707
707
  const InputControl = JSX(({ className, label, value = '', error, onChange, onBlur }) => (jsxs("div", { className: className, children: [jsx(Input, { type: "text", "aria-label": label, label: label, valid: Boolean(!error), value: value, onChange: onChange, onBlur: onBlur }), jsx("div", { className: "h-2", children: error ? (jsx(Text, { size: "text-xs", font: "font-light", color: "text-error", children: error })) : null })] })));
@@ -725,7 +725,7 @@
725
725
  return (jsx(Input, { onChange: handleChange, onFocus: (event) => handleChange(event?.target?.value || ''), ...inputProps, children: children }));
726
726
  });
727
727
 
728
- const PhoneInputControl = JSX(({ className, label, value, error, onChange, onBlur }) => (jsxs("div", { className: className, children: [jsx(PhoneInput, { "aria-label": label, label: label, valid: Boolean(!error), value: value, onChange: onChange, onBlur: onBlur }), jsx("div", { className: "h-2", children: error ? (jsx(Text, { size: "text-xs", font: "font-light", color: "text-error", children: error })) : null })] })));
728
+ const PhoneInputControl = JSX(({ className, label, value, error, onChange, onBlur }) => (jsxs("div", { className: className, children: [jsx(PhoneInput, { "aria-label": label, label: label, valid: Boolean(!error), value: value, onChange: onChange, onBlur: onBlur, placeholder: "+7 (___) ___-__-__" }), jsx("div", { className: "h-2", children: error ? (jsx(Text, { size: "text-xs", font: "font-light", color: "text-error", children: error })) : null })] })));
729
729
 
730
730
  const pattern = (regexp) => validator((_) => typeof _ === 'string' && regexp.test(_));
731
731
 
@@ -784,6 +784,70 @@
784
784
  return targetRef;
785
785
  }
786
786
 
787
+ const JARO_WINKLER_P = 0.1;
788
+ const JARO_WINKLER_MAX_L = 4;
789
+ const jaroWinklerDistance = (s1) => (s2) => {
790
+ if (s1 === s2) {
791
+ return 1;
792
+ }
793
+ if (!s1 || !s2) {
794
+ return 0;
795
+ }
796
+ const { m, s1Matches, s2Matches } = computeM(s1, s2);
797
+ if (m === 0) {
798
+ return 0;
799
+ }
800
+ const t = computeT(s1, s2, { s1Matches, s2Matches });
801
+ const jaroWeight = (m / s1.length + m / s2.length + (m - t / 2) / m) / 3;
802
+ const winklerWeight = jaroWeight > 0.7 ? computePrefixL(s1, s2) * JARO_WINKLER_P : 0;
803
+ return jaroWeight + winklerWeight * (1 - jaroWeight);
804
+ };
805
+ function computeM(s1, s2) {
806
+ const range = Math.max(0, Math.floor(Math.max(s1.length, s2.length) / 2) - 1);
807
+ const s1Matches = new Array(s1.length);
808
+ const s2Matches = new Array(s2.length);
809
+ let m = 0;
810
+ for (let i = 0; i < s1.length; i++) {
811
+ const low = Math.max(0, i - range);
812
+ const high = Math.min(i + range, s2.length - 1);
813
+ for (let j = low; j <= high; j++) {
814
+ if (s1Matches[i] || s2Matches[j] || s1[i] !== s2[j]) {
815
+ continue;
816
+ }
817
+ m++;
818
+ s1Matches[i] = true;
819
+ s2Matches[j] = true;
820
+ }
821
+ }
822
+ return { m, s1Matches, s2Matches };
823
+ }
824
+ function computeT(s1, s2, { s1Matches, s2Matches }) {
825
+ let t = 0;
826
+ for (let i = 0, k = 0; i < s1.length; i++) {
827
+ if (!s1Matches[i]) {
828
+ continue;
829
+ }
830
+ let j = k;
831
+ for (; j < s2.length; j++) {
832
+ if (s2Matches[j]) {
833
+ k = j + 1;
834
+ break;
835
+ }
836
+ }
837
+ if (s1[i] !== s2[j]) {
838
+ t++;
839
+ }
840
+ }
841
+ return t;
842
+ }
843
+ function computePrefixL(s1, s2) {
844
+ let prefixL = 0;
845
+ while (s1[prefixL] === s2[prefixL] && prefixL < JARO_WINKLER_MAX_L) {
846
+ prefixL++;
847
+ }
848
+ return prefixL;
849
+ }
850
+
787
851
  const svgUseStyleMap = {
788
852
  normal: '',
789
853
  color: 'text-primary-main',
@@ -804,16 +868,28 @@
804
868
  const getSvgSize = (width) => (width ? '' : 'w-full h-full');
805
869
  const Background = JSX(({ className, children }) => className ? jsx("div", { className: className, children: children }) : children);
806
870
 
807
- const Select = JSX(({ className = '', label, options = [], value, valid = true, isBorder = true, placeholder = '', onChange, }) => {
871
+ const Select = JSX(({ className = '', label, options = [], value, valid = true, isBorder = true, placeholder = '', onChange, isSearch = false, }) => {
808
872
  const [isOpen, { setFalse: close, toggle }] = useBool();
809
- const wrapperRef = useOutsideClick(close);
810
- const handleChange = useCallback((option) => {
873
+ const [searchValue, setSearchValue] = useState('');
874
+ const reset = useCallback(() => {
811
875
  close();
876
+ setSearchValue('');
877
+ }, []);
878
+ const wrapperRef = useOutsideClick(reset);
879
+ const handleChange = useCallback((option) => {
880
+ reset();
812
881
  onChange && onChange(option);
813
882
  }, [onChange]);
814
883
  const isSelected = (option) => option.key === value?.key;
815
- return (jsxs("div", { className: className, ref: wrapperRef, children: [label ? (jsx("div", { className: "mb-xs", children: jsx(Text, { size: "text-m", color: "text-primary-text", font: "font-light", children: label }) })) : null, 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', 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" })] }), 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: options.map(renderOption(handleChange, isOpen, isSelected)) }) })) : null] })] }));
884
+ 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] })] }));
816
885
  });
886
+ 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;
887
+ const getFilteredOptions = (options, searchValue) => {
888
+ return searchValue
889
+ ? options.filter((_) => jaroWinklerDistance(_.text?.toLowerCase())(searchValue.toLowerCase()) >= 0.6)
890
+ : options;
891
+ };
892
+ 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;
817
893
  const renderOption = (handleChange, isOpen, isSelected) => (option, i) => (jsxs("div", { onClick: () => {
818
894
  handleChange(option);
819
895
  }, 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)));
@@ -875,7 +951,7 @@
875
951
 
876
952
  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) })] })] }));
877
953
 
878
- const renderRegion = ({ 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", options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }));
954
+ const renderRegion = ({ 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) }));
879
955
 
880
956
  const initialFormState$3 = {
881
957
  name: '',
@@ -927,7 +1003,7 @@
927
1003
  const MAX_CREDIT_TERM = 180;
928
1004
  const ITEMS_CREDIT_TERM = ['От 1 мес', 'До 15 лет'];
929
1005
 
930
- 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", ...field('fullName') }), 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') })] })] }));
1006
+ 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') })] })] }));
931
1007
 
932
1008
  const useNormalizedInput = (props, { normalize, format }) => {
933
1009
  const { value, onFocus, onBlur, onChange } = props;
@@ -990,9 +1066,9 @@
990
1066
  const closestValue = (list) => (_) => list.reduce((prev, curr) => (Math.abs(curr - _) < Math.abs(prev - _) ? curr : prev));
991
1067
  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)))) }));
992
1068
 
993
- 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 \u043A\u0440\u0435\u0434\u0438\u0442\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 \u043A\u0440\u0435\u0434\u0438\u0442\u0430, \u043C\u0435\u0441\u044F\u0446\u0435\u0432" }) }), jsx(InputRange, { items: ITEMS_CREDIT_TERM, min: MIN_CREDIT_TERM, max: MAX_CREDIT_TERM, ...field('term') })] })] }));
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') })] })] }));
994
1070
 
995
- 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", 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 = '' }) => ({
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 = '' }) => ({
996
1072
  key: branchCode,
997
1073
  text: address,
998
1074
  })), ...withValidator(field('department'), defaultValidator) }) })] }));
@@ -1008,6 +1084,7 @@
1008
1084
  annualRevenue: '',
1009
1085
  };
1010
1086
  const creditValidator = objectValidator({
1087
+ fullName: defaultValidator,
1011
1088
  annualRevenue: defaultValidator,
1012
1089
  inn: innValidator,
1013
1090
  name: nameValidator,
@@ -1034,7 +1111,7 @@
1034
1111
  const [formState, { field, ...formProps }] = useForm(initialFormState$2, handleSubmit);
1035
1112
  const regions = useGetRegions();
1036
1113
  const branches = useBranches(formState.region?.key).filter((branch) => branch?.address);
1037
- 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 \u043A\u0440\u0435\u0434\u0438\u0442\u0430", 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 })] }));
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 })] }));
1038
1115
  });
1039
1116
 
1040
1117
  const initialFormState$1 = {
@@ -1275,7 +1352,7 @@
1275
1352
  },
1276
1353
  XS: {
1277
1354
  title: { headingType: 'h5', as: 'h2' },
1278
- descriptionSize: 'text-l',
1355
+ descriptionSize: 'text-m',
1279
1356
  descriptionWeight: 'font-light',
1280
1357
  descriptionStyle: 'mt-xs',
1281
1358
  },
@@ -1477,7 +1554,7 @@
1477
1554
 
1478
1555
  const renderBonusBenefits = (bonusBenefits, _columnsCount, _cardTextAlign) => (jsx(SwipeListControl, { children: bonusBenefits.map((_, i) => renderBonusBenefit({ ..._ }, i)) }));
1479
1556
 
1480
- 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-m sm:mb-3xl", isEmbedded: true, title: title, description: subtitle, headlineVersion: "M" }), bonusBenefits?.length
1557
+ 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
1481
1558
  ? renderBonusBenefits(bonusBenefits)
1482
1559
  : null] })));
1483
1560
 
@@ -1822,7 +1899,7 @@
1822
1899
  depositeName,
1823
1900
  isShowDepositeName,
1824
1901
  isShowUnknownRate,
1825
- }), jsxs("div", { className: "flex flex-col gap-2xl sm:w-96", children: [renderDepositResults(finalSum, income), renderButtonsSection(buttons, { isVertical: true }), renderFootnote(footnote)] })] }));
1902
+ }), jsxs("div", { className: "flex flex-col gap-2xl sm:w-96", children: [renderDepositResults(finalSum, income), renderButtonsSection(buttons, { isVertical: true }), renderFootnote(footnote), renderFootnote(bottomFootnote)] })] }));
1826
1903
  });
1827
1904
  const renderBusinessDepositParamsForm = (calculatorParams, field) => (jsxs("div", { className: "flex flex-col gap-y-xl sm:gap-y-s", children: [jsx(Checkbox, { text: "\u041F\u043E\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u0435", disabled: calculatorParams.isDisabledOperatingDeposit, ...field('isReplenished'), value: calculatorParams.isReplenished }), jsx(Checkbox, { disabled: calculatorParams.isDisabledOperatingDeposit, text: "\u0427\u0430\u0441\u0442\u0438\u0447\u043D\u043E\u0435 \u0441\u043D\u044F\u0442\u0438\u0435", ...field('isPartialWithdrawal'), value: calculatorParams.isPartialWithdrawal }), jsx(Checkbox, { text: "\u0418\u041F / \u043C\u0430\u043B\u043E\u0435 \u043F\u0440\u0435\u0434\u043F\u0440\u0438\u044F\u0442\u0438\u0435", ...field('isSmallBusiness'), value: calculatorParams.isSmallBusiness })] }));
1828
1905
  const renderDepositResults = (finalSum, income) => (jsxs("div", { className: "flex flex-col gap-2xl sm:gap-0", children: [jsx(CalculatorValueBlock, { title: "\u0414\u043E\u0445\u043E\u0434 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: income, postfix: "\u20BD", prefix: "+" }), jsx(CalculatorValueBlock, { title: "\u0421\u0443\u043C\u043C\u0430 \u0432 \u043A\u043E\u043D\u0446\u0435 \u0441\u0440\u043E\u043A\u0430", value: finalSum, postfix: "\u20BD" })] }));
@@ -2256,69 +2333,24 @@
2256
2333
  const DEFAULT_TITLE = 'Укажите сумму перевода';
2257
2334
  const DEFAULT_LABEL = 'Сумма перевода';
2258
2335
  const DEFAULT_PLACEHOLDER = '1500';
2259
- const FORM_URL = 'https://www.rshb.ru/p2p/';
2260
- const AMOUNT_KEY = 'amount';
2336
+ const FORM_URL_MAP = {
2337
+ private: 'https://old.rshb.ru/p2p/',
2338
+ business: 'https://old.rshb.ru/smallbusiness/p2p/',
2339
+ };
2261
2340
  const INITIAL_FORM_STATE = {
2262
- [AMOUNT_KEY]: 1500,
2341
+ amount: 1500,
2342
+ _amount: 1500,
2263
2343
  };
2264
- const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, ...rest }) => {
2265
- const [{ amount }, { field }] = useForm(INITIAL_FORM_STATE);
2344
+ const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, formType = 'private', ...rest }) => {
2345
+ const [{ amount, _amount }, { field }] = useForm(INITIAL_FORM_STATE);
2266
2346
  const isDisabled = amount <= 0;
2267
2347
  const buttonStyle = isDisabled
2268
2348
  ? getDisabledButtonClasses({ version: button?.version })
2269
2349
  : getRegularButtonClasses({ className: 'text-white', version: button?.version });
2270
2350
  const link = useLink();
2271
- 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, children: [jsx(CurrencyInput, { name: AMOUNT_KEY, valid: !isDisabled, placeholder: placeholder, label: label, ...field(AMOUNT_KEY, { parse: Number, format: String }) }), button?.text ? (jsx("button", { type: "submit", className: style('w-full p-m mt-lg', buttonStyle), disabled: isDisabled, ...link(button), children: button.text })) : null] })] }));
2351
+ 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] })] }));
2272
2352
  });
2273
2353
 
2274
- const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
2275
-
2276
- const DEFAULT_ANCESTORS = [];
2277
- const defaultStyle = 'col-span-12';
2278
- function renderBlock(block, options, { className, ...extraProps } = {}) {
2279
- const { key, blockDecorator = defaultBlockDecorator, blocksRegistry = {}, ancestors = DEFAULT_ANCESTORS, } = options;
2280
- const { type } = block;
2281
- if (!(type && type in blocksRegistry)) {
2282
- console.warn(`No block with "${type}" is registered`);
2283
- }
2284
- const BlockComponent = type && blocksRegistry[type];
2285
- return blockDecorator({
2286
- blockClassName: style(block.style?.length ? block.style : defaultStyle, className),
2287
- block,
2288
- ancestors,
2289
- // Adjusted by decorator block and blockClassName
2290
- render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
2291
- const { content } = adjustedBlock;
2292
- return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, block: block, options: options, ...content, ...extraProps }, key)) : null;
2293
- },
2294
- }, key);
2295
- }
2296
-
2297
- const DEFAULT_SLOT_NAME = null;
2298
-
2299
- const EMPTY_ANCESTORS = [];
2300
- const renderBlocksList = (blocks, { key, ancestors = EMPTY_ANCESTORS, slotName = DEFAULT_SLOT_NAME, extraProps, renderProps = renderBlock, ...options }) => {
2301
- const renderChildBlock = extraProps
2302
- ? (childBlock, childOptions) => renderBlock(childBlock, childOptions, extraProps)
2303
- : renderProps;
2304
- return (blocks || []).map((_, i) => renderChildBlock(_, {
2305
- ...options,
2306
- key: `${key ? key : _.type}-${i}`,
2307
- ancestors: options.parent
2308
- ? [...(ancestors || EMPTY_ANCESTORS), [options.parent, slotName]]
2309
- : ancestors,
2310
- }, i));
2311
- };
2312
-
2313
- function renderChildren({ block, options, children, extraProps, renderProps, }) {
2314
- if (children) {
2315
- return children;
2316
- }
2317
- return block && options
2318
- ? renderBlocksList(block.blocks, { ...options, parent: block, extraProps, renderProps })
2319
- : null;
2320
- }
2321
-
2322
2354
  const useCarouselControls = (props, initialIndex = 0) => {
2323
2355
  const { itemCount, visibleItemCount } = props;
2324
2356
  const [activeIndex, setActiveIndex] = useState(initialIndex);
@@ -2377,7 +2409,86 @@
2377
2409
 
2378
2410
  const ITEMS_GAP = 16;
2379
2411
 
2380
- const Carousel = JSX(({ className, itemCount, visibleItemCount = 0, noCardBorder, isAlignCenter, showDots, arrowsPadded = true, isGap = true, ...rest }) => {
2412
+ const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
2413
+
2414
+ const DEFAULT_ANCESTORS = [];
2415
+ const defaultStyle = 'col-span-12';
2416
+ function renderBlock(block, options, { className, ...extraProps } = {}) {
2417
+ const { key, blockDecorator = defaultBlockDecorator, blocksRegistry = {}, ancestors = DEFAULT_ANCESTORS, } = options;
2418
+ const { type } = block;
2419
+ if (!(type && type in blocksRegistry)) {
2420
+ console.warn(`No block with "${type}" is registered`);
2421
+ }
2422
+ const BlockComponent = type && blocksRegistry[type];
2423
+ return blockDecorator({
2424
+ blockClassName: style(block.style?.length ? block.style : defaultStyle, className),
2425
+ block,
2426
+ ancestors,
2427
+ // Adjusted by decorator block and blockClassName
2428
+ render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
2429
+ const { content } = adjustedBlock;
2430
+ return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, block: block, options: options, ...content, ...extraProps }, key)) : null;
2431
+ },
2432
+ }, key);
2433
+ }
2434
+
2435
+ const DEFAULT_SLOT_NAME = null;
2436
+
2437
+ const EMPTY_ANCESTORS = [];
2438
+ const renderBlocksList = (blocks, { key, ancestors = EMPTY_ANCESTORS, slotName = DEFAULT_SLOT_NAME, extraProps, renderProps = renderBlock, ...options }) => {
2439
+ const renderChildBlock = extraProps
2440
+ ? (childBlock, childOptions) => renderBlock(childBlock, childOptions, extraProps)
2441
+ : renderProps;
2442
+ return (blocks || []).map((_, i) => renderChildBlock(_, {
2443
+ ...options,
2444
+ key: `${key ? key : _.type}-${i}`,
2445
+ ancestors: options.parent
2446
+ ? [...(ancestors || EMPTY_ANCESTORS), [options.parent, slotName]]
2447
+ : ancestors,
2448
+ }, i));
2449
+ };
2450
+
2451
+ function renderChildren({ block, options, children, extraProps, renderProps, }) {
2452
+ if (children) {
2453
+ return children;
2454
+ }
2455
+ return block && options
2456
+ ? renderBlocksList(block.blocks, { ...options, parent: block, extraProps, renderProps })
2457
+ : null;
2458
+ }
2459
+
2460
+ const renderCardHighlight = ({ className, text = 'ХИТ' } = {}) => (jsxs("div", { className: style('w-14 h-14 bg-white flex flex-col items-center justify-center rounded-md shadow-[0_4px_25px_rgba(0,0,0,0.07)]', className), children: [jsx(Icon, { iconVersion: "black", name: "HeartIcon", width: "24", height: "24" }), jsx(Paragraph, { size: "text-s", font: "font-normal", align: "text-center", color: "text-primary-text", children: text })] }));
2461
+
2462
+ const cardBaseStyle = 'relative h-full';
2463
+ const CARD_SIZE_MAP = {
2464
+ normal: 'sm:min-w-96',
2465
+ big: 'sm:min-w-[515px]',
2466
+ };
2467
+ const renderCarouselCards = ({ noCardBorder, activeIndex, cardSize = 'normal', ...rest }) => {
2468
+ const { blocks: childBlocks } = rest.block || {};
2469
+ const someCardsHighlighted = childBlocks?.some(isCardHighlighted);
2470
+ return renderChildren({
2471
+ ...rest,
2472
+ renderProps: (block, options, blockIndex) => (jsxs("div", { className: cardWrapperStyle(block, { someCardsHighlighted }), children: [renderBlock(block, options, {
2473
+ className: cardStyle(block, {
2474
+ someCardsHighlighted,
2475
+ showBorder: !noCardBorder,
2476
+ cardSize,
2477
+ }),
2478
+ blockIndex,
2479
+ isActive: blockIndex === activeIndex,
2480
+ }), isCardHighlighted(block)
2481
+ ? renderCardHighlight({ className: 'absolute top-0 -right-4 z-40' })
2482
+ : null] })),
2483
+ });
2484
+ };
2485
+ const cardWrapperStyle = (_, { someCardsHighlighted }) => style(cardBaseStyle, someCardsHighlighted && (isCardHighlighted(_) ? 'pt-3xl' : 'pt-3xl sm:pt-16'));
2486
+ const cardStyle = (_, { someCardsHighlighted, showBorder, cardSize = 'normal', }) => style(cardBaseStyle, 'min-w-80', CARD_SIZE_MAP[cardSize], // TODO fix для RecommendationCard
2487
+ someCardsHighlighted && (isCardHighlighted(_) ? 'pt-3xl sm:pt-16' : 'pt-3xl'), showBorder &&
2488
+ 'border border-solid border-gray group-data-secondary:border-white/50 group-data-gray:border-main-divider');
2489
+ const isCardHighlighted = (_) => _?.content && 'isHighlighting' in _.content && _.content.isHighlighting;
2490
+
2491
+ const Carousel = JSX(({ className, itemCount, visibleItemCount = 0, noCardBorder, isAlignCenter, showDots, arrowsPadded = true, isGap = true, cardSize = 'normal', ...rest }) => {
2381
2492
  const { blocks: childBlocks = [] } = rest.block || {};
2382
2493
  const count = itemCount || childBlocks?.length;
2383
2494
  const [activeIndex, { inc: increaseActiveIndex, dec: decreaseActiveIndex }] = useCarouselControls({
@@ -2388,16 +2499,7 @@
2388
2499
  const [dotsActiveIndex] = scroll.visibleIndicesRange;
2389
2500
  // TODO Remove
2390
2501
  const isBankHistoryCarousel = childBlocks && childBlocks[0]?.type === 'CarouselBankHistoryCard';
2391
- return (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: style(isAlignCenter ? 'flex justify-center' : '', 'relative max-w-full'), children: [jsx(SwipeListContainer, { containerRef: containerRef, visibleItemCount: visibleItemCount, snapAlign: "snap-start", gap: isGap ? ITEMS_GAP : undefined, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: renderChildren({
2392
- ...rest,
2393
- renderProps: (block, options, blockIndex) => renderBlock(block, options, {
2394
- className: style('h-full min-w-80 sm:min-w-96', noCardBorder
2395
- ? ''
2396
- : 'border border-solid border-gray group-data-secondary:border-white/50 group-data-gray:border-main-divider'),
2397
- blockIndex,
2398
- isActive: activeIndex === blockIndex,
2399
- }),
2400
- }) }), jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: arrowsPadded, onScrollLeft: decreaseActiveIndex, onScrollRight: increaseActiveIndex, hasEdgeBlocks: isBankHistoryCarousel, activeIndex: activeIndex, itemCount: count }), showDots ? (jsx(SwipeListControlDots, { containerRef: containerRef, activeIndex: dotsActiveIndex, dotCount: count, listType: "horizontal-list" })) : null] }) }));
2502
+ return (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", ...rest, children: jsxs("div", { className: style(isAlignCenter ? 'flex justify-center' : '', 'relative max-w-full'), children: [jsx(SwipeListContainer, { containerRef: containerRef, visibleItemCount: visibleItemCount, snapAlign: "snap-start", gap: isGap ? ITEMS_GAP : undefined, onVisibleIndicesChange: scroll.handleVisibleIndicesChange, children: renderCarouselCards({ noCardBorder, activeIndex, cardSize, ...rest }) }), jsx(CarouselScrollButtons, { scroll: scroll, arrowsPadded: arrowsPadded, onScrollLeft: decreaseActiveIndex, onScrollRight: increaseActiveIndex, hasEdgeBlocks: isBankHistoryCarousel, activeIndex: activeIndex, itemCount: count }), showDots ? (jsx(SwipeListControlDots, { containerRef: containerRef, activeIndex: dotsActiveIndex, dotCount: count, listType: "horizontal-list" })) : null] }) }));
2401
2503
  });
2402
2504
  Carousel.childrenTypes = [
2403
2505
  'CarouselCard',
@@ -2412,6 +2514,12 @@
2412
2514
  'CarouselInvestmentCard',
2413
2515
  'CarouselEventCard',
2414
2516
  ];
2517
+ Carousel.childSchema = () => ({
2518
+ isHighlighting: {
2519
+ title: 'Выделить карточку',
2520
+ type: 'boolean',
2521
+ },
2522
+ });
2415
2523
 
2416
2524
  const CarouselBankHistoryCard = JSX(({ title, description, className }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-6xl", children: jsx(Headline, { headlineVersion: "XS", title: title, description: description, align: "text-left", className: "text-primary-text", isEmbedded: true }) })));
2417
2525
 
@@ -2419,8 +2527,8 @@
2419
2527
 
2420
2528
  const layerBaseStyle = 'z-10 border border-solid w-full h-full';
2421
2529
  const layerStyle = style(layerBaseStyle, 'absolute hidden sm:block border-transparent');
2422
- 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-5xl bg-white border-green-light'), children: [jsx(Headline, { title: title, description: description, headlineVersion: titleSize, align: "text-left", isEmbedded: true }), renderButtonsSection([button], {
2423
- className: 'mt-6xl sm:justify-center',
2530
+ 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], {
2531
+ className: 'mt-m sm:mt-6xl sm:justify-center',
2424
2532
  isVertical: true,
2425
2533
  })] })] }) })));
2426
2534
 
@@ -2442,15 +2550,18 @@
2442
2550
  L: 'w-1.5 h-1.5 mr-m',
2443
2551
  M: 'w-1.5 h-1.5 mr-s',
2444
2552
  S: 'w-1 h-1 mr-xs',
2553
+ XS: 'w-1 h-1 mr-xs',
2445
2554
  };
2446
2555
  const ListItem = JSX(({ className, isDotted = true, children, size = 'M' }) => (jsxs("div", { className: style('font-sans flex', className), role: "listitem", children: [isDotted ? (jsx("div", { className: "shrink-0", children: jsx("div", { className: style('align-middle inline-block rounded-full bg-primary-text group-data-secondary:bg-white', DOT_SIZE_MAP[size]) }) })) : null, jsx("span", { children: children })] })));
2447
2556
 
2448
2557
  const TEXT_SIZE_MAP = {
2558
+ XS: 'text-m font-light',
2449
2559
  S: 'text-l font-light',
2450
2560
  M: 'text-h6',
2451
2561
  L: 'text-h5',
2452
2562
  };
2453
2563
  const ITEM_INDENT_MAP = {
2564
+ XS: 'ml-2xs',
2454
2565
  S: 'ml-xs',
2455
2566
  M: 'ml-s',
2456
2567
  L: 'ml-m',
@@ -2476,8 +2587,12 @@
2476
2587
  center: 'self-center',
2477
2588
  end: 'self-end',
2478
2589
  };
2479
- const BaseTile = JSX(({ className, defaultPadding, padding, title = '', insetTitle = '', buttons, leftImage, rightImage, imageAlign, backImage, 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: "grow relative flex flex-wrap @xl:flex-nowrap justify-around @xl:justify-between items-stretch gap-3xl", 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: "mx-auto sm:absolute sm:-z-10 sm:-bottom-4 sm:-right-4", children: backImage })) : null, buttons] }), renderImageContainer(rightImage, { className: '-order-1 @xl:order-1', imageAlign })] })] })));
2480
- const renderImageContainer = (image, { className, imageAlign }) => image ? (jsx("div", { className: style('flex-shrink-0', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2590
+ const BaseTile = JSX(({ className, defaultPadding, padding, title = '', insetTitle = '', buttons, leftImage, rightImage, imageAlign, backImage, 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: "grow relative flex flex-wrap @xl:flex-nowrap justify-around @xl:justify-between items-stretch gap-3xl", 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: "mx-auto sm:absolute sm:-z-10 sm:-bottom-4 sm:-right-4", children: backImage })) : null, buttons] }), renderImageContainer(rightImage, { className: '-order-1 @xl:order-1', imageAlign })] })] })));
2591
+ const renderImageContainer = (image, { className, imageAlign }) => {
2592
+ //TODO Спорное решение
2593
+ const fullWidth = image?.props?.image?.size?.width > 400;
2594
+ return image ? (jsx("div", { className: style('flex-shrink-0', fullWidth ? 'w-full @xl:w-auto' : '', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2595
+ };
2481
2596
 
2482
2597
  const sum = (list = []) => list.reduce((a, b) => a + b, 0);
2483
2598
 
@@ -2535,7 +2650,7 @@
2535
2650
  })) }) }) })));
2536
2651
 
2537
2652
  const buttonSizeStyles = {
2538
- default: 'w-24 h-14',
2653
+ default: 'w-14 h-14',
2539
2654
  stretched: 'flex-1 h-14',
2540
2655
  };
2541
2656
 
@@ -2589,27 +2704,24 @@
2589
2704
  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)))) })] })));
2590
2705
 
2591
2706
  const CarouselRecommendationCard = JSX(({ className = '', description, href, icon, items = [], socialMedia = [], target, title, align = 'text-left', ...rest }) => {
2592
- return (jsx(BlockWrapper, { className: style('relative group-data-gray:bg-main-divider/50 space-y-m', className), defaultPadding: "p-6xl", ...rest, children: jsxs(LinkWrapper, { href: href, target: target, children: [jsx(Headline, { title: title, description: description, headlineVersion: "S", isEmbedded: true, align: align }), items.length ? (jsx(List, { className: "flex flex-col gap-xs", items: items, listItemSize: "S" })) : null, renderIcon$1(icon), socialMedia.length ? jsx(SocialMedia, { media: socialMedia }) : null] }) }));
2707
+ return (jsx(BlockWrapper, { className: style('relative group-data-gray:bg-main-divider/50', className), defaultPadding: "p-3xl", ...rest, children: jsxs(LinkWrapper, { href: href, target: target, className: 'space-y-lg', children: [jsx(Headline, { title: title, description: description, headlineVersion: "XS", isEmbedded: true, align: align }), items.length ? (jsx(List, { className: "flex flex-col gap-xs", items: items, listItemSize: "XS" })) : null, renderIcon$1(icon), socialMedia.length ? jsx(SocialMedia, { media: socialMedia }) : null] }) }));
2593
2708
  });
2594
2709
  const renderIcon$1 = (icon) => icon?.src || icon?.icon ? (jsx("div", { children: jsx(Img, { image: icon }) })) : null;
2595
2710
 
2596
- const getPaddingStyle = (isHighlighting = false) => isHighlighting ? 'p-6xl mt-xl' : 'mt-xl p-6xl'; // Хак для мобильной версии т.к. контракт должен быть идентичный
2597
-
2598
2711
  const renderCardInfo = (cell, i) => {
2599
2712
  const { title, description, buttons } = cell;
2600
2713
  return (jsxs("div", { className: "py-lg border-b border-main-divider", children: [title ? (jsx("div", { className: "opacity-80", children: jsx(Text, { size: "text-m", color: "text-secondary-text", children: title }) })) : null, description ? (jsx("div", { className: "mt-2xs", children: jsx(Text, { size: "text-xl", color: "text-primary-text", children: description }) })) : null, buttons?.length ? (jsx("div", { className: "text-primary-main", children: renderButtonsSection(buttons) })) : null] }, String(i)));
2601
2714
  };
2602
2715
 
2603
2716
  const VISIBLE_CELLS_COUNT = 1;
2604
- const CarouselTariffsCard = JSX(({ className = '', title, align = 'text-center', icon, isHighlighting = false, button, cardCells = [], ...rest }) => {
2717
+ const CarouselTariffsCard = JSX(({ className = '', title, align = 'text-center', icon, button, cardCells = [], ...rest }) => {
2605
2718
  const cellsNode = cardCells.map(renderCardInfo);
2606
2719
  const visibleCells = cellsNode.slice(0, VISIBLE_CELLS_COUNT);
2607
2720
  const hiddenCells = cellsNode.slice(VISIBLE_CELLS_COUNT);
2608
- return (jsxs(BlockWrapper, { className: style('relative flex flex-col', className), defaultPadding: getPaddingStyle(isHighlighting), ...rest, children: [isHighlighting ? renderHitIcon() : null, renderIconBlock(icon), title ? (jsx(Heading, { className: style('pt-xs', align), headingType: "h5", title: title })) : null, button ? jsx(Button, { className: "w-full mt-m", ...button }) : null, cardCells.length ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs("div", { children: [visibleCells, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenCells })] })), renderFoldButton: cardCells.length > 1 ? renderFoldButton$1 : null })) : null] }));
2721
+ return (jsxs(BlockWrapper, { className: style('flex flex-col', className), defaultPadding: "p-3xl", ...rest, children: [renderIconBlock(icon), title ? (jsx(Heading, { className: style('pt-xs', align), headingType: "h5", title: title })) : null, button ? jsx(Button, { className: "w-full mt-m", ...button }) : null, cardCells.length ? (jsx(Foldable, { renderFoldableSection: ({ isUnfolded }) => (jsxs("div", { children: [visibleCells, jsx(FoldableSection, { isUnfolded: isUnfolded, children: hiddenCells })] })), renderFoldButton: cardCells.length > 1 ? renderFoldButton$1 : null })) : null] }));
2609
2722
  });
2610
- const renderIconBlock = (icon) => (jsx("div", { className: "basis-full self-center", children: icon?.src || icon?.icon ? jsx(Img, { image: icon }) : null }));
2723
+ const renderIconBlock = (icon) => (jsx("div", { className: "self-center", children: icon?.src || icon?.icon ? jsx(Img, { image: icon }) : null }));
2611
2724
  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" })] }));
2612
- const renderHitIcon = () => (jsxs("div", { className: "absolute -top-6 -right-4 h-14 w-14 bg-white flex flex-col items-center justify-center rounded-md shadow-[0_4px_25px_rgba(0,0,0,0.07)]", children: [jsx(Icon, { iconVersion: "black", name: "HeartIcon", width: "24", height: "24" }), jsx(Paragraph, { size: "text-s", font: "font-normal", align: "text-center", color: "text-primary-text", children: "\u0425\u0418\u0422" })] }));
2613
2725
 
2614
2726
  const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
2615
2727
  const DIVIDER_CLASSES = 'border-main-divider border border-t-0 border-x-0';
@@ -2849,13 +2961,13 @@
2849
2961
 
2850
2962
  const getIconName = (isUnfolded) => isUnfolded ? 'ArrowUpSolidIcon' : 'ArrowDownSolidIcon';
2851
2963
 
2852
- const renderRoundedIcon = (icon, iconBgVersion) => (jsx(RoundedIcon, { ...icon, iconBgVersion: iconBgVersion, className: "shrink-0" }));
2853
-
2854
2964
  const rollupIconVersion = 'black';
2855
2965
 
2856
2966
  const rollupItemStyles = '';
2857
2967
 
2858
- const RollupItem = JSX(({ className = '', label = 'Развернуть', labelIcon, labelIconBgVersion, isExpanded, isFoldButtonOnTop = true, version = 'primary', ...rest }) => {
2968
+ const renderRoundedIcon = (icon, iconBgVersion) => (jsx(RoundedIcon, { ...icon, iconBgVersion: iconBgVersion, className: "shrink-0" }));
2969
+
2970
+ const RollupItem = JSX(({ className = '', isExpanded, isFoldButtonOnTop = true, label = 'Развернуть', labelIcon, labelIconBgVersion, version = 'primary', ...rest }) => {
2859
2971
  return (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({
2860
2972
  ...rest,
2861
2973
  extraProps: { className: 'w-full', padding: 'p-0' },
@@ -3067,9 +3179,17 @@
3067
3179
  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" }));
3068
3180
  };
3069
3181
 
3182
+ const buttonsConditionStyle = (buttons) => {
3183
+ const buttonsLengthMoreThanTwo = buttons.length > 2;
3184
+ return renderButtonsSection(buttons, {
3185
+ className: style(buttonsLengthMoreThanTwo ? 'w-full' : 'flex-nowrap'),
3186
+ isVertical: buttonsLengthMoreThanTwo,
3187
+ });
3188
+ };
3189
+
3070
3190
  const MobileAppTile = JSX(({ className, padding, alignTitle = 'left', buttons = [], description, headingType = 'h4', image, items, qr, title = 'Мобильное приложение', version = 'primary', ...rest }) => {
3071
3191
  const containerStyle = version === 'secondary' ? 'p-m min-w-32' : 'min-w-24';
3072
- 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: renderButtonsSection(buttons, { isVertical: buttons.length > 4 }), 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] })] }) }));
3192
+ 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] })] }) }));
3073
3193
  });
3074
3194
 
3075
3195
  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;
@@ -3404,7 +3524,7 @@
3404
3524
  const SafeDepositRentalTotal = JSX(({ days, tariffs = [] }) => {
3405
3525
  const price = calculatePrice(days, tariffs);
3406
3526
  const imageDescription = 'На рисунке изображена пачка листов\nформата А4';
3407
- 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-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 })] })] }));
3527
+ 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 })] })] }));
3408
3528
  });
3409
3529
  const renderTotal = (label, total) => {
3410
3530
  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 })] }));
@@ -3945,7 +4065,7 @@
3945
4065
 
3946
4066
  const joinList = (sep) => (list) => list.reduce((acc, el, i) => (acc.length ? acc.concat({ ...sep, key: `sep-${i}` }, el) : [el]), []);
3947
4067
 
3948
- const packageVersion = "0.13.3";
4068
+ const packageVersion = "0.13.5";
3949
4069
 
3950
4070
  exports.Blocks = Blocks;
3951
4071
  exports.ContentPage = ContentPage;