@redneckz/wildless-cms-uni-blocks 0.14.548 → 0.14.549

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 (381) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +147 -94
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  5. package/bundle/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  6. package/bundle/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  7. package/bundle/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  8. package/bundle/components/ApplicationForm/ProductField.d.ts +2 -0
  9. package/bundle/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  10. package/bundle/components/ApplicationForm/{contants.d.ts → constants.d.ts} +2 -0
  11. package/bundle/components/ApplicationForm/getField.d.ts +0 -4
  12. package/bundle/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  13. package/bundle/components/ApplicationForm/isRenderField.d.ts +6 -0
  14. package/bundle/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  15. package/bundle/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  16. package/bundle/components/CalculatorDeposit/isRubles.d.ts +1 -0
  17. package/bundle/components/CalculatorDeposit/utils.d.ts +17 -0
  18. package/bundle/hooks/useForm.d.ts +2 -1
  19. package/bundle/hooks/useRegions.d.ts +2 -1
  20. package/bundle/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  21. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  22. package/dist/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  23. package/dist/components/ApplicationForm/FeedbackMethodField.js +2 -2
  24. package/dist/components/ApplicationForm/FeedbackMethodField.js.map +1 -1
  25. package/dist/components/ApplicationForm/FeedbackTypeField.js +3 -3
  26. package/dist/components/ApplicationForm/FeedbackTypeField.js.map +1 -1
  27. package/dist/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  28. package/dist/components/ApplicationForm/LocalitiesField.js +24 -0
  29. package/dist/components/ApplicationForm/LocalitiesField.js.map +1 -0
  30. package/dist/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  31. package/dist/components/ApplicationForm/PartnerCommentsField.js +6 -8
  32. package/dist/components/ApplicationForm/PartnerCommentsField.js.map +1 -1
  33. package/dist/components/ApplicationForm/ProductField.d.ts +2 -0
  34. package/dist/components/ApplicationForm/ProductField.js +10 -0
  35. package/dist/components/ApplicationForm/ProductField.js.map +1 -0
  36. package/dist/components/ApplicationForm/RegionField.js +2 -2
  37. package/dist/components/ApplicationForm/RegionField.js.map +1 -1
  38. package/dist/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  39. package/dist/components/ApplicationForm/SecondaryPhoneField.js +14 -0
  40. package/dist/components/ApplicationForm/SecondaryPhoneField.js.map +1 -0
  41. package/dist/components/ApplicationForm/ServiceDirectionField.js +2 -2
  42. package/dist/components/ApplicationForm/ServiceDirectionField.js.map +1 -1
  43. package/dist/components/ApplicationForm/UltraPremiumField.js +2 -2
  44. package/dist/components/ApplicationForm/UltraPremiumField.js.map +1 -1
  45. package/{lib/components/ApplicationForm/contants.d.ts → dist/components/ApplicationForm/constants.d.ts} +2 -0
  46. package/dist/components/ApplicationForm/constants.js +34 -0
  47. package/dist/components/ApplicationForm/constants.js.map +1 -0
  48. package/dist/components/ApplicationForm/getField.d.ts +0 -4
  49. package/dist/components/ApplicationForm/getField.js +13 -11
  50. package/dist/components/ApplicationForm/getField.js.map +1 -1
  51. package/dist/components/ApplicationForm/getInitialFormState.js +6 -6
  52. package/dist/components/ApplicationForm/getInitialFormState.js.map +1 -1
  53. package/dist/components/ApplicationForm/getObjectValidator.js +3 -0
  54. package/dist/components/ApplicationForm/getObjectValidator.js.map +1 -1
  55. package/dist/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  56. package/dist/components/ApplicationForm/getRegionUrl.js +6 -0
  57. package/dist/components/ApplicationForm/getRegionUrl.js.map +1 -0
  58. package/dist/components/ApplicationForm/isRenderField.d.ts +6 -0
  59. package/dist/components/ApplicationForm/isRenderField.js +9 -0
  60. package/dist/components/ApplicationForm/isRenderField.js.map +1 -0
  61. package/dist/components/CalculatorDeposit/CalculatorDeposit.js +25 -47
  62. package/dist/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
  63. package/dist/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  64. package/dist/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  65. package/dist/components/CalculatorDeposit/getDepositCalculatorParams.js +15 -11
  66. package/dist/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  67. package/dist/components/CalculatorDeposit/isRubles.d.ts +1 -0
  68. package/dist/components/CalculatorDeposit/isRubles.js +5 -0
  69. package/dist/components/CalculatorDeposit/isRubles.js.map +1 -0
  70. package/dist/components/CalculatorDeposit/renderDepositParamsForm.js +4 -3
  71. package/dist/components/CalculatorDeposit/renderDepositParamsForm.js.map +1 -1
  72. package/dist/components/CalculatorDeposit/utils.d.ts +17 -0
  73. package/dist/components/CalculatorDeposit/utils.js +32 -0
  74. package/dist/components/CalculatorDeposit/utils.js.map +1 -0
  75. package/dist/hooks/useForm.d.ts +2 -1
  76. package/dist/hooks/useForm.js +22 -12
  77. package/dist/hooks/useForm.js.map +1 -1
  78. package/dist/hooks/useRegions.d.ts +2 -1
  79. package/dist/hooks/useRegions.js +2 -2
  80. package/dist/hooks/useRegions.js.map +1 -1
  81. package/dist/ui-kit/Calculator/CalculatorStyle.js +1 -1
  82. package/dist/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  83. package/dist/ui-kit/Calculator/getDefaultParams.js +1 -1
  84. package/dist/ui-kit/Calculator/getDefaultParams.js.map +1 -1
  85. package/lib/common.css +1 -1
  86. package/lib/components/ApplicationForm/ApplicationForm.fixture.d.ts +1 -0
  87. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  88. package/lib/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  89. package/lib/components/ApplicationForm/FeedbackMethodField.js +1 -1
  90. package/lib/components/ApplicationForm/FeedbackMethodField.js.map +1 -1
  91. package/lib/components/ApplicationForm/FeedbackTypeField.js +1 -1
  92. package/lib/components/ApplicationForm/FeedbackTypeField.js.map +1 -1
  93. package/lib/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  94. package/lib/components/ApplicationForm/LocalitiesField.js +22 -0
  95. package/lib/components/ApplicationForm/LocalitiesField.js.map +1 -0
  96. package/lib/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  97. package/lib/components/ApplicationForm/PartnerCommentsField.js +5 -7
  98. package/lib/components/ApplicationForm/PartnerCommentsField.js.map +1 -1
  99. package/lib/components/ApplicationForm/ProductField.d.ts +2 -0
  100. package/lib/components/ApplicationForm/ProductField.js +8 -0
  101. package/lib/components/ApplicationForm/ProductField.js.map +1 -0
  102. package/lib/components/ApplicationForm/RegionField.js +2 -2
  103. package/lib/components/ApplicationForm/RegionField.js.map +1 -1
  104. package/lib/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  105. package/lib/components/ApplicationForm/SecondaryPhoneField.js +12 -0
  106. package/lib/components/ApplicationForm/SecondaryPhoneField.js.map +1 -0
  107. package/lib/components/ApplicationForm/ServiceDirectionField.js +1 -1
  108. package/lib/components/ApplicationForm/ServiceDirectionField.js.map +1 -1
  109. package/lib/components/ApplicationForm/UltraPremiumField.js +1 -1
  110. package/lib/components/ApplicationForm/UltraPremiumField.js.map +1 -1
  111. package/{dist/components/ApplicationForm/contants.d.ts → lib/components/ApplicationForm/constants.d.ts} +2 -0
  112. package/lib/components/ApplicationForm/{contants.js → constants.js} +10 -1
  113. package/lib/components/ApplicationForm/constants.js.map +1 -0
  114. package/lib/components/ApplicationForm/getField.d.ts +0 -4
  115. package/lib/components/ApplicationForm/getField.js +11 -8
  116. package/lib/components/ApplicationForm/getField.js.map +1 -1
  117. package/lib/components/ApplicationForm/getInitialFormState.js +1 -1
  118. package/lib/components/ApplicationForm/getInitialFormState.js.map +1 -1
  119. package/lib/components/ApplicationForm/getObjectValidator.js +3 -0
  120. package/lib/components/ApplicationForm/getObjectValidator.js.map +1 -1
  121. package/lib/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  122. package/lib/components/ApplicationForm/getRegionUrl.js +3 -0
  123. package/lib/components/ApplicationForm/getRegionUrl.js.map +1 -0
  124. package/lib/components/ApplicationForm/isRenderField.d.ts +6 -0
  125. package/lib/components/ApplicationForm/isRenderField.js +6 -0
  126. package/lib/components/ApplicationForm/isRenderField.js.map +1 -0
  127. package/lib/components/CalculatorDeposit/CalculatorDeposit.js +25 -47
  128. package/lib/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
  129. package/lib/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  130. package/lib/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  131. package/lib/components/CalculatorDeposit/getDepositCalculatorParams.js +15 -11
  132. package/lib/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  133. package/lib/components/CalculatorDeposit/isRubles.d.ts +1 -0
  134. package/lib/components/CalculatorDeposit/isRubles.js +2 -0
  135. package/lib/components/CalculatorDeposit/isRubles.js.map +1 -0
  136. package/lib/components/CalculatorDeposit/renderDepositParamsForm.js +4 -3
  137. package/lib/components/CalculatorDeposit/renderDepositParamsForm.js.map +1 -1
  138. package/lib/components/CalculatorDeposit/utils.d.ts +17 -0
  139. package/lib/components/CalculatorDeposit/utils.js +25 -0
  140. package/lib/components/CalculatorDeposit/utils.js.map +1 -0
  141. package/lib/hooks/useForm.d.ts +2 -1
  142. package/lib/hooks/useForm.js +23 -13
  143. package/lib/hooks/useForm.js.map +1 -1
  144. package/lib/hooks/useRegions.d.ts +2 -1
  145. package/lib/hooks/useRegions.js +2 -2
  146. package/lib/hooks/useRegions.js.map +1 -1
  147. package/lib/ui-kit/Calculator/CalculatorStyle.js +1 -1
  148. package/lib/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  149. package/lib/ui-kit/Calculator/getDefaultParams.js +1 -1
  150. package/lib/ui-kit/Calculator/getDefaultParams.js.map +1 -1
  151. package/mobile/bundle/bundle.umd.js +147 -94
  152. package/mobile/bundle/bundle.umd.min.js +1 -1
  153. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  154. package/mobile/bundle/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  155. package/mobile/bundle/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  156. package/mobile/bundle/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  157. package/mobile/bundle/components/ApplicationForm/ProductField.d.ts +2 -0
  158. package/mobile/bundle/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  159. package/mobile/bundle/components/ApplicationForm/{contants.d.ts → constants.d.ts} +2 -0
  160. package/mobile/bundle/components/ApplicationForm/getField.d.ts +0 -4
  161. package/mobile/bundle/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  162. package/mobile/bundle/components/ApplicationForm/isRenderField.d.ts +6 -0
  163. package/mobile/bundle/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  164. package/mobile/bundle/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  165. package/mobile/bundle/components/CalculatorDeposit/isRubles.d.ts +1 -0
  166. package/mobile/bundle/components/CalculatorDeposit/utils.d.ts +17 -0
  167. package/mobile/bundle/hooks/useForm.d.ts +2 -1
  168. package/mobile/bundle/hooks/useRegions.d.ts +2 -1
  169. package/mobile/bundle/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  170. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  171. package/mobile/dist/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  172. package/mobile/dist/components/ApplicationForm/FeedbackMethodField.js +2 -2
  173. package/mobile/dist/components/ApplicationForm/FeedbackMethodField.js.map +1 -1
  174. package/mobile/dist/components/ApplicationForm/FeedbackTypeField.js +3 -3
  175. package/mobile/dist/components/ApplicationForm/FeedbackTypeField.js.map +1 -1
  176. package/mobile/dist/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  177. package/mobile/dist/components/ApplicationForm/LocalitiesField.js +24 -0
  178. package/mobile/dist/components/ApplicationForm/LocalitiesField.js.map +1 -0
  179. package/mobile/dist/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  180. package/mobile/dist/components/ApplicationForm/PartnerCommentsField.js +6 -8
  181. package/mobile/dist/components/ApplicationForm/PartnerCommentsField.js.map +1 -1
  182. package/mobile/dist/components/ApplicationForm/ProductField.d.ts +2 -0
  183. package/mobile/dist/components/ApplicationForm/ProductField.js +10 -0
  184. package/mobile/dist/components/ApplicationForm/ProductField.js.map +1 -0
  185. package/mobile/dist/components/ApplicationForm/RegionField.js +2 -2
  186. package/mobile/dist/components/ApplicationForm/RegionField.js.map +1 -1
  187. package/mobile/dist/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  188. package/mobile/dist/components/ApplicationForm/SecondaryPhoneField.js +14 -0
  189. package/mobile/dist/components/ApplicationForm/SecondaryPhoneField.js.map +1 -0
  190. package/mobile/dist/components/ApplicationForm/ServiceDirectionField.js +2 -2
  191. package/mobile/dist/components/ApplicationForm/ServiceDirectionField.js.map +1 -1
  192. package/mobile/dist/components/ApplicationForm/UltraPremiumField.js +2 -2
  193. package/mobile/dist/components/ApplicationForm/UltraPremiumField.js.map +1 -1
  194. package/mobile/dist/components/ApplicationForm/constants.d.ts +7 -0
  195. package/mobile/dist/components/ApplicationForm/constants.js +34 -0
  196. package/mobile/dist/components/ApplicationForm/constants.js.map +1 -0
  197. package/mobile/dist/components/ApplicationForm/getField.d.ts +0 -4
  198. package/mobile/dist/components/ApplicationForm/getField.js +13 -11
  199. package/mobile/dist/components/ApplicationForm/getField.js.map +1 -1
  200. package/mobile/dist/components/ApplicationForm/getInitialFormState.js +6 -6
  201. package/mobile/dist/components/ApplicationForm/getInitialFormState.js.map +1 -1
  202. package/mobile/dist/components/ApplicationForm/getObjectValidator.js +3 -0
  203. package/mobile/dist/components/ApplicationForm/getObjectValidator.js.map +1 -1
  204. package/mobile/dist/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  205. package/mobile/dist/components/ApplicationForm/getRegionUrl.js +6 -0
  206. package/mobile/dist/components/ApplicationForm/getRegionUrl.js.map +1 -0
  207. package/mobile/dist/components/ApplicationForm/isRenderField.d.ts +6 -0
  208. package/mobile/dist/components/ApplicationForm/isRenderField.js +9 -0
  209. package/mobile/dist/components/ApplicationForm/isRenderField.js.map +1 -0
  210. package/mobile/dist/components/CalculatorDeposit/CalculatorDeposit.js +25 -47
  211. package/mobile/dist/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
  212. package/mobile/dist/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  213. package/mobile/dist/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  214. package/mobile/dist/components/CalculatorDeposit/getDepositCalculatorParams.js +15 -11
  215. package/mobile/dist/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  216. package/mobile/dist/components/CalculatorDeposit/isRubles.d.ts +1 -0
  217. package/mobile/dist/components/CalculatorDeposit/isRubles.js +5 -0
  218. package/mobile/dist/components/CalculatorDeposit/isRubles.js.map +1 -0
  219. package/mobile/dist/components/CalculatorDeposit/renderDepositParamsForm.js +4 -3
  220. package/mobile/dist/components/CalculatorDeposit/renderDepositParamsForm.js.map +1 -1
  221. package/mobile/dist/components/CalculatorDeposit/utils.d.ts +17 -0
  222. package/mobile/dist/components/CalculatorDeposit/utils.js +32 -0
  223. package/mobile/dist/components/CalculatorDeposit/utils.js.map +1 -0
  224. package/mobile/dist/hooks/useForm.d.ts +2 -1
  225. package/mobile/dist/hooks/useForm.js +22 -12
  226. package/mobile/dist/hooks/useForm.js.map +1 -1
  227. package/mobile/dist/hooks/useRegions.d.ts +2 -1
  228. package/mobile/dist/hooks/useRegions.js +2 -2
  229. package/mobile/dist/hooks/useRegions.js.map +1 -1
  230. package/mobile/dist/ui-kit/Calculator/CalculatorStyle.js +1 -1
  231. package/mobile/dist/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  232. package/mobile/dist/ui-kit/Calculator/getDefaultParams.js +1 -1
  233. package/mobile/dist/ui-kit/Calculator/getDefaultParams.js.map +1 -1
  234. package/mobile/lib/common.css +1 -1
  235. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +3 -3
  236. package/mobile/lib/components/ApplicationForm/CustomFieldProps.d.ts +1 -0
  237. package/mobile/lib/components/ApplicationForm/FeedbackMethodField.js +1 -1
  238. package/mobile/lib/components/ApplicationForm/FeedbackMethodField.js.map +1 -1
  239. package/mobile/lib/components/ApplicationForm/FeedbackTypeField.js +1 -1
  240. package/mobile/lib/components/ApplicationForm/FeedbackTypeField.js.map +1 -1
  241. package/mobile/lib/components/ApplicationForm/LocalitiesField.d.ts +2 -0
  242. package/mobile/lib/components/ApplicationForm/LocalitiesField.js +22 -0
  243. package/mobile/lib/components/ApplicationForm/LocalitiesField.js.map +1 -0
  244. package/mobile/lib/components/ApplicationForm/PartnerCommentsField.d.ts +1 -1
  245. package/mobile/lib/components/ApplicationForm/PartnerCommentsField.js +5 -7
  246. package/mobile/lib/components/ApplicationForm/PartnerCommentsField.js.map +1 -1
  247. package/mobile/lib/components/ApplicationForm/ProductField.d.ts +2 -0
  248. package/mobile/lib/components/ApplicationForm/ProductField.js +8 -0
  249. package/mobile/lib/components/ApplicationForm/ProductField.js.map +1 -0
  250. package/mobile/lib/components/ApplicationForm/RegionField.js +2 -2
  251. package/mobile/lib/components/ApplicationForm/RegionField.js.map +1 -1
  252. package/mobile/lib/components/ApplicationForm/SecondaryPhoneField.d.ts +2 -0
  253. package/mobile/lib/components/ApplicationForm/SecondaryPhoneField.js +12 -0
  254. package/mobile/lib/components/ApplicationForm/SecondaryPhoneField.js.map +1 -0
  255. package/mobile/lib/components/ApplicationForm/ServiceDirectionField.js +1 -1
  256. package/mobile/lib/components/ApplicationForm/ServiceDirectionField.js.map +1 -1
  257. package/mobile/lib/components/ApplicationForm/UltraPremiumField.js +1 -1
  258. package/mobile/lib/components/ApplicationForm/UltraPremiumField.js.map +1 -1
  259. package/mobile/lib/components/ApplicationForm/constants.d.ts +7 -0
  260. package/mobile/lib/components/ApplicationForm/{contants.js → constants.js} +10 -1
  261. package/mobile/lib/components/ApplicationForm/constants.js.map +1 -0
  262. package/mobile/lib/components/ApplicationForm/getField.d.ts +0 -4
  263. package/mobile/lib/components/ApplicationForm/getField.js +11 -8
  264. package/mobile/lib/components/ApplicationForm/getField.js.map +1 -1
  265. package/mobile/lib/components/ApplicationForm/getInitialFormState.js +1 -1
  266. package/mobile/lib/components/ApplicationForm/getInitialFormState.js.map +1 -1
  267. package/mobile/lib/components/ApplicationForm/getObjectValidator.js +3 -0
  268. package/mobile/lib/components/ApplicationForm/getObjectValidator.js.map +1 -1
  269. package/mobile/lib/components/ApplicationForm/getRegionUrl.d.ts +1 -0
  270. package/mobile/lib/components/ApplicationForm/getRegionUrl.js +3 -0
  271. package/mobile/lib/components/ApplicationForm/getRegionUrl.js.map +1 -0
  272. package/mobile/lib/components/ApplicationForm/isRenderField.d.ts +6 -0
  273. package/mobile/lib/components/ApplicationForm/isRenderField.js +6 -0
  274. package/mobile/lib/components/ApplicationForm/isRenderField.js.map +1 -0
  275. package/mobile/lib/components/CalculatorDeposit/CalculatorDeposit.js +25 -47
  276. package/mobile/lib/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
  277. package/mobile/lib/components/CalculatorDeposit/CalculatorDepositContent.d.ts +11 -2
  278. package/mobile/lib/components/CalculatorDeposit/getDepositCalculatorParams.d.ts +2 -1
  279. package/mobile/lib/components/CalculatorDeposit/getDepositCalculatorParams.js +15 -11
  280. package/mobile/lib/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  281. package/mobile/lib/components/CalculatorDeposit/isRubles.d.ts +1 -0
  282. package/mobile/lib/components/CalculatorDeposit/isRubles.js +2 -0
  283. package/mobile/lib/components/CalculatorDeposit/isRubles.js.map +1 -0
  284. package/mobile/lib/components/CalculatorDeposit/renderDepositParamsForm.js +4 -3
  285. package/mobile/lib/components/CalculatorDeposit/renderDepositParamsForm.js.map +1 -1
  286. package/mobile/lib/components/CalculatorDeposit/utils.d.ts +17 -0
  287. package/mobile/lib/components/CalculatorDeposit/utils.js +25 -0
  288. package/mobile/lib/components/CalculatorDeposit/utils.js.map +1 -0
  289. package/mobile/lib/hooks/useForm.d.ts +2 -1
  290. package/mobile/lib/hooks/useForm.js +23 -13
  291. package/mobile/lib/hooks/useForm.js.map +1 -1
  292. package/mobile/lib/hooks/useRegions.d.ts +2 -1
  293. package/mobile/lib/hooks/useRegions.js +2 -2
  294. package/mobile/lib/hooks/useRegions.js.map +1 -1
  295. package/mobile/lib/ui-kit/Calculator/CalculatorStyle.js +1 -1
  296. package/mobile/lib/ui-kit/Calculator/getDefaultParams.d.ts +1 -2
  297. package/mobile/lib/ui-kit/Calculator/getDefaultParams.js +1 -1
  298. package/mobile/lib/ui-kit/Calculator/getDefaultParams.js.map +1 -1
  299. package/mobile/src/components/ApplicationForm/ApplicationForm.example.json +79 -0
  300. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +6 -2
  301. package/mobile/src/components/ApplicationForm/CustomFieldProps.ts +1 -0
  302. package/mobile/src/components/ApplicationForm/FeedbackMethodField.tsx +1 -1
  303. package/mobile/src/components/ApplicationForm/FeedbackTypeField.tsx +1 -1
  304. package/mobile/src/components/ApplicationForm/LocalitiesField.tsx +34 -0
  305. package/mobile/src/components/ApplicationForm/PartnerCommentsField.tsx +10 -9
  306. package/mobile/src/components/ApplicationForm/ProductField.tsx +15 -0
  307. package/mobile/src/components/ApplicationForm/RegionField.tsx +2 -2
  308. package/mobile/src/components/ApplicationForm/SecondaryPhoneField.tsx +18 -0
  309. package/mobile/src/components/ApplicationForm/ServiceDirectionField.tsx +1 -1
  310. package/mobile/src/components/ApplicationForm/UltraPremiumField.tsx +1 -1
  311. package/mobile/src/components/ApplicationForm/{contants.tsx → constants.tsx} +11 -0
  312. package/mobile/src/components/ApplicationForm/getField.tsx +16 -23
  313. package/mobile/src/components/ApplicationForm/getInitialFormState.tsx +1 -1
  314. package/mobile/src/components/ApplicationForm/getObjectValidator.tsx +3 -0
  315. package/mobile/src/components/ApplicationForm/getRegionUrl.tsx +4 -0
  316. package/mobile/src/components/ApplicationForm/isRenderField.tsx +15 -0
  317. package/mobile/src/components/CalculatorDeposit/CalculatorDeposit.tsx +47 -71
  318. package/mobile/src/components/CalculatorDeposit/CalculatorDepositContent.ts +10 -1
  319. package/mobile/src/components/CalculatorDeposit/getDepositCalculatorParams.ts +14 -9
  320. package/mobile/src/components/CalculatorDeposit/isRubles.tsx +1 -0
  321. package/mobile/src/components/CalculatorDeposit/renderDepositParamsForm.tsx +5 -2
  322. package/mobile/src/components/CalculatorDeposit/utils.tsx +37 -0
  323. package/mobile/src/hooks/useForm.ts +33 -16
  324. package/mobile/src/hooks/useRegions.ts +3 -2
  325. package/mobile/src/ui-kit/Calculator/CalculatorStyle.tsx +1 -1
  326. package/mobile/src/ui-kit/Calculator/getDefaultParams.tsx +3 -3
  327. package/package.json +1 -1
  328. package/src/components/ApplicationForm/ApplicationForm.example.json +79 -0
  329. package/src/components/ApplicationForm/ApplicationForm.fixture.tsx +34 -0
  330. package/src/components/ApplicationForm/ApplicationFormContent.ts +6 -2
  331. package/src/components/ApplicationForm/CustomFieldProps.ts +1 -0
  332. package/src/components/ApplicationForm/FeedbackMethodField.tsx +1 -1
  333. package/src/components/ApplicationForm/FeedbackTypeField.tsx +1 -1
  334. package/src/components/ApplicationForm/LocalitiesField.tsx +34 -0
  335. package/src/components/ApplicationForm/PartnerCommentsField.tsx +10 -9
  336. package/src/components/ApplicationForm/ProductField.tsx +15 -0
  337. package/src/components/ApplicationForm/RegionField.tsx +2 -2
  338. package/src/components/ApplicationForm/SecondaryPhoneField.tsx +18 -0
  339. package/src/components/ApplicationForm/ServiceDirectionField.tsx +1 -1
  340. package/src/components/ApplicationForm/UltraPremiumField.tsx +1 -1
  341. package/src/components/ApplicationForm/{contants.tsx → constants.tsx} +11 -0
  342. package/src/components/ApplicationForm/getField.tsx +16 -23
  343. package/src/components/ApplicationForm/getInitialFormState.tsx +1 -1
  344. package/src/components/ApplicationForm/getObjectValidator.tsx +3 -0
  345. package/src/components/ApplicationForm/getRegionUrl.tsx +4 -0
  346. package/src/components/ApplicationForm/isRenderField.tsx +15 -0
  347. package/src/components/CalculatorDeposit/CalculatorDeposit.fixture.tsx +2 -0
  348. package/src/components/CalculatorDeposit/CalculatorDeposit.tsx +47 -71
  349. package/src/components/CalculatorDeposit/CalculatorDepositContent.ts +10 -1
  350. package/src/components/CalculatorDeposit/getDepositCalculatorParams.ts +14 -9
  351. package/src/components/CalculatorDeposit/isRubles.tsx +1 -0
  352. package/src/components/CalculatorDeposit/renderDepositParamsForm.tsx +5 -2
  353. package/src/components/CalculatorDeposit/utils.tsx +37 -0
  354. package/src/hooks/useForm.ts +33 -16
  355. package/src/hooks/useRegions.ts +3 -2
  356. package/src/ui-kit/Calculator/CalculatorStyle.tsx +1 -1
  357. package/src/ui-kit/Calculator/getDefaultParams.tsx +3 -3
  358. package/bundle/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  359. package/dist/components/ApplicationForm/contants.js +0 -25
  360. package/dist/components/ApplicationForm/contants.js.map +0 -1
  361. package/dist/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  362. package/dist/components/CalculatorDeposit/isNotRubles.js +0 -5
  363. package/dist/components/CalculatorDeposit/isNotRubles.js.map +0 -1
  364. package/lib/components/ApplicationForm/contants.js.map +0 -1
  365. package/lib/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  366. package/lib/components/CalculatorDeposit/isNotRubles.js +0 -2
  367. package/lib/components/CalculatorDeposit/isNotRubles.js.map +0 -1
  368. package/mobile/bundle/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  369. package/mobile/dist/components/ApplicationForm/contants.d.ts +0 -5
  370. package/mobile/dist/components/ApplicationForm/contants.js +0 -25
  371. package/mobile/dist/components/ApplicationForm/contants.js.map +0 -1
  372. package/mobile/dist/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  373. package/mobile/dist/components/CalculatorDeposit/isNotRubles.js +0 -5
  374. package/mobile/dist/components/CalculatorDeposit/isNotRubles.js.map +0 -1
  375. package/mobile/lib/components/ApplicationForm/contants.d.ts +0 -5
  376. package/mobile/lib/components/ApplicationForm/contants.js.map +0 -1
  377. package/mobile/lib/components/CalculatorDeposit/isNotRubles.d.ts +0 -1
  378. package/mobile/lib/components/CalculatorDeposit/isNotRubles.js +0 -2
  379. package/mobile/lib/components/CalculatorDeposit/isNotRubles.js.map +0 -1
  380. package/mobile/src/components/CalculatorDeposit/isNotRubles.tsx +0 -1
  381. package/src/components/CalculatorDeposit/isNotRubles.tsx +0 -1
