@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
@@ -685,7 +685,7 @@
685
685
  };
686
686
  };
687
687
 
688
- const Input = JSX(({ key, className = '', inputClassName = '', id, name, type = 'text', label, placeholder, value = '', valid = true, children, onChange, onFocus, onBlur, pattern, }) => {
688
+ const Input = JSX(({ key, className = '', inputClassName = '', id, name, type = 'text', label, placeholder, value = '', valid = true, children, onChange, onFocus, onBlur, pattern, autoFocus = false, }) => {
689
689
  const handleChange = useCallback((e) => {
690
690
  onChange && onChange(e.target?.value || '');
691
691
  }, [onChange]);
@@ -693,7 +693,7 @@
693
693
  const validStyle = valid
694
694
  ? 'border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text'
695
695
  : 'border-error';
696
- 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] }));
696
+ 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] }));
697
697
  });
698
698
 
699
699
  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 })] })));
@@ -717,7 +717,7 @@
717
717
  return (jsx(Input, { onChange: handleChange, onFocus: (event) => handleChange(event?.target?.value || ''), ...inputProps, children: children }));
718
718
  });
719
719
 
720
- 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 })] })));
720
+ 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 })] })));
721
721
 
722
722
  const pattern = (regexp) => validator((_) => typeof _ === 'string' && regexp.test(_));
723
723
 
@@ -776,6 +776,70 @@
776
776
  return targetRef;
777
777
  }
778
778
 
779
+ const JARO_WINKLER_P = 0.1;
780
+ const JARO_WINKLER_MAX_L = 4;
781
+ const jaroWinklerDistance = (s1) => (s2) => {
782
+ if (s1 === s2) {
783
+ return 1;
784
+ }
785
+ if (!s1 || !s2) {
786
+ return 0;
787
+ }
788
+ const { m, s1Matches, s2Matches } = computeM(s1, s2);
789
+ if (m === 0) {
790
+ return 0;
791
+ }
792
+ const t = computeT(s1, s2, { s1Matches, s2Matches });
793
+ const jaroWeight = (m / s1.length + m / s2.length + (m - t / 2) / m) / 3;
794
+ const winklerWeight = jaroWeight > 0.7 ? computePrefixL(s1, s2) * JARO_WINKLER_P : 0;
795
+ return jaroWeight + winklerWeight * (1 - jaroWeight);
796
+ };
797
+ function computeM(s1, s2) {
798
+ const range = Math.max(0, Math.floor(Math.max(s1.length, s2.length) / 2) - 1);
799
+ const s1Matches = new Array(s1.length);
800
+ const s2Matches = new Array(s2.length);
801
+ let m = 0;
802
+ for (let i = 0; i < s1.length; i++) {
803
+ const low = Math.max(0, i - range);
804
+ const high = Math.min(i + range, s2.length - 1);
805
+ for (let j = low; j <= high; j++) {
806
+ if (s1Matches[i] || s2Matches[j] || s1[i] !== s2[j]) {
807
+ continue;
808
+ }
809
+ m++;
810
+ s1Matches[i] = true;
811
+ s2Matches[j] = true;
812
+ }
813
+ }
814
+ return { m, s1Matches, s2Matches };
815
+ }
816
+ function computeT(s1, s2, { s1Matches, s2Matches }) {
817
+ let t = 0;
818
+ for (let i = 0, k = 0; i < s1.length; i++) {
819
+ if (!s1Matches[i]) {
820
+ continue;
821
+ }
822
+ let j = k;
823
+ for (; j < s2.length; j++) {
824
+ if (s2Matches[j]) {
825
+ k = j + 1;
826
+ break;
827
+ }
828
+ }
829
+ if (s1[i] !== s2[j]) {
830
+ t++;
831
+ }
832
+ }
833
+ return t;
834
+ }
835
+ function computePrefixL(s1, s2) {
836
+ let prefixL = 0;
837
+ while (s1[prefixL] === s2[prefixL] && prefixL < JARO_WINKLER_MAX_L) {
838
+ prefixL++;
839
+ }
840
+ return prefixL;
841
+ }
842
+
779
843
  const svgUseStyleMap = {
780
844
  normal: '',
781
845
  color: 'text-primary-main',
@@ -796,16 +860,28 @@
796
860
  const getSvgSize = (width) => (width ? '' : 'w-full h-full');
797
861
  const Background = JSX(({ className, children }) => className ? jsx("div", { className: className, children: children }) : children);
798
862
 
799
- const Select = JSX(({ className = '', label, options = [], value, valid = true, isBorder = true, placeholder = '', onChange, }) => {
863
+ const Select = JSX(({ className = '', label, options = [], value, valid = true, isBorder = true, placeholder = '', onChange, isSearch = false, }) => {
800
864
  const [isOpen, { setFalse: close, toggle }] = useBool();
801
- const wrapperRef = useOutsideClick(close);
802
- const handleChange = useCallback((option) => {
865
+ const [searchValue, setSearchValue] = useState('');
866
+ const reset = useCallback(() => {
803
867
  close();
868
+ setSearchValue('');
869
+ }, []);
870
+ const wrapperRef = useOutsideClick(reset);
871
+ const handleChange = useCallback((option) => {
872
+ reset();
804
873
  onChange && onChange(option);
805
874
  }, [onChange]);
806
875
  const isSelected = (option) => option.key === value?.key;
807
- 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] })] }));
876
+ 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] })] }));
808
877
  });
