@redneckz/wildless-cms-uni-blocks 0.3.91 → 0.3.93

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 (382) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +181 -39
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/cosmos-static/icons/PackA4.svg +1 -0
  5. package/dist/components/BlockContent.d.ts +4 -3
  6. package/dist/components/Blocks.d.ts +1 -0
  7. package/dist/components/Blocks.js +2 -0
  8. package/dist/components/Blocks.js.map +1 -1
  9. package/dist/components/Catalog/CatalogCard.js +17 -1
  10. package/dist/components/Catalog/CatalogCard.js.map +1 -1
  11. package/dist/components/Catalog/CatalogContent.d.ts +8 -2
  12. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +5 -2
  13. package/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  14. package/dist/components/ExchangeRateTile/renderButton.d.ts +2 -1
  15. package/dist/components/ExchangeRateTile/renderButton.js.map +1 -1
  16. package/dist/components/Footer/Contacts.js +3 -3
  17. package/dist/components/Footer/Contacts.js.map +1 -1
  18. package/dist/components/Footer/Footer.js +1 -1
  19. package/dist/components/Footer/Footer.js.map +1 -1
  20. package/dist/components/Footer/Footer.mobile.js +1 -1
  21. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  22. package/dist/components/Footer/HorizontalNavigation.js +1 -1
  23. package/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  24. package/dist/components/Footer/HorizontalNavigation.mobile.js +1 -1
  25. package/dist/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  26. package/dist/components/Footer/HorizontalNavigationLink.js +1 -1
  27. package/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  28. package/dist/components/Footer/MediaButton.js +1 -1
  29. package/dist/components/Footer/MediaButton.js.map +1 -1
  30. package/dist/components/Footer/Sitemap.js +3 -3
  31. package/dist/components/Footer/Sitemap.js.map +1 -1
  32. package/dist/components/Footer/SocialMedia.js +1 -1
  33. package/dist/components/Footer/SocialMedia.js.map +1 -1
  34. package/dist/components/Footer/TextInformation.js +1 -1
  35. package/dist/components/Footer/TextInformation.js.map +1 -1
  36. package/dist/components/Footer/TextInformation.mobile.js +1 -1
  37. package/dist/components/Footer/TextInformation.mobile.js.map +1 -1
  38. package/dist/components/Footer/TextInformationLink.js +1 -1
  39. package/dist/components/Footer/TextInformationLink.js.map +1 -1
  40. package/dist/components/Header/Header.js +3 -1
  41. package/dist/components/Header/Header.js.map +1 -1
  42. package/dist/components/Header/HeaderSecondaryMenu.js +1 -1
  43. package/dist/components/Header/HeaderSecondaryMenu.js.map +1 -1
  44. package/dist/components/Header/HeaderSubMenu.js +1 -1
  45. package/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  46. package/dist/components/ProductBlock/ProductBlock.js +2 -3
  47. package/dist/components/ProductBlock/ProductBlock.js.map +1 -1
  48. package/dist/components/ProductBlock/renderBackwardButton.js +1 -1
  49. package/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  50. package/dist/components/ProductTile/ProductTile.js +2 -2
  51. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  52. package/dist/components/SafeDepositRental/SafeDepositRental.d.ts +5 -0
  53. package/dist/components/SafeDepositRental/SafeDepositRental.js +15 -0
  54. package/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -0
  55. package/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +7 -0
  56. package/dist/components/SafeDepositRental/SafeDepositRentalContent.js +2 -0
  57. package/dist/components/SafeDepositRental/SafeDepositRentalContent.js.map +1 -0
  58. package/dist/components/SafeDepositRental/SafeDepositRentalForm.d.ts +12 -0
  59. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js +72 -0
  60. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -0
  61. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +8 -0
  62. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +28 -0
  63. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -0
  64. package/dist/components/StepsBlock/StepsBlock.js +21 -8
  65. package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  66. package/dist/components/StepsBlock/StepsBlock.mobile.js +3 -3
  67. package/dist/components/StepsBlock/StepsBlock.mobile.js.map +1 -1
  68. package/dist/components/StepsBlock/StepsBlockContent.d.ts +5 -3
  69. package/dist/components/StepsBlock/StepsBlockStyleMaps.d.ts +1 -1
  70. package/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -4
  71. package/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  72. package/dist/hooks/useSafeDepositRental.d.ts +2 -0
  73. package/dist/hooks/useSafeDepositRental.js +19 -0
  74. package/dist/hooks/useSafeDepositRental.js.map +1 -0
  75. package/dist/icons/IconName.d.ts +4 -2
  76. package/dist/icons/IconName.js +2 -0
  77. package/dist/icons/IconName.js.map +1 -1
  78. package/dist/ui-kit/Radio/Radio.d.ts +2 -0
  79. package/dist/ui-kit/Radio/Radio.js +6 -0
  80. package/dist/ui-kit/Radio/Radio.js.map +1 -0
  81. package/dist/ui-kit/Radio/RadioProps.d.ts +9 -0
  82. package/dist/ui-kit/Radio/RadioProps.js +2 -0
  83. package/dist/ui-kit/Radio/RadioProps.js.map +1 -0
  84. package/dist/ui-kit/SearchBar/SearchBarInner.js +1 -1
  85. package/dist/ui-kit/Select/Select.js +4 -1
  86. package/dist/ui-kit/Select/Select.js.map +1 -1
  87. package/lib/common.css +1 -1
  88. package/lib/components/BlockContent.d.ts +4 -3
  89. package/lib/components/Blocks.d.ts +1 -0
  90. package/lib/components/Blocks.js +2 -0
  91. package/lib/components/Blocks.js.map +1 -1
  92. package/lib/components/Catalog/CatalogCard.js +17 -1
  93. package/lib/components/Catalog/CatalogCard.js.map +1 -1
  94. package/lib/components/Catalog/CatalogContent.d.ts +8 -2
  95. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +6 -3
  96. package/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  97. package/lib/components/ExchangeRateTile/renderButton.d.ts +2 -1
  98. package/lib/components/ExchangeRateTile/renderButton.js.map +1 -1
  99. package/lib/components/Footer/Contacts.js +3 -3
  100. package/lib/components/Footer/Contacts.js.map +1 -1
  101. package/lib/components/Footer/Footer.js +1 -1
  102. package/lib/components/Footer/Footer.js.map +1 -1
  103. package/lib/components/Footer/Footer.mobile.js +1 -1
  104. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  105. package/lib/components/Footer/HorizontalNavigation.js +1 -1
  106. package/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  107. package/lib/components/Footer/HorizontalNavigation.mobile.js +1 -1
  108. package/lib/components/Footer/HorizontalNavigation.mobile.js.map +1 -1
  109. package/lib/components/Footer/HorizontalNavigationLink.js +1 -1
  110. package/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  111. package/lib/components/Footer/MediaButton.js +1 -1
  112. package/lib/components/Footer/MediaButton.js.map +1 -1
  113. package/lib/components/Footer/Sitemap.js +3 -3
  114. package/lib/components/Footer/Sitemap.js.map +1 -1
  115. package/lib/components/Footer/SocialMedia.js +1 -1
  116. package/lib/components/Footer/SocialMedia.js.map +1 -1
  117. package/lib/components/Footer/TextInformation.js +1 -1
  118. package/lib/components/Footer/TextInformation.js.map +1 -1
  119. package/lib/components/Footer/TextInformation.mobile.js +1 -1
  120. package/lib/components/Footer/TextInformation.mobile.js.map +1 -1
  121. package/lib/components/Footer/TextInformationLink.js +1 -1
  122. package/lib/components/Footer/TextInformationLink.js.map +1 -1
  123. package/lib/components/Header/Header.js +3 -1
  124. package/lib/components/Header/Header.js.map +1 -1
  125. package/lib/components/Header/HeaderSecondaryMenu.js +1 -1
  126. package/lib/components/Header/HeaderSecondaryMenu.js.map +1 -1
  127. package/lib/components/Header/HeaderSubMenu.js +1 -1
  128. package/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  129. package/lib/components/ProductBlock/ProductBlock.js +2 -3
  130. package/lib/components/ProductBlock/ProductBlock.js.map +1 -1
  131. package/lib/components/ProductBlock/renderBackwardButton.js +1 -1
  132. package/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  133. package/lib/components/ProductTile/ProductTile.js +2 -2
  134. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  135. package/lib/components/SafeDepositRental/SafeDepositRental.d.ts +5 -0
  136. package/lib/components/SafeDepositRental/SafeDepositRental.fixture.d.ts +5 -0
  137. package/lib/components/SafeDepositRental/SafeDepositRental.js +13 -0
  138. package/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -0
  139. package/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +7 -0
  140. package/lib/components/SafeDepositRental/SafeDepositRentalContent.js +2 -0
  141. package/lib/components/SafeDepositRental/SafeDepositRentalContent.js.map +1 -0
  142. package/lib/components/SafeDepositRental/SafeDepositRentalForm.d.ts +12 -0
  143. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js +68 -0
  144. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -0
  145. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +8 -0
  146. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +25 -0
  147. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -0
  148. package/lib/components/StepsBlock/StepsBlock.js +22 -9
  149. package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  150. package/lib/components/StepsBlock/StepsBlock.mobile.js +4 -4
  151. package/lib/components/StepsBlock/StepsBlock.mobile.js.map +1 -1
  152. package/lib/components/StepsBlock/StepsBlockContent.d.ts +5 -3
  153. package/lib/components/StepsBlock/StepsBlockStyleMaps.d.ts +1 -1
  154. package/lib/components/StepsBlock/StepsBlockStyleMaps.js +1 -2
  155. package/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  156. package/lib/hooks/useSafeDepositRental.d.ts +2 -0
  157. package/lib/hooks/useSafeDepositRental.js +16 -0
  158. package/lib/hooks/useSafeDepositRental.js.map +1 -0
  159. package/lib/icons/IconName.d.ts +4 -2
  160. package/lib/icons/IconName.js +2 -0
  161. package/lib/icons/IconName.js.map +1 -1
  162. package/lib/ui-kit/Radio/Radio.d.ts +2 -0
  163. package/lib/ui-kit/Radio/Radio.js +4 -0
  164. package/lib/ui-kit/Radio/Radio.js.map +1 -0
  165. package/lib/ui-kit/Radio/RadioProps.d.ts +9 -0
  166. package/lib/ui-kit/Radio/RadioProps.js +2 -0
  167. package/lib/ui-kit/Radio/RadioProps.js.map +1 -0
  168. package/lib/ui-kit/SearchBar/SearchBarInner.js +1 -1
  169. package/lib/ui-kit/Select/Select.js +4 -1
  170. package/lib/ui-kit/Select/Select.js.map +1 -1
  171. package/mobile/bundle/bundle.umd.js +28 -26
  172. package/mobile/bundle/bundle.umd.min.js +1 -1
  173. package/mobile/dist/components/BlockContent.d.ts +4 -3
  174. package/mobile/dist/components/Catalog/CatalogCard.js +17 -1
  175. package/mobile/dist/components/Catalog/CatalogCard.js.map +1 -1
  176. package/mobile/dist/components/Catalog/CatalogContent.d.ts +8 -2
  177. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +5 -2
  178. package/mobile/dist/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  179. package/mobile/dist/components/ExchangeRateTile/renderButton.d.ts +2 -1
  180. package/mobile/dist/components/ExchangeRateTile/renderButton.js.map +1 -1
  181. package/mobile/dist/components/Footer/Contacts.js +3 -3
  182. package/mobile/dist/components/Footer/Contacts.js.map +1 -1
  183. package/mobile/dist/components/Footer/Footer.js +1 -1
  184. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  185. package/mobile/dist/components/Footer/HorizontalNavigation.js +1 -1
  186. package/mobile/dist/components/Footer/HorizontalNavigation.js.map +1 -1
  187. package/mobile/dist/components/Footer/HorizontalNavigationLink.js +1 -1
  188. package/mobile/dist/components/Footer/HorizontalNavigationLink.js.map +1 -1
  189. package/mobile/dist/components/Footer/MediaButton.js +1 -1
  190. package/mobile/dist/components/Footer/MediaButton.js.map +1 -1
  191. package/mobile/dist/components/Footer/Sitemap.js +3 -3
  192. package/mobile/dist/components/Footer/Sitemap.js.map +1 -1
  193. package/mobile/dist/components/Footer/TextInformation.js +1 -1
  194. package/mobile/dist/components/Footer/TextInformation.js.map +1 -1
  195. package/mobile/dist/components/Footer/TextInformationLink.js +1 -1
  196. package/mobile/dist/components/Footer/TextInformationLink.js.map +1 -1
  197. package/mobile/dist/components/Header/HeaderSecondaryMenu.js +1 -1
  198. package/mobile/dist/components/Header/HeaderSecondaryMenu.js.map +1 -1
  199. package/mobile/dist/components/Header/HeaderSubMenu.js +1 -1
  200. package/mobile/dist/components/ProductBlock/renderBackwardButton.js +1 -1
  201. package/mobile/dist/components/ProductBlock/renderBackwardButton.js.map +1 -1
  202. package/mobile/dist/components/ProductTile/ProductTile.js +2 -2
  203. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  204. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.d.ts +5 -0
  205. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js +15 -0
  206. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -0
  207. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +7 -0
  208. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalContent.js +2 -0
  209. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalContent.js.map +1 -0
  210. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.d.ts +12 -0
  211. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js +72 -0
  212. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -0
  213. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +8 -0
  214. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +28 -0
  215. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -0
  216. package/mobile/dist/components/StepsBlock/StepsBlock.js +3 -3
  217. package/mobile/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  218. package/mobile/dist/components/StepsBlock/StepsBlockContent.d.ts +5 -3
  219. package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.d.ts +1 -1
  220. package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -4
  221. package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  222. package/mobile/dist/hooks/useSafeDepositRental.d.ts +2 -0
  223. package/mobile/dist/hooks/useSafeDepositRental.js +19 -0
  224. package/mobile/dist/hooks/useSafeDepositRental.js.map +1 -0
  225. package/mobile/dist/icons/IconName.d.ts +4 -2
  226. package/mobile/dist/icons/IconName.js +2 -0
  227. package/mobile/dist/icons/IconName.js.map +1 -1
  228. package/mobile/dist/ui-kit/Radio/Radio.d.ts +2 -0
  229. package/mobile/dist/ui-kit/Radio/Radio.js +6 -0
  230. package/mobile/dist/ui-kit/Radio/Radio.js.map +1 -0
  231. package/mobile/dist/ui-kit/Radio/RadioProps.d.ts +9 -0
  232. package/mobile/dist/ui-kit/Radio/RadioProps.js +2 -0
  233. package/mobile/dist/ui-kit/Radio/RadioProps.js.map +1 -0
  234. package/mobile/dist/ui-kit/SearchBar/SearchBarInner.js +1 -1
  235. package/mobile/dist/ui-kit/Select/Select.js +4 -1
  236. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  237. package/mobile/lib/components/BlockContent.d.ts +4 -3
  238. package/mobile/lib/components/Catalog/CatalogCard.js +17 -1
  239. package/mobile/lib/components/Catalog/CatalogCard.js.map +1 -1
  240. package/mobile/lib/components/Catalog/CatalogContent.d.ts +8 -2
  241. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js +6 -3
  242. package/mobile/lib/components/ExchangeRateTile/ExchangeCurrencyCalculator.js.map +1 -1
  243. package/mobile/lib/components/ExchangeRateTile/renderButton.d.ts +2 -1
  244. package/mobile/lib/components/ExchangeRateTile/renderButton.js.map +1 -1
  245. package/mobile/lib/components/Footer/Contacts.js +3 -3
  246. package/mobile/lib/components/Footer/Contacts.js.map +1 -1
  247. package/mobile/lib/components/Footer/Footer.js +1 -1
  248. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  249. package/mobile/lib/components/Footer/HorizontalNavigation.js +1 -1
  250. package/mobile/lib/components/Footer/HorizontalNavigation.js.map +1 -1
  251. package/mobile/lib/components/Footer/HorizontalNavigationLink.js +1 -1
  252. package/mobile/lib/components/Footer/HorizontalNavigationLink.js.map +1 -1
  253. package/mobile/lib/components/Footer/MediaButton.js +1 -1
  254. package/mobile/lib/components/Footer/MediaButton.js.map +1 -1
  255. package/mobile/lib/components/Footer/Sitemap.js +3 -3
  256. package/mobile/lib/components/Footer/Sitemap.js.map +1 -1
  257. package/mobile/lib/components/Footer/TextInformation.js +1 -1
  258. package/mobile/lib/components/Footer/TextInformation.js.map +1 -1
  259. package/mobile/lib/components/Footer/TextInformationLink.js +1 -1
  260. package/mobile/lib/components/Footer/TextInformationLink.js.map +1 -1
  261. package/mobile/lib/components/Header/HeaderSecondaryMenu.js +1 -1
  262. package/mobile/lib/components/Header/HeaderSecondaryMenu.js.map +1 -1
  263. package/mobile/lib/components/Header/HeaderSubMenu.js +1 -1
  264. package/mobile/lib/components/ProductBlock/renderBackwardButton.js +1 -1
  265. package/mobile/lib/components/ProductBlock/renderBackwardButton.js.map +1 -1
  266. package/mobile/lib/components/ProductTile/ProductTile.js +2 -2
  267. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  268. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.d.ts +5 -0
  269. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js +13 -0
  270. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -0
  271. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +7 -0
  272. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalContent.js +2 -0
  273. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalContent.js.map +1 -0
  274. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.d.ts +12 -0
  275. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js +68 -0
  276. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -0
  277. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +8 -0
  278. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +25 -0
  279. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -0
  280. package/mobile/lib/components/StepsBlock/StepsBlock.js +4 -4
  281. package/mobile/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  282. package/mobile/lib/components/StepsBlock/StepsBlockContent.d.ts +5 -3
  283. package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.d.ts +1 -1
  284. package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js +1 -2
  285. package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  286. package/mobile/lib/hooks/useSafeDepositRental.d.ts +2 -0
  287. package/mobile/lib/hooks/useSafeDepositRental.js +16 -0
  288. package/mobile/lib/hooks/useSafeDepositRental.js.map +1 -0
  289. package/mobile/lib/icons/IconName.d.ts +4 -2
  290. package/mobile/lib/icons/IconName.js +2 -0
  291. package/mobile/lib/icons/IconName.js.map +1 -1
  292. package/mobile/lib/ui-kit/Radio/Radio.d.ts +2 -0
  293. package/mobile/lib/ui-kit/Radio/Radio.js +4 -0
  294. package/mobile/lib/ui-kit/Radio/Radio.js.map +1 -0
  295. package/mobile/lib/ui-kit/Radio/RadioProps.d.ts +9 -0
  296. package/mobile/lib/ui-kit/Radio/RadioProps.js +2 -0
  297. package/mobile/lib/ui-kit/Radio/RadioProps.js.map +1 -0
  298. package/mobile/lib/ui-kit/SearchBar/SearchBarInner.js +1 -1
  299. package/mobile/lib/ui-kit/Select/Select.js +4 -1
  300. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  301. package/mobile/src/components/BlockContent.ts +5 -3
  302. package/mobile/src/components/Catalog/Catalog.example.json +3 -3
  303. package/mobile/src/components/Catalog/CatalogCard.tsx +28 -1
  304. package/mobile/src/components/Catalog/CatalogContent.ts +8 -2
  305. package/mobile/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +14 -3
  306. package/mobile/src/components/ExchangeRateTile/renderButton.tsx +2 -1
  307. package/mobile/src/components/Footer/Contacts.tsx +3 -6
  308. package/mobile/src/components/Footer/Footer.tsx +1 -1
  309. package/mobile/src/components/Footer/HorizontalNavigation.tsx +1 -1
  310. package/mobile/src/components/Footer/HorizontalNavigationLink.tsx +1 -1
  311. package/mobile/src/components/Footer/MediaButton.tsx +1 -1
  312. package/mobile/src/components/Footer/Sitemap.tsx +4 -4
  313. package/mobile/src/components/Footer/TextInformation.tsx +1 -1
  314. package/mobile/src/components/Footer/TextInformationLink.tsx +1 -1
  315. package/mobile/src/components/Header/HeaderSecondaryMenu.tsx +7 -5
  316. package/mobile/src/components/Header/HeaderSubMenu.tsx +1 -1
  317. package/mobile/src/components/ProductBlock/renderBackwardButton.tsx +1 -2
  318. package/mobile/src/components/ProductTile/ProductTile.tsx +2 -2
  319. package/mobile/src/components/SafeDepositRental/SafeDepositRental.example.json +0 -0
  320. package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +33 -0
  321. package/mobile/src/components/SafeDepositRental/SafeDepositRentalContent.ts +7 -0
  322. package/mobile/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +164 -0
  323. package/mobile/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +57 -0
  324. package/mobile/src/components/StepsBlock/StepsBlock.example.json +15 -0
  325. package/mobile/src/components/StepsBlock/StepsBlock.tsx +4 -4
  326. package/mobile/src/components/StepsBlock/StepsBlockContent.ts +5 -3
  327. package/mobile/src/components/StepsBlock/StepsBlockStyleMaps.ts +1 -3
  328. package/mobile/src/components/__snapshots__/Blocks.spec.tsx.snap +98 -14
  329. package/mobile/src/hooks/useSafeDepositRental.ts +21 -0
  330. package/mobile/src/icons/IconName.ts +4 -4
  331. package/mobile/src/icons/PackA4.svg +14 -0
  332. package/mobile/src/ui-kit/Radio/Radio.tsx +18 -0
  333. package/mobile/src/ui-kit/Radio/RadioProps.ts +8 -0
  334. package/mobile/src/ui-kit/SearchBar/SearchBarInner.tsx +1 -1
  335. package/mobile/src/ui-kit/Select/Select.tsx +6 -1
  336. package/package.json +1 -1
  337. package/src/components/BlockContent.ts +5 -3
  338. package/src/components/Blocks.ts +2 -0
  339. package/src/components/Catalog/Catalog.example.json +3 -3
  340. package/src/components/Catalog/CatalogCard.tsx +28 -1
  341. package/src/components/Catalog/CatalogContent.ts +8 -2
  342. package/src/components/ExchangeRateTile/ExchangeCurrencyCalculator.tsx +14 -3
  343. package/src/components/ExchangeRateTile/renderButton.tsx +2 -1
  344. package/src/components/Footer/Contacts.tsx +3 -6
  345. package/src/components/Footer/Footer.mobile.tsx +1 -1
  346. package/src/components/Footer/Footer.tsx +1 -1
  347. package/src/components/Footer/HorizontalNavigation.mobile.tsx +1 -1
  348. package/src/components/Footer/HorizontalNavigation.tsx +1 -1
  349. package/src/components/Footer/HorizontalNavigationLink.tsx +1 -1
  350. package/src/components/Footer/MediaButton.tsx +1 -1
  351. package/src/components/Footer/Sitemap.tsx +4 -4
  352. package/src/components/Footer/SocialMedia.tsx +1 -1
  353. package/src/components/Footer/TextInformation.mobile.tsx +1 -1
  354. package/src/components/Footer/TextInformation.tsx +1 -1
  355. package/src/components/Footer/TextInformationLink.tsx +1 -1
  356. package/src/components/Header/Header.tsx +3 -2
  357. package/src/components/Header/HeaderSecondaryMenu.tsx +7 -5
  358. package/src/components/Header/HeaderSubMenu.tsx +1 -1
  359. package/src/components/LinkDocs/LinkDocs.tsx +1 -1
  360. package/src/components/ProductBlock/ProductBlock.tsx +2 -10
  361. package/src/components/ProductBlock/renderBackwardButton.tsx +1 -2
  362. package/src/components/ProductTile/ProductTile.tsx +2 -2
  363. package/src/components/SafeDepositRental/SafeDepositRental.example.json +0 -0
  364. package/src/components/SafeDepositRental/SafeDepositRental.fixture.tsx +9 -0
  365. package/src/components/SafeDepositRental/SafeDepositRental.tsx +33 -0
  366. package/src/components/SafeDepositRental/SafeDepositRentalContent.ts +7 -0
  367. package/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +164 -0
  368. package/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +57 -0
  369. package/src/components/StepsBlock/StepsBlock.example.json +15 -0
  370. package/src/components/StepsBlock/StepsBlock.fixture.tsx +4 -3
  371. package/src/components/StepsBlock/StepsBlock.mobile.tsx +4 -4
  372. package/src/components/StepsBlock/StepsBlock.tsx +73 -38
  373. package/src/components/StepsBlock/StepsBlockContent.ts +5 -3
  374. package/src/components/StepsBlock/StepsBlockStyleMaps.ts +1 -3
  375. package/src/components/__snapshots__/Blocks.spec.tsx.snap +98 -14
  376. package/src/hooks/useSafeDepositRental.ts +21 -0
  377. package/src/icons/IconName.ts +5 -3
  378. package/src/icons/PackA4.svg +14 -0
  379. package/src/ui-kit/Radio/Radio.tsx +18 -0
  380. package/src/ui-kit/Radio/RadioProps.ts +8 -0
  381. package/src/ui-kit/SearchBar/SearchBarInner.tsx +1 -1
  382. package/src/ui-kit/Select/Select.tsx +6 -1
