@redneckz/wildless-cms-uni-blocks 0.14.820 → 0.14.822

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 (449) hide show
  1. package/bundle/bundle.umd.js +237 -236
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  4. package/bundle/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  5. package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  6. package/bundle/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  7. package/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  8. package/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  9. package/bundle/retail/api/checkCode.d.ts +0 -1
  10. package/{dist/retail/api/esiaRequestProfile.d.ts → bundle/retail/api/updateProfileEsia.d.ts} +4 -11
  11. package/bundle/retail/api/updateUserTask.d.ts +0 -1
  12. package/bundle/retail/api/uploadFile.d.ts +1 -1
  13. package/bundle/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  14. package/bundle/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  15. package/bundle/retail/model/NameFieldDef.d.ts +1 -1
  16. package/bundle/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  17. package/bundle/retail/validator/validators.d.ts +6 -1
  18. package/bundle/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  19. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  20. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +17 -28
  21. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  22. package/dist/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  23. package/dist/components/ApplicationLeadForm/applicationFormData.js +31 -6
  24. package/dist/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
  25. package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  26. package/dist/components/ApplicationLeadForm/getInitialFormState.js +2 -8
  27. package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  28. package/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  29. package/dist/components/ApplicationLeadForm/parseEsiaProfile.js +50 -80
  30. package/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
  31. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  32. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +10 -7
  33. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  34. package/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  35. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js +24 -16
  36. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  37. package/dist/components/CreditCardForm/CreditCardFormStep.js +7 -1
  38. package/dist/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
  39. package/dist/components/CreditForm/CreditFormStep.js +7 -1
  40. package/dist/components/CreditForm/CreditFormStep.js.map +1 -1
  41. package/dist/components/DebitForm/DebitFormStep.js +7 -1
  42. package/dist/components/DebitForm/DebitFormStep.js.map +1 -1
  43. package/dist/retail/api/checkCode.d.ts +0 -1
  44. package/dist/retail/api/checkCode.js +2 -3
  45. package/dist/retail/api/checkCode.js.map +1 -1
  46. package/{bundle/retail/api/esiaRequestProfile.d.ts → dist/retail/api/updateProfileEsia.d.ts} +4 -11
  47. package/dist/retail/api/updateProfileEsia.js +6 -0
  48. package/dist/retail/api/updateProfileEsia.js.map +1 -0
  49. package/dist/retail/api/updateUserTask.d.ts +0 -1
  50. package/dist/retail/api/updateUserTask.js.map +1 -1
  51. package/dist/retail/api/uploadFile.d.ts +1 -1
  52. package/dist/retail/api/uploadFile.js +3 -2
  53. package/dist/retail/api/uploadFile.js.map +1 -1
  54. package/dist/retail/components/DraftDialog/parseDraftTask.js +1 -2
  55. package/dist/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
  56. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  57. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +34 -0
  58. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -0
  59. package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  60. package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +15 -0
  61. package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +1 -0
  62. package/dist/retail/components/Fields/BeginDateField.js +1 -2
  63. package/dist/retail/components/Fields/BeginDateField.js.map +1 -1
  64. package/dist/retail/components/Fields/ConfirmationIncomeField.js +1 -4
  65. package/dist/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
  66. package/dist/retail/components/Fields/DaDataInnField.js +1 -2
  67. package/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  68. package/dist/retail/components/Fields/Experience5YearsField.js +1 -2
  69. package/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  70. package/dist/retail/components/Fields/GeneralSeniorityField.js +1 -2
  71. package/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  72. package/dist/retail/components/Fields/JobsNumberField.js +1 -2
  73. package/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  74. package/dist/retail/components/Fields/LastJobExperienceField.js +1 -2
  75. package/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  76. package/dist/retail/components/Fields/OrganizationNameField.js +1 -2
  77. package/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  78. package/dist/retail/components/Fields/WagesField.js +1 -2
  79. package/dist/retail/components/Fields/WagesField.js.map +1 -1
  80. package/dist/retail/content.js +5 -11
  81. package/dist/retail/content.js.map +1 -1
  82. package/dist/retail/model/NameFieldDef.d.ts +1 -1
  83. package/dist/retail/utils/mainFormStateMap.js +0 -1
  84. package/dist/retail/utils/mainFormStateMap.js.map +1 -1
  85. package/dist/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  86. package/dist/retail/validator/getLimitedBirthdayValidation.js +21 -0
  87. package/dist/retail/validator/getLimitedBirthdayValidation.js.map +1 -0
  88. package/dist/retail/validator/validatorObj.js +0 -1
  89. package/dist/retail/validator/validatorObj.js.map +1 -1
  90. package/dist/retail/validator/validators.d.ts +6 -1
  91. package/dist/retail/validator/validators.js +10 -8
  92. package/dist/retail/validator/validators.js.map +1 -1
  93. package/dist/ui-kit/FormField/Fields/PhoneField.js +1 -2
  94. package/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
  95. package/dist/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  96. package/dist/ui-kit/FormField/shouldRenderField.js +1 -1
  97. package/dist/ui-kit/FormField/shouldRenderField.js.map +1 -1
  98. package/lib/common.css +1 -1
  99. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  100. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +17 -28
  101. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  102. package/lib/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  103. package/lib/components/ApplicationLeadForm/applicationFormData.js +30 -5
  104. package/lib/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
  105. package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  106. package/lib/components/ApplicationLeadForm/getInitialFormState.js +2 -8
  107. package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  108. package/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  109. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js +50 -80
  110. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
  111. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  112. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +10 -7
  113. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  114. package/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  115. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js +24 -16
  116. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  117. package/lib/components/CreditCardForm/CreditCardFormStep.js +7 -1
  118. package/lib/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
  119. package/lib/components/CreditForm/CreditFormStep.js +7 -1
  120. package/lib/components/CreditForm/CreditFormStep.js.map +1 -1
  121. package/lib/components/DebitForm/DebitFormStep.js +7 -1
  122. package/lib/components/DebitForm/DebitFormStep.js.map +1 -1
  123. package/lib/retail/api/checkCode.d.ts +0 -1
  124. package/lib/retail/api/checkCode.js +1 -1
  125. package/lib/retail/api/checkCode.js.map +1 -1
  126. package/lib/retail/api/{esiaRequestProfile.d.ts → updateProfileEsia.d.ts} +4 -11
  127. package/lib/retail/api/updateProfileEsia.js +3 -0
  128. package/lib/retail/api/updateProfileEsia.js.map +1 -0
  129. package/lib/retail/api/updateUserTask.d.ts +0 -1
  130. package/lib/retail/api/updateUserTask.js.map +1 -1
  131. package/lib/retail/api/uploadFile.d.ts +1 -1
  132. package/lib/retail/api/uploadFile.js +3 -2
  133. package/lib/retail/api/uploadFile.js.map +1 -1
  134. package/lib/retail/components/DraftDialog/parseDraftTask.js +1 -2
  135. package/lib/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
  136. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  137. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.fixture.d.ts +5 -0
  138. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +32 -0
  139. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -0
  140. package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  141. package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +12 -0
  142. package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +1 -0
  143. package/lib/retail/components/Fields/BeginDateField.js +1 -2
  144. package/lib/retail/components/Fields/BeginDateField.js.map +1 -1
  145. package/lib/retail/components/Fields/ConfirmationIncomeField.js +2 -5
  146. package/lib/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
  147. package/lib/retail/components/Fields/DaDataInnField.js +1 -2
  148. package/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  149. package/lib/retail/components/Fields/Experience5YearsField.js +1 -2
  150. package/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  151. package/lib/retail/components/Fields/GeneralSeniorityField.js +1 -2
  152. package/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  153. package/lib/retail/components/Fields/JobsNumberField.js +1 -2
  154. package/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  155. package/lib/retail/components/Fields/LastJobExperienceField.js +1 -2
  156. package/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  157. package/lib/retail/components/Fields/OrganizationNameField.js +1 -2
  158. package/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  159. package/lib/retail/components/Fields/WagesField.js +1 -2
  160. package/lib/retail/components/Fields/WagesField.js.map +1 -1
  161. package/lib/retail/content.js +5 -11
  162. package/lib/retail/content.js.map +1 -1
  163. package/lib/retail/model/NameFieldDef.d.ts +1 -1
  164. package/lib/retail/utils/mainFormStateMap.js +0 -1
  165. package/lib/retail/utils/mainFormStateMap.js.map +1 -1
  166. package/lib/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  167. package/lib/retail/validator/getLimitedBirthdayValidation.js +18 -0
  168. package/lib/retail/validator/getLimitedBirthdayValidation.js.map +1 -0
  169. package/lib/retail/validator/validatorObj.js +1 -2
  170. package/lib/retail/validator/validatorObj.js.map +1 -1
  171. package/lib/retail/validator/validators.d.ts +6 -1
  172. package/lib/retail/validator/validators.js +10 -8
  173. package/lib/retail/validator/validators.js.map +1 -1
  174. package/lib/ui-kit/FormField/Fields/PhoneField.js +1 -2
  175. package/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
  176. package/lib/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  177. package/lib/ui-kit/FormField/shouldRenderField.js +1 -1
  178. package/lib/ui-kit/FormField/shouldRenderField.js.map +1 -1
  179. package/mobile/bundle/bundle.umd.js +231 -235
  180. package/mobile/bundle/bundle.umd.min.js +1 -1
  181. package/mobile/bundle/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  182. package/mobile/bundle/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  183. package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  184. package/mobile/bundle/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  185. package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  186. package/mobile/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  187. package/mobile/bundle/retail/api/checkCode.d.ts +0 -1
  188. package/mobile/bundle/retail/api/{esiaRequestProfile.d.ts → updateProfileEsia.d.ts} +4 -11
  189. package/mobile/bundle/retail/api/updateUserTask.d.ts +0 -1
  190. package/mobile/bundle/retail/api/uploadFile.d.ts +1 -1
  191. package/mobile/bundle/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  192. package/mobile/bundle/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  193. package/mobile/bundle/retail/model/NameFieldDef.d.ts +1 -1
  194. package/mobile/bundle/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  195. package/mobile/bundle/retail/validator/validators.d.ts +6 -1
  196. package/mobile/bundle/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  197. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  198. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +17 -28
  199. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  200. package/mobile/dist/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  201. package/mobile/dist/components/ApplicationLeadForm/applicationFormData.js +31 -6
  202. package/mobile/dist/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
  203. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  204. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js +2 -8
  205. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  206. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  207. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js +50 -80
  208. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
  209. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  210. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +10 -7
  211. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  212. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  213. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js +24 -16
  214. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  215. package/mobile/dist/components/CreditCardForm/CreditCardFormStep.js +7 -1
  216. package/mobile/dist/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
  217. package/mobile/dist/components/CreditForm/CreditFormStep.js +7 -1
  218. package/mobile/dist/components/CreditForm/CreditFormStep.js.map +1 -1
  219. package/mobile/dist/components/DebitForm/DebitFormStep.js +7 -1
  220. package/mobile/dist/components/DebitForm/DebitFormStep.js.map +1 -1
  221. package/mobile/dist/retail/api/checkCode.d.ts +0 -1
  222. package/mobile/dist/retail/api/checkCode.js +2 -3
  223. package/mobile/dist/retail/api/checkCode.js.map +1 -1
  224. package/mobile/dist/retail/api/updateProfileEsia.d.ts +77 -0
  225. package/mobile/dist/retail/api/updateProfileEsia.js +6 -0
  226. package/mobile/dist/retail/api/updateProfileEsia.js.map +1 -0
  227. package/mobile/dist/retail/api/updateUserTask.d.ts +0 -1
  228. package/mobile/dist/retail/api/updateUserTask.js.map +1 -1
  229. package/mobile/dist/retail/api/uploadFile.d.ts +1 -1
  230. package/mobile/dist/retail/api/uploadFile.js +3 -2
  231. package/mobile/dist/retail/api/uploadFile.js.map +1 -1
  232. package/mobile/dist/retail/components/DraftDialog/parseDraftTask.js +1 -2
  233. package/mobile/dist/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
  234. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  235. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +34 -0
  236. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -0
  237. package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  238. package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +15 -0
  239. package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +1 -0
  240. package/mobile/dist/retail/components/Fields/BeginDateField.js +1 -2
  241. package/mobile/dist/retail/components/Fields/BeginDateField.js.map +1 -1
  242. package/mobile/dist/retail/components/Fields/ConfirmationIncomeField.js +1 -4
  243. package/mobile/dist/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
  244. package/mobile/dist/retail/components/Fields/DaDataInnField.js +1 -2
  245. package/mobile/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  246. package/mobile/dist/retail/components/Fields/Experience5YearsField.js +1 -2
  247. package/mobile/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  248. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js +1 -2
  249. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  250. package/mobile/dist/retail/components/Fields/JobsNumberField.js +1 -2
  251. package/mobile/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  252. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js +1 -2
  253. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  254. package/mobile/dist/retail/components/Fields/OrganizationNameField.js +1 -2
  255. package/mobile/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  256. package/mobile/dist/retail/components/Fields/WagesField.js +1 -2
  257. package/mobile/dist/retail/components/Fields/WagesField.js.map +1 -1
  258. package/mobile/dist/retail/content.js +5 -11
  259. package/mobile/dist/retail/content.js.map +1 -1
  260. package/mobile/dist/retail/model/NameFieldDef.d.ts +1 -1
  261. package/mobile/dist/retail/utils/mainFormStateMap.js +0 -1
  262. package/mobile/dist/retail/utils/mainFormStateMap.js.map +1 -1
  263. package/mobile/dist/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  264. package/mobile/dist/retail/validator/getLimitedBirthdayValidation.js +21 -0
  265. package/mobile/dist/retail/validator/getLimitedBirthdayValidation.js.map +1 -0
  266. package/mobile/dist/retail/validator/validatorObj.js +0 -1
  267. package/mobile/dist/retail/validator/validatorObj.js.map +1 -1
  268. package/mobile/dist/retail/validator/validators.d.ts +6 -1
  269. package/mobile/dist/retail/validator/validators.js +10 -8
  270. package/mobile/dist/retail/validator/validators.js.map +1 -1
  271. package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js +1 -2
  272. package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
  273. package/mobile/dist/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  274. package/mobile/dist/ui-kit/FormField/shouldRenderField.js +1 -1
  275. package/mobile/dist/ui-kit/FormField/shouldRenderField.js.map +1 -1
  276. package/mobile/lib/common.css +1 -1
  277. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +0 -5
  278. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +17 -28
  279. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  280. package/mobile/lib/components/ApplicationLeadForm/applicationFormData.d.ts +1 -0
  281. package/mobile/lib/components/ApplicationLeadForm/applicationFormData.js +30 -5
  282. package/mobile/lib/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
  283. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  284. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js +2 -8
  285. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  286. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
  287. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js +50 -80
  288. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
  289. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  290. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +10 -7
  291. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  292. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
  293. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js +24 -16
  294. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  295. package/mobile/lib/components/CreditCardForm/CreditCardFormStep.js +7 -1
  296. package/mobile/lib/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
  297. package/mobile/lib/components/CreditForm/CreditFormStep.js +7 -1
  298. package/mobile/lib/components/CreditForm/CreditFormStep.js.map +1 -1
  299. package/mobile/lib/components/DebitForm/DebitFormStep.js +7 -1
  300. package/mobile/lib/components/DebitForm/DebitFormStep.js.map +1 -1
  301. package/mobile/lib/retail/api/checkCode.d.ts +0 -1
  302. package/mobile/lib/retail/api/checkCode.js +1 -1
  303. package/mobile/lib/retail/api/checkCode.js.map +1 -1
  304. package/mobile/lib/retail/api/updateProfileEsia.d.ts +77 -0
  305. package/mobile/lib/retail/api/updateProfileEsia.js +3 -0
  306. package/mobile/lib/retail/api/updateProfileEsia.js.map +1 -0
  307. package/mobile/lib/retail/api/updateUserTask.d.ts +0 -1
  308. package/mobile/lib/retail/api/updateUserTask.js.map +1 -1
  309. package/mobile/lib/retail/api/uploadFile.d.ts +1 -1
  310. package/mobile/lib/retail/api/uploadFile.js +3 -2
  311. package/mobile/lib/retail/api/uploadFile.js.map +1 -1
  312. package/mobile/lib/retail/components/DraftDialog/parseDraftTask.js +1 -2
  313. package/mobile/lib/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
  314. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +4 -0
  315. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +32 -0
  316. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -0
  317. package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +1 -0
  318. package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +12 -0
  319. package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +1 -0
  320. package/mobile/lib/retail/components/Fields/BeginDateField.js +1 -2
  321. package/mobile/lib/retail/components/Fields/BeginDateField.js.map +1 -1
  322. package/mobile/lib/retail/components/Fields/ConfirmationIncomeField.js +2 -5
  323. package/mobile/lib/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
  324. package/mobile/lib/retail/components/Fields/DaDataInnField.js +1 -2
  325. package/mobile/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  326. package/mobile/lib/retail/components/Fields/Experience5YearsField.js +1 -2
  327. package/mobile/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  328. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js +1 -2
  329. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  330. package/mobile/lib/retail/components/Fields/JobsNumberField.js +1 -2
  331. package/mobile/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  332. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js +1 -2
  333. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  334. package/mobile/lib/retail/components/Fields/OrganizationNameField.js +1 -2
  335. package/mobile/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  336. package/mobile/lib/retail/components/Fields/WagesField.js +1 -2
  337. package/mobile/lib/retail/components/Fields/WagesField.js.map +1 -1
  338. package/mobile/lib/retail/content.js +5 -11
  339. package/mobile/lib/retail/content.js.map +1 -1
  340. package/mobile/lib/retail/model/NameFieldDef.d.ts +1 -1
  341. package/mobile/lib/retail/utils/mainFormStateMap.js +0 -1
  342. package/mobile/lib/retail/utils/mainFormStateMap.js.map +1 -1
  343. package/mobile/lib/retail/validator/getLimitedBirthdayValidation.d.ts +2 -0
  344. package/mobile/lib/retail/validator/getLimitedBirthdayValidation.js +18 -0
  345. package/mobile/lib/retail/validator/getLimitedBirthdayValidation.js.map +1 -0
  346. package/mobile/lib/retail/validator/validatorObj.js +1 -2
  347. package/mobile/lib/retail/validator/validatorObj.js.map +1 -1
  348. package/mobile/lib/retail/validator/validators.d.ts +6 -1
  349. package/mobile/lib/retail/validator/validators.js +10 -8
  350. package/mobile/lib/retail/validator/validators.js.map +1 -1
  351. package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js +1 -2
  352. package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
  353. package/mobile/lib/ui-kit/FormField/shouldRenderField.d.ts +1 -1
  354. package/mobile/lib/ui-kit/FormField/shouldRenderField.js +1 -1
  355. package/mobile/lib/ui-kit/FormField/shouldRenderField.js.map +1 -1
  356. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +27 -37
  357. package/mobile/src/components/ApplicationLeadForm/applicationFormData.tsx +31 -5
  358. package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +1 -8
  359. package/mobile/src/components/ApplicationLeadForm/parseEsiaProfile.ts +66 -91
  360. package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +65 -57
  361. package/mobile/src/components/ApplicationLeadForm/useInitApplicationLead.ts +48 -32
  362. package/mobile/src/components/CreditCardForm/CreditCardFormStep.tsx +9 -1
  363. package/mobile/src/components/CreditForm/CreditFormStep.tsx +10 -1
  364. package/mobile/src/components/DebitForm/DebitFormStep.tsx +9 -1
  365. package/mobile/src/retail/api/checkCode.ts +1 -1
  366. package/mobile/src/retail/api/{esiaRequestProfile.ts → updateProfileEsia.ts} +5 -16
  367. package/mobile/src/retail/api/updateUserTask.ts +0 -1
  368. package/mobile/src/retail/api/uploadFile.ts +3 -2
  369. package/mobile/src/retail/components/DraftDialog/parseDraftTask.ts +0 -2
  370. package/mobile/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +65 -0
  371. package/mobile/src/retail/components/EsiaLoginDialog/useEsiaLoginDialog.tsx +13 -0
  372. package/mobile/src/retail/components/Fields/BeginDateField.tsx +0 -2
  373. package/mobile/src/retail/components/Fields/ConfirmationIncomeField.tsx +7 -18
  374. package/mobile/src/retail/components/Fields/DaDataInnField.tsx +0 -2
  375. package/mobile/src/retail/components/Fields/Experience5YearsField.tsx +0 -2
  376. package/mobile/src/retail/components/Fields/GeneralSeniorityField.tsx +0 -2
  377. package/mobile/src/retail/components/Fields/JobsNumberField.tsx +0 -2
  378. package/mobile/src/retail/components/Fields/LastJobExperienceField.tsx +0 -2
  379. package/mobile/src/retail/components/Fields/OrganizationNameField.tsx +0 -2
  380. package/mobile/src/retail/components/Fields/WagesField.tsx +0 -2
  381. package/mobile/src/retail/content.tsx +5 -11
  382. package/mobile/src/retail/model/NameFieldDef.ts +0 -1
  383. package/mobile/src/retail/utils/mainFormStateMap.ts +0 -1
  384. package/mobile/src/retail/validator/getLimitedBirthdayValidation.ts +21 -0
  385. package/mobile/src/retail/validator/validatorObj.ts +0 -2
  386. package/mobile/src/retail/validator/validators.ts +24 -13
  387. package/mobile/src/ui-kit/FormField/Fields/PhoneField.tsx +1 -9
  388. package/mobile/src/ui-kit/FormField/shouldRenderField.tsx +1 -2
  389. package/package.json +1 -1
  390. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +27 -37
  391. package/src/components/ApplicationLeadForm/applicationFormData.tsx +31 -5
  392. package/src/components/ApplicationLeadForm/getInitialFormState.tsx +1 -8
  393. package/src/components/ApplicationLeadForm/parseEsiaProfile.ts +66 -91
  394. package/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +65 -57
  395. package/src/components/ApplicationLeadForm/useInitApplicationLead.ts +48 -32
  396. package/src/components/CreditCardForm/CreditCardFormStep.tsx +9 -1
  397. package/src/components/CreditForm/CreditFormStep.tsx +10 -1
  398. package/src/components/DebitForm/DebitFormStep.tsx +9 -1
  399. package/src/retail/api/checkCode.ts +1 -1
  400. package/src/retail/api/{esiaRequestProfile.ts → updateProfileEsia.ts} +5 -16
  401. package/src/retail/api/updateUserTask.ts +0 -1
  402. package/src/retail/api/uploadFile.ts +3 -2
  403. package/src/retail/components/DraftDialog/parseDraftTask.ts +0 -2
  404. package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.fixture.tsx +7 -0
  405. package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +65 -0
  406. package/src/retail/components/EsiaLoginDialog/useEsiaLoginDialog.tsx +13 -0
  407. package/src/retail/components/Fields/BeginDateField.tsx +0 -2
  408. package/src/retail/components/Fields/ConfirmationIncomeField.tsx +7 -18
  409. package/src/retail/components/Fields/DaDataInnField.tsx +0 -2
  410. package/src/retail/components/Fields/Experience5YearsField.tsx +0 -2
  411. package/src/retail/components/Fields/GeneralSeniorityField.tsx +0 -2
  412. package/src/retail/components/Fields/JobsNumberField.tsx +0 -2
  413. package/src/retail/components/Fields/LastJobExperienceField.tsx +0 -2
  414. package/src/retail/components/Fields/OrganizationNameField.tsx +0 -2
  415. package/src/retail/components/Fields/WagesField.tsx +0 -2
  416. package/src/retail/content.tsx +5 -11
  417. package/src/retail/model/NameFieldDef.ts +0 -1
  418. package/src/retail/utils/mainFormStateMap.ts +0 -1
  419. package/src/retail/validator/getLimitedBirthdayValidation.ts +21 -0
  420. package/src/retail/validator/validatorObj.ts +0 -2
  421. package/src/retail/validator/validators.ts +24 -13
  422. package/src/ui-kit/FormField/Fields/PhoneField.tsx +1 -9
  423. package/src/ui-kit/FormField/shouldRenderField.tsx +1 -2
  424. package/bundle/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  425. package/dist/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  426. package/dist/components/ApplicationLeadForm/EsiaLoginBanner.js +0 -22
  427. package/dist/components/ApplicationLeadForm/EsiaLoginBanner.js.map +0 -1
  428. package/dist/retail/api/esiaRequestProfile.js +0 -10
  429. package/dist/retail/api/esiaRequestProfile.js.map +0 -1
  430. package/lib/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  431. package/lib/components/ApplicationLeadForm/EsiaLoginBanner.js +0 -20
  432. package/lib/components/ApplicationLeadForm/EsiaLoginBanner.js.map +0 -1
  433. package/lib/retail/api/esiaRequestProfile.js +0 -7
  434. package/lib/retail/api/esiaRequestProfile.js.map +0 -1
  435. package/mobile/bundle/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  436. package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  437. package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.js +0 -22
  438. package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.js.map +0 -1
  439. package/mobile/dist/retail/api/esiaRequestProfile.d.ts +0 -84
  440. package/mobile/dist/retail/api/esiaRequestProfile.js +0 -10
  441. package/mobile/dist/retail/api/esiaRequestProfile.js.map +0 -1
  442. package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +0 -4
  443. package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.js +0 -20
  444. package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.js.map +0 -1
  445. package/mobile/lib/retail/api/esiaRequestProfile.d.ts +0 -84
  446. package/mobile/lib/retail/api/esiaRequestProfile.js +0 -7
  447. package/mobile/lib/retail/api/esiaRequestProfile.js.map +0 -1
  448. package/mobile/src/components/ApplicationLeadForm/EsiaLoginBanner.tsx +0 -51
  449. package/src/components/ApplicationLeadForm/EsiaLoginBanner.tsx +0 -51