878
+ 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;
879
+ const getFilteredOptions = (options, searchValue) => {
880
+ return searchValue
881
+ ? options.filter((_) => jaroWinklerDistance(_.text?.toLowerCase())(searchValue.toLowerCase()) >= 0.6)
882
+ : options;
883
+ };
884
+ 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;
809
885
  const renderOption = (handleChange, isOpen, isSelected) => (option, i) => (jsxs("div", { onClick: () => {
810
886
  handleChange(option);
811
887
  }, 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)));
@@ -867,7 +943,7 @@
867
943
 
868
944
  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) })] })] }));
869
945
 
870
- 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", options: regions.map(({ code = '', name = '' }) => ({ key: code, text: name })), ...withValidator(field('region'), defaultValidator) }));
946
+ 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) }));
871
947
 
872
948
  const initialFormState$3 = {
873
949
  name: '',
@@ -919,7 +995,7 @@
919
995
  const MAX_CREDIT_TERM = 180;
920
996
  const ITEMS_CREDIT_TERM = ['От 1 мес', 'До 15 лет'];
921
997
 
922
- 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') })] })] }));
998
+ 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') })] })] }));
923
999
 
924
1000
  const useNormalizedInput = (props, { normalize, format }) => {
925
1001
  const { value, onFocus, onBlur, onChange } = props;
@@ -982,9 +1058,9 @@
982
1058
  const closestValue = (list) => (_) => list.reduce((prev, curr) => (Math.abs(curr - _) < Math.abs(prev - _) ? curr : prev));
983
1059
  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)))) }));
984
1060
 
985
- 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') })] })] }));
1061
+ 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') })] })] }));
986
1062
 
987
- 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 = '' }) => ({
1063
+ 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 = '' }) => ({
988
1064
  key: branchCode,
989
1065
  text: address,
990
1066
  })), ...withValidator(field('department'), defaultValidator) }) })] }));
@@ -1000,6 +1076,7 @@
1000
1076
  annualRevenue: '',
1001
1077
  };
1002
1078
  const creditValidator = objectValidator({
1079
+ fullName: defaultValidator,
1003
1080
  annualRevenue: defaultValidator,
1004
1081
  inn: innValidator,
1005
1082
  name: nameValidator,
@@ -1026,7 +1103,7 @@
1026
1103
  const [formState, { field, ...formProps }] = useForm(initialFormState$2, handleSubmit);
1027
1104
  const regions = useGetRegions();
1028
1105
  const branches = useBranches(formState.region?.key).filter((branch) => branch?.address);
1029
- 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 })] }));
1106
+ 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 })] }));
1030
1107
  });
1031
1108
 
1032
1109
  const initialFormState$1 = {
@@ -1277,7 +1354,7 @@
1277
1354
  },
1278
1355
  XS: {
1279
1356
  title: { headingType: 'h5', as: 'h2' },
1280
- descriptionSize: 'text-l',
1357
+ descriptionSize: 'text-m',
1281
1358
  descriptionWeight: 'font-light',
1282
1359
  descriptionStyle: 'mt-xs',
1283
1360
  },
@@ -1300,15 +1377,17 @@
1300
1377
  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] }));
1301
1378
  });
1302
1379
 
