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

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 (287) hide show
  1. package/bundle/bundle.umd.js +183 -64
  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/CalculatorDeposit/getDepositCalculatorParams.js +3 -1
  22. package/dist/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  23. package/dist/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  24. package/dist/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  25. package/dist/retail/adaptors/getCreditFormTaskData.js +1 -0
  26. package/dist/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  27. package/dist/retail/api/doRequest.d.ts +3 -0
  28. package/dist/retail/api/doRequest.js +3 -2
  29. package/dist/retail/api/doRequest.js.map +1 -1
  30. package/dist/retail/api/updateUserTask.d.ts +2 -0
  31. package/dist/retail/api/updateUserTask.js.map +1 -1
  32. package/dist/retail/api/uploadFile.d.ts +3 -0
  33. package/dist/retail/api/uploadFile.js +22 -0
  34. package/dist/retail/api/uploadFile.js.map +1 -0
  35. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  36. package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  37. package/dist/retail/components/Fields/DaDataInnField.js +10 -8
  38. package/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  39. package/dist/retail/components/Fields/Experience5YearsField.js +2 -1
  40. package/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  41. package/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
  42. package/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  43. package/dist/retail/components/Fields/JobsNumberField.js +2 -1
  44. package/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  45. package/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
  46. package/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  47. package/dist/retail/components/Fields/OrganizationNameField.js +2 -1
  48. package/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  49. package/dist/retail/components/Fields/WagesField.js +2 -1
  50. package/dist/retail/components/Fields/WagesField.js.map +1 -1
  51. package/dist/retail/content.js +8 -8
  52. package/dist/retail/content.js.map +1 -1
  53. package/dist/retail/model/LeadFormState.d.ts +13 -0
  54. package/dist/retail/utils/updateOrganizationFields.js +3 -1
  55. package/dist/retail/utils/updateOrganizationFields.js.map +1 -1
  56. package/dist/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  57. package/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  58. package/dist/ui-kit/FormField/Fields/NameField.js +2 -1
  59. package/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
  60. package/dist/ui-kit/FormField/Fields/SurnameField.js +2 -1
  61. package/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  62. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  63. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  64. package/lib/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  65. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js +138 -0
  66. package/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  67. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  68. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  69. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  70. package/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  71. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  72. package/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  73. package/lib/components/CalculatorDeposit/getDepositCalculatorParams.js +3 -1
  74. package/lib/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  75. package/lib/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  76. package/lib/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  77. package/lib/retail/adaptors/getCreditFormTaskData.js +1 -0
  78. package/lib/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  79. package/lib/retail/api/doRequest.d.ts +3 -0
  80. package/lib/retail/api/doRequest.js +1 -1
  81. package/lib/retail/api/doRequest.js.map +1 -1
  82. package/lib/retail/api/updateUserTask.d.ts +2 -0
  83. package/lib/retail/api/updateUserTask.js.map +1 -1
  84. package/lib/retail/api/uploadFile.d.ts +3 -0
  85. package/lib/retail/api/uploadFile.js +19 -0
  86. package/lib/retail/api/uploadFile.js.map +1 -0
  87. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  88. package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  89. package/lib/retail/components/Fields/DaDataInnField.js +10 -8
  90. package/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  91. package/lib/retail/components/Fields/Experience5YearsField.js +2 -1
  92. package/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  93. package/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
  94. package/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  95. package/lib/retail/components/Fields/JobsNumberField.js +2 -1
  96. package/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  97. package/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
  98. package/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  99. package/lib/retail/components/Fields/OrganizationNameField.js +2 -1
  100. package/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  101. package/lib/retail/components/Fields/WagesField.js +2 -1
  102. package/lib/retail/components/Fields/WagesField.js.map +1 -1
  103. package/lib/retail/content.js +8 -8
  104. package/lib/retail/content.js.map +1 -1
  105. package/lib/retail/model/LeadFormState.d.ts +13 -0
  106. package/lib/retail/utils/updateOrganizationFields.js +3 -1
  107. package/lib/retail/utils/updateOrganizationFields.js.map +1 -1
  108. package/lib/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  109. package/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  110. package/lib/ui-kit/FormField/Fields/NameField.js +2 -1
  111. package/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
  112. package/lib/ui-kit/FormField/Fields/SurnameField.js +2 -1
  113. package/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  114. package/mobile/bundle/bundle.umd.js +183 -64
  115. package/mobile/bundle/bundle.umd.min.js +1 -1
  116. package/mobile/bundle/components/ApplicationLeadForm/{pasreEsiaProfile.d.ts → parseEsiaProfile.d.ts} +1 -1
  117. package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  118. package/mobile/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  119. package/mobile/bundle/retail/api/doRequest.d.ts +3 -0
  120. package/mobile/bundle/retail/api/updateUserTask.d.ts +2 -0
  121. package/mobile/bundle/retail/api/uploadFile.d.ts +3 -0
  122. package/mobile/bundle/retail/model/LeadFormState.d.ts +13 -0
  123. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  124. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  125. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +3 -0
  126. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js +141 -0
  127. package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  128. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  129. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  130. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  131. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  132. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  133. package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  134. package/mobile/dist/components/CalculatorDeposit/getDepositCalculatorParams.js +3 -1
  135. package/mobile/dist/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  136. package/mobile/dist/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  137. package/mobile/dist/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  138. package/mobile/dist/retail/adaptors/getCreditFormTaskData.js +1 -0
  139. package/mobile/dist/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  140. package/mobile/dist/retail/api/doRequest.d.ts +3 -0
  141. package/mobile/dist/retail/api/doRequest.js +3 -2
  142. package/mobile/dist/retail/api/doRequest.js.map +1 -1
  143. package/mobile/dist/retail/api/updateUserTask.d.ts +2 -0
  144. package/mobile/dist/retail/api/updateUserTask.js.map +1 -1
  145. package/mobile/dist/retail/api/uploadFile.d.ts +3 -0
  146. package/mobile/dist/retail/api/uploadFile.js +22 -0
  147. package/mobile/dist/retail/api/uploadFile.js.map +1 -0
  148. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  149. package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  150. package/mobile/dist/retail/components/Fields/DaDataInnField.js +10 -8
  151. package/mobile/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
  152. package/mobile/dist/retail/components/Fields/Experience5YearsField.js +2 -1
  153. package/mobile/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
  154. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
  155. package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  156. package/mobile/dist/retail/components/Fields/JobsNumberField.js +2 -1
  157. package/mobile/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
  158. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
  159. package/mobile/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  160. package/mobile/dist/retail/components/Fields/OrganizationNameField.js +2 -1
  161. package/mobile/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
  162. package/mobile/dist/retail/components/Fields/WagesField.js +2 -1
  163. package/mobile/dist/retail/components/Fields/WagesField.js.map +1 -1
  164. package/mobile/dist/retail/content.js +8 -8
  165. package/mobile/dist/retail/content.js.map +1 -1
  166. package/mobile/dist/retail/model/LeadFormState.d.ts +13 -0
  167. package/mobile/dist/retail/utils/updateOrganizationFields.js +3 -1
  168. package/mobile/dist/retail/utils/updateOrganizationFields.js.map +1 -1
  169. package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  170. package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  171. package/mobile/dist/ui-kit/FormField/Fields/NameField.js +2 -1
  172. package/mobile/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
  173. package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js +2 -1
  174. package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  175. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -2
  176. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  177. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +3 -0
  178. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js +138 -0
  179. package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -0
  180. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +2 -1
  181. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +8 -2
  182. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  183. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +8 -1
  184. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js +8 -4
  185. package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
  186. package/mobile/lib/components/CalculatorDeposit/getDepositCalculatorParams.js +3 -1
  187. package/mobile/lib/components/CalculatorDeposit/getDepositCalculatorParams.js.map +1 -1
  188. package/mobile/lib/components/CreditCardForm/getCreditCardFormTaskData.js +1 -0
  189. package/mobile/lib/components/CreditCardForm/getCreditCardFormTaskData.js.map +1 -1
  190. package/mobile/lib/retail/adaptors/getCreditFormTaskData.js +1 -0
  191. package/mobile/lib/retail/adaptors/getCreditFormTaskData.js.map +1 -1
  192. package/mobile/lib/retail/api/doRequest.d.ts +3 -0
  193. package/mobile/lib/retail/api/doRequest.js +1 -1
  194. package/mobile/lib/retail/api/doRequest.js.map +1 -1
  195. package/mobile/lib/retail/api/updateUserTask.d.ts +2 -0
  196. package/mobile/lib/retail/api/updateUserTask.js.map +1 -1
  197. package/mobile/lib/retail/api/uploadFile.d.ts +3 -0
  198. package/mobile/lib/retail/api/uploadFile.js +19 -0
  199. package/mobile/lib/retail/api/uploadFile.js.map +1 -0
  200. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +1 -0
  201. package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +1 -1
  202. package/mobile/lib/retail/components/Fields/DaDataInnField.js +10 -8
  203. package/mobile/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
  204. package/mobile/lib/retail/components/Fields/Experience5YearsField.js +2 -1
  205. package/mobile/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
  206. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
  207. package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
  208. package/mobile/lib/retail/components/Fields/JobsNumberField.js +2 -1
  209. package/mobile/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
  210. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
  211. package/mobile/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
  212. package/mobile/lib/retail/components/Fields/OrganizationNameField.js +2 -1
  213. package/mobile/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
  214. package/mobile/lib/retail/components/Fields/WagesField.js +2 -1
  215. package/mobile/lib/retail/components/Fields/WagesField.js.map +1 -1
  216. package/mobile/lib/retail/content.js +8 -8
  217. package/mobile/lib/retail/content.js.map +1 -1
  218. package/mobile/lib/retail/model/LeadFormState.d.ts +13 -0
  219. package/mobile/lib/retail/utils/updateOrganizationFields.js +3 -1
  220. package/mobile/lib/retail/utils/updateOrganizationFields.js.map +1 -1
  221. package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js +2 -1
  222. package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
  223. package/mobile/lib/ui-kit/FormField/Fields/NameField.js +2 -1
  224. package/mobile/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
  225. package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js +2 -1
  226. package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
  227. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +13 -2
  228. package/mobile/src/components/ApplicationLeadForm/parseEsiaProfile.ts +185 -0
  229. package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +64 -52
  230. package/mobile/src/components/ApplicationLeadForm/useInitApplicationLead.ts +24 -8
  231. package/mobile/src/components/CalculatorDeposit/getDepositCalculatorParams.ts +3 -1
  232. package/mobile/src/components/CreditCardForm/getCreditCardFormTaskData.ts +1 -0
  233. package/mobile/src/retail/adaptors/getCreditFormTaskData.ts +1 -0
  234. package/mobile/src/retail/api/doRequest.ts +1 -1
  235. package/mobile/src/retail/api/updateUserTask.ts +3 -0
  236. package/mobile/src/retail/api/uploadFile.ts +28 -0
  237. package/mobile/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +1 -0
  238. package/mobile/src/retail/components/Fields/DaDataInnField.tsx +12 -7
  239. package/mobile/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
  240. package/mobile/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
  241. package/mobile/src/retail/components/Fields/JobsNumberField.tsx +2 -0
  242. package/mobile/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
  243. package/mobile/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
  244. package/mobile/src/retail/components/Fields/WagesField.tsx +2 -0
  245. package/mobile/src/retail/content.tsx +8 -8
  246. package/mobile/src/retail/model/LeadFormState.ts +14 -0
  247. package/mobile/src/retail/utils/updateOrganizationFields.ts +3 -1
  248. package/mobile/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -0
  249. package/mobile/src/ui-kit/FormField/Fields/NameField.tsx +8 -1
  250. package/mobile/src/ui-kit/FormField/Fields/SurnameField.tsx +8 -1
  251. package/package.json +2 -2
  252. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +13 -2
  253. package/src/components/ApplicationLeadForm/parseEsiaProfile.ts +185 -0
  254. package/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +64 -52
  255. package/src/components/ApplicationLeadForm/useInitApplicationLead.ts +24 -8
  256. package/src/components/CalculatorDeposit/getDepositCalculatorParams.ts +3 -1
  257. package/src/components/CreditCardForm/getCreditCardFormTaskData.ts +1 -0
  258. package/src/retail/adaptors/getCreditFormTaskData.ts +1 -0
  259. package/src/retail/api/doRequest.ts +1 -1
  260. package/src/retail/api/updateUserTask.ts +3 -0
  261. package/src/retail/api/uploadFile.ts +28 -0
  262. package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +1 -0
  263. package/src/retail/components/Fields/DaDataInnField.tsx +12 -7
  264. package/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
  265. package/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
  266. package/src/retail/components/Fields/JobsNumberField.tsx +2 -0
  267. package/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
  268. package/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
  269. package/src/retail/components/Fields/WagesField.tsx +2 -0
  270. package/src/retail/content.tsx +8 -8
  271. package/src/retail/model/LeadFormState.ts +14 -0
  272. package/src/retail/utils/updateOrganizationFields.ts +3 -1
  273. package/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -0
  274. package/src/ui-kit/FormField/Fields/NameField.tsx +8 -1
  275. package/src/ui-kit/FormField/Fields/SurnameField.tsx +8 -1
  276. package/dist/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -63
  277. package/dist/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  278. package/lib/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -60
  279. package/lib/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  280. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.d.ts +0 -3
  281. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -63
  282. package/mobile/dist/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  283. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.d.ts +0 -3
  284. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.js +0 -60
  285. package/mobile/lib/components/ApplicationLeadForm/pasreEsiaProfile.js.map +0 -1
  286. package/mobile/src/components/ApplicationLeadForm/pasreEsiaProfile.ts +0 -82
  287. package/src/components/ApplicationLeadForm/pasreEsiaProfile.ts +0 -82
