diff --git a/mock/foresporsel-om-deling-av-cv-api/mock.ts b/mock/foresporsel-om-deling-av-cv-api/mock.ts index 49a190db..adb5dc5b 100644 --- a/mock/foresporsel-om-deling-av-cv-api/mock.ts +++ b/mock/foresporsel-om-deling-av-cv-api/mock.ts @@ -1,6 +1,112 @@ +import { addDays, startOfDay, subDays } from 'date-fns'; +import { KandidatCv } from 'felles/domene/kandidat/Kandidat'; +import { AktørId } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; import { rest } from 'msw'; import { api } from '../../src/felles/api'; import { Svarstatistikk } from '../../src/forside/statistikk/useSvarstatistikk'; +import { + ForespørselDeltStatus, + ForespørselOmDelingAvCv, + IdentType, + TilstandPåForespørsel, +} from '../../src/kandidat/kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; +import { mockAlleKandidatCv } from '../kandidat-api/mockKandidatCv'; +import { mockAlleKandidatlister } from '../kandidat-api/mockKandidatliste'; +import { mockVeileder } from '../meg/mock'; +import { mockStilling } from '../stilling-api/mockStilling'; + +export const forespørselOmDelingAvCvMock = [ + rest.get(`${api.forespørselOmDelingAvCv}/foresporsler/:stillingsId`, (req, res, ctx) => { + const kandidatliste = mockAlleKandidatlister.find( + (liste) => liste.stillingId === req.params.stillingsId + ); + + if (!kandidatliste) { + return res(ctx.json([])); + } + + const forespørslerForKandidatliste = opprettMockForespørslerOmDelingAvCv( + kandidatliste, + mockVeileder + ); + + return res(ctx.json(forespørslerForKandidatliste)); + }), + + rest.get(`${api.forespørselOmDelingAvCv}/foresporsler/kandidat/:aktorId`, (req, res, ctx) => { + const kandidat = mockAlleKandidatCv.find((cv) => cv.aktorId === req.params.aktorId); + + if (!kandidat) { + return res(ctx.status(404)); + } + + const forespørslerForKandidat = opprettMockForespørslerOmDelingAvCvForKandidat( + kandidat, + mockStilling.uuid, + mockVeileder + ); + + return res(ctx.json(forespørslerForKandidat)); + }), + + rest.post(`${api.forespørselOmDelingAvCv}/foresporsler`, (_, res, ctx) => res(ctx.status(201))), + rest.post(`${api.forespørselOmDelingAvCv}/foresporsler/kandidat/:aktorId`, (_, res, ctx) => + res(ctx.status(201)) + ), + + rest.get(`${api.forespørselOmDelingAvCv}/statistikk`, (req, res, ctx) => { + const searchParams = req.url.searchParams; + const navKontor = searchParams.get('navKontor'); + + return res(ctx.json(hentForespørslerstatistikk(navKontor))); + }), +]; + +export const opprettMockForespørslerOmDelingAvCv = ( + kandidatliste: Kandidatliste, + eier: any +): Record => ({ + [kandidatliste.kandidater[0].aktørid]: [ + opprettMockForespørselOmDelingAvCv( + kandidatliste.kandidater[0].aktørid, + kandidatliste.stillingId, + eier + ), + ], +}); + +export const opprettMockForespørslerOmDelingAvCvForKandidat = ( + kandidat: KandidatCv, + stillingsId: string, + eier: any +): ForespørselOmDelingAvCv[] => [ + opprettMockForespørselOmDelingAvCv(kandidat.aktorId, stillingsId, eier), +]; + +const opprettMockForespørselOmDelingAvCv = ( + aktørId: string, + stillingsId: string, + eier: any +): ForespørselOmDelingAvCv => ({ + aktørId, + stillingsId, + deltAv: eier.navIdent, + navKontor: eier.navKontor, + deltTidspunkt: subDays(new Date(), 10).toISOString(), + deltStatus: ForespørselDeltStatus.Sendt, + svarfrist: startOfDay(addDays(new Date(), 5)).toISOString(), + tilstand: TilstandPåForespørsel.HarSvart, + + svar: { + harSvartJa: false, + svarTidspunkt: startOfDay(subDays(new Date(), 1)).toISOString(), + svartAv: { + ident: eier.ident, + identType: IdentType.NavIdent, + }, + }, +}); export const hentForespørslerstatistikk = (navKontor?: string): Svarstatistikk => { return navKontor === '0239' @@ -17,12 +123,3 @@ export const hentForespørslerstatistikk = (navKontor?: string): Svarstatistikk antallVenterPåSvar: 0, }; }; - -export const forespørselOmDelingAvCvMock = [ - rest.get(`${api.forespørselOmDelingAvCv}/statistikk`, (req, res, ctx) => { - const searchParams = req.url.searchParams; - const navKontor = searchParams.get('navKontor'); - - return res(ctx.json(hentForespørslerstatistikk(navKontor))); - }), -]; diff --git a/mock/kandidat-api/mock.ts b/mock/kandidat-api/mock.ts index 81b3507e..043e6ee4 100644 --- a/mock/kandidat-api/mock.ts +++ b/mock/kandidat-api/mock.ts @@ -1,10 +1,13 @@ -import { rest } from 'msw'; +import { ResponseFunction, RestContext, RestRequest, rest } from 'msw'; import { api } from '../../src/felles/api'; import { LagreKandidaterDto } from '../../src/kandidatsok/kandidatliste/LagreKandidaterIMineKandidatlisterModal'; import { mockAlleKandidatCv } from './mockKandidatCv'; -import { mockAlleKandidatlister } from './mockKandidatliste'; +import { mockAlleKandidatlister, opprettMockKandidatlisteForKandidat } from './mockKandidatliste'; import { mockMineKandidatlister } from './mockMineKandidatlister'; +const todo = (req: RestRequest, res: ResponseFunction, ctx: RestContext) => + res(ctx.status(500, 'Mock er ikke implementert')); + export const kandidatApiMock = [ rest.get(`${api.kandidat}/veileder/kandidatlister`, (_, res, ctx) => res(ctx.json(mockMineKandidatlister)) @@ -65,4 +68,72 @@ export const kandidatApiMock = [ return res(kandidatCv ? ctx.json(kandidatCv) : ctx.status(404)); }), + + rest.get(`${api.kandidat}/veileder/kandidater/:kandidatnr/listeoversikt`, (req, res, ctx) => { + const kandidatlister = mockAlleKandidatlister.filter((liste) => + liste.kandidater.some((kandidat) => kandidat.kandidatnr === req.params.kandidatnr) + ); + + const kandidatlisterMedKandidaten = kandidatlister.map((liste) => + opprettMockKandidatlisteForKandidat( + liste, + liste.kandidater.find((kandidat) => kandidat.kandidatnr === req.params.kandidatnr) + ) + ); + + return res(ctx.json(kandidatlisterMedKandidaten)); + }), + + rest.put(`${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/eierskap`, todo), + + rest.get( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/notater`, + todo + ), + + rest.post( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/notater`, + todo + ), + + rest.all( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/notater/:notatId`, + todo + ), + + rest.put( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/status`, + todo + ), + + rest.put( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/utfall`, + todo + ), + + rest.put( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/arkivert`, + todo + ), + + rest.post(`${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/deltekandidater`, todo), + + rest.get(`${api.kandidat}/veileder/kandidater/navn`, todo), + + rest.post( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/formidlingeravusynligkandidat`, + todo + ), + + rest.put( + `${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/formidlingeravusynligkandidat/:formidlingId/utfall`, + todo + ), + + rest.put(`${api.kandidat}/veileder/kandidatlister/:kandidatlisteId/status`, todo), + + rest.put( + `${api.kandidat}/veileder/kandidat/arbeidsgiverliste/:kandidatlisteId/:kandidatnummer`, + todo + ), ]; diff --git a/mock/kandidat-api/mockKandidatliste.ts b/mock/kandidat-api/mockKandidatliste.ts index 9ff0a95a..7186005a 100644 --- a/mock/kandidat-api/mockKandidatliste.ts +++ b/mock/kandidat-api/mockKandidatliste.ts @@ -1,5 +1,7 @@ +import KandidatIKandidatliste from 'felles/domene/kandidatliste/KandidatIKandidatliste'; import Kandidatliste, { KanSletteKandidatliste, + KandidatlisteForKandidat, Kandidatlistestatus, } from 'felles/domene/kandidatliste/Kandidatliste'; import { Stillingskategori } from 'felles/domene/stilling/Stilling'; @@ -57,4 +59,28 @@ export const mockKandidatlisteMedStilling: Kandidatliste = { }, }; +export const opprettMockKandidatlisteForKandidat = ( + kandidatliste: Kandidatliste, + kandidat: KandidatIKandidatliste +): KandidatlisteForKandidat => ({ + uuid: kandidatliste.kandidatlisteId, + tittel: kandidatliste.tittel, + organisasjonReferanse: kandidatliste.organisasjonReferanse, + organisasjonNavn: kandidatliste.organisasjonNavn, + stillingId: kandidatliste.stillingId, + antallStillinger: kandidatliste.antallStillinger, + status: kandidat.status, + utfall: kandidat.utfall, + + kandidatnr: kandidat.kandidatnr, + fornavn: kandidat.fornavn, + etternavn: kandidat.etternavn, + lagtTilTidspunkt: kandidat.lagtTilTidspunkt, + lagtTilAvIdent: kandidat.lagtTilAv.ident, + lagtTilAvEpost: 'epost', + lagtTilAvNavn: kandidat.lagtTilAv.navn, + utfallsendringer: kandidat.utfallsendringer, + slettet: kandidat.arkivert, +}); + export const mockAlleKandidatlister = [mockKandidatlisteMedStilling, mockKandidatlisteUtenStilling]; diff --git a/mock/meg/mock.ts b/mock/meg/mock.ts index fa660534..93c2b4f4 100644 --- a/mock/meg/mock.ts +++ b/mock/meg/mock.ts @@ -1,10 +1,17 @@ import { rest } from 'msw'; import { api } from '../../src/felles/api'; -export const mockMeg = { +export const mockVeileder = { + fornavn: 'Varg', + etternavn: 'Veileder', + navKontor: '1209', navIdent: 'Z994161', }; +export const mockMeg = { + navIdent: mockVeileder.navIdent, +}; + export const innloggetBrukerMock = [ rest.get(api.innloggetBruker, (_, res, ctx) => res(ctx.json(mockMeg))), ]; diff --git a/mock/setup.ts b/mock/setup.ts index 3d65be69..4be546fb 100644 --- a/mock/setup.ts +++ b/mock/setup.ts @@ -1,13 +1,15 @@ import { setupWorker } from 'msw'; -import { modiaContextHolderMock } from './modiacontextholder/mock'; -import { innloggetBrukerMock } from './meg/mock'; +import { forespørselOmDelingAvCvMock } from './foresporsel-om-deling-av-cv-api/mock'; import { kandidatApiMock } from './kandidat-api/mock'; import { kandidatsøkMock } from './kandidatsok-proxy/mock'; -import { forespørselOmDelingAvCvMock } from './foresporsel-om-deling-av-cv-api/mock'; +import { innloggetBrukerMock } from './meg/mock'; +import { modiaContextHolderMock } from './modiacontextholder/mock'; +import { presenterteKandidaterApiMock } from './presenterte-kandidater-api/mock'; +import { smsApiMock } from './sms-api/mock'; import { statistikkApiMock } from './statistikk-api/mock'; import { stillingApiMock } from './stilling-api/mock'; import { stillingssøkMock } from './stillingssok-proxy/mock'; -import { presenterteKandidaterApiMock } from './presenterte-kandidater-api/mock'; +import { synlighetApiMock } from './synlighet-api/mock'; const handlers = [ ...innloggetBrukerMock, @@ -15,10 +17,12 @@ const handlers = [ ...statistikkApiMock, ...forespørselOmDelingAvCvMock, ...stillingApiMock, + ...presenterteKandidaterApiMock, + ...smsApiMock, + ...synlighetApiMock, ...(import.meta.env.VITE_MOCK_MODIA ? modiaContextHolderMock : []), ...(import.meta.env.VITE_MOCK_AIVEN ? kandidatsøkMock : []), ...(import.meta.env.VITE_MOCK_AIVEN ? stillingssøkMock : []), - ...presenterteKandidaterApiMock, ]; const worker = setupWorker(...handlers); diff --git a/mock/sms-api/mock.ts b/mock/sms-api/mock.ts new file mode 100644 index 00000000..51bac748 --- /dev/null +++ b/mock/sms-api/mock.ts @@ -0,0 +1,41 @@ +import { Sms, SmsStatus } from 'felles/domene/sms/Sms'; +import { rest } from 'msw'; +import { api } from '../../src/felles/api'; +import { mockKandidatlisteMedStilling } from '../kandidat-api/mockKandidatliste'; +import { mockMeg } from '../meg/mock'; + +export const smsApiMock = [ + rest.get(`${api.sms}/:kandidatlisteId`, (req, res, ctx) => { + const sms = mockSms.filter((sms) => sms.kandidatlisteId === req.params.kandidatlisteId); + + if (!sms) { + return res(ctx.status(404)); + } else { + return res(ctx.json(sms)); + } + }), + + rest.get(`${api.sms}/fnr/:fnr`, (req, res, ctx) => { + const sms = mockSms.filter((sms) => sms.fnr === req.params.fnr); + + if (!sms) { + return res(ctx.status(404)); + } else { + return res(ctx.json(sms)); + } + }), + + rest.post(`${api.sms}`, (_, res, ctx) => res(ctx.status(201))), +]; + +const mockSms: Sms[] = [ + { + id: 1, + kandidatlisteId: mockKandidatlisteMedStilling.kandidatlisteId, + fnr: '123', //mockKandidatlisteMedStilling.kandidater[0].fodselsnr, + opprettet: new Date().toISOString(), + sendt: new Date().toISOString(), + status: SmsStatus.Sendt, + navIdent: mockMeg.navIdent, + }, +]; diff --git a/mock/stilling-api/mock.ts b/mock/stilling-api/mock.ts index 3ef0b45c..dfa94839 100644 --- a/mock/stilling-api/mock.ts +++ b/mock/stilling-api/mock.ts @@ -1,7 +1,10 @@ -import { rest } from 'msw'; -import { mockStilling } from './mockStilling'; +import { ResponseFunction, RestContext, RestRequest, rest } from 'msw'; import { api } from '../../src/felles/api'; import { mockPutStandardsøk, mockStandardsøk } from './mockStandardsøk'; +import { mockStilling } from './mockStilling'; + +const todo = (req: RestRequest, res: ResponseFunction, ctx: RestContext) => + res(ctx.status(500, 'Mock er ikke implementert')); export const stillingApiMock = [ rest.get(`${api.stilling}/rekrutteringsbistandstilling/:stillingsId`, (_, res, ctx) => @@ -13,4 +16,6 @@ export const stillingApiMock = [ rest.put(`${api.stilling}/standardsok`, (req, res, ctx) => res(ctx.json(mockPutStandardsøk(req))) ), + + rest.post(`${api.stilling}/search-api/underenhet/_search`, todo), ]; diff --git a/mock/synlighet-api/mock.ts b/mock/synlighet-api/mock.ts new file mode 100644 index 00000000..92820364 --- /dev/null +++ b/mock/synlighet-api/mock.ts @@ -0,0 +1,9 @@ +import { rest } from 'msw'; +import { api } from '../../src/felles/api'; + +export const synlighetApiMock = [ + rest.get( + `${api.synlighet}/evaluering/:fnr`, + (_, res, ctx) => res(ctx.status(500)) // TODO + ), +]; diff --git a/src/felles/domene/kandidatliste/Kandidatliste.ts b/src/felles/domene/kandidatliste/Kandidatliste.ts index 466765e2..4b823f9d 100644 --- a/src/felles/domene/kandidatliste/Kandidatliste.ts +++ b/src/felles/domene/kandidatliste/Kandidatliste.ts @@ -1,5 +1,11 @@ import { Stillingskategori } from '../stilling/Stilling'; -import { FormidlingAvUsynligKandidat, KandidatIKandidatliste } from './KandidatIKandidatliste'; +import { + FormidlingAvUsynligKandidat, + KandidatIKandidatliste, + Kandidatstatus, + Kandidatutfall, + Utfallsendring, +} from './KandidatIKandidatliste'; type Kandidatliste = { kandidatlisteId: string; @@ -19,6 +25,27 @@ type Kandidatliste = { stillingskategori: Stillingskategori | null; }; +/* Brukes i Historikk-fanen når vi henter alle kandidatlistene en kandidat ligger på */ +export type KandidatlisteForKandidat = { + kandidatnr: string; + fornavn: string; + etternavn: string; + lagtTilTidspunkt: string; + lagtTilAvIdent: string; + lagtTilAvEpost: string; + lagtTilAvNavn: string; + status: Kandidatstatus; + utfall: Kandidatutfall; + uuid: string; + tittel: string; + organisasjonReferanse?: string; + organisasjonNavn?: string; + stillingId?: string; + slettet?: boolean; + antallStillinger?: number; + utfallsendringer: Utfallsendring[]; +}; + export enum KanSletteKandidatliste { KanSlettes = 'KAN_SLETTES', ErIkkeDin = 'ER_IKKE_DIN', diff --git a/src/felles/domene/sms/Sms.ts b/src/felles/domene/sms/Sms.ts new file mode 100644 index 00000000..467ac017 --- /dev/null +++ b/src/felles/domene/sms/Sms.ts @@ -0,0 +1,18 @@ +import { Fødselsnummer } from '../kandidatliste/KandidatIKandidatliste'; + +export enum SmsStatus { + IkkeSendt = 'IKKE_SENDT', + UnderUtsending = 'UNDER_UTSENDING', + Sendt = 'SENDT', + Feil = 'FEIL', +} + +export type Sms = { + id: number; + fnr: Fødselsnummer; + opprettet: string; + sendt: string; + status: SmsStatus; + navIdent: string; + kandidatlisteId: string; +}; diff --git a/src/index.tsx b/src/index.tsx index 4998965c..63ebda9d 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,6 +1,6 @@ +import { Modal } from '@navikt/ds-react'; import React from 'react'; import { createRoot } from 'react-dom/client'; -import { Modal } from '@navikt/ds-react'; import App from './App'; import './index.css'; diff --git a/src/kandidat/index.tsx b/src/kandidat/index.tsx index e4b3db90..e9bcefac 100644 --- a/src/kandidat/index.tsx +++ b/src/kandidat/index.tsx @@ -1,7 +1,3 @@ import KandidatApp from './app/KandidatApp'; -if (import.meta.env.VITE_MOCK) { - await import('./mock/mock-api'); -} - export const Component = () => ; diff --git a/src/kandidat/kandidatliste/KandidatlisteOgModaler.tsx b/src/kandidat/kandidatliste/KandidatlisteOgModaler.tsx index 3ddf8bd8..0ef214c7 100644 --- a/src/kandidat/kandidatliste/KandidatlisteOgModaler.tsx +++ b/src/kandidat/kandidatliste/KandidatlisteOgModaler.tsx @@ -2,24 +2,25 @@ import React from 'react'; import { connect } from 'react-redux'; import { Dispatch } from 'redux'; -import { erKobletTilStilling, kandidaterMåGodkjenneDelingAvCv } from './domene/kandidatlisteUtils'; -import { Nettressurs, Nettstatus } from 'felles/nettressurs'; -import Kandidatlistetype from 'felles/domene/kandidatliste/Kandidatliste'; import { sendEvent } from 'felles/amplitude'; +import { Kandidatstatus } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import Kandidatlistetype from 'felles/domene/kandidatliste/Kandidatliste'; +import { SmsStatus } from 'felles/domene/sms/Sms'; +import { Nettressurs, Nettstatus } from 'felles/nettressurs'; import AppState from '../state/AppState'; -import KandidatlisteAction from './reducer/KandidatlisteAction'; -import KandidatlisteActionType from './reducer/KandidatlisteActionType'; -import PresenterKandidaterModal from './modaler/presenter-kandidater/PresenterKandidaterModal'; -import SendSmsModal from './modaler/SendSmsModal'; -import { Kandidatmeldinger, Kandidattilstander, SmsStatus } from './domene/Kandidatressurser'; +import { AlertType, VarslingAction, VarslingActionType } from '../varsling/varslingReducer'; import Kandidatliste from './Kandidatliste'; +import { Kandidatmeldinger, Kandidattilstander } from './domene/Kandidatressurser'; +import { erKobletTilStilling, kandidaterMåGodkjenneDelingAvCv } from './domene/kandidatlisteUtils'; import { ForespørslerGruppertPåAktørId, hentForespørslerForKandidatForStilling, } from './knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; +import SendSmsModal from './modaler/SendSmsModal'; import LeggTilKandidatModal from './modaler/legg-til-kandidat-modal/LeggTilKandidatModal'; -import { AlertType, VarslingAction, VarslingActionType } from '../varsling/varslingReducer'; -import { Kandidatstatus } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import PresenterKandidaterModal from './modaler/presenter-kandidater/PresenterKandidaterModal'; +import KandidatlisteAction from './reducer/KandidatlisteAction'; +import KandidatlisteActionType from './reducer/KandidatlisteActionType'; type OwnProps = { kandidatliste: Kandidatlistetype; @@ -123,7 +124,7 @@ class KandidatlisteOgModaler extends React.Component { } if (arkiveringFeiletNettopp) { - this.visInfobanner(`Det skjedde noe galt under sletting av kandidaten`); + this.visInfobanner(`Det skjedde noe galt under sletting av kandidaten`, 'error'); } if (enKandidatErNettoppDearkivert) { @@ -132,7 +133,8 @@ class KandidatlisteOgModaler extends React.Component { if (dearkiveringFeiletNettopp) { this.visInfobanner( - `Det skjedde noe galt, kunne ikke legge kandidaten tilbake i kandidatlisten` + `Det skjedde noe galt, kunne ikke legge kandidaten tilbake i kandidatlisten`, + 'error' ); } diff --git a/src/kandidat/kandidatliste/domene/Kandidatressurser.ts b/src/kandidat/kandidatliste/domene/Kandidatressurser.ts index 64d9e2e3..5ecc0715 100644 --- a/src/kandidat/kandidatliste/domene/Kandidatressurser.ts +++ b/src/kandidat/kandidatliste/domene/Kandidatressurser.ts @@ -1,4 +1,5 @@ import { Fødselsnummer, Kandidatnr } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { Nettressurs } from 'felles/nettressurs'; export type Notat = { @@ -13,23 +14,6 @@ export type Notat = { }; }; -export enum SmsStatus { - IkkeSendt = 'IKKE_SENDT', - UnderUtsending = 'UNDER_UTSENDING', - Sendt = 'SENDT', - Feil = 'FEIL', -} - -export type Sms = { - id: number; - fnr: Fødselsnummer; - opprettet: string; - sendt: string; - status: SmsStatus; - navIdent: string; - kandidatlisteId: string; -}; - export type Kandidattilstand = { markert: boolean; filtrertBort: boolean; diff --git a/src/kandidat/kandidatliste/hooks/useSendtKandidatmelding.ts b/src/kandidat/kandidatliste/hooks/useSendtKandidatmelding.ts index 8694c8e1..09de06c9 100644 --- a/src/kandidat/kandidatliste/hooks/useSendtKandidatmelding.ts +++ b/src/kandidat/kandidatliste/hooks/useSendtKandidatmelding.ts @@ -1,8 +1,8 @@ -import { useSelector } from 'react-redux'; +import { Fødselsnummer } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { Nettstatus } from 'felles/nettressurs'; +import { useSelector } from 'react-redux'; import AppState from '../../state/AppState'; -import { Sms } from '../domene/Kandidatressurser'; -import { Fødselsnummer } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; const useSendtKandidatmelding = (kandidatensFnr: Fødselsnummer | null): Sms | undefined => { const { sendteMeldinger } = useSelector((state: AppState) => state.kandidatliste.sms); diff --git a/src/kandidat/kandidatliste/kandidatrad/smsstatus/SmsStatusPopup.tsx b/src/kandidat/kandidatliste/kandidatrad/smsstatus/SmsStatusPopup.tsx index b6cecefb..96c6dc0b 100644 --- a/src/kandidat/kandidatliste/kandidatrad/smsstatus/SmsStatusPopup.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/smsstatus/SmsStatusPopup.tsx @@ -1,9 +1,9 @@ +import { MobileFillIcon, MobileIcon } from '@navikt/aksel-icons'; +import classNames from 'classnames'; +import { Sms, SmsStatus } from 'felles/domene/sms/Sms'; import { FunctionComponent } from 'react'; -import { Sms, SmsStatus } from '../../domene/Kandidatressurser'; import MedPopover from '../../med-popover/MedPopover'; -import { MobileFillIcon, MobileIcon } from '@navikt/aksel-icons'; import css from './SmsStatusPopup.module.css'; -import classNames from 'classnames'; const formaterSendtDato = (dato: Date) => { return `${dato.toLocaleString('nb-NO', { diff --git a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/StatusOgHendelser.tsx b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/StatusOgHendelser.tsx index 8c5aa39b..2862d5f3 100644 --- a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/StatusOgHendelser.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/StatusOgHendelser.tsx @@ -1,22 +1,22 @@ -import { FunctionComponent, useRef, useState } from 'react'; -import { Button, Popover } from '@navikt/ds-react'; import { EyeIcon, PencilIcon, XMarkIcon } from '@navikt/aksel-icons'; +import { Button, Popover } from '@navikt/ds-react'; import classNames from 'classnames'; +import { FunctionComponent, useRef, useState } from 'react'; -import { erKobletTilStilling } from '../../domene/kandidatlisteUtils'; -import { ForespørslerForKandidatForStilling } from '../../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; import { KandidatIKandidatliste, Kandidatstatus, } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { Nettressurs, Nettstatus } from 'felles/nettressurs'; -import { Sms } from '../../domene/Kandidatressurser'; +import { erKobletTilStilling } from '../../domene/kandidatlisteUtils'; +import { ForespørslerForKandidatForStilling } from '../../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; +import css from './StatusOgHendelser.module.css'; import EndreStatusOgHendelser from './endre-status-og-hendelser/EndreStatusOgHendelser'; import Hendelsesetikett from './etiketter/Hendelsesetikett'; -import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; -import SeHendelser from './se-hendelser/SeHendelser'; import StatusEtikett from './etiketter/StatusEtikett'; -import css from './StatusOgHendelser.module.css'; +import SeHendelser from './se-hendelser/SeHendelser'; type Props = { kandidat: KandidatIKandidatliste; diff --git a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/endre-status-og-hendelser/EndreStatusOgHendelser.tsx b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/endre-status-og-hendelser/EndreStatusOgHendelser.tsx index cd3cca19..575b40a0 100644 --- a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/endre-status-og-hendelser/EndreStatusOgHendelser.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/endre-status-og-hendelser/EndreStatusOgHendelser.tsx @@ -6,9 +6,9 @@ import { Kandidatstatus, } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { Stillingskategori } from 'felles/domene/stilling/Stilling'; import { Nettressurs } from 'felles/nettressurs'; -import { Sms } from '../../../domene/Kandidatressurser'; import { kandidaterMåGodkjenneDelingAvCv } from '../../../domene/kandidatlisteUtils'; import { ForespørslerForKandidatForStilling } from '../../../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; import { statusToDisplayName } from '../etiketter/StatusEtikett'; diff --git a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett.tsx b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett.tsx index a4940b5b..3184b52e 100644 --- a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett.tsx @@ -1,14 +1,14 @@ -import { FunctionComponent } from 'react'; +import { Kandidatutfall, Utfallsendring } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { Sms, SmsStatus } from 'felles/domene/sms/Sms'; import moment from 'moment'; +import { FunctionComponent } from 'react'; +import { formaterDato, formaterDatoUtenÅrstall } from '../../../../utils/dateUtils'; import { hentSisteKandidatutfall } from '../../../domene/kandidatUtils'; import { ForespørselOmDelingAvCv, TilstandPåForespørsel, } from '../../../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { formaterDato, formaterDatoUtenÅrstall } from '../../../../utils/dateUtils'; -import { Sms, SmsStatus } from '../../../domene/Kandidatressurser'; import { cvErSendtTilArbeidsgiverOgSlettet } from '../hendelser/CvErSlettet'; -import { Kandidatutfall, Utfallsendring } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; import Etikett from './Etikett'; import css from './Hendelsesetikett.module.css'; diff --git a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/hendelser/SmsSendt.tsx b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/hendelser/SmsSendt.tsx index 7934af70..14be3848 100644 --- a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/hendelser/SmsSendt.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/hendelser/SmsSendt.tsx @@ -1,7 +1,7 @@ +import { Sms, SmsStatus } from 'felles/domene/sms/Sms'; import { FunctionComponent } from 'react'; import { formaterDatoNaturlig } from '../../../../utils/dateUtils'; import Hendelse, { Hendelsesstatus } from './Hendelse'; -import { Sms, SmsStatus } from '../../../domene/Kandidatressurser'; type Props = { sms?: Sms; diff --git a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/se-hendelser/SeHendelser.tsx b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/se-hendelser/SeHendelser.tsx index 80034511..0ef70539 100644 --- a/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/se-hendelser/SeHendelser.tsx +++ b/src/kandidat/kandidatliste/kandidatrad/status-og-hendelser/se-hendelser/SeHendelser.tsx @@ -2,9 +2,9 @@ import { Heading } from '@navikt/ds-react'; import { FunctionComponent } from 'react'; import { KandidatIKandidatliste } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { Stillingskategori } from 'felles/domene/stilling/Stilling'; import { Nettressurs } from 'felles/nettressurs'; -import { Sms } from '../../../domene/Kandidatressurser'; import { ForespørslerForKandidatForStilling } from '../../../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; import css from '../endre-status-og-hendelser/EndreStatusOgHendelser.module.css'; import CvErSlettet from '../hendelser/CvErSlettet'; diff --git "a/src/kandidat/kandidatliste/knappe-rad/foresp\303\270rsel-om-deling-av-cv/Foresp\303\270rsel.ts" "b/src/kandidat/kandidatliste/knappe-rad/foresp\303\270rsel-om-deling-av-cv/Foresp\303\270rsel.ts" index bede4920..135c4a4c 100644 --- "a/src/kandidat/kandidatliste/knappe-rad/foresp\303\270rsel-om-deling-av-cv/Foresp\303\270rsel.ts" +++ "b/src/kandidat/kandidatliste/knappe-rad/foresp\303\270rsel-om-deling-av-cv/Foresp\303\270rsel.ts" @@ -24,6 +24,7 @@ type UtenSvar = { svar: null; }; +/* TODO: Flytt til domenemappe */ export type ForespørselOmDelingAvCv = { aktørId: string; stillingsId: string; diff --git a/src/kandidat/kandidatliste/modaler/SendSmsModal.tsx b/src/kandidat/kandidatliste/modaler/SendSmsModal.tsx index 22f6dff0..913311a5 100644 --- a/src/kandidat/kandidatliste/modaler/SendSmsModal.tsx +++ b/src/kandidat/kandidatliste/modaler/SendSmsModal.tsx @@ -5,10 +5,11 @@ import { Dispatch } from 'redux'; import { Alert, BodyShort, Heading, Label, Link, Select } from '@navikt/ds-react'; import { KandidatIKandidatliste } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { SmsStatus } from 'felles/domene/sms/Sms'; import { Stillingskategori } from 'felles/domene/stilling/Stilling'; import Modal from '../../komponenter/modal/Modal'; import AppState from '../../state/AppState'; -import { Kandidatmeldinger, SmsStatus } from '../domene/Kandidatressurser'; +import { Kandidatmeldinger } from '../domene/Kandidatressurser'; import useMarkerteKandidater from '../hooks/useMarkerteKandidater'; import KandidatlisteAction from '../reducer/KandidatlisteAction'; import KandidatlisteActionType from '../reducer/KandidatlisteActionType'; diff --git a/src/kandidat/kandidatliste/reducer/KandidatlisteAction.ts b/src/kandidat/kandidatliste/reducer/KandidatlisteAction.ts index f2bef67b..4a7fad59 100644 --- a/src/kandidat/kandidatliste/reducer/KandidatlisteAction.ts +++ b/src/kandidat/kandidatliste/reducer/KandidatlisteAction.ts @@ -1,17 +1,17 @@ -import { Error } from 'felles/nettressurs'; -import { Notat, Visningsstatus } from '../domene/Kandidatressurser'; -import KandidatlisteActionType from './KandidatlisteActionType'; -import { SearchApiError } from '../../api/fetchUtils'; -import { ForespørselOutboundDto } from '../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { Sms } from '../domene/Kandidatressurser'; -import { Kandidatlistefilter, Kandidatsortering } from './kandidatlisteReducer'; -import { ForespørslerForStillingInboundDto } from '../../api/forespørselOmDelingAvCvApi'; -import { FormidlingAvUsynligKandidatOutboundDto } from '../modaler/legg-til-kandidat-modal/LeggTilKandidatModal'; import KandidatIKandidatliste, { Kandidatstatus, Kandidatutfall, } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; import Kandidatliste, { Kandidatlistestatus } from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; +import { Error } from 'felles/nettressurs'; +import { SearchApiError } from '../../api/fetchUtils'; +import { ForespørslerForStillingInboundDto } from '../../api/forespørselOmDelingAvCvApi'; +import { Notat, Visningsstatus } from '../domene/Kandidatressurser'; +import { ForespørselOutboundDto } from '../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; +import { FormidlingAvUsynligKandidatOutboundDto } from '../modaler/legg-til-kandidat-modal/LeggTilKandidatModal'; +import KandidatlisteActionType from './KandidatlisteActionType'; +import { Kandidatlistefilter, Kandidatsortering } from './kandidatlisteReducer'; export interface HentKandidatlisteMedStillingsIdAction { type: KandidatlisteActionType.HentKandidatlisteMedStillingsId; diff --git a/src/kandidat/kandidatliste/reducer/kandidatlisteReducer.ts b/src/kandidat/kandidatliste/reducer/kandidatlisteReducer.ts index 5cccc5af..2e4e5d15 100644 --- a/src/kandidat/kandidatliste/reducer/kandidatlisteReducer.ts +++ b/src/kandidat/kandidatliste/reducer/kandidatlisteReducer.ts @@ -1,40 +1,41 @@ -import { - filtrerKandidater, - lagTomtStatusfilter, - lagTomtHendelsefilter, -} from '../filter/filter-utils'; -import KandidatlisteActionType from './KandidatlisteActionType'; -import { Reducer } from 'redux'; +import KandidatIKandidatliste, { + Kandidatstatus, + UsynligKandidat, +} from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; +import { SmsStatus } from 'felles/domene/sms/Sms'; import { Nettressurs, - ikkeLastet, + Nettstatus, feil, + ikkeLastet, lasterInn, - Nettstatus, senderInn, suksess, } from 'felles/nettressurs'; -import KandidatlisteAction from './KandidatlisteAction'; +import { Reducer } from 'redux'; import { SearchApiError } from '../../api/fetchUtils'; -import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; import { - Kandidattilstander, + Kandidatmeldinger, Kandidatnotater, Kandidattilstand, + Kandidattilstander, Visningsstatus, } from '../domene/Kandidatressurser'; -import { SmsStatus, Kandidatmeldinger } from '../domene/Kandidatressurser'; +import { + filtrerKandidater, + lagTomtHendelsefilter, + lagTomtStatusfilter, +} from '../filter/filter-utils'; +import { Hendelse } from '../kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett'; import { KandidatSorteringsfelt } from '../kandidatsortering'; -import { Retning } from '../liste-header/sorterbarKolonneheader/Retning'; import { ForespørslerGruppertPåAktørId, separerGjeldendeForespørselFraRespons, } from '../knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { Hendelse } from '../kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett'; -import KandidatIKandidatliste, { - Kandidatstatus, - UsynligKandidat, -} from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { Retning } from '../liste-header/sorterbarKolonneheader/Retning'; +import KandidatlisteAction from './KandidatlisteAction'; +import KandidatlisteActionType from './KandidatlisteActionType'; type FormidlingId = string; diff --git a/src/kandidat/kandidatliste/smsFeilAlertStripe/SmsFeilAlertStripe.tsx b/src/kandidat/kandidatliste/smsFeilAlertStripe/SmsFeilAlertStripe.tsx index 7878adeb..a47a5a8a 100644 --- a/src/kandidat/kandidatliste/smsFeilAlertStripe/SmsFeilAlertStripe.tsx +++ b/src/kandidat/kandidatliste/smsFeilAlertStripe/SmsFeilAlertStripe.tsx @@ -1,10 +1,11 @@ -import { FunctionComponent, useState } from 'react'; -import classNames from 'classnames'; -import { Alert, Button } from '@navikt/ds-react'; import { XMarkIcon } from '@navikt/aksel-icons'; +import { Alert, Button } from '@navikt/ds-react'; +import classNames from 'classnames'; +import { FunctionComponent, useState } from 'react'; -import { Kandidatmeldinger, SmsStatus } from '../domene/Kandidatressurser'; import { KandidatIKandidatliste } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; +import { SmsStatus } from 'felles/domene/sms/Sms'; +import { Kandidatmeldinger } from '../domene/Kandidatressurser'; import css from './smsFeilAlertStripe.module.css'; const LESTE_SMS_IDER_KEY = 'lesteSmsIder'; diff --git a/src/kandidat/kandidatside/historikk/Historikkside.tsx b/src/kandidat/kandidatside/historikk/Historikkside.tsx index 3754d56a..f5b201cb 100644 --- a/src/kandidat/kandidatside/historikk/Historikkside.tsx +++ b/src/kandidat/kandidatside/historikk/Historikkside.tsx @@ -1,22 +1,23 @@ +import { Ingress } from '@navikt/ds-react'; import { FunctionComponent, useEffect, useState } from 'react'; -import { useLocation, useParams } from 'react-router-dom'; import { useDispatch, useSelector } from 'react-redux'; -import { Ingress } from '@navikt/ds-react'; +import { useLocation, useParams } from 'react-router-dom'; -import { capitalizeFirstLetter } from '../../utils/formateringUtils'; -import { fetchForespørslerOmDelingAvCvForKandidat } from '../../api/forespørselOmDelingAvCvApi'; +import { sendEvent } from 'felles/amplitude'; +import { KandidatCv } from 'felles/domene/kandidat/Kandidat'; +import { KandidatlisteForKandidat } from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; +import { ikkeLastet, lasterInn, Nettressurs, Nettstatus, suksess } from 'felles/nettressurs'; import { fetchSmserForKandidat } from '../../api/api'; +import { fetchForespørslerOmDelingAvCvForKandidat } from '../../api/forespørselOmDelingAvCvApi'; import { ForespørselOmDelingAvCv } from '../../kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { Historikktabell } from './historikktabell/Historikktabell'; -import { ikkeLastet, lasterInn, Nettressurs, Nettstatus, suksess } from 'felles/nettressurs'; -import { KandidatlisteForKandidat, KandidatlisterForKandidatActionType } from './historikkReducer'; -import { KandidatQueryParam } from '../Kandidatside'; -import { sendEvent } from 'felles/amplitude'; -import { Sms } from '../../kandidatliste/domene/Kandidatressurser'; -import AppState from '../../state/AppState'; import Sidelaster from '../../komponenter/sidelaster/Sidelaster'; +import AppState from '../../state/AppState'; +import { capitalizeFirstLetter } from '../../utils/formateringUtils'; +import { KandidatQueryParam } from '../Kandidatside'; +import { KandidatlisterForKandidatActionType } from './historikkReducer'; import css from './Historikkside.module.css'; -import { KandidatCv } from 'felles/domene/kandidat/Kandidat'; +import { Historikktabell } from './historikktabell/Historikktabell'; const Historikkside: FunctionComponent = () => { const dispatch = useDispatch(); diff --git a/src/kandidat/kandidatside/historikk/historikkReducer.ts b/src/kandidat/kandidatside/historikk/historikkReducer.ts index 2bfb5033..20cacc14 100644 --- a/src/kandidat/kandidatside/historikk/historikkReducer.ts +++ b/src/kandidat/kandidatside/historikk/historikkReducer.ts @@ -1,34 +1,11 @@ +import { KandidatlisteForKandidat } from 'felles/domene/kandidatliste/Kandidatliste'; import { Error, feil, ikkeLastet, lasterInn, Nettressurs, suksess } from 'felles/nettressurs'; import { call, put, takeLatest } from 'redux-saga/effects'; import { fetchKandidatlisterForKandidat } from '../../api/api'; import { SearchApiError } from '../../api/fetchUtils'; -import { - Kandidatstatus, - Kandidatutfall, - Utfallsendring, -} from 'felles/domene/kandidatliste/KandidatIKandidatliste'; - -export interface KandidatlisteForKandidat { - kandidatnr: string; - fornavn: string; - etternavn: string; - lagtTilTidspunkt: string; - lagtTilAvIdent: string; - lagtTilAvEpost: string; - lagtTilAvNavn: string; - status: Kandidatstatus; - utfall: Kandidatutfall; - uuid: string; - tittel: string; - organisasjonReferanse?: string; - organisasjonNavn?: string; - stillingId?: string; - slettet?: boolean; - antallStillinger?: number; - utfallsendringer: Utfallsendring[]; -} type KandidatlisterForKandidatResponse = KandidatlisteForKandidat[]; + export type HistorikkState = { kandidatlisterForKandidat: Nettressurs; }; diff --git a/src/kandidat/kandidatside/historikk/historikktabell/Historikkrad/Historikkrad.tsx b/src/kandidat/kandidatside/historikk/historikktabell/Historikkrad/Historikkrad.tsx index 1a85e3b8..7d9c635e 100644 --- a/src/kandidat/kandidatside/historikk/historikktabell/Historikkrad/Historikkrad.tsx +++ b/src/kandidat/kandidatside/historikk/historikktabell/Historikkrad/Historikkrad.tsx @@ -1,17 +1,17 @@ -import { FunctionComponent, ReactNode } from 'react'; -import classNames from 'classnames'; import { LinkIcon } from '@navikt/aksel-icons'; import { BodyShort, Detail, Table } from '@navikt/ds-react'; -import { Link } from 'react-router-dom'; +import classNames from 'classnames'; import moment from 'moment'; +import { FunctionComponent, ReactNode } from 'react'; +import { Link } from 'react-router-dom'; -import { capitalizeEmployerName } from '../../../../utils/formateringUtils'; -import { ForespørselOmDelingAvCv } from '../../../../kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { KandidatlisteForKandidat } from '../../historikkReducer'; +import { KandidatlisteForKandidat } from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; import { lenkeTilKandidatliste, lenkeTilStilling } from '../../../../app/paths'; -import { Sms } from '../../../../kandidatliste/domene/Kandidatressurser'; import Hendelsesetikett from '../../../../kandidatliste/kandidatrad/status-og-hendelser/etiketter/Hendelsesetikett'; import StatusEtikett from '../../../../kandidatliste/kandidatrad/status-og-hendelser/etiketter/StatusEtikett'; +import { ForespørselOmDelingAvCv } from '../../../../kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; +import { capitalizeEmployerName } from '../../../../utils/formateringUtils'; import css from './Historikkrad.module.css'; interface Props { diff --git a/src/kandidat/kandidatside/historikk/historikktabell/Historikktabell.tsx b/src/kandidat/kandidatside/historikk/historikktabell/Historikktabell.tsx index 52330eec..0905bfe9 100644 --- a/src/kandidat/kandidatside/historikk/historikktabell/Historikktabell.tsx +++ b/src/kandidat/kandidatside/historikk/historikktabell/Historikktabell.tsx @@ -1,11 +1,11 @@ -import { FunctionComponent } from 'react'; import { Table } from '@navikt/ds-react'; +import { FunctionComponent } from 'react'; +import { KandidatlisteForKandidat } from 'felles/domene/kandidatliste/Kandidatliste'; +import { Sms } from 'felles/domene/sms/Sms'; +import { Nettressurs, Nettstatus } from 'felles/nettressurs'; import { ForespørselOmDelingAvCv } from '../../../kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; import { Historikkrad } from './Historikkrad/Historikkrad'; -import { KandidatlisteForKandidat } from '../historikkReducer'; -import { Nettressurs, Nettstatus } from 'felles/nettressurs'; -import { Sms } from '../../../kandidatliste/domene/Kandidatressurser'; interface Props { kandidatlister: KandidatlisteForKandidat[]; diff --git "a/src/kandidat/mock/data/foresp\303\270rselOmDelingAvCv/foresp\303\270rselOmDelingAvCv.mock.ts" "b/src/kandidat/mock/data/foresp\303\270rselOmDelingAvCv/foresp\303\270rselOmDelingAvCv.mock.ts" deleted file mode 100644 index 12ebc56e..00000000 --- "a/src/kandidat/mock/data/foresp\303\270rselOmDelingAvCv/foresp\303\270rselOmDelingAvCv.mock.ts" +++ /dev/null @@ -1,62 +0,0 @@ -import moment from 'moment'; -import { - ForespørselOmDelingAvCv, - ForespørselDeltStatus, - TilstandPåForespørsel, - IdentType, -} from '../../../kandidatliste/knappe-rad/forespørsel-om-deling-av-cv/Forespørsel'; -import { KandidatlisteForKandidat } from '../../../kandidatside/historikk/historikkReducer'; -import { Veileder } from '../kandidat/veileder.mock'; -import { AktørId } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; -import Kandidatliste from 'felles/domene/kandidatliste/Kandidatliste'; - -export const mockForespørslerOmDelingAvCv = ( - eier: Veileder, - kandidatliste: Kandidatliste -): Record => ({ - [kandidatliste.kandidater[5].aktørid!!]: [ - { - aktørId: kandidatliste.kandidater[5].aktørid!!, - stillingsId: kandidatliste.stillingId!, - deltAv: eier.ident, - navKontor: eier.navKontor, - deltTidspunkt: moment().subtract(10, 'day').toISOString(), - deltStatus: ForespørselDeltStatus.Sendt, - svarfrist: moment().add(5, 'day').startOf('day').subtract(2, 'hours').toISOString(), - tilstand: TilstandPåForespørsel.HarSvart, - svar: { - harSvartJa: false, - svarTidspunkt: moment().subtract(1, 'day').startOf('day').toISOString(), - svartAv: { - ident: eier.ident, - identType: IdentType.NavIdent, - }, - }, - }, - ], -}); - -export const mockForespørslerOmDelingAvCvForKandidat = ( - eier: Veileder, - aktørId: string, - kandidatlisteForKandidat: KandidatlisteForKandidat -): ForespørselOmDelingAvCv[] => [ - { - aktørId, - stillingsId: kandidatlisteForKandidat.stillingId!, - deltAv: eier.ident, - navKontor: eier.navKontor, - deltTidspunkt: new Date().toISOString(), - deltStatus: ForespørselDeltStatus.Sendt, - svarfrist: moment().add(2, 'day').startOf('day').toISOString(), - tilstand: TilstandPåForespørsel.HarSvart, - svar: { - harSvartJa: true, - svarTidspunkt: moment().add(1, 'day').startOf('day').toISOString(), - svartAv: { - ident: aktørId, - identType: IdentType.AktørId, - }, - }, - }, -]; diff --git a/src/kandidat/mock/data/kandidat/annen-kandidat.mock.json b/src/kandidat/mock/data/kandidat/annen-kandidat.mock.json deleted file mode 100644 index a861fca4..00000000 --- a/src/kandidat/mock/data/kandidat/annen-kandidat.mock.json +++ /dev/null @@ -1,171 +0,0 @@ -{ - "aktorId": "1000102960567", - "fodselsdato": "2019-09-16", - "etternavn": "Nordmann", - "fornavn": "Ola", - "statsborgerskap": "PH", - "samtykkeDato": "2019-09-16", - "samtykkeStatus": "G", - "disponererBil": false, - "beskrivelse": "", - "epost": "spammenot@mailinator.com", - "mobiltelefon": null, - "telefon": "(+47) 123456789", - "adresse": { - "landkode": "NO", - "postnr": "0557", - "poststednavn": "Oslo", - "kommunenr": 301, - "adrlinje1": "Arbeids- og velferdsdirektoratet, Sannergata 2", - "adrlinje2": "", - "adrlinje3": "" - }, - "kandidatnummer": "DC294105", - "sistEndret": "2019-09-16T23:53:18.561", - "oppstartKode": null, - "utdanning": [ - { - "utdannelsessted": "STI College", - "alternativtUtdanningsnavn": "Fagskoleutdanning, IT- og nettverksadministrasjon, toårig", - "nusKode": "554113", - "nusKodeUtdanningsnavn": null, - "fraDato": "2007-06-02", - "tilDato": "2010-03-02", - "beskrivelse": "" - }, - { - "utdannelsessted": "Andres Bonifacio Integrated School", - "alternativtUtdanningsnavn": "Grunnskole på ungdomstrinnet", - "nusKode": "201103", - "nusKodeUtdanningsnavn": null, - "fraDato": "2002-06-02", - "tilDato": "2006-03-02", - "beskrivelse": "" - }, - { - "utdannelsessted": "Andres Bonifacio Integrated School", - "alternativtUtdanningsnavn": "Grunnskole på barneskolenivå", - "nusKode": "101101", - "nusKodeUtdanningsnavn": null, - "fraDato": "1996-06-02", - "tilDato": "2002-03-02", - "beskrivelse": "" - } - ], - "fagdokumentasjon": [], - "yrkeserfaring": [ - { - "arbeidsgiver": "Familievirksomhet", - "alternativStillingstittel": "Butikkinnehaver (liten butikk)", - "styrkKode": "5221.01", - "styrkKodeStillingstittel": "Butikkinnehavere (liten butikk)", - "utelukketForFremtiden": false, - "fraDato": "2014-09-02", - "tilDato": "2016-11-02", - "beskrivelse": "" - }, - { - "arbeidsgiver": "Expert Global Solutions", - "alternativStillingstittel": "Kundebehandler (kundesenter)", - "styrkKode": "4222.02", - "styrkKodeStillingstittel": "Kundebehandler", - "utelukketForFremtiden": false, - "fraDato": "2014-06-02", - "tilDato": "2015-08-02", - "beskrivelse": "" - }, - { - "arbeidsgiver": "Centra Refrigeration Company", - "alternativStillingstittel": "Sekretær", - "styrkKode": "4110.05", - "styrkKodeStillingstittel": "Organisasjonssekretær", - "utelukketForFremtiden": false, - "fraDato": "2011-01-02", - "tilDato": "2014-01-02", - "beskrivelse": "" - }, - { - "arbeidsgiver": "Division Office- Pasig", - "alternativStillingstittel": "Kontormedarbeider", - "styrkKode": "4110.02", - "styrkKodeStillingstittel": "Saksbehandler", - "utelukketForFremtiden": false, - "fraDato": "2009-12-02", - "tilDato": "2010-03-02", - "beskrivelse": "" - } - ], - "sertifikater": [], - "forerkort": [], - "kompetanse": [], - "sprak": [ - { - "kompetanseKode": null, - "kompetanseKodeTekst": "Filipino/Tagalog", - "alternativTekst": "Filipino/Tagalog", - "beskrivelse": "Muntlig: GODT Skriftlig: GODT", - "fraDato": null - }, - { - "kompetanseKode": null, - "kompetanseKodeTekst": "Engelsk", - "alternativTekst": "Engelsk", - "beskrivelse": "Muntlig: GODT Skriftlig: GODT", - "fraDato": null - }, - { - "kompetanseKode": null, - "kompetanseKodeTekst": "Bokmål", - "alternativTekst": "Bokmål", - "beskrivelse": "Muntlig: GODT Skriftlig: GODT", - "fraDato": null - } - ], - "sprakferdigheter": [ - { "sprak": "Filipino/Tagalog", "ferdighetSkriftlig": "GODT", "ferdighetMuntlig": "GODT" }, - { "sprak": "Engelsk", "ferdighetSkriftlig": "GODT", "ferdighetMuntlig": "GODT" }, - { "sprak": "Bokmål", "ferdighetSkriftlig": "GODT", "ferdighetMuntlig": "GODT" } - ], - "kurs": [], - "verv": [], - "geografiJobbonsker": [ - { "geografiKode": "NO02", "geografiKodeTekst": "Akershus" }, - { "geografiKode": "NO03.03012", "geografiKodeTekst": "Oslo/Bydel Grünerløkka" }, - { "geografiKode": "NO03.0301", "geografiKodeTekst": "Oslo" } - ], - "yrkeJobbonsker": [ - { - "styrkKode": null, - "styrkBeskrivelse": "Datakonsulent (support)", - "primaertJobbonske": false - }, - { "styrkKode": null, "styrkBeskrivelse": "Kundestøtte (IKT)", "primaertJobbonske": false }, - { - "styrkKode": null, - "styrkBeskrivelse": "Dataregistreringsoperatør", - "primaertJobbonske": false - } - ], - "omfangJobbprofil": [ - { "heltidDeltidKode": "DELTID", "heltidDeltidKodeTekst": "Deltid" }, - { "heltidDeltidKode": "HELTID", "heltidDeltidKodeTekst": "Heltid" } - ], - "ansettelsesformJobbprofil": [ - { "ansettelsesformKode": "VIKARIAT", "ansettelsesformKodeTekst": "Vikariat" }, - { "ansettelsesformKode": "FAST", "ansettelsesformKodeTekst": "Fast" }, - { "ansettelsesformKode": "FERIEJOBB", "ansettelsesformKodeTekst": "Feriejobb" }, - { "ansettelsesformKode": "SESONG", "ansettelsesformKodeTekst": "Sesong" } - ], - "arbeidsdagerJobbprofil": [], - "arbeidstidsordningJobbprofil": [], - "arbeidstidJobbprofil": [ - { "arbeidstidKode": "DAGTID", "arbeidstidKodeTekst": "Dagtid" }, - { "arbeidstidKode": "KVELD", "arbeidstidKodeTekst": "Kveld" } - ], - "annenErfaring": [], - "fodselsnummer": "17118926005", - "tilretteleggingsbehov": true, - "veilederEpost": null, - "veilederIdent": null, - "veilederNavn": null -} diff --git a/src/kandidat/mock/data/kandidat/cv-data.mock.ts b/src/kandidat/mock/data/kandidat/cv-data.mock.ts deleted file mode 100644 index 5ff718e1..00000000 --- a/src/kandidat/mock/data/kandidat/cv-data.mock.ts +++ /dev/null @@ -1,440 +0,0 @@ -import { - Kompetanse, - Kurs, - Sertifikat, - Språkferdighetsnivå, - Utdanning, - Yrkeserfaring, -} from 'felles/domene/kandidat/Cv'; -import { mockStrings } from './mock-strings'; - -export const utdanning: Utdanning[] = [ - { - utdannelsessted: 'Universitetet i Oslo', - alternativtUtdanningsnavn: 'Universitet', - nusKode: '2', - nusKodeUtdanningsnavn: null, - fraDato: '2013-08-02', - tilDato: null, - beskrivelse: 'Generisk utdanning fra Blindern', - }, - { - utdannelsessted: 'Åsane vgs', - alternativtUtdanningsnavn: 'Mekaniske fag, grunnkurs', - nusKode: '6', - nusKodeUtdanningsnavn: null, - fraDato: '1993-08-02', - tilDato: '1994-06-02', - beskrivelse: 'En beskrivelse av Åsage vgs.', - }, - { - utdannelsessted: 'Blokkhauen ungdomskole, Bergen', - alternativtUtdanningsnavn: 'Ungdomskole', - nusKode: '2', - nusKodeUtdanningsnavn: null, - fraDato: '1989-08-02', - tilDato: '1992-06-02', - beskrivelse: '', - }, - { - utdannelsessted: '', - alternativtUtdanningsnavn: 'Barne og ungdomsskolen i Berlevåg', - nusKode: '2', - nusKodeUtdanningsnavn: null, - fraDato: '1970-08-02', - tilDato: '1979-06-02', - beskrivelse: '', - }, -]; - -export const yrkeserfaring: Yrkeserfaring[] = [ - { - arbeidsgiver: 'Vestfold Anlegg', - alternativStillingstittel: 'Anleggsmaskinfører/Grunnarbeider lærling', - styrkKode: '8342.01', - styrkKodeStillingstittel: 'Anleggsmaskinfører', - utelukketForFremtiden: false, - fraDato: '2012-08-02', - tilDato: '2013-11-02', - beskrivelse: mockStrings.arbeidsbeskrivelser[0], - }, - { - arbeidsgiver: 'Meny Larvik sentrum', - alternativStillingstittel: 'Butikkmedarbeider', - styrkKode: '5223.02', - styrkKodeStillingstittel: 'Butikkmedarbeider', - utelukketForFremtiden: false, - fraDato: '2011-08-02', - tilDato: '2012-06-02', - beskrivelse: mockStrings.arbeidsbeskrivelser[1], - }, - { - arbeidsgiver: 'Lars Grimstad, Møbelringen, Larvik', - alternativStillingstittel: 'lagermedarbeider/sjåfør', - styrkKode: '4321.01', - styrkKodeStillingstittel: 'Lagerarbeider', - utelukketForFremtiden: false, - fraDato: '2009-04-02', - tilDato: '2010-07-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'ISAK Norge AS', - alternativStillingstittel: 'Lager ansvarlig/sjåfør', - styrkKode: '4322.01', - styrkKodeStillingstittel: 'Logistiker', - utelukketForFremtiden: false, - fraDato: '2008-08-02', - tilDato: '2009-03-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Proffice/Ringnes Bryggerier', - alternativStillingstittel: 'salgsfremmer', - styrkKode: '5223.02', - styrkKodeStillingstittel: 'Butikkmedarbeider', - utelukketForFremtiden: false, - fraDato: '2001-09-02', - tilDato: '2002-02-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Selektiv, Porsgrunn', - alternativStillingstittel: 'Telefonselger', - styrkKode: '5223.04', - styrkKodeStillingstittel: 'Selger detalj non-food', - utelukketForFremtiden: false, - fraDato: '2001-12-02', - tilDato: '2001-12-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Beha Fabrikker, Porsgrunn', - alternativStillingstittel: 'Produksjonsmedarbeider', - styrkKode: '8121.03', - styrkKodeStillingstittel: 'Operatør metallvareproduksjon', - utelukketForFremtiden: false, - fraDato: '2001-11-02', - tilDato: '2001-11-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Expert, Porsgrunn', - alternativStillingstittel: 'lager/truck', - styrkKode: '4321.01', - styrkKodeStillingstittel: 'Lagerarbeider', - utelukketForFremtiden: false, - fraDato: '2001-07-02', - tilDato: '2001-09-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'ATG Bergen', - alternativStillingstittel: 'snekkerarbeid', - styrkKode: '9313.01', - styrkKodeStillingstittel: 'Hjelpearbeider bygg', - utelukketForFremtiden: false, - fraDato: '1997-04-02', - tilDato: '1997-08-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'ATG Bergen', - alternativStillingstittel: 'snekkerarbeid', - styrkKode: '9313.01', - styrkKodeStillingstittel: 'Hjelpearbeider bygg', - utelukketForFremtiden: false, - fraDato: '1996-12-02', - tilDato: '1997-03-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'ATG Bergen', - alternativStillingstittel: 'snekkerarbeid', - styrkKode: '9313.01', - styrkKodeStillingstittel: 'Hjelpearbeider bygg', - utelukketForFremtiden: false, - fraDato: '1996-05-02', - tilDato: '1996-09-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'ATG Åsane bydel', - alternativStillingstittel: 'hjelpearbeider', - styrkKode: '9313.01', - styrkKodeStillingstittel: 'Hjelpearbeider bygg', - utelukketForFremtiden: false, - fraDato: '1995-08-02', - tilDato: '1995-10-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Åsane Hagesenter', - alternativStillingstittel: 'gartneriassistent', - styrkKode: '9211.01', - styrkKodeStillingstittel: 'Innhøstingsarbeider', - utelukketForFremtiden: false, - fraDato: '1993-04-02', - tilDato: '1993-07-02', - beskrivelse: '', - }, - { - arbeidsgiver: 'Flaktveit skole', - alternativStillingstittel: 'vaktmesterassistent', - styrkKode: '5153.03', - styrkKodeStillingstittel: 'Vaktmester', - utelukketForFremtiden: false, - fraDato: '1992-10-02', - tilDato: '1993-01-02', - beskrivelse: '', - }, -]; - -export const sertifikater: Sertifikat[] = [ - { - utsteder: 'testutsteder', - sertifikatKode: '382068', - sertifikatKodeNavn: 'Truckførerbevis T4', - alternativtNavn: null, - fraDato: '2018-02-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '404866', - sertifikatKodeNavn: 'Bevis for yrkessjåførkompetanse (YSK)', - alternativtNavn: null, - fraDato: '2013-08-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '381872', - sertifikatKodeNavn: 'Førerbevis anleggsmaskinførere: Anleggsdumper', - alternativtNavn: null, - fraDato: '2013-05-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '381891', - sertifikatKodeNavn: 'Førerbevis anleggsmaskinførere: Hjullaster', - alternativtNavn: null, - fraDato: '2013-05-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '381828', - sertifikatKodeNavn: 'Førerbevis anleggsmaskinførere: Gravemaskin', - alternativtNavn: null, - fraDato: '2013-05-02', - tilDato: null, - }, - { - utsteder: 'asss', - sertifikatKode: '382060', - sertifikatKodeNavn: 'Truckførerbevis', - alternativtNavn: null, - fraDato: '2005-02-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '416798', - sertifikatKodeNavn: 'Truckførerbevis: Klasse 10 (tilleggsutstyr)', - alternativtNavn: null, - fraDato: '1998-09-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: null, - sertifikatKodeNavn: null, - alternativtNavn: - 'Truckførerbevis T3 Svinggaffel og høytløftende plukktruck, sidestablende og førerløftende truck', - fraDato: '1998-09-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: null, - sertifikatKodeNavn: null, - alternativtNavn: 'Truckførerbevis T2 Skyvemasttruck, støttebenstruck', - fraDato: '1998-09-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: null, - sertifikatKodeNavn: null, - alternativtNavn: - 'Truckførerbevis T1 Lavtløftende plukktruck, palletruck m/perm. førerplass', - fraDato: '1998-09-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: null, - sertifikatKodeNavn: null, - alternativtNavn: 'Truckførerbevis T4 Motvektstruck', - fraDato: '1998-09-02', - tilDato: null, - }, - { - utsteder: '', - sertifikatKode: '382283', - sertifikatKodeNavn: 'Truckførerbevis T3', - alternativtNavn: null, - fraDato: '2017-06-02', - tilDato: '2017-06-02', - }, -]; - -export const forerkort: Sertifikat[] = [ - { - utsteder: null, - sertifikatKode: null, - sertifikatKodeNavn: 'B - Personbil', - alternativtNavn: null, - fraDato: null, - tilDato: null, - }, - { - utsteder: null, - sertifikatKode: null, - sertifikatKodeNavn: 'B - Personbil', - alternativtNavn: null, - fraDato: '2006-02-01', - tilDato: null, - }, - { - utsteder: null, - sertifikatKode: null, - sertifikatKodeNavn: 'BE - Personbil med tilhenger', - alternativtNavn: null, - fraDato: '2012-09-01', - tilDato: '2112-09-01', - }, - { - utsteder: null, - sertifikatKode: null, - sertifikatKodeNavn: 'C - Lastebil', - alternativtNavn: null, - fraDato: '2013-05-01', - tilDato: '2013-09-01', - }, -]; - -export const kompetanse: Kompetanse[] = [ - { - kompetanseKode: null, - kompetanseKodeTekst: 'Altmuligarbeid langs slakteprosedyren', - alternativTekst: 'Altmuligarbeid langs slakteprosedyren', - beskrivelse: '', - fraDato: null, - }, -]; - -export const sprak: Kompetanse[] = [ - { - kompetanseKode: null, - kompetanseKodeTekst: 'Engelsk', - alternativTekst: 'Engelsk', - beskrivelse: 'Muntlig: FOERSTESPRAAK Skriftlig: FOERSTESPRAAK', - fraDato: null, - }, - { - kompetanseKode: null, - kompetanseKodeTekst: 'Norsk', - alternativTekst: 'Norsk', - beskrivelse: 'Muntlig: FOERSTESPRAAK Skriftlig: FOERSTESPRAAK', - fraDato: null, - }, -]; - -export const sprakferdigheter = [ - { - sprak: 'Engelsk', - ferdighetSkriftlig: Språkferdighetsnivå.Førstespråk, - ferdighetMuntlig: Språkferdighetsnivå.Førstespråk, - }, - { - sprak: 'Norsk', - ferdighetSkriftlig: Språkferdighetsnivå.VeldigGodt, - ferdighetMuntlig: Språkferdighetsnivå.VeldigGodt, - }, -]; - -export const kurs: Kurs[] = [ - { - arrangor: 'Skagerak ', - tittel: 'Innføringskurs i sikkerhetsrutiner høy og lavspent', - omfang: { verdi: 5, enhet: '' }, - fraDato: null, - tilDato: '2015-03-02', - }, - { - arrangor: 'M.E.F', - tittel: 'Arbeidsvarsling langs vei', - omfang: { verdi: 24, enhet: '' }, - fraDato: '2013-04-02', - tilDato: null, - }, - { - arrangor: 'M.E.F', - tittel: 'Sikkerhetskurs for Maskinfører', - omfang: { verdi: 1, enhet: '' }, - fraDato: '2012-09-02', - tilDato: '2012-10-02', - }, - { - arrangor: 'Ifokus', - tittel: 'Avklaringskurs ', - omfang: { verdi: 8, enhet: '' }, - fraDato: '2011-08-02', - tilDato: null, - }, - { - arrangor: 'ifokus', - tittel: 'avklaringskurs', - omfang: { verdi: 12, enhet: '' }, - fraDato: '2008-06-02', - tilDato: null, - }, - { - arrangor: 'ssaass', - tittel: 'ss', - omfang: { verdi: 5, enhet: '' }, - fraDato: '2004-01-02', - tilDato: null, - }, - { - arrangor: 'Horten vgs', - tittel: 'Datakortet', - omfang: { verdi: 0, enhet: '' }, - fraDato: '2002-08-02', - tilDato: null, - }, - { - arrangor: 'aetat', - tittel: 'Jobbsøkerkurs', - omfang: { verdi: 0, enhet: '' }, - fraDato: '1999-10-02', - tilDato: null, - }, - { - arrangor: 'aetat ', - tittel: 'Lagerkurs', - omfang: { verdi: 0, enhet: '' }, - fraDato: '1998-08-02', - tilDato: null, - }, - { - arrangor: 'Bmv laksevåg', - tittel: 'Sveis', - omfang: { verdi: 3, enhet: '' }, - fraDato: '1997-08-02', - tilDato: null, - }, -]; diff --git a/src/kandidat/mock/data/kandidat/cv.mock.ts b/src/kandidat/mock/data/kandidat/cv.mock.ts deleted file mode 100644 index 81da45f1..00000000 --- a/src/kandidat/mock/data/kandidat/cv.mock.ts +++ /dev/null @@ -1,136 +0,0 @@ -import { Oppstartkode } from 'felles/domene/kandidat/Jobbprofil'; -import { KandidatCv } from 'felles/domene/kandidat/Kandidat'; -import * as cvData from './cv-data.mock'; -import { mockStrings } from './mock-strings'; -import { Veileder } from './veileder.mock'; - -export const antall = 20; - -const tomListe = [...new Array(antall)]; - -const baseCv = (veileder: Veileder): KandidatCv => ({ - fornavn: '', - etternavn: '', - kandidatnummer: '', - - veilederEpost: veileder.epost, - veilederIdent: veileder.ident, - veilederNavn: veileder.navn, - - aktorId: '', - fodselsdato: '2019-01-09', - statsborgerskap: null, - samtykkeDato: '2019-01-29', - samtykkeStatus: 'G', - beskrivelse: - 'Som en dyktig urmaker med 12 års erfaring, har jeg opparbeidet meg omfattende kunnskap og ferdigheter innen reparasjon, vedlikehold og produksjon av ur. Jeg har erfaring med å håndtere en rekke forskjellige typer ur, fra mekaniske klokker til moderne smartklokker. I mitt tidligere arbeid som urmaker har jeg opparbeidet meg en god forståelse av kundens behov, og jeg er alltid forberedt på å yte den beste servicen og kvalitetsarbeidet for å sikre kundetilfredshet. Jeg er også vant til å arbeide effektivt og nøyaktig for å møte stramme tidsfrister.', - epost: 'eksempel@dev.nav.no', - mobiltelefon: null, - telefon: '91333532', - adresse: { - landkode: 'Norge', - postnr: '0662', - poststednavn: 'OSLO', - kommunenr: 301, - adrlinje1: 'Arbeids- og velferdsdirektoratet, Sannergata 2', - adrlinje2: '', - adrlinje3: '', - }, - sistEndret: '2019-11-18T12:17:17.005', - oppstartKode: Oppstartkode.EtterAvtale, - utdanning: cvData.utdanning, - fagdokumentasjon: [ - { tittel: 'Fagbrev maritime fag', type: 'Fagbrev/svennebrev', beskrivelse: null }, - { tittel: 'Enda noen greier', type: 'Fagbrev/svennebrev', beskrivelse: 'ssas' }, - { tittel: 'Fagbrev sky', type: 'Fagbrev/svennebrev', beskrivelse: 'ssas' }, - ], - yrkeserfaring: cvData.yrkeserfaring, - sertifikater: cvData.sertifikater, - forerkort: cvData.forerkort, - kompetanse: cvData.kompetanse, - sprak: cvData.sprak as any, - sprakferdigheter: cvData.sprakferdigheter, - kurs: cvData.kurs, - verv: [], - geografiJobbonsker: [{ geografiKode: 'NO07.0712', geografiKodeTekst: 'Larvik' }], - yrkeJobbonsker: [ - { styrkKode: null, styrkBeskrivelse: 'Slakter', primaertJobbonske: true, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Lærer', primaertJobbonske: false, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Lafter', primaertJobbonske: false, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Frisør', primaertJobbonske: false, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Utvikler', primaertJobbonske: false, sokeTitler: [] }, - { - styrkKode: null, - styrkBeskrivelse: 'Backend-utvikler', - primaertJobbonske: false, - sokeTitler: [], - }, - { styrkKode: null, styrkBeskrivelse: 'Sanger', primaertJobbonske: false, sokeTitler: [] }, - { - styrkKode: null, - styrkBeskrivelse: 'Digital markedsfører', - primaertJobbonske: false, - sokeTitler: [], - }, - { styrkKode: null, styrkBeskrivelse: 'Slakter', primaertJobbonske: false, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Lærer', primaertJobbonske: false, sokeTitler: [] }, - { styrkKode: null, styrkBeskrivelse: 'Lafter', primaertJobbonske: false, sokeTitler: [] }, - ], - omfangJobbprofil: [ - { heltidDeltidKode: 'HELTID', heltidDeltidKodeTekst: 'Heltid' }, - { heltidDeltidKode: 'DELTID', heltidDeltidKodeTekst: 'Deltid' }, - ], - ansettelsesformJobbprofil: [ - { ansettelsesformKode: 'FAST', ansettelsesformKodeTekst: 'Fast' }, - { ansettelsesformKode: 'VIKARIAT', ansettelsesformKodeTekst: 'Vikariat' }, - ], - arbeidsdagerJobbprofil: [], - arbeidstidsordningJobbprofil: [], - arbeidstidJobbprofil: [ - { arbeidstidKode: 'DAGTID', arbeidstidKodeTekst: 'Dagtid' }, - { arbeidstidKode: 'KVELD', arbeidstidKodeTekst: 'Kveld' }, - ], - annenErfaring: [ - { - fraDato: '2004-01-02', - tilDato: null, - rolle: 'Erfaring som selger', - beskrivelse: 'Drev med salg fra tid til annen da jeg gikk på ungdomsskolen.', - }, - ], - godkjenninger: [ - { - tittel: 'Førerbevis anleggsmaskinførere: Gravemaskin', - utsteder: 'testutsteder', - gjennomfoert: '2010-12-02', - utloeper: '2118-12-02', - konseptId: '381828', - }, - { - tittel: 'Førerbevis test: test', - utsteder: 'testutsteder', - gjennomfoert: '2011-12-02', - utloeper: '', - konseptId: '3818', - }, - ], - fodselsnummer: '', - disponererBil: null, -}); - -const bokstaver = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; - -export const kandidatnumre = tomListe.map((_, i) => { - const toBokstaver = bokstaver[i % bokstaver.length] + bokstaver[(i + 1) % bokstaver.length]; - return toBokstaver + '123456'; -}); - -export const mockCver = (veileder: Veileder) => - tomListe.map((_, i) => ({ - ...baseCv(veileder), - kandidatnummer: kandidatnumre[i], - fornavn: mockStrings.fornavn[i % mockStrings.fornavn.length], - etternavn: mockStrings.etternavn[i % mockStrings.etternavn.length], - fodselsnummer: mockStrings.fødselsnumre[i % mockStrings.fødselsnumre.length], - aktorId: '00' + mockStrings.fødselsnumre[i % mockStrings.fødselsnumre.length], - })); diff --git a/src/kandidat/mock/data/kandidat/enhetsregister.mock.json b/src/kandidat/mock/data/kandidat/enhetsregister.mock.json deleted file mode 100644 index 301197ee..00000000 --- a/src/kandidat/mock/data/kandidat/enhetsregister.mock.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "took": 65, - "timed_out": false, - "_shards": { "total": 3, "successful": 3, "skipped": 0, "failed": 0 }, - "hits": { - "total": { "value": 3, "relation": "eq" }, - "max_score": 18.873999, - "hits": [ - { - "_index": "underenhet20210223", - "_type": "_doc", - "_id": "976434099", - "_score": 18.873999, - "_source": { - "organisasjonsnummer": "976434099", - "navn": "TULLEKONTORET AS", - "organisasjonsform": "BEDR", - "antallAnsatte": 1, - "overordnetEnhet": "912819973", - "adresse": { - "adresse": "Lilleakerveien 37D", - "postnummer": "0284", - "poststed": "OSLO", - "kommunenummer": "0301", - "kommune": "OSLO", - "landkode": "NO", - "land": "Norge" - }, - "naringskoder": [ - { - "kode": "90.012", - "beskrivelse": "Utøvende kunstnere og underholdningsvirksomhet innen scenekunst" - } - ] - } - }, - { - "_index": "underenhet20210223", - "_type": "_doc", - "_id": "921730810", - "_score": 18.872988, - "_source": { - "organisasjonsnummer": "921730810", - "navn": "TULLEKUNSTNEREN MARTINSEN", - "organisasjonsform": "BEDR", - "antallAnsatte": 0, - "overordnetEnhet": "921323824", - "adresse": { - "adresse": "Skytterdalen 7", - "postnummer": "1337", - "poststed": "SANDVIKA", - "kommunenummer": "3024", - "kommune": "BÆRUM", - "landkode": "NO", - "land": "Norge" - }, - "naringskoder": [{ "kode": "43.341", "beskrivelse": "Malerarbeid" }] - } - }, - { - "_index": "underenhet20210223", - "_type": "_doc", - "_id": "972970492", - "_score": 18.236977, - "_source": { - "organisasjonsnummer": "972970492", - "navn": "En annen organisasjon", - "organisasjonsform": "BEDR", - "antallAnsatte": 0, - "overordnetEnhet": "969944723", - "adresse": { - "adresse": "Veien 195", - "postnummer": "0303", - "poststed": "OSLO", - "kommunenummer": "3006", - "kommune": "KONGSBERG", - "landkode": "NO", - "land": "Norge" - }, - "naringskoder": [{ "kode": "43.120", "beskrivelse": "Grunnarbeid" }] - } - } - ] - } -} diff --git a/src/kandidat/mock/data/kandidat/kandidatliste.mock.ts b/src/kandidat/mock/data/kandidat/kandidatliste.mock.ts deleted file mode 100644 index 463fa4d9..00000000 --- a/src/kandidat/mock/data/kandidat/kandidatliste.mock.ts +++ /dev/null @@ -1,270 +0,0 @@ -import moment from 'moment'; -import { v5 as uuid } from 'uuid'; - -import { KandidatCv } from 'felles/domene/kandidat/Kandidat'; -import { - FormidlingAvUsynligKandidat, - KandidatIKandidatliste, - Kandidatstatus, - Kandidatutfall, -} from 'felles/domene/kandidatliste/KandidatIKandidatliste'; -import Kandidatliste, { - KanSletteKandidatliste, - KandidatlisteSammendrag, - Kandidatlistestatus, -} from 'felles/domene/kandidatliste/Kandidatliste'; -import { Stillingskategori } from 'felles/domene/stilling/Stilling'; -import { mockStrings } from './mock-strings'; -import { Veileder } from './veileder.mock'; - -const antall = 25; -const tomListe = [...new Array(antall)]; - -const lagUuid = (seed: string) => uuid(seed, 'bf6877fa-5c82-4610-8cf7-ff7a0df18e29'); -const iDag = new Date(); -const forrigeUke = new Date(Number(new Date()) - 1000 * 60 * 60 * 24 * 7); - -const lagTittel = (i: number) => - `${mockStrings.bedrifter[i % mockStrings.bedrifter.length]} ${ - mockStrings.verb[i % mockStrings.verb.length] - } ${mockStrings.yrker[i % mockStrings.yrker.length]}`; - -const lagTittelForListeUtenStilling = (i: number) => - `Liste over ${mockStrings.yrker[i % mockStrings.yrker.length]}`; - -const standardKandidatliste = (eier: Veileder): Kandidatliste => ({ - kandidatlisteId: 'bf6877fa-5c82-4610-8cf7-ff7a0df18e29', - tittel: 'Tulleskolen søker tøysekopper', - beskrivelse: - 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.', - organisasjonReferanse: '976434099', - organisasjonNavn: 'TULLEKONTORET AS', - stillingId: '1ea746af-66be-4cf8-a051-9e815f77b1d1', - opprettetAv: { - ident: eier.ident, - navn: eier.navn, - }, - opprettetTidspunkt: '2019-11-18T11:40:34.732', - kanEditere: true, - kanSlette: KanSletteKandidatliste.KanSlettes, - status: Kandidatlistestatus.Åpen, - stillingskategori: Stillingskategori.Stilling, - kandidater: [], - formidlingerAvUsynligKandidat: [], - antallStillinger: 7, -}); - -export const mockKandidat = ( - cv: KandidatCv, - lagtTilAv: Veileder, - lagtTilTidspunkt = iDag -): KandidatIKandidatliste => ({ - kandidatnr: cv.kandidatnummer, - status: Kandidatstatus.Vurderes, - lagtTilTidspunkt: lagtTilTidspunkt.toISOString(), - lagtTilAv: { - ident: lagtTilAv?.ident || '', - navn: lagtTilAv?.navn || '', - }, - fornavn: cv.fornavn, - etternavn: cv.etternavn, - fodselsdato: cv.fodselsdato, - fodselsnr: cv.fodselsnummer, - utfall: Kandidatutfall.IkkePresentert, - utfallsendringer: [], - telefon: '(+47) 123456789', - epost: 'spammenot@mailinator.com', - innsatsgruppe: 'Situasjonsbestemt innsats', - arkivert: false, - antallNotater: 1, - arkivertTidspunkt: null, - arkivertAv: null, - aktørid: cv.aktorId, - erSynlig: true, -}); - -const inaktivKandidat = { - telefon: null, - aktørid: null, - epost: null, - innsatsgruppe: null, - fodselsnr: null, -}; - -const fraCvTilUsynligKandidat = (cv: KandidatCv, meg: Veileder): FormidlingAvUsynligKandidat => ({ - id: '0', - fornavn: cv.fornavn, - mellomnavn: null, - etternavn: cv.etternavn, - lagtTilAvIdent: cv.veilederIdent || meg.ident, - lagtTilAvNavn: cv.veilederNavn || meg.navn, - lagtTilTidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.Presentert, - arkivert: false, - arkivertAvIdent: null, - arkivertAvNavn: null, - arkivertTidspunkt: null, -}); - -export const mockUsynligKandidat = ( - cv: KandidatCv, - meg: Veileder -): FormidlingAvUsynligKandidat => ({ - ...fraCvTilUsynligKandidat(cv, meg), -}); - -export const mockKandidatlister = ( - eier: Veileder, - enAnnenVeileder: Veileder, - cver: KandidatCv[] -): Kandidatliste[] => - tomListe.map((_, index) => mockKandidatliste(eier, enAnnenVeileder, cver, index)); - -const mockKandidatliste = ( - eier: Veileder, - enAnnenVeileder: Veileder, - cver: KandidatCv[], - i: number -): Kandidatliste => { - const erEier = i < 10; - const harStilling = i % 5 < 3; - const erLukket = i % 5 === 2; - const harUsynligKandidat = i === 0; - const erTomListe = i === 9 || i === 1; - const harAlleSomFåttJobb = i === 1; - const enAnnenVeilederHarOgsåLagtTilKandidater = i === 0; - - let kandidatliste = standardKandidatliste(eier); - let kandidater: KandidatIKandidatliste[] = []; - let standardKandidater: KandidatIKandidatliste[] = []; - - if (i !== 1) { - standardKandidater.push({ - ...mockKandidat(cver[0], eier), - status: Kandidatstatus.TilIntervju, - utfall: Kandidatutfall.IkkePresentert, - utfallsendringer: [ - { - registrertAvIdent: eier.ident, - sendtTilArbeidsgiversKandidatliste: false, - tidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.IkkePresentert, - }, - { - registrertAvIdent: eier.ident, - sendtTilArbeidsgiversKandidatliste: true, - tidspunkt: moment().subtract(1, 'day').toISOString(), - utfall: Kandidatutfall.Presentert, - }, - ], - }); - } - - standardKandidater = [ - ...standardKandidater, - ...[ - { - ...mockKandidat( - cver[2], - enAnnenVeilederHarOgsåLagtTilKandidater ? enAnnenVeileder : eier - ), - status: Kandidatstatus.Kontaktet, - utfall: Kandidatutfall.Presentert, - utfallsendringer: [ - { - registrertAvIdent: eier.ident, - sendtTilArbeidsgiversKandidatliste: false, - tidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.Presentert, - }, - { - registrertAvIdent: eier.ident, - sendtTilArbeidsgiversKandidatliste: false, - tidspunkt: moment().subtract(1, 'day').toISOString(), - utfall: Kandidatutfall.FåttJobben, - }, - { - registrertAvIdent: eier.ident, - sendtTilArbeidsgiversKandidatliste: true, - tidspunkt: moment().subtract(2, 'day').toISOString(), - utfall: Kandidatutfall.Presentert, - }, - ], - }, - { - ...mockKandidat(cver[3], eier, forrigeUke), - status: Kandidatstatus.Aktuell, - utfall: Kandidatutfall.IkkePresentert, - }, - { - ...mockKandidat(cver[4], eier), - status: Kandidatstatus.Uaktuell, - utfall: Kandidatutfall.IkkePresentert, - ...inaktivKandidat, - }, - { - ...mockKandidat( - cver[5], - enAnnenVeilederHarOgsåLagtTilKandidater ? enAnnenVeileder : eier - ), - status: Kandidatstatus.Uinteressert, - utfall: Kandidatutfall.IkkePresentert, - }, - { - ...mockKandidat(cver[6], eier, forrigeUke), - status: Kandidatstatus.Vurderes, - utfall: Kandidatutfall.IkkePresentert, - }, - ], - ]; - - if (!erTomListe) { - kandidater = standardKandidater; - - if (i !== 0) { - kandidater.push({ - ...mockKandidat(cver[7], eier, forrigeUke), - }); - } - } - - if (harAlleSomFåttJobb) { - kandidater = kandidater.map((kandidat) => ({ - ...kandidat, - utfall: Kandidatutfall.FåttJobben, - })); - } - - return { - ...kandidatliste, - opprettetTidspunkt: new Date().toISOString(), - - stillingskategori: Stillingskategori.Stilling, - tittel: harStilling ? lagTittel(i) : lagTittelForListeUtenStilling(i), - kandidatlisteId: lagUuid(lagTittel(i)), - status: erLukket ? Kandidatlistestatus.Lukket : Kandidatlistestatus.Åpen, - kanEditere: erEier ? kandidatliste.kanEditere : false, - kanSlette: erEier ? kandidatliste.kanSlette : KanSletteKandidatliste.ErIkkeDin, - stillingId: harStilling ? kandidatliste.stillingId : null, - opprettetAv: erEier - ? kandidatliste.opprettetAv - : { - ident: enAnnenVeileder.ident, - navn: enAnnenVeileder.navn, - }, - kandidater, - formidlingerAvUsynligKandidat: - harUsynligKandidat && !erTomListe ? [mockUsynligKandidat(cver[7], eier)] : [], - }; -}; - -export const kandidatlistesammendragLister = ( - kandidatlister: Kandidatliste[] -): KandidatlisteSammendrag[] => - kandidatlister.map((liste) => { - return { - ...(liste as unknown as KandidatlisteSammendrag), - antallKandidater: liste.kandidater.length, - antallUsynligeKandidater: liste.formidlingerAvUsynligKandidat.length, - }; - }); diff --git a/src/kandidat/mock/data/kandidat/kandidatlister-for-kandidat.mock.ts b/src/kandidat/mock/data/kandidat/kandidatlister-for-kandidat.mock.ts deleted file mode 100644 index 3c9b061c..00000000 --- a/src/kandidat/mock/data/kandidat/kandidatlister-for-kandidat.mock.ts +++ /dev/null @@ -1,122 +0,0 @@ -import { Kandidatutfall, Kandidatstatus } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; -import { KandidatlisteForKandidat } from '../../../kandidatside/historikk/historikkReducer'; -import { Veileder } from './veileder.mock'; - -const kandidatlisteId = 'bf6877fa-5c82-4610-8cf7-ff7a0df18e29'; -const kandidatlisteId2 = '53d32269-08df-4950-a4f9-41ad6f36129f'; -const kandidatlisteId3 = '33d32269-08df-4950-a4f9-41ad6f36129f'; -const kandidatlisteId4 = '43d32269-08df-4950-a4f9-41ad6f36129f'; -const stillingsId = 'ce3da214-8771-4115-9362-b83145150551'; -const stillingsId2 = 'be3da214-8771-4115-9362-b83145150551'; - -export const kandidatlisterForKandidatMock = (eier: Veileder): KandidatlisteForKandidat[] => [ - { - uuid: kandidatlisteId, - lagtTilTidspunkt: '2020-05-18T15:05:53.147', - tittel: 'test', - kandidatnr: 'CD430805', - utfall: Kandidatutfall.IkkePresentert, - status: Kandidatstatus.Vurderes, - fornavn: 'OLA', - etternavn: 'NORDMANN', - lagtTilAvEpost: 'clark.kent@nav.no', - lagtTilAvNavn: 'Clark Kent', - lagtTilAvIdent: 'Z990746', - organisasjonReferanse: '215225111', - organisasjonNavn: 'EN DYR BEDRIFT AS', - stillingId: stillingsId, - slettet: false, - antallStillinger: 4, - utfallsendringer: [], - }, - { - uuid: kandidatlisteId2, - lagtTilTidspunkt: '2020-05-19T17:01:39.147', - tittel: 'Stillingsliste til stillingen min', - kandidatnr: 'FK185344', - utfall: Kandidatutfall.Presentert, - status: Kandidatstatus.Vurderes, - fornavn: 'Olas Gamle', - etternavn: 'Navn', - lagtTilAvEpost: 'clark.kent@nav.no', - lagtTilAvNavn: 'Clark Kent', - lagtTilAvIdent: 'Z990746', - slettet: false, - utfallsendringer: [ - { - registrertAvIdent: eier.ident, - tidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.Presentert, - sendtTilArbeidsgiversKandidatliste: true, - }, - ], - }, - - { - uuid: 'uuid3', - lagtTilTidspunkt: '2020-01-19T17:01:39.147', - tittel: 'Liste til gammel jobbmesse', - kandidatnr: 'FZ856234', - utfall: Kandidatutfall.Presentert, - status: Kandidatstatus.Uinteressert, - fornavn: 'Olas Gamle', - etternavn: 'Navn', - lagtTilAvEpost: 'clark.kent@nav.no', - lagtTilAvNavn: 'Clark Kent', - lagtTilAvIdent: 'Z120687', - slettet: true, - utfallsendringer: [ - { - registrertAvIdent: eier.ident, - tidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.Presentert, - sendtTilArbeidsgiversKandidatliste: true, - }, - { - registrertAvIdent: eier.ident, - tidspunkt: new Date().toISOString(), - utfall: Kandidatutfall.FåttJobben, - sendtTilArbeidsgiversKandidatliste: false, - }, - ], - }, - - { - uuid: kandidatlisteId3, - lagtTilTidspunkt: '2021-05-18T15:05:53.147', - tittel: 'smstest', - kandidatnr: 'CD430805', - utfall: Kandidatutfall.IkkePresentert, - status: Kandidatstatus.Kontaktet, - fornavn: 'OLA', - etternavn: 'NORDMANN', - lagtTilAvEpost: 'clark.kent@nav.no', - lagtTilAvNavn: 'Clark Kent', - lagtTilAvIdent: 'Z990746', - organisasjonReferanse: '215225111', - organisasjonNavn: 'EN DYR BEDRIFT AS', - stillingId: stillingsId2, - slettet: false, - antallStillinger: 4, - utfallsendringer: [], - }, - { - uuid: kandidatlisteId4, - lagtTilTidspunkt: '2021-05-18T15:05:53.147', - tittel: 'smstest2', - kandidatnr: 'CD430805', - utfall: Kandidatutfall.IkkePresentert, - status: Kandidatstatus.Kontaktet, - fornavn: 'OLA', - etternavn: 'NORDMANN', - lagtTilAvEpost: 'clark.kent@nav.no', - lagtTilAvNavn: 'Clark Kent', - lagtTilAvIdent: 'Z990746', - organisasjonReferanse: '215225111', - organisasjonNavn: 'EN DYR BEDRIFT AS', - stillingId: stillingsId2, - slettet: false, - antallStillinger: 4, - utfallsendringer: [], - }, -]; diff --git a/src/kandidat/mock/data/kandidat/mock-strings.ts b/src/kandidat/mock/data/kandidat/mock-strings.ts deleted file mode 100644 index a98840ea..00000000 --- a/src/kandidat/mock/data/kandidat/mock-strings.ts +++ /dev/null @@ -1,158 +0,0 @@ -export const mockStrings = { - bedrifter: [ - 'Accenture', - 'Atea', - 'Bekk', - 'Bouvet', - 'Capgemini', - 'Ciber', - 'Deloitte', - 'Evry', - 'Itera', - 'JProfessionals', - 'Kantega', - 'KPMG', - 'NAV', - 'Sopra', - 'Visma', - ], - - verb: ['søker', 'trenger', 'har behov for', 'ønsker å ansette', 'leter etter'], - - yrker: [ - 'piloter', - 'leger', - 'brannslukkere', - 'politifolk', - 'rørleggere', - 'ambulansesjåfører', - 'sykepleiere', - 'ambassadører', - 'professorer', - 'prester', - 'dyrleger', - 'nødhjelpsarbeidere', - 'lærere', - 'influencere', - 'dykkere', - 'forfattere', - 'musikkstjerner', - 'livvakter', - 'skuespillere', - 'fysioterapeuter', - ], - - fornavn: [ - 'André', - 'Are', - 'Bendik', - 'Eivind', - 'Gro', - 'Håvard', - 'Henrietta', - 'Hilde', - 'Joar', - 'Kjetil', - 'Lars Andreas', - 'Malaz', - 'Malin', - 'Martin', - 'Mats', - 'Preben', - 'Sindre', - 'Thomas', - 'Torstein', - 'Vinh', - ], - - etternavn: [ - 'Andersen', - 'Berg', - 'Dahl', - 'Eriksen', - 'Hagen', - 'Halvorsen', - 'Hansen', - 'Haugen', - 'Jensen', - 'Johansen', - 'Johnsen', - 'Karlsen', - 'Kristiansen', - 'Larsen', - 'Moen', - 'Nilsen', - 'Olsen', - 'Pedersen', - 'Pettersen', - 'Solberg', - ], - - fødselsnumre: [ - '25068036448', - '31057943257', - '13018231837', - '29117333955', - '10059343721', - '21049538526', - '26018828331', - '21067630103', - '17026726816', - '22080097003', - '26088024140', - '12077918556', - '22119749836', - '01038215430', - '26066914886', - '13106340786', - '02085427108', - '16039539091', - '16047926231', - '18105726895', - ], - - skoler: [ - 'Oslo katedralskole', - 'Porsgrunn VGS', - 'Eidsvoll VGS', - 'Oslo handelsgymnasium', - 'Kvernerdalen barnehage', - 'Engebråten ungdomsskole', - 'Hovseter ungdomsskole', - 'Huseby barneskole', - ], - - arbeidsplasser: [ - 'Telemark Kunstsenter', - 'Marienlyst Barneskole', - 'Telenorbutikken', - 'Grønmo gjenbruksstasjon', - ], - - arbeidsbeskrivelser: [ - 'Jeg har tidligere jobbet som kassadame på Kiwi Supermarked, der jeg betjente kunder på en effektiv og vennlig måte, og behandlet kassatransaksjoner nøyaktig og i samsvar med selskapets retningslinjer. Jeg fulgte sikkerhetsprosedyrer for å beskytte selskapets eiendom og ansatte, og varslet ledelsen om eventuelle avvik eller problemer.', - 'Som kassadame var jeg ansvarlig for å utføre kassarelaterte oppgaver som å håndtere vekslepenger, administrere kreditt- og debetkortbetalinger, og opprettholde en ren og organisert kassestasjon. Jeg bidro til å skape et positivt arbeidsmiljø ved å samarbeide med andre ansatte for å sikre at butikken var velorganisert og ren til enhver tid.', - 'Jeg har hatt gleden av å jobbe ved Telemark Kunstsenter, der jeg bidro til å skape en stimulerende og kreativ atmosfære. I min rolle som kunstguide og kurator, presenterte jeg verkene for besøkende og bidro til å gi dem en dypere forståelse av kunst og kulturen som omgir dem. Jeg jobbet også med organisering og markedsføring av utstillinger og arrangementer, og jeg var en pådriver for å øke besøkstallet og skape en mer inkluderende og engasjerende opplevelse for alle.', - 'Jeg har tidligere jobbet som lærer ved Marienlyst Barneskole, hvor jeg underviste og veiledet elever på en positiv og motiverende måte. Jeg hadde en spesiell interesse for å tilpasse læringen til den enkelte elevs behov og interesser, og jeg var opptatt av å skape et inkluderende miljø der alle elevene følte seg sett og verdsatt. Jeg jobbet også med å utvikle undervisningsplaner og evaluere elevenes fremgang for å sikre at de oppnådde de beste resultatene.', - 'Jeg har jobbet som selger i Telenorbutikken, hvor jeg bidro til å øke salget og forbedre kundeopplevelsen. Jeg var ansvarlig for å presentere og forklare produktene på en klar og engasjerende måte, og jeg var flink til å lytte til kundens behov og ønsker for å finne de beste løsningene for dem. Jeg var også opptatt av å utvikle mine kunnskaper om nye produkter og teknologier for å kunne gi best mulig service til kundene.', - 'Jeg har hatt gleden av å jobbe ved Grønmo gjenbruksstasjon, der jeg bidro til å skape en effektiv og miljøvennlig avfallshåndtering. Jeg var ansvarlig for å motta, sortere og behandle avfall på en sikker og miljøvennlig måte, samtidig som jeg bidro til å gi god service til besøkende. Jeg var opptatt av å spre kunnskap og bevissthet om miljøvennlige valg, og jeg var en pådriver for å redusere avfallsmengden og øke gjenvinningsgraden på stasjonen.', - ], - - kompetanser: [ - 'Kunsthistorie og estetikk', - 'Kunstteori og analyse', - 'Visuell kommunikasjon og design', - 'Billedkomposisjon og layout', - 'Farge- og lysforståelse', - 'Tegning, maleri og andre kunstformer', - 'Skulptur og keramikk', - 'Digitale medier og teknologi', - 'Fotografi og videoproduksjon', - 'Grafisk design og typografi', - 'Kunst- og kulturformidling', - 'Kuratering og utstillingsdesign', - 'Prosjektledelse og planlegging', - 'Budsjett- og ressursstyring', - 'Kommunikasjon og samarbeid med kunder, kolleger og leverandører', - ], -}; diff --git a/src/kandidat/mock/data/kandidat/notater.mock.json b/src/kandidat/mock/data/kandidat/notater.mock.json deleted file mode 100644 index 0e71d624..00000000 --- a/src/kandidat/mock/data/kandidat/notater.mock.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "liste": [ - { - "notatId": "748242b4-ee37-4f4e-8697-52a5969f1ac1", - "tekst": "Perfekt egnet til denne stillingen.", - "lagtTilTidspunkt": "2019-11-27T08:52:20.173", - "sistEndretTidspunkt": "2019-11-27T08:52:20.173", - "lagtTilAv": { "ident": "Z992776", "navn": "F_Z992776 E_Z992776" }, - "kanEditere": true, - "notatEndret": false - } - ], - "antall": 1 -} diff --git a/src/kandidat/mock/data/kandidat/veileder.mock.ts b/src/kandidat/mock/data/kandidat/veileder.mock.ts deleted file mode 100644 index effcc413..00000000 --- a/src/kandidat/mock/data/kandidat/veileder.mock.ts +++ /dev/null @@ -1,35 +0,0 @@ -export type Veileder = { - ident: string; - navn: string; - fornavn: string; - etternavn: string; - epost: string; - navKontor: string; -}; - -export const meg: Veileder = { - ident: 'Z123456', - navn: 'Clark Kent', - fornavn: 'Clark', - etternavn: 'Kent', - epost: 'clark.kent@trygdeetaten.no', - navKontor: '0239', -}; - -export const enVeileder: Veileder = { - ident: 'X123456', - navn: 'Bruce Wayne', - fornavn: 'Bruce', - etternavn: 'Wayne', - epost: 'bruce.wayne@trygdeetaten.no', - navKontor: '2222', -}; - -export const enAnnenVeileder: Veileder = { - ident: 'Y123456', - navn: 'Peter Parker', - fornavn: 'Peter', - etternavn: 'Parker', - epost: 'peter.parker@trygdeetaten.no', - navKontor: '3333', -}; diff --git a/src/kandidat/mock/data/sms/sms.mock.json b/src/kandidat/mock/data/sms/sms.mock.json deleted file mode 100644 index e517d9d1..00000000 --- a/src/kandidat/mock/data/sms/sms.mock.json +++ /dev/null @@ -1,11 +0,0 @@ -[ - { - "id": 1, - "fnr": "13018231837", - "opprettet": "2019-11-18T11:40:34.732", - "sendt": "2019-11-18T11:41:34.732", - "status": "SENDT", - "navIdent": "A123123", - "kandidatlisteId": "33d32269-08df-4950-a4f9-41ad6f36129f" - } -] diff --git "a/src/kandidat/mock/data/stillingss\303\270k/annen-stilling.mock.json" "b/src/kandidat/mock/data/stillingss\303\270k/annen-stilling.mock.json" deleted file mode 100644 index 61e64c0b..00000000 --- "a/src/kandidat/mock/data/stillingss\303\270k/annen-stilling.mock.json" +++ /dev/null @@ -1,146 +0,0 @@ -{ - "_source": { - "stillingsinfo": { - "stillingsid": "2ea746af-66be-4cf8-a051-9e815f77b1d1", - "stillingsinfoid": "8e74803e-6973-4115-befe-6ee1e0f28533", - "notat": "Testnotat for tøysekopper.", - "eierNavident": null, - "eierNavn": null, - "stillingskategori": "STILLING" - }, - "stilling": { - "id": 298124, - "uuid": "2ea746af-66be-4cf8-a051-9e815f77b1d1", - "created": "2020-09-29T14:38:27.225324", - "createdBy": "pam-rekrutteringsbistand", - "updated": "2020-09-30T12:15:42.784718", - "updatedBy": "pam-rekrutteringsbistand", - "mediaList": [], - "contactList": [ - { - "name": null, - "email": "test@nav.no", - "phone": null, - "role": null, - "title": null - } - ], - "title": "Sjokoladeselger til sjokkpris", - "status": "ACTIVE", - "privacy": "INTERNAL_NOT_SHOWN", - "source": "DIR", - "medium": "DIR", - "reference": "2ea746af-66be-4cf8-a051-9e815f77b1d1", - "published": "2020-09-30T01:00:00", - "expires": "2020-11-20T02:00:00", - "employer": { - "id": 203480, - "uuid": "c7ebcc88-02a1-4eec-80e1-f7a866744f0e", - "created": "2019-11-18T11:42:21.042131", - "createdBy": "pam-ad", - "updated": "2020-09-29T14:43:49.735974", - "updatedBy": "pam-ad", - "mediaList": [], - "contactList": [], - "location": { - "address": "Lilleakerveien 37D", - "postalCode": "0284", - "county": "OSLO", - "municipal": "OSLO", - "municipalCode": "0301", - "city": "OSLO", - "country": "NORGE", - "latitude": "59.92172360812686", - "longitude": "10.637563808231683" - }, - "locationList": [ - { - "address": "Lilleakerveien 37D", - "postalCode": "0284", - "county": "OSLO", - "municipal": "OSLO", - "municipalCode": "0301", - "city": "OSLO", - "country": "NORGE", - "latitude": "59.92172360812686", - "longitude": "10.637563808231683" - } - ], - "properties": { - "nace2": "[{\"code\":\"90.012\",\"name\":\"Utøvende kunstnere og underholdningsvirksomhet innen scenekunst\"}]" - }, - "name": "TULLEKONTORET AS", - "orgnr": "976434099", - "status": "ACTIVE", - "parentOrgnr": "912819973", - "publicName": "TULLEKONTORET AS", - "deactivated": null, - "orgform": "BEDR", - "employees": 1 - }, - "administration": { - "id": 268789, - "status": "DONE", - "comments": null, - "reportee": "F_Z992776 E_Z992776", - "remarks": [], - "navIdent": "A123456" - }, - "location": { - "address": null, - "postalCode": null, - "county": null, - "municipal": null, - "municipalCode": null, - "city": null, - "country": "SVERIGE", - "latitude": null, - "longitude": null - }, - "locationList": [ - { - "address": null, - "postalCode": null, - "county": null, - "municipal": null, - "municipalCode": null, - "city": null, - "country": "SVERIGE", - "latitude": null, - "longitude": null - } - ], - "categoryList": [ - { - "id": 7, - "code": "0000.03", - "categoryType": "STYRK08NAV", - "name": "Uidentifiserbart yrke", - "description": null, - "parentId": 4 - } - ], - "properties": { - "extent": "Heltid", - "workhours": "[\"Dagtid\"]", - "employerhomepage": "https://www.tullekontoret.no", - "applicationdue": "Snarest", - "workday": "[\"Ukedager\"]", - "jobtitle": "Uidentifiserbart yrke", - "positioncount": "4", - "engagementtype": "Fast", - "employerdescription": "

Tullekontoret – stolt leverandør av tull og tøys siden 1953. Våre dyktige tøysekopper sørger for at du får den opplevelsen du fortjener.

", - "adtext": "

Vi trenger flere tøysekopper!

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Etiam dignissim diam quis enim lobortis scelerisque fermentum dui. Mauris vitae ultricies leo integer. Feugiat nisl pretium fusce id velit ut tortor pretium.

", - "applicationemail": "test@nav.no", - "classification_input_source": "categoryName", - "sector": "Offentlig", - "tags": "[\"TILTAK_ELLER_VIRKEMIDDEL__LÆRLINGPLASS\"]" - }, - "publishedByAdmin": "2020-09-29T14:43:49.760339", - "businessName": "Tullekontoret", - "firstPublished": true, - "deactivatedByExpiry": false, - "activationOnPublishingDate": false - } - } -} diff --git "a/src/kandidat/mock/data/stillingss\303\270k/stilling.mock.json" "b/src/kandidat/mock/data/stillingss\303\270k/stilling.mock.json" deleted file mode 100644 index 6b7c61bd..00000000 --- "a/src/kandidat/mock/data/stillingss\303\270k/stilling.mock.json" +++ /dev/null @@ -1,146 +0,0 @@ -{ - "_source": { - "stillingsinfo": { - "stillingsid": "1ea746af-66be-4cf8-a051-9e815f77b1d1", - "stillingsinfoid": "8e74803e-6973-4115-befe-6ee1e0f28533", - "notat": "Testnotat for tøysekopper.", - "eierNavident": null, - "eierNavn": null, - "stillingskategori": "STILLING" - }, - "stilling": { - "id": 298123, - "uuid": "1ea746af-66be-4cf8-a051-9e815f77b1d1", - "created": "2020-09-29T14:38:27.225324", - "createdBy": "pam-rekrutteringsbistand", - "updated": "2020-09-30T12:15:42.784718", - "updatedBy": "pam-rekrutteringsbistand", - "mediaList": [], - "contactList": [ - { - "name": null, - "email": "test@nav.no", - "phone": null, - "role": null, - "title": null - } - ], - "title": "Eksempel på intern stilling", - "status": "ACTIVE", - "privacy": "INTERNAL_NOT_SHOWN", - "source": "DIR", - "medium": "DIR", - "reference": "1ea746af-66be-4cf8-a051-9e815f77b1d1", - "published": "2020-09-30T01:00:00", - "expires": "2020-11-20T02:00:00", - "employer": { - "id": 203480, - "uuid": "c7ebcc88-02a1-4eec-80e1-f7a866744f0e", - "created": "2019-11-18T11:42:21.042131", - "createdBy": "pam-ad", - "updated": "2020-09-29T14:43:49.735974", - "updatedBy": "pam-ad", - "mediaList": [], - "contactList": [], - "location": { - "address": "Lilleakerveien 37D", - "postalCode": "0284", - "county": "OSLO", - "municipal": "OSLO", - "municipalCode": "0301", - "city": "OSLO", - "country": "NORGE", - "latitude": "59.92172360812686", - "longitude": "10.637563808231683" - }, - "locationList": [ - { - "address": "Lilleakerveien 37D", - "postalCode": "0284", - "county": "OSLO", - "municipal": "OSLO", - "municipalCode": "0301", - "city": "OSLO", - "country": "NORGE", - "latitude": "59.92172360812686", - "longitude": "10.637563808231683" - } - ], - "properties": { - "nace2": "[{\"code\":\"90.012\",\"name\":\"Utøvende kunstnere og underholdningsvirksomhet innen scenekunst\"}]" - }, - "name": "TULLEKONTORET AS", - "orgnr": "976434099", - "status": "ACTIVE", - "parentOrgnr": "912819973", - "publicName": "TULLEKONTORET AS", - "deactivated": null, - "orgform": "BEDR", - "employees": 1 - }, - "administration": { - "id": 268789, - "status": "DONE", - "comments": null, - "reportee": "F_Z992776 E_Z992776", - "remarks": [], - "navIdent": "A123456" - }, - "location": { - "address": null, - "postalCode": null, - "county": null, - "municipal": null, - "municipalCode": null, - "city": null, - "country": "SVERIGE", - "latitude": null, - "longitude": null - }, - "locationList": [ - { - "address": null, - "postalCode": null, - "county": null, - "municipal": null, - "municipalCode": null, - "city": null, - "country": "SVERIGE", - "latitude": null, - "longitude": null - } - ], - "categoryList": [ - { - "id": 7, - "code": "0000.03", - "categoryType": "STYRK08NAV", - "name": "Uidentifiserbart yrke", - "description": null, - "parentId": 4 - } - ], - "properties": { - "extent": "Heltid", - "workhours": "[\"Dagtid\"]", - "employerhomepage": "https://www.tullekontoret.no", - "applicationdue": "Snarest", - "workday": "[\"Ukedager\"]", - "jobtitle": "Uidentifiserbart yrke", - "positioncount": "4", - "engagementtype": "Fast", - "employerdescription": "

Tullekontoret – stolt leverandør av tull og tøys siden 1953. Våre dyktige tøysekopper sørger for at du får den opplevelsen du fortjener.

", - "adtext": "

Vi trenger flere tøysekopper!

Lorem ipsum dolor sit amet

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Etiam dignissim diam quis enim lobortis scelerisque fermentum dui. Mauris vitae ultricies leo integer. Feugiat nisl pretium fusce id velit ut tortor pretium.

", - "applicationemail": "test@nav.no", - "classification_input_source": "categoryName", - "sector": "Offentlig", - "tags": "[\"TILTAK_ELLER_VIRKEMIDDEL__LÆRLINGPLASS\"]" - }, - "publishedByAdmin": "2020-09-29T14:43:49.760339", - "businessName": "Tullekontoret", - "firstPublished": true, - "deactivatedByExpiry": false, - "activationOnPublishingDate": false - } - } -} diff --git a/src/kandidat/mock/mock-api.ts b/src/kandidat/mock/mock-api.ts deleted file mode 100644 index 73fb7412..00000000 --- a/src/kandidat/mock/mock-api.ts +++ /dev/null @@ -1,307 +0,0 @@ -import fetchMock, { MockResponse, MockResponseFunction } from 'fetch-mock'; - -import { FormidlingAvUsynligKandidatOutboundDto } from '../kandidatliste/modaler/legg-til-kandidat-modal/LeggTilKandidatModal'; - -import { api } from 'felles/api'; -import { Kandidatutfall } from 'felles/domene/kandidatliste/KandidatIKandidatliste'; -import { ENHETSREGISTER_API } from '../api/api'; -import { meg } from './data/kandidat/veileder.mock'; -import { mock } from './mock-data'; - -fetchMock.config.fallbackToNetwork = true; - -const baseUrl = `express:${api.kandidat}`; -const smsBaseUrl = `express:${api.sms}`; -const forespørselOmDelingAvCvBaseUrl = `express:${api.forespørselOmDelingAvCv}`; -const synlighetBaseUrl = `express:${api.synlighet}`; - -const url = { - fnrsok: `${baseUrl}/veileder/kandidatsok/fnrsok`, - synlighetsevaluering: `${synlighetBaseUrl}/evaluering/:fnr`, - - // Cv - cv: `${baseUrl}/veileder/kandidatsok/hentcv`, - listeoversikt: `${baseUrl}/veileder/kandidater/:kandidatnr/listeoversikt`, - - // Kandidatliste - markerKandidatlisteSomMin: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/eierskap`, - kandidatlisteMedStilling: `${baseUrl}/veileder/stilling/:stillingsId/kandidatliste`, - notater: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/notater`, - notaterMedId: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/notater/:notatId`, - statusPut: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/status`, - utfallPut: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/utfall`, - arkivertPut: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater/:kandidatnr/arkivert`, - delKandidater: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/deltekandidater`, - postKandidater: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/kandidater`, - søkUsynligKandidat: `${baseUrl}/veileder/kandidater/navn`, - postFormidlingerAvUsynligKandidat: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/formidlingeravusynligkandidat`, - putFormidlingerAvUsynligKandidat: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/formidlingeravusynligkandidat/:formidlingId/utfall`, - putKandidatlistestatus: `${baseUrl}/veileder/kandidatlister/:kandidatlisteId/status`, - putSlettCvFraArbeidsgiversKandidatliste: `${baseUrl}/veileder/kandidat/arbeidsgiverliste/:kandidatlisteId/:kandidatnummer`, - - forespørselOmDelingAvCv: `${forespørselOmDelingAvCvBaseUrl}/foresporsler/:stillingsId`, - forespørselOmDelingAvCvForKandidat: `${forespørselOmDelingAvCvBaseUrl}/foresporsler/kandidat/:aktorId`, - postForespørselOmDelingAvCv: `${forespørselOmDelingAvCvBaseUrl}/foresporsler`, - postResendForespørselOmDelingAvCv: `${forespørselOmDelingAvCvBaseUrl}/foresporsler/kandidat/:aktorId`, - - // Alternative backends - sms: `${smsBaseUrl}/:kandidatlisteId`, - smsFnr: `${smsBaseUrl}/fnr/:fnr`, - smsPost: `${smsBaseUrl}`, - enhetsregister: `${ENHETSREGISTER_API}/underenhet/_search`, - - // Misc - toggles: `${baseUrl}/veileder/kandidatsok/toggles`, -}; - -const getUsynligKandidat = () => [mock.synlighet.usynligKandidat]; - -const markerKandidatlisteSomMin = (url: string) => { - const kandidatlisteId = url.split('/')[4]; - - return mock.kandidat.kandidatlister.find((liste) => liste.kandidatlisteId === kandidatlisteId); -}; - -const postFormidlingerAvUsynligKandidat = ( - url: string, - options: fetchMock.MockOptionsMethodPost -) => { - const kandidatlisteId = url.split('/')[url.split('/').length - 2]; - const kandidatliste = mock.kandidat.kandidatlister.find( - (liste) => liste.kandidatlisteId === kandidatlisteId - ); - const body: FormidlingAvUsynligKandidatOutboundDto = JSON.parse(String(options.body)); - - if (!kandidatliste) { - return null; - } - - return { - ...kandidatliste, - formidlingerAvUsynligKandidat: [ - ...kandidatliste.formidlingerAvUsynligKandidat, - { - ...mock.synlighet.usynligKandidat, - utfall: body.fåttJobb ? Kandidatutfall.FåttJobben : Kandidatutfall.Presentert, - }, - ], - }; -}; - -const putStatus = (url: string, options: fetchMock.MockOptionsMethodPut) => { - const kandidatnr = url.split('/').reverse()[1]; - const status = JSON.parse(String(options.body)).status; - - return { - ...mock.kandidat.kandidatliste, - kandidater: mock.kandidat.kandidatliste.kandidater.map((kandidat) => - kandidat.kandidatnr !== kandidatnr - ? kandidat - : { - ...kandidat, - status, - } - ), - }; -}; - -const putUtfall = (url: string, options: fetchMock.MockOptionsMethodPut) => { - const kandidatnr = url.split('/').reverse()[1]; - const utfall = JSON.parse(String(options.body)).utfall; - - return { - ...mock.kandidat.kandidatliste, - kandidater: mock.kandidat.kandidatliste.kandidater.map((kandidat) => - kandidat.kandidatnr !== kandidatnr - ? kandidat - : { - ...kandidat, - utfall, - } - ), - }; -}; - -const putUtfallForFormidlingAvUsynligKandidat = ( - url: string, - options: fetchMock.MockOptionsMethodPut -) => { - const formidlingId = url.split('/').reverse()[1]; - const utfall = JSON.parse(String(options.body)).utfall; - - return { - ...mock.kandidat.kandidatliste, - formidlingerAvUsynligKandidat: - mock.kandidat.kandidatliste.formidlingerAvUsynligKandidat.map((formidling) => - formidling.id !== formidlingId - ? formidling - : { - ...formidling, - utfall, - } - ), - }; -}; - -const putArkivert = (url: string, options: fetchMock.MockOptionsMethodPut) => { - const kandidatnr = url.split('/').reverse()[1]; - const arkivert = JSON.parse(String(options.body)); - const kandidat = mock.kandidat.kandidatliste.kandidater.find( - (kandidat) => kandidat.kandidatnr === kandidatnr - ); - - return { - ...kandidat, - arkivert, - }; -}; - -const putKandidatlistestatus = (url: string, options: fetchMock.MockOptionsMethodPut) => { - const kandidatlisteId = url.split('/').reverse()[1]; - const status = JSON.parse(String(options.body)).status; - const kandidatliste = mock.kandidat.kandidatlister.find( - (liste) => liste.kandidatlisteId === kandidatlisteId - ); - - return { - body: { - ...kandidatliste, - status, - }, - status: 200, - }; -}; - -const postDelKandidater = (url: string, options: fetchMock.MockOptionsMethodPost) => { - const kandidatlisteId = url.split('/').reverse()[1]; - const kandidatliste = mock.kandidat.kandidatlister.find( - (liste) => liste.kandidatlisteId === kandidatlisteId - ); - const delteKandidater = JSON.parse(String(options.body)).kandidater; - - return { - body: { - ...kandidatliste, - kandidater: kandidatliste?.kandidater.map((kandidat) => { - return delteKandidater.includes(kandidat.kandidatnr) - ? { - ...kandidat, - utfall: Kandidatutfall.Presentert, - } - : kandidat; - }), - }, - status: 201, - }; -}; - -const getSynlighetsevaluering = (): MockResponse => { - return { - status: 200, - body: { - harAktivCv: false, - harJobbprofil: true, - harSettHjemmel: true, - maaIkkeBehandleTidligereCv: true, - erIkkeFritattKandidatsøk: true, - erUnderOppfoelging: true, - harRiktigFormidlingsgruppe: true, - erIkkeSperretAnsatt: true, - erIkkeDoed: true, - erFerdigBeregnet: true, - }, - }; -}; - -const putSlettCvFraArbeidsgiversKandidatliste = ( - url: string, - options: fetchMock.MockOptionsMethodPost -): MockResponse => { - const splittetUrl = url.split('/'); - - const kandidatnummer = splittetUrl.pop(); - const kandidatlisteId = splittetUrl.pop(); - - const kandidatliste = mock.kandidat.kandidatlister.find( - (liste) => liste.kandidatlisteId === kandidatlisteId - )!!; - - return { - ...kandidatliste, - kandidater: kandidatliste.kandidater.map((kandidat) => - kandidat.kandidatnr !== kandidatnummer - ? kandidat - : { - ...kandidat, - utfall: Kandidatutfall.IkkePresentert, - utfallsendringer: [ - ...kandidat.utfallsendringer, - { - utfall: Kandidatutfall.IkkePresentert, - tidspunkt: new Date().toISOString(), - registrertAvIdent: meg.ident, - sendtTilArbeidsgiversKandidatliste: false, - }, - ], - } - ), - }; -}; - -const log = (response: MockResponse | MockResponseFunction) => { - return (url: string, options) => { - console.log( - '%cMOCK %s %s', - 'color: lightgray;', - options.method || 'GET', - url.includes('rekrutteringsbistand-kandidat-api') ? url.substring(46) : url, - typeof response === 'function' ? response(url, options) : response - ); - return response; - }; -}; - -const litenDelay = { delay: 500 }; - -fetchMock - // CV - .get(url.listeoversikt, log(mock.kandidat.kandidatlisterForKandidat)) - - // Kandidatliste - .put(url.markerKandidatlisteSomMin, log(markerKandidatlisteSomMin), litenDelay) - - .get(url.notater, log(mock.kandidat.notater)) - .post(url.notater, log(mock.kandidat.notater)) - .mock(url.notaterMedId, log(mock.kandidat.notater)) - .get(url.sms, log(mock.sms.sms)) - .get(url.smsFnr, log(mock.sms.sms)) - .post(url.smsPost, log(201)) - .put(url.utfallPut, log(putUtfall)) - .put(url.statusPut, log(putStatus)) - .put(url.arkivertPut, log(putArkivert)) - - // Legg til kandidat fra kandidatliste-modal - .get(url.synlighetsevaluering, log(getSynlighetsevaluering)) - - .post(url.delKandidater, log(postDelKandidater)) - .post(url.søkUsynligKandidat, log(getUsynligKandidat)) - .post(url.postFormidlingerAvUsynligKandidat, log(postFormidlingerAvUsynligKandidat)) - .put(url.putFormidlingerAvUsynligKandidat, log(putUtfallForFormidlingAvUsynligKandidat)) - .put(url.putKandidatlistestatus, log(putKandidatlistestatus)) - .get(url.forespørselOmDelingAvCv, log(mock.forespørselOmDelingAvCv.forespørslerOmDelingAvCv)) - .get( - url.forespørselOmDelingAvCvForKandidat, - log(mock.forespørselOmDelingAvCv.forespørslerOmDelingAvCvForKandidat) - ) - .post( - url.postForespørselOmDelingAvCv, - log({ body: mock.forespørselOmDelingAvCv.forespørslerOmDelingAvCv, status: 201 }) - ) - .post( - url.postResendForespørselOmDelingAvCv, - log({ body: mock.forespørselOmDelingAvCv.forespørslerOmDelingAvCv, status: 201 }) - ) - .put(url.putSlettCvFraArbeidsgiversKandidatliste, log(putSlettCvFraArbeidsgiversKandidatliste)) - - // Misc - .post(url.enhetsregister, log(mock.kandidat.enhetsregister)); diff --git a/src/kandidat/mock/mock-data.ts b/src/kandidat/mock/mock-data.ts deleted file mode 100644 index 309e32d2..00000000 --- a/src/kandidat/mock/mock-data.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { mockCver } from './data/kandidat/cv.mock'; -import { - kandidatlistesammendragLister, - mockKandidatlister, - mockUsynligKandidat, -} from './data/kandidat/kandidatliste.mock'; -import { kandidatlisterForKandidatMock } from './data/kandidat/kandidatlister-for-kandidat.mock'; -import { enAnnenVeileder, meg } from './data/kandidat/veileder.mock'; -import sms from './data/sms/sms.mock.json'; - -import stilling from './data/stillingssøk/stilling.mock.json'; -import annenStilling from './data/stillingssøk/annen-stilling.mock.json'; -import { - mockForespørslerOmDelingAvCv, - mockForespørslerOmDelingAvCvForKandidat, -} from './data/forespørselOmDelingAvCv/forespørselOmDelingAvCv.mock'; -import enhetsregister from './data/kandidat/enhetsregister.mock.json'; -import notater from './data/kandidat/notater.mock.json'; -import KandidatIKandidatliste from 'felles/domene/kandidatliste/KandidatIKandidatliste'; - -const cver = mockCver(meg); -const kandidatlister = mockKandidatlister(meg, enAnnenVeileder, cver); -const kandidatliste = kandidatlister[0]; -const kandidatlisterForKandidat = kandidatlisterForKandidatMock(meg); -const kandidatlisteForKandidat = kandidatlisterForKandidat[0]; -const kandidat = (index?: number): KandidatIKandidatliste => kandidatliste.kandidater[index || 0]!!; -const usynligKandidat = mockUsynligKandidat(cver[7], meg); - -export const mock = { - kandidat: { - cver: mockCver(meg), - kandidatlister, - kandidatliste: kandidatlister[0], - kandidat, - kandidatlisterForKandidat, - kandidatlisteForKandidat, - kandidatlistesammendrag: kandidatlistesammendragLister(kandidatlister), - enhetsregister, - notater, - }, - sms: { - sms: sms as any, - }, - forespørselOmDelingAvCv: { - forespørslerOmDelingAvCv: mockForespørslerOmDelingAvCv(meg, kandidatliste), - forespørslerOmDelingAvCvForKandidat: mockForespørslerOmDelingAvCvForKandidat( - meg, - kandidat().aktørid!, - kandidatlisteForKandidat - ), - }, - synlighet: { - usynligKandidat, - }, - stillingssøk: { - stilling: stilling as any, - annenStilling: annenStilling as any, - }, -}; diff --git a/vite.config.ts b/vite.config.ts index 20637157..56cffb3c 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,8 +1,8 @@ -import { defineConfig, splitVendorChunkPlugin, loadEnv } from 'vite'; import reactPlugin from '@vitejs/plugin-react'; -import svgrPlugin from 'vite-plugin-svgr'; -import checkerPlugin from 'vite-plugin-checker'; import path from 'path'; +import { defineConfig, loadEnv, splitVendorChunkPlugin } from 'vite'; +import checkerPlugin from 'vite-plugin-checker'; +import svgrPlugin from 'vite-plugin-svgr'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, process.cwd(), '');