From 363df77105658e6fa9940f1eaf99a1095f04d28d Mon Sep 17 00:00:00 2001 From: Emile Bex Date: Thu, 17 Aug 2023 13:32:32 +0200 Subject: [PATCH] [EN-4026] chore(inputs): continue testing --- src/api/types.ts | 2 +- .../CandidateOpportunitiesFilters.types.ts | 11 +++--- src/components/cards/InfoProfileCard.tsx | 7 ++-- src/components/cv/CVFicheEdition.tsx | 2 +- .../forms/schemas/formAddOrganization.ts | 2 +- .../schemas/formEditUsefulInformation.ts | 8 +++-- src/pages/backoffice/parametres.tsx | 36 ++++++++----------- src/utils/Mutating.ts | 1 - 8 files changed, 35 insertions(+), 34 deletions(-) diff --git a/src/api/types.ts b/src/api/types.ts index dba24b767..ab0c32560 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -96,7 +96,7 @@ export interface CV { email: string; phone: string; address: string; - zone: string; + zone: AdminZone; gender: Gender; }; }; diff --git a/src/components/backoffice/candidate/CandidateOpportunities/CandidateOpportunitiesFilters.types.ts b/src/components/backoffice/candidate/CandidateOpportunities/CandidateOpportunitiesFilters.types.ts index f5145382b..7ac6ed37a 100644 --- a/src/components/backoffice/candidate/CandidateOpportunities/CandidateOpportunitiesFilters.types.ts +++ b/src/components/backoffice/candidate/CandidateOpportunities/CandidateOpportunitiesFilters.types.ts @@ -1,21 +1,24 @@ +import { BusinessLineValue, Contract, OfferStatus } from 'src/constants'; +import { AdminZone } from 'src/constants/departements'; + export interface CandidateOpportunitiesFilters { businessLines: { label: string; - value: string; + value: BusinessLineValue; prefix: string[]; }[]; contracts: { label: string; - value: string; + value: Contract; end: boolean; }[]; department: { value: string; label: string; - zone: string; + zone: AdminZone; }[]; status: { - value: number; + value: OfferStatus; label: string; color: string; public: string; diff --git a/src/components/cards/InfoProfileCard.tsx b/src/components/cards/InfoProfileCard.tsx index 09fa80176..087a94aad 100644 --- a/src/components/cards/InfoProfileCard.tsx +++ b/src/components/cards/InfoProfileCard.tsx @@ -83,9 +83,12 @@ export const InfoProfileCard = ({ return findConstantFromValue(name, DEPARTMENTS_FILTERS); }), }} - onSubmit={async (fields, closeModal) => { + onSubmit={async ( + { userZone: zone, ...fields }, + closeModal + ) => { closeModal(); - await onChange({ + onChange({ ...fields, contracts: fields.contracts.map(({ value }) => { return { diff --git a/src/components/cv/CVFicheEdition.tsx b/src/components/cv/CVFicheEdition.tsx index ce0f2bcc0..4a0e6aa58 100644 --- a/src/components/cv/CVFicheEdition.tsx +++ b/src/components/cv/CVFicheEdition.tsx @@ -14,8 +14,8 @@ import { CVEditReviews } from 'src/components/cv/CVEditReviews'; import { Grid, Img } from 'src/components/utils'; import { CV_STATUS } from 'src/constants'; +import { AdminZone } from 'src/constants/departements'; import { useMount, usePrevious } from 'src/hooks/utils'; -import { AdminZone } from "src/constants/departements"; interface CVFicheEditionProps { cv: CV; diff --git a/src/components/forms/schemas/formAddOrganization.ts b/src/components/forms/schemas/formAddOrganization.ts index 3956a1a65..9de935e33 100644 --- a/src/components/forms/schemas/formAddOrganization.ts +++ b/src/components/forms/schemas/formAddOrganization.ts @@ -1,7 +1,7 @@ import { isValidPhoneNumber } from 'react-phone-number-input/mobile'; import { isEmail } from 'validator'; import { FormSchema } from '../FormSchema'; -import { ADMIN_ZONES_FILTERS, AdminZone } from "src/constants/departements"; +import { ADMIN_ZONES_FILTERS, AdminZone } from 'src/constants/departements'; export const formAddOrganization: FormSchema<{ name: string; diff --git a/src/components/forms/schemas/formEditUsefulInformation.ts b/src/components/forms/schemas/formEditUsefulInformation.ts index 71300fae8..9befc1286 100644 --- a/src/components/forms/schemas/formEditUsefulInformation.ts +++ b/src/components/forms/schemas/formEditUsefulInformation.ts @@ -2,11 +2,15 @@ import { isValidPhoneNumber } from 'react-phone-number-input/mobile'; import { isEmail } from 'validator'; import { FormSchema } from '../FormSchema'; import { Contract, CONTRACTS } from 'src/constants'; -import { Department, DEPARTMENTS_FILTERS } from 'src/constants/departements'; +import { + AdminZone, + Department, + DEPARTMENTS_FILTERS, +} from 'src/constants/departements'; import { FilterConstant } from 'src/constants/utils'; export const formEditUsefulInformation: FormSchema<{ - userZone: string; + userZone: AdminZone; email: string; phone: string; address: string; diff --git a/src/pages/backoffice/parametres.tsx b/src/pages/backoffice/parametres.tsx index e85cd2def..129a32ddd 100644 --- a/src/pages/backoffice/parametres.tsx +++ b/src/pages/backoffice/parametres.tsx @@ -14,8 +14,8 @@ import { formChangePassword } from 'src/components/forms/schemas/formChangePassw import { formPersonalDataAsCandidate, formPersonalDataAsAdmin, - formPersonalDataAsCoach -} from "src/components/forms/schemas/formPersonalData"; + formPersonalDataAsCoach, +} from 'src/components/forms/schemas/formPersonalData'; import { HeaderBackoffice } from 'src/components/headers/HeaderBackoffice'; import { openModal } from 'src/components/modals/Modal'; import { ModalEdit } from 'src/components/modals/Modal/ModalGeneric/ModalEdit'; @@ -26,7 +26,7 @@ import { CANDIDATE_USER_ROLES, COACH_USER_ROLES, USER_ROLES, -} from "src/constants/users"; +} from 'src/constants/users'; import { useResetForm } from 'src/hooks/utils/useResetForm'; import { UserContext } from 'src/store/UserProvider'; import { isRoleIncluded } from 'src/utils/Finding'; @@ -38,7 +38,7 @@ const Parametres = () => { const [loadingPassword, setLoadingPassword] = useState(false); const [form, resetForm] = useResetForm(); - const modalTitle = "Édition - Informations personnelles" + const modalTitle = 'Édition - Informations personnelles'; useEffect(() => { if (user) { @@ -173,10 +173,7 @@ const Parametres = () => { }} /> ); - }, [ - checkEmailAndSubmit, - userData - ]); + }, [checkEmailAndSubmit, userData]); const openPersonalDataModalAsCoach = useCallback(() => { openModal( @@ -243,19 +240,19 @@ const Parametres = () => { }, [checkEmailAndSubmit, userData]); const getModalToOpen = useCallback(() => { - if(isRoleIncluded(CANDIDATE_USER_ROLES, userData.role)) { - if(isRoleIncluded(ALL_USER_ROLES, userData.role)) { - if( isRoleIncluded(CANDIDATE_USER_ROLES, userData.role)){ - return openPersonalDataModalAsCandidate + if (isRoleIncluded(CANDIDATE_USER_ROLES, userData.role)) { + if (isRoleIncluded(ALL_USER_ROLES, userData.role)) { + if (isRoleIncluded(CANDIDATE_USER_ROLES, userData.role)) { + return openPersonalDataModalAsCandidate; } - if( isRoleIncluded(COACH_USER_ROLES, userData.role)) { - return openPersonalDataModalAsCoach + if (isRoleIncluded(COACH_USER_ROLES, userData.role)) { + return openPersonalDataModalAsCoach; } } } - return openPersonalDataModalAsAdmin - }, []) + return openPersonalDataModalAsAdmin; + }, []); return ( @@ -350,12 +347,7 @@ const Parametres = () => { {loadingPersonal ? (
) : ( - + )} {userData ? ( diff --git a/src/utils/Mutating.ts b/src/utils/Mutating.ts index acb539ec5..66663de1b 100644 --- a/src/utils/Mutating.ts +++ b/src/utils/Mutating.ts @@ -15,7 +15,6 @@ const updateField = (fieldToUpdate, props, i) => { return field; }; - const getAlternateDefaultOfferStatus = ( offer: Opportunity = {} as Opportunity, opportunityUser: OpportunityUser = {} as OpportunityUser