@@ -0,0 +1,28 @@
1
+ import { type File } from '../model/LeadFormState';
2
+ import { getAuthorizationHeaders } from './doRequest';
3
+
4
+ export type DocumentCategory = 'CONFIRMING_EMPLOYMENT_DOC' | 'CONFIRMING_INCOME_DOC';
5
+
6
+ export const uploadFile = async (
7
+ file: Blob,
8
+ taskId: string,
9
+ documentCategory: DocumentCategory,
10
+ ): Promise<File> => {
11
+ const fd = new FormData();
12
+ fd.append('taskId', taskId);
13
+ fd.append('documentCategory', documentCategory);
14
+ fd.append('file', file, 'file.pdf');
15
+
16
+ const res = await globalThis
17
+ ?.fetch?.(`/light-api-cash/v1/file`, {
18
+ method: 'POST',
19
+ headers: {
20
+ ...getAuthorizationHeaders(),
21
+ },
22
+ credentials: 'include',
23
+ body: fd,
24
+ })
25
+ .then((response) => response.json());
26
+
27
+ return res;
28
+ };
@@ -22,6 +22,7 @@ export const EsiaLoginDialog = JSX<EsiaLoginDialogProps>(({ onClose }) => {
22
22
 
23
23
  if (resp?.link) {
24
24
  navigator.assign(resp.link);
25
+ globalThis.location.href = resp.link;
25
26
  }
26
27
  }, []);
