@redneckz/wildless-cms-uni-blocks 0.4.6 → 0.4.7

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 (393) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +189 -196
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/dist/components/BlockContent.d.ts +3 -1
  5. package/dist/components/Blocks.d.ts +2 -0
  6. package/dist/components/Blocks.js +5 -1
  7. package/dist/components/Blocks.js.map +1 -1
  8. package/dist/components/Calculator/BonusCalculatorForm.js +1 -1
  9. package/dist/components/Calculator/Calculator.js +6 -4
  10. package/dist/components/Calculator/Calculator.js.map +1 -1
  11. package/dist/components/Calculator/CalculatorContent.d.ts +7 -6
  12. package/dist/components/Calculator/CalculatorValueBlock.js +1 -1
  13. package/dist/components/Calculator/CalculatorValueBlock.js.map +1 -1
  14. package/dist/components/Calculator/CreditCalculatorForm.js +1 -1
  15. package/dist/components/Calculator/MortgageCalculatorForm.js +1 -3
  16. package/dist/components/Calculator/MortgageCalculatorForm.js.map +1 -1
  17. package/dist/components/Calculator/Rate.js +1 -1
  18. package/dist/components/Calculator/Rate.js.map +1 -1
  19. package/dist/components/Calculator/renderCalculatorBlock.js +2 -1
  20. package/dist/components/Calculator/renderCalculatorBlock.js.map +1 -1
  21. package/dist/components/Calculator/renderInitialFeeInput.js +1 -1
  22. package/dist/components/Calculator/renderMonthsInput.js +1 -1
  23. package/dist/components/Calculator/renderProposalMortgage.js +2 -1
  24. package/dist/components/Calculator/renderProposalMortgage.js.map +1 -1
  25. package/dist/components/ErrorBlock/ErrorBlock.d.ts +5 -0
  26. package/dist/components/ErrorBlock/ErrorBlock.js +23 -0
  27. package/dist/components/ErrorBlock/ErrorBlock.js.map +1 -0
  28. package/dist/components/ErrorBlock/ErrorBlockContent.d.ts +35 -0
  29. package/dist/components/ErrorBlock/ErrorBlockContent.js +2 -0
  30. package/dist/components/ErrorBlock/ErrorBlockContent.js.map +1 -0
  31. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +5 -0
  32. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +12 -0
  33. package/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -0
  34. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +24 -0
  35. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js +2 -0
  36. package/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +1 -0
  37. package/dist/components/PictureText/PictureText.js +4 -4
  38. package/dist/components/PictureText/PictureText.js.map +1 -1
  39. package/dist/components/SafeDepositRental/RegionsAndBranches.d.ts +12 -0
  40. package/dist/components/SafeDepositRental/RegionsAndBranches.js +9 -0
  41. package/dist/components/SafeDepositRental/RegionsAndBranches.js.map +1 -0
  42. package/dist/components/SafeDepositRental/RenderRadioButtons.d.ts +2 -0
  43. package/dist/components/SafeDepositRental/RenderRadioButtons.js +12 -0
  44. package/dist/components/SafeDepositRental/RenderRadioButtons.js.map +1 -0
  45. package/dist/components/SafeDepositRental/RentalPeriod.d.ts +6 -0
  46. package/dist/components/SafeDepositRental/RentalPeriod.js +10 -0
  47. package/dist/components/SafeDepositRental/RentalPeriod.js.map +1 -0
  48. package/dist/components/SafeDepositRental/SafeBoxCases.d.ts +11 -0
  49. package/dist/components/SafeDepositRental/SafeBoxCases.js +9 -0
  50. package/dist/components/SafeDepositRental/SafeBoxCases.js.map +1 -0
  51. package/dist/components/SafeDepositRental/SafeDepositRental.js +5 -71
  52. package/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  53. package/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +17 -0
  54. package/dist/components/SafeDepositRental/SafeDepositRentalForm.d.ts +5 -5
  55. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js +51 -67
  56. package/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  57. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +5 -7
  58. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +15 -10
  59. package/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  60. package/dist/components/SafeDepositRental/WrapperSelect.d.ts +11 -0
  61. package/dist/components/SafeDepositRental/WrapperSelect.js +10 -0
  62. package/dist/components/SafeDepositRental/WrapperSelect.js.map +1 -0
  63. package/dist/components/SafeDepositRental/fetchBranches.d.ts +2 -0
  64. package/dist/components/SafeDepositRental/fetchBranches.js +20 -0
  65. package/dist/components/SafeDepositRental/fetchBranches.js.map +1 -0
  66. package/dist/components/SafeDepositRental/useGetRegions.d.ts +6 -0
  67. package/dist/components/SafeDepositRental/useGetRegions.js +11 -0
  68. package/dist/components/SafeDepositRental/useGetRegions.js.map +1 -0
  69. package/dist/ui-kit/BenefitItem/BenefitItem.d.ts +1 -1
  70. package/dist/ui-kit/BenefitItem/BenefitItem.js +3 -2
  71. package/dist/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
  72. package/dist/ui-kit/InputRange/InputRange.js +1 -1
  73. package/dist/ui-kit/InputRange/InputRange.js.map +1 -1
  74. package/dist/ui-kit/Radio/Radio.js +1 -1
  75. package/dist/ui-kit/Radio/Radio.js.map +1 -1
  76. package/dist/ui-kit/Select/Select.js +1 -1
  77. package/dist/ui-kit/Select/Select.js.map +1 -1
  78. package/dist/ui-kit/Select/SelectOption.d.ts +1 -0
  79. package/dist/ui-kit/Select/SelectOption.js +2 -2
  80. package/dist/ui-kit/Select/SelectOption.js.map +1 -1
  81. package/lib/common.css +1 -1
  82. package/lib/components/BlockContent.d.ts +3 -1
  83. package/lib/components/Blocks.d.ts +2 -0
  84. package/lib/components/Blocks.js +5 -1
  85. package/lib/components/Blocks.js.map +1 -1
  86. package/lib/components/Calculator/BonusCalculatorForm.js +1 -1
  87. package/lib/components/Calculator/Calculator.js +6 -4
  88. package/lib/components/Calculator/Calculator.js.map +1 -1
  89. package/lib/components/Calculator/CalculatorContent.d.ts +7 -6
  90. package/lib/components/Calculator/CalculatorValueBlock.js +1 -1
  91. package/lib/components/Calculator/CalculatorValueBlock.js.map +1 -1
  92. package/lib/components/Calculator/CreditCalculatorForm.js +1 -1
  93. package/lib/components/Calculator/MortgageCalculatorForm.js +1 -3
  94. package/lib/components/Calculator/MortgageCalculatorForm.js.map +1 -1
  95. package/lib/components/Calculator/Rate.js +1 -1
  96. package/lib/components/Calculator/Rate.js.map +1 -1
  97. package/lib/components/Calculator/renderCalculatorBlock.js +3 -2
  98. package/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  99. package/lib/components/Calculator/renderInitialFeeInput.js +1 -1
  100. package/lib/components/Calculator/renderMonthsInput.js +1 -1
  101. package/lib/components/Calculator/renderProposalMortgage.js +2 -1
  102. package/lib/components/Calculator/renderProposalMortgage.js.map +1 -1
  103. package/lib/components/ErrorBlock/ErrorBlock.d.ts +5 -0
  104. package/lib/components/ErrorBlock/ErrorBlock.fixture.d.ts +6 -0
  105. package/lib/components/ErrorBlock/ErrorBlock.js +21 -0
  106. package/lib/components/ErrorBlock/ErrorBlock.js.map +1 -0
  107. package/lib/components/ErrorBlock/ErrorBlockContent.d.ts +35 -0
  108. package/lib/components/ErrorBlock/ErrorBlockContent.js +2 -0
  109. package/lib/components/ErrorBlock/ErrorBlockContent.js.map +1 -0
  110. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +5 -0
  111. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.fixture.d.ts +5 -0
  112. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +10 -0
  113. package/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -0
  114. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +24 -0
  115. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js +2 -0
  116. package/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +1 -0
  117. package/lib/components/PictureText/PictureText.js +4 -4
  118. package/lib/components/PictureText/PictureText.js.map +1 -1
  119. package/lib/components/SafeDepositRental/RegionsAndBranches.d.ts +12 -0
  120. package/lib/components/SafeDepositRental/RegionsAndBranches.js +7 -0
  121. package/lib/components/SafeDepositRental/RegionsAndBranches.js.map +1 -0
  122. package/lib/components/SafeDepositRental/RenderRadioButtons.d.ts +2 -0
  123. package/lib/components/SafeDepositRental/RenderRadioButtons.js +10 -0
  124. package/lib/components/SafeDepositRental/RenderRadioButtons.js.map +1 -0
  125. package/lib/components/SafeDepositRental/RentalPeriod.d.ts +6 -0
  126. package/lib/components/SafeDepositRental/RentalPeriod.js +8 -0
  127. package/lib/components/SafeDepositRental/RentalPeriod.js.map +1 -0
  128. package/lib/components/SafeDepositRental/SafeBoxCases.d.ts +11 -0
  129. package/lib/components/SafeDepositRental/SafeBoxCases.js +7 -0
  130. package/lib/components/SafeDepositRental/SafeBoxCases.js.map +1 -0
  131. package/lib/components/SafeDepositRental/SafeDepositRental.js +5 -71
  132. package/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  133. package/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +17 -0
  134. package/lib/components/SafeDepositRental/SafeDepositRentalForm.d.ts +5 -5
  135. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js +50 -65
  136. package/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  137. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +5 -7
  138. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +15 -9
  139. package/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  140. package/lib/components/SafeDepositRental/WrapperSelect.d.ts +11 -0
  141. package/lib/components/SafeDepositRental/WrapperSelect.js +8 -0
  142. package/lib/components/SafeDepositRental/WrapperSelect.js.map +1 -0
  143. package/lib/components/SafeDepositRental/fetchBranches.d.ts +2 -0
  144. package/lib/components/SafeDepositRental/fetchBranches.js +17 -0
  145. package/lib/components/SafeDepositRental/fetchBranches.js.map +1 -0
  146. package/lib/components/SafeDepositRental/useGetRegions.d.ts +6 -0
  147. package/lib/components/SafeDepositRental/useGetRegions.js +8 -0
  148. package/lib/components/SafeDepositRental/useGetRegions.js.map +1 -0
  149. package/lib/ui-kit/BenefitItem/BenefitItem.d.ts +1 -1
  150. package/lib/ui-kit/BenefitItem/BenefitItem.js +3 -2
  151. package/lib/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
  152. package/lib/ui-kit/InputRange/InputRange.js +1 -1
  153. package/lib/ui-kit/InputRange/InputRange.js.map +1 -1
  154. package/lib/ui-kit/Radio/Radio.js +1 -1
  155. package/lib/ui-kit/Radio/Radio.js.map +1 -1
  156. package/lib/ui-kit/Select/Select.js +1 -1
  157. package/lib/ui-kit/Select/Select.js.map +1 -1
  158. package/lib/ui-kit/Select/SelectOption.d.ts +1 -0
  159. package/lib/ui-kit/Select/SelectOption.js +2 -2
  160. package/lib/ui-kit/Select/SelectOption.js.map +1 -1
  161. package/mobile/bundle/bundle.umd.js +6 -5
  162. package/mobile/bundle/bundle.umd.min.js +1 -1
  163. package/mobile/dist/components/BlockContent.d.ts +3 -1
  164. package/mobile/dist/components/Calculator/BonusCalculatorForm.js +1 -1
  165. package/mobile/dist/components/Calculator/Calculator.js +6 -4
  166. package/mobile/dist/components/Calculator/Calculator.js.map +1 -1
  167. package/mobile/dist/components/Calculator/CalculatorContent.d.ts +7 -6
  168. package/mobile/dist/components/Calculator/CalculatorValueBlock.js +1 -1
  169. package/mobile/dist/components/Calculator/CalculatorValueBlock.js.map +1 -1
  170. package/mobile/dist/components/Calculator/CreditCalculatorForm.js +1 -1
  171. package/mobile/dist/components/Calculator/MortgageCalculatorForm.js +1 -3
  172. package/mobile/dist/components/Calculator/MortgageCalculatorForm.js.map +1 -1
  173. package/mobile/dist/components/Calculator/Rate.js +1 -1
  174. package/mobile/dist/components/Calculator/Rate.js.map +1 -1
  175. package/mobile/dist/components/Calculator/renderCalculatorBlock.js +2 -1
  176. package/mobile/dist/components/Calculator/renderCalculatorBlock.js.map +1 -1
  177. package/mobile/dist/components/Calculator/renderInitialFeeInput.js +1 -1
  178. package/mobile/dist/components/Calculator/renderMonthsInput.js +1 -1
  179. package/mobile/dist/components/Calculator/renderProposalMortgage.js +2 -1
  180. package/mobile/dist/components/Calculator/renderProposalMortgage.js.map +1 -1
  181. package/mobile/dist/components/ErrorBlock/ErrorBlock.d.ts +5 -0
  182. package/mobile/dist/components/ErrorBlock/ErrorBlock.js +23 -0
  183. package/mobile/dist/components/ErrorBlock/ErrorBlock.js.map +1 -0
  184. package/mobile/dist/components/ErrorBlock/ErrorBlockContent.d.ts +35 -0
  185. package/mobile/dist/components/ErrorBlock/ErrorBlockContent.js +2 -0
  186. package/mobile/dist/components/ErrorBlock/ErrorBlockContent.js.map +1 -0
  187. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +5 -0
  188. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js +12 -0
  189. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -0
  190. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +24 -0
  191. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js +2 -0
  192. package/mobile/dist/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +1 -0
  193. package/mobile/dist/components/PictureText/PictureText.js +4 -4
  194. package/mobile/dist/components/PictureText/PictureText.js.map +1 -1
  195. package/mobile/dist/components/SafeDepositRental/RegionsAndBranches.d.ts +12 -0
  196. package/mobile/dist/components/SafeDepositRental/RegionsAndBranches.js +9 -0
  197. package/mobile/dist/components/SafeDepositRental/RegionsAndBranches.js.map +1 -0
  198. package/mobile/dist/components/SafeDepositRental/RenderRadioButtons.d.ts +2 -0
  199. package/mobile/dist/components/SafeDepositRental/RenderRadioButtons.js +12 -0
  200. package/mobile/dist/components/SafeDepositRental/RenderRadioButtons.js.map +1 -0
  201. package/mobile/dist/components/SafeDepositRental/RentalPeriod.d.ts +6 -0
  202. package/mobile/dist/components/SafeDepositRental/RentalPeriod.js +10 -0
  203. package/mobile/dist/components/SafeDepositRental/RentalPeriod.js.map +1 -0
  204. package/mobile/dist/components/SafeDepositRental/SafeBoxCases.d.ts +11 -0
  205. package/mobile/dist/components/SafeDepositRental/SafeBoxCases.js +9 -0
  206. package/mobile/dist/components/SafeDepositRental/SafeBoxCases.js.map +1 -0
  207. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js +5 -71
  208. package/mobile/dist/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  209. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalContent.d.ts +17 -0
  210. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.d.ts +5 -5
  211. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js +51 -67
  212. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  213. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +5 -7
  214. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js +15 -10
  215. package/mobile/dist/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  216. package/mobile/dist/components/SafeDepositRental/WrapperSelect.d.ts +11 -0
  217. package/mobile/dist/components/SafeDepositRental/WrapperSelect.js +10 -0
  218. package/mobile/dist/components/SafeDepositRental/WrapperSelect.js.map +1 -0
  219. package/mobile/dist/components/SafeDepositRental/fetchBranches.d.ts +2 -0
  220. package/mobile/dist/components/SafeDepositRental/fetchBranches.js +20 -0
  221. package/mobile/dist/components/SafeDepositRental/fetchBranches.js.map +1 -0
  222. package/mobile/dist/components/SafeDepositRental/useGetRegions.d.ts +6 -0
  223. package/mobile/dist/components/SafeDepositRental/useGetRegions.js +11 -0
  224. package/mobile/dist/components/SafeDepositRental/useGetRegions.js.map +1 -0
  225. package/mobile/dist/ui-kit/BenefitItem/BenefitItem.d.ts +1 -1
  226. package/mobile/dist/ui-kit/BenefitItem/BenefitItem.js +3 -2
  227. package/mobile/dist/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
  228. package/mobile/dist/ui-kit/InputRange/InputRange.js +1 -1
  229. package/mobile/dist/ui-kit/InputRange/InputRange.js.map +1 -1
  230. package/mobile/dist/ui-kit/Radio/Radio.js +1 -1
  231. package/mobile/dist/ui-kit/Radio/Radio.js.map +1 -1
  232. package/mobile/dist/ui-kit/Select/Select.js +1 -1
  233. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  234. package/mobile/dist/ui-kit/Select/SelectOption.d.ts +1 -0
  235. package/mobile/dist/ui-kit/Select/SelectOption.js +2 -2
  236. package/mobile/dist/ui-kit/Select/SelectOption.js.map +1 -1
  237. package/mobile/lib/components/BlockContent.d.ts +3 -1
  238. package/mobile/lib/components/Calculator/BonusCalculatorForm.js +1 -1
  239. package/mobile/lib/components/Calculator/Calculator.js +6 -4
  240. package/mobile/lib/components/Calculator/Calculator.js.map +1 -1
  241. package/mobile/lib/components/Calculator/CalculatorContent.d.ts +7 -6
  242. package/mobile/lib/components/Calculator/CalculatorValueBlock.js +1 -1
  243. package/mobile/lib/components/Calculator/CalculatorValueBlock.js.map +1 -1
  244. package/mobile/lib/components/Calculator/CreditCalculatorForm.js +1 -1
  245. package/mobile/lib/components/Calculator/MortgageCalculatorForm.js +1 -3
  246. package/mobile/lib/components/Calculator/MortgageCalculatorForm.js.map +1 -1
  247. package/mobile/lib/components/Calculator/Rate.js +1 -1
  248. package/mobile/lib/components/Calculator/Rate.js.map +1 -1
  249. package/mobile/lib/components/Calculator/renderCalculatorBlock.js +3 -2
  250. package/mobile/lib/components/Calculator/renderCalculatorBlock.js.map +1 -1
  251. package/mobile/lib/components/Calculator/renderInitialFeeInput.js +1 -1
  252. package/mobile/lib/components/Calculator/renderMonthsInput.js +1 -1
  253. package/mobile/lib/components/Calculator/renderProposalMortgage.js +2 -1
  254. package/mobile/lib/components/Calculator/renderProposalMortgage.js.map +1 -1
  255. package/mobile/lib/components/ErrorBlock/ErrorBlock.d.ts +5 -0
  256. package/mobile/lib/components/ErrorBlock/ErrorBlock.js +21 -0
  257. package/mobile/lib/components/ErrorBlock/ErrorBlock.js.map +1 -0
  258. package/mobile/lib/components/ErrorBlock/ErrorBlockContent.d.ts +35 -0
  259. package/mobile/lib/components/ErrorBlock/ErrorBlockContent.js +2 -0
  260. package/mobile/lib/components/ErrorBlock/ErrorBlockContent.js.map +1 -0
  261. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.d.ts +5 -0
  262. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js +10 -0
  263. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlock.js.map +1 -0
  264. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.d.ts +24 -0
  265. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js +2 -0
  266. package/mobile/lib/components/OfficeServicesBlock/OfficeServicesBlockContent.js.map +1 -0
  267. package/mobile/lib/components/PictureText/PictureText.js +4 -4
  268. package/mobile/lib/components/PictureText/PictureText.js.map +1 -1
  269. package/mobile/lib/components/SafeDepositRental/RegionsAndBranches.d.ts +12 -0
  270. package/mobile/lib/components/SafeDepositRental/RegionsAndBranches.js +7 -0
  271. package/mobile/lib/components/SafeDepositRental/RegionsAndBranches.js.map +1 -0
  272. package/mobile/lib/components/SafeDepositRental/RenderRadioButtons.d.ts +2 -0
  273. package/mobile/lib/components/SafeDepositRental/RenderRadioButtons.js +10 -0
  274. package/mobile/lib/components/SafeDepositRental/RenderRadioButtons.js.map +1 -0
  275. package/mobile/lib/components/SafeDepositRental/RentalPeriod.d.ts +6 -0
  276. package/mobile/lib/components/SafeDepositRental/RentalPeriod.js +8 -0
  277. package/mobile/lib/components/SafeDepositRental/RentalPeriod.js.map +1 -0
  278. package/mobile/lib/components/SafeDepositRental/SafeBoxCases.d.ts +11 -0
  279. package/mobile/lib/components/SafeDepositRental/SafeBoxCases.js +7 -0
  280. package/mobile/lib/components/SafeDepositRental/SafeBoxCases.js.map +1 -0
  281. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js +5 -71
  282. package/mobile/lib/components/SafeDepositRental/SafeDepositRental.js.map +1 -1
  283. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalContent.d.ts +17 -0
  284. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.d.ts +5 -5
  285. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js +50 -65
  286. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalForm.js.map +1 -1
  287. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.d.ts +5 -7
  288. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js +15 -9
  289. package/mobile/lib/components/SafeDepositRental/SafeDepositRentalTotal.js.map +1 -1
  290. package/mobile/lib/components/SafeDepositRental/WrapperSelect.d.ts +11 -0
  291. package/mobile/lib/components/SafeDepositRental/WrapperSelect.js +8 -0
  292. package/mobile/lib/components/SafeDepositRental/WrapperSelect.js.map +1 -0
  293. package/mobile/lib/components/SafeDepositRental/fetchBranches.d.ts +2 -0
  294. package/mobile/lib/components/SafeDepositRental/fetchBranches.js +17 -0
  295. package/mobile/lib/components/SafeDepositRental/fetchBranches.js.map +1 -0
  296. package/mobile/lib/components/SafeDepositRental/useGetRegions.d.ts +6 -0
  297. package/mobile/lib/components/SafeDepositRental/useGetRegions.js +8 -0
  298. package/mobile/lib/components/SafeDepositRental/useGetRegions.js.map +1 -0
  299. package/mobile/lib/ui-kit/BenefitItem/BenefitItem.d.ts +1 -1
  300. package/mobile/lib/ui-kit/BenefitItem/BenefitItem.js +3 -2
  301. package/mobile/lib/ui-kit/BenefitItem/BenefitItem.js.map +1 -1
  302. package/mobile/lib/ui-kit/InputRange/InputRange.js +1 -1
  303. package/mobile/lib/ui-kit/InputRange/InputRange.js.map +1 -1
  304. package/mobile/lib/ui-kit/Radio/Radio.js +1 -1
  305. package/mobile/lib/ui-kit/Radio/Radio.js.map +1 -1
  306. package/mobile/lib/ui-kit/Select/Select.js +1 -1
  307. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  308. package/mobile/lib/ui-kit/Select/SelectOption.d.ts +1 -0
  309. package/mobile/lib/ui-kit/Select/SelectOption.js +2 -2
  310. package/mobile/lib/ui-kit/Select/SelectOption.js.map +1 -1
  311. package/mobile/src/common.css +1 -1
  312. package/mobile/src/components/BlockContent.ts +5 -1
  313. package/mobile/src/components/Calculator/BonusCalculatorForm.tsx +1 -1
  314. package/mobile/src/components/Calculator/Calculator.tsx +6 -4
  315. package/mobile/src/components/Calculator/CalculatorContent.ts +11 -6
  316. package/mobile/src/components/Calculator/CalculatorValueBlock.tsx +1 -1
  317. package/mobile/src/components/Calculator/CreditCalculatorForm.tsx +1 -1
  318. package/mobile/src/components/Calculator/MortgageCalculatorForm.tsx +2 -8
  319. package/mobile/src/components/Calculator/Rate.tsx +3 -3
  320. package/mobile/src/components/Calculator/renderCalculatorBlock.tsx +2 -0
  321. package/mobile/src/components/Calculator/renderInitialFeeInput.tsx +1 -1
  322. package/mobile/src/components/Calculator/renderMonthsInput.tsx +1 -1
  323. package/mobile/src/components/Calculator/renderProposalMortgage.tsx +7 -2
  324. package/mobile/src/components/ErrorBlock/ErrorBlock.example.json +13 -0
  325. package/mobile/src/components/ErrorBlock/ErrorBlock.tsx +45 -0
  326. package/mobile/src/components/ErrorBlock/ErrorBlockContent.ts +38 -0
  327. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.example.json +33 -0
  328. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +41 -0
  329. package/mobile/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +26 -0
  330. package/mobile/src/components/PictureText/PictureText.tsx +6 -6
  331. package/mobile/src/components/SafeDepositRental/RegionsAndBranches.tsx +50 -0
  332. package/mobile/src/components/SafeDepositRental/RenderRadioButtons.tsx +29 -0
  333. package/mobile/src/components/SafeDepositRental/RentalPeriod.tsx +18 -0
  334. package/mobile/src/components/SafeDepositRental/SafeBoxCases.tsx +48 -0
  335. package/mobile/src/components/SafeDepositRental/SafeDepositRental.tsx +8 -78
  336. package/mobile/src/components/SafeDepositRental/SafeDepositRentalContent.ts +21 -0
  337. package/mobile/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +86 -143
  338. package/mobile/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +23 -15
  339. package/mobile/src/components/SafeDepositRental/WrapperSelect.tsx +45 -0
  340. package/mobile/src/components/SafeDepositRental/fetchBranches.ts +21 -0
  341. package/mobile/src/components/SafeDepositRental/useGetRegions.ts +16 -0
  342. package/mobile/src/components/__snapshots__/Blocks.spec.tsx.snap +38 -65
  343. package/mobile/src/ui-kit/BenefitItem/BenefitItem.tsx +12 -9
  344. package/mobile/src/ui-kit/InputRange/InputRange.tsx +1 -1
  345. package/mobile/src/ui-kit/Radio/Radio.tsx +1 -1
  346. package/mobile/src/ui-kit/Select/Select.tsx +1 -0
  347. package/mobile/src/ui-kit/Select/SelectOption.tsx +3 -2
  348. package/package.json +1 -1
  349. package/src/common.css +1 -1
  350. package/src/components/BlockContent.ts +5 -1
  351. package/src/components/Blocks.ts +5 -1
  352. package/src/components/Calculator/BonusCalculatorForm.tsx +1 -1
  353. package/src/components/Calculator/Calculator.fixture.tsx +1 -0
  354. package/src/components/Calculator/Calculator.tsx +6 -4
  355. package/src/components/Calculator/CalculatorContent.ts +11 -6
  356. package/src/components/Calculator/CalculatorValueBlock.tsx +1 -1
  357. package/src/components/Calculator/CreditCalculatorForm.tsx +1 -1
  358. package/src/components/Calculator/MortgageCalculatorForm.tsx +2 -8
  359. package/src/components/Calculator/Rate.tsx +3 -3
  360. package/src/components/Calculator/renderCalculatorBlock.tsx +2 -0
  361. package/src/components/Calculator/renderInitialFeeInput.tsx +1 -1
  362. package/src/components/Calculator/renderMonthsInput.tsx +1 -1
  363. package/src/components/Calculator/renderProposalMortgage.tsx +7 -2
  364. package/src/components/ErrorBlock/ErrorBlock.example.json +13 -0
  365. package/src/components/ErrorBlock/ErrorBlock.fixture.tsx +53 -0
  366. package/src/components/ErrorBlock/ErrorBlock.tsx +45 -0
  367. package/src/components/ErrorBlock/ErrorBlockContent.ts +38 -0
  368. package/src/components/OfficeServicesBlock/OfficeServicesBlock.example.json +33 -0
  369. package/src/components/OfficeServicesBlock/OfficeServicesBlock.fixture.tsx +44 -0
  370. package/src/components/OfficeServicesBlock/OfficeServicesBlock.tsx +41 -0
  371. package/src/components/OfficeServicesBlock/OfficeServicesBlockContent.ts +26 -0
  372. package/src/components/PictureText/PictureText.fixture.tsx +1 -1
  373. package/src/components/PictureText/PictureText.tsx +6 -6
  374. package/src/components/SafeDepositRental/RegionsAndBranches.tsx +50 -0
  375. package/src/components/SafeDepositRental/RenderRadioButtons.tsx +29 -0
  376. package/src/components/SafeDepositRental/RentalPeriod.tsx +18 -0
  377. package/src/components/SafeDepositRental/SafeBoxCases.tsx +48 -0
  378. package/src/components/SafeDepositRental/SafeDepositRental.fixture.tsx +1 -0
  379. package/src/components/SafeDepositRental/SafeDepositRental.tsx +8 -78
  380. package/src/components/SafeDepositRental/SafeDepositRentalContent.ts +21 -0
  381. package/src/components/SafeDepositRental/SafeDepositRentalForm.tsx +86 -143
  382. package/src/components/SafeDepositRental/SafeDepositRentalTotal.tsx +23 -15
  383. package/src/components/SafeDepositRental/WrapperSelect.tsx +45 -0
  384. package/src/components/SafeDepositRental/fetchBranches.ts +21 -0
  385. package/src/components/SafeDepositRental/useGetRegions.ts +16 -0
  386. package/src/components/__snapshots__/Blocks.spec.tsx.snap +38 -65
  387. package/src/ui-kit/BenefitItem/BenefitItem.tsx +12 -9
  388. package/src/ui-kit/InputRange/InputRange.tsx +1 -1
  389. package/src/ui-kit/Radio/Radio.tsx +1 -1
  390. package/src/ui-kit/Select/Select.tsx +1 -0
  391. package/src/ui-kit/Select/SelectOption.tsx +3 -2
  392. package/mobile/src/components/SafeDepositRental/SafeDepositRental.example.json +0 -3
  393. package/src/components/SafeDepositRental/SafeDepositRental.example.json +0 -3
