diff --git a/lib/utils/migrerRequiredVedlegg.ts b/lib/utils/migrerRequiredVedlegg.ts index 36d0e20e..15cd4f47 100644 --- a/lib/utils/migrerRequiredVedlegg.ts +++ b/lib/utils/migrerRequiredVedlegg.ts @@ -8,8 +8,10 @@ import { RequiredVedlegg } from '../../types/SoknadContext'; import { SoknadVedlegg } from '../../types/Soknad'; -export function migrerRequiredVedlegg(requiredVedlegg: RequiredVedlegg[]): RequiredVedlegg[] { - return requiredVedlegg.map((vedlegg) => { +export function migrerRequiredVedlegg( + requiredVedlegg?: RequiredVedlegg[] +): RequiredVedlegg[] | undefined { + return requiredVedlegg?.map((vedlegg) => { const type = vedlegg.type as string; if (type === 'avbruttStudie') { return { ...vedlegg, type: 'AVBRUTT_STUDIE' }; diff --git a/pages/[step].tsx b/pages/[step].tsx index 1e98938a..e995cb58 100644 --- a/pages/[step].tsx +++ b/pages/[step].tsx @@ -119,7 +119,7 @@ const Steps = ({ søker, mellomlagretSøknad }: PageProps) => { const postResponse = await postSøknad({ søknad, kvittering: søknadPdf }); if (postResponse?.ok) { - const harVedlegg = søknadState?.requiredVedlegg?.length > 0; + const harVedlegg = søknadState.requiredVedlegg && søknadState?.requiredVedlegg?.length > 0; const erIkkeKomplett = !!søknadState?.requiredVedlegg?.find( (vedlegg) => !vedlegg.completed ); @@ -234,11 +234,21 @@ export const getServerSideProps = beskyttetSide( const migrertRequiredVedlegg = migrerRequiredVedlegg(mellomlagretSøknad.requiredVedlegg); const migrertVedlegg = migrerVedlegg(mellomlagretSøknad.søknad?.vedlegg); - const updatedMellomLagretSøknad = { - ...mellomlagretSøknad, - søknad: { ...mellomlagretSøknad.søknad, vedlegg: migrertVedlegg }, - requiredVedlegg: migrertRequiredVedlegg, - }; + let updatedMellomLagretSøknad = mellomlagretSøknad; + + if (migrertRequiredVedlegg) { + updatedMellomLagretSøknad = { + ...updatedMellomLagretSøknad, + requiredVedlegg: migrertRequiredVedlegg, + }; + } + + if (migrertVedlegg) { + updatedMellomLagretSøknad = { + ...updatedMellomLagretSøknad, + søknad: { ...mellomlagretSøknad.søknad, vedlegg: migrertVedlegg }, + }; + } return { props: { søker, mellomlagretSøknad: updatedMellomLagretSøknad }, diff --git a/types/SoknadContext.tsx b/types/SoknadContext.tsx index dc3b4e5d..8e799933 100644 --- a/types/SoknadContext.tsx +++ b/types/SoknadContext.tsx @@ -19,7 +19,7 @@ export interface GenericSoknadContextState { type?: SøknadType; søknad?: SoknadStateType; lagretStepList?: Array; - requiredVedlegg: RequiredVedlegg[]; + requiredVedlegg?: RequiredVedlegg[]; søknadUrl?: string; sistLagret?: string; }