27
28
 
@@ -4,37 +4,42 @@ import { type CustomFieldProps } from '../../../ui-kit/FormField/CustomFieldProp
4
4
  import { type DaDataSuggestion } from '../../api/dadataHints/dadataHintsType';
5
5
  import { getOrganizationFromInn } from '../../api/getOrganizationFromInn';
6
6
  import { useRetailFormStore } from '../../hooks/useRetailFormStore';
7
+ import { isEsiaAuthorize } from '../../utils/isEsiaAuthorize';
7
8
  import { updateOrganizationFields } from '../../utils/updateOrganizationFields';
8
9
  import { DaDataInputControl } from '../DaDataInputControl/DaDataInputControl';
9
10
 
10
11
  export const DaDataInnField = JSX<CustomFieldProps>(({ field, input }) => {
11
12
  const store = useRetailFormStore();
13
+ const { employerActivities, employerOrganization, organization, amountWorkers } = store;
12
14
  const esiaAccountTypeCd = field?.('esiaAccountTypeCd')?.value;
13
15
  const inn = field?.('inn')?.value;
14
16
 
15
17
  const onDaDataChange = useCallback((item: DaDataSuggestion) => {
16
- field?.('organizationName')?.onChange?.(item.data?.name?.short_with_opf);
17
18
  updateOrganizationFields(store, field, item);
18
19
  }, []);
19
20
 
20
21
  useEffect(() => {
21
- if (!esiaAccountTypeCd || !inn) {
22
+ if (
23
+ !esiaAccountTypeCd ||
24
+ !inn ||
25
+ !(employerActivities && employerOrganization && organization && amountWorkers)
26
+ ) {
22
27
  return;
23
28
  }
24
29
  (async () => {
25
- const organization = await getOrganizationFromInn(inn as string);
26
- if (organization) {
27
- field?.('organizationName')?.onChange?.(organization.data?.name?.short_with_opf);
28
- updateOrganizationFields(store, field, organization);
30
+ const organizationData = await getOrganizationFromInn(inn as string);
31
+ if (organizationData) {
32
+ updateOrganizationFields(store, field, organizationData);
29
33
  }
30
34
  })();
31
- }, []);
35
+ }, [employerActivities, employerOrganization, organization, amountWorkers]);
32
36
 
33
37
  return (
34
38
  <DaDataInputControl
35
39
  label="ИНН"
36
40
  isInteger={true}
37
41
  maxLength={12}
42
+ disabled={input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '')}
38
43
  {...input}
39
44
  {...field(input?.name ?? '')}
40
45
  onDaDataChange={onDaDataChange}
@@ -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.799",
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
+ };