@@ -1,93 +1,23 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { useState } from '@redneckz/uni-jsx/lib/hooks';
3
2
  import type { UniBlockProps } from '../../types';
4
3
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
4
+ import { Heading } from '../../ui-kit/Heading/Heading';
5
5
  import type { SafeDepositRentalContent } from './SafeDepositRentalContent';
6
6
  import { SafeDepositRentalForm } from './SafeDepositRentalForm';
7
- import { SafeDepositRentalTotal } from './SafeDepositRentalTotal';
7
+ import { useGetRegions } from './useGetRegions';
8
8
 
9
9
  export interface SafeDepositRentalProps extends SafeDepositRentalContent, UniBlockProps {}
10
10
 
11
- const DEFAULT_DAYS = 26;
12
-
13
- const DATA = {
14
- cities: [
15
- {
16
- city: 'Москва',
17
- offices: [
18
- {
19
- office: 'выберите отделение',
20
- rate: null,
21
- },
22
- {
23
- office: 'МоскваОфис1',
24
- rate: 1,
25
- },
26
- {
27
- office: 'МоскваОфис2',
28
- rate: 2,
29
- },
30
- {
31
- office: 'МоскваОфис3',
32
- rate: 3,
33
- },
34
- ],
35
- },
36
- {
37
- city: 'Краснодар',
38
- offices: [
39
- {
40
- office: 'КраснодарОфис1',
41
- rate: 2,
42
- },
43
- {
44
- office: 'КраснодарОфис2',
45
- rate: 4,
46
- },
47
- {
48
- office: 'КраснодарОфис3',
49
- rate: 6,
50
- },
51
- ],
52
- },
53
- ],
54
- cellDimensions: [
55
- {
56
- dimension: 'маленькая',
57
- },
58
- {
59
- dimension: 'средняя',
60
- },
61
- {
62
- dimension: 'большая',
63
- },
64
- ],
65
- cellOptions: [
66
- {
67
- option: '125x225x375',
68
- },
69
- {
70
- option: '200x300x400',
71
- },
72
- {
73
- option: '300x400x500',
74
- },
75
- ],
76
- };
77
-
78
11
  export const SafeDepositRental = JSX<SafeDepositRentalProps>(
79
- ({ context, className = '', ...rest }) => {
80
- const [days, setDays] = useState(DEFAULT_DAYS);
81
- const data = DATA;
12
+ ({ title, context, className = '', ...rest }) => {
13
+ const regions = useGetRegions();
82
14
 
83
15
  return (
84
16
  <BlockWrapper context={context} className={`bg-white px-8 py-12 ${className}`} {...rest}>
85
- <div className="flex justify-between align-top mb-6">
86
- {data?.cities?.length ? (
87
- <SafeDepositRentalForm {...data} days={days} setDays={setDays} />
88
- ) : null}
89
- <SafeDepositRentalTotal days={days} />
90
- </div>
17
+ {title ? (
18
+ <Heading title={title} headingType="h3" as="h2" className="mb-2.5 text-center" />
19
+ ) : null}
20
+ <SafeDepositRentalForm regions={regions} />
91
21
  <p className="text-s-light text-secondary-text">
92
22
  Аренда СЯ, в случае проведения процедуры купли-продажи, с использованием наличных денег
93
23
  или процедуры ипотечной сделки
@@ -1,3 +1,24 @@
1
+ export interface Tariff {
2
+ tariffType?: string;
3
+ tariffValue?: number;
4
+ }
5
+
6
+ export interface SafeBoxCase {
7
+ safeBoxCasesSize?: string;
8
+ tariffs?: Tariff[];
9
+ }
10
+
11
+ export interface SafeBoxCaseVolume {
12
+ volume?: string;
13
+ safeBoxCases?: SafeBoxCase[];
14
+ }
15
+
16
+ export interface Branch {
17
+ branchCode?: string;
18
+ address?: string;
19
+ safeBoxCaseVolumes?: SafeBoxCaseVolume[];
20
+ }
21
+
1
22
  /**
2
23
  * @title Аренда сейфовых ячеек
3
24
  */
@@ -1,164 +1,107 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { useState } from '@redneckz/uni-jsx/lib/hooks';
3
- import { UniBlockProps } from '../../types';
2
+ import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks/core';
4
3
  import { Button } from '../../ui-kit/Button/Button';
5
- import { InputRange } from '../../ui-kit/InputRange/InputRange';
6
- import { Radio } from '../../ui-kit/Radio/Radio';
7
- import { Select } from '../../ui-kit/Select/Select';
8
- import { SelectOption } from '../../ui-kit/Select/SelectOption';
4
+ import { fetchBranches } from './fetchBranches';
5
+ import { RegionsAndBranches } from './RegionsAndBranches';
6
+ import { RenderRadioButtons } from './RenderRadioButtons';
7
+ import { RentalPeriod } from './RentalPeriod';
8
+ import { SafeBoxCases } from './SafeBoxCases';
9
+ import { Branch, SafeBoxCase, SafeBoxCaseVolume } from './SafeDepositRentalContent';
10
+ import { SafeDepositRentalTotal } from './SafeDepositRentalTotal';
11
+ import type { Region } from './useGetRegions';
12
+
13
+ export interface SafeDepositRentalFormProps {
14
+ regions?: Region[];
15
+ }
9
16
 
10
- export type SafeDepositRentalFormProps = UniBlockProps;
17
+ const DEFAULT_DAYS = 26;
11
18
 
12
- // TODO: Добавить типизацию
19
+ export const SafeDepositRentalForm = JSX<SafeDepositRentalFormProps>(({ regions }) => {
20
+ const [selectedRegion, setSelectedRegion] = useState<string>('');
21
+ const [branches, setBranches] = useState<Branch[]>([]);
22
+ const [selectedBranch, setSelectedBranch] = useState<string>('');
23
+ const [selectedCaseVolume, setSelectedCaseVolume] = useState<string>('');
24
+ const [selectedBoxSize, setSelectedBoxSize] = useState<string>('');
25
+ const [days, setDays] = useState<number>(DEFAULT_DAYS);
13
26
 
14
- export const SafeDepositRentalForm = JSX<any>(
15
- ({ cities, cellDimensions, cellOptions, days, setDays }) => {
16
- return (
17
- <div className="flex-1 mr-9">
18
- {cities.length ? <CitiesOffices cities={cities} /> : null}
19
- {renderRentalPeriod(days, setDays)}
20
- {cellDimensions.length && cellOptions.length ? (
21
- <DimensionsOptions cellDimensions={cellDimensions} cellOptions={cellOptions} />
22
- ) : null}
23
- <span className="text-secondary-text text-l-light">Тип договора</span>
24
- <div className="flex justify-between items-center mt-5">
25
- <RadioButtons />
26
- <Button text="Офисы на карте" version="primary" />
27
- </div>
28
- </div>
29
- );
30
- },
31
- );
27
+ useEffect(() => {
28
+ setSelectedRegion(getInitialValueSelectedRegion(regions));
29
+ }, [regions]);
32
30
 
33
- const CitiesOffices = JSX<any>(({ cities }) => {
34
- const [selectedCity, setSelectedCity] = useState(cities[0].city);
31
+ useEffect(() => {
32
+ if (selectedRegion) {
33
+ fetchBranches(selectedRegion).then((result) => {
34
+ setBranches(result);
35
+ });
36
+ } else {
37
+ setBranches([]);
38
+ }
35
39
 
36
- const setSelected = (_) => setSelectedCity(_);
40
+ setSelectedBranch('');
41
+ setSelectedCaseVolume('');
42
+ setSelectedBoxSize('');
43
+ }, [regions, selectedRegion]);
37
44
 
38
- const offices = cities.find((_) => _.city === selectedCity).offices;
45
+ const onSelectedBranch = (value: string) => {
46
+ setSelectedBranch(value);
47
+ setSelectedCaseVolume('');
48
+ setSelectedBoxSize('');
49
+ };
39
50
 
40
- return (
41
- <div className="flex justify-between mb-6">
42
- <div className="w-full mr-4">
43
- {cities.length
44
- ? renderSelect({
45
- data: cities,
46
- field: 'city',
47
- selected: selectedCity,
48
- setSelected,
49
- label: 'Город',
50
- })
51
- : null}
52
- </div>
53
- <div className="w-full">
54
- {offices.length
55
- ? renderSelect({
56
- data: offices,
57
- field: 'office',
58
- selected: offices[0],
59
- setSelected,
60
- label: 'Отделение',
61
- })
62
- : null}
63
- </div>
64
- </div>
65
- );
66
- });
51
+ const onSelectedCaseVolume = (value: string) => {
52
+ setSelectedCaseVolume(value);
53
+ setSelectedBoxSize('');
54
+ };
67
55
 
68
- const DimensionsOptions = JSX<any>(({ cellDimensions, cellOptions }) => {
69
- const [selectedDimension, setSelectedDimension] = useState(cellDimensions[0].dimension);
70
- const [selectedOption, setSelectedOption] = useState(cellOptions[0].option);
56
+ const branch = getBranch(branches, selectedBranch);
57
+ const caseVolumes = getCaseVolumes(branch?.safeBoxCaseVolumes);
58
+
59
+ const safeBoxCases = getCaseVolume(branch?.safeBoxCaseVolumes, selectedCaseVolume)?.safeBoxCases;
60
+
61
+ const tariffs = getTariffs(safeBoxCases, selectedBoxSize);
71
62
 
72
63
  return (
73
- <div className="flex justify-between mb-6">
74
- <div className="mr-4 w-full">
75
- {cellDimensions.length
76
- ? renderSelect({
77
- data: cellDimensions,
78
- field: 'dimension',
79
- selected: selectedDimension,
80
- setSelected: setSelectedDimension,
81
- label: 'Размер ячейки',
82
- })
83
- : null}
84
- </div>
85
- <div className="w-full">
86
- {cellOptions.length
87
- ? renderSelect({
88
- data: cellOptions,
89
- field: 'option',
90
- selected: selectedOption,
91
- setSelected: setSelectedOption,
92
- label: 'Параметры ячейки, мм (ВхШхД)',
93
- })
94
- : null}
64
+ <div className="flex justify-between align-top mb-6">
65
+ <div className="flex-1 mr-9">
66
+ <RegionsAndBranches
67
+ regions={regions}
68
+ selectedRegion={selectedRegion}
69
+ onSelectedRegion={setSelectedRegion}
70
+ branches={branches}
71
+ selectedBranch={selectedBranch}
72
+ onSelectedBranch={onSelectedBranch}
73
+ />
74
+ <RentalPeriod days={days} setDays={setDays} />
75
+ <SafeBoxCases
76
+ caseVolumes={caseVolumes}
77
+ selectedCaseVolume={selectedCaseVolume}
78
+ onSelectedCaseVolume={onSelectedCaseVolume}
79
+ safeBoxCases={safeBoxCases}
80
+ selectedBoxSize={selectedBoxSize}
81
+ onSelectedBoxSize={setSelectedBoxSize}
82
+ />
83
+ <span className="text-secondary-text text-l-light">Тип договора</span>
84
+ <div className="flex justify-between items-center mt-5">
85
+ <RenderRadioButtons />
86
+ <Button text="Офисы на карте" version="primary" />
87
+ </div>
95
88
  </div>
89
+ <SafeDepositRentalTotal days={days} tariffs={tariffs} />
96
90
  </div>
97
91
  );
98
92
  });
99
93
 
100
- interface SelectProps {
101
- data: any[];
102
- field: string;
103
- selected: string;
104
- setSelected: (value: string) => void;
105
- label: string;
106
- }
94
+ const getInitialValueSelectedRegion = (regions?: Region[]) =>
95
+ regions?.find((_) => _.name === 'Москва')?.code || '';
107
96
 
108
- const renderSelect = (props: SelectProps) => {
109
- const { data, field, selected, setSelected, label } = props;
97
+ const getBranch = (branches: Branch[], selectedBranch: string) =>
98
+ branches.find((_) => _.branchCode === selectedBranch);
110
99
 
111
- return (
112
- <div>
113
- <span className="block text-m-light mb-2">{label}</span>
114
- <Select
115
- className="h-14 border border-gray p-4 rounded-md text-s w-full cursor-pointer"
116
- value={selected}
117
- onChange={(_) => setSelected(_)}
118
- >
119
- {data.map((_, i) => (
120
- <SelectOption key={String(i)} value={_?.[field]}>
121
- {_?.[field]}
122
- </SelectOption>
123
- ))}
124
- </Select>
125
- </div>
126
- );
127
- };
100
+ const getCaseVolumes = (safeBoxCaseVolumes?: SafeBoxCaseVolume[]) =>
101
+ safeBoxCaseVolumes?.length ? safeBoxCaseVolumes?.filter((_) => _?.safeBoxCases?.length) : [];
128
102
 
129
- export const renderRentalPeriod = (days, setDays) => {
130
- const items = ['От 1 дня', 'До 365 дней'];
103
+ const getCaseVolume = (caseVolumes?: SafeBoxCaseVolume[], selectedCaseVolume?: string) =>
104
+ caseVolumes?.find((_) => _.volume === selectedCaseVolume);
131
105
 
132
- return (
133
- <div className="mb-6">
134
- <span className="block text-m-light mb-[3px]">Срок аренды</span>
135
- <InputRange min={1} max={365} value={days} items={items} onChange={setDays} />
136
- </div>
137
- );
138
- };
139
-
140
- // TODO: В качестве компонента не годится
141
- const RadioButtons = JSX<any>(() => {
142
- const [selected, setSelected] = useState('option2');
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
- });
106
+ const getTariffs = (safeBoxCases?: SafeBoxCase[], selectedBoxSize?: string) =>
107
+ safeBoxCases?.find((_) => _.safeBoxCasesSize === selectedBoxSize)?.tariffs;
@@ -1,14 +1,14 @@
1
- import type { UniBlockProps } from '../../types';
1
+ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { Img } from '../../ui-kit/Img/Img';
3
+ import { Tariff } from './SafeDepositRentalContent';
3
4
 
4
- export type SafeDepositRentalTotalProps = UniBlockProps;
5
-
6
- type Days = {
5
+ export interface SafeDepositRentalTotalProps {
7
6
  days: number;
8
- };
7
+ tariffs?: Tariff[];
8
+ }
9
9
 
10
- export const SafeDepositRentalTotal = ({ days }: Days) => {
11
- const price = calculatePrice(days);
10
+ export const SafeDepositRentalTotal = JSX<SafeDepositRentalTotalProps>(({ days, tariffs = [] }) => {
11
+ const price = calculatePrice(days, tariffs);
12
12
 
13
13
  return (
14
14
  <div className="flex flex-col justify-between">
@@ -25,9 +25,9 @@ export const SafeDepositRentalTotal = ({ days }: Days) => {
25
25
  </div>
26
26
  </div>
27
27
  );
28
- };
28
+ });
29
29
 
30
- const renderTotal = (label, total, className = '') => {
30
+ const renderTotal = (label: string, total: string | number, className = '') => {
31
31
  return (
32
32
  <div className={className}>
33
33
  <span className="block text-m-light mb-1">{label}</span>
@@ -36,22 +36,30 @@ const renderTotal = (label, total, className = '') => {
36
36
  );
37
37
  };
38
38
 
39
- const calculatePrice = (days: number) => {
40
- let TariffType = 1;
39
+ const calculatePrice = (days: number, tariffs: Tariff[]) => {
40
+ const tariffType = getTariffType(days);
41
+
42
+ const tariffValue = tariffs?.find((_) => _.tariffType === String(tariffType))?.tariffValue || 0;
43
+
44
+ return days * tariffValue;
45
+ };
46
+
47
+ const getTariffType = (days) => {
48
+ let tariffType = 1;
41
49
 
42
50
  switch (true) {
43
51
  case days > 30 && days <= 90:
44
- TariffType = 2;
52
+ tariffType = 2;
45
53
  break;
46
54
 
47
55
  case days > 90 && days <= 180:
48
- TariffType = 3;
56
+ tariffType = 3;
49
57
  break;
50
58
 
51
59
  case days > 180 && days <= 365:
52
- TariffType = 4;
60
+ tariffType = 4;
53
61
  break;
54
62
  }
55
63
 
56
- return days * TariffType;
64
+ return tariffType;
57
65
  };
@@ -0,0 +1,45 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { Select } from '../../ui-kit/Select/Select';
3
+ import { SelectOption } from '../../ui-kit/Select/SelectOption';
4
+
5
+ interface WrapperSelectProps {
6
+ data: Record<string, any>[];
7
+ fieldLabel: string;
8
+ fieldValue?: string;
9
+ selected: string;
10
+ setSelected: (value: string) => void;
11
+ label: string;
12
+ placeholder?: string;
13
+ }
14
+
15
+ export const WrapperSelect = JSX<WrapperSelectProps>(
16
+ ({
17
+ data,
18
+ fieldLabel,
19
+ fieldValue,
20
+ selected,
21
+ placeholder = 'Выберите значение',
22
+ setSelected,
23
+ label,
24
+ }) => {
25
+ return (
26
+ <div>
27
+ <span className="block text-m-light mb-2">{label}</span>
28
+ <Select
29
+ className={`h-14 border border-gray p-4 rounded-md text-s w-full cursor-pointer ${
30
+ !selected ? 'text-secondary-text' : ''
31
+ }`}
32
+ value={selected}
33
+ onChange={(_) => setSelected(_)}
34
+ >
35
+ <SelectOption value="">{placeholder}</SelectOption>
36
+ {data.map((_, i) => (
37
+ <SelectOption key={String(i)} value={_?.[fieldValue || fieldLabel]}>
38
+ {_?.[fieldLabel]}
39
+ </SelectOption>
40
+ ))}
41
+ </Select>
42
+ </div>
43
+ );
44
+ },
45
+ );
@@ -0,0 +1,21 @@
1
+ import { Branch } from './SafeDepositRentalContent';
2
+
3
+ const BRANCHES_URL = '/api/v1/safeboxes';
4
+
5
+ export async function fetchBranches(regionCode: string): Promise<Branch[]> {
6
+ try {
7
+ const response = await fetch(BRANCHES_URL + `?regionCode=${regionCode}`, {
8
+ headers: {
9
+ 'Content-Type': 'application/json',
10
+ },
11
+ });
12
+
13
+ const result = await response.json();
14
+
15
+ return Promise.resolve(result);
16
+ } catch (err) {
17
+ console.error(err);
18
+
19
+ return Promise.reject();
20
+ }
21
+ }
@@ -0,0 +1,16 @@
1
+ import { useAsyncData } from '@redneckz/uni-jsx/lib/hooks/useAsyncData';
2
+ import { fetchJSONUnsafe } from '../../utils/fetchJSON';
3
+
4
+ const REGIONS_URL = '/api/v1/admin/regions';
5
+
6
+ export interface Region {
7
+ id?: number;
8
+ code?: string;
9
+ name?: string;
10
+ }
11
+
12
+ export function useGetRegions(): Region[] {
13
+ const { data } = useAsyncData<Region[]>(REGIONS_URL, fetchJSONUnsafe);
14
+
15
+ return data || [];
16
+ }