@redneckz/wildless-cms-uni-blocks 0.14.587 → 0.14.589
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/api/RetailApi/RetailApi.d.ts +3 -1
- package/bundle/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +188 -58
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/bundle/icons/IconName.d.ts +4 -2
- package/bundle/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/bundle/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/bundle/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/bundle/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/bundle/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/bundle/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/bundle/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/bundle/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/bundle/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/bundle/ui-kit/FormField/validators.d.ts +2 -0
- package/bundle/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/bundle/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/bundle/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/bundle/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/cosmos-static/icons/RefreshIcon.svg +1 -0
- package/cosmos-static/icons/sprites.svg +1 -0
- package/dist/api/RetailApi/RetailApi.d.ts +3 -1
- package/dist/api/RetailApi/RetailApi.js +15 -1
- package/dist/api/RetailApi/RetailApi.js.map +1 -1
- package/dist/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/dist/components/ApplicationForm/ApplicationFormContent.js +1 -0
- package/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
- package/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +3 -4
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/dist/icons/IconName.d.ts +4 -2
- package/dist/icons/IconName.js +3 -1
- package/dist/icons/IconName.js.map +1 -1
- package/dist/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/dist/ui-kit/CaptchaDialog/CaptchaDialog.js +22 -0
- package/dist/ui-kit/CaptchaDialog/CaptchaDialog.js.map +1 -0
- package/dist/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/dist/ui-kit/CaptchaDialog/checkCaptcha.js +16 -0
- package/dist/ui-kit/CaptchaDialog/checkCaptcha.js.map +1 -0
- package/dist/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/dist/ui-kit/CaptchaDialog/createCaptcha.js +9 -0
- package/dist/ui-kit/CaptchaDialog/createCaptcha.js.map +1 -0
- package/dist/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/dist/ui-kit/CaptchaDialog/useCaptchaDialog.js +15 -0
- package/dist/ui-kit/CaptchaDialog/useCaptchaDialog.js.map +1 -0
- package/dist/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/dist/ui-kit/FormField/Fields/DulIssueDateField.js +9 -0
- package/dist/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -0
- package/dist/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/dist/ui-kit/FormField/Fields/DulIssuedBy.js +9 -0
- package/dist/ui-kit/FormField/Fields/DulIssuedBy.js.map +1 -0
- package/dist/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/dist/ui-kit/FormField/Fields/DulNumberField.js +9 -0
- package/dist/ui-kit/FormField/Fields/DulNumberField.js.map +1 -0
- package/dist/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/dist/ui-kit/FormField/Fields/DulSerieField.js +9 -0
- package/dist/ui-kit/FormField/Fields/DulSerieField.js.map +1 -0
- package/dist/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/dist/ui-kit/FormField/Fields/DulSubdivisionCode.js +9 -0
- package/dist/ui-kit/FormField/Fields/DulSubdivisionCode.js.map +1 -0
- package/dist/ui-kit/FormField/getField.js +10 -0
- package/dist/ui-kit/FormField/getField.js.map +1 -1
- package/dist/ui-kit/FormField/getObjectValidator.js +5 -0
- package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/dist/ui-kit/FormField/validators.d.ts +2 -0
- package/dist/ui-kit/FormField/validators.js +3 -1
- package/dist/ui-kit/FormField/validators.js.map +1 -1
- package/dist/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/dist/ui-kit/VerifyPhoneDialog/InputCode.js +2 -2
- package/dist/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
- package/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +20 -29
- package/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
- package/dist/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/dist/ui-kit/VerifyPhoneDialog/handleSendCode.js +21 -0
- package/dist/ui-kit/VerifyPhoneDialog/handleSendCode.js.map +1 -0
- package/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js +1 -1
- package/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js.map +1 -1
- package/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js +59 -0
- package/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js.map +1 -0
- package/lib/api/RetailApi/RetailApi.d.ts +3 -1
- package/lib/api/RetailApi/RetailApi.js +15 -1
- package/lib/api/RetailApi/RetailApi.js.map +1 -1
- package/lib/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/lib/common.css +1 -1
- package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/lib/components/ApplicationForm/ApplicationFormContent.js +1 -0
- package/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
- package/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +3 -4
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/lib/icons/IconName.d.ts +4 -2
- package/lib/icons/IconName.js +3 -1
- package/lib/icons/IconName.js.map +1 -1
- package/lib/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/lib/ui-kit/CaptchaDialog/CaptchaDialog.fixture.d.ts +6 -0
- package/lib/ui-kit/CaptchaDialog/CaptchaDialog.js +20 -0
- package/lib/ui-kit/CaptchaDialog/CaptchaDialog.js.map +1 -0
- package/lib/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/lib/ui-kit/CaptchaDialog/checkCaptcha.js +13 -0
- package/lib/ui-kit/CaptchaDialog/checkCaptcha.js.map +1 -0
- package/lib/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/lib/ui-kit/CaptchaDialog/createCaptcha.js +6 -0
- package/lib/ui-kit/CaptchaDialog/createCaptcha.js.map +1 -0
- package/lib/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/lib/ui-kit/CaptchaDialog/useCaptchaDialog.js +12 -0
- package/lib/ui-kit/CaptchaDialog/useCaptchaDialog.js.map +1 -0
- package/lib/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/lib/ui-kit/FormField/Fields/DulIssueDateField.js +7 -0
- package/lib/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -0
- package/lib/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/lib/ui-kit/FormField/Fields/DulIssuedBy.js +7 -0
- package/lib/ui-kit/FormField/Fields/DulIssuedBy.js.map +1 -0
- package/lib/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/lib/ui-kit/FormField/Fields/DulNumberField.js +7 -0
- package/lib/ui-kit/FormField/Fields/DulNumberField.js.map +1 -0
- package/lib/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/lib/ui-kit/FormField/Fields/DulSerieField.js +7 -0
- package/lib/ui-kit/FormField/Fields/DulSerieField.js.map +1 -0
- package/lib/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/lib/ui-kit/FormField/Fields/DulSubdivisionCode.js +7 -0
- package/lib/ui-kit/FormField/Fields/DulSubdivisionCode.js.map +1 -0
- package/lib/ui-kit/FormField/getField.js +10 -0
- package/lib/ui-kit/FormField/getField.js.map +1 -1
- package/lib/ui-kit/FormField/getObjectValidator.js +6 -1
- package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/lib/ui-kit/FormField/validators.d.ts +2 -0
- package/lib/ui-kit/FormField/validators.js +2 -0
- package/lib/ui-kit/FormField/validators.js.map +1 -1
- package/lib/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/lib/ui-kit/VerifyPhoneDialog/InputCode.js +2 -2
- package/lib/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
- package/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +21 -30
- package/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
- package/lib/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/lib/ui-kit/VerifyPhoneDialog/handleSendCode.js +18 -0
- package/lib/ui-kit/VerifyPhoneDialog/handleSendCode.js.map +1 -0
- package/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js +1 -1
- package/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js.map +1 -1
- package/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js +56 -0
- package/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js.map +1 -0
- package/mobile/bundle/api/RetailApi/RetailApi.d.ts +3 -1
- package/mobile/bundle/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/mobile/bundle/bundle.umd.js +188 -58
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/mobile/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/mobile/bundle/icons/IconName.d.ts +4 -2
- package/mobile/bundle/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/mobile/bundle/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/mobile/bundle/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/mobile/bundle/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/mobile/bundle/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/mobile/bundle/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/mobile/bundle/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/mobile/bundle/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/mobile/bundle/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/mobile/bundle/ui-kit/FormField/validators.d.ts +2 -0
- package/mobile/bundle/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/mobile/bundle/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/mobile/bundle/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/mobile/bundle/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/mobile/dist/api/RetailApi/RetailApi.d.ts +3 -1
- package/mobile/dist/api/RetailApi/RetailApi.js +15 -1
- package/mobile/dist/api/RetailApi/RetailApi.js.map +1 -1
- package/mobile/dist/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js +1 -0
- package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +3 -4
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/dist/icons/IconName.d.ts +4 -2
- package/mobile/dist/icons/IconName.js +3 -1
- package/mobile/dist/icons/IconName.js.map +1 -1
- package/mobile/dist/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/mobile/dist/ui-kit/CaptchaDialog/CaptchaDialog.js +22 -0
- package/mobile/dist/ui-kit/CaptchaDialog/CaptchaDialog.js.map +1 -0
- package/mobile/dist/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/mobile/dist/ui-kit/CaptchaDialog/checkCaptcha.js +16 -0
- package/mobile/dist/ui-kit/CaptchaDialog/checkCaptcha.js.map +1 -0
- package/mobile/dist/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/mobile/dist/ui-kit/CaptchaDialog/createCaptcha.js +9 -0
- package/mobile/dist/ui-kit/CaptchaDialog/createCaptcha.js.map +1 -0
- package/mobile/dist/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/mobile/dist/ui-kit/CaptchaDialog/useCaptchaDialog.js +15 -0
- package/mobile/dist/ui-kit/CaptchaDialog/useCaptchaDialog.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssueDateField.js +9 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssuedBy.js +9 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulIssuedBy.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulNumberField.js +9 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulNumberField.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSerieField.js +9 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSerieField.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSubdivisionCode.js +9 -0
- package/mobile/dist/ui-kit/FormField/Fields/DulSubdivisionCode.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/getField.js +10 -0
- package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js +5 -0
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/validators.d.ts +2 -0
- package/mobile/dist/ui-kit/FormField/validators.js +3 -1
- package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
- package/mobile/dist/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/InputCode.js +2 -2
- package/mobile/dist/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
- package/mobile/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/mobile/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +20 -29
- package/mobile/dist/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
- package/mobile/dist/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/handleSendCode.js +21 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/handleSendCode.js.map +1 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js +1 -1
- package/mobile/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js.map +1 -1
- package/mobile/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js +59 -0
- package/mobile/dist/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js.map +1 -0
- package/mobile/lib/api/RetailApi/RetailApi.d.ts +3 -1
- package/mobile/lib/api/RetailApi/RetailApi.js +15 -1
- package/mobile/lib/api/RetailApi/RetailApi.js.map +1 -1
- package/mobile/lib/api/RetailApi/RetailApiTypes.d.ts +3 -0
- package/mobile/lib/common.css +1 -1
- package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
- package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js +1 -0
- package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
- package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +5 -0
- package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +3 -4
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/lib/icons/IconName.d.ts +4 -2
- package/mobile/lib/icons/IconName.js +3 -1
- package/mobile/lib/icons/IconName.js.map +1 -1
- package/mobile/lib/ui-kit/CaptchaDialog/CaptchaDialog.d.ts +7 -0
- package/mobile/lib/ui-kit/CaptchaDialog/CaptchaDialog.js +20 -0
- package/mobile/lib/ui-kit/CaptchaDialog/CaptchaDialog.js.map +1 -0
- package/mobile/lib/ui-kit/CaptchaDialog/checkCaptcha.d.ts +8 -0
- package/mobile/lib/ui-kit/CaptchaDialog/checkCaptcha.js +13 -0
- package/mobile/lib/ui-kit/CaptchaDialog/checkCaptcha.js.map +1 -0
- package/mobile/lib/ui-kit/CaptchaDialog/createCaptcha.d.ts +1 -0
- package/mobile/lib/ui-kit/CaptchaDialog/createCaptcha.js +6 -0
- package/mobile/lib/ui-kit/CaptchaDialog/createCaptcha.js.map +1 -0
- package/mobile/lib/ui-kit/CaptchaDialog/useCaptchaDialog.d.ts +6 -0
- package/mobile/lib/ui-kit/CaptchaDialog/useCaptchaDialog.js +12 -0
- package/mobile/lib/ui-kit/CaptchaDialog/useCaptchaDialog.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssueDateField.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssueDateField.js +7 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssuedBy.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssuedBy.js +7 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulIssuedBy.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulNumberField.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulNumberField.js +7 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulNumberField.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSerieField.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSerieField.js +7 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSerieField.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSubdivisionCode.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSubdivisionCode.js +7 -0
- package/mobile/lib/ui-kit/FormField/Fields/DulSubdivisionCode.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/getField.js +10 -0
- package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js +6 -1
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/validators.d.ts +2 -0
- package/mobile/lib/ui-kit/FormField/validators.js +2 -0
- package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
- package/mobile/lib/ui-kit/VerifyPhoneDialog/InputCode.d.ts +1 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/InputCode.js +2 -2
- package/mobile/lib/ui-kit/VerifyPhoneDialog/InputCode.js.map +1 -1
- package/mobile/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.d.ts +3 -3
- package/mobile/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js +21 -30
- package/mobile/lib/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.js.map +1 -1
- package/mobile/lib/ui-kit/VerifyPhoneDialog/handleSendCode.d.ts +15 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/handleSendCode.js +18 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/handleSendCode.js.map +1 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js +1 -1
- package/mobile/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.js.map +1 -1
- package/mobile/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.d.ts +16 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js +56 -0
- package/mobile/lib/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.js.map +1 -0
- package/mobile/src/api/RetailApi/RetailApi.ts +18 -1
- package/mobile/src/api/RetailApi/RetailApiTypes.ts +4 -0
- package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +7 -1
- package/mobile/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +6 -1
- package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +5 -0
- package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.ts +3 -4
- package/mobile/src/icons/IconName.ts +5 -5
- package/mobile/src/icons/RefreshIcon.svg +3 -0
- package/mobile/src/ui-kit/CaptchaDialog/CaptchaDialog.tsx +68 -0
- package/mobile/src/ui-kit/CaptchaDialog/checkCaptcha.ts +25 -0
- package/mobile/src/ui-kit/CaptchaDialog/createCaptcha.ts +6 -0
- package/mobile/src/ui-kit/CaptchaDialog/useCaptchaDialog.tsx +12 -0
- package/mobile/src/ui-kit/FormField/Fields/DulIssueDateField.tsx +12 -0
- package/mobile/src/ui-kit/FormField/Fields/DulIssuedBy.tsx +12 -0
- package/mobile/src/ui-kit/FormField/Fields/DulNumberField.tsx +13 -0
- package/mobile/src/ui-kit/FormField/Fields/DulSerieField.tsx +13 -0
- package/mobile/src/ui-kit/FormField/Fields/DulSubdivisionCode.tsx +17 -0
- package/mobile/src/ui-kit/FormField/getField.tsx +10 -0
- package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +7 -0
- package/mobile/src/ui-kit/FormField/validators.ts +8 -0
- package/mobile/src/ui-kit/VerifyPhoneDialog/InputCode.tsx +3 -2
- package/mobile/src/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.tsx +66 -51
- package/mobile/src/ui-kit/VerifyPhoneDialog/handleSendCode.ts +37 -0
- package/mobile/src/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.tsx +2 -1
- package/mobile/src/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.tsx +71 -0
- package/package.json +2 -2
- package/src/api/RetailApi/RetailApi.ts +18 -1
- package/src/api/RetailApi/RetailApiTypes.ts +4 -0
- package/src/components/ApplicationForm/ApplicationFormContent.ts +7 -1
- package/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +6 -1
- package/src/components/ApplicationLeadForm/getInitialFormState.tsx +5 -0
- package/src/components/ApplicationLeadForm/useApplicationLeadApi.ts +3 -4
- package/src/icons/IconName.ts +353 -6
- package/src/icons/RefreshIcon.svg +3 -0
- package/src/ui-kit/CaptchaDialog/CaptchaDialog.fixture.tsx +11 -0
- package/src/ui-kit/CaptchaDialog/CaptchaDialog.tsx +68 -0
- package/src/ui-kit/CaptchaDialog/checkCaptcha.ts +25 -0
- package/src/ui-kit/CaptchaDialog/createCaptcha.ts +6 -0
- package/src/ui-kit/CaptchaDialog/useCaptchaDialog.tsx +12 -0
- package/src/ui-kit/FormField/Fields/DulIssueDateField.tsx +12 -0
- package/src/ui-kit/FormField/Fields/DulIssuedBy.tsx +12 -0
- package/src/ui-kit/FormField/Fields/DulNumberField.tsx +13 -0
- package/src/ui-kit/FormField/Fields/DulSerieField.tsx +13 -0
- package/src/ui-kit/FormField/Fields/DulSubdivisionCode.tsx +17 -0
- package/src/ui-kit/FormField/getField.tsx +10 -0
- package/src/ui-kit/FormField/getObjectValidator.tsx +7 -0
- package/src/ui-kit/FormField/validators.ts +8 -0
- package/src/ui-kit/VerifyPhoneDialog/InputCode.tsx +3 -2
- package/src/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.fixture.tsx +11 -8
- package/src/ui-kit/VerifyPhoneDialog/VerifyPhoneDialog.tsx +66 -51
- package/src/ui-kit/VerifyPhoneDialog/handleSendCode.ts +37 -0
- package/src/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialog.tsx +2 -1
- package/src/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.tsx +71 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare type useVerifyPhoneDialogSubmitProps = {
|
|
2
|
+
values: string[];
|
|
3
|
+
close?: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare const useVerifyPhoneDialogSubmit: ({ close, values }: useVerifyPhoneDialogSubmitProps) => {
|
|
6
|
+
handleSubmit: () => Promise<void>;
|
|
7
|
+
hasError: boolean;
|
|
8
|
+
errorText: string;
|
|
9
|
+
isLoading: boolean;
|
|
10
|
+
timeNextReq: number;
|
|
11
|
+
isSubmitButtonDisabled: boolean;
|
|
12
|
+
setTimeNextReq: (value: number | ((prevState: number) => number)) => void;
|
|
13
|
+
setIsTimerStarted: (value: boolean | ((prevState: boolean) => boolean)) => void;
|
|
14
|
+
setAttemps: (value: number | ((prevState: number) => number)) => void;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { useCallback, useEffect, useMemo, useState } from '@redneckz/uni-jsx/lib/hooks';
|
|
2
|
+
import { RETAIL_API } from '../../api/RetailApi/RetailApi.js';
|
|
3
|
+
export const useVerifyPhoneDialogSubmit = ({ close, values }) => {
|
|
4
|
+
const [hasError, setHasError] = useState(false);
|
|
5
|
+
const [errorText, setErrorText] = useState('');
|
|
6
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
7
|
+
const [timeNextReq, setTimeNextReq] = useState(0);
|
|
8
|
+
const [isTimerStarted, setIsTimerStarted] = useState(false);
|
|
9
|
+
const [attemps, setAttemps] = useState(0);
|
|
10
|
+
const resetError = useCallback(() => {
|
|
11
|
+
setHasError(false);
|
|
12
|
+
setErrorText('');
|
|
13
|
+
}, []);
|
|
14
|
+
const isTimeExpired = useMemo(() => timeNextReq === 0 && isTimerStarted, [timeNextReq, isTimerStarted]);
|
|
15
|
+
const isSubmitButtonDisabled = useMemo(() => attemps > 2 || !values.every(Boolean) || isTimeExpired, [values]);
|
|
16
|
+
const handleSubmit = useCallback(async () => {
|
|
17
|
+
try {
|
|
18
|
+
setIsTimerStarted(false);
|
|
19
|
+
setTimeNextReq(0);
|
|
20
|
+
setAttemps(attemps + 1);
|
|
21
|
+
setIsLoading(true);
|
|
22
|
+
await RETAIL_API.CheckCode({
|
|
23
|
+
smsText: values.join(''),
|
|
24
|
+
smsCodesSetName: { key: 'AUTHENTICATION' },
|
|
25
|
+
});
|
|
26
|
+
resetError();
|
|
27
|
+
close && close();
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
setIsLoading(false);
|
|
31
|
+
attemps > 1 ? setErrorText('Исчерпан лимит ввода смс-кода') : setErrorText('Неверный код');
|
|
32
|
+
setHasError(true);
|
|
33
|
+
}
|
|
34
|
+
}, [values, attemps]);
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
if (isTimeExpired) {
|
|
37
|
+
setHasError(true);
|
|
38
|
+
setErrorText('Код просрочен');
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
setHasError(false);
|
|
42
|
+
}
|
|
43
|
+
}, [isTimeExpired]);
|
|
44
|
+
return {
|
|
45
|
+
handleSubmit,
|
|
46
|
+
hasError,
|
|
47
|
+
errorText,
|
|
48
|
+
isLoading,
|
|
49
|
+
timeNextReq,
|
|
50
|
+
isSubmitButtonDisabled,
|
|
51
|
+
setTimeNextReq,
|
|
52
|
+
setIsTimerStarted,
|
|
53
|
+
setAttemps,
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=useVerifyPhoneDialogSubmit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useVerifyPhoneDialogSubmit.js","sourceRoot":"","sources":["../../../src/ui-kit/VerifyPhoneDialog/useVerifyPhoneDialogSubmit.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAO3D,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAmC,EAAE,EAAE;IAC/F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAC;IAC1D,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,WAAW,KAAK,CAAC,IAAI,cAAc,EACzC,CAAC,WAAW,EAAE,cAAc,CAAC,CAC9B,CAAC;IAEF,MAAM,sBAAsB,GAAG,OAAO,CACpC,GAAG,EAAE,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,EAC5D,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC1C,IAAI;YACF,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,cAAc,CAAC,CAAC,CAAC,CAAC;YAClB,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,MAAM,UAAU,CAAC,SAAS,CAAC;gBACzB,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,eAAe,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE;aAC3C,CAAC,CAAC;YACH,UAAU,EAAE,CAAC;YACb,KAAK,IAAI,KAAK,EAAE,CAAC;SAClB;QAAC,MAAM;YACN,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YAC3F,WAAW,CAAC,IAAI,CAAC,CAAC;SACnB;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,aAAa,EAAE;YACjB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,YAAY,CAAC,eAAe,CAAC,CAAC;SAC/B;aAAM;YACL,WAAW,CAAC,KAAK,CAAC,CAAC;SACpB;IACH,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,OAAO;QACL,YAAY;QACZ,QAAQ;QACR,SAAS;QACT,SAAS;QACT,WAAW;QACX,sBAAsB;QACtB,cAAc;QACd,iBAAiB;QACjB,UAAU;KACX,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
|
+
type CapchaTextType,
|
|
2
3
|
type CheckCodeBody,
|
|
3
4
|
type CheckCodeResponse,
|
|
4
5
|
type CreateDraftTaskBody,
|
|
@@ -12,6 +13,8 @@ import {
|
|
|
12
13
|
|
|
13
14
|
type RequsetMethod = 'POST' | 'GET' | 'PUT';
|
|
14
15
|
|
|
16
|
+
const getResponse = (response: Response) => (isJSON(response) ? response.json() : response);
|
|
17
|
+
|
|
15
18
|
const getAthorizationHeaders = () => {
|
|
16
19
|
const token = sessionStorage.getItem('accessToken');
|
|
17
20
|
|
|
@@ -29,7 +32,17 @@ const request = async <T>(url: string, method: RequsetMethod, body?: any): Promi
|
|
|
29
32
|
},
|
|
30
33
|
credentials: 'include',
|
|
31
34
|
body: body ? JSON.stringify(body) : null,
|
|
32
|
-
})
|
|
35
|
+
})
|
|
36
|
+
.then((response: Response) => {
|
|
37
|
+
if (response.ok) {
|
|
38
|
+
return getResponse(response);
|
|
39
|
+
} else {
|
|
40
|
+
throw response;
|
|
41
|
+
}
|
|
42
|
+
})
|
|
43
|
+
.catch((error) => {
|
|
44
|
+
throw error;
|
|
45
|
+
});
|
|
33
46
|
|
|
34
47
|
const saveToken = (data: CheckCodeResponse) => {
|
|
35
48
|
sessionStorage.setItem('accessToken', data.access_token as string);
|
|
@@ -48,4 +61,8 @@ export const RETAIL_API = {
|
|
|
48
61
|
SendCode: async (body: SendCodeBody) => await request('/sms/sendCode', 'POST', body),
|
|
49
62
|
CheckCode: async (body: CheckCodeBody) =>
|
|
50
63
|
await request<CheckCodeResponse>('/sms/checkCode', 'POST', body).then(saveToken),
|
|
64
|
+
CreateCaptcha: async (phoneNumber: string) =>
|
|
65
|
+
await request<Response>(`/sms/createCaptcha?phoneNumber=${phoneNumber}`, 'GET'),
|
|
66
|
+
CheckCaptcha: async (body: CapchaTextType) =>
|
|
67
|
+
await request<Response>('/sms/checkCaptcha', 'POST', body),
|
|
51
68
|
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable max-lines */
|
|
1
2
|
/* eslint-disable max-len */
|
|
2
3
|
|
|
3
4
|
import { type AspectsProps } from '../../model/AspectsProps';
|
|
@@ -17,7 +18,7 @@ export type SubmitButtonProps = TextProps & {
|
|
|
17
18
|
/**
|
|
18
19
|
* @title Название поля ввода
|
|
19
20
|
* @required
|
|
20
|
-
* @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
|
|
21
|
+
* @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Серия документа", "Номер документа", "Дата выдачи", "Код подразделения", "Кем выдан", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
|
|
21
22
|
*/
|
|
22
23
|
export type NameFieldDef =
|
|
23
24
|
| 'surname'
|
|
@@ -31,6 +32,11 @@ export type NameFieldDef =
|
|
|
31
32
|
| 'employerActivities'
|
|
32
33
|
| 'employerOrganization'
|
|
33
34
|
| 'positionOrganization'
|
|
35
|
+
| 'dulSerie'
|
|
36
|
+
| 'dulNumber'
|
|
37
|
+
| 'dulIssueDateField'
|
|
38
|
+
| 'dulSubdivisionCode'
|
|
39
|
+
| 'dulIssuedBy'
|
|
34
40
|
| 'email'
|
|
35
41
|
| 'phone'
|
|
36
42
|
| 'fullName'
|
|
@@ -18,7 +18,7 @@ export type SubmitButtonProps = TextProps & {
|
|
|
18
18
|
/**
|
|
19
19
|
* @title Название поля ввода
|
|
20
20
|
* @required
|
|
21
|
-
* @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
|
|
21
|
+
* @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Серия документа", "Номер документа", "Дата выдачи", "Код подразделения", "Кем выдан", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
|
|
22
22
|
*/
|
|
23
23
|
export type NameFieldDef =
|
|
24
24
|
| 'surname'
|
|
@@ -32,6 +32,11 @@ export type NameFieldDef =
|
|
|
32
32
|
| 'employerActivities'
|
|
33
33
|
| 'employerOrganization'
|
|
34
34
|
| 'positionOrganization'
|
|
35
|
+
| 'dulSerie'
|
|
36
|
+
| 'dulNumber'
|
|
37
|
+
| 'dulIssueDateField'
|
|
38
|
+
| 'dulSubdivisionCode'
|
|
39
|
+
| 'dulIssuedBy'
|
|
35
40
|
| 'email'
|
|
36
41
|
| 'phone'
|
|
37
42
|
| 'fullName'
|
|
@@ -25,6 +25,11 @@ export interface FormState {
|
|
|
25
25
|
employerActivities?: string;
|
|
26
26
|
employerOrganization?: string;
|
|
27
27
|
positionOrganization?: string;
|
|
28
|
+
dulSerie?: number;
|
|
29
|
+
dulNumber?: number;
|
|
30
|
+
dulIssueDateField?: string;
|
|
31
|
+
dulSubdivisionCode?: string;
|
|
32
|
+
dulIssuedBy?: string;
|
|
28
33
|
email?: string;
|
|
29
34
|
acquiringType?: Option;
|
|
30
35
|
serviceType?: Option;
|
|
@@ -38,14 +38,14 @@ export const useApplicationLeadApi = (inputs: FieldDef[], programId: string) =>
|
|
|
38
38
|
await RETAIL_API.UpdateUserTask(
|
|
39
39
|
getUpdateUserTaskData(participantId, taskId, profileId, formData),
|
|
40
40
|
);
|
|
41
|
-
|
|
41
|
+
globalThis.location.href = '/credit-lead';
|
|
42
42
|
} catch {
|
|
43
43
|
setResponseStatus('Fail');
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
46
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
47
47
|
const verifyPhoneDialog = useVerifyPhoneDialog({
|
|
48
|
-
|
|
48
|
+
close: handleSuccessVerify,
|
|
49
49
|
...verifyPhoneContent(formData?.phone),
|
|
50
50
|
});
|
|
51
51
|
verifyPhoneDialog.open();
|
|
@@ -64,12 +64,11 @@ export const useApplicationLeadApi = (inputs: FieldDef[], programId: string) =>
|
|
|
64
64
|
const verifyPhoneContent = (phone: string) => ({
|
|
65
65
|
title: 'Подтвердите номер телефона',
|
|
66
66
|
description: `Мы отправили код на ${phone}`,
|
|
67
|
-
|
|
67
|
+
phoneNumber: formatPhone(phone),
|
|
68
68
|
textButton: 'Оформить',
|
|
69
69
|
__html: `<span>Вводя код, я подтверждаю, что ознакомлен и подписываю:</span>
|
|
70
70
|
<ul><li>соглашение о порядке использования простой электронной подписи,
|
|
71
71
|
</li><li>согласие на обработку персональных данных,
|
|
72
72
|
</li><li>предоставление и подписание прочих согласий Банка,
|
|
73
73
|
</li><li>согласие на запрос в ПФР</li></ul>`,
|
|
74
|
-
href: '/credit-lead',
|
|
75
74
|
});
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
/* eslint-disable max-len, max-lines */
|
|
4
4
|
|
|
5
5
|
export const IconsWithoutInversion = new Set([
|
|
6
|
-
'ActualBalanceIcon', 'AlarmIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', 'LogoIcon', 'MagnifierIcon', 'MapMarkerClusterIcon', 'MapMarkerClusterYellowIcon', 'MapMarkerSingleIcon', 'MapOpenedIcon', 'MoneyInsuranceIcon', 'NewDocIcon', 'PackA4Icon', 'PassSendIcon', 'PercentIcon', 'ResponseFailIcon', 'ResponseOKIcon', 'SignDocsIcon', 'SoundIcon'
|
|
6
|
+
'ActualBalanceIcon', 'AlarmIcon', 'BelarusianFlag', 'ChartIcon', 'ChevronLeftIcon', 'ClientIcon', 'DollarIcon', 'DoneIcon', 'EuroIcon', 'FullScreenIcon', 'HeadphonesIcon', 'HeartIcon', 'HouseIcon', 'LogoIcon', 'MagnifierIcon', 'MapMarkerClusterIcon', 'MapMarkerClusterYellowIcon', 'MapMarkerSingleIcon', 'MapOpenedIcon', 'MoneyInsuranceIcon', 'NewDocIcon', 'PackA4Icon', 'PassSendIcon', 'PercentIcon', 'RefreshIcon', 'ResponseFailIcon', 'ResponseOKIcon', 'SignDocsIcon', 'SoundIcon'
|
|
7
7
|
]);
|
|
8
8
|
|
|
9
9
|
export enum IconMap {
|
|
10
|
-
AchievementIcon = 'AchievementIcon', ActualBalanceIcon = 'ActualBalanceIcon', AlarmIcon = 'AlarmIcon', AppleIcon = 'AppleIcon', ArrowDownIcon = 'ArrowDownIcon', ArrowDownSolidIcon = 'ArrowDownSolidIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowRightIcon = 'ArrowRightIcon', ArrowTopRightIcon = 'ArrowTopRightIcon', ArrowUpIcon = 'ArrowUpIcon', ArrowUpSolidIcon = 'ArrowUpSolidIcon', AtmIcon = 'AtmIcon', BankIcon = 'BankIcon', BelarusianFlag = 'BelarusianFlag', BriefcaseIcon = 'BriefcaseIcon', BuildingIcon = 'BuildingIcon', BurgerIcon = 'BurgerIcon', CalendarCircleIcon = 'CalendarCircleIcon', CalendarIcon = 'CalendarIcon', CalendarTickIcon = 'CalendarTickIcon', CardIcon = 'CardIcon', CardPosIcon = 'CardPosIcon', CardSendIcon = 'CardSendIcon', CardTickIcon = 'CardTickIcon', ChartIcon = 'ChartIcon', ChartRoundIcon = 'ChartRoundIcon', ChartSquareIcon = 'ChartSquareIcon', ChevronLeftIcon = 'ChevronLeftIcon', ChineseYuanRenminbiIcon = 'ChineseYuanRenminbiIcon', ClientIcon = 'ClientIcon', CloseIcon = 'CloseIcon', CoinIcon = 'CoinIcon', ConvertCardIcon = 'ConvertCardIcon', CopyIcon = 'CopyIcon', CourtHouseIcon = 'CourtHouseIcon', CupIcon = 'CupIcon', DevIcon = 'DevIcon', DiscountShapeIcon = 'DiscountShapeIcon', DocDownloadIcon = 'DocDownloadIcon', DocIcon = 'DocIcon', DollarIcon = 'DollarIcon', DoneIcon = 'DoneIcon', DoneSimpleIcon = 'DoneSimpleIcon', DzenIcon = 'DzenIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', EmptyWalletIcon = 'EmptyWalletIcon', EuroIcon = 'EuroIcon', FaxIcon = 'FaxIcon', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'GeolocationIcon', GlobalIcon = 'GlobalIcon', GpsIcon = 'GpsIcon', GridIcon = 'GridIcon', HeadphonesIcon = 'HeadphonesIcon', HeartIcon = 'HeartIcon', HeartTickIcon = 'HeartTickIcon', HouseIcon = 'HouseIcon', HuaweiIcon = 'HuaweiIcon', LockIcon = 'LockIcon', LogoIcon = 'LogoIcon', LoupeIcon = 'LoupeIcon', MagnifierIcon = 'MagnifierIcon', MailIcon = 'MailIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MapMarkerClusterYellowIcon = 'MapMarkerClusterYellowIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MapOpenedIcon = 'MapOpenedIcon', MinusIcon = 'MinusIcon', MoneyIcon = 'MoneyIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MonitorMobileIcon = 'MonitorMobileIcon', NewDocIcon = 'NewDocIcon', NotificationBingIcon = 'NotificationBingIcon', OkIcon = 'OkIcon', PackA4Icon = 'PackA4Icon', PassSendIcon = 'PassSendIcon', PercentageRoundIcon = 'PercentageRoundIcon', PercentIcon = 'PercentIcon', PersonalCardIcon = 'PersonalCardIcon', PhoneCallingIcon = 'PhoneCallingIcon', PhoneIcon = 'PhoneIcon', PlayMarketIcon = 'PlayMarketIcon', PlusCircleIcon = 'PlusCircleIcon', PlusIcon = 'PlusIcon', Profile2UserIcon = 'Profile2UserIcon', ProfileIcon = 'ProfileIcon', ResponseFailIcon = 'ResponseFailIcon', ResponseOKIcon = 'ResponseOKIcon', RoundRubleIcon = 'RoundRubleIcon', RustoreIcon = 'RustoreIcon', RutubeIcon = 'RutubeIcon', SafeIcon = 'SafeIcon', SecurityСardIcon = 'SecurityСardIcon', ShieldTickIcon = 'ShieldTickIcon', SignDocsIcon = 'SignDocsIcon', SmallClockIcon = 'SmallClockIcon', SoundIcon = 'SoundIcon', TelegramIcon = 'TelegramIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', UserSquareIcon = 'UserSquareIcon', UserTickIcon = 'UserTickIcon', VKIcon = 'VKIcon', WalletAddIcon = 'WalletAddIcon', WalletIcon = 'WalletIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', YoutubeIcon = 'YoutubeIcon'
|
|
10
|
+
AchievementIcon = 'AchievementIcon', ActualBalanceIcon = 'ActualBalanceIcon', AlarmIcon = 'AlarmIcon', AppleIcon = 'AppleIcon', ArrowDownIcon = 'ArrowDownIcon', ArrowDownSolidIcon = 'ArrowDownSolidIcon', ArrowLeftIcon = 'ArrowLeftIcon', ArrowRightIcon = 'ArrowRightIcon', ArrowTopRightIcon = 'ArrowTopRightIcon', ArrowUpIcon = 'ArrowUpIcon', ArrowUpSolidIcon = 'ArrowUpSolidIcon', AtmIcon = 'AtmIcon', BankIcon = 'BankIcon', BelarusianFlag = 'BelarusianFlag', BriefcaseIcon = 'BriefcaseIcon', BuildingIcon = 'BuildingIcon', BurgerIcon = 'BurgerIcon', CalendarCircleIcon = 'CalendarCircleIcon', CalendarIcon = 'CalendarIcon', CalendarTickIcon = 'CalendarTickIcon', CardIcon = 'CardIcon', CardPosIcon = 'CardPosIcon', CardSendIcon = 'CardSendIcon', CardTickIcon = 'CardTickIcon', ChartIcon = 'ChartIcon', ChartRoundIcon = 'ChartRoundIcon', ChartSquareIcon = 'ChartSquareIcon', ChevronLeftIcon = 'ChevronLeftIcon', ChineseYuanRenminbiIcon = 'ChineseYuanRenminbiIcon', ClientIcon = 'ClientIcon', CloseIcon = 'CloseIcon', CoinIcon = 'CoinIcon', ConvertCardIcon = 'ConvertCardIcon', CopyIcon = 'CopyIcon', CourtHouseIcon = 'CourtHouseIcon', CupIcon = 'CupIcon', DevIcon = 'DevIcon', DiscountShapeIcon = 'DiscountShapeIcon', DocDownloadIcon = 'DocDownloadIcon', DocIcon = 'DocIcon', DollarIcon = 'DollarIcon', DoneIcon = 'DoneIcon', DoneSimpleIcon = 'DoneSimpleIcon', DzenIcon = 'DzenIcon', EmptyWalletChangeIcon = 'EmptyWalletChangeIcon', EmptyWalletIcon = 'EmptyWalletIcon', EuroIcon = 'EuroIcon', FaxIcon = 'FaxIcon', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'GeolocationIcon', GlobalIcon = 'GlobalIcon', GpsIcon = 'GpsIcon', GridIcon = 'GridIcon', HeadphonesIcon = 'HeadphonesIcon', HeartIcon = 'HeartIcon', HeartTickIcon = 'HeartTickIcon', HouseIcon = 'HouseIcon', HuaweiIcon = 'HuaweiIcon', LockIcon = 'LockIcon', LogoIcon = 'LogoIcon', LoupeIcon = 'LoupeIcon', MagnifierIcon = 'MagnifierIcon', MailIcon = 'MailIcon', MapMarkerClusterIcon = 'MapMarkerClusterIcon', MapMarkerClusterYellowIcon = 'MapMarkerClusterYellowIcon', MapMarkerSingleIcon = 'MapMarkerSingleIcon', MapOpenedIcon = 'MapOpenedIcon', MinusIcon = 'MinusIcon', MoneyIcon = 'MoneyIcon', MoneyInsuranceIcon = 'MoneyInsuranceIcon', MonitorMobileIcon = 'MonitorMobileIcon', NewDocIcon = 'NewDocIcon', NotificationBingIcon = 'NotificationBingIcon', OkIcon = 'OkIcon', PackA4Icon = 'PackA4Icon', PassSendIcon = 'PassSendIcon', PercentageRoundIcon = 'PercentageRoundIcon', PercentIcon = 'PercentIcon', PersonalCardIcon = 'PersonalCardIcon', PhoneCallingIcon = 'PhoneCallingIcon', PhoneIcon = 'PhoneIcon', PlayMarketIcon = 'PlayMarketIcon', PlusCircleIcon = 'PlusCircleIcon', PlusIcon = 'PlusIcon', Profile2UserIcon = 'Profile2UserIcon', ProfileIcon = 'ProfileIcon', RefreshIcon = 'RefreshIcon', ResponseFailIcon = 'ResponseFailIcon', ResponseOKIcon = 'ResponseOKIcon', RoundRubleIcon = 'RoundRubleIcon', RustoreIcon = 'RustoreIcon', RutubeIcon = 'RutubeIcon', SafeIcon = 'SafeIcon', SecurityСardIcon = 'SecurityСardIcon', ShieldTickIcon = 'ShieldTickIcon', SignDocsIcon = 'SignDocsIcon', SmallClockIcon = 'SmallClockIcon', SoundIcon = 'SoundIcon', TelegramIcon = 'TelegramIcon', UserGeoLocationIcon = 'UserGeoLocationIcon', UserSquareIcon = 'UserSquareIcon', UserTickIcon = 'UserTickIcon', VKIcon = 'VKIcon', WalletAddIcon = 'WalletAddIcon', WalletIcon = 'WalletIcon', WalletWithMoneyIcon = 'WalletWithMoneyIcon', YoutubeIcon = 'YoutubeIcon'
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
export enum IconTitleMap {
|
|
14
|
-
AchievementIcon = 'Достижение', ActualBalanceIcon = 'Деньги', AlarmIcon = 'Предупреждение', AppleIcon = 'Лого «Apple»', ArrowDownIcon = 'Стрелка \'Вниз\'', ArrowDownSolidIcon = 'Стрелка сплошная \'Вниз\'', ArrowLeftIcon = 'Стрелка \'Влево\'', ArrowRightIcon = 'Стрелка \'Вправо\'', ArrowTopRightIcon = 'Стрелка \'Вверх-право\'', ArrowUpIcon = 'Стрелка \'Вверх\'', ArrowUpSolidIcon = 'Стрелка сплошная \'Вверх\'', AtmIcon = 'Банкомат', BankIcon = 'Банк', BelarusianFlag = 'Белорусский флаг', BriefcaseIcon = 'Портфель', BuildingIcon = 'Здание с деревом', BurgerIcon = 'Бургер', CalendarCircleIcon = 'Скруглённый календарь', CalendarIcon = 'Календарь', CalendarTickIcon = 'Календарь с галочкой', CardIcon = 'Кред. карта', CardPosIcon = 'Кред. карта под наклоном', CardSendIcon = 'Карта', CardTickIcon = 'Кред. карта с галочкой', ChartIcon = 'Инвестиции', ChartRoundIcon = 'Диаграмма (в круге)', ChartSquareIcon = 'Деньги внутри кошелька', ChevronLeftIcon = 'Стрелка \'Влево\'', ChineseYuanRenminbiIcon = 'Китайский юань', ClientIcon = 'Клиент', CloseIcon = 'Крестик', CoinIcon = 'Монеты', ConvertCardIcon = 'Конвертирование', CopyIcon = 'Копирование', CourtHouseIcon = 'Здание суда', CupIcon = 'Кубок', DevIcon = 'Разработка', DiscountShapeIcon = 'Скидка', DocDownloadIcon = 'Скачать документ', DocIcon = 'Документ', DollarIcon = 'Доллар', DoneIcon = 'Зелёная \'галочка\' в круге', DoneSimpleIcon = 'Зелёная \'галочка\'', DzenIcon = 'Лого «Дзен»', EmptyWalletChangeIcon = 'Пустой кошелёк с возвратом', EmptyWalletIcon = 'Пустой кошелёк', EuroIcon = 'Евро', FaxIcon = 'Факс', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'Геолокация', GlobalIcon = 'Глобус', GpsIcon = 'Gps', GridIcon = 'Сетка (белая)', HeadphonesIcon = 'HeadphonesIcon', HeartIcon = 'Сердце', HeartTickIcon = 'Сердцебеение', HouseIcon = 'Ипотека', HuaweiIcon = 'Лого «Huawei»', LockIcon = 'Замок', LogoIcon = 'Логотип', LoupeIcon = 'Лупа', MagnifierIcon = 'MagnifierIcon', MailIcon = 'E-mail', MapMarkerClusterIcon = 'Маркер карты', MapMarkerClusterYellowIcon = 'Маркер карты (желтый)', MapMarkerSingleIcon = 'Маркер карты РСХБ', MapOpenedIcon = 'Иконка Развёрнутая карта', MinusIcon = 'Минус', MoneyIcon = 'Деньги', MoneyInsuranceIcon = 'Денежное страхование', MonitorMobileIcon = 'Монитор и мобильный', NewDocIcon = 'Новый документ', NotificationBingIcon = 'Колокольчик нотификаций', OkIcon = 'Лого «Одноклассники»', PackA4Icon = 'Пачка бумаги А4', PassSendIcon = 'Бизнес', PercentageRoundIcon = 'Проценты (круг.)', PercentIcon = 'PercentIcon', PersonalCardIcon = 'Персональная карта', PhoneCallingIcon = 'Звонящий телефон', PhoneIcon = 'Телефон', PlayMarketIcon = 'Лого «PlayMarket»', PlusCircleIcon = 'Плюс в круге', PlusIcon = 'Плюс', Profile2UserIcon = 'Профиль, 2 персоны', ProfileIcon = 'Профиль', ResponseFailIcon = 'Ошибка', ResponseOKIcon = 'Ок', RoundRubleIcon = 'Рубль (круг.)', RustoreIcon = 'Лого «Rustore»', RutubeIcon = 'Лого «Rutube»', SafeIcon = 'Сейф', SecurityСardIcon = 'Безопасность', ShieldTickIcon = 'Безопасность', SignDocsIcon = 'Подписанные документы', SmallClockIcon = 'Маленькие часы', SoundIcon = 'Кольцо', TelegramIcon = 'Лого «Telegram»', UserGeoLocationIcon = 'Самолётик', UserSquareIcon = 'Пользователь в рамке', UserTickIcon = 'Пользователь', VKIcon = 'Лого «VK»', WalletAddIcon = 'Кошелёк с плюсом', WalletIcon = 'Кошелёк', WalletWithMoneyIcon = 'Кошелёк с деньгами', YoutubeIcon = 'Лого «Youtube»'
|
|
14
|
+
AchievementIcon = 'Достижение', ActualBalanceIcon = 'Деньги', AlarmIcon = 'Предупреждение', AppleIcon = 'Лого «Apple»', ArrowDownIcon = 'Стрелка \'Вниз\'', ArrowDownSolidIcon = 'Стрелка сплошная \'Вниз\'', ArrowLeftIcon = 'Стрелка \'Влево\'', ArrowRightIcon = 'Стрелка \'Вправо\'', ArrowTopRightIcon = 'Стрелка \'Вверх-право\'', ArrowUpIcon = 'Стрелка \'Вверх\'', ArrowUpSolidIcon = 'Стрелка сплошная \'Вверх\'', AtmIcon = 'Банкомат', BankIcon = 'Банк', BelarusianFlag = 'Белорусский флаг', BriefcaseIcon = 'Портфель', BuildingIcon = 'Здание с деревом', BurgerIcon = 'Бургер', CalendarCircleIcon = 'Скруглённый календарь', CalendarIcon = 'Календарь', CalendarTickIcon = 'Календарь с галочкой', CardIcon = 'Кред. карта', CardPosIcon = 'Кред. карта под наклоном', CardSendIcon = 'Карта', CardTickIcon = 'Кред. карта с галочкой', ChartIcon = 'Инвестиции', ChartRoundIcon = 'Диаграмма (в круге)', ChartSquareIcon = 'Деньги внутри кошелька', ChevronLeftIcon = 'Стрелка \'Влево\'', ChineseYuanRenminbiIcon = 'Китайский юань', ClientIcon = 'Клиент', CloseIcon = 'Крестик', CoinIcon = 'Монеты', ConvertCardIcon = 'Конвертирование', CopyIcon = 'Копирование', CourtHouseIcon = 'Здание суда', CupIcon = 'Кубок', DevIcon = 'Разработка', DiscountShapeIcon = 'Скидка', DocDownloadIcon = 'Скачать документ', DocIcon = 'Документ', DollarIcon = 'Доллар', DoneIcon = 'Зелёная \'галочка\' в круге', DoneSimpleIcon = 'Зелёная \'галочка\'', DzenIcon = 'Лого «Дзен»', EmptyWalletChangeIcon = 'Пустой кошелёк с возвратом', EmptyWalletIcon = 'Пустой кошелёк', EuroIcon = 'Евро', FaxIcon = 'Факс', FullScreenIcon = 'FullScreenIcon', GeolocationIcon = 'Геолокация', GlobalIcon = 'Глобус', GpsIcon = 'Gps', GridIcon = 'Сетка (белая)', HeadphonesIcon = 'HeadphonesIcon', HeartIcon = 'Сердце', HeartTickIcon = 'Сердцебеение', HouseIcon = 'Ипотека', HuaweiIcon = 'Лого «Huawei»', LockIcon = 'Замок', LogoIcon = 'Логотип', LoupeIcon = 'Лупа', MagnifierIcon = 'MagnifierIcon', MailIcon = 'E-mail', MapMarkerClusterIcon = 'Маркер карты', MapMarkerClusterYellowIcon = 'Маркер карты (желтый)', MapMarkerSingleIcon = 'Маркер карты РСХБ', MapOpenedIcon = 'Иконка Развёрнутая карта', MinusIcon = 'Минус', MoneyIcon = 'Деньги', MoneyInsuranceIcon = 'Денежное страхование', MonitorMobileIcon = 'Монитор и мобильный', NewDocIcon = 'Новый документ', NotificationBingIcon = 'Колокольчик нотификаций', OkIcon = 'Лого «Одноклассники»', PackA4Icon = 'Пачка бумаги А4', PassSendIcon = 'Бизнес', PercentageRoundIcon = 'Проценты (круг.)', PercentIcon = 'PercentIcon', PersonalCardIcon = 'Персональная карта', PhoneCallingIcon = 'Звонящий телефон', PhoneIcon = 'Телефон', PlayMarketIcon = 'Лого «PlayMarket»', PlusCircleIcon = 'Плюс в круге', PlusIcon = 'Плюс', Profile2UserIcon = 'Профиль, 2 персоны', ProfileIcon = 'Профиль', RefreshIcon = 'RefreshIcon', ResponseFailIcon = 'Ошибка', ResponseOKIcon = 'Ок', RoundRubleIcon = 'Рубль (круг.)', RustoreIcon = 'Лого «Rustore»', RutubeIcon = 'Лого «Rutube»', SafeIcon = 'Сейф', SecurityСardIcon = 'Безопасность', ShieldTickIcon = 'Безопасность', SignDocsIcon = 'Подписанные документы', SmallClockIcon = 'Маленькие часы', SoundIcon = 'Кольцо', TelegramIcon = 'Лого «Telegram»', UserGeoLocationIcon = 'Самолётик', UserSquareIcon = 'Пользователь в рамке', UserTickIcon = 'Пользователь', VKIcon = 'Лого «VK»', WalletAddIcon = 'Кошелёк с плюсом', WalletIcon = 'Кошелёк', WalletWithMoneyIcon = 'Кошелёк с деньгами', YoutubeIcon = 'Лого «Youtube»'
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -19,7 +19,7 @@ export enum IconTitleMap {
|
|
|
19
19
|
* @title Иконка
|
|
20
20
|
* @enumNames [
|
|
21
21
|
* "",
|
|
22
|
-
* 'Достижение', 'Деньги', 'Предупреждение', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Китайский юань', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого «Huawei»', 'Замок', 'Логотип', 'Лупа', 'MagnifierIcon', 'E-mail', 'Маркер карты', 'Маркер карты (желтый)', 'Маркер карты РСХБ', 'Иконка Развёрнутая карта', 'Минус', 'Деньги', 'Денежное страхование', 'Монитор и мобильный', 'Новый документ', 'Колокольчик нотификаций', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'PercentIcon', 'Персональная карта', 'Звонящий телефон', 'Телефон', 'Лого «PlayMarket»', 'Плюс в круге', 'Плюс', 'Профиль, 2 персоны', 'Профиль', 'Ошибка', 'Ок', 'Рубль (круг.)', 'Лого «Rustore»', 'Лого «Rutube»', 'Сейф', 'Безопасность', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Кольцо', 'Лого «Telegram»', 'Самолётик', 'Пользователь в рамке', 'Пользователь', 'Лого «VK»', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Лого «Youtube»'
|
|
22
|
+
* 'Достижение', 'Деньги', 'Предупреждение', 'Лого «Apple»', 'Стрелка \'Вниз\'', 'Стрелка сплошная \'Вниз\'', 'Стрелка \'Влево\'', 'Стрелка \'Вправо\'', 'Стрелка \'Вверх-право\'', 'Стрелка \'Вверх\'', 'Стрелка сплошная \'Вверх\'', 'Банкомат', 'Банк', 'Белорусский флаг', 'Портфель', 'Здание с деревом', 'Бургер', 'Скруглённый календарь', 'Календарь', 'Календарь с галочкой', 'Кред. карта', 'Кред. карта под наклоном', 'Карта', 'Кред. карта с галочкой', 'Инвестиции', 'Диаграмма (в круге)', 'Деньги внутри кошелька', 'Стрелка \'Влево\'', 'Китайский юань', 'Клиент', 'Крестик', 'Монеты', 'Конвертирование', 'Копирование', 'Здание суда', 'Кубок', 'Разработка', 'Скидка', 'Скачать документ', 'Документ', 'Доллар', 'Зелёная \'галочка\' в круге', 'Зелёная \'галочка\'', 'Лого «Дзен»', 'Пустой кошелёк с возвратом', 'Пустой кошелёк', 'Евро', 'Факс', 'FullScreenIcon', 'Геолокация', 'Глобус', 'Gps', 'Сетка (белая)', 'HeadphonesIcon', 'Сердце', 'Сердцебеение', 'Ипотека', 'Лого «Huawei»', 'Замок', 'Логотип', 'Лупа', 'MagnifierIcon', 'E-mail', 'Маркер карты', 'Маркер карты (желтый)', 'Маркер карты РСХБ', 'Иконка Развёрнутая карта', 'Минус', 'Деньги', 'Денежное страхование', 'Монитор и мобильный', 'Новый документ', 'Колокольчик нотификаций', 'Лого «Одноклассники»', 'Пачка бумаги А4', 'Бизнес', 'Проценты (круг.)', 'PercentIcon', 'Персональная карта', 'Звонящий телефон', 'Телефон', 'Лого «PlayMarket»', 'Плюс в круге', 'Плюс', 'Профиль, 2 персоны', 'Профиль', 'RefreshIcon', 'Ошибка', 'Ок', 'Рубль (круг.)', 'Лого «Rustore»', 'Лого «Rutube»', 'Сейф', 'Безопасность', 'Безопасность', 'Подписанные документы', 'Маленькие часы', 'Кольцо', 'Лого «Telegram»', 'Самолётик', 'Пользователь в рамке', 'Пользователь', 'Лого «VK»', 'Кошелёк с плюсом', 'Кошелёк', 'Кошелёк с деньгами', 'Лого «Youtube»'
|
|
23
23
|
* ]
|
|
24
24
|
*/
|
|
25
|
-
export type IconName = '' | 'AchievementIcon' | 'ActualBalanceIcon' | 'AlarmIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowDownSolidIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowTopRightIcon' | 'ArrowUpIcon' | 'ArrowUpSolidIcon' | 'AtmIcon' | 'BankIcon' | 'BelarusianFlag' | 'BriefcaseIcon' | 'BuildingIcon' | 'BurgerIcon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'CardIcon' | 'CardPosIcon' | 'CardSendIcon' | 'CardTickIcon' | 'ChartIcon' | 'ChartRoundIcon' | 'ChartSquareIcon' | 'ChevronLeftIcon' | 'ChineseYuanRenminbiIcon' | 'ClientIcon' | 'CloseIcon' | 'CoinIcon' | 'ConvertCardIcon' | 'CopyIcon' | 'CourtHouseIcon' | 'CupIcon' | 'DevIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'DzenIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FaxIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeadphonesIcon' | 'HeartIcon' | 'HeartTickIcon' | 'HouseIcon' | 'HuaweiIcon' | 'LockIcon' | 'LogoIcon' | 'LoupeIcon' | 'MagnifierIcon' | 'MailIcon' | 'MapMarkerClusterIcon' | 'MapMarkerClusterYellowIcon' | 'MapMarkerSingleIcon' | 'MapOpenedIcon' | 'MinusIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'NotificationBingIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PersonalCardIcon' | 'PhoneCallingIcon' | 'PhoneIcon' | 'PlayMarketIcon' | 'PlusCircleIcon' | 'PlusIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'ResponseFailIcon' | 'ResponseOKIcon' | 'RoundRubleIcon' | 'RustoreIcon' | 'RutubeIcon' | 'SafeIcon' | 'SecurityСardIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'TelegramIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VKIcon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'YoutubeIcon';
|
|
25
|
+
export type IconName = '' | 'AchievementIcon' | 'ActualBalanceIcon' | 'AlarmIcon' | 'AppleIcon' | 'ArrowDownIcon' | 'ArrowDownSolidIcon' | 'ArrowLeftIcon' | 'ArrowRightIcon' | 'ArrowTopRightIcon' | 'ArrowUpIcon' | 'ArrowUpSolidIcon' | 'AtmIcon' | 'BankIcon' | 'BelarusianFlag' | 'BriefcaseIcon' | 'BuildingIcon' | 'BurgerIcon' | 'CalendarCircleIcon' | 'CalendarIcon' | 'CalendarTickIcon' | 'CardIcon' | 'CardPosIcon' | 'CardSendIcon' | 'CardTickIcon' | 'ChartIcon' | 'ChartRoundIcon' | 'ChartSquareIcon' | 'ChevronLeftIcon' | 'ChineseYuanRenminbiIcon' | 'ClientIcon' | 'CloseIcon' | 'CoinIcon' | 'ConvertCardIcon' | 'CopyIcon' | 'CourtHouseIcon' | 'CupIcon' | 'DevIcon' | 'DiscountShapeIcon' | 'DocDownloadIcon' | 'DocIcon' | 'DollarIcon' | 'DoneIcon' | 'DoneSimpleIcon' | 'DzenIcon' | 'EmptyWalletChangeIcon' | 'EmptyWalletIcon' | 'EuroIcon' | 'FaxIcon' | 'FullScreenIcon' | 'GeolocationIcon' | 'GlobalIcon' | 'GpsIcon' | 'GridIcon' | 'HeadphonesIcon' | 'HeartIcon' | 'HeartTickIcon' | 'HouseIcon' | 'HuaweiIcon' | 'LockIcon' | 'LogoIcon' | 'LoupeIcon' | 'MagnifierIcon' | 'MailIcon' | 'MapMarkerClusterIcon' | 'MapMarkerClusterYellowIcon' | 'MapMarkerSingleIcon' | 'MapOpenedIcon' | 'MinusIcon' | 'MoneyIcon' | 'MoneyInsuranceIcon' | 'MonitorMobileIcon' | 'NewDocIcon' | 'NotificationBingIcon' | 'OkIcon' | 'PackA4Icon' | 'PassSendIcon' | 'PercentageRoundIcon' | 'PercentIcon' | 'PersonalCardIcon' | 'PhoneCallingIcon' | 'PhoneIcon' | 'PlayMarketIcon' | 'PlusCircleIcon' | 'PlusIcon' | 'Profile2UserIcon' | 'ProfileIcon' | 'RefreshIcon' | 'ResponseFailIcon' | 'ResponseOKIcon' | 'RoundRubleIcon' | 'RustoreIcon' | 'RutubeIcon' | 'SafeIcon' | 'SecurityСardIcon' | 'ShieldTickIcon' | 'SignDocsIcon' | 'SmallClockIcon' | 'SoundIcon' | 'TelegramIcon' | 'UserGeoLocationIcon' | 'UserSquareIcon' | 'UserTickIcon' | 'VKIcon' | 'WalletAddIcon' | 'WalletIcon' | 'WalletWithMoneyIcon' | 'YoutubeIcon';
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<svg width="16" height="15" viewBox="0 0 16 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M4.02079 5.56497C4.39003 4.51997 5.10207 3.57283 6.12033 2.90846C8.53724 1.33151 11.693 1.97769 13.1872 4.26776C14.6814 6.55783 14.0016 9.70652 11.5847 11.2835C10.1249 12.2359 8.38657 12.3784 6.91147 11.831C6.39369 11.6388 5.81818 11.9028 5.62604 12.4206C5.43389 12.9384 5.69787 13.5139 6.21566 13.706C8.27304 14.4695 10.6763 14.2642 12.6776 12.9585C15.9737 10.8079 16.9894 6.43528 14.8622 3.17489C12.7349 -0.0855042 8.32355 -0.917117 5.02746 1.23345C3.43193 2.27447 2.37357 3.83114 1.94423 5.52999L1.70711 5.29287C1.31658 4.90234 0.683418 4.90234 0.292893 5.29287C-0.097631 5.68339 -0.0976311 6.31656 0.292893 6.70708L3 9.41419L5.70711 6.70708C6.09763 6.31656 6.09763 5.68339 5.70711 5.29287C5.31658 4.90234 4.68342 4.90234 4.29289 5.29287L4.02079 5.56497Z" fill="#1C1C1C"/>
|
|
3
|
+
</svg>
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { useEffect, useState } from '@redneckz/uni-jsx/lib/hooks';
|
|
3
|
+
import { Button } from '../Button/Button';
|
|
4
|
+
import { Dialog } from '../DialogManager/Dialog';
|
|
5
|
+
import { Icon } from '../Icon/Icon';
|
|
6
|
+
import { Input } from '../Input/Input';
|
|
7
|
+
import { Logo } from '../Logo/Logo';
|
|
8
|
+
import { checkCaptcha } from './checkCaptcha';
|
|
9
|
+
import { createCaptcha } from './createCaptcha';
|
|
10
|
+
|
|
11
|
+
export interface CaptchaDialogProps {
|
|
12
|
+
phoneNumber: string;
|
|
13
|
+
sendCode?: () => void;
|
|
14
|
+
close?: () => void;
|
|
15
|
+
onClose?: () => void;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const CaptchaDialog = JSX<CaptchaDialogProps>(
|
|
19
|
+
({ phoneNumber, close, sendCode, onClose }) => {
|
|
20
|
+
const [captcha, setCaptcha] = useState('');
|
|
21
|
+
const [code, setCode] = useState('');
|
|
22
|
+
const [hasError, setHasError] = useState(false);
|
|
23
|
+
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
createCaptcha(setCaptcha, phoneNumber);
|
|
26
|
+
}, []);
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<Dialog
|
|
30
|
+
head={<Logo />}
|
|
31
|
+
onClose={onClose}
|
|
32
|
+
className="my-6xl max-w-lg w-full min-h-fit mx-auto rounded-lg"
|
|
33
|
+
>
|
|
34
|
+
<div className="flex flex-col gap-lg items-center rounded-md">
|
|
35
|
+
<div className="flex h-[140px] w-[300px]">
|
|
36
|
+
<img className="grow" src={captcha}></img>
|
|
37
|
+
<div
|
|
38
|
+
onClick={() => createCaptcha(setCaptcha, phoneNumber)}
|
|
39
|
+
className="flex w-8 items-center justify-center cursor-pointer"
|
|
40
|
+
>
|
|
41
|
+
<Icon iconVersion="normal" name="RefreshIcon" />
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
<Input
|
|
45
|
+
className="w-[300px]"
|
|
46
|
+
onChange={setCode}
|
|
47
|
+
value={code}
|
|
48
|
+
placeholder="Введите код с картинки"
|
|
49
|
+
/>
|
|
50
|
+
{hasError ? <div className="text-error">Неверный код</div> : null}
|
|
51
|
+
<div className="flex w-[310px] justify-between">
|
|
52
|
+
<Button onClick={close} version="secondary">
|
|
53
|
+
Вернуться
|
|
54
|
+
</Button>
|
|
55
|
+
<Button
|
|
56
|
+
type="submit"
|
|
57
|
+
disabled={!code}
|
|
58
|
+
onClick={() => checkCaptcha({ code, setHasError, close, sendCode })}
|
|
59
|
+
version="secondary"
|
|
60
|
+
>
|
|
61
|
+
Отправить
|
|
62
|
+
</Button>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</Dialog>
|
|
66
|
+
);
|
|
67
|
+
},
|
|
68
|
+
);
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { RETAIL_API } from '../../api/RetailApi/RetailApi';
|
|
2
|
+
import { noop } from '../../utils/noop';
|
|
3
|
+
|
|
4
|
+
interface CheckCaptchaProps {
|
|
5
|
+
code: string;
|
|
6
|
+
setHasError: (hasError: boolean) => void;
|
|
7
|
+
sendCode?: () => void;
|
|
8
|
+
close?: () => void;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const checkCaptcha = async ({
|
|
12
|
+
code,
|
|
13
|
+
setHasError,
|
|
14
|
+
close,
|
|
15
|
+
sendCode = noop,
|
|
16
|
+
}: CheckCaptchaProps) => {
|
|
17
|
+
const response = await RETAIL_API.CheckCaptcha({ captchaText: code });
|
|
18
|
+
|
|
19
|
+
if ((await response.text()) === 'ERROR') {
|
|
20
|
+
setHasError(true);
|
|
21
|
+
} else {
|
|
22
|
+
sendCode();
|
|
23
|
+
close?.();
|
|
24
|
+
}
|
|
25
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { RETAIL_API } from '../../api/RetailApi/RetailApi';
|
|
2
|
+
|
|
3
|
+
export const createCaptcha = async (setCaptcha: (captcha: string) => void, phoneNumber: string) => {
|
|
4
|
+
const response = await RETAIL_API.CreateCaptcha(phoneNumber);
|
|
5
|
+
setCaptcha(URL.createObjectURL(await response.blob()));
|
|
6
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { useDialogManager } from '../DialogManager/useDialogManager';
|
|
2
|
+
import { CaptchaDialog, type CaptchaDialogProps } from './CaptchaDialog';
|
|
3
|
+
|
|
4
|
+
export const useCaptchaDialog = (initialProps: CaptchaDialogProps, onClose: () => void) => {
|
|
5
|
+
const { open, close, closeAll } = useDialogManager();
|
|
6
|
+
|
|
7
|
+
return {
|
|
8
|
+
open: () => open(<CaptchaDialog close={close} onClose={onClose} {...initialProps} />),
|
|
9
|
+
close,
|
|
10
|
+
closeAll,
|
|
11
|
+
};
|
|
12
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { DatePickerControl } from '../../DatePicker/DatePickerControl';
|
|
3
|
+
import { type CustomFieldProps } from '../CustomFieldProps';
|
|
4
|
+
import { validatorObj } from '../getObjectValidator';
|
|
5
|
+
import { getValidation } from '../getValidation';
|
|
6
|
+
|
|
7
|
+
export const DulIssueDateField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<DatePickerControl
|
|
9
|
+
label="Дата выдачи"
|
|
10
|
+
{...getValidation(field('dulIssueDateField'), validatorObj.dulIssueDateField, input?.required)}
|
|
11
|
+
/>
|
|
12
|
+
));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { InputControl } from '../../Input/InputControl';
|
|
3
|
+
import { type CustomFieldProps } from '../CustomFieldProps';
|
|
4
|
+
import { validatorObj } from '../getObjectValidator';
|
|
5
|
+
import { getValidation } from '../getValidation';
|
|
6
|
+
|
|
7
|
+
export const DulIssuedBy = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Кем выдан"
|
|
10
|
+
{...getValidation(field('dulIssuedBy'), validatorObj.dulIssuedBy, input?.required)}
|
|
11
|
+
/>
|
|
12
|
+
));
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { InputControl } from '../../Input/InputControl';
|
|
3
|
+
import { type CustomFieldProps } from '../CustomFieldProps';
|
|
4
|
+
import { validatorObj } from '../getObjectValidator';
|
|
5
|
+
import { getValidation } from '../getValidation';
|
|
6
|
+
|
|
7
|
+
export const DulNumberField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Номер документа"
|
|
10
|
+
type="number"
|
|
11
|
+
{...getValidation(field('dulNumber'), validatorObj.dulNumber, input?.required)}
|
|
12
|
+
/>
|
|
13
|
+
));
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { InputControl } from '../../Input/InputControl';
|
|
3
|
+
import { type CustomFieldProps } from '../CustomFieldProps';
|
|
4
|
+
import { validatorObj } from '../getObjectValidator';
|
|
5
|
+
import { getValidation } from '../getValidation';
|
|
6
|
+
|
|
7
|
+
export const DulSerieField = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Серия документа"
|
|
10
|
+
type="number"
|
|
11
|
+
{...getValidation(field('dulSerie'), validatorObj.dulSerie, input?.required)}
|
|
12
|
+
/>
|
|
13
|
+
));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { JSX } from '@redneckz/uni-jsx';
|
|
2
|
+
import { InputControl } from '../../Input/InputControl';
|
|
3
|
+
import { type CustomFieldProps } from '../CustomFieldProps';
|
|
4
|
+
import { validatorObj } from '../getObjectValidator';
|
|
5
|
+
import { getValidation } from '../getValidation';
|
|
6
|
+
|
|
7
|
+
export const DulSubdivisionCode = JSX<CustomFieldProps>(({ field, input }) => (
|
|
8
|
+
<InputControl
|
|
9
|
+
label="Код подразделения"
|
|
10
|
+
type="number"
|
|
11
|
+
{...getValidation(
|
|
12
|
+
field('dulSubdivisionCode'),
|
|
13
|
+
validatorObj.dulSubdivisionCode,
|
|
14
|
+
input?.required,
|
|
15
|
+
)}
|
|
16
|
+
/>
|
|
17
|
+
));
|
|
@@ -25,6 +25,11 @@ import { ConsentProviderField } from './Fields/ConsentProviderField';
|
|
|
25
25
|
import { ConsentToReceiveMaterialsField } from './Fields/ConsentToReceiveMaterialsField';
|
|
26
26
|
import { DependentsField } from './Fields/DependentsField';
|
|
27
27
|
import { DesiredMeetingDateField } from './Fields/DesiredMeetingDateField';
|
|
28
|
+
import { DulIssueDateField } from './Fields/DulIssueDateField';
|
|
29
|
+
import { DulIssuedBy } from './Fields/DulIssuedBy';
|
|
30
|
+
import { DulNumberField } from './Fields/DulNumberField';
|
|
31
|
+
import { DulSerieField } from './Fields/DulSerieField';
|
|
32
|
+
import { DulSubdivisionCode } from './Fields/DulSubdivisionCode';
|
|
28
33
|
import { EducationField } from './Fields/EducationField';
|
|
29
34
|
import { EmailField } from './Fields/EmailField';
|
|
30
35
|
import { EmployerActivitiesField } from './Fields/EmployerActivitiesField';
|
|
@@ -149,6 +154,11 @@ export const getField =
|
|
|
149
154
|
snils: <SnilsField field={field} input={input} />,
|
|
150
155
|
conscription: <ConscriptionField field={field} input={input} />,
|
|
151
156
|
armyIdFlg: <ArmyIdFlgField field={field} input={input} />,
|
|
157
|
+
dulSerie: <DulSerieField field={field} input={input} />,
|
|
158
|
+
dulNumber: <DulNumberField field={field} input={input} />,
|
|
159
|
+
dulIssueDateField: <DulIssueDateField field={field} input={input} />,
|
|
160
|
+
dulSubdivisionCode: <DulSubdivisionCode field={field} input={input} />,
|
|
161
|
+
dulIssuedBy: <DulIssuedBy field={field} input={input} />,
|
|
152
162
|
};
|
|
153
163
|
|
|
154
164
|
return isRenderField({ input, field }) ? (
|
|
@@ -9,7 +9,9 @@ import {
|
|
|
9
9
|
innValidator,
|
|
10
10
|
lengthStringValidator,
|
|
11
11
|
nameValidator,
|
|
12
|
+
numberValidator,
|
|
12
13
|
phoneValidator,
|
|
14
|
+
serieValidator,
|
|
13
15
|
snilsValidator,
|
|
14
16
|
} from './validators';
|
|
15
17
|
|
|
@@ -31,6 +33,11 @@ export const validatorObj: Record<string, Validator> = {
|
|
|
31
33
|
employerOrganization: defaultValidator,
|
|
32
34
|
positionOrganization: defaultValidator,
|
|
33
35
|
email: emailValidator,
|
|
36
|
+
dulSerie: serieValidator,
|
|
37
|
+
dulNumber: numberValidator,
|
|
38
|
+
dulIssueDateField: defaultValidator,
|
|
39
|
+
dulSubdivisionCode: numberValidator,
|
|
40
|
+
dulIssuedBy: defaultValidator,
|
|
34
41
|
fullName: nameValidator,
|
|
35
42
|
inn: innValidator,
|
|
36
43
|
legalForm: defaultValidator,
|
|
@@ -13,6 +13,14 @@ export const nameValidator = validator((_) => typeof _ === 'string' && _.length
|
|
|
13
13
|
export const lengthStringValidator = (maxLength: number) =>
|
|
14
14
|
validator((_) => typeof _ === 'string' && _.length >= 1 && _.length <= maxLength)(ERROR_MESSAGE);
|
|
15
15
|
|
|
16
|
+
export const serieValidator = validator((_) => typeof _ === 'string' && _.length === 4)(
|
|
17
|
+
ERROR_MESSAGE,
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
export const numberValidator = validator((_) => typeof _ === 'string' && _.length === 6)(
|
|
21
|
+
ERROR_MESSAGE,
|
|
22
|
+
);
|
|
23
|
+
|
|
16
24
|
export const innValidator = validator(
|
|
17
25
|
(_) => typeof _ === 'string' && (_.length === 10 || _.length === 12),
|
|
18
26
|
)(ERROR_MESSAGE);
|
|
@@ -5,9 +5,10 @@ type InputCodeProps = {
|
|
|
5
5
|
values: string[];
|
|
6
6
|
setValues: React.Dispatch<React.SetStateAction<string[]>>;
|
|
7
7
|
hasError?: boolean;
|
|
8
|
+
errorText?: string;
|
|
8
9
|
};
|
|
9
10
|
|
|
10
|
-
export const InputCode = JSX<InputCodeProps>(({ values, setValues, hasError }) => {
|
|
11
|
+
export const InputCode = JSX<InputCodeProps>(({ values, setValues, hasError, errorText }) => {
|
|
11
12
|
const [activeIndex, setActiveIndex] = useState(0);
|
|
12
13
|
const inputRefs = useRef<HTMLInputElement[]>([]);
|
|
13
14
|
|
|
@@ -76,7 +77,7 @@ export const InputCode = JSX<InputCodeProps>(({ values, setValues, hasError }) =
|
|
|
76
77
|
/>
|
|
77
78
|
))}
|
|
78
79
|
</div>
|
|
79
|
-
{hasError ? <div className="text-error"
|
|
80
|
+
{hasError ? <div className="text-error">{errorText}</div> : null}
|
|
80
81
|
</div>
|
|
81
82
|
);
|
|
82
83
|
});
|