@@ -1045,26 +1045,35 @@
1045
1045
 
1046
1046
  const identity = (_) => _;
1047
1047
 
1048
- const useForm = (initialState, { resetOnSubmit, onSubmit, } = {}) => {
1049
- const [formState, setFormState] = useState(initialState);
1048
+ // eslint-disable-next-line max-lines-per-function
1049
+ const useForm = (initialState, { resetOnSubmit, onSubmit, normalize, } = {}) => {
1050
+ const [formState, setFormStateUnsafe] = useState(initialState);
1051
+ const setFormState = useCallback(normalize
1052
+ ? (_) => setFormStateUnsafe(_ instanceof Function
1053
+ ? (prev) => {
1054
+ const _normalize = normalize(_(prev));
1055
+ return shellowCompare(prev, _normalize) ? prev : _normalize;
1056
+ }
1057
+ : normalize(_))
1058
+ : setFormStateUnsafe, [normalize]);
1059
+ useEffect(() => {
1060
+ if (normalize) {
1061
+ setFormStateUnsafe(normalize);
1062
+ }
1063
+ }, [normalize]);
1050
1064
  const [isDirtyForm, setDirtyForm] = useState(false);
1051
1065
  const [dirtyFieldsMap, setDirtyFieldsMap] = useState({});
1052
- const handlersMap = useRef({});
1053
1066
  const field = useCallback((fieldName, options) => {
1054
1067
  const { parse = identity, format = identity } = options || {};
1055
- if (!handlersMap.current) {
1056
- handlersMap.current = {};
1057
- }
1058
- handlersMap.current[fieldName] ||= (value) => {
1059
- setFormState((prev) => ({ ...prev, [fieldName]: parse(value) }));
1060
- setDirtyFieldsMap((prev) => ({ ...prev, [fieldName]: true }));
1061
- };
1062
1068
  return {
1063
1069
  value: format(formState[fieldName]),
1064
1070
  isDirty: isDirtyForm || dirtyFieldsMap[fieldName],
1065
- onChange: handlersMap.current[fieldName],
1071
+ onChange: (value) => {
1072
+ setFormState((prev) => ({ ...prev, [fieldName]: parse(value) }));
1073
+ setDirtyFieldsMap((prev) => ({ ...prev, [fieldName]: true }));
1074
+ },
1066
1075
  };
1067
- }, [formState, isDirtyForm, dirtyFieldsMap]);
1076
+ }, [setFormState, isDirtyForm, dirtyFieldsMap]);
1068
1077
  const update = useCallback((_) => {
1069
1078
  setFormState(_);
1070
1079
  setDirtyFieldsMap(_);
@@ -1090,6 +1099,7 @@
1090
1099
  },
1091
1100
  ];