@@ -6,9 +6,11 @@ const ERROR_MESSAGE = 'Некорректно заполненное поле';
6
6
 
7
7
  const ADDRESS_ERROR_MESSAGE = 'Укажите регион, город/населенный пункт, улицу, дом';
8
8
 
9
- const MIN_AGE = 23;
10
- const MAX_AGE = 75;
11
- const AGE_ERROR_MESSAGE = 'Допустимый возраст заёмщика - от 23 до 75 лет';
9
+ export interface LimitedBirthdayValidationParams {
10
+ minAge: number;
11
+ maxAge?: number;
12
+ errorMessage: string;
13
+ }
12
14
 
13
15
  const addressDaDataValidate = (address: Address) =>
14
16
  Boolean(address.region && (address.city || address.locality) && address.house);
@@ -33,20 +35,29 @@ export const lengthStringValidator = (inputLength: number, errorMsg?: string) =>
33
35
  errorMsg ?? ERROR_MESSAGE,
34
36
  );
35
37
 
36
- const limitedBirthdayValidate = (date?: Date) => {
37
- const today = new Date();
38
+ const limitedBirthdayValidate =
39
+ ({ minAge, maxAge }: LimitedBirthdayValidationParams) =>
40
+ (date?: Date) => {
41
+ const today = new Date();
38
42
 
39
- const minDate = new Date(today.getFullYear() - MIN_AGE, today.getMonth(), today.getDate());
40
- const maxDate = new Date(today.getFullYear() - MAX_AGE, today.getMonth(), today.getDate());
43
+ const minDate = new Date(today.getFullYear() - minAge, today.getMonth(), today.getDate());
44
+ const maxDate = maxAge
45
+ ? new Date(today.getFullYear() - maxAge, today.getMonth(), today.getDate())
46
+ : null;
41
47
 
42
- if (!date || date > minDate || date < maxDate) {
43
- return false;
44
- }
48
+ if (!date || date > minDate) {
49
+ return false;
50
+ }
45
51
 
46
- return true;
47
- };
52
+ if (maxDate && date < maxDate) {
53
+ return false;
54
+ }
55
+
56
+ return true;
57
+ };
48
58
 
