@redneckz/wildless-cms-uni-blocks 0.14.797 → 0.14.798

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 (277) hide show
  1. package/bundle/bundle.umd.js +180 -63
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  4. package/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  5. package/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  6. package/bundle/retail/api/doRequest.d.ts +3 -0
  7. package/bundle/retail/api/updateUserTask.d.ts +2 -0
  8. package/bundle/retail/api/uploadFile.d.ts +3 -0
  9. package/bundle/retail/model/LeadFormState.d.ts +13 -0
  10. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  11. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  12. package/dist/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  13. package/dist/components/ApplicationLeadForm/parseEsiaProfile.js +141 -0
  14. package/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  15. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  16. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  17. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  18. package/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  19. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  20. package/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  21. package/dist/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  22. package/dist/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  23. package/dist/retail/adaptors/getCreditFormTaskData.js +1 -0
  24. package/dist/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  25. package/dist/retail/api/doRequest.d.ts +3 -0
  26. package/dist/retail/api/doRequest.js +3 -2
  27. package/dist/retail/api/doRequest.js.map +1 -1
  28. package/dist/retail/api/updateUserTask.d.ts +2 -0
  29. package/dist/retail/api/updateUserTask.js.map +1 -1
  30. package/dist/retail/api/uploadFile.d.ts +3 -0
  31. package/dist/retail/api/uploadFile.js +22 -0
  32. package/dist/retail/api/uploadFile.js.map +1 -0
  33. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  34. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  35. package/dist/retail/components/Fields/DaDataInnField.js +10 -8
  36. package/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  37. package/dist/retail/components/Fields/Experience5YearsField.js +2 -1
  38. package/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  39. package/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
  40. package/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  41. package/dist/retail/components/Fields/JobsNumberField.js +2 -1
  42. package/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  43. package/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
  44. package/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  45. package/dist/retail/components/Fields/OrganizationNameField.js +2 -1
  46. package/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  47. package/dist/retail/components/Fields/WagesField.js +2 -1
  48. package/dist/retail/components/Fields/WagesField.js.map +1 -1
  49. package/dist/retail/content.js +8 -8
  50. package/dist/retail/content.js.map +1 -1
  51. package/dist/retail/model/LeadFormState.d.ts +13 -0
  52. package/dist/retail/utils/updateOrganizationFields.js +3 -1
  53. package/dist/retail/utils/updateOrganizationFields.js.map +1 -1
  54. package/dist/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  55. package/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  56. package/dist/ui-kit/FormField/Fields/NameField.js +2 -1
  57. package/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
  58. package/dist/ui-kit/FormField/Fields/SurnameField.js +2 -1
  59. package/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  60. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  61. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  62. package/lib/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  63. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js +138 -0
  64. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  65. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  66. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  67. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  68. package/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  69. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  70. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  71. package/lib/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  72. package/lib/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  73. package/lib/retail/adaptors/getCreditFormTaskData.js +1 -0
  74. package/lib/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  75. package/lib/retail/api/doRequest.d.ts +3 -0
  76. package/lib/retail/api/doRequest.js +1 -1
  77. package/lib/retail/api/doRequest.js.map +1 -1
  78. package/lib/retail/api/updateUserTask.d.ts +2 -0
  79. package/lib/retail/api/updateUserTask.js.map +1 -1
  80. package/lib/retail/api/uploadFile.d.ts +3 -0
  81. package/lib/retail/api/uploadFile.js +19 -0
  82. package/lib/retail/api/uploadFile.js.map +1 -0
  83. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  84. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  85. package/lib/retail/components/Fields/DaDataInnField.js +10 -8
  86. package/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  87. package/lib/retail/components/Fields/Experience5YearsField.js +2 -1
  88. package/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  89. package/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
  90. package/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  91. package/lib/retail/components/Fields/JobsNumberField.js +2 -1
  92. package/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  93. package/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
  94. package/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  95. package/lib/retail/components/Fields/OrganizationNameField.js +2 -1
  96. package/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  97. package/lib/retail/components/Fields/WagesField.js +2 -1
  98. package/lib/retail/components/Fields/WagesField.js.map +1 -1
  99. package/lib/retail/content.js +8 -8
  100. package/lib/retail/content.js.map +1 -1
  101. package/lib/retail/model/LeadFormState.d.ts +13 -0
  102. package/lib/retail/utils/updateOrganizationFields.js +3 -1
  103. package/lib/retail/utils/updateOrganizationFields.js.map +1 -1
  104. package/lib/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  105. package/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  106. package/lib/ui-kit/FormField/Fields/NameField.js +2 -1
  107. package/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
  108. package/lib/ui-kit/FormField/Fields/SurnameField.js +2 -1
  109. package/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  110. package/mobile/bundle/bundle.umd.js +180 -63
  111. package/mobile/bundle/bundle.umd.min.js +1 -1
  112. package/mobile/bundle/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  113. package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  114. package/mobile/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  115. package/mobile/bundle/retail/api/doRequest.d.ts +3 -0
  116. package/mobile/bundle/retail/api/updateUserTask.d.ts +2 -0
  117. package/mobile/bundle/retail/api/uploadFile.d.ts +3 -0
  118. package/mobile/bundle/retail/model/LeadFormState.d.ts +13 -0
  119. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  120. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  121. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +3 -0
  122. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js +141 -0
  123. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  124. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  125. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  126. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  127. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  128. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  129. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  130. package/mobile/dist/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  131. package/mobile/dist/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  132. package/mobile/dist/retail/adaptors/getCreditFormTaskData.js +1 -0
  133. package/mobile/dist/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  134. package/mobile/dist/retail/api/doRequest.d.ts +3 -0
  135. package/mobile/dist/retail/api/doRequest.js +3 -2
  136. package/mobile/dist/retail/api/doRequest.js.map +1 -1
  137. package/mobile/dist/retail/api/updateUserTask.d.ts +2 -0
  138. package/mobile/dist/retail/api/updateUserTask.js.map +1 -1
  139. package/mobile/dist/retail/api/uploadFile.d.ts +3 -0
  140. package/mobile/dist/retail/api/uploadFile.js +22 -0
  141. package/mobile/dist/retail/api/uploadFile.js.map +1 -0
  142. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  143. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  144. package/mobile/dist/retail/components/Fields/DaDataInnField.js +10 -8
  145. package/mobile/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  146. package/mobile/dist/retail/components/Fields/Experience5YearsField.js +2 -1
  147. package/mobile/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  148. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
  149. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  150. package/mobile/dist/retail/components/Fields/JobsNumberField.js +2 -1
  151. package/mobile/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  152. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
  153. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  154. package/mobile/dist/retail/components/Fields/OrganizationNameField.js +2 -1
  155. package/mobile/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  156. package/mobile/dist/retail/components/Fields/WagesField.js +2 -1
  157. package/mobile/dist/retail/components/Fields/WagesField.js.map +1 -1
  158. package/mobile/dist/retail/content.js +8 -8
  159. package/mobile/dist/retail/content.js.map +1 -1
  160. package/mobile/dist/retail/model/LeadFormState.d.ts +13 -0
  161. package/mobile/dist/retail/utils/updateOrganizationFields.js +3 -1
  162. package/mobile/dist/retail/utils/updateOrganizationFields.js.map +1 -1
  163. package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  164. package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  165. package/mobile/dist/ui-kit/FormField/Fields/NameField.js +2 -1
  166. package/mobile/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
  167. package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js +2 -1
  168. package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  169. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  170. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  171. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +3 -0
  172. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js +138 -0
  173. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  174. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  175. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  176. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  177. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  178. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  179. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  180. package/mobile/lib/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  181. package/mobile/lib/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  182. package/mobile/lib/retail/adaptors/getCreditFormTaskData.js +1 -0
  183. package/mobile/lib/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  184. package/mobile/lib/retail/api/doRequest.d.ts +3 -0
  185. package/mobile/lib/retail/api/doRequest.js +1 -1
  186. package/mobile/lib/retail/api/doRequest.js.map +1 -1
  187. package/mobile/lib/retail/api/updateUserTask.d.ts +2 -0
  188. package/mobile/lib/retail/api/updateUserTask.js.map +1 -1
  189. package/mobile/lib/retail/api/uploadFile.d.ts +3 -0
  190. package/mobile/lib/retail/api/uploadFile.js +19 -0
  191. package/mobile/lib/retail/api/uploadFile.js.map +1 -0
  192. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  193. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  194. package/mobile/lib/retail/components/Fields/DaDataInnField.js +10 -8
  195. package/mobile/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  196. package/mobile/lib/retail/components/Fields/Experience5YearsField.js +2 -1
  197. package/mobile/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  198. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
  199. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  200. package/mobile/lib/retail/components/Fields/JobsNumberField.js +2 -1
  201. package/mobile/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  202. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
  203. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  204. package/mobile/lib/retail/components/Fields/OrganizationNameField.js +2 -1
  205. package/mobile/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  206. package/mobile/lib/retail/components/Fields/WagesField.js +2 -1
  207. package/mobile/lib/retail/components/Fields/WagesField.js.map +1 -1
  208. package/mobile/lib/retail/content.js +8 -8
  209. package/mobile/lib/retail/content.js.map +1 -1
  210. package/mobile/lib/retail/model/LeadFormState.d.ts +13 -0
  211. package/mobile/lib/retail/utils/updateOrganizationFields.js +3 -1
  212. package/mobile/lib/retail/utils/updateOrganizationFields.js.map +1 -1
  213. package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  214. package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  215. package/mobile/lib/ui-kit/FormField/Fields/NameField.js +2 -1
  216. package/mobile/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
  217. package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js +2 -1
  218. package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  219. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +13 -2
  220. package/mobile/src/components/ApplicationLeadForm/parseEsiaProfile.ts +185 -0
  221. package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +64 -52
  222. package/mobile/src/components/ApplicationLeadForm/useInitApplicationLead.ts +24 -8
  223. package/mobile/src/components/CreditCardForm/getCreditCardFormTaskData.ts +1 -0
  224. package/mobile/src/retail/adaptors/getCreditFormTaskData.ts +1 -0
  225. package/mobile/src/retail/api/doRequest.ts +1 -1
  226. package/mobile/src/retail/api/updateUserTask.ts +3 -0
  227. package/mobile/src/retail/api/uploadFile.ts +28 -0
  228. package/mobile/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +1 -0
  229. package/mobile/src/retail/components/Fields/DaDataInnField.tsx +12 -7
  230. package/mobile/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
  231. package/mobile/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
  232. package/mobile/src/retail/components/Fields/JobsNumberField.tsx +2 -0
  233. package/mobile/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
  234. package/mobile/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
  235. package/mobile/src/retail/components/Fields/WagesField.tsx +2 -0
  236. package/mobile/src/retail/content.tsx +8 -8
  237. package/mobile/src/retail/model/LeadFormState.ts +14 -0
  238. package/mobile/src/retail/utils/updateOrganizationFields.ts +3 -1
  239. package/mobile/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -0
  240. package/mobile/src/ui-kit/FormField/Fields/NameField.tsx +8 -1
  241. package/mobile/src/ui-kit/FormField/Fields/SurnameField.tsx +8 -1
  242. package/package.json +2 -2
  243. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +13 -2
  244. package/src/components/ApplicationLeadForm/parseEsiaProfile.ts +185 -0
  245. package/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +64 -52
  246. package/src/components/ApplicationLeadForm/useInitApplicationLead.ts +24 -8
  247. package/src/components/CreditCardForm/getCreditCardFormTaskData.ts +1 -0
  248. package/src/retail/adaptors/getCreditFormTaskData.ts +1 -0
  249. package/src/retail/api/doRequest.ts +1 -1
  250. package/src/retail/api/updateUserTask.ts +3 -0
  251. package/src/retail/api/uploadFile.ts +28 -0
  252. package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +1 -0
  253. package/src/retail/components/Fields/DaDataInnField.tsx +12 -7
  254. package/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
  255. package/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
  256. package/src/retail/components/Fields/JobsNumberField.tsx +2 -0
  257. package/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
  258. package/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
  259. package/src/retail/components/Fields/WagesField.tsx +2 -0
  260. package/src/retail/content.tsx +8 -8
  261. package/src/retail/model/LeadFormState.ts +14 -0
  262. package/src/retail/utils/updateOrganizationFields.ts +3 -1
  263. package/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -0
  264. package/src/ui-kit/FormField/Fields/NameField.tsx +8 -1
  265. package/src/ui-kit/FormField/Fields/SurnameField.tsx +8 -1
  266. package/dist/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -63
  267. package/dist/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  268. package/lib/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -60
  269. package/lib/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  270. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.d.ts +0 -3
  271. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -63
  272. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  273. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.d.ts +0 -3
  274. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -60
  275. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  276. package/mobile/src/components/ApplicationLeadForm/pasreEsiaProfile.ts +0 -82
  277. package/src/components/ApplicationLeadForm/pasreEsiaProfile.ts +0 -82