1092
1101
  };
1102
+ const shellowCompare = (a, b) => Object.keys({ ...a, ...b }).every((key) => a[key] === b[key]);
1093
1103
 
1094
1104
  const ApplicationFormLayout = JSX((props) => {
1095
1105
  const { className, title, children, ...rest } = props;
@@ -1541,6 +1551,9 @@
1541
1551
  feedbackMethod: defaultSelectValidator,
1542
1552
  serviceType: defaultSelectValidator,
1543
1553
  serviceDirection: defaultSelectValidator,
1554
+ meetingDay: defaultValidator,
1555
+ product: defaultValidator,
1556
+ localities: defaultValidator,
1544
1557
  consentDataProcessing: agreementValidator,
1545
1558
  annualRevenue: defaultValidator,
1546
1559
  };
@@ -1770,6 +1783,15 @@
1770
1783
  { key: 'phone', text: 'Телефонный звонок' },
1771
1784
  { key: 'email', text: 'Электронное сообщение' },
1772
1785
  ];
1786
+ const PRODUCT_TYPE = [
1787
+ { key: 'Карта дебетовая', text: 'Карта дебетовая' },
1788
+ { key: 'Карта кредитная', text: 'Карта кредитная' },
1789
+ { key: 'Потребительский кредит', text: 'Потребительский кредит' },
1790
+ { key: 'Ипотечный кредит', text: 'Ипотечный кредит' },
1791
+ { key: 'Вклад', text: 'Вклад' },
1792
+ { key: 'Накопительный счет', text: 'Накопительный счет' },
1793
+ ];
1794
+ const OUT_SERVICE_URL = '/api/v1/outservice/outserviceregions';
1773
1795
 