49
- export const limitedBirthdayValidator = () => validator(limitedBirthdayValidate)(AGE_ERROR_MESSAGE);
59
+ export const limitedBirthdayValidator = (params: LimitedBirthdayValidationParams) =>
60
+ validator(limitedBirthdayValidate(params))(params.errorMessage);
50
61
 
51
62
  export const numberValidator = (errorMsg: string) =>
52
63
  validator((_) => typeof _ === 'string' && _.length === 6)(errorMsg);
@@ -1,17 +1,9 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { isEsiaAuthorize } from '../../../retail/utils/isEsiaAuthorize';
3
2
  import { InputPhoneControl } from '../../Input/InputPhoneControl';
4
3
  import { type CustomFieldProps } from '../CustomFieldProps';
5
4
 
6
5
  export const PhoneField = JSX<CustomFieldProps>(({ field, input }) => {
7
6
  const fieldName = input?.name || 'phone';
8
7
 
9
- return (
10
- <InputPhoneControl
11
- label="Телефон"
12
- disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
13
- {...field(fieldName)}
14
- {...input}
15
- />
16
- );
8
+ return <InputPhoneControl label="Телефон" {...field(fieldName)} {...input} />;
17
9
  });
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
1
  import { type FormFieldRegisterer } from '../../hooks/useForm/useForm';
3
2
  import { type BaseFieldDef } from './BaseFieldDef';
4
3
 
@@ -12,5 +11,5 @@ export function shouldRenderField<F extends BaseFieldDef>({
12
11
  const { condition } = input;
13
12
  const { value } = field(condition?.name || '');
14
13
 
15
- return !condition || condition?.values?.includes(value?.key ?? value);
14
+ return !condition || condition?.values?.find((_) => _ === (value?.key ?? value));
16
15
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.820",
3
+ "version": "0.14.822",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -1,8 +1,10 @@
1
- /* eslint-disable max-lines-per-function */
2
1
  import { JSX } from '@redneckz/uni-jsx';
3
- import { useEffect, useMemo, useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
2
+ import { useEffect, useMemo } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
4
4
  import { useForm } from '../../hooks/useForm/useForm';
5
+ import { type SectionsRetailProps } from '../../retail/model/InputSectionsType';
5
6
  import { type FieldRetailDef } from '../../retail/model/RetailFormContent';
7
+ import { getLimitedBirthdayValidation } from '../../retail/validator/getLimitedBirthdayValidation';
6
8
  import { validatorObj } from '../../retail/validator/validatorObj';
7
9
  import { ApplicationFormLayout } from '../../ui-kit/ApplicationFormLayout/ApplicationFormLayout';
8
10
  import { useDialog } from '../../ui-kit/DialogManager/useDialog';
@@ -15,8 +17,7 @@ import { Text } from '../../ui-kit/Text/Text';
15
17
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
16
18
  import { style } from '../../utils/style';
17
19
  import { getApplicationFormData } from './applicationFormData';
18
- import { type ApplicationLeadFormContent } from './ApplicationLeadFormContent';
19
- import { EsiaLoginBanner } from './EsiaLoginBanner';
20
+ import { type ApplicationLeadFormContent, type ProductType } from './ApplicationLeadFormContent';
20
21
  import { renderInputs } from './renderInputs';
21
22
  import { renderSubmitButton } from './renderSubmitButton';
22
23
  import { useApplicationLeadApi } from './useApplicationLeadApi';
@@ -24,12 +25,6 @@ import { useInitApplicationLead } from './useInitApplicationLead';
24
25
 
25
26
  interface ApplicationLeadFormProps extends ApplicationLeadFormContent, UniBlockProps {}
26
27
 
27
- export enum EsiaStatuses {
28
- Success = 'SUCCESS',
29
- Error = 'ERROR',
30
- Pending = 'PENDING',
31
- }
32
-
33
28
  export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
34
29
  ({
35
30
  className,
@@ -41,31 +36,31 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
41
36
  data,
42
37
  ...rest
43
38
  }) => {
44
- const [esiaStatus, setEsiaStatus] = useState<EsiaStatuses>();
45
- const leadForm = useRef<HTMLFormElement | null>(null);
39
+ const [esiaError, { setTrue: setEsiaError }] = useBool(false);
46
40
  const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
47
- const inputs = useMemo(
48
- () => (applicationFormData?.flatMap((_) => _?.inputs) || []) as FieldRetailDef[],
49
- [applicationFormData],
50
- );
41
+ const inputs = useMemo(() => getInputs(applicationFormData), [applicationFormData]);
51
42
 
52
- const formValidator = useMemo(() => getFormValidator(inputs, validatorObj), [inputs]);
43
+ const extendedValidatorObj = useMemo(() => getExtendedValidatorObj(productType), [productType]);
44
+ const formValidator = useMemo(
45
+ () => getFormValidator(inputs, extendedValidatorObj),
46
+ [inputs, extendedValidatorObj],
47
+ );
53
48
 
54
- const initialFormState = useInitApplicationLead({
49
+ const [initialFormState, { isLoading }] = useInitApplicationLead({
55
50
  inputs,
56
51
  nextStepLink,
57
52
  productType,
58
- setEsiaStatus,
59
- esiaAuthSuccess: esiaStatus === EsiaStatuses.Success,
53
+ setEsiaError,
60
54
  });
61
55
  const { isSending, ok, handleSubmit } = useApplicationLeadApi({
62
56
  programId,
63
57
  nextStepLink,
64
58
  productType,
59
+ esiaError,
65
60
  data,
66
61
  });
67
62
 
68
- const [, { field, onSubmit, reset }] = useForm(initialFormState, {
63
+ const [, { field, onSubmit }] = useForm(initialFormState, {
69
64
  formValidator,
70
65
  onSubmit: handleSubmit,
71
66
  });
@@ -77,27 +72,14 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
77
72
  }
78
73
  }, [ok]);
79
74
 
80
- useEffect(() => {
81
- if (esiaStatus && leadForm?.current) {
82
- leadForm.current.scrollIntoView({
83
- block: 'start',
84
- });
85
- }
86
-
87
- if (esiaStatus === EsiaStatuses.Success) {
88
- reset();
89
- }
90
- }, [leadForm?.current, esiaStatus]);
91
-
92
75
  return (
93
76
  <ApplicationFormLayout
94
77
  className={style('container space-y-m', className)}
95
78
  title={title}
96
79
  {...rest}
97
80
  >
98
- {!esiaStatus ? <EsiaLoginBanner /> : null}
99
- <form onSubmit={onSubmit} className="space-y-m relative" ref={leadForm}>
100
- {esiaStatus === EsiaStatuses.Pending ? <Loader blur={false} /> : null}
81
+ <form onSubmit={onSubmit} className="space-y-m relative">
82
+ {isLoading ? <Loader blur={false} /> : null}
101
83
  {applicationFormData.map((_, i) => (
102
84
  <div
103
85
  key={`section-${i}`}
@@ -108,7 +90,7 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
108
90
  </div>
109
91
  ))}
110
92
  {renderSubmitButton(button, isSending)}
111
- {esiaStatus === EsiaStatuses.Error ? (
93
+ {esiaError ? (
112
94
  <Text size="text-m" font="font-medium" color="text-error">
113
95
  Использовать Госуслуги для оформления заявки невозможно, необходимо заполнить поля
114
96
  вручную.
@@ -119,3 +101,11 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
119
101
  );
120
102
  },
121
103
  );
104
+
105
+ const getInputs = (applicationFormData?: SectionsRetailProps[]) =>
106
+ (applicationFormData?.flatMap((_) => _?.inputs) || []) as FieldRetailDef[];
107
+
108
+ const getExtendedValidatorObj = (productType: ProductType) => ({
109
+ ...validatorObj,
110
+ limitedBirthday: getLimitedBirthdayValidation(productType),
111
+ });
@@ -3,6 +3,32 @@ import { type FieldRetailDef } from '../../retail/model/RetailFormContent';
3
3
  import { type ProductType } from './ApplicationLeadFormContent';
4
4
  import { productTypeToConsentsMap } from './consents';
5
5
 
6
+ export const applicationFormData: SectionsRetailProps[] = [
7
+ {
8
+ columns: 2,
9
+ inputs: [
10
+ { name: 'surname', required: true, dadata: true },
11
+ { name: 'name', required: true, dadata: true },
12
+ { name: 'middleName', dadata: true },
13
+ { name: 'limitedBirthday', required: true },
14
+ { name: 'phone', required: true },
15
+ { name: 'email', required: true, dadata: true },
16
+ ],
17
+ },
18
+ {
19
+ inputs: [
20
+ { name: 'processPersonalDataFlg', required: true },
21
+ { name: 'consentProviderFlg', required: true },
22
+ { name: 'consentOthersFlg', required: true },
23
+ { name: 'consentInformFlg' },
24
+ { name: 'consentPfrFlg' },
25
+ { name: 'consentInformMaterialsFlg' },
26
+ { name: 'consentPhotoFlg' },
27
+ { name: 'consentFATCA' },
28
+ ],
29
+ },
30
+ ];
31
+
6
32
  export const getApplicationFormData = (productType: ProductType): SectionsRetailProps[] => {
7
33
  const currentProductConsents = productTypeToConsentsMap[productType];
8
34
  const allConsents: FieldRetailDef[] = [
@@ -20,11 +46,11 @@ export const getApplicationFormData = (productType: ProductType): SectionsRetail
20
46
  {
21
47
  columns: 2,
22
48
  inputs: [
23
- { name: 'surname', required: true, dadata: true, filledByEsia: true },
24
- { name: 'name', required: true, dadata: true, filledByEsia: true },
25
- { name: 'middleName', dadata: true, filledByEsia: true },
26
- { name: 'limitedBirthday', required: true, filledByEsia: true },
27
- { name: 'phone', required: true, filledByEsia: true },
49
+ { name: 'surname', required: true, dadata: true },
50
+ { name: 'name', required: true, dadata: true },
51
+ { name: 'middleName', dadata: true },
52
+ { name: 'limitedBirthday', required: true },
53
+ { name: 'phone', required: true },
28
54
  { name: 'email', required: true, dadata: true },
29
55
  ],
30
56
  },
@@ -21,16 +21,9 @@ const initialFormState = {
21
21
  export const getInitialFormState = (
22
22
  inputs: FieldRetailDef[],
23
23
  savedForm: LeadFormState | null,
24
- esiaAuthSuccess: boolean,
25
24
  ): LeadFormState => {
26
25
  if (savedForm) {
27
- return {
28
- ...savedForm,
29
- limitedBirthday: new Date(savedForm?.limitedBirthday || 0),
30
- ...(!esiaAuthSuccess && {
31
- esiaAccountTypeCd: { key: '' },
32
- }),
33
- };
26
+ return { ...savedForm, limitedBirthday: new Date(savedForm?.limitedBirthday || 0) };
34
27
  }
35
28
 
36
29
  const formState = Object.fromEntries(inputs.map((_) => [_.name, initialFormState[_.name || '']]));
@@ -1,23 +1,33 @@
1
1
  /* eslint-disable max-lines */
2
- /* eslint-disable max-lines-per-function */
3
- import { type EsiaRequestProfileResponse } from '../../retail/api/esiaRequestProfile';
2
+ import { type UpdateProfileEsiaResponse } from '../../retail/api/updateProfileEsia';
4
3
  import { uploadFile, type DocumentCategory } from '../../retail/api/uploadFile';
5
4
  import { type Address, type File, type LeadFormState } from '../../retail/model/LeadFormState';
6
5
  import { normalizePhone } from '../../ui-kit/PhoneInput/normalizePhone';
7
6
 
8
7
  export const parseEsiaProfile = async (
9
- esiaProfile: EsiaRequestProfileResponse,
8
+ esiaProfile: UpdateProfileEsiaResponse,
9
+ taskId: string,
10
10
  isDebit: boolean,
11
11
  ): Promise<LeadFormState> => {
12
- checkEsiaData(esiaProfile);
13
- const isFullEsiaData = !isDebit && checkEsiaAdditionalDocument(esiaProfile);
12
+ isDebit ? checkEsiaDataForDebit(esiaProfile) : checkEsiaDataForCredit(esiaProfile);
14
13
 
15
14
  const { profile, addInfo, document, addressRegistration, addressFact, esiaAdditionalDocument } =
16
15
  esiaProfile;
17
- let files: File[] = [];
16
+ const files: File[] = [];
18
17
 
19
- if (isFullEsiaData) {
20
- files = await saveDocuments(esiaAdditionalDocument);
18
+ if (!isDebit) {
19
+ await saveDocument({
20
+ document: esiaAdditionalDocument.pdfFileWorkbook,
21
+ taskId,
22
+ category: 'CONFIRMING_INCOME_DOC',
23
+ files,
24
+ });
25
+ await saveDocument({
26
+ document: esiaAdditionalDocument.pdfFilePayout,
27
+ taskId,
28
+ category: 'CONFIRMING_EMPLOYMENT_DOC',
29
+ files,
30
+ });
21
31
  }
22
32
 
23
33
  const mainData = {
@@ -35,12 +45,12 @@ export const parseEsiaProfile = async (
35
45
  birthPlace: addInfo.birthPlace,
36
46
  addressRegistration: buildAddress(addressRegistration),
37
47
  addressFact: buildAddress(addressFact),
38
- esiaAccountTypeCd: isDebit ? profile.esiaAccountType : { key: '' },
48
+ esiaAccountTypeCd: profile.esiaAccountType,
39
49
  };
40
50
 
41
51
  return {
42
52
  ...mainData,
43
- ...(isFullEsiaData && {
53
+ ...(!isDebit && {
44
54
  snils: addInfo.snils,
45
55
  inn: esiaAdditionalDocument.inn,
46
56
  wages: Math.floor(esiaAdditionalDocument.averageMonthlyIncome)?.toString(),
@@ -49,9 +59,6 @@ export const parseEsiaProfile = async (
49
59
  generalSeniority: getYearFromMonth(esiaAdditionalDocument.workLength).toString(),
50
60
  lastJobExperience: getYearFromMonth(esiaAdditionalDocument.workLengthLastJob).toString(),
51
61
  jobsNumber: esiaAdditionalDocument.jobsNumberInFiveYears.toString(),
52
- esiaAccountTypeCd: profile.esiaAccountType,
53
- confirmationIncome: { key: 'SFR_CERTIFICATE', text: 'Запрос Банком доходов из СФР' },
54
- employment: { key: 'WORK', text: 'Работаю' },
55
62
  files,
56
63
  }),
57
64
  };
@@ -67,7 +74,7 @@ const concatFullAddress = (address: Array<string | undefined>): string => {
67
74
  }, '');
68
75
  };
69
76
 
70
- const buildAddress = (fields: EsiaRequestProfileResponse['addressRegistration']): Address => {
77
+ const buildAddress = (fields: UpdateProfileEsiaResponse['addressRegistration']): Address => {
71
78
  const {
72
79
  postcode,
73
80
  region,
@@ -103,67 +110,25 @@ const buildAddress = (fields: EsiaRequestProfileResponse['addressRegistration'])
103
110
 
104
111
  const getYearFromMonth = (month: number) => Math.floor(month / 12);
105
112
 
106
- const saveDocuments = async (
107
- esiaAdditionalDocument: EsiaRequestProfileResponse['esiaAdditionalDocument'],
108
- ): Promise<File[]> => {
109
- const files: File[] = [];
110
- const documents = [
111
- {
112
- file: esiaAdditionalDocument.pdfFileWorkbook,
113
- category: 'CONFIRMING_INCOME_DOC',
114
- isPDF: true,
115
- },
116
- {
117
- file: esiaAdditionalDocument.pdfFilePayout,
118
- category: 'CONFIRMING_EMPLOYMENT_DOC',
119
- isPDF: true,
120
- },
121
- {
122
- file: esiaAdditionalDocument.pdfFileSigPayout,
123
- category: 'CONFIRMING_EMPLOYMENT_DOC',
124
- isPDF: true,
125
- },
126
- {
127
- file: esiaAdditionalDocument.xmlFilePayout,
128
- category: 'CONFIRMING_EMPLOYMENT_DOC',
129
- isPDF: false,
130
- },
131
- {
132
- file: esiaAdditionalDocument.xmlFileSigPayout,
133
- category: 'CONFIRMING_EMPLOYMENT_DOC',
134
- isPDF: false,
135
- },
136
- {
137
- file: esiaAdditionalDocument.xmlFileWorkbook,
138
- category: 'CONFIRMING_INCOME_DOC',
139
- isPDF: false,
140
- },
141
- {
142
- file: esiaAdditionalDocument.pdfFileSigWorkbook,
143
- category: 'CONFIRMING_INCOME_DOC',
144
- isPDF: true,
145
- },
146
- {
147
- file: esiaAdditionalDocument.xmlFileSigWorkbook,
148
- category: 'CONFIRMING_INCOME_DOC',
149
- isPDF: false,
150
- },
151
- ];
152
-
153
- for (const doc of documents) {
154
- const contentType = doc.isPDF ? 'data:application/pdf;base64' : 'data:application/xml;base64';
155
-
156
- await fetch(`${contentType},${doc.file}`)
157
- .then((res) => res.blob())
158
- .then((value) => uploadFile(value, doc.category as DocumentCategory, doc.isPDF))
159
- .then((file) => files.push(file));
160
- }
161
-
162
- return files;
113
+ const saveDocument = async ({
114
+ document,
115
+ taskId,
116
+ category,
117
+ files,
118
+ }: {
119
+ document: string;
120
+ taskId: string;
121
+ category: DocumentCategory;
122
+ files: File[];
123
+ }) => {
124
+ await fetch(`data:application/pdf;base64,${document}`)
125
+ .then((res) => res.blob())
126
+ .then((value) => uploadFile(value, taskId, category))
127
+ .then((file) => files.push(file));
163
128
  };
164
129
 
165
- const checkEsiaData = (esiaProfile: EsiaRequestProfileResponse) => {
166
- const { profile, document, addressRegistration } = esiaProfile;
130
+ const checkEsiaDataForCredit = (esiaProfile: UpdateProfileEsiaResponse) => {
131
+ const { profile, document, addressRegistration, esiaAdditionalDocument } = esiaProfile;
167
132
 
168
133
  const data = [
169
134
  profile.name,
@@ -171,6 +136,7 @@ const checkEsiaData = (esiaProfile: EsiaRequestProfileResponse) => {
171
136
  profile.midname,
172
137
  profile.birthDate,
173
138
  profile.phone,
139
+ profile.email,
174
140
  document.dulIssueDate,
175
141
  document.dulIssuedBy,
176
142
  document.dulNumber,
@@ -178,17 +144,6 @@ const checkEsiaData = (esiaProfile: EsiaRequestProfileResponse) => {
178
144
  document.dulSubdivisionCode,
179
145
  addressRegistration,
180
146
  profile.esiaAccountType,
181
- ];
182
-
183
- if (!data.every((_) => Boolean(_))) {
184
- throw new Error();
185
- }
186
- };
187
-
188
- const checkEsiaAdditionalDocument = (esiaProfile: EsiaRequestProfileResponse) => {
189
- const { esiaAdditionalDocument } = esiaProfile;
190
-
191
- const data = [
192
147
  esiaAdditionalDocument.inn,
193
148
  esiaAdditionalDocument.averageMonthlyIncome.toString(),
194
149
  esiaAdditionalDocument.startWorkDate,
@@ -198,13 +153,33 @@ const checkEsiaAdditionalDocument = (esiaProfile: EsiaRequestProfileResponse) =>
198
153
  esiaAdditionalDocument.jobsNumberInFiveYears.toString(),
199
154
  esiaAdditionalDocument.pdfFilePayout,
200
155
  esiaAdditionalDocument.pdfFileWorkbook,
201
- esiaAdditionalDocument.pdfFileSigPayout,
202
- esiaAdditionalDocument.xmlFilePayout,
203
- esiaAdditionalDocument.xmlFileSigPayout,
204
- esiaAdditionalDocument.xmlFileWorkbook,
205
- esiaAdditionalDocument.pdfFileSigWorkbook,
206
- esiaAdditionalDocument.xmlFileSigWorkbook,
207
156
  ];
208
157
 
209
- return data.every((_) => Boolean(_));
158
+ if (!data.every((_) => Boolean(_))) {
159
+ throw new Error();
160
+ }
161
+ };
162
+
163
+ const checkEsiaDataForDebit = (esiaProfile: UpdateProfileEsiaResponse) => {
164
+ const { profile, document, addressRegistration } = esiaProfile;
165
+
166
+ const data = [
167
+ profile.name,
168
+ profile.surname,
169
+ profile.midname,
170
+ profile.birthDate,
171
+ profile.phone,
172
+ profile.email,
173
+ document.dulIssueDate,
174
+ document.dulIssuedBy,
175
+ document.dulNumber,
176
+ document.dulSerie,
177
+ document.dulSubdivisionCode,
178
+ addressRegistration,
179
+ profile.esiaAccountType,
180
+ ];
181
+
182
+ if (!data.every((_) => Boolean(_))) {
183
+ throw new Error();
184
+ }
210
185
  };
@@ -12,6 +12,7 @@ import { updateUserProfile } from '../../retail/api/updateUserProfile';
12
12
  import { updateUserTask } from '../../retail/api/updateUserTask';
13
13
  import { useConsentBkiDialog } from '../../retail/components/ConsentBkiDialog/useConsentBkiDialog';
14
14
  import { useDraftDialog } from '../../retail/components/DraftDialog/useDraftDialog';
15
+ import { useEsiaLoginDialog } from '../../retail/components/EsiaLoginDialog/useEsiaLoginDialog';
15
16
  import { VerifyPhoneDialog } from '../../retail/components/VerifyPhoneDialog/VerifyPhoneDialog';
16
17
  import { type FormRetailConsents, type LeadFormState } from '../../retail/model/LeadFormState';
17
18
  import { getUpdateUserProfileData } from '../../retail/utils/getUpdateUserProfile';
@@ -27,6 +28,7 @@ interface ApplicationLeadApiProps extends AspectsProps {
27
28
  programId: string;
28
29
  nextStepLink: string;
29
30
  productType: ProductType;
31
+ esiaError: boolean;
30
32
  }
31
33
 
32
34
  // eslint-disable-next-line max-lines-per-function
@@ -34,6 +36,7 @@ export const useApplicationLeadApi = ({
34
36
  programId,
35
37
  nextStepLink,
36
38
  productType,
39
+ esiaError,
37
40
  data,
38
41
  }: ApplicationLeadApiProps) => {
39
42
  const [isSending, { setTrue: startSending, setFalse: endSending }] = useBool(false);
@@ -42,72 +45,77 @@ export const useApplicationLeadApi = ({
42
45
  const sendAspects = useSendLeadFormAspects({ data });
43
46
  const navigator = locationNavigator();
44
47
 
45
- const goToNextStep = useCallback(() => {
46
- navigator.assign(nextStepLink);
47
- }, []);
48
-
49
- const consentBkiDialog = useConsentBkiDialog(goToNextStep);
48
+ const openEsiaLoginDialog = useEsiaLoginDialog(nextStepLink);
49
+ const consentBkiDialog = useConsentBkiDialog(openEsiaLoginDialog);
50
50
  const verifyPhoneDialog = useDialog(VerifyPhoneDialog);
51
51
  const draftDialog = useDraftDialog();
52
52
 
53
- const handleSubmit = useCallback(async (formData: LeadFormState) => {
54
- try {
55
- startSending();
56
- const profileId = await createUserProfile({
57
- profile: { phone: formatPhone(formData.phone as string) },
58
- });
53
+ const handleSubmit = useCallback(
54
+ async (formData: LeadFormState) => {
55
+ if (esiaError) {
56
+ navigator.assign(nextStepLink);
59
57
 
60
- if (profileId && formData?.phone) {
61
- const sendCurrentTask = async () => {
62
- await updateUserData({
63
- programId,
64
- profileId,
65
- formData,
66
- productType,
67
- saveUserData,
68
- sendAspects,
69
- });
70
- verifyPhoneDialog.close();
71
- if (productType === 'debitCard') {
72
- goToNextStep();
73
- } else {
74
- consentBkiDialog.open(formData.phone, profileId);
75
- }
76
- };
77
- const handleSuccessVerify = async () => {
78
- try {
79
- const lastTaskId = await getLastTaskStatus({ profileId, programId });
80
-
81
- if (lastTaskId) {
82
- const task = await getTaskById({ taskId: lastTaskId });
83
- verifyPhoneDialog.close();
84
- draftDialog.open({
85
- task,
86
- isFromLead: true,
87
- sendAspects,
88
- onClose: sendCurrentTask,
89
- });
58
+ return;
59
+ }
60
+ try {
61
+ startSending();
62
+ const profileId = await createUserProfile({
63
+ profile: { phone: formatPhone(formData.phone as string) },
64
+ });
65
+
66
+ if (profileId && formData?.phone) {
67
+ const sendCurrentTask = async () => {
68
+ await updateUserData({
69
+ programId,
70
+ profileId,
71
+ formData,
72
+ productType,
73
+ saveUserData,
74
+ sendAspects,
75
+ });
76
+ verifyPhoneDialog.close();
77
+ if (productType === 'debitCard') {
78
+ openEsiaLoginDialog();
90
79
  } else {
91
- await sendCurrentTask();
80
+ consentBkiDialog.open(formData.phone, profileId);
81
+ }
82
+ };
83
+ const handleSuccessVerify = async () => {
84
+ try {
85
+ const lastTaskId = await getLastTaskStatus({ profileId, programId });
86
+
87
+ if (lastTaskId) {
88
+ const task = await getTaskById({ taskId: lastTaskId });
89
+ verifyPhoneDialog.close();
90
+ draftDialog.open({
91
+ task,
92
+ isFromLead: true,
93
+ sendAspects,
94
+ onClose: sendCurrentTask,
95
+ });
96
+ } else {
97
+ await sendCurrentTask();
98
+ }
99
+ } catch {
100
+ setOK(false);
92
101
  }
93
- } catch {
94
- setOK(false);
95
- }
96
- };
102
+ };
97
103
 
98
- const acceptedConsents = getAcceptedConsents(formData, productType);
104
+ const acceptedConsents = getAcceptedConsents(formData, productType);
99
105
 
100
- verifyPhoneDialog.open({
101
- phone: formData?.phone,
102
- consents: acceptedConsents,
103
- onSuccess: handleSuccessVerify,
104
- });
105
- endSending();
106
+ verifyPhoneDialog.open({
107
+ phone: formData?.phone,
108
+ consents: acceptedConsents,
109
+ onSuccess: handleSuccessVerify,
110
+ });
111
+ endSending();
112
+ }
113
+ } catch {
114
+ setOK(false);
106
115
  }
107
- } catch {
108
- setOK(false);
109
- }
110
- }, []);
116
+ },
117
+ [esiaError],
118
+ );
111
119
 
112
120
  return { isSending, ok, handleSubmit };
113
121
  };