This repository has been archived by the owner on Jun 7, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
c kopierer endre situasjon til ny mappe for nytt api
- Loading branch information
Showing
12 changed files
with
2,128 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
86 changes: 86 additions & 0 deletions
86
src/komponenter/endre-situasjon-nytt-api/dagpenger-info.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
import { VeiledningsProps } from './veiledning'; | ||
import { Link, ReadMore } from '@navikt/ds-react'; | ||
import { dagpengerSoknadLenke } from '../../innhold/lenker'; | ||
import prettyPrintDato from '../../utils/pretty-print-dato'; | ||
import { plussDager } from '../../utils/date-utils'; | ||
import { PermittertSvar } from '../../models/endring-av-situasjon'; | ||
|
||
const OPPSIGELSE = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { oppsigelseDato, sisteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Du bør sende inn <Link href={dagpengerSoknadLenke}>ny søknad om ordinære dagpenger</Link> mellom{' '} | ||
{prettyPrintDato(plussDager(new Date(oppsigelseDato!), -7).toISOString())} og{' '} | ||
{prettyPrintDato(sisteArbeidsdagDato!)}. | ||
<ReadMore header={'Hva baserer vi denne veiledningen på?'}> | ||
<p>Du har oppgitt at siste dag med lønn fra arbeidsgiver er {prettyPrintDato(sisteArbeidsdagDato!)}.</p> | ||
<p> | ||
Du kan tidligst kan få dagpenger fra den dagen du sender inn en ny søknad om ordinære dagpenger, | ||
<br /> | ||
og du kan tidligst sende inn søknad 7 dager før datoen du søker om å få dagpenger fra. | ||
</p> | ||
<p>Reglene er sånn at du ikke kan få utbetalt dagpenger for datoer før du har sendt inn søknaden.</p> | ||
<p>Du kan lese mer om regelverket for dagpenger her.</p> | ||
</ReadMore> | ||
</> | ||
); | ||
}; | ||
|
||
const NY_JOBB = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
return ( | ||
<> | ||
Du vil kunne motta dagpenger i oppsigelsesperioden. | ||
<br /> | ||
Oppsigelsestid når du er permittert er 14 dager. | ||
</> | ||
); | ||
}; | ||
|
||
const MIDLERTIDIG_JOBB = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
return <>Dagpengeutbetalingene vil avhenge av hvor mye du jobber og lønnen i den midlertidige jobben.</>; | ||
}; | ||
|
||
const KONKURS = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { sisteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Du kan <Link href={dagpengerSoknadLenke}>søke om dagpenger som forskudd på lønnsgaranti</Link>, mellom{' '} | ||
{prettyPrintDato(plussDager(new Date(sisteArbeidsdagDato!), -7).toISOString())} og{' '} | ||
{prettyPrintDato(sisteArbeidsdagDato!)} | ||
</> | ||
); | ||
}; | ||
|
||
function DagpengerInfo(props: VeiledningsProps) { | ||
const { valgtSituasjon } = props; | ||
|
||
if (valgtSituasjon === PermittertSvar.OPPSIGELSE) { | ||
return <OPPSIGELSE {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.MIDLERTIDIG_JOBB) { | ||
return <MIDLERTIDIG_JOBB {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.KONKURS) { | ||
return <KONKURS {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.NY_JOBB) { | ||
return <NY_JOBB {...props} />; | ||
} | ||
return null; | ||
} | ||
export default DagpengerInfo; |
81 changes: 81 additions & 0 deletions
81
src/komponenter/endre-situasjon-nytt-api/les-igjen-modal.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
import React from 'react'; | ||
import { Button, Modal } from '@navikt/ds-react'; | ||
|
||
import Veiledning from './veiledning'; | ||
import { loggAktivitet } from '../../metrics/metrics'; | ||
|
||
import flex from '../../flex.module.css'; | ||
|
||
interface LesIgjenModalProps { | ||
openModal: boolean; | ||
setOpenModal: React.Dispatch<React.SetStateAction<boolean>>; | ||
amplitudeData: any; | ||
besvarelse: any | null; | ||
} | ||
|
||
const LesIgjenModal = (props: LesIgjenModalProps) => { | ||
const { openModal, setOpenModal, besvarelse, amplitudeData } = props; | ||
const valgtSituasjon = besvarelse?.dinSituasjon.verdi; | ||
const tilleggsData = besvarelse?.dinSituasjon.tilleggsData; | ||
|
||
const Innhold = (props: any) => { | ||
const [openedDagpenger, setOpenedDagpenger] = React.useState(false); | ||
const [openedRegistrering, setOpenedRegistrering] = React.useState(false); | ||
const { valgtSituasjon, tilleggsData, amplitudeData } = props; | ||
|
||
const handleReadmoreDagpenger = (komponent: string) => { | ||
if (!openedDagpenger) { | ||
loggAktivitet({ | ||
aktivitet: 'Leser dagpengeveiledning', | ||
komponent, | ||
...amplitudeData, | ||
}); | ||
setOpenedDagpenger(true); | ||
} | ||
}; | ||
|
||
const handleReadmoreRegistrering = (komponent: string) => { | ||
if (!openedRegistrering) { | ||
loggAktivitet({ | ||
aktivitet: 'Leser registreringsveiledning', | ||
komponent, | ||
...amplitudeData, | ||
}); | ||
setOpenedRegistrering(true); | ||
} | ||
}; | ||
|
||
if (!valgtSituasjon || !tilleggsData) return null; | ||
|
||
return ( | ||
<> | ||
<Veiledning | ||
valgtSituasjon={valgtSituasjon} | ||
tilleggsData={tilleggsData} | ||
handleReadmoreRegistrering={handleReadmoreRegistrering} | ||
handleReadmoreDagpenger={handleReadmoreDagpenger} | ||
/> | ||
<div className={`${flex.flex} ${flex.flexEnd}`}> | ||
<Button variant={'primary'} onClick={() => setOpenModal(false)}> | ||
Lukk | ||
</Button> | ||
</div> | ||
</> | ||
); | ||
}; | ||
|
||
return ( | ||
<Modal | ||
open={openModal} | ||
onClose={() => setOpenModal(false)} | ||
width={'medium'} | ||
header={{ heading: 'Jobbsituasjonen min har endret seg', size: 'medium' }} | ||
> | ||
<Modal.Body> | ||
<Innhold tilleggsData={tilleggsData} valgtSituasjon={valgtSituasjon} amplitudeData={amplitudeData} /> | ||
</Modal.Body> | ||
</Modal> | ||
); | ||
}; | ||
|
||
export default LesIgjenModal; |
124 changes: 124 additions & 0 deletions
124
src/komponenter/endre-situasjon-nytt-api/meldekort-info.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
import prettyPrintDato from '../../utils/pretty-print-dato'; | ||
import { ReadMore } from '@navikt/ds-react'; | ||
import { plussDager } from '../../utils/date-utils'; | ||
import { VeiledningsProps } from './veiledning'; | ||
import { PermittertSvar } from '../../models/endring-av-situasjon'; | ||
|
||
const OPPSIGELSE = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { oppsigelseDato, sisteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Frem til {prettyPrintDato(oppsigelseDato!)} kan du få utbetalt dagpenger som permittert. | ||
<br /> | ||
Det er derfor viktig at du fortsetter å sende inn meldekortene frem til og med perioden som dekker{' '} | ||
{prettyPrintDato(oppsigelseDato!)}. | ||
<ReadMore header={'Hva baserer vi denne veiledningen på?'}> | ||
<p> | ||
Når du blir oppsagt er den siste dagen du får dagpenger som permittert for den dagen du mottok | ||
beskjeden om at du ble oppsagt. | ||
</p> | ||
<p>Du har oppgitt at du fikk denne beskjeden {prettyPrintDato(oppsigelseDato!)}</p> | ||
<p> | ||
Arbeidsgiveren din har ansvaret for å betale lønn fra{' '} | ||
{prettyPrintDato(plussDager(new Date(oppsigelseDato!), 1).toISOString())} frem til og med{' '} | ||
{prettyPrintDato(sisteArbeidsdagDato!)}. | ||
</p> | ||
<p>Du kan lese mer om regelverket for permittering her</p> | ||
</ReadMore> | ||
</> | ||
); | ||
}; | ||
const TILBAKE_TIL_JOBB = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { forsteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Du må levere meldekort frem til og med meldekortet som rapporterer for{' '} | ||
{prettyPrintDato(plussDager(new Date(forsteArbeidsdagDato!), -1).toISOString())}. | ||
</> | ||
); | ||
}; | ||
|
||
const NY_JOBB = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { sisteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Du må levere meldekort frem til og med meldekortet som rapporterer for{' '} | ||
{prettyPrintDato(sisteArbeidsdagDato!)}. | ||
</> | ||
); | ||
}; | ||
|
||
const KONKURS = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { sisteArbeidsdagDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Du må levere meldekort frem til og med meldekortet som rapporterer for{' '} | ||
{prettyPrintDato(sisteArbeidsdagDato!)}. | ||
</> | ||
); | ||
}; | ||
|
||
const MIDLERTIDIG_JOBB = (props: VeiledningsProps) => { | ||
return <>Du må fortsette å sende inn meldekort i perioden du er midlertidig i arbeid.</>; | ||
}; | ||
|
||
const ENDRET_PERMITTERINGSPROSENT = (props: VeiledningsProps) => { | ||
return <>Du må fortsette å sende meldekort hver 14. dag.</>; | ||
}; | ||
const SAGT_OPP = (props: VeiledningsProps) => { | ||
const { tilleggsData } = props; | ||
|
||
if (!tilleggsData) return null; | ||
|
||
const { oppsigelseDato } = tilleggsData; | ||
|
||
return ( | ||
<> | ||
Frem til {prettyPrintDato(oppsigelseDato!)} kan du få utbetalt dagpenger som permittert. | ||
<br /> | ||
Det er derfor viktig at du fortsetter å sende inn meldekortene frem til og med perioden som dekker{' '} | ||
{prettyPrintDato(oppsigelseDato!)}. | ||
</> | ||
); | ||
}; | ||
function MeldekortInfo(props: VeiledningsProps) { | ||
const { valgtSituasjon } = props; | ||
|
||
if (valgtSituasjon === PermittertSvar.OPPSIGELSE) { | ||
return <OPPSIGELSE {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.TILBAKE_TIL_JOBB) { | ||
return <TILBAKE_TIL_JOBB {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.MIDLERTIDIG_JOBB) { | ||
return <MIDLERTIDIG_JOBB {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.KONKURS) { | ||
return <KONKURS {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.NY_JOBB) { | ||
return <NY_JOBB {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.ENDRET_PERMITTERINGSPROSENT) { | ||
return <ENDRET_PERMITTERINGSPROSENT {...props} />; | ||
} else if (valgtSituasjon === PermittertSvar.SAGT_OPP) { | ||
return <SAGT_OPP {...props} />; | ||
} | ||
return null; | ||
} | ||
export default MeldekortInfo; |
49 changes: 49 additions & 0 deletions
49
src/komponenter/endre-situasjon-nytt-api/min-situasjon.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
import { useAmplitudeData } from '../hent-initial-data/amplitude-provider'; | ||
import { useArbeidssokerPerioder } from '../../contexts/arbeidssoker'; | ||
import { useBesvarelse } from '../../contexts/besvarelse'; | ||
import { InnloggingsNiva, useAutentiseringData } from '../../contexts/autentisering'; | ||
|
||
import Sammendrag from './sammendrag'; | ||
import beregnArbeidssokerperioder from '../../lib/beregn-arbeidssokerperioder'; | ||
import AiAInViewport from '../aia-in-viewport/aia-in-viewport'; | ||
import ErRendret from '../er-rendret/er-rendret'; | ||
import { useBrukerregistreringData } from '../../hooks/use-brukerregistrering-data'; | ||
import { Box, Detail } from '@navikt/ds-react'; | ||
import useSkalBrukeTabs from '../../hooks/use-skal-bruke-tabs'; | ||
|
||
function MinSituasjon() { | ||
const brukerregistreringData = useBrukerregistreringData(); | ||
const arbeidssokerperiodeData = useArbeidssokerPerioder(); | ||
const { amplitudeData } = useAmplitudeData(); | ||
const autentiseringData = useAutentiseringData(); | ||
const { besvarelse } = useBesvarelse(); | ||
const besvarelseData = besvarelse ? besvarelse.besvarelse : null; | ||
|
||
const { aktivPeriodeStart } = beregnArbeidssokerperioder(arbeidssokerperiodeData); | ||
const { opprettetDato, manueltRegistrertAv } = brukerregistreringData?.registrering || {}; | ||
const { endretTidspunkt, endretAv, erBesvarelsenEndret } = besvarelse || {}; | ||
const kanViseKomponent = autentiseringData.securityLevel === InnloggingsNiva.LEVEL_4; | ||
const skalVisesITabs = useSkalBrukeTabs(); | ||
if (!kanViseKomponent) return null; | ||
|
||
return ( | ||
<Box> | ||
<ErRendret loggTekst="Rendrer endring av situasjon" /> | ||
<Box> | ||
{!skalVisesITabs && <Detail uppercase>Min situasjon</Detail>} | ||
<Sammendrag | ||
startDato={opprettetDato || aktivPeriodeStart} | ||
manueltRegistrertAv={manueltRegistrertAv} | ||
amplitudeData={amplitudeData} | ||
besvarelse={besvarelseData} | ||
endretTidspunkt={endretTidspunkt} | ||
endretAv={endretAv} | ||
erBesvarelsenEndret={erBesvarelsenEndret} | ||
/> | ||
</Box> | ||
<AiAInViewport loggTekst="Viser endring av situasjon" /> | ||
</Box> | ||
); | ||
} | ||
|
||
export default MinSituasjon; |
Oops, something went wrong.