1774
1796
  const FeedbackMethodField = JSX(({ field }) => (jsx(SelectControl, { label: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u043E\u0442\u0432\u0435\u0442\u0430", options: FEEDBACK_METHOD, ...withValidator(field('feedbackMethod'), validatorObj.feedbackMethod) })));
1775
1797
 
@@ -1783,29 +1805,51 @@
1783
1805
  return (jsx(SelectControl, { label: "\u0422\u0435\u043C\u0430", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0435\u043C\u0443", options: FEEDBACK_TYPES, ...withValidator(feedbackType, validatorObj.feedbackType) }));
1784
1806
  });
1785
1807
 
1808
+ const getRegionUrl = (typeForm) => typeForm === 'OUTSERVICE' ? OUT_SERVICE_URL : undefined;
1809
+
1786
1810
  const IsClientField = JSX(({ field }) => (jsx(CheckboxWithError, { ...field('isClient'), text: '\u042F\u0432\u043B\u044F\u044E\u0441\u044C \u043A\u043B\u0438\u0435\u043D\u0442\u043E\u043C \u0431\u0430\u043D\u043A\u0430 \u0410\u041E "\u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A"' })));
1787
1811
 
1812
+ function isRenderField({ input, field, }) {
1813
+ const { condition } = input;
1814
+ const { value } = field(condition?.name || '');
1815
+ return !condition || condition?.values?.find((_) => _ === (value?.key ?? value));
1816
+ }
1817
+
1818
+ const REGIONS_URL = '/api/v1/regions';
1819
+ function useRegions(url = REGIONS_URL) {
1820
+ const { data } = useAsyncData(url, fetchJSONUnsafe);
1821
+ return Array.isArray(data) ? data : [];
1822
+ }
1823
+
1824
+ const LocalitiesField = JSX(({ field, input }) => {
1825
+ const fieldRegion = field('region');
1826
+ const regionKey = fieldRegion?.value?.key;
1827
+ const localities = useRegions(OUT_SERVICE_URL)
1828
+ ?.find((_) => _.code === regionKey)
1829
+ ?.localities?.map((_) => ({ key: _, text: _ }));
1830
+ useEffect(() => {
1831
+ if (regionKey !== '') {
1832
+ field?.('localities')?.onChange?.('');
1833
+ }
1834
+ }, [regionKey]);
1835
+ return (jsx(SelectControl, { label: "\u041D\u0430\u0441\u0435\u043B\u0435\u043D\u043D\u044B\u0439 \u043F\u0443\u043D\u043A\u0442", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", options: localities, ...getValidation(field('localities'), validatorObj.localities, input?.required), isSearch: true }));
1836
+ });
1837
+
1788
1838
  const SlideCheckbox = JSX(({ value = false, text, type = 'checkbox', onChange }) => (jsxs("div", { role: type, "aria-checked": value, className: "flex justify-start items-center w-full cursor-pointer mb-s", onClick: () => onChange && onChange(!value), children: [jsx("div", { className: style('relative flex-shrink-0 duration-300 w-9 h-5 mr-s rounded-2xl', value ? 'bg-primary-main' : 'bg-main-divider'), children: jsx("div", { className: style('absolute opacity-80 duration-500 top-0.5 w-4 h-4 bg-white rounded-full', value ? 'left-1/2' : 'left-[5%]') }) }), text ? (jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })) : null] })));
1789
1839
 
1790
1840
  const OnlineCheckoutField = JSX(({ field }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", ...field('onlineCheckout') })) : null);
1791
1841
 
1792
- const SecondaryPhoneField = JSX(({ field }) => {
1793
- const fieldPhone = field('secondaryPhone');
1794
- return (jsx(InputPhoneControl, { label: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u0442\u0435\u043B\u0435\u0444\u043E\u043D", ...(!fieldPhone.value || fieldPhone.value === '+7 ('
1795
- ? fieldPhone
1796
- : withValidator(fieldPhone, validatorObj.secondaryPhone)) }));
1842
+ const PartnerCommentsField = JSX(({ field, input }) => {
1843
+ const { required, ...rest } = input;
1844
+ return (jsx(InputControl, { ...getValidation(field('partnerComments'), validatorObj.partnerComments, required), placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441", isTextarea: true, ...rest }));
1797
1845
  });
1798
1846
 
1799
1847
  const PosTerminalField = JSX(({ field }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 POS-\u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B", ...field('posTerminal') })) : null);
1800
1848
 
1801
- const REGIONS_URL = '/api/v1/regions';
1802
- function useRegions() {
1803
- const { data } = useAsyncData(REGIONS_URL, fetchJSONUnsafe);
1804
- return Array.isArray(data) ? data : [];
1805
- }
1849
+ const ProductField = JSX(({ field }) => (jsx(SelectControl, { placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u0440\u043E\u0434\u0443\u043A\u0442", label: "\u041F\u0440\u043E\u0434\u0443\u043A\u0442", options: PRODUCT_TYPE, ...withValidator(field('product'), validatorObj.product) })));
1806
1850
 
1807
- const RegionField = JSX(({ field, input }) => {
1808
- const regions = useRegions();
1851
+ const RegionField = JSX(({ field, input, url }) => {
1852
+ const regions = useRegions(url);
1809
1853
  return (jsx(SelectControl, { label: "\u0424\u0438\u043B\u0438\u0430\u043B", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0438\u043B\u0438\u0430\u043B", isSearch: true, options: useMemo(() => regions?.map(({ code = '', name = '' }) => ({ key: code, text: name })), [regions]), ...getValidation(field('region'), validatorObj.region, input?.required) }));
1810
1854
  });
1811
1855
 
@@ -1818,6 +1862,13 @@
1818
1862
  return (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, ...getValidation(field('region'), validatorObj.region, input?.required) }));
1819
1863
  });
1820
1864
 
1865
+ const SecondaryPhoneField = JSX(({ field }) => {
1866
+ const fieldPhone = field('secondaryPhone');
1867
+ return (jsx(InputPhoneControl, { label: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u0442\u0435\u043B\u0435\u0444\u043E\u043D", ...(!fieldPhone.value || fieldPhone.value === '+7 ('
1868
+ ? fieldPhone
1869
+ : withValidator(fieldPhone, validatorObj.secondaryPhone)) }));
1870
+ });
1871
+
1821
1872
  const ServiceDirectionField = JSX(({ field }) => (jsx(SelectControl, { label: "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435", options: SERVICE_DIRECTIONS, ...withValidator(field('serviceDirection'), validatorObj.serviceDirection) })));
1822
1873
 
1823
1874
  const MIN_CREDIT_TERM = 1;
@@ -1860,12 +1911,15 @@
1860
1911
  fullName: (jsx(InputControl, { label: "\u0424\u0418\u041E", ...getValidation(field('fullName'), validatorObj.fullName, required), ...rest })),
1861
1912
  inn: (jsx(InputControl, { label: "\u0418\u041D\u041D", type: "number", ...getValidation(field('inn'), validatorObj.inn, required) })),
1862
1913
  comment: jsx(CommentField, { field: field, input: input }),
1863
- region: isPremium ? (jsx(RegionPremiumField, { field: field })) : (jsx(RegionField, { field: field, input: input })),
1914
+ region: isPremium ? (jsx(RegionPremiumField, { field: field })) : (jsx(RegionField, { field: field, input: input, url: getRegionUrl(typeForm) })),
1864
1915
  addressBranch: jsx(AddressBranchField, { field: field, input: input, isPremium: isPremium }),
1865
1916
  birthday: (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...getValidation(field('birthday'), validatorObj.birthday, required) })),
1917
+ desiredMeetingDate: (jsx(DatePickerControl, { label: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0434\u0430\u0442\u0430 \u0432\u0441\u0442\u0440\u0435\u0447\u0438", ...getValidation(field('desiredMeetingDate'), validatorObj.meetingDay, required) })),
1918
+ product: jsx(ProductField, { field: field }),
1919
+ localities: jsx(LocalitiesField, { field: field, input: input }),
1866
1920
  isClient: jsx(IsClientField, { field: field }),
1867
1921
  consentToReceiveMaterials: (jsx(CheckboxWithError, { ...field('consentToReceiveMaterials'), text: "\u0421\u043E\u0433\u043B\u0430\u0441\u0435\u043D \u043D\u0430 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445 \u0438 \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u043E\u0432 \u043F\u043E \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u0435" })),
1868
- partnerComments: (jsx(InputControl, { ...getValidation(field('partnerComments'), validatorObj.partnerComments, required), placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441", isTextarea: true, ...rest })),
1922
+ partnerComments: jsx(PartnerCommentsField, { field: field, input: input }),
1869
1923
  collectionCount: (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432 \u0438\u043D\u043A\u0430\u0441\u0441\u0430\u0446\u0438\u0438", type: "number", ...getValidation(field('collectionCount'), validatorObj.collectionCount, required) })),
1870
1924
  acquiringType: jsx(AcquiringField, { field: field, input: input }),
1871
1925
  onlineCheckout: jsx(OnlineCheckoutField, { field: field }),
@@ -1884,11 +1938,6 @@
1884
1938
  };
1885
1939
  return isRenderField({ input, field }) ? (jsx("div", { children: InputsMap[input?.name] }, String(i))) : null;
1886
1940
  };
1887
- function isRenderField({ input, field, }) {
1888
- const { condition } = input;
1889
- const { value } = field(condition?.name || '');
1890
- return !condition || condition?.values?.find((_) => _ === (value?.key ?? value));
1891
- }
1892
1941
 
1893
1942
  const getPartnerComments = (data) => {
1894
1943
  const { acquiringType, onlineCheckout = false, posTerminal = false, term, amount, annualRevenue, } = data;
@@ -2544,7 +2593,7 @@
2544
2593
  const CalculatorStyle = {
2545
2594
  wrapper: 'flex flex-col justify-between @4xl:flex-row gap-x-4xl gap-y-7 @xl:gap-y-4xl',
2546
2595
  input: 'flex flex-col lg:max-w-80 lg:w-1/2 gap-2xl',
2547
- result: 'flex flex-col gap-y-xl min-w-60',
2596
+ result: 'flex flex-col gap-y-xl min-w-52',
2548
2597
  };
2549
2598
 
2550
2599
  const FormatValue = JSX(({ value, fractionDigits, fixed, prefix, postfix }) => (jsx(Text, { size: "text-h3", children: typeof value === 'number'
@@ -2822,7 +2871,7 @@
2822
2871
  const renderBusinessDepositParamsForm = (calculatorParams, field) => (jsxs("div", { className: "space-y-s", children: [jsx(Text, { color: "text-secondary-text", font: "font-light", children: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B" }), jsxs("div", { className: "flex flex-col gap-y-lg 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 })] })] }));
2823
2872
 
2824
2873
  const getDefaultParamsMin = (rateRows) => getDefaultParams([(i, acc) => i < acc, (i, prev) => i?.maxSum > prev?.maxSum], rateRows);
2825
- const getDefaultParamsMax = (rateRows) => getDefaultParams([(i, acc) => i > acc, (i, prev) => i?.minSum < prev?.minSum], rateRows);
2874
+ const getDefaultParamsMax = (rateRows = [], isNewClient = false) => getDefaultParams([(i, acc) => i > acc, (i, prev) => i?.minSum < prev?.minSum], rateRows?.filter((_) => isNewClient === Boolean(_?.isNewClient)));
2826
2875
  const getDefaultParams = (comparators, rateRows) => {
2827
2876
  if (!rateRows?.length) {
2828
2877
  return undefined;
@@ -3036,8 +3085,6 @@
3036
3085
  });
3037
3086
  const renderCreditParamsForm$1 = (params, field) => (jsxs("div", { className: "flex flex-col gap-y-2xl", children: [params.isShowSalaryClient ? (jsx(Checkbox, { text: `Получаю зарплату на счёт\nв Россельхозбанке`, ...field('isSalaryClient'), value: params.isSalaryClient, className: "whitespace-pre-line sm:whitespace-normal" })) : null, params.isShowStateEmployee ? (jsx(Checkbox, { text: "\u0420\u0430\u0431\u043E\u0442\u0430\u044E \u0432 \u0431\u044E\u0434\u0436\u0435\u0442\u043D\u043E\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...field('isStateEmployee'), value: params.isStateEmployee })) : null, params.isShowPensionClient ? (jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u043F\u0435\u043D\u0441\u0438\u044E \u043D\u0430 \u043A\u0430\u0440\u0442\u0443 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0430", ...field('isPensionClient'), value: params.isPensionClient })) : null, params.isShowInsurance ? (jsx(Checkbox, { text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", ...field('isInsurance'), value: params.isInsurance })) : null] }));
3038
3087
 
3039
- const isNotRubles = (currency = 'rub') => currency !== 'rub';
3040
-
3041
3088
  const arrayByRange = (start, stop, step = 1) => Array.from({ length: Math.abs(stop - start) / step + 1 }, (value, index) => stop >= start ? start + index * step : start - index * step);
3042
3089
 
3043
3090
  const mergeIntervals = (intervals) => {
@@ -3076,32 +3123,36 @@
3076
3123
  const isExcludeRemoteRegistration = !paramsViewSettings?.isShowRemoteRegistration;
3077
3124
  const isExcludeReplenish = !paramsViewSettings?.isShowReplenish;
3078
3125
  const isExcludeWithdrawn = !paramsViewSettings?.isShowWithdrawn;
3079
- const depositCalculatorSourceBookParams = rows?.find((row) => checkRowByParam({
3080
- row,
3081
- userInputParams,
3082
- paramKey: 'isReplenish',
3083
- isExclude: isExcludeReplenish,
3084
- }) &&
3126
+ const isExcludeNewClient = !paramsViewSettings?.isShowNewClient;
3127
+ const depositCalculatorSourceBookParams = rows?.find((row) => [
3128
+ checkRowByParam({
3129
+ row,
3130
+ userInputParams,
3131
+ paramKey: 'isReplenish',
3132
+ isExclude: isExcludeReplenish,
3133
+ }),
3085
3134
  checkRowByParam({
3086
3135
  row,
3087
3136
  userInputParams,
3088
3137
  paramKey: 'isWithdrawn',
3089
3138
  isExclude: isExcludeWithdrawn,
3090
- }) &&
3139
+ }),
3091
3140
  checkRowByParam({
3092
3141
  row,
3093
3142
  userInputParams,
3094
3143
  paramKey: 'isMonthlyInterestPayment',
3095
3144
  isExclude: isExcludeMonthlyInterestPayment,
3096
- }) &&
3145
+ }),
3097
3146
  checkRowByParam({
3098
3147
  row,
3099
3148
  userInputParams,
3100
3149
  paramKey: 'isRemoteRegistration',
3101
3150
  isExclude: isExcludeRemoteRegistration,
3102
- }) &&
3103
- checkRangeByKeys(moneyValue, ['minSum', 'maxSum'], row) &&
3104
- checkRangeByKeys(monthsValue || defaultMonth, ['minMonths', 'maxMonths'], row)) || DEFAULT_DEPOSIT_CALCULATOR_PARAMS;
3151
+ }),
3152
+ isExcludeNewClient || userInputParams?.['isNewClient'] === row?.['isNewClient'],
3153
+ checkRangeByKeys(moneyValue, ['minSum', 'maxSum'], row),
3154
+ checkRangeByKeys(monthsValue || defaultMonth, ['minMonths', 'maxMonths'], row),
3155
+ ].every(Boolean)) || DEFAULT_DEPOSIT_CALCULATOR_PARAMS;
3105
3156
  const { rate } = depositCalculatorSourceBookParams;
3106
3157
  const income = getDepositIncome(rate, userInputParams);
3107
3158
  const finalSum = moneyValue + income;
@@ -3132,6 +3183,8 @@
3132
3183
  const checkRowByParam = ({ row, userInputParams, paramKey, isExclude }) => isExclude || userInputParams[paramKey] === row[paramKey];
3133
3184
  const getMiddleMonth = (minMonths, maxMonths) => minMonths + Math.round((maxMonths - minMonths) / 2);
3134
3185
 
3186
+ const isRubles = (currency = 'rub') => currency === 'rub';
3187
+
3135
3188
  const renderRegistrationType = (props) => renderBinaryRadioButtonGroup({
3136
3189
  ...props,
3137
3190
  items: [
@@ -3166,7 +3219,7 @@
3166
3219
  ],
3167
3220
  disabled: isCurrency,
3168
3221
  })
3169
- : null] }), separatorStyles(params.isShowReplenish || params.isShowWithdrawn), jsxs("div", { className: "flex gap-lg", children: [params.isShowMonthlyInterestPayment
3222
+ : null] }), renderSeparator(params.isShowReplenish || params.isShowWithdrawn), jsxs("div", { className: "flex gap-lg", children: [params.isShowMonthlyInterestPayment
3170
3223
  ? renderPayout({
3171
3224
  title: 'Выплата процентов',
3172
3225
  ...field('isMonthlyInterestPayment'),
@@ -3180,9 +3233,31 @@
3180
3233
  value: params.isRemoteRegistration,
3181
3234
  orientation: 'vertical',
3182
3235
  })
3183
- : null] })] }));
3236
+ : null] }), renderSeparator(params.isShowNewClient), params.isShowNewClient ? jsx(Checkbox, { text: "\u041D\u043E\u0432\u044B\u0439 \u0432\u043A\u043B\u0430\u0434\u0447\u0438\u043A", ...field('isNewClient') }) : null] }));
3237
+ };
3238
+ const renderSeparator = (isShow = false) => isShow ? jsx("div", { className: "border-b border-main-divider w-full" }) : null;
3239
+
3240
+ const normalizeMonthValue = (_, rows) => {
3241
+ const { minMonths, maxMonths } = getRangeByKeys(['minMonths', 'maxMonths'], getRows(rows, _?.currency));
3242
+ const monthsValue = _.monthsValue || Math.round((minMonths + maxMonths) / 2);
3243
+ return { monthsValue: clamp(monthsValue, minMonths, maxMonths) };
3244
+ };
3245
+ const normalizeMoneyValue = (_, rows) => {
3246
+ const { minSum, maxSum } = getRangeByKeys(['minSum', 'maxSum'], getRows(rows, _?.currency));
3247
+ const moneyValue = _.moneyValue || minSum;
3248
+ return { moneyValue: clamp(moneyValue, minSum, maxSum) };
3249
+ };
3250
+ const normalizeCurrency = (_, rows) => ({
3251
+ currency: _?.currency ?? rows?.map((row) => row.currency)?.[0],
3252
+ });
3253
+ const normalizeReplenishWithdrawn = (_) => {
3254
+ const _isRubles = isRubles(_?.currency?.key);
3255
+ return { isReplenish: _isRubles && _?.isReplenish, isWithdrawn: _isRubles && _?.isWithdrawn };
3256
+ };
3257
+ const getRows = (rows, currencyValue) => {
3258
+ const { rates } = rows?.find((_) => _?.currency.key === currencyValue?.key) ?? {};
3259
+ return rates ?? rows?.[0]?.rates;
3184
3260
  };
3185
- const separatorStyles = (isShow = false) => isShow ? jsx("div", { className: "border-b border-main-divider w-full" }) : null;
3186
3261
 
3187
3262
  const MAP = {
3188
3263
  isMonthlyInterestPayment: 'isMonthlyInterestPayment',
@@ -3196,67 +3271,49 @@
3196
3271
  key: 'rub',
3197
3272
  };
3198
3273
  const DEPOSIT_DEFAULT_SUM = 20000;
3274
+ const DEPOSIT_DEFAULT_MONTHS = 1;
3199
3275
  const CalculatorDeposit = UniBlock(({ className, title, calcSource, buttons = [], footnote = '', paramsViewSettings, defaultParams, ...rest }) => {
3200
3276
  const { rows } = calcSource ?? {};
3201
3277
  const currencyOptions = rows?.map((_) => _.currency) ?? [DEFAULT_CURRENCY];
3278
+ const normalize = useCallback((_) => !rows
3279
+ ? _
3280
+ : {
3281
+ ..._,
3282
+ ...normalizeReplenishWithdrawn(_),
3283
+ ...normalizeMoneyValue(_, rows),
3284
+ ...normalizeMonthValue(_, rows),
3285
+ ...normalizeCurrency(_, rows),
3286
+ }, [rows]);
3202
3287
  const [userInputParams, { field }] = useForm({
3203
3288
  moneyValue: getMoneyDefaultValue(defaultParams, DEPOSIT_DEFAULT_SUM),
3204
- monthsValue: getMonthsDefaultValue(defaultParams),
3289
+ monthsValue: getMonthsDefaultValue(defaultParams, DEPOSIT_DEFAULT_MONTHS),
3205
3290
  isMonthlyInterestPayment: Boolean(defaultParams?.isMonthlyInterestPayment),
3206
3291
  isRemoteRegistration: Boolean(defaultParams?.isRemoteRegistration),
3207
3292
  isReplenish: Boolean(defaultParams?.isReplenish),
3208
3293
  isWithdrawn: Boolean(defaultParams?.isWithdrawn),
3294
+ isNewClient: Boolean(defaultParams?.isNewClient),
3209
3295
  currency: DEFAULT_CURRENCY,
3210
- });
3211
- const currencyValue = field?.('currency')?.value;
3212
- const { onChange: setMonthsValue } = field('monthsValue');
3213
- const { onChange: setMoneyValue } = field('moneyValue');
3296
+ }, { normalize });
3297
+ const currencyValue = field?.('currency')?.value ?? DEFAULT_CURRENCY;
3298
+ const isNewClient = field?.('isNewClient')?.value;
3214
3299
  const row = getRows(rows, currencyValue);
3215
- const [defParams, setDefParams] = useState(getDefaultParamsMax(rows?.[0]?.rates));
3216
- const calcParams = getDepositCalculatorParams(userInputParams, getRows(rows, currencyValue), paramsViewSettings);
3217
- useEffect(() => {
3218
- if (currencyOptions?.[0]) {
3219
- field?.('currency')?.onChange?.(currencyOptions?.[0]);
3220
- }
3221
- }, [calcSource]);
3300
+ const calcParams = getDepositCalculatorParams(userInputParams, row, paramsViewSettings);
3301
+ const { rate, income, finalSum, type = '' } = calcParams;
3222
3302
  const handleDefaultParamsCals = () => {
3223
3303
  setDefaultParamsCalc({
3224
3304
  field,
3225
- defParams: defParams,
3305
+ defParams: getDefaultParamsMax(row, isNewClient),
3226
3306
  calcParams,
3227
3307
  monthsValue: 'minMonths',
3228
3308
  map: MAP,
3229
3309
  });
3230
3310
  };
3231
- const { defaultMonth, rate, income, finalSum, type = '' } = calcParams;
3232
- useEffect(() => {
3233
- setDefParams(getDefaultParamsMax(row));
3234
- }, [currencyValue, rows]);
3235
- useEffect(() => {
3236
- !userInputParams.monthsValue && setMonthsValue && setMonthsValue(defaultMonth);
3237
- }, [defaultMonth]);
3238
- useEffect(() => {
3239
- setMoneyValue &&
3240
- setMoneyValue(clamp(userInputParams.moneyValue, calcParams.minSum, calcParams.maxSum));
3241
- }, [calcParams.minSum, calcParams.maxSum, row]);
3242
3311
  useEffect(() => {
3243
- if (!isDefaultParams(defaultParams) && defParams) {
3312
+ if (!isDefaultParams(defaultParams) && row) {
3244
3313
  handleDefaultParamsCals();
3245
3314
  }
3246
- }, [defParams, defaultParams]);
3247
- useEffect(() => {
3248
- setMoneyValue?.(clamp(userInputParams.moneyValue, calcParams.minSum, calcParams.maxSum));
3249
- if (isNotRubles(currencyValue?.key)) {
3250
- field?.('isReplenish')?.onChange?.(false);
3251
- field?.('isWithdrawn')?.onChange?.(false);
3252
- }
3253
- }, [currencyValue]);
3254
- useEffect(() => {
3255
- if (!isDefaultParams(defaultParams) && defParams) {
3256
- handleDefaultParamsCals();
3257
- }
3258
- }, [defaultParams, row, defParams]);
3259
- const isMaxRate = rate === defParams?.rate;
3315
+ }, [defaultParams, rows]);
3316
+ const isMaxRate = rate === getDefaultParamsMax(row, isNewClient)?.rate;
3260
3317
  return (jsx(CalculatorLayout, { className: className, title: title, ...rest, children: jsxs("section", { className: style(CalculatorStyle.wrapper, className), children: [jsxs("div", { className: CalculatorStyle.input, children: [jsxs("div", { className: "flex gap-m", children: [renderWantedSumInput({
3261
3318
  className: 'w-full',
3262
3319
  title: `Сумма, ${currencyValue?.text}`,
@@ -3285,17 +3342,13 @@
3285
3342
  isCapitalization: field('isMonthlyInterestPayment').value,
3286
3343
  })] }) }));
3287
3344
  });
3288
- const getStep = (key = '') => (isNotRubles(key) ? 100 : 1000);
3345
+ const getStep = (key = '') => (isRubles(key) ? 1000 : 100);
3289
3346
  const getTariffButton = (buttons = [], btnType = '') => {
3290
3347
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
3291
3348
  const { type, ...button } = buttons.find((_) => _.type === btnType) ?? {};
3292
3349
  return button;
3293
3350
  };
3294
3351
  const renderMaxRateButton = (handleDefaultParamsCals, isMaxRate = false) => isMaxRate ? null : (jsx(Button, { type: "button", version: "secondary", onClick: handleDefaultParamsCals, children: "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u0443\u044E \u0441\u0442\u0430\u0432\u043A\u0443" }));
3295
- const getRows = (rows, currencyValue) => {
3296
- const { rates } = rows?.find((_) => _?.currency.key === currencyValue?.key) ?? {};
3297
- return rates ?? rows?.[0]?.rates;
3298
- };
3299
3352
 
3300
3353
  const checkRefinancingSourceBookRowCommonParams = (props) => checkRowParam({
3301
3354
  ...props,
@@ -6500,7 +6553,7 @@
6500
6553
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
6501
6554
  });
6502
6555
 
6503
- const packageVersion = "0.14.547";
6556
+ const packageVersion = "0.14.548";
6504
6557
 
6505
6558
  exports.Blocks = Blocks;
6506
6559
  exports.ContentPage = ContentPage;