@redneckz/wildless-cms-uni-blocks 0.14.823 → 0.14.824
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.
- package/bundle/bundle.umd.js +229 -198
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/bundle/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/bundle/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/bundle/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/bundle/retail/api/checkCode.d.ts +1 -0
- package/bundle/retail/api/{updateProfileEsia.d.ts → esiaRequestProfile.d.ts} +11 -4
- package/bundle/retail/api/updateUserTask.d.ts +1 -0
- package/bundle/retail/api/uploadFile.d.ts +1 -1
- package/bundle/retail/model/NameFieldDef.d.ts +1 -1
- package/bundle/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/dist/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +26 -8
- package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/dist/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/dist/components/ApplicationLeadForm/EsiaLoginBanner.js +22 -0
- package/dist/components/ApplicationLeadForm/EsiaLoginBanner.js.map +1 -0
- package/dist/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/dist/components/ApplicationLeadForm/applicationFormData.js +6 -31
- package/dist/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
- package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/dist/components/ApplicationLeadForm/getInitialFormState.js +8 -2
- package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/dist/components/ApplicationLeadForm/parseEsiaProfile.js +83 -53
- package/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -22
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/dist/components/ApplicationLeadForm/useInitApplicationLead.js +16 -24
- package/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
- package/dist/retail/api/checkCode.d.ts +1 -0
- package/dist/retail/api/checkCode.js +3 -2
- package/dist/retail/api/checkCode.js.map +1 -1
- package/{lib/retail/api/updateProfileEsia.d.ts → dist/retail/api/esiaRequestProfile.d.ts} +11 -4
- package/dist/retail/api/esiaRequestProfile.js +10 -0
- package/dist/retail/api/esiaRequestProfile.js.map +1 -0
- package/dist/retail/api/updateUserTask.d.ts +1 -0
- package/dist/retail/api/updateUserTask.js.map +1 -1
- package/dist/retail/api/uploadFile.d.ts +1 -1
- package/dist/retail/api/uploadFile.js +2 -3
- package/dist/retail/api/uploadFile.js.map +1 -1
- package/dist/retail/components/DraftDialog/parseDraftTask.js +2 -1
- package/dist/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
- package/dist/retail/components/Fields/BeginDateField.js +2 -1
- package/dist/retail/components/Fields/BeginDateField.js.map +1 -1
- package/dist/retail/components/Fields/ConfirmationIncomeField.js +4 -1
- package/dist/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
- package/dist/retail/components/Fields/DaDataInnField.js +2 -1
- package/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
- package/dist/retail/components/Fields/Experience5YearsField.js +2 -1
- package/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
- package/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
- package/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
- package/dist/retail/components/Fields/JobsNumberField.js +2 -1
- package/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
- package/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
- package/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
- package/dist/retail/components/Fields/OrganizationNameField.js +2 -1
- package/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
- package/dist/retail/components/Fields/WagesField.js +2 -1
- package/dist/retail/components/Fields/WagesField.js.map +1 -1
- package/dist/retail/content.js +11 -5
- package/dist/retail/content.js.map +1 -1
- package/dist/retail/model/NameFieldDef.d.ts +1 -1
- package/dist/retail/utils/mainFormStateMap.js +1 -0
- package/dist/retail/utils/mainFormStateMap.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/PhoneField.js +2 -1
- package/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/dist/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/dist/ui-kit/FormField/shouldRenderField.js +1 -1
- package/dist/ui-kit/FormField/shouldRenderField.js.map +1 -1
- package/lib/common.css +1 -1
- package/lib/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +26 -8
- package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/lib/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/lib/components/ApplicationLeadForm/EsiaLoginBanner.js +20 -0
- package/lib/components/ApplicationLeadForm/EsiaLoginBanner.js.map +1 -0
- package/lib/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/lib/components/ApplicationLeadForm/applicationFormData.js +5 -30
- package/lib/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
- package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/lib/components/ApplicationLeadForm/getInitialFormState.js +8 -2
- package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/lib/components/ApplicationLeadForm/parseEsiaProfile.js +83 -53
- package/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -22
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/lib/components/ApplicationLeadForm/useInitApplicationLead.js +16 -24
- package/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
- package/lib/retail/api/checkCode.d.ts +1 -0
- package/lib/retail/api/checkCode.js +1 -1
- package/lib/retail/api/checkCode.js.map +1 -1
- package/{mobile/bundle/retail/api/updateProfileEsia.d.ts → lib/retail/api/esiaRequestProfile.d.ts} +11 -4
- package/lib/retail/api/esiaRequestProfile.js +7 -0
- package/lib/retail/api/esiaRequestProfile.js.map +1 -0
- package/lib/retail/api/updateUserTask.d.ts +1 -0
- package/lib/retail/api/updateUserTask.js.map +1 -1
- package/lib/retail/api/uploadFile.d.ts +1 -1
- package/lib/retail/api/uploadFile.js +2 -3
- package/lib/retail/api/uploadFile.js.map +1 -1
- package/lib/retail/components/DraftDialog/parseDraftTask.js +2 -1
- package/lib/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
- package/lib/retail/components/Fields/BeginDateField.js +2 -1
- package/lib/retail/components/Fields/BeginDateField.js.map +1 -1
- package/lib/retail/components/Fields/ConfirmationIncomeField.js +5 -2
- package/lib/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
- package/lib/retail/components/Fields/DaDataInnField.js +2 -1
- package/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
- package/lib/retail/components/Fields/Experience5YearsField.js +2 -1
- package/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
- package/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
- package/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
- package/lib/retail/components/Fields/JobsNumberField.js +2 -1
- package/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
- package/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
- package/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
- package/lib/retail/components/Fields/OrganizationNameField.js +2 -1
- package/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
- package/lib/retail/components/Fields/WagesField.js +2 -1
- package/lib/retail/components/Fields/WagesField.js.map +1 -1
- package/lib/retail/content.js +11 -5
- package/lib/retail/content.js.map +1 -1
- package/lib/retail/model/NameFieldDef.d.ts +1 -1
- package/lib/retail/utils/mainFormStateMap.js +1 -0
- package/lib/retail/utils/mainFormStateMap.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/PhoneField.js +2 -1
- package/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/lib/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/lib/ui-kit/FormField/shouldRenderField.js +1 -1
- package/lib/ui-kit/FormField/shouldRenderField.js.map +1 -1
- package/mobile/bundle/bundle.umd.js +229 -198
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/mobile/bundle/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/mobile/bundle/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/mobile/bundle/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/mobile/bundle/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/mobile/bundle/retail/api/checkCode.d.ts +1 -0
- package/{dist/retail/api/updateProfileEsia.d.ts → mobile/bundle/retail/api/esiaRequestProfile.d.ts} +11 -4
- package/mobile/bundle/retail/api/updateUserTask.d.ts +1 -0
- package/mobile/bundle/retail/api/uploadFile.d.ts +1 -1
- package/mobile/bundle/retail/model/NameFieldDef.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +26 -8
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.js +22 -0
- package/mobile/dist/components/ApplicationLeadForm/EsiaLoginBanner.js.map +1 -0
- package/mobile/dist/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/mobile/dist/components/ApplicationLeadForm/applicationFormData.js +6 -31
- package/mobile/dist/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js +8 -2
- package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js +83 -53
- package/mobile/dist/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -22
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js +16 -24
- package/mobile/dist/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
- package/mobile/dist/retail/api/checkCode.d.ts +1 -0
- package/mobile/dist/retail/api/checkCode.js +3 -2
- package/mobile/dist/retail/api/checkCode.js.map +1 -1
- package/mobile/dist/retail/api/esiaRequestProfile.d.ts +84 -0
- package/mobile/dist/retail/api/esiaRequestProfile.js +10 -0
- package/mobile/dist/retail/api/esiaRequestProfile.js.map +1 -0
- package/mobile/dist/retail/api/updateUserTask.d.ts +1 -0
- package/mobile/dist/retail/api/updateUserTask.js.map +1 -1
- package/mobile/dist/retail/api/uploadFile.d.ts +1 -1
- package/mobile/dist/retail/api/uploadFile.js +2 -3
- package/mobile/dist/retail/api/uploadFile.js.map +1 -1
- package/mobile/dist/retail/components/DraftDialog/parseDraftTask.js +2 -1
- package/mobile/dist/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
- package/mobile/dist/retail/components/Fields/BeginDateField.js +2 -1
- package/mobile/dist/retail/components/Fields/BeginDateField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/ConfirmationIncomeField.js +4 -1
- package/mobile/dist/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/DaDataInnField.js +2 -1
- package/mobile/dist/retail/components/Fields/DaDataInnField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/Experience5YearsField.js +2 -1
- package/mobile/dist/retail/components/Fields/Experience5YearsField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js +2 -1
- package/mobile/dist/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/JobsNumberField.js +2 -1
- package/mobile/dist/retail/components/Fields/JobsNumberField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/LastJobExperienceField.js +2 -1
- package/mobile/dist/retail/components/Fields/LastJobExperienceField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/OrganizationNameField.js +2 -1
- package/mobile/dist/retail/components/Fields/OrganizationNameField.js.map +1 -1
- package/mobile/dist/retail/components/Fields/WagesField.js +2 -1
- package/mobile/dist/retail/components/Fields/WagesField.js.map +1 -1
- package/mobile/dist/retail/content.js +11 -5
- package/mobile/dist/retail/content.js.map +1 -1
- package/mobile/dist/retail/model/NameFieldDef.d.ts +1 -1
- package/mobile/dist/retail/utils/mainFormStateMap.js +1 -0
- package/mobile/dist/retail/utils/mainFormStateMap.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js +2 -1
- package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/mobile/dist/ui-kit/FormField/shouldRenderField.js +1 -1
- package/mobile/dist/ui-kit/FormField/shouldRenderField.js.map +1 -1
- package/mobile/lib/common.css +1 -1
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.d.ts +5 -0
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +26 -8
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.d.ts +4 -0
- package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.js +20 -0
- package/mobile/lib/components/ApplicationLeadForm/EsiaLoginBanner.js.map +1 -0
- package/mobile/lib/components/ApplicationLeadForm/applicationFormData.d.ts +0 -1
- package/mobile/lib/components/ApplicationLeadForm/applicationFormData.js +5 -30
- package/mobile/lib/components/ApplicationLeadForm/applicationFormData.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
- package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js +8 -2
- package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.d.ts +2 -2
- package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js +83 -53
- package/mobile/lib/components/ApplicationLeadForm/parseEsiaProfile.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +1 -2
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -22
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.d.ts +4 -4
- package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js +16 -24
- package/mobile/lib/components/ApplicationLeadForm/useInitApplicationLead.js.map +1 -1
- package/mobile/lib/retail/api/checkCode.d.ts +1 -0
- package/mobile/lib/retail/api/checkCode.js +1 -1
- package/mobile/lib/retail/api/checkCode.js.map +1 -1
- package/mobile/lib/retail/api/esiaRequestProfile.d.ts +84 -0
- package/mobile/lib/retail/api/esiaRequestProfile.js +7 -0
- package/mobile/lib/retail/api/esiaRequestProfile.js.map +1 -0
- package/mobile/lib/retail/api/updateUserTask.d.ts +1 -0
- package/mobile/lib/retail/api/updateUserTask.js.map +1 -1
- package/mobile/lib/retail/api/uploadFile.d.ts +1 -1
- package/mobile/lib/retail/api/uploadFile.js +2 -3
- package/mobile/lib/retail/api/uploadFile.js.map +1 -1
- package/mobile/lib/retail/components/DraftDialog/parseDraftTask.js +2 -1
- package/mobile/lib/retail/components/DraftDialog/parseDraftTask.js.map +1 -1
- package/mobile/lib/retail/components/Fields/BeginDateField.js +2 -1
- package/mobile/lib/retail/components/Fields/BeginDateField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/ConfirmationIncomeField.js +5 -2
- package/mobile/lib/retail/components/Fields/ConfirmationIncomeField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/DaDataInnField.js +2 -1
- package/mobile/lib/retail/components/Fields/DaDataInnField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/Experience5YearsField.js +2 -1
- package/mobile/lib/retail/components/Fields/Experience5YearsField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js +2 -1
- package/mobile/lib/retail/components/Fields/GeneralSeniorityField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/JobsNumberField.js +2 -1
- package/mobile/lib/retail/components/Fields/JobsNumberField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/LastJobExperienceField.js +2 -1
- package/mobile/lib/retail/components/Fields/LastJobExperienceField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/OrganizationNameField.js +2 -1
- package/mobile/lib/retail/components/Fields/OrganizationNameField.js.map +1 -1
- package/mobile/lib/retail/components/Fields/WagesField.js +2 -1
- package/mobile/lib/retail/components/Fields/WagesField.js.map +1 -1
- package/mobile/lib/retail/content.js +11 -5
- package/mobile/lib/retail/content.js.map +1 -1
- package/mobile/lib/retail/model/NameFieldDef.d.ts +1 -1
- package/mobile/lib/retail/utils/mainFormStateMap.js +1 -0
- package/mobile/lib/retail/utils/mainFormStateMap.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js +2 -1
- package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/shouldRenderField.d.ts +1 -1
- package/mobile/lib/ui-kit/FormField/shouldRenderField.js +1 -1
- package/mobile/lib/ui-kit/FormField/shouldRenderField.js.map +1 -1
- package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +31 -10
- package/mobile/src/components/ApplicationLeadForm/EsiaLoginBanner.tsx +51 -0
- package/mobile/src/components/ApplicationLeadForm/applicationFormData.tsx +5 -31
- package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +8 -1
- package/mobile/src/components/ApplicationLeadForm/parseEsiaProfile.ts +91 -66
- package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +57 -73
- package/mobile/src/components/ApplicationLeadForm/useInitApplicationLead.ts +32 -48
- package/mobile/src/retail/api/checkCode.ts +1 -1
- package/mobile/src/retail/api/{updateProfileEsia.ts → esiaRequestProfile.ts} +16 -5
- package/mobile/src/retail/api/updateUserTask.ts +1 -0
- package/mobile/src/retail/api/uploadFile.ts +2 -3
- package/mobile/src/retail/components/DraftDialog/parseDraftTask.ts +2 -0
- package/mobile/src/retail/components/Fields/BeginDateField.tsx +2 -0
- package/mobile/src/retail/components/Fields/ConfirmationIncomeField.tsx +18 -7
- package/mobile/src/retail/components/Fields/DaDataInnField.tsx +2 -0
- package/mobile/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
- package/mobile/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
- package/mobile/src/retail/components/Fields/JobsNumberField.tsx +2 -0
- package/mobile/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
- package/mobile/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
- package/mobile/src/retail/components/Fields/WagesField.tsx +2 -0
- package/mobile/src/retail/content.tsx +11 -5
- package/mobile/src/retail/model/NameFieldDef.ts +1 -0
- package/mobile/src/retail/utils/mainFormStateMap.ts +1 -0
- package/mobile/src/ui-kit/FormField/Fields/PhoneField.tsx +9 -1
- package/mobile/src/ui-kit/FormField/shouldRenderField.tsx +2 -1
- package/package.json +1 -1
- package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +31 -10
- package/src/components/ApplicationLeadForm/EsiaLoginBanner.tsx +51 -0
- package/src/components/ApplicationLeadForm/applicationFormData.tsx +5 -31
- package/src/components/ApplicationLeadForm/getInitialFormState.tsx +8 -1
- package/src/components/ApplicationLeadForm/parseEsiaProfile.ts +91 -66
- package/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +57 -73
- package/src/components/ApplicationLeadForm/useInitApplicationLead.ts +32 -48
- package/src/retail/api/checkCode.ts +1 -1
- package/src/retail/api/{updateProfileEsia.ts → esiaRequestProfile.ts} +16 -5
- package/src/retail/api/updateUserTask.ts +1 -0
- package/src/retail/api/uploadFile.ts +2 -3
- package/src/retail/components/DraftDialog/parseDraftTask.ts +2 -0
- package/src/retail/components/Fields/BeginDateField.tsx +2 -0
- package/src/retail/components/Fields/ConfirmationIncomeField.tsx +18 -7
- package/src/retail/components/Fields/DaDataInnField.tsx +2 -0
- package/src/retail/components/Fields/Experience5YearsField.tsx +2 -0
- package/src/retail/components/Fields/GeneralSeniorityField.tsx +2 -0
- package/src/retail/components/Fields/JobsNumberField.tsx +2 -0
- package/src/retail/components/Fields/LastJobExperienceField.tsx +2 -0
- package/src/retail/components/Fields/OrganizationNameField.tsx +2 -0
- package/src/retail/components/Fields/WagesField.tsx +2 -0
- package/src/retail/content.tsx +11 -5
- package/src/retail/model/NameFieldDef.ts +1 -0
- package/src/retail/utils/mainFormStateMap.ts +1 -0
- package/src/ui-kit/FormField/Fields/PhoneField.tsx +9 -1
- package/src/ui-kit/FormField/shouldRenderField.tsx +2 -1
- package/bundle/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/bundle/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/dist/retail/api/updateProfileEsia.js +0 -6
- package/dist/retail/api/updateProfileEsia.js.map +0 -1
- package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +0 -34
- package/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +0 -1
- package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +0 -15
- package/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +0 -1
- package/lib/retail/api/updateProfileEsia.js +0 -3
- package/lib/retail/api/updateProfileEsia.js.map +0 -1
- package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.fixture.d.ts +0 -5
- package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +0 -32
- package/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +0 -1
- package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +0 -12
- package/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +0 -1
- package/mobile/bundle/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/mobile/bundle/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/mobile/dist/retail/api/updateProfileEsia.d.ts +0 -77
- package/mobile/dist/retail/api/updateProfileEsia.js +0 -6
- package/mobile/dist/retail/api/updateProfileEsia.js.map +0 -1
- package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +0 -34
- package/mobile/dist/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +0 -1
- package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +0 -15
- package/mobile/dist/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +0 -1
- package/mobile/lib/retail/api/updateProfileEsia.d.ts +0 -77
- package/mobile/lib/retail/api/updateProfileEsia.js +0 -3
- package/mobile/lib/retail/api/updateProfileEsia.js.map +0 -1
- package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.d.ts +0 -4
- package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js +0 -32
- package/mobile/lib/retail/components/EsiaLoginDialog/EsiaLoginDialog.js.map +0 -1
- package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.d.ts +0 -1
- package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js +0 -12
- package/mobile/lib/retail/components/EsiaLoginDialog/useEsiaLoginDialog.js.map +0 -1
- package/mobile/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +0 -65
- package/mobile/src/retail/components/EsiaLoginDialog/useEsiaLoginDialog.tsx +0 -13
- package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.fixture.tsx +0 -7
- package/src/retail/components/EsiaLoginDialog/EsiaLoginDialog.tsx +0 -65
- package/src/retail/components/EsiaLoginDialog/useEsiaLoginDialog.tsx +0 -13
|
@@ -2030,7 +2030,7 @@
|
|
|
2030
2030
|
|
|
2031
2031
|
const PhoneField = JSX(({ field, input }) => {
|
|
2032
2032
|
const fieldName = input?.name || 'phone';
|
|
2033
|
-
return jsx(InputPhoneControl, { label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...field(fieldName), ...input });
|
|
2033
|
+
return (jsx(InputPhoneControl, { label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), ...field(fieldName), ...input }));
|
|
2034
2034
|
});
|
|
2035
2035
|
|
|
2036
2036
|
const PosTerminalField = JSX(({ field }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 POS-\u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B", ...field('posTerminal') })) : null);
|
|
@@ -2210,7 +2210,7 @@
|
|
|
2210
2210
|
function shouldRenderField({ input, field, }) {
|
|
2211
2211
|
const { condition } = input;
|
|
2212
2212
|
const { value } = field(condition?.name || '');
|
|
2213
|
-
return !condition || condition?.values?.
|
|
2213
|
+
return !condition || condition?.values?.includes(value?.key ?? value);
|
|
2214
2214
|
}
|
|
2215
2215
|
|
|
2216
2216
|
const PRODUCT_REF = {
|
|
@@ -2668,11 +2668,11 @@
|
|
|
2668
2668
|
{
|
|
2669
2669
|
columns: 2,
|
|
2670
2670
|
inputs: [
|
|
2671
|
-
{ name: 'surname', required: true, dadata: true },
|
|
2672
|
-
{ name: 'name', required: true, dadata: true },
|
|
2673
|
-
{ name: 'middleName', dadata: true },
|
|
2674
|
-
{ name: 'limitedBirthday', required: true },
|
|
2675
|
-
{ name: 'phone', required: true },
|
|
2671
|
+
{ name: 'surname', required: true, dadata: true, filledByEsia: true },
|
|
2672
|
+
{ name: 'name', required: true, dadata: true, filledByEsia: true },
|
|
2673
|
+
{ name: 'middleName', dadata: true, filledByEsia: true },
|
|
2674
|
+
{ name: 'limitedBirthday', required: true, filledByEsia: true },
|
|
2675
|
+
{ name: 'phone', required: true, filledByEsia: true },
|
|
2676
2676
|
{ name: 'email', required: true, dadata: true },
|
|
2677
2677
|
],
|
|
2678
2678
|
},
|
|
@@ -2682,6 +2682,57 @@
|
|
|
2682
2682
|
];
|
|
2683
2683
|
};
|
|
2684
2684
|
|
|
2685
|
+
const getTraceId = () => {
|
|
2686
|
+
const result = new Uint8Array(8);
|
|
2687
|
+
globalThis.crypto.getRandomValues(result);
|
|
2688
|
+
return result.reduce((acc, _) => `${acc}${_.toString(16).padStart(2, '0')}`, '');
|
|
2689
|
+
};
|
|
2690
|
+
|
|
2691
|
+
const fetchRetailJSON = async (url, method, body) => {
|
|
2692
|
+
try {
|
|
2693
|
+
const response = await doRequest(url, method, body);
|
|
2694
|
+
return response.json();
|
|
2695
|
+
}
|
|
2696
|
+
catch (err) {
|
|
2697
|
+
console.error(err);
|
|
2698
|
+
return null;
|
|
2699
|
+
}
|
|
2700
|
+
};
|
|
2701
|
+
async function doRequest(url, method, body) {
|
|
2702
|
+
const traceId = getTraceId();
|
|
2703
|
+
return globalThis?.fetch?.(`${RETAIL_API_BASE_URI}${url}`, {
|
|
2704
|
+
method,
|
|
2705
|
+
headers: {
|
|
2706
|
+
'Content-Type': 'application/json',
|
|
2707
|
+
'X-B3-Sampled': '1',
|
|
2708
|
+
'X-B3-Spanid': traceId,
|
|
2709
|
+
'X-B3-Traceid': traceId,
|
|
2710
|
+
...getAuthorizationHeaders(),
|
|
2711
|
+
},
|
|
2712
|
+
credentials: 'include',
|
|
2713
|
+
body: body ? JSON.stringify(body) : null,
|
|
2714
|
+
});
|
|
2715
|
+
}
|
|
2716
|
+
const getAuthorizationHeaders = () => {
|
|
2717
|
+
const token = sessionStorage.getItem('accessToken');
|
|
2718
|
+
return token ? { Authorization: `Bearer ${token}` } : null;
|
|
2719
|
+
};
|
|
2720
|
+
|
|
2721
|
+
const getLink = (body) => fetchRetailJSON('/esia/getLink', 'POST', body);
|
|
2722
|
+
|
|
2723
|
+
const EsiaLoginBanner = JSX(() => {
|
|
2724
|
+
const navigator = locationNavigator();
|
|
2725
|
+
const handleAuth = useCallback(async () => {
|
|
2726
|
+
const resp = await getLink({
|
|
2727
|
+
redirectUri: globalThis.location.origin + globalThis.location.pathname,
|
|
2728
|
+
});
|
|
2729
|
+
if (resp?.link) {
|
|
2730
|
+
navigator.assign(resp.link);
|
|
2731
|
+
}
|
|
2732
|
+
}, []);
|
|
2733
|
+
return (jsxs("div", { className: "flex gap-lg items-center rounded-md bg-main-gray px-4 py-6 @md:p-9", children: [jsxs("div", { className: "flex flex-col justify-around w-full", children: [jsx("p", { className: "mb-4 text-xl @md:text-2xl @md:mb-6", children: "\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0447\u0435\u0440\u0435\u0437 \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438" }), jsxs("ul", { className: "list-disc list-inside mb-9", children: [jsx("li", { children: "\u0412\u0435\u0440\u043E\u044F\u0442\u043D\u043E\u0441\u0442\u044C \u043E\u0434\u043E\u0431\u0440\u0435\u043D\u0438\u044F \u0432\u044B\u0448\u0435" }), jsx("li", { children: "\u0411\u0435\u0437 \u0441\u043F\u0440\u0430\u0432\u043E\u043A \u043E \u0434\u043E\u0445\u043E\u0434\u0430\u0445 \u0438 \u0442\u0440\u0443\u0434\u043E\u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435" }), jsx("li", { children: "\u0421 \u0437\u0430\u0449\u0438\u0442\u043E\u0439 \u0412\u0430\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445" })] }), jsx(Img, { className: "block mb-6 self-center @md:hidden", image: { icon: 'GosUslugiIcon', iconVersion: 'normal' }, height: "80", width: "80" }), jsx(Button, { type: "button", onClick: handleAuth, className: "w-full @md:w-fit", children: "\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C" })] }), jsx(Img, { className: "hidden @md:block", image: { icon: 'GosUslugiIcon', iconVersion: 'normal' }, height: "164" })] }));
|
|
2734
|
+
});
|
|
2735
|
+
|
|
2685
2736
|
const debounce = (fn, delay = 600) => {
|
|
2686
2737
|
let timerId;
|
|
2687
2738
|
const debouncedCallback = (...args) => {
|
|
@@ -3568,42 +3619,6 @@
|
|
|
3568
3619
|
const mapByIndex = (points, index) => points.map((_) => _.coords?.[index]);
|
|
3569
3620
|
const getArraySumAndAverage = (arr) => arr.length && arr.reduce((a, b) => a + b) / arr.length;
|
|
3570
3621
|
|
|
3571
|
-
const getTraceId = () => {
|
|
3572
|
-
const result = new Uint8Array(8);
|
|
3573
|
-
globalThis.crypto.getRandomValues(result);
|
|
3574
|
-
return result.reduce((acc, _) => `${acc}${_.toString(16).padStart(2, '0')}`, '');
|
|
3575
|
-
};
|
|
3576
|
-
|
|
3577
|
-
const fetchRetailJSON = async (url, method, body) => {
|
|
3578
|
-
try {
|
|
3579
|
-
const response = await doRequest(url, method, body);
|
|
3580
|
-
return response.json();
|
|
3581
|
-
}
|
|
3582
|
-
catch (err) {
|
|
3583
|
-
console.error(err);
|
|
3584
|
-
return null;
|
|
3585
|
-
}
|
|
3586
|
-
};
|
|
3587
|
-
async function doRequest(url, method, body) {
|
|
3588
|
-
const traceId = getTraceId();
|
|
3589
|
-
return globalThis?.fetch?.(`${RETAIL_API_BASE_URI}${url}`, {
|
|
3590
|
-
method,
|
|
3591
|
-
headers: {
|
|
3592
|
-
'Content-Type': 'application/json',
|
|
3593
|
-
'X-B3-Sampled': '1',
|
|
3594
|
-
'X-B3-Spanid': traceId,
|
|
3595
|
-
'X-B3-Traceid': traceId,
|
|
3596
|
-
...getAuthorizationHeaders(),
|
|
3597
|
-
},
|
|
3598
|
-
credentials: 'include',
|
|
3599
|
-
body: body ? JSON.stringify(body) : null,
|
|
3600
|
-
});
|
|
3601
|
-
}
|
|
3602
|
-
const getAuthorizationHeaders = () => {
|
|
3603
|
-
const token = sessionStorage.getItem('accessToken');
|
|
3604
|
-
return token ? { Authorization: `Bearer ${token}` } : null;
|
|
3605
|
-
};
|
|
3606
|
-
|
|
3607
3622
|
const fetchRegionOffices = async (regionKey) => {
|
|
3608
3623
|
const response = await fetchRetailJSON('/public-data/regionOffices', 'POST', {
|
|
3609
3624
|
regionRfCd: {
|
|
@@ -3833,7 +3848,7 @@
|
|
|
3833
3848
|
|
|
3834
3849
|
const BankruptcyFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u0412 \u043E\u0442\u043D\u043E\u0448\u0435\u043D\u0438\u0438 \u043C\u0435\u043D\u044F \u0432\u0435\u0434\u0451\u0442\u0441\u044F \u043F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0441\u0442\u0432\u043E \u043F\u043E \u0434\u0435\u043B\u0443 \u043E \u0431\u0430\u043D\u043A\u0440\u043E\u0442\u0441\u0442\u0432\u0435", ...field(input?.name ?? '') })));
|
|
3835
3850
|
|
|
3836
|
-
const BeginDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u043D\u0430\u0447\u0430\u043B\u0430 \u0440\u0430\u0431\u043E\u0442\u044B \u043D\u0430 \u0442\u0435\u043A\u0443\u0449\u0435\u043C \u043C\u0435\u0441\u0442\u0435", ...field(input?.name ?? ''), ...input })));
|
|
3851
|
+
const BeginDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u043D\u0430\u0447\u0430\u043B\u0430 \u0440\u0430\u0431\u043E\u0442\u044B \u043D\u0430 \u0442\u0435\u043A\u0443\u0449\u0435\u043C \u043C\u0435\u0441\u0442\u0435", ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
3837
3852
|
|
|
3838
3853
|
const FIELD_NAME$2 = 'birthPlace';
|
|
3839
3854
|
const BirthPlaceField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u041C\u0435\u0441\u0442\u043E \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$2) })));
|
|
@@ -3897,7 +3912,8 @@
|
|
|
3897
3912
|
|
|
3898
3913
|
const ConfirmationIncomeField = JSX(({ field, input }) => {
|
|
3899
3914
|
const { data: confirmationIncome } = useLeadFormData('INCOME_CERT_UNITED');
|
|
3900
|
-
|
|
3915
|
+
const filledByEsia = input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '');
|
|
3916
|
+
return (jsxs("div", { children: [filledByEsia ? (jsx("div", { className: "mb-6", children: jsx(InfoCard, { __html: "\u0414\u043B\u044F \u0432\u044B\u0431\u043E\u0440\u0430 \u0438\u043D\u043E\u0433\u043E \u0441\u043F\u043E\u0441\u043E\u0431\u0430 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0434\u043E\u0445\u043E\u0434\u0430, \u043E\u0444\u043E\u0440\u043C\u0438\u0442\u0435 \u043D\u043E\u0432\u0443\u044E \u0437\u0430\u044F\u0432\u043A\u0443 \u043D\u0430 \u043A\u0440\u0435\u0434\u0438\u0442 \u0431\u0435\u0437 \u0430\u0432\u0442\u043E\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043D\u0430 \u043F\u043E\u0440\u0442\u0430\u043B\u0435 \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438" }) })) : null, jsx(SelectField, { field: field, source: confirmationIncome, label: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0434\u043E\u0445\u043E\u0434\u0430", fieldName: "confirmationIncome", input: input, disabled: filledByEsia })] }));
|
|
3901
3917
|
});
|
|
3902
3918
|
|
|
3903
3919
|
const ConscriptionField = JSX(({ field, input }) => {
|
|
@@ -4441,7 +4457,7 @@
|
|
|
4441
4457
|
}
|
|
4442
4458
|
})();
|
|
4443
4459
|
}, [employerActivities, employerOrganization, organization, amountWorkers]);
|
|
4444
|
-
return (jsx(DaDataInputControl, { label: "\u0418\u041D\u041D", isInteger: true, maxLength: 12, ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange }));
|
|
4460
|
+
return (jsx(DaDataInputControl, { label: "\u0418\u041D\u041D", isInteger: true, maxLength: 12, ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') }));
|
|
4445
4461
|
});
|
|
4446
4462
|
|
|
4447
4463
|
const DeliveryDateFiels = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438", ...field(input?.name ?? ''), minDate: new Date() })));
|
|
@@ -4524,7 +4540,7 @@
|
|
|
4524
4540
|
const MIN_YEARS = 0;
|
|
4525
4541
|
const Experience5YearsField = JSX(({ field, input }) => {
|
|
4526
4542
|
const onChange = useCallback((value) => field(input?.name ?? '')?.onChange?.(String(clamp(Number(value), MIN_YEARS, MAX_YEARS))), []);
|
|
4527
|
-
return (jsx(DaDataInputControl, { label: "\u0421\u0442\u0430\u0436", placeholder: "\u0417\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435 5 \u043B\u0435\u0442", type: "number", ...field(input?.name ?? ''), ...input, onChange: onChange }));
|
|
4543
|
+
return (jsx(DaDataInputControl, { label: "\u0421\u0442\u0430\u0436", placeholder: "\u0417\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435 5 \u043B\u0435\u0442", type: "number", ...field(input?.name ?? ''), ...input, onChange: onChange, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') }));
|
|
4528
4544
|
});
|
|
4529
4545
|
|
|
4530
4546
|
const FamilyMembersField = JSX(({ field, input }) => {
|
|
@@ -4545,7 +4561,7 @@
|
|
|
4545
4561
|
return (jsx(SelectField, { field: field, source: familyStatus, label: "\u0421\u0435\u043C\u0435\u0439\u043D\u043E\u0435 \u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", fieldName: "familyStatus", input: input }));
|
|
4546
4562
|
});
|
|
4547
4563
|
|
|
4548
|
-
const GeneralSeniorityField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u041E\u0431\u0449\u0438\u0439 \u0441\u0442\u0430\u0436", type: "number", maxLength: 2, placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043B\u0435\u0442", ...field(input?.name ?? ''), ...input })));
|
|
4564
|
+
const GeneralSeniorityField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u041E\u0431\u0449\u0438\u0439 \u0441\u0442\u0430\u0436", type: "number", maxLength: 2, placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043B\u0435\u0442", ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
4549
4565
|
|
|
4550
4566
|
const HousingField = JSX(({ field, input }) => {
|
|
4551
4567
|
const { data: housing } = useLeadFormData('HOUSE_TYPE');
|
|
@@ -4554,9 +4570,9 @@
|
|
|
4554
4570
|
|
|
4555
4571
|
const InfoCardField = JSX(({ input }) => (jsx(InfoCard, { __html: input?.label })));
|
|
4556
4572
|
|
|
4557
|
-
const JobsNumberField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043C\u0435\u0441\u0442 \u0440\u0430\u0431\u043E\u0442\u044B \u0437\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435 5 \u043B\u0435\u0442", placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043C\u0435\u0441\u0442", isInteger: true, maxLength: 2, ...field(input?.name ?? ''), ...input })));
|
|
4573
|
+
const JobsNumberField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043C\u0435\u0441\u0442 \u0440\u0430\u0431\u043E\u0442\u044B \u0437\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435 5 \u043B\u0435\u0442", placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043C\u0435\u0441\u0442", isInteger: true, maxLength: 2, ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
4558
4574
|
|
|
4559
|
-
const LastJobExperienceField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0421\u0442\u0430\u0436 \u043D\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0435\u043C \u0440\u0430\u0431\u043E\u0447\u0435\u043C \u043C\u0435\u0441\u0442\u0435", placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043B\u0435\u0442", type: "number", maxLength: 2, ...field(input?.name ?? ''), ...input })));
|
|
4575
|
+
const LastJobExperienceField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0421\u0442\u0430\u0436 \u043D\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0435\u043C \u0440\u0430\u0431\u043E\u0447\u0435\u043C \u043C\u0435\u0441\u0442\u0435", placeholder: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043B\u0435\u0442", type: "number", maxLength: 2, ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
4560
4576
|
|
|
4561
4577
|
const latinPattern = /^[\u0041-\u005A\u0061-\u007A\s]+$/u;
|
|
4562
4578
|
const isLatin = (_ = '') => latinPattern.test(_);
|
|
@@ -4722,7 +4738,7 @@
|
|
|
4722
4738
|
field?.('inn')?.onChange?.(item.data?.inn);
|
|
4723
4739
|
updateOrganizationFields(store, field, item);
|
|
4724
4740
|
}, []);
|
|
4725
|
-
return (jsx(DaDataInputControl, { label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange }));
|
|
4741
|
+
return (jsx(DaDataInputControl, { label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...input, ...field(input?.name ?? ''), disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? ''), onDaDataChange: onDaDataChange }));
|
|
4726
4742
|
});
|
|
4727
4743
|
|
|
4728
4744
|
const OtherIncomeField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0418\u043D\u044B\u0435 \u0434\u043E\u0445\u043E\u0434\u044B", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
@@ -4869,7 +4885,7 @@
|
|
|
4869
4885
|
|
|
4870
4886
|
const TotalIncomeField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0421\u043E\u0432\u043E\u043A\u0443\u043F\u043D\u044B\u0439 \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u0434\u043E\u0445\u043E\u0434 \u0432 \u043C\u0435\u0441\u044F\u0446 \u043F\u043E\u0441\u043B\u0435 \u0432\u044B\u0447\u0435\u0442\u0430 \u043D\u0430\u043B\u043E\u0433\u043E\u0432 (\u0437\u0430\u0440\u043F\u043B\u0430\u0442\u0430, \u043F\u0440\u0435\u043C\u0438\u0438)", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
4871
4887
|
|
|
4872
|
-
const WagesField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0421\u043E\u0432\u043E\u043A\u0443\u043F\u043D\u044B\u0439 \u0434\u043E\u0445\u043E\u0434 \u0432 \u043C\u0435\u0441\u044F\u0446 \u043F\u043E\u0441\u043B\u0435 \u0432\u044B\u0447\u0435\u0442\u0430 \u043D\u0430\u043B\u043E\u0433\u043E\u0432 (\u0437\u0430\u0440\u043F\u043B\u0430\u0442\u0430, \u043F\u0440\u0435\u043C\u0438\u0438)", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
4888
|
+
const WagesField = JSX(({ field, input }) => (jsx(DaDataInputControl, { label: "\u0421\u043E\u0432\u043E\u043A\u0443\u043F\u043D\u044B\u0439 \u0434\u043E\u0445\u043E\u0434 \u0432 \u043C\u0435\u0441\u044F\u0446 \u043F\u043E\u0441\u043B\u0435 \u0432\u044B\u0447\u0435\u0442\u0430 \u043D\u0430\u043B\u043E\u0433\u043E\u0432 (\u0437\u0430\u0440\u043F\u043B\u0430\u0442\u0430, \u043F\u0440\u0435\u043C\u0438\u0438)", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
4873
4889
|
|
|
4874
4890
|
const DELIVERY_CITIES_REF = {
|
|
4875
4891
|
$ref: '/wcms-resources/delivery-cities-data.json',
|
|
@@ -5499,7 +5515,7 @@
|
|
|
5499
5515
|
const participant = task.participants[0];
|
|
5500
5516
|
const { classCard: cardCategory, codeWord, paymentSystemTypeCd: paymentSystem, currencyCode: currency, } = task;
|
|
5501
5517
|
const { loanAmount: moneyValue, creditPeriod: monthsValue, paymentTypeCd } = task;
|
|
5502
|
-
const { birthDate: limitedBirthday, midname: middleName, name, surname, birthPlace, dulIssueDate: dulIssueDate, dulIssuedBy, dulNumber, dulSerie, dulSubdivisionCode, educationLevelCd: education, registrationDate: participantDateRegistration, houseTypeCd: housing, genderCd, participantContacts = [], participantAddresses = [], employmentContractDate: beginDate, employmentTypeCd: employment, organizationName, organizationInn: inn, organizationActivityTypeCd: employerActivities, organizationTypeCd: organization, organizationKindCd: employerOrganization, employeesNumberCd: amountWorkers, opf: legalForm, seniority: generalSeniority, generalSeniority: experience5Years, jobsNumber, lastWorkDuration: lastJobExperience, positionCd: positionOrganization, maritalStatusCd: familyStatus, childrenDependents: children, totalDependents: familyMembers, otherDependents: dependents, militaryStatusCd: conscription, participantIncomes, snils, armyIdFlg, bankruptcyFlg, shareholderFlg, nameLegalEntity: legalEntityName, creditInRshbCd, payrollCardRshbFlg: isInsurance, consentInsuranceFlg: isSalaryClient, incomeCertificateCd, } = participant;
|
|
5518
|
+
const { birthDate: limitedBirthday, midname: middleName, name, surname, birthPlace, dulIssueDate: dulIssueDate, dulIssuedBy, dulNumber, dulSerie, dulSubdivisionCode, educationLevelCd: education, registrationDate: participantDateRegistration, houseTypeCd: housing, genderCd, participantContacts = [], participantAddresses = [], employmentContractDate: beginDate, employmentTypeCd: employment, organizationName, organizationInn: inn, organizationActivityTypeCd: employerActivities, organizationTypeCd: organization, organizationKindCd: employerOrganization, employeesNumberCd: amountWorkers, opf: legalForm, seniority: generalSeniority, generalSeniority: experience5Years, jobsNumber, lastWorkDuration: lastJobExperience, positionCd: positionOrganization, maritalStatusCd: familyStatus, childrenDependents: children, totalDependents: familyMembers, otherDependents: dependents, militaryStatusCd: conscription, participantIncomes, snils, armyIdFlg, bankruptcyFlg, shareholderFlg, nameLegalEntity: legalEntityName, creditInRshbCd, payrollCardRshbFlg: isInsurance, consentInsuranceFlg: isSalaryClient, incomeCertificateCd, profile, } = participant;
|
|
5503
5519
|
return {
|
|
5504
5520
|
currency: currency?.key,
|
|
5505
5521
|
paymentSystem: getSelectValue(paymentSystem),
|
|
@@ -5551,6 +5567,7 @@
|
|
|
5551
5567
|
monthsValue,
|
|
5552
5568
|
isAnnuity: paymentTypeCd?.key === 'ANNUITY',
|
|
5553
5569
|
},
|
|
5570
|
+
esiaAccountTypeCd: profile?.esiaAccountTypeCd,
|
|
5554
5571
|
...getParticipantIncomes(participantIncomes),
|
|
5555
5572
|
...getParticipantAddresses(participantAddresses),
|
|
5556
5573
|
...getParticipantContacts(participantContacts),
|
|
@@ -5605,39 +5622,6 @@
|
|
|
5605
5622
|
};
|
|
5606
5623
|
};
|
|
5607
5624
|
|
|
5608
|
-
const getLink = (body) => fetchRetailJSON('/esia/getLink', 'POST', body);
|
|
5609
|
-
|
|
5610
|
-
const EsiaLoginDialog = JSX(({ onClose }) => {
|
|
5611
|
-
const navigator = locationNavigator();
|
|
5612
|
-
const retailFormStore = useRetailFormStore();
|
|
5613
|
-
const handleAuth = useCallback(async () => {
|
|
5614
|
-
const resp = await getLink({
|
|
5615
|
-
redirectUri: globalThis.location.origin + globalThis.location.pathname,
|
|
5616
|
-
});
|
|
5617
|
-
if (resp?.link) {
|
|
5618
|
-
navigator.assign(resp.link);
|
|
5619
|
-
globalThis.location.href = resp.link;
|
|
5620
|
-
}
|
|
5621
|
-
}, []);
|
|
5622
|
-
const handleClose = useCallback(() => {
|
|
5623
|
-
if (retailFormStore.leadForm) {
|
|
5624
|
-
const leadForm = { ...retailFormStore.leadForm };
|
|
5625
|
-
delete leadForm.esiaAccountTypeCd;
|
|
5626
|
-
retailFormStore.leadForm = leadForm;
|
|
5627
|
-
}
|
|
5628
|
-
onClose?.();
|
|
5629
|
-
}, []);
|
|
5630
|
-
return (jsx(Dialog, { className: "my-6xl max-w-lg w-full min-h-fit mx-auto rounded-lg", onClose: handleClose, children: jsxs("div", { className: "flex flex-col gap-lg items-center rounded-md", children: [jsxs("div", { className: "flex items-center justify-around w-full px-m", children: [jsxs("ul", { className: "list-disc", children: [jsx("li", { children: "\u0412\u0435\u0440\u043E\u044F\u0442\u043D\u043E\u0441\u0442\u044C \u043E\u0434\u043E\u0431\u0440\u0435\u043D\u0438\u044F \u0432\u044B\u0448\u0435" }), jsx("li", { children: "\u0411\u0435\u0437 \u0441\u043F\u0440\u0430\u0432\u043E\u043A \u043E \u0434\u043E\u0445\u043E\u0434\u0430\u0445 \u0438 \u0442\u0440\u0443\u0434\u043E\u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435" }), jsx("li", { children: "\u0421 \u0437\u0430\u0449\u0438\u0442\u043E\u0439 \u0412\u0430\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445" })] }), jsx(Img, { image: { icon: 'GosUslugiIcon', iconVersion: 'normal' }, height: "70" })] }), jsxs("div", { className: "@container flex flex-wrap gap-lg w-full", children: [jsx(Button, { type: "button", onClick: handleAuth, className: "w-full md:w-auto", children: "\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u0447\u0435\u0440\u0435\u0437 \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438" }), jsx(Button, { type: "button", version: "secondary", onClick: handleClose, className: "w-full md:w-auto", children: "\u041F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u0442\u044C" })] })] }) }));
|
|
5631
|
-
});
|
|
5632
|
-
|
|
5633
|
-
const useEsiaLoginDialog = (nextStepLink) => {
|
|
5634
|
-
const { open } = useDialog(EsiaLoginDialog);
|
|
5635
|
-
const navigator = locationNavigator();
|
|
5636
|
-
return useCallback(() => {
|
|
5637
|
-
open({ onClose: () => navigator.assign(nextStepLink) });
|
|
5638
|
-
}, [open, nextStepLink]);
|
|
5639
|
-
};
|
|
5640
|
-
|
|
5641
5625
|
// TODO Не должно быть импортов из бизнес-слоя в API слой. Только наоборот.
|
|
5642
5626
|
const getUpdateUserProfileData = (profileId, formData, consents) => {
|
|
5643
5627
|
const { name = '', surname = '', middleName = '', limitedBirthday = '', phone = '', email = '', } = formData;
|
|
@@ -5759,43 +5743,40 @@
|
|
|
5759
5743
|
|
|
5760
5744
|
/* eslint-disable max-lines */
|
|
5761
5745
|
// eslint-disable-next-line max-lines-per-function
|
|
5762
|
-
const useApplicationLeadApi = ({ programId, nextStepLink, productType,
|
|
5746
|
+
const useApplicationLeadApi = ({ programId, nextStepLink, productType, data, }) => {
|
|
5763
5747
|
const [isSending, { setTrue: startSending, setFalse: endSending }] = useBool(false);
|
|
5764
5748
|
const [ok, setOK] = useState();
|
|
5765
5749
|
const saveUserData = useSaveUserData();
|
|
5766
5750
|
const sendAspects = useSendLeadFormAspects({ data });
|
|
5767
5751
|
const navigator = locationNavigator();
|
|
5768
|
-
const
|
|
5769
|
-
|
|
5752
|
+
const goToNextStep = useCallback(() => {
|
|
5753
|
+
navigator.assign(nextStepLink);
|
|
5754
|
+
}, []);
|
|
5755
|
+
const consentBkiDialog = useConsentBkiDialog(goToNextStep);
|
|
5770
5756
|
const verifyPhoneDialog = useDialog(VerifyPhoneDialog);
|
|
5771
5757
|
const draftDialog = useDraftDialog();
|
|
5772
5758
|
const handleSubmit = useCallback(async (formData) => {
|
|
5773
|
-
if (esiaError) {
|
|
5774
|
-
navigator.assign(nextStepLink);
|
|
5775
|
-
return;
|
|
5776
|
-
}
|
|
5777
5759
|
try {
|
|
5778
5760
|
startSending();
|
|
5779
|
-
const transformedFormData = transformFormData(formData);
|
|
5780
5761
|
const profileId = await createUserProfile({
|
|
5781
|
-
profile: { phone: formatPhone(
|
|
5762
|
+
profile: { phone: formatPhone(formData.phone) },
|
|
5782
5763
|
});
|
|
5783
|
-
if (profileId &&
|
|
5764
|
+
if (profileId && formData?.phone) {
|
|
5784
5765
|
const sendCurrentTask = async () => {
|
|
5785
5766
|
await updateUserData({
|
|
5786
5767
|
programId,
|
|
5787
5768
|
profileId,
|
|
5788
|
-
formData
|
|
5769
|
+
formData,
|
|
5789
5770
|
productType,
|
|
5790
5771
|
saveUserData,
|
|
5791
5772
|
sendAspects,
|
|
5792
5773
|
});
|
|
5793
5774
|
verifyPhoneDialog.close();
|
|
5794
5775
|
if (productType === 'debitCard') {
|
|
5795
|
-
|
|
5776
|
+
goToNextStep();
|
|
5796
5777
|
}
|
|
5797
5778
|
else {
|
|
5798
|
-
consentBkiDialog.open(
|
|
5779
|
+
consentBkiDialog.open(formData.phone, profileId);
|
|
5799
5780
|
}
|
|
5800
5781
|
};
|
|
5801
5782
|
const handleSuccessVerify = async () => {
|
|
@@ -5821,7 +5802,7 @@
|
|
|
5821
5802
|
};
|
|
5822
5803
|
const acceptedConsents = getAcceptedConsents(formData, productType);
|
|
5823
5804
|
verifyPhoneDialog.open({
|
|
5824
|
-
phone:
|
|
5805
|
+
phone: formData?.phone,
|
|
5825
5806
|
consents: acceptedConsents,
|
|
5826
5807
|
onSuccess: handleSuccessVerify,
|
|
5827
5808
|
});
|
|
@@ -5831,7 +5812,7 @@
|
|
|
5831
5812
|
catch {
|
|
5832
5813
|
setOK(false);
|
|
5833
5814
|
}
|
|
5834
|
-
}, [
|
|
5815
|
+
}, []);
|
|
5835
5816
|
return { isSending, ok, handleSubmit };
|
|
5836
5817
|
};
|
|
5837
5818
|
const getAcceptedConsents = (formData, productType) => {
|
|
@@ -5903,12 +5884,6 @@
|
|
|
5903
5884
|
consentAssignmentClaimsFlg: consentOthersFlg,
|
|
5904
5885
|
};
|
|
5905
5886
|
};
|
|
5906
|
-
const transformFormData = (formData) => ({
|
|
5907
|
-
...formData,
|
|
5908
|
-
surname: formData.surname?.trim(),
|
|
5909
|
-
name: formData.name?.trim(),
|
|
5910
|
-
middleName: formData.middleName?.trim(),
|
|
5911
|
-
});
|
|
5912
5887
|
|
|
5913
5888
|
const useSetter = (target, key) => useCallback((value) => {
|
|
5914
5889
|
const newValue = value instanceof Function ? value(target[key]) : value;
|
|
@@ -5920,7 +5895,10 @@
|
|
|
5920
5895
|
}
|
|
5921
5896
|
}, [target, key]);
|
|
5922
5897
|
|
|
5923
|
-
const
|
|
5898
|
+
const esiaRequestProfile = (body) => fetchRetailJSON('/esia/requestProfile', 'POST', body).then((res) => {
|
|
5899
|
+
saveToken(res);
|
|
5900
|
+
return res;
|
|
5901
|
+
});
|
|
5924
5902
|
|
|
5925
5903
|
const initialFormState = {
|
|
5926
5904
|
surname: '',
|
|
@@ -5938,19 +5916,24 @@
|
|
|
5938
5916
|
consentPhotoFlg: false,
|
|
5939
5917
|
consentFATCA: false,
|
|
5940
5918
|
};
|
|
5941
|
-
const getInitialFormState$1 = (inputs, savedForm) => {
|
|
5919
|
+
const getInitialFormState$1 = (inputs, savedForm, esiaAuthSuccess) => {
|
|
5942
5920
|
if (savedForm) {
|
|
5943
|
-
return {
|
|
5921
|
+
return {
|
|
5922
|
+
...savedForm,
|
|
5923
|
+
limitedBirthday: new Date(savedForm?.limitedBirthday || 0),
|
|
5924
|
+
...(!esiaAuthSuccess && {
|
|
5925
|
+
esiaAccountTypeCd: { key: '' },
|
|
5926
|
+
}),
|
|
5927
|
+
};
|
|
5944
5928
|
}
|
|
5945
5929
|
const formState = Object.fromEntries(inputs.map((_) => [_.name, initialFormState[_.name || '']]));
|
|
5946
5930
|
return { ...formState };
|
|
5947
5931
|
};
|
|
5948
5932
|
|
|
5949
|
-
const uploadFile = async (file,
|
|
5933
|
+
const uploadFile = async (file, documentCategory, isPDF = false) => {
|
|
5950
5934
|
const fd = new FormData();
|
|
5951
|
-
fd.append('taskId', taskId);
|
|
5952
5935
|
fd.append('documentCategory', documentCategory);
|
|
5953
|
-
fd.append('file', file, '
|
|
5936
|
+
fd.append('file', file, `file.${isPDF ? 'pdf' : 'xml'}`);
|
|
5954
5937
|
const res = await globalThis
|
|
5955
5938
|
?.fetch?.(`/light-api-cash/v1/file`, {
|
|
5956
5939
|
method: 'POST',
|
|
@@ -5964,23 +5947,13 @@
|
|
|
5964
5947
|
return res;
|
|
5965
5948
|
};
|
|
5966
5949
|
|
|
5967
|
-
const parseEsiaProfile = async (esiaProfile,
|
|
5968
|
-
|
|
5950
|
+
const parseEsiaProfile = async (esiaProfile, isDebit) => {
|
|
5951
|
+
checkEsiaData(esiaProfile);
|
|
5952
|
+
const isFullEsiaData = !isDebit && checkEsiaAdditionalDocument(esiaProfile);
|
|
5969
5953
|
const { profile, addInfo, document, addressRegistration, addressFact, esiaAdditionalDocument } = esiaProfile;
|
|
5970
|
-
|
|
5971
|
-
if (
|
|
5972
|
-
await
|
|
5973
|
-
document: esiaAdditionalDocument.pdfFileWorkbook,
|
|
5974
|
-
taskId,
|
|
5975
|
-
category: 'CONFIRMING_INCOME_DOC',
|
|
5976
|
-
files,
|
|
5977
|
-
});
|
|
5978
|
-
await saveDocument({
|
|
5979
|
-
document: esiaAdditionalDocument.pdfFilePayout,
|
|
5980
|
-
taskId,
|
|
5981
|
-
category: 'CONFIRMING_EMPLOYMENT_DOC',
|
|
5982
|
-
files,
|
|
5983
|
-
});
|
|
5954
|
+
let files = [];
|
|
5955
|
+
if (isFullEsiaData) {
|
|
5956
|
+
files = await saveDocuments(esiaAdditionalDocument);
|
|
5984
5957
|
}
|
|
5985
5958
|
const mainData = {
|
|
5986
5959
|
name: profile.name,
|
|
@@ -5997,11 +5970,11 @@
|
|
|
5997
5970
|
birthPlace: addInfo.birthPlace,
|
|
5998
5971
|
addressRegistration: buildAddress(addressRegistration),
|
|
5999
5972
|
addressFact: buildAddress(addressFact),
|
|
6000
|
-
esiaAccountTypeCd: profile.esiaAccountType,
|
|
5973
|
+
esiaAccountTypeCd: isDebit ? profile.esiaAccountType : { key: '' },
|
|
6001
5974
|
};
|
|
6002
5975
|
return {
|
|
6003
5976
|
...mainData,
|
|
6004
|
-
...(
|
|
5977
|
+
...(isFullEsiaData && {
|
|
6005
5978
|
snils: addInfo.snils,
|
|
6006
5979
|
inn: esiaAdditionalDocument.inn,
|
|
6007
5980
|
wages: Math.floor(esiaAdditionalDocument.averageMonthlyIncome)?.toString(),
|
|
@@ -6010,6 +5983,9 @@
|
|
|
6010
5983
|
generalSeniority: getYearFromMonth(esiaAdditionalDocument.workLength).toString(),
|
|
6011
5984
|
lastJobExperience: getYearFromMonth(esiaAdditionalDocument.workLengthLastJob).toString(),
|
|
6012
5985
|
jobsNumber: esiaAdditionalDocument.jobsNumberInFiveYears.toString(),
|
|
5986
|
+
esiaAccountTypeCd: profile.esiaAccountType,
|
|
5987
|
+
confirmationIncome: { key: 'SFR_CERTIFICATE', text: 'Запрос Банком доходов из СФР' },
|
|
5988
|
+
employment: { key: 'WORK', text: 'Работаю' },
|
|
6013
5989
|
files,
|
|
6014
5990
|
}),
|
|
6015
5991
|
};
|
|
@@ -6042,43 +6018,60 @@
|
|
|
6042
6018
|
};
|
|
6043
6019
|
};
|
|
6044
6020
|
const getYearFromMonth = (month) => Math.floor(month / 12);
|
|
6045
|
-
const
|
|
6046
|
-
|
|
6047
|
-
|
|
6048
|
-
|
|
6049
|
-
|
|
6050
|
-
|
|
6051
|
-
|
|
6052
|
-
|
|
6053
|
-
|
|
6054
|
-
|
|
6055
|
-
|
|
6056
|
-
|
|
6057
|
-
|
|
6058
|
-
|
|
6059
|
-
|
|
6060
|
-
|
|
6061
|
-
|
|
6062
|
-
|
|
6063
|
-
|
|
6064
|
-
|
|
6065
|
-
|
|
6066
|
-
|
|
6067
|
-
|
|
6068
|
-
|
|
6069
|
-
|
|
6070
|
-
|
|
6071
|
-
|
|
6072
|
-
|
|
6073
|
-
|
|
6074
|
-
|
|
6075
|
-
|
|
6021
|
+
const saveDocuments = async (esiaAdditionalDocument) => {
|
|
6022
|
+
const files = [];
|
|
6023
|
+
const documents = [
|
|
6024
|
+
{
|
|
6025
|
+
file: esiaAdditionalDocument.pdfFileWorkbook,
|
|
6026
|
+
category: 'CONFIRMING_INCOME_DOC',
|
|
6027
|
+
isPDF: true,
|
|
6028
|
+
},
|
|
6029
|
+
{
|
|
6030
|
+
file: esiaAdditionalDocument.pdfFilePayout,
|
|
6031
|
+
category: 'CONFIRMING_EMPLOYMENT_DOC',
|
|
6032
|
+
isPDF: true,
|
|
6033
|
+
},
|
|
6034
|
+
{
|
|
6035
|
+
file: esiaAdditionalDocument.pdfFileSigPayout,
|
|
6036
|
+
category: 'CONFIRMING_EMPLOYMENT_DOC',
|
|
6037
|
+
isPDF: true,
|
|
6038
|
+
},
|
|
6039
|
+
{
|
|
6040
|
+
file: esiaAdditionalDocument.xmlFilePayout,
|
|
6041
|
+
category: 'CONFIRMING_EMPLOYMENT_DOC',
|
|
6042
|
+
isPDF: false,
|
|
6043
|
+
},
|
|
6044
|
+
{
|
|
6045
|
+
file: esiaAdditionalDocument.xmlFileSigPayout,
|
|
6046
|
+
category: 'CONFIRMING_EMPLOYMENT_DOC',
|
|
6047
|
+
isPDF: false,
|
|
6048
|
+
},
|
|
6049
|
+
{
|
|
6050
|
+
file: esiaAdditionalDocument.xmlFileWorkbook,
|
|
6051
|
+
category: 'CONFIRMING_INCOME_DOC',
|
|
6052
|
+
isPDF: false,
|
|
6053
|
+
},
|
|
6054
|
+
{
|
|
6055
|
+
file: esiaAdditionalDocument.pdfFileSigWorkbook,
|
|
6056
|
+
category: 'CONFIRMING_INCOME_DOC',
|
|
6057
|
+
isPDF: true,
|
|
6058
|
+
},
|
|
6059
|
+
{
|
|
6060
|
+
file: esiaAdditionalDocument.xmlFileSigWorkbook,
|
|
6061
|
+
category: 'CONFIRMING_INCOME_DOC',
|
|
6062
|
+
isPDF: false,
|
|
6063
|
+
},
|
|
6076
6064
|
];
|
|
6077
|
-
|
|
6078
|
-
|
|
6065
|
+
for (const doc of documents) {
|
|
6066
|
+
const contentType = doc.isPDF ? 'data:application/pdf;base64' : 'data:application/xml;base64';
|
|
6067
|
+
await fetch(`${contentType},${doc.file}`)
|
|
6068
|
+
.then((res) => res.blob())
|
|
6069
|
+
.then((value) => uploadFile(value, doc.category, doc.isPDF))
|
|
6070
|
+
.then((file) => files.push(file));
|
|
6079
6071
|
}
|
|
6072
|
+
return files;
|
|
6080
6073
|
};
|
|
6081
|
-
const
|
|
6074
|
+
const checkEsiaData = (esiaProfile) => {
|
|
6082
6075
|
const { profile, document, addressRegistration } = esiaProfile;
|
|
6083
6076
|
const data = [
|
|
6084
6077
|
profile.name,
|
|
@@ -6086,7 +6079,6 @@
|
|
|
6086
6079
|
profile.midname,
|
|
6087
6080
|
profile.birthDate,
|
|
6088
6081
|
profile.phone,
|
|
6089
|
-
profile.email,
|
|
6090
6082
|
document.dulIssueDate,
|
|
6091
6083
|
document.dulIssuedBy,
|
|
6092
6084
|
document.dulNumber,
|
|
@@ -6099,75 +6091,97 @@
|
|
|
6099
6091
|
throw new Error();
|
|
6100
6092
|
}
|
|
6101
6093
|
};
|
|
6094
|
+
const checkEsiaAdditionalDocument = (esiaProfile) => {
|
|
6095
|
+
const { esiaAdditionalDocument } = esiaProfile;
|
|
6096
|
+
const data = [
|
|
6097
|
+
esiaAdditionalDocument?.inn,
|
|
6098
|
+
esiaAdditionalDocument?.averageMonthlyIncome?.toString(),
|
|
6099
|
+
esiaAdditionalDocument?.startWorkDate,
|
|
6100
|
+
esiaAdditionalDocument?.workLengthInFiveYears?.toString(),
|
|
6101
|
+
esiaAdditionalDocument?.workLength?.toString(),
|
|
6102
|
+
esiaAdditionalDocument?.workLengthLastJob?.toString(),
|
|
6103
|
+
esiaAdditionalDocument?.jobsNumberInFiveYears?.toString(),
|
|
6104
|
+
esiaAdditionalDocument?.pdfFilePayout,
|
|
6105
|
+
esiaAdditionalDocument?.pdfFileWorkbook,
|
|
6106
|
+
esiaAdditionalDocument?.pdfFileSigPayout,
|
|
6107
|
+
esiaAdditionalDocument?.xmlFilePayout,
|
|
6108
|
+
esiaAdditionalDocument?.xmlFileSigPayout,
|
|
6109
|
+
esiaAdditionalDocument?.xmlFileWorkbook,
|
|
6110
|
+
esiaAdditionalDocument?.pdfFileSigWorkbook,
|
|
6111
|
+
esiaAdditionalDocument?.xmlFileSigWorkbook,
|
|
6112
|
+
];
|
|
6113
|
+
return data.every((_) => Boolean(_));
|
|
6114
|
+
};
|
|
6102
6115
|
|
|
6103
|
-
const useInitApplicationLead = ({ inputs,
|
|
6104
|
-
const navigator = locationNavigator();
|
|
6105
|
-
const [isLoading, { setTrue: startLoading, setFalse: endLoading }] = useBool(false);
|
|
6116
|
+
const useInitApplicationLead = ({ inputs, productType, setEsiaStatus, esiaAuthSuccess, }) => {
|
|
6106
6117
|
const leadFormStore = useLeadFormStore();
|
|
6107
6118
|
const saveForm = useSetter(leadFormStore, 'leadForm');
|
|
6108
|
-
const initialFormState = useMemo(() => getInitialFormState$1(inputs, leadFormStore.leadForm), [inputs, leadFormStore.leadForm]);
|
|
6109
|
-
const
|
|
6110
|
-
|
|
6119
|
+
const initialFormState = useMemo(() => getInitialFormState$1(inputs, leadFormStore.leadForm, esiaAuthSuccess), [inputs, leadFormStore.leadForm]);
|
|
6120
|
+
const requestEsiaProfile = useCallback(async (code, state) => {
|
|
6121
|
+
setEsiaStatus(EsiaStatuses.Pending);
|
|
6111
6122
|
try {
|
|
6112
|
-
const data = await
|
|
6113
|
-
profileId,
|
|
6123
|
+
const data = await esiaRequestProfile({
|
|
6114
6124
|
code,
|
|
6115
6125
|
state,
|
|
6116
6126
|
redirectUri: globalThis.location?.href,
|
|
6127
|
+
authorize: true,
|
|
6117
6128
|
});
|
|
6118
|
-
if (data
|
|
6119
|
-
const parsedData = await parseEsiaProfile(data,
|
|
6129
|
+
if (data) {
|
|
6130
|
+
const parsedData = await parseEsiaProfile(data, productType === 'debitCard');
|
|
6120
6131
|
saveForm((_) => ({
|
|
6121
6132
|
..._,
|
|
6122
6133
|
...parsedData,
|
|
6123
6134
|
}));
|
|
6135
|
+
setEsiaStatus(EsiaStatuses.Success);
|
|
6124
6136
|
}
|
|
6125
|
-
navigator.assign(nextStepLink);
|
|
6126
6137
|
}
|
|
6127
6138
|
catch {
|
|
6128
|
-
|
|
6129
|
-
}
|
|
6130
|
-
finally {
|
|
6131
|
-
endLoading();
|
|
6139
|
+
setEsiaStatus(EsiaStatuses.Error);
|
|
6132
6140
|
}
|
|
6133
|
-
}, [
|
|
6141
|
+
}, []);
|
|
6134
6142
|
useEffect(() => {
|
|
6135
6143
|
leadFormStore.productType = productType;
|
|
6136
|
-
const profileId = (safeJsonParse(globalThis.localStorage?.getItem('profileId') ?? ''));
|
|
6137
6144
|
const params = new URLSearchParams(decodeURIComponent(globalThis.location?.search));
|
|
6138
6145
|
const code = params.get('code');
|
|
6139
6146
|
const state = params.get('state');
|
|
6140
|
-
if (
|
|
6141
|
-
|
|
6147
|
+
if (code && state) {
|
|
6148
|
+
requestEsiaProfile(code, state);
|
|
6142
6149
|
}
|
|
6143
6150
|
else {
|
|
6144
6151
|
sessionStorage.removeItem('accessToken');
|
|
6145
6152
|
sessionStorage.removeItem('refreshToken');
|
|
6146
6153
|
}
|
|
6147
6154
|
}, []);
|
|
6148
|
-
return
|
|
6155
|
+
return initialFormState;
|
|
6149
6156
|
};
|
|
6150
6157
|
|
|
6158
|
+
var EsiaStatuses;
|
|
6159
|
+
(function (EsiaStatuses) {
|
|
6160
|
+
EsiaStatuses["Success"] = "SUCCESS";
|
|
6161
|
+
EsiaStatuses["Error"] = "ERROR";
|
|
6162
|
+
EsiaStatuses["Pending"] = "PENDING";
|
|
6163
|
+
})(EsiaStatuses || (EsiaStatuses = {}));
|
|
6151
6164
|
const ApplicationLeadForm = JSX(({ className, title, programId = '', nextStepLink = '/credit-lead', button, productType = 'credit', data, ...rest }) => {
|
|
6152
|
-
const [
|
|
6165
|
+
const [esiaStatus, setEsiaStatus] = useState();
|
|
6166
|
+
const leadForm = useRef(null);
|
|
6153
6167
|
const applicationFormData = useMemo(() => getApplicationFormData(productType), [productType]);
|
|
6154
6168
|
const inputs = useMemo(() => getInputs(applicationFormData), [applicationFormData]);
|
|
6155
6169
|
const extendedValidatorObj = useMemo(() => getExtendedValidatorObj(productType), [productType]);
|
|
6156
6170
|
const formValidator = useMemo(() => getFormValidator(inputs, extendedValidatorObj), [inputs, extendedValidatorObj]);
|
|
6157
|
-
const
|
|
6171
|
+
const initialFormState = useInitApplicationLead({
|
|
6158
6172
|
inputs,
|
|
6159
6173
|
nextStepLink,
|
|
6160
6174
|
productType,
|
|
6161
|
-
|
|
6175
|
+
setEsiaStatus,
|
|
6176
|
+
esiaAuthSuccess: esiaStatus === EsiaStatuses.Success,
|
|
6162
6177
|
});
|
|
6163
6178
|
const { isSending, ok, handleSubmit } = useApplicationLeadApi({
|
|
6164
6179
|
programId,
|
|
6165
6180
|
nextStepLink,
|
|
6166
6181
|
productType,
|
|
6167
|
-
esiaError,
|
|
6168
6182
|
data,
|
|
6169
6183
|
});
|
|
6170
|
-
const [, { field, onSubmit }] = useForm(initialFormState, {
|
|
6184
|
+
const [, { field, onSubmit, reset }] = useForm(initialFormState, {
|
|
6171
6185
|
formValidator,
|
|
6172
6186
|
onSubmit: handleSubmit,
|
|
6173
6187
|
});
|
|
@@ -6177,7 +6191,17 @@
|
|
|
6177
6191
|
responseTypeDialog.open({ ok });
|
|
6178
6192
|
}
|
|
6179
6193
|
}, [ok]);
|
|
6180
|
-
|
|
6194
|
+
useEffect(() => {
|
|
6195
|
+
if (esiaStatus && leadForm?.current) {
|
|
6196
|
+
leadForm.current.scrollIntoView({
|
|
6197
|
+
block: 'start',
|
|
6198
|
+
});
|
|
6199
|
+
}
|
|
6200
|
+
if (esiaStatus === EsiaStatuses.Success) {
|
|
6201
|
+
reset();
|
|
6202
|
+
}
|
|
6203
|
+
}, [leadForm?.current, esiaStatus]);
|
|
6204
|
+
return (jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [!esiaStatus ? jsx(EsiaLoginBanner, {}) : null, jsxs("form", { onSubmit: onSubmit, className: "space-y-m relative", ref: leadForm, children: [esiaStatus === EsiaStatuses.Pending ? jsx(Loader, { blur: false }) : null, applicationFormData.map((_, i) => (jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), renderInputs$1({ field, inputs: _?.inputs }, productType)] }, `section-${i}`))), renderSubmitButton(button, isSending), esiaStatus === EsiaStatuses.Error ? (jsx(Text, { size: "text-m", font: "font-medium", color: "text-error", children: "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438 \u0434\u043B\u044F \u043E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u044F \u0437\u0430\u044F\u0432\u043A\u0438 \u043D\u0435\u0432\u043E\u0437\u043C\u043E\u0436\u043D\u043E, \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u043E \u0437\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043F\u043E\u043B\u044F \u0432\u0440\u0443\u0447\u043D\u0443\u044E." })) : null] })] }));
|
|
6181
6205
|
});
|
|
6182
6206
|
const getInputs = (applicationFormData) => (applicationFormData?.flatMap((_) => _?.inputs) || []);
|
|
6183
6207
|
const getExtendedValidatorObj = (productType) => ({
|
|
@@ -7875,6 +7899,7 @@
|
|
|
7875
7899
|
mandatoryPayments: undefined,
|
|
7876
7900
|
snils: '',
|
|
7877
7901
|
armyIdFlg: false,
|
|
7902
|
+
esiaAccountTypeCd: { key: '', text: '' },
|
|
7878
7903
|
},
|
|
7879
7904
|
{
|
|
7880
7905
|
bankruptcyFlg: false,
|
|
@@ -8270,7 +8295,7 @@
|
|
|
8270
8295
|
label: 'Телефон работодателя',
|
|
8271
8296
|
required: true,
|
|
8272
8297
|
},
|
|
8273
|
-
{ name: 'beginDate', required: true },
|
|
8298
|
+
{ name: 'beginDate', required: true, filledByEsia: true },
|
|
8274
8299
|
],
|
|
8275
8300
|
},
|
|
8276
8301
|
{
|
|
@@ -8312,16 +8337,22 @@
|
|
|
8312
8337
|
title: 'Совокупный доход',
|
|
8313
8338
|
},
|
|
8314
8339
|
{
|
|
8340
|
+
columns: 1,
|
|
8315
8341
|
inputs: [
|
|
8316
8342
|
{
|
|
8317
|
-
name: '
|
|
8318
|
-
|
|
8343
|
+
name: 'confirmationIncome',
|
|
8344
|
+
required: true,
|
|
8345
|
+
filledByEsia: true,
|
|
8319
8346
|
},
|
|
8320
8347
|
],
|
|
8321
8348
|
},
|
|
8322
8349
|
{
|
|
8323
|
-
|
|
8324
|
-
|
|
8350
|
+
inputs: [
|
|
8351
|
+
{
|
|
8352
|
+
name: 'infoCard',
|
|
8353
|
+
label: 'Сумма основного и дополнительных доходов после вычета налога',
|
|
8354
|
+
},
|
|
8355
|
+
],
|
|
8325
8356
|
},
|
|
8326
8357
|
{
|
|
8327
8358
|
columns: 1,
|
|
@@ -10918,7 +10949,7 @@
|
|
|
10918
10949
|
slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
|
|
10919
10950
|
});
|
|
10920
10951
|
|
|
10921
|
-
const packageVersion = "0.14.
|
|
10952
|
+
const packageVersion = "0.14.823";
|
|
10922
10953
|
|
|
10923
10954
|
exports.Blocks = Blocks;
|
|
10924
10955
|
exports.ContentPage = ContentPage;
|