From 109789428f325214eace79906381ac6a6b26534b Mon Sep 17 00:00:00 2001 From: Likhith Kolayari Date: Fri, 2 Jun 2023 09:04:53 +0400 Subject: [PATCH 1/2] fix: :bug: resolved required field error --- .../PersonalDetails/personal-details.jsx | 31 ++++++++----------- 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx b/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx index 859999b00e68..4063e4f08079 100644 --- a/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx +++ b/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx @@ -1,5 +1,5 @@ import classNames from 'classnames'; -import { Field, Formik } from 'formik'; +import { Field, Formik, Form } from 'formik'; import PropTypes from 'prop-types'; import React from 'react'; import { withRouter } from 'react-router'; @@ -48,14 +48,7 @@ import LoadErrorMessage from 'Components/load-error-message'; import POAAddressMismatchHintBox from 'Components/poa-address-mismatch-hint-box'; import { connect } from 'Stores/connect'; import { getEmploymentStatusList } from 'Sections/Assessment/FinancialAssessment/financial-information-list'; -import { validateName } from 'Helpers/utils'; - -const validate = (errors, values) => (fn, arr, err_msg) => { - arr.forEach(field => { - const value = values[field]; - if (/^\s+$/.test(value) || (!fn(value) && !errors[field] && err_msg !== true)) errors[field] = err_msg; - }); -}; +import { validateName, validate } from 'Helpers/utils'; const InputGroup = ({ children, className }) => { const { is_appstore } = React.useContext(PlatformContext); @@ -341,8 +334,8 @@ export const PersonalDetailsForm = ({ ); } } - errors.first_name = validateName(values.first_name); - errors.last_name = validateName(values.last_name); + if (values.first_name) errors.first_name = validateName(values.first_name); + if (values.last_name) errors.last_name = validateName(values.last_name); if (values.phone) { // minimum characters required is 9 numbers (excluding +- signs or space) @@ -561,11 +554,11 @@ export const PersonalDetailsForm = ({ setTouched, dirty, }) => ( - <> + {Notifications && } {show_form && ( -
@@ -1271,9 +1266,9 @@ export const PersonalDetailsForm = ({ primary /> - + )} - +
)} ); From 380bc75a2ca5964b96c71db540c03b9176c8882d Mon Sep 17 00:00:00 2001 From: Likhith Kolayari Date: Fri, 2 Jun 2023 11:56:00 +0400 Subject: [PATCH 2/2] feat: fixed issue with Citizen field --- .../Profile/PersonalDetails/personal-details.jsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx b/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx index 4063e4f08079..b7b352190d0a 100644 --- a/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx +++ b/packages/account/src/Sections/Profile/PersonalDetails/personal-details.jsx @@ -293,9 +293,7 @@ export const PersonalDetailsForm = ({ if (is_virtual) return errors; const required_fields = ['first_name', 'last_name', 'phone', 'address_line_1', 'address_city']; - if (is_eu) { - required_fields.push('citizen'); - } + if (is_mf) { const required_tax_fields = ['tax_residence', 'tax_identification_number', 'employment_status']; required_fields.push(...required_tax_fields); @@ -303,9 +301,11 @@ export const PersonalDetailsForm = ({ validateValues(val => val, required_fields, localize('This field is required')); - const residence_fields = ['citizen']; - const validateResidence = val => getLocation(residence_list, val, 'value'); - validateValues(validateResidence, residence_fields, true); + if (is_eu) { + const residence_fields = ['citizen']; + const validateResidence = val => getLocation(residence_list, val, 'value'); + validateValues(validateResidence, residence_fields, true); + } const min_tax_identification_number = 0; const max_tax_identification_number = 25;