1303
- const Bonus = JSX(({ className = '', title, description, bonusItems = [], ...rest }) => (jsx(BlockWrapper, { className: className, defaultPadding: "p-default", ...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
1304
- ? bonusItems.map((_, i) => (jsxs("div", { className: "space-y-xs flex-grow w-full sm:w-[49%] border border-gray p-m", children: [_?.title ? (jsx("div", { children: jsx(Text, { size: "text-h4", children: _.title }) })) : null, _?.description ? (jsx(Paragraph, { size: "text-xl", font: "font-light", children: _.description })) : null, jsxs("div", { className: "flex justify-between items-end", children: [jsx("div", { className: "hidden sm:block", children: renderButtonsSection(_?.buttons) }), _.bonusItemContent?.bonusType
1380
+ 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
1381
+ ? bonusItems.map((_, i) => (jsxs("div", { className: "space-y-xs flex flex-col grow w-full sm:w-[49%] border border-gray p-m", children: [jsxs("div", { className: "grow", children: [_?.title ? (jsx("div", { className: "mb-xs last:mb-0", children: jsx(Text, { size: "text-h4", children: _.title }) })) : null, _?.description ? (jsx("div", { className: "mb-text last:mb-0", children: jsx(Paragraph, { size: "text-xl", font: "font-light", children: _.description }) })) : null] }), jsxs("div", { className: "flex justify-center sm:justify-between sm:items-end", children: [jsx("div", { className: "hidden sm:block", children: renderButtonsSection(_?.buttons) }), _.bonusItemContent?.bonusType
1305
1382
  ? renderBonusItemContent(_.bonusItemContent)
1306
1383
  : null] })] }, String(i))))
1307
1384
  : null })] }) })));
1308
1385
  const renderBonusItemContent = (bonusItemContent) => bonusItemContent.bonusType === 'count'
1309
1386
  ? renderBonusCount(bonusItemContent)
1310
1387
  : renderBonusImage(bonusItemContent);
1311
- const renderBonusCount = (_) => (jsxs("div", { className: "w-full pt-default mt-s flex items-end", children: [_.bonusCount ? (jsx("span", { className: "shrink-0 w-1/2 sm:w-auto font-mohave text-title-extra -tracking-[5px] bg-clip-text text-transparent bg-green-to-yellow mt-lg", children: _.bonusCount })) : null, _.bonusName ? (jsx("div", { className: "w-1/2 sm:w-auto bg-clip-text text-transparent bg-green-to-yellow", children: jsx(Text, { size: "text-h2", children: _.bonusName }) })) : null] }));
1388
+ const renderBonusCount = (_) => (jsxs("div", { className: "w-full pt-default mt-s flex justify-center sm:justify-end items-end", children: [_.bonusCount ? (
1389
+ // -mb-10 добавлен для выравнивания bonusCount относительно bonusName, тк шрифт font-mohave неправильно высчитывает line-height
1390
+ 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] }));
1312
1391
  const renderBonusImage = (_) => _.image ? jsx(Img, { className: "min-w-12 p-xs rounded-icon shrink-0", image: _.image }) : null;
1313
1392
 
1314
1393
  /**
@@ -1340,7 +1419,7 @@
1340
1419
  }
1341
1420
  };
1342
1421
 
1343
- 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
1422
+ 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
1344
1423
  ? renderBonusBenefits(bonusBenefits, columnsCount, cardTextAlign)
1345
1424
  : null] })));
1346
1425
 
@@ -1704,7 +1783,7 @@
1704
1783
  depositeName,
1705
1784
  isShowDepositeName,
1706
1785
  isShowUnknownRate,
1707
- }), jsxs("div", { className: "flex flex-col gap-2xl sm:w-96", children: [renderDepositResults(finalSum, income), renderButtonsSection(buttons, { isVertical: true }), renderFootnote(footnote)] })] }));
1786
+ }), jsxs("div", { className: "flex flex-col gap-2xl sm:w-96", children: [renderDepositResults(finalSum, income), renderButtonsSection(buttons, { isVertical: true }), renderFootnote(footnote), renderFootnote(bottomFootnote)] })] }));
1708
1787
  });
1709
1788
  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 })] }));
1710
1789
  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" })] }));
@@ -2168,69 +2247,24 @@
2168
2247
  const DEFAULT_TITLE = 'Укажите сумму перевода';
2169
2248
  const DEFAULT_LABEL = 'Сумма перевода';
2170
2249
  const DEFAULT_PLACEHOLDER = '1500';
2171
- const FORM_URL = 'https://www.rshb.ru/p2p/';
2172
- const AMOUNT_KEY = 'amount';
2250
+ const FORM_URL_MAP = {
2251
+ private: 'https://old.rshb.ru/p2p/',
2252
+ business: 'https://old.rshb.ru/smallbusiness/p2p/',
2253
+ };
2173
2254
  const INITIAL_FORM_STATE = {
2174
- [AMOUNT_KEY]: 1500,
2255
+ amount: 1500,
2256
+ _amount: 1500,
2175
2257
  };
2176
- const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, ...rest }) => {
2177
- const [{ amount }, { field }] = useForm(INITIAL_FORM_STATE);
2258
+ const CardTransfer = JSX(({ className = '', title = DEFAULT_TITLE, label = DEFAULT_LABEL, placeholder = DEFAULT_PLACEHOLDER, button, formType = 'private', ...rest }) => {
2259
+ const [{ amount, _amount }, { field }] = useForm(INITIAL_FORM_STATE);
2178
2260
  const isDisabled = amount <= 0;
2179
2261
  const buttonStyle = isDisabled
2180
2262
  ? getDisabledButtonClasses({ version: button?.version })
2181
2263
  : getRegularButtonClasses({ className: 'text-white', version: button?.version });
2182
2264
  const link = useLink();
2183
- 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] })] }));
2265
+ 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] })] }));
2184
2266
  });
2185
2267
 
2186
- const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
2187
-
2188
- const DEFAULT_ANCESTORS = [];
2189
- const defaultStyle = 'col-span-12';
2190
- function renderBlock$1(block, options, { className, ...extraProps } = {}) {
2191
- const { key, blockDecorator = defaultBlockDecorator, blocksRegistry = {}, ancestors = DEFAULT_ANCESTORS, } = options;
2192
- const { type } = block;
2193
- if (!(type && type in blocksRegistry)) {
2194
- console.warn(`No block with "${type}" is registered`);
2195
- }
2196
- const BlockComponent = type && blocksRegistry[type];
2197
- return blockDecorator({
2198
- blockClassName: style(block.style?.length ? block.style : defaultStyle, className),
2199
- block,
2200
- ancestors,
2201
- // Adjusted by decorator block and blockClassName
2202
- render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
2203
- const { content } = adjustedBlock;
2204
- return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, block: block, options: options, ...content, ...extraProps }, key)) : null;
2205
- },
2206
- }, key);
2207
- }
2208
-
2209
- const DEFAULT_SLOT_NAME = null;
2210
-
2211
- const EMPTY_ANCESTORS = [];
2212
- const renderBlocksList = (blocks, { key, ancestors = EMPTY_ANCESTORS, slotName = DEFAULT_SLOT_NAME, extraProps, renderProps = renderBlock$1, ...options }) => {
2213
- const renderChildBlock = extraProps
2214
- ? (childBlock, childOptions) => renderBlock$1(childBlock, childOptions, extraProps)
2215
- : renderProps;
2216
- return (blocks || []).map((_, i) => renderChildBlock(_, {
2217
- ...options,
2218
- key: `${key ? key : _.type}-${i}`,
2219
- ancestors: options.parent
2220
- ? [...(ancestors || EMPTY_ANCESTORS), [options.parent, slotName]]
2221
- : ancestors,
2222
- }, i));
2223
- };
2224
-
2225
- function renderChildren({ block, options, children, extraProps, renderProps, }) {
2226
- if (children) {
2227
- return children;
2228
- }
2229
- return block && options
2230
- ? renderBlocksList(block.blocks, { ...options, parent: block, extraProps, renderProps })
2231
- : null;
2232
- }
2233
-
2234
2268
  const mapChildren = (mapper) => (children) => {
2235
2269
  if (children === null || children === undefined) {
2236
2270
  return children;
@@ -2408,7 +2442,86 @@
2408
2442
 
2409
2443
  const ITEMS_GAP = 16;
2410
2444
 
2411
- const Carousel = JSX(({ className, itemCount, visibleItemCount = 0, noCardBorder, isAlignCenter, showDots, arrowsPadded = true, isGap = true, ...rest }) => {
2445
+ const defaultBlockDecorator = ({ blockClassName, block, render }) => render({ blockClassName, block });
2446
+
2447
+ const DEFAULT_ANCESTORS = [];
2448
+ const defaultStyle = 'col-span-12';
2449
+ function renderBlock$1(block, options, { className, ...extraProps } = {}) {
2450
+ const { key, blockDecorator = defaultBlockDecorator, blocksRegistry = {}, ancestors = DEFAULT_ANCESTORS, } = options;
2451
+ const { type } = block;
2452
+ if (!(type && type in blocksRegistry)) {
2453
+ console.warn(`No block with "${type}" is registered`);
2454
+ }
2455
+ const BlockComponent = type && blocksRegistry[type];
2456
+ return blockDecorator({
2457
+ blockClassName: style(block.style?.length ? block.style : defaultStyle, className),
2458
+ block,
2459
+ ancestors,
2460
+ // Adjusted by decorator block and blockClassName
2461
+ render: ({ block: adjustedBlock, blockClassName: adjustedBlockClassName }) => {
2462
+ const { content } = adjustedBlock;
2463
+ return BlockComponent ? (jsx(BlockComponent, { className: adjustedBlockClassName, block: block, options: options, ...content, ...extraProps }, key)) : null;
2464
+ },
2465
+ }, key);
2466
+ }
2467
+
2468
+ const DEFAULT_SLOT_NAME = null;
2469
+
2470
+ const EMPTY_ANCESTORS = [];
2471
+ const renderBlocksList = (blocks, { key, ancestors = EMPTY_ANCESTORS, slotName = DEFAULT_SLOT_NAME, extraProps, renderProps = renderBlock$1, ...options }) => {
2472
+ const renderChildBlock = extraProps
2473
+ ? (childBlock, childOptions) => renderBlock$1(childBlock, childOptions, extraProps)
2474
+ : renderProps;
2475
+ return (blocks || []).map((_, i) => renderChildBlock(_, {
2476
+ ...options,
2477
+ key: `${key ? key : _.type}-${i}`,
2478
+ ancestors: options.parent
2479
+ ? [...(ancestors || EMPTY_ANCESTORS), [options.parent, slotName]]
2480
+ : ancestors,
2481
+ }, i));
2482
+ };
2483
+
2484
+ function renderChildren({ block, options, children, extraProps, renderProps, }) {
2485
+ if (children) {
2486
+ return children;
2487
+ }
2488
+ return block && options
2489
+ ? renderBlocksList(block.blocks, { ...options, parent: block, extraProps, renderProps })
2490
+ : null;
2491
+ }
2492
+
2493
+ 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 })] }));
2494
+
2495
+ const cardBaseStyle = 'relative h-full';
2496
+ const CARD_SIZE_MAP = {
2497
+ normal: 'sm:min-w-96',
2498
+ big: 'sm:min-w-[515px]',
2499
+ };
2500
+ const renderCarouselCards = ({ noCardBorder, activeIndex, cardSize = 'normal', ...rest }) => {
2501
+ const { blocks: childBlocks } = rest.block || {};
2502
+ const someCardsHighlighted = childBlocks?.some(isCardHighlighted);
2503
+ return renderChildren({
2504
+ ...rest,
2505
+ renderProps: (block, options, blockIndex) => (jsxs("div", { className: cardWrapperStyle(block, { someCardsHighlighted }), children: [renderBlock$1(block, options, {
2506
+ className: cardStyle(block, {
2507
+ someCardsHighlighted,
2508
+ showBorder: !noCardBorder,
2509
+ cardSize,
2510
+ }),
2511
+ blockIndex,
2512
+ isActive: blockIndex === activeIndex,
2513
+ }), isCardHighlighted(block)
2514
+ ? renderCardHighlight({ className: 'absolute top-0 -right-4 z-40' })
2515
+ : null] })),
2516
+ });
2517
+ };
2518
+ const cardWrapperStyle = (_, { someCardsHighlighted }) => style(cardBaseStyle, someCardsHighlighted && (isCardHighlighted(_) ? 'pt-3xl' : 'pt-3xl sm:pt-16'));
2519
+ const cardStyle = (_, { someCardsHighlighted, showBorder, cardSize = 'normal', }) => style(cardBaseStyle, 'min-w-80', CARD_SIZE_MAP[cardSize], // TODO fix для RecommendationCard
2520
+ someCardsHighlighted && (isCardHighlighted(_) ? 'pt-3xl sm:pt-16' : 'pt-3xl'), showBorder &&
2521
+ 'border border-solid border-gray group-data-secondary:border-white/50 group-data-gray:border-main-divider');
2522
+ const isCardHighlighted = (_) => _?.content && 'isHighlighting' in _.content && _.content.isHighlighting;
2523
+
2524
+ const Carousel = JSX(({ className, itemCount, visibleItemCount = 0, noCardBorder, isAlignCenter, showDots, arrowsPadded = true, isGap = true, cardSize = 'normal', ...rest }) => {
2412
2525
  const { blocks: childBlocks = [] } = rest.block || {};
2413
2526
  const count = itemCount || childBlocks?.length;
2414
2527
  const [activeIndex, { inc: increaseActiveIndex, dec: decreaseActiveIndex }] = useCarouselControls({
@@ -2419,16 +2532,7 @@
2419
2532
  const [dotsActiveIndex] = scroll.visibleIndicesRange;
2420
2533
  // TODO Remove
2421
2534
  const isBankHistoryCarousel = childBlocks && childBlocks[0]?.type === 'CarouselBankHistoryCard';
2422
- 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({
2423
- ...rest,
2424
- renderProps: (block, options, blockIndex) => renderBlock$1(block, options, {
2425
- className: style('h-full min-w-80 sm:min-w-96', noCardBorder
2426
- ? ''
2427
- : 'border border-solid border-gray group-data-secondary:border-white/50 group-data-gray:border-main-divider'),
2428
- blockIndex,
2429
- isActive: activeIndex === blockIndex,
2430
- }),
2431
- }) }), 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] }) }));
2535
+ 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] }) }));
2432
2536
  });
2433
2537
  Carousel.childrenTypes = [
2434
2538
  'CarouselCard',
@@ -2443,6 +2547,12 @@
2443
2547
  'CarouselInvestmentCard',
2444
2548
  'CarouselEventCard',
2445
2549
  ];
2550
+ Carousel.childSchema = () => ({
2551
+ isHighlighting: {
2552
+ title: 'Выделить карточку',
2553
+ type: 'boolean',
2554
+ },
2555
+ });
2446
2556
 
2447
2557
  const CarouselBankHistoryCard = JSX(({ className, title, description, blockIndex = 0, isActive, ...rest }) => (jsx(BlockWrapper, { className: style('relative flex h-[485px]', isActive ? 'w-[440px] z-10' : 'w-[340px]', className), defaultPadding: "p-0", ...rest, children: jsx("div", { className: style('basis-full self-center', getBackColor(blockIndex)), children: isActive ? (jsx(Headline, { headlineVersion: "M", title: title, description: description, padding: "p-3xl", align: "text-left", className: "h-96 text-white shadow-dark-blue" })) : (jsx("div", { className: "h-[300px] flex justify-center items-center font-mohave text-title-large", children: jsx("span", { className: getTextColor(blockIndex), children: title }) })) }) })));
2448
2558
  const getBackColor = (blockIndex) => ['bg-primary-main', 'bg-green-light', 'bg-yellow-light'][blockIndex % 3];
@@ -2456,8 +2566,8 @@
2456
2566
 
2457
2567
  const layerBaseStyle = 'z-10 border border-solid w-full h-full';
2458
2568
  const layerStyle = style(layerBaseStyle, 'absolute hidden sm:block border-transparent');
2459
- 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], {
2460
- className: 'mt-6xl sm:justify-center',
2569
+ 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], {
2570
+ className: 'mt-m sm:mt-6xl sm:justify-center',
2461
2571
  isVertical: true,
2462
2572
  })] })] }) })));
2463
2573
 
@@ -2484,8 +2594,12 @@
2484
2594
  center: 'self-center',
2485
2595
  end: 'self-end',
2486
2596
  };
2487
- 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 })] })] })));
2488
- const renderImageContainer = (image, { className, imageAlign }) => image ? (jsx("div", { className: style('flex-shrink-0', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2597
+ 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 })] })] })));
2598
+ const renderImageContainer = (image, { className, imageAlign }) => {
2599
+ //TODO Спорное решение
2600
+ const fullWidth = image?.props?.image?.size?.width > 400;
2601
+ return image ? (jsx("div", { className: style('flex-shrink-0', fullWidth ? 'w-full @xl:w-auto' : '', imageAlign && imageAlignmentMap[imageAlign], className), children: image })) : null;
2602
+ };
2489
2603
 
2490
2604
  const cardColumnsModeStyleMap = {
2491
2605
  1: 'grid-cols-1',
@@ -2507,7 +2621,7 @@
2507
2621
  const CarouselLinks = JSX(({ className, additionalDescription, description, links, title, maxLinksCount = 10, ...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, maxLinksCount) : null] })));
2508
2622
  const renderLinks = (links, maxLinksCount) => {
2509
2623
  const itemCount = Math.ceil(links.length / maxLinksCount);
2510
- return (jsx(Carousel, { className: "@container-normal sm:w-2/3 w-full p-0 sm:p-2xl", version: "secondary", itemCount: itemCount, arrowsPadded: false, showDots: true, children: new Array(itemCount).fill(null).map((_, groupIndex) => (jsx("div", { className: style('flex flex-wrap self-start sm:w-[672px] w-full sm:mx-5xl'), children: links
2624
+ return (jsx(Carousel, { className: "@container-normal sm:w-2/3 w-full p-0 sm:p-xs", version: "secondary", itemCount: itemCount, arrowsPadded: false, showDots: 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
2511
2625
  .slice(groupIndex * maxLinksCount, (groupIndex + 1) * maxLinksCount)
2512
2626
  .map((link, index) => (jsx(CarouselLinkButton, { className: "sm:m-2xs", ...link }, String(index)))) }, String(groupIndex)))) }));
2513
2627
  };
@@ -2516,15 +2630,18 @@
2516
2630
  L: 'w-1.5 h-1.5 mr-m',
2517
2631
  M: 'w-1.5 h-1.5 mr-s',
2518
2632
  S: 'w-1 h-1 mr-xs',
2633
+ XS: 'w-1 h-1 mr-xs',
2519
2634
  };
2520
2635
  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 })] })));
2521
2636
 
2522
2637
  const TEXT_SIZE_MAP = {
2638
+ XS: 'text-m font-light',
2523
2639
  S: 'text-l font-light',
2524
2640
  M: 'text-h6',
2525
2641
  L: 'text-h5',
2526
2642
  };
2527
2643
  const ITEM_INDENT_MAP = {
2644
+ XS: 'ml-2xs',
2528
2645
  S: 'ml-xs',
2529
2646
  M: 'ml-s',
2530
2647
  L: 'ml-m',
@@ -2682,23 +2799,20 @@
2682
2799
  return (jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden ${containerRef.current || !isUnfolded ? 'max-h-0' : ''} ${className}`, children: children }));
2683
2800
  });
2684
2801
 
2685
- const getPaddingStyle = (isHighlighting = false) => isHighlighting ? 'p-3xl mt-3xl pt-20' : 'p-3xl mt-20';
2686
-
2687
2802
  const renderCardInfo = (cell, i) => {
2688
2803
  const { title, description, buttons } = cell;
2689
2804
  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)));
2690
2805
  };
2691
2806
 
2692
2807
  const VISIBLE_CELLS_COUNT = 1;
2693
- const CarouselTariffsCard = JSX(({ className = '', title, align = 'text-center', icon, isHighlighting = false, button, cardCells = [], ...rest }) => {
2808
+ const CarouselTariffsCard = JSX(({ className = '', title, align = 'text-center', icon, button, cardCells = [], ...rest }) => {
2694
2809
  const cellsNode = cardCells.map(renderCardInfo);
2695
2810
  const visibleCells = cellsNode.slice(0, VISIBLE_CELLS_COUNT);
2696
2811
  const hiddenCells = cellsNode.slice(VISIBLE_CELLS_COUNT);
2697
- return (jsxs(BlockWrapper, { className: style('relative flex flex-col', className), defaultPadding: getPaddingStyle(isHighlighting), ...rest, children: [isHighlighting ? renderHitIcon() : null, renderIconBlock$1(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] }));
2812
+ return (jsxs(BlockWrapper, { className: style('flex flex-col', className), defaultPadding: "p-3xl", ...rest, children: [renderIconBlock$1(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] }));
2698
2813
  });
2699
- const renderIconBlock$1 = (icon) => (jsx("div", { className: "basis-full self-center", children: icon?.src || icon?.icon ? jsx(Img, { image: icon }) : null }));
2814
+ const renderIconBlock$1 = (icon) => (jsx("div", { className: "self-center", children: icon?.src || icon?.icon ? jsx(Img, { image: icon }) : null }));
2700
2815
  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" })] }));
2701
- 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" })] }));
2702
2816
 
2703
2817
  const GRADIENT = 'bg-gradient-to-r from-main-gradient-start to-main-gradient-end';
2704
2818
  const BORDER_CLASSES = 'border-gray border-solid border';
@@ -3169,70 +3283,6 @@
3169
3283
  return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
3170
3284
  }
3171
3285
 
3172
- const JARO_WINKLER_P = 0.1;
3173
- const JARO_WINKLER_MAX_L = 4;
3174
- const jaroWinklerDistance = (s1) => (s2) => {
3175
- if (s1 === s2) {
3176
- return 1;
3177
- }
3178
- if (!s1 || !s2) {
3179
- return 0;
3180
- }
3181
- const { m, s1Matches, s2Matches } = computeM(s1, s2);
3182
- if (m === 0) {
3183
- return 0;
3184
- }
3185
- const t = computeT(s1, s2, { s1Matches, s2Matches });
3186
- const jaroWeight = (m / s1.length + m / s2.length + (m - t / 2) / m) / 3;
3187
- const winklerWeight = jaroWeight > 0.7 ? computePrefixL(s1, s2) * JARO_WINKLER_P : 0;
3188
- return jaroWeight + winklerWeight * (1 - jaroWeight);
3189
- };
3190
- function computeM(s1, s2) {
3191
- const range = Math.max(0, Math.floor(Math.max(s1.length, s2.length) / 2) - 1);
3192
- const s1Matches = new Array(s1.length);
3193
- const s2Matches = new Array(s2.length);
3194
- let m = 0;
3195
- for (let i = 0; i < s1.length; i++) {
3196
- const low = Math.max(0, i - range);
3197
- const high = Math.min(i + range, s2.length - 1);
3198
- for (let j = low; j <= high; j++) {
3199
- if (s1Matches[i] || s2Matches[j] || s1[i] !== s2[j]) {
3200
- continue;
3201
- }
3202
- m++;
3203
- s1Matches[i] = true;
3204
- s2Matches[j] = true;
3205
- }
3206
- }
3207
- return { m, s1Matches, s2Matches };
3208
- }
3209
- function computeT(s1, s2, { s1Matches, s2Matches }) {
3210
- let t = 0;
3211
- for (let i = 0, k = 0; i < s1.length; i++) {
3212
- if (!s1Matches[i]) {
3213
- continue;
3214
- }
3215
- let j = k;
3216
- for (; j < s2.length; j++) {
3217
- if (s2Matches[j]) {
3218
- k = j + 1;
3219
- break;
3220
- }
3221
- }
3222
- if (s1[i] !== s2[j]) {
3223
- t++;
3224
- }
3225
- }
3226
- return t;
3227
- }
3228
- function computePrefixL(s1, s2) {
3229
- let prefixL = 0;
3230
- while (s1[prefixL] === s2[prefixL] && prefixL < JARO_WINKLER_MAX_L) {
3231
- prefixL++;
3232
- }
3233
- return prefixL;
3234
- }
3235
-
3236
3286
  const joinMaps = (aggregate, emptyVal) => (acc, map) => {
3237
3287
  for (const [key, b] of map) {
3238
3288
  acc.set(key, aggregate(acc.get(key) || emptyVal, b));
@@ -3892,9 +3942,11 @@
3892
3942
  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" }));
3893
3943
  };
3894
3944
 
3945
+ const buttonsConditionStyle = (buttons) => renderButtonsSection(buttons, { isVertical: false });
3946
+
3895
3947
  const MobileAppTile = JSX(({ className, padding, alignTitle = 'left', buttons = [], description, headingType = 'h4', image, items, qr, title = 'Мобильное приложение', version = 'primary', ...rest }) => {
3896
3948
  const containerStyle = version === 'secondary' ? 'p-m min-w-32' : 'min-w-24';
3897
- 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] })] }) }));
3949
+ 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] })] }) }));
3898
3950
  });
3899
3951
 
3900
3952
  const tabPaddingStyleMap = {
@@ -4413,14 +4465,14 @@
4413
4465
 
4414
4466
  const getIconName = (isUnfolded) => (isUnfolded ? 'MinusIcon' : 'PlusIcon');
4415
4467
 
4416
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
4417
- const renderRoundedIcon = (_icon, _iconBgVersion) => null;
4418
-
4419
4468
  const rollupIconVersion = 'color';
4420
4469
 
4421
4470
  const rollupItemStyles = 'border-0 border-b border-solid border-main-divider last:border-b-0';
4422
4471
 
4423
- const RollupItem = JSX(({ className = '', label = 'Развернуть', labelIcon, labelIconBgVersion, isExpanded, isFoldButtonOnTop = true, version = 'primary', ...rest }) => {
4472
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
4473
+ const renderRoundedIcon = (_icon, _iconBgVersion) => null;
4474
+
4475
+ const RollupItem = JSX(({ className = '', isExpanded, isFoldButtonOnTop = true, label = 'Развернуть', labelIcon, labelIconBgVersion, version = 'primary', ...rest }) => {
4424
4476
  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({
4425
4477
  ...rest,
4426
4478
  extraProps: { className: 'w-full', padding: 'p-0' },
@@ -4490,7 +4542,7 @@
4490
4542
  const SafeDepositRentalTotal = JSX(({ days, tariffs = [] }) => {
4491
4543
  const price = calculatePrice(days, tariffs);
4492
4544
  const imageDescription = 'На рисунке изображена пачка листов\nформата А4';
4493
- 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 })] })] }));
4545
+ 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 })] })] }));
4494
4546
  });
4495
4547
  const renderTotal = (label, total) => {
4496
4548
  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 })] }));
@@ -5163,7 +5215,7 @@
5163
5215
  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" }) }));
5164
5216
  }
5165
5217
 
5166
- const packageVersion = "0.13.3";
5218
+ const packageVersion = "0.13.5";
5167
5219
 
5168
5220
  exports.Blocks = Blocks;
5169
5221
  exports.ContentPage = ContentPage;