@@ -40,7 +40,7 @@ const renderContact = (item: ContactInfo, index: number) => {
40
40
  return (
41
41
  <div className="mb-4" key={String(index)}>
42
42
  <div>{renderText(type, text)}</div>
43
- <div className="mt-1 font-sans text-s-light text-secondary-text">{description}</div>
43
+ <div className="mt-1 text-s-light text-secondary-text">{description}</div>
44
44
  </div>
45
45
  );
46
46
  };
@@ -50,7 +50,7 @@ const renderText = (type: ContactInfo['type'], text = '') => {
50
50
  case 'tel':
51
51
  return (
52
52
  <a
53
- className="font-sans text-xl-light text-primary-text no-underline"
53
+ className="text-h6 text-primary-text hover:text-primary-main no-underline"
54
54
  href={`tel:${formatTel(text)}`}
55
55
  >
56
56
  {text}
@@ -58,10 +58,7 @@ const renderText = (type: ContactInfo['type'], text = '') => {
58
58
  );
59
59
  case 'email':
60
60
  return (
61
- <a
62
- className="font-sans text-xl-light text-primary-text no-underline"
63
- href={`mailto:${text}`}
64
- >
61
+ <a className="text-xl-light text-primary-text no-underline" href={`mailto:${text}`}>
65
62
  {text}
66
63
  </a>
67
64
  );
@@ -30,7 +30,7 @@ export const Footer = JSX<FooterProps>(
30
30
  const dispositions = sitemap?.dispositions;
31
31
 
32
32
  return (
33
- <footer className={`px-4 py-[26px] bg-white ${className}`}>
33
+ <footer className={`font-sans px-4 py-[26px] bg-white ${className}`}>
34
34
  <Contacts className="overflow-hidden" items={contacts} context={context} hasButton />
35
35
  <Accordion
36
36
  context={context}
@@ -15,7 +15,7 @@ export const HorizontalNavigation = JSX<HorizontalNavigationProps>(
15
15
 
16
16
  return (
17
17
  <div className={className}>
18
- <span className="text-primary-text font-sans font-medium text-sm">{title}</span>
18
+ <span className="text-primary-text font-medium text-sm">{title}</span>
19
19
  {links?.length ? (
20
20
  <div className="flex flex-col gap-2 pt-3">
21
21
  {links.map((_, i) => (
@@ -10,7 +10,7 @@ interface HorizontalNavigationLinkProps extends LinkProps {
10
10
  export const HorizontalNavigationLink = JSX<Partial<HorizontalNavigationLinkProps>>(
11
11
  ({ className = '', index, text, href, target, onClick }) => (
12
12
  <a
13
- className={`font-sans text-secondary-text hover:text-primary-main inline-block no-underline ${className}`}
13
+ className={`text-secondary-text hover:text-primary-main inline-block no-underline ${className}`}
14
14
  href={href}
15
15
  target={target}
16
16
  onClick={onClick}
@@ -51,7 +51,7 @@ export const MediaButton = JSX<MediaButtonProps>(({ href, version = 'primary' })
51
51
  const classes =
52
52
  version === 'secondary'
53
53
  ? 'bg-secondary-light hover:bg-secondary-hover'
54
- : 'border-main-divider border-solid border-[1px] hover:bg-primary-main';
54
+ : 'border-solid border-[1px] border-main-divider hover:border-transparent hover:bg-primary-main';
55
55
 
56
56
  const isPrimary = version === 'primary';
57
57
 
@@ -19,7 +19,7 @@ export const Sitemap = JSX<SitemapProps>(({ className = '', items, context }) =>
19
19
  };
20
20
 
21
21
  return (
22
- <div className={`flex items-start justify-between gap-11 xl:gap-5 ${className}`}>
22
+ <div className={`flex items-start justify-between gap-[54px] xl:gap-5 ${className}`}>
23
23
  {mergedItems?.map((_, i) => renderColumn(_, i, linkParams))}
24
24
  </div>
25
25
  );
@@ -29,9 +29,9 @@ const renderColumn = (c: TopMenuItem, index: number, { router, handlerDecorator
29
29
  const { text, href, items, target } = c;
30
30
 
31
31
  return (
32
- <div key={String(index)} className="flex flex-col w-1/5 last:w-1/4 gap-[14px]">
32
+ <div key={String(index)} className="flex flex-col w-1/5 last:w-1/4 gap-3.5">
33
33
  <a
34
- className="block font-sans leading-5 text-l text-primary-text no-underline"
34
+ className="block leading-5 text-l text-primary-text hover:text-primary-main no-underline"
35
35
  href={href}
36
36
  target={target || '_self'}
37
37
  >
@@ -50,7 +50,7 @@ interface ColumnItemProps extends LinkProps {
50
50
 
51
51
  const ColumnItem = JSX<ColumnItemProps>(({ text, href, target, index }) => (
52
52
  <a
53
- className="block font-sans text-l-light text-secondary-text hover:text-primary-main no-underline"
53
+ className="block text-l-light text-secondary-text hover:text-primary-main no-underline"
54
54
  href={href}
55
55
  target={target || '_self'}
56
56
  >
@@ -10,7 +10,7 @@ export const TextInformation = JSX<FooterLink>(({ className, links, context }) =
10
10
  return (
11
11
  <div className={`${className || ''}`}>
12
12
  <div className="py-6">
13
- <span className="font-sans font-normal text-xs text-secondary-text">
13
+ <span className="font-normal text-xs text-secondary-text">
14
14
  {`\u00a9\u00A02000-${new Date().getFullYear()}\u00A0АО \u00ABРоссельхозбанк\u00BB Генеральная лицензия Банка России \u2116\u00A03349 от\u00A012.08.2015\u00A0г.`}
15
15
  </span>
16
16
  </div>
@@ -10,7 +10,7 @@ interface TextInformationLinkProps extends LinkProps {
10
10
  export const TextInformationLink = JSX<Partial<TextInformationLinkProps>>(
11
11
  ({ className = '', index, text, href, target, onClick }) => (
12
12
  <a
13
- className={`font-sans text-xs text-secondary-text visited:text-secondary-text hover:text-primary-text inline-block no-underline max-w-[292px] ${className}`}
13
+ className={`text-xs text-secondary-text visited:text-secondary-text hover:text-primary-main inline-block no-underline max-w-[292px] ${className}`}
14
14
  href={href}
15
15
  target={target}
16
16
  onClick={onClick}
@@ -1,6 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import type { IconVersion } from '../../model/IconVersion';
3
2
  import type { BgColorVersion } from '../../model/BgColorVersion';
3
+ import type { IconVersion } from '../../model/IconVersion';
4
4
  import type { UniBlockProps } from '../../types';
5
5
  import { Img } from '../../ui-kit/Img/Img';
6
6
  import { TopItem } from '../../ui-kit/TopItem/TopItem';
@@ -50,22 +50,24 @@ export const HeaderSecondaryMenu = JSX<HeaderSecondaryMenuProps>(
50
50
  bgColor={bgColor}
51
51
  />
52
52
  <HeaderSecondaryMenuButton
53
- className={`mr-5 ${COLORS_MAP[bgColor]}`}
53
+ className={`mr-5 group ${COLORS_MAP[bgColor]}`}
54
54
  ariaLabel="Поиск по сайту"
55
55
  >
56
56
  <Img
57
57
  image={{ icon: 'LoupeIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }}
58
- className="h-full"
58
+ className="h-full pointer-events-none"
59
+ imageClassName="group-hover:text-primary-main pointer-events-none"
59
60
  asSVG
60
61
  />
61
62
  </HeaderSecondaryMenuButton>
62
63
  <HeaderSecondaryMenuButton
63
- className={`${LINKS_COLORS_MAP[bgColor]} min-w-[32px] min-h-[32px]`}
64
+ className={`${LINKS_COLORS_MAP[bgColor]} group min-w-[32px] min-h-[32px]`}
64
65
  ariaLabel="Дополнительные ссылки"
65
66
  >
66
67
  <Img
67
68
  image={{ icon: 'GridIcon', iconVersion: LINKS_ICON_VERSION_MAP[bgColor] }}
68
- className="h-full bg-secondary-light rounded-full"
69
+ className="h-full bg-main-divider rounded-full pointer-events-none"
70
+ imageClassName="group-hover:text-primary-main"
69
71
  asSVG
70
72
  />
71
73
  </HeaderSecondaryMenuButton>
@@ -39,7 +39,7 @@ export const HeaderSubMenu = JSX<HeaderSubMenuProps>(({ context, subItems = [],
39
39
  };
40
40
 
41
41
  return (
42
- <nav className="relative mt-5">
42
+ <nav className="relative mt-6">
43
43
  <div className="overflow-hidden whitespace-nowrap mr-52 pb-3">
44
44
  {subItems.map((_, i) => (
45
45
  <IntersectionObserverTag
@@ -13,7 +13,7 @@ export function renderBackwardButton(
13
13
  const backwardIcon = button?.icon || { icon: 'ArrowLeftIcon' };
14
14
 
15
15
  return (
16
- <div className={`flex items-center ${className}`}>
16
+ <div className={`flex items-center cursor-pointer ${className}`} onClick={onClick}>
17
17
  <Button
18
18
  version={version}
19
19
  rounded
@@ -21,7 +21,6 @@ export function renderBackwardButton(
21
21
  ariaLabel={text}
22
22
  href={href}
23
23
  target={target}
24
- onClick={onClick}
25
24
  >
26
25
  <Img className="w-4 h-4" image={{ ...backwardIcon, iconVersion }} asSVG />
27
26
  </Button>
@@ -57,7 +57,7 @@ export const ProductTile = JSX<ProductTileProps>(
57
57
  <ButtonSection
58
58
  context={context}
59
59
  buttons={buttons}
60
- className="flex self-end mt-5 gap-4 z-[1]"
60
+ className="flex self-end mt-5 gap-4 z-[1] text-l"
61
61
  />
62
62
  ) : null}
63
63
  {image?.src ? <Img className="absolute right-0 bottom-0" image={image} /> : null}
@@ -96,7 +96,7 @@ function renderBenefitDescription(benefit: TextBenefit, i: number, version = 'pr
96
96
  };
97
97
 
98
98
  return (
99
- <div key={String(i)} className={`${i ? 'mt-4' : ''} ${labelStyleMap[version]}`}>
99
+ <div key={String(i)} className={`text-m ${i ? 'mt-4' : ''} ${labelStyleMap[version]}`}>
100
100
  {benefit.description}
101
101
  </div>
102
102
  );
@@ -0,0 +1,33 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useSafeDepositRental } from '../../hooks/useSafeDepositRental';
3
+ import type { UniBlockProps } from '../../types';
4
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
5
+ import type { SafeDepositRentalContent } from './SafeDepositRentalContent';
6
+ import { SafeDepositRentalForm } from './SafeDepositRentalForm';
7
+ import { SafeDepositRentalTotal } from './SafeDepositRentalTotal';
8
+
9
+ export interface SafeDepositRentalProps extends SafeDepositRentalContent, UniBlockProps {}
10
+
11
+ const DEFAULT_DAYS = 26;
12
+
13
+ export const SafeDepositRental = JSX<SafeDepositRentalProps>(
14
+ ({ context, className = '', ...rest }) => {
15
+ const [days, setDays] = context.useState(DEFAULT_DAYS);
16
+ const data = useSafeDepositRental(context.useAsyncData);
17
+
18
+ return (
19
+ <BlockWrapper context={context} className={`bg-white px-8 py-12 ${className}`} {...rest}>
20
+ <div className="flex justify-between align-top mb-6">
21
+ {data?.cities?.length ? (
22
+ <SafeDepositRentalForm {...data} days={days} setDays={setDays} context={context} />
23
+ ) : null}
24
+ <SafeDepositRentalTotal days={days} />
25
+ </div>
26
+ <p className="text-button font-light text-secondary-text">
27
+ Аренда СЯ, в случае проведения процедуры купли-продажи, с использованием наличных денег
28
+ или процедуры ипотечной сделки
29
+ </p>
30
+ </BlockWrapper>
31
+ );
32
+ },
33
+ );
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @title Аренда сейфовых ячеек
3
+ */
4
+ export interface SafeDepositRentalContent {
5
+ /** @title Заголовок */
6
+ title?: string;
7
+ }
@@ -0,0 +1,164 @@
1
+ import { UniBlockProps } from '../../types';
2
+ import { Button } from '../../ui-kit/Button/Button';
3
+ import { InputRange } from '../../ui-kit/InputRange/InputRange';
4
+ import { Radio } from '../../ui-kit/Radio/Radio';
5
+ import { Select } from '../../ui-kit/Select/Select';
6
+ import { SelectOption } from '../../ui-kit/Select/SelectOption';
7
+
8
+ export type SafeDepositRentalFormProps = UniBlockProps;
9
+
10
+ export const SafeDepositRentalForm = ({
11
+ cities,
12
+ cellDimensions,
13
+ cellOptions,
14
+ days,
15
+ setDays,
16
+ context,
17
+ }) => {
18
+ return (
19
+ <div className="flex-1 mr-9">
20
+ {cities.length ? renderCitiesOffices(cities, context) : null}
21
+ {renderRentalPeriod(days, setDays)}
22
+ {cellDimensions.length && cellOptions.length
23
+ ? renderDimensionsOptions(cellDimensions, cellOptions, context)
24
+ : null}
25
+ <span className="text-secondary-text font-light">Тип договора</span>
26
+ <div className="flex justify-between items-center mt-5">
27
+ {renderRadioButtons(context)}
28
+ <Button text="Офисы на карте" version="primary" />
29
+ </div>
30
+ </div>
31
+ );
32
+ };
33
+
34
+ const renderCitiesOffices = (cities, context) => {
35
+ const [selectedCity, setSelectedCity] = context.useState(cities[0].city);
36
+
37
+ const setSelected = (_) => setSelectedCity(_);
38
+
39
+ const offices = cities.find((_) => _.city === selectedCity).offices;
40
+
41
+ return (
42
+ <div className="flex justify-between mb-6">
43
+ <div className="w-full mr-4">
44
+ {cities.length
45
+ ? renderSelect({
46
+ data: cities,
47
+ field: 'city',
48
+ selected: selectedCity,
49
+ setSelected,
50
+ label: 'Город',
51
+ })
52
+ : null}
53
+ </div>
54
+ <div className="w-full">
55
+ {offices.length
56
+ ? renderSelect({
57
+ data: offices,
58
+ field: 'office',
59
+ selected: offices[0],
60
+ setSelected,
61
+ label: 'Отделение',
62
+ })
63
+ : null}
64
+ </div>
65
+ </div>
66
+ );
67
+ };
68
+
69
+ const renderDimensionsOptions = (cellDimensions, cellOptions, context) => {
70
+ const [selectedDimension, setSelectedDimension] = context.useState(cellDimensions[0].dimension);
71
+ const [selectedOption, setSelectedOption] = context.useState(cellOptions[0].option);
72
+
73
+ return (
74
+ <div className="flex justify-between mb-6">
75
+ <div className="mr-4 w-full">
76
+ {cellDimensions.length
77
+ ? renderSelect({
78
+ data: cellDimensions,
79
+ field: 'dimension',
80
+ selected: selectedDimension,
81
+ setSelected: setSelectedDimension,
82
+ label: 'Размер ячейки',
83
+ })
84
+ : null}
85
+ </div>
86
+ <div className="w-full">
87
+ {cellOptions.length
88
+ ? renderSelect({
89
+ data: cellOptions,
90
+ field: 'option',
91
+ selected: selectedOption,
92
+ setSelected: setSelectedOption,
93
+ label: 'Параметры ячейки, мм (ВхШхД)',
94
+ })
95
+ : null}
96
+ </div>
97
+ </div>
98
+ );
99
+ };
100
+
101
+ interface SelectProps {
102
+ data: any[];
103
+ field: string;
104
+ selected: string;
105
+ setSelected: (value: string) => void;
106
+ label: string;
107
+ }
108
+
109
+ const renderSelect = (props: SelectProps) => {
110
+ const { data, field, selected, setSelected, label } = props;
111
+
112
+ return (
113
+ <div>
114
+ <span className="block font-light text-m mb-2">{label}</span>
115
+ <Select
116
+ className="h-14 border border-gray p-4 rounded-md text-m-sm w-full cursor-pointer"
117
+ value={selected}
118
+ onChange={(_) => setSelected(_)}
119
+ >
120
+ {data.map((_, i) => (
121
+ <SelectOption key={String(i)} value={_?.[field]}>
122
+ {_?.[field]}
123
+ </SelectOption>
124
+ ))}
125
+ </Select>
126
+ </div>
127
+ );
128
+ };
129
+
130
+ export const renderRentalPeriod = (days, setDays) => {
131
+ const items = ['От 1 дня', 'До 365 дней'];
132
+
133
+ return (
134
+ <div className="mb-6">
135
+ <span className="block font-light text-m mb-[3px]">Срок аренды</span>
136
+ <InputRange min={1} max={365} value={days} items={items} onChange={setDays} />
137
+ </div>
138
+ );
139
+ };
140
+
141
+ const renderRadioButtons = (context) => {
142
+ const [selected, setSelected] = context.useState('option1');
143
+ const onChange = (_: React.ChangeEvent<HTMLInputElement>) => setSelected(_.target.value);
144
+
145
+ return (
146
+ <div>
147
+ <Radio
148
+ className="mb-2"
149
+ name="contractType"
150
+ text="Простое хранение"
151
+ value="option1"
152
+ checked={selected === 'option1'}
153
+ onChange={onChange}
154
+ />
155
+ <Radio
156
+ name="contractType"
157
+ text="Сделка с недвижимостью"
158
+ value="option2"
159
+ checked={selected === 'option2'}
160
+ onChange={onChange}
161
+ />
162
+ </div>
163
+ );
164
+ };
@@ -0,0 +1,57 @@
1
+ import type { UniBlockProps } from '../../types';
2
+ import { Img } from '../../ui-kit/Img/Img';
3
+
4
+ export type SafeDepositRentalTotalProps = UniBlockProps;
5
+
6
+ type Days = {
7
+ days: number;
8
+ };
9
+
10
+ export const SafeDepositRentalTotal = ({ days }: Days) => {
11
+ const price = calculatePrice(days);
12
+
13
+ return (
14
+ <div className="flex flex-col justify-between">
15
+ <div className="flex">
16
+ {renderTotal('Аренда за', days, 'mr-11')}
17
+ {renderTotal('Цена', price + ' ₽')}
18
+ </div>
19
+ <div className="bg-primary-main px-10 pt-10 pb-4 text-center">
20
+ <Img image={{ icon: 'PackA4' }} width="290" height="257" asSVG />
21
+
22
+ <span className="font-light text-white opacity-80 mt-2 inline-block">
23
+ На рисунки изображена пачка<br></br> листов формата А4
24
+ </span>
25
+ </div>
26
+ </div>
27
+ );
28
+ };
29
+
30
+ const renderTotal = (label, total, className = '') => {
31
+ return (
32
+ <div className={className}>
33
+ <span className="block font-light text-m mb-1">{label}</span>
34
+ <span className="text-h3">{total}</span>
35
+ </div>
36
+ );
37
+ };
38
+
39
+ const calculatePrice = (days: number) => {
40
+ let TariffType = 1;
41
+
42
+ switch (true) {
43
+ case days > 30 && days <= 90:
44
+ TariffType = 2;
45
+ break;
46
+
47
+ case days > 90 && days <= 180:
48
+ TariffType = 3;
49
+ break;
50
+
51
+ case days > 180 && days <= 365:
52
+ TariffType = 4;
53
+ break;
54
+ }
55
+
56
+ return days * TariffType;
57
+ };
@@ -14,6 +14,11 @@
14
14
  "height": 48
15
15
  },
16
16
  "format": "webp"
17
+ },
18
+ "button": {
19
+ "text": "Кнопка",
20
+ "target": "_blank",
21
+ "version": "primary"
17
22
  }
18
23
  },
19
24
  {
@@ -25,6 +30,11 @@
25
30
  "height": 48
26
31
  },
27
32
  "format": "webp"
33
+ },
34
+ "button": {
35
+ "text": "Кнопка",
36
+ "target": "_blank",
37
+ "version": "primary"
28
38
  }
29
39
  },
30
40
  {
@@ -36,6 +46,11 @@
36
46
  "height": 48
37
47
  },
38
48
  "format": "webp"
49
+ },
50
+ "button": {
51
+ "text": "Кнопка",
52
+ "target": "_blank",
53
+ "version": "primary"
39
54
  }
40
55
  }
41
56
  ],
@@ -6,7 +6,7 @@ import { Heading } from '../../ui-kit/Heading/Heading';
6
6
  import { Img } from '../../ui-kit/Img/Img';
7
7
  import type { Step, StepsBlockContent } from './StepsBlockContent';
8
8
  import { checkIsIconRenderable } from '../../utils/checkIsIconRenderable';
9
- import { getStyleMap } from './StepsBlockStyleMaps';
9
+ import { STEPS_BLOCK_STYLE_MAPS } from './StepsBlockStyleMaps';
10
10
 
11
11
  export interface StepsBlockProps extends StepsBlockContent, UniBlockProps {}
12
12
 
@@ -30,7 +30,7 @@ export const StepsBlock = JSX<StepsBlockProps>(
30
30
  size = 'normal',
31
31
  version = 'primary',
32
32
  }) => {
33
- const styleMap = getStyleMap(version);
33
+ const styleMap = STEPS_BLOCK_STYLE_MAPS[version];
34
34
 
35
35
  return (
36
36
  <section
@@ -62,7 +62,7 @@ const renderStepTitle =
62
62
  (step: Step, i: number, steps: Step[]) => {
63
63
  const isLastStep = steps.length - 1 === i;
64
64
  const margin = size === 'normal' ? 'ml-[34px]' : 'ml-6';
65
- const styleMap = getStyleMap(version);
65
+ const styleMap = STEPS_BLOCK_STYLE_MAPS[version];
66
66
 
67
67
  return (
68
68
  <div key={String(i)}>
@@ -93,7 +93,7 @@ const renderStepTitle =
93
93
  };
94
94
 
95
95
  const renderIconArea = (size: SizeVersion, version: BlockVersion) => (step: Step, i: number) => {
96
- const styleMap = getStyleMap(version);
96
+ const styleMap = STEPS_BLOCK_STYLE_MAPS[version];
97
97
  const iconAreaSize = STEPS_SIZE_MAP[size];
98
98
 
99
99
  const iconSize = size === 'normal' ? '38' : '27';
@@ -1,7 +1,7 @@
1
1
  import type { BlockVersion } from '../../model/BlockVersion';
2
2
  import type { Picture } from '../../model/Picture';
3
3
  import type { SizeVersion } from '../../model/SizeVersion';
4
- import type { ButtonProps } from '../../ui-kit/Button/ButtonProps';
4
+ import type { ButtonWithIconProps } from '../../ui-kit/Button/ButtonProps';
5
5
 
6
6
  /**
7
7
  * @title Шаг
@@ -23,7 +23,8 @@ export interface Step {
23
23
  * }
24
24
  */
25
25
  icon?: Picture;
26
- button?: ButtonProps;
26
+ /** @title Кнопка */
27
+ button?: ButtonWithIconProps;
27
28
  }
28
29
 
29
30
  /**
@@ -45,7 +46,8 @@ export interface StepsBlockContent {
45
46
  * @maxItems 4
46
47
  */
47
48
  steps?: Step[];
48
- button?: ButtonProps;
49
+ /** @title Кнопка */
50
+ button?: ButtonWithIconProps;
49
51
  /**
50
52
  * @title Размер шагов (моб.)
51
53
  * @default normal
@@ -9,7 +9,7 @@ export type StyleType = {
9
9
  iconConnector: string;
10
10
  };
11
11
 
12
- const STEPS_BLOCK_STYLE_MAPS: Record<BlockVersion, StyleType> = {
12
+ export const STEPS_BLOCK_STYLE_MAPS: Record<BlockVersion, StyleType> = {
13
13
  primary: {
14
14
  background: 'bg-white',
15
15
  title: 'text-primary-text',
@@ -27,5 +27,3 @@ const STEPS_BLOCK_STYLE_MAPS: Record<BlockVersion, StyleType> = {
27
27
  iconConnector: 'bg-white',
28
28
  },
29
29
  };
30
-
31
- export const getStyleMap = (version: BlockVersion): StyleType => STEPS_BLOCK_STYLE_MAPS[version];