@redneckz/wildless-cms-uni-blocks 0.14.737 → 0.14.739
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/EventBus/defaultEventBus.d.ts +1 -3
- package/bundle/blocks.schema.json +1 -1
- package/bundle/bundle.umd.js +599 -597
- package/bundle/bundle.umd.min.js +1 -1
- package/bundle/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/bundle/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/bundle/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/bundle/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/bundle/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/bundle/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/bundle/components/CreditCardForm/renderStep.d.ts +1 -1
- package/bundle/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/bundle/components/CreditForm/renderInputs.d.ts +1 -1
- package/bundle/components/CreditForm/renderStep.d.ts +1 -1
- package/bundle/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/bundle/components/Depository/DepositoryFilter.d.ts +1 -1
- package/bundle/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/bundle/hooks/useAspects/handleAspects.d.ts +1 -1
- package/bundle/hooks/useForm/FieldOptions.d.ts +7 -0
- package/bundle/hooks/useForm/FormOptions.d.ts +13 -0
- package/bundle/hooks/useForm/shallowCompare.d.ts +1 -0
- package/bundle/hooks/useForm/useForm.d.ts +19 -0
- package/bundle/hooks/useForm/useFormValidator.d.ts +6 -0
- package/bundle/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/bundle/services/retail/external/types.d.ts +1 -1
- package/bundle/services/retail/inputs.d.ts +67 -68
- package/bundle/services/retail/model/LeadFormState.d.ts +1 -1
- package/bundle/services/retail/model/NameFieldDef.d.ts +6 -0
- package/bundle/services/retail/model/RetailFormContent.d.ts +1 -1
- package/bundle/services/retail/utils/calculateInputs.d.ts +1 -2
- package/bundle/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/bundle/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/bundle/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/bundle/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/bundle/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/bundle/ui-kit/FormField/getField.d.ts +3 -3
- package/bundle/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/bundle/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/bundle/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/bundle/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/bundle/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/bundle/validation/objectValidator.d.ts +1 -1
- package/dist/EventBus/defaultEventBus.d.ts +1 -3
- package/dist/EventBus/defaultEventBus.js +1 -1
- package/dist/EventBus/defaultEventBus.js.map +1 -1
- package/dist/components/ApplicationForm/ApplicationForm.js +14 -34
- package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/dist/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -7
- package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/dist/components/ApplicationLeadForm/GroupedConsents.js +4 -2
- package/dist/components/ApplicationLeadForm/GroupedConsents.js.map +1 -1
- package/dist/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/dist/components/ApplicationLeadForm/renderInputs.js +4 -3
- package/dist/components/ApplicationLeadForm/renderInputs.js.map +1 -1
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +5 -16
- package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/dist/components/CalculatorBonus/CalculatorBonus.js +1 -1
- package/dist/components/CalculatorBonus/CalculatorBonus.js.map +1 -1
- package/dist/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js +1 -1
- package/dist/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js.map +1 -1
- package/dist/components/CalculatorCredit/CalculatorCredit.js +3 -6
- package/dist/components/CalculatorCredit/CalculatorCredit.js.map +1 -1
- package/dist/components/CalculatorDeposit/CalculatorDeposit.js +2 -2
- package/dist/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
- package/dist/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/dist/components/CalculatorRefinancing/CalculatorRefinancing.js +1 -1
- package/dist/components/CalculatorRefinancing/CalculatorRefinancing.js.map +1 -1
- package/dist/components/CardTransfer/CardTransfer.js +1 -1
- package/dist/components/CardTransfer/CardTransfer.js.map +1 -1
- package/dist/components/CarouselTariffsCard/CarouselTariffsCard.js +12 -11
- package/dist/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
- package/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.js +5 -0
- package/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.js.map +1 -0
- package/dist/components/CreditCardForm/CreditCardForm.js +1 -1
- package/dist/components/CreditCardForm/CreditCardForm.js.map +1 -1
- package/dist/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/dist/components/CreditCardForm/CreditCardFormStep.js +11 -4
- package/dist/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
- package/dist/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/dist/components/CreditCardForm/renderInputs.js +2 -1
- package/dist/components/CreditCardForm/renderInputs.js.map +1 -1
- package/dist/components/CreditCardForm/renderStep.d.ts +1 -1
- package/dist/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/dist/components/CreditCardForm/useCreditCardFormAPI.js +1 -10
- package/dist/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/dist/components/CreditForm/CreditForm.js +1 -1
- package/dist/components/CreditForm/CreditForm.js.map +1 -1
- package/dist/components/CreditForm/CreditFormStep.js +11 -4
- package/dist/components/CreditForm/CreditFormStep.js.map +1 -1
- package/dist/components/CreditForm/renderInputs.d.ts +1 -1
- package/dist/components/CreditForm/renderInputs.js.map +1 -1
- package/dist/components/CreditForm/renderStep.d.ts +1 -1
- package/dist/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/dist/components/CreditForm/useCreditFormAPI.js +1 -10
- package/dist/components/CreditForm/useCreditFormAPI.js.map +1 -1
- package/dist/components/Depository/Depository.js +1 -1
- package/dist/components/Depository/Depository.js.map +1 -1
- package/dist/components/Depository/DepositoryFilter.d.ts +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/dist/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/dist/hooks/useAspects/handleAspects.d.ts +1 -1
- package/dist/hooks/useAspects/handleAspects.js +1 -1
- package/dist/hooks/useAspects/handleAspects.js.map +1 -1
- package/dist/hooks/useForm/FieldOptions.d.ts +7 -0
- package/dist/{components/CarouselTariffsCard/CarouselTariffsCardAction.js → hooks/useForm/FieldOptions.js} +1 -1
- package/dist/hooks/useForm/FieldOptions.js.map +1 -0
- package/dist/hooks/useForm/FormOptions.d.ts +13 -0
- package/{mobile/dist/components/CarouselTariffsCard/CarouselTariffsCardAction.js → dist/hooks/useForm/FormOptions.js} +1 -1
- package/dist/hooks/useForm/FormOptions.js.map +1 -0
- package/dist/hooks/useForm/shallowCompare.d.ts +1 -0
- package/dist/hooks/useForm/shallowCompare.js +5 -0
- package/dist/hooks/useForm/shallowCompare.js.map +1 -0
- package/dist/hooks/useForm/useForm.d.ts +19 -0
- package/dist/hooks/useForm/useForm.js +54 -0
- package/dist/hooks/useForm/useForm.js.map +1 -0
- package/dist/hooks/useForm/useFormValidator.d.ts +6 -0
- package/dist/hooks/useForm/useFormValidator.js +15 -0
- package/dist/hooks/useForm/useFormValidator.js.map +1 -0
- package/dist/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/dist/hooks/useForm/useNormalizedFormState.js +26 -0
- package/dist/hooks/useForm/useNormalizedFormState.js.map +1 -0
- package/dist/services/retail/external/types.d.ts +1 -1
- package/dist/services/retail/inputs.d.ts +67 -68
- package/dist/services/retail/inputs.js +67 -68
- package/dist/services/retail/inputs.js.map +1 -1
- package/dist/services/retail/model/LeadFormState.d.ts +1 -1
- package/dist/services/retail/model/NameFieldDef.d.ts +6 -0
- package/dist/services/retail/model/NameFieldDef.js +2 -0
- package/dist/services/retail/model/NameFieldDef.js.map +1 -0
- package/dist/services/retail/model/RetailFormContent.d.ts +1 -1
- package/dist/services/retail/utils/calculateInputs.d.ts +1 -2
- package/dist/services/retail/utils/calculateInputs.js.map +1 -1
- package/dist/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/dist/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/dist/ui-kit/BaseFiltration/useFiltrationForm.js +3 -3
- package/dist/ui-kit/BaseFiltration/useFiltrationForm.js.map +1 -1
- package/dist/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/dist/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/dist/ui-kit/FormField/BaseFieldDef.js +2 -0
- package/dist/ui-kit/FormField/BaseFieldDef.js.map +1 -0
- package/dist/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/dist/ui-kit/FormField/Fields/AcquiringField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AcquiringField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AddressBranchField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AddressFactField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AddressFactField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AddressField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AddressField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AddressMatchField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AddressMatchField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AddressRetailField.js +3 -6
- package/dist/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AmountField.js +1 -1
- package/dist/ui-kit/FormField/Fields/AmountField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/AnnualRevenueField.js +1 -3
- package/dist/ui-kit/FormField/Fields/AnnualRevenueField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BankEmployeeCodeField.js +1 -3
- package/dist/ui-kit/FormField/Fields/BankEmployeeCodeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BankEmpoleeField.js +1 -1
- package/dist/ui-kit/FormField/Fields/BankEmpoleeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BankruptcyFlgField.js +1 -3
- package/dist/ui-kit/FormField/Fields/BankruptcyFlgField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BeginDateField.js +1 -3
- package/dist/ui-kit/FormField/Fields/BeginDateField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BirthPlaceField.js +1 -3
- package/dist/ui-kit/FormField/Fields/BirthPlaceField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/BirthdayField.js +1 -3
- package/dist/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ChildrenField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ChildrenField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/CodeWordField.js +1 -3
- package/dist/ui-kit/FormField/Fields/CodeWordField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/CollectionCountField.js +1 -3
- package/dist/ui-kit/FormField/Fields/CollectionCountField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/CommentField.js +1 -3
- package/dist/ui-kit/FormField/Fields/CommentField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ConsentField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ConsentField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/CurrencyField.js +2 -7
- package/dist/ui-kit/FormField/Fields/CurrencyField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DeliveryDateFiels.js +1 -3
- package/dist/ui-kit/FormField/Fields/DeliveryDateFiels.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DependentsField.js +1 -3
- package/dist/ui-kit/FormField/Fields/DependentsField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DesiredMeetingDateField.js +1 -3
- package/dist/ui-kit/FormField/Fields/DesiredMeetingDateField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DisablePeopleFlgField.js +1 -3
- package/dist/ui-kit/FormField/Fields/DisablePeopleFlgField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DulIssueDateField.js +1 -4
- package/dist/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DulIssuedByField.js +1 -4
- package/dist/ui-kit/FormField/Fields/DulIssuedByField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DulNumberField.js +1 -4
- package/dist/ui-kit/FormField/Fields/DulNumberField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DulSerieField.js +1 -4
- package/dist/ui-kit/FormField/Fields/DulSerieField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/DulSubdivisionCodeField.js +1 -4
- package/dist/ui-kit/FormField/Fields/DulSubdivisionCodeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/EmailField.js +1 -4
- package/dist/ui-kit/FormField/Fields/EmailField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ExpensesField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ExpensesField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/Experience5YearsField.js +2 -5
- package/dist/ui-kit/FormField/Fields/Experience5YearsField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/FamilyMembersField.js +4 -4
- package/dist/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/FeedbackMethodField.js +1 -3
- package/dist/ui-kit/FormField/Fields/FeedbackMethodField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/FullNameField.js +1 -3
- package/dist/ui-kit/FormField/Fields/FullNameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/GeneralSeniorityField.js +1 -3
- package/dist/ui-kit/FormField/Fields/GeneralSeniorityField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/InnField.js +1 -3
- package/dist/ui-kit/FormField/Fields/InnField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/IsClientField.js +1 -1
- package/dist/ui-kit/FormField/Fields/IsClientField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/JobsNumberField.js +1 -3
- package/dist/ui-kit/FormField/Fields/JobsNumberField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/LastJobExperienceField.js +1 -3
- package/dist/ui-kit/FormField/Fields/LastJobExperienceField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/LegalEntityNameField.js +1 -3
- package/dist/ui-kit/FormField/Fields/LegalEntityNameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/LegalFormField.js +1 -3
- package/dist/ui-kit/FormField/Fields/LegalFormField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/LimitedBirthdayField.js +1 -4
- package/dist/ui-kit/FormField/Fields/LimitedBirthdayField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/LocalitiesField.js +4 -8
- package/dist/ui-kit/FormField/Fields/LocalitiesField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/MandatoryPaymentsField.js +1 -3
- package/dist/ui-kit/FormField/Fields/MandatoryPaymentsField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/MethodObtainField.js +1 -3
- package/dist/ui-kit/FormField/Fields/MethodObtainField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/MiddleNameField.js +1 -4
- package/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/NameField.js +1 -3
- package/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/OnlineCheckoutField.js +1 -1
- package/dist/ui-kit/FormField/Fields/OnlineCheckoutField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/OrganizationNameField.js +1 -3
- package/dist/ui-kit/FormField/Fields/OrganizationNameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/OtherIncomeField.js +1 -3
- package/dist/ui-kit/FormField/Fields/OtherIncomeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/PartInBusinessField.js +2 -5
- package/dist/ui-kit/FormField/Fields/PartInBusinessField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/PartnerCommentsField.js +1 -6
- package/dist/ui-kit/FormField/Fields/PartnerCommentsField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/PaymentSystemField.js +13 -13
- package/dist/ui-kit/FormField/Fields/PaymentSystemField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/PhoneField.js +1 -3
- package/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ProductField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ProductField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/RegionField.js +1 -3
- package/dist/ui-kit/FormField/Fields/RegionField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/RegionPremiumField.js +1 -3
- package/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/RegionRetailField.js +1 -3
- package/dist/ui-kit/FormField/Fields/RegionRetailField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -3
- package/dist/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ServiceDirectionField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ServiceDirectionField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/SexField.js +1 -3
- package/dist/ui-kit/FormField/Fields/SexField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/ShareholderFlgField.js +1 -3
- package/dist/ui-kit/FormField/Fields/ShareholderFlgField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/SnilsField.js +1 -3
- package/dist/ui-kit/FormField/Fields/SnilsField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/SurnameField.js +1 -3
- package/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/TotalIncomeField.js +1 -3
- package/dist/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/UltraPremiumField.js +1 -3
- package/dist/ui-kit/FormField/Fields/UltraPremiumField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/VedField.js +7 -8
- package/dist/ui-kit/FormField/Fields/VedField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/WagesField.js +1 -3
- package/dist/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/dist/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js +1 -4
- package/dist/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js.map +1 -1
- package/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/dist/ui-kit/FormField/SelectField.js +2 -4
- package/dist/ui-kit/FormField/SelectField.js.map +1 -1
- package/dist/ui-kit/FormField/getField.d.ts +3 -3
- package/dist/ui-kit/FormField/getField.js +31 -31
- package/dist/ui-kit/FormField/getField.js.map +1 -1
- package/dist/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/dist/ui-kit/FormField/getObjectValidator.js +18 -6
- package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/dist/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/dist/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/{mobile/dist/ui-kit/FormField/isRenderField.js → dist/ui-kit/FormField/shouldRenderField.js} +4 -4
- package/dist/ui-kit/FormField/shouldRenderField.js.map +1 -0
- package/dist/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
- package/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/dist/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js +1 -1
- package/dist/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js.map +1 -1
- package/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js +3 -4
- package/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js.map +1 -1
- package/dist/utils/getRequiredLabel.js +1 -0
- package/dist/utils/getRequiredLabel.js.map +1 -1
- package/dist/validation/objectValidator.d.ts +1 -1
- package/dist/validation/objectValidator.js +1 -1
- package/dist/validation/objectValidator.js.map +1 -1
- package/lib/EventBus/defaultEventBus.d.ts +1 -3
- package/lib/EventBus/defaultEventBus.js +1 -1
- package/lib/EventBus/defaultEventBus.js.map +1 -1
- package/lib/components/ApplicationForm/ApplicationForm.js +16 -36
- package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/lib/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -7
- package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/lib/components/ApplicationLeadForm/GroupedConsents.js +4 -2
- package/lib/components/ApplicationLeadForm/GroupedConsents.js.map +1 -1
- package/lib/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/lib/components/ApplicationLeadForm/renderInputs.js +4 -3
- package/lib/components/ApplicationLeadForm/renderInputs.js.map +1 -1
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +5 -16
- package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/lib/components/CalculatorBonus/CalculatorBonus.js +1 -1
- package/lib/components/CalculatorBonus/CalculatorBonus.js.map +1 -1
- package/lib/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js +1 -1
- package/lib/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js.map +1 -1
- package/lib/components/CalculatorCredit/CalculatorCredit.js +3 -6
- package/lib/components/CalculatorCredit/CalculatorCredit.js.map +1 -1
- package/lib/components/CalculatorDeposit/CalculatorDeposit.js +2 -2
- package/lib/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
- package/lib/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/lib/components/CalculatorRefinancing/CalculatorRefinancing.js +1 -1
- package/lib/components/CalculatorRefinancing/CalculatorRefinancing.js.map +1 -1
- package/lib/components/CardTransfer/CardTransfer.js +1 -1
- package/lib/components/CardTransfer/CardTransfer.js.map +1 -1
- package/lib/components/CarouselTariffsCard/CarouselTariffsCard.js +13 -12
- package/lib/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
- package/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.js +3 -0
- package/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.js.map +1 -0
- package/lib/components/CreditCardForm/CreditCardForm.js +2 -2
- package/lib/components/CreditCardForm/CreditCardForm.js.map +1 -1
- package/lib/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/lib/components/CreditCardForm/CreditCardFormStep.js +12 -5
- package/lib/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
- package/lib/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/lib/components/CreditCardForm/renderInputs.js +2 -1
- package/lib/components/CreditCardForm/renderInputs.js.map +1 -1
- package/lib/components/CreditCardForm/renderStep.d.ts +1 -1
- package/lib/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/lib/components/CreditCardForm/useCreditCardFormAPI.js +1 -10
- package/lib/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/lib/components/CreditForm/CreditForm.js +2 -2
- package/lib/components/CreditForm/CreditForm.js.map +1 -1
- package/lib/components/CreditForm/CreditFormStep.js +12 -5
- package/lib/components/CreditForm/CreditFormStep.js.map +1 -1
- package/lib/components/CreditForm/renderInputs.d.ts +1 -1
- package/lib/components/CreditForm/renderInputs.js.map +1 -1
- package/lib/components/CreditForm/renderStep.d.ts +1 -1
- package/lib/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/lib/components/CreditForm/useCreditFormAPI.js +1 -10
- package/lib/components/CreditForm/useCreditFormAPI.js.map +1 -1
- package/lib/components/Depository/Depository.js +1 -1
- package/lib/components/Depository/Depository.js.map +1 -1
- package/lib/components/Depository/DepositoryFilter.d.ts +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/lib/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/lib/hooks/useAspects/handleAspects.d.ts +1 -1
- package/lib/hooks/useAspects/handleAspects.js +1 -1
- package/lib/hooks/useAspects/handleAspects.js.map +1 -1
- package/lib/hooks/useForm/FieldOptions.d.ts +7 -0
- package/lib/hooks/useForm/FieldOptions.js +2 -0
- package/lib/hooks/useForm/FieldOptions.js.map +1 -0
- package/lib/hooks/useForm/FormOptions.d.ts +13 -0
- package/lib/hooks/useForm/FormOptions.js +2 -0
- package/lib/hooks/useForm/FormOptions.js.map +1 -0
- package/lib/hooks/useForm/shallowCompare.d.ts +1 -0
- package/lib/hooks/useForm/shallowCompare.js +2 -0
- package/lib/hooks/useForm/shallowCompare.js.map +1 -0
- package/lib/hooks/useForm/useForm.d.ts +19 -0
- package/lib/hooks/useForm/useForm.js +51 -0
- package/lib/hooks/useForm/useForm.js.map +1 -0
- package/lib/hooks/useForm/useFormValidator.d.ts +6 -0
- package/lib/hooks/useForm/useFormValidator.js +12 -0
- package/lib/hooks/useForm/useFormValidator.js.map +1 -0
- package/lib/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/lib/hooks/useForm/useNormalizedFormState.js +23 -0
- package/lib/hooks/useForm/useNormalizedFormState.js.map +1 -0
- package/lib/services/retail/external/types.d.ts +1 -1
- package/lib/services/retail/inputs.d.ts +67 -68
- package/lib/services/retail/inputs.js +67 -68
- package/lib/services/retail/inputs.js.map +1 -1
- package/lib/services/retail/model/LeadFormState.d.ts +1 -1
- package/lib/services/retail/model/NameFieldDef.d.ts +6 -0
- package/lib/services/retail/model/NameFieldDef.js +2 -0
- package/lib/services/retail/model/NameFieldDef.js.map +1 -0
- package/lib/services/retail/model/RetailFormContent.d.ts +1 -1
- package/lib/services/retail/utils/calculateInputs.d.ts +1 -2
- package/lib/services/retail/utils/calculateInputs.js.map +1 -1
- package/lib/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/lib/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/lib/ui-kit/BaseFiltration/useFiltrationForm.js +3 -3
- package/lib/ui-kit/BaseFiltration/useFiltrationForm.js.map +1 -1
- package/lib/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/lib/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/lib/ui-kit/FormField/BaseFieldDef.js +2 -0
- package/lib/ui-kit/FormField/BaseFieldDef.js.map +1 -0
- package/lib/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/lib/ui-kit/FormField/Fields/AcquiringField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AcquiringField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AddressBranchField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AddressFactField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AddressFactField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AddressField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AddressField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AddressMatchField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AddressMatchField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AddressRetailField.js +3 -6
- package/lib/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AmountField.js +1 -1
- package/lib/ui-kit/FormField/Fields/AmountField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/AnnualRevenueField.js +1 -3
- package/lib/ui-kit/FormField/Fields/AnnualRevenueField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BankEmployeeCodeField.js +1 -3
- package/lib/ui-kit/FormField/Fields/BankEmployeeCodeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BankEmpoleeField.js +1 -1
- package/lib/ui-kit/FormField/Fields/BankEmpoleeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BankruptcyFlgField.js +1 -3
- package/lib/ui-kit/FormField/Fields/BankruptcyFlgField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BeginDateField.js +1 -3
- package/lib/ui-kit/FormField/Fields/BeginDateField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BirthPlaceField.js +1 -3
- package/lib/ui-kit/FormField/Fields/BirthPlaceField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/BirthdayField.js +1 -3
- package/lib/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ChildrenField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ChildrenField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/CodeWordField.js +1 -3
- package/lib/ui-kit/FormField/Fields/CodeWordField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/CollectionCountField.js +1 -3
- package/lib/ui-kit/FormField/Fields/CollectionCountField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/CommentField.js +1 -3
- package/lib/ui-kit/FormField/Fields/CommentField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ConsentField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ConsentField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/CurrencyField.js +2 -7
- package/lib/ui-kit/FormField/Fields/CurrencyField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DeliveryDateFiels.js +1 -3
- package/lib/ui-kit/FormField/Fields/DeliveryDateFiels.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DependentsField.js +1 -3
- package/lib/ui-kit/FormField/Fields/DependentsField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DesiredMeetingDateField.js +1 -3
- package/lib/ui-kit/FormField/Fields/DesiredMeetingDateField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DisablePeopleFlgField.js +1 -3
- package/lib/ui-kit/FormField/Fields/DisablePeopleFlgField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DulIssueDateField.js +1 -4
- package/lib/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DulIssuedByField.js +1 -4
- package/lib/ui-kit/FormField/Fields/DulIssuedByField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DulNumberField.js +1 -4
- package/lib/ui-kit/FormField/Fields/DulNumberField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DulSerieField.js +1 -4
- package/lib/ui-kit/FormField/Fields/DulSerieField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/DulSubdivisionCodeField.js +1 -4
- package/lib/ui-kit/FormField/Fields/DulSubdivisionCodeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/EmailField.js +1 -4
- package/lib/ui-kit/FormField/Fields/EmailField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ExpensesField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ExpensesField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/Experience5YearsField.js +2 -5
- package/lib/ui-kit/FormField/Fields/Experience5YearsField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/FamilyMembersField.js +4 -4
- package/lib/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/FeedbackMethodField.js +1 -3
- package/lib/ui-kit/FormField/Fields/FeedbackMethodField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/FullNameField.js +1 -3
- package/lib/ui-kit/FormField/Fields/FullNameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/GeneralSeniorityField.js +1 -3
- package/lib/ui-kit/FormField/Fields/GeneralSeniorityField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/InnField.js +1 -3
- package/lib/ui-kit/FormField/Fields/InnField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/IsClientField.js +1 -1
- package/lib/ui-kit/FormField/Fields/IsClientField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/JobsNumberField.js +1 -3
- package/lib/ui-kit/FormField/Fields/JobsNumberField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/LastJobExperienceField.js +1 -3
- package/lib/ui-kit/FormField/Fields/LastJobExperienceField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/LegalEntityNameField.js +1 -3
- package/lib/ui-kit/FormField/Fields/LegalEntityNameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/LegalFormField.js +1 -3
- package/lib/ui-kit/FormField/Fields/LegalFormField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/LimitedBirthdayField.js +1 -4
- package/lib/ui-kit/FormField/Fields/LimitedBirthdayField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/LocalitiesField.js +5 -9
- package/lib/ui-kit/FormField/Fields/LocalitiesField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/MandatoryPaymentsField.js +1 -3
- package/lib/ui-kit/FormField/Fields/MandatoryPaymentsField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/MethodObtainField.js +1 -3
- package/lib/ui-kit/FormField/Fields/MethodObtainField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/MiddleNameField.js +1 -4
- package/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/NameField.js +1 -3
- package/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/OnlineCheckoutField.js +1 -1
- package/lib/ui-kit/FormField/Fields/OnlineCheckoutField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/OrganizationNameField.js +1 -3
- package/lib/ui-kit/FormField/Fields/OrganizationNameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/OtherIncomeField.js +1 -3
- package/lib/ui-kit/FormField/Fields/OtherIncomeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/PartInBusinessField.js +2 -5
- package/lib/ui-kit/FormField/Fields/PartInBusinessField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/PartnerCommentsField.js +1 -6
- package/lib/ui-kit/FormField/Fields/PartnerCommentsField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/PaymentSystemField.js +14 -14
- package/lib/ui-kit/FormField/Fields/PaymentSystemField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/PhoneField.js +1 -3
- package/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ProductField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ProductField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/RegionField.js +1 -3
- package/lib/ui-kit/FormField/Fields/RegionField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/RegionPremiumField.js +1 -3
- package/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/RegionRetailField.js +1 -3
- package/lib/ui-kit/FormField/Fields/RegionRetailField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -3
- package/lib/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ServiceDirectionField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ServiceDirectionField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/SexField.js +1 -3
- package/lib/ui-kit/FormField/Fields/SexField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/ShareholderFlgField.js +1 -3
- package/lib/ui-kit/FormField/Fields/ShareholderFlgField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/SnilsField.js +1 -3
- package/lib/ui-kit/FormField/Fields/SnilsField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/SurnameField.js +1 -3
- package/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/TotalIncomeField.js +1 -3
- package/lib/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/UltraPremiumField.js +1 -3
- package/lib/ui-kit/FormField/Fields/UltraPremiumField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/VedField.js +8 -9
- package/lib/ui-kit/FormField/Fields/VedField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/WagesField.js +1 -3
- package/lib/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/lib/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js +1 -4
- package/lib/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js.map +1 -1
- package/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/lib/ui-kit/FormField/SelectField.js +2 -4
- package/lib/ui-kit/FormField/SelectField.js.map +1 -1
- package/lib/ui-kit/FormField/getField.d.ts +3 -3
- package/lib/ui-kit/FormField/getField.js +31 -31
- package/lib/ui-kit/FormField/getField.js.map +1 -1
- package/lib/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/lib/ui-kit/FormField/getObjectValidator.js +16 -4
- package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/lib/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/lib/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/lib/ui-kit/FormField/{isRenderField.js → shouldRenderField.js} +2 -2
- package/lib/ui-kit/FormField/shouldRenderField.js.map +1 -0
- package/lib/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
- package/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/lib/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js +1 -1
- package/lib/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js.map +1 -1
- package/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js +3 -4
- package/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js.map +1 -1
- package/lib/utils/getRequiredLabel.js +1 -0
- package/lib/utils/getRequiredLabel.js.map +1 -1
- package/lib/validation/objectValidator.d.ts +1 -1
- package/lib/validation/objectValidator.js +1 -1
- package/lib/validation/objectValidator.js.map +1 -1
- package/mobile/bundle/EventBus/defaultEventBus.d.ts +1 -3
- package/mobile/bundle/bundle.umd.js +599 -597
- package/mobile/bundle/bundle.umd.min.js +1 -1
- package/mobile/bundle/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/bundle/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/mobile/bundle/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/mobile/bundle/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/mobile/bundle/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/mobile/bundle/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/mobile/bundle/components/CreditCardForm/renderStep.d.ts +1 -1
- package/mobile/bundle/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/mobile/bundle/components/CreditForm/renderInputs.d.ts +1 -1
- package/mobile/bundle/components/CreditForm/renderStep.d.ts +1 -1
- package/mobile/bundle/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/mobile/bundle/components/Depository/DepositoryFilter.d.ts +1 -1
- package/mobile/bundle/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/mobile/bundle/hooks/useAspects/handleAspects.d.ts +1 -1
- package/mobile/bundle/hooks/useForm/FieldOptions.d.ts +7 -0
- package/mobile/bundle/hooks/useForm/FormOptions.d.ts +13 -0
- package/mobile/bundle/hooks/useForm/shallowCompare.d.ts +1 -0
- package/mobile/bundle/hooks/useForm/useForm.d.ts +19 -0
- package/mobile/bundle/hooks/useForm/useFormValidator.d.ts +6 -0
- package/mobile/bundle/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/mobile/bundle/services/retail/external/types.d.ts +1 -1
- package/mobile/bundle/services/retail/inputs.d.ts +67 -68
- package/mobile/bundle/services/retail/model/LeadFormState.d.ts +1 -1
- package/mobile/bundle/services/retail/model/NameFieldDef.d.ts +6 -0
- package/mobile/bundle/services/retail/model/RetailFormContent.d.ts +1 -1
- package/mobile/bundle/services/retail/utils/calculateInputs.d.ts +1 -2
- package/mobile/bundle/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/mobile/bundle/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/mobile/bundle/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/mobile/bundle/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/mobile/bundle/ui-kit/FormField/getField.d.ts +3 -3
- package/mobile/bundle/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/mobile/bundle/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/mobile/bundle/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/mobile/bundle/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/mobile/bundle/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/mobile/bundle/validation/objectValidator.d.ts +1 -1
- package/mobile/dist/EventBus/defaultEventBus.d.ts +1 -3
- package/mobile/dist/EventBus/defaultEventBus.js +1 -1
- package/mobile/dist/EventBus/defaultEventBus.js.map +1 -1
- package/mobile/dist/components/ApplicationForm/ApplicationForm.js +14 -34
- package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/mobile/dist/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -7
- package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/GroupedConsents.js +4 -2
- package/mobile/dist/components/ApplicationLeadForm/GroupedConsents.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/dist/components/ApplicationLeadForm/renderInputs.js +4 -3
- package/mobile/dist/components/ApplicationLeadForm/renderInputs.js.map +1 -1
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +5 -16
- package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/dist/components/CalculatorBonus/CalculatorBonus.js +1 -1
- package/mobile/dist/components/CalculatorBonus/CalculatorBonus.js.map +1 -1
- package/mobile/dist/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js +1 -1
- package/mobile/dist/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js.map +1 -1
- package/mobile/dist/components/CalculatorCredit/CalculatorCredit.js +3 -6
- package/mobile/dist/components/CalculatorCredit/CalculatorCredit.js.map +1 -1
- package/mobile/dist/components/CalculatorDeposit/CalculatorDeposit.js +2 -2
- package/mobile/dist/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
- package/mobile/dist/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/mobile/dist/components/CalculatorRefinancing/CalculatorRefinancing.js +1 -1
- package/mobile/dist/components/CalculatorRefinancing/CalculatorRefinancing.js.map +1 -1
- package/mobile/dist/components/CardTransfer/CardTransfer.js +1 -1
- package/mobile/dist/components/CardTransfer/CardTransfer.js.map +1 -1
- package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCard.js +12 -11
- package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
- package/mobile/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/mobile/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.js +5 -0
- package/mobile/dist/components/CarouselTariffsCard/carouselTariffsCardEventBus.js.map +1 -0
- package/mobile/dist/components/CreditCardForm/CreditCardForm.js +1 -1
- package/mobile/dist/components/CreditCardForm/CreditCardForm.js.map +1 -1
- package/mobile/dist/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/mobile/dist/components/CreditCardForm/CreditCardFormStep.js +11 -4
- package/mobile/dist/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
- package/mobile/dist/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/mobile/dist/components/CreditCardForm/renderInputs.js +2 -1
- package/mobile/dist/components/CreditCardForm/renderInputs.js.map +1 -1
- package/mobile/dist/components/CreditCardForm/renderStep.d.ts +1 -1
- package/mobile/dist/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/mobile/dist/components/CreditCardForm/useCreditCardFormAPI.js +1 -10
- package/mobile/dist/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/mobile/dist/components/CreditForm/CreditForm.js +1 -1
- package/mobile/dist/components/CreditForm/CreditForm.js.map +1 -1
- package/mobile/dist/components/CreditForm/CreditFormStep.js +11 -4
- package/mobile/dist/components/CreditForm/CreditFormStep.js.map +1 -1
- package/mobile/dist/components/CreditForm/renderInputs.d.ts +1 -1
- package/mobile/dist/components/CreditForm/renderInputs.js.map +1 -1
- package/mobile/dist/components/CreditForm/renderStep.d.ts +1 -1
- package/mobile/dist/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/mobile/dist/components/CreditForm/useCreditFormAPI.js +1 -10
- package/mobile/dist/components/CreditForm/useCreditFormAPI.js.map +1 -1
- package/mobile/dist/components/Depository/Depository.js +1 -1
- package/mobile/dist/components/Depository/Depository.js.map +1 -1
- package/mobile/dist/components/Depository/DepositoryFilter.d.ts +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/dist/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/mobile/dist/hooks/useAspects/handleAspects.d.ts +1 -1
- package/mobile/dist/hooks/useAspects/handleAspects.js +1 -1
- package/mobile/dist/hooks/useAspects/handleAspects.js.map +1 -1
- package/mobile/dist/hooks/useForm/FieldOptions.d.ts +7 -0
- package/mobile/dist/hooks/useForm/FieldOptions.js +2 -0
- package/mobile/dist/hooks/useForm/FieldOptions.js.map +1 -0
- package/mobile/dist/hooks/useForm/FormOptions.d.ts +13 -0
- package/mobile/dist/hooks/useForm/FormOptions.js +2 -0
- package/mobile/dist/hooks/useForm/FormOptions.js.map +1 -0
- package/mobile/dist/hooks/useForm/shallowCompare.d.ts +1 -0
- package/mobile/dist/hooks/useForm/shallowCompare.js +5 -0
- package/mobile/dist/hooks/useForm/shallowCompare.js.map +1 -0
- package/mobile/dist/hooks/useForm/useForm.d.ts +19 -0
- package/mobile/dist/hooks/useForm/useForm.js +54 -0
- package/mobile/dist/hooks/useForm/useForm.js.map +1 -0
- package/mobile/dist/hooks/useForm/useFormValidator.d.ts +6 -0
- package/mobile/dist/hooks/useForm/useFormValidator.js +15 -0
- package/mobile/dist/hooks/useForm/useFormValidator.js.map +1 -0
- package/mobile/dist/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/mobile/dist/hooks/useForm/useNormalizedFormState.js +26 -0
- package/mobile/dist/hooks/useForm/useNormalizedFormState.js.map +1 -0
- package/mobile/dist/services/retail/external/types.d.ts +1 -1
- package/mobile/dist/services/retail/inputs.d.ts +67 -68
- package/mobile/dist/services/retail/inputs.js +67 -68
- package/mobile/dist/services/retail/inputs.js.map +1 -1
- package/mobile/dist/services/retail/model/LeadFormState.d.ts +1 -1
- package/mobile/dist/services/retail/model/NameFieldDef.d.ts +6 -0
- package/mobile/dist/services/retail/model/NameFieldDef.js +2 -0
- package/mobile/dist/services/retail/model/NameFieldDef.js.map +1 -0
- package/mobile/dist/services/retail/model/RetailFormContent.d.ts +1 -1
- package/mobile/dist/services/retail/utils/calculateInputs.d.ts +1 -2
- package/mobile/dist/services/retail/utils/calculateInputs.js.map +1 -1
- package/mobile/dist/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/mobile/dist/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/mobile/dist/ui-kit/BaseFiltration/useFiltrationForm.js +3 -3
- package/mobile/dist/ui-kit/BaseFiltration/useFiltrationForm.js.map +1 -1
- package/mobile/dist/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/mobile/dist/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/mobile/dist/ui-kit/FormField/BaseFieldDef.js +2 -0
- package/mobile/dist/ui-kit/FormField/BaseFieldDef.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AcquiringField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AcquiringField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AddressBranchField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AddressFactField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AddressFactField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AddressField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AddressField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AddressMatchField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AddressMatchField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AddressRetailField.js +3 -6
- package/mobile/dist/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AmountField.js +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AmountField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/AnnualRevenueField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/AnnualRevenueField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BankEmployeeCodeField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/BankEmployeeCodeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BankEmpoleeField.js +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BankEmpoleeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BankruptcyFlgField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/BankruptcyFlgField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BeginDateField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/BeginDateField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BirthPlaceField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/BirthPlaceField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/BirthdayField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ChildrenField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ChildrenField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/CodeWordField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/CodeWordField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/CollectionCountField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/CollectionCountField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/CommentField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/CommentField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ConsentField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ConsentField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/CurrencyField.js +2 -7
- package/mobile/dist/ui-kit/FormField/Fields/CurrencyField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DeliveryDateFiels.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/DeliveryDateFiels.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DependentsField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/DependentsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DesiredMeetingDateField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/DesiredMeetingDateField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DisablePeopleFlgField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/DisablePeopleFlgField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DulIssueDateField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DulIssuedByField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/DulIssuedByField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DulNumberField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/DulNumberField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DulSerieField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/DulSerieField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/DulSubdivisionCodeField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/DulSubdivisionCodeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/EmailField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/EmailField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ExpensesField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ExpensesField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/Experience5YearsField.js +2 -5
- package/mobile/dist/ui-kit/FormField/Fields/Experience5YearsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/FamilyMembersField.js +4 -4
- package/mobile/dist/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/FeedbackMethodField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/FeedbackMethodField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/FullNameField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/FullNameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/GeneralSeniorityField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/GeneralSeniorityField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/InnField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/InnField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/IsClientField.js +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/IsClientField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/JobsNumberField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/JobsNumberField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/LastJobExperienceField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/LastJobExperienceField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/LegalEntityNameField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/LegalEntityNameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/LegalFormField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/LegalFormField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/LimitedBirthdayField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/LimitedBirthdayField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/LocalitiesField.js +4 -8
- package/mobile/dist/ui-kit/FormField/Fields/LocalitiesField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/MandatoryPaymentsField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/MandatoryPaymentsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/MethodObtainField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/MethodObtainField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/NameField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/NameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/OnlineCheckoutField.js +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/OnlineCheckoutField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/OrganizationNameField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/OrganizationNameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/OtherIncomeField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/OtherIncomeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/PartInBusinessField.js +2 -5
- package/mobile/dist/ui-kit/FormField/Fields/PartInBusinessField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/PartnerCommentsField.js +1 -6
- package/mobile/dist/ui-kit/FormField/Fields/PartnerCommentsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/PaymentSystemField.js +13 -13
- package/mobile/dist/ui-kit/FormField/Fields/PaymentSystemField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ProductField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ProductField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/RegionField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/RegionField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/RegionRetailField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/RegionRetailField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ServiceDirectionField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ServiceDirectionField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/SexField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/SexField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/ShareholderFlgField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/ShareholderFlgField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/SnilsField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/SnilsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/TotalIncomeField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/UltraPremiumField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/UltraPremiumField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/VedField.js +7 -8
- package/mobile/dist/ui-kit/FormField/Fields/VedField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/WagesField.js +1 -3
- package/mobile/dist/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js +1 -4
- package/mobile/dist/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/mobile/dist/ui-kit/FormField/SelectField.js +2 -4
- package/mobile/dist/ui-kit/FormField/SelectField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/getField.d.ts +3 -3
- package/mobile/dist/ui-kit/FormField/getField.js +31 -31
- package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js +18 -6
- package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/dist/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/mobile/dist/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/{dist/ui-kit/FormField/isRenderField.js → mobile/dist/ui-kit/FormField/shouldRenderField.js} +4 -4
- package/mobile/dist/ui-kit/FormField/shouldRenderField.js.map +1 -0
- package/mobile/dist/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
- package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js +1 -1
- package/mobile/dist/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js.map +1 -1
- package/mobile/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/mobile/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js +3 -4
- package/mobile/dist/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js.map +1 -1
- package/mobile/dist/utils/getRequiredLabel.js +1 -0
- package/mobile/dist/utils/getRequiredLabel.js.map +1 -1
- package/mobile/dist/validation/objectValidator.d.ts +1 -1
- package/mobile/dist/validation/objectValidator.js +1 -1
- package/mobile/dist/validation/objectValidator.js.map +1 -1
- package/mobile/lib/EventBus/defaultEventBus.d.ts +1 -3
- package/mobile/lib/EventBus/defaultEventBus.js +1 -1
- package/mobile/lib/EventBus/defaultEventBus.js.map +1 -1
- package/mobile/lib/components/ApplicationForm/ApplicationForm.js +16 -36
- package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
- package/mobile/lib/components/ApplicationForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -7
- package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/GroupedConsents.js +4 -2
- package/mobile/lib/components/ApplicationLeadForm/GroupedConsents.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/renderAgreementSubmit.d.ts +1 -1
- package/mobile/lib/components/ApplicationLeadForm/renderInputs.js +4 -3
- package/mobile/lib/components/ApplicationLeadForm/renderInputs.js.map +1 -1
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +3 -5
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +5 -16
- package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
- package/mobile/lib/components/CalculatorBonus/CalculatorBonus.js +1 -1
- package/mobile/lib/components/CalculatorBonus/CalculatorBonus.js.map +1 -1
- package/mobile/lib/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js +1 -1
- package/mobile/lib/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.js.map +1 -1
- package/mobile/lib/components/CalculatorCredit/CalculatorCredit.js +3 -6
- package/mobile/lib/components/CalculatorCredit/CalculatorCredit.js.map +1 -1
- package/mobile/lib/components/CalculatorDeposit/CalculatorDeposit.js +2 -2
- package/mobile/lib/components/CalculatorDeposit/CalculatorDeposit.js.map +1 -1
- package/mobile/lib/components/CalculatorDeposit/renderDepositParamsForm.d.ts +1 -1
- package/mobile/lib/components/CalculatorRefinancing/CalculatorRefinancing.js +1 -1
- package/mobile/lib/components/CalculatorRefinancing/CalculatorRefinancing.js.map +1 -1
- package/mobile/lib/components/CardTransfer/CardTransfer.js +1 -1
- package/mobile/lib/components/CardTransfer/CardTransfer.js.map +1 -1
- package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCard.js +13 -12
- package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCard.js.map +1 -1
- package/mobile/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.d.ts +10 -0
- package/mobile/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.js +3 -0
- package/mobile/lib/components/CarouselTariffsCard/carouselTariffsCardEventBus.js.map +1 -0
- package/mobile/lib/components/CreditCardForm/CreditCardForm.js +2 -2
- package/mobile/lib/components/CreditCardForm/CreditCardForm.js.map +1 -1
- package/mobile/lib/components/CreditCardForm/CreditCardFormContent.d.ts +1 -1
- package/mobile/lib/components/CreditCardForm/CreditCardFormStep.js +12 -5
- package/mobile/lib/components/CreditCardForm/CreditCardFormStep.js.map +1 -1
- package/mobile/lib/components/CreditCardForm/renderInputs.d.ts +1 -1
- package/mobile/lib/components/CreditCardForm/renderInputs.js +2 -1
- package/mobile/lib/components/CreditCardForm/renderInputs.js.map +1 -1
- package/mobile/lib/components/CreditCardForm/renderStep.d.ts +1 -1
- package/mobile/lib/components/CreditCardForm/useCreditCardFormAPI.d.ts +1 -3
- package/mobile/lib/components/CreditCardForm/useCreditCardFormAPI.js +1 -10
- package/mobile/lib/components/CreditCardForm/useCreditCardFormAPI.js.map +1 -1
- package/mobile/lib/components/CreditForm/CreditForm.js +2 -2
- package/mobile/lib/components/CreditForm/CreditForm.js.map +1 -1
- package/mobile/lib/components/CreditForm/CreditFormStep.js +12 -5
- package/mobile/lib/components/CreditForm/CreditFormStep.js.map +1 -1
- package/mobile/lib/components/CreditForm/renderInputs.d.ts +1 -1
- package/mobile/lib/components/CreditForm/renderInputs.js.map +1 -1
- package/mobile/lib/components/CreditForm/renderStep.d.ts +1 -1
- package/mobile/lib/components/CreditForm/useCreditFormAPI.d.ts +1 -3
- package/mobile/lib/components/CreditForm/useCreditFormAPI.js +1 -10
- package/mobile/lib/components/CreditForm/useCreditFormAPI.js.map +1 -1
- package/mobile/lib/components/Depository/Depository.js +1 -1
- package/mobile/lib/components/Depository/Depository.js.map +1 -1
- package/mobile/lib/components/Depository/DepositoryFilter.d.ts +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +1 -1
- package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
- package/mobile/lib/components/OfficesAtmsMap/renderFiltrationForm.d.ts +1 -1
- package/mobile/lib/hooks/useAspects/handleAspects.d.ts +1 -1
- package/mobile/lib/hooks/useAspects/handleAspects.js +1 -1
- package/mobile/lib/hooks/useAspects/handleAspects.js.map +1 -1
- package/mobile/lib/hooks/useForm/FieldOptions.d.ts +7 -0
- package/mobile/lib/hooks/useForm/FieldOptions.js +2 -0
- package/mobile/lib/hooks/useForm/FieldOptions.js.map +1 -0
- package/mobile/lib/hooks/useForm/FormOptions.d.ts +13 -0
- package/mobile/lib/hooks/useForm/FormOptions.js +2 -0
- package/mobile/lib/hooks/useForm/FormOptions.js.map +1 -0
- package/mobile/lib/hooks/useForm/shallowCompare.d.ts +1 -0
- package/mobile/lib/hooks/useForm/shallowCompare.js +2 -0
- package/mobile/lib/hooks/useForm/shallowCompare.js.map +1 -0
- package/mobile/lib/hooks/useForm/useForm.d.ts +19 -0
- package/mobile/lib/hooks/useForm/useForm.js +51 -0
- package/mobile/lib/hooks/useForm/useForm.js.map +1 -0
- package/mobile/lib/hooks/useForm/useFormValidator.d.ts +6 -0
- package/mobile/lib/hooks/useForm/useFormValidator.js +12 -0
- package/mobile/lib/hooks/useForm/useFormValidator.js.map +1 -0
- package/mobile/lib/hooks/useForm/useNormalizedFormState.d.ts +1 -0
- package/mobile/lib/hooks/useForm/useNormalizedFormState.js +23 -0
- package/mobile/lib/hooks/useForm/useNormalizedFormState.js.map +1 -0
- package/mobile/lib/services/retail/external/types.d.ts +1 -1
- package/mobile/lib/services/retail/inputs.d.ts +67 -68
- package/mobile/lib/services/retail/inputs.js +67 -68
- package/mobile/lib/services/retail/inputs.js.map +1 -1
- package/mobile/lib/services/retail/model/LeadFormState.d.ts +1 -1
- package/mobile/lib/services/retail/model/NameFieldDef.d.ts +6 -0
- package/mobile/lib/services/retail/model/NameFieldDef.js +2 -0
- package/mobile/lib/services/retail/model/NameFieldDef.js.map +1 -0
- package/mobile/lib/services/retail/model/RetailFormContent.d.ts +1 -1
- package/mobile/lib/services/retail/utils/calculateInputs.d.ts +1 -2
- package/mobile/lib/services/retail/utils/calculateInputs.js.map +1 -1
- package/mobile/lib/ui-kit/BaseFiltration/FiltrationForm.d.ts +1 -1
- package/mobile/lib/ui-kit/BaseFiltration/useFiltrationForm.d.ts +2 -2
- package/mobile/lib/ui-kit/BaseFiltration/useFiltrationForm.js +3 -3
- package/mobile/lib/ui-kit/BaseFiltration/useFiltrationForm.js.map +1 -1
- package/mobile/lib/ui-kit/Calculator/setDefaultParamsCalc.d.ts +1 -1
- package/mobile/lib/ui-kit/FormField/BaseFieldDef.d.ts +8 -0
- package/mobile/lib/ui-kit/FormField/BaseFieldDef.js +2 -0
- package/mobile/lib/ui-kit/FormField/BaseFieldDef.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/CustomFieldProps.d.ts +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AcquiringField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AcquiringField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AddressBranchField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AddressFactField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AddressFactField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AddressField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AddressField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AddressMatchField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AddressMatchField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AddressRetailField.js +3 -6
- package/mobile/lib/ui-kit/FormField/Fields/AddressRetailField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AmountField.js +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AmountField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/AnnualRevenueField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/AnnualRevenueField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BankEmployeeCodeField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/BankEmployeeCodeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BankEmpoleeField.js +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BankEmpoleeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BankruptcyFlgField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/BankruptcyFlgField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BeginDateField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/BeginDateField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BirthPlaceField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/BirthPlaceField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/BirthdayField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ChildrenField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ChildrenField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/CodeWordField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/CodeWordField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/CollectionCountField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/CollectionCountField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/CommentField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/CommentField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ConsentField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ConsentField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/CurrencyField.js +2 -7
- package/mobile/lib/ui-kit/FormField/Fields/CurrencyField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DeliveryDateFiels.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/DeliveryDateFiels.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DependentsField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/DependentsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DesiredMeetingDateField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/DesiredMeetingDateField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DisablePeopleFlgField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/DisablePeopleFlgField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DulIssueDateField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/DulIssueDateField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DulIssuedByField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/DulIssuedByField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DulNumberField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/DulNumberField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DulSerieField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/DulSerieField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/DulSubdivisionCodeField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/DulSubdivisionCodeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/EmailField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/EmailField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ExpensesField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ExpensesField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/Experience5YearsField.js +2 -5
- package/mobile/lib/ui-kit/FormField/Fields/Experience5YearsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/FamilyMembersField.js +4 -4
- package/mobile/lib/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/FeedbackMethodField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/FeedbackMethodField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/FullNameField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/FullNameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/GeneralSeniorityField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/GeneralSeniorityField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/InnField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/InnField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/IsClientField.js +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/IsClientField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/JobsNumberField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/JobsNumberField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/LastJobExperienceField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/LastJobExperienceField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/LegalEntityNameField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/LegalEntityNameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/LegalFormField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/LegalFormField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/LimitedBirthdayField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/LimitedBirthdayField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/LocalitiesField.js +5 -9
- package/mobile/lib/ui-kit/FormField/Fields/LocalitiesField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/MandatoryPaymentsField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/MandatoryPaymentsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/MethodObtainField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/MethodObtainField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/MiddleNameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/NameField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/NameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/OnlineCheckoutField.js +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/OnlineCheckoutField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/OrganizationNameField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/OrganizationNameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/OtherIncomeField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/OtherIncomeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/PartInBusinessField.js +2 -5
- package/mobile/lib/ui-kit/FormField/Fields/PartInBusinessField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ParticipantDateRegistrationField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/PartnerCommentsField.js +1 -6
- package/mobile/lib/ui-kit/FormField/Fields/PartnerCommentsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/PaymentSystemField.js +14 -14
- package/mobile/lib/ui-kit/FormField/Fields/PaymentSystemField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/PhoneField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ProductField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ProductField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/RegionField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/RegionField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/RegionRetailField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/RegionRetailField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/RetirementIncomeField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/RetirementIncomeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ServiceDirectionField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ServiceDirectionField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/SexField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/SexField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/ShareholderFlgField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/ShareholderFlgField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/SnilsField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/SnilsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/SurnameField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/TotalIncomeField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/UltraPremiumField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/UltraPremiumField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/VedField.js +8 -9
- package/mobile/lib/ui-kit/FormField/Fields/VedField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/WagesField.js +1 -3
- package/mobile/lib/ui-kit/FormField/Fields/WagesField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js +1 -4
- package/mobile/lib/ui-kit/FormField/Fields/consentToReceiveMaterialsField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -4
- package/mobile/lib/ui-kit/FormField/SelectField.js +2 -4
- package/mobile/lib/ui-kit/FormField/SelectField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/getField.d.ts +3 -3
- package/mobile/lib/ui-kit/FormField/getField.js +31 -31
- package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/getObjectValidator.d.ts +3 -2
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js +16 -4
- package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
- package/mobile/lib/ui-kit/FormField/isEsiaAuthorize.d.ts +1 -1
- package/mobile/lib/ui-kit/FormField/shouldRenderField.d.ts +6 -0
- package/mobile/lib/ui-kit/FormField/{isRenderField.js → shouldRenderField.js} +2 -2
- package/mobile/lib/ui-kit/FormField/shouldRenderField.js.map +1 -0
- package/mobile/lib/ui-kit/FormField/updateOrganizationFields.d.ts +1 -1
- package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js +1 -1
- package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js +1 -1
- package/mobile/lib/ui-kit/RadioButtonGroup/RadioButtonGroupControl.js.map +1 -1
- package/mobile/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.d.ts +1 -1
- package/mobile/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js +3 -4
- package/mobile/lib/ui-kit/ResponseTypeDialog/ResponseTypeDialog.js.map +1 -1
- package/mobile/lib/utils/getRequiredLabel.js +1 -0
- package/mobile/lib/utils/getRequiredLabel.js.map +1 -1
- package/mobile/lib/validation/objectValidator.d.ts +1 -1
- package/mobile/lib/validation/objectValidator.js +1 -1
- package/mobile/lib/validation/objectValidator.js.map +1 -1
- package/mobile/src/EventBus/defaultEventBus.ts +1 -3
- package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +23 -43
- package/mobile/src/components/ApplicationForm/renderAgreementSubmit.tsx +1 -1
- package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +12 -7
- package/mobile/src/components/ApplicationLeadForm/GroupedConsents.tsx +5 -2
- package/mobile/src/components/ApplicationLeadForm/renderAgreementSubmit.tsx +1 -1
- package/mobile/src/components/ApplicationLeadForm/renderInputs.tsx +7 -4
- package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +5 -23
- package/mobile/src/components/CalculatorBonus/CalculatorBonus.tsx +1 -1
- package/mobile/src/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.tsx +1 -1
- package/mobile/src/components/CalculatorCredit/CalculatorCredit.tsx +13 -14
- package/mobile/src/components/CalculatorDeposit/CalculatorDeposit.tsx +2 -2
- package/mobile/src/components/CalculatorDeposit/renderDepositParamsForm.tsx +1 -1
- package/mobile/src/components/CalculatorRefinancing/CalculatorRefinancing.tsx +1 -1
- package/mobile/src/components/CardTransfer/CardTransfer.tsx +1 -1
- package/mobile/src/components/CarouselTariffsCard/CarouselTariffsCard.tsx +37 -34
- package/mobile/src/components/CarouselTariffsCard/carouselTariffsCardEventBus.ts +12 -0
- package/mobile/src/components/CreditCardForm/CreditCardForm.tsx +2 -2
- package/mobile/src/components/CreditCardForm/CreditCardFormContent.ts +1 -1
- package/mobile/src/components/CreditCardForm/CreditCardFormStep.tsx +17 -7
- package/mobile/src/components/CreditCardForm/renderInputs.tsx +6 -2
- package/mobile/src/components/CreditCardForm/renderStep.tsx +1 -1
- package/mobile/src/components/CreditCardForm/useCreditCardFormAPI.tsx +0 -20
- package/mobile/src/components/CreditForm/CreditForm.tsx +3 -3
- package/mobile/src/components/CreditForm/CreditFormStep.tsx +18 -7
- package/mobile/src/components/CreditForm/renderInputs.tsx +2 -2
- package/mobile/src/components/CreditForm/renderStep.tsx +1 -1
- package/mobile/src/components/CreditForm/useCreditFormAPI.tsx +0 -20
- package/mobile/src/components/Depository/Depository.tsx +1 -1
- package/mobile/src/components/Depository/DepositoryFilter.tsx +1 -1
- package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +1 -1
- package/mobile/src/components/OfficesAtmsMap/renderFiltrationForm.tsx +1 -1
- package/mobile/src/hooks/useAspects/handleAspects.ts +2 -2
- package/mobile/src/hooks/useForm/FieldOptions.ts +8 -0
- package/mobile/src/hooks/useForm/FormOptions.ts +18 -0
- package/mobile/src/hooks/useForm/shallowCompare.ts +2 -0
- package/mobile/src/hooks/useForm/useForm.ts +98 -0
- package/mobile/src/hooks/useForm/useFormValidator.ts +24 -0
- package/mobile/src/hooks/useForm/useNormalizedFormState.ts +37 -0
- package/mobile/src/services/retail/external/types.ts +1 -1
- package/mobile/src/services/retail/inputs.tsx +67 -70
- package/mobile/src/services/retail/model/LeadFormState.ts +2 -2
- package/mobile/src/services/retail/model/NameFieldDef.ts +89 -0
- package/mobile/src/services/retail/model/RetailFormContent.ts +1 -1
- package/mobile/src/services/retail/utils/calculateInputs.ts +6 -7
- package/mobile/src/ui-kit/BaseFiltration/FiltrationForm.tsx +1 -1
- package/mobile/src/ui-kit/BaseFiltration/useFiltrationForm.ts +4 -4
- package/mobile/src/ui-kit/Calculator/setDefaultParamsCalc.tsx +1 -1
- package/mobile/src/ui-kit/FormField/BaseFieldDef.ts +8 -0
- package/mobile/src/ui-kit/FormField/CustomFieldProps.ts +1 -1
- package/mobile/src/ui-kit/FormField/Fields/AcquiringField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/AddressFactField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/AddressField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/AddressMatchField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/AddressRetailField.tsx +4 -12
- package/mobile/src/ui-kit/FormField/Fields/AmountField.tsx +2 -2
- package/mobile/src/ui-kit/FormField/Fields/AnnualRevenueField.tsx +1 -6
- package/mobile/src/ui-kit/FormField/Fields/ArmyIdFlgField.tsx +1 -6
- package/mobile/src/ui-kit/FormField/Fields/BankEmployeeCodeField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/BankEmpoleeField.tsx +2 -2
- package/mobile/src/ui-kit/FormField/Fields/BankruptcyFlgField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/BeginDateField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/BirthPlaceField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/BirthdayField.tsx +1 -6
- package/mobile/src/ui-kit/FormField/Fields/ChildrenField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/CodeWordField.tsx +1 -7
- package/mobile/src/ui-kit/FormField/Fields/CollectionCountField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/CommentField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/ConsentField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/CurrencyField.tsx +9 -17
- package/mobile/src/ui-kit/FormField/Fields/DeliveryDateFiels.tsx +1 -6
- package/mobile/src/ui-kit/FormField/Fields/DependentsField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/DesiredMeetingDateField.tsx +1 -10
- package/mobile/src/ui-kit/FormField/Fields/DisablePeopleFlgField.tsx +1 -6
- package/mobile/src/ui-kit/FormField/Fields/DulIssueDateField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/DulIssuedByField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/DulNumberField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/DulSerieField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/DulSubdivisionCodeField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/EmailField.tsx +1 -12
- package/mobile/src/ui-kit/FormField/Fields/ExpensesField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/Experience5YearsField.tsx +2 -5
- package/mobile/src/ui-kit/FormField/Fields/FamilyMembersField.tsx +4 -4
- package/mobile/src/ui-kit/FormField/Fields/FeedbackMethodField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/FullNameField.tsx +1 -7
- package/mobile/src/ui-kit/FormField/Fields/GeneralSeniorityField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/InnField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/IsClientField.tsx +5 -2
- package/mobile/src/ui-kit/FormField/Fields/JobsNumberField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/LastJobExperienceField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/LegalEntityNameField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/LegalFormField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/LimitedBirthdayField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/LocalitiesField.tsx +8 -9
- package/mobile/src/ui-kit/FormField/Fields/MandatoryPaymentsField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/MethodObtainField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -6
- package/mobile/src/ui-kit/FormField/Fields/NameField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/OnlineCheckoutField.tsx +2 -2
- package/mobile/src/ui-kit/FormField/Fields/OrganizationNameField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/OtherIncomeField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/PartInBusinessField.tsx +2 -5
- package/mobile/src/ui-kit/FormField/Fields/ParticipantDateRegistrationField.tsx +1 -10
- package/mobile/src/ui-kit/FormField/Fields/PartnerCommentsField.tsx +8 -15
- package/mobile/src/ui-kit/FormField/Fields/PaymentSystemField.tsx +18 -22
- package/mobile/src/ui-kit/FormField/Fields/PhoneField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/ProductField.tsx +2 -4
- package/mobile/src/ui-kit/FormField/Fields/RegionField.tsx +1 -4
- package/mobile/src/ui-kit/FormField/Fields/RegionPremiumField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/RegionRetailField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/RetirementIncomeField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/ServiceDirectionField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/SexField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/ShareholderFlgField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/SnilsField.tsx +1 -8
- package/mobile/src/ui-kit/FormField/Fields/SurnameField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/TotalIncomeField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/UltraPremiumField.tsx +1 -7
- package/mobile/src/ui-kit/FormField/Fields/VedField.tsx +8 -10
- package/mobile/src/ui-kit/FormField/Fields/WagesField.tsx +1 -3
- package/mobile/src/ui-kit/FormField/Fields/consentToReceiveMaterialsField.tsx +1 -5
- package/mobile/src/ui-kit/FormField/NameFieldDef.ts +1 -81
- package/mobile/src/ui-kit/FormField/SelectField.tsx +1 -4
- package/mobile/src/ui-kit/FormField/getField.tsx +39 -40
- package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +31 -6
- package/mobile/src/ui-kit/FormField/isEsiaAuthorize.ts +1 -1
- package/mobile/src/ui-kit/FormField/{isRenderField.tsx → shouldRenderField.tsx} +4 -4
- package/mobile/src/ui-kit/FormField/updateOrganizationFields.ts +1 -1
- package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +2 -2
- package/mobile/src/ui-kit/RadioButtonGroup/RadioButtonGroupControl.tsx +2 -6
- package/mobile/src/ui-kit/ResponseTypeDialog/ResponseTypeDialog.tsx +25 -28
- package/mobile/src/utils/getRequiredLabel.ts +1 -0
- package/mobile/src/validation/objectValidator.ts +6 -4
- package/package.json +1 -1
- package/src/EventBus/defaultEventBus.ts +1 -3
- package/src/components/ApplicationForm/ApplicationForm.tsx +23 -43
- package/src/components/ApplicationForm/renderAgreementSubmit.tsx +1 -1
- package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +12 -7
- package/src/components/ApplicationLeadForm/GroupedConsents.tsx +5 -2
- package/src/components/ApplicationLeadForm/renderAgreementSubmit.tsx +1 -1
- package/src/components/ApplicationLeadForm/renderInputs.tsx +7 -4
- package/src/components/ApplicationLeadForm/useApplicationLeadApi.tsx +5 -23
- package/src/components/CalculatorBonus/CalculatorBonus.tsx +1 -1
- package/src/components/CalculatorBusinessDeposit/CalculatorBusinessDeposit.tsx +1 -1
- package/src/components/CalculatorCredit/CalculatorCredit.tsx +13 -14
- package/src/components/CalculatorDeposit/CalculatorDeposit.tsx +2 -2
- package/src/components/CalculatorDeposit/renderDepositParamsForm.tsx +1 -1
- package/src/components/CalculatorRefinancing/CalculatorRefinancing.tsx +1 -1
- package/src/components/CardTransfer/CardTransfer.tsx +1 -1
- package/src/components/CarouselTariffsCard/CarouselTariffsCard.tsx +37 -34
- package/src/components/CarouselTariffsCard/carouselTariffsCardEventBus.ts +12 -0
- package/src/components/CreditCardForm/CreditCardForm.tsx +2 -2
- package/src/components/CreditCardForm/CreditCardFormContent.ts +1 -1
- package/src/components/CreditCardForm/CreditCardFormStep.tsx +17 -7
- package/src/components/CreditCardForm/renderInputs.tsx +6 -2
- package/src/components/CreditCardForm/renderStep.tsx +1 -1
- package/src/components/CreditCardForm/useCreditCardFormAPI.tsx +0 -20
- package/src/components/CreditForm/CreditForm.tsx +3 -3
- package/src/components/CreditForm/CreditFormStep.tsx +18 -7
- package/src/components/CreditForm/renderInputs.tsx +2 -2
- package/src/components/CreditForm/renderStep.tsx +1 -1
- package/src/components/CreditForm/useCreditFormAPI.tsx +0 -20
- package/src/components/Depository/Depository.tsx +1 -1
- package/src/components/Depository/DepositoryFilter.tsx +1 -1
- package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +1 -1
- package/src/components/OfficesAtmsMap/renderFiltrationForm.tsx +1 -1
- package/src/hooks/useAspects/handleAspects.ts +2 -2
- package/src/hooks/useForm/FieldOptions.ts +8 -0
- package/src/hooks/useForm/FormOptions.ts +18 -0
- package/src/hooks/useForm/shallowCompare.ts +2 -0
- package/src/hooks/useForm/useForm.ts +98 -0
- package/src/hooks/useForm/useFormValidator.ts +24 -0
- package/src/hooks/useForm/useNormalizedFormState.ts +37 -0
- package/src/services/retail/external/types.ts +1 -1
- package/src/services/retail/inputs.tsx +67 -70
- package/src/services/retail/model/LeadFormState.ts +2 -2
- package/src/services/retail/model/NameFieldDef.ts +89 -0
- package/src/services/retail/model/RetailFormContent.ts +1 -1
- package/src/services/retail/utils/calculateInputs.ts +6 -7
- package/src/ui-kit/BaseFiltration/FiltrationForm.tsx +1 -1
- package/src/ui-kit/BaseFiltration/useFiltrationForm.ts +4 -4
- package/src/ui-kit/Calculator/setDefaultParamsCalc.tsx +1 -1
- package/src/ui-kit/FormField/BaseFieldDef.ts +8 -0
- package/src/ui-kit/FormField/CustomFieldProps.ts +1 -1
- package/src/ui-kit/FormField/Fields/AcquiringField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/AddressFactField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/AddressField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/AddressMatchField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/AddressRetailField.tsx +4 -12
- package/src/ui-kit/FormField/Fields/AmountField.tsx +2 -2
- package/src/ui-kit/FormField/Fields/AnnualRevenueField.tsx +1 -6
- package/src/ui-kit/FormField/Fields/ArmyIdFlgField.tsx +1 -6
- package/src/ui-kit/FormField/Fields/BankEmployeeCodeField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/BankEmpoleeField.tsx +2 -2
- package/src/ui-kit/FormField/Fields/BankruptcyFlgField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/BeginDateField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/BirthPlaceField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/BirthdayField.tsx +1 -6
- package/src/ui-kit/FormField/Fields/ChildrenField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/CodeWordField.tsx +1 -7
- package/src/ui-kit/FormField/Fields/CollectionCountField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/CommentField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/ConsentField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/CurrencyField.tsx +9 -17
- package/src/ui-kit/FormField/Fields/DeliveryDateFiels.tsx +1 -6
- package/src/ui-kit/FormField/Fields/DependentsField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/DesiredMeetingDateField.tsx +1 -10
- package/src/ui-kit/FormField/Fields/DisablePeopleFlgField.tsx +1 -6
- package/src/ui-kit/FormField/Fields/DulIssueDateField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/DulIssuedByField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/DulNumberField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/DulSerieField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/DulSubdivisionCodeField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/EmailField.tsx +1 -12
- package/src/ui-kit/FormField/Fields/ExpensesField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/Experience5YearsField.tsx +2 -5
- package/src/ui-kit/FormField/Fields/FamilyMembersField.tsx +4 -4
- package/src/ui-kit/FormField/Fields/FeedbackMethodField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/FullNameField.tsx +1 -7
- package/src/ui-kit/FormField/Fields/GeneralSeniorityField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/InnField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/IsClientField.tsx +5 -2
- package/src/ui-kit/FormField/Fields/JobsNumberField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/LastJobExperienceField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/LegalEntityNameField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/LegalFormField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/LimitedBirthdayField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/LocalitiesField.tsx +8 -9
- package/src/ui-kit/FormField/Fields/MandatoryPaymentsField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/MethodObtainField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/MiddleNameField.tsx +2 -6
- package/src/ui-kit/FormField/Fields/NameField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/OnlineCheckoutField.tsx +2 -2
- package/src/ui-kit/FormField/Fields/OrganizationNameField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/OtherIncomeField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/PartInBusinessField.tsx +2 -5
- package/src/ui-kit/FormField/Fields/ParticipantDateRegistrationField.tsx +1 -10
- package/src/ui-kit/FormField/Fields/PartnerCommentsField.tsx +8 -15
- package/src/ui-kit/FormField/Fields/PaymentSystemField.tsx +18 -22
- package/src/ui-kit/FormField/Fields/PhoneField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/ProductField.tsx +2 -4
- package/src/ui-kit/FormField/Fields/RegionField.tsx +1 -4
- package/src/ui-kit/FormField/Fields/RegionPremiumField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/RegionRetailField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/RetirementIncomeField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/ServiceDirectionField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/SexField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/ShareholderFlgField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/SnilsField.tsx +1 -8
- package/src/ui-kit/FormField/Fields/SurnameField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/TotalIncomeField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/UltraPremiumField.tsx +1 -7
- package/src/ui-kit/FormField/Fields/VedField.tsx +8 -10
- package/src/ui-kit/FormField/Fields/WagesField.tsx +1 -3
- package/src/ui-kit/FormField/Fields/consentToReceiveMaterialsField.tsx +1 -5
- package/src/ui-kit/FormField/NameFieldDef.ts +1 -81
- package/src/ui-kit/FormField/SelectField.tsx +1 -4
- package/src/ui-kit/FormField/getField.tsx +39 -40
- package/src/ui-kit/FormField/getObjectValidator.tsx +31 -6
- package/src/ui-kit/FormField/isEsiaAuthorize.ts +1 -1
- package/src/ui-kit/FormField/{isRenderField.tsx → shouldRenderField.tsx} +4 -4
- package/src/ui-kit/FormField/updateOrganizationFields.ts +1 -1
- package/src/ui-kit/RadioButtonGroup/RadioButtonGroup.tsx +2 -2
- package/src/ui-kit/RadioButtonGroup/RadioButtonGroupControl.tsx +2 -6
- package/src/ui-kit/ResponseTypeDialog/ResponseTypeDialog.tsx +25 -28
- package/src/utils/getRequiredLabel.ts +1 -0
- package/src/validation/objectValidator.ts +6 -4
- package/bundle/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/bundle/hooks/useForm.d.ts +0 -23
- package/bundle/ui-kit/FormField/dataSources.d.ts +0 -3
- package/bundle/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/bundle/ui-kit/FormField/getValidation.d.ts +0 -3
- package/bundle/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/dist/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/dist/components/CarouselTariffsCard/CarouselTariffsCardAction.js.map +0 -1
- package/dist/hooks/useForm.d.ts +0 -23
- package/dist/hooks/useForm.js +0 -62
- package/dist/hooks/useForm.js.map +0 -1
- package/dist/ui-kit/FormField/dataSources.d.ts +0 -3
- package/dist/ui-kit/FormField/dataSources.js +0 -6
- package/dist/ui-kit/FormField/dataSources.js.map +0 -1
- package/dist/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/dist/ui-kit/FormField/getNamesFromInput.js +0 -5
- package/dist/ui-kit/FormField/getNamesFromInput.js.map +0 -1
- package/dist/ui-kit/FormField/getValidation.d.ts +0 -3
- package/dist/ui-kit/FormField/getValidation.js +0 -6
- package/dist/ui-kit/FormField/getValidation.js.map +0 -1
- package/dist/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/dist/ui-kit/FormField/isRenderField.js.map +0 -1
- package/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.js +0 -2
- package/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.js.map +0 -1
- package/lib/hooks/useForm.d.ts +0 -23
- package/lib/hooks/useForm.js +0 -59
- package/lib/hooks/useForm.js.map +0 -1
- package/lib/ui-kit/FormField/dataSources.d.ts +0 -3
- package/lib/ui-kit/FormField/dataSources.js +0 -4
- package/lib/ui-kit/FormField/dataSources.js.map +0 -1
- package/lib/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/lib/ui-kit/FormField/getNamesFromInput.js +0 -2
- package/lib/ui-kit/FormField/getNamesFromInput.js.map +0 -1
- package/lib/ui-kit/FormField/getValidation.d.ts +0 -3
- package/lib/ui-kit/FormField/getValidation.js +0 -3
- package/lib/ui-kit/FormField/getValidation.js.map +0 -1
- package/lib/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/lib/ui-kit/FormField/isRenderField.js.map +0 -1
- package/mobile/bundle/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/mobile/bundle/hooks/useForm.d.ts +0 -23
- package/mobile/bundle/ui-kit/FormField/dataSources.d.ts +0 -3
- package/mobile/bundle/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/mobile/bundle/ui-kit/FormField/getValidation.d.ts +0 -3
- package/mobile/bundle/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/mobile/dist/components/CarouselTariffsCard/CarouselTariffsCardAction.js.map +0 -1
- package/mobile/dist/hooks/useForm.d.ts +0 -23
- package/mobile/dist/hooks/useForm.js +0 -62
- package/mobile/dist/hooks/useForm.js.map +0 -1
- package/mobile/dist/ui-kit/FormField/dataSources.d.ts +0 -3
- package/mobile/dist/ui-kit/FormField/dataSources.js +0 -6
- package/mobile/dist/ui-kit/FormField/dataSources.js.map +0 -1
- package/mobile/dist/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/mobile/dist/ui-kit/FormField/getNamesFromInput.js +0 -5
- package/mobile/dist/ui-kit/FormField/getNamesFromInput.js.map +0 -1
- package/mobile/dist/ui-kit/FormField/getValidation.d.ts +0 -3
- package/mobile/dist/ui-kit/FormField/getValidation.js +0 -6
- package/mobile/dist/ui-kit/FormField/getValidation.js.map +0 -1
- package/mobile/dist/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/mobile/dist/ui-kit/FormField/isRenderField.js.map +0 -1
- package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.d.ts +0 -6
- package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.js +0 -2
- package/mobile/lib/components/CarouselTariffsCard/CarouselTariffsCardAction.js.map +0 -1
- package/mobile/lib/hooks/useForm.d.ts +0 -23
- package/mobile/lib/hooks/useForm.js +0 -59
- package/mobile/lib/hooks/useForm.js.map +0 -1
- package/mobile/lib/ui-kit/FormField/dataSources.d.ts +0 -3
- package/mobile/lib/ui-kit/FormField/dataSources.js +0 -4
- package/mobile/lib/ui-kit/FormField/dataSources.js.map +0 -1
- package/mobile/lib/ui-kit/FormField/getNamesFromInput.d.ts +0 -2
- package/mobile/lib/ui-kit/FormField/getNamesFromInput.js +0 -2
- package/mobile/lib/ui-kit/FormField/getNamesFromInput.js.map +0 -1
- package/mobile/lib/ui-kit/FormField/getValidation.d.ts +0 -3
- package/mobile/lib/ui-kit/FormField/getValidation.js +0 -3
- package/mobile/lib/ui-kit/FormField/getValidation.js.map +0 -1
- package/mobile/lib/ui-kit/FormField/isRenderField.d.ts +0 -6
- package/mobile/lib/ui-kit/FormField/isRenderField.js.map +0 -1
- package/mobile/src/components/CarouselTariffsCard/CarouselTariffsCardAction.ts +0 -6
- package/mobile/src/hooks/useForm.ts +0 -120
- package/mobile/src/ui-kit/FormField/dataSources.ts +0 -3
- package/mobile/src/ui-kit/FormField/getNamesFromInput.tsx +0 -4
- package/mobile/src/ui-kit/FormField/getValidation.tsx +0 -6
- package/src/components/CarouselTariffsCard/CarouselTariffsCardAction.ts +0 -6
- package/src/hooks/useForm.ts +0 -120
- package/src/ui-kit/FormField/dataSources.ts +0 -3
- package/src/ui-kit/FormField/getNamesFromInput.tsx +0 -4
- package/src/ui-kit/FormField/getValidation.tsx +0 -6
package/bundle/bundle.umd.js
CHANGED
|
@@ -1074,7 +1074,7 @@
|
|
|
1074
1074
|
};
|
|
1075
1075
|
|
|
1076
1076
|
const handleAspects = ({ aspectsAttributes, aspects, ev }) => {
|
|
1077
|
-
for (const { aspectName, params } of aspectsAttributes) {
|
|
1077
|
+
for (const { aspectName, params } of aspectsAttributes ?? []) {
|
|
1078
1078
|
aspects[aspectName ?? '']?.(ev, params);
|
|
1079
1079
|
}
|
|
1080
1080
|
};
|
|
@@ -1141,64 +1141,99 @@
|
|
|
1141
1141
|
useAspects._impl = impl;
|
|
1142
1142
|
};
|
|
1143
1143
|
|
|
1144
|
-
|
|
1144
|
+
function useBool(defaultValue = false) {
|
|
1145
|
+
const [value, setValue] = useState(defaultValue);
|
|
1146
|
+
const setTrue = useCallback(() => setValue(true), []);
|
|
1147
|
+
const setFalse = useCallback(() => setValue(false), []);
|
|
1148
|
+
const toggle = useCallback(() => setValue(_ => !_), []);
|
|
1149
|
+
return [value, { setValue, setTrue, setFalse, toggle }];
|
|
1150
|
+
}
|
|
1145
1151
|
|
|
1146
|
-
|
|
1147
|
-
|
|
1152
|
+
const objectValidator = (validatorsMap) => (o) => (o &&
|
|
1153
|
+
Object.entries(validatorsMap ?? {}).flatMap(([key, validator]) => validator ? validator(o[key]) : [])) ||
|
|
1154
|
+
[];
|
|
1155
|
+
|
|
1156
|
+
const isValidationSuccess = (info) => !info?.length;
|
|
1157
|
+
const validator = (predicate) => (message) => (_) => predicate(_) ? [] : [message];
|
|
1158
|
+
|
|
1159
|
+
const EMPTY_VALIDATORS_MAP = {};
|
|
1160
|
+
const NO_ERRORS = [];
|
|
1161
|
+
function useFormValidator(formState, formValidator) {
|
|
1162
|
+
const validatorsMap = useMemo(() => formValidator?.(formState) ?? EMPTY_VALIDATORS_MAP, [formValidator, formState]);
|
|
1163
|
+
const errors = useMemo(() => objectValidator(validatorsMap)(formState) ?? NO_ERRORS, [validatorsMap, formState]);
|
|
1164
|
+
const isValid = isValidationSuccess(errors);
|
|
1165
|
+
return [validatorsMap, { isValid, errors }];
|
|
1166
|
+
}
|
|
1167
|
+
|
|
1168
|
+
const shallowCompare = (a, b) => a && b && (a === b || Object.keys({ ...a, ...b }).every((key) => a[key] === b[key]));
|
|
1169
|
+
|
|
1170
|
+
function useNormalizedFormState(initialState, normalizer, onChange) {
|
|
1148
1171
|
const [formState, setFormStateUnsafe] = useState(initialState);
|
|
1149
|
-
const setFormState = useCallback(
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1172
|
+
const setFormState = useCallback((_) => setFormStateUnsafe((prevState) => {
|
|
1173
|
+
const rawState = _ instanceof Function ? _(prevState) : _;
|
|
1174
|
+
const normalizedState = normalizer ? normalizer(rawState) : rawState;
|
|
1175
|
+
const hasChangedWithNormalization = !shallowCompare(rawState, normalizedState);
|
|
1176
|
+
const nextState = hasChangedWithNormalization ? normalizedState : rawState;
|
|
1177
|
+
const hasChanged = !shallowCompare(prevState, nextState);
|
|
1178
|
+
if (hasChanged) {
|
|
1179
|
+
onChange?.(nextState);
|
|
1180
|
+
}
|
|
1181
|
+
return nextState;
|
|
1182
|
+
}), [normalizer, onChange]);
|
|
1157
1183
|
useEffect(() => {
|
|
1158
|
-
if (
|
|
1159
|
-
setFormStateUnsafe(
|
|
1160
|
-
}
|
|
1161
|
-
}, [
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1184
|
+
if (normalizer) {
|
|
1185
|
+
setFormStateUnsafe(normalizer);
|
|
1186
|
+
}
|
|
1187
|
+
}, [normalizer]);
|
|
1188
|
+
return [formState, setFormState];
|
|
1189
|
+
}
|
|
1190
|
+
|
|
1191
|
+
function useForm(initialState, { resetOnSubmit, formValidator, normalizer, onChange, onSubmit } = {}) {
|
|
1192
|
+
const [formState, setFormState] = useNormalizedFormState(initialState, normalizer, onChange);
|
|
1193
|
+
const [isDirtyForm, { setTrue: markAsDirty, setFalse: markAsClean }] = useBool(false);
|
|
1194
|
+
const dirtyFieldsMap = useRef({});
|
|
1195
|
+
const [fieldValidatorsMap, { isValid, errors }] = useFormValidator(formState, formValidator);
|
|
1196
|
+
const field = useCallback((fieldName, options = {}) => {
|
|
1197
|
+
const { parse, format, onChange: onFieldChange } = options;
|
|
1198
|
+
const value = formState[fieldName];
|
|
1199
|
+
const isDirty = isDirtyForm || dirtyFieldsMap.current?.[String(fieldName)];
|
|
1200
|
+
const fieldValidator = options?.validator ?? fieldValidatorsMap[fieldName];
|
|
1201
|
+
const fieldErrors = isDirty && fieldValidator ? fieldValidator(value) : [];
|
|
1166
1202
|
return {
|
|
1167
|
-
value: format(
|
|
1168
|
-
isDirty
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1203
|
+
value: format ? format(value) : value,
|
|
1204
|
+
isDirty,
|
|
1205
|
+
errors: fieldValidator && fieldErrors,
|
|
1206
|
+
error: fieldErrors[0],
|
|
1207
|
+
onChange: (_) => {
|
|
1208
|
+
dirtyFieldsMap.current ||= {};
|
|
1209
|
+
dirtyFieldsMap.current[String(fieldName)] = true;
|
|
1210
|
+
const fieldVal = parse ? parse(_) : _;
|
|
1211
|
+
onFieldChange?.(fieldVal);
|
|
1212
|
+
setFormState((prev) => ({ ...prev, [fieldName]: fieldVal }));
|
|
1172
1213
|
},
|
|
1173
1214
|
};
|
|
1174
|
-
}, [
|
|
1215
|
+
}, [formState, isDirtyForm, fieldValidatorsMap, setFormState]);
|
|
1175
1216
|
const update = useCallback((_) => {
|
|
1217
|
+
dirtyFieldsMap.current = _;
|
|
1176
1218
|
setFormState(_);
|
|
1177
|
-
|
|
1178
|
-
}, []);
|
|
1219
|
+
}, [setFormState]);
|
|
1179
1220
|
const reset = useCallback(() => {
|
|
1221
|
+
dirtyFieldsMap.current = {};
|
|
1222
|
+
markAsClean();
|
|
1180
1223
|
setFormState(initialState);
|
|
1181
|
-
|
|
1182
|
-
setDirtyFieldsMap({});
|
|
1183
|
-
}, [initialState]);
|
|
1224
|
+
}, [initialState, setFormState]);
|
|
1184
1225
|
const handleSubmit = useCallback((ev) => {
|
|
1185
1226
|
ev.preventDefault();
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
reset,
|
|
1197
|
-
onSubmit: handleSubmit,
|
|
1198
|
-
},
|
|
1199
|
-
];
|
|
1200
|
-
};
|
|
1201
|
-
const shellowCompare = (a, b) => a && b && Object.keys({ ...a, ...b }).every((key) => a[key] === b[key]);
|
|
1227
|
+
if (isValid) {
|
|
1228
|
+
resetOnSubmit && reset();
|
|
1229
|
+
onSubmit?.(formState, ev);
|
|
1230
|
+
}
|
|
1231
|
+
else {
|
|
1232
|
+
markAsDirty();
|
|
1233
|
+
}
|
|
1234
|
+
}, [resetOnSubmit, formState, isValid, reset, onSubmit]);
|
|
1235
|
+
return [formState, { errors, field, update, reset, onSubmit: handleSubmit }];
|
|
1236
|
+
}
|
|
1202
1237
|
|
|
1203
1238
|
const ApplicationFormLayout = JSX((props) => {
|
|
1204
1239
|
const { className, title, children, ...rest } = props;
|
|
@@ -1219,14 +1254,6 @@
|
|
|
1219
1254
|
|
|
1220
1255
|
const getConsentDataProcessing = (inputs) => inputs?.find((_) => _?.name === 'consentDataProcessing');
|
|
1221
1256
|
|
|
1222
|
-
function useBool(defaultValue = false) {
|
|
1223
|
-
const [value, setValue] = useState(defaultValue);
|
|
1224
|
-
const setTrue = useCallback(() => setValue(true), []);
|
|
1225
|
-
const setFalse = useCallback(() => setValue(false), []);
|
|
1226
|
-
const toggle = useCallback(() => setValue(_ => !_), []);
|
|
1227
|
-
return [value, { setValue, setTrue, setFalse, toggle }];
|
|
1228
|
-
}
|
|
1229
|
-
|
|
1230
1257
|
function useEventListener(target, type, listener, options) {
|
|
1231
1258
|
useEffect(() => {
|
|
1232
1259
|
if (!target || !listener) {
|
|
@@ -1250,6 +1277,7 @@
|
|
|
1250
1277
|
return targetRef;
|
|
1251
1278
|
}
|
|
1252
1279
|
|
|
1280
|
+
// TODO Базовая функицональность всех Control - надо вынести и привязать к required флагу
|
|
1253
1281
|
const getRequiredLabel = ({ label, errors }) => label && errors ? `${label}*` : label;
|
|
1254
1282
|
|
|
1255
1283
|
const noop = () => {
|
|
@@ -1550,182 +1578,6 @@
|
|
|
1550
1578
|
|
|
1551
1579
|
const SelectControl = JSX(({ className = '', label, error, errors, ...rest }) => (jsxs("div", { className: className, children: [jsx(Select, { ...rest, valid: !error, label: getRequiredLabel({ label, errors }) }), renderErrorText(error)] })));
|
|
1552
1580
|
|
|
1553
|
-
const getNamesFromInput = (inputs) => Object.values(inputs.filter((_) => _))?.map((_) => _.name);
|
|
1554
|
-
|
|
1555
|
-
const isValidationSuccess = (info) => !info?.length;
|
|
1556
|
-
const validator = (predicate) => (message) => (_) => predicate(_) ? [] : [message];
|
|
1557
|
-
|
|
1558
|
-
const required = validator((_) => _ !== null && _ !== undefined && _ !== '');
|
|
1559
|
-
|
|
1560
|
-
const ERROR_MESSAGE = 'Некорректно заполненное поле';
|
|
1561
|
-
const ADDRESS_ERROR_MESSAGE = 'Укажите регион, город/населенный пункт, улицу, дом';
|
|
1562
|
-
const MIN_AGE = 23;
|
|
1563
|
-
const MAX_AGE = 75;
|
|
1564
|
-
const AGE_ERROR_MESSAGE = 'Допустимый возраст заёмщика - от 23 до 75 лет';
|
|
1565
|
-
const defaultValidator = (errorMsg) => required(errorMsg ?? ERROR_MESSAGE);
|
|
1566
|
-
const defaultSelectValidator = (errorMsg) => validator((_) => _?.key && _?.key !== '')(errorMsg ?? ERROR_MESSAGE);
|
|
1567
|
-
const jobNumberValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 0 && _.length <= 2)(errorMsg ?? ERROR_MESSAGE);
|
|
1568
|
-
const nameValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 1 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE);
|
|
1569
|
-
const lengthStringValidator = (inputLength, errorMsg) => validator((_) => typeof _ === 'string' && _.length >= 1 && _.length <= inputLength)(errorMsg ?? ERROR_MESSAGE);
|
|
1570
|
-
const serieValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 4)(errorMsg);
|
|
1571
|
-
const numberValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 6)(errorMsg);
|
|
1572
|
-
const innValidator = (errorMsg) => validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
|
|
1573
|
-
const phoneValidate = (email) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
|
|
1574
|
-
const phoneValidator = (errorMsg) => validator(phoneValidate)(errorMsg);
|
|
1575
|
-
const agreementValidator = validator((_) => typeof _ === 'boolean' && _)('Согласие обязательно');
|
|
1576
|
-
const snilsValidate = (snils) => {
|
|
1577
|
-
const snl = String(snils).replace(/[^0-9]+/g, '');
|
|
1578
|
-
if (snl.length === 11) {
|
|
1579
|
-
let checksum = 0;
|
|
1580
|
-
for (let i = 0; i < 9; i++) {
|
|
1581
|
-
checksum += parseInt(snl.charAt(i)) * (9 - i);
|
|
1582
|
-
}
|
|
1583
|
-
if (checksum > 101) {
|
|
1584
|
-
checksum = checksum % 101;
|
|
1585
|
-
}
|
|
1586
|
-
if (checksum === 100 || checksum === 101) {
|
|
1587
|
-
checksum = 0;
|
|
1588
|
-
}
|
|
1589
|
-
return checksum === parseInt(snl.substr(9));
|
|
1590
|
-
}
|
|
1591
|
-
return false;
|
|
1592
|
-
};
|
|
1593
|
-
const snilsValidator = (errorMsg) => validator(snilsValidate)(errorMsg);
|
|
1594
|
-
const emailValidate = (email) => /^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,4}$/.test(email);
|
|
1595
|
-
const emailValidator = (errorMsg) => validator((_) => emailValidate(_))(errorMsg);
|
|
1596
|
-
const addressDaDataValidate = (address) => Boolean(address.region && address.city && address.house);
|
|
1597
|
-
const addressDaDataValidator = () => validator(addressDaDataValidate)(ADDRESS_ERROR_MESSAGE);
|
|
1598
|
-
const addressOrganizationValidator = () => validator((address) => Boolean(address.fiasCode && address.city && address.house))(ADDRESS_ERROR_MESSAGE);
|
|
1599
|
-
const codeWordValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length >= 3 && _.length <= 21 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE);
|
|
1600
|
-
const cyrillicPattern = /^[\u0400-\u04FF\d\s]+$/u;
|
|
1601
|
-
const isCyrillic = (_ = '') => cyrillicPattern.test(_);
|
|
1602
|
-
const limitedBirthdayValidate = (date) => {
|
|
1603
|
-
const today = new Date();
|
|
1604
|
-
const minDate = new Date(today.getFullYear() - MIN_AGE, today.getMonth(), today.getDate());
|
|
1605
|
-
const maxDate = new Date(today.getFullYear() - MAX_AGE, today.getMonth(), today.getDate());
|
|
1606
|
-
if (!date || date > minDate || date < maxDate) {
|
|
1607
|
-
return false;
|
|
1608
|
-
}
|
|
1609
|
-
return true;
|
|
1610
|
-
};
|
|
1611
|
-
const limitedBirthdayValidator = () => validator(limitedBirthdayValidate)(AGE_ERROR_MESSAGE);
|
|
1612
|
-
|
|
1613
|
-
const validatorConsentsObj = {
|
|
1614
|
-
processPersonalDataFlg: agreementValidator,
|
|
1615
|
-
consentProviderFlg: agreementValidator,
|
|
1616
|
-
consentInformFlg: agreementValidator,
|
|
1617
|
-
consentPfrFlg: agreementValidator,
|
|
1618
|
-
consentOthersFlg: agreementValidator,
|
|
1619
|
-
};
|
|
1620
|
-
const validatorCreditCardObj = {
|
|
1621
|
-
addressCourier: addressDaDataValidator(),
|
|
1622
|
-
paymentSystem: defaultValidator('Укажите тип платежной системы'),
|
|
1623
|
-
currency: defaultValidator('Укажите валюту'),
|
|
1624
|
-
cardCategory: defaultValidator('Укажите категорию карты'),
|
|
1625
|
-
codeWord: codeWordValidator('Необходимо ввести кодовое слово'),
|
|
1626
|
-
confirmationIncome: defaultSelectValidator(),
|
|
1627
|
-
methodObtain: defaultValidator(),
|
|
1628
|
-
deliveryDate: defaultValidator('Укажите дату доставки'),
|
|
1629
|
-
};
|
|
1630
|
-
const validatorRetailObj = {
|
|
1631
|
-
organization: defaultSelectValidator('Выберите тип организации'),
|
|
1632
|
-
organizationAddress: addressOrganizationValidator(),
|
|
1633
|
-
organizationPhone: phoneValidator('Укажите номер телефона'),
|
|
1634
|
-
organizationName: defaultValidator('Укажите наименование организации'),
|
|
1635
|
-
legalForm: defaultValidator('Укажите ОПФ'),
|
|
1636
|
-
generalSeniority: jobNumberValidator('Укажите количество лет стажа'),
|
|
1637
|
-
lastJobExperience: jobNumberValidator('Укажите стаж на последнем месте работы'),
|
|
1638
|
-
experience5Years: jobNumberValidator('Укажите общий стаж за последние 5 лет'),
|
|
1639
|
-
jobsNumber: jobNumberValidator('Укажите количество мест работы за последние 5 лет'),
|
|
1640
|
-
beginDate: defaultValidator('Укажите дату заключения трудового договора'),
|
|
1641
|
-
addressFact: addressDaDataValidator(),
|
|
1642
|
-
addressRegistration: addressDaDataValidator(),
|
|
1643
|
-
addressRetail: defaultSelectValidator('Выберите адрес банка'),
|
|
1644
|
-
addressMatch: defaultValidator(),
|
|
1645
|
-
sex: defaultValidator('Укажите свой пол'),
|
|
1646
|
-
limitedBirthday: limitedBirthdayValidator(),
|
|
1647
|
-
birthPlace: defaultValidator('Укажите место рождения'),
|
|
1648
|
-
education: defaultSelectValidator('Выберите ваше образование'),
|
|
1649
|
-
housing: defaultSelectValidator('Выберите тип жилья'),
|
|
1650
|
-
amountWorkers: defaultSelectValidator('Выберите информацию о количестве сотрудников'),
|
|
1651
|
-
employment: defaultSelectValidator('Выберите информацию о трудоустройстве'),
|
|
1652
|
-
employerActivities: defaultSelectValidator('Выберите вид деятельности организации'),
|
|
1653
|
-
employerOrganization: defaultSelectValidator('Выберите вид организации'),
|
|
1654
|
-
positionOrganization: defaultSelectValidator('Выберите вашу должность'),
|
|
1655
|
-
familyStatus: defaultSelectValidator('Выберите семейное положение'),
|
|
1656
|
-
familyMembers: lengthStringValidator(2, 'Укажите количество членов семьи'),
|
|
1657
|
-
children: lengthStringValidator(2, 'Укажите количество детей'),
|
|
1658
|
-
dependents: lengthStringValidator(2, 'Укажите количество иждивенцев'),
|
|
1659
|
-
totalIncome: lengthStringValidator(19, 'Укажите среднемесячный доход от основной зарплаты'),
|
|
1660
|
-
expenses: lengthStringValidator(10, 'Укажите сумму обязательных выплат'),
|
|
1661
|
-
snils: snilsValidator('Некорректный номер СНИЛС'),
|
|
1662
|
-
conscription: defaultValidator(),
|
|
1663
|
-
armyIdFlg: agreementValidator,
|
|
1664
|
-
dulSerie: serieValidator('Укажите серию паспорта'),
|
|
1665
|
-
dulNumber: numberValidator('Укажите номер паспорта'),
|
|
1666
|
-
dulIssueDateField: defaultValidator('Укажите дату выдачи паспорта'),
|
|
1667
|
-
dulSubdivisionCode: numberValidator('Укажите код подразделения'),
|
|
1668
|
-
dulIssuedBy: defaultValidator('Укажите организацию, выдавшую паспорт'),
|
|
1669
|
-
participantDateRegistration: defaultValidator('Укажите дату регистрации'),
|
|
1670
|
-
retirementIncome: defaultValidator(),
|
|
1671
|
-
otherIncome: defaultValidator(),
|
|
1672
|
-
wages: defaultValidator(),
|
|
1673
|
-
mandatoryPayments: defaultValidator(),
|
|
1674
|
-
disablePeopleFlg: defaultValidator(),
|
|
1675
|
-
bankruptcyFlg: defaultValidator(),
|
|
1676
|
-
shareholderFlg: defaultValidator(),
|
|
1677
|
-
legalEntityName: defaultValidator(),
|
|
1678
|
-
bankEmployeeCode: defaultValidator(),
|
|
1679
|
-
partInBusiness: defaultValidator(),
|
|
1680
|
-
regionRetail: defaultSelectValidator('Выберите регион'),
|
|
1681
|
-
};
|
|
1682
|
-
const validatorObj = {
|
|
1683
|
-
fullName: defaultValidator(),
|
|
1684
|
-
addressBranch: defaultSelectValidator(),
|
|
1685
|
-
desiredMeetingDate: defaultValidator(),
|
|
1686
|
-
product: defaultValidator(),
|
|
1687
|
-
localities: defaultValidator(),
|
|
1688
|
-
partnerComments: defaultValidator(),
|
|
1689
|
-
collectionCount: defaultValidator(),
|
|
1690
|
-
acquiringType: defaultSelectValidator(),
|
|
1691
|
-
serviceType: defaultSelectValidator(),
|
|
1692
|
-
annualRevenue: defaultValidator(),
|
|
1693
|
-
feedbackMethod: defaultSelectValidator(),
|
|
1694
|
-
serviceDirection: defaultSelectValidator(),
|
|
1695
|
-
secondaryPhone: phoneValidator('Укажите номер телефона'),
|
|
1696
|
-
region: defaultSelectValidator(),
|
|
1697
|
-
surname: nameValidator('Укажите свою фамилию'),
|
|
1698
|
-
name: nameValidator('Укажите своё имя'),
|
|
1699
|
-
middleName: nameValidator('Укажите своё отчество'),
|
|
1700
|
-
birthday: defaultValidator('Укажите дату рождения'),
|
|
1701
|
-
phone: phoneValidator('Укажите номер телефона'),
|
|
1702
|
-
email: emailValidator('Укажите электронную почту'),
|
|
1703
|
-
inn: innValidator('Укажите ИНН'),
|
|
1704
|
-
comment: defaultValidator(),
|
|
1705
|
-
typeForm: defaultValidator(),
|
|
1706
|
-
consentToReceiveMaterials: agreementValidator,
|
|
1707
|
-
consentDataProcessing: agreementValidator,
|
|
1708
|
-
...validatorConsentsObj,
|
|
1709
|
-
...validatorRetailObj,
|
|
1710
|
-
...validatorCreditCardObj,
|
|
1711
|
-
};
|
|
1712
|
-
const getObjectValidator = (inputs) => {
|
|
1713
|
-
const requiredInputs = getNamesFromInput(inputs.filter((_) => Boolean(_?.required)));
|
|
1714
|
-
return Object.fromEntries(requiredInputs.map((_) => [_, validatorObj?.[_ || '']]).filter(([, validator]) => validator));
|
|
1715
|
-
};
|
|
1716
|
-
|
|
1717
|
-
const withValidator = (props, validator) => {
|
|
1718
|
-
const { value, isDirty } = props;
|
|
1719
|
-
const errors = isDirty ? validator(value) : [];
|
|
1720
|
-
return {
|
|
1721
|
-
...props,
|
|
1722
|
-
errors,
|
|
1723
|
-
error: errors[0],
|
|
1724
|
-
};
|
|
1725
|
-
};
|
|
1726
|
-
|
|
1727
|
-
const getValidation = (field, validator, required = false) => required && validator ? withValidator(field, validator) : field;
|
|
1728
|
-
|
|
1729
1581
|
const ACQUIRING_TYPES = [
|
|
1730
1582
|
{
|
|
1731
1583
|
text: 'Торговый эквайринг',
|
|
@@ -1744,7 +1596,7 @@
|
|
|
1744
1596
|
key: 'all',
|
|
1745
1597
|
},
|
|
1746
1598
|
];
|
|
1747
|
-
const AcquiringField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433", options: ACQUIRING_TYPES, ...
|
|
1599
|
+
const AcquiringField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0412\u0438\u0434 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433\u0430", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044D\u043A\u0432\u0430\u0439\u0440\u0438\u043D\u0433", options: ACQUIRING_TYPES, ...field(input?.name ?? '') })));
|
|
1748
1600
|
const isAcquiringTrade = (key = '') => Boolean(key === 'trade' || key === 'all');
|
|
1749
1601
|
|
|
1750
1602
|
const isFilled = (_) => _ !== null && _ !== undefined;
|
|
@@ -1849,7 +1701,7 @@
|
|
|
1849
1701
|
return (jsx(SelectControl, { label: "\u041E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", options: (addressBranch || []).map(({ address = '' }) => ({
|
|
1850
1702
|
key: address,
|
|
1851
1703
|
text: address,
|
|
1852
|
-
})), ...
|
|
1704
|
+
})), ...field(input?.name ?? ''), isSearch: true }));
|
|
1853
1705
|
});
|
|
1854
1706
|
|
|
1855
1707
|
const useNormalizedInput = (props, { normalize, format }) => {
|
|
@@ -1913,11 +1765,11 @@
|
|
|
1913
1765
|
const MIN_CREDIT_AMOUNT = 1000;
|
|
1914
1766
|
const MAX_CREDIT_AMOUNT = 1000000000;
|
|
1915
1767
|
const ITEMS_CREDIT_AMOUNT = ['От 1 000 ₽', 'До 1 000 000 000 ₽'];
|
|
1916
|
-
const AmountField = JSX(({ field }) => (jsx(InputRange, { title: "\u0421\u0443\u043C\u043C\u0430, \u20BD", items: ITEMS_CREDIT_AMOUNT, min: MIN_CREDIT_AMOUNT, max: MAX_CREDIT_AMOUNT, ...field('
|
|
1768
|
+
const AmountField = JSX(({ field, input }) => (jsx(InputRange, { title: "\u0421\u0443\u043C\u043C\u0430, \u20BD", items: ITEMS_CREDIT_AMOUNT, min: MIN_CREDIT_AMOUNT, max: MAX_CREDIT_AMOUNT, ...field(input?.name ?? '') })));
|
|
1917
1769
|
|
|
1918
|
-
const AnnualRevenueField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0413\u043E\u0434\u043E\u0432\u0430\u044F \u0432\u044B\u0440\u0443\u0447\u043A\u0430, \u20BD", ...
|
|
1770
|
+
const AnnualRevenueField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0413\u043E\u0434\u043E\u0432\u0430\u044F \u0432\u044B\u0440\u0443\u0447\u043A\u0430, \u20BD", ...field(input?.name ?? '') })));
|
|
1919
1771
|
|
|
1920
|
-
const BankEmpoleeField = JSX(({ field }) => (jsx(InputControl, { label: "\u0424\u0418\u041E \u0438\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u043E\u0441\u0442\u044C \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u0432\u0448\u0435\u0433\u043E \u0412\u0430\u0441 \u0441\u043E\u0442\u0440\u0443\u0434\u043D\u0438\u043A\u0430 \u0411\u0430\u043D\u043A\u0430", ...field('
|
|
1772
|
+
const BankEmpoleeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E \u0438\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u043E\u0441\u0442\u044C \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u0432\u0448\u0435\u0433\u043E \u0412\u0430\u0441 \u0441\u043E\u0442\u0440\u0443\u0434\u043D\u0438\u043A\u0430 \u0411\u0430\u043D\u043A\u0430", ...field(input?.name ?? '') })));
|
|
1921
1773
|
|
|
1922
1774
|
const useElementSpace = (ref, heightEl) => {
|
|
1923
1775
|
const [spaceAbove, setSpaceAbove] = useState(false);
|
|
@@ -2210,11 +2062,11 @@
|
|
|
2210
2062
|
|
|
2211
2063
|
const DatePickerControl = JSX(({ className, label, error, errors, ...rest }) => (jsxs("div", { className: style('shrink-0 w-full', className), children: [jsx(DatePicker, { label: getRequiredLabel({ label, errors }), valid: Boolean(!error), ...rest }), renderErrorText(error)] })));
|
|
2212
2064
|
|
|
2213
|
-
const BirthdayField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...
|
|
2065
|
+
const BirthdayField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...field(input?.name ?? '') })));
|
|
2214
2066
|
|
|
2215
|
-
const CollectionCountField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432 \u0438\u043D\u043A\u0430\u0441\u0441\u0430\u0446\u0438\u0438", isInteger: true, ...
|
|
2067
|
+
const CollectionCountField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043E\u0432 \u0438\u043D\u043A\u0430\u0441\u0441\u0430\u0446\u0438\u0438", isInteger: true, ...field(input?.name ?? '') })));
|
|
2216
2068
|
|
|
2217
|
-
const CommentField = JSX(({ field, input }) => (jsx(InputControl, { className: "col-span-2", ...
|
|
2069
|
+
const CommentField = JSX(({ field, input }) => (jsx(InputControl, { className: "col-span-2", ...field(input?.name ?? ''), placeholder: "\u0412\u0430\u0448\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435", isTextarea: true })));
|
|
2218
2070
|
|
|
2219
2071
|
const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
|
|
2220
2072
|
return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", className: className, viewBox: viewBox, fill: fill, width: width, height: height, children: paths.map(({ d, fill: pathFill, ...options }, i) => {
|
|
@@ -2249,14 +2101,12 @@
|
|
|
2249
2101
|
const role = (isRadio = false) => (isRadio ? 'radio' : 'checkbox');
|
|
2250
2102
|
const checkboxStyle = (value = false) => style('rounded border', { 'bg-primary-main': value });
|
|
2251
2103
|
|
|
2252
|
-
const
|
|
2253
|
-
const ConsentToReceiveMaterialsField = JSX(({ field, input }) => (jsx(Checkbox, { text: "\u0421\u043E\u0433\u043B\u0430\u0441\u0435\u043D \u043D\u0430 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445 \u0438 \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u043E\u0432 \u043F\u043E \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u0435", ...getValidation(field(FIELD_NAME$c), validatorObj[FIELD_NAME$c], input?.required) })));
|
|
2104
|
+
const ConsentToReceiveMaterialsField = JSX(({ field, input }) => (jsx(Checkbox, { text: "\u0421\u043E\u0433\u043B\u0430\u0441\u0435\u043D \u043D\u0430 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u0435 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u044B\u0445 \u0438 \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u043E\u0432 \u043F\u043E \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u0435", ...field(input?.name ?? '') })));
|
|
2254
2105
|
|
|
2255
|
-
const DesiredMeetingDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0434\u0430\u0442\u0430 \u0432\u0441\u0442\u0440\u0435\u0447\u0438", ...
|
|
2106
|
+
const DesiredMeetingDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0434\u0430\u0442\u0430 \u0432\u0441\u0442\u0440\u0435\u0447\u0438", ...field(input?.name ?? '') })));
|
|
2256
2107
|
|
|
2257
2108
|
const EmailField = JSX(({ field, input }) => {
|
|
2258
|
-
|
|
2259
|
-
return (jsx(InputControl, { label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...getValidation(field('email'), validatorObj.email, required), ...rest }));
|
|
2109
|
+
return jsx(InputControl, { label: "\u042D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u0430\u044F \u043F\u043E\u0447\u0442\u0430", ...field(input?.name ?? ''), ...input });
|
|
2260
2110
|
});
|
|
2261
2111
|
|
|
2262
2112
|
const SERVICE_TYPES = [{ key: 'ULTRASERVICE', text: 'Ультра' }];
|
|
@@ -2269,9 +2119,9 @@
|
|
|
2269
2119
|
{ key: 'email', text: 'Электронное сообщение' },
|
|
2270
2120
|
];
|
|
2271
2121
|
|
|
2272
|
-
const FeedbackMethodField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u043E\u0442\u0432\u0435\u0442\u0430", options: FEEDBACK_METHOD, ...
|
|
2122
|
+
const FeedbackMethodField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0421\u043F\u043E\u0441\u043E\u0431 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F \u043E\u0442\u0432\u0435\u0442\u0430", options: FEEDBACK_METHOD, ...field(input?.name ?? '') })));
|
|
2273
2123
|
|
|
2274
|
-
const FullNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E", ...
|
|
2124
|
+
const FullNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E", ...field(input?.name ?? ''), ...input })));
|
|
2275
2125
|
|
|
2276
2126
|
function copy(source, target) {
|
|
2277
2127
|
for (const [k, v] of source.entries()) {
|
|
@@ -2549,7 +2399,7 @@
|
|
|
2549
2399
|
qcHouse: '',
|
|
2550
2400
|
});
|
|
2551
2401
|
}, []);
|
|
2552
|
-
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, fieldName), label: "\u0410\u0434\u0440\u0435\u0441", ...
|
|
2402
|
+
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, fieldName), label: "\u0410\u0434\u0440\u0435\u0441", ...field(fieldName), value: fieldValue?.fullAddress, onChange: onChange, ...input, onDaDataChange: onDaDataChange }));
|
|
2553
2403
|
});
|
|
2554
2404
|
const getAddressFromDaDataItem = (item) => ({
|
|
2555
2405
|
apartment: item?.data?.flat,
|
|
@@ -2595,12 +2445,12 @@
|
|
|
2595
2445
|
field?.('organizationName')?.onChange?.(item.data?.name?.short_with_opf);
|
|
2596
2446
|
updateOrganizationFields(store, field, item);
|
|
2597
2447
|
}, []);
|
|
2598
|
-
return (jsx(InputControl, { label: "\u0418\u041D\u041D", isInteger: true, maxLength: 12, ...input, ...
|
|
2448
|
+
return (jsx(InputControl, { label: "\u0418\u041D\u041D", isInteger: true, maxLength: 12, ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange }));
|
|
2599
2449
|
});
|
|
2600
2450
|
|
|
2601
2451
|
const CheckboxWithError = JSX(({ className, text, value, key, disabled, error, onChange }) => (jsxs("div", { className: style('shrink-0', className), children: [jsx(Checkbox, { text: text, value: value, disabled: disabled, onChange: onChange }, key), renderErrorText(error)] })));
|
|
2602
2452
|
|
|
2603
|
-
const IsClientField = JSX(({ field }) => (jsx(CheckboxWithError, { ...field('
|
|
2453
|
+
const IsClientField = JSX(({ field, input }) => (jsx(CheckboxWithError, { ...field(input?.name ?? ''), text: '\u042F\u0432\u043B\u044F\u044E\u0441\u044C \u043A\u043B\u0438\u0435\u043D\u0442\u043E\u043C \u0431\u0430\u043D\u043A\u0430 \u0410\u041E "\u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A"' })));
|
|
2604
2454
|
|
|
2605
2455
|
const OUT_SERVICE_BASE_URL = `${API_BASE_URI}/outservice`;
|
|
2606
2456
|
const EMPTY_REGIONS$1 = [];
|
|
@@ -2613,30 +2463,24 @@
|
|
|
2613
2463
|
const fieldRegion = field('region');
|
|
2614
2464
|
const regionKey = fieldRegion?.value?.key;
|
|
2615
2465
|
const { data: regions } = useAsyncData('outServiceRegions', getOutServiceRegions);
|
|
2616
|
-
const localities = regions
|
|
2617
|
-
?.find((_) => _.code === regionKey)
|
|
2618
|
-
?.localities?.map((_) => ({ key: _, text: _ }));
|
|
2466
|
+
const localities = useMemo(() => regions?.find((_) => _.code === regionKey)?.localities?.map((_) => ({ key: _, text: _ })), [regions, regionKey]);
|
|
2619
2467
|
useEffect(() => {
|
|
2620
2468
|
if (regionKey !== '') {
|
|
2621
|
-
field?.('
|
|
2469
|
+
field?.(input?.name ?? '')?.onChange?.('');
|
|
2622
2470
|
}
|
|
2623
|
-
}, [regionKey]);
|
|
2624
|
-
return (jsx(SelectControl, { label: "\u041D\u0430\u0441\u0435\u043B\u0435\u043D\u043D\u044B\u0439 \u043F\u0443\u043D\u043A\u0442", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u043E\u0440\u043E\u0434, \u0433\u0434\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u0441\u0435\u0440\u0432\u0438\u0441", options: localities, ...
|
|
2471
|
+
}, [regionKey, input?.name ?? '']);
|
|
2472
|
+
return (jsx(SelectControl, { label: "\u041D\u0430\u0441\u0435\u043B\u0435\u043D\u043D\u044B\u0439 \u043F\u0443\u043D\u043A\u0442", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u043E\u0440\u043E\u0434, \u0433\u0434\u0435 \u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D \u0441\u0435\u0440\u0432\u0438\u0441", options: localities, ...field(input?.name ?? ''), isSearch: true }));
|
|
2625
2473
|
});
|
|
2626
2474
|
|
|
2627
|
-
const
|
|
2628
|
-
const MiddleNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0442\u0447\u0435\u0441\u0442\u0432\u043E (\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E, \u043F\u0440\u0438 \u043D\u0430\u043B\u0438\u0447\u0438\u0438)", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$b), ...getValidation(field(FIELD_NAME$b), validatorObj.middleName, input?.required), ...input })));
|
|
2475
|
+
const MiddleNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0442\u0447\u0435\u0441\u0442\u0432\u043E (\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E, \u043F\u0440\u0438 \u043D\u0430\u043B\u0438\u0447\u0438\u0438)", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? ''), ...field(input?.name ?? ''), ...input })));
|
|
2629
2476
|
|
|
2630
|
-
const NameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0418\u043C\u044F", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), ...
|
|
2477
|
+
const NameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0418\u043C\u044F", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), ...field(input?.name ?? ''), ...input })));
|
|
2631
2478
|
|
|
2632
2479
|
const SlideCheckbox = JSX(({ value = false, text, type = 'checkbox', onChange }) => (jsxs("div", { role: type, "aria-checked": value, className: "flex justify-start items-center w-full cursor-pointer mb-s", onClick: () => onChange && onChange(!value), children: [jsx("div", { className: style('relative flex-shrink-0 duration-300 w-9 h-5 mr-s rounded-2xl', value ? 'bg-primary-main' : 'bg-main-divider'), children: jsx("div", { className: style('absolute opacity-80 duration-500 top-0.5 w-4 h-4 bg-white rounded-full', value ? 'left-1/2' : 'left-[5%]') }) }), text ? (jsx(Text, { size: "text-l", font: "font-light", color: "text-primary-text", children: text })) : null] })));
|
|
2633
2480
|
|
|
2634
|
-
const OnlineCheckoutField = JSX(({ field }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", ...field('
|
|
2481
|
+
const OnlineCheckoutField = JSX(({ field, input }) => isAcquiringTrade(field('acquiringType')?.value?.key) ? (jsx(SlideCheckbox, { type: "radio", text: "\u0425\u043E\u0447\u0443 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0430\u0441\u0441\u0443", ...field(input?.name ?? '') })) : null);
|
|
2635
2482
|
|
|
2636
|
-
const PartnerCommentsField = JSX(({ field, input }) => {
|
|
2637
|
-
const { required, ...rest } = input;
|
|
2638
|
-
return (jsx(InputControl, { ...getValidation(field('partnerComments'), validatorObj.partnerComments, required), placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441", isTextarea: true, ...rest }));
|
|
2639
|
-
});
|
|
2483
|
+
const PartnerCommentsField = JSX(({ field, input }) => (jsx(InputControl, { ...field(input?.name ?? ''), placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441", isTextarea: true, ...input })));
|
|
2640
2484
|
|
|
2641
2485
|
const isPlaceholder = (_) => _ === '_';
|
|
2642
2486
|
const isDigit = (_) => /\d/.test(_);
|
|
@@ -2666,12 +2510,12 @@
|
|
|
2666
2510
|
|
|
2667
2511
|
const PhoneField = JSX(({ field, input }) => {
|
|
2668
2512
|
const fieldName = input?.name || 'phone';
|
|
2669
|
-
return (jsx(InputPhoneControl, { label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...
|
|
2513
|
+
return (jsx(InputPhoneControl, { label: "\u0422\u0435\u043B\u0435\u0444\u043E\u043D", ...field(fieldName), disabled: input?.filledByEsia && isEsiaAuthorize(field, fieldName), ...input }));
|
|
2670
2514
|
});
|
|
2671
2515
|
|
|
2672
2516
|
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);
|
|
2673
2517
|
|
|
2674
|
-
const ProductField = JSX(({ field, source }) => (jsx(SelectControl, { placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u0440\u043E\u0434\u0443\u043A\u0442", label: "\u041F\u0440\u043E\u0434\u0443\u043A\u0442", options: arrayToOptions(source?.productList), ...
|
|
2518
|
+
const ProductField = JSX(({ field, input, source }) => (jsx(SelectControl, { placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043F\u0440\u043E\u0434\u0443\u043A\u0442", label: "\u041F\u0440\u043E\u0434\u0443\u043A\u0442", options: arrayToOptions(source?.productList), ...field(input?.name ?? '') })));
|
|
2675
2519
|
const arrayToOptions = (array) => (array ?? []).map((_) => ({ key: _, value: _ }));
|
|
2676
2520
|
|
|
2677
2521
|
const REGIONS_URL = `${API_BASE_URI}/regions`;
|
|
@@ -2688,7 +2532,7 @@
|
|
|
2688
2532
|
const RegionField = JSX(({ field, input, params }) => {
|
|
2689
2533
|
const url = getRegionUrl(params?.typeForm);
|
|
2690
2534
|
const regions = useRegions(url);
|
|
2691
|
-
return (jsx(SelectControl, { label: "\u0424\u0438\u043B\u0438\u0430\u043B", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0438\u043B\u0438\u0430\u043B", isSearch: true, options: useMemo(() => regions?.map(({ code = '', name = '' }) => ({ key: code, text: name })), [regions]), ...
|
|
2535
|
+
return (jsx(SelectControl, { label: "\u0424\u0438\u043B\u0438\u0430\u043B", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0438\u043B\u0438\u0430\u043B", isSearch: true, options: useMemo(() => regions?.map(({ code = '', name = '' }) => ({ key: code, text: name })), [regions]), ...field(input?.name ?? '') }));
|
|
2692
2536
|
});
|
|
2693
2537
|
|
|
2694
2538
|
const RegionPremiumField = JSX(({ field, input }) => {
|
|
@@ -2697,9 +2541,191 @@
|
|
|
2697
2541
|
key: region,
|
|
2698
2542
|
text: region,
|
|
2699
2543
|
})), [branchByRegions]);
|
|
2700
|
-
return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions, ...
|
|
2544
|
+
return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions, ...field(input?.name ?? '') }));
|
|
2701
2545
|
});
|
|
2702
2546
|
|
|
2547
|
+
const withValidator = (props, validator) => {
|
|
2548
|
+
const { value, isDirty } = props;
|
|
2549
|
+
const errors = isDirty ? validator(value) : [];
|
|
2550
|
+
return {
|
|
2551
|
+
...props,
|
|
2552
|
+
errors,
|
|
2553
|
+
error: errors[0],
|
|
2554
|
+
};
|
|
2555
|
+
};
|
|
2556
|
+
|
|
2557
|
+
const required = validator((_) => _ !== null && _ !== undefined && _ !== '');
|
|
2558
|
+
|
|
2559
|
+
const ERROR_MESSAGE = 'Некорректно заполненное поле';
|
|
2560
|
+
const ADDRESS_ERROR_MESSAGE = 'Укажите регион, город/населенный пункт, улицу, дом';
|
|
2561
|
+
const MIN_AGE = 23;
|
|
2562
|
+
const MAX_AGE = 75;
|
|
2563
|
+
const AGE_ERROR_MESSAGE = 'Допустимый возраст заёмщика - от 23 до 75 лет';
|
|
2564
|
+
const defaultValidator = (errorMsg) => required(errorMsg ?? ERROR_MESSAGE);
|
|
2565
|
+
const defaultSelectValidator = (errorMsg) => validator((_) => _?.key && _?.key !== '')(errorMsg ?? ERROR_MESSAGE);
|
|
2566
|
+
const jobNumberValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 0 && _.length <= 2)(errorMsg ?? ERROR_MESSAGE);
|
|
2567
|
+
const nameValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 1 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE);
|
|
2568
|
+
const lengthStringValidator = (inputLength, errorMsg) => validator((_) => typeof _ === 'string' && _.length >= 1 && _.length <= inputLength)(errorMsg ?? ERROR_MESSAGE);
|
|
2569
|
+
const serieValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 4)(errorMsg);
|
|
2570
|
+
const numberValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length === 6)(errorMsg);
|
|
2571
|
+
const innValidator = (errorMsg) => validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
|
|
2572
|
+
const phoneValidate = (email) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
|
|
2573
|
+
const phoneValidator = (errorMsg) => validator(phoneValidate)(errorMsg);
|
|
2574
|
+
const agreementValidator = validator((_) => typeof _ === 'boolean' && _)('Согласие обязательно');
|
|
2575
|
+
const snilsValidate = (snils) => {
|
|
2576
|
+
const snl = String(snils).replace(/[^0-9]+/g, '');
|
|
2577
|
+
if (snl.length === 11) {
|
|
2578
|
+
let checksum = 0;
|
|
2579
|
+
for (let i = 0; i < 9; i++) {
|
|
2580
|
+
checksum += parseInt(snl.charAt(i)) * (9 - i);
|
|
2581
|
+
}
|
|
2582
|
+
if (checksum > 101) {
|
|
2583
|
+
checksum = checksum % 101;
|
|
2584
|
+
}
|
|
2585
|
+
if (checksum === 100 || checksum === 101) {
|
|
2586
|
+
checksum = 0;
|
|
2587
|
+
}
|
|
2588
|
+
return checksum === parseInt(snl.substr(9));
|
|
2589
|
+
}
|
|
2590
|
+
return false;
|
|
2591
|
+
};
|
|
2592
|
+
const snilsValidator = (errorMsg) => validator(snilsValidate)(errorMsg);
|
|
2593
|
+
const emailValidate = (email) => /^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,4}$/.test(email);
|
|
2594
|
+
const emailValidator = (errorMsg) => validator((_) => emailValidate(_))(errorMsg);
|
|
2595
|
+
const addressDaDataValidate = (address) => Boolean(address.region && address.city && address.house);
|
|
2596
|
+
const addressDaDataValidator = () => validator(addressDaDataValidate)(ADDRESS_ERROR_MESSAGE);
|
|
2597
|
+
const addressOrganizationValidator = () => validator((address) => Boolean(address.fiasCode && address.city && address.house))(ADDRESS_ERROR_MESSAGE);
|
|
2598
|
+
const codeWordValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length >= 3 && _.length <= 21 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE);
|
|
2599
|
+
const cyrillicPattern = /^[\u0400-\u04FF\d\s]+$/u;
|
|
2600
|
+
const isCyrillic = (_ = '') => cyrillicPattern.test(_);
|
|
2601
|
+
const limitedBirthdayValidate = (date) => {
|
|
2602
|
+
const today = new Date();
|
|
2603
|
+
const minDate = new Date(today.getFullYear() - MIN_AGE, today.getMonth(), today.getDate());
|
|
2604
|
+
const maxDate = new Date(today.getFullYear() - MAX_AGE, today.getMonth(), today.getDate());
|
|
2605
|
+
if (!date || date > minDate || date < maxDate) {
|
|
2606
|
+
return false;
|
|
2607
|
+
}
|
|
2608
|
+
return true;
|
|
2609
|
+
};
|
|
2610
|
+
const limitedBirthdayValidator = () => validator(limitedBirthdayValidate)(AGE_ERROR_MESSAGE);
|
|
2611
|
+
|
|
2612
|
+
const validatorConsentsObj = {
|
|
2613
|
+
processPersonalDataFlg: agreementValidator,
|
|
2614
|
+
consentProviderFlg: agreementValidator,
|
|
2615
|
+
consentInformFlg: agreementValidator,
|
|
2616
|
+
consentPfrFlg: agreementValidator,
|
|
2617
|
+
consentOthersFlg: agreementValidator,
|
|
2618
|
+
};
|
|
2619
|
+
const validatorCreditCardObj = {
|
|
2620
|
+
addressCourier: addressDaDataValidator(),
|
|
2621
|
+
paymentSystem: defaultValidator('Укажите тип платежной системы'),
|
|
2622
|
+
currency: defaultValidator('Укажите валюту'),
|
|
2623
|
+
cardCategory: defaultValidator('Укажите категорию карты'),
|
|
2624
|
+
codeWord: codeWordValidator('Необходимо ввести кодовое слово'),
|
|
2625
|
+
confirmationIncome: defaultSelectValidator(),
|
|
2626
|
+
methodObtain: defaultValidator(),
|
|
2627
|
+
deliveryDate: defaultValidator('Укажите дату доставки'),
|
|
2628
|
+
};
|
|
2629
|
+
const validatorRetailObj = {
|
|
2630
|
+
organization: defaultSelectValidator('Выберите тип организации'),
|
|
2631
|
+
organizationAddress: addressOrganizationValidator(),
|
|
2632
|
+
organizationPhone: phoneValidator('Укажите номер телефона'),
|
|
2633
|
+
organizationName: defaultValidator('Укажите наименование организации'),
|
|
2634
|
+
legalForm: defaultValidator('Укажите ОПФ'),
|
|
2635
|
+
generalSeniority: jobNumberValidator('Укажите количество лет стажа'),
|
|
2636
|
+
lastJobExperience: jobNumberValidator('Укажите стаж на последнем месте работы'),
|
|
2637
|
+
experience5Years: jobNumberValidator('Укажите общий стаж за последние 5 лет'),
|
|
2638
|
+
jobsNumber: jobNumberValidator('Укажите количество мест работы за последние 5 лет'),
|
|
2639
|
+
beginDate: defaultValidator('Укажите дату заключения трудового договора'),
|
|
2640
|
+
addressFact: addressDaDataValidator(),
|
|
2641
|
+
addressRegistration: addressDaDataValidator(),
|
|
2642
|
+
addressRetail: defaultSelectValidator('Выберите адрес банка'),
|
|
2643
|
+
addressMatch: defaultValidator(),
|
|
2644
|
+
sex: defaultValidator('Укажите свой пол'),
|
|
2645
|
+
limitedBirthday: limitedBirthdayValidator(),
|
|
2646
|
+
birthPlace: defaultValidator('Укажите место рождения'),
|
|
2647
|
+
education: defaultSelectValidator('Выберите ваше образование'),
|
|
2648
|
+
housing: defaultSelectValidator('Выберите тип жилья'),
|
|
2649
|
+
amountWorkers: defaultSelectValidator('Выберите информацию о количестве сотрудников'),
|
|
2650
|
+
employment: defaultSelectValidator('Выберите информацию о трудоустройстве'),
|
|
2651
|
+
employerActivities: defaultSelectValidator('Выберите вид деятельности организации'),
|
|
2652
|
+
employerOrganization: defaultSelectValidator('Выберите вид организации'),
|
|
2653
|
+
positionOrganization: defaultSelectValidator('Выберите вашу должность'),
|
|
2654
|
+
familyStatus: defaultSelectValidator('Выберите семейное положение'),
|
|
2655
|
+
familyMembers: lengthStringValidator(2, 'Укажите количество членов семьи'),
|
|
2656
|
+
children: lengthStringValidator(2, 'Укажите количество детей'),
|
|
2657
|
+
dependents: lengthStringValidator(2, 'Укажите количество иждивенцев'),
|
|
2658
|
+
totalIncome: lengthStringValidator(19, 'Укажите среднемесячный доход от основной зарплаты'),
|
|
2659
|
+
expenses: lengthStringValidator(10, 'Укажите сумму обязательных выплат'),
|
|
2660
|
+
snils: snilsValidator('Некорректный номер СНИЛС'),
|
|
2661
|
+
conscription: defaultValidator(),
|
|
2662
|
+
armyIdFlg: agreementValidator,
|
|
2663
|
+
dulSerie: serieValidator('Укажите серию паспорта'),
|
|
2664
|
+
dulNumber: numberValidator('Укажите номер паспорта'),
|
|
2665
|
+
dulIssueDateField: defaultValidator('Укажите дату выдачи паспорта'),
|
|
2666
|
+
dulSubdivisionCode: numberValidator('Укажите код подразделения'),
|
|
2667
|
+
dulIssuedBy: defaultValidator('Укажите организацию, выдавшую паспорт'),
|
|
2668
|
+
participantDateRegistration: defaultValidator('Укажите дату регистрации'),
|
|
2669
|
+
retirementIncome: defaultValidator(),
|
|
2670
|
+
otherIncome: defaultValidator(),
|
|
2671
|
+
wages: defaultValidator(),
|
|
2672
|
+
mandatoryPayments: defaultValidator(),
|
|
2673
|
+
disablePeopleFlg: defaultValidator(),
|
|
2674
|
+
bankruptcyFlg: defaultValidator(),
|
|
2675
|
+
shareholderFlg: defaultValidator(),
|
|
2676
|
+
legalEntityName: defaultValidator(),
|
|
2677
|
+
bankEmployeeCode: defaultValidator(),
|
|
2678
|
+
partInBusiness: defaultValidator(),
|
|
2679
|
+
regionRetail: defaultSelectValidator('Выберите регион'),
|
|
2680
|
+
};
|
|
2681
|
+
const validatorObj = {
|
|
2682
|
+
fullName: defaultValidator(),
|
|
2683
|
+
addressBranch: defaultSelectValidator(),
|
|
2684
|
+
desiredMeetingDate: defaultValidator(),
|
|
2685
|
+
product: defaultValidator(),
|
|
2686
|
+
localities: defaultValidator(),
|
|
2687
|
+
partnerComments: defaultValidator(),
|
|
2688
|
+
collectionCount: defaultValidator(),
|
|
2689
|
+
acquiringType: defaultSelectValidator(),
|
|
2690
|
+
serviceType: defaultSelectValidator(),
|
|
2691
|
+
annualRevenue: defaultValidator(),
|
|
2692
|
+
feedbackMethod: defaultSelectValidator(),
|
|
2693
|
+
serviceDirection: defaultSelectValidator(),
|
|
2694
|
+
secondaryPhone: phoneValidator('Укажите номер телефона'),
|
|
2695
|
+
region: defaultSelectValidator(),
|
|
2696
|
+
surname: nameValidator('Укажите свою фамилию'),
|
|
2697
|
+
name: nameValidator('Укажите своё имя'),
|
|
2698
|
+
middleName: nameValidator('Укажите своё отчество'),
|
|
2699
|
+
birthday: defaultValidator('Укажите дату рождения'),
|
|
2700
|
+
phone: phoneValidator('Укажите номер телефона'),
|
|
2701
|
+
email: emailValidator('Укажите электронную почту'),
|
|
2702
|
+
inn: innValidator('Укажите ИНН'),
|
|
2703
|
+
comment: defaultValidator(),
|
|
2704
|
+
typeForm: defaultValidator(),
|
|
2705
|
+
consentToReceiveMaterials: agreementValidator,
|
|
2706
|
+
consentDataProcessing: agreementValidator,
|
|
2707
|
+
...validatorConsentsObj,
|
|
2708
|
+
...validatorRetailObj,
|
|
2709
|
+
...validatorCreditCardObj,
|
|
2710
|
+
};
|
|
2711
|
+
const getFormValidator = (fieldDefs) => {
|
|
2712
|
+
const requiredFields = fieldDefs.filter((_) => Boolean(_?.required && _?.name));
|
|
2713
|
+
const hasConditions = requiredFields.some((_) => _.condition?.values);
|
|
2714
|
+
const requiredFieldValidatorsMap = Object.fromEntries(requiredFields.filter(byNonEmptyValidator).map(({ name }) => [name, validatorObj[name ?? '']]));
|
|
2715
|
+
return (formState) => hasConditions
|
|
2716
|
+
? Object.fromEntries(requiredFields
|
|
2717
|
+
.filter(byNonEmptyValidator)
|
|
2718
|
+
.filter(byCondition(formState))
|
|
2719
|
+
.map(({ name }) => [name, validatorObj[name ?? '']]))
|
|
2720
|
+
: requiredFieldValidatorsMap;
|
|
2721
|
+
};
|
|
2722
|
+
const byNonEmptyValidator = ({ name }) => Boolean(validatorObj[name ?? '']);
|
|
2723
|
+
const byCondition = (formState) => (fieldDef) => !fieldDef?.condition ||
|
|
2724
|
+
fieldDef.condition.values.find((_) => {
|
|
2725
|
+
const dependencyValue = formState?.[fieldDef?.condition?.name ?? ''];
|
|
2726
|
+
return _ === (dependencyValue?.key ?? dependencyValue);
|
|
2727
|
+
});
|
|
2728
|
+
|
|
2703
2729
|
const SecondaryPhoneField = JSX(({ field }) => {
|
|
2704
2730
|
const fieldPhone = field('secondaryPhone');
|
|
2705
2731
|
return (jsx(InputPhoneControl, { label: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u0442\u0435\u043B\u0435\u0444\u043E\u043D", ...(!fieldPhone.value || fieldPhone.value === '+7 ('
|
|
@@ -2707,23 +2733,23 @@
|
|
|
2707
2733
|
: withValidator(fieldPhone, validatorObj.secondaryPhone)) }));
|
|
2708
2734
|
});
|
|
2709
2735
|
|
|
2710
|
-
const ServiceDirectionField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435", options: SERVICE_DIRECTIONS, ...
|
|
2736
|
+
const ServiceDirectionField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043D\u0430\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435", options: SERVICE_DIRECTIONS, ...field(input?.name ?? '') })));
|
|
2711
2737
|
|
|
2712
|
-
const FIELD_NAME$
|
|
2713
|
-
const SurnameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$
|
|
2738
|
+
const FIELD_NAME$2 = 'surname';
|
|
2739
|
+
const SurnameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0430\u043C\u0438\u043B\u0438\u044F", maxLength: 60, disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$2), ...field(input?.name ?? ''), ...input })));
|
|
2714
2740
|
|
|
2715
2741
|
const MIN_CREDIT_TERM = 1;
|
|
2716
2742
|
const MAX_CREDIT_TERM = 180;
|
|
2717
2743
|
const ITEMS_CREDIT_TERM = ['От 1 мес', 'До 15 лет'];
|
|
2718
2744
|
const TermField = JSX(({ field }) => (jsx(InputRange, { title: "\u0421\u0440\u043E\u043A, \u043C\u0435\u0441\u044F\u0446\u0435\u0432", items: ITEMS_CREDIT_TERM, min: MIN_CREDIT_TERM, max: MAX_CREDIT_TERM, ...field('term') })));
|
|
2719
2745
|
|
|
2720
|
-
const UltraPremiumField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0422\u0438\u043F \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F", options: SERVICE_TYPES, ...
|
|
2746
|
+
const UltraPremiumField = JSX(({ field, input }) => (jsx(SelectControl, { label: "\u0422\u0438\u043F \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u044F", options: SERVICE_TYPES, ...field(input?.name ?? '') })));
|
|
2721
2747
|
|
|
2722
2748
|
const orientationStyleMap = {
|
|
2723
2749
|
horizontal: '@lg:flex-row',
|
|
2724
2750
|
vertical: '',
|
|
2725
2751
|
};
|
|
2726
|
-
const RadioButtonGroup = JSX(({ label, items, value, className,
|
|
2752
|
+
const RadioButtonGroup = JSX(({ label, items, value, className, disabled = false, orientation = 'horizontal', onChange: onChangeCheckedItem, }) => (jsxs("div", { className: "grid gap-xs whitespace-nowrap", children: [label ? (jsx("div", { role: "radiogroup", "aria-label": label, children: jsx(Text, { color: "text-secondary-text", font: "font-light", children: label }) })) : null, jsx("div", { className: style('flex flex-col gap-s', orientationStyleMap[orientation], className), role: "radiogroup", "aria-label": "\u0413\u0440\u0443\u043F\u043F\u0430 \u043A\u043D\u043E\u043F\u043E\u043A", children: items?.map(({ id, text }) => (jsx(Checkbox, { isRadio: true, text: text, value: value === id, onChange: () => onChangeCheckedItem?.(id), disabled: disabled }, String(id)))) })] })));
|
|
2727
2753
|
|
|
2728
2754
|
const VED_TYPES = [
|
|
2729
2755
|
{ id: 'currencyControl', text: 'Валютный контроль' },
|
|
@@ -2731,18 +2757,17 @@
|
|
|
2731
2757
|
{ id: 'conversionTransactions', text: 'Конверсионные операции' },
|
|
2732
2758
|
{ id: 'otherIssues', text: 'Иные вопросы ВЭД' },
|
|
2733
2759
|
];
|
|
2734
|
-
const VedField = JSX(({ field }) => {
|
|
2735
|
-
const
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
field
|
|
2739
|
-
field?.('region')?.onChange?.('');
|
|
2760
|
+
const VedField = JSX(({ field, input }) => {
|
|
2761
|
+
const handleChange = useCallback((_) => {
|
|
2762
|
+
if (_ !== 'currencyControl') {
|
|
2763
|
+
field('inn').onChange?.('');
|
|
2764
|
+
field('region').onChange?.('');
|
|
2740
2765
|
}
|
|
2741
|
-
}, [
|
|
2742
|
-
return (jsx("div", { className: "py-m gap-m grid @xl:flex @xl:items-center", children: jsx(RadioButtonGroup, { className: "whitespace-normal", orientation: "horizontal", items: VED_TYPES,
|
|
2766
|
+
}, []);
|
|
2767
|
+
return (jsx("div", { className: "py-m gap-m grid @xl:flex @xl:items-center", children: jsx(RadioButtonGroup, { className: "whitespace-normal", orientation: "horizontal", items: VED_TYPES, ...field(input?.name ?? '', { onChange: handleChange }) }) }));
|
|
2743
2768
|
});
|
|
2744
2769
|
|
|
2745
|
-
function
|
|
2770
|
+
function shouldRenderField({ input, field, }) {
|
|
2746
2771
|
const { condition } = input;
|
|
2747
2772
|
const { value } = field(condition?.name || '');
|
|
2748
2773
|
return !condition || condition?.values?.find((_) => _ === (value?.key ?? value));
|
|
@@ -2751,45 +2776,45 @@
|
|
|
2751
2776
|
const PRODUCT_REF = {
|
|
2752
2777
|
$ref: '/wcms-resources/outservice-productlist.json',
|
|
2753
2778
|
};
|
|
2754
|
-
const InputsMap = {
|
|
2755
|
-
fullName:
|
|
2756
|
-
addressBranch:
|
|
2757
|
-
desiredMeetingDate:
|
|
2779
|
+
const InputsMap$1 = {
|
|
2780
|
+
fullName: FullNameField,
|
|
2781
|
+
addressBranch: AddressBranchField,
|
|
2782
|
+
desiredMeetingDate: DesiredMeetingDateField,
|
|
2758
2783
|
product: (props) => jsx(ProductField, { ...props, source: PRODUCT_REF }),
|
|
2759
|
-
localities:
|
|
2760
|
-
isClient:
|
|
2761
|
-
partnerComments:
|
|
2762
|
-
collectionCount:
|
|
2763
|
-
acquiringType:
|
|
2764
|
-
onlineCheckout:
|
|
2765
|
-
posTerminal:
|
|
2766
|
-
serviceType:
|
|
2767
|
-
term:
|
|
2768
|
-
amount:
|
|
2769
|
-
annualRevenue:
|
|
2770
|
-
vedTypes:
|
|
2771
|
-
feedbackMethod:
|
|
2772
|
-
serviceDirection:
|
|
2773
|
-
bankEmpolee:
|
|
2774
|
-
secondaryPhone:
|
|
2784
|
+
localities: LocalitiesField,
|
|
2785
|
+
isClient: IsClientField,
|
|
2786
|
+
partnerComments: PartnerCommentsField,
|
|
2787
|
+
collectionCount: CollectionCountField,
|
|
2788
|
+
acquiringType: AcquiringField,
|
|
2789
|
+
onlineCheckout: OnlineCheckoutField,
|
|
2790
|
+
posTerminal: PosTerminalField,
|
|
2791
|
+
serviceType: UltraPremiumField,
|
|
2792
|
+
term: TermField,
|
|
2793
|
+
amount: AmountField,
|
|
2794
|
+
annualRevenue: AnnualRevenueField,
|
|
2795
|
+
vedTypes: VedField,
|
|
2796
|
+
feedbackMethod: FeedbackMethodField,
|
|
2797
|
+
serviceDirection: ServiceDirectionField,
|
|
2798
|
+
bankEmpolee: BankEmpoleeField,
|
|
2799
|
+
secondaryPhone: SecondaryPhoneField,
|
|
2775
2800
|
applicationDate: (props) => (jsx(InputControl, { label: "\u0414\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u044F \u0432 \u0411\u0430\u043D\u043A", ...props })),
|
|
2776
2801
|
region: (props) => getPremium(props?.params?.typeForm) ? (jsx(RegionPremiumField, { ...props })) : (jsx(RegionField, { ...props })),
|
|
2777
|
-
consentToReceiveMaterials:
|
|
2778
|
-
surname:
|
|
2779
|
-
name:
|
|
2780
|
-
middleName:
|
|
2781
|
-
birthday:
|
|
2782
|
-
phone:
|
|
2783
|
-
email:
|
|
2784
|
-
inn:
|
|
2785
|
-
comment:
|
|
2802
|
+
consentToReceiveMaterials: ConsentToReceiveMaterialsField,
|
|
2803
|
+
surname: SurnameField,
|
|
2804
|
+
name: NameField,
|
|
2805
|
+
middleName: MiddleNameField,
|
|
2806
|
+
birthday: BirthdayField,
|
|
2807
|
+
phone: PhoneField,
|
|
2808
|
+
email: EmailField,
|
|
2809
|
+
inn: InnField,
|
|
2810
|
+
comment: CommentField,
|
|
2786
2811
|
};
|
|
2787
2812
|
const getField = (field, params, externalInputs = {}) => (input, i) => {
|
|
2788
|
-
const
|
|
2789
|
-
...InputsMap,
|
|
2813
|
+
const fieldsRegister = {
|
|
2814
|
+
...InputsMap$1,
|
|
2790
2815
|
...externalInputs,
|
|
2791
2816
|
};
|
|
2792
|
-
return
|
|
2817
|
+
return (shouldRenderField({ input, field }) && (jsx("div", { children: fieldsRegister[String(input.name)]?.({ field, input, params }) }, i)));
|
|
2793
2818
|
};
|
|
2794
2819
|
|
|
2795
2820
|
const inputColumnStyles = (column) => column === 2 ? '@xl:grid-cols-2' : '';
|
|
@@ -2836,21 +2861,16 @@
|
|
|
2836
2861
|
|
|
2837
2862
|
const Dialog = JSX(({ className, head, children, onClose, onClick }) => (jsxs("div", { className: style('relative bg-white pt-0 p-lg', className), role: "dialog", onClick: onClick, children: [jsxs("div", { className: "sticky py-xl top-0 bg-white z-10", children: [jsx(CloseButton, { className: "absolute top-0 right-0", onClose: onClose }), jsx("div", { className: "container", children: head })] }), jsx("div", { className: "container pb-6xl", children: children })] })));
|
|
2838
2863
|
|
|
2839
|
-
const ResponseTypeDialog = JSX(({
|
|
2840
|
-
const
|
|
2841
|
-
const statusIcon = responseOK ? 'ResponseOKIcon' : 'ResponseFailIcon';
|
|
2864
|
+
const ResponseTypeDialog = JSX(({ ok, typeForm, onClose }) => {
|
|
2865
|
+
const statusIcon = ok ? 'ResponseOKIcon' : 'ResponseFailIcon';
|
|
2842
2866
|
const responseOKDescription = typeForm === 'ANTIFRAUD'
|
|
2843
2867
|
? `Сообщение отправлено. Для уточнения информации с Вами могут связаться работники Банка либо Вы
|
|
2844
2868
|
можете самостоятельно позвонить по номеру контакт-центра +78001000100. Будьте внимательны, работники Банка
|
|
2845
2869
|
не звонят с использованием мессенджеров.`
|
|
2846
2870
|
: 'Совсем скоро мы с вами свяжемся';
|
|
2847
|
-
return (jsx(Dialog, { className: "my-6xl max-w-lg w-full min-h-fit mx-auto", onClose: onClose, children: jsxs("div", { className: "flex flex-col gap-lg items-center rounded-md space-x-m", children: [jsx(Img, { image: { icon: statusIcon, iconVersion: 'normal' }, width: "136", height: "136" }), jsx(Headline, { className: "w-full", title:
|
|
2871
|
+
return (jsx(Dialog, { className: "my-6xl max-w-lg w-full min-h-fit mx-auto", onClose: onClose, children: jsxs("div", { className: "flex flex-col gap-lg items-center rounded-md space-x-m", children: [jsx(Img, { image: { icon: statusIcon, iconVersion: 'normal' }, width: "136", height: "136" }), jsx(Headline, { className: "w-full", title: ok ? 'Ваша заявка отправлена' : 'Не удалось отправить заявку', description: ok ? responseOKDescription : 'Пожалуйста, повторите позднее', headlineVersion: "XS", isEmbedded: true }), jsx(Button, { type: "button", onClick: onClose, children: "\u0425\u043E\u0440\u043E\u0448\u043E" })] }) }));
|
|
2848
2872
|
});
|
|
2849
2873
|
|
|
2850
|
-
const objectValidator = (validatorsMap) => (o) => (o &&
|
|
2851
|
-
Object.entries(validatorsMap).flatMap(([key, validator]) => validator(o[key]))) ||
|
|
2852
|
-
[];
|
|
2853
|
-
|
|
2854
2874
|
const getPartnerComments = (data) => {
|
|
2855
2875
|
const { acquiringType, onlineCheckout = false, posTerminal = false, term, amount, annualRevenue, } = data;
|
|
2856
2876
|
if (acquiringType) {
|
|
@@ -2928,46 +2948,28 @@
|
|
|
2928
2948
|
const renderContacts = () => (jsxs("div", { className: "space-y-m", children: [jsx(Heading, { headingType: "h6", title: "\u0418\u043B\u0438 \u0441\u0432\u044F\u0436\u0438\u0442\u0435\u0441\u044C \u0441 \u043D\u0430\u043C\u0438 \u0443\u0434\u043E\u0431\u043D\u044B\u043C \u0441\u043F\u043E\u0441\u043E\u0431\u043E\u043C", className: "@xl:text-center" }), jsxs("div", { className: "flex sm:justify-center gap-xl", children: [jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", href: `tel:8 (800) 200-78-70`, "aria-label": "\u0442\u0435\u043B\u0435\u0444\u043E\u043D 8 (800) 200-78-70", children: [jsx(Img, { image: { icon: 'PhoneIcon' }, width: "24", height: "24" }), jsx("span", { children: "8 (800) 200-78-70" })] }), jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", "aria-label": "\u043F\u043E\u0447\u0442\u0430 ved@rshb.ru", href: `mailto:ved@rshb.ru`, children: [jsx(Img, { image: { icon: 'MailIcon' }, width: "24", height: "24" }), jsx("span", { children: "ved@rshb.ru" })] })] })] }));
|
|
2929
2949
|
|
|
2930
2950
|
const API = LeadServiceAPI();
|
|
2931
|
-
const ApplicationForm = JSX(
|
|
2932
|
-
|
|
2933
|
-
|
|
2934
|
-
const
|
|
2935
|
-
const initialFormState = getInitialFormState$3(inputs, typeForm);
|
|
2936
|
-
const [responseType, setResponseType] = useState('');
|
|
2951
|
+
const ApplicationForm = JSX(({ className, title, typeForm = '', sections = [], button, link, endpoint, additionalParams, isContacts, data, ...rest }) => {
|
|
2952
|
+
const inputs = useMemo(() => (sections?.flatMap((_) => _?.inputs) || []), [sections]);
|
|
2953
|
+
const initialFormState = useMemo(() => getInitialFormState$3(inputs, typeForm), [inputs, typeForm]);
|
|
2954
|
+
const formValidator = useMemo(() => getFormValidator(inputs), [inputs]);
|
|
2937
2955
|
const responseTypeDialog = useDialog(ResponseTypeDialog);
|
|
2956
|
+
const aspects = useAspects();
|
|
2938
2957
|
const handleSubmit = useCallback(async (formData, ev) => {
|
|
2939
|
-
const inputsFiltered = getFilteredInputs(inputs, formData);
|
|
2940
|
-
const feedbackValidator = objectValidator(getObjectValidator(inputsFiltered));
|
|
2941
|
-
if (!isValidationSuccess(feedbackValidator(formData))) {
|
|
2942
|
-
return console.warn('validation fail');
|
|
2943
|
-
}
|
|
2944
2958
|
const formatData = getFormatData({ ...formData, ...additionalParams });
|
|
2945
|
-
const
|
|
2946
|
-
|
|
2947
|
-
if (
|
|
2948
|
-
responseTypeDialog.open({ typeForm, responseType: status });
|
|
2949
|
-
}
|
|
2950
|
-
if (status === 'OK' && data) {
|
|
2951
|
-
const aspects = useAspects();
|
|
2959
|
+
const ok = Boolean(await API.send(formatData, endpoint === 'lead'));
|
|
2960
|
+
responseTypeDialog.open({ ok, typeForm });
|
|
2961
|
+
if (ok) {
|
|
2952
2962
|
handleAspects({ aspectsAttributes: data, aspects, ev });
|
|
2953
2963
|
}
|
|
2954
|
-
return status;
|
|
2955
2964
|
}, [typeForm]);
|
|
2956
|
-
const [, { field, onSubmit
|
|
2965
|
+
const [, { field, onSubmit }] = useForm(initialFormState, {
|
|
2966
|
+
resetOnSubmit: true,
|
|
2967
|
+
formValidator,
|
|
2968
|
+
onSubmit: handleSubmit,
|
|
2969
|
+
});
|
|
2957
2970
|
const fieldName = getConsentDataProcessing(inputs)?.name;
|
|
2958
|
-
useEffect(() => {
|
|
2959
|
-
if (responseType === 'OK') {
|
|
2960
|
-
setResponseType('');
|
|
2961
|
-
reset();
|
|
2962
|
-
}
|
|
2963
|
-
}, [responseType]);
|
|
2964
2971
|
return (jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [jsxs("form", { onSubmit: onSubmit, children: [sections.map((_, i) => (jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), (_?.inputs || [])?.map(getField(field, { typeForm }))] }, `section-${i}`))), renderAgreementSubmit(fieldName ? field('consentDataProcessing') : undefined, link, button)] }), isContacts ? renderContacts() : null] }));
|
|
2965
2972
|
});
|
|
2966
|
-
const getFilteredInputs = (inputs, data) => inputs.filter((input) => !input?.condition ||
|
|
2967
|
-
input?.condition.values.find((_) => {
|
|
2968
|
-
const dataValue = data?.[input?.condition?.name ?? ''];
|
|
2969
|
-
return _ === (dataValue?.key ?? dataValue);
|
|
2970
|
-
}));
|
|
2971
2973
|
|
|
2972
2974
|
const applicationFormData = [
|
|
2973
2975
|
{
|
|
@@ -3039,11 +3041,11 @@
|
|
|
3039
3041
|
qcHouse: '',
|
|
3040
3042
|
});
|
|
3041
3043
|
}, []);
|
|
3042
|
-
return (jsx(InputControl, { label: "\u0410\u0434\u0440\u0435\u0441", disabled: value, ...
|
|
3044
|
+
return (jsx(InputControl, { label: "\u0410\u0434\u0440\u0435\u0441", disabled: value, ...field(fieldName), value: fieldValue?.fullAddress, onChange: onChange, ...input, onDaDataChange: onDaDataChange }));
|
|
3043
3045
|
});
|
|
3044
3046
|
|
|
3045
3047
|
const AddressMatchField = JSX(({ field, input }) => {
|
|
3046
|
-
return (jsx(CheckboxWithError, { text: "\u0410\u0434\u0440\u0435\u0441 \u0444\u0430\u043A\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043C\u0435\u0441\u0442\u0430 \u0436\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430 \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0435\u0442 \u0441 \u0430\u0434\u0440\u0435\u0441\u043E\u043C \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438", ...
|
|
3048
|
+
return (jsx(CheckboxWithError, { text: "\u0410\u0434\u0440\u0435\u0441 \u0444\u0430\u043A\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043C\u0435\u0441\u0442\u0430 \u0436\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430 \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0435\u0442 \u0441 \u0430\u0434\u0440\u0435\u0441\u043E\u043C \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438", ...field(input?.name ?? '') }));
|
|
3047
3049
|
});
|
|
3048
3050
|
|
|
3049
3051
|
const MapMarkerClusterIcon = '/icons/MapMarkerClusterIcon.svg';
|
|
@@ -3476,7 +3478,7 @@
|
|
|
3476
3478
|
|
|
3477
3479
|
const ICONS$1 = ['ArrowDownIcon', 'ArrowUpIcon'];
|
|
3478
3480
|
const labels = ['Подробнее', 'Скрыть'];
|
|
3479
|
-
const renderFoldButton$
|
|
3481
|
+
const renderFoldButton$2 = ({ isUnfolded, onToggle }) => (jsxs("button", { className: "w-full py-2xl cursor-pointer text-primary-main flex items-center border-b border-solid border-main-divider", onClick: onToggle, type: "button", children: [jsx("div", { className: "pr-m", children: labels[Number(isUnfolded)] }), jsx(Icon, { className: "text-primary-text", name: ICONS$1[Number(isUnfolded)], width: "16", height: "16" })] }));
|
|
3480
3482
|
|
|
3481
3483
|
const renderWorkSchedule = (workSchedule) => {
|
|
3482
3484
|
const workScheduleWeek = getWorkScheduleWeek(workSchedule);
|
|
@@ -3525,7 +3527,7 @@
|
|
|
3525
3527
|
}) }));
|
|
3526
3528
|
},
|
|
3527
3529
|
//** TODO: remove styles with refactoring DefaultFoldButton*/
|
|
3528
|
-
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$
|
|
3530
|
+
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$2({ isUnfolded, onToggle }) })] }, String(i)));
|
|
3529
3531
|
};
|
|
3530
3532
|
const renderCardContent$1 = ({ phone, fax, phoneBusiness, phoneNatural, phoneCallCentre, phoneCurrencyControl, workSchedule, exchangeRate, }) => {
|
|
3531
3533
|
const workScheduleWeek = getWorkScheduleWeek(workSchedule);
|
|
@@ -3639,14 +3641,14 @@
|
|
|
3639
3641
|
const [offices, setOffices] = useState([]);
|
|
3640
3642
|
const { data } = useLeadFormData('REGION_RF');
|
|
3641
3643
|
const regionValue = field('regionRetail')?.value || {};
|
|
3642
|
-
const
|
|
3644
|
+
const addressField = field(input?.name ?? '');
|
|
3643
3645
|
useEffect(() => {
|
|
3644
3646
|
(async () => {
|
|
3645
3647
|
const officesList = await fetchRegionOffices(regionValue?.key ?? '');
|
|
3646
3648
|
setOffices(officesList);
|
|
3647
3649
|
})();
|
|
3648
3650
|
if (regionValue?.key) {
|
|
3649
|
-
|
|
3651
|
+
addressField.onChange?.('');
|
|
3650
3652
|
}
|
|
3651
3653
|
}, [regionValue.key]);
|
|
3652
3654
|
const { points } = useOfficesAtmsMapData({
|
|
@@ -3654,21 +3656,20 @@
|
|
|
3654
3656
|
filtrationState: {},
|
|
3655
3657
|
getBalloon: getOfficePoint,
|
|
3656
3658
|
});
|
|
3657
|
-
const isRegionSelected = Boolean(regionValue?.key);
|
|
3658
3659
|
return (jsxs("div", { children: [jsx(SelectControl, { label: "\u0410\u0434\u0440\u0435\u0441 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u044F", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043E\u0442\u0434\u0435\u043B\u0435\u043D\u0438\u0435", options: offices.map(({ id, address = '' }) => ({
|
|
3659
3660
|
key: id?.toString() || '',
|
|
3660
3661
|
text: address,
|
|
3661
|
-
})), ...
|
|
3662
|
+
})), ...addressField, isSearch: true }), jsx("div", { className: "h-[600px]", children: jsx(ClientOnly, { children: jsx(YandexMap, { points: points, isLoad: !data, className: "h-full", selectedAddress: addressField?.value?.text }) }) })] }));
|
|
3662
3663
|
});
|
|
3663
3664
|
|
|
3664
|
-
const SelectField = UniBlock(({ field, source, fieldName,
|
|
3665
|
+
const SelectField = UniBlock(({ field, source, fieldName, placeholder = 'Выберите из списка',
|
|
3665
3666
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
3666
3667
|
options, ...rest }) => {
|
|
3667
3668
|
const leadOptions = source?.map((_) => ({
|
|
3668
3669
|
key: _.key || '',
|
|
3669
3670
|
text: _.value,
|
|
3670
3671
|
})) || [];
|
|
3671
|
-
return (jsx(SelectControl, { placeholder: placeholder, options: leadOptions, ...
|
|
3672
|
+
return (jsx(SelectControl, { placeholder: placeholder, options: leadOptions, ...field(fieldName), ...rest }));
|
|
3672
3673
|
});
|
|
3673
3674
|
|
|
3674
3675
|
const AmountWorkersField = JSX(({ field, input }) => {
|
|
@@ -3682,16 +3683,16 @@
|
|
|
3682
3683
|
return (jsx(SelectField, { field: field, source: store.amountWorkers ?? [], label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0449\u0438\u0445 \u0432 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", fieldName: "amountWorkers", input: input }));
|
|
3683
3684
|
});
|
|
3684
3685
|
|
|
3685
|
-
const ArmyIdFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u041D\u0430\u043B\u0438\u0447\u0438\u0435 \u0432\u043E\u0435\u043D\u043D\u043E\u0433\u043E \u0431\u0438\u043B\u0435\u0442\u0430", ...
|
|
3686
|
+
const ArmyIdFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u041D\u0430\u043B\u0438\u0447\u0438\u0435 \u0432\u043E\u0435\u043D\u043D\u043E\u0433\u043E \u0431\u0438\u043B\u0435\u0442\u0430", ...field(input?.name ?? '') })));
|
|
3686
3687
|
|
|
3687
|
-
const BankEmpoleeCodeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u0434 \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435\u043B\u044F \u0411\u0430\u043D\u043A\u0430", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434", isInteger: true, ...
|
|
3688
|
+
const BankEmpoleeCodeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u0434 \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435\u043B\u044F \u0411\u0430\u043D\u043A\u0430", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043A\u043E\u0434", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
3688
3689
|
|
|
3689
|
-
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", ...
|
|
3690
|
+
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 ?? '') })));
|
|
3690
3691
|
|
|
3691
|
-
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", ...
|
|
3692
|
+
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 })));
|
|
3692
3693
|
|
|
3693
|
-
const FIELD_NAME$
|
|
3694
|
-
const BirthPlaceField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041C\u0435\u0441\u0442\u043E \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...
|
|
3694
|
+
const FIELD_NAME$1 = 'birthPlace';
|
|
3695
|
+
const BirthPlaceField = JSX(({ field, input }) => (jsx(InputControl, { 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$1) })));
|
|
3695
3696
|
|
|
3696
3697
|
const getCardTypes = async (paymentSystemTypeCd, creditProgramId) => {
|
|
3697
3698
|
const data = await fetchRetailJSON('/dictionaryFiltered', 'POST', {
|
|
@@ -3743,9 +3744,9 @@
|
|
|
3743
3744
|
});
|
|
3744
3745
|
const isValidCardCategory = (cardTypes, selectedCardCategory) => cardTypes.some((cardType) => cardType.key === selectedCardCategory?.key);
|
|
3745
3746
|
|
|
3746
|
-
const ChildrenField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0434\u0435\u0442\u0435\u0439 \u0434\u043E 18 \u043B\u0435\u0442", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...
|
|
3747
|
+
const ChildrenField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0434\u0435\u0442\u0435\u0439 \u0434\u043E 18 \u043B\u0435\u0442", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
3747
3748
|
|
|
3748
|
-
const CodeWordField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u0434\u043E\u0432\u043E\u0435 \u0441\u043B\u043E\u0432\u043E", ...
|
|
3749
|
+
const CodeWordField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u0434\u043E\u0432\u043E\u0435 \u0441\u043B\u043E\u0432\u043E", ...field(input?.name ?? ''), ...input })));
|
|
3749
3750
|
|
|
3750
3751
|
const ConfirmationIncomeField = JSX(({ field, input }) => {
|
|
3751
3752
|
const { data: confirmationIncome } = useLeadFormData('INCOME_CERT_UNITED');
|
|
@@ -3808,7 +3809,7 @@
|
|
|
3808
3809
|
return (jsxs("div", { className: className, children: [jsxs("div", { className: "flex flex-wrap gap-x-m", children: [jsx(Checkbox, { ...props }), docId ? (jsx(LinkButton, { className: "text-primary-main", onClick: openDocument, children: jsx(Text, { children: OPEN_DOC_BUTTON_TEXT }) })) : null] }), renderErrorText(error)] }));
|
|
3809
3810
|
});
|
|
3810
3811
|
|
|
3811
|
-
const ConsentField = JSX(({ field, input }) => input && input.name ? (jsx(CheckboxWithDoc, { text: CONSENTS[input.name]?.text, docId: CONSENTS[input.name]?.docId, ...
|
|
3812
|
+
const ConsentField = JSX(({ field, input }) => input && input.name ? (jsx(CheckboxWithDoc, { text: CONSENTS[input.name]?.text, docId: CONSENTS[input.name]?.docId, ...field(input.name) })) : null);
|
|
3812
3813
|
|
|
3813
3814
|
const MONTHS_IN_YEAR$1 = 12;
|
|
3814
3815
|
const MONTHLY_INTEREST_RATE = MONTHS_IN_YEAR$1 * 100;
|
|
@@ -4037,7 +4038,7 @@
|
|
|
4037
4038
|
};
|
|
4038
4039
|
const CalculatorCredit = UniBlock(({ className, title, calcSource, buttons, footnote, paramsViewSettings, defaultParams, onChange, ...rest }) => {
|
|
4039
4040
|
const defaultParamsCals = getDefaultParamsMin(calcSource?.rateRows);
|
|
4040
|
-
const [userInputParams, { field
|
|
4041
|
+
const [userInputParams, { field }] = useForm({
|
|
4041
4042
|
moneyValue: getMoneyDefaultValue(defaultParams, CREDIT_DEFAULT_SUM),
|
|
4042
4043
|
monthsValue: getMonthsDefaultValue(defaultParams, DEFAULT_MONTHS),
|
|
4043
4044
|
isAnnuity: Boolean(defaultParams?.isAnnuity),
|
|
@@ -4045,10 +4046,7 @@
|
|
|
4045
4046
|
isSalaryClient: Boolean(defaultParams?.isEnableSalaryClient),
|
|
4046
4047
|
isPensionClient: Boolean(defaultParams?.isEnablePensionClient),
|
|
4047
4048
|
isStateEmployee: Boolean(defaultParams?.isEnableStateEmployee),
|
|
4048
|
-
});
|
|
4049
|
-
useEffect(() => {
|
|
4050
|
-
isDirty && onChange?.(userInputParams);
|
|
4051
|
-
}, [userInputParams, isDirty]);
|
|
4049
|
+
}, { onChange });
|
|
4052
4050
|
const calcParams = getCreditCalculatorParams(userInputParams, calcSource, paramsViewSettings);
|
|
4053
4051
|
const paymentTypeElement = renderPaymentType({
|
|
4054
4052
|
title: 'Тип платежа',
|
|
@@ -4093,12 +4091,12 @@
|
|
|
4093
4091
|
});
|
|
4094
4092
|
const renderCreditParamsForm$1 = (params, field) => (jsxs("div", { className: "flex flex-col gap-y-2xl", children: [params.isShowSalaryClient ? (jsx(Checkbox, { text: `Получаю зарплату на счёт\nв Россельхозбанке`, ...field('isSalaryClient'), value: params.isSalaryClient, className: "whitespace-pre-line sm:whitespace-normal" })) : null, params.isShowStateEmployee ? (jsx(Checkbox, { text: "\u0420\u0430\u0431\u043E\u0442\u0430\u044E \u0432 \u0431\u044E\u0434\u0436\u0435\u0442\u043D\u043E\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438", ...field('isStateEmployee'), value: params.isStateEmployee })) : null, params.isShowPensionClient ? (jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u043F\u0435\u043D\u0441\u0438\u044E \u043D\u0430 \u043A\u0430\u0440\u0442\u0443 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0430", ...field('isPensionClient'), value: params.isPensionClient })) : null, params.isShowInsurance ? (jsx(Checkbox, { text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", ...field('isInsurance'), value: params.isInsurance })) : null] }));
|
|
4095
4093
|
|
|
4096
|
-
const FIELD_NAME
|
|
4094
|
+
const FIELD_NAME = 'calculator';
|
|
4097
4095
|
const CreditCalcField = JSX(({ field, params }) => {
|
|
4098
4096
|
const handleChange = useCallback((_) => {
|
|
4099
|
-
field(FIELD_NAME
|
|
4097
|
+
field(FIELD_NAME).onChange?.(_);
|
|
4100
4098
|
}, []);
|
|
4101
|
-
return (jsx(CalculatorCredit, { ...params?.calcData, padding: "p-0", defaultParams: defaultValueAdapter(field(FIELD_NAME
|
|
4099
|
+
return (jsx(CalculatorCredit, { ...params?.calcData, padding: "p-0", defaultParams: defaultValueAdapter(field(FIELD_NAME).value), onChange: handleChange }));
|
|
4102
4100
|
});
|
|
4103
4101
|
const PARAMS_MAP = {
|
|
4104
4102
|
moneyValue: 'sum',
|
|
@@ -4123,44 +4121,36 @@
|
|
|
4123
4121
|
return (jsx(SelectField, { field: field, source: creditInRshbCd, label: LABEL_TEXT, fieldName: "creditInRshbCd", input: input, disabled: !field?.('shareholderFlg')?.value }));
|
|
4124
4122
|
});
|
|
4125
4123
|
|
|
4126
|
-
const RadioButtonGroupControl = JSX(({ className, label,
|
|
4124
|
+
const RadioButtonGroupControl = JSX(({ className, label, error, ...rest }) => (jsxs("div", { className: style('shrink-0 w-full', className), children: [jsx(RadioButtonGroup, { label: getRequiredLabel({ label, errors: rest?.errors }), ...rest }), renderErrorText(error)] })));
|
|
4127
4125
|
|
|
4128
|
-
const
|
|
4129
|
-
|
|
4130
|
-
const currencyTypes = [{ id: '810', text: 'Рубли' }];
|
|
4131
|
-
return (jsx(RadioButtonGroupControl, { label: "\u0412\u0430\u043B\u044E\u0442\u0430", orientation: "horizontal", items: currencyTypes, value: value, onChange: (_) => onChange?.(_), ...getValidation(field('currency'), validatorObj.currency, input?.required) }));
|
|
4132
|
-
});
|
|
4126
|
+
const CURRENCY_TYPES = [{ id: '810', text: 'Рубли' }];
|
|
4127
|
+
const CurrencyField = JSX(({ field, input }) => (jsx(RadioButtonGroupControl, { label: "\u0412\u0430\u043B\u044E\u0442\u0430", orientation: "horizontal", items: CURRENCY_TYPES, ...field(input?.name ?? '') })));
|
|
4133
4128
|
|
|
4134
|
-
const DeliveryDateFiels = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438", ...
|
|
4129
|
+
const DeliveryDateFiels = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438", ...field(input?.name ?? '') })));
|
|
4135
4130
|
|
|
4136
|
-
const DependentsField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0438\u0436\u0434\u0438\u0432\u0435\u043D\u0446\u0435\u0432", placeholder: "\u0417\u0430 \u0438\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u0434\u0435\u0442\u0435\u0439 \u0434\u043E 18 \u043B\u0435\u0442", isInteger: true, maxLength: 2, ...
|
|
4131
|
+
const DependentsField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0438\u0436\u0434\u0438\u0432\u0435\u043D\u0446\u0435\u0432", placeholder: "\u0417\u0430 \u0438\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u0434\u0435\u0442\u0435\u0439 \u0434\u043E 18 \u043B\u0435\u0442", isInteger: true, maxLength: 2, ...field(input?.name ?? ''), ...input })));
|
|
4137
4132
|
|
|
4138
|
-
const DisablePeopleFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u042F\u0432\u043B\u044F\u044E\u0441\u044C \u0438\u043D\u0432\u0430\u043B\u0438\u0434\u043E\u043C", ...
|
|
4133
|
+
const DisablePeopleFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u042F\u0432\u043B\u044F\u044E\u0441\u044C \u0438\u043D\u0432\u0430\u043B\u0438\u0434\u043E\u043C", ...field(input?.name ?? '') })));
|
|
4139
4134
|
|
|
4140
|
-
const
|
|
4141
|
-
const DulIssueDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0432\u044B\u0434\u0430\u0447\u0438", ...getValidation(field(FIELD_NAME$7), validatorObj.dulIssueDateField, input?.required), disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$7) })));
|
|
4135
|
+
const DulIssueDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0432\u044B\u0434\u0430\u0447\u0438", ...field(input?.name ?? ''), disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? '') })));
|
|
4142
4136
|
|
|
4143
|
-
const FIELD_NAME$6 = 'dulIssuedBy';
|
|
4144
4137
|
const DulIssuedByField = JSX(({ field, input }) => {
|
|
4145
4138
|
const { value: dulSubdivisionCode, onChange: changeDulSubdivisionCode } = field('dulSubdivisionCode');
|
|
4146
4139
|
const onDaDataChange = useCallback((item) => {
|
|
4147
4140
|
changeDulSubdivisionCode?.(item?.data?.code?.replace('-', ''));
|
|
4148
4141
|
}, []);
|
|
4149
|
-
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field,
|
|
4142
|
+
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, input?.name ?? ''), label: "\u041A\u0435\u043C \u0432\u044B\u0434\u0430\u043D", ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange, daDataQueryPrefix: dulSubdivisionCode }));
|
|
4150
4143
|
});
|
|
4151
4144
|
|
|
4152
|
-
const
|
|
4153
|
-
const DulNumberField = JSX(({ field, input }) => (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$5), label: "\u041D\u043E\u043C\u0435\u0440 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430", isInteger: true, maxLength: 6, ...getValidation(field('dulNumber'), validatorObj.dulNumber, input?.required) })));
|
|
4145
|
+
const DulNumberField = JSX(({ field, input }) => (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), label: "\u041D\u043E\u043C\u0435\u0440 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430", isInteger: true, maxLength: 6, ...field(input?.name ?? '') })));
|
|
4154
4146
|
|
|
4155
|
-
const
|
|
4156
|
-
const DulSerieField = JSX(({ field, input }) => (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$4), label: "\u0421\u0435\u0440\u0438\u044F \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430", isInteger: true, maxLength: 4, ...getValidation(field('dulSerie'), validatorObj.dulSerie, input?.required) })));
|
|
4147
|
+
const DulSerieField = JSX(({ field, input }) => (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), label: "\u0421\u0435\u0440\u0438\u044F \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430", isInteger: true, maxLength: 4, ...field(input?.name ?? '') })));
|
|
4157
4148
|
|
|
4158
|
-
const FIELD_NAME$3 = 'dulSubdivisionCode';
|
|
4159
4149
|
const DulSubdivisionCodeField = JSX(({ field, input }) => {
|
|
4160
4150
|
const onDaDataChange = useCallback((item) => {
|
|
4161
4151
|
field?.('dulIssuedBy')?.onChange?.(item?.data?.name);
|
|
4162
4152
|
}, []);
|
|
4163
|
-
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field,
|
|
4153
|
+
return (jsx(InputControl, { disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? ''), label: "\u041A\u043E\u0434 \u043F\u043E\u0434\u0440\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u044F", isInteger: true, maxLength: 6, ...input, ...field(input?.name ?? ''), onDaDataChange: onDaDataChange }));
|
|
4164
4154
|
});
|
|
4165
4155
|
|
|
4166
4156
|
const EducationField = JSX(({ field, input }) => {
|
|
@@ -4195,27 +4185,26 @@
|
|
|
4195
4185
|
return (jsx(SelectField, { field: field, source: employment, label: "\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0442\u0440\u0443\u0434\u043E\u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435", fieldName: "employment", input: input }));
|
|
4196
4186
|
});
|
|
4197
4187
|
|
|
4198
|
-
const ExpensesField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0440\u0430\u0441\u0445\u043E\u0434\u044B \u0432 \u043C\u0435\u0441\u044F\u0446", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...
|
|
4188
|
+
const ExpensesField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0440\u0430\u0441\u0445\u043E\u0434\u044B \u0432 \u043C\u0435\u0441\u044F\u0446", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
4199
4189
|
|
|
4200
|
-
const FIELD_NAME$2 = 'experience5Years';
|
|
4201
4190
|
const MAX_YEARS = 5;
|
|
4202
4191
|
const MIN_YEARS = 0;
|
|
4203
4192
|
const Experience5YearsField = JSX(({ field, input }) => {
|
|
4204
|
-
const onChange = useCallback((value) => field(
|
|
4205
|
-
return (jsx(InputControl, { label: "\u0421\u0442\u0430\u0436", placeholder: "\u0417\u0430 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0435 5 \u043B\u0435\u0442", type: "number", ...
|
|
4193
|
+
const onChange = useCallback((value) => field(input?.name ?? '')?.onChange?.(String(clamp(Number(value), MIN_YEARS, MAX_YEARS))), []);
|
|
4194
|
+
return (jsx(InputControl, { 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 }));
|
|
4206
4195
|
});
|
|
4207
4196
|
|
|
4208
|
-
const FamilyMembersField = JSX(({ field }) => {
|
|
4209
|
-
const { value, onChange } = field('
|
|
4197
|
+
const FamilyMembersField = JSX(({ field, input }) => {
|
|
4198
|
+
const { value, onChange } = field(input?.name ?? '');
|
|
4210
4199
|
const familyStatusKey = field('familyStatus')?.value?.key;
|
|
4211
4200
|
const adultsCount = familyStatusKey === 'MARRIED' ? 2 : 1;
|
|
4212
4201
|
const childrenCount = Number(field('children')?.value);
|
|
4213
4202
|
const dependentsCount = Number(field('dependents')?.value);
|
|
4214
4203
|
const totalCount = adultsCount + childrenCount + dependentsCount;
|
|
4215
4204
|
useEffect(() => {
|
|
4216
|
-
|
|
4205
|
+
onChange?.(totalCount);
|
|
4217
4206
|
}, [familyStatusKey, childrenCount, dependentsCount]);
|
|
4218
|
-
return (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0447\u043B\u0435\u043D\u043E\u0432 \u0441\u0435\u043C\u044C\u0438", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", type: "number", disabled: true, value: value, onChange:
|
|
4207
|
+
return (jsx(InputControl, { label: "\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E \u0447\u043B\u0435\u043D\u043E\u0432 \u0441\u0435\u043C\u044C\u0438", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", type: "number", disabled: true, value: value, onChange: onChange }));
|
|
4219
4208
|
});
|
|
4220
4209
|
|
|
4221
4210
|
const FamilyStatusField = JSX(({ field, input }) => {
|
|
@@ -4223,7 +4212,7 @@
|
|
|
4223
4212
|
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 }));
|
|
4224
4213
|
});
|
|
4225
4214
|
|
|
4226
|
-
const GeneralSeniorityField = JSX(({ field, input }) => (jsx(InputControl, { 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", ...
|
|
4215
|
+
const GeneralSeniorityField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4227
4216
|
|
|
4228
4217
|
const HousingField = JSX(({ field, input }) => {
|
|
4229
4218
|
const { data: housing } = useLeadFormData('HOUSE_TYPE');
|
|
@@ -4234,26 +4223,25 @@
|
|
|
4234
4223
|
|
|
4235
4224
|
const InfoCardField = JSX(({ input }) => (jsx(InfoCard, { __html: input?.label })));
|
|
4236
4225
|
|
|
4237
|
-
const JobsNumberField = JSX(({ field, input }) => (jsx(InputControl, { 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, ...
|
|
4226
|
+
const JobsNumberField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4238
4227
|
|
|
4239
|
-
const LastJobExperienceField = JSX(({ field, input }) => (jsx(InputControl, { 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, ...
|
|
4228
|
+
const LastJobExperienceField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4240
4229
|
|
|
4241
4230
|
const LegalEntityNameField = JSX(({ field, input }) => {
|
|
4242
|
-
return (jsx(InputControl, { label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043B\u0438\u0446\u0430", ...input, ...
|
|
4231
|
+
return (jsx(InputControl, { label: "\u041D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043B\u0438\u0446\u0430", ...input, ...field(input?.name ?? ''), disabled: !field?.('shareholderFlg')?.value }));
|
|
4243
4232
|
});
|
|
4244
4233
|
|
|
4245
|
-
const LegalFormField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u041F\u0424", placeholder: "\u041E\u041E\u041E, \u041F\u0410\u041E \u0438 \u0434\u0440.", ...
|
|
4234
|
+
const LegalFormField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u041F\u0424", placeholder: "\u041E\u041E\u041E, \u041F\u0410\u041E \u0438 \u0434\u0440.", ...field(input?.name ?? ''), ...input })));
|
|
4246
4235
|
|
|
4247
|
-
const
|
|
4248
|
-
const LimitedBirthdayField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...getValidation(field(FIELD_NAME$1), validatorObj.limitedBirthday, input?.required), disabled: input?.filledByEsia && isEsiaAuthorize(field, FIELD_NAME$1) })));
|
|
4236
|
+
const LimitedBirthdayField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u043E\u0436\u0434\u0435\u043D\u0438\u044F", ...field(input?.name ?? ''), disabled: input?.filledByEsia && isEsiaAuthorize(field, input.name ?? '') })));
|
|
4249
4237
|
|
|
4250
|
-
const MandatoryPaymentsField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0432\u044B\u043F\u043B\u0430\u0442\u044B", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...
|
|
4238
|
+
const MandatoryPaymentsField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0432\u044B\u043F\u043B\u0430\u0442\u044B", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435", isInteger: true, ...field(input?.name ?? ''), ...input })));
|
|
4251
4239
|
|
|
4252
4240
|
const METHODS_OF_OBTAIN = [
|
|
4253
4241
|
{ id: 'office', text: 'В отделении Банка' },
|
|
4254
4242
|
{ id: 'courier', text: 'Курьерская доставка' },
|
|
4255
4243
|
];
|
|
4256
|
-
const MethodObtainField = JSX(({ field, input }) => (jsx(RadioButtonGroupControl, { orientation: "horizontal", items: METHODS_OF_OBTAIN, ...
|
|
4244
|
+
const MethodObtainField = JSX(({ field, input }) => (jsx(RadioButtonGroupControl, { orientation: "horizontal", items: METHODS_OF_OBTAIN, ...field(input?.name ?? '') })));
|
|
4257
4245
|
|
|
4258
4246
|
const OrganizationField = JSX(({ field, input }) => {
|
|
4259
4247
|
const { data } = useLeadFormData('ORGANIZATION_TYPE');
|
|
@@ -4272,19 +4260,18 @@
|
|
|
4272
4260
|
field?.('inn')?.onChange?.(item.data?.inn);
|
|
4273
4261
|
updateOrganizationFields(store, field, item);
|
|
4274
4262
|
}, []);
|
|
4275
|
-
return (jsx(InputControl, { 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, ...
|
|
4263
|
+
return (jsx(InputControl, { 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 }));
|
|
4276
4264
|
});
|
|
4277
4265
|
|
|
4278
|
-
const OtherIncomeField = JSX(({ field, input }) => (jsx(InputControl, { 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, ...
|
|
4266
|
+
const OtherIncomeField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4279
4267
|
|
|
4280
|
-
const ParticipantDateRegistrationField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043F\u043E \u043C\u0435\u0441\u0442\u0443 \u0436\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430", ...
|
|
4268
|
+
const ParticipantDateRegistrationField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0414\u0430\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043F\u043E \u043C\u0435\u0441\u0442\u0443 \u0436\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0430", ...field(input?.name ?? '') })));
|
|
4281
4269
|
|
|
4282
4270
|
const MAX_PART = 100;
|
|
4283
4271
|
const MIN_PART = 0;
|
|
4284
|
-
const FIELD_NAME = 'partInBusiness';
|
|
4285
4272
|
const PartInBusinessField = JSX(({ field, input }) => {
|
|
4286
|
-
const onChange = useCallback((value) => field(
|
|
4287
|
-
return (jsx(InputControl, { label: "\u0414\u043E\u043B\u044F \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0432 \u0431\u0438\u0437\u043D\u0435\u0441\u0435", placeholder: "\u0432 %", isInteger: true, maxLength: 3, ...
|
|
4273
|
+
const onChange = useCallback((value) => field(input?.name ?? '')?.onChange?.(String(clamp(Number(value), MIN_PART, MAX_PART))), []);
|
|
4274
|
+
return (jsx(InputControl, { label: "\u0414\u043E\u043B\u044F \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0432 \u0431\u0438\u0437\u043D\u0435\u0441\u0435", placeholder: "\u0432 %", isInteger: true, maxLength: 3, ...field(input?.name ?? ''), ...input, onChange: onChange }));
|
|
4288
4275
|
});
|
|
4289
4276
|
|
|
4290
4277
|
const getPaymentSystems = async (creditProgramId) => {
|
|
@@ -4298,22 +4285,34 @@
|
|
|
4298
4285
|
text: _.name,
|
|
4299
4286
|
}));
|
|
4300
4287
|
|
|
4288
|
+
function useAsyncEffect(effect, deps) {
|
|
4289
|
+
useEffect(() => {
|
|
4290
|
+
const free = effect();
|
|
4291
|
+
return () => {
|
|
4292
|
+
free.then((_) => {
|
|
4293
|
+
_ instanceof Function && _();
|
|
4294
|
+
});
|
|
4295
|
+
};
|
|
4296
|
+
}, deps);
|
|
4297
|
+
}
|
|
4298
|
+
|
|
4299
|
+
const optionKey = (option) => option?.key;
|
|
4301
4300
|
const PaymentSystemField = JSX(({ field, input }) => {
|
|
4302
|
-
const { value, onChange } = field('paymentSystem');
|
|
4303
|
-
const [programId] = useLocalStorage('programId');
|
|
4304
4301
|
const [paymentSystemOptions, setPaymentSystemOptions] = useState([]);
|
|
4305
|
-
|
|
4302
|
+
const localStore = useLocalStore();
|
|
4303
|
+
useAsyncEffect(async () => {
|
|
4304
|
+
const { programId } = localStore;
|
|
4306
4305
|
if (programId) {
|
|
4307
|
-
|
|
4308
|
-
|
|
4309
|
-
setPaymentSystemOptions(fetchedPaymentSystems || []);
|
|
4310
|
-
})();
|
|
4306
|
+
const fetchedPaymentSystems = await getPaymentSystems(programId);
|
|
4307
|
+
setPaymentSystemOptions(fetchedPaymentSystems ?? []);
|
|
4311
4308
|
}
|
|
4312
4309
|
}, []);
|
|
4313
|
-
const
|
|
4314
|
-
return (jsx(RadioButtonGroupControl, { label: "\u041F\u043B\u0430\u0442\u0435\u0436\u043D\u0430\u044F \u0441\u0438\u0441\u0442\u0435\u043C\u0430", orientation: "horizontal", items:
|
|
4310
|
+
const items = useMemo(() => paymentSystemOptions?.map((_) => ({ id: _.key, text: _.text })) ?? [], [paymentSystemOptions]);
|
|
4311
|
+
return (jsx(RadioButtonGroupControl, { label: "\u041F\u043B\u0430\u0442\u0435\u0436\u043D\u0430\u044F \u0441\u0438\u0441\u0442\u0435\u043C\u0430", orientation: "horizontal", items: items, ...field(input?.name ?? '', {
|
|
4312
|
+
format: optionKey,
|
|
4313
|
+
parse: (key) => paymentSystemOptions?.find((_) => _.key === key),
|
|
4314
|
+
}) }));
|
|
4315
4315
|
});
|
|
4316
|
-
const formatPaymentSystems = (paymentSystems) => paymentSystems?.map((_) => ({ id: _.key, text: _.text })) ?? [];
|
|
4317
4316
|
|
|
4318
4317
|
const PositionOrganizationField = JSX(({ field, input }) => {
|
|
4319
4318
|
const { data: positionOrganization } = useLeadFormData('POSITION');
|
|
@@ -4323,10 +4322,10 @@
|
|
|
4323
4322
|
const RegionRetailField = JSX(({ field, input }) => {
|
|
4324
4323
|
const { data: regions } = useLeadFormData('REGION_RF');
|
|
4325
4324
|
const formatRegions = regions?.map(({ key, value }) => ({ key, text: value }));
|
|
4326
|
-
return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: formatRegions, ...
|
|
4325
|
+
return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", isSearch: true, options: formatRegions, ...field(input?.name ?? '') }));
|
|
4327
4326
|
});
|
|
4328
4327
|
|
|
4329
|
-
const RetirementIncomeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041F\u0435\u043D\u0441\u0438\u043E\u043D\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, ...
|
|
4328
|
+
const RetirementIncomeField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u041F\u0435\u043D\u0441\u0438\u043E\u043D\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 })));
|
|
4330
4329
|
|
|
4331
4330
|
const GENDERS = ['male', 'female'];
|
|
4332
4331
|
const getGenderFromName = async (name) => {
|
|
@@ -4356,10 +4355,10 @@
|
|
|
4356
4355
|
})();
|
|
4357
4356
|
}
|
|
4358
4357
|
}, []);
|
|
4359
|
-
return (jsx(RadioButtonGroupControl, { label: "\u041F\u043E\u043B", orientation: "horizontal", items: SEX_TYPES, ...
|
|
4358
|
+
return (jsx(RadioButtonGroupControl, { label: "\u041F\u043E\u043B", orientation: "horizontal", items: SEX_TYPES, ...field(input?.name ?? '') }));
|
|
4360
4359
|
});
|
|
4361
4360
|
|
|
4362
|
-
const ShareholderFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u042F \u044F\u0432\u043B\u044F\u044E\u0441\u044C \u0430\u043A\u0446\u0438\u043E\u043D\u0435\u0440\u043E\u043C / \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u043C / \u0447\u043B\u0435\u043D\u043E\u043C / \u043F\u0430\u0439\u0449\u0438\u043A\u043E\u043C / \u0432\u043A\u043B\u0430\u0434\u0447\u0438\u043A\u043E\u043C \u0441 \u0434\u043E\u043B\u0435\u0439 \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0431\u043E\u043B\u0435\u0435 20% \u0443\u0441\u0442\u0430\u0432\u043D\u043E\u0433\u043E \u043A\u0430\u043F\u0438\u0442\u0430\u043B\u0430 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043B\u0438\u0446\u0430", ...
|
|
4361
|
+
const ShareholderFlgField = JSX(({ field, input }) => (jsx(CheckboxWithError, { text: "\u042F \u044F\u0432\u043B\u044F\u044E\u0441\u044C \u0430\u043A\u0446\u0438\u043E\u043D\u0435\u0440\u043E\u043C / \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u043C / \u0447\u043B\u0435\u043D\u043E\u043C / \u043F\u0430\u0439\u0449\u0438\u043A\u043E\u043C / \u0432\u043A\u043B\u0430\u0434\u0447\u0438\u043A\u043E\u043C \u0441 \u0434\u043E\u043B\u0435\u0439 \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0431\u043E\u043B\u0435\u0435 20% \u0443\u0441\u0442\u0430\u0432\u043D\u043E\u0433\u043E \u043A\u0430\u043F\u0438\u0442\u0430\u043B\u0430 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u043B\u0438\u0446\u0430", ...field(input?.name ?? '') })));
|
|
4363
4362
|
|
|
4364
4363
|
const SnilsInput = JSX(({ children, onChange, maxLength, ...inputProps }) => {
|
|
4365
4364
|
const handleChange = useCallback((v) => maxLength
|
|
@@ -4375,86 +4374,86 @@
|
|
|
4375
4374
|
|
|
4376
4375
|
const InputSnilsControl = JSX(({ className, label, value, error, onChange, onBlur, ...rest }) => (jsxs("div", { className: style('shrink-0 w-full', className), children: [jsx(SnilsInput, { "aria-label": label, label: getRequiredLabel({ label, errors: rest?.errors }), valid: Boolean(!error), value: value, onChange: onChange, onBlur: onBlur, placeholder: "___-___-___ __", ...rest }), renderErrorText(error)] })));
|
|
4377
4376
|
|
|
4378
|
-
const SnilsField = JSX(({ field, input }) => (jsx(InputSnilsControl, { label: "\u0421\u041D\u0418\u041B\u0421", maxLength: 14, ...
|
|
4377
|
+
const SnilsField = JSX(({ field, input }) => (jsx(InputSnilsControl, { label: "\u0421\u041D\u0418\u041B\u0421", maxLength: 14, ...field(input?.name ?? ''), ...input })));
|
|
4379
4378
|
|
|
4380
|
-
const TotalIncomeField = JSX(({ field, input }) => (jsx(InputControl, { 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, ...
|
|
4379
|
+
const TotalIncomeField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4381
4380
|
|
|
4382
|
-
const WagesField = JSX(({ field, input }) => (jsx(InputControl, { 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, ...
|
|
4381
|
+
const WagesField = JSX(({ field, input }) => (jsx(InputControl, { 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 })));
|
|
4383
4382
|
|
|
4384
4383
|
const InputsApplicationLeadMap = {
|
|
4385
|
-
limitedBirthday:
|
|
4384
|
+
limitedBirthday: LimitedBirthdayField,
|
|
4386
4385
|
};
|
|
4387
4386
|
const InputsConsentsMap = {
|
|
4388
|
-
processPersonalDataFlg:
|
|
4389
|
-
consentProviderFlg:
|
|
4390
|
-
consentOthersFlg:
|
|
4391
|
-
consentInformFlg:
|
|
4392
|
-
consentPfrFlg:
|
|
4387
|
+
processPersonalDataFlg: ConsentField,
|
|
4388
|
+
consentProviderFlg: ConsentField,
|
|
4389
|
+
consentOthersFlg: ConsentField,
|
|
4390
|
+
consentInformFlg: ConsentField,
|
|
4391
|
+
consentPfrFlg: ConsentField,
|
|
4393
4392
|
};
|
|
4394
4393
|
const InputsRetailMap = {
|
|
4395
|
-
organization:
|
|
4396
|
-
organizationAddress:
|
|
4397
|
-
organizationPhone:
|
|
4398
|
-
organizationName:
|
|
4399
|
-
legalForm:
|
|
4400
|
-
generalSeniority:
|
|
4401
|
-
lastJobExperience:
|
|
4402
|
-
experience5Years:
|
|
4403
|
-
jobsNumber:
|
|
4404
|
-
beginDate:
|
|
4405
|
-
addressFact:
|
|
4406
|
-
addressRegistration:
|
|
4407
|
-
addressRetail:
|
|
4408
|
-
addressMatch:
|
|
4409
|
-
sex:
|
|
4410
|
-
limitedBirthday:
|
|
4411
|
-
birthPlace:
|
|
4412
|
-
education:
|
|
4413
|
-
housing:
|
|
4414
|
-
amountWorkers:
|
|
4415
|
-
employment:
|
|
4416
|
-
employerActivities:
|
|
4417
|
-
employerOrganization:
|
|
4418
|
-
positionOrganization:
|
|
4419
|
-
familyStatus:
|
|
4420
|
-
familyMembers:
|
|
4421
|
-
children:
|
|
4422
|
-
dependents:
|
|
4423
|
-
totalIncome:
|
|
4424
|
-
expenses:
|
|
4425
|
-
snils:
|
|
4426
|
-
conscription:
|
|
4427
|
-
armyIdFlg:
|
|
4428
|
-
dulSerie:
|
|
4429
|
-
dulNumber:
|
|
4430
|
-
dulIssueDateField:
|
|
4431
|
-
dulSubdivisionCode:
|
|
4432
|
-
dulIssuedBy:
|
|
4433
|
-
participantDateRegistration:
|
|
4434
|
-
retirementIncome:
|
|
4435
|
-
otherIncome:
|
|
4436
|
-
wages:
|
|
4437
|
-
mandatoryPayments:
|
|
4438
|
-
disablePeopleFlg:
|
|
4439
|
-
bankruptcyFlg:
|
|
4440
|
-
shareholderFlg:
|
|
4441
|
-
legalEntityName:
|
|
4442
|
-
creditInRshbCd:
|
|
4443
|
-
bankEmployeeCode:
|
|
4444
|
-
partInBusiness:
|
|
4445
|
-
regionRetail:
|
|
4446
|
-
infoCard:
|
|
4447
|
-
calculator:
|
|
4448
|
-
confirmationIncome:
|
|
4394
|
+
organization: OrganizationField,
|
|
4395
|
+
organizationAddress: AddressField,
|
|
4396
|
+
organizationPhone: PhoneField,
|
|
4397
|
+
organizationName: OrganizationNameField,
|
|
4398
|
+
legalForm: LegalFormField,
|
|
4399
|
+
generalSeniority: GeneralSeniorityField,
|
|
4400
|
+
lastJobExperience: LastJobExperienceField,
|
|
4401
|
+
experience5Years: Experience5YearsField,
|
|
4402
|
+
jobsNumber: JobsNumberField,
|
|
4403
|
+
beginDate: BeginDateField,
|
|
4404
|
+
addressFact: AddressFactField,
|
|
4405
|
+
addressRegistration: AddressField,
|
|
4406
|
+
addressRetail: AddressRetailField,
|
|
4407
|
+
addressMatch: AddressMatchField,
|
|
4408
|
+
sex: SexField,
|
|
4409
|
+
limitedBirthday: LimitedBirthdayField,
|
|
4410
|
+
birthPlace: BirthPlaceField,
|
|
4411
|
+
education: EducationField,
|
|
4412
|
+
housing: HousingField,
|
|
4413
|
+
amountWorkers: AmountWorkersField,
|
|
4414
|
+
employment: EmploymentField,
|
|
4415
|
+
employerActivities: EmployerActivitiesField,
|
|
4416
|
+
employerOrganization: EmployerOrganizationField,
|
|
4417
|
+
positionOrganization: PositionOrganizationField,
|
|
4418
|
+
familyStatus: FamilyStatusField,
|
|
4419
|
+
familyMembers: FamilyMembersField,
|
|
4420
|
+
children: ChildrenField,
|
|
4421
|
+
dependents: DependentsField,
|
|
4422
|
+
totalIncome: TotalIncomeField,
|
|
4423
|
+
expenses: ExpensesField,
|
|
4424
|
+
snils: SnilsField,
|
|
4425
|
+
conscription: ConscriptionField,
|
|
4426
|
+
armyIdFlg: ArmyIdFlgField,
|
|
4427
|
+
dulSerie: DulSerieField,
|
|
4428
|
+
dulNumber: DulNumberField,
|
|
4429
|
+
dulIssueDateField: DulIssueDateField,
|
|
4430
|
+
dulSubdivisionCode: DulSubdivisionCodeField,
|
|
4431
|
+
dulIssuedBy: DulIssuedByField,
|
|
4432
|
+
participantDateRegistration: ParticipantDateRegistrationField,
|
|
4433
|
+
retirementIncome: RetirementIncomeField,
|
|
4434
|
+
otherIncome: OtherIncomeField,
|
|
4435
|
+
wages: WagesField,
|
|
4436
|
+
mandatoryPayments: MandatoryPaymentsField,
|
|
4437
|
+
disablePeopleFlg: DisablePeopleFlgField,
|
|
4438
|
+
bankruptcyFlg: BankruptcyFlgField,
|
|
4439
|
+
shareholderFlg: ShareholderFlgField,
|
|
4440
|
+
legalEntityName: LegalEntityNameField,
|
|
4441
|
+
creditInRshbCd: CreditInRshbCdField,
|
|
4442
|
+
bankEmployeeCode: BankEmpoleeCodeField,
|
|
4443
|
+
partInBusiness: PartInBusinessField,
|
|
4444
|
+
regionRetail: RegionRetailField,
|
|
4445
|
+
infoCard: InfoCardField,
|
|
4446
|
+
calculator: CreditCalcField,
|
|
4447
|
+
confirmationIncome: ConfirmationIncomeField,
|
|
4449
4448
|
};
|
|
4450
4449
|
const InputRetailCardMap = {
|
|
4451
|
-
addressCourier:
|
|
4452
|
-
paymentSystem:
|
|
4453
|
-
currency:
|
|
4454
|
-
cardCategory:
|
|
4455
|
-
codeWord:
|
|
4456
|
-
methodObtain:
|
|
4457
|
-
deliveryDate:
|
|
4450
|
+
addressCourier: AddressField,
|
|
4451
|
+
paymentSystem: PaymentSystemField,
|
|
4452
|
+
currency: CurrencyField,
|
|
4453
|
+
cardCategory: CardCategoryField,
|
|
4454
|
+
codeWord: CodeWordField,
|
|
4455
|
+
methodObtain: MethodObtainField,
|
|
4456
|
+
deliveryDate: DeliveryDateFiels,
|
|
4458
4457
|
};
|
|
4459
4458
|
|
|
4460
4459
|
const CONSENT_ALL_DOCS_TEXT = 'Согласие на все документы';
|
|
@@ -4464,13 +4463,15 @@
|
|
|
4464
4463
|
const handleGeneralToggle = (value) => {
|
|
4465
4464
|
for (const item of inputs) {
|
|
4466
4465
|
const itemField = field(item.name);
|
|
4467
|
-
itemField
|
|
4466
|
+
itemField.onChange?.(value);
|
|
4468
4467
|
}
|
|
4469
4468
|
};
|
|
4470
4469
|
const hasValidationErrors = useMemo(() => inputs
|
|
4471
4470
|
?.filter((_) => _.required)
|
|
4472
4471
|
?.some((_) => Boolean(withValidator(field(_?.name), validatorObj[_?.name]).error)), [inputs]);
|
|
4473
|
-
return (jsx("div", { className: "w-fit", children: jsx(Foldable, { isFoldButtonOnTop: true, unfoldedByDefault: true, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { isUnfolded: isUnfolded, className: "flex flex-col pl-2xl", children:
|
|
4472
|
+
return (jsx("div", { className: "w-fit", children: jsx(Foldable, { isFoldButtonOnTop: true, unfoldedByDefault: true, renderFoldableSection: ({ isUnfolded }) => (jsx(FoldableSection, { isUnfolded: isUnfolded, className: "flex flex-col pl-2xl", children:
|
|
4473
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
4474
|
+
inputs.map(getField(field, {}, { ...InputsConsentsMap })) })), renderFoldButton: renderGeneralCheckbox(jsxs("div", { children: [jsx(Checkbox, { value: isChecked, onChange: handleGeneralToggle, text: CONSENT_ALL_DOCS_TEXT }, key), renderErrorText(hasValidationErrors ? CONSENT_REQUIRED : '')] })) }) }));
|
|
4474
4475
|
});
|
|
4475
4476
|
const renderGeneralCheckbox = (generalCheckBox) => (foldableData) => (jsxs("div", { className: "flex items-start", children: [generalCheckBox, jsx("button", { onClick: foldableData.onToggle, className: "px-m py-2xs", type: "button", children: jsx(Icon, { className: "text-primary-text", name: foldableData.isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', width: "16", height: "16" }) })] }));
|
|
4476
4477
|
|
|
@@ -4478,9 +4479,9 @@
|
|
|
4478
4479
|
const { consentInputs, restInputs } = splitInputs(inputs || []);
|
|
4479
4480
|
return consentInputs.length > 2 ? (jsxs("div", { children: [restInputs.map(getField(field, {}, { ...InputsApplicationLeadMap })), jsx(GroupedConsents, { inputs: consentInputs, field: field })] })) : ((inputs || [])?.map(getField(field, {}, { ...InputsApplicationLeadMap })));
|
|
4480
4481
|
};
|
|
4481
|
-
const splitInputs = (inputs) => ({
|
|
4482
|
-
consentInputs: inputs
|
|
4483
|
-
restInputs: inputs
|
|
4482
|
+
const splitInputs = (inputs = []) => ({
|
|
4483
|
+
consentInputs: inputs.filter(({ name }) => Object.keys(CONSENTS).includes(String(name))),
|
|
4484
|
+
restInputs: inputs.filter(({ name }) => !Object.keys(CONSENTS).includes(String(name))),
|
|
4484
4485
|
});
|
|
4485
4486
|
|
|
4486
4487
|
const renderSubmitButton = (button, isSending) => (jsx(Button, { className: style('w-full @xl:w-auto'), type: "submit", isLoading: isSending, children: button?.text ? button.text : 'Отправить заявку' }));
|
|
@@ -5177,19 +5178,15 @@
|
|
|
5177
5178
|
return saveUserData;
|
|
5178
5179
|
};
|
|
5179
5180
|
|
|
5180
|
-
const useApplicationLeadApi = ({
|
|
5181
|
-
const [responseStatus, setResponseStatus] = useState('');
|
|
5181
|
+
const useApplicationLeadApi = ({ programId, nextStepLink }) => {
|
|
5182
5182
|
const [isSending, { setTrue: startSending, setFalse: endSending }] = useBool(false);
|
|
5183
|
+
const [ok, setOK] = useState();
|
|
5183
5184
|
const saveUserData = useSaveUserData();
|
|
5184
5185
|
const openEsiaLoginDialog = useEsiaLoginDialog(nextStepLink);
|
|
5185
5186
|
const consentBkiDialog = useConsentBkiDialog(openEsiaLoginDialog);
|
|
5186
5187
|
const verifyPhoneDialog = useDialog(VerifyPhoneDialog);
|
|
5187
5188
|
const draftDialog = useDraftDialog();
|
|
5188
5189
|
const handleSubmit = useCallback(async (formData) => {
|
|
5189
|
-
const feedbackValidator = objectValidator(getObjectValidator(inputs));
|
|
5190
|
-
if (!isValidationSuccess(feedbackValidator(formData))) {
|
|
5191
|
-
return;
|
|
5192
|
-
}
|
|
5193
5190
|
try {
|
|
5194
5191
|
startSending();
|
|
5195
5192
|
const profileId = await createUserProfile({
|
|
@@ -5223,7 +5220,7 @@
|
|
|
5223
5220
|
}
|
|
5224
5221
|
}
|
|
5225
5222
|
catch {
|
|
5226
|
-
|
|
5223
|
+
setOK(false);
|
|
5227
5224
|
}
|
|
5228
5225
|
};
|
|
5229
5226
|
const acceptedConsents = getAcceptedConsents(formData);
|
|
@@ -5236,14 +5233,10 @@
|
|
|
5236
5233
|
}
|
|
5237
5234
|
}
|
|
5238
5235
|
catch {
|
|
5239
|
-
|
|
5236
|
+
setOK(false);
|
|
5240
5237
|
}
|
|
5241
5238
|
}, []);
|
|
5242
|
-
return {
|
|
5243
|
-
handleSubmit,
|
|
5244
|
-
responseStatus,
|
|
5245
|
-
isSending,
|
|
5246
|
-
};
|
|
5239
|
+
return { isSending, ok, handleSubmit };
|
|
5247
5240
|
};
|
|
5248
5241
|
const getAcceptedConsents = (formData) => Object.keys(CONSENTS)
|
|
5249
5242
|
.filter((_) => formData[_])
|
|
@@ -5405,19 +5398,22 @@
|
|
|
5405
5398
|
|
|
5406
5399
|
const ApplicationLeadForm = JSX(({ className, title, programId = '', nextStepLink = '/credit-lead', button, ...rest }) => {
|
|
5407
5400
|
const inputs = useMemo(() => (applicationFormData?.flatMap((_) => _?.inputs) || []), [applicationFormData]);
|
|
5401
|
+
const formValidator = useMemo(() => getFormValidator(inputs), [inputs]);
|
|
5408
5402
|
const [initialFormState, { isLoading }] = useInitApplicationLead(inputs, nextStepLink);
|
|
5409
|
-
const {
|
|
5410
|
-
inputs,
|
|
5403
|
+
const { isSending, ok, handleSubmit } = useApplicationLeadApi({
|
|
5411
5404
|
programId,
|
|
5412
5405
|
nextStepLink,
|
|
5413
5406
|
});
|
|
5414
|
-
const [, { field, onSubmit }] = useForm(initialFormState, {
|
|
5407
|
+
const [, { field, onSubmit }] = useForm(initialFormState, {
|
|
5408
|
+
formValidator,
|
|
5409
|
+
onSubmit: handleSubmit,
|
|
5410
|
+
});
|
|
5415
5411
|
const responseTypeDialog = useDialog(ResponseTypeDialog);
|
|
5416
5412
|
useEffect(() => {
|
|
5417
|
-
if (
|
|
5418
|
-
responseTypeDialog.open({
|
|
5413
|
+
if (ok !== undefined) {
|
|
5414
|
+
responseTypeDialog.open({ ok });
|
|
5419
5415
|
}
|
|
5420
|
-
}, [
|
|
5416
|
+
}, [ok]);
|
|
5421
5417
|
return (jsx(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: jsxs("form", { onSubmit: onSubmit, className: "space-y-m relative", children: [isLoading ? jsx(Loader, { blur: false }) : null, applicationFormData.map((_, i) => (jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), renderInputs$2({ field, inputs: _?.inputs })] }, `section-${i}`))), renderSubmitButton(button, isSending)] }) }));
|
|
5422
5418
|
});
|
|
5423
5419
|
|
|
@@ -5760,6 +5756,8 @@
|
|
|
5760
5756
|
return (jsxs("div", { className: "flex-1", children: [item?.title ? (jsx("div", { className: "mb-m", children: jsx(Text, { size: "text-m", font: "font-medium", color: "text-primary-text", children: item.title }) })) : null, jsx(SlideCheckboxGroup, { items: options, multiple: !item?.single, ...field(key) })] }, key));
|
|
5761
5757
|
};
|
|
5762
5758
|
|
|
5759
|
+
const identity = (_) => _;
|
|
5760
|
+
|
|
5763
5761
|
function zip(firstCol, ...restCols) {
|
|
5764
5762
|
return firstCol.map((firstEl, rowIndex) => [firstEl, ...restCols.map((col) => col[rowIndex])]);
|
|
5765
5763
|
}
|
|
@@ -5805,12 +5803,12 @@
|
|
|
5805
5803
|
|
|
5806
5804
|
const useFiltrationForm = (initialFormState, { block, page, normalize = identity }) => {
|
|
5807
5805
|
const blocks = block?.blocks || [];
|
|
5808
|
-
const [filtrationState,
|
|
5806
|
+
const [filtrationState, operators] = useForm(initialFormState);
|
|
5809
5807
|
const blocksWithProps = useMemo(() => zip(blocks, blocks.map((b) => resolveBlockProps(b.content, page?.fallback))), [blocks, page?.fallback]);
|
|
5810
5808
|
const blocksToRender = filtrationState === initialFormState
|
|
5811
5809
|
? blocks
|
|
5812
5810
|
: filterBlocks(blocksWithProps, filtrationState)(normalize);
|
|
5813
|
-
return [filtrationState, { blocksToRender, blocksWithProps },
|
|
5811
|
+
return [filtrationState, { blocksToRender, blocksWithProps }, operators];
|
|
5814
5812
|
};
|
|
5815
5813
|
|
|
5816
5814
|
const EMPTY_SCHEMA = {};
|
|
@@ -6310,7 +6308,7 @@
|
|
|
6310
6308
|
isWithdrawn: Boolean(defaultParams?.isWithdrawn),
|
|
6311
6309
|
isNewClient: Boolean(defaultParams?.isNewClient),
|
|
6312
6310
|
currency: DEFAULT_CURRENCY,
|
|
6313
|
-
}, { normalize });
|
|
6311
|
+
}, { normalizer: normalize });
|
|
6314
6312
|
const currencyValue = field?.('currency')?.value ?? DEFAULT_CURRENCY;
|
|
6315
6313
|
const isNewClient = field?.('isNewClient')?.value;
|
|
6316
6314
|
const row = getRows(rows, currencyValue);
|
|
@@ -6736,6 +6734,8 @@
|
|
|
6736
6734
|
const CarouselRecommendationCard = JSX(({ className, padding, description, additionalDescription, href, icon, isDotted, __html, socialMedia = [], target, title, align = 'text-left', benefits, imageOptions: { directionRight = true, isImageAlwaysOnRight = ImageAlwaysOnRight, isImageSecondary = false, } = {}, data, ...rest }) => (jsx(BlockWrapper, { className: style('relative min-h-28 group-data-gray:bg-main-divider/50', className), defaultPadding: "p-0", ...rest, children: jsx(LinkWrapper, { href: href, target: target, className: "h-full", data: getAspectsWithInclude(data), children: jsxs(BaseTile, { className: "h-full", defaultPadding: "p-2xl", padding: padding, insetTitle: jsx(Headline, { title: title, description: description, headlineVersion: "XS", isEmbedded: true, align: align }), ...leftOrRightImage(isIcon(icon) ? jsx(Img, { image: icon }) : null, directionRight), buttons: socialMedia.length ? (jsx(SocialMedia, { media: socialMedia, stretched: true, showButtonText: true, version: rest?.version })) : null, isImageAlwaysOnRight: isImageAlwaysOnRight, isImageSecondary: isImageSecondary, imageAlign: "center", children: [jsx(BenefitsList, { benefits: benefits }), __html ? jsx(RichText, { __html: __html, isDotted: isDotted, itemSize: "list-s" }) : null, renderAdditionalDescription(additionalDescription, align)] }) }) })));
|
|
6737
6735
|
const renderAdditionalDescription = (additionalDescription, align) => additionalDescription ? (jsx(Paragraph, { size: "text-m", font: "font-light", color: "text-secondary-text group-data-secondary:text-white/80", align: align, children: additionalDescription })) : null;
|
|
6738
6736
|
|
|
6737
|
+
const carouselTariffsCardEventBus = new EventBus();
|
|
6738
|
+
|
|
6739
6739
|
const renderCardInfo = (cell, i) => {
|
|
6740
6740
|
const { title, description, buttons } = cell;
|
|
6741
6741
|
return (jsxs("div", { className: "py-lg border-b border-main-divider", children: [title ? (jsx("div", { className: "opacity-80", children: jsx(Text, { size: "text-m", color: "text-secondary-text", children: title }) })) : null, description ? (jsx("div", { className: "mt-2xs", children: jsx(Text, { size: "text-xl", color: "text-primary-text", children: description }) })) : null, buttons?.length ? (jsx("div", { className: "text-primary-main", children: renderButtonsSection(buttons) })) : null] }, String(i)));
|
|
@@ -6747,20 +6747,21 @@
|
|
|
6747
6747
|
? [cellsNode.slice(0, visibleCellsCount), cellsNode.slice(visibleCellsCount)]
|
|
6748
6748
|
: [cellsNode, []];
|
|
6749
6749
|
const [isVisible, setIsVisible] = useState(false);
|
|
6750
|
-
useEffect(() =>
|
|
6751
|
-
if (event && options?.parent
|
|
6750
|
+
useEffect(() => carouselTariffsCardEventBus.subscribe('fold', (event) => {
|
|
6751
|
+
if (event && options?.parent && event.parent === options?.parent) {
|
|
6752
6752
|
setIsVisible(event.isUnfolded);
|
|
6753
6753
|
}
|
|
6754
6754
|
}), [options?.parent]);
|
|
6755
|
-
|
|
6756
|
-
|
|
6757
|
-
|
|
6755
|
+
const toggle = useCallback(() => {
|
|
6756
|
+
carouselTariffsCardEventBus.fire('fold', {
|
|
6757
|
+
type: 'fold',
|
|
6758
|
+
isUnfolded: !isVisible,
|
|
6759
|
+
parent: options?.parent,
|
|
6760
|
+
});
|
|
6761
|
+
}, [isVisible, options?.parent]);
|
|
6762
|
+
return (jsxs(BlockWrapper, { className: style('flex flex-col', className), defaultPadding: "p-2xl", ...rest, children: [isIcon(icon) ? (jsx("div", { className: "self-center", children: jsx(Img, { image: icon }) })) : null, title ? (jsx(Heading, { className: style('pt-xs', align), headingType: "h5", title: title })) : null, button?.text ? jsx(LinkButton, { className: "w-full mt-m mb-lg", ...button }) : null, hiddenCells.length ? (jsx(Foldable, { renderFoldableSection: () => (jsxs("div", { children: [visibleCells, jsx(FoldableSection, { isUnfolded: isVisible, children: hiddenCells })] })), renderFoldButton: () => cardCells.length >= visibleCellsCount ? (jsx(FoldButton, { data: data, isUnfolded: isVisible, onClick: toggle })) : null })) : (jsx("div", { children: visibleCells }))] }));
|
|
6758
6763
|
});
|
|
6759
|
-
const
|
|
6760
|
-
if (parent !== undefined) {
|
|
6761
|
-
defaultEventBus.fire('fold', { type: 'fold', isUnfolded: !isUnfolded, parent });
|
|
6762
|
-
}
|
|
6763
|
-
}, type: "button", ...(isUnfolded ? getAspectsAttributes(data) : {}), children: [jsx("div", { children: isUnfolded ? 'Скрыть' : 'Подробнее о тарифе' }), jsx(Icon, { className: "text-primary-text", name: isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', width: "16", height: "16" })] }));
|
|
6764
|
+
const FoldButton = JSX(({ data, isUnfolded = false, onClick }) => (jsxs("button", { className: "w-full cursor-pointer text-primary-main pt-lg flex justify-between items-center", type: "button", onClick: onClick, ...(isUnfolded ? getAspectsAttributes(data) : {}), children: [jsx("div", { children: isUnfolded ? 'Скрыть' : 'Подробнее о тарифе' }), jsx(Icon, { className: "text-primary-text", name: isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon', width: "16", height: "16" })] })));
|
|
6764
6765
|
|
|
6765
6766
|
const ContactsBlock = JSX(({ className, contacts, info, version = 'secondary', ...rest }) => (jsxs(BlockWrapper, { className: style('flex', className), defaultPadding: "p-6xl", version: version, ...rest, children: [info?.length ? renderBlocks(info) : null, contacts?.length ? renderBlocks(contacts) : null] })));
|
|
6766
6767
|
const renderBlocks = (info) => (jsx("div", { className: "flex gap-5xl grow basis-0", children: info.map((column, i) => renderBlocksColumn({ column, i })) }));
|
|
@@ -6807,6 +6808,33 @@
|
|
|
6807
6808
|
return (jsx("div", { className: "py-lg px-5xl bg-white col-span-12", children: jsxs("div", { children: [jsxs("span", { className: "font-bold mr-s", children: ["\u0428\u0430\u0433 ", step + 1, " \u0438\u0437 ", totalSteps, "."] }), stepsTitles[step] || null, jsx(ProgressBar, { step: progress, showPercentage: false })] }) }));
|
|
6808
6809
|
});
|
|
6809
6810
|
|
|
6811
|
+
const calculateInputs = (getValue) => (inputs, step) => inputs
|
|
6812
|
+
.filter((_) => _)
|
|
6813
|
+
.map((_) => {
|
|
6814
|
+
if ([
|
|
6815
|
+
checkIsRetiree(step, getValue),
|
|
6816
|
+
checkBusinessOwner(_, getValue),
|
|
6817
|
+
checkConsentPfrFlg(_, getValue),
|
|
6818
|
+
checkAddressFillFromESIA(_, getValue),
|
|
6819
|
+
checkAddressFact(_, getValue),
|
|
6820
|
+
checkCondition(_, getValue),
|
|
6821
|
+
].some(Boolean)) {
|
|
6822
|
+
return { ..._, required: false };
|
|
6823
|
+
}
|
|
6824
|
+
return _;
|
|
6825
|
+
});
|
|
6826
|
+
const checkIsRetiree = (step, getValue) => step === 2 && getValue('employment')?.key === 'RETIREE';
|
|
6827
|
+
const checkBusinessOwner = ({ name }, getValue) => name === 'partInBusiness' && getValue('positionOrganization')?.key !== 'BUSINESS_OWNER';
|
|
6828
|
+
const checkAddressFillFromESIA = ({ name, filledByEsia }, getValue) => name?.startsWith('address') && getValue('esiaAccountTypeCd')?.key && filledByEsia;
|
|
6829
|
+
const checkAddressFact = ({ name }, getValue) => name === 'addressFact' && getValue('addressMatch');
|
|
6830
|
+
const checkCondition = ({ condition }, getValue) => condition?.name &&
|
|
6831
|
+
condition?.values?.some((_) => {
|
|
6832
|
+
const dataValue = getValue(condition?.name);
|
|
6833
|
+
return _ !== (dataValue?.key ?? dataValue);
|
|
6834
|
+
});
|
|
6835
|
+
const checkConsentPfrFlg = ({ name }, getValue) => name === 'snils' && isSnilsRequired(getValue);
|
|
6836
|
+
const isSnilsRequired = (getValue) => getValue('confirmationIncome')?.key !== 'PFR_CERTIFICATE';
|
|
6837
|
+
|
|
6810
6838
|
var STATUS_TYPE;
|
|
6811
6839
|
(function (STATUS_TYPE) {
|
|
6812
6840
|
STATUS_TYPE["process"] = "IN_PROCESS";
|
|
@@ -6964,40 +6992,14 @@
|
|
|
6964
6992
|
return statusesMap[status] || jsx(ReworkStatusContent$1, {});
|
|
6965
6993
|
};
|
|
6966
6994
|
|
|
6967
|
-
const
|
|
6968
|
-
|
|
6969
|
-
.map((_) => {
|
|
6970
|
-
if ([
|
|
6971
|
-
checkIsRetiree(step, getValue),
|
|
6972
|
-
checkBusinessOwner(_, getValue),
|
|
6973
|
-
checkConsentPfrFlg(_, getValue),
|
|
6974
|
-
checkAddressFillFromESIA(_, getValue),
|
|
6975
|
-
checkAddressFact(_, getValue),
|
|
6976
|
-
checkCondition(_, getValue),
|
|
6977
|
-
].some(Boolean)) {
|
|
6978
|
-
return { ..._, required: false };
|
|
6979
|
-
}
|
|
6980
|
-
return _;
|
|
6981
|
-
});
|
|
6982
|
-
const checkIsRetiree = (step, getValue) => step === 2 && getValue('employment')?.key === 'RETIREE';
|
|
6983
|
-
const checkBusinessOwner = ({ name }, getValue) => name === 'partInBusiness' && getValue('positionOrganization')?.key !== 'BUSINESS_OWNER';
|
|
6984
|
-
const checkAddressFillFromESIA = ({ name, filledByEsia }, getValue) => name?.startsWith('address') && getValue('esiaAccountTypeCd')?.key && filledByEsia;
|
|
6985
|
-
const checkAddressFact = ({ name }, getValue) => name === 'addressFact' && getValue('addressMatch');
|
|
6986
|
-
const checkCondition = ({ condition }, getValue) => condition?.name &&
|
|
6987
|
-
condition?.values?.some((_) => {
|
|
6988
|
-
const dataValue = getValue(condition?.name);
|
|
6989
|
-
return _ !== (dataValue?.key ?? dataValue);
|
|
6990
|
-
});
|
|
6991
|
-
const checkConsentPfrFlg = ({ name }, getValue) => name === 'snils' && isSnilsRequired(getValue);
|
|
6992
|
-
const isSnilsRequired = (getValue) => getValue('confirmationIncome')?.key !== 'PFR_CERTIFICATE';
|
|
6993
|
-
|
|
6994
|
-
const renderInputs$1 = ({ field, inputs, params }) => inputs.map(getField(field, params, { ...InputsRetailMap, ...InputRetailCardMap }));
|
|
6995
|
+
const InputsMap = { ...InputsRetailMap, ...InputRetailCardMap };
|
|
6996
|
+
const renderInputs$1 = ({ field, inputs, params }) => inputs.map(getField(field, params, InputsMap));
|
|
6995
6997
|
|
|
6996
6998
|
const renderStep$2 = ({ sections, field, step, params }) => sections?.map(({ inputs: origInputs = [], columns, title }, i) => {
|
|
6997
|
-
const inputs = calculateInputs(getValue$
|
|
6999
|
+
const inputs = calculateInputs(getValue$1(field))(origInputs, step);
|
|
6998
7000
|
return (jsxs("div", { className: style(inputColumnStyles(columns), 'grid gap-x-m'), children: [renderTitle(title), renderInputs$1({ field, inputs, params })] }, `section-${i}`));
|
|
6999
7001
|
});
|
|
7000
|
-
const getValue$
|
|
7002
|
+
const getValue$1 = (field) => (name) => field(name)?.value;
|
|
7001
7003
|
|
|
7002
7004
|
const StepsNavigationButtons$1 = JSX(({ step, isSending, onPrevStep }) => {
|
|
7003
7005
|
const isFirstStep = step === 0;
|
|
@@ -7263,7 +7265,7 @@
|
|
|
7263
7265
|
}
|
|
7264
7266
|
};
|
|
7265
7267
|
|
|
7266
|
-
const useCreditCardFormAPI = ({ step,
|
|
7268
|
+
const useCreditCardFormAPI = ({ step, onNextStep, onFinish, }) => {
|
|
7267
7269
|
const [isSending, { setTrue: startSending, setFalse: endSending }] = useBool(false);
|
|
7268
7270
|
const isFinalStep = step === 5;
|
|
7269
7271
|
const retailFormStore = useRetailFormStore();
|
|
@@ -7282,10 +7284,6 @@
|
|
|
7282
7284
|
}
|
|
7283
7285
|
}, [isFinalStep, initialState]);
|
|
7284
7286
|
const handleSubmit = useCallback(async (formData) => {
|
|
7285
|
-
const feedbackValidator = objectValidator(getObjectValidator(calculateInputs(getValue$2(formData))(inputs, step)));
|
|
7286
|
-
if (!isValidationSuccess(feedbackValidator(formData))) {
|
|
7287
|
-
return;
|
|
7288
|
-
}
|
|
7289
7287
|
startSending();
|
|
7290
7288
|
retailFormStore.leadForm = formData;
|
|
7291
7289
|
try {
|
|
@@ -7314,17 +7312,21 @@
|
|
|
7314
7312
|
}, [isFinalStep, resetForm]);
|
|
7315
7313
|
return [initialState, handleSubmit, isSending];
|
|
7316
7314
|
};
|
|
7317
|
-
const getValue$2 = (formData) => (name) => formData[name];
|
|
7318
7315
|
|
|
7319
7316
|
const CreditCardFormStep = JSX(({ step, sections, isFormFinished, onPrevStep, onNextStep, onFinish }) => {
|
|
7320
|
-
const inputs = useMemo(() =>
|
|
7317
|
+
const inputs = useMemo(() => sections?.flatMap((_) => _?.inputs || []), [sections]);
|
|
7318
|
+
const formValidator = useCallback((formState) =>
|
|
7319
|
+
// TODO Слишком сложно
|
|
7320
|
+
getFormValidator(calculateInputs((_) => formState[_])(inputs, step))(formState), [inputs]);
|
|
7321
7321
|
const [initialState, onSubmit, isSending] = useCreditCardFormAPI({
|
|
7322
7322
|
step,
|
|
7323
|
-
inputs,
|
|
7324
7323
|
onNextStep,
|
|
7325
7324
|
onFinish,
|
|
7326
7325
|
});
|
|
7327
|
-
const [, { field, onSubmit: handleSubmit }] = useForm(initialState, {
|
|
7326
|
+
const [, { field, onSubmit: handleSubmit }] = useForm(initialState, {
|
|
7327
|
+
formValidator,
|
|
7328
|
+
onSubmit,
|
|
7329
|
+
});
|
|
7328
7330
|
return isFormFinished ? (jsx(CreditCardFormStatusTracker, {})) : (jsxs("form", { onSubmit: handleSubmit, className: "space-y-m", children: [renderStep$2({ sections, field, step }), jsx(StepsNavigationButtons$1, { isSending: isSending, step: step, onPrevStep: onPrevStep })] }));
|
|
7329
7331
|
});
|
|
7330
7332
|
|
|
@@ -7727,7 +7729,7 @@
|
|
|
7727
7729
|
setStep((_) => Math.max(_ - 1, 0));
|
|
7728
7730
|
scrollToTop();
|
|
7729
7731
|
}, []);
|
|
7730
|
-
const sections =
|
|
7732
|
+
const sections = stepsSectionsMap$1[step];
|
|
7731
7733
|
const [isFormFinished, { setTrue: handleFinish }] = useBool(false);
|
|
7732
7734
|
return (jsx(BlockWrapper, { className: className, ...rest, children: jsxs("div", { ref: formContainerRef, className: "container grid grid-cols-12", children: [isFormFinished ? null : (jsx(CreditCardFormProgress, { stepsTitles: TITLES, step: step, totalSteps: STEPS$1 })), jsx("div", { className: "py-lg px-5xl mt-2xs bg-white col-span-12", children: jsx(CreditCardFormStep, { step: step, sections: sections, isFormFinished: isFormFinished, onNextStep: handleNextStep, onPrevStep: handlePrevStep, onFinish: handleFinish }, String(step)) })] }) }));
|
|
7733
7735
|
});
|
|
@@ -7867,10 +7869,10 @@
|
|
|
7867
7869
|
const renderInputs = ({ field, inputs, params }) => inputs.map(getField(field, params, { ...InputsRetailMap }));
|
|
7868
7870
|
|
|
7869
7871
|
const renderStep$1 = ({ sections, field, step, params }) => sections?.map(({ inputs: origInputs = [], columns, title }, i) => {
|
|
7870
|
-
const inputs = calculateInputs(getValue
|
|
7872
|
+
const inputs = calculateInputs(getValue(field))(origInputs, step);
|
|
7871
7873
|
return (jsxs("div", { className: style(inputColumnStyles(columns), 'grid gap-x-m'), children: [renderTitle(title), renderInputs({ field, inputs, params })] }, `section-${i}`));
|
|
7872
7874
|
});
|
|
7873
|
-
const getValue
|
|
7875
|
+
const getValue = (field) => (name) => field(name)?.value;
|
|
7874
7876
|
|
|
7875
7877
|
const StepsNavigationButtons = JSX(({ step, onPrevStep, isSending }) => {
|
|
7876
7878
|
const isFirstStep = step === 0;
|
|
@@ -8053,7 +8055,7 @@
|
|
|
8053
8055
|
}
|
|
8054
8056
|
};
|
|
8055
8057
|
|
|
8056
|
-
const useCreditFormAPI = ({ step,
|
|
8058
|
+
const useCreditFormAPI = ({ step, onNextStep, onFinish, }) => {
|
|
8057
8059
|
const [isSending, { setTrue: startSending, setFalse: endSending }] = useBool(false);
|
|
8058
8060
|
const isFinalStep = step === 5;
|
|
8059
8061
|
const retailFormStore = useRetailFormStore();
|
|
@@ -8074,10 +8076,6 @@
|
|
|
8074
8076
|
}
|
|
8075
8077
|
}, [isFinalStep, initialState]);
|
|
8076
8078
|
const handleSubmit = useCallback(async (formData) => {
|
|
8077
|
-
const feedbackValidator = objectValidator(getObjectValidator(calculateInputs(getValue(formData))(inputs, step)));
|
|
8078
|
-
if (!isValidationSuccess(feedbackValidator(formData))) {
|
|
8079
|
-
return;
|
|
8080
|
-
}
|
|
8081
8079
|
startSending();
|
|
8082
8080
|
retailFormStore.leadForm = formData;
|
|
8083
8081
|
try {
|
|
@@ -8106,19 +8104,23 @@
|
|
|
8106
8104
|
}, [isFinalStep, resetForm]);
|
|
8107
8105
|
return [initialState, handleSubmit, isSending];
|
|
8108
8106
|
};
|
|
8109
|
-
const getValue = (formData) => (name) => formData[name];
|
|
8110
8107
|
|
|
8111
8108
|
const CreditFormStep = JSX(({ step, sections, isFormFinished, programsSource, onPrevStep, onNextStep, onFinish }) => {
|
|
8112
8109
|
const { programId } = useRetailFormStore();
|
|
8113
8110
|
const calcData = programsSource?.[programId ?? '']; // Need normalizator useForm, to be save defaultParams
|
|
8114
|
-
const inputs = useMemo(() =>
|
|
8111
|
+
const inputs = useMemo(() => sections?.flatMap((_) => _?.inputs ?? []), [sections]);
|
|
8112
|
+
const formValidator = useCallback((formState) =>
|
|
8113
|
+
// TODO Слишком сложно
|
|
8114
|
+
getFormValidator(calculateInputs((_) => formState[_])(inputs, step))(formState), [inputs]);
|
|
8115
8115
|
const [initialState, onSubmit, isSending] = useCreditFormAPI({
|
|
8116
8116
|
step,
|
|
8117
|
-
inputs,
|
|
8118
8117
|
onNextStep,
|
|
8119
8118
|
onFinish,
|
|
8120
8119
|
});
|
|
8121
|
-
const [, { field, onSubmit: handleSubmit }] = useForm(initialState, {
|
|
8120
|
+
const [, { field, onSubmit: handleSubmit }] = useForm(initialState, {
|
|
8121
|
+
formValidator,
|
|
8122
|
+
onSubmit,
|
|
8123
|
+
});
|
|
8122
8124
|
return isFormFinished ? (jsx(CreditFormStatusTracker, {})) : (jsxs("form", { onSubmit: handleSubmit, className: "space-y-m", children: [renderStep$1({ sections, field, step, params: { calcData } }), jsx(StepsNavigationButtons, { step: step, isSending: isSending, onPrevStep: onPrevStep })] }));
|
|
8123
8125
|
});
|
|
8124
8126
|
|
|
@@ -8151,7 +8153,7 @@
|
|
|
8151
8153
|
setStep((_) => Math.max(_ - 1, 0));
|
|
8152
8154
|
scrollToTop();
|
|
8153
8155
|
}, []);
|
|
8154
|
-
const sections =
|
|
8156
|
+
const sections = stepsSectionsMap[step];
|
|
8155
8157
|
const isStartStep = step === 0;
|
|
8156
8158
|
const [isFormFinished, { setTrue: handleFinish }] = useBool(false);
|
|
8157
8159
|
return (jsx(BlockWrapper, { className: className, ...rest, children: jsxs("div", { ref: formContainerRef, className: "container grid grid-cols-12", children: [isStartStep || isFormFinished ? null : (jsx(CreditFormProgress, { stepsTitles: STEP_TITLES, step: step, totalSteps: STEPS })), jsx("div", { className: "py-lg px-5xl mt-2xs bg-white col-span-12", children: jsx(CreditFormStep, { step: step, sections: sections, isFormFinished: isFormFinished, programsSource: programsSource, onNextStep: handleNextStep, onPrevStep: handlePrevStep, onFinish: handleFinish }, String(step)) })] }) }));
|
|
@@ -9575,7 +9577,7 @@
|
|
|
9575
9577
|
return (jsx(FoldableSection, { isUnfolded: isUnfolded, children: jsx(CardRow, { className: "flex-wrap", children: additionalInfo?.map(renderInfo) }) }));
|
|
9576
9578
|
},
|
|
9577
9579
|
//** TODO: Remove styles with refactoring DefaultFoldButton*/
|
|
9578
|
-
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$
|
|
9580
|
+
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$2({ isUnfolded, onToggle }) })] }, String(i)));
|
|
9579
9581
|
};
|
|
9580
9582
|
const getAtmPoint = ({ address = '', terminalType, atmCode = '' }) => {
|
|
9581
9583
|
const header = `${capitalizedFirstLetter(terminalType)} №${atmCode}`;
|
|
@@ -9641,7 +9643,7 @@
|
|
|
9641
9643
|
workScheduleDescription,
|
|
9642
9644
|
}) })),
|
|
9643
9645
|
//** TODO: remove styles with refactoring DefaultFoldButton*/
|
|
9644
|
-
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$
|
|
9646
|
+
renderFoldButton: ({ isUnfolded, onToggle }) => renderFoldButton$2({ isUnfolded, onToggle }) })] }, String(i)));
|
|
9645
9647
|
};
|
|
9646
9648
|
const renderCardContent = ({ workScheduleDescription }) => {
|
|
9647
9649
|
return (jsxs("div", { children: [jsxs(CardRow, { className: "flex", children: [jsx(CardCell, { label: "\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043B\u044F \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", children: jsx(Text, { children: "\u041E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u0435 \u0438 \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u0435 \u043A\u0440\u0435\u0434\u0438\u0442\u043E\u0432, \u0441\u0447\u0435\u0442\u043E\u0432, \u0432\u043A\u043B\u0430\u0434\u043E\u0432" }) }), jsx(CardCell, { label: "\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043B\u044F \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", children: jsx(Text, { children: "\u041E\u0444\u043E\u0440\u043C\u043B\u0435\u043D\u0438\u0435 \u0438 \u043E\u0431\u0441\u043B\u0443\u0436\u0438\u0432\u0430\u043D\u0438\u0435 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u0438\u0445 \u043A\u0430\u0440\u0442" }) }), jsx(CardCell, { label: "\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043B\u044F \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", children: jsx(Text, { children: "\u0418\u043D\u0432\u0435\u0441\u0442\u0438\u0446\u0438\u043E\u043D\u043D\u043E\u0435 \u0438 \u043D\u0430\u043A\u043E\u043F\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0435 \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u043D\u0438\u0435" }) }), jsx(CardCell, { label: "\u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u0434\u043B\u044F \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043A\u0438\u0445 \u043B\u0438\u0446", children: jsx(Text, { children: "\u0411\u0435\u0437\u043D\u0430\u043B\u0438\u0447\u043D\u044B\u0435 \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u0432 \u0440\u0443\u0431\u043B\u044F\u0445, \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u044B \u0431\u0435\u0437 \u043E\u0442\u043A\u0440\u044B\u0442\u0438\u044F \u0441\u0447\u0451\u0442\u0430" }) })] }), jsx("hr", { className: "text-main-divider pb-xl" }), jsx(CardCell, { label: "\u0420\u0435\u0436\u0438\u043C \u0440\u0430\u0431\u043E\u0442\u044B", className: "max-w-none", children: jsx(Text, { children: workScheduleDescription }) })] }));
|
|
@@ -10431,7 +10433,7 @@
|
|
|
10431
10433
|
slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
|
|
10432
10434
|
});
|
|
10433
10435
|
|
|
10434
|
-
const packageVersion = "0.14.
|
|
10436
|
+
const packageVersion = "0.14.738";
|
|
10435
10437
|
|
|
10436
10438
|
exports.Blocks = Blocks;
|
|
10437
10439
|
exports.ContentPage = ContentPage;
|