@@ -2,6 +2,7 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { clamp } from '../../../utils/clamp';
5
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
5
6
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
6
7
 
7
8
  const MAX_YEARS = 5;
@@ -19,6 +20,7 @@ export const Experience5YearsField = JSX<CustomFieldProps>(({ field, input }) =>
19
20
  label="Стаж"
20
21
  placeholder="За последние 5 лет"
21
22
  type="number"
23
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
22
24
  {...field(input?.name ?? '')}
23
25
  {...input}
24
26
  onChange={onChange}
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
3
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
3
4
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
4
5
 
5
6
  export const GeneralSeniorityField = JSX<CustomFieldProps>(({ field, input }) => (
@@ -8,6 +9,7 @@ export const GeneralSeniorityField = JSX<CustomFieldProps>(({ field, input }) =>
8
9
  type="number"
9
10
  maxLength={2}
10
11
  placeholder="Количество лет"
12
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
11
13
  {...field(input?.name ?? '')}
12
14
  {...input}
13
15
  />
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
3
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
3
4
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
4
5
 
5
6
  export const JobsNumberField = JSX<CustomFieldProps>(({ field, input }) => (
@@ -8,6 +9,7 @@ export const JobsNumberField = JSX<CustomFieldProps>(({ field, input }) => (
8
9
  placeholder="Количество мест"
9
10
  isInteger={true}
10
11
  maxLength={2}
12
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
11
13
  {...field(input?.name ?? '')}
12
14
  {...input}
13
15
  />
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
3
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
3
4
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
4
5
 
5
6
  export const LastJobExperienceField = JSX<CustomFieldProps>(({ field, input }) => (
@@ -8,6 +9,7 @@ export const LastJobExperienceField = JSX<CustomFieldProps>(({ field, input }) =
8
9
  placeholder="Количество лет"
9
10
  type="number"
10
11
  maxLength={2}
12
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
11
13
  {...field(input?.name ?? '')}
12
14
  {...input}
13
15
  />
@@ -3,6 +3,7 @@ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
4
4
  import { type DaDataSuggestion } from '../../api/dadataHints/dadataHintsType';
5
5
  import { useRetailFormStore } from '../../hooks/useRetailFormStore';
6
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
6
7
  import { updateOrganizationFields } from '../../utils/updateOrganizationFields';
7
8
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
8
9
 
@@ -17,6 +18,7 @@ export const OrganizationNameField = JSX<CustomFieldProps>(({ field, input }) =>
17
18
  return (
18
19
  <DaDataInputControl
19
20
  label="Наименование организации"
21
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
20
22
  {...input}
21
23
  {...field(input?.name ?? '')}
22
24
  onDaDataChange={onDaDataChange}
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProps';
3
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
3
4
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
4
5
 
5
6
  export const WagesField = JSX<CustomFieldProps>(({ field, input }) => (
@@ -7,6 +8,7 @@ export const WagesField = JSX<CustomFieldProps>(({ field, input }) => (
7
8
  label="Совокупный доход в месяц после вычета налогов (зарплата, премии)"
8
9
  placeholder="Введите значение"
9
10
  isInteger={true}
11
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
10
12
  {...field(input?.name ?? '')}
11
13
  {...input}
12
14
  />
@@ -18,7 +18,7 @@ const PERSONAL_DATA: CreditCardSectionsProps[] = [
18
18
  { name: 'sex', required: true },
19
19
  { name: 'limitedBirthday', required: true, filledByEsia: true },
20
20
  { name: 'birthPlace', required: true, filledByEsia: true },
21
- { name: 'phone', required: true, filledByEsia: true },
21
+ { name: 'phone', required: true },
22
22
  { name: 'email', required: true, dadata: true },
23
23
  ],
24
24
  },
@@ -105,13 +105,13 @@ const EMPLOYMENT_CONTENT: CreditCardSectionsProps[] = [
105
105
  {
106
106
  inputs: [
107
107
  { name: 'employment', required: true },
108
- { name: 'organizationName', required: true, dadata: true },
108
+ { name: 'organizationName', required: true, dadata: true, filledByEsia: true },
109
109
  ],
110
110
  },
111
111
  {
112
112
  columns: 2,
113
113
  inputs: [
114
- { name: 'inn', required: true, dadata: true },
114
+ { name: 'inn', required: true, dadata: true, filledByEsia: true },
115
115
  { name: 'legalForm', required: true },
116
116
  ],
117
117
  },
@@ -126,10 +126,10 @@ const EMPLOYMENT_CONTENT: CreditCardSectionsProps[] = [
126
126
  inputs: [
127
127
  { name: 'employerActivities', required: true },
128
128
  { name: 'employerOrganization', required: true },
129
- { name: 'generalSeniority', required: true },
130
- { name: 'lastJobExperience', required: true },
131
- { name: 'experience5Years', required: true },
132
- { name: 'jobsNumber', required: true },
129
+ { name: 'generalSeniority', required: true, filledByEsia: true },
130
+ { name: 'lastJobExperience', required: true, filledByEsia: true },
131
+ { name: 'experience5Years', required: true, filledByEsia: true },
132
+ { name: 'jobsNumber', required: true, filledByEsia: true },
133
133
  ],
134
134
  },
135
135
  {
@@ -194,7 +194,7 @@ const FAMILY_STATUS_AND_INCOME_CONTENT: CreditCardSectionsProps[] = [
194
194
  },
195
195
  {
196
196
  columns: 1,
197
- inputs: [{ name: 'wages', required: true }],
197
+ inputs: [{ name: 'wages', required: true, filledByEsia: true }],
198
198
  },
199
199
  {
200
200
  columns: 1,
@@ -67,6 +67,19 @@ export interface CalculatorProps {
67
67
  isStateEmployee?: boolean;
68
68
  }
69
69
 
70
+ export type File = {
71
+ fileId: number;
72
+ fileName: string;
73
+ contentType: string;
74
+ fileSize: number;
75
+ downloadLink: string;
76
+ taskId: number;
77
+ documentCategoryCd: {
78
+ key: string;
79
+ value: string;
80
+ };
81
+ };
82
+
70
83
  export type FormRetailConsents = CreditFormConsents &
71
84
  CreditCardFormConsents &
72
85
  DebitCardFormConsents;
@@ -174,4 +187,5 @@ export interface LeadFormState extends FormRetailConsents, FormStateDeliveryType
174
187
  latinName?: string;
175
188
  latinSurname?: string;
176
189
  regionHasDelivery?: boolean;
190
+ files?: File[];
177
191
  }
@@ -14,7 +14,7 @@ export const updateOrganizationFields = (
14
14
  field: FormFieldRegisterer<any>,
15
15
  item: DaDataSuggestion,
16
16
  ) => {
17
- const { okved, okopf, inn } = getOrganizationRequisites(item);
17
+ const { okved, okopf, inn, organizationName } = getOrganizationRequisites(item);
18
18
 
19
19
  field?.('legalForm')?.onChange?.(item.data?.opf?.short);
20
20
 
@@ -27,6 +27,7 @@ export const updateOrganizationFields = (
27
27
  employerActivities: getOrganizationActivityType(store?.employerActivities ?? [], okved),
28
28
  organization: getOrganizationType(store?.organization ?? [], okopf, inn),
29
29
  employerOrganization: getOrganizationKind(store?.employerOrganization ?? [], okopf),
30
+ organizationName,
30
31
  };
31
32
 
32
33
  for (const fieldName in organizationData) {
@@ -38,4 +39,5 @@ const getOrganizationRequisites = (item: DaDataSuggestion) => ({
38
39
  inn: item.data?.inn ?? '',
39
40
  okopf: Number(item.data?.opf?.code),
40
41
  okved: item.data?.okved ?? '',
42
+ organizationName: item.data?.name?.short_with_opf ?? '',
41
43
  });
@@ -1,4 +1,5 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { isEsiaAuthorize } from '../../../retail/utils/isEsiaAuthorize';
2
3
  import { InputControl } from '../../Input/InputControl';
3
4
  import { type CustomFieldProps } from '../CustomFieldProps';
4
5
 
@@ -6,6 +7,7 @@ export const MiddleNameField = JSX<CustomFieldProps>(({ field, input }) => (
6
7
  <InputControl
7
8
  label="Отчество (Обязательно, при наличии)"
8
9
  maxLength={60}
10
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
9
11
  {...field(input?.name ?? '')}
10
12
  {...input}
11
13
  />
@@ -1,7 +1,14 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { isEsiaAuthorize } from '../../../retail/utils/isEsiaAuthorize';
2
3
  import { InputControl } from '../../Input/InputControl';
3
4
  import { type CustomFieldProps } from '../CustomFieldProps';
4
5
 
5
6
  export const NameField = JSX<CustomFieldProps>(({ field, input }) => (
6
- <InputControl label="Имя" maxLength={60} {...field(input?.name ?? '')} {...input} />
7
+ <InputControl
8
+ label="Имя"
9
+ maxLength={60}
10
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
11
+ {...field(input?.name ?? '')}
12
+ {...input}
13
+ />
7
14
  ));
@@ -1,7 +1,14 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { isEsiaAuthorize } from '../../../retail/utils/isEsiaAuthorize';
2
3
  import { InputControl } from '../../Input/InputControl';
3
4
  import { type CustomFieldProps } from '../CustomFieldProps';
4
5
 
5
6
  export const SurnameField = JSX<CustomFieldProps>(({ field, input }) => (
6
- <InputControl label="Фамилия" maxLength={60} {...field(input?.name ?? '')} {...input} />
7
+ <InputControl
8
+ label="Фамилия"
9
+ maxLength={60}
10
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
11
+ {...field(input?.name ?? '')}
12
+ {...input}
13
+ />
7
14
  ));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.797",
3
+ "version": "0.14.798",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -214,7 +214,7 @@
214
214
  "path": "lib/common.css"
215
215
  },
216
216
  {
217
- "limit": "100 kB",
217
+ "limit": "101 kB",
218
218
  "path": "bundle/bundle.umd.min.js"
219
219
  }
220
220
  ],
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useEffect, useMemo } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
3
4
  import { useForm } from '../../hooks/useForm/useForm';
4
5
  import { type FieldRetailDef } from '../../retail/model/RetailFormContent';
5
6
  import { validatorObj } from '../../retail/validator/validatorObj';
@@ -10,6 +11,7 @@ import { inputColumnStyles } from '../../ui-kit/FormField/inputColumnStyle';
10
11
  import { renderTitle } from '../../ui-kit/FormField/renderTitle';
11
12
  import { Loader } from '../../ui-kit/Loader/Loader';
12
13
  import { ResponseTypeDialog } from '../../ui-kit/ResponseTypeDialog/ResponseTypeDialog';
14
+ import { Text } from '../../ui-kit/Text/Text';
13
15
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
14
16
  import { style } from '../../utils/style';
15
17
  import { getApplicationFormData } from './applicationFormData';
@@ -32,6 +34,7 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
32
34
  data,
33
35
  ...rest
34
36
  }) => {
37
+ const [esiaError, { setTrue: setEsiaError }] = useBool(false);
35
38
  const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
36
39
  const inputs = useMemo(
37
40
  () => (applicationFormData?.flatMap((_) => _?.inputs) || []) as FieldRetailDef[],
@@ -40,15 +43,17 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
40
43
 
41
44
  const formValidator = useMemo(() => getFormValidator(inputs, validatorObj), [inputs]);
42
45
 
43
- const [initialFormState, { isLoading }] = useInitApplicationLead(
46
+ const [initialFormState, { isLoading }] = useInitApplicationLead({
44
47
  inputs,
45
48
  nextStepLink,
46
49
  productType,
47
- );
50
+ setEsiaError,
51
+ });
48
52
  const { isSending, ok, handleSubmit } = useApplicationLeadApi({
49
53
  programId,
50
54
  nextStepLink,
51
55
  productType,
56
+ esiaError,
52
57
  data,
53
58
  });
54
59
 
@@ -82,6 +87,12 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
82
87
  </div>
83
88
  ))}
84
89
  {renderSubmitButton(button, isSending)}
90
+ {esiaError ? (
91
+ <Text size="text-m" font="font-medium" color="text-error">
92
+ Использовать Госуслуги для оформления заявки невозможно, необходимо заполнить поля
93
+ вручную.
94
+ </Text>
95
+ ) : null}
85
96
  </form>
86
97
  </ApplicationFormLayout>
87
98
  );
@@ -0,0 +1,185 @@
1
+ /* eslint-disable max-lines */
2
+ import { type UpdateProfileEsiaResponse } from '../../retail/api/updateProfileEsia';
3
+ import { uploadFile, type DocumentCategory } from '../../retail/api/uploadFile';
4
+ import { type Address, type File, type LeadFormState } from '../../retail/model/LeadFormState';
5
+ import { normalizePhone } from '../../ui-kit/PhoneInput/normalizePhone';
6
+
7
+ export const parseEsiaProfile = async (
8
+ esiaProfile: UpdateProfileEsiaResponse,
9
+ taskId: string,
10
+ isDebit: boolean,
11
+ ): Promise<LeadFormState> => {
12
+ isDebit ? checkEsiaDataForDebit(esiaProfile) : checkEsiaDataForCredit(esiaProfile);
13
+
14
+ const { profile, addInfo, document, addressRegistration, addressFact, esiaAdditionalDocument } =
15
+ esiaProfile;
16
+ const files: File[] = [];
17
+
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
+ });
31
+ }
32
+
33
+ const mainData = {
34
+ name: profile.name,
35
+ surname: profile.surname,
36
+ middleName: profile.midname,
37
+ limitedBirthday: profile.birthDate,
38
+ phone: normalizePhone(profile.phone),
39
+ email: profile.email,
40
+ dulIssueDate: document.dulIssueDate,
41
+ dulIssuedBy: document.dulIssuedBy,
42
+ dulNumber: document.dulNumber,
43
+ dulSerie: document.dulSerie,
44
+ dulSubdivisionCode: document.dulSubdivisionCode,
45
+ birthPlace: addInfo.birthPlace,
46
+ addressRegistration: buildAddress(addressRegistration),
47
+ addressFact: buildAddress(addressFact),
48
+ esiaAccountTypeCd: profile.esiaAccountType,
49
+ };
50
+
51
+ return {
52
+ ...mainData,
53
+ ...(!isDebit && {
54
+ snils: addInfo.snils,
55
+ inn: esiaAdditionalDocument.inn,
56
+ wages: Math.floor(esiaAdditionalDocument.averageMonthlyIncome)?.toString(),
57
+ beginDate: esiaAdditionalDocument.startWorkDate,
58
+ experience5Years: getYearFromMonth(esiaAdditionalDocument.workLengthInFiveYears).toString(),
59
+ generalSeniority: getYearFromMonth(esiaAdditionalDocument.workLength).toString(),
60
+ lastJobExperience: getYearFromMonth(esiaAdditionalDocument.workLengthLastJob).toString(),
61
+ jobsNumber: esiaAdditionalDocument.jobsNumberInFiveYears.toString(),
62
+ files,
63
+ }),
64
+ };
65
+ };
66
+
67
+ const concatFullAddress = (address: Array<string | undefined>): string => {
68
+ return address.reduce((acc: string, value) => {
69
+ if (value) {
70
+ return acc ? `${acc}, ${value}` : value;
71
+ }
72
+
73
+ return acc;
74
+ }, '');
75
+ };
76
+
77
+ const buildAddress = (fields: UpdateProfileEsiaResponse['addressRegistration']): Address => {
78
+ const {
79
+ postcode,
80
+ region,
81
+ regionCode,
82
+ locality,
83
+ city,
84
+ street,
85
+ house,
86
+ building,
87
+ block,
88
+ apartment,
89
+ } = fields;
90
+
91
+ const place = locality || city;
92
+
93
+ const fullAddress = concatFullAddress([
94
+ postcode,
95
+ region,
96
+ place,
97
+ street ? `ул ${street}` : undefined,
98
+ house ? `д ${house}` : undefined,
99
+ block ? `к ${block}` : undefined,
100
+ building ? `стр ${building}` : undefined,
101
+ apartment ? `кв ${apartment}` : undefined,
102
+ ]);
103
+
104
+ return {
105
+ ...fields,
106
+ regionCode: regionCode?.key,
107
+ fullAddress,
108
+ };
109
+ };
110
+
111
+ const getYearFromMonth = (month: number) => Math.floor(month / 12);
112
+
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));
128
+ };
129
+
130
+ const checkEsiaDataForCredit = (esiaProfile: UpdateProfileEsiaResponse) => {
131
+ const { profile, document, addressRegistration, esiaAdditionalDocument } = esiaProfile;
132
+
133
+ const data = [
134
+ profile.name,
135
+ profile.surname,
136
+ profile.midname,
137
+ profile.birthDate,
138
+ profile.phone,
139
+ profile.email,
140
+ document.dulIssueDate,
141
+ document.dulIssuedBy,
142
+ document.dulNumber,
143
+ document.dulSerie,
144
+ document.dulSubdivisionCode,
145
+ addressRegistration,
146
+ profile.esiaAccountType,
147
+ esiaAdditionalDocument.inn,
148
+ esiaAdditionalDocument.averageMonthlyIncome.toString(),
149
+ esiaAdditionalDocument.startWorkDate,
150
+ esiaAdditionalDocument.workLengthInFiveYears.toString(),
151
+ esiaAdditionalDocument.workLength.toString(),
152
+ esiaAdditionalDocument.workLengthLastJob.toString(),
153
+ esiaAdditionalDocument.jobsNumberInFiveYears.toString(),
154
+ esiaAdditionalDocument.pdfFilePayout,
155
+ esiaAdditionalDocument.pdfFileWorkbook,
156
+ ];
157
+
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
+ }
185
+ };
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable max-lines */
2
2
  import { useCallback, useState } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
4
+ import { locationNavigator } from '../../external/locationNavigator';
4
5
  import { type AspectsProps } from '../../model/AspectsProps';
5
6
  import { createDraftTask } from '../../retail/api/createDraftTask';
6
7
  import { createUserProfile } from '../../retail/api/createUserProfile';
@@ -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,76 +36,86 @@ 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);
40
43
  const [ok, setOK] = useState<boolean | undefined>();
41
44
  const saveUserData = useSaveUserData();
42
45
  const sendAspects = useSendLeadFormAspects({ data });
46
+ const navigator = locationNavigator();
43
47
 
44
48
  const openEsiaLoginDialog = useEsiaLoginDialog(nextStepLink);
45
49
  const consentBkiDialog = useConsentBkiDialog(openEsiaLoginDialog);
46
50
  const verifyPhoneDialog = useDialog(VerifyPhoneDialog);
47
51
  const draftDialog = useDraftDialog();
48
52
 
49
- const handleSubmit = useCallback(async (formData: LeadFormState) => {
50
- try {
51
- startSending();
52
- const profileId = await createUserProfile({
53
- profile: { phone: formatPhone(formData.phone as string) },
54
- });
53
+ const handleSubmit = useCallback(
54
+ async (formData: LeadFormState) => {
55
+ if (esiaError) {
56
+ navigator.assign(nextStepLink);
55
57
 
56
- if (profileId && formData?.phone) {
57
- const sendCurrentTask = async () => {
58
- await updateUserData({
59
- programId,
60
- profileId,
61
- formData,
62
- productType,
63
- saveUserData,
64
- sendAspects,
65
- });
66
- verifyPhoneDialog.close();
67
- if (productType === 'debitCard') {
68
- openEsiaLoginDialog();
69
- } else {
70
- consentBkiDialog.open(formData.phone, profileId);
71
- }
72
- };
73
- const handleSuccessVerify = async () => {
74
- try {
75
- const lastTaskId = await getLastTaskStatus({ profileId, programId });
76
-
77
- if (lastTaskId) {
78
- const task = await getTaskById({ taskId: lastTaskId });
79
- verifyPhoneDialog.close();
80
- draftDialog.open({
81
- task,
82
- isFromLead: true,
83
- sendAspects,
84
- onClose: sendCurrentTask,
85
- });
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();
86
79
  } else {
87
- await sendCurrentTask();
80
+ consentBkiDialog.open(formData.phone, profileId);
88
81
  }
89
- } catch {
90
- setOK(false);
91
- }
92
- };
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);
101
+ }
102
+ };
93
103
 
94
- const acceptedConsents = getAcceptedConsents(formData, productType);
104
+ const acceptedConsents = getAcceptedConsents(formData, productType);
95
105
 
96
- verifyPhoneDialog.open({
97
- phone: formData?.phone,
98
- consents: acceptedConsents,
99
- onSuccess: handleSuccessVerify,
100
- });
101
- endSending();
106
+ verifyPhoneDialog.open({
107
+ phone: formData?.phone,
108
+ consents: acceptedConsents,
109
+ onSuccess: handleSuccessVerify,
110
+ });
111
+ endSending();
112
+ }
113
+ } catch {
114
+ setOK(false);
102
115
  }
103
- } catch {
104
- setOK(false);
105
- }
106
- }, []);
116
+ },
117
+ [esiaError],
118
+ );
107
119
 
108
120
  return { isSending, ok, handleSubmit